Section 1
//1Symbol41_315 (Chemistryescape_fla.1Symbol41_315)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class 1Symbol41_315 extends MovieClip {
public function 1Symbol41_315(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 59, frame60, 99, frame100, 152, frame153);
}
function frame153(){
stop();
}
function frame10(){
if (Lab.soundToggle){
Lab.sadd.play();
};
}
function frame1(){
stop();
}
function frame100(){
stop();
Lab.shaken = true;
}
function frame20(){
stop();
Lab.isspoonframe2 = true;
MovieClip(this.parent).spoon1.visible = true;
}
function frame60(){
stop();
Lab.ish2so4hit = true;
}
}
}//package Chemistryescape_fla
Section 2
//1Symbol41copy2fas_317 (Chemistryescape_fla.1Symbol41copy2fas_317)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class 1Symbol41copy2fas_317 extends MovieClip {
public function 1Symbol41copy2fas_317(){
addFrameScript(0, frame1, 53, frame54);
}
function frame1(){
stop();
}
function frame54(){
stop();
}
}
}//package Chemistryescape_fla
Section 3
//2xSymbol41copy_337 (Chemistryescape_fla.2xSymbol41copy_337)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class 2xSymbol41copy_337 extends MovieClip {
public function 2xSymbol41copy_337(){
addFrameScript(0, frame1, 9, frame10, 19, frame20, 63, frame64, 100, frame101);
}
function frame64(){
stop();
Lab.ishcl2hit = true;
}
function frame10(){
if (Lab.soundToggle){
Lab.sadd.play();
};
}
function frame1(){
stop();
}
function frame20(){
stop();
Lab.isspoon2frame2 = true;
MovieClip(this.parent).spoon2.visible = true;
}
function frame101(){
stop();
Lab.isshaken = true;
}
}
}//package Chemistryescape_fla
Section 4
//aaa_257 (Chemistryescape_fla.aaa_257)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class aaa_257 extends MovieClip {
public function aaa_257(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 5
//ccSymbol38copyAS_327 (Chemistryescape_fla.ccSymbol38copyAS_327)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class ccSymbol38copyAS_327 extends MovieClip {
public function ccSymbol38copyAS_327(){
addFrameScript(0, frame1, 19, frame20);
}
function frame1(){
stop();
}
function frame20(){
stop();
MovieClip(this.parent).spoon2.visible = true;
MovieClip(this.parent).spoon2.gotoAndStop(2);
}
}
}//package Chemistryescape_fla
Section 6
//d2Symbol1_280 (Chemistryescape_fla.d2Symbol1_280)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class d2Symbol1_280 extends MovieClip {
public var key:MovieClip;
public function d2Symbol1_280(){
addFrameScript(0, frame1, 1, frame2, 8, frame9, 10, frame11, 19, frame20);
}
function frame1(){
stop();
if (Lab.iskey){
key.visible = false;
};
}
public function keyfn(_arg1:MouseEvent){
key.removeEventListener(MouseEvent.CLICK, keyfn);
key.visible = false;
MovieClip(this.parent).speedControl.key.visible = true;
Lab.iskey = true;
if (Lab.iskey){
this.gotoAndPlay(10);
};
}
function frame9(){
stop();
if (!Lab.iskey){
Lab.displayText(key, "Key");
};
MovieClip(this.parent).downbtn.visible = true;
if (!Lab.iskey){
key.addEventListener(MouseEvent.CLICK, keyfn);
};
if (Lab.iskey){
key.visible = false;
};
}
function frame20(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
if (Lab.iskey){
key.visible = false;
};
}
function frame11(){
MovieClip(this.parent).downbtn.visible = false;
}
}
}//package Chemistryescape_fla
Section 7
//gdf_103 (Chemistryescape_fla.gdf_103)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class gdf_103 extends MovieClip {
public var left:MovieClip;
public var exitaccess:MovieClip;
public var codes:String;
public var sclosebtn1:MovieClip;
public var sclosebtn2:MovieClip;
public var lighter:MovieClip;
public var h2so4shot:MovieClip;
public var timePlate:MovieClip;
public var lighter1:MovieClip;
public var k:int;
public var f1:MovieClip;
public var f2:MovieClip;
public var pauseBut:SimpleButton;
public var info:TextField;
public var h1f:MovieClip;
public var epanel:MovieClip;
public var xArray:Array;
public var hold:MovieClip;
public var h1:MovieClip;
public var h3:MovieClip;
public var h4:MovieClip;
public var codes2:String;
public var keyhit:MovieClip;
public var litmus1:MovieClip;
public var na1:MovieClip;
public var na2:MovieClip;
public var na3:MovieClip;
public var na4:MovieClip;
public var na6:MovieClip;
public var na8:MovieClip;
public var na9:MovieClip;
public var na5:MovieClip;
public var CTex:TextField;
public var stored1:String;
public var na7:MovieClip;
public var leftbtn:SimpleButton;
public var inter:Number;
public var formula1shot:MovieClip;
public var count:int;
public var left1:MovieClip;
public var soundButton:MovieClip;
public var caco33:MovieClip;
public var fcloth1:MovieClip;
public var l1:MovieClip;
public var l3:MovieClip;
public var l4:MovieClip;
public var l5:MovieClip;
public var l6:MovieClip;
public var l8:MovieClip;
public var l9:MovieClip;
public var l7:MovieClip;
public var l2:MovieClip;
public var cloth1:MovieClip;
public var closebtn:MovieClip;
public var yArray:Array;
public var fcloth:MovieClip;
public var la:MovieClip;
public var n1:MovieClip;
public var n2:MovieClip;
public var n3:MovieClip;
public var n6:MovieClip;
public var n7:MovieClip;
public var n8:MovieClip;
public var n9:MovieClip;
public var n5:MovieClip;
public var right1:MovieClip;
public var spoonshot:MovieClip;
public var delay:Number;
public var glow:MovieClip;
public var n4:MovieClip;
public var storedClip:MovieClip;
public var mc:MovieClip;
public var h2so41:MovieClip;
public var holder:MovieClip;
public var logo:SimpleButton;
public var flitmus1:MovieClip;
public var formula1door:MovieClip;
public var lightershot:MovieClip;
public var flitmus:MovieClip;
public var exitdoor:MovieClip;
public var keyshot:MovieClip;
public var storedBoolean1:Boolean;
public var itemArray1:Array;
public var cucl2open:MovieClip;
public var testtube:MovieClip;
public var right:MovieClip;
public var pauseMc:MovieClip;
public var drawshot:MovieClip;
public var shit:MovieClip;
public var beaker1:MovieClip;
public var beaker2:MovieClip;
public var accessshot:MovieClip;
public var cupboardshot:MovieClip;
public var holderhit:MovieClip;
public var a10:MovieClip;
public var wthrough:SimpleButton;
public var stove1:MovieClip;
public var downbtn:SimpleButton;
public var hint:MovieClip;
public var keydoor:MovieClip;
public var cdoor:MovieClip;
public var caco3shot:MovieClip;
public var holderhit2:MovieClip;
public var cucl2shot:MovieClip;
public var cupdoor1:MovieClip;
public var exitdoorshot:MovieClip;
public var rightbtn:SimpleButton;
public var rect1:Rectangle;
public var rect2:Rectangle;
public var yArray1:Array;
public var inter2:Number;
public var temp2:String;
public var enter:MovieClip;
public var cupdoor:MovieClip;
public var hit2:MovieClip;
public var panelshot:MovieClip;
public var storedindex1:Number;
public var n10:MovieClip;
public var dooropen:MovieClip;
public var spoon:MovieClip;
public var na11:MovieClip;
public var na12:MovieClip;
public var na13:MovieClip;
public var na15:MovieClip;
public var na17:MovieClip;
public var na18:MovieClip;
public var na14:MovieClip;
public var na16:MovieClip;
public var innerwindow1:MovieClip;
public var na20:MovieClip;
public var na21:MovieClip;
public var na22:MovieClip;
public var na24:MovieClip;
public var na25:MovieClip;
public var na26:MovieClip;
public var na27:MovieClip;
public var na28:MovieClip;
public var na29:MovieClip;
public var na23:MovieClip;
public var storedindex:Number;
public var na19:MovieClip;
public var draw1open:MovieClip;
public var na10:MovieClip;
public var spoon1:MovieClip;
public var spoon2:MovieClip;
public var storedBoolean:Boolean;
public var closebtn1:MovieClip;
public var speedControl:MovieClip;
public var na30:MovieClip;
public var na32:MovieClip;
public var na33:MovieClip;
public var na34:MovieClip;
public var na31:MovieClip;
public var itemArray:Array;
public var na36:MovieClip;
public var times:TextField;
public var na35:MovieClip;
public var cucl2door:MovieClip;
public var plate:MovieClip;
public var draw1:MovieClip;
public var hcl2:MovieClip;
public var l10:MovieClip;
public var xArray1:Array;
public var stored:String;
public var fgf:int;
public var temp:String;
public var scissor1:MovieClip;
public var scissor2:MovieClip;
public var cucl21:MovieClip;
public var a0:MovieClip;
public var a2:MovieClip;
public var a3:MovieClip;
public var a4:MovieClip;
public var a5:MovieClip;
public var a6:MovieClip;
public var a8:MovieClip;
public var a9:MovieClip;
public var a7:MovieClip;
public var a1:MovieClip;
public function gdf_103(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 19, frame20, 20, frame21);
}
public function hclfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.hclkept)))){
if (speedControl.hcl.hitTestObject(holderhit2)){
trace("hcl");
speedControl.hcl.removeEventListener(MouseEvent.MOUSE_UP, hclfn2);
hcl2.visible = true;
speedControl.hcl.visible = false;
Lab.hclkept = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function lighter1fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((lighter1.hitTestObject(stove1)) && (!(Lab.islighterhit)))){
lighter1.visible = false;
Lab.islighterhit = true;
stove1.gotoAndStop(2);
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function swglot2(_arg1:MouseEvent){
}
public function clothfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.clothkept)))){
if (speedControl.cloth.hitTestObject(holderhit2)){
trace("cloth");
speedControl.cloth.removeEventListener(MouseEvent.MOUSE_UP, clothfn2);
cloth1.visible = true;
speedControl.cloth.visible = false;
Lab.clothkept = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function h2so41fna(_arg1:MouseEvent){
if (((Lab.isspoonframe2) && (!(Lab.ish2so4hit)))){
this.setChildIndex(h2so41, (numChildren - 1));
h2so41.startDrag(true, rect1);
};
stored = _arg1.target.name;
}
public function flitmusfn(_arg1:MouseEvent){
if (Lab.litmusdipped){
flitmus.visible = false;
flitmus1.visible = true;
};
}
public function upfn1(_arg1:MouseEvent){
if ((((((((((((((stored == "scissor2")) || ((stored == "spoon2")))) || ((stored == "hcl2")))) || ((stored == "h4")))) || ((stored == "cloth1")))) || ((stored == "fcloth")))) || ((stored == "fcloth1")))){
if (!storedBoolean1){
storedindex1 = itemArray1.indexOf(MovieClip(getChildByName(stored1)));
MovieClip(this.getChildByName(stored1)).x = xArray1[storedindex1];
MovieClip(this.getChildByName(stored1)).y = yArray1[storedindex1];
};
};
stored1 = "";
storedBoolean = false;
}
public function keydoorfn(_arg1:MouseEvent){
keydoor.removeEventListener(MouseEvent.CLICK, keydoorfn);
}
public function testtubefn21(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.testtubekept1)))){
if (speedControl.testtube.hitTestObject(holderhit2)){
trace("testtube");
speedControl.testtube.removeEventListener(MouseEvent.MOUSE_UP, testtubefn21);
speedControl.testtube.visible = false;
Lab.testtubekept1 = true;
hold.gotoAndStop(2);
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function h4shakefn(_arg1:MouseEvent){
if (((Lab.ishcl2hit) && (!(Lab.isshaken)))){
h4.removeEventListener(MouseEvent.CLICK, h4shakefn);
h4.gotoAndPlay(65);
};
}
public function back2(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back2);
gotoAndStop("1stview");
}
public function back4(_arg1:MouseEvent){
leftbtn.removeEventListener(MouseEvent.CLICK, back4);
gotoAndStop("1stview");
}
public function back5(_arg1:MouseEvent){
leftbtn.removeEventListener(MouseEvent.CLICK, back5);
gotoAndStop("2ndview");
}
public function back7(_arg1:MouseEvent){
leftbtn.removeEventListener(MouseEvent.CLICK, back1);
trace(("lreeftinner 2 " + Lab.inner2));
gotoAndStop("3rdview");
}
public function back1(_arg1:MouseEvent){
rightbtn.removeEventListener(MouseEvent.CLICK, back1);
gotoAndStop("2ndview");
}
public function back9(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back9);
gotoAndStop("2ndview");
}
public function back3(_arg1:MouseEvent){
rightbtn.removeEventListener(MouseEvent.CLICK, back3);
gotoAndStop("3rdview");
}
public function back6(_arg1:MouseEvent){
rightbtn.removeEventListener(MouseEvent.CLICK, back5);
gotoAndStop("1stview");
}
public function back8(_arg1:MouseEvent):void{
downbtn.removeEventListener(MouseEvent.CLICK, back1);
gotoAndStop("1stview");
}
public function formula1doorfn(_arg1:MouseEvent){
formula1door.removeEventListener(MouseEvent.CLICK, formula1doorfn);
formula1door.x = 800;
cupdoor1.gotoAndPlay(2);
}
public function panelshotfn(_arg1:MouseEvent){
panelshot.removeEventListener(MouseEvent.CLICK, panelshotfn);
gotoAndStop("panelzoom");
}
public function exitaccessfn(_arg1:MouseEvent){
exitaccess.removeEventListener(MouseEvent.CLICK, cupboardshotfn);
gotoAndStop("faccesszoom");
}
public function h4fna(_arg1:MouseEvent){
if (((Lab.isshaken) && (!(Lab.ispoured)))){
this.setChildIndex(h4, (numChildren - 1));
h4.startDrag(true, rect2);
};
stored1 = _arg1.target.name;
}
function frame14(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back18);
Lab.displayText(epanel, "Access");
if (!Lab.panelkey){
speedControl.key.addEventListener(MouseEvent.MOUSE_UP, cupboardkeyfn2);
};
if (Lab.panelkey){
keyhit.x = 800;
epanel.gotoAndStop(51);
};
}
function frame15(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back12);
Lab.displayText(exitdoor, "Door");
exitaccess.addEventListener(MouseEvent.CLICK, exitaccessfn);
if (Lab.panelkey){
epanel.gotoAndStop(51);
};
if (Lab.fkeyword){
epanel.green.gotoAndStop(2);
exitdoor.gotoAndPlay(2);
};
}
function frame16(){
stop();
stove1.visible = false;
beaker1.visible = false;
h1.visible = false;
h3.visible = false;
lighter1.visible = false;
litmus1.visible = false;
flitmus.visible = false;
flitmus1.visible = false;
cucl21.visible = false;
h2so41.visible = false;
spoon1.visible = false;
scissor1.visible = false;
downbtn.visible = false;
leftbtn.visible = false;
rightbtn.visible = false;
speedControl.swindow1.visible = false;
closebtn.buttonMode = true;
closebtn.addEventListener(MouseEvent.CLICK, closefn1);
if (!Lab.testtubekept){
speedControl.testtube.addEventListener(MouseEvent.MOUSE_UP, testtubefn2);
};
if (((Lab.testtubekept) && (!(Lab.ish1)))){
holder.gotoAndStop(2);
};
if (!Lab.stovekept){
speedControl.stove.addEventListener(MouseEvent.MOUSE_UP, stovefn2);
};
if (Lab.stovekept){
stove1.visible = true;
};
if (!Lab.beakerkept){
speedControl.b1.addEventListener(MouseEvent.MOUSE_UP, b1fn2);
};
if (Lab.beakerkept){
beaker1.visible = true;
};
if (!Lab.lighterkept){
speedControl.lighter.addEventListener(MouseEvent.MOUSE_UP, lighterfn2);
};
if (Lab.lighterkept){
lighter1.visible = true;
};
if (!Lab.litmuskept){
speedControl.litmus.addEventListener(MouseEvent.MOUSE_UP, litmusfn2);
};
if (Lab.litmuskept){
litmus1.visible = true;
};
if (!Lab.scissorkept){
speedControl.scissor.addEventListener(MouseEvent.MOUSE_UP, scissorfn2);
};
if (((Lab.scissorkept) && (!(Lab.ish1)))){
scissor1.visible = true;
};
if (!Lab.spoonkept){
speedControl.spoon.addEventListener(MouseEvent.MOUSE_UP, spoonfn2);
};
if (Lab.spoonkept){
spoon1.visible = true;
};
if (!Lab.cucl2kept){
speedControl.cucl2.addEventListener(MouseEvent.MOUSE_UP, cucl2fn2);
};
if (Lab.cucl2kept){
cucl21.visible = true;
};
if (!Lab.h2so4kept){
speedControl.h2so4.addEventListener(MouseEvent.MOUSE_UP, h2so4fn2);
};
if (Lab.h2so4kept){
h2so41.visible = true;
};
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 2000;
};
itemArray = new Array("", scissor1, spoon1, lighter1, h2so41, litmus1, h1);
xArray = new Array("", 454.9, 530.5, 213.6, 529.8, 380.4, 307.4);
yArray = new Array("", 273.1, 274, 264.1, 242, 259, 187.5);
storedBoolean = false;
rect1 = new Rectangle(38, 30, 572, 310);
scissor1.addEventListener(MouseEvent.MOUSE_DOWN, scissorfna);
scissor1.addEventListener(MouseEvent.MOUSE_UP, scissorfna1);
if (((Lab.scissorlitmus) && (!(Lab.litmusdipped)))){
litmus1.gotoAndStop(2);
};
if (Lab.ish1){
h1.visible = true;
shit.y = 800;
};
lighter1.addEventListener(MouseEvent.MOUSE_DOWN, lighter1fna);
lighter1.addEventListener(MouseEvent.MOUSE_UP, lighter1fna1);
if (Lab.islighterhit){
stove1.gotoAndStop(2);
};
spoon1.addEventListener(MouseEvent.MOUSE_DOWN, spoon1fna);
spoon1.addEventListener(MouseEvent.MOUSE_UP, spoon1fna1);
if (Lab.iscucl2hit){
spoon1.visible = true;
spoon1.gotoAndStop(2);
};
if (Lab.isspoonframe2){
spoon1.gotoAndStop(1);
h1.gotoAndStop(20);
};
h2so41.addEventListener(MouseEvent.MOUSE_DOWN, h2so41fna);
h2so41.addEventListener(MouseEvent.MOUSE_UP, h2so41fna1);
h1.addEventListener(MouseEvent.CLICK, shakefn);
if (((Lab.ish2so4hit) && (!(Lab.shaken)))){
h1.gotoAndStop(60);
};
if (Lab.shaken){
h1.gotoAndStop(100);
};
h1.addEventListener(MouseEvent.MOUSE_DOWN, h1fna);
h1.addEventListener(MouseEvent.MOUSE_UP, h1fna1);
h3.addEventListener(MouseEvent.CLICK, shakefn3);
if (((Lab.heated) && (!(Lab.poured)))){
h1.gotoAndStop(100);
h3.visible = false;
h1.visible = true;
};
if (((Lab.poured) && (!(Lab.litmusdipped)))){
h1.visible = false;
beaker1.gotoAndStop(54);
};
litmus1.addEventListener(MouseEvent.MOUSE_DOWN, litmus1fna);
litmus1.addEventListener(MouseEvent.MOUSE_UP, litmus1na1);
if (Lab.litmusdipped){
h1.visible = false;
flitmus.visible = true;
scissor1.visible = true;
};
flitmus.addEventListener(MouseEvent.CLICK, flitmusfn);
flitmus1.addEventListener(MouseEvent.CLICK, flitmusfn1);
if (!Lab.lenshit){
speedControl.lens.addEventListener(MouseEvent.MOUSE_UP, lensfn2);
};
if (Lab.lenshit){
trace("lenshit");
speedControl.scissor.visible = true;
speedControl.spoon.visible = true;
speedControl.beaker.visible = true;
speedControl.testtube.visible = true;
speedControl.cucl2.visible = false;
speedControl.h2so4.visible = false;
speedControl.stove.visible = false;
speedControl.lighter.visible = false;
h1.visible = false;
beaker1.gotoAndStop(54);
litmus1.visible = false;
flitmus.visible = false;
flitmus1.visible = true;
flitmus1.gotoAndStop(2);
};
stage.addEventListener(MouseEvent.MOUSE_UP, upfn);
}
function frame17(){
stop();
trace("INNER 2");
beaker2.visible = false;
h4.visible = false;
cloth1.visible = false;
fcloth.visible = false;
fcloth1.visible = false;
caco33.visible = false;
hcl2.visible = false;
spoon2.visible = false;
scissor2.visible = false;
downbtn.visible = false;
leftbtn.visible = false;
rightbtn.visible = false;
speedControl.swindow2.visible = false;
closebtn1.buttonMode = true;
closebtn1.addEventListener(MouseEvent.CLICK, closefn2);
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
if (!Lab.testtubekept1){
speedControl.testtube.addEventListener(MouseEvent.MOUSE_UP, testtubefn21);
};
if (Lab.testtubekept1){
hold.gotoAndStop(2);
};
if (!Lab.beakerkept1){
speedControl.b1.addEventListener(MouseEvent.MOUSE_UP, b1fn21);
};
if (Lab.beakerkept1){
beaker2.visible = true;
};
if (!Lab.clothkept){
speedControl.cloth.addEventListener(MouseEvent.MOUSE_UP, clothfn2);
};
if (Lab.clothkept){
cloth1.visible = true;
};
if (!Lab.scissorkept1){
speedControl.scissor.addEventListener(MouseEvent.MOUSE_UP, scissorfn22);
};
if (((Lab.scissorkept1) && (!(Lab.ishold)))){
scissor2.visible = true;
};
if (!Lab.spoonkept1){
speedControl.spoon.addEventListener(MouseEvent.MOUSE_UP, spoonfn22);
};
if (Lab.spoonkept1){
spoon2.visible = true;
};
if (!Lab.caco3kept){
speedControl.caco3.addEventListener(MouseEvent.MOUSE_UP, caco3fn2);
};
if (Lab.caco3kept){
caco33.visible = true;
};
if (!Lab.hclkept){
speedControl.hcl.addEventListener(MouseEvent.MOUSE_UP, hclfn2);
};
if (Lab.hclkept){
hcl2.visible = true;
};
itemArray1 = new Array("", scissor2, spoon2, hcl2, fcloth, h4);
xArray1 = new Array("", 428.8, 530.5, 525.93, 345.1, 307.9);
yArray1 = new Array("", 270.1, 274, 243, 238.6, 177.2);
storedBoolean1 = false;
rect2 = new Rectangle(38, 30, 572, 310);
scissor2.addEventListener(MouseEvent.MOUSE_DOWN, scissor2fna);
scissor2.addEventListener(MouseEvent.MOUSE_UP, scissor2fnafna1);
if (((Lab.scissorcloth) && (!(Lab.clothdipped)))){
fcloth.visible = true;
fcloth.gotoAndStop(2);
};
if (Lab.ishold){
h4.visible = true;
hit2.y = 800;
};
spoon2.addEventListener(MouseEvent.MOUSE_DOWN, spoon2fna);
spoon2.addEventListener(MouseEvent.MOUSE_UP, spoon2fna1);
if (((Lab.iscaco3hit) && (!(Lab.isspoon2frame2)))){
spoon2.visible = true;
spoon2.gotoAndStop(2);
};
if (Lab.isspoon2frame2){
spoon2.gotoAndStop(1);
h4.gotoAndStop(20);
};
hcl2.addEventListener(MouseEvent.MOUSE_DOWN, hcl21fna);
hcl2.addEventListener(MouseEvent.MOUSE_UP, hcl2fna1);
h4.addEventListener(MouseEvent.CLICK, h4shakefn);
if (((Lab.ishcl2hit) && (!(Lab.isshaken)))){
h4.gotoAndStop(60);
};
if (Lab.isshaken){
h4.gotoAndStop(100);
};
h4.addEventListener(MouseEvent.MOUSE_DOWN, h4fna);
h4.addEventListener(MouseEvent.MOUSE_UP, h4fna1);
if (Lab.ispoured){
scissor2.visible = true;
};
fcloth.addEventListener(MouseEvent.MOUSE_DOWN, fcloth1fna);
fcloth.addEventListener(MouseEvent.MOUSE_UP, fcloth1na1);
if (Lab.clothdipped){
h4.visible = false;
cloth1.visible = true;
};
cloth1.addEventListener(MouseEvent.CLICK, fclothfn);
fcloth1.addEventListener(MouseEvent.CLICK, fcloth1fn1);
if (!Lab.lenshit1){
speedControl.lens.addEventListener(MouseEvent.MOUSE_UP, lensfn21);
};
if (Lab.lenshit1){
trace("lenshit1");
speedControl.scissor.visible = false;
speedControl.spoon.visible = false;
speedControl.b1.visible = false;
speedControl.testtube.visible = false;
h4.visible = false;
beaker2.gotoAndStop(54);
cloth1.visible = false;
fcloth.visible = false;
fcloth1.visible = true;
fcloth1.gotoAndStop(2);
};
stage.addEventListener(MouseEvent.MOUSE_UP, upfn1);
}
function frame10(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back17);
Lab.displayText(cdoor, "Door");
CTex.maxChars = 4;
fgf = 0;
while (fgf <= 10) {
if (((((Lab.inner1) && (Lab.lenshit))) && (!(Lab.clothtaken)))){
this[("a" + fgf)].addEventListener(MouseEvent.MOUSE_DOWN, switchit);
this[("a" + fgf)].addEventListener(MouseEvent.MOUSE_UP, swglot);
};
fgf++;
};
codes = "";
temp = "";
}
function frame11(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back11);
count = 0;
if (((!(Lab.iskey)) && (!(Lab.solved)))){
k = 1;
while (k <= 36) {
this[("na" + k)].addEventListener(MouseEvent.MOUSE_DOWN, switchit2);
k++;
};
};
codes2 = "";
temp2 = "";
}
function frame12(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back15);
Lab.displayText(keydoor, "Door");
if (((Lab.solved) && (!(Lab.iskey)))){
keydoor.gotoAndPlay(2);
};
if (Lab.iskey){
keydoor.gotoAndStop(1);
};
keydoor.addEventListener(MouseEvent.CLICK, keydoorfn);
}
public function keyshotfn(_arg1:MouseEvent){
keyshot.removeEventListener(MouseEvent.CLICK, keyshotfn);
gotoAndStop("keyzoom");
}
function frame1(){
stop();
Lab.infoText = info;
rightbtn.visible = true;
leftbtn.visible = true;
rightbtn.addEventListener(MouseEvent.CLICK, back1);
leftbtn.addEventListener(MouseEvent.CLICK, back7);
cupboardshot.addEventListener(MouseEvent.CLICK, cupboardshotfn);
drawshot.addEventListener(MouseEvent.CLICK, drawzoom1fn);
cucl2shot.addEventListener(MouseEvent.CLICK, cucl2shotfn);
wthrough.addEventListener(MouseEvent.CLICK, gotowthrough);
logo.addEventListener(MouseEvent.CLICK, gotoBee123);
pauseBut.addEventListener(MouseEvent.CLICK, pauseFun);
}
function frame2(){
stop();
rightbtn.visible = true;
leftbtn.visible = true;
rightbtn.addEventListener(MouseEvent.CLICK, back3);
leftbtn.addEventListener(MouseEvent.CLICK, back4);
formula1shot.addEventListener(MouseEvent.CLICK, formula1shotfn);
panelshot.addEventListener(MouseEvent.CLICK, panelshotfn);
h2so4shot.addEventListener(MouseEvent.CLICK, h2so4shotfn);
caco3shot.addEventListener(MouseEvent.CLICK, caco3shotfn);
keyshot.addEventListener(MouseEvent.CLICK, keyshotfn);
accessshot.addEventListener(MouseEvent.CLICK, accessshotfn);
if (!Lab.istesttube){
testtube.addEventListener(MouseEvent.CLICK, testtubefn);
};
if (Lab.istesttube){
testtube.visible = false;
};
}
function frame3(){
stop();
rightbtn.visible = true;
leftbtn.visible = true;
leftbtn.addEventListener(MouseEvent.CLICK, back5);
rightbtn.addEventListener(MouseEvent.CLICK, back6);
exitdoorshot.addEventListener(MouseEvent.CLICK, exitdoorshotfn);
}
function frame4(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back2);
dooropen.addEventListener(MouseEvent.CLICK, dooropenfn);
}
function frame5(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back9);
formula1door.addEventListener(MouseEvent.CLICK, formula1doorfn);
if (!Lab.islighter){
lightershot.addEventListener(MouseEvent.CLICK, lightershotfn);
};
if (Lab.islighter){
lighter.visible = false;
};
}
function frame6(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back8);
if (((!(Lab.islens)) || (!(Lab.isscissor)))){
draw1open.addEventListener(MouseEvent.CLICK, draw1openfn);
};
}
function frame7(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back10);
if (!Lab.cucl2taken){
cucl2open.addEventListener(MouseEvent.CLICK, cucl2openfn);
};
if (Lab.cucl2taken){
cucl2open.x = 800;
};
if (!Lab.isspoon){
spoonshot.addEventListener(MouseEvent.CLICK, spoonshotfn);
};
if (Lab.isspoon){
spoonshot.x = 800;
spoon.visible = false;
};
}
function frame9(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back14);
left1.addEventListener(MouseEvent.CLICK, left1fn);
right1.addEventListener(MouseEvent.CLICK, right1fn);
}
public function flitmusfn1(_arg1:MouseEvent){
if (Lab.litmusdipped){
flitmus1.visible = false;
flitmus.visible = true;
};
}
function frame21(){
stop();
sclosebtn2.buttonMode = true;
sclosebtn2.addEventListener(MouseEvent.CLICK, sclosefn2);
}
function frame8(){
stop();
downbtn.visible = true;
rightbtn.visible = false;
leftbtn.visible = false;
downbtn.addEventListener(MouseEvent.CLICK, back13);
left.addEventListener(MouseEvent.CLICK, leftfn);
right.addEventListener(MouseEvent.CLICK, rightfn);
}
public function formula1shotfn(_arg1:MouseEvent){
formula1shot.removeEventListener(MouseEvent.CLICK, formula1shotfn);
gotoAndStop("formula1zoom");
}
function frame20(){
stop();
sclosebtn1.buttonMode = true;
sclosebtn1.addEventListener(MouseEvent.CLICK, sclosefn1);
}
public function scissorfna1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((scissor1.hitTestObject(shit)) && (!(Lab.ish1)))){
scissor1.visible = false;
holder.gotoAndStop(1);
Lab.ish1 = true;
shit.y = 800;
h1.visible = true;
};
if (((((scissor1.hitTestObject(litmus1)) && (Lab.poured))) && (!(Lab.scissorlitmus)))){
scissor1.visible = false;
litmus1.gotoAndStop(2);
Lab.scissorlitmus = true;
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function switchit2(_arg1:MouseEvent){
var _local2:int;
temp2 = _arg1.target.name.substring(2, 4);
trace(("temp " + temp2));
switch (_arg1.target.name){
case ("na" + temp2):
if (Number(temp2) <= 10){
count++;
this[("n" + temp2)].gotoAndPlay(2);
this[("l" + temp2)].gotoAndStop(3);
} else {
trace("else");
count = 0;
_local2 = 1;
while (_local2 <= 10) {
this[("l" + _local2)].gotoAndStop(2);
_local2++;
};
delay = setInterval(delayfun, 500);
};
break;
};
glow.visible = false;
if (count == 10){
la.gotoAndStop(2);
rm2();
inter2 = setInterval(spo52, 300);
};
}
public function upfn(_arg1:MouseEvent){
if ((((((((((((((stored == "scissor1")) || ((stored == "spoon1")))) || ((stored == "h2so41")))) || ((stored == "h1")))) || ((stored == "h3")))) || ((stored == "litmus1")))) || ((stored == "lighter1")))){
if (!storedBoolean){
storedindex = itemArray.indexOf(MovieClip(getChildByName(stored)));
MovieClip(this.getChildByName(stored)).x = xArray[storedindex];
MovieClip(this.getChildByName(stored)).y = yArray[storedindex];
};
};
stored = "";
storedBoolean = false;
}
public function spo5(){
trace("enter");
clearInterval(inter);
cdoor.gotoAndPlay(2);
}
public function gotowthrough(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.123bee.com/walkthroughs/chemical-place-escape-walkthrough"), "_blank");
}
public function sclosefn2(_arg1:MouseEvent){
sclosebtn2.removeEventListener(MouseEvent.CLICK, sclosefn1);
speedControl.sf2.visible = true;
trace(("currentframe " + Lab.tempnum));
this.gotoAndStop(Lab.tempnum);
}
public function sclosefn1(_arg1:MouseEvent){
sclosebtn1.removeEventListener(MouseEvent.CLICK, sclosefn1);
speedControl.sf1.visible = true;
trace(("currentframe " + Lab.tempnum));
this.gotoAndStop(Lab.tempnum);
}
public function scissor2fna(_arg1:MouseEvent){
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
this.setChildIndex(scissor2, (numChildren - 1));
scissor2.startDrag(true, rect2);
};
stored1 = _arg1.target.name;
}
public function delayfun(){
var _local1:int;
clearInterval(delay);
_local1 = 1;
while (_local1 <= 10) {
this[("l" + _local1)].gotoAndStop(1);
_local1++;
};
}
public function right1fn(_arg1:MouseEvent){
right1.removeEventListener(MouseEvent.CLICK, right1fn);
right1.gotoAndPlay(2);
}
public function fclothfn(_arg1:MouseEvent){
if (Lab.clothdipped){
cloth1.visible = false;
fcloth1.visible = true;
};
}
public function back11(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back11);
gotoAndStop("2ndview");
}
public function back12(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back12);
gotoAndStop("3rdview");
}
public function back13(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back13);
gotoAndStop("2ndview");
}
public function back14(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back14);
gotoAndStop("2ndview");
}
public function back17(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back11);
gotoAndStop("2ndview");
}
public function back15(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back15);
gotoAndStop("2ndview");
}
public function lighterfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.lighterkept)))){
if (speedControl.lighter.hitTestObject(holderhit)){
trace("lighter");
speedControl.lighter.removeEventListener(MouseEvent.MOUSE_UP, lighterfn2);
lighter1.visible = true;
speedControl.lighter.visible = false;
Lab.lighterkept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function h2so4fn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.h2so4kept)))){
if (speedControl.h2so4.hitTestObject(holderhit)){
trace("h2so4");
speedControl.h2so4.removeEventListener(MouseEvent.MOUSE_UP, h2so4fn2);
h2so41.visible = true;
speedControl.h2so4.visible = false;
Lab.h2so4kept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 2000;
};
};
};
}
public function testtubefn(_arg1:MouseEvent){
testtube.removeEventListener(MouseEvent.CLICK, testtubefn);
testtube.visible = false;
speedControl.testtube.visible = true;
Lab.istesttube = true;
}
public function rm2(){
var _local1:int;
_local1 = 1;
while (_local1 <= 36) {
this[("na" + _local1)].removeEventListener(MouseEvent.MOUSE_DOWN, switchit);
_local1++;
};
}
public function back18(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back18);
gotoAndStop("exitdoorzoom");
}
public function spoon1fna(_arg1:MouseEvent){
if (((!(Lab.isspoonframe2)) && (Lab.ish1))){
this.setChildIndex(spoon1, (numChildren - 1));
spoon1.startDrag(true, rect1);
};
stored = _arg1.target.name;
}
public function back10(_arg1:MouseEvent){
downbtn.removeEventListener(MouseEvent.CLICK, back10);
gotoAndStop("1stview");
}
public function spoon2fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean1 = true;
if (((spoon2.hitTestObject(caco33)) && (!(Lab.iscaco3hit)))){
spoon2.visible = false;
Lab.iscaco3hit = true;
caco33.gotoAndPlay(2);
};
if (((((((spoon2.hitTestObject(h4)) && ((spoon2.currentFrame == 2)))) && (!(Lab.isspoon2frame2)))) && (Lab.iscaco3hit))){
spoon2.visible = false;
spoon2.gotoAndStop(1);
h4.gotoAndPlay(2);
};
_arg1.currentTarget.x = xArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
}
public function h4fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean1 = true;
if (((h4.hitTestObject(beaker2)) && (!(Lab.ispoured)))){
h4.removeEventListener(MouseEvent.MOUSE_DOWN, h4fna);
h4.removeEventListener(MouseEvent.MOUSE_UP, h4fna1);
h4.visible = false;
beaker2.gotoAndPlay(2);
};
_arg1.currentTarget.x = xArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
}
public function lighter1fna(_arg1:MouseEvent){
if (((Lab.lighterkept) && (Lab.stovekept))){
this.setChildIndex(lighter1, (numChildren - 1));
lighter1.startDrag(true, rect1);
};
stored = _arg1.target.name;
}
public function b1fn21(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.beakerkept1)))){
if (speedControl.b1.hitTestObject(holderhit2)){
trace("beaker");
speedControl.b1.removeEventListener(MouseEvent.MOUSE_UP, b1fn2);
beaker2.visible = true;
speedControl.b1.visible = false;
Lab.beakerkept1 = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function gotoBee123(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.123bee.com"), "_blank");
}
public function dooropenfn(_arg1:MouseEvent){
dooropen.x = 800;
cupdoor.gotoAndStop(2);
}
public function hcl21fna(_arg1:MouseEvent){
if (((Lab.isspoon2frame2) && (!(Lab.ishcl2hit)))){
this.setChildIndex(hcl2, (numChildren - 1));
hcl2.startDrag(true, rect2);
};
stored1 = _arg1.target.name;
}
public function hcl2fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean1 = true;
if (((((hcl2.hitTestObject(h4)) && (Lab.isspoon2frame2))) && (!(Lab.ishcl2hit)))){
hcl2.removeEventListener(MouseEvent.MOUSE_UP, hcl2fna1);
hcl2.visible = false;
h4.gotoAndPlay(21);
};
_arg1.currentTarget.x = xArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
}
public function cucl2fn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.cucl2kept)))){
if (speedControl.cucl2.hitTestObject(holderhit)){
trace("cucl2");
speedControl.cucl2.removeEventListener(MouseEvent.MOUSE_UP, cucl2fn2);
cucl21.visible = true;
speedControl.cucl2.visible = false;
Lab.cucl2kept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 2000;
};
};
};
}
public function spoon2fna(_arg1:MouseEvent){
if (((!(Lab.isspoon2frame2)) && (Lab.ishold))){
this.setChildIndex(spoon2, (numChildren - 1));
spoon2.startDrag(true, rect2);
};
stored1 = _arg1.target.name;
}
public function stovefn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.stovekept)))){
if (speedControl.stove.hitTestObject(holderhit)){
trace("stove");
speedControl.stove.removeEventListener(MouseEvent.MOUSE_UP, stovefn2);
stove1.visible = true;
speedControl.stove.visible = false;
Lab.stovekept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function swglot(_arg1:MouseEvent){
glow.visible = false;
}
public function spoon1fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((spoon1.hitTestObject(cucl21)) && (!(Lab.iscucl2hit)))){
spoon1.visible = false;
Lab.iscucl2hit = true;
cucl21.gotoAndPlay(2);
};
if (Lab.ish1){
if (((((spoon1.hitTestObject(h1)) && ((spoon1.currentFrame == 2)))) && (!(Lab.isspoonframe2)))){
spoon1.visible = false;
spoon1.gotoAndStop(1);
h1.gotoAndPlay(2);
};
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function b1fn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.beakerkept)))){
if (speedControl.b1.hitTestObject(holderhit)){
trace("beaker");
speedControl.b1.removeEventListener(MouseEvent.MOUSE_UP, b1fn2);
beaker1.visible = true;
speedControl.b1.visible = false;
Lab.beakerkept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function exitdoorshotfn(_arg1:MouseEvent){
exitdoorshot.removeEventListener(MouseEvent.CLICK, exitdoorshotfn);
gotoAndStop("exitdoorzoom");
}
public function fcloth1fn1(_arg1:MouseEvent){
if (Lab.clothdipped){
fcloth1.visible = false;
cloth1.visible = true;
};
}
public function litmusfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.litmuskept)))){
if (speedControl.litmus.hitTestObject(holderhit)){
trace("litmus");
speedControl.litmus.removeEventListener(MouseEvent.MOUSE_UP, litmusfn2);
litmus1.visible = true;
speedControl.litmus.visible = false;
Lab.litmuskept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function fcloth1fna(_arg1:MouseEvent){
if (((((Lab.ispoured) && (Lab.scissorcloth))) && (!(Lab.clothdipped)))){
this.setChildIndex(fcloth, (numChildren - 1));
fcloth.startDrag(true, rect2);
};
stored1 = _arg1.target.name;
}
public function draw1openfn(_arg1:MouseEvent):void{
draw1open.removeEventListener(MouseEvent.CLICK, draw1openfn);
draw1open.x = 800;
draw1.gotoAndPlay(2);
}
public function rm(){
var _local1:int;
_local1 = 0;
while (_local1 <= 10) {
this[("a" + _local1)].removeEventListener(MouseEvent.MOUSE_DOWN, switchit);
this[("a" + _local1)].removeEventListener(MouseEvent.MOUSE_UP, swglot);
_local1++;
};
}
public function scissor2fnafna1(_arg1:MouseEvent){
stopDrag();
storedBoolean1 = true;
if (((scissor2.hitTestObject(hit2)) && (!(Lab.ishold)))){
scissor2.visible = false;
hold.gotoAndStop(1);
Lab.ishold = true;
hit2.y = 800;
h4.visible = true;
};
if (((((scissor2.hitTestObject(cloth1)) && (Lab.ispoured))) && (!(Lab.scissorcloth)))){
trace("cloth");
scissor2.visible = false;
cloth1.visible = false;
fcloth.visible = true;
fcloth.gotoAndStop(2);
Lab.scissorcloth = true;
};
_arg1.currentTarget.x = xArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
}
public function shakefn(_arg1:MouseEvent){
if (((Lab.ish2so4hit) && (!(Lab.shaken)))){
h1.gotoAndPlay(61);
};
}
public function drawzoom1fn(_arg1:MouseEvent){
drawshot.removeEventListener(MouseEvent.CLICK, drawzoom1fn);
gotoAndStop("drawzoom1");
}
public function litmus1fna(_arg1:MouseEvent){
if (Lab.poured){
this.setChildIndex(litmus1, (numChildren - 1));
litmus1.startDrag(true, rect1);
};
stored = _arg1.target.name;
}
public function caco3shotfn(_arg1:MouseEvent){
caco3shot.removeEventListener(MouseEvent.CLICK, caco3shotfn);
gotoAndStop("caco3zoom");
}
public function lensfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.lenshit)))){
if (speedControl.lens.hitTestObject(flitmus1)){
trace("lens");
flitmus1.visible = true;
flitmus1.gotoAndStop(2);
Lab.lenshit = true;
if (Lab.lenshit){
flitmus.visible = false;
beaker1.gotoAndStop(54);
flitmus1.gotoAndStop(2);
speedControl.scissor.visible = true;
speedControl.spoon.visible = true;
speedControl.b1.visible = true;
speedControl.testtube.visible = true;
speedControl.cucl2.visible = false;
speedControl.h2so4.visible = false;
speedControl.stove.visible = false;
speedControl.lighter.visible = false;
};
};
};
}
public function cucl2openfn(_arg1:MouseEvent){
cucl2open.removeEventListener(MouseEvent.CLICK, cucl2openfn);
cucl2open.x = 800;
cucl2door.gotoAndPlay(2);
}
public function cupboardshotfn(_arg1:MouseEvent){
cupboardshot.removeEventListener(MouseEvent.CLICK, cupboardshotfn);
gotoAndStop("cupboardzoom");
}
public function fcloth1na1(_arg1:MouseEvent){
stopDrag();
storedBoolean1 = true;
if (((((((fcloth.hitTestObject(beaker2)) && ((fcloth.currentFrame == 2)))) && (Lab.ispoured))) && (!(Lab.clothdipped)))){
fcloth.removeEventListener(MouseEvent.MOUSE_DOWN, fcloth1fna);
fcloth.visible = false;
beaker2.gotoAndPlay(59);
if (Lab.clothdipped){
cloth1.visible = true;
};
};
_arg1.currentTarget.x = xArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray1[itemArray1.indexOf(MovieClip(_arg1.currentTarget))];
}
public function testtubefn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.testtubekept)))){
if (speedControl.testtube.hitTestObject(holderhit)){
trace("testtube");
speedControl.testtube.removeEventListener(MouseEvent.MOUSE_UP, testtubefn2);
holder.gotoAndStop(2);
speedControl.testtube.visible = false;
Lab.testtubekept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function h2so41fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((((h2so41.hitTestObject(h1)) && (Lab.isspoonframe2))) && (!(Lab.ish2so4hit)))){
h2so41.visible = false;
h1.gotoAndPlay(21);
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function litmus1na1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((((((litmus1.hitTestObject(beaker1)) && ((litmus1.currentFrame == 2)))) && (Lab.poured))) && (!(Lab.litmusdipped)))){
litmus1.visible = false;
beaker1.gotoAndPlay(55);
if (Lab.litmusdipped){
flitmus.visible = true;
scissor1.visible = true;
};
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function scissorfn22(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.scissorkept1)))){
if (speedControl.scissor.hitTestObject(holderhit2)){
trace("scissor2");
speedControl.scissor.removeEventListener(MouseEvent.MOUSE_UP, scissorfn22);
scissor2.visible = true;
speedControl.scissor.visible = false;
Lab.scissorkept1 = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function h1fna1(_arg1:MouseEvent){
stopDrag();
storedBoolean = true;
if (((h1.hitTestObject(stove1)) && (!(Lab.heated)))){
h3.visible = true;
h1.visible = false;
h3.gotoAndPlay(2);
Lab.heated = true;
};
if (((((h1.hitTestObject(beaker1)) && (!(Lab.poured)))) && (Lab.heated))){
h1.visible = false;
beaker1.gotoAndPlay(2);
if (Lab.poured){
beaker1.gotoAndStop(54);
};
};
_arg1.currentTarget.x = xArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
_arg1.currentTarget.y = yArray[itemArray.indexOf(MovieClip(_arg1.currentTarget))];
}
public function leftfn(_arg1:MouseEvent){
left.removeEventListener(MouseEvent.CLICK, leftfn);
left.gotoAndPlay(2);
}
public function scissorfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.scissorkept)))){
if (speedControl.scissor.hitTestObject(holderhit)){
trace("scissor");
speedControl.scissor.removeEventListener(MouseEvent.MOUSE_UP, scissorfn2);
scissor1.visible = true;
speedControl.scissor.visible = false;
Lab.scissorkept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function h1fna(_arg1:MouseEvent){
if (((Lab.shaken) && (Lab.islighterhit))){
this.setChildIndex(h1, (numChildren - 1));
h1.startDrag(true, rect1);
};
stored = _arg1.target.name;
}
public function scissorfna(_arg1:MouseEvent){
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
scissor1.startDrag(true, rect1);
this.setChildIndex(scissor1, (numChildren - 1));
};
stored = _arg1.target.name;
}
public function lightershotfn(_arg1:MouseEvent){
lightershot.removeEventListener(MouseEvent.CLICK, lightershotfn);
lightershot.x = 800;
lighter.visible = false;
speedControl.lighter.visible = true;
Lab.islighter = true;
}
public function left1fn(_arg1:MouseEvent){
left1.removeEventListener(MouseEvent.CLICK, left1fn);
left1.gotoAndPlay(2);
}
public function cucl2shotfn(_arg1:MouseEvent){
cucl2shot.removeEventListener(MouseEvent.CLICK, cucl2shotfn);
gotoAndStop("cucl2zoom");
}
public function switchit(_arg1:MouseEvent){
temp = _arg1.target.name.substring(1, 3);
switch (_arg1.target.name){
case ("a" + temp):
if (Number(temp) <= 9){
codes = (codes + temp);
glow.x = _arg1.target.x;
glow.y = _arg1.target.y;
glow.visible = true;
glow.width = _arg1.target.width;
glow.height = _arg1.target.height;
} else {
codes = "";
};
break;
};
glow.visible = false;
CTex.text = codes;
if (codes == "3843"){
rm();
inter = setInterval(spo5, 300);
};
}
public function cupboardkeyfn2(_arg1:MouseEvent):void{
if ((((((((currentFrame == 14)) && (!(Lab.panelkey)))) && (Lab.inner1))) && (Lab.inner2))){
if (speedControl.key.hitTestObject(keyhit)){
downbtn.visible = false;
speedControl.key.removeEventListener(MouseEvent.MOUSE_UP, cupboardkeyfn2);
speedControl.key.visible = false;
keyhit.x = 800;
Lab.panelkey = true;
epanel.gotoAndPlay(2);
};
};
}
public function calallfn(){
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
speedControl.swindow1.visible = true;
holderhit.x = 2000;
};
stage.removeEventListener(MouseEvent.MOUSE_UP, upfn);
speedControl.lens.removeEventListener(MouseEvent.MOUSE_UP, lensfn2);
flitmus1.removeEventListener(MouseEvent.CLICK, flitmusfn1);
flitmus.removeEventListener(MouseEvent.CLICK, flitmusfn);
litmus1.removeEventListener(MouseEvent.MOUSE_UP, litmus1na1);
litmus1.removeEventListener(MouseEvent.MOUSE_DOWN, litmus1fna);
h3.removeEventListener(MouseEvent.CLICK, shakefn3);
h1.removeEventListener(MouseEvent.MOUSE_UP, h1fna1);
h1.removeEventListener(MouseEvent.CLICK, shakefn);
h2so41.removeEventListener(MouseEvent.MOUSE_UP, h2so41fna1);
h2so41.removeEventListener(MouseEvent.MOUSE_DOWN, h2so41fna);
spoon1.removeEventListener(MouseEvent.MOUSE_UP, spoon1fna1);
spoon1.removeEventListener(MouseEvent.MOUSE_DOWN, spoon1fna);
lighter1.removeEventListener(MouseEvent.MOUSE_UP, lighter1fna1);
lighter1.removeEventListener(MouseEvent.MOUSE_DOWN, lighter1fna);
scissor1.removeEventListener(MouseEvent.MOUSE_UP, scissorfna1);
scissor1.removeEventListener(MouseEvent.MOUSE_DOWN, scissorfna);
}
public function closefn1(_arg1:MouseEvent){
scissor1.parent.removeChild(scissor1);
spoon1.parent.removeChild(spoon1);
h2so41.parent.removeChild(h2so41);
h1.parent.removeChild(h1);
lighter1.parent.removeChild(lighter1);
litmus1.parent.removeChild(litmus1);
if (Lab.inner1){
speedControl.sf1.visible = true;
};
speedControl.swindow1.visible = true;
closebtn.removeEventListener(MouseEvent.CLICK, closefn1);
calallfn();
trace(("currentframe " + Lab.tempnum));
this.gotoAndStop(Lab.tempnum);
}
public function h2so4shotfn(_arg1:MouseEvent){
h2so4shot.removeEventListener(MouseEvent.CLICK, h2so4shotfn);
gotoAndStop("h2so4zoom");
}
public function lensfn21(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.lenshit1)))){
if (speedControl.lens.hitTestObject(fcloth1)){
trace("lens1");
fcloth1.visible = true;
speedControl.lens.removeEventListener(MouseEvent.MOUSE_UP, lensfn2);
fcloth1.gotoAndStop(2);
Lab.lenshit1 = true;
if (Lab.lenshit1){
fcloth.visible = false;
beaker2.gotoAndStop(54);
fcloth1.gotoAndStop(2);
speedControl.scissor.visible = false;
speedControl.spoon.visible = false;
speedControl.b1.visible = false;
speedControl.testtube.visible = false;
};
};
};
}
public function closefn2(_arg1:MouseEvent){
scissor2.parent.removeChild(scissor2);
spoon2.parent.removeChild(spoon2);
hcl2.parent.removeChild(hcl2);
h4.parent.removeChild(h4);
cloth1.parent.removeChild(cloth1);
if (Lab.inner2){
speedControl.sf2.visible = true;
};
speedControl.swindow2.visible = true;
closebtn1.removeEventListener(MouseEvent.CLICK, closefn2);
callfn();
trace(("currentframe " + Lab.tempnum));
this.gotoAndStop(Lab.tempnum);
}
public function spoonshotfn(_arg1:MouseEvent){
spoonshot.removeEventListener(MouseEvent.CLICK, spoonshotfn);
spoon.visible = false;
Lab.isspoon = true;
speedControl.spoon.visible = true;
}
public function spoonfn22(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.spoonkept1)))){
if (speedControl.spoon.hitTestObject(holderhit2)){
trace("spoon2");
speedControl.spoon.removeEventListener(MouseEvent.MOUSE_UP, spoonfn22);
spoon2.visible = true;
speedControl.spoon.visible = false;
Lab.spoonkept1 = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function caco3fn2(_arg1:MouseEvent):void{
if ((((currentFrame == 17)) && (!(Lab.caco3kept)))){
if (speedControl.caco3.hitTestObject(holderhit2)){
trace("cucl2");
speedControl.caco3.removeEventListener(MouseEvent.MOUSE_UP, caco3fn2);
caco33.visible = true;
speedControl.caco3.visible = false;
Lab.caco3kept = true;
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
holderhit2.x = 2000;
};
};
};
}
public function accessshotfn(_arg1:MouseEvent){
accessshot.removeEventListener(MouseEvent.CLICK, keyshotfn);
gotoAndStop("accesszoom");
}
public function pauseFun(_arg1:MouseEvent){
Lab.inPassMode = true;
Lab.timer.stop();
pauseMc.gotoAndStop(2);
if (Lab.soundToggle){
Lab.soundChannel.stop();
};
}
public function callfn(){
if (((((((((((((Lab.testtubekept1) && (Lab.beakerkept1))) && (Lab.clothkept))) && (Lab.scissorkept1))) && (Lab.caco3kept))) && (Lab.hclkept))) && (Lab.spoonkept1))){
speedControl.swindow2.visible = true;
holderhit2.x = 2000;
};
speedControl.lens.removeEventListener(MouseEvent.MOUSE_UP, lensfn21);
fcloth1.removeEventListener(MouseEvent.CLICK, fcloth1fn1);
cloth1.removeEventListener(MouseEvent.CLICK, fclothfn);
fcloth.removeEventListener(MouseEvent.MOUSE_UP, fcloth1na1);
h4.removeEventListener(MouseEvent.MOUSE_UP, h4fna1);
spoon2.removeEventListener(MouseEvent.MOUSE_UP, spoon2fna1);
scissor2.removeEventListener(MouseEvent.MOUSE_UP, scissor2fnafna1);
scissor2.removeEventListener(MouseEvent.MOUSE_DOWN, scissor2fna);
}
public function spoonfn2(_arg1:MouseEvent):void{
if ((((currentFrame == 16)) && (!(Lab.spoonkept)))){
if (speedControl.spoon.hitTestObject(holderhit)){
trace("spoon");
speedControl.spoon.removeEventListener(MouseEvent.MOUSE_UP, spoonfn2);
spoon1.visible = true;
speedControl.spoon.visible = false;
Lab.spoonkept = true;
if (((((((((((((((((Lab.h2so4kept) && (Lab.cucl2kept))) && (Lab.spoonkept))) && (Lab.scissorkept))) && (Lab.litmuskept))) && (Lab.lighterkept))) && (Lab.beakerkept))) && (Lab.stovekept))) && (Lab.testtubekept))){
holderhit.x = 800;
};
};
};
}
public function shakefn3(_arg1:MouseEvent){
if (((Lab.heated) && (!(Lab.poured)))){
h1.gotoAndStop(100);
h3.visible = false;
h1.visible = true;
};
}
public function spo52(){
trace("solved");
Lab.solved = true;
clearInterval(inter2);
clearInterval(delay);
gotoAndStop("keyzoom");
}
public function rightfn(_arg1:MouseEvent){
right.removeEventListener(MouseEvent.CLICK, rightfn);
right.gotoAndPlay(2);
}
}
}//package Chemistryescape_fla
Section 8
//gdgqetvcopyas_339 (Chemistryescape_fla.gdgqetvcopyas_339)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class gdgqetvcopyas_339 extends MovieClip {
public function gdgqetvcopyas_339(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Chemistryescape_fla
Section 9
//hittest580285_109 (Chemistryescape_fla.hittest580285_109)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285_109 extends MovieClip {
public function hittest580285_109(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Shelf");
}
}
}//package Chemistryescape_fla
Section 10
//hittest580285cfspyfs_181 (Chemistryescape_fla.hittest580285cfspyfs_181)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285cfspyfs_181 extends MovieClip {
public function hittest580285cfspyfs_181(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Book");
}
}
}//package Chemistryescape_fla
Section 11
//hittest580285copy4y1_188 (Chemistryescape_fla.hittest580285copy4y1_188)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copy4y1_188 extends MovieClip {
public function hittest580285copy4y1_188(){
addFrameScript(0, frame1);
}
function frame1(){
if (!Lab.islighter){
Lab.displayText(this, "Lighter");
};
}
}
}//package Chemistryescape_fla
Section 12
//hittest580285copyfa_318 (Chemistryescape_fla.hittest580285copyfa_318)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copyfa_318 extends MovieClip {
public function hittest580285copyfa_318(){
addFrameScript(0, frame1);
}
function frame1(){
if (!Lab.isspoon){
Lab.displayText(this, "Tongs Crucible");
};
}
}
}//package Chemistryescape_fla
Section 13
//hittest580285copyfasf_193 (Chemistryescape_fla.hittest580285copyfasf_193)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copyfasf_193 extends MovieClip {
public function hittest580285copyfasf_193(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Draw");
}
}
}//package Chemistryescape_fla
Section 14
//hittest580285copyfdfas_169 (Chemistryescape_fla.hittest580285copyfdfas_169)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copyfdfas_169 extends MovieClip {
public function hittest580285copyfdfas_169(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Door");
}
}
}//package Chemistryescape_fla
Section 15
//hittest580285copyfs_110 (Chemistryescape_fla.hittest580285copyfs_110)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copyfs_110 extends MovieClip {
public function hittest580285copyfs_110(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Draw");
}
}
}//package Chemistryescape_fla
Section 16
//hittest580285copyfsaf_111 (Chemistryescape_fla.hittest580285copyfsaf_111)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copyfsaf_111 extends MovieClip {
public function hittest580285copyfsaf_111(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Cupboard");
}
}
}//package Chemistryescape_fla
Section 17
//hittest580285copygsd_198 (Chemistryescape_fla.hittest580285copygsd_198)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest580285copygsd_198 extends MovieClip {
public function hittest580285copygsd_198(){
addFrameScript(0, frame1);
}
function frame1(){
if (!Lab.isspoon){
Lab.displayText(this, "Spoon");
};
}
}
}//package Chemistryescape_fla
Section 18
//hittest58028fas5copyfa_197 (Chemistryescape_fla.hittest58028fas5copyfa_197)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class hittest58028fas5copyfa_197 extends MovieClip {
public function hittest58028fas5copyfa_197(){
addFrameScript(0, frame1);
}
function frame1(){
if (!Lab.isspoon){
Lab.displayText(this, "Cupboard");
};
}
}
}//package Chemistryescape_fla
Section 19
//insaSymbol1_348 (Chemistryescape_fla.insaSymbol1_348)
package Chemistryescape_fla {
import flash.display.*;
import flash.text.*;
public dynamic class insaSymbol1_348 extends MovieClip {
public var tex:TextField;
public var okBtn:SimpleButton;
}
}//package Chemistryescape_fla
Section 20
//inv15_124 (Chemistryescape_fla.inv15_124)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class inv15_124 extends MovieClip {
public var Line:MovieClip;
}
}//package Chemistryescape_fla
Section 21
//inv16_120 (Chemistryescape_fla.inv16_120)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class inv16_120 extends MovieClip {
public var sndon:SimpleButton;
public var sndoff:MovieClip;
public function inv16_120(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 22
//inv35_129 (Chemistryescape_fla.inv35_129)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class inv35_129 extends MovieClip {
public var memory:String;
public var lens:MovieClip;
public var itemArray:Array;
public var scissor:MovieClip;
public var b2:MovieClip;
public var cloth:MovieClip;
public var b1:MovieClip;
public var spoon:MovieClip;
public var testtube:MovieClip;
public var caco3:MovieClip;
public var cucl2:MovieClip;
public var sf2:MovieClip;
public var lighter:MovieClip;
public var sf1:MovieClip;
public var xpositionArray:Array;
public var rect:Rectangle;
public var stove:MovieClip;
public var key:MovieClip;
public var h2so4:MovieClip;
public var i:int;
public var memoryindex:Number;
public var swindow2:MovieClip;
public var swindow1:MovieClip;
public var hcl:MovieClip;
public var index:Number;
public var litmus:MovieClip;
public var ypositionArray:Array;
public var memoryBoolean:Boolean;
public function inv35_129(){
addFrameScript(0, frame1);
}
public function scrollOver(_arg1:MouseEvent):void{
if ((((((((((((((((((((((((((((((_arg1.target.name == "b1")) || ((_arg1.target.name == "cucl2")))) || ((_arg1.target.name == "caco3")))) || ((_arg1.target.name == "h2so4")))) || ((_arg1.target.name == "b2")))) || ((_arg1.target.name == "lens")))) || ((_arg1.target.name == "scissor")))) || ((_arg1.target.name == "litmus")))) || ((_arg1.target.name == "lighter")))) || ((_arg1.target.name == "stove")))) || ((_arg1.target.name == "hcl")))) || ((_arg1.target.name == "testtube")))) || ((_arg1.target.name == "spoon")))) || ((_arg1.target.name == "key")))) || ((_arg1.target.name == "cloth")))){
Lab.textBoolean = true;
memory = _arg1.target.name;
this.setChildIndex((_arg1.target as MovieClip), (this.numChildren - 1));
_arg1.target.startDrag(true, rect);
};
if (!Lab.inner1){
if (((((((((((((((((((((Lab.cucl2taken) && (Lab.isformula1))) && (Lab.isscissor))) && (Lab.islens))) && (Lab.islitmus))) && (Lab.ish2so4))) && (Lab.isstove))) && (Lab.istesttube))) && (Lab.isbeaker))) && (Lab.islighter))) && (Lab.isspoon))){
if ((((((((((((((((((((((((((((_arg1.target.name == "h2so4")) || ((_arg1.target.name == "scissor")))) || ((_arg1.target.name == "cucl2")))) || ((_arg1.target.name == "spoon")))) || ((_arg1.target.name == "litmus")))) || ((_arg1.target.name == "h2so4")))) || ((_arg1.target.name == "stove")))) || ((_arg1.target.name == "testtube")))) || ((_arg1.target.name == "beaker")))) || ((_arg1.target.name == "lighter")))) || ((_arg1.target.name == "spoon")))) || ((_arg1.target.name == "swindow1")))) || ((_arg1.target.name == "sf1")))) || ((_arg1.target.name == "b1")))){
if (MovieClip(this.parent).currentFrame != 16){
Lab.textBoolean = true;
if (_arg1.target.name == "swindow1"){
swindow1.visible = false;
};
memory = _arg1.target.name;
Lab.tempnum = MovieClip(this.parent).currentFrame;
trace(("frame " + Lab.tempnum));
MovieClip(this.parent).gotoAndStop("inner1");
};
};
};
};
if (((((!(Lab.inner2)) && (Lab.inner1))) && (Lab.clothtaken))){
if ((((((((((_arg1.target.name == "hcl")) || ((_arg1.target.name == "caco3")))) || ((_arg1.target.name == "cloth")))) || ((_arg1.target.name == "sf2")))) || ((_arg1.target.name == "swindow2")))){
if (MovieClip(this.parent).currentFrame != 17){
Lab.textBoolean = true;
if (_arg1.target.name == "swindow2"){
swindow1.visible = false;
};
memory = _arg1.target.name;
Lab.tempnum = MovieClip(this.parent).currentFrame;
trace(("frame " + Lab.tempnum));
MovieClip(this.parent).gotoAndStop("inner2");
};
};
};
if (_arg1.target.name == "sf1"){
Lab.textBoolean = true;
memory = _arg1.target.name;
sf1.visible = false;
Lab.tempnum = MovieClip(this.parent).currentFrame;
MovieClip(this.parent).gotoAndStop("last1");
};
if (_arg1.target.name == "sf2"){
Lab.textBoolean = true;
memory = _arg1.target.name;
sf2.visible = false;
Lab.tempnum = MovieClip(this.parent).currentFrame;
MovieClip(this.parent).gotoAndStop("last2");
};
if (_arg1.target.name == "b1"){
MovieClip(this.parent).info.text = "Beaker";
};
if (_arg1.target.name == "lens"){
MovieClip(this.parent).info.text = "Magnifier";
};
if (_arg1.target.name == "scissor"){
MovieClip(this.parent).info.text = "Tongs Crucible";
};
if (_arg1.target.name == "cucl2"){
MovieClip(this.parent).info.text = "CuCl2";
};
if (_arg1.target.name == "caco3"){
MovieClip(this.parent).info.text = "CaCO3";
};
if (_arg1.target.name == "h2so4"){
MovieClip(this.parent).info.text = "H2SO4";
};
if (_arg1.target.name == "litmus"){
MovieClip(this.parent).info.text = "Blue Litmus";
};
if (_arg1.target.name == "lighter"){
MovieClip(this.parent).info.text = "Lighter";
};
if (_arg1.target.name == "stove"){
MovieClip(this.parent).info.text = "Burner";
};
if (_arg1.target.name == "hcl"){
MovieClip(this.parent).info.text = "HCL";
};
if (_arg1.target.name == "testtube"){
MovieClip(this.parent).info.text = "Test Tube";
};
if (_arg1.target.name == "spoon"){
MovieClip(this.parent).info.text = "Spoon";
};
if (_arg1.target.name == "key"){
MovieClip(this.parent).info.text = "Key";
};
if (_arg1.target.name == "cloth"){
MovieClip(this.parent).info.text = "Cloth";
};
}
function frame1(){
stop();
itemArray = [b1, cucl2, caco3, h2so4, b2, lens, scissor, litmus, lighter, stove, hcl, testtube, spoon, key, cloth, swindow1, swindow2, sf1, sf2];
xpositionArray = new Array();
ypositionArray = new Array();
rect = new Rectangle(-20, 10, 1100, -530);
memoryBoolean = false;
i = 0;
while (i < itemArray.length) {
itemArray[i].visible = false;
itemArray[i].mouseChildren = false;
itemArray[i].buttonMode = true;
xpositionArray.push(itemArray[i].x);
ypositionArray.push(itemArray[i].y);
i++;
};
this.addEventListener(MouseEvent.MOUSE_DOWN, scrollOver);
stage.addEventListener(MouseEvent.MOUSE_UP, stopScroll);
}
public function stopScroll(_arg1:MouseEvent):void{
stopDrag();
MovieClip(this.parent).info.text = " ";
if ((((((((((((((((((((((((((((((((((((((_arg1.target.name == "b1")) || ((_arg1.target.name == "cucl2")))) || ((_arg1.target.name == "caco3")))) || ((_arg1.target.name == "h2so4")))) || ((_arg1.target.name == "b2")))) || ((_arg1.target.name == "lens")))) || ((_arg1.target.name == "scissor")))) || ((_arg1.target.name == "litmus")))) || ((_arg1.target.name == "lighter")))) || ((_arg1.target.name == "stove")))) || ((_arg1.target.name == "hcl")))) || ((_arg1.target.name == "testtube")))) || ((_arg1.target.name == "spoon")))) || ((_arg1.target.name == "key")))) || ((_arg1.target.name == "cloth")))) || ((_arg1.target.name == "swindow1")))) || ((_arg1.target.name == "swindow2")))) || ((_arg1.target.name == "sf1")))) || ((_arg1.target.name == "sf2")))){
Lab.textBoolean = false;
index = itemArray.indexOf(_arg1.target);
_arg1.target.x = xpositionArray[index];
_arg1.target.y = ypositionArray[index];
memoryBoolean = true;
};
if ((((((((((((((((((((((((((((((((((((((memory == "b1")) || ((memory == "cucl2")))) || ((memory == "caco3")))) || ((memory == "h2so4")))) || ((memory == "b2")))) || ((memory == "lens")))) || ((memory == "scissor")))) || ((memory == "litmus")))) || ((memory == "lighter")))) || ((memory == "stove")))) || ((memory == "hcl")))) || ((memory == "testtube")))) || ((memory == "spoon")))) || ((memory == "key")))) || ((memory == "cloth")))) || ((memory == "swindow1")))) || ((memory == "swindow2")))) || ((memory == "sf1")))) || ((memory == "sf2")))){
if (!memoryBoolean){
Lab.textBoolean = false;
memoryindex = itemArray.indexOf(MovieClip(getChildByName(memory)));
MovieClip(this.getChildByName(memory)).x = xpositionArray[memoryindex];
MovieClip(this.getChildByName(memory)).y = ypositionArray[memoryindex];
};
};
memory = "";
memoryBoolean = false;
}
}
}//package Chemistryescape_fla
Section 23
//inv38_157 (Chemistryescape_fla.inv38_157)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
public dynamic class inv38_157 extends MovieClip {
public var hit1:MovieClip;
public var block:MovieClip;
public function inv38_157(){
addFrameScript(0, frame1, 1, frame2);
}
public function pauseEnable(_arg1:MouseEvent){
Lab.timer.start();
Lab.inPassMode = false;
gotoAndStop(1);
if (Lab.soundToggle){
Lab.soundChannel = Lab.bg.play(0, int.MAX_VALUE);
};
}
function frame1(){
stop();
}
function frame2(){
hit1.buttonMode = true;
hit1.addEventListener(MouseEvent.CLICK, pauseEnable);
block.buttonMode = false;
}
}
}//package Chemistryescape_fla
Section 24
//jjSymbol22_220 (Chemistryescape_fla.jjSymbol22_220)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class jjSymbol22_220 extends MovieClip {
public var cloth:MovieClip;
public function jjSymbol22_220(){
addFrameScript(0, frame1, 6, frame7);
}
public function cccfn(_arg1:MouseEvent){
if (!Lab.clothtaken){
cloth.removeEventListener(MouseEvent.CLICK, cccfn);
cloth.visible = false;
MovieClip(this.parent.parent).speedControl.cloth.visible = false;
Lab.clothtaken = true;
};
}
function frame7(){
stop();
cloth.addEventListener(MouseEvent.CLICK, cccfn);
if (!Lab.clothtaken){
cloth.visible = false;
};
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 25
//jjSymbol22copyfa_225 (Chemistryescape_fla.jjSymbol22copyfa_225)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class jjSymbol22copyfa_225 extends MovieClip {
public var cloth:MovieClip;
public function jjSymbol22copyfa_225(){
addFrameScript(0, frame1, 6, frame7);
}
public function cccfn(_arg1:MouseEvent){
cloth.removeEventListener(MouseEvent.CLICK, cccfn);
cloth.visible = false;
MovieClip(this.parent.parent).speedControl.cloth.visible = true;
Lab.clothtaken = true;
MovieClip(this.parent.parent).speedControl.sf1.visible = false;
}
function frame7(){
stop();
if (((!(Lab.clothtaken)) && (Lab.inner1))){
Lab.displayText(cloth, "Door");
cloth.addEventListener(MouseEvent.CLICK, cccfn);
};
if (Lab.clothtaken){
cloth.visible = false;
};
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 26
//lastsue03852_295 (Chemistryescape_fla.lastsue03852_295)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class lastsue03852_295 extends MovieClip {
public function lastsue03852_295(){
addFrameScript(19, frame20);
}
function frame20(){
stop();
MovieClip(this.parent.parent.parent).gotoAndStop("congrats");
}
}
}//package Chemistryescape_fla
Section 27
//MainTimeline (Chemistryescape_fla.MainTimeline)
package Chemistryescape_fla {
import fl.controls.*;
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import mochi.as3.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var backBut:SimpleButton;
public var secs1:String;
public var nameText:TextField;
public var cn:Number;
public var arr:Array;
public var moreGames:SimpleButton;
public var submitScore:SimpleButton;
public var msg:MovieClip;
public var countryCombo:ComboBox;
public var score:int;
public var contestMenu:ContextMenu;
public var mc:MovieClip;
public var playBut:SimpleButton;
public var insBut:SimpleButton;
public var timeCount:Number;
public var playAgain:SimpleButton;
public var contextmenuItem:ContextMenuItem;
public var scoreText:TextField;
public var game:MovieClip;
public var mins1:String;
public function MainTimeline(){
addFrameScript(0, frame1, 5, frame6, 10, frame11, 15, frame16, 20, frame21);
}
public function submitMyScore(_arg1:MouseEvent):void{
if (((!((nameText.text == ""))) && (!((countryCombo.selectedItem.label == "All Countries"))))){
_arg1.target.mouseEnabled = false;
ScoreSubmit.sendMyScore(nameText.text, String(countryCombo.selectedItem.label), score, 11600, "http://www.123bee.com", 1);
submitScore.removeEventListener(MouseEvent.CLICK, submitMyScore);
countryCombo.removeAll();
countryCombo.editable = false;
countryCombo.parent.removeChild(countryCombo);
resetAll();
gotoAndStop("start");
} else {
msg.visible = true;
if (nameText.text == ""){
msg.tex.text = "Enter your name";
} else {
if (countryCombo.selectedItem.label == "All Countries"){
msg.tex.text = "Select your country";
};
};
};
}
public function gotoBee(_arg1:MouseEvent):void{
navigateToURL(new URLRequest("http://www.123bee.com"), "_blank");
}
public function gotoPlay(_arg1:MouseEvent):void{
this.gotoAndStop("play");
}
public function msgHide(_arg1:MouseEvent){
msg.visible = false;
}
function frame16(){
MochiBot.track(this, "72d41608");
stop();
Lab.soundChannel = Lab.bg.play(0, int.MAX_VALUE);
game.soundButton.addEventListener(MouseEvent.CLICK, getSound);
timeCount = 0;
Lab.timer.addEventListener(TimerEvent.TIMER, onTimer);
Lab.timer.start();
game.times.text = "00:00";
}
public function getSound(_arg1:MouseEvent):void{
if (_arg1.currentTarget.currentFrame == 1){
Lab.soundToggle = false;
Lab.soundChannel.stop();
_arg1.currentTarget.gotoAndStop(2);
} else {
Lab.soundToggle = true;
Lab.soundChannel = Lab.bg.play(0, int.MAX_VALUE);
_arg1.currentTarget.gotoAndStop(1);
};
}
public function Site(_arg1:Event):void{
var _local2:URLRequest;
_local2 = new URLRequest("http://www.123bee.com");
navigateToURL(_local2, "_blank");
}
function frame11(){
stop();
backBut.addEventListener(MouseEvent.CLICK, gotoStart);
}
public function onTimer(_arg1:TimerEvent):void{
var _local2:Number;
var _local3:Number;
timeCount = (timeCount + 1);
Lab.timingScore++;
_local2 = Math.floor((timeCount % 60));
_local3 = Math.floor((timeCount / 60));
if (String(_local2).length == 1){
secs1 = ("0" + _local2);
} else {
secs1 = String(_local2);
};
if (String(_local3).length == 1){
mins1 = ("0" + _local3);
} else {
mins1 = String(_local3);
};
if (game.times){
game.times.text = ((mins1 + ":") + secs1);
};
}
function frame6(){
stop();
playBut.addEventListener(MouseEvent.CLICK, gotoPlay);
insBut.addEventListener(MouseEvent.CLICK, gotoInstruct);
}
public function gotoInstruct(_arg1:MouseEvent):void{
this.gotoAndStop("instruct");
}
public function gotoStart(_arg1:MouseEvent):void{
this.gotoAndStop("play");
}
function frame21(){
stop();
scoreText.mouseEnabled = false;
scoreText.selectable = false;
countryCombo = new ComboBox();
addChild(countryCombo);
countryCombo.width = mc.width;
countryCombo.x = mc.x;
countryCombo.y = mc.y;
this.setChildIndex(msg, (numChildren - 1));
score = ((10 / Lab.timingScore) * 50000);
scoreText.text = score.toString();
playAgain.addEventListener(MouseEvent.CLICK, gotoPlay5);
moreGames.addEventListener(MouseEvent.CLICK, gotoBee);
submitScore.addEventListener(MouseEvent.CLICK, submitMyScore);
nameText.restrict = "a-z A-Z 0-9\\ .";
nameText.maxChars = 12;
cn = 0;
msg.visible = false;
msg.x = 141;
arr = new Array("Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Antigua and Barbuda", "Argentina", "Armenia", "Australia", "Austria", "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", "Belize", "Benin", "Bhutan", "Bolivia", "Bosnia and Herzegovina", "Botswana", "Brazil", "Brunei", "Darussalam", "Bulgaria", "Burkina", "Faso", "Burma (Myanmar)", "Burundi", "Cambodia", "Cameroon", "Canada", "Cape", "Verde", "Central African Republic", "Chad", "Chile", "China", "Colombia", "Comoros", "Congo", "Costa Rica", "Croatia", "Cuba", "Cyprus", "Czech Republic", "Denmark", "Djibouti", "Dominica", "Dominican Republic", "Ecuador", "East", "Timor", "Egypt", "Salvador", "England", "Equatorial Guinea", "Eritrea", "Estonia", "Ethiopia", "Fiji", "Finland", "France", "Gabon", "Gambia", "Georgia", "Germany", "Ghana", "Great Britain", "Greece", "Grenada", "Guatemala", "Guinea", "Guinea-Bissau", "Guyana", "Haiti", "Honduras", "Hungary", "Iceland", "India", "Indonesia", "Iran", "Iraq", "Ireland", "Israel", "Italy", "Jamaica", "Japan", "Jordan", "Kazakhstan", "Kenya", "Kiribati", "Korea (North)", "Korea (South)", "Kosovo", "Kuwait", "Kyrgyzstan", "Laos", "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg", "Macedonia", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", "Mauritania", "Mauritius", "Mexico", "Micronesia", "Moldova", "Monaco", "Mongolia", "Montenegro", "Morocco", "Mozambique", "Myanmar", "Namibia", "Nauru", "Nepal", "Netherlands", "New Zealand", "Nicaragua", "Niger", "Nigeria", "Norway", "Northern Ireland", "Oman", "Pakistan", "Palau", "Palestinian", "Panama", "Papua new Guinea", "Paraguay", "Peru", "Philippines", "Poland", "Portugal", "Qatar", "Romania", "Russia", "Rwanda", "Nevis", "Lucia Vincent", "Arabia", "Scotland", "Senegal", "Serbia", "Seychelles", "Sierra", "Leone", "Singapore", "Slovakia", "Slovenia", "Solomon Islands", "Somalia", "South Africa", "Spain", "Sri Lanka", "Sudan", "Suriname", "Swaziland", "Sweden", "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "Togo", "Tonga", "Trinidad", "Tobago", "Tunisia", "Turkey", "Turkmenistan", "Tuvalu", "Uganda", "Ukraine", "United Arab Emirates", "United Kingdom", "United States", "Uruguay", "Uzbekistan", "Vanuatu", "Vatican", "Venezuela", "Vietnam", "Western Sahara*", "Wales", "Yemen", "Zaire", "Zambia", "Zimbabwe");
arr = arr.sort();
countryCombo.addItem({label:"All Countries"});
cn = 0;
while (cn < arr.length) {
countryCombo.addItem({label:arr[cn]});
cn++;
};
msg.okBtn.addEventListener(MouseEvent.CLICK, msgHide);
}
public function resetAll():void{
Lab.timingScore = 0;
Lab.inPassMode = false;
Lab.breset = 0;
Lab.hitcount = 0;
Lab.hitalpha = 0;
Lab.tempnum = 0;
Lab.cucl2taken = false;
Lab.isformula1 = false;
Lab.isscissor = false;
Lab.islens = false;
Lab.islitmus = false;
Lab.ish2so4 = false;
Lab.isstove = false;
Lab.istesttube = false;
Lab.isbeaker = false;
Lab.islighter = false;
Lab.isspoon = false;
Lab.testtubekept = false;
Lab.stovekept = false;
Lab.beakerkept = false;
Lab.litmuskept = false;
Lab.lighterkept = false;
Lab.scissorkept = false;
Lab.spoonkept = false;
Lab.cucl2kept = false;
Lab.h2so4kept = false;
Lab.ish1 = false;
Lab.islighterhit = false;
Lab.isspoonframe2 = false;
Lab.iscucl2hit = false;
Lab.ish2so4hit = false;
Lab.shaken = false;
Lab.heated = false;
Lab.poured = false;
Lab.litmusdipped = false;
Lab.scissorlitmus = false;
Lab.lenshit = false;
Lab.inner1 = false;
Lab.ishcl = false;
Lab.iscaco3 = false;
Lab.testtubekept1 = false;
Lab.beakerkept1 = false;
Lab.cloth = false;
Lab.clothkept = false;
Lab.scissorkept1 = false;
Lab.spoonkept1 = false;
Lab.caco3kept = false;
Lab.hclkept = false;
Lab.ishold = false;
Lab.iscaco3hit = false;
Lab.isspoon2frame2 = false;
Lab.ishcl2hit = false;
Lab.isshaken = false;
Lab.ispoured = false;
Lab.clothdipped = false;
Lab.scissorcloth = false;
Lab.lenshit1 = false;
Lab.inner2 = false;
Lab.iskey = false;
Lab.iscloth = false;
Lab.clothtaken = false;
Lab.glasshit = false;
Lab.panelkey = false;
Lab.fkeyword = false;
Lab.solved = false;
Lab.istime = false;
Lab.gameTimesec = 0;
Lab.gameTimemins = 0;
Lab.gameTimehrs = 0;
Lab.gameTimescore = 0;
Lab.textBoolean = false;
Lab.soundToggle = true;
}
function frame1(){
stop();
MochiAd.showPreGameAd({clip:root, id:"3cbcc77ed619a164", res:"650x450"});
contestMenu = new ContextMenu();
contestMenu.hideBuiltInItems();
stage.scaleMode = StageScaleMode.EXACT_FIT;
contextmenuItem = new ContextMenuItem("www.123bee.com");
contextmenuItem.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, Site);
contestMenu.customItems.push(contextmenuItem);
this.contextMenu = contestMenu;
stage.tabChildren = false;
}
public function gotoPlay5(_arg1:MouseEvent):void{
playAgain.removeEventListener(MouseEvent.CLICK, gotoPlay5);
countryCombo.removeAll();
countryCombo.editable = false;
countryCombo.parent.removeChild(countryCombo);
resetAll();
gotoAndStop("start");
}
}
}//package Chemistryescape_fla
Section 28
//new15_172 (Chemistryescape_fla.new15_172)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class new15_172 extends MovieClip {
public var litmus:MovieClip;
public function new15_172(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
if (!Lab.islitmus){
litmus.addEvenListener(MouseEvent.CLICK, bluelitmusfn);
};
if (Lab.islitmus){
litmus.visible = false;
};
}
public function bluelitmusfn(_arg1:MouseEvent){
litmus.removeEvenListener(MouseEvent.CLICK, bluelitmusfn);
litmus.visible = false;
MovieClip(this.parent.parent).speedControl.litmus.visible = true;
Lab.islitmus = true;
}
}
}//package Chemistryescape_fla
Section 29
//new15copy521_179 (Chemistryescape_fla.new15copy521_179)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class new15copy521_179 extends MovieClip {
public var litmus:MovieClip;
public function new15copy521_179(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
if (!Lab.islitmus){
litmus.addEventListener(MouseEvent.CLICK, bluelitmusfn);
};
if (Lab.islitmus){
litmus.visible = false;
};
}
public function bluelitmusfn(_arg1:MouseEvent){
litmus.removeEventListener(MouseEvent.CLICK, bluelitmusfn);
litmus.visible = false;
MovieClip(this.parent.parent).speedControl.litmus.visible = true;
Lab.islitmus = true;
if (Lab.islitmus){
MovieClip(this.parent.parent).cupdoor.gotoAndStop(1);
};
}
}
}//package Chemistryescape_fla
Section 30
//NEW4_333 (Chemistryescape_fla.NEW4_333)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class NEW4_333 extends MovieClip {
public function NEW4_333(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
Lab.inner2 = true;
MovieClip(this.parent).speedControl.swindow2.visible = false;
MovieClip(this.parent).speedControl.lens.visible = false;
}
}
}//package Chemistryescape_fla
Section 31
//NEW4qwcopy_343 (Chemistryescape_fla.NEW4qwcopy_343)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class NEW4qwcopy_343 extends MovieClip {
public function NEW4qwcopy_343(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 32
//new80_170 (Chemistryescape_fla.new80_170)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
public dynamic class new80_170 extends MovieClip {
public var bookshot:MovieClip;
public var book:MovieClip;
public function new80_170(){
addFrameScript(0, frame1, 1, frame2);
}
public function bookshotfn(_arg1:MouseEvent){
bookshot.removeEventListener(MouseEvent.CLICK, bookshotfn);
bookshot.x = 800;
book.gotoAndStop(2);
}
function frame1(){
stop();
}
function frame2(){
stop();
if (!Lab.islitmus){
bookshot.addEventListener(MouseEvent.CLICK, bookshotfn);
};
}
}
}//package Chemistryescape_fla
Section 33
//s_263 (Chemistryescape_fla.s_263)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class s_263 extends MovieClip {
public function s_263(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 34
//Sydasmbol27copy_242 (Chemistryescape_fla.Sydasmbol27copy_242)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Sydasmbol27copy_242 extends MovieClip {
public function Sydasmbol27copy_242(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 35
//Symboggfl27copy_248 (Chemistryescape_fla.Symboggfl27copy_248)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symboggfl27copy_248 extends MovieClip {
public function Symboggfl27copy_248(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 36
//Symbol1_287 (Chemistryescape_fla.Symbol1_287)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol1_287 extends MovieClip {
public var a2:MovieClip;
public var a13:MovieClip;
public var a14:MovieClip;
public var a15:MovieClip;
public var a16:MovieClip;
public var a18:MovieClip;
public var a19:MovieClip;
public var a11:MovieClip;
public var a10:MovieClip;
public var a17:MovieClip;
public var a21:MovieClip;
public var a22:MovieClip;
public var a23:MovieClip;
public var a24:MovieClip;
public var a26:MovieClip;
public var a27:MovieClip;
public var i:int;
public var a25:MovieClip;
public var displaytxt:TextField;
public var a12:MovieClip;
public var a20:MovieClip;
public var red:MovieClip;
public var inter1:Number;
public var codes1:String;
public var temp1:String;
public var green:MovieClip;
public var CharArr:Array;
public var a3:MovieClip;
public var a4:MovieClip;
public var a5:MovieClip;
public var a6:MovieClip;
public var a8:MovieClip;
public var a9:MovieClip;
public var a7:MovieClip;
public var a1:MovieClip;
public function Symbol1_287(){
addFrameScript(0, frame1, 50, frame51);
}
public function swglot1(_arg1:MouseEvent){
MovieClip(this.parent).glow.visible = false;
}
function frame1(){
stop();
}
public function switchit1(_arg1:MouseEvent){
temp1 = _arg1.target.name.substring(1, 3);
trace(temp1);
switch (_arg1.target.name){
case ("a" + temp1):
if (Number(temp1) <= 26){
codes1 = (codes1 + CharArr[temp1]);
MovieClip(this.parent).glow.x = _arg1.target.x;
MovieClip(this.parent).glow.y = _arg1.target.y;
MovieClip(this.parent).glow.visible = true;
MovieClip(this.parent).glow.width = _arg1.target.width;
MovieClip(this.parent).glow.height = _arg1.target.height;
} else {
codes1 = "";
};
break;
};
MovieClip(this.parent).glow.visible = false;
displaytxt.text = codes1;
if (codes1 == "LAVOISER"){
rm1();
green.gotoAndStop(2);
Lab.inner2 = true;
inter1 = setInterval(spo6, 400);
};
}
public function spo6(){
trace("exit");
clearInterval(inter1);
Lab.fkeyword = true;
MovieClip(this.parent).gotoAndStop("exitdoorzoom");
}
function frame51(){
stop();
MovieClip(this.parent).downbtn.visible = true;
displaytxt.maxChars = 8;
i = 1;
while (i <= 27) {
if (!Lab.fkeyword){
this[("a" + i)].addEventListener(MouseEvent.MOUSE_DOWN, switchit1);
this[("a" + i)].addEventListener(MouseEvent.MOUSE_UP, swglot1);
};
i++;
};
codes1 = "";
temp1 = "";
CharArr = new Array("", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z");
}
public function rm1(){
var _local1:int;
MovieClip(this.parent).glow.visible = false;
_local1 = 1;
while (_local1 <= 26) {
this[("a" + _local1)].removeEventListener(MouseEvent.MOUSE_DOWN, switchit1);
this[("a" + _local1)].removeEventListener(MouseEvent.MOUSE_UP, swglot1);
_local1++;
};
}
}
}//package Chemistryescape_fla
Section 37
//Symbol12copy_208 (Chemistryescape_fla.Symbol12copy_208)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol12copy_208 extends MovieClip {
public var caco3:MovieClip;
public var d4:MovieClip;
public function Symbol12copy_208(){
addFrameScript(0, frame1, 1, frame2, 4, frame5, 9, frame10, 11, frame12, 16, frame17, 23, frame24);
}
public function d4fn(_arg1:MouseEvent){
d4.removeEventListener(MouseEvent.CLICK, d4fn);
this.gotoAndPlay(11);
}
function frame10(){
stop();
MovieClip(this.parent).downbtn.visible = true;
if (!Lab.iscaco3){
Lab.displayText(caco3, "CacO3");
caco3.addEventListener(MouseEvent.CLICK, caco3fn);
};
if (Lab.iscaco3){
caco3.visible = false;
};
d4.addEventListener(MouseEvent.CLICK, d4fn);
}
function frame12(){
MovieClip(this.parent).downbtn.visible = false;
}
function frame1(){
stop();
if (Lab.iscaco3){
caco3.visible = false;
};
}
function frame17(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame5(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
public function caco3fn(_arg1:MouseEvent){
caco3.removeEventListener(MouseEvent.CLICK, caco3fn);
caco3.visible = false;
Lab.iscaco3 = true;
MovieClip(this.parent).speedControl.caco3.visible = true;
MovieClip(this.parent).downbtn.visible = false;
if (Lab.iscaco3){
this.gotoAndPlay(11);
};
}
}
}//package Chemistryescape_fla
Section 38
//Symbol12copy2_212 (Chemistryescape_fla.Symbol12copy2_212)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol12copy2_212 extends MovieClip {
public var beaker:MovieClip;
public var d3:MovieClip;
public function Symbol12copy2_212(){
addFrameScript(0, frame1, 1, frame2, 4, frame5, 9, frame10, 10, frame11, 16, frame17, 23, frame24);
}
function frame10(){
stop();
MovieClip(this.parent).downbtn.visible = true;
if (!Lab.isbeaker){
Lab.displayText(beaker, "Door");
beaker.addEventListener(MouseEvent.CLICK, beakerfn);
};
if (Lab.isbeaker){
beaker.visible = false;
};
d3.addEventListener(MouseEvent.CLICK, d3fn);
}
public function d3fn(_arg1:MouseEvent){
d3.removeEventListener(MouseEvent.CLICK, d3fn);
this.gotoAndPlay(11);
}
public function beakerfn(_arg1:MouseEvent){
beaker.removeEventListener(MouseEvent.CLICK, beakerfn);
beaker.visible = false;
Lab.isbeaker = true;
MovieClip(this.parent).speedControl.b1.visible = true;
MovieClip(this.parent).downbtn.visible = false;
if (Lab.isbeaker){
this.gotoAndPlay(11);
};
}
function frame1(){
stop();
if (Lab.isbeaker){
beaker.visible = false;
};
}
function frame17(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame5(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
function frame11(){
MovieClip(this.parent).downbtn.visible = false;
}
}
}//package Chemistryescape_fla
Section 39
//Symbol12copy4_199 (Chemistryescape_fla.Symbol12copy4_199)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol12copy4_199 extends MovieClip {
public var delay1:Number;
public var stove:MovieClip;
public var d1:MovieClip;
public function Symbol12copy4_199(){
addFrameScript(0, frame1, 1, frame2, 4, frame5, 9, frame10, 16, frame17, 18, frame19, 23, frame24);
}
function frame10(){
stop();
MovieClip(this.parent).downbtn.visible = true;
if (!Lab.isstove){
stove.addEventListener(MouseEvent.CLICK, stovefn);
};
if (Lab.isstove){
stove.visible = false;
};
d1.addEventListener(MouseEvent.CLICK, d1fn);
}
function frame1(){
stop();
if (Lab.isstove){
stove.visible = false;
};
}
function frame19(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame17(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame5(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
public function d1fn(_arg1:MouseEvent){
d1.removeEventListener(MouseEvent.CLICK, d1fn);
this.gotoAndPlay(11);
}
public function stovefn(_arg1:MouseEvent){
stove.removeEventListener(MouseEvent.CLICK, stovefn);
stove.visible = false;
Lab.isstove = true;
MovieClip(this.parent).speedControl.stove.visible = true;
MovieClip(this.parent).downbtn.visible = false;
if (Lab.isstove){
this.gotoAndPlay(11);
};
}
}
}//package Chemistryescape_fla
Section 40
//Symbol12copy5_204 (Chemistryescape_fla.Symbol12copy5_204)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol12copy5_204 extends MovieClip {
public var d2:MovieClip;
public var h2so4:MovieClip;
public var hcl:MovieClip;
public function Symbol12copy5_204(){
addFrameScript(0, frame1, 1, frame2, 4, frame5, 9, frame10, 19, frame20, 23, frame24);
}
function frame10(){
stop();
MovieClip(this.parent).downbtn.visible = true;
if (!Lab.ishcl){
hcl.addEventListener(MouseEvent.CLICK, hclfn);
};
if (Lab.ishcl){
hcl.visible = false;
};
if (!Lab.ish2so4){
h2so4.addEventListener(MouseEvent.CLICK, h2so4fn);
};
if (Lab.ish2so4){
h2so4.visible = false;
};
d2.addEventListener(MouseEvent.CLICK, d2fn);
}
function frame1(){
stop();
if (Lab.ishcl){
hcl.visible = false;
};
if (Lab.ish2so4){
h2so4.visible = false;
};
}
public function hclfn(_arg1:MouseEvent){
hcl.removeEventListener(MouseEvent.CLICK, hclfn);
hcl.visible = false;
Lab.ishcl = true;
MovieClip(this.parent).speedControl.hcl.visible = true;
MovieClip(this.parent).downbtn.visible = false;
if (((Lab.ish2so4) && (Lab.ishcl))){
this.gotoAndPlay(11);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame5(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame20(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
public function h2so4fn(_arg1:MouseEvent){
h2so4.removeEventListener(MouseEvent.CLICK, h2so4fn);
h2so4.visible = false;
Lab.ish2so4 = true;
MovieClip(this.parent).speedControl.h2so4.visible = true;
MovieClip(this.parent).downbtn.visible = false;
if (((Lab.ish2so4) && (Lab.ishcl))){
this.gotoAndPlay(11);
};
}
public function d2fn(_arg1:MouseEvent){
d2.removeEventListener(MouseEvent.CLICK, d2fn);
this.gotoAndPlay(11);
}
}
}//package Chemistryescape_fla
Section 41
//Symbol12cxxopy6_285 (Chemistryescape_fla.Symbol12cxxopy6_285)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol12cxxopy6_285 extends MovieClip {
public var b1:MovieClip;
}
}//package Chemistryescape_fla
Section 42
//Symbol18_130 (Chemistryescape_fla.Symbol18_130)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol18_130 extends MovieClip {
public function Symbol18_130(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 43
//Symbol18copy2fas_206 (Chemistryescape_fla.Symbol18copy2fas_206)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol18copy2fas_206 extends MovieClip {
public function Symbol18copy2fas_206(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 44
//Symbol1copy_219 (Chemistryescape_fla.Symbol1copy_219)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
public dynamic class Symbol1copy_219 extends MovieClip {
public var glass:MovieClip;
public function Symbol1copy_219(){
addFrameScript(0, frame1, 4, frame5, 9, frame10, 15, frame16);
}
public function glassfn(_arg1:MouseEvent){
glass.removeEventListener(MouseEvent.CLICK, glassfn);
Lab.glasshit = true;
glass.gotoAndPlay(2);
}
function frame10(){
stop();
if (!Lab.glasshit){
glass.addEventListener(MouseEvent.CLICK, glassfn);
};
if (Lab.glasshit){
glass.gotoAndStop(7);
};
}
function frame16(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
function frame1(){
stop();
if (Lab.glasshit){
glass.gotoAndStop(7);
};
}
function frame5(){
if (Lab.soundToggle){
Lab.copen.play(0, 1);
};
}
}
}//package Chemistryescape_fla
Section 45
//Symbol25_288 (Chemistryescape_fla.Symbol25_288)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol25_288 extends MovieClip {
public function Symbol25_288(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 46
//Symbol26_215 (Chemistryescape_fla.Symbol26_215)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol26_215 extends MovieClip {
public function Symbol26_215(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 47
//Symbol26copy_292 (Chemistryescape_fla.Symbol26copy_292)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol26copy_292 extends MovieClip {
public function Symbol26copy_292(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 48
//Symbol26copy3_279 (Chemistryescape_fla.Symbol26copy3_279)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol26copy3_279 extends MovieClip {
public function Symbol26copy3_279(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 49
//Symbol27ckhopy_253 (Chemistryescape_fla.Symbol27ckhopy_253)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27ckhopy_253 extends MovieClip {
public function Symbol27ckhopy_253(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 50
//Symbol27cofspy_260 (Chemistryescape_fla.Symbol27cofspy_260)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27cofspy_260 extends MovieClip {
public function Symbol27cofspy_260(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 51
//Symbol27cogdfsgpy_270 (Chemistryescape_fla.Symbol27cogdfsgpy_270)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27cogdfsgpy_270 extends MovieClip {
public function Symbol27cogdfsgpy_270(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 52
//Symbol27copy_254 (Chemistryescape_fla.Symbol27copy_254)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copy_254 extends MovieClip {
public function Symbol27copy_254(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 53
//Symbol27copy_268 (Chemistryescape_fla.Symbol27copy_268)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copy_268 extends MovieClip {
public function Symbol27copy_268(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 54
//Symbol27copy_269 (Chemistryescape_fla.Symbol27copy_269)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copy_269 extends MovieClip {
public function Symbol27copy_269(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 55
//Symbol27copy097_276 (Chemistryescape_fla.Symbol27copy097_276)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copy097_276 extends MovieClip {
public function Symbol27copy097_276(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 56
//Symbol27copy4_264 (Chemistryescape_fla.Symbol27copy4_264)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copy4_264 extends MovieClip {
public function Symbol27copy4_264(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 57
//Symbol27copya_261 (Chemistryescape_fla.Symbol27copya_261)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copya_261 extends MovieClip {
public function Symbol27copya_261(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 58
//Symbol27copybtg_247 (Chemistryescape_fla.Symbol27copybtg_247)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copybtg_247 extends MovieClip {
public function Symbol27copybtg_247(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 59
//Symbol27copyfa_262 (Chemistryescape_fla.Symbol27copyfa_262)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copyfa_262 extends MovieClip {
public function Symbol27copyfa_262(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 60
//Symbol27copyfaf_272 (Chemistryescape_fla.Symbol27copyfaf_272)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copyfaf_272 extends MovieClip {
public function Symbol27copyfaf_272(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 61
//Symbol27copygds_273 (Chemistryescape_fla.Symbol27copygds_273)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copygds_273 extends MovieClip {
public function Symbol27copygds_273(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 62
//Symbol27copygfd_266 (Chemistryescape_fla.Symbol27copygfd_266)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copygfd_266 extends MovieClip {
public function Symbol27copygfd_266(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 63
//Symbol27copygs_271 (Chemistryescape_fla.Symbol27copygs_271)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copygs_271 extends MovieClip {
public function Symbol27copygs_271(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 64
//Symbol27copykgh_252 (Chemistryescape_fla.Symbol27copykgh_252)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copykgh_252 extends MovieClip {
public function Symbol27copykgh_252(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 65
//Symbol27copykkk_275 (Chemistryescape_fla.Symbol27copykkk_275)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copykkk_275 extends MovieClip {
public function Symbol27copykkk_275(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 66
//Symbol27copyl_267 (Chemistryescape_fla.Symbol27copyl_267)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copyl_267 extends MovieClip {
public function Symbol27copyl_267(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 67
//Symbol27copylh_277 (Chemistryescape_fla.Symbol27copylh_277)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copylh_277 extends MovieClip {
public function Symbol27copylh_277(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 68
//Symbol27copylj_265 (Chemistryescape_fla.Symbol27copylj_265)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copylj_265 extends MovieClip {
public function Symbol27copylj_265(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 69
//Symbol27copymnjg_278 (Chemistryescape_fla.Symbol27copymnjg_278)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copymnjg_278 extends MovieClip {
public function Symbol27copymnjg_278(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 70
//Symbol27copynh_246 (Chemistryescape_fla.Symbol27copynh_246)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copynh_246 extends MovieClip {
public function Symbol27copynh_246(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 71
//Symbol27copys_255 (Chemistryescape_fla.Symbol27copys_255)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copys_255 extends MovieClip {
public function Symbol27copys_255(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 72
//Symbol27copyzz_256 (Chemistryescape_fla.Symbol27copyzz_256)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27copyzz_256 extends MovieClip {
public function Symbol27copyzz_256(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 73
//Symbol27kghcopy_251 (Chemistryescape_fla.Symbol27kghcopy_251)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol27kghcopy_251 extends MovieClip {
public function Symbol27kghcopy_251(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 74
//Symbol2877copy_274 (Chemistryescape_fla.Symbol2877copy_274)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol2877copy_274 extends MovieClip {
public function Symbol2877copy_274(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 75
//Symbol2da7copy_244 (Chemistryescape_fla.Symbol2da7copy_244)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol2da7copy_244 extends MovieClip {
public function Symbol2da7copy_244(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 76
//Symbol2fs7copy_259 (Chemistryescape_fla.Symbol2fs7copy_259)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol2fs7copy_259 extends MovieClip {
public function Symbol2fs7copy_259(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 77
//Symbol2hf7copy_249 (Chemistryescape_fla.Symbol2hf7copy_249)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol2hf7copy_249 extends MovieClip {
public function Symbol2hf7copy_249(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 78
//Symbol3_185 (Chemistryescape_fla.Symbol3_185)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol3_185 extends MovieClip {
public function Symbol3_185(){
addFrameScript(0, frame1, 11, frame12);
}
function frame12(){
stop();
Lab.isformula1 = true;
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 79
//Symbol30copy0_241 (Chemistryescape_fla.Symbol30copy0_241)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy0_241 extends MovieClip {
public function Symbol30copy0_241(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 80
//Symbol30copy1_228 (Chemistryescape_fla.Symbol30copy1_228)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy1_228 extends MovieClip {
public function Symbol30copy1_228(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 81
//Symbol30copy2_233 (Chemistryescape_fla.Symbol30copy2_233)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy2_233 extends MovieClip {
public function Symbol30copy2_233(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 82
//Symbol30copy3_234 (Chemistryescape_fla.Symbol30copy3_234)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy3_234 extends MovieClip {
public function Symbol30copy3_234(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 83
//Symbol30copy4_235 (Chemistryescape_fla.Symbol30copy4_235)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy4_235 extends MovieClip {
public function Symbol30copy4_235(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 84
//Symbol30copy5_236 (Chemistryescape_fla.Symbol30copy5_236)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy5_236 extends MovieClip {
public function Symbol30copy5_236(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 85
//Symbol30copy6_237 (Chemistryescape_fla.Symbol30copy6_237)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy6_237 extends MovieClip {
public function Symbol30copy6_237(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 86
//Symbol30copy7_238 (Chemistryescape_fla.Symbol30copy7_238)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy7_238 extends MovieClip {
public function Symbol30copy7_238(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 87
//Symbol30copy8_239 (Chemistryescape_fla.Symbol30copy8_239)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy8_239 extends MovieClip {
public function Symbol30copy8_239(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 88
//Symbol30copy9_240 (Chemistryescape_fla.Symbol30copy9_240)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol30copy9_240 extends MovieClip {
public function Symbol30copy9_240(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 89
//Symbol33_289 (Chemistryescape_fla.Symbol33_289)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol33_289 extends MovieClip {
public function Symbol33_289(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 90
//Symbol33copy_282 (Chemistryescape_fla.Symbol33copy_282)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol33copy_282 extends MovieClip {
public function Symbol33copy_282(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 91
//Symbol33copy2_284 (Chemistryescape_fla.Symbol33copy2_284)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol33copy2_284 extends MovieClip {
public function Symbol33copy2_284(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 92
//Symbol33copy3_227 (Chemistryescape_fla.Symbol33copy3_227)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol33copy3_227 extends MovieClip {
public function Symbol33copy3_227(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 93
//Symbol38coptwey3_195 (Chemistryescape_fla.Symbol38coptwey3_195)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol38coptwey3_195 extends MovieClip {
public function Symbol38coptwey3_195(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 94
//Symbol38copy2_105 (Chemistryescape_fla.Symbol38copy2_105)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol38copy2_105 extends MovieClip {
public function Symbol38copy2_105(){
addFrameScript(0, frame1, 19, frame20);
}
function frame1(){
stop();
}
function frame20(){
stop();
MovieClip(this.parent).spoon1.visible = true;
MovieClip(this.parent).spoon1.gotoAndStop(2);
}
}
}//package Chemistryescape_fla
Section 95
//Symbol38copy3das_134 (Chemistryescape_fla.Symbol38copy3das_134)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol38copy3das_134 extends MovieClip {
public function Symbol38copy3das_134(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 96
//Symbol38copy3fasf_108 (Chemistryescape_fla.Symbol38copy3fasf_108)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol38copy3fasf_108 extends MovieClip {
public function Symbol38copy3fasf_108(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 97
//Symbol4_189 (Chemistryescape_fla.Symbol4_189)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol4_189 extends MovieClip {
public var lens:MovieClip;
public var scissor:MovieClip;
public var s1:MovieClip;
public var l1:MovieClip;
public function Symbol4_189(){
addFrameScript(0, frame1, 1, frame2, 9, frame10, 14, frame15, 23, frame24);
}
function frame10(){
stop();
if (!Lab.islens){
lens.addEventListener(MouseEvent.CLICK, lensfn);
};
if (Lab.islens){
lens.visible = false;
};
if (!Lab.isscissor){
scissor.addEventListener(MouseEvent.CLICK, scissorfn);
};
if (Lab.isscissor){
scissor.visible = false;
};
if (((Lab.islens) && (Lab.isscissor))){
MovieClip(this.parent).downbtn.visible = true;
this.gotoAndPlay(11);
};
}
function frame15(){
if (Lab.islens){
l1.visible = false;
};
if (Lab.isscissor){
s1.visible = false;
};
}
function frame1(){
stop();
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
public function lensfn(_arg1:MouseEvent){
lens.removeEventListener(MouseEvent.CLICK, lensfn);
lens.visible = false;
MovieClip(this.parent).speedControl.lens.visible = true;
Lab.islens = true;
MovieClip(this.parent).downbtn.visible = true;
if (((Lab.islens) && (Lab.isscissor))){
MovieClip(this.parent).downbtn.visible = true;
this.gotoAndPlay(11);
};
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
if (Lab.islens){
l1.visible = false;
};
if (Lab.isscissor){
s1.visible = false;
};
}
public function scissorfn(_arg1:MouseEvent){
scissor.removeEventListener(MouseEvent.CLICK, scissorfn);
scissor.visible = false;
MovieClip(this.parent).speedControl.scissor.visible = true;
Lab.isscissor = true;
MovieClip(this.parent).downbtn.visible = true;
if (((Lab.islens) && (Lab.isscissor))){
MovieClip(this.parent).downbtn.visible = true;
this.gotoAndPlay(11);
};
}
}
}//package Chemistryescape_fla
Section 98
//Symbol41_303 (Chemistryescape_fla.Symbol41_303)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol41_303 extends MovieClip {
public function Symbol41_303(){
addFrameScript(0, frame1, 19, frame20, 59, frame60);
}
function frame1(){
stop();
}
function frame20(){
stop();
Lab.isspoonframe2 = true;
}
function frame60(){
stop();
Lab.ish2so4hit = true;
}
}
}//package Chemistryescape_fla
Section 99
//Symbol54_313 (Chemistryescape_fla.Symbol54_313)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol54_313 extends MovieClip {
public function Symbol54_313(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 100
//Symbol54copyfas_138 (Chemistryescape_fla.Symbol54copyfas_138)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol54copyfas_138 extends MovieClip {
public function Symbol54copyfas_138(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 101
//Symbol56_305 (Chemistryescape_fla.Symbol56_305)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol56_305 extends MovieClip {
public function Symbol56_305(){
addFrameScript(0, frame1, 53, frame54, 110, frame111);
}
function frame1(){
stop();
}
function frame111(){
stop();
Lab.litmusdipped = true;
MovieClip(this.parent).flitmus.visible = true;
MovieClip(this.parent).scissor1.visible = true;
}
function frame54(){
stop();
Lab.poured = true;
MovieClip(this.parent).scissor1.visible = true;
}
}
}//package Chemistryescape_fla
Section 102
//Symbol59_309 (Chemistryescape_fla.Symbol59_309)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol59_309 extends MovieClip {
public function Symbol59_309(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Chemistryescape_fla
Section 103
//Symbol59copy_311 (Chemistryescape_fla.Symbol59copy_311)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol59copy_311 extends MovieClip {
public function Symbol59copy_311(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
Lab.inner1 = true;
}
}
}//package Chemistryescape_fla
Section 104
//Symbol59copy2fas_151 (Chemistryescape_fla.Symbol59copy2fas_151)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol59copy2fas_151 extends MovieClip {
public function Symbol59copy2fas_151(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 105
//Symbol61_314 (Chemistryescape_fla.Symbol61_314)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol61_314 extends MovieClip {
public function Symbol61_314(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 106
//Symbol61copy_186 (Chemistryescape_fla.Symbol61copy_186)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol61copy_186 extends MovieClip {
public function Symbol61copy_186(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 107
//Symbol61copy2fdasf_142 (Chemistryescape_fla.Symbol61copy2fdasf_142)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol61copy2fdasf_142 extends MovieClip {
public function Symbol61copy2fdasf_142(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 108
//Symbol6copyfsa_191 (Chemistryescape_fla.Symbol6copyfsa_191)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol6copyfsa_191 extends MovieClip {
public function Symbol6copyfsa_191(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Magnifier");
}
}
}//package Chemistryescape_fla
Section 109
//Symbol7copyfas_192 (Chemistryescape_fla.Symbol7copyfas_192)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbol7copyfas_192 extends MovieClip {
public function Symbol7copyfas_192(){
addFrameScript(0, frame1);
}
function frame1(){
Lab.displayText(this, "Tongs Crucible");
}
}
}//package Chemistryescape_fla
Section 110
//Symbol8_194 (Chemistryescape_fla.Symbol8_194)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol8_194 extends MovieClip {
public var cucl2:MovieClip;
public var delay:Number;
public function Symbol8_194(){
addFrameScript(0, frame1, 1, frame2, 11, frame12, 23, frame24);
}
public function cucl2fn(_arg1:MouseEvent){
cucl2.removeEventListener(MouseEvent.CLICK, cucl2fn);
cucl2.visible = false;
MovieClip(this.parent).speedControl.cucl2.visible = true;
Lab.cucl2taken = true;
delay = setInterval(delayfun1, 200);
}
function frame12(){
stop();
if (!Lab.cucl2taken){
cucl2.addEventListener(MouseEvent.CLICK, cucl2fn);
};
if (Lab.cucl2taken){
cucl2.visible = false;
this.gotoAndStop(24);
};
}
function frame1(){
stop();
if (Lab.cucl2taken){
cucl2.visible = false;
this.gotoAndStop(24);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
public function delayfun1(){
clearInterval(delay);
this.gotoAndPlay(13);
}
}
}//package Chemistryescape_fla
Section 111
//Symbol8copy_104 (Chemistryescape_fla.Symbol8copy_104)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class Symbol8copy_104 extends MovieClip {
public var cucl2:MovieClip;
public var delay:Number;
public function Symbol8copy_104(){
addFrameScript(0, frame1, 1, frame2, 11, frame12, 23, frame24);
}
public function cucl2fn(_arg1:MouseEvent){
cucl2.removeEventListener(MouseEvent.CLICK, cucl2fn);
cucl2.visible = false;
MovieClip(this.parent).speedControl.cucl2.visible = true;
Lab.cucl2taken = true;
delay = setInterval(delayfun1, 200);
}
function frame12(){
stop();
if (!Lab.cucl2taken){
cucl2.addEventListener(MouseEvent.CLICK, cucl2fn);
};
if (Lab.cucl2taken){
cucl2.visible = false;
this.gotoAndStop(24);
};
}
function frame1(){
stop();
if (Lab.cucl2taken){
cucl2.visible = false;
this.gotoAndStop(24);
};
}
function frame24(){
stop();
MovieClip(this.parent).downbtn.visible = true;
}
function frame2(){
MovieClip(this.parent).downbtn.visible = false;
}
public function delayfun1(){
clearInterval(delay);
this.gotoAndPlay(13);
}
}
}//package Chemistryescape_fla
Section 112
//Symbolad27copy_258 (Chemistryescape_fla.Symbolad27copy_258)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbolad27copy_258 extends MovieClip {
public function Symbolad27copy_258(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 113
//Symbolxxxxxxxxxx57copy2_302 (Chemistryescape_fla.Symbolxxxxxxxxxx57copy2_302)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symbolxxxxxxxxxx57copy2_302 extends MovieClip {
public function Symbolxxxxxxxxxx57copy2_302(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 114
//Symfffbol27copy_245 (Chemistryescape_fla.Symfffbol27copy_245)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Symfffbol27copy_245 extends MovieClip {
public function Symfffbol27copy_245(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 115
//Timeline_250 (Chemistryescape_fla.Timeline_250)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class Timeline_250 extends MovieClip {
public function Timeline_250(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 116
//xccvbSymbol1_294 (Chemistryescape_fla.xccvbSymbol1_294)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class xccvbSymbol1_294 extends MovieClip {
public function xccvbSymbol1_294(){
addFrameScript(0, frame1, 3, frame4, 11, frame12);
}
function frame12(){
stop();
Lab.timer.removeEventListener(TimerEvent.TIMER, MovieClip(this.parent.parent).onTimer);
}
function frame1(){
stop();
}
function frame4(){
if (Lab.soundToggle){
Lab.dopen.play(0, 1);
};
}
}
}//package Chemistryescape_fla
Section 117
//xSymbol44copy_196 (Chemistryescape_fla.xSymbol44copy_196)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class xSymbol44copy_196 extends MovieClip {
public function xSymbol44copy_196(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 118
//xSymbol44copy3_148 (Chemistryescape_fla.xSymbol44copy3_148)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class xSymbol44copy3_148 extends MovieClip {
public function xSymbol44copy3_148(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 119
//xSymbol56copy_319 (Chemistryescape_fla.xSymbol56copy_319)
package Chemistryescape_fla {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
import flash.ui.*;
import flash.geom.*;
import flash.system.*;
import flash.net.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.xml.*;
public dynamic class xSymbol56copy_319 extends MovieClip {
public function xSymbol56copy_319(){
addFrameScript(0, frame1, 57, frame58, 113, frame114);
}
function frame1(){
stop();
}
function frame114(){
stop();
Lab.clothdipped = true;
MovieClip(this.parent).cloth1.visible = true;
MovieClip(this.parent).scissor2.visible = true;
}
function frame58(){
stop();
Lab.ispoured = true;
MovieClip(this.parent).scissor2.visible = true;
}
}
}//package Chemistryescape_fla
Section 120
//xSymbol59copy2_326 (Chemistryescape_fla.xSymbol59copy2_326)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class xSymbol59copy2_326 extends MovieClip {
public function xSymbol59copy2_326(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
stop();
}
function frame2(){
stop();
}
}
}//package Chemistryescape_fla
Section 121
//xSymbol59copyf2r_154 (Chemistryescape_fla.xSymbol59copyf2r_154)
package Chemistryescape_fla {
import flash.display.*;
public dynamic class xSymbol59copyf2r_154 extends MovieClip {
public function xSymbol59copyf2r_154(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Chemistryescape_fla
Section 122
//BaseScrollPane (fl.containers.BaseScrollPane)
package fl.containers {
import fl.core.*;
import fl.controls.*;
import flash.display.*;
import flash.events.*;
import fl.events.*;
import flash.geom.*;
public class BaseScrollPane extends UIComponent {
protected var defaultLineScrollSize:Number;// = 4
protected var _maxHorizontalScrollPosition:Number;// = 0
protected var vScrollBar:Boolean;
protected var disabledOverlay:Shape;
protected var hScrollBar:Boolean;
protected var availableWidth:Number;
protected var _verticalPageScrollSize:Number;// = 0
protected var vOffset:Number;// = 0
protected var _verticalScrollBar:ScrollBar;
protected var useFixedHorizontalScrolling:Boolean;// = false
protected var contentWidth:Number;// = 0
protected var contentHeight:Number;// = 0
protected var _horizontalPageScrollSize:Number;// = 0
protected var background:DisplayObject;
protected var _useBitmpScrolling:Boolean;// = false
protected var contentPadding:Number;// = 0
protected var availableHeight:Number;
protected var _horizontalScrollBar:ScrollBar;
protected var contentScrollRect:Rectangle;
protected var _horizontalScrollPolicy:String;
protected var _verticalScrollPolicy:String;
protected static const SCROLL_BAR_STYLES:Object = {upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"};
private static var defaultStyles:Object = {repeatDelay:500, repeatInterval:35, skin:"ScrollPane_upSkin", contentPadding:0, disabledAlpha:0.5};
public function BaseScrollPane(){
contentWidth = 0;
contentHeight = 0;
contentPadding = 0;
vOffset = 0;
_maxHorizontalScrollPosition = 0;
_horizontalPageScrollSize = 0;
_verticalPageScrollSize = 0;
defaultLineScrollSize = 4;
useFixedHorizontalScrolling = false;
_useBitmpScrolling = false;
super();
}
protected function handleWheel(_arg1:MouseEvent):void{
if (((((!(enabled)) || (!(_verticalScrollBar.visible)))) || ((contentHeight <= availableHeight)))){
return;
};
_verticalScrollBar.scrollPosition = (_verticalScrollBar.scrollPosition - (_arg1.delta * verticalLineScrollSize));
setVerticalScrollPosition(_verticalScrollBar.scrollPosition);
dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _arg1.delta, horizontalScrollPosition));
}
public function get verticalScrollPosition():Number{
return (_verticalScrollBar.scrollPosition);
}
protected function drawDisabledOverlay():void{
if (enabled){
if (contains(disabledOverlay)){
removeChild(disabledOverlay);
};
} else {
disabledOverlay.x = (disabledOverlay.y = contentPadding);
disabledOverlay.width = availableWidth;
disabledOverlay.height = availableHeight;
disabledOverlay.alpha = (getStyleValue("disabledAlpha") as Number);
addChild(disabledOverlay);
};
}
public function set verticalScrollPosition(_arg1:Number):void{
drawNow();
_verticalScrollBar.scrollPosition = _arg1;
setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false);
}
protected function setContentSize(_arg1:Number, _arg2:Number):void{
if ((((((contentWidth == _arg1)) || (useFixedHorizontalScrolling))) && ((contentHeight == _arg2)))){
return;
};
contentWidth = _arg1;
contentHeight = _arg2;
invalidate(InvalidationType.SIZE);
}
public function get horizontalScrollPosition():Number{
return (_horizontalScrollBar.scrollPosition);
}
public function get horizontalScrollBar():ScrollBar{
return (_horizontalScrollBar);
}
override public function set enabled(_arg1:Boolean):void{
if (enabled == _arg1){
return;
};
_verticalScrollBar.enabled = _arg1;
_horizontalScrollBar.enabled = _arg1;
super.enabled = _arg1;
}
public function get verticalLineScrollSize():Number{
return (_verticalScrollBar.lineScrollSize);
}
public function get horizontalScrollPolicy():String{
return (_horizontalScrollPolicy);
}
protected function calculateAvailableSize():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local1 = ScrollBar.WIDTH;
_local2 = (contentPadding = Number(getStyleValue("contentPadding")));
_local3 = ((height - (2 * _local2)) - vOffset);
vScrollBar = (((_verticalScrollPolicy == ScrollPolicy.ON)) || ((((_verticalScrollPolicy == ScrollPolicy.AUTO)) && ((contentHeight > _local3)))));
_local4 = ((width - (vScrollBar) ? _local1 : 0) - (2 * _local2));
_local5 = (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - _local4);
hScrollBar = (((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_local5 > 0)))));
if (hScrollBar){
_local3 = (_local3 - _local1);
};
if (((((((hScrollBar) && (!(vScrollBar)))) && ((_verticalScrollPolicy == ScrollPolicy.AUTO)))) && ((contentHeight > _local3)))){
vScrollBar = true;
_local4 = (_local4 - _local1);
};
availableHeight = (_local3 + vOffset);
availableWidth = _local4;
}
public function get maxVerticalScrollPosition():Number{
drawNow();
return (Math.max(0, (contentHeight - availableHeight)));
}
public function set horizontalScrollPosition(_arg1:Number):void{
drawNow();
_horizontalScrollBar.scrollPosition = _arg1;
setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false);
}
public function get horizontalLineScrollSize():Number{
return (_horizontalScrollBar.lineScrollSize);
}
public function set verticalPageScrollSize(_arg1:Number):void{
_verticalPageScrollSize = _arg1;
invalidate(InvalidationType.SIZE);
}
public function get verticalScrollPolicy():String{
return (_verticalScrollPolicy);
}
protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
}
public function get useBitmapScrolling():Boolean{
return (_useBitmpScrolling);
}
protected function handleScroll(_arg1:ScrollEvent):void{
if (_arg1.target == _verticalScrollBar){
setVerticalScrollPosition(_arg1.position);
} else {
setHorizontalScrollPosition(_arg1.position);
};
}
public function set verticalLineScrollSize(_arg1:Number):void{
_verticalScrollBar.lineScrollSize = _arg1;
}
public function get verticalScrollBar():ScrollBar{
return (_verticalScrollBar);
}
protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
}
public function set horizontalPageScrollSize(_arg1:Number):void{
_horizontalPageScrollSize = _arg1;
invalidate(InvalidationType.SIZE);
}
override protected function draw():void{
if (isInvalid(InvalidationType.STYLES)){
setStyles();
drawBackground();
if (contentPadding != getStyleValue("contentPadding")){
invalidate(InvalidationType.SIZE, false);
};
};
if (isInvalid(InvalidationType.SIZE, InvalidationType.STATE)){
drawLayout();
};
updateChildren();
super.draw();
}
public function set horizontalScrollPolicy(_arg1:String):void{
_horizontalScrollPolicy = _arg1;
invalidate(InvalidationType.SIZE);
}
override protected function configUI():void{
var _local1:Graphics;
super.configUI();
contentScrollRect = new Rectangle(0, 0, 85, 85);
_verticalScrollBar = new ScrollBar();
_verticalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true);
_verticalScrollBar.visible = false;
_verticalScrollBar.lineScrollSize = defaultLineScrollSize;
addChild(_verticalScrollBar);
copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES);
_horizontalScrollBar = new ScrollBar();
_horizontalScrollBar.direction = ScrollBarDirection.HORIZONTAL;
_horizontalScrollBar.addEventListener(ScrollEvent.SCROLL, handleScroll, false, 0, true);
_horizontalScrollBar.visible = false;
_horizontalScrollBar.lineScrollSize = defaultLineScrollSize;
addChild(_horizontalScrollBar);
copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES);
disabledOverlay = new Shape();
_local1 = disabledOverlay.graphics;
_local1.beginFill(0xFFFFFF);
_local1.drawRect(0, 0, width, height);
_local1.endFill();
addEventListener(MouseEvent.MOUSE_WHEEL, handleWheel, false, 0, true);
}
protected function calculateContentWidth():void{
}
public function get verticalPageScrollSize():Number{
if (isNaN(availableHeight)){
drawNow();
};
return (((((_verticalPageScrollSize == 0)) && (!(isNaN(availableHeight))))) ? availableHeight : _verticalPageScrollSize);
}
protected function drawLayout():void{
calculateAvailableSize();
calculateContentWidth();
background.width = width;
background.height = height;
if (vScrollBar){
_verticalScrollBar.visible = true;
_verticalScrollBar.x = ((width - ScrollBar.WIDTH) - contentPadding);
_verticalScrollBar.y = contentPadding;
_verticalScrollBar.height = availableHeight;
} else {
_verticalScrollBar.visible = false;
};
_verticalScrollBar.setScrollProperties(availableHeight, 0, (contentHeight - availableHeight), verticalPageScrollSize);
setVerticalScrollPosition(_verticalScrollBar.scrollPosition, false);
if (hScrollBar){
_horizontalScrollBar.visible = true;
_horizontalScrollBar.x = contentPadding;
_horizontalScrollBar.y = ((height - ScrollBar.WIDTH) - contentPadding);
_horizontalScrollBar.width = availableWidth;
} else {
_horizontalScrollBar.visible = false;
};
_horizontalScrollBar.setScrollProperties(availableWidth, 0, (useFixedHorizontalScrolling) ? _maxHorizontalScrollPosition : (contentWidth - availableWidth), horizontalPageScrollSize);
setHorizontalScrollPosition(_horizontalScrollBar.scrollPosition, false);
drawDisabledOverlay();
}
protected function drawBackground():void{
var _local1:DisplayObject;
_local1 = background;
background = getDisplayObjectInstance(getStyleValue("skin"));
background.width = width;
background.height = height;
addChildAt(background, 0);
if (((!((_local1 == null))) && (!((_local1 == background))))){
removeChild(_local1);
};
}
public function set horizontalLineScrollSize(_arg1:Number):void{
_horizontalScrollBar.lineScrollSize = _arg1;
}
public function get horizontalPageScrollSize():Number{
if (isNaN(availableWidth)){
drawNow();
};
return (((((_horizontalPageScrollSize == 0)) && (!(isNaN(availableWidth))))) ? availableWidth : _horizontalPageScrollSize);
}
public function get maxHorizontalScrollPosition():Number{
drawNow();
return (Math.max(0, (contentWidth - availableWidth)));
}
protected function setStyles():void{
copyStylesToChild(_verticalScrollBar, SCROLL_BAR_STYLES);
copyStylesToChild(_horizontalScrollBar, SCROLL_BAR_STYLES);
}
protected function updateChildren():void{
_verticalScrollBar.enabled = (_horizontalScrollBar.enabled = enabled);
_verticalScrollBar.drawNow();
_horizontalScrollBar.drawNow();
}
public function set verticalScrollPolicy(_arg1:String):void{
_verticalScrollPolicy = _arg1;
invalidate(InvalidationType.SIZE);
}
public function set useBitmapScrolling(_arg1:Boolean):void{
_useBitmpScrolling = _arg1;
invalidate(InvalidationType.STATE);
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, ScrollBar.getStyleDefinition()));
}
}
}//package fl.containers
Section 123
//CellRenderer (fl.controls.listClasses.CellRenderer)
package fl.controls.listClasses {
import fl.controls.*;
import flash.events.*;
public class CellRenderer extends LabelButton implements ICellRenderer {
protected var _data:Object;
protected var _listData:ListData;
private static var defaultStyles:Object = {upSkin:"CellRenderer_upSkin", downSkin:"CellRenderer_downSkin", overSkin:"CellRenderer_overSkin", disabledSkin:"CellRenderer_disabledSkin", selectedDisabledSkin:"CellRenderer_selectedDisabledSkin", selectedUpSkin:"CellRenderer_selectedUpSkin", selectedDownSkin:"CellRenderer_selectedDownSkin", selectedOverSkin:"CellRenderer_selectedOverSkin", textFormat:null, disabledTextFormat:null, embedFonts:null, textPadding:5};
public function CellRenderer():void{
toggle = true;
focusEnabled = false;
}
override protected function toggleSelected(_arg1:MouseEvent):void{
}
override public function get selected():Boolean{
return (super.selected);
}
public function set listData(_arg1:ListData):void{
_listData = _arg1;
label = _listData.label;
setStyle("icon", _listData.icon);
}
override public function set selected(_arg1:Boolean):void{
super.selected = _arg1;
}
public function set data(_arg1:Object):void{
_data = _arg1;
}
public function get listData():ListData{
return (_listData);
}
override public function setSize(_arg1:Number, _arg2:Number):void{
super.setSize(_arg1, _arg2);
}
override protected function drawLayout():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
_local1 = Number(getStyleValue("textPadding"));
_local2 = 0;
if (icon != null){
icon.x = _local1;
icon.y = Math.round(((height - icon.height) >> 1));
_local2 = (icon.width + _local1);
};
if (label.length > 0){
textField.visible = true;
_local3 = Math.max(0, ((width - _local2) - (_local1 * 2)));
textField.width = _local3;
textField.height = (textField.textHeight + 4);
textField.x = (_local2 + _local1);
textField.y = Math.round(((height - textField.height) >> 1));
} else {
textField.visible = false;
};
background.width = width;
background.height = height;
}
public function get data():Object{
return (_data);
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
}
}//package fl.controls.listClasses
Section 124
//ICellRenderer (fl.controls.listClasses.ICellRenderer)
package fl.controls.listClasses {
public interface ICellRenderer {
function setSize(_arg1:Number, _arg2:Number):void;
function get listData():ListData;
function get data():Object;
function setMouseState(_arg1:String):void;
function set x(_arg1:Number):void;
function set y(_arg1:Number):void;
function set data(_arg1:Object):void;
function set selected(_arg1:Boolean):void;
function set listData(_arg1:ListData):void;
function get selected():Boolean;
}
}//package fl.controls.listClasses
Section 125
//ListData (fl.controls.listClasses.ListData)
package fl.controls.listClasses {
import fl.core.*;
public class ListData {
protected var _index:uint;
protected var _owner:UIComponent;
protected var _label:String;
protected var _icon:Object;// = null
protected var _row:uint;
protected var _column:uint;
public function ListData(_arg1:String, _arg2:Object, _arg3:UIComponent, _arg4:uint, _arg5:uint, _arg6:uint=0){
_icon = null;
super();
_label = _arg1;
_icon = _arg2;
_owner = _arg3;
_index = _arg4;
_row = _arg5;
_column = _arg6;
}
public function get owner():UIComponent{
return (_owner);
}
public function get label():String{
return (_label);
}
public function get row():uint{
return (_row);
}
public function get index():uint{
return (_index);
}
public function get icon():Object{
return (_icon);
}
public function get column():uint{
return (_column);
}
}
}//package fl.controls.listClasses
Section 126
//BaseButton (fl.controls.BaseButton)
package fl.controls {
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.events.*;
import flash.utils.*;
public class BaseButton extends UIComponent {
protected var _selected:Boolean;// = false
private var unlockedMouseState:String;
protected var pressTimer:Timer;
protected var mouseState:String;
protected var background:DisplayObject;
private var _mouseStateLocked:Boolean;// = false
protected var _autoRepeat:Boolean;// = false
private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35};
public function BaseButton(){
_selected = false;
_autoRepeat = false;
_mouseStateLocked = false;
super();
buttonMode = true;
mouseChildren = false;
useHandCursor = false;
setupMouseEvents();
setMouseState("up");
pressTimer = new Timer(1, 0);
pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true);
}
protected function endPress():void{
pressTimer.reset();
}
public function set mouseStateLocked(_arg1:Boolean):void{
_mouseStateLocked = _arg1;
if (_arg1 == false){
setMouseState(unlockedMouseState);
} else {
unlockedMouseState = mouseState;
};
}
public function get autoRepeat():Boolean{
return (_autoRepeat);
}
public function set autoRepeat(_arg1:Boolean):void{
_autoRepeat = _arg1;
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
mouseEnabled = _arg1;
}
public function get selected():Boolean{
return (_selected);
}
protected function mouseEventHandler(_arg1:MouseEvent):void{
if (_arg1.type == MouseEvent.MOUSE_DOWN){
setMouseState("down");
startPress();
} else {
if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){
setMouseState("over");
endPress();
} else {
if (_arg1.type == MouseEvent.ROLL_OUT){
setMouseState("up");
endPress();
};
};
};
}
public function setMouseState(_arg1:String):void{
if (_mouseStateLocked){
unlockedMouseState = _arg1;
return;
};
if (mouseState == _arg1){
return;
};
mouseState = _arg1;
invalidate(InvalidationType.STATE);
}
protected function startPress():void{
if (_autoRepeat){
pressTimer.delay = Number(getStyleValue("repeatDelay"));
pressTimer.start();
};
dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true));
}
protected function buttonDown(_arg1:TimerEvent):void{
if (!_autoRepeat){
endPress();
return;
};
if (pressTimer.currentCount == 1){
pressTimer.delay = Number(getStyleValue("repeatInterval"));
};
dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true));
}
public function set selected(_arg1:Boolean):void{
if (_selected == _arg1){
return;
};
_selected = _arg1;
invalidate(InvalidationType.STATE);
}
override public function get enabled():Boolean{
return (super.enabled);
}
override protected function draw():void{
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
drawBackground();
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE)){
drawLayout();
};
super.draw();
}
protected function setupMouseEvents():void{
addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true);
addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true);
}
protected function drawLayout():void{
background.width = width;
background.height = height;
}
protected function drawBackground():void{
var _local1:String;
var _local2:DisplayObject;
_local1 = (enabled) ? mouseState : "disabled";
if (selected){
_local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1));
};
_local1 = (_local1 + "Skin");
_local2 = background;
background = getDisplayObjectInstance(getStyleValue(_local1));
addChildAt(background, 0);
if (((!((_local2 == null))) && (!((_local2 == background))))){
removeChild(_local2);
};
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
}
}//package fl.controls
Section 127
//Button (fl.controls.Button)
package fl.controls {
import fl.core.*;
import flash.display.*;
import fl.managers.*;
public class Button extends LabelButton implements IFocusManagerComponent {
protected var emphasizedBorder:DisplayObject;
protected var _emphasized:Boolean;// = false
private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2};
public static var createAccessibilityImplementation:Function;
public function Button(){
_emphasized = false;
super();
}
override public function drawFocus(_arg1:Boolean):void{
var _local2:Number;
var _local3:*;
super.drawFocus(_arg1);
if (_arg1){
_local2 = Number(getStyleValue("emphasizedPadding"));
if ((((_local2 < 0)) || (!(_emphasized)))){
_local2 = 0;
};
_local3 = getStyleValue("focusRectPadding");
_local3 = ((_local3)==null) ? 2 : _local3;
_local3 = (_local3 + _local2);
uiFocusRect.x = -(_local3);
uiFocusRect.y = -(_local3);
uiFocusRect.width = (width + (_local3 * 2));
uiFocusRect.height = (height + (_local3 * 2));
};
}
public function set emphasized(_arg1:Boolean):void{
_emphasized = _arg1;
invalidate(InvalidationType.STYLES);
}
override protected function draw():void{
if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){
drawEmphasized();
};
super.draw();
if (emphasizedBorder != null){
setChildIndex(emphasizedBorder, (numChildren - 1));
};
}
public function get emphasized():Boolean{
return (_emphasized);
}
override protected function initializeAccessibility():void{
if (Button.createAccessibilityImplementation != null){
Button.createAccessibilityImplementation(this);
};
}
protected function drawEmphasized():void{
var _local1:Object;
var _local2:Number;
if (emphasizedBorder != null){
removeChild(emphasizedBorder);
};
emphasizedBorder = null;
if (!_emphasized){
return;
};
_local1 = getStyleValue("emphasizedSkin");
if (_local1 != null){
emphasizedBorder = getDisplayObjectInstance(_local1);
};
if (emphasizedBorder != null){
addChildAt(emphasizedBorder, 0);
_local2 = Number(getStyleValue("emphasizedPadding"));
emphasizedBorder.x = (emphasizedBorder.y = -(_local2));
emphasizedBorder.width = (width + (_local2 * 2));
emphasizedBorder.height = (height + (_local2 * 2));
};
}
public static function getStyleDefinition():Object{
return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles));
}
}
}//package fl.controls
Section 128
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement)
package fl.controls {
public class ButtonLabelPlacement {
public static const TOP:String = "top";
public static const LEFT:String = "left";
public static const BOTTOM:String = "bottom";
public static const RIGHT:String = "right";
}
}//package fl.controls
Section 129
//ComboBox (fl.controls.ComboBox)
package fl.controls {
import fl.controls.listClasses.*;
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.data.*;
import fl.managers.*;
import fl.events.*;
import flash.text.*;
import flash.ui.*;
import flash.geom.*;
public class ComboBox extends UIComponent implements IFocusManagerComponent {
protected var _dropdownWidth:Number;
protected var highlightedCell:int;// = -1
protected var _prompt:String;
protected var isOpen:Boolean;// = false
protected var list:List;
protected var _rowCount:uint;// = 5
protected var currentIndex:int;
protected var isKeyDown:Boolean;// = false
protected var _labels:Array;
protected var background:BaseButton;
protected var inputField:TextInput;
protected var listOverIndex:uint;
protected var editableValue:String;
protected var _editable:Boolean;// = false
private var collectionItemImport:SimpleCollectionItem;
protected static const BACKGROUND_STYLES:Object = {overSkin:"overSkin", downSkin:"downSkin", upSkin:"upSkin", disabledSkin:"disabledSkin", repeatInterval:"repeatInterval"};
protected static const LIST_STYLES:Object = {upSkin:"comboListUpSkin", overSkin:"comboListOverSkin", downSkin:"comobListDownSkin", disabledSkin:"comboListDisabledSkin", downArrowDisabledSkin:"downArrowDisabledSkin", downArrowDownSkin:"downArrowDownSkin", downArrowOverSkin:"downArrowOverSkin", downArrowUpSkin:"downArrowUpSkin", upArrowDisabledSkin:"upArrowDisabledSkin", upArrowDownSkin:"upArrowDownSkin", upArrowOverSkin:"upArrowOverSkin", upArrowUpSkin:"upArrowUpSkin", thumbDisabledSkin:"thumbDisabledSkin", thumbDownSkin:"thumbDownSkin", thumbOverSkin:"thumbOverSkin", thumbUpSkin:"thumbUpSkin", thumbIcon:"thumbIcon", trackDisabledSkin:"trackDisabledSkin", trackDownSkin:"trackDownSkin", trackOverSkin:"trackOverSkin", trackUpSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval", textFormat:"textFormat", disabledAlpha:"disabledAlpha", skin:"listSkin"};
private static var defaultStyles:Object = {upSkin:"ComboBox_upSkin", downSkin:"ComboBox_downSkin", overSkin:"ComboBox_overSkin", disabledSkin:"ComboBox_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:3, buttonWidth:24, disabledAlpha:null, listSkin:null};
public static var createAccessibilityImplementation:Function;
public function ComboBox(){
_rowCount = 5;
_editable = false;
isOpen = false;
highlightedCell = -1;
isKeyDown = false;
super();
}
protected function drawList():void{
list.rowCount = Math.max(0, Math.min(_rowCount, list.dataProvider.length));
}
public function set imeMode(_arg1:String):void{
inputField.imeMode = _arg1;
}
public function get dropdown():List{
return (list);
}
public function get dropdownWidth():Number{
return (list.width);
}
public function sortItemsOn(_arg1:String, _arg2:Object=null){
return (list.sortItemsOn(_arg1, _arg2));
}
protected function onEnter(_arg1:ComponentEvent):void{
_arg1.stopPropagation();
}
public function removeItemAt(_arg1:uint):void{
list.removeItemAt(_arg1);
invalidate(InvalidationType.DATA);
}
public function open():void{
currentIndex = selectedIndex;
if (((isOpen) || ((length == 0)))){
return;
};
dispatchEvent(new Event(Event.OPEN));
isOpen = true;
addEventListener(Event.ENTER_FRAME, addCloseListener, false, 0, true);
positionList();
list.scrollToSelected();
stage.addChild(list);
}
public function get selectedItem():Object{
return (list.selectedItem);
}
public function set text(_arg1:String):void{
if (!editable){
return;
};
inputField.text = _arg1;
}
public function get labelField():String{
return (list.labelField);
}
override protected function keyDownHandler(_arg1:KeyboardEvent):void{
var _local2:int;
var _local3:uint;
var _local4:Number;
var _local5:int;
isKeyDown = true;
if (_arg1.ctrlKey){
switch (_arg1.keyCode){
case Keyboard.UP:
if (highlightedCell > -1){
selectedIndex = highlightedCell;
dispatchEvent(new Event(Event.CHANGE));
};
close();
break;
case Keyboard.DOWN:
open();
break;
};
return;
};
_arg1.stopPropagation();
_local2 = Math.max(((calculateAvailableHeight() / list.rowHeight) << 0), 1);
_local3 = selectedIndex;
_local4 = ((highlightedCell)==-1) ? selectedIndex : highlightedCell;
_local5 = -1;
switch (_arg1.keyCode){
case Keyboard.SPACE:
if (isOpen){
close();
} else {
open();
};
return;
case Keyboard.ESCAPE:
if (isOpen){
if (highlightedCell > -1){
selectedIndex = selectedIndex;
};
close();
};
return;
case Keyboard.UP:
_local5 = Math.max(0, (_local4 - 1));
break;
case Keyboard.DOWN:
_local5 = Math.min((length - 1), (_local4 + 1));
break;
case Keyboard.PAGE_UP:
_local5 = Math.max((_local4 - _local2), 0);
break;
case Keyboard.PAGE_DOWN:
_local5 = Math.min((_local4 + _local2), (length - 1));
break;
case Keyboard.HOME:
_local5 = 0;
break;
case Keyboard.END:
_local5 = (length - 1);
break;
case Keyboard.ENTER:
if (((_editable) && ((highlightedCell == -1)))){
editableValue = inputField.text;
selectedIndex = -1;
} else {
if (((isOpen) && ((highlightedCell > -1)))){
editableValue = null;
selectedIndex = highlightedCell;
dispatchEvent(new Event(Event.CHANGE));
};
};
dispatchEvent(new ComponentEvent(ComponentEvent.ENTER));
close();
return;
default:
if (editable){
break;
};
_local5 = list.getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), _local4);
break;
};
if (_local5 > -1){
if (isOpen){
highlightCell(_local5);
inputField.text = list.itemToLabel(getItemAt(_local5));
} else {
highlightCell();
selectedIndex = _local5;
dispatchEvent(new Event(Event.CHANGE));
};
};
}
public function set dropdownWidth(_arg1:Number):void{
_dropdownWidth = _arg1;
invalidate(InvalidationType.SIZE);
}
public function get editable():Boolean{
return (_editable);
}
override protected function focusInHandler(_arg1:FocusEvent):void{
super.focusInHandler(_arg1);
if (editable){
stage.focus = inputField.textField;
};
}
protected function onStageClick(_arg1:MouseEvent):void{
if (!isOpen){
return;
};
if (((!(contains((_arg1.target as DisplayObject)))) && (!(list.contains((_arg1.target as DisplayObject)))))){
if (highlightedCell != -1){
selectedIndex = highlightedCell;
dispatchEvent(new Event(Event.CHANGE));
};
close();
};
}
protected function handleDataChange(_arg1:DataChangeEvent):void{
invalidate(InvalidationType.DATA);
}
override protected function keyUpHandler(_arg1:KeyboardEvent):void{
isKeyDown = false;
}
protected function onListItemUp(_arg1:MouseEvent):void{
var _local2:*;
stage.removeEventListener(MouseEvent.MOUSE_UP, onListItemUp);
if (((!((_arg1.target is ICellRenderer))) || (!(list.contains((_arg1.target as DisplayObject)))))){
return;
};
editableValue = null;
_local2 = selectedIndex;
selectedIndex = _arg1.target.listData.index;
if (_local2 != selectedIndex){
dispatchEvent(new Event(Event.CHANGE));
};
close();
}
public function removeAll():void{
list.removeAll();
inputField.text = "";
invalidate(InvalidationType.DATA);
}
public function set selectedItem(_arg1:Object):void{
list.selectedItem = _arg1;
invalidate(InvalidationType.SELECTED);
}
protected function highlightCell(_arg1:int=-1):void{
var _local2:ICellRenderer;
if (highlightedCell > -1){
_local2 = list.itemToCellRenderer(getItemAt(highlightedCell));
if (_local2 != null){
_local2.setMouseState("up");
};
};
if (_arg1 == -1){
return;
};
list.scrollToIndex(_arg1);
list.drawNow();
_local2 = list.itemToCellRenderer(getItemAt(_arg1));
if (_local2 != null){
_local2.setMouseState("over");
highlightedCell = _arg1;
};
}
public function itemToLabel(_arg1:Object):String{
if (_arg1 == null){
return ("");
};
return (list.itemToLabel(_arg1));
}
public function addItemAt(_arg1:Object, _arg2:uint):void{
list.addItemAt(_arg1, _arg2);
invalidate(InvalidationType.DATA);
}
public function replaceItemAt(_arg1:Object, _arg2:uint):Object{
return (list.replaceItemAt(_arg1, _arg2));
}
protected function showPrompt():void{
inputField.text = _prompt;
}
public function set rowCount(_arg1:uint):void{
_rowCount = _arg1;
invalidate(InvalidationType.SIZE);
}
public function get restrict():String{
return (inputField.restrict);
}
protected function setEmbedFonts():void{
var _local1:Object;
_local1 = getStyleValue("embedFonts");
if (_local1 != null){
inputField.textField.embedFonts = _local1;
};
}
public function sortItems(... _args){
return (list.sortItems.apply(list, _args));
}
public function set labelField(_arg1:String):void{
list.labelField = _arg1;
invalidate(InvalidationType.DATA);
}
public function set editable(_arg1:Boolean):void{
_editable = _arg1;
drawTextField();
}
public function set prompt(_arg1:String):void{
if (_arg1 == ""){
_prompt = null;
} else {
_prompt = _arg1;
};
invalidate(InvalidationType.STATE);
}
public function get length():int{
return (list.length);
}
protected function drawTextField():void{
inputField.setStyle("upSkin", "");
inputField.setStyle("disabledSkin", "");
inputField.enabled = enabled;
inputField.editable = _editable;
inputField.textField.selectable = ((enabled) && (_editable));
inputField.mouseEnabled = (inputField.mouseChildren = ((enabled) && (_editable)));
inputField.focusEnabled = false;
if (_editable){
inputField.addEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus, false, 0, true);
inputField.addEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut, false, 0, true);
} else {
inputField.removeEventListener(FocusEvent.FOCUS_IN, onInputFieldFocus);
inputField.removeEventListener(FocusEvent.FOCUS_OUT, onInputFieldFocusOut);
};
}
protected function onInputFieldFocusOut(_arg1:FocusEvent):void{
inputField.removeEventListener(ComponentEvent.ENTER, onEnter);
selectedIndex = selectedIndex;
}
protected function passEvent(_arg1:Event):void{
dispatchEvent(_arg1);
}
public function get imeMode():String{
return (inputField.imeMode);
}
public function get labelFunction():Function{
return (list.labelFunction);
}
protected function calculateAvailableHeight():Number{
var _local1:Number;
_local1 = Number(getStyleValue("contentPadding"));
return ((list.height - (_local1 * 2)));
}
public function get selectedIndex():int{
return (list.selectedIndex);
}
override protected function focusOutHandler(_arg1:FocusEvent):void{
isKeyDown = false;
if (isOpen){
if (((!(_arg1.relatedObject)) || (!(list.contains(_arg1.relatedObject))))){
if (((!((highlightedCell == -1))) && (!((highlightedCell == selectedIndex))))){
selectedIndex = highlightedCell;
dispatchEvent(new Event(Event.CHANGE));
};
close();
};
};
super.focusOutHandler(_arg1);
}
public function get selectedLabel():String{
if (editableValue != null){
return (editableValue);
};
if (selectedIndex == -1){
return (null);
};
return (itemToLabel(selectedItem));
}
public function get text():String{
return (inputField.text);
}
protected function onListChange(_arg1:Event):void{
editableValue = null;
dispatchEvent(_arg1);
invalidate(InvalidationType.SELECTED);
if (isKeyDown){
return;
};
close();
}
protected function onToggleListVisibility(_arg1:MouseEvent):void{
_arg1.stopPropagation();
dispatchEvent(_arg1);
if (isOpen){
close();
} else {
open();
stage.addEventListener(MouseEvent.MOUSE_UP, onListItemUp, false, 0, true);
};
}
override protected function draw():void{
var _local1:*;
_local1 = selectedIndex;
if ((((_local1 == -1)) && (((((!((prompt == null))) || (editable))) || ((length == 0)))))){
_local1 = Math.max(-1, Math.min(_local1, (length - 1)));
} else {
editableValue = null;
_local1 = Math.max(0, Math.min(_local1, (length - 1)));
};
if (list.selectedIndex != _local1){
list.selectedIndex = _local1;
invalidate(InvalidationType.SELECTED, false);
};
if (isInvalid(InvalidationType.STYLES)){
setStyles();
setEmbedFonts();
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.STATE)){
drawTextFormat();
drawLayout();
invalidate(InvalidationType.DATA);
};
if (isInvalid(InvalidationType.DATA)){
drawList();
invalidate(InvalidationType.SELECTED, true);
};
if (isInvalid(InvalidationType.SELECTED)){
if ((((_local1 == -1)) && (!((editableValue == null))))){
inputField.text = editableValue;
} else {
if (_local1 > -1){
if (length > 0){
inputField.horizontalScrollPosition = 0;
inputField.text = itemToLabel(list.selectedItem);
};
} else {
if ((((_local1 == -1)) && (!((_prompt == null))))){
showPrompt();
} else {
inputField.text = "";
};
};
};
if (((((editable) && ((selectedIndex > -1)))) && ((stage.focus == inputField.textField)))){
inputField.setSelection(0, inputField.length);
};
};
drawTextField();
super.draw();
}
public function addItem(_arg1:Object):void{
list.addItem(_arg1);
invalidate(InvalidationType.DATA);
}
public function get rowCount():uint{
return (_rowCount);
}
override protected function configUI():void{
super.configUI();
background = new BaseButton();
background.focusEnabled = false;
copyStylesToChild(background, BACKGROUND_STYLES);
background.addEventListener(MouseEvent.MOUSE_DOWN, onToggleListVisibility, false, 0, true);
addChild(background);
inputField = new TextInput();
inputField.focusTarget = (this as IFocusManagerComponent);
inputField.focusEnabled = false;
inputField.addEventListener(Event.CHANGE, onTextInput, false, 0, true);
addChild(inputField);
list = new List();
list.focusEnabled = false;
copyStylesToChild(list, LIST_STYLES);
list.addEventListener(Event.CHANGE, onListChange, false, 0, true);
list.addEventListener(ListEvent.ITEM_CLICK, onListChange, false, 0, true);
list.addEventListener(ListEvent.ITEM_ROLL_OUT, passEvent, false, 0, true);
list.addEventListener(ListEvent.ITEM_ROLL_OVER, passEvent, false, 0, true);
list.verticalScrollBar.addEventListener(Event.SCROLL, passEvent, false, 0, true);
}
protected function positionList():void{
var _local1:Point;
_local1 = localToGlobal(new Point(0, 0));
list.x = _local1.x;
if (((_local1.y + height) + list.height) > stage.stageHeight){
list.y = (_local1.y - list.height);
} else {
list.y = (_local1.y + height);
};
}
public function get value():String{
var _local1:Object;
if (editableValue != null){
return (editableValue);
};
_local1 = selectedItem;
if (((!(_editable)) && (!((_local1.data == null))))){
return (_local1.data);
};
return (itemToLabel(_local1));
}
public function get prompt():String{
return (_prompt);
}
public function set dataProvider(_arg1:DataProvider):void{
_arg1.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true);
list.dataProvider = _arg1;
invalidate(InvalidationType.DATA);
}
public function set restrict(_arg1:String):void{
if (((componentInspectorSetting) && ((_arg1 == "")))){
_arg1 = null;
};
if (!_editable){
return;
};
inputField.restrict = _arg1;
}
protected function onTextInput(_arg1:Event):void{
_arg1.stopPropagation();
if (!_editable){
return;
};
editableValue = inputField.text;
selectedIndex = -1;
dispatchEvent(new Event(Event.CHANGE));
}
protected function onInputFieldFocus(_arg1:FocusEvent):void{
inputField.addEventListener(ComponentEvent.ENTER, onEnter, false, 0, true);
close();
}
public function getItemAt(_arg1:uint):Object{
return (list.getItemAt(_arg1));
}
override protected function initializeAccessibility():void{
if (ComboBox.createAccessibilityImplementation != null){
ComboBox.createAccessibilityImplementation(this);
};
}
protected function drawLayout():void{
var _local1:Number;
var _local2:Number;
_local1 = (getStyleValue("buttonWidth") as Number);
_local2 = (getStyleValue("textPadding") as Number);
background.setSize(width, height);
inputField.x = (inputField.y = _local2);
inputField.setSize(((width - _local1) - _local2), (height - _local2));
list.width = (isNaN(_dropdownWidth)) ? width : _dropdownWidth;
background.enabled = enabled;
background.drawNow();
}
public function removeItem(_arg1:Object):Object{
return (list.removeItem(_arg1));
}
private function addCloseListener(_arg1:Event){
removeEventListener(Event.ENTER_FRAME, addCloseListener);
if (!isOpen){
return;
};
stage.addEventListener(MouseEvent.MOUSE_DOWN, onStageClick, false, 0, true);
}
public function get dataProvider():DataProvider{
return (list.dataProvider);
}
public function get textField():TextInput{
return (inputField);
}
protected function setStyles():void{
copyStylesToChild(background, BACKGROUND_STYLES);
copyStylesToChild(list, LIST_STYLES);
}
public function set labelFunction(_arg1:Function):void{
list.labelFunction = _arg1;
invalidate(InvalidationType.DATA);
}
protected function drawTextFormat():void{
var _local1:TextFormat;
_local1 = (getStyleValue((_enabled) ? "textFormat" : "disabledTextFormat") as TextFormat);
if (_local1 == null){
_local1 = new TextFormat();
};
inputField.textField.defaultTextFormat = _local1;
inputField.textField.setTextFormat(_local1);
setEmbedFonts();
}
public function set selectedIndex(_arg1:int):void{
list.selectedIndex = _arg1;
highlightCell();
invalidate(InvalidationType.SELECTED);
}
public function close():void{
highlightCell();
highlightedCell = -1;
if (!isOpen){
return;
};
dispatchEvent(new Event(Event.CLOSE));
stage.removeEventListener(MouseEvent.MOUSE_DOWN, onStageClick);
isOpen = false;
stage.removeChild(list);
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, List.getStyleDefinition()));
}
}
}//package fl.controls
Section 130
//LabelButton (fl.controls.LabelButton)
package fl.controls {
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.managers.*;
import fl.events.*;
import flash.text.*;
import flash.ui.*;
public class LabelButton extends BaseButton implements IFocusManagerComponent {
protected var _labelPlacement:String;// = "right"
protected var _toggle:Boolean;// = false
protected var icon:DisplayObject;
protected var oldMouseState:String;
protected var mode:String;// = "center"
public var textField:TextField;
protected var _label:String;// = "Label"
private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false};
public static var createAccessibilityImplementation:Function;
public function LabelButton(){
_labelPlacement = ButtonLabelPlacement.RIGHT;
_toggle = false;
_label = "Label";
mode = "center";
super();
}
protected function toggleSelected(_arg1:MouseEvent):void{
selected = !(selected);
dispatchEvent(new Event(Event.CHANGE, true));
}
public function get labelPlacement():String{
return (_labelPlacement);
}
override protected function keyDownHandler(_arg1:KeyboardEvent):void{
if (!enabled){
return;
};
if (_arg1.keyCode == Keyboard.SPACE){
if (oldMouseState == null){
oldMouseState = mouseState;
};
setMouseState("down");
startPress();
};
}
protected function setEmbedFont(){
var _local1:Object;
_local1 = getStyleValue("embedFonts");
if (_local1 != null){
textField.embedFonts = _local1;
};
}
override protected function keyUpHandler(_arg1:KeyboardEvent):void{
if (!enabled){
return;
};
if (_arg1.keyCode == Keyboard.SPACE){
setMouseState(oldMouseState);
oldMouseState = null;
endPress();
dispatchEvent(new MouseEvent(MouseEvent.CLICK));
};
}
override public function get selected():Boolean{
return ((_toggle) ? _selected : false);
}
public function set labelPlacement(_arg1:String):void{
_labelPlacement = _arg1;
invalidate(InvalidationType.SIZE);
}
public function set toggle(_arg1:Boolean):void{
if (((!(_arg1)) && (super.selected))){
selected = false;
};
_toggle = _arg1;
if (_toggle){
addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true);
} else {
removeEventListener(MouseEvent.CLICK, toggleSelected);
};
invalidate(InvalidationType.STATE);
}
public function get label():String{
return (_label);
}
override public function set selected(_arg1:Boolean):void{
_selected = _arg1;
if (_toggle){
invalidate(InvalidationType.STATE);
};
}
override protected function draw():void{
if (textField.text != _label){
label = _label;
};
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
drawBackground();
drawIcon();
drawTextFormat();
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE)){
drawLayout();
};
if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){
if (((isFocused) && (focusManager.showFocusIndicator))){
drawFocus(true);
};
};
validate();
}
public function get toggle():Boolean{
return (_toggle);
}
override protected function configUI():void{
super.configUI();
textField = new TextField();
textField.type = TextFieldType.DYNAMIC;
textField.selectable = false;
addChild(textField);
}
override protected function drawLayout():void{
var _local1:Number;
var _local2:String;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local1 = Number(getStyleValue("textPadding"));
_local2 = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement;
textField.height = (textField.textHeight + 4);
_local3 = (textField.textWidth + 4);
_local4 = (textField.textHeight + 4);
_local5 = ((icon)==null) ? 0 : (icon.width + _local1);
_local6 = ((icon)==null) ? 0 : (icon.height + _local1);
textField.visible = (label.length > 0);
if (icon != null){
icon.x = Math.round(((width - icon.width) / 2));
icon.y = Math.round(((height - icon.height) / 2));
};
if (textField.visible == false){
textField.width = 0;
textField.height = 0;
} else {
if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){
_local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1))));
if ((height - 2) > _local4){
_local8 = _local4;
} else {
_local8 = (height - 2);
};
_local3 = _local7;
textField.width = _local3;
_local4 = _local8;
textField.height = _local4;
textField.x = Math.round(((width - _local3) / 2));
textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0));
if (icon != null){
icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1));
};
} else {
_local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1))));
_local3 = _local7;
textField.width = _local3;
textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0));
textField.y = Math.round(((height - textField.height) / 2));
if (icon != null){
icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1));
};
};
};
super.drawLayout();
}
override protected function initializeAccessibility():void{
if (LabelButton.createAccessibilityImplementation != null){
LabelButton.createAccessibilityImplementation(this);
};
}
protected function drawIcon():void{
var _local1:DisplayObject;
var _local2:String;
var _local3:Object;
_local1 = icon;
_local2 = (enabled) ? mouseState : "disabled";
if (selected){
_local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1));
};
_local2 = (_local2 + "Icon");
_local3 = getStyleValue(_local2);
if (_local3 == null){
_local3 = getStyleValue("icon");
};
if (_local3 != null){
icon = getDisplayObjectInstance(_local3);
};
if (icon != null){
addChildAt(icon, 1);
};
if (((!((_local1 == null))) && (!((_local1 == icon))))){
removeChild(_local1);
};
}
public function set label(_arg1:String):void{
_label = _arg1;
if (textField.text != _label){
textField.text = _label;
dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE));
};
invalidate(InvalidationType.SIZE);
invalidate(InvalidationType.STYLES);
}
protected function drawTextFormat():void{
var _local1:Object;
var _local2:TextFormat;
var _local3:TextFormat;
_local1 = UIComponent.getStyleDefinition();
_local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat);
textField.setTextFormat(_local2);
_local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat);
if (_local3 != null){
textField.setTextFormat(_local3);
} else {
_local3 = _local2;
};
textField.defaultTextFormat = _local3;
setEmbedFont();
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition()));
}
}
}//package fl.controls
Section 131
//List (fl.controls.List)
package fl.controls {
import fl.controls.listClasses.*;
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.managers.*;
import flash.utils.*;
import flash.ui.*;
import flash.geom.*;
public class List extends SelectableList implements IFocusManagerComponent {
protected var _labelField:String;// = "label"
protected var _rowHeight:Number;// = 20
protected var _cellRenderer:Object;
protected var _iconField:String;// = "icon"
protected var _labelFunction:Function;
protected var _iconFunction:Function;
private static var defaultStyles:Object = {focusRectSkin:null, focusRectPadding:null};
public static var createAccessibilityImplementation:Function;
public function List(){
_rowHeight = 20;
_labelField = "label";
_iconField = "icon";
super();
}
public function get iconField():String{
return (_iconField);
}
protected function doKeySelection(_arg1:int, _arg2:Boolean, _arg3:Boolean):void{
var _local4:Boolean;
var _local5:int;
var _local6:Array;
var _local7:int;
var _local8:int;
_local4 = false;
if (_arg2){
_local6 = [];
_local7 = lastCaretIndex;
_local8 = _arg1;
if (_local7 == -1){
_local7 = ((caretIndex)!=-1) ? caretIndex : _arg1;
};
if (_local7 > _local8){
_local8 = _local7;
_local7 = _arg1;
};
_local5 = _local7;
while (_local5 <= _local8) {
_local6.push(_local5);
_local5++;
};
selectedIndices = _local6;
caretIndex = _arg1;
_local4 = true;
} else {
selectedIndex = _arg1;
caretIndex = (lastCaretIndex = _arg1);
_local4 = true;
};
if (_local4){
dispatchEvent(new Event(Event.CHANGE));
};
invalidate(InvalidationType.DATA);
}
override protected function drawList():void{
var _local1:Rectangle;
var _local2:uint;
var _local3:uint;
var _local4:uint;
var _local5:Object;
var _local6:ICellRenderer;
var _local7:Dictionary;
var _local8:Dictionary;
var _local9:Boolean;
var _local10:String;
var _local11:Object;
var _local12:Sprite;
var _local13:String;
listHolder.x = (listHolder.y = contentPadding);
_local1 = listHolder.scrollRect;
_local1.x = _horizontalScrollPosition;
_local1.y = (Math.floor(_verticalScrollPosition) % rowHeight);
listHolder.scrollRect = _local1;
listHolder.cacheAsBitmap = useBitmapScrolling;
_local2 = Math.floor((_verticalScrollPosition / rowHeight));
_local3 = Math.min(length, ((_local2 + rowCount) + 1));
_local7 = (renderedItems = new Dictionary(true));
_local4 = _local2;
while (_local4 < _local3) {
_local7[_dataProvider.getItemAt(_local4)] = true;
_local4++;
};
_local8 = new Dictionary(true);
while (activeCellRenderers.length > 0) {
_local6 = (activeCellRenderers.pop() as ICellRenderer);
_local5 = _local6.data;
if ((((_local7[_local5] == null)) || ((invalidItems[_local5] == true)))){
availableCellRenderers.push(_local6);
} else {
_local8[_local5] = _local6;
invalidItems[_local5] = true;
};
list.removeChild((_local6 as DisplayObject));
};
invalidItems = new Dictionary(true);
_local4 = _local2;
while (_local4 < _local3) {
_local9 = false;
_local5 = _dataProvider.getItemAt(_local4);
if (_local8[_local5] != null){
_local9 = true;
_local6 = _local8[_local5];
delete _local8[_local5];
} else {
if (availableCellRenderers.length > 0){
_local6 = (availableCellRenderers.pop() as ICellRenderer);
} else {
_local6 = (getDisplayObjectInstance(getStyleValue("cellRenderer")) as ICellRenderer);
_local12 = (_local6 as Sprite);
if (_local12 != null){
_local12.addEventListener(MouseEvent.CLICK, handleCellRendererClick, false, 0, true);
_local12.addEventListener(MouseEvent.ROLL_OVER, handleCellRendererMouseEvent, false, 0, true);
_local12.addEventListener(MouseEvent.ROLL_OUT, handleCellRendererMouseEvent, false, 0, true);
_local12.addEventListener(Event.CHANGE, handleCellRendererChange, false, 0, true);
_local12.doubleClickEnabled = true;
_local12.addEventListener(MouseEvent.DOUBLE_CLICK, handleCellRendererDoubleClick, false, 0, true);
if (_local12["setStyle"] != null){
for (_local13 in rendererStyles) {
var _local16 = _local12;
_local16["setStyle"](_local13, rendererStyles[_local13]);
};
};
};
};
};
list.addChild((_local6 as Sprite));
activeCellRenderers.push(_local6);
_local6.y = (rowHeight * (_local4 - _local2));
_local6.setSize((availableWidth + _maxHorizontalScrollPosition), rowHeight);
_local10 = itemToLabel(_local5);
_local11 = null;
if (_iconFunction != null){
_local11 = _iconFunction(_local5);
} else {
if (_iconField != null){
_local11 = _local5[_iconField];
};
};
if (!_local9){
_local6.data = _local5;
};
_local6.listData = new ListData(_local10, _local11, this, _local4, _local4, 0);
_local6.selected = !((_selectedIndices.indexOf(_local4) == -1));
if ((_local6 is UIComponent)){
(_local6 as UIComponent).drawNow();
};
_local4++;
};
}
public function get iconFunction():Function{
return (_iconFunction);
}
public function set iconField(_arg1:String):void{
if (_arg1 == _iconField){
return;
};
_iconField = _arg1;
invalidate(InvalidationType.DATA);
}
override protected function keyDownHandler(_arg1:KeyboardEvent):void{
var _local2:int;
if (!selectable){
return;
};
switch (_arg1.keyCode){
case Keyboard.UP:
case Keyboard.DOWN:
case Keyboard.END:
case Keyboard.HOME:
case Keyboard.PAGE_UP:
case Keyboard.PAGE_DOWN:
moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection)));
break;
case Keyboard.LEFT:
case Keyboard.RIGHT:
moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection)));
break;
case Keyboard.SPACE:
if (caretIndex == -1){
caretIndex = 0;
};
doKeySelection(caretIndex, _arg1.shiftKey, _arg1.ctrlKey);
scrollToSelected();
break;
default:
_local2 = getNextIndexAtLetter(String.fromCharCode(_arg1.keyCode), selectedIndex);
if (_local2 > -1){
selectedIndex = _local2;
scrollToSelected();
};
break;
};
_arg1.stopPropagation();
}
override public function itemToLabel(_arg1:Object):String{
if (_labelFunction != null){
return (String(_labelFunction(_arg1)));
};
return (((_arg1[_labelField])!=null) ? String(_arg1[_labelField]) : "");
}
public function get labelField():String{
return (_labelField);
}
override protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{
var _local4:int;
var _local5:int;
var _local6:int;
_local4 = Math.max(Math.floor((calculateAvailableHeight() / rowHeight)), 1);
_local5 = -1;
_local6 = 0;
switch (_arg1){
case Keyboard.UP:
if (caretIndex > 0){
_local5 = (caretIndex - 1);
};
break;
case Keyboard.DOWN:
if (caretIndex < (length - 1)){
_local5 = (caretIndex + 1);
};
break;
case Keyboard.PAGE_UP:
if (caretIndex > 0){
_local5 = Math.max((caretIndex - _local4), 0);
};
break;
case Keyboard.PAGE_DOWN:
if (caretIndex < (length - 1)){
_local5 = Math.min((caretIndex + _local4), (length - 1));
};
break;
case Keyboard.HOME:
if (caretIndex > 0){
_local5 = 0;
};
break;
case Keyboard.END:
if (caretIndex < (length - 1)){
_local5 = (length - 1);
};
break;
};
if (_local5 >= 0){
doKeySelection(_local5, _arg2, _arg3);
scrollToSelected();
};
}
public function set labelField(_arg1:String):void{
if (_arg1 == _labelField){
return;
};
_labelField = _arg1;
invalidate(InvalidationType.DATA);
}
public function set rowCount(_arg1:uint):void{
var _local2:Number;
var _local3:Number;
_local2 = Number(getStyleValue("contentPadding"));
_local3 = ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0;
height = (((rowHeight * _arg1) + (2 * _local2)) + _local3);
}
override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
list.x = -(_arg1);
super.setHorizontalScrollPosition(_arg1, true);
}
public function set iconFunction(_arg1:Function):void{
if (_iconFunction == _arg1){
return;
};
_iconFunction = _arg1;
invalidate(InvalidationType.DATA);
}
public function get labelFunction():Function{
return (_labelFunction);
}
override protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{
}
override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
invalidate(InvalidationType.SCROLL);
super.setVerticalScrollPosition(_arg1, true);
}
protected function calculateAvailableHeight():Number{
var _local1:Number;
_local1 = Number(getStyleValue("contentPadding"));
return (((height - (_local1 * 2)) - ((((_horizontalScrollPolicy == ScrollPolicy.ON)) || ((((_horizontalScrollPolicy == ScrollPolicy.AUTO)) && ((_maxHorizontalScrollPosition > 0)))))) ? 15 : 0));
}
override protected function draw():void{
var _local1:Boolean;
_local1 = !((contentHeight == (rowHeight * length)));
contentHeight = (rowHeight * length);
if (isInvalid(InvalidationType.STYLES)){
setStyles();
drawBackground();
if (contentPadding != getStyleValue("contentPadding")){
invalidate(InvalidationType.SIZE, false);
};
if (_cellRenderer != getStyleValue("cellRenderer")){
_invalidateList();
_cellRenderer = getStyleValue("cellRenderer");
};
};
if (((isInvalid(InvalidationType.SIZE, InvalidationType.STATE)) || (_local1))){
drawLayout();
};
if (isInvalid(InvalidationType.RENDERER_STYLES)){
updateRendererStyles();
};
if (isInvalid(InvalidationType.STYLES, InvalidationType.SIZE, InvalidationType.DATA, InvalidationType.SCROLL, InvalidationType.SELECTED)){
drawList();
};
updateChildren();
validate();
}
override protected function configUI():void{
useFixedHorizontalScrolling = true;
_horizontalScrollPolicy = ScrollPolicy.AUTO;
_verticalScrollPolicy = ScrollPolicy.AUTO;
super.configUI();
}
override public function get rowCount():uint{
return (Math.ceil((calculateAvailableHeight() / rowHeight)));
}
override protected function initializeAccessibility():void{
if (List.createAccessibilityImplementation != null){
List.createAccessibilityImplementation(this);
};
}
override public function scrollToIndex(_arg1:int):void{
var _local2:uint;
var _local3:uint;
drawNow();
_local2 = (Math.floor(((_verticalScrollPosition + availableHeight) / rowHeight)) - 1);
_local3 = Math.ceil((_verticalScrollPosition / rowHeight));
if (_arg1 < _local3){
verticalScrollPosition = (_arg1 * rowHeight);
} else {
if (_arg1 > _local2){
verticalScrollPosition = (((_arg1 + 1) * rowHeight) - availableHeight);
};
};
}
public function get rowHeight():Number{
return (_rowHeight);
}
public function set labelFunction(_arg1:Function):void{
if (_labelFunction == _arg1){
return;
};
_labelFunction = _arg1;
invalidate(InvalidationType.DATA);
}
public function set rowHeight(_arg1:Number):void{
_rowHeight = _arg1;
invalidate(InvalidationType.SIZE);
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, SelectableList.getStyleDefinition()));
}
}
}//package fl.controls
Section 132
//ScrollBar (fl.controls.ScrollBar)
package fl.controls {
import fl.core.*;
import flash.events.*;
import fl.events.*;
public class ScrollBar extends UIComponent {
private var _direction:String;// = "vertical"
protected var inDrag:Boolean;// = false
protected var upArrow:BaseButton;
private var _pageScrollSize:Number;// = 0
protected var downArrow:BaseButton;
private var _pageSize:Number;// = 10
private var thumbScrollOffset:Number;
private var _maxScrollPosition:Number;// = 0
private var _scrollPosition:Number;// = 0
protected var track:BaseButton;
private var _minScrollPosition:Number;// = 0
private var _lineScrollSize:Number;// = 1
protected var thumb:LabelButton;
protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0};
public static const WIDTH:Number = 15;
protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"};
protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"};
protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"};
private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35};
public function ScrollBar(){
_pageSize = 10;
_pageScrollSize = 0;
_lineScrollSize = 1;
_minScrollPosition = 0;
_maxScrollPosition = 0;
_scrollPosition = 0;
_direction = ScrollBarDirection.VERTICAL;
inDrag = false;
super();
setStyles();
focusEnabled = false;
}
public function get minScrollPosition():Number{
return (_minScrollPosition);
}
public function set minScrollPosition(_arg1:Number):void{
setScrollProperties(_pageSize, _arg1, _maxScrollPosition);
}
public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{
var _local3:Number;
_local3 = scrollPosition;
_scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1));
if (_local3 == _scrollPosition){
return;
};
if (_arg2){
dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition));
};
updateThumb();
}
public function set scrollPosition(_arg1:Number):void{
setScrollPosition(_arg1, true);
}
public function get pageScrollSize():Number{
return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize);
}
public function set pageSize(_arg1:Number):void{
if (_arg1 > 0){
_pageSize = _arg1;
};
}
public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{
this.pageSize = _arg1;
_minScrollPosition = _arg2;
_maxScrollPosition = _arg3;
if (_arg4 >= 0){
_pageScrollSize = _arg4;
};
enabled = (_maxScrollPosition > _minScrollPosition);
setScrollPosition(_scrollPosition, false);
updateThumb();
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition))))));
updateThumb();
}
protected function updateThumb():void{
var _local1:Number;
_local1 = ((_maxScrollPosition - _minScrollPosition) + _pageSize);
if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){
thumb.height = 12;
thumb.visible = false;
} else {
thumb.height = Math.max(13, ((_pageSize / _local1) * track.height));
thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition))));
thumb.visible = enabled;
};
}
protected function thumbPressHandler(_arg1:MouseEvent):void{
inDrag = true;
thumbScrollOffset = (mouseY - thumb.y);
thumb.mouseStateLocked = true;
mouseChildren = false;
stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true);
stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true);
}
protected function thumbReleaseHandler(_arg1:MouseEvent):void{
inDrag = false;
mouseChildren = true;
thumb.mouseStateLocked = false;
stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag);
stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler);
}
public function set pageScrollSize(_arg1:Number):void{
if (_arg1 >= 0){
_pageScrollSize = _arg1;
};
}
protected function handleThumbDrag(_arg1:MouseEvent):void{
var _local2:Number;
_local2 = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset)));
setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition));
}
public function set direction(_arg1:String):void{
var _local2:Boolean;
if (_direction == _arg1){
return;
};
_direction = _arg1;
if (isLivePreview){
return;
};
setScaleY(1);
_local2 = (_direction == ScrollBarDirection.HORIZONTAL);
if (((_local2) && (componentInspectorSetting))){
if (rotation == 90){
return;
};
setScaleX(-1);
rotation = -90;
};
if (!componentInspectorSetting){
if (((_local2) && ((rotation == 0)))){
rotation = -90;
setScaleX(-1);
} else {
if (((!(_local2)) && ((rotation == -90)))){
rotation = 0;
setScaleX(1);
};
};
};
invalidate(InvalidationType.SIZE);
}
public function set lineScrollSize(_arg1:Number):void{
if (_arg1 > 0){
_lineScrollSize = _arg1;
};
}
override public function get height():Number{
return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height);
}
protected function scrollPressHandler(_arg1:ComponentEvent):void{
var _local2:Number;
var _local3:Number;
_arg1.stopImmediatePropagation();
if (_arg1.currentTarget == upArrow){
setScrollPosition((_scrollPosition - _lineScrollSize));
} else {
if (_arg1.currentTarget == downArrow){
setScrollPosition((_scrollPosition + _lineScrollSize));
} else {
_local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition);
_local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize;
if (_scrollPosition < _local2){
setScrollPosition(Math.min(_local2, (_scrollPosition + _local3)));
} else {
if (_scrollPosition > _local2){
setScrollPosition(Math.max(_local2, (_scrollPosition - _local3)));
};
};
};
};
}
public function get pageSize():Number{
return (_pageSize);
}
public function set maxScrollPosition(_arg1:Number):void{
setScrollProperties(_pageSize, _minScrollPosition, _arg1);
}
public function get scrollPosition():Number{
return (_scrollPosition);
}
override public function get enabled():Boolean{
return (super.enabled);
}
override protected function draw():void{
var _local1:Number;
if (isInvalid(InvalidationType.SIZE)){
_local1 = super.height;
downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height)));
track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height))));
updateThumb();
};
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
setStyles();
};
downArrow.drawNow();
upArrow.drawNow();
track.drawNow();
thumb.drawNow();
validate();
}
override protected function configUI():void{
super.configUI();
track = new BaseButton();
track.move(0, 14);
track.useHandCursor = false;
track.autoRepeat = true;
track.focusEnabled = false;
addChild(track);
thumb = new LabelButton();
thumb.label = "";
thumb.setSize(WIDTH, 15);
thumb.move(0, 15);
thumb.focusEnabled = false;
addChild(thumb);
downArrow = new BaseButton();
downArrow.setSize(WIDTH, 14);
downArrow.autoRepeat = true;
downArrow.focusEnabled = false;
addChild(downArrow);
upArrow = new BaseButton();
upArrow.setSize(WIDTH, 14);
upArrow.move(0, 0);
upArrow.autoRepeat = true;
upArrow.focusEnabled = false;
addChild(upArrow);
upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true);
downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true);
track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true);
thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true);
enabled = false;
}
public function get direction():String{
return (_direction);
}
public function get lineScrollSize():Number{
return (_lineScrollSize);
}
override public function setSize(_arg1:Number, _arg2:Number):void{
if (_direction == ScrollBarDirection.HORIZONTAL){
super.setSize(_arg2, _arg1);
} else {
super.setSize(_arg1, _arg2);
};
}
public function get maxScrollPosition():Number{
return (_maxScrollPosition);
}
override public function get width():Number{
return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width);
}
protected function setStyles():void{
copyStylesToChild(downArrow, DOWN_ARROW_STYLES);
copyStylesToChild(thumb, THUMB_STYLES);
copyStylesToChild(track, TRACK_STYLES);
copyStylesToChild(upArrow, UP_ARROW_STYLES);
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
}
}//package fl.controls
Section 133
//ScrollBarDirection (fl.controls.ScrollBarDirection)
package fl.controls {
public class ScrollBarDirection {
public static const HORIZONTAL:String = "horizontal";
public static const VERTICAL:String = "vertical";
}
}//package fl.controls
Section 134
//ScrollPolicy (fl.controls.ScrollPolicy)
package fl.controls {
public class ScrollPolicy {
public static const OFF:String = "off";
public static const ON:String = "on";
public static const AUTO:String = "auto";
}
}//package fl.controls
Section 135
//SelectableList (fl.controls.SelectableList)
package fl.controls {
import fl.controls.listClasses.*;
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.data.*;
import fl.managers.*;
import fl.events.*;
import flash.utils.*;
import flash.ui.*;
import fl.containers.*;
public class SelectableList extends BaseScrollPane implements IFocusManagerComponent {
protected var invalidItems:Dictionary;
protected var renderedItems:Dictionary;
protected var listHolder:Sprite;
protected var _allowMultipleSelection:Boolean;// = false
protected var lastCaretIndex:int;// = -1
protected var _selectedIndices:Array;
protected var availableCellRenderers:Array;
protected var list:Sprite;
protected var caretIndex:int;// = -1
protected var updatedRendererStyles:Object;
protected var preChangeItems:Array;
protected var activeCellRenderers:Array;
protected var rendererStyles:Object;
protected var _verticalScrollPosition:Number;
protected var _dataProvider:DataProvider;
protected var _horizontalScrollPosition:Number;
private var collectionItemImport:SimpleCollectionItem;
protected var _selectable:Boolean;// = true
private static var defaultStyles:Object = {skin:"List_skin", cellRenderer:CellRenderer, contentPadding:null, disabledAlpha:null};
public static var createAccessibilityImplementation:Function;
public function SelectableList(){
_allowMultipleSelection = false;
_selectable = true;
caretIndex = -1;
lastCaretIndex = -1;
super();
activeCellRenderers = [];
availableCellRenderers = [];
invalidItems = new Dictionary(true);
renderedItems = new Dictionary(true);
_selectedIndices = [];
if (dataProvider == null){
dataProvider = new DataProvider();
};
verticalScrollPolicy = ScrollPolicy.AUTO;
rendererStyles = {};
updatedRendererStyles = {};
}
protected function drawList():void{
}
public function set allowMultipleSelection(_arg1:Boolean):void{
if (_arg1 == _allowMultipleSelection){
return;
};
_allowMultipleSelection = _arg1;
if (((!(_arg1)) && ((_selectedIndices.length > 1)))){
_selectedIndices = [_selectedIndices.pop()];
invalidate(InvalidationType.DATA);
};
}
public function sortItemsOn(_arg1:String, _arg2:Object=null){
return (_dataProvider.sortOn(_arg1, _arg2));
}
public function removeItemAt(_arg1:uint):Object{
return (_dataProvider.removeItemAt(_arg1));
}
public function get selectedItem():Object{
return (((_selectedIndices.length)==0) ? null : _dataProvider.getItemAt(selectedIndex));
}
override protected function keyDownHandler(_arg1:KeyboardEvent):void{
if (!selectable){
return;
};
switch (_arg1.keyCode){
case Keyboard.UP:
case Keyboard.DOWN:
case Keyboard.END:
case Keyboard.HOME:
case Keyboard.PAGE_UP:
case Keyboard.PAGE_DOWN:
moveSelectionVertically(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection)));
_arg1.stopPropagation();
break;
case Keyboard.LEFT:
case Keyboard.RIGHT:
moveSelectionHorizontally(_arg1.keyCode, ((_arg1.shiftKey) && (_allowMultipleSelection)), ((_arg1.ctrlKey) && (_allowMultipleSelection)));
_arg1.stopPropagation();
break;
};
}
public function get selectable():Boolean{
return (_selectable);
}
public function itemToCellRenderer(_arg1:Object):ICellRenderer{
var _local2:*;
var _local3:ICellRenderer;
if (_arg1 != null){
for (_local2 in activeCellRenderers) {
_local3 = (activeCellRenderers[_local2] as ICellRenderer);
if (_local3.data == _arg1){
return (_local3);
};
};
};
return (null);
}
public function getNextIndexAtLetter(_arg1:String, _arg2:int=-1):int{
var _local3:int;
var _local4:Number;
var _local5:Number;
var _local6:Object;
var _local7:String;
if (length == 0){
return (-1);
};
_arg1 = _arg1.toUpperCase();
_local3 = (length - 1);
_local4 = 0;
while (_local4 < _local3) {
_local5 = ((_arg2 + 1) + _local4);
if (_local5 > (length - 1)){
_local5 = (_local5 - length);
};
_local6 = getItemAt(_local5);
if (_local6 == null){
break;
};
_local7 = itemToLabel(_local6);
if (_local7 == null){
} else {
if (_local7.charAt(0).toUpperCase() == _arg1){
return (_local5);
};
};
_local4++;
};
return (-1);
}
public function invalidateList():void{
_invalidateList();
invalidate(InvalidationType.DATA);
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
list.mouseChildren = _enabled;
}
public function get selectedIndices():Array{
return (_selectedIndices.concat());
}
public function set selectable(_arg1:Boolean):void{
if (_arg1 == _selectable){
return;
};
if (!_arg1){
selectedIndices = [];
};
_selectable = _arg1;
}
public function itemToLabel(_arg1:Object):String{
return (_arg1["label"]);
}
public function addItemAt(_arg1:Object, _arg2:uint):void{
_dataProvider.addItemAt(_arg1, _arg2);
invalidateList();
}
public function replaceItemAt(_arg1:Object, _arg2:uint):Object{
return (_dataProvider.replaceItemAt(_arg1, _arg2));
}
protected function handleDataChange(_arg1:DataChangeEvent):void{
var _local2:int;
var _local3:int;
var _local4:String;
var _local5:uint;
_local2 = _arg1.startIndex;
_local3 = _arg1.endIndex;
_local4 = _arg1.changeType;
if (_local4 == DataChangeType.INVALIDATE_ALL){
clearSelection();
invalidateList();
} else {
if (_local4 == DataChangeType.INVALIDATE){
_local5 = 0;
while (_local5 < _arg1.items.length) {
invalidateItem(_arg1.items[_local5]);
_local5++;
};
} else {
if (_local4 == DataChangeType.ADD){
_local5 = 0;
while (_local5 < _selectedIndices.length) {
if (_selectedIndices[_local5] >= _local2){
_selectedIndices[_local5] = (_selectedIndices[_local5] + (_local2 - _local3));
};
_local5++;
};
} else {
if (_local4 == DataChangeType.REMOVE){
_local5 = 0;
while (_local5 < _selectedIndices.length) {
if (_selectedIndices[_local5] >= _local2){
if (_selectedIndices[_local5] <= _local3){
delete _selectedIndices[_local5];
} else {
_selectedIndices[_local5] = (_selectedIndices[_local5] - ((_local2 - _local3) + 1));
};
};
_local5++;
};
} else {
if (_local4 == DataChangeType.REMOVE_ALL){
clearSelection();
} else {
if (_local4 == DataChangeType.REPLACE){
} else {
selectedItems = preChangeItems;
preChangeItems = null;
};
};
};
};
};
};
invalidate(InvalidationType.DATA);
}
protected function _invalidateList():void{
availableCellRenderers = [];
while (activeCellRenderers.length > 0) {
list.removeChild((activeCellRenderers.pop() as DisplayObject));
};
}
protected function updateRendererStyles():void{
var _local1:Array;
var _local2:uint;
var _local3:uint;
var _local4:String;
_local1 = availableCellRenderers.concat(activeCellRenderers);
_local2 = _local1.length;
_local3 = 0;
while (_local3 < _local2) {
if (_local1[_local3].setStyle == null){
} else {
for (_local4 in updatedRendererStyles) {
_local1[_local3].setStyle(_local4, updatedRendererStyles[_local4]);
};
_local1[_local3].drawNow();
};
_local3++;
};
updatedRendererStyles = {};
}
public function set selectedItem(_arg1:Object):void{
var _local2:int;
_local2 = _dataProvider.getItemIndex(_arg1);
selectedIndex = _local2;
}
public function sortItems(... _args){
return (_dataProvider.sort.apply(_dataProvider, _args));
}
public function removeAll():void{
_dataProvider.removeAll();
}
protected function handleCellRendererChange(_arg1:Event):void{
var _local2:ICellRenderer;
var _local3:uint;
_local2 = (_arg1.currentTarget as ICellRenderer);
_local3 = _local2.listData.index;
_dataProvider.invalidateItemAt(_local3);
}
protected function moveSelectionVertically(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{
}
override protected function setHorizontalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
var _local3:Number;
if (_arg1 == _horizontalScrollPosition){
return;
};
_local3 = (_arg1 - _horizontalScrollPosition);
_horizontalScrollPosition = _arg1;
if (_arg2){
dispatchEvent(new ScrollEvent(ScrollBarDirection.HORIZONTAL, _local3, _arg1));
};
}
public function scrollToSelected():void{
scrollToIndex(selectedIndex);
}
public function invalidateItem(_arg1:Object):void{
if (renderedItems[_arg1] == null){
return;
};
invalidItems[_arg1] = true;
invalidate(InvalidationType.DATA);
}
protected function handleCellRendererClick(_arg1:MouseEvent):void{
var _local2:ICellRenderer;
var _local3:uint;
var _local4:int;
var _local5:int;
var _local6:uint;
if (!_enabled){
return;
};
_local2 = (_arg1.currentTarget as ICellRenderer);
_local3 = _local2.listData.index;
if (((!(dispatchEvent(new ListEvent(ListEvent.ITEM_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data)))) || (!(_selectable)))){
return;
};
_local4 = selectedIndices.indexOf(_local3);
if (!_allowMultipleSelection){
if (_local4 != -1){
return;
};
_local2.selected = true;
_selectedIndices = [_local3];
lastCaretIndex = (caretIndex = _local3);
} else {
if (_arg1.shiftKey){
_local6 = ((_selectedIndices.length)>0) ? _selectedIndices[0] : _local3;
_selectedIndices = [];
if (_local6 > _local3){
_local5 = _local6;
while (_local5 >= _local3) {
_selectedIndices.push(_local5);
_local5--;
};
} else {
_local5 = _local6;
while (_local5 <= _local3) {
_selectedIndices.push(_local5);
_local5++;
};
};
caretIndex = _local3;
} else {
if (_arg1.ctrlKey){
if (_local4 != -1){
_local2.selected = false;
_selectedIndices.splice(_local4, 1);
} else {
_local2.selected = true;
_selectedIndices.push(_local3);
};
caretIndex = _local3;
} else {
_selectedIndices = [_local3];
lastCaretIndex = (caretIndex = _local3);
};
};
};
dispatchEvent(new Event(Event.CHANGE));
invalidate(InvalidationType.DATA);
}
public function get length():uint{
return (_dataProvider.length);
}
public function get allowMultipleSelection():Boolean{
return (_allowMultipleSelection);
}
protected function onPreChange(_arg1:DataChangeEvent):void{
switch (_arg1.changeType){
case DataChangeType.REMOVE:
case DataChangeType.ADD:
case DataChangeType.INVALIDATE:
case DataChangeType.REMOVE_ALL:
case DataChangeType.REPLACE:
case DataChangeType.INVALIDATE_ALL:
break;
default:
preChangeItems = selectedItems;
break;
};
}
public function getRendererStyle(_arg1:String, _arg2:int=-1):Object{
return (rendererStyles[_arg1]);
}
override protected function setVerticalScrollPosition(_arg1:Number, _arg2:Boolean=false):void{
var _local3:Number;
if (_arg1 == _verticalScrollPosition){
return;
};
_local3 = (_arg1 - _verticalScrollPosition);
_verticalScrollPosition = _arg1;
if (_arg2){
dispatchEvent(new ScrollEvent(ScrollBarDirection.VERTICAL, _local3, _arg1));
};
}
protected function moveSelectionHorizontally(_arg1:uint, _arg2:Boolean, _arg3:Boolean):void{
}
public function set selectedIndices(_arg1:Array):void{
if (!_selectable){
return;
};
_selectedIndices = ((_arg1)==null) ? [] : _arg1.concat();
invalidate(InvalidationType.SELECTED);
}
public function get selectedIndex():int{
return (((_selectedIndices.length)==0) ? -1 : _selectedIndices[(_selectedIndices.length - 1)]);
}
override protected function draw():void{
super.draw();
}
override protected function configUI():void{
super.configUI();
listHolder = new Sprite();
addChild(listHolder);
listHolder.scrollRect = contentScrollRect;
list = new Sprite();
listHolder.addChild(list);
}
public function addItem(_arg1:Object):void{
_dataProvider.addItem(_arg1);
invalidateList();
}
protected function handleCellRendererMouseEvent(_arg1:MouseEvent):void{
var _local2:ICellRenderer;
var _local3:String;
_local2 = (_arg1.target as ICellRenderer);
_local3 = ((_arg1.type)==MouseEvent.ROLL_OVER) ? ListEvent.ITEM_ROLL_OVER : ListEvent.ITEM_ROLL_OUT;
dispatchEvent(new ListEvent(_local3, false, false, _local2.listData.column, _local2.listData.row, _local2.listData.index, _local2.data));
}
public function clearRendererStyle(_arg1:String, _arg2:int=-1):void{
delete rendererStyles[_arg1];
updatedRendererStyles[_arg1] = null;
invalidate(InvalidationType.RENDERER_STYLES);
}
protected function handleCellRendererDoubleClick(_arg1:MouseEvent):void{
var _local2:ICellRenderer;
var _local3:uint;
if (!_enabled){
return;
};
_local2 = (_arg1.currentTarget as ICellRenderer);
_local3 = _local2.listData.index;
dispatchEvent(new ListEvent(ListEvent.ITEM_DOUBLE_CLICK, false, true, _local2.listData.column, _local2.listData.row, _local3, _local2.data));
}
public function get rowCount():uint{
return (0);
}
public function isItemSelected(_arg1:Object):Boolean{
return ((selectedItems.indexOf(_arg1) > -1));
}
public function set dataProvider(_arg1:DataProvider):void{
if (_dataProvider != null){
_dataProvider.removeEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange);
_dataProvider.removeEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange);
};
_dataProvider = _arg1;
_dataProvider.addEventListener(DataChangeEvent.DATA_CHANGE, handleDataChange, false, 0, true);
_dataProvider.addEventListener(DataChangeEvent.PRE_DATA_CHANGE, onPreChange, false, 0, true);
clearSelection();
invalidateList();
}
override protected function drawLayout():void{
super.drawLayout();
contentScrollRect = listHolder.scrollRect;
contentScrollRect.width = availableWidth;
contentScrollRect.height = availableHeight;
listHolder.scrollRect = contentScrollRect;
}
public function getItemAt(_arg1:uint):Object{
return (_dataProvider.getItemAt(_arg1));
}
override protected function initializeAccessibility():void{
if (SelectableList.createAccessibilityImplementation != null){
SelectableList.createAccessibilityImplementation(this);
};
}
public function scrollToIndex(_arg1:int):void{
}
public function removeItem(_arg1:Object):Object{
return (_dataProvider.removeItem(_arg1));
}
public function get dataProvider():DataProvider{
return (_dataProvider);
}
public function set maxHorizontalScrollPosition(_arg1:Number):void{
_maxHorizontalScrollPosition = _arg1;
invalidate(InvalidationType.SIZE);
}
public function setRendererStyle(_arg1:String, _arg2:Object, _arg3:uint=0):void{
if (rendererStyles[_arg1] == _arg2){
return;
};
updatedRendererStyles[_arg1] = _arg2;
rendererStyles[_arg1] = _arg2;
invalidate(InvalidationType.RENDERER_STYLES);
}
public function invalidateItemAt(_arg1:uint):void{
var _local2:Object;
_local2 = _dataProvider.getItemAt(_arg1);
if (_local2 != null){
invalidateItem(_local2);
};
}
public function set selectedItems(_arg1:Array):void{
var _local2:Array;
var _local3:uint;
var _local4:int;
if (_arg1 == null){
selectedIndices = null;
return;
};
_local2 = [];
_local3 = 0;
while (_local3 < _arg1.length) {
_local4 = _dataProvider.getItemIndex(_arg1[_local3]);
if (_local4 != -1){
_local2.push(_local4);
};
_local3++;
};
selectedIndices = _local2;
}
public function clearSelection():void{
selectedIndex = -1;
}
override public function get maxHorizontalScrollPosition():Number{
return (_maxHorizontalScrollPosition);
}
public function get selectedItems():Array{
var _local1:Array;
var _local2:uint;
_local1 = [];
_local2 = 0;
while (_local2 < _selectedIndices.length) {
_local1.push(_dataProvider.getItemAt(_selectedIndices[_local2]));
_local2++;
};
return (_local1);
}
public function set selectedIndex(_arg1:int):void{
selectedIndices = ((_arg1)==-1) ? null : [_arg1];
}
public static function getStyleDefinition():Object{
return (mergeStyles(defaultStyles, BaseScrollPane.getStyleDefinition()));
}
}
}//package fl.controls
Section 136
//TextInput (fl.controls.TextInput)
package fl.controls {
import fl.core.*;
import flash.display.*;
import flash.events.*;
import fl.managers.*;
import fl.events.*;
import flash.text.*;
import flash.ui.*;
public class TextInput extends UIComponent implements IFocusManagerComponent {
protected var _html:Boolean;// = false
protected var _savedHTML:String;
protected var background:DisplayObject;
protected var _editable:Boolean;// = true
public var textField:TextField;
private static var defaultStyles:Object = {upSkin:"TextInput_upSkin", disabledSkin:"TextInput_disabledSkin", focusRectSkin:null, focusRectPadding:null, textFormat:null, disabledTextFormat:null, textPadding:0, embedFonts:false};
public static var createAccessibilityImplementation:Function;
public function TextInput(){
_editable = true;
_html = false;
super();
}
override public function drawFocus(_arg1:Boolean):void{
if (focusTarget != null){
focusTarget.drawFocus(_arg1);
return;
};
super.drawFocus(_arg1);
}
public function set imeMode(_arg1:String):void{
_imeMode = _arg1;
}
override protected function isOurFocus(_arg1:DisplayObject):Boolean{
return ((((_arg1 == textField)) || (super.isOurFocus(_arg1))));
}
protected function handleKeyDown(_arg1:KeyboardEvent):void{
if (_arg1.keyCode == Keyboard.ENTER){
dispatchEvent(new ComponentEvent(ComponentEvent.ENTER, true));
};
}
public function set text(_arg1:String):void{
textField.text = _arg1;
_html = false;
invalidate(InvalidationType.DATA);
invalidate(InvalidationType.STYLES);
}
protected function updateTextFieldType():void{
textField.type = (((enabled) && (editable))) ? TextFieldType.INPUT : TextFieldType.DYNAMIC;
textField.selectable = enabled;
}
public function get selectionEndIndex():int{
return (textField.selectionEndIndex);
}
public function get editable():Boolean{
return (_editable);
}
override protected function focusInHandler(_arg1:FocusEvent):void{
var _local2:IFocusManager;
if (_arg1.target == this){
stage.focus = textField;
};
_local2 = focusManager;
if (((editable) && (_local2))){
_local2.showFocusIndicator = true;
if (((textField.selectable) && ((textField.selectionBeginIndex == textField.selectionBeginIndex)))){
setSelection(0, textField.length);
};
};
super.focusInHandler(_arg1);
if (editable){
setIMEMode(true);
};
}
public function get selectionBeginIndex():int{
return (textField.selectionBeginIndex);
}
public function set alwaysShowSelection(_arg1:Boolean):void{
textField.alwaysShowSelection = _arg1;
}
override public function set enabled(_arg1:Boolean):void{
super.enabled = _arg1;
updateTextFieldType();
}
protected function setEmbedFont(){
var _local1:Object;
_local1 = getStyleValue("embedFonts");
if (_local1 != null){
textField.embedFonts = _local1;
};
}
public function get horizontalScrollPosition():int{
return (textField.scrollH);
}
public function set condenseWhite(_arg1:Boolean):void{
textField.condenseWhite = _arg1;
}
public function set displayAsPassword(_arg1:Boolean):void{
textField.displayAsPassword = _arg1;
}
public function set horizontalScrollPosition(_arg1:int):void{
textField.scrollH = _arg1;
}
public function get restrict():String{
return (textField.restrict);
}
public function get textWidth():Number{
return (textField.textWidth);
}
public function get textHeight():Number{
return (textField.textHeight);
}
public function set editable(_arg1:Boolean):void{
_editable = _arg1;
updateTextFieldType();
}
public function get maxChars():int{
return (textField.maxChars);
}
public function get length():int{
return (textField.length);
}
public function getLineMetrics(_arg1:int):TextLineMetrics{
return (textField.getLineMetrics(_arg1));
}
public function get imeMode():String{
return (_imeMode);
}
override protected function focusOutHandler(_arg1:FocusEvent):void{
super.focusOutHandler(_arg1);
if (editable){
setIMEMode(false);
};
}
public function set htmlText(_arg1:String):void{
if (_arg1 == ""){
text = "";
return;
};
_html = true;
_savedHTML = _arg1;
textField.htmlText = _arg1;
invalidate(InvalidationType.DATA);
invalidate(InvalidationType.STYLES);
}
public function get text():String{
return (textField.text);
}
override public function get enabled():Boolean{
return (super.enabled);
}
public function get condenseWhite():Boolean{
return (textField.condenseWhite);
}
public function get alwaysShowSelection():Boolean{
return (textField.alwaysShowSelection);
}
override protected function draw():void{
var _local1:Object;
if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){
drawTextFormat();
drawBackground();
_local1 = getStyleValue("embedFonts");
if (_local1 != null){
textField.embedFonts = _local1;
};
invalidate(InvalidationType.SIZE, false);
};
if (isInvalid(InvalidationType.SIZE)){
drawLayout();
};
super.draw();
}
protected function handleTextInput(_arg1:TextEvent):void{
_arg1.stopPropagation();
dispatchEvent(new TextEvent(TextEvent.TEXT_INPUT, true, false, _arg1.text));
}
override protected function configUI():void{
super.configUI();
tabChildren = true;
textField = new TextField();
addChild(textField);
updateTextFieldType();
textField.addEventListener(TextEvent.TEXT_INPUT, handleTextInput, false, 0, true);
textField.addEventListener(Event.CHANGE, handleChange, false, 0, true);
textField.addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown, false, 0, true);
}
public function setSelection(_arg1:int, _arg2:int):void{
textField.setSelection(_arg1, _arg2);
}
public function get displayAsPassword():Boolean{
return (textField.displayAsPassword);
}
public function appendText(_arg1:String):void{
textField.appendText(_arg1);
}
public function set restrict(_arg1:String):void{
if (((componentInspectorSetting) && ((_arg1 == "")))){
_arg1 = null;
};
textField.restrict = _arg1;
}
public function get htmlText():String{
return (textField.htmlText);
}
protected function drawBackground():void{
var _local1:DisplayObject;
var _local2:String;
_local1 = background;
_local2 = (enabled) ? "upSkin" : "disabledSkin";
background = getDisplayObjectInstance(getStyleValue(_local2));
if (background == null){
return;
};
addChildAt(background, 0);
if (((((!((_local1 == null))) && (!((_local1 == background))))) && (contains(_local1)))){
removeChild(_local1);
};
}
override public function setFocus():void{
stage.focus = textField;
}
protected function drawLayout():void{
var _local1:Number;
_local1 = Number(getStyleValue("textPadding"));
if (background != null){
background.width = width;
background.height = height;
};
textField.width = (width - (2 * _local1));
textField.height = (height - (2 * _local1));
textField.x = (textField.y = _local1);
}
public function set maxChars(_arg1:int):void{
textField.maxChars = _arg1;
}
public function get maxHorizontalScrollPosition():int{
return (textField.maxScrollH);
}
protected function drawTextFormat():void{
var _local1:Object;
var _local2:TextFormat;
var _local3:TextFormat;
_local1 = UIComponent.getStyleDefinition();
_local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat);
textField.setTextFormat(_local2);
_local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat);
if (_local3 != null){
textField.setTextFormat(_local3);
} else {
_local3 = _local2;
};
textField.defaultTextFormat = _local3;
setEmbedFont();
if (_html){
textField.htmlText = _savedHTML;
};
}
protected function handleChange(_arg1:Event):void{
_arg1.stopPropagation();
dispatchEvent(new Event(Event.CHANGE, true));
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
}
}//package fl.controls
Section 137
//ComponentShim (fl.core.ComponentShim)
package fl.core {
import flash.display.*;
public dynamic class ComponentShim extends MovieClip {
}
}//package fl.core
Section 138
//InvalidationType (fl.core.InvalidationType)
package fl.core {
public class InvalidationType {
public static const SIZE:String = "size";
public static const ALL:String = "all";
public static const DATA:String = "data";
public static const SCROLL:String = "scroll";
public static const STATE:String = "state";
public static const STYLES:String = "styles";
public static const SELECTED:String = "selected";
public static const RENDERER_STYLES:String = "rendererStyles";
}
}//package fl.core
Section 139
//UIComponent (fl.core.UIComponent)
package fl.core {
import flash.display.*;
import flash.events.*;
import fl.managers.*;
import fl.events.*;
import flash.text.*;
import flash.utils.*;
import flash.system.*;
public class UIComponent extends Sprite {
protected var _enabled:Boolean;// = true
private var _mouseFocusEnabled:Boolean;// = true
protected var startHeight:Number;
protected var _height:Number;
protected var _oldIMEMode:String;// = null
protected var startWidth:Number;
public var focusTarget:IFocusManagerComponent;
protected var errorCaught:Boolean;// = false
protected var uiFocusRect:DisplayObject;
protected var _width:Number;
public var version:String;// = "3.0.0.15"
protected var isFocused:Boolean;// = false
protected var callLaterMethods:Dictionary;
private var _focusEnabled:Boolean;// = true
private var tempText:TextField;
protected var invalidateFlag:Boolean;// = false
protected var _inspector:Boolean;// = false
protected var sharedStyles:Object;
protected var invalidHash:Object;
protected var isLivePreview:Boolean;// = false
protected var _imeMode:String;// = null
protected var instanceStyles:Object;
protected var _x:Number;
protected var _y:Number;
public static var inCallLaterPhase:Boolean = false;
private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)};
public static var createAccessibilityImplementation:Function;
private static var focusManagers:Dictionary = new Dictionary(false);
public function UIComponent(){
version = "3.0.0.15";
isLivePreview = false;
invalidateFlag = false;
_enabled = true;
isFocused = false;
_focusEnabled = true;
_mouseFocusEnabled = true;
_imeMode = null;
_oldIMEMode = null;
errorCaught = false;
_inspector = false;
super();
instanceStyles = {};
sharedStyles = {};
invalidHash = {};
callLaterMethods = new Dictionary();
StyleManager.registerInstance(this);
configUI();
invalidate(InvalidationType.ALL);
tabEnabled = (this is IFocusManagerComponent);
focusRect = false;
if (tabEnabled){
addEventListener(FocusEvent.FOCUS_IN, focusInHandler);
addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler);
addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler);
addEventListener(KeyboardEvent.KEY_UP, keyUpHandler);
};
initializeFocusManager();
addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true);
}
public function drawFocus(_arg1:Boolean):void{
var _local2:Number;
isFocused = _arg1;
if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){
removeChild(uiFocusRect);
uiFocusRect = null;
};
if (_arg1){
uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite);
if (uiFocusRect == null){
return;
};
_local2 = Number(getStyleValue("focusRectPadding"));
uiFocusRect.x = -(_local2);
uiFocusRect.y = -(_local2);
uiFocusRect.width = (width + (_local2 * 2));
uiFocusRect.height = (height + (_local2 * 2));
addChildAt(uiFocusRect, 0);
};
}
private function callLaterDispatcher(_arg1:Event):void{
var _local2:Dictionary;
var _local3:Object;
if (_arg1.type == Event.ADDED_TO_STAGE){
removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher);
stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true);
stage.invalidate();
return;
};
_arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher);
if (stage == null){
addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true);
return;
};
inCallLaterPhase = true;
_local2 = callLaterMethods;
for (_local3 in _local2) {
_local3();
delete _local2[_local3];
};
inCallLaterPhase = false;
}
private function addedHandler(_arg1:Event):void{
removeEventListener("addedToStage", addedHandler);
initializeFocusManager();
}
protected function getStyleValue(_arg1:String):Object{
return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]);
}
protected function isOurFocus(_arg1:DisplayObject):Boolean{
return ((_arg1 == this));
}
override public function get scaleX():Number{
return ((width / startWidth));
}
override public function get scaleY():Number{
return ((height / startHeight));
}
override public function set height(_arg1:Number):void{
if (_height == _arg1){
return;
};
setSize(width, _arg1);
}
protected function keyDownHandler(_arg1:KeyboardEvent):void{
}
protected function focusInHandler(_arg1:FocusEvent):void{
var _local2:IFocusManager;
if (isOurFocus((_arg1.target as DisplayObject))){
_local2 = focusManager;
if (((_local2) && (_local2.showFocusIndicator))){
drawFocus(true);
isFocused = true;
};
};
}
public function setStyle(_arg1:String, _arg2:Object):void{
if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
instanceStyles[_arg1] = _arg2;
invalidate(InvalidationType.STYLES);
}
override public function get visible():Boolean{
return (super.visible);
}
public function get componentInspectorSetting():Boolean{
return (_inspector);
}
override public function get x():Number{
return ((isNaN(_x)) ? super.x : _x);
}
override public function get y():Number{
return ((isNaN(_y)) ? super.y : _y);
}
protected function setIMEMode(_arg1:Boolean){
var enabled = _arg1;
if (_imeMode != null){
if (enabled){
IME.enabled = true;
_oldIMEMode = IME.conversionMode;
try {
if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){
IME.conversionMode = _imeMode;
};
errorCaught = false;
} catch(e:Error) {
errorCaught = true;
throw (new Error(("IME mode not supported: " + _imeMode)));
};
} else {
if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){
IME.conversionMode = _oldIMEMode;
};
IME.enabled = false;
};
};
}
public function set enabled(_arg1:Boolean):void{
if (_arg1 == _enabled){
return;
};
_enabled = _arg1;
invalidate(InvalidationType.STATE);
}
public function setSharedStyle(_arg1:String, _arg2:Object):void{
if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
sharedStyles[_arg1] = _arg2;
if (instanceStyles[_arg1] == null){
invalidate(InvalidationType.STYLES);
};
}
protected function keyUpHandler(_arg1:KeyboardEvent):void{
}
public function set focusEnabled(_arg1:Boolean):void{
_focusEnabled = _arg1;
}
override public function set scaleX(_arg1:Number):void{
setSize((startWidth * _arg1), height);
}
public function get mouseFocusEnabled():Boolean{
return (_mouseFocusEnabled);
}
override public function set scaleY(_arg1:Number):void{
setSize(width, (startHeight * _arg1));
}
protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{
var classDef:Object;
var skin = _arg1;
classDef = null;
if ((skin is Class)){
return ((new (skin) as DisplayObject));
};
if ((skin is DisplayObject)){
(skin as DisplayObject).x = 0;
(skin as DisplayObject).y = 0;
return ((skin as DisplayObject));
};
try {
classDef = getDefinitionByName(skin.toString());
} catch(e:Error) {
try {
classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object);
} catch(e:Error) {
};
};
if (classDef == null){
return (null);
};
return ((new (classDef) as DisplayObject));
}
protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{
var _local3:String;
for (_local3 in _arg2) {
_arg1.setStyle(_local3, getStyleValue(_arg2[_local3]));
};
}
protected function beforeComponentParameters():void{
}
protected function callLater(_arg1:Function):void{
if (inCallLaterPhase){
return;
};
callLaterMethods[_arg1] = true;
if (stage != null){
stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true);
stage.invalidate();
} else {
addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true);
};
}
protected function createFocusManager():void{
if (focusManagers[stage] == null){
focusManagers[stage] = new FocusManager(stage);
};
}
override public function set visible(_arg1:Boolean):void{
var _local2:String;
if (super.visible == _arg1){
return;
};
super.visible = _arg1;
_local2 = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE;
dispatchEvent(new ComponentEvent(_local2, true));
}
protected function hookAccessibility(_arg1:Event):void{
removeEventListener(Event.ENTER_FRAME, hookAccessibility);
initializeAccessibility();
}
public function set componentInspectorSetting(_arg1:Boolean):void{
_inspector = _arg1;
if (_inspector){
beforeComponentParameters();
} else {
afterComponentParameters();
};
}
override public function set x(_arg1:Number):void{
move(_arg1, _y);
}
public function drawNow():void{
draw();
}
override public function set y(_arg1:Number):void{
move(_x, _arg1);
}
protected function checkLivePreview():Boolean{
var className:String;
if (parent == null){
return (false);
};
try {
className = getQualifiedClassName(parent);
} catch(e:Error) {
};
return ((className == "fl.livepreview::LivePreviewParent"));
}
protected function focusOutHandler(_arg1:FocusEvent):void{
if (isOurFocus((_arg1.target as DisplayObject))){
drawFocus(false);
isFocused = false;
};
}
public function set mouseFocusEnabled(_arg1:Boolean):void{
_mouseFocusEnabled = _arg1;
}
public function getFocus():InteractiveObject{
if (stage){
return (stage.focus);
};
return (null);
}
protected function validate():void{
invalidHash = {};
}
override public function get height():Number{
return (_height);
}
public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{
invalidHash[_arg1] = true;
if (_arg2){
this.callLater(draw);
};
}
public function get enabled():Boolean{
return (_enabled);
}
protected function getScaleX():Number{
return (super.scaleX);
}
protected function getScaleY():Number{
return (super.scaleY);
}
public function get focusEnabled():Boolean{
return (_focusEnabled);
}
protected function afterComponentParameters():void{
}
protected function draw():void{
if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){
if (((isFocused) && (focusManager.showFocusIndicator))){
drawFocus(true);
};
};
validate();
}
protected function configUI():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
isLivePreview = checkLivePreview();
_local1 = rotation;
rotation = 0;
_local2 = super.width;
_local3 = super.height;
var _local4 = 1;
super.scaleY = _local4;
super.scaleX = _local4;
setSize(_local2, _local3);
move(super.x, super.y);
rotation = _local1;
startWidth = _local2;
startHeight = _local3;
if (numChildren > 0){
removeChildAt(0);
};
}
protected function setScaleX(_arg1:Number):void{
super.scaleX = _arg1;
}
protected function setScaleY(_arg1:Number):void{
super.scaleY = _arg1;
}
private function initializeFocusManager():void{
if (stage == null){
addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true);
} else {
createFocusManager();
};
}
public function set focusManager(_arg1:IFocusManager):void{
UIComponent.focusManagers[this] = _arg1;
}
public function clearStyle(_arg1:String):void{
setStyle(_arg1, null);
}
protected function isInvalid(_arg1:String, ... _args):Boolean{
if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){
return (true);
};
while (_args.length > 0) {
if (invalidHash[_args.pop()]){
return (true);
};
};
return (false);
}
public function setSize(_arg1:Number, _arg2:Number):void{
_width = _arg1;
_height = _arg2;
invalidate(InvalidationType.SIZE);
dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false));
}
override public function set width(_arg1:Number):void{
if (_width == _arg1){
return;
};
setSize(_arg1, height);
}
public function setFocus():void{
if (stage){
stage.focus = this;
};
}
protected function initializeAccessibility():void{
if (UIComponent.createAccessibilityImplementation != null){
UIComponent.createAccessibilityImplementation(this);
};
}
public function get focusManager():IFocusManager{
var _local1:DisplayObject;
_local1 = this;
while (_local1) {
if (UIComponent.focusManagers[_local1] != null){
return (IFocusManager(UIComponent.focusManagers[_local1]));
};
_local1 = _local1.parent;
};
return (null);
}
override public function get width():Number{
return (_width);
}
public function move(_arg1:Number, _arg2:Number):void{
_x = _arg1;
_y = _arg2;
super.x = Math.round(_arg1);
super.y = Math.round(_arg2);
dispatchEvent(new ComponentEvent(ComponentEvent.MOVE));
}
public function validateNow():void{
invalidate(InvalidationType.ALL, false);
draw();
}
public function getStyle(_arg1:String):Object{
return (instanceStyles[_arg1]);
}
public static function getStyleDefinition():Object{
return (defaultStyles);
}
public static function mergeStyles(... _args):Object{
var _local2:Object;
var _local3:uint;
var _local4:uint;
var _local5:Object;
var _local6:String;
_local2 = {};
_local3 = _args.length;
_local4 = 0;
while (_local4 < _local3) {
_local5 = _args[_local4];
for (_local6 in _local5) {
if (_local2[_local6] != null){
} else {
_local2[_local6] = _args[_local4][_local6];
};
};
_local4++;
};
return (_local2);
}
}
}//package fl.core
Section 140
//DataProvider (fl.data.DataProvider)
package fl.data {
import flash.events.*;
import fl.events.*;
public class DataProvider extends EventDispatcher {
protected var data:Array;
public function DataProvider(_arg1:Object=null){
if (_arg1 == null){
data = [];
} else {
data = getDataFromObject(_arg1);
};
}
protected function dispatchPreChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{
dispatchEvent(new DataChangeEvent(DataChangeEvent.PRE_DATA_CHANGE, _arg1, _arg2, _arg3, _arg4));
}
public function invalidateItemAt(_arg1:int):void{
checkIndex(_arg1, (data.length - 1));
dispatchChangeEvent(DataChangeType.INVALIDATE, [data[_arg1]], _arg1, _arg1);
}
public function getItemIndex(_arg1:Object):int{
return (data.indexOf(_arg1));
}
protected function getDataFromObject(_arg1:Object):Array{
var _local2:Array;
var _local3:Array;
var _local4:uint;
var _local5:Object;
var _local6:XML;
var _local7:XMLList;
var _local8:XML;
var _local9:XMLList;
var _local10:XML;
var _local11:XMLList;
var _local12:XML;
if ((_arg1 is Array)){
_local3 = (_arg1 as Array);
if (_local3.length > 0){
if ((((_local3[0] is String)) || ((_local3[0] is Number)))){
_local2 = [];
_local4 = 0;
while (_local4 < _local3.length) {
_local5 = {label:String(_local3[_local4]), data:_local3[_local4]};
_local2.push(_local5);
_local4++;
};
return (_local2);
};
};
return (_arg1.concat());
//unresolved jump
};
if ((_arg1 is DataProvider)){
return (_arg1.toArray());
};
if ((_arg1 is XML)){
_local6 = (_arg1 as XML);
_local2 = [];
_local7 = _local6.*;
for each (_local8 in _local7) {
_arg1 = {};
_local9 = _local8.attributes();
for each (_local10 in _local9) {
_arg1[_local10.localName()] = _local10.toString();
};
_local11 = _local8.*;
for each (_local12 in _local11) {
if (_local12.hasSimpleContent()){
_arg1[_local12.localName()] = _local12.toString();
};
};
_local2.push(_arg1);
};
return (_local2);
//unresolved jump
};
throw (new TypeError((("Error: Type Coercion failed: cannot convert " + _arg1) + " to Array or DataProvider.")));
}
public function removeItemAt(_arg1:uint):Object{
var _local2:Array;
checkIndex(_arg1, (data.length - 1));
dispatchPreChangeEvent(DataChangeType.REMOVE, data.slice(_arg1, (_arg1 + 1)), _arg1, _arg1);
_local2 = data.splice(_arg1, 1);
dispatchChangeEvent(DataChangeType.REMOVE, _local2, _arg1, _arg1);
return (_local2[0]);
}
public function addItem(_arg1:Object):void{
dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1));
data.push(_arg1);
dispatchChangeEvent(DataChangeType.ADD, [_arg1], (data.length - 1), (data.length - 1));
}
public function sortOn(_arg1:Object, _arg2:Object=null){
var _local3:Array;
dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1));
_local3 = data.sortOn(_arg1, _arg2);
dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1));
return (_local3);
}
public function sort(... _args){
var _local2:Array;
dispatchPreChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1));
_local2 = data.sort.apply(data, _args);
dispatchChangeEvent(DataChangeType.SORT, data.concat(), 0, (data.length - 1));
return (_local2);
}
public function addItems(_arg1:Object):void{
addItemsAt(_arg1, data.length);
}
public function concat(_arg1:Object):void{
addItems(_arg1);
}
public function clone():DataProvider{
return (new DataProvider(data));
}
public function toArray():Array{
return (data.concat());
}
public function get length():uint{
return (data.length);
}
public function addItemAt(_arg1:Object, _arg2:uint):void{
checkIndex(_arg2, data.length);
dispatchPreChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2);
data.splice(_arg2, 0, _arg1);
dispatchChangeEvent(DataChangeType.ADD, [_arg1], _arg2, _arg2);
}
public function getItemAt(_arg1:uint):Object{
checkIndex(_arg1, (data.length - 1));
return (data[_arg1]);
}
override public function toString():String{
return ((("DataProvider [" + data.join(" , ")) + "]"));
}
public function invalidateItem(_arg1:Object):void{
var _local2:uint;
_local2 = getItemIndex(_arg1);
if (_local2 == -1){
return;
};
invalidateItemAt(_local2);
}
protected function dispatchChangeEvent(_arg1:String, _arg2:Array, _arg3:int, _arg4:int):void{
dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, _arg1, _arg2, _arg3, _arg4));
}
protected function checkIndex(_arg1:int, _arg2:int):void{
if ((((_arg1 > _arg2)) || ((_arg1 < 0)))){
throw (new RangeError((((("DataProvider index (" + _arg1) + ") is not in acceptable range (0 - ") + _arg2) + ")")));
};
}
public function addItemsAt(_arg1:Object, _arg2:uint):void{
var _local3:Array;
checkIndex(_arg2, data.length);
_local3 = getDataFromObject(_arg1);
dispatchPreChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1));
data.splice.apply(data, [_arg2, 0].concat(_local3));
dispatchChangeEvent(DataChangeType.ADD, _local3, _arg2, ((_arg2 + _local3.length) - 1));
}
public function replaceItem(_arg1:Object, _arg2:Object):Object{
var _local3:int;
_local3 = getItemIndex(_arg2);
if (_local3 != -1){
return (replaceItemAt(_arg1, _local3));
};
return (null);
}
public function removeItem(_arg1:Object):Object{
var _local2:int;
_local2 = getItemIndex(_arg1);
if (_local2 != -1){
return (removeItemAt(_local2));
};
return (null);
}
public function merge(_arg1:Object):void{
var _local2:Array;
var _local3:uint;
var _local4:uint;
var _local5:uint;
var _local6:Object;
_local2 = getDataFromObject(_arg1);
_local3 = _local2.length;
_local4 = data.length;
dispatchPreChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1));
_local5 = 0;
while (_local5 < _local3) {
_local6 = _local2[_local5];
if (getItemIndex(_local6) == -1){
data.push(_local6);
};
_local5++;
};
if (data.length > _local4){
dispatchChangeEvent(DataChangeType.ADD, data.slice(_local4, data.length), _local4, (this.data.length - 1));
} else {
dispatchChangeEvent(DataChangeType.ADD, [], -1, -1);
};
}
public function replaceItemAt(_arg1:Object, _arg2:uint):Object{
var _local3:Array;
checkIndex(_arg2, (data.length - 1));
_local3 = [data[_arg2]];
dispatchPreChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2);
data[_arg2] = _arg1;
dispatchChangeEvent(DataChangeType.REPLACE, _local3, _arg2, _arg2);
return (_local3[0]);
}
public function invalidate():void{
dispatchEvent(new DataChangeEvent(DataChangeEvent.DATA_CHANGE, DataChangeType.INVALIDATE_ALL, data.concat(), 0, data.length));
}
public function removeAll():void{
var _local1:Array;
_local1 = data.concat();
dispatchPreChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length);
data = [];
dispatchChangeEvent(DataChangeType.REMOVE_ALL, _local1, 0, _local1.length);
}
}
}//package fl.data
Section 141
//SimpleCollectionItem (fl.data.SimpleCollectionItem)
package fl.data {
public dynamic class SimpleCollectionItem {
public var label:String;
public var data:String;
public function toString():String{
return ((((("[SimpleCollectionItem: " + label) + ",") + data) + "]"));
}
}
}//package fl.data
Section 142
//ComponentEvent (fl.events.ComponentEvent)
package fl.events {
import flash.events.*;
public class ComponentEvent extends Event {
public static const HIDE:String = "hide";
public static const BUTTON_DOWN:String = "buttonDown";
public static const MOVE:String = "move";
public static const RESIZE:String = "resize";
public static const ENTER:String = "enter";
public static const LABEL_CHANGE:String = "labelChange";
public static const SHOW:String = "show";
public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("ComponentEvent", "type", "bubbles", "cancelable"));
}
override public function clone():Event{
return (new ComponentEvent(type, bubbles, cancelable));
}
}
}//package fl.events
Section 143
//DataChangeEvent (fl.events.DataChangeEvent)
package fl.events {
import flash.events.*;
public class DataChangeEvent extends Event {
protected var _items:Array;
protected var _endIndex:uint;
protected var _changeType:String;
protected var _startIndex:uint;
public static const PRE_DATA_CHANGE:String = "preDataChange";
public static const DATA_CHANGE:String = "dataChange";
public function DataChangeEvent(_arg1:String, _arg2:String, _arg3:Array, _arg4:int=-1, _arg5:int=-1):void{
super(_arg1);
_changeType = _arg2;
_startIndex = _arg4;
_items = _arg3;
_endIndex = ((_arg5)==-1) ? _startIndex : _arg5;
}
public function get changeType():String{
return (_changeType);
}
public function get startIndex():uint{
return (_startIndex);
}
public function get items():Array{
return (_items);
}
override public function clone():Event{
return (new DataChangeEvent(type, _changeType, _items, _startIndex, _endIndex));
}
override public function toString():String{
return (formatToString("DataChangeEvent", "type", "changeType", "startIndex", "endIndex", "bubbles", "cancelable"));
}
public function get endIndex():uint{
return (_endIndex);
}
}
}//package fl.events
Section 144
//DataChangeType (fl.events.DataChangeType)
package fl.events {
public class DataChangeType {
public static const ADD:String = "add";
public static const REMOVE:String = "remove";
public static const REMOVE_ALL:String = "removeAll";
public static const CHANGE:String = "change";
public static const REPLACE:String = "replace";
public static const INVALIDATE:String = "invalidate";
public static const INVALIDATE_ALL:String = "invalidateAll";
public static const SORT:String = "sort";
}
}//package fl.events
Section 145
//ListEvent (fl.events.ListEvent)
package fl.events {
import flash.events.*;
public class ListEvent extends Event {
protected var _index:int;
protected var _item:Object;
protected var _columnIndex:int;
protected var _rowIndex:int;
public static const ITEM_DOUBLE_CLICK:String = "itemDoubleClick";
public static const ITEM_ROLL_OUT:String = "itemRollOut";
public static const ITEM_ROLL_OVER:String = "itemRollOver";
public static const ITEM_CLICK:String = "itemClick";
public function ListEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:int=-1, _arg5:int=-1, _arg6:int=-1, _arg7:Object=null){
super(_arg1, _arg2, _arg3);
_rowIndex = _arg5;
_columnIndex = _arg4;
_index = _arg6;
_item = _arg7;
}
public function get rowIndex():Object{
return (_rowIndex);
}
public function get index():int{
return (_index);
}
public function get item():Object{
return (_item);
}
public function get columnIndex():int{
return (_columnIndex);
}
override public function clone():Event{
return (new ListEvent(type, bubbles, cancelable, _columnIndex, _rowIndex));
}
override public function toString():String{
return (formatToString("ListEvent", "type", "bubbles", "cancelable", "columnIndex", "rowIndex", "index", "item"));
}
}
}//package fl.events
Section 146
//ScrollEvent (fl.events.ScrollEvent)
package fl.events {
import flash.events.*;
public class ScrollEvent extends Event {
private var _position:Number;
private var _direction:String;
private var _delta:Number;
public static const SCROLL:String = "scroll";
public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){
super(ScrollEvent.SCROLL, false, false);
_direction = _arg1;
_delta = _arg2;
_position = _arg3;
}
override public function clone():Event{
return (new ScrollEvent(_direction, _delta, _position));
}
public function get position():Number{
return (_position);
}
override public function toString():String{
return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position"));
}
public function get delta():Number{
return (_delta);
}
public function get direction():String{
return (_direction);
}
}
}//package fl.events
Section 147
//FocusManager (fl.managers.FocusManager)
package fl.managers {
import fl.core.*;
import fl.controls.*;
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.ui.*;
public class FocusManager implements IFocusManager {
private var focusableObjects:Dictionary;
private var _showFocusIndicator:Boolean;// = true
private var defButton:Button;
private var focusableCandidates:Array;
private var _form:DisplayObjectContainer;
private var _defaultButtonEnabled:Boolean;// = true
private var activated:Boolean;// = false
private var _defaultButton:Button;
private var calculateCandidates:Boolean;// = true
private var lastFocus:InteractiveObject;
private var lastAction:String;
public function FocusManager(_arg1:DisplayObjectContainer){
activated = false;
calculateCandidates = true;
_showFocusIndicator = true;
_defaultButtonEnabled = true;
super();
focusableObjects = new Dictionary(true);
if (_arg1 != null){
_form = _arg1;
addFocusables(DisplayObject(_arg1));
_arg1.addEventListener(Event.ADDED, addedHandler);
_arg1.addEventListener(Event.REMOVED, removedHandler);
activate();
};
}
public function get showFocusIndicator():Boolean{
return (_showFocusIndicator);
}
private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{
var _local5:int;
var _local6:int;
var _local7:DisplayObject;
var _local8:IFocusManagerGroup;
var _local9:int;
var _local10:DisplayObject;
var _local11:IFocusManagerGroup;
_local5 = focusableCandidates.length;
_local6 = _arg1;
while (true) {
if (_arg2){
_arg1--;
} else {
_arg1++;
};
if (_arg3){
if (((_arg2) && ((_arg1 < 0)))){
break;
};
if (((!(_arg2)) && ((_arg1 == _local5)))){
break;
};
} else {
_arg1 = ((_arg1 + _local5) % _local5);
if (_local6 == _arg1){
break;
};
};
if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){
_local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1]));
if ((_local7 is IFocusManagerGroup)){
_local8 = IFocusManagerGroup(_local7);
_local9 = 0;
while (_local9 < focusableCandidates.length) {
_local10 = focusableCandidates[_local9];
if ((_local10 is IFocusManagerGroup)){
_local11 = IFocusManagerGroup(_local10);
if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){
_arg1 = _local9;
break;
};
};
_local9++;
};
};
return (_arg1);
};
};
return (_arg1);
}
public function set form(_arg1:DisplayObjectContainer):void{
_form = _arg1;
}
private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{
var focusable:IFocusManagerComponent;
var io:InteractiveObject;
var doc:DisplayObjectContainer;
var i:int;
var child:DisplayObject;
var o = _arg1;
var skipTopLevel = _arg2;
if (!skipTopLevel){
if ((o is IFocusManagerComponent)){
focusable = IFocusManagerComponent(o);
if (focusable.focusEnabled){
if (((focusable.tabEnabled) && (isTabVisible(o)))){
focusableObjects[o] = true;
calculateCandidates = true;
};
o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
};
} else {
if ((o is InteractiveObject)){
io = (o as InteractiveObject);
if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){
focusableObjects[io] = true;
calculateCandidates = true;
};
io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
};
};
};
if ((o is DisplayObjectContainer)){
doc = DisplayObjectContainer(o);
o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler);
if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){
i = 0;
while (i < doc.numChildren) {
try {
child = doc.getChildAt(i);
if (child != null){
addFocusables(doc.getChildAt(i));
};
} catch(error:SecurityError) {
};
i = (i + 1);
};
};
};
}
private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{
return (_arg1.getChildIndex(_arg2));
}
private function mouseFocusChangeHandler(_arg1:FocusEvent):void{
if ((_arg1.relatedObject is TextField)){
return;
};
_arg1.preventDefault();
}
private function focusOutHandler(_arg1:FocusEvent):void{
var _local2:InteractiveObject;
_local2 = (_arg1.target as InteractiveObject);
}
private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{
var _local3:IFocusManagerGroup;
if (!isEnabledAndVisible(_arg1)){
return (false);
};
if ((_arg1 is IFocusManagerGroup)){
_local3 = IFocusManagerGroup(_arg1);
if (_arg2 == _local3.groupName){
return (false);
};
};
return (true);
}
public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{
var _local2:InteractiveObject;
_local2 = _arg1;
while (_arg1) {
if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){
return (_arg1);
};
_arg1 = _arg1.parent;
};
return (_local2);
}
private function sortFocusableObjectsTabIndex():void{
var _local1:Object;
var _local2:InteractiveObject;
focusableCandidates = [];
for (_local1 in focusableObjects) {
_local2 = InteractiveObject(_local1);
if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){
focusableCandidates.push(_local2);
};
};
focusableCandidates.sort(sortByTabIndex);
}
private function removeFocusables(_arg1:DisplayObject):void{
var _local2:Object;
var _local3:DisplayObject;
if ((_arg1 is DisplayObjectContainer)){
_arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler);
_arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler);
for (_local2 in focusableObjects) {
_local3 = DisplayObject(_local2);
if (DisplayObjectContainer(_arg1).contains(_local3)){
if (_local3 == lastFocus){
lastFocus = null;
};
_local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
delete focusableObjects[_local2];
calculateCandidates = true;
};
};
};
}
private function addedHandler(_arg1:Event):void{
var _local2:DisplayObject;
_local2 = DisplayObject(_arg1.target);
if (_local2.stage){
addFocusables(DisplayObject(_arg1.target));
};
}
private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{
while (_arg1 != InteractiveObject(form)) {
if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){
return (_arg1);
};
_arg1 = _arg1.parent;
if (_arg1 == null){
break;
};
};
return (null);
}
private function tabChildrenChangeHandler(_arg1:Event):void{
var _local2:DisplayObjectContainer;
if (_arg1.target != _arg1.currentTarget){
return;
};
calculateCandidates = true;
_local2 = DisplayObjectContainer(_arg1.target);
if (_local2.tabChildren){
addFocusables(_local2, true);
} else {
removeFocusables(_local2);
};
}
public function sendDefaultButtonEvent():void{
defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
}
public function getFocus():InteractiveObject{
var _local1:InteractiveObject;
_local1 = form.stage.focus;
return (findFocusManagerComponent(_local1));
}
private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{
var _local2:DisplayObjectContainer;
var _local3:TextField;
var _local4:SimpleButton;
_local2 = DisplayObject(form).parent;
while (_arg1 != _local2) {
if ((_arg1 is UIComponent)){
if (!UIComponent(_arg1).enabled){
return (false);
};
} else {
if ((_arg1 is TextField)){
_local3 = TextField(_arg1);
if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){
return (false);
};
} else {
if ((_arg1 is SimpleButton)){
_local4 = SimpleButton(_arg1);
if (!_local4.enabled){
return (false);
};
};
};
};
if (!_arg1.visible){
return (false);
};
_arg1 = _arg1.parent;
};
return (true);
}
public function set defaultButton(_arg1:Button):void{
var _local2:Button;
_local2 = (_arg1) ? Button(_arg1) : null;
if (_local2 != _defaultButton){
if (_defaultButton){
_defaultButton.emphasized = false;
};
if (defButton){
defButton.emphasized = false;
};
_defaultButton = _local2;
defButton = _local2;
if (_local2){
_local2.emphasized = true;
};
};
}
private function deactivateHandler(_arg1:Event):void{
var _local2:InteractiveObject;
_local2 = InteractiveObject(_arg1.target);
}
public function setFocus(_arg1:InteractiveObject):void{
if ((_arg1 is IFocusManagerComponent)){
IFocusManagerComponent(_arg1).setFocus();
} else {
form.stage.focus = _arg1;
};
}
private function setFocusToNextObject(_arg1:FocusEvent):void{
var _local2:InteractiveObject;
if (!hasFocusableObjects()){
return;
};
_local2 = getNextFocusManagerComponent(_arg1.shiftKey);
if (_local2){
setFocus(_local2);
};
}
private function hasFocusableObjects():Boolean{
var _local1:Object;
for (_local1 in focusableObjects) {
return (true);
};
return (false);
}
private function tabIndexChangeHandler(_arg1:Event):void{
calculateCandidates = true;
}
private function sortFocusableObjects():void{
var _local1:Object;
var _local2:InteractiveObject;
focusableCandidates = [];
for (_local1 in focusableObjects) {
_local2 = InteractiveObject(_local1);
if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){
sortFocusableObjectsTabIndex();
return;
};
focusableCandidates.push(_local2);
};
focusableCandidates.sort(sortByDepth);
}
private function keyFocusChangeHandler(_arg1:FocusEvent):void{
showFocusIndicator = true;
if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){
setFocusToNextObject(_arg1);
_arg1.preventDefault();
};
}
private function getIndexOfFocusedObject(_arg1:DisplayObject):int{
var _local2:int;
var _local3:int;
_local2 = focusableCandidates.length;
_local3 = 0;
_local3 = 0;
while (_local3 < _local2) {
if (focusableCandidates[_local3] == _arg1){
return (_local3);
};
_local3++;
};
return (-1);
}
public function hideFocus():void{
}
private function removedHandler(_arg1:Event):void{
var _local2:int;
var _local3:DisplayObject;
var _local4:InteractiveObject;
_local3 = DisplayObject(_arg1.target);
if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){
if (_local3 == lastFocus){
IFocusManagerComponent(lastFocus).drawFocus(false);
lastFocus = null;
};
_local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
delete focusableObjects[_local3];
calculateCandidates = true;
} else {
if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){
_local4 = (_local3 as InteractiveObject);
if (_local4){
if (_local4 == lastFocus){
lastFocus = null;
};
delete focusableObjects[_local4];
calculateCandidates = true;
};
_local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler);
};
};
removeFocusables(_local3);
}
private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{
var _local3:String;
var _local4:String;
var _local5:int;
var _local6:String;
var _local7:String;
var _local8:String;
var _local9:DisplayObject;
var _local10:DisplayObject;
_local3 = "";
_local4 = "";
_local8 = "0000";
_local9 = DisplayObject(_arg1);
_local10 = DisplayObject(_arg2);
while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) {
_local5 = getChildIndex(_local9.parent, _local9);
_local6 = _local5.toString(16);
if (_local6.length < 4){
_local7 = (_local8.substring(0, (4 - _local6.length)) + _local6);
};
_local3 = (_local7 + _local3);
_local9 = _local9.parent;
};
while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) {
_local5 = getChildIndex(_local10.parent, _local10);
_local6 = _local5.toString(16);
if (_local6.length < 4){
_local7 = (_local8.substring(0, (4 - _local6.length)) + _local6);
};
_local4 = (_local7 + _local4);
_local10 = _local10.parent;
};
return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0);
}
public function get defaultButton():Button{
return (_defaultButton);
}
private function activateHandler(_arg1:Event):void{
var _local2:InteractiveObject;
_local2 = InteractiveObject(_arg1.target);
if (lastFocus){
if ((lastFocus is IFocusManagerComponent)){
IFocusManagerComponent(lastFocus).setFocus();
} else {
form.stage.focus = lastFocus;
};
};
lastAction = "ACTIVATE";
}
public function showFocus():void{
}
public function set defaultButtonEnabled(_arg1:Boolean):void{
_defaultButtonEnabled = _arg1;
}
public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{
var _local2:DisplayObject;
var _local3:String;
var _local4:int;
var _local5:Boolean;
var _local6:int;
var _local7:int;
var _local8:IFocusManagerGroup;
if (!hasFocusableObjects()){
return (null);
};
if (calculateCandidates){
sortFocusableObjects();
calculateCandidates = false;
};
_local2 = form.stage.focus;
_local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2)));
_local3 = "";
if ((_local2 is IFocusManagerGroup)){
_local8 = IFocusManagerGroup(_local2);
_local3 = _local8.groupName;
};
_local4 = getIndexOfFocusedObject(_local2);
_local5 = false;
_local6 = _local4;
if (_local4 == -1){
if (_arg1){
_local4 = focusableCandidates.length;
};
_local5 = true;
};
_local7 = getIndexOfNextObject(_local4, _arg1, _local5, _local3);
return (findFocusManagerComponent(focusableCandidates[_local7]));
}
private function mouseDownHandler(_arg1:MouseEvent):void{
var _local2:InteractiveObject;
if (_arg1.isDefaultPrevented()){
return;
};
_local2 = getTopLevelFocusTarget(InteractiveObject(_arg1.target));
if (!_local2){
return;
};
showFocusIndicator = false;
if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){
setFocus(_local2);
};
lastAction = "MOUSEDOWN";
}
private function isTabVisible(_arg1:DisplayObject):Boolean{
var _local2:DisplayObjectContainer;
_local2 = _arg1.parent;
while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) {
if (!_local2.tabChildren){
return (false);
};
_local2 = _local2.parent;
};
return (true);
}
public function get nextTabIndex():int{
return (0);
}
private function keyDownHandler(_arg1:KeyboardEvent):void{
if (_arg1.keyCode == Keyboard.TAB){
lastAction = "KEY";
if (calculateCandidates){
sortFocusableObjects();
calculateCandidates = false;
};
};
if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){
sendDefaultButtonEvent();
};
}
private function focusInHandler(_arg1:FocusEvent):void{
var _local2:InteractiveObject;
var _local3:Button;
_local2 = InteractiveObject(_arg1.target);
if (form.contains(_local2)){
lastFocus = findFocusManagerComponent(InteractiveObject(_local2));
if ((lastFocus is Button)){
_local3 = Button(lastFocus);
if (defButton){
defButton.emphasized = false;
defButton = _local3;
_local3.emphasized = true;
};
} else {
if (((defButton) && (!((defButton == _defaultButton))))){
defButton.emphasized = false;
defButton = _defaultButton;
_defaultButton.emphasized = true;
};
};
};
}
private function tabEnabledChangeHandler(_arg1:Event):void{
var _local2:InteractiveObject;
var _local3:Boolean;
calculateCandidates = true;
_local2 = InteractiveObject(_arg1.target);
_local3 = (focusableObjects[_local2] == true);
if (_local2.tabEnabled){
if (((!(_local3)) && (isTabVisible(_local2)))){
if (!(_local2 is IFocusManagerComponent)){
_local2.focusRect = false;
};
focusableObjects[_local2] = true;
};
} else {
if (_local3){
delete focusableObjects[_local2];
};
};
}
public function set showFocusIndicator(_arg1:Boolean):void{
_showFocusIndicator = _arg1;
}
public function get form():DisplayObjectContainer{
return (_form);
}
private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{
return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2));
}
public function activate():void{
if (activated){
return;
};
form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true);
form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true);
form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true);
form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true);
form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true);
form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true);
form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true);
activated = true;
if (lastFocus){
setFocus(lastFocus);
};
}
public function deactivate():void{
form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler);
form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler);
form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true);
form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true);
form.stage.removeEventListener(Event.ACTIVATE, activateHandler);
form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler);
form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true);
activated = false;
}
public function get defaultButtonEnabled():Boolean{
return (_defaultButtonEnabled);
}
}
}//package fl.managers
Section 148
//IFocusManager (fl.managers.IFocusManager)
package fl.managers {
import fl.controls.*;
import flash.display.*;
public interface IFocusManager {
function getFocus():InteractiveObject;
function deactivate():void;
function set defaultButton(_arg1:Button):void;
function set showFocusIndicator(_arg1:Boolean):void;
function get defaultButtonEnabled():Boolean;
function get nextTabIndex():int;
function get defaultButton():Button;
function get showFocusIndicator():Boolean;
function setFocus(_arg1:InteractiveObject):void;
function activate():void;
function showFocus():void;
function set defaultButtonEnabled(_arg1:Boolean):void;
function hideFocus():void;
function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject;
function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject;
}
}//package fl.managers
Section 149
//IFocusManagerComponent (fl.managers.IFocusManagerComponent)
package fl.managers {
public interface IFocusManagerComponent {
function set focusEnabled(_arg1:Boolean):void;
function drawFocus(_arg1:Boolean):void;
function setFocus():void;
function get focusEnabled():Boolean;
function get tabEnabled():Boolean;
function get tabIndex():int;
function get mouseFocusEnabled():Boolean;
}
}//package fl.managers
Section 150
//IFocusManagerGroup (fl.managers.IFocusManagerGroup)
package fl.managers {
public interface IFocusManagerGroup {
function set groupName(_arg1:String):void;
function set selected(_arg1:Boolean):void;
function get groupName():String;
function get selected():Boolean;
}
}//package fl.managers
Section 151
//StyleManager (fl.managers.StyleManager)
package fl.managers {
import fl.core.*;
import flash.text.*;
import flash.utils.*;
public class StyleManager {
private var globalStyles:Object;
private var classToDefaultStylesDict:Dictionary;
private var styleToClassesHash:Object;
private var classToStylesDict:Dictionary;
private var classToInstancesDict:Dictionary;
private static var _instance:StyleManager;
public function StyleManager(){
styleToClassesHash = {};
classToInstancesDict = new Dictionary(true);
classToStylesDict = new Dictionary(true);
classToDefaultStylesDict = new Dictionary(true);
globalStyles = UIComponent.getStyleDefinition();
}
public static function clearComponentStyle(_arg1:Object, _arg2:String):void{
var _local3:Class;
var _local4:Object;
_local3 = getClassDef(_arg1);
_local4 = getInstance().classToStylesDict[_local3];
if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){
delete _local4[_arg2];
invalidateComponentStyle(_local3, _arg2);
};
}
private static function getClassDef(_arg1:Object):Class{
var component = _arg1;
if ((component is Class)){
return ((component as Class));
};
try {
return ((getDefinitionByName(getQualifiedClassName(component)) as Class));
} catch(e:Error) {
if ((component is UIComponent)){
try {
return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class));
} catch(e:Error) {
};
};
};
return (null);
}
public static function clearStyle(_arg1:String):void{
setStyle(_arg1, null);
}
public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Class;
var _local5:Object;
_local4 = getClassDef(_arg1);
_local5 = getInstance().classToStylesDict[_local4];
if (_local5 == null){
_local5 = (getInstance().classToStylesDict[_local4] = {});
};
if (_local5 == _arg3){
return;
};
_local5[_arg2] = _arg3;
invalidateComponentStyle(_local4, _arg2);
}
private static function setSharedStyles(_arg1:UIComponent):void{
var _local2:StyleManager;
var _local3:Class;
var _local4:Object;
var _local5:String;
_local2 = getInstance();
_local3 = getClassDef(_arg1);
_local4 = _local2.classToDefaultStylesDict[_local3];
for (_local5 in _local4) {
_arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5));
};
}
public static function getComponentStyle(_arg1:Object, _arg2:String):Object{
var _local3:Class;
var _local4:Object;
_local3 = getClassDef(_arg1);
_local4 = getInstance().classToStylesDict[_local3];
return (((_local4)==null) ? null : _local4[_arg2]);
}
private static function getInstance(){
if (_instance == null){
_instance = new (StyleManager);
};
return (_instance);
}
private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{
var _local3:Dictionary;
var _local4:Object;
var _local5:UIComponent;
_local3 = getInstance().classToInstancesDict[_arg1];
if (_local3 == null){
return;
};
for (_local4 in _local3) {
_local5 = (_local4 as UIComponent);
if (_local5 == null){
} else {
_local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2));
};
};
}
private static function invalidateStyle(_arg1:String):void{
var _local2:Dictionary;
var _local3:Object;
_local2 = getInstance().styleToClassesHash[_arg1];
if (_local2 == null){
return;
};
for (_local3 in _local2) {
invalidateComponentStyle(Class(_local3), _arg1);
};
}
public static function registerInstance(_arg1:UIComponent):void{
var inst:StyleManager;
var classDef:Class;
var target:Class;
var defaultStyles:Object;
var styleToClasses:Object;
var n:String;
var instance = _arg1;
inst = getInstance();
classDef = getClassDef(instance);
if (classDef == null){
return;
};
if (inst.classToInstancesDict[classDef] == null){
inst.classToInstancesDict[classDef] = new Dictionary(true);
target = classDef;
while (defaultStyles == null) {
if (target["getStyleDefinition"] != null){
defaultStyles = target["getStyleDefinition"]();
break;
};
try {
target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class);
} catch(err:Error) {
try {
target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class);
} catch(e:Error) {
defaultStyles = UIComponent.getStyleDefinition();
break;
};
};
};
styleToClasses = inst.styleToClassesHash;
for (n in defaultStyles) {
if (styleToClasses[n] == null){
styleToClasses[n] = new Dictionary(true);
};
styleToClasses[n][classDef] = true;
};
inst.classToDefaultStylesDict[classDef] = defaultStyles;
inst.classToStylesDict[classDef] = {};
};
inst.classToInstancesDict[classDef][instance] = true;
setSharedStyles(instance);
}
public static function getStyle(_arg1:String):Object{
return (getInstance().globalStyles[_arg1]);
}
private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{
var _local3:Class;
var _local4:StyleManager;
var _local5:Object;
_local3 = getClassDef(_arg1);
_local4 = getInstance();
_local5 = _local4.classToStylesDict[_local3][_arg2];
if (_local5 != null){
return (_local5);
};
_local5 = _local4.globalStyles[_arg2];
if (_local5 != null){
return (_local5);
};
return (_local4.classToDefaultStylesDict[_local3][_arg2]);
}
public static function setStyle(_arg1:String, _arg2:Object):void{
var _local3:Object;
_local3 = getInstance().globalStyles;
if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){
return;
};
_local3[_arg1] = _arg2;
invalidateStyle(_arg1);
}
}
}//package fl.managers
Section 152
//MochiAd (mochi.as3.MochiAd)
package mochi.as3 {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.system.*;
import flash.net.*;
public class MochiAd {
public static function getVersion():String{
return ("3.02 as3");
}
public static function showClickAwayAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_timeout:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var sendHostProgress:Boolean;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{
}, ad_finished:function ():void{
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
sendHostProgress = false;
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
return;
};
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
_local3 = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (this.root == null){
_local3 = true;
};
if (_local3){
delete this.onEnterFrame;
};
};
doOnEnterFrame(chk);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function _allowDomains(_arg1:String):String{
var _local2:String;
_local2 = _arg1.split("/")[2].split(":")[0];
if (Security.sandboxType == "application"){
return (_local2);
};
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (_arg1.origFrameRate != undefined){
_arg1.stage.frameRate = _arg1.origFrameRate;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad._containerLCName != undefined){
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"});
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function showInterLevelAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (_local2 > chk.ad_msec){
_local3 = true;
};
if (_local3){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local3:Object;
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
if (_local3.clip == undefined){
throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite."));
};
_arg1 = _local3.clip.loaderInfo.parameters.mochiad_options;
if (_arg1){
_local5 = _arg1.split("&");
_local6 = 0;
while (_local6 < _local5.length) {
_local7 = _local5[_local6].split("=");
_local3[unescape(_local7[0])] = unescape(_local7[1]);
_local6++;
};
};
if (_local3.id == "test"){
trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!");
};
return (_local3);
}
public static function _cleanup(_arg1:Object):void{
var idx:Number;
var k:String;
var lc:LocalConnection;
var f:Function;
var mc = _arg1;
if (("lc" in mc)){
lc = mc.lc;
f = function ():void{
try {
lc.client = null;
lc.close();
} catch(e:Error) {
};
};
setTimeout(f, 0);
};
idx = DisplayObjectContainer(mc).numChildren;
while (idx > 0) {
idx = (idx - 1);
DisplayObjectContainer(mc).removeChildAt(idx);
};
for (k in mc) {
delete mc[k];
};
}
public static function load(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var depth:Number;
var mc:MovieClip;
var wh:Array;
var lv:URLVariables;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var g:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
if (!MochiAd._isNetworkAvailable()){
return (null);
};
try {
if (clip._mochiad_loaded){
return (null);
};
} catch(e:Error) {
throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, "_mochiad", depth);
wh = MochiAd._getRes(options, clip);
options.res = ((wh[0] + "x") + wh[1]);
options.server = (options.server + options.id);
delete options.id;
clip._mochiad_loaded = true;
if (clip.loaderInfo.loaderURL.indexOf("http") == 0){
options.as3_swf = clip.loaderInfo.loaderURL;
} else {
trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal");
};
lv = new URLVariables();
for (k in options) {
v = options[k];
if (!(v is Function)){
lv[k] = v;
};
};
server = lv.server;
delete lv.server;
hostname = _allowDomains(server);
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.lc = lc;
mc.lcName = name;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
g = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
MochiAd.unload(clip);
};
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g);
req = new URLRequest(((server + ".swf?cacheBust=") + new Date().getTime()));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{
trace("[MochiAds] Blocked URL");
});
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{
var _local4:Array;
var _local5:Number;
_local4 = _arg2.split(".");
_local5 = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
if (typeof(_arg1[_local4[_local5]]) == "function"){
return (_arg1[_local4[_local5]].apply(_arg1, _arg3));
};
return (undefined);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip;
_local4 = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local3:Object;
var _local4:Number;
var _local5:Number;
var _local6:Array;
_local3 = _arg2.getBounds(_arg2.root);
_local4 = 0;
_local5 = 0;
if (typeof(_arg1.res) != "undefined"){
_local6 = _arg1.res.split("x");
_local4 = parseFloat(_local6[0]);
_local5 = parseFloat(_local6[1]);
} else {
_local4 = (_local3.xMax - _local3.xMin);
_local5 = (_local3.yMax - _local3.yMin);
};
if ((((_local4 == 0)) || ((_local5 == 0)))){
_local4 = _arg2.stage.stageWidth;
_local5 = _arg2.stage.stageHeight;
};
return ([_local4, _local5]);
}
public static function adShowing(_arg1:Object):void{
_arg1.origFrameRate = _arg1.stage.frameRate;
_arg1.stage.frameRate = 30;
}
public static function getValue(_arg1:Object, _arg2:String):Object{
var _local3:Array;
var _local4:Number;
_local3 = _arg2.split(".");
_local4 = 0;
while (_local4 < (_local3.length - 1)) {
if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local3[_local4]];
_local4++;
};
return (_arg1[_local3[_local4]]);
}
public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{
var _local4:Object;
var _local5:Object;
switch (_arg3.id){
case "setValue":
MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value);
break;
case "getValue":
_local4 = MochiAd.getValue(_arg1, _arg3.objectName);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4);
break;
case "runMethod":
_local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5);
break;
default:
trace(("[mochiads rpc] unknown rpc id: " + _arg3.id));
};
}
public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Array;
var _local5:Number;
_local4 = _arg2.split(".");
_local5 = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return;
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
_arg1[_local4[_local5]] = _arg3;
}
public static function showPreGameAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var bar:MovieClip;
var bar_color:Number;
var bar_background:Number;
var bar_outline:Number;
var backing_mc:MovieClip;
var backing:Object;
var inside_mc:MovieClip;
var inside:Object;
var outline_mc:MovieClip;
var outline:Object;
var complete:Boolean;
var unloaded:Boolean;
var f:Function;
var sendHostProgress:Boolean;
var fn:Function;
var r:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}, ad_progress:function (_arg1:Number):void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){
options.ad_started();
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
return;
};
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
var fn:Function;
MochiAd._cleanup(mc);
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.x = (w * -0.5);
chk.y = (h * -0.5);
bar = createEmptyMovieClip(chk, "_mochiad_bar", 4);
if (options.no_progress_bar){
bar.visible = false;
delete options.no_progress_bar;
} else {
bar.x = 10;
bar.y = (h - 20);
};
bar_color = options.color;
delete options.color;
bar_background = options.background;
delete options.background;
bar_outline = options.outline;
delete options.outline;
backing_mc = createEmptyMovieClip(bar, "_outline", 1);
backing = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo((w - 20), 0);
backing.lineTo((w - 20), 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
inside_mc = createEmptyMovieClip(bar, "_inside", 2);
inside = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo((w - 20), 0);
inside.lineTo((w - 20), 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
outline_mc = createEmptyMovieClip(bar, "_outline", 3);
outline = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo((w - 20), 0);
outline.lineTo((w - 20), 10);
outline.lineTo(0, 10);
outline.lineTo(0, 0);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
complete = false;
unloaded = false;
f = function (_arg1:Event):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
complete = true;
if (unloaded){
MochiAd.unload(clip);
};
};
if (clip.loaderInfo.bytesLoaded == clip.loaderInfo.bytesTotal){
complete = true;
} else {
if ((clip.root is MovieClip)){
r = (clip.root as MovieClip);
if (r.framesLoaded >= r.totalFrames){
complete = true;
} else {
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
};
} else {
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
};
};
mc.unloadAd = function ():void{
unloaded = true;
if (complete){
MochiAd.unload(clip);
};
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
mc.rpcTestFn = function (_arg1:String):Object{
trace(("[MOCHIAD rpcTestFn] " + _arg1));
return (_arg1);
};
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
sendHostProgress = false;
mc.sendHostLoadProgress = function (_arg1:String):void{
sendHostProgress = true;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Object;
var _local3:Number;
var _local4:Boolean;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Object;
var _local10:Number;
var _local11:Number;
if (((!(this.parent)) || (!(this.parent.parent)))){
delete this["onEnterFrame"];
return;
};
_local1 = this.parent.parent.root;
_local2 = this.parent._mochiad_ctr;
_local3 = (getTimer() - this.started);
_local4 = false;
_local5 = _local1.loaderInfo.bytesTotal;
_local6 = _local1.loaderInfo.bytesLoaded;
if (complete){
_local6 = Math.max(1, _local6);
_local5 = _local6;
};
_local7 = ((100 * _local6) / _local5);
_local8 = ((100 * _local3) / chk.ad_msec);
_local9 = this._mochiad_bar._inside;
_local10 = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
options.ad_progress(_local10);
if (sendHostProgress){
clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7});
if (_local7 == 100){
sendHostProgress = false;
};
};
if (!chk.showing){
_local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local11 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){
options.ad_failed();
_local4 = true;
};
};
};
if (_local3 > chk.ad_msec){
_local4 = true;
};
if (((complete) && (_local4))){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function showPreloaderAd(_arg1:Object):void{
trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0");
MochiAd.showPreGameAd(_arg1);
}
public static function showTimedAd(_arg1:Object):void{
trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0");
MochiAd.showInterLevelAd(_arg1);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var f:Function;
var mc = _arg1;
f = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package mochi.as3
Section 153
//Bg (Bg)
package {
import flash.media.*;
public dynamic class Bg extends Sound {
}
}//package
Section 154
//CellRenderer_disabledSkin (CellRenderer_disabledSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_disabledSkin extends MovieClip {
}
}//package
Section 155
//CellRenderer_downSkin (CellRenderer_downSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_downSkin extends MovieClip {
}
}//package
Section 156
//CellRenderer_overSkin (CellRenderer_overSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_overSkin extends MovieClip {
}
}//package
Section 157
//CellRenderer_selectedDisabledSkin (CellRenderer_selectedDisabledSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_selectedDisabledSkin extends MovieClip {
}
}//package
Section 158
//CellRenderer_selectedDownSkin (CellRenderer_selectedDownSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_selectedDownSkin extends MovieClip {
}
}//package
Section 159
//CellRenderer_selectedOverSkin (CellRenderer_selectedOverSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_selectedOverSkin extends MovieClip {
}
}//package
Section 160
//CellRenderer_selectedUpSkin (CellRenderer_selectedUpSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_selectedUpSkin extends MovieClip {
}
}//package
Section 161
//CellRenderer_upSkin (CellRenderer_upSkin)
package {
import flash.display.*;
public dynamic class CellRenderer_upSkin extends MovieClip {
}
}//package
Section 162
//ComboBox_disabledSkin (ComboBox_disabledSkin)
package {
import flash.display.*;
public dynamic class ComboBox_disabledSkin extends MovieClip {
}
}//package
Section 163
//ComboBox_downSkin (ComboBox_downSkin)
package {
import flash.display.*;
public dynamic class ComboBox_downSkin extends MovieClip {
}
}//package
Section 164
//ComboBox_overSkin (ComboBox_overSkin)
package {
import flash.display.*;
public dynamic class ComboBox_overSkin extends MovieClip {
}
}//package
Section 165
//ComboBox_upSkin (ComboBox_upSkin)
package {
import flash.display.*;
public dynamic class ComboBox_upSkin extends MovieClip {
}
}//package
Section 166
//cupboardopeningsound (cupboardopeningsound)
package {
import flash.media.*;
public dynamic class cupboardopeningsound extends Sound {
}
}//package
Section 167
//dooropeningsound (dooropeningsound)
package {
import flash.media.*;
public dynamic class dooropeningsound extends Sound {
}
}//package
Section 168
//focusRectSkin (focusRectSkin)
package {
import flash.display.*;
public dynamic class focusRectSkin extends MovieClip {
}
}//package
Section 169
//Lab (Lab)
package {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import flash.utils.*;
import flash.media.*;
public class Lab {
public static var soundChannel:SoundChannel = new SoundChannel();
public static var clothtaken:Boolean = false;
public static var beakerkept:Boolean = false;
public static var cucl2taken:Boolean = false;
public static var lenshit1:Boolean = false;
public static var iscaco3hit:Boolean = false;
public static var ishcl2hit:Boolean = false;
public static var isspoon2frame2:Boolean = false;
public static var tfall:testtubefallingsound = new testtubefallingsound();
public static var gameTimesec:int = 0;
public static var gameTimescore:int = 0;
public static var solved:Boolean = false;
public static var islighterhit:Boolean = false;
public static var cloth:Boolean = false;
public static var ispoured:Boolean = false;
public static var iscucl2hit:Boolean = false;
public static var isspoon:Boolean = false;
public static var islens:Boolean = false;
public static var h2so4kept:Boolean = false;
public static var breset:int = 0;
public static var shaken:Boolean = false;
public static var iscloth:Boolean = false;
public static var tempnum:Number = 0;
public static var copen:cupboardopeningsound = new cupboardopeningsound();
public static var hclkept:Boolean = false;
public static var iscaco3:Boolean = false;
public static var istesttube:Boolean = false;
public static var soundToggle:Boolean = true;
public static var timer:Timer = new Timer(1000);
public static var beakerkept1:Boolean = false;
public static var allow:Boolean = false;
public static var bg:Bg = new Bg();
public static var clothdipped:Boolean = false;
public static var isspoonframe2:Boolean = false;
public static var sadd:saltaddingsound = new saltaddingsound();
public static var hitcount:int = 0;
public static var textBoolean:Boolean = false;
public static var ish2so4:Boolean = false;
public static var ishcl:Boolean = false;
public static var timingScore:Number = 0;
public static var spoonkept:Boolean = false;
public static var gameTimehrs:int = 0;
public static var isscissor:Boolean = false;
public static var ish1:Boolean = false;
public static var litmusdipped:Boolean = false;
public static var poured:Boolean = false;
public static var isstove:Boolean = false;
public static var islitmus:Boolean = false;
public static var caco3kept:Boolean = false;
public static var heated:Boolean = false;
public static var cucl2kept:Boolean = false;
public static var glasshit:Boolean = false;
public static var inPassMode:Boolean = false;
public static var inner1:Boolean = false;
public static var inner2:Boolean = false;
public static var lighterkept:Boolean = false;
public static var spoonkept1:Boolean = false;
public static var hitalpha:int = 0;
public static var dopen:dooropeningsound = new dooropeningsound();
public static var ish2so4hit:Boolean = false;
public static var scissorlitmus:Boolean = false;
public static var isformula1:Boolean = false;
public static var scissorkept1:Boolean = false;
public static var litmuskept:Boolean = false;
public static var scissorkept:Boolean = false;
public static var stovekept:Boolean = false;
public static var testtubekept1:Boolean = false;
public static var scissorcloth:Boolean = false;
public static var gameTimemins:int = 0;
public static var fkeyword:Boolean = false;
public static var isbeaker:Boolean = false;
public static var lenshit:Boolean = false;
public static var islighter:Boolean = false;
public static var panelkey:Boolean = false;
public static var isshaken:Boolean = false;
public static var ishold:Boolean = false;
public static var testtubekept:Boolean = false;
public static var iskey:Boolean = false;
public static var clothkept:Boolean = false;
public static var infoText:TextField;
public static var istime:Boolean = false;
public static function displayText(_arg1:MovieClip, _arg2:String){
var showText:Function;
var hideText:Function;
var mc = _arg1;
var name = _arg2;
showText = function (_arg1:MouseEvent):void{
if (textBoolean == false){
infoText.text = name;
};
};
hideText = function (_arg1:MouseEvent):void{
if (textBoolean == false){
infoText.text = "";
};
};
mc.addEventListener(MouseEvent.MOUSE_OVER, showText);
mc.addEventListener(MouseEvent.MOUSE_OUT, hideText);
}
}
}//package
Section 170
//List_skin (List_skin)
package {
import flash.display.*;
public dynamic class List_skin extends MovieClip {
}
}//package
Section 171
//MochiBot (MochiBot)
package {
import flash.display.*;
import flash.system.*;
import flash.net.*;
public dynamic class MochiBot extends Sprite {
public static function track(_arg1:Sprite, _arg2:String):MochiBot{
var _local3:MochiBot;
var _local4:String;
var _local5:URLVariables;
var _local6:String;
var _local7:URLRequest;
var _local8:Loader;
if (Security.sandboxType == "localWithFile"){
return (null);
};
_local3 = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
_local4 = "http://core.mochibot.com/my/core.swf";
_local5 = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
_local6 = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
_local7 = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
_local8 = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package
Section 172
//saltaddingsound (saltaddingsound)
package {
import flash.media.*;
public dynamic class saltaddingsound extends Sound {
}
}//package
Section 173
//ScoreSubmit (ScoreSubmit)
package {
import flash.display.*;
import flash.events.*;
import flash.system.*;
import flash.net.*;
public class ScoreSubmit extends Sprite {
public static function sendMyScore(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:int):void{
var receivedData:String;
var processedData:String;
var addressRequest:URLRequest;
var dataObject:URLVariables;
var addressLoader:URLLoader;
var callMe:Function;
var myName = _arg1;
var myCountry = _arg2;
var myScore = _arg3;
var myGameId = _arg4;
var mySite = _arg5;
var myLevels = _arg6;
callMe = function (_arg1:Event):void{
var _local2:Number;
var _local3:Number;
receivedData = _arg1.target.data;
if (receivedData.match("success=0")){
} else {
if (receivedData.match("success=1")){
trace(receivedData);
_local2 = receivedData.indexOf("scoreid");
_local3 = receivedData.indexOf("&");
if (_local2 == 0){
processedData = receivedData.substring(_local2, _local3);
} else {
processedData = receivedData.substring(_local2);
};
if (mySite.match("123bee")){
navigateToURL(new URLRequest(((("http://www.123bee.com/highscores?gameid=" + myGameId) + "&") + processedData)));
} else {
if (mySite.match("123peppy")){
navigateToURL(new URLRequest(((("http://www.123peppy.com/highscore?gameid=" + myGameId) + "&") + processedData)));
};
};
};
};
};
Security.allowDomain("*");
Security.allowInsecureDomain("*");
if (mySite.match("123bee")){
addressRequest = new URLRequest("http://www.123bee.com/scores/saveScore.php");
} else {
if (mySite.match("123peppy")){
addressRequest = new URLRequest("http://www.123peppy.com/score/saveScore.php");
};
};
dataObject = new URLVariables();
dataObject.fname = myName;
dataObject.country = myCountry;
dataObject.score = myScore;
dataObject.Levels = myLevels;
dataObject.gameid = myGameId;
addressRequest.data = dataObject;
addressLoader = new URLLoader();
addressLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
addressLoader.addEventListener(Event.COMPLETE, callMe);
addressLoader.load(addressRequest);
}
}
}//package
Section 174
//ScrollArrowDown_disabledSkin (ScrollArrowDown_disabledSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowDown_disabledSkin extends MovieClip {
}
}//package
Section 175
//ScrollArrowDown_downSkin (ScrollArrowDown_downSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowDown_downSkin extends MovieClip {
}
}//package
Section 176
//ScrollArrowDown_overSkin (ScrollArrowDown_overSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowDown_overSkin extends MovieClip {
}
}//package
Section 177
//ScrollArrowDown_upSkin (ScrollArrowDown_upSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowDown_upSkin extends MovieClip {
}
}//package
Section 178
//ScrollArrowUp_disabledSkin (ScrollArrowUp_disabledSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowUp_disabledSkin extends MovieClip {
}
}//package
Section 179
//ScrollArrowUp_downSkin (ScrollArrowUp_downSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowUp_downSkin extends MovieClip {
}
}//package
Section 180
//ScrollArrowUp_overSkin (ScrollArrowUp_overSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowUp_overSkin extends MovieClip {
}
}//package
Section 181
//ScrollArrowUp_upSkin (ScrollArrowUp_upSkin)
package {
import flash.display.*;
public dynamic class ScrollArrowUp_upSkin extends MovieClip {
}
}//package
Section 182
//ScrollBar_thumbIcon (ScrollBar_thumbIcon)
package {
import flash.display.*;
public dynamic class ScrollBar_thumbIcon extends MovieClip {
}
}//package
Section 183
//ScrollThumb_downSkin (ScrollThumb_downSkin)
package {
import flash.display.*;
public dynamic class ScrollThumb_downSkin extends MovieClip {
}
}//package
Section 184
//ScrollThumb_overSkin (ScrollThumb_overSkin)
package {
import flash.display.*;
public dynamic class ScrollThumb_overSkin extends MovieClip {
}
}//package
Section 185
//ScrollThumb_upSkin (ScrollThumb_upSkin)
package {
import flash.display.*;
public dynamic class ScrollThumb_upSkin extends MovieClip {
}
}//package
Section 186
//ScrollTrack_skin (ScrollTrack_skin)
package {
import flash.display.*;
public dynamic class ScrollTrack_skin extends MovieClip {
}
}//package
Section 187
//testtubefallingsound (testtubefallingsound)
package {
import flash.media.*;
public dynamic class testtubefallingsound extends Sound {
}
}//package
Section 188
//TextInput_disabledSkin (TextInput_disabledSkin)
package {
import flash.display.*;
public dynamic class TextInput_disabledSkin extends MovieClip {
}
}//package
Section 189
//TextInput_upSkin (TextInput_upSkin)
package {
import flash.display.*;
public dynamic class TextInput_upSkin extends MovieClip {
}
}//package