STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229456 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2574 · P5148 |
This is the info page for Flash #122648 |
HOW TO PLAY |
HIGH SCORES |
MORE GAMES |
MEDALS |
PAUSE GAME |
MAIN MENU |
<p align="left"><font face="BadaBoom BB" size="18" color="#000000" letterSpacing="1.000000" kerning="0">123,456,789</font></p> |
WEAPON X |
WEAPON X |
RAISED BY NUMEROUS FOSTER FAMILIES, THE YOUNG WOMAN KNOWN ONLY AS ROGUE HAS LEARNED TO LOOK AFTER HERSELF. HER MUTANT ABILITY TO DRAIN THE LIFE ENERGY, MEMORIES AND POWERS OF ANYONE SHE TOUCHES FORCED HER TO KEEP THOSE SHE CARED ABOUT AT ARM’S LENGTH… LITERALLY. HAS ROGUE REALLY FOUND A HOME AT XAVIER’S SCHOOL FOR GIFTED YOUNGSTERS OR ARE WOLVERINE AND THE X-MEN JUST ANOTHER IN A LONG LINE OF TEMPORARY FAMILIES? |
KITTY PRYDE MIGHT BE ABLE TO BECOME IMMATERIAL AND “PHASE” THROUGH SOLID OBJECTS, BUT HER DEVOTION TO PROFESSOR XAVIER’S SCHOOL FOR GIFTED YOUNGSTERS IS ANYTHING BUT INSUBSTANTIAL. ENROLLED IN THE SCHOOL SINCE SHE WAS ONLY THIRTEEN, THE SPUNKY YOUNG MUTANT CALLED SHADOWCAT SERVES AS A CHEERLEADER FOR XAVIER’S MISSION AND A VALUED TEAMMATE TO WOLVERINE AND THE X-MEN! |
THOUGH BLESSED WITH THE AGILITY AND STRENGTH OF A GREAT APE, THE BLUE-FURRED HENRY MCCOY’S GREAT ASSET IS HIS KEEN SCIENTIFIC MIND. THE BRILLIANT AND SUPERSTRONG BEAST IS PROUD TO BE ON STAFF AT PROFESSOR’S XAVIER’S SCHOOL FOR GIFTED YOUNGSTERS, AND OFTEN ACTS AS THE VOICE OF REASON FOR WOLVERINE AND THE X-MEN. |
HE WAS ONCE THE OPTIMISTIC, STRAIGHT-LACED LEADER OF PROFESSOR XAVIER’S X-MEN, BUT WHEN SCOTT SUMMERS LOST THE TWO PEOPLE HE CARED FOR MOST, HE ALSO LOST THE DRIVE TO LEAD THE MUTANT HEROES. SCOTT ONCE KEPT A FIRM CONTROL ON HIS LIFE — MUCH LIKE HIS RUBY QUARTZ VISOR KEEPS HIS POWERFUL OPTIC BLASTS IN CHECK — BUT NOW ALL BETS ARE OFF. HE MAY BEGRUDGINGLY WORK WITH WOLVERINE AND THE X-MEN TO PREVENT A FUTURE THAT LOOKS DARKER EVERY SECOND, BUT INSIDE… THE MAN CALLED CYCLOPS IS ALONE. |
THE DRIFTER KNOWN SIMPLY AS LOGAN HAS LIVED MANY LIVES IN HIS TIME — A SAMURAI, A COVERT OPERATIVE, A LIVING WEAPON — BUT THE ONLY LIFE THAT EVER MATTERED TO HIM IS THE ONE HE SHARED WITH PROFESSOR XAVIER’S STUDENTS, THE X-MEN. IT TOOK A SURROGATE FAMILY FOR THIS RAPIDLY HEALING MUTANT TO TRULY RECOVER FROM THE PROCESS THAT STOLE HIS MEMORY AND BONDED ADAMANTIUM TO HIS SKELETON. NOW THE CANADIAN BRAWLER WITH THE RAZOR-SHARP CLAWS FINDS HIMSELF THE UNLIKELY HEAD OF THAT FAMILY, AND ONLY WOLVERINE AND THE X-MEN CAN PROTECT THE WORLD FROM ITS OWN BLEAK FUTURE BY CONTINUING XAVIER’S MISSION! |
<p align="center"><font face="Armor Piercing" size="42" color="#ffffff" letterSpacing="1.000000" kerning="0">0</font></p> |
00:00:00 |
0 |
0 |
0 |
00:00:00 |
0 |
0 |
0 |
<p align="left"><font face="BadaBoom BB" size="19" color="#000000" letterSpacing="1.000000" kerning="0">Level 1: The baseMENT</font></p> |
SPACE to skip |
9 |
<p align="left"></p> |
CLEAR |
SUBMIT |
USE MOUSE TO CUT WIRE |
! |
<p align="center"><font face="Armor Piercing" size="50" color="#ffffff" letterSpacing="1.000000" kerning="0">999,999,999</font></p> |
<p align="left"></p> |
NAME |
Username |
PASSWORD |
<p align="center"><font face="Armor Piercing" size="15" color="#cc0000" letterSpacing="0.500000" kerning="0">error</font></p> |
THIS IS A MESSAGE BOX FOR SWITCHES |
ActionScript [AS3]
Section 1//CreditsUI (assets.pages.CreditsUI) package assets.pages { import flash.display.*; public dynamic class CreditsUI extends MovieClip { public function CreditsUI(){ addFrameScript(27, frame28); } function frame28(){ stop(); } } }//package assets.pagesSection 2//HelpUI (assets.pages.HelpUI) package assets.pages { import flash.display.*; public dynamic class HelpUI extends MovieClip { public function HelpUI(){ addFrameScript(27, frame28); } function frame28(){ stop(); } } }//package assets.pagesSection 3//MedalsUI (assets.pages.MedalsUI) package assets.pages { import flash.display.*; public dynamic class MedalsUI extends MovieClip { public var medalMastermind:MovieClip; public var medalIntel:MovieClip; public var baseNinja:MovieClip; public var medalScrapyard:MovieClip; public var medalGenius:MovieClip; public var baseBest:MovieClip; public var medalBest:MovieClip; public var baseDestroyer:MovieClip; public var medalSaboteur:MovieClip; public var baseIntel:MovieClip; public var medalSecret:MovieClip; public var baseSabotuer:MovieClip; public var baseGenius:MovieClip; public var baseMastermind:MovieClip; public var baseScrapyard:MovieClip; public var medalWeaponX:MovieClip; public var baseWeaponx:MovieClip; public var medalNinja:MovieClip; public var baseSecret:MovieClip; public var medalDestroyer:MovieClip; public function MedalsUI(){ addFrameScript(27, frame28); } function frame28(){ stop(); } } }//package assets.pagesSection 4//mutantButtons (assets.pages.mutantButtons) package assets.pages { import flash.display.*; public dynamic class mutantButtons extends MovieClip { public var next:MovieClip; public var prev:MovieClip; public var iconShadowcat:MovieClip; public var iconBeast:MovieClip; public var iconWolverine:MovieClip; public var iconCyclops:MovieClip; public var iconRogue:MovieClip; } }//package assets.pagesSection 5//MutantsUI (assets.pages.MutantsUI) package assets.pages { import flash.display.*; import events.*; public dynamic class MutantsUI extends MovieClip { public var pageBeast:MovieClip; public var pageWolverine:MovieClip; public var pageCyclops:MovieClip; public var pageRogue:MovieClip; public var pageShadowcat:MovieClip; public function MutantsUI(){ addFrameScript(24, frame25); } function frame25(){ stop(); dispatchEvent(new UIEvent(UIEvent.LOAD_HIGHSCORES)); } } }//package assets.pagesSection 6//SubmitScoreUI (assets.pages.SubmitScoreUI) package assets.pages { import flash.events.*; import flash.display.*; import events.*; import flash.text.*; public dynamic class SubmitScoreUI extends MovieClip { public var tryAgainButton:MovieClip; public var nameField:MovieClip; public var submitButton:SimpleButton; public var closeButton:MovieClip; public var loginButton:MovieClip; public var skipButton:MovieClip; public var score:TextField; public function SubmitScoreUI(){ addFrameScript(0, frame1, 7, frame8, 19, frame20, 20, frame21, 27, frame28, 36, frame37, 76, frame77, 77, frame78, 95, frame96); } function frame77(){ stop(); dispatchEvent(new UIEvent(UIEvent.SUBMIT_SCORE_SUCCESS)); } function frame78(){ skipButton.addEventListener(MouseEvent.MOUSE_UP, onSkipPress); tryAgainButton.addEventListener(MouseEvent.MOUSE_UP, onTryAgainPress); } public function onTryAgainPress(_arg1:MouseEvent):void{ dispatchEvent(new UIEvent(UIEvent.SUBMIT_SCORE_AGAIN)); } function frame1(){ stop(); } public function onClosePress(_arg1:MouseEvent):void{ dispatchEvent(new UIEvent(UIEvent.CLOSE)); } function frame21(){ submitButton.addEventListener(MouseEvent.MOUSE_UP, onSubmitPress); dispatchEvent(new UIEvent(UIEvent.SUBMIT_SCORE_FORM)); initializeCloseButton(); } function frame8(){ loginButton.addEventListener(MouseEvent.MOUSE_UP, onLoginPress); dispatchEvent(new UIEvent(UIEvent.SUBMIT_SCORE_FORM)); initializeCloseButton(); } function frame96(){ stop(); } function frame28(){ stop(); } function frame20(){ stop(); } public function initializeCloseButton():void{ closeButton.addEventListener(MouseEvent.MOUSE_UP, onClosePress); } public function onLoginPress(_arg1:MouseEvent):void{ dispatchEvent(new LoginEvent(LoginEvent.OPEN_LOGIN)); } function frame37(){ stop(); dispatchEvent(new UIEvent(UIEvent.SEND_SCORE)); } public function onSubmitPress(_arg1:MouseEvent):void{ dispatchEvent(new UIEvent(UIEvent.SUBMIT_SCORE)); } public function onSkipPress(_arg1:MouseEvent):void{ dispatchEvent(new UIEvent(UIEvent.CLOSE)); } } }//package assets.pagesSection 7//TitleUI (assets.pages.TitleUI) package assets.pages { import flash.display.*; public dynamic class TitleUI extends MovieClip { public var sponsor:MovieClip; public function TitleUI(){ addFrameScript(0, frame1, 45, frame46); } function frame1(){ stop(); } function frame46(){ stop(); } } }//package assets.pagesSection 8//CameraLeftUI (assets.CameraLeftUI) package assets { import flash.display.*; public dynamic class CameraLeftUI extends MovieClip { } }//package assetsSection 9//CameraRightUI (assets.CameraRightUI) package assets { import flash.display.*; public dynamic class CameraRightUI extends MovieClip { } }//package assetsSection 10//DoorDoubleFutureExitUI (assets.DoorDoubleFutureExitUI) package assets { import flash.display.*; public dynamic class DoorDoubleFutureExitUI extends MovieClip { } }//package assetsSection 11//DoorDoubleFutureUI (assets.DoorDoubleFutureUI) package assets { import flash.display.*; public dynamic class DoorDoubleFutureUI extends MovieClip { } }//package assetsSection 12//DoorDoubleSteelExitUI (assets.DoorDoubleSteelExitUI) package assets { import flash.display.*; public dynamic class DoorDoubleSteelExitUI extends MovieClip { } }//package assetsSection 13//DoorDoubleSteelUI (assets.DoorDoubleSteelUI) package assets { import flash.display.*; public dynamic class DoorDoubleSteelUI extends MovieClip { } }//package assetsSection 14//DoorSingleSteelExitUI (assets.DoorSingleSteelExitUI) package assets { import flash.display.*; public dynamic class DoorSingleSteelExitUI extends MovieClip { } }//package assetsSection 15//DoorSingleSteelUI (assets.DoorSingleSteelUI) package assets { import flash.display.*; public dynamic class DoorSingleSteelUI extends MovieClip { } }//package assetsSection 16//HeroUI (assets.HeroUI) package assets { import flash.display.*; public dynamic class HeroUI extends MovieClip { public function HeroUI(){ addFrameScript(23, frame24, 40, frame41, 58, frame59, 69, frame70, 79, frame80, 89, frame90, 96, frame97, 108, frame109); } function frame70(){ stop(); } function frame80(){ gotoAndPlay("idle"); } function frame90(){ stop(); } function frame97(){ stop(); } function frame109(){ stop(); } function frame24(){ gotoAndPlay("idle"); } function frame41(){ gotoAndPlay("crouch"); } function frame59(){ gotoAndPlay("walk"); } } }//package assetsSection 17//HudItemBaseUI (assets.HudItemBaseUI) package assets { import flash.display.*; public dynamic class HudItemBaseUI extends MovieClip { } }//package assetsSection 18//HudItemUI (assets.HudItemUI) package assets { import flash.display.*; import flash.text.*; public dynamic class HudItemUI extends MovieClip { public var locked:MovieClip; public var hover:MovieClip; public var titleText:TextField; } }//package assetsSection 19//HudStartUI (assets.HudStartUI) package assets { import flash.display.*; public dynamic class HudStartUI extends MovieClip { public var btnStart:SimpleButton; public var buttonContainer:MovieClip; } }//package assetsSection 20//HudUI (assets.HudUI) package assets { import flash.display.*; import flash.text.*; public dynamic class HudUI extends MovieClip { public var top:MovieClip; public var btnMarvel:SimpleButton; public var btnCredits:SimpleButton; public var scoretext:TextField; public var btnXmen:SimpleButton; public var soundControls:MovieClip; } }//package assetsSection 21//HudUIButtons (assets.HudUIButtons) package assets { import flash.display.*; public dynamic class HudUIButtons extends MovieClip { public var ButtonScores:MovieClip; public var BaseShare:MovieClip; public var BaseScores:MovieClip; public var ButtonShare:MovieClip; public var ButtonHelp:MovieClip; public var ButtonMore:MovieClip; public var BaseHelp:MovieClip; public var InGame:MovieClip; public var BaseMore:MovieClip; } }//package assetsSection 22//HumanUI (assets.HumanUI) package assets { import flash.display.*; public dynamic class HumanUI extends MovieClip { } }//package assetsSection 23//KeypadFutureUI (assets.KeypadFutureUI) package assets { import flash.display.*; public dynamic class KeypadFutureUI extends MovieClip { } }//package assetsSection 24//KeypadUI (assets.KeypadUI) package assets { import flash.display.*; public dynamic class KeypadUI extends MovieClip { } }//package assetsSection 25//LaserBigUI (assets.LaserBigUI) package assets { import flash.display.*; public dynamic class LaserBigUI extends MovieClip { } }//package assetsSection 26//LaserFutureUI (assets.LaserFutureUI) package assets { import flash.display.*; public dynamic class LaserFutureUI extends MovieClip { } }//package assetsSection 27//LevelEndCompleteUI (assets.LevelEndCompleteUI) package assets { import flash.display.*; import flash.text.*; public dynamic class LevelEndCompleteUI extends MovieClip { public var medalsEarned:MovieClip; public var textBonusPoints:TextField; public var textScore:TextField; public var textTime:TextField; public var btnPlay:SimpleButton; public var textAlarms:TextField; public function LevelEndCompleteUI(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package assetsSection 28//LevelEndFailedUI (assets.LevelEndFailedUI) package assets { import flash.display.*; import flash.text.*; public dynamic class LevelEndFailedUI extends MovieClip { public var textScore:TextField; public var btnPlay:SimpleButton; public function LevelEndFailedUI(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package assetsSection 29//LevelEndGameCompleteUI (assets.LevelEndGameCompleteUI) package assets { import flash.display.*; import flash.text.*; public dynamic class LevelEndGameCompleteUI extends MovieClip { public var medalsEarned:MovieClip; public var textGameTime:TextField; public var textBonusPoints:TextField; public var textScore:TextField; public var textTime:TextField; public var textAlarms:TextField; public function LevelEndGameCompleteUI(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package assetsSection 30//MarvelLoginUI (assets.MarvelLoginUI) package assets { import flash.events.*; import flash.display.*; import flash.utils.*; import events.*; import flash.media.*; import flash.filters.*; import flash.system.*; import flash.net.*; import flash.geom.*; import flash.text.*; import flash.errors.*; import flash.ui.*; import flash.external.*; import adobe.utils.*; import flash.accessibility.*; import flash.printing.*; import flash.xml.*; public dynamic class MarvelLoginUI extends MovieClip { public var tryAgainButton:MovieClip; public var loginButton:MovieClip; public var skipButton:MovieClip; public var nameEntry:MovieClip; public var registerButton:MovieClip; public var passEntry:MovieClip; public var errorMessage:TextField; public function MarvelLoginUI(){ addFrameScript(0, frame1, 1, frame2, 15, frame16, 23, frame24, 53, frame54, 54, frame55, 63, frame64); } function frame64(){ stop(); } public function init():void{ nameEntry.input.tabIndex = 0; passEntry.input.tabIndex = 1; passEntry.input.displayAsPassword = true; loginButton.button.addEventListener(MouseEvent.MOUSE_UP, onLoginPress); skipButton.button.addEventListener(MouseEvent.MOUSE_UP, onSkipPress); registerButton.button.addEventListener(MouseEvent.MOUSE_UP, onRegisterPress); dispatchEvent(new LoginEvent(LoginEvent.INITIALIZE)); } public function onSuccess():void{ dispatchEvent(new LoginEvent(LoginEvent.LOGIN_SUCCESS)); } public function onTryAgainPress(_arg1:MouseEvent):void{ dispatchEvent(new LoginEvent(LoginEvent.TRY_AGAIN)); } public function onError():void{ dispatchEvent(new LoginEvent(LoginEvent.LOGIN_ERROR)); } function frame1(){ } function frame24(){ stop(); } function frame2(){ init(); } function frame16(){ stop(); } public function onLoginPress(_arg1:MouseEvent):void{ var _local2:Object; var _local3:Boolean; _local2 = new Object(); _local2.username = nameEntry.input.text; _local2.password = passEntry.input.text; _local3 = true; if (_local2.username.length == 0){ _local3 = false; nameEntry.gotoAndPlay("error"); }; if (_local2.password.length == 0){ _local3 = false; passEntry.gotoAndPlay("error"); }; if (_local3 == true){ dispatchEvent(new LoginEvent(LoginEvent.LOGIN, _local2)); }; } public function onRegisterPress(_arg1:MouseEvent):void{ dispatchEvent(new LoginEvent(LoginEvent.REGISTER)); } function frame54(){ stop(); onSuccess(); } function frame55(){ skipButton.button.addEventListener(MouseEvent.MOUSE_UP, onSkipPress); tryAgainButton.button.addEventListener(MouseEvent.MOUSE_UP, onTryAgainPress); onError(); } public function onSkipPress(_arg1:MouseEvent):void{ dispatchEvent(new LoginEvent(LoginEvent.SKIP)); } } }//package assetsSection 31//MedalSmall (assets.MedalSmall) package assets { import flash.display.*; public dynamic class MedalSmall extends MovieClip { public var toolTip:MovieClip; public var hit:MovieClip; } }//package assetsSection 32//MessageBoxUI (assets.MessageBoxUI) package assets { import flash.display.*; import flash.text.*; public dynamic class MessageBoxUI extends MovieClip { public var description:TextField; } }//package assetsSection 33//MiniGameIntro (assets.MiniGameIntro) package assets { import flash.display.*; import flash.text.*; public dynamic class MiniGameIntro extends MovieClip { public var btnClose:SimpleButton; public var infoText:TextField; } }//package assetsSection 34//MiniGameIntroScreenBackground (assets.MiniGameIntroScreenBackground) package assets { import flash.display.*; public dynamic class MiniGameIntroScreenBackground extends MovieClip { } }//package assetsSection 35//MiniGameKeyboard (assets.MiniGameKeyboard) package assets { import flash.display.*; public dynamic class MiniGameKeyboard extends MovieClip { public var btnClose:SimpleButton; public var btnClear:SimpleButton; public var btnSubmit:SimpleButton; public var key2:MovieClip; public var key4:MovieClip; public var key6:MovieClip; public var key1:MovieClip; public var key9:MovieClip; public var key3:MovieClip; public var key5:MovieClip; public var key7:MovieClip; public var key8:MovieClip; public var digits:MovieClip; public var status:MovieClip; } }//package assetsSection 36//MiniGameTerminal (assets.MiniGameTerminal) package assets { import flash.display.*; import flash.text.*; public dynamic class MiniGameTerminal extends MovieClip { public var btnClose:SimpleButton; public var infoText:TextField; } }//package assetsSection 37//MiniGameTerminalScreen (assets.MiniGameTerminalScreen) package assets { import flash.display.*; public dynamic class MiniGameTerminalScreen extends MovieClip { } }//package assetsSection 38//MiniGameWires (assets.MiniGameWires) package assets { import flash.display.*; public dynamic class MiniGameWires extends MovieClip { public var btnClose:SimpleButton; public var btnGreen:SimpleButton; public var greenbar:MovieClip; public var claw:MovieClip; public var wires:MovieClip; public var btnRed:SimpleButton; public var btnBlue:SimpleButton; } }//package assetsSection 39//Mutant1 (assets.Mutant1) package assets { import flash.display.*; public dynamic class Mutant1 extends MovieClip { } }//package assetsSection 40//Mutant2 (assets.Mutant2) package assets { import flash.display.*; public dynamic class Mutant2 extends MovieClip { } }//package assetsSection 41//Mutant3 (assets.Mutant3) package assets { import flash.display.*; public dynamic class Mutant3 extends MovieClip { } }//package assetsSection 42//Mutant4 (assets.Mutant4) package assets { import flash.display.*; public dynamic class Mutant4 extends MovieClip { } }//package assetsSection 43//Preloader (assets.Preloader) package assets { import flash.display.*; public dynamic class Preloader extends MovieClip { public var bar:MovieClip; } }//package assetsSection 44//Robot2UI (assets.Robot2UI) package assets { import flash.display.*; public dynamic class Robot2UI extends MovieClip { } }//package assetsSection 45//RobotUI (assets.RobotUI) package assets { import flash.display.*; public dynamic class RobotUI extends MovieClip { } }//package assetsSection 46//Scanline (assets.Scanline) package assets { import flash.display.*; public dynamic class Scanline extends BitmapData { public function Scanline(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package assetsSection 47//SensorBottomUI (assets.SensorBottomUI) package assets { import flash.display.*; public dynamic class SensorBottomUI extends MovieClip { } }//package assetsSection 48//SensorTopUI (assets.SensorTopUI) package assets { import flash.display.*; public dynamic class SensorTopUI extends MovieClip { } }//package assetsSection 49//sfx_access_denied_01 (assets.sfx_access_denied_01) package assets { import flash.media.*; public dynamic class sfx_access_denied_01 extends Sound { } }//package assetsSection 50//sfx_aerial_01 (assets.sfx_aerial_01) package assets { import flash.media.*; public dynamic class sfx_aerial_01 extends Sound { } }//package assetsSection 51//sfx_auto_turret_scan_01 (assets.sfx_auto_turret_scan_01) package assets { import flash.media.*; public dynamic class sfx_auto_turret_scan_01 extends Sound { } }//package assetsSection 52//sfx_charge_kill_stab_01 (assets.sfx_charge_kill_stab_01) package assets { import flash.media.*; public dynamic class sfx_charge_kill_stab_01 extends Sound { } }//package assetsSection 53//sfx_console_entry_03 (assets.sfx_console_entry_03) package assets { import flash.media.*; public dynamic class sfx_console_entry_03 extends Sound { } }//package assetsSection 54//sfx_cursor (assets.sfx_cursor) package assets { import flash.media.*; public dynamic class sfx_cursor extends Sound { } }//package assetsSection 55//sfx_dry_fire_02 (assets.sfx_dry_fire_02) package assets { import flash.media.*; public dynamic class sfx_dry_fire_02 extends Sound { } }//package assetsSection 56//sfx_machete_heavy_01 (assets.sfx_machete_heavy_01) package assets { import flash.media.*; public dynamic class sfx_machete_heavy_01 extends Sound { } }//package assetsSection 57//sfx_machete_normal_02 (assets.sfx_machete_normal_02) package assets { import flash.media.*; public dynamic class sfx_machete_normal_02 extends Sound { } }//package assetsSection 58//sfx_machete_normal_04 (assets.sfx_machete_normal_04) package assets { import flash.media.*; public dynamic class sfx_machete_normal_04 extends Sound { } }//package assetsSection 59//sfx_machete_normal_08 (assets.sfx_machete_normal_08) package assets { import flash.media.*; public dynamic class sfx_machete_normal_08 extends Sound { } }//package assetsSection 60//sfx_mech_operate_17 (assets.sfx_mech_operate_17) package assets { import flash.media.*; public dynamic class sfx_mech_operate_17 extends Sound { } }//package assetsSection 61//sfx_MRD_intro_main (assets.sfx_MRD_intro_main) package assets { import flash.media.*; public dynamic class sfx_MRD_intro_main extends Sound { } }//package assetsSection 62//sfx_MRD_level_loop_2 (assets.sfx_MRD_level_loop_2) package assets { import flash.media.*; public dynamic class sfx_MRD_level_loop_2 extends Sound { } }//package assetsSection 63//sfx_MRD_level_loop_3 (assets.sfx_MRD_level_loop_3) package assets { import flash.media.*; public dynamic class sfx_MRD_level_loop_3 extends Sound { } }//package assetsSection 64//sfx_MRD_level_loop_4 (assets.sfx_MRD_level_loop_4) package assets { import flash.media.*; public dynamic class sfx_MRD_level_loop_4 extends Sound { } }//package assetsSection 65//sfx_SOUNDDOGS_AL_147468 (assets.sfx_SOUNDDOGS_AL_147468) package assets { import flash.media.*; public dynamic class sfx_SOUNDDOGS_AL_147468 extends Sound { } }//package assetsSection 66//sfx_staff_12 (assets.sfx_staff_12) package assets { import flash.media.*; public dynamic class sfx_staff_12 extends Sound { } }//package assetsSection 67//sfx_throw_whoosh_01 (assets.sfx_throw_whoosh_01) package assets { import flash.media.*; public dynamic class sfx_throw_whoosh_01 extends Sound { } }//package assetsSection 68//sfx_throw_whoosh_03 (assets.sfx_throw_whoosh_03) package assets { import flash.media.*; public dynamic class sfx_throw_whoosh_03 extends Sound { } }//package assetsSection 69//sfx_thud (assets.sfx_thud) package assets { import flash.media.*; public dynamic class sfx_thud extends Sound { } }//package assetsSection 70//sfx_thud2 (assets.sfx_thud2) package assets { import flash.media.*; public dynamic class sfx_thud2 extends Sound { } }//package assetsSection 71//sfx_tram_crash_01 (assets.sfx_tram_crash_01) package assets { import flash.media.*; public dynamic class sfx_tram_crash_01 extends Sound { } }//package assetsSection 72//sfx_turbolift_doorclose_01 (assets.sfx_turbolift_doorclose_01) package assets { import flash.media.*; public dynamic class sfx_turbolift_doorclose_01 extends Sound { } }//package assetsSection 73//sfx_wall_climb_02 (assets.sfx_wall_climb_02) package assets { import flash.media.*; public dynamic class sfx_wall_climb_02 extends Sound { } }//package assetsSection 74//sfx_wire_slice_01 (assets.sfx_wire_slice_01) package assets { import flash.media.*; public dynamic class sfx_wire_slice_01 extends Sound { } }//package assetsSection 75//SwitchFutureUI (assets.SwitchFutureUI) package assets { import flash.display.*; public dynamic class SwitchFutureUI extends MovieClip { } }//package assetsSection 76//SwitchUI (assets.SwitchUI) package assets { import flash.display.*; public dynamic class SwitchUI extends MovieClip { } }//package assetsSection 77//TerminalFutureUI (assets.TerminalFutureUI) package assets { import flash.display.*; public dynamic class TerminalFutureUI extends MovieClip { } }//package assetsSection 78//TerminalUI (assets.TerminalUI) package assets { import flash.display.*; public dynamic class TerminalUI extends MovieClip { } }//package assetsSection 79//tilesBackground (assets.tilesBackground) package assets { import flash.display.*; public dynamic class tilesBackground extends BitmapData { public function tilesBackground(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package assetsSection 80//tilesForeground (assets.tilesForeground) package assets { import flash.display.*; public dynamic class tilesForeground extends BitmapData { public function tilesForeground(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package assetsSection 81//VideoEndSequence (assets.VideoEndSequence) package assets { import flash.display.*; public dynamic class VideoEndSequence extends MovieClip { public function VideoEndSequence(){ addFrameScript(332, frame333); } function frame333(){ stop(); } } }//package assetsSection 82//VideoIntroSequence (assets.VideoIntroSequence) package assets { import flash.display.*; public dynamic class VideoIntroSequence extends MovieClip { public function VideoIntroSequence(){ addFrameScript(470, frame471); } function frame471(){ stop(); } } }//package assetsSection 83//VideoUnlockSequence (assets.VideoUnlockSequence) package assets { import flash.display.*; public dynamic class VideoUnlockSequence extends MovieClip { public function VideoUnlockSequence(){ addFrameScript(33, frame34); } function frame34(){ stop(); } } }//package assetsSection 84//WiresUI (assets.WiresUI) package assets { import flash.display.*; public dynamic class WiresUI extends MovieClip { } }//package assetsSection 85//Clawcopy_80 (assets_fla.Clawcopy_80) package assets_fla { import flash.display.*; public dynamic class Clawcopy_80 extends MovieClip { public function Clawcopy_80(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package assets_flaSection 86//highscoresNavArrow_2 (assets_fla.highscoresNavArrow_2) package assets_fla { import flash.display.*; public dynamic class highscoresNavArrow_2 extends MovieClip { public function highscoresNavArrow_2(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame1(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 87//HudUI_19 (assets_fla.HudUI_19) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUI_19 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 88//HudUi_21 (assets_fla.HudUi_21) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUi_21 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 89//HudUi_23 (assets_fla.HudUi_23) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUi_23 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 90//HudUi_25 (assets_fla.HudUi_25) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUi_25 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 91//HudUI_27 (assets_fla.HudUI_27) package assets_fla { import flash.display.*; public dynamic class HudUI_27 extends MovieClip { public var ButtonMain:MovieClip; public var ButtonPause:MovieClip; } }//package assets_flaSection 92//HudUI_28 (assets_fla.HudUI_28) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUI_28 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 93//HudUI_30 (assets_fla.HudUI_30) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class HudUI_30 extends MovieClip { public var label:TextField; public var hover:MovieClip; } }//package assets_flaSection 94//Key_68 (assets_fla.Key_68) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class Key_68 extends MovieClip { public var digit:TextField; public var sheen:MovieClip; public var base:MovieClip; } }//package assets_flaSection 95//loginButton_150 (assets_fla.loginButton_150) package assets_fla { import flash.display.*; public dynamic class loginButton_150 extends MovieClip { public var button:NavButtonUI; public function loginButton_150(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame1(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 96//loginEntry_155 (assets_fla.loginEntry_155) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class loginEntry_155 extends MovieClip { public var input:TextField; public function loginEntry_155(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package assets_flaSection 97//medalsOverlay_116 (assets_fla.medalsOverlay_116) package assets_fla { import flash.display.*; public dynamic class medalsOverlay_116 extends MovieClip { public var scratch:MovieClip; public var toolTip:MovieClip; public var hit:MovieClip; } }//package assets_flaSection 98//registerButton_183 (assets_fla.registerButton_183) package assets_fla { import flash.display.*; public dynamic class registerButton_183 extends MovieClip { public var button:NavButtonUI; public function registerButton_183(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame1(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 99//scanLines_52 (assets_fla.scanLines_52) package assets_fla { import flash.display.*; public dynamic class scanLines_52 extends MovieClip { public function scanLines_52(){ addFrameScript(0, frame1); } function frame1(){ this.mouseEnabled = (this.mouseChildren = false); } } }//package assets_flaSection 100//skipButton_163 (assets_fla.skipButton_163) package assets_fla { import flash.display.*; public dynamic class skipButton_163 extends MovieClip { public var button:NavButtonUI; public function skipButton_163(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame1(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 101//SoundControls_135 (assets_fla.SoundControls_135) package assets_fla { import flash.display.*; public dynamic class SoundControls_135 extends MovieClip { public var soundButton:SimpleButton; public var musicSlider:MovieClip; public var musicButton:SimpleButton; public var soundSlider:MovieClip; } }//package assets_flaSection 102//soundSlider_136 (assets_fla.soundSlider_136) package assets_fla { import flash.display.*; public dynamic class soundSlider_136 extends MovieClip { public function soundSlider_136(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ stop(); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package assets_flaSection 103//submitScoreClose_152 (assets_fla.submitScoreClose_152) package assets_fla { import flash.display.*; public dynamic class submitScoreClose_152 extends MovieClip { public function submitScoreClose_152(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame1(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 104//Terminal_71 (assets_fla.Terminal_71) package assets_fla { import flash.display.*; public dynamic class Terminal_71 extends MovieClip { public function Terminal_71(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package assets_flaSection 105//Terminal_72 (assets_fla.Terminal_72) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class Terminal_72 extends MovieClip { public var digitsText:TextField; } }//package assets_flaSection 106//tooltip_12 (assets_fla.tooltip_12) package assets_fla { import flash.display.*; import flash.text.*; public dynamic class tooltip_12 extends MovieClip { public var descriptionText:TextField; public var titleText:TextField; } }//package assets_flaSection 107//tryAgainButton_161 (assets_fla.tryAgainButton_161) package assets_fla { import flash.display.*; public dynamic class tryAgainButton_161 extends MovieClip { public var button:NavButtonUI; public function tryAgainButton_161(){ addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 49, frame50); } function frame10(){ stop(); } function frame19(){ stop(); } function frame29(){ stop(); } function frame1(){ stop(); } function frame39(){ stop(); } function frame50(){ stop(); } } }//package assets_flaSection 108//Wires_78 (assets_fla.Wires_78) package assets_fla { import flash.display.*; public dynamic class Wires_78 extends MovieClip { public function Wires_78(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); } function frame3(){ stop(); } function frame1(){ stop(); } function frame4(){ stop(); } function frame2(){ stop(); } } }//package assets_flaSection 109//NavButton (buttons.NavButton) package buttons { import flash.events.*; import flash.display.*; import flash.utils.*; public class NavButton extends SimpleButton { private var _display:MovieClip; private var _frames:Dictionary; private var _disabled:Boolean; private var _labels:Array; private var _pressed:Boolean; public var releaseFrame:String; public var pressFrame:String; public var releaseOutsideFrame:String; public var overFrame:String; public var outFrame:String; public function NavButton():void{ outFrame = "out"; overFrame = "over"; pressFrame = "press"; releaseFrame = "release"; releaseOutsideFrame = "releaseOutside"; _pressed = false; _disabled = false; display = (parent as MovieClip); } private function navigateToFrame(_arg1:String):void{ if (_arg1 != null){ if (hasFrame(_arg1) == true){ _display.gotoAndPlay(_arg1); }; }; } public function get display():MovieClip{ return (_display); } public function set display(_arg1:MovieClip):void{ var _local2:int; var _local3:int; var _local4:FrameLabel; if (_arg1 != null){ _display = _arg1; _labels = _display.currentLabels; _frames = new Dictionary(true); _local3 = _labels.length; _local2 = 0; while (_local2 < _local3) { _local4 = _labels[_local2]; _frames[_local4.name] = _local4; _local2++; }; enable(); }; } protected function onButtonReleaseOutside():void{ navigateToFrame(releaseOutsideFrame); } protected function onDisable():void{ } protected function onEnable():void{ } public function enable():void{ _disabled = false; _display.mouseEnabled = (_display.mouseChildren = true); enableInternalEvents(); } private function hasFrame(_arg1:String):Boolean{ return (!((_frames[_arg1] == null))); } protected function onButtonRelease():void{ navigateToFrame(releaseFrame); } protected function enableInternalEvents():void{ removeInternalEvents(); addEventListener(MouseEvent.ROLL_OVER, onButtonOver, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, onButtonOut, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, onButtonDown, false, 0, true); } protected function removeInternalEvents():void{ removeEventListener(MouseEvent.ROLL_OVER, onButtonOver); removeEventListener(MouseEvent.ROLL_OUT, onButtonOut); removeEventListener(MouseEvent.MOUSE_DOWN, onButtonDown); } protected function onButtonOut(_arg1:MouseEvent):void{ if (_pressed == false){ navigateToFrame(outFrame); }; } public function get pressed():Boolean{ return (_pressed); } public function disable():void{ _disabled = true; _display.mouseEnabled = (_display.mouseChildren = false); removeInternalEvents(); } protected function onButtonOver(_arg1:MouseEvent):void{ if (_pressed == false){ navigateToFrame(overFrame); }; } public function set disabled(_arg1:Boolean):void{ if (_arg1 == true){ disable(); } else { enable(); }; } protected function onButtonDown(_arg1:MouseEvent):void{ _pressed = true; navigateToFrame(pressFrame); stage.addEventListener(MouseEvent.MOUSE_UP, onButtonUp, false, 0, true); } protected function onButtonUp(_arg1:MouseEvent):void{ _pressed = false; var _local2:DisplayObject = (_arg1.target as DisplayObject); if ((((_local2 == _display)) || (_display.contains(_local2)))){ onButtonRelease(); } else { onButtonReleaseOutside(); }; if (stage != null){ stage.removeEventListener(MouseEvent.MOUSE_UP, onButtonUp); }; } public function get disabled():Boolean{ return (_disabled); } } }//package buttonsSection 110//AuxFunctions (caurina.transitions.AuxFunctions) package caurina.transitions { public class AuxFunctions { public static function getObjectLength(_arg1:Object):uint{ var _local3:String; var _local2:uint; for (_local3 in _arg1) { _local2++; }; return (_local2); } public static function numberToG(_arg1:Number):Number{ return (((_arg1 & 0xFF00) >> 8)); } public static function numberToB(_arg1:Number):Number{ return ((_arg1 & 0xFF)); } public static function numberToR(_arg1:Number):Number{ return (((_arg1 & 0xFF0000) >> 16)); } public static function concatObjects(... _args):Object{ var _local3:Object; var _local5:String; var _local2:Object = {}; var _local4:int; while (_local4 < _args.length) { _local3 = _args[_local4]; for (_local5 in _local3) { if (_local3[_local5] == null){ delete _local2[_local5]; } else { _local2[_local5] = _local3[_local5]; }; }; _local4++; }; return (_local2); } } }//package caurina.transitionsSection 111//Equations (caurina.transitions.Equations) package caurina.transitions { public class Equations { public function Equations(){ trace("Equations is a static class and should not be instantiated."); } public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); if (_arg1 < (1 / 2.75)){ return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2)); }; if (_arg1 < (2 / 2.75)){ _arg1 = (_arg1 - (1.5 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2)); }; if (_arg1 < (2.5 / 2.75)){ _arg1 = (_arg1 - (2.25 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2)); }; _arg1 = (_arg1 - (2.625 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2)); } public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; if (_arg1 < 1){ --_arg1; return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); }; --_arg1; return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2)); } public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2)); }; return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2)); } public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2)); }; _arg1 = (_arg1 - 2); _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2)); } public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2)); } public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2)); } public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2)); } public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function init():void{ Tweener.registerTransition("easenone", easeNone); Tweener.registerTransition("linear", easeNone); Tweener.registerTransition("easeinquad", easeInQuad); Tweener.registerTransition("easeoutquad", easeOutQuad); Tweener.registerTransition("easeinoutquad", easeInOutQuad); Tweener.registerTransition("easeoutinquad", easeOutInQuad); Tweener.registerTransition("easeincubic", easeInCubic); Tweener.registerTransition("easeoutcubic", easeOutCubic); Tweener.registerTransition("easeinoutcubic", easeInOutCubic); Tweener.registerTransition("easeoutincubic", easeOutInCubic); Tweener.registerTransition("easeinquart", easeInQuart); Tweener.registerTransition("easeoutquart", easeOutQuart); Tweener.registerTransition("easeinoutquart", easeInOutQuart); Tweener.registerTransition("easeoutinquart", easeOutInQuart); Tweener.registerTransition("easeinquint", easeInQuint); Tweener.registerTransition("easeoutquint", easeOutQuint); Tweener.registerTransition("easeinoutquint", easeInOutQuint); Tweener.registerTransition("easeoutinquint", easeOutInQuint); Tweener.registerTransition("easeinsine", easeInSine); Tweener.registerTransition("easeoutsine", easeOutSine); Tweener.registerTransition("easeinoutsine", easeInOutSine); Tweener.registerTransition("easeoutinsine", easeOutInSine); Tweener.registerTransition("easeincirc", easeInCirc); Tweener.registerTransition("easeoutcirc", easeOutCirc); Tweener.registerTransition("easeinoutcirc", easeInOutCirc); Tweener.registerTransition("easeoutincirc", easeOutInCirc); Tweener.registerTransition("easeinexpo", easeInExpo); Tweener.registerTransition("easeoutexpo", easeOutExpo); Tweener.registerTransition("easeinoutexpo", easeInOutExpo); Tweener.registerTransition("easeoutinexpo", easeOutInExpo); Tweener.registerTransition("easeinelastic", easeInElastic); Tweener.registerTransition("easeoutelastic", easeOutElastic); Tweener.registerTransition("easeinoutelastic", easeInOutElastic); Tweener.registerTransition("easeoutinelastic", easeOutInElastic); Tweener.registerTransition("easeinback", easeInBack); Tweener.registerTransition("easeoutback", easeOutBack); Tweener.registerTransition("easeinoutback", easeInOutBack); Tweener.registerTransition("easeoutinback", easeOutInBack); Tweener.registerTransition("easeinbounce", easeInBounce); Tweener.registerTransition("easeoutbounce", easeOutBounce); Tweener.registerTransition("easeinoutbounce", easeInOutBounce); Tweener.registerTransition("easeoutinbounce", easeOutInBounce); } public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2)); } public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001))); } public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2)); } public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2)); } public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2)); } public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2)); } public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2)); } public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; --_arg1; return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); } public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2)); } public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); } public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 == 0){ return (_arg2); }; if (_arg1 == _arg4){ return ((_arg2 + _arg3)); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005))); }; --_arg1; return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2)); } public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local7:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2)); } public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2)); } public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } } }//package caurina.transitionsSection 112//PropertyInfoObj (caurina.transitions.PropertyInfoObj) package caurina.transitions { public class PropertyInfoObj { public var modifierParameters:Array; public var isSpecialProperty:Boolean; public var valueComplete:Number; public var modifierFunction:Function; public var extra:Object; public var valueStart:Number; public var hasModifier:Boolean; public var arrayIndex:Number; public var originalValueComplete:Object; public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){ valueStart = _arg1; valueComplete = _arg2; originalValueComplete = _arg3; arrayIndex = _arg4; extra = _arg5; isSpecialProperty = _arg6; hasModifier = Boolean(_arg7); modifierFunction = _arg7; modifierParameters = _arg8; } public function toString():String{ var _local1 = "\n[PropertyInfoObj "; _local1 = (_local1 + ("valueStart:" + String(valueStart))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("valueComplete:" + String(valueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("arrayIndex:" + String(arrayIndex))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("extra:" + String(extra))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("hasModifier:" + String(hasModifier))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierFunction:" + String(modifierFunction))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierParameters:" + String(modifierParameters))); _local1 = (_local1 + "]\n"); return (_local1); } public function clone():PropertyInfoObj{ var _local1:PropertyInfoObj = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters); return (_local1); } } }//package caurina.transitionsSection 113//SpecialProperty (caurina.transitions.SpecialProperty) package caurina.transitions { public class SpecialProperty { public var parameters:Array; public var getValue:Function; public var preProcess:Function; public var setValue:Function; public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){ getValue = _arg1; setValue = _arg2; parameters = _arg3; preProcess = _arg4; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialProperty "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("setValue:" + String(setValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("preProcess:" + String(preProcess))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 114//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier) package caurina.transitions { public class SpecialPropertyModifier { public var getValue:Function; public var modifyValues:Function; public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){ modifyValues = _arg1; getValue = _arg2; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialPropertyModifier "); _local1 = (_local1 + ("modifyValues:" + String(modifyValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 115//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter) package caurina.transitions { public class SpecialPropertySplitter { public var parameters:Array; public var splitValues:Function; public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){ splitValues = _arg1; parameters = _arg2; } public function toString():String{ var _local1 = ""; _local1 = (_local1 + "[SpecialPropertySplitter "); _local1 = (_local1 + ("splitValues:" + String(splitValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 116//Tweener (caurina.transitions.Tweener) package caurina.transitions { import flash.events.*; import flash.display.*; import flash.utils.*; public class Tweener { private static var _timeScale:Number = 1; private static var _currentTimeFrame:Number; private static var _specialPropertySplitterList:Object; private static var _engineExists:Boolean = false; private static var _specialPropertyModifierList:Object; private static var _currentTime:Number; private static var _tweenList:Array; private static var _specialPropertyList:Object; private static var _transitionList:Object; private static var _inited:Boolean = false; private static var __tweener_controller__:MovieClip; public function Tweener(){ trace("Tweener is a static class and should not be instantiated."); } public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{ if (!_inited){ init(); }; var _local4:SpecialPropertyModifier = new SpecialPropertyModifier(_arg2, _arg3); _specialPropertyModifierList[_arg1] = _local4; } public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{ if (!_inited){ init(); }; var _local6:SpecialProperty = new SpecialProperty(_arg2, _arg3, _arg4, _arg5); _specialPropertyList[_arg1] = _local6; } public static function init(... _args):void{ _inited = true; _transitionList = new Object(); Equations.init(); _specialPropertyList = new Object(); _specialPropertyModifierList = new Object(); _specialPropertySplitterList = new Object(); } private static function updateTweens():Boolean{ var _local1:int; if (_tweenList.length == 0){ return (false); }; _local1 = 0; while (_local1 < _tweenList.length) { if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){ if (!updateTweenByIndex(_local1)){ removeTweenByIndex(_local1); }; if (_tweenList[_local1] == null){ removeTweenByIndex(_local1, true); _local1--; }; }; _local1++; }; return (true); } public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Array; var _local8:Function; var _local9:TweenListObj; var _local10:Number; var _local11:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local4 = _arg1.concat(); } else { _local4 = [_arg1]; }; var _local5:Object = _arg2; if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var _local6:Number = (isNaN(_local5.time)) ? 0 : _local5.time; var _local7:Number = (isNaN(_local5.delay)) ? 0 : _local5.delay; if (typeof(_local5.transition) == "string"){ _local11 = _local5.transition.toLowerCase(); _local8 = _transitionList[_local11]; } else { _local8 = _local5.transition; }; if (!Boolean(_local8)){ _local8 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local4.length) { if (_local5.useFrames == true){ _local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams); } else { _local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams); }; _local9.properties = null; _local9.onStart = _local5.onStart; _local9.onUpdate = _local5.onUpdate; _local9.onComplete = _local5.onComplete; _local9.onOverwrite = _local5.onOverwrite; _local9.onStartParams = _local5.onStartParams; _local9.onUpdateParams = _local5.onUpdateParams; _local9.onCompleteParams = _local5.onCompleteParams; _local9.onOverwriteParams = _local5.onOverwriteParams; _local9.onStartScope = _local5.onStartScope; _local9.onUpdateScope = _local5.onUpdateScope; _local9.onCompleteScope = _local5.onCompleteScope; _local9.onOverwriteScope = _local5.onOverwriteScope; _local9.onErrorScope = _local5.onErrorScope; _local9.isCaller = true; _local9.count = _local5.count; _local9.waitFrames = _local5.waitFrames; _tweenList.push(_local9); if ((((_local6 == 0)) && ((_local7 == 0)))){ _local10 = (_tweenList.length - 1); updateTweenByIndex(_local10); removeTweenByIndex(_local10); }; _local3++; }; return (true); } public static function pauseAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { pauseTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function removeTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local5:SpecialPropertySplitter; var _local6:Array; var _local7:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ if (_specialPropertySplitterList[_args[_local4]]){ _local5 = _specialPropertySplitterList[_args[_local4]]; _local6 = _local5.splitValues(_arg1, null); _local7 = 0; while (_local7 < _local6.length) { _local3.push(_local6[_local7].name); _local7++; }; } else { _local3.push(_args[_local4]); }; }; _local4++; }; return (affectTweens(removeTweenByIndex, _arg1, _local3)); } public static function splitTweens(_arg1:Number, _arg2:Array):uint{ var _local5:uint; var _local6:String; var _local7:Boolean; var _local3:TweenListObj = _tweenList[_arg1]; var _local4:TweenListObj = _local3.clone(false); _local5 = 0; while (_local5 < _arg2.length) { _local6 = _arg2[_local5]; if (Boolean(_local3.properties[_local6])){ _local3.properties[_local6] = undefined; delete _local3.properties[_local6]; }; _local5++; }; for (_local6 in _local4.properties) { _local7 = false; _local5 = 0; while (_local5 < _arg2.length) { if (_arg2[_local5] == _local6){ _local7 = true; break; }; _local5++; }; if (!_local7){ _local4.properties[_local6] = undefined; delete _local4.properties[_local6]; }; }; _tweenList.push(_local4); return ((_tweenList.length - 1)); } public static function updateFrame():void{ _currentTimeFrame++; } public static function resumeTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj = _tweenList[_arg1]; if ((((_local2 == null)) || (!(_local2.isPaused)))){ return (false); }; var _local3:Number = getCurrentTweeningTime(_local2); _local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused)); _local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused)); _local2.timePaused = undefined; _local2.isPaused = false; return (true); } public static function getVersion():String{ return ("AS3 1.31.74"); } public static function onEnterFrame(_arg1:Event):void{ updateTime(); updateFrame(); var _local2:Boolean; _local2 = updateTweens(); if (!_local2){ stopEngine(); }; } public static function updateTime():void{ _currentTime = getTimer(); } private static function updateTweenByIndex(_arg1:Number):Boolean{ var tTweening:TweenListObj; var mustUpdate:Boolean; var nv:Number; var t:Number; var b:Number; var c:Number; var d:Number; var pName:String; var eventScope:Object; var tScope:Object; var tProperty:Object; var pv:Number; var i = _arg1; tTweening = _tweenList[i]; if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){ return (false); }; var isOver:Boolean; var cTime:Number = getCurrentTweeningTime(tTweening); if (cTime >= tTweening.timeStart){ tScope = tTweening.scope; if (tTweening.isCaller){ do { t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1)); b = tTweening.timeStart; c = (tTweening.timeComplete - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d); } while (!(cTime >= nv)); } else { mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates))); if (cTime >= tTweening.timeComplete){ isOver = true; mustUpdate = true; }; if (!tTweening.hasStarted){ if (Boolean(tTweening.onStart)){ eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope; try { tTweening.onStart.apply(eventScope, tTweening.onStartParams); } catch(e2:Error) { handleError(tTweening, e2, "onStart"); }; }; for (pName in tTweening.properties) { if (tTweening.properties[pName].isSpecialProperty){ if (Boolean(_specialPropertyList[pName].preProcess)){ tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra); }; pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { pv = tScope[pName]; }; tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv; }; mustUpdate = true; tTweening.hasStarted = true; }; if (mustUpdate){ for (pName in tTweening.properties) { tProperty = tTweening.properties[pName]; if (isOver){ nv = tProperty.valueComplete; } else { if (tProperty.hasModifier){ t = (cTime - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams); nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters); } else { t = (cTime - tTweening.timeStart); b = tProperty.valueStart; c = (tProperty.valueComplete - tProperty.valueStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d, tTweening.transitionParams); }; }; if (tTweening.rounded){ nv = Math.round(nv); }; if (tProperty.isSpecialProperty){ _specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { tScope[pName] = nv; }; }; tTweening.updatesSkipped = 0; if (Boolean(tTweening.onUpdate)){ eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope; try { tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams); } catch(e3:Error) { handleError(tTweening, e3, "onUpdate"); }; }; } else { tTweening.updatesSkipped++; }; }; if (((isOver) && (Boolean(tTweening.onComplete)))){ eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope; try { tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams); } catch(e4:Error) { handleError(tTweening, e4, "onComplete"); }; }; return (!(isOver)); }; return (true); } public static function setTimeScale(_arg1:Number):void{ var _local2:Number; var _local3:Number; if (isNaN(_arg1)){ _arg1 = 1; }; if (_arg1 < 1E-5){ _arg1 = 1E-5; }; if (_arg1 != _timeScale){ if (_tweenList != null){ _local2 = 0; while (_local2 < _tweenList.length) { _local3 = getCurrentTweeningTime(_tweenList[_local2]); _tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1)); _tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1)); if (_tweenList[_local2].timePaused != undefined){ _tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1)); }; _local2++; }; }; _timeScale = _arg1; }; } public static function resumeAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { resumeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{ var eventScope:Object; var pTweening = _arg1; var pError = _arg2; var pCallBackName = _arg3; if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){ eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope; try { pTweening.onError.apply(eventScope, [pTweening.scope, pError]); } catch(metaError:Error) { printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace())); }; } else { if (!Boolean(pTweening.onError)){ printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace())); }; }; } private static function startEngine():void{ _engineExists = true; _tweenList = new Array(); __tweener_controller__ = new MovieClip(); __tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); _currentTimeFrame = 0; updateTime(); } public static function removeAllTweens():Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; var _local1:Boolean; _local2 = 0; while (_local2 < _tweenList.length) { removeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Number; var _local5:String; var _local6:Array; var _local13:Function; var _local14:Object; var _local15:TweenListObj; var _local16:Number; var _local17:Array; var _local18:Array; var _local19:Array; var _local20:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local6 = _arg1.concat(); } else { _local6 = [_arg1]; }; var _local7:Object = TweenListObj.makePropertiesChain(_arg2); if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; var _local8:Number = (isNaN(_local7.time)) ? 0 : _local7.time; var _local9:Number = (isNaN(_local7.delay)) ? 0 : _local7.delay; var _local10:Array = new Array(); var _local11:Object = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true}; var _local12:Object = new Object(); for (_local5 in _local7) { if (!_local11[_local5]){ if (_specialPropertySplitterList[_local5]){ _local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters); _local3 = 0; while (_local3 < _local17.length) { if (_specialPropertySplitterList[_local17[_local3].name]){ _local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters); _local4 = 0; while (_local4 < _local18.length) { _local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false}; _local4++; }; } else { _local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false}; }; _local3++; }; } else { if (_specialPropertyModifierList[_local5] != undefined){ _local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]); _local3 = 0; while (_local3 < _local19.length) { _local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue}; _local3++; }; } else { _local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]}; }; }; }; }; for (_local5 in _local10) { if (_specialPropertyList[_local5] != undefined){ _local10[_local5].isSpecialProperty = true; } else { if (_local6[0][_local5] == undefined){ printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property.")); }; }; }; for (_local5 in _local12) { if (_local10[_local5] != undefined){ _local10[_local5].modifierParameters = _local12[_local5].modifierParameters; _local10[_local5].modifierFunction = _local12[_local5].modifierFunction; }; }; if (typeof(_local7.transition) == "string"){ _local20 = _local7.transition.toLowerCase(); _local13 = _transitionList[_local20]; } else { _local13 = _local7.transition; }; if (!Boolean(_local13)){ _local13 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local6.length) { _local14 = new Object(); for (_local5 in _local10) { _local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters); }; if (_local7.useFrames == true){ _local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams); } else { _local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams); }; _local15.properties = _local14; _local15.onStart = _local7.onStart; _local15.onUpdate = _local7.onUpdate; _local15.onComplete = _local7.onComplete; _local15.onOverwrite = _local7.onOverwrite; _local15.onError = _local7.onError; _local15.onStartParams = _local7.onStartParams; _local15.onUpdateParams = _local7.onUpdateParams; _local15.onCompleteParams = _local7.onCompleteParams; _local15.onOverwriteParams = _local7.onOverwriteParams; _local15.onStartScope = _local7.onStartScope; _local15.onUpdateScope = _local7.onUpdateScope; _local15.onCompleteScope = _local7.onCompleteScope; _local15.onOverwriteScope = _local7.onOverwriteScope; _local15.onErrorScope = _local7.onErrorScope; _local15.rounded = _local7.rounded; _local15.skipUpdates = _local7.skipUpdates; removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete); _tweenList.push(_local15); if ((((_local8 == 0)) && ((_local9 == 0)))){ _local16 = (_tweenList.length - 1); updateTweenByIndex(_local16); removeTweenByIndex(_local16); }; _local3++; }; return (true); } public static function registerTransition(_arg1:String, _arg2:Function):void{ if (!_inited){ init(); }; _transitionList[_arg1] = _arg2; } public static function printError(_arg1:String):void{ trace(("## [Tweener] Error: " + _arg1)); } private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{ var _local5:uint; var _local6:Array; var _local7:uint; var _local8:uint; var _local9:uint; var _local4:Boolean; if (!Boolean(_tweenList)){ return (false); }; _local5 = 0; while (_local5 < _tweenList.length) { if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){ if (_arg3.length == 0){ _arg1(_local5); _local4 = true; } else { _local6 = new Array(); _local7 = 0; while (_local7 < _arg3.length) { if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){ _local6.push(_arg3[_local7]); }; _local7++; }; if (_local6.length > 0){ _local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties); if (_local8 == _local6.length){ _arg1(_local5); _local4 = true; } else { _local9 = splitTweens(_local5, _local6); _arg1(_local9); _local4 = true; }; }; }; }; _local5++; }; return (_local4); } public static function getTweens(_arg1:Object):Array{ var _local2:uint; var _local3:String; if (!Boolean(_tweenList)){ return ([]); }; var _local4:Array = new Array(); _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ for (_local3 in _tweenList[_local2].properties) { _local4.push(_local3); }; }; _local2++; }; return (_local4); } public static function isTweening(_arg1:Object):Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ return (true); }; _local2++; }; return (false); } public static function pauseTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj = _tweenList[_arg1]; if ((((_local2 == null)) || (_local2.isPaused))){ return (false); }; _local2.timePaused = getCurrentTweeningTime(_local2); _local2.isPaused = true; return (true); } public static function getCurrentTweeningTime(_arg1:Object):Number{ return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime); } public static function getTweenCount(_arg1:Object):Number{ var _local2:uint; if (!Boolean(_tweenList)){ return (0); }; var _local3:Number = 0; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ _local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties)); }; _local2++; }; return (_local3); } private static function stopEngine():void{ _engineExists = false; _tweenList = null; _currentTime = 0; _currentTimeFrame = 0; __tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); __tweener_controller__ = null; } public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{ var removedLocally:Boolean; var i:uint; var pName:String; var eventScope:Object; var p_scope = _arg1; var p_properties = _arg2; var p_timeStart = _arg3; var p_timeComplete = _arg4; var removed:Boolean; var tl:uint = _tweenList.length; i = 0; while (i < tl) { if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){ if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){ removedLocally = false; for (pName in _tweenList[i].properties) { if (Boolean(p_properties[pName])){ if (Boolean(_tweenList[i].onOverwrite)){ eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope; try { _tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams); } catch(e:Error) { handleError(_tweenList[i], e, "onOverwrite"); }; }; _tweenList[i].properties[pName] = undefined; delete _tweenList[i].properties[pName]; removedLocally = true; removed = true; }; }; if (removedLocally){ if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){ removeTweenByIndex(i); }; }; }; }; i = (i + 1); }; return (removed); } public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{ if (!_inited){ init(); }; var _local4:SpecialPropertySplitter = new SpecialPropertySplitter(_arg2, _arg3); _specialPropertySplitterList[_arg1] = _local4; } public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{ _tweenList[_arg1] = null; if (_arg2){ _tweenList.splice(_arg1, 1); }; return (true); } public static function resumeTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(resumeTweenByIndex, _arg1, _local3)); } public static function pauseTweens(_arg1:Object, ... _args):Boolean{ var _local4:uint; var _local3:Array = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(pauseTweenByIndex, _arg1, _local3)); } } }//package caurina.transitionsSection 117//TweenListObj (caurina.transitions.TweenListObj) package caurina.transitions { public class TweenListObj { public var hasStarted:Boolean; public var onUpdate:Function; public var useFrames:Boolean; public var count:Number; public var onOverwriteParams:Array; public var timeStart:Number; public var timeComplete:Number; public var onStartParams:Array; public var onUpdateScope:Object; public var rounded:Boolean; public var onUpdateParams:Array; public var properties:Object; public var onComplete:Function; public var transitionParams:Object; public var updatesSkipped:Number; public var onStart:Function; public var onOverwriteScope:Object; public var skipUpdates:Number; public var onStartScope:Object; public var scope:Object; public var isCaller:Boolean; public var timePaused:Number; public var transition:Function; public var onCompleteParams:Array; public var onError:Function; public var timesCalled:Number; public var onErrorScope:Object; public var onOverwrite:Function; public var isPaused:Boolean; public var waitFrames:Boolean; public var onCompleteScope:Object; public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){ scope = _arg1; timeStart = _arg2; timeComplete = _arg3; useFrames = _arg4; transition = _arg5; transitionParams = _arg6; properties = new Object(); isPaused = false; timePaused = undefined; isCaller = false; updatesSkipped = 0; timesCalled = 0; skipUpdates = 0; hasStarted = false; } public function clone(_arg1:Boolean):TweenListObj{ var _local3:String; var _local2:TweenListObj = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams); _local2.properties = new Array(); for (_local3 in properties) { _local2.properties[_local3] = properties[_local3].clone(); }; _local2.skipUpdates = skipUpdates; _local2.updatesSkipped = updatesSkipped; if (!_arg1){ _local2.onStart = onStart; _local2.onUpdate = onUpdate; _local2.onComplete = onComplete; _local2.onOverwrite = onOverwrite; _local2.onError = onError; _local2.onStartParams = onStartParams; _local2.onUpdateParams = onUpdateParams; _local2.onCompleteParams = onCompleteParams; _local2.onOverwriteParams = onOverwriteParams; _local2.onStartScope = onStartScope; _local2.onUpdateScope = onUpdateScope; _local2.onCompleteScope = onCompleteScope; _local2.onOverwriteScope = onOverwriteScope; _local2.onErrorScope = onErrorScope; }; _local2.rounded = rounded; _local2.isPaused = isPaused; _local2.timePaused = timePaused; _local2.isCaller = isCaller; _local2.count = count; _local2.timesCalled = timesCalled; _local2.waitFrames = waitFrames; _local2.hasStarted = hasStarted; return (_local2); } public function toString():String{ var _local3:String; var _local1 = "\n[TweenListObj "; _local1 = (_local1 + ("scope:" + String(scope))); _local1 = (_local1 + ", properties:"); var _local2:Boolean; for (_local3 in properties) { if (!_local2){ _local1 = (_local1 + ","); }; _local1 = (_local1 + ("[name:" + properties[_local3].name)); _local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart)); _local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete)); _local1 = (_local1 + "]"); _local2 = false; }; _local1 = (_local1 + (", timeStart:" + String(timeStart))); _local1 = (_local1 + (", timeComplete:" + String(timeComplete))); _local1 = (_local1 + (", useFrames:" + String(useFrames))); _local1 = (_local1 + (", transition:" + String(transition))); _local1 = (_local1 + (", transitionParams:" + String(transitionParams))); if (skipUpdates){ _local1 = (_local1 + (", skipUpdates:" + String(skipUpdates))); }; if (updatesSkipped){ _local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped))); }; if (Boolean(onStart)){ _local1 = (_local1 + (", onStart:" + String(onStart))); }; if (Boolean(onUpdate)){ _local1 = (_local1 + (", onUpdate:" + String(onUpdate))); }; if (Boolean(onComplete)){ _local1 = (_local1 + (", onComplete:" + String(onComplete))); }; if (Boolean(onOverwrite)){ _local1 = (_local1 + (", onOverwrite:" + String(onOverwrite))); }; if (Boolean(onError)){ _local1 = (_local1 + (", onError:" + String(onError))); }; if (onStartParams){ _local1 = (_local1 + (", onStartParams:" + String(onStartParams))); }; if (onUpdateParams){ _local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams))); }; if (onCompleteParams){ _local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams))); }; if (onOverwriteParams){ _local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams))); }; if (onStartScope){ _local1 = (_local1 + (", onStartScope:" + String(onStartScope))); }; if (onUpdateScope){ _local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope))); }; if (onCompleteScope){ _local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope))); }; if (onOverwriteScope){ _local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope))); }; if (onErrorScope){ _local1 = (_local1 + (", onErrorScope:" + String(onErrorScope))); }; if (rounded){ _local1 = (_local1 + (", rounded:" + String(rounded))); }; if (isPaused){ _local1 = (_local1 + (", isPaused:" + String(isPaused))); }; if (timePaused){ _local1 = (_local1 + (", timePaused:" + String(timePaused))); }; if (isCaller){ _local1 = (_local1 + (", isCaller:" + String(isCaller))); }; if (count){ _local1 = (_local1 + (", count:" + String(count))); }; if (timesCalled){ _local1 = (_local1 + (", timesCalled:" + String(timesCalled))); }; if (waitFrames){ _local1 = (_local1 + (", waitFrames:" + String(waitFrames))); }; if (hasStarted){ _local1 = (_local1 + (", hasStarted:" + String(hasStarted))); }; _local1 = (_local1 + "]\n"); return (_local1); } public static function makePropertiesChain(_arg1:Object):Object{ var _local3:Object; var _local4:Object; var _local5:Object; var _local6:Number; var _local7:Number; var _local8:Number; var _local2:Object = _arg1.base; if (_local2){ _local3 = {}; if ((_local2 is Array)){ _local4 = []; _local8 = 0; while (_local8 < _local2.length) { _local4.push(_local2[_local8]); _local8++; }; } else { _local4 = [_local2]; }; _local4.push(_arg1); _local6 = _local4.length; _local7 = 0; while (_local7 < _local6) { if (_local4[_local7]["base"]){ _local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]); } else { _local5 = _local4[_local7]; }; _local3 = AuxFunctions.concatObjects(_local3, _local5); _local7++; }; if (_local3["base"]){ delete _local3["base"]; }; return (_local3); //unresolved jump }; return (_arg1); } } }//package caurina.transitionsSection 118//MemoryCrypto (com.electrotank.util.MemoryCrypto) package com.electrotank.util { import com.meychi.ascrypt3.*; public class MemoryCrypto { private static var crypto:TEA = null; private static var INCREMENT:int = 0; private static var initialized:Boolean = false; private static var key:String = null; private static var MULTIPLY:int = 2; private static var DECREMENT:int = 1; private static var dataHolder:Object = null; private static var DIVIDE:int = 3; public static function incrementValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, INCREMENT)); } public static function getValue(_arg1:String):Number{ initIfNeeded(); var _local2:Number = 0; if (!isValueSet(_arg1)){ setValue(_arg1, _local2); } else { _local2 = new Number(crypto.decrypt(dataHolder[_arg1], key)); }; return (_local2); } private static function processValue(_arg1:String, _arg2:Number, _arg3:int):Number{ initIfNeeded(); var _local4:Number = getValue(_arg1); switch (_arg3){ case INCREMENT: _local4 = (_local4 + _arg2); break; case DECREMENT: _local4 = (_local4 - _arg2); break; case MULTIPLY: _local4 = (_local4 * _arg2); break; case DIVIDE: _local4 = (_local4 / _arg2); break; }; setValue(_arg1, _local4); return (_local4); } public static function reset():void{ initialized = false; initIfNeeded(); } public static function decrementValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, DECREMENT)); } private static function initIfNeeded():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:String; if (!initialized){ _local1 = Math.random(); _local2 = new String(_local1); _local2 = _local2.substr(2, (_local2.length - 2)); _local3 = Math.random(); _local4 = new String(_local3); _local4 = _local4.substr(2, (_local4.length - 2)); key = (_local2 + _local4); crypto = new TEA(); dataHolder = new Object(); initialized = true; }; } public static function multiplyValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, MULTIPLY)); } public static function setValue(_arg1:String, _arg2:Number):Number{ initIfNeeded(); dataHolder[_arg1] = crypto.encrypt(_arg2.toString(), key); return (_arg2); } public static function divideValue(_arg1:String, _arg2:Number):Number{ if (_arg2 == 0){ throw (new Error("Amount can't be zero when dividing!")); }; return (processValue(_arg1, _arg2, DIVIDE)); } public static function isValueSet(_arg1:String):Boolean{ initIfNeeded(); var _local2:Boolean; if (dataHolder[_arg1] != null){ _local2 = true; }; return (_local2); } } }//package com.electrotank.utilSection 119//Raster (com.foxaweb.utils.Raster) package com.foxaweb.utils { import flash.display.*; import flash.geom.*; public class Raster { public static function aaCircle(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Number):void{ var _local6:int; var _local7:int; var _local8:int; var _local10:Number; _local6 = _arg4; _local7 = 0; var _local9:Number = 0; var _local11:Function = Math.sqrt; var _local12:Function = Math.ceil; _arg1.setPixel((_arg2 + _local6), (_arg3 + _local7), _arg5); _arg1.setPixel((_arg2 - _local6), (_arg3 + _local7), _arg5); _arg1.setPixel((_arg2 + _local7), (_arg3 + _local6), _arg5); _arg1.setPixel((_arg2 + _local7), (_arg3 - _local6), _arg5); while (_local6 > (_local7 + 1)) { _local7++; _local10 = (_local12(_local11(((_arg4 * _arg4) - (_local7 * _local7)))) - _local11(((_arg4 * _arg4) - (_local7 * _local7)))); if (_local10 < _local9){ _local6--; }; drawAlphaPixel(_arg1, (_arg2 + _local6), (_arg3 + _local7), (1 - _local10), _arg5); drawAlphaPixel(_arg1, ((_arg2 + _local6) - 1), (_arg3 + _local7), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 - _local6), (_arg3 + _local7), (1 - _local10), _arg5); drawAlphaPixel(_arg1, ((_arg2 - _local6) + 1), (_arg3 + _local7), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 + _local6), (_arg3 - _local7), (1 - _local10), _arg5); drawAlphaPixel(_arg1, ((_arg2 + _local6) - 1), (_arg3 - _local7), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 - _local6), (_arg3 - _local7), (1 - _local10), _arg5); drawAlphaPixel(_arg1, ((_arg2 - _local6) + 1), (_arg3 - _local7), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 + _local7), (_arg3 + _local6), (1 - _local10), _arg5); drawAlphaPixel(_arg1, (_arg2 + _local7), ((_arg3 + _local6) - 1), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 - _local7), (_arg3 + _local6), (1 - _local10), _arg5); drawAlphaPixel(_arg1, (_arg2 - _local7), ((_arg3 + _local6) - 1), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 + _local7), (_arg3 - _local6), (1 - _local10), _arg5); drawAlphaPixel(_arg1, (_arg2 + _local7), ((_arg3 - _local6) + 1), _local10, _arg5); drawAlphaPixel(_arg1, (_arg2 - _local7), (_arg3 - _local6), (1 - _local10), _arg5); drawAlphaPixel(_arg1, (_arg2 - _local7), ((_arg3 - _local6) + 1), _local10, _arg5); _local9 = _local10; }; } public static function cubicBezier(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int, _arg9:int, _arg10:Number, _arg11:int=5):void{ var _local14:int; var _local15:int; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; var _local23:Number; var _local12:Number = _arg2; var _local13:Number = _arg3; var _local16:Number = 0; var _local17:Number = (1 / _arg11); var _local24:int; while (++_local24 <= _arg11) { _local18 = (_local17 * _local24); _local19 = ((_local17 * _local24) * _local18); _local20 = (_local19 * _local18); _local21 = (1 - _local18); _local22 = ((1 - _local18) * _local21); _local23 = (_local22 * _local21); _local14 = ((((_local23 * _arg2) + (((3 * _local18) * _local22) * _arg4)) + (((3 * _arg6) * _local19) * _local21)) + (_arg8 * _local20)); _local15 = ((((_local23 * _arg3) + (((3 * _local18) * _local22) * _arg5)) + (((3 * _arg7) * _local19) * _local21)) + (_arg9 * _local20)); _local16 = (_local16 + Math.sqrt((((_local14 - _local12) * (_local14 - _local12)) + ((_local15 - _local13) * (_local15 - _local13))))); _local12 = _local14; _local13 = _local15; }; var _local25:int = Math.floor(_local16); _local17 = (1 / _local25); var _local26:int = _arg2; var _local27:int = _arg3; _local24 = -1; while (++_local24 <= _local25) { _local18 = (_local17 * _local24); _local19 = ((_local17 * _local24) * _local18); _local20 = (_local19 * _local18); _local21 = (1 - _local18); _local22 = ((1 - _local18) * _local21); _local23 = (_local22 * _local21); _local14 = ((((_local23 * _arg2) + (((3 * _local18) * _local22) * _arg4)) + (((3 * _arg6) * _local19) * _local21)) + (_arg8 * _local20)); _local15 = ((((_local23 * _arg3) + (((3 * _local18) * _local22) * _arg5)) + (((3 * _arg7) * _local19) * _local21)) + (_arg9 * _local20)); line(_arg1, _local26, _local27, _local14, _local15, _arg10); _local26 = _local14; _local27 = _local15; }; } private static function checkLine(_arg1:Object, _arg2:int, _arg3:int, _arg4:BitmapData, _arg5:int, _arg6:Rectangle):void{ if (_arg1[_arg3]){ if (_arg1[_arg3] > _arg2){ _arg6.width = (_arg1[_arg3] - _arg2); _arg6.x = _arg2; _arg6.y = _arg3; _arg4.fillRect(_arg6, _arg5); } else { _arg6.width = (_arg2 - _arg1[_arg3]); _arg6.x = _arg1[_arg3]; _arg6.y = _arg3; _arg4.fillRect(_arg6, _arg5); }; } else { _arg1[_arg3] = _arg2; }; } public static function line(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:Number):void{ var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; var _local12:int; var _local13:int; var _local14:int; _local13 = _arg2; _local14 = _arg3; _local7 = (_arg4 - _arg2); _local8 = (_arg5 - _arg3); _local10 = ((_local7)>0) ? 1 : -1; _local11 = ((_local8)>0) ? 1 : -1; _local7 = Math.abs(_local7); _local8 = Math.abs(_local8); _arg1.setPixel32(_local13, _local14, _arg6); if (_local7 > _local8){ _local12 = (_local7 / 2); _local9 = 1; while (_local9 <= _local7) { _local13 = (_local13 + _local10); _local12 = (_local12 + _local8); if (_local12 >= _local7){ _local12 = (_local12 - _local7); _local14 = (_local14 + _local11); }; _arg1.setPixel32(_local13, _local14, _arg6); _local9++; }; } else { _local12 = (_local8 / 2); _local9 = 1; while (_local9 <= _local8) { _local14 = (_local14 + _local11); _local12 = (_local12 + _local7); if (_local12 >= _local8){ _local12 = (_local12 - _local8); _local13 = (_local13 + _local10); }; _arg1.setPixel32(_local13, _local14, _arg6); _local9++; }; }; } public static function quadBezier(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:Number, _arg9:int=3):void{ var _local12:int; var _local13:int; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local10:Number = _arg2; var _local11:Number = _arg3; var _local14:Number = 0; var _local15:Number = (1 / _arg9); var _local20:int; while (++_local20 <= _arg9) { _local16 = (_local15 * _local20); _local17 = ((_local15 * _local20) * _local16); _local18 = (1 - _local16); _local19 = ((1 - _local16) * _local18); _local12 = (((_local19 * _arg2) + (((2 * _local16) * _local18) * _arg4)) + (_local17 * _arg6)); _local13 = (((_local19 * _arg3) + (((2 * _local16) * _local18) * _arg5)) + (_local17 * _arg7)); _local14 = (_local14 + Math.sqrt((((_local12 - _local10) * (_local12 - _local10)) + ((_local13 - _local11) * (_local13 - _local11))))); _local10 = _local12; _local11 = _local13; }; var _local21:int = Math.floor(_local14); _local15 = (1 / _local21); var _local22:int = _arg2; var _local23:int = _arg3; _local20 = -1; while (++_local20 <= _local21) { _local16 = (_local15 * _local20); _local17 = ((_local15 * _local20) * _local16); _local18 = (1 - _local16); _local19 = ((1 - _local16) * _local18); _local12 = (((_local19 * _arg2) + (((2 * _local16) * _local18) * _arg4)) + (_local17 * _arg6)); _local13 = (((_local19 * _arg3) + (((2 * _local16) * _local18) * _arg5)) + (_local17 * _arg7)); line(_arg1, _local22, _local23, _local12, _local13, _arg8); _local22 = _local12; _local23 = _local13; }; } public static function circle(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:Number):void{ var _local6:int; var _local7:int; var _local8:int; _local6 = 0; _local7 = _arg4; _local8 = (1 - _arg4); _arg1.setPixel32((_arg2 + _local6), (_arg3 + _local7), _arg5); _arg1.setPixel32((_arg2 + _local6), (_arg3 - _local7), _arg5); _arg1.setPixel32((_arg2 - _local7), (_arg3 + _local6), _arg5); _arg1.setPixel32((_arg2 + _local7), (_arg3 + _local6), _arg5); while (_local7 > _local6) { if (_local8 < 0){ _local8 = (_local8 + ((2 * _local6) + 3)); } else { _local8 = (_local8 + ((2 * (_local6 - _local7)) + 5)); _local7--; }; _local6++; _arg1.setPixel32((_arg2 + _local6), (_arg3 + _local7), _arg5); _arg1.setPixel32((_arg2 - _local6), (_arg3 + _local7), _arg5); _arg1.setPixel32((_arg2 + _local6), (_arg3 - _local7), _arg5); _arg1.setPixel32((_arg2 - _local6), (_arg3 - _local7), _arg5); _arg1.setPixel32((_arg2 - _local7), (_arg3 + _local6), _arg5); _arg1.setPixel32((_arg2 - _local7), (_arg3 - _local6), _arg5); _arg1.setPixel32((_arg2 + _local7), (_arg3 - _local6), _arg5); _arg1.setPixel32((_arg2 + _local7), (_arg3 + _local6), _arg5); }; } public static function triangle(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:Number):void{ line(_arg1, _arg2, _arg3, _arg4, _arg5, _arg8); line(_arg1, _arg4, _arg5, _arg6, _arg7, _arg8); line(_arg1, _arg6, _arg7, _arg2, _arg3, _arg8); } public static function filledTri(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:Number):void{ var _local9:Object = {}; lineTri(_local9, _arg1, _arg2, _arg3, _arg4, _arg5, _arg8); lineTri(_local9, _arg1, _arg4, _arg5, _arg6, _arg7, _arg8); lineTri(_local9, _arg1, _arg6, _arg7, _arg2, _arg3, _arg8); } public static function aaLine(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:Number):void{ var _local8:int; var _local17:Number; var _local7 = (Math.abs((_arg5 - _arg3)) > Math.abs((_arg4 - _arg2))); if (_local7){ _local8 = _arg2; _arg2 = _arg3; _arg3 = _local8; _local8 = _arg4; _arg4 = _arg5; _arg5 = _local8; }; if (_arg2 > _arg4){ _local8 = _arg2; _arg2 = _arg4; _arg4 = _local8; _local8 = _arg3; _arg3 = _arg5; _arg5 = _local8; }; var _local9:int = (_arg4 - _arg2); var _local10:int = (_arg5 - _arg3); var _local11:Number = (_local10 / _local9); var _local12:int = _arg2; var _local13:Number = (_arg3 + (_local11 * (_local12 - _arg2))); var _local14:Number = (1 - ((_arg2 + 0.5) % 1)); var _local15:int = _local12; var _local16:int = Math.floor(_local13); _local17 = ((1 - (_local13 % 1)) * _local14); if (_local7){ }; _local17 = ((_local13 % 1) * _local14); if (_local7){ }; var _local18:Number = (_local13 + _local11); _local12 = _arg4; _local13 = (_arg5 + (_local11 * (_local12 - _arg4))); _local14 = ((_arg4 + 0.5) % 1); var _local19:int = _local12; var _local20:int = Math.floor(_local13); _local17 = ((1 - (_local13 % 1)) * _local14); if (_local7){ drawAlphaPixel(_arg1, _local20, _local19, _local17, _arg6); } else { drawAlphaPixel(_arg1, _local19, _local20, _local17, _arg6); }; _local17 = ((_local13 % 1) * _local14); if (_local7){ drawAlphaPixel(_arg1, (_local20 + 1), _local19, _local17, _arg6); } else { drawAlphaPixel(_arg1, _local19, (_local20 + 1), _local17, _arg6); }; var _local21:int = _local15; while (_local21++ < _local19) { _local17 = (1 - (_local18 % 1)); if (_local7){ drawAlphaPixel(_arg1, _local18, _local21, _local17, _arg6); } else { drawAlphaPixel(_arg1, _local21, _local18, _local17, _arg6); }; _local17 = (_local18 % 1); if (_local7){ drawAlphaPixel(_arg1, (_local18 + 1), _local21, _local17, _arg6); } else { drawAlphaPixel(_arg1, _local21, (_local18 + 1), _local17, _arg6); }; _local18 = (_local18 + _local11); }; } private static function drawAlphaPixel(_arg1:BitmapData, _arg2:int, _arg3:int, _arg4:Number, _arg5:Number):void{ var _local6:uint = _arg1.getPixel32(_arg2, _arg3); var _local7:uint = ((_local6 & 0xFF0000) >> 16); var _local8:uint = ((_local6 & 0xFF00) >> 8); var _local9:uint = (_local6 & 0xFF); var _local10:uint = ((_arg5 & 0xFF0000) >> 16); var _local11:uint = ((_arg5 & 0xFF00) >> 8); var _local12:uint = (_arg5 & 0xFF); var _local13:Number = 0xFF; var _local14:Number = ((_local10 * _arg4) + (_local7 * (1 - _arg4))); var _local15:Number = ((_local11 * _arg4) + (_local8 * (1 - _arg4))); var _local16:Number = ((_local12 * _arg4) + (_local9 * (1 - _arg4))); var _local17:uint = ((((_local13 << 24) + (_local14 << 16)) + (_local15 << 8)) + _local16); _arg1.setPixel32(_arg2, _arg3, _local17); } private static function lineTri(_arg1:Object, _arg2:BitmapData, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:Number):void{ var _local9:int; var _local8 = (((_arg6 - _arg4) * (_arg6 - _arg4)) > ((_arg5 - _arg3) * (_arg5 - _arg3))); if (_local8){ _local9 = _arg3; _arg3 = _arg4; _arg4 = _local9; _local9 = _arg5; _arg5 = _arg6; _arg6 = _local9; }; if (_arg3 > _arg5){ _arg3 = (_arg3 ^ _arg5); _arg5 = (_arg5 ^ _arg3); _arg3 = (_arg3 ^ _arg5); _arg4 = (_arg4 ^ _arg6); _arg6 = (_arg6 ^ _arg4); _arg4 = (_arg4 ^ _arg6); }; var _local10:int = (_arg5 - _arg3); var _local11:int = Math.abs((_arg6 - _arg4)); var _local12:int; var _local13:int = _arg4; var _local14:int = ((_arg4 < _arg6)) ? 1 : -1; var _local15:int = _arg3; var _local16:int = (_arg5 - (_local10 >> 1)); var _local17:int = _arg5; var _local18:int = _arg6; var _local19:Rectangle = new Rectangle(); var _local20:int; _local19.x = 0; _local19.y = 0; _local19.width = 0; _local19.height = 1; while (_local15++ <= _local16) { if (_local8){ checkLine(_arg1, _local13, _local15, _arg2, _arg7, _local19); if (((!((_local17 == _arg5))) && (!((_local17 == _local16))))){ checkLine(_arg1, _local18, (_local17 + 1), _arg2, _arg7, _local19); }; }; _local12 = (_local12 + _local11); if ((_local12 << 1) >= _local10){ if (!_local8){ checkLine(_arg1, ((_local15 - _local20) + 1), _local13, _arg2, _arg7, _local19); if (_local17 != _local16){ checkLine(_arg1, (_local17 + 1), _local18, _arg2, _arg7, _local19); }; }; _local20 = 0; _local13 = (_local13 + _local14); _local18 = (_local18 - _local14); _local12 = (_local12 - _local10); }; _local20++; _local17--; }; if (!_local8){ checkLine(_arg1, ((_local15 - _local20) + 1), _local13, _arg2, _arg7, _local19); }; } } }//package com.foxaweb.utilsSection 120//CampaignInfo (com.google.analytics.campaign.CampaignInfo) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignInfo { private var _new:Boolean; private var _empty:Boolean; public function CampaignInfo(_arg1:Boolean=true, _arg2:Boolean=false){ _empty = _arg1; _new = _arg2; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function isNew():Boolean{ return (_new); } public function get utmcn():String{ return ("1"); } public function isEmpty():Boolean{ return (_empty); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((!(isEmpty())) && (isNew()))){ _local1.utmcn = utmcn; }; if (((!(isEmpty())) && (!(isNew())))){ _local1.utmcr = utmcr; }; return (_local1); } public function get utmcr():String{ return ("1"); } } }//package com.google.analytics.campaignSection 121//CampaignKey (com.google.analytics.campaign.CampaignKey) package com.google.analytics.campaign { public class CampaignKey { public var UCMD:String;// = "utm_medium" public var UCID:String;// = "utm_id" public var UCTR:String;// = "utm_term" public var UCSR:String;// = "utm_source" public var UCNO:String;// = "utm_nooverride" public var UCCN:String;// = "utm_campaign" public var UGCLID:String;// = "gclid" public var UCCT:String;// = "utm_content" } }//package com.google.analytics.campaignSection 122//CampaignManager (com.google.analytics.campaign.CampaignManager) package com.google.analytics.campaign { import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; public class CampaignManager { private var _config:Configuration; private var _domainHash:Number; private var _debug:DebugConfiguration; private var _timeStamp:Number; private var _referrer:String; private var _buffer:Buffer; public static const trackingDelimiter:String = "|"; public function CampaignManager(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Number, _arg5:String, _arg6:Number){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _domainHash = _arg4; _referrer = _arg5; _timeStamp = _arg6; } public function getCampaignInformation(_arg1:String, _arg2:Boolean):CampaignInfo{ var _local4:CampaignTracker; var _local8:CampaignTracker; var _local9:int; var _local3:CampaignInfo = new CampaignInfo(); var _local5:Boolean; var _local6:Boolean; var _local7:int; if (((_config.allowLinker) && (_buffer.isGenuine()))){ if (!_buffer.hasUTMZ()){ return (_local3); }; }; _local4 = getTrackerFromSearchString(_arg1); if (isValid(_local4)){ _local6 = hasNoOverride(_arg1); if (((_local6) && (!(_buffer.hasUTMZ())))){ return (_local3); }; }; if (!isValid(_local4)){ _local4 = getOrganicCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredKeyword(_local4)))){ return (_local3); }; }; if (((!(isValid(_local4))) && (_arg2))){ _local4 = getReferrerCampaign(); if (((!(_buffer.hasUTMZ())) && (isIgnoredReferral(_local4)))){ return (_local3); }; }; if (!isValid(_local4)){ if (((!(_buffer.hasUTMZ())) && (_arg2))){ _local4 = getDirectCampaign(); }; }; if (!isValid(_local4)){ return (_local3); }; if (((_buffer.hasUTMZ()) && (!(_buffer.utmz.isEmpty())))){ _local8 = new CampaignTracker(); _local8.fromTrackerString(_buffer.utmz.campaignTracking); _local5 = (_local8.toTrackerString() == _local4.toTrackerString()); _local7 = _buffer.utmz.responseCount; }; if (((!(_local5)) || (_arg2))){ _local9 = _buffer.utma.sessionCount; _local7++; if (_local9 == 0){ _local9 = 1; }; _buffer.utmz.domainHash = _domainHash; _buffer.utmz.campaignCreation = _timeStamp; _buffer.utmz.campaignSessions = _local9; _buffer.utmz.responseCount = _local7; _buffer.utmz.campaignTracking = _local4.toTrackerString(); _debug.info(_buffer.utmz.toString(), VisualDebugMode.geek); _local3 = new CampaignInfo(false, true); } else { _local3 = new CampaignInfo(false, false); }; return (_local3); } public function hasNoOverride(_arg1:String):Boolean{ var _local2:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (false); }; var _local3:Variables = new Variables(_arg1); var _local4 = ""; if (_local3.hasOwnProperty(_local2.UCNO)){ _local4 = _local3[_local2.UCNO]; switch (_local4){ case "1": return (true); case "": case "0": default: return (false); }; }; return (false); } public function getTrackerFromSearchString(_arg1:String):CampaignTracker{ var _local2:CampaignTracker = getOrganicCampaign(); var _local3:CampaignTracker = new CampaignTracker(); var _local4:CampaignKey = _config.campaignKey; if (_arg1 == ""){ return (_local3); }; var _local5:Variables = new Variables(_arg1); if (_local5.hasOwnProperty(_local4.UCID)){ _local3.id = _local5[_local4.UCID]; }; if (_local5.hasOwnProperty(_local4.UCSR)){ _local3.source = _local5[_local4.UCSR]; }; if (_local5.hasOwnProperty(_local4.UGCLID)){ _local3.clickId = _local5[_local4.UGCLID]; }; if (_local5.hasOwnProperty(_local4.UCCN)){ _local3.name = _local5[_local4.UCCN]; } else { _local3.name = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCMD)){ _local3.medium = _local5[_local4.UCMD]; } else { _local3.medium = "(not set)"; }; if (_local5.hasOwnProperty(_local4.UCTR)){ _local3.term = _local5[_local4.UCTR]; } else { if (((_local2) && (!((_local2.term == ""))))){ _local3.term = _local2.term; }; }; if (_local5.hasOwnProperty(_local4.UCCT)){ _local3.content = _local5[_local4.UCCT]; }; return (_local3); } public function getOrganicCampaign():CampaignTracker{ var _local1:CampaignTracker; var _local4:Array; var _local5:OrganicReferrer; var _local6:String; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3 = ""; if (_local2.hostName != ""){ if (_local2.hostName.indexOf(".") > -1){ _local4 = _local2.hostName.split("."); switch (_local4.length){ case 2: _local3 = _local4[0]; break; case 3: _local3 = _local4[1]; break; }; }; }; if (_config.organic.match(_local3)){ _local5 = _config.organic.getReferrerByName(_local3); _local6 = _config.organic.getKeywordValue(_local5, _local2.search); _local1 = new CampaignTracker(); _local1.source = _local5.engine; _local1.name = "(organic)"; _local1.medium = "organic"; _local1.term = _local6; }; return (_local1); } public function getDirectCampaign():CampaignTracker{ var _local1:CampaignTracker = new CampaignTracker(); _local1.source = "(direct)"; _local1.name = "(direct)"; _local1.medium = "(none)"; return (_local1); } public function isIgnoredKeyword(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "organic")))){ return (_config.organic.isIgnoredKeyword(_arg1.term)); }; return (false); } public function isIgnoredReferral(_arg1:CampaignTracker):Boolean{ if (((_arg1) && ((_arg1.medium == "referral")))){ return (_config.organic.isIgnoredReferral(_arg1.source)); }; return (false); } public function isValid(_arg1:CampaignTracker):Boolean{ if (((_arg1) && (_arg1.isValid()))){ return (true); }; return (false); } public function getReferrerCampaign():CampaignTracker{ var _local1:CampaignTracker; if (((isInvalidReferrer(_referrer)) || (isFromGoogleCSE(_referrer, _config)))){ return (_local1); }; var _local2:URL = new URL(_referrer); var _local3:String = _local2.hostName; var _local4:String = _local2.path; if (_local3.indexOf("www.") == 0){ _local3 = _local3.substr(4); }; _local1 = new CampaignTracker(); _local1.source = _local3; _local1.name = "(referral)"; _local1.medium = "referral"; _local1.content = _local4; return (_local1); } public static function isInvalidReferrer(_arg1:String):Boolean{ var _local2:URL; if ((((((_arg1 == "")) || ((_arg1 == "-")))) || ((_arg1 == "0")))){ return (true); }; if (_arg1.indexOf("://") > -1){ _local2 = new URL(_arg1); if ((((_local2.protocol == Protocols.file)) || ((_local2.protocol == Protocols.none)))){ return (true); }; }; return (false); } public static function isFromGoogleCSE(_arg1:String, _arg2:Configuration):Boolean{ var _local3:URL = new URL(_arg1); if (_local3.hostName.indexOf(_arg2.google) > -1){ if (_local3.search.indexOf((_arg2.googleSearchParam + "=")) > -1){ if (_local3.path == ("/" + _arg2.googleCsePath)){ return (true); }; }; }; return (false); } } }//package com.google.analytics.campaignSection 123//CampaignTracker (com.google.analytics.campaign.CampaignTracker) package com.google.analytics.campaign { import com.google.analytics.utils.*; public class CampaignTracker { public var content:String; public var source:String; public var clickId:String; public var name:String; public var term:String; public var medium:String; public var id:String; public function CampaignTracker(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:String="", _arg5:String="", _arg6:String="", _arg7:String=""){ this.id = _arg1; this.source = _arg2; this.clickId = _arg3; this.name = _arg4; this.medium = _arg5; this.term = _arg6; this.content = _arg7; } public function isValid():Boolean{ if (((((!((id == ""))) || (!((source == ""))))) || (!((clickId == ""))))){ return (true); }; return (false); } public function toTrackerString():String{ var _local1:Array = []; _addIfNotEmpty(_local1, "utmcid=", id); _addIfNotEmpty(_local1, "utmcsr=", source); _addIfNotEmpty(_local1, "utmgclid=", clickId); _addIfNotEmpty(_local1, "utmccn=", name); _addIfNotEmpty(_local1, "utmcmd=", medium); _addIfNotEmpty(_local1, "utmctr=", term); _addIfNotEmpty(_local1, "utmcct=", content); return (_local1.join(CampaignManager.trackingDelimiter)); } private function _addIfNotEmpty(_arg1:Array, _arg2:String, _arg3:String):void{ if (_arg3 != ""){ _arg3 = _arg3.split("+").join("%20"); _arg3 = _arg3.split(" ").join("%20"); _arg1.push((_arg2 + _arg3)); }; } public function fromTrackerString(_arg1:String):void{ var _local2:String = _arg1.split(CampaignManager.trackingDelimiter).join("&"); var _local3:Variables = new Variables(_local2); if (_local3.hasOwnProperty("utmcid")){ this.id = _local3["utmcid"]; }; if (_local3.hasOwnProperty("utmcsr")){ this.source = _local3["utmcsr"]; }; if (_local3.hasOwnProperty("utmccn")){ this.name = _local3["utmccn"]; }; if (_local3.hasOwnProperty("utmcmd")){ this.medium = _local3["utmcmd"]; }; if (_local3.hasOwnProperty("utmctr")){ this.term = _local3["utmctr"]; }; if (_local3.hasOwnProperty("utmcct")){ this.content = _local3["utmcct"]; }; if (_local3.hasOwnProperty("utmgclid")){ this.clickId = _local3["utmgclid"]; }; } } }//package com.google.analytics.campaignSection 124//BrowserInfo (com.google.analytics.core.BrowserInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.utils.*; public class BrowserInfo { private var _config:Configuration; private var _info:Environment; public function BrowserInfo(_arg1:Configuration, _arg2:Environment){ _config = _arg1; _info = _arg2; } public function get utmul():String{ return (_info.language.toLowerCase()); } public function get utmje():String{ return ("0"); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmsr():String{ return (((_info.screenWidth + "x") + _info.screenHeight)); } public function get utmfl():String{ var _local1:Version; if (_config.detectFlash){ _local1 = _info.flashVersion; return (((((_local1.major + ".") + _local1.minor) + " r") + _local1.build)); }; return ("-"); } public function get utmcs():String{ return (_info.languageEncoding); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; _local1.utmcs = utmcs; _local1.utmsr = utmsr; _local1.utmsc = utmsc; _local1.utmul = utmul; _local1.utmje = utmje; _local1.utmfl = utmfl; return (_local1); } public function get utmsc():String{ return ((_info.screenColorDepth + "-bit")); } } }//package com.google.analytics.coreSection 125//Buffer (com.google.analytics.core.Buffer) package com.google.analytics.core { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.data.*; public dynamic class Buffer { private var _SO:SharedObject; private var _data:Object; private var _OBJ:Object; private var _utmb:UTMB; private var _utmc:UTMC; private var _utma:UTMA; private var _debug:DebugConfiguration; private var _utmk:UTMK; private var _config:Configuration; private var _utmv:UTMV; private var _utmx:UTMX; private var _utmz:UTMZ; private var _volatile:Boolean; public function Buffer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Boolean=false, _arg4:Object=null){ var _local5:String; super(); _config = _arg1; _debug = _arg2; _data = _arg4; _volatile = _arg3; if (_volatile){ _OBJ = new Object(); if (_data){ for (_local5 in _data) { _OBJ[_local5] = _data[_local5]; }; }; }; } public function save():void{ var flushStatus:String; if (!isVolatile()){ flushStatus = null; try { flushStatus = _SO.flush(); } catch(e:Error) { _debug.warning("Error...Could not write SharedObject to disk"); }; switch (flushStatus){ case SharedObjectFlushStatus.PENDING: _debug.info("Requesting permission to save object..."); _SO.addEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); break; case SharedObjectFlushStatus.FLUSHED: _debug.info("Value flushed to disk."); break; }; }; } public function get utmv():UTMV{ if (!hasUTMV()){ _createUMTV(); }; return (_utmv); } public function get utmx():UTMX{ if (!hasUTMX()){ _createUMTX(); }; return (_utmx); } public function get utmz():UTMZ{ if (!hasUTMZ()){ _createUMTZ(); }; return (_utmz); } public function hasUTMA():Boolean{ if (_utma){ return (true); }; return (false); } public function hasUTMB():Boolean{ if (_utmb){ return (true); }; return (false); } public function hasUTMC():Boolean{ if (_utmc){ return (true); }; return (false); } public function clearCookies():void{ utma.reset(); utmb.reset(); utmc.reset(); utmz.reset(); utmv.reset(); utmk.reset(); } public function resetCurrentSession():void{ _clearUTMB(); _clearUTMC(); save(); } public function hasUTMK():Boolean{ if (_utmk){ return (true); }; return (false); } public function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String{ var _local3:String = toLinkerParams(); var _local4:String = _arg1; var _local5:Array = _arg1.split("#"); if (_local3){ if (_arg2){ if (1 >= _local5.length){ _local4 = (_local4 + ("#" + _local3)); } else { _local4 = (_local4 + ("&" + _local3)); }; } else { if (1 >= _local5.length){ if (_arg1.indexOf("?") > -1){ _local4 = (_local4 + "&"); } else { _local4 = (_local4 + "?"); }; _local4 = (_local4 + _local3); } else { _local4 = _local5[0]; if (_arg1.indexOf("?") > -1){ _local4 = (_local4 + "&"); } else { _local4 = (_local4 + "?"); }; _local4 = (_local4 + ((_local3 + "#") + _local5[1])); }; }; }; return (_local4); } public function generateCookiesHash():Number{ var _local1 = ""; _local1 = (_local1 + utma.valueOf()); _local1 = (_local1 + utmb.valueOf()); _local1 = (_local1 + utmc.valueOf()); _local1 = (_local1 + utmx.valueOf()); _local1 = (_local1 + utmz.valueOf()); _local1 = (_local1 + utmv.valueOf()); return (Utils.generateHash(_local1)); } private function _createUMTA():void{ _utma = new UTMA(); _utma.proxy = this; } private function _createUMTB():void{ _utmb = new UTMB(); _utmb.proxy = this; } private function _createUMTC():void{ _utmc = new UTMC(); } public function hasUTMV():Boolean{ if (_utmv){ return (true); }; return (false); } private function _createUMTK():void{ _utmk = new UTMK(); _utmk.proxy = this; } public function hasUTMX():Boolean{ if (_utmx){ return (true); }; return (false); } public function hasUTMZ():Boolean{ if (_utmz){ return (true); }; return (false); } private function _createUMTV():void{ _utmv = new UTMV(); _utmv.proxy = this; } private function _createUMTX():void{ _utmx = new UTMX(); _utmx.proxy = this; } private function _createUMTZ():void{ _utmz = new UTMZ(); _utmz.proxy = this; } public function updateUTMA(_arg1:Number):void{ if (_debug.verbose){ _debug.info((("updateUTMA( " + _arg1) + " )"), VisualDebugMode.advanced); }; if (!utma.isEmpty()){ if (isNaN(utma.sessionCount)){ utma.sessionCount = 1; } else { utma.sessionCount = (utma.sessionCount + 1); }; utma.lastTime = utma.currentTime; utma.currentTime = _arg1; }; } public function isGenuine():Boolean{ if (!hasUTMK()){ return (true); }; return ((utmk.hash == generateCookiesHash())); } private function _onFlushStatus(_arg1:NetStatusEvent):void{ _debug.info("User closed permission dialog..."); switch (_arg1.info.code){ case "SharedObject.Flush.Success": _debug.info("User granted permission -- value saved."); break; case "SharedObject.Flush.Failed": _debug.info("User denied permission -- value not saved."); break; }; _SO.removeEventListener(NetStatusEvent.NET_STATUS, _onFlushStatus); } public function toLinkerParams():String{ var _local1 = ""; _local1 = (_local1 + utma.toURLString()); _local1 = (_local1 + ("&" + utmb.toURLString())); _local1 = (_local1 + ("&" + utmc.toURLString())); _local1 = (_local1 + ("&" + utmx.toURLString())); _local1 = (_local1 + ("&" + utmz.toURLString())); _local1 = (_local1 + ("&" + utmv.toURLString())); _local1 = (_local1 + ("&__utmk=" + generateCookiesHash())); return (_local1); } private function _clearUTMA():void{ _utma = null; if (!isVolatile()){ _SO.data.utma = null; delete _SO.data.utma; }; } private function _clearUTMC():void{ _utmc = null; } private function _clearUTMB():void{ _utmb = null; if (!isVolatile()){ _SO.data.utmb = null; delete _SO.data.utmb; }; } public function update(_arg1:String, _arg2):void{ if (isVolatile()){ _OBJ[_arg1] = _arg2; } else { _SO.data[_arg1] = _arg2; }; } public function createSO():void{ var saveSO:Boolean; UTMZ.defaultTimespan = _config.conversionTimeout; UTMB.defaultTimespan = _config.sessionTimeout; if (!_volatile){ try { _SO = SharedObject.getLocal(_config.cookieName, _config.cookiePath); } catch(e:Error) { if (_debug.active){ _debug.warning(((("Shared Object " + _config.cookieName) + " failed to be set\nreason: ") + e.message)); }; }; saveSO = false; if (_SO.data.utma){ if (!hasUTMA()){ _createUMTA(); }; _utma.fromSharedObject(_SO.data.utma); if (_debug.verbose){ _debug.info(("found: " + _utma.toString(true)), VisualDebugMode.geek); }; if (_utma.isExpired()){ if (_debug.verbose){ _debug.warning("UTMA has expired", VisualDebugMode.advanced); }; _clearUTMA(); saveSO = true; }; }; if (_SO.data.utmb){ if (!hasUTMB()){ _createUMTB(); }; _utmb.fromSharedObject(_SO.data.utmb); if (_debug.verbose){ _debug.info(("found: " + _utmb.toString(true)), VisualDebugMode.geek); }; if (_utmb.isExpired()){ if (_debug.verbose){ _debug.warning("UTMB has expired", VisualDebugMode.advanced); }; _clearUTMB(); saveSO = true; }; }; if (_SO.data.utmc){ delete _SO.data.utmc; saveSO = true; }; if (_SO.data.utmk){ if (!hasUTMK()){ _createUMTK(); }; _utmk.fromSharedObject(_SO.data.utmk); if (_debug.verbose){ _debug.info(("found: " + _utmk.toString()), VisualDebugMode.geek); }; }; if (!hasUTMX()){ _createUMTX(); }; if (_SO.data.utmv){ if (!hasUTMV()){ _createUMTV(); }; _utmv.fromSharedObject(_SO.data.utmv); if (_debug.verbose){ _debug.info(("found: " + _utmv.toString(true)), VisualDebugMode.geek); }; if (_utmv.isExpired()){ if (_debug.verbose){ _debug.warning("UTMV has expired", VisualDebugMode.advanced); }; _clearUTMV(); saveSO = true; }; }; if (_SO.data.utmz){ if (!hasUTMZ()){ _createUMTZ(); }; _utmz.fromSharedObject(_SO.data.utmz); if (_debug.verbose){ _debug.info(("found: " + _utmz.toString(true)), VisualDebugMode.geek); }; if (_utmz.isExpired()){ if (_debug.verbose){ _debug.warning("UTMZ has expired", VisualDebugMode.advanced); }; _clearUTMZ(); saveSO = true; }; }; if (saveSO){ save(); }; }; } private function _clearUTMZ():void{ _utmz = null; if (!isVolatile()){ _SO.data.utmz = null; delete _SO.data.utmz; }; } private function _clearUTMV():void{ _utmv = null; if (!isVolatile()){ _SO.data.utmv = null; delete _SO.data.utmv; }; } public function isVolatile():Boolean{ return (_volatile); } public function get utma():UTMA{ if (!hasUTMA()){ _createUMTA(); }; return (_utma); } public function get utmb():UTMB{ if (!hasUTMB()){ _createUMTB(); }; return (_utmb); } public function get utmc():UTMC{ if (!hasUTMC()){ _createUMTC(); }; return (_utmc); } public function get utmk():UTMK{ if (!hasUTMK()){ _createUMTK(); }; return (_utmk); } } }//package com.google.analytics.coreSection 126//DocumentInfo (com.google.analytics.core.DocumentInfo) package com.google.analytics.core { import com.google.analytics.v4.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; public class DocumentInfo { private var _pageURL:String; private var _utmr:String; private var _config:Configuration; private var _adSense:AdSenseGlobals; private var _info:Environment; public function DocumentInfo(_arg1:Configuration, _arg2:Environment, _arg3:String, _arg4:String=null, _arg5:AdSenseGlobals=null){ _config = _arg1; _info = _arg2; _utmr = _arg3; _pageURL = _arg4; _adSense = _arg5; } public function get utmr():String{ if (!_utmr){ return ("-"); }; return (_utmr); } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } private function _renderPageURL(_arg1:String=""):String{ var _local2:String = _info.locationPath; var _local3:String = _info.locationSearch; if (((!(_arg1)) || ((_arg1 == "")))){ _arg1 = (_local2 + unescape(_local3)); if (_arg1 == ""){ _arg1 = "/"; }; }; return (_arg1); } public function get utmp():String{ return (_renderPageURL(_pageURL)); } public function get utmhid():String{ return (String(_generateHitId())); } private function _generateHitId():Number{ var _local1:Number; if (((_adSense.hid) && (!((_adSense.hid == ""))))){ _local1 = Number(_adSense.hid); } else { _local1 = Math.round((Math.random() * 2147483647)); _adSense.hid = String(_local1); }; return (_local1); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (((_config.detectTitle) && (!((utmdt == ""))))){ _local1.utmdt = utmdt; }; _local1.utmhid = utmhid; _local1.utmr = utmr; _local1.utmp = utmp; return (_local1); } public function get utmdt():String{ return (_info.documentTitle); } } }//package com.google.analytics.coreSection 127//Domain (com.google.analytics.core.Domain) package com.google.analytics.core { import com.google.analytics.debug.*; public class Domain { private var _mode:DomainNameMode; private var _debug:DebugConfiguration; private var _name:String; public function Domain(_arg1:DomainNameMode=null, _arg2:String="", _arg3:DebugConfiguration=null){ _debug = _arg3; if (_arg1 == null){ _arg1 = DomainNameMode.auto; }; _mode = _arg1; if (_arg1 == DomainNameMode.custom){ this.name = _arg2; } else { _name = _arg2; }; } public function get mode():DomainNameMode{ return (_mode); } public function set mode(_arg1:DomainNameMode):void{ _mode = _arg1; if (_mode == DomainNameMode.none){ _name = ""; }; } public function get name():String{ return (_name); } public function set name(_arg1:String):void{ if (((!((_arg1.charAt(0) == "."))) && (_debug))){ _debug.warning(("missing leading period \".\", cookie will only be accessible on " + _arg1), VisualDebugMode.geek); }; _name = _arg1; } } }//package com.google.analytics.coreSection 128//DomainNameMode (com.google.analytics.core.DomainNameMode) package com.google.analytics.core { public class DomainNameMode { private var _value:int; private var _name:String; public static const custom:DomainNameMode = new DomainNameMode(2, "custom"); ; public static const none:DomainNameMode = new DomainNameMode(0, "none"); ; public static const auto:DomainNameMode = new DomainNameMode(1, "auto"); ; public function DomainNameMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.coreSection 129//Ecommerce (com.google.analytics.core.Ecommerce) package com.google.analytics.core { import com.google.analytics.debug.*; import com.google.analytics.ecommerce.*; public class Ecommerce { private var _debug:DebugConfiguration; private var _trans:Array; public function Ecommerce(_arg1:DebugConfiguration){ this._debug = _arg1; _trans = new Array(); } public function getTransLength():Number{ return (_trans.length); } public function getTransFromArray(_arg1:Number):Transaction{ return (_trans[_arg1]); } public function addTransaction(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String, _arg7:String, _arg8:String):Transaction{ var _local9:Transaction; _local9 = getTransaction(_arg1); if (_local9 == null){ _local9 = new Transaction(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); _trans.push(_local9); } else { _local9.affiliation = _arg2; _local9.total = _arg3; _local9.tax = _arg4; _local9.shipping = _arg5; _local9.city = _arg6; _local9.state = _arg7; _local9.country = _arg8; }; return (_local9); } public function getTransaction(_arg1:String):Transaction{ var _local2:Number; _local2 = 0; while (_local2 < _trans.length) { if (_trans[_local2].id == _arg1){ return (_trans[_local2]); }; _local2++; }; return (null); } } }//package com.google.analytics.coreSection 130//EventInfo (com.google.analytics.core.EventInfo) package com.google.analytics.core { import com.google.analytics.data.*; import com.google.analytics.utils.*; public class EventInfo { private var _ext10:X10; private var _isEventHit:Boolean; private var _x10:X10; public function EventInfo(_arg1:Boolean, _arg2:X10, _arg3:X10=null){ _isEventHit = _arg1; _x10 = _arg2; _ext10 = _arg3; } public function toURLString():String{ var _local1:Variables = toVariables(); return (_local1.toString()); } public function get utmt():String{ return ("event"); } public function get utme():String{ return (_x10.renderMergedUrlString(_ext10)); } public function toVariables():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; if (_isEventHit){ _local1.utmt = utmt; }; _local1.utme = utme; return (_local1); } } }//package com.google.analytics.coreSection 131//EventTracker (com.google.analytics.core.EventTracker) package com.google.analytics.core { import com.google.analytics.v4.*; public class EventTracker { private var _parent:GoogleAnalyticsAPI; public var name:String; public function EventTracker(_arg1:String, _arg2:GoogleAnalyticsAPI){ this.name = _arg1; _parent = _arg2; } public function trackEvent(_arg1:String, _arg2:String=null, _arg3:Number=NaN):Boolean{ return (_parent.trackEvent(name, _arg1, _arg2, _arg3)); } } }//package com.google.analytics.coreSection 132//ga_internal (com.google.analytics.core.ga_internal) package com.google.analytics.core { public namespace ga_internal; }//package com.google.analytics.coreSection 133//GIFRequest (com.google.analytics.core.GIFRequest) package com.google.analytics.core { import flash.events.*; import flash.display.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import flash.system.*; import flash.net.*; import com.google.analytics.utils.*; public class GIFRequest { private var _info:Environment; private var _count:int; private var _utmac:String; private var _alertcount:int; private var _debug:DebugConfiguration; private var _lastRequest:URLRequest; private var _buffer:Buffer; private var _config:Configuration; private var _requests:Array; public function GIFRequest(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:Buffer, _arg4:Environment){ _config = _arg1; _debug = _arg2; _buffer = _arg3; _info = _arg4; _count = 0; _alertcount = 0; _requests = []; } public function get utmn():String{ return ((Utils.generate32bitRandom() as String)); } public function onIOError(_arg1:IOErrorEvent):void{ var _local2:String = _lastRequest.url; var _local3:String = String((_requests.length - 1)); var _local4 = (("Gif Request #" + _local3) + " failed"); if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local2.indexOf("?") > -1){ _local2 = _local2.split("?")[0]; }; _local2 = _shortenURL(_local2); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local4 = (_local4 + ((" \"" + _local2) + "\" does not exists or is unreachable")); }; _debug.failure(_local4); } else { _debug.warning(_local4); }; _removeListeners(_arg1.target); } public function send(_arg1:String, _arg2:Variables=null, _arg3:Boolean=false, _arg4:Boolean=false):void{ var _local5:String; var _local6:URLRequest; var _local7:URLRequest; _utmac = _arg1; if (!_arg2){ _arg2 = new Variables(); }; _arg2.URIencode = false; _arg2.pre = ["utmwv", "utmn", "utmhn", "utmt", "utme", "utmcs", "utmsr", "utmsc", "utmul", "utmje", "utmfl", "utmdt", "utmhid", "utmr", "utmp"]; _arg2.post = ["utmcc"]; if (_debug.verbose){ _debug.info(((("tracking: " + _buffer.utmb.trackCount) + "/") + _config.trackingLimitPerSession), VisualDebugMode.geek); }; if ((((_buffer.utmb.trackCount < _config.trackingLimitPerSession)) || (_arg3))){ if (_arg4){ updateToken(); }; if (((((_arg3) || (!(_arg4)))) || ((_buffer.utmb.token >= 1)))){ if (((!(_arg3)) && (_arg4))){ _buffer.utmb.token = (_buffer.utmb.token - 1); }; _buffer.utmb.trackCount = (_buffer.utmb.trackCount + 1); if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; _arg2.utmwv = utmwv; _arg2.utmn = Utils.generate32bitRandom(); if (_info.domainName != ""){ _arg2.utmhn = _info.domainName; }; if (_config.sampleRate < 1){ _arg2.utmsp = (_config.sampleRate * 100); }; if ((((_config.serverMode == ServerOperationMode.local)) || ((_config.serverMode == ServerOperationMode.both)))){ _local5 = _info.locationSWFPath; if (_local5.lastIndexOf("/") > 0){ _local5 = _local5.substring(0, _local5.lastIndexOf("/")); }; _local6 = new URLRequest(); if (_config.localGIFpath.indexOf("http") == 0){ _local6.url = _config.localGIFpath; } else { _local6.url = (_local5 + _config.localGIFpath); }; _local6.url = (_local6.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local6); } else { sendRequest(_local6); }; }; if ((((_config.serverMode == ServerOperationMode.remote)) || ((_config.serverMode == ServerOperationMode.both)))){ _local7 = new URLRequest(); if (_info.protocol == Protocols.HTTPS){ _local7.url = _config.secureRemoteGIFpath; } else { if (_info.protocol == Protocols.HTTP){ _local7.url = _config.remoteGIFpath; } else { _local7.url = _config.remoteGIFpath; }; }; _arg2.utmac = utmac; _arg2.utmcc = encodeURIComponent(utmcc); _local7.url = (_local7.url + ("?" + _arg2.toString())); if (((_debug.active) && (_debug.GIFRequests))){ _debugSend(_local7); } else { sendRequest(_local7); }; }; }; }; } public function onSecurityError(_arg1:SecurityErrorEvent):void{ if (_debug.GIFRequests){ _debug.failure(_arg1.text); }; } public function get utmsp():String{ return (((_config.sampleRate * 100) as String)); } public function get utmcc():String{ var _local1:Array = []; if (_buffer.hasUTMA()){ _local1.push((_buffer.utma.toURLString() + ";")); }; if (_buffer.hasUTMZ()){ _local1.push((_buffer.utmz.toURLString() + ";")); }; if (_buffer.hasUTMV()){ _local1.push((_buffer.utmv.toURLString() + ";")); }; return (_local1.join("+")); } public function get utmac():String{ return (_utmac); } public function get utmwv():String{ return (_config.version); } public function sendRequest(_arg1:URLRequest):void{ var request = _arg1; var loader:Loader = new Loader(); loader.name = String(_count++); var context:LoaderContext = new LoaderContext(false); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onIOError); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); _lastRequest = request; _requests[loader.name] = new RequestObject(request); try { loader.load(request, context); } catch(e:Error) { _debug.failure("\"Loader.load()\" could not instanciate Gif Request"); }; } private function _removeListeners(_arg1:Object):void{ _arg1.removeEventListener(IOErrorEvent.IO_ERROR, onIOError); _arg1.removeEventListener(Event.COMPLETE, onComplete); } public function updateToken():void{ var _local2:Number; var _local1:Number = new Date().getTime(); _local2 = ((_local1 - _buffer.utmb.lastTime) * (_config.tokenRate / 1000)); if (_debug.verbose){ _debug.info(("tokenDelta: " + _local2), VisualDebugMode.geek); }; if (_local2 >= 1){ _buffer.utmb.token = Math.min(Math.floor((_buffer.utmb.token + _local2)), _config.bucketCapacity); _buffer.utmb.lastTime = _local1; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); }; }; } public function get utmhn():String{ return (_info.domainName); } private function _shortenURL(_arg1:String):String{ var _local2:Array; if (_arg1.length > 60){ _local2 = _arg1.split("/"); while (_arg1.length > 60) { _local2.shift(); _arg1 = ("../" + _local2.join("/")); }; }; return (_arg1); } private function _debugSend(_arg1:URLRequest):void{ var _local3:String; var _local2 = ""; switch (_debug.mode){ case VisualDebugMode.geek: _local2 = ((("Gif Request #" + _alertcount) + ":\n") + _arg1.url); break; case VisualDebugMode.advanced: _local3 = _arg1.url; if (_local3.indexOf("?") > -1){ _local3 = _local3.split("?")[0]; }; _local3 = _shortenURL(_local3); _local2 = (((("Send Gif Request #" + _alertcount) + ":\n") + _local3) + " ?"); break; case VisualDebugMode.basic: default: _local2 = (((("Send " + _config.serverMode.toString()) + " Gif Request #") + _alertcount) + " ?"); }; _debug.alertGifRequest(_local2, _arg1, this); _alertcount++; } public function onComplete(_arg1:Event):void{ var _local2:String = _arg1.target.loader.name; _requests[_local2].complete(); var _local3 = (("Gif Request #" + _local2) + " sent"); var _local4:String = _requests[_local2].request.url; if (_debug.GIFRequests){ if (!_debug.verbose){ if (_local4.indexOf("?") > -1){ _local4 = _local4.split("?")[0]; }; _local4 = _shortenURL(_local4); }; if (int(_debug.mode) > int(VisualDebugMode.basic)){ _local3 = (_local3 + ((" to \"" + _local4) + "\"")); }; _debug.success(_local3); } else { _debug.info(_local3); }; _removeListeners(_arg1.target); } } }//package com.google.analytics.coreSection 134//IdleTimer (com.google.analytics.core.IdleTimer) package com.google.analytics.core { import flash.events.*; import flash.display.*; import flash.utils.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; public class IdleTimer { private var _stage:Stage; private var _loop:Timer; private var _lastMove:int; private var _inactivity:Number; private var _debug:DebugConfiguration; private var _session:Timer; private var _buffer:Buffer; public function IdleTimer(_arg1:Configuration, _arg2:DebugConfiguration, _arg3:DisplayObject, _arg4:Buffer){ var _local5:Number = _arg1.idleLoop; var _local6:Number = _arg1.idleTimeout; var _local7:Number = _arg1.sessionTimeout; _loop = new Timer((_local5 * 1000)); _session = new Timer((_local7 * 1000), 1); _debug = _arg2; _stage = _arg3.stage; _buffer = _arg4; _lastMove = getTimer(); _inactivity = (_local6 * 1000); _loop.addEventListener(TimerEvent.TIMER, checkForIdle); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); _stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove); _debug.info(((((("delay: " + _local5) + "sec , inactivity: ") + _local6) + "sec, sessionTimeout: ") + _local7), VisualDebugMode.geek); _loop.start(); } private function onMouseMove(_arg1:MouseEvent):void{ _lastMove = getTimer(); if (_session.running){ _debug.info("session timer reset", VisualDebugMode.geek); _session.reset(); }; } public function endSession(_arg1:TimerEvent):void{ _session.removeEventListener(TimerEvent.TIMER_COMPLETE, endSession); _debug.info("session timer end session", VisualDebugMode.geek); _session.reset(); _buffer.resetCurrentSession(); _debug.info(_buffer.utmb.toString(), VisualDebugMode.geek); _debug.info(_buffer.utmc.toString(), VisualDebugMode.geek); _session.addEventListener(TimerEvent.TIMER_COMPLETE, endSession); } public function checkForIdle(_arg1:TimerEvent):void{ var _local2:int = getTimer(); if ((_local2 - _lastMove) >= _inactivity){ if (!_session.running){ _debug.info("session timer start", VisualDebugMode.geek); _session.start(); }; }; } } }//package com.google.analytics.coreSection 135//Organic (com.google.analytics.core.Organic) package com.google.analytics.core { import com.google.analytics.utils.*; public class Organic { private var _sourcesCache:Array; private var _sourcesEngine:Array; private var _ignoredKeywords:Array; private var _ignoredReferralsCache:Object; private var _ignoredReferrals:Array; private var _ignoredKeywordsCache:Object; private var _sources:Array; public static var throwErrors:Boolean = false; public function Organic(){ _sources = []; _sourcesCache = []; _sourcesEngine = []; _ignoredReferrals = []; _ignoredReferralsCache = {}; _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function isIgnoredKeyword(_arg1:String):Boolean{ if (_ignoredKeywordsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function getKeywordValue(_arg1:OrganicReferrer, _arg2:String):String{ var _local3:String = _arg1.keyword; return (getKeywordValueFromPath(_local3, _arg2)); } public function isIgnoredReferral(_arg1:String):Boolean{ if (_ignoredReferralsCache.hasOwnProperty(_arg1)){ return (true); }; return (false); } public function clear():void{ clearEngines(); clearIgnoredReferrals(); clearIgnoredKeywords(); } public function get count():int{ return (_sources.length); } public function get ignoredKeywordsCount():int{ return (_ignoredKeywords.length); } public function match(_arg1:String):Boolean{ if (_arg1 == ""){ return (false); }; _arg1 = _arg1.toLowerCase(); if (_sourcesEngine[_arg1] != undefined){ return (true); }; return (false); } public function clearIgnoredKeywords():void{ _ignoredKeywords = []; _ignoredKeywordsCache = {}; } public function addSource(_arg1:String, _arg2:String):void{ var _local3:OrganicReferrer = new OrganicReferrer(_arg1, _arg2); if (_sourcesCache[_local3.toString()] == undefined){ _sources.push(_local3); _sourcesCache[_local3.toString()] = (_sources.length - 1); if (_sourcesEngine[_local3.engine] == undefined){ _sourcesEngine[_local3.engine] = [(_sources.length - 1)]; } else { _sourcesEngine[_local3.engine].push((_sources.length - 1)); }; } else { if (throwErrors){ throw (new Error((_local3.toString() + " already exists, we don't add it."))); }; }; } public function clearEngines():void{ _sources = []; _sourcesCache = []; _sourcesEngine = []; } public function get ignoredReferralsCount():int{ return (_ignoredReferrals.length); } public function addIgnoredReferral(_arg1:String):void{ if (_ignoredReferralsCache[_arg1] == undefined){ _ignoredReferrals.push(_arg1); _ignoredReferralsCache[_arg1] = (_ignoredReferrals.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function clearIgnoredReferrals():void{ _ignoredReferrals = []; _ignoredReferralsCache = {}; } public function getReferrerByName(_arg1:String):OrganicReferrer{ var _local2:int; if (match(_arg1)){ _local2 = _sourcesEngine[_arg1][0]; return (_sources[_local2]); }; return (null); } public function addIgnoredKeyword(_arg1:String):void{ if (_ignoredKeywordsCache[_arg1] == undefined){ _ignoredKeywords.push(_arg1); _ignoredKeywordsCache[_arg1] = (_ignoredKeywords.length - 1); } else { if (throwErrors){ throw (new Error((("\"" + _arg1) + "\" already exists, we don't add it."))); }; }; } public function get sources():Array{ return (_sources); } public static function getKeywordValueFromPath(_arg1:String, _arg2:String):String{ var _local3:String; var _local4:Variables; if (_arg2.indexOf((_arg1 + "=")) > -1){ if (_arg2.charAt(0) == "?"){ _arg2 = _arg2.substr(1); }; _arg2 = _arg2.split("+").join("%20"); _local4 = new Variables(_arg2); _local3 = _local4[_arg1]; }; return (_local3); } } }//package com.google.analytics.coreSection 136//OrganicReferrer (com.google.analytics.core.OrganicReferrer) package com.google.analytics.core { public class OrganicReferrer { private var _engine:String; private var _keyword:String; public function OrganicReferrer(_arg1:String, _arg2:String){ this.engine = _arg1; this.keyword = _arg2; } public function get keyword():String{ return (_keyword); } public function get engine():String{ return (_engine); } public function set engine(_arg1:String):void{ _engine = _arg1.toLowerCase(); } public function toString():String{ return (((engine + "?") + keyword)); } public function set keyword(_arg1:String):void{ _keyword = _arg1.toLowerCase(); } } }//package com.google.analytics.coreSection 137//RequestObject (com.google.analytics.core.RequestObject) package com.google.analytics.core { import flash.utils.*; import flash.net.*; public class RequestObject { public var start:int; public var end:int; public var request:URLRequest; public function RequestObject(_arg1:URLRequest){ start = getTimer(); this.request = _arg1; } public function hasCompleted():Boolean{ return ((end > 0)); } public function toString():String{ var _local1:Array = []; _local1.push((("duration: " + duration) + "ms")); _local1.push(("url: " + request.url)); return ((("{ " + _local1.join(", ")) + " }")); } public function complete():void{ end = getTimer(); } public function get duration():int{ if (!hasCompleted()){ return (0); }; return ((end - start)); } } }//package com.google.analytics.coreSection 138//ServerOperationMode (com.google.analytics.core.ServerOperationMode) package com.google.analytics.core { public class ServerOperationMode { private var _value:int; private var _name:String; public static const both:ServerOperationMode = new ServerOperationMode(2, "both"); ; public static const remote:ServerOperationMode = new ServerOperationMode(1, "remote"); ; public static const local:ServerOperationMode = new ServerOperationMode(0, "local"); ; public function ServerOperationMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.coreSection 139//TrackerCache (com.google.analytics.core.TrackerCache) package com.google.analytics.core { import com.google.analytics.v4.*; import flash.errors.*; public class TrackerCache implements GoogleAnalyticsAPI { public var tracker:GoogleAnalyticsAPI; private var _ar:Array; public static var CACHE_THROW_ERROR:Boolean; public function TrackerCache(_arg1:GoogleAnalyticsAPI=null){ this.tracker = _arg1; _ar = []; } public function size():uint{ return (_ar.length); } public function flush():void{ var _local1:Object; var _local2:String; var _local3:Array; var _local4:int; var _local5:int; if (tracker == null){ return; }; if (size() > 0){ _local4 = _ar.length; while (_local5 < _local4) { _local1 = _ar.shift(); _local2 = (_local1.name as String); _local3 = (_local1.args as Array); if (((!((_local2 == null))) && ((_local2 in tracker)))){ (tracker[_local2] as Function).apply(tracker, _local3); }; _local5++; }; }; } public function enqueue(_arg1:String, ... _args):Boolean{ if (_arg1 == null){ return (false); }; _ar.push({name:_arg1, args:_args}); return (true); } public function link(_arg1:String, _arg2:Boolean=false):void{ enqueue("link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ enqueue("addOrganic", _arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ enqueue("setAllowLinker", _arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ enqueue("trackEvent", _arg1, _arg2, _arg3, _arg4); return (true); } public function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getLinkerUrl' method for the moment.")); }; return (""); } public function getClientInfo():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getClientInfo' method for the moment.")); }; return (false); } public function trackTrans():void{ enqueue("trackTrans"); } public function trackPageview(_arg1:String=""):void{ enqueue("trackPageview", _arg1); } public function setClientInfo(_arg1:Boolean):void{ enqueue("setClientInfo", _arg1); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ enqueue("linkByPost", _arg1, _arg2); } public function setCookieTimeout(_arg1:int):void{ enqueue("setCookieTimeout", _arg1); } public function isEmpty():Boolean{ return ((_ar.length == 0)); } public function getDetectTitle():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectTitle' method for the moment.")); }; return (false); } public function resetSession():void{ enqueue("resetSession"); } public function setDetectFlash(_arg1:Boolean):void{ enqueue("setDetectFlash", _arg1); } public function clear():void{ _ar = []; } public function setCampNameKey(_arg1:String):void{ enqueue("setCampNameKey", _arg1); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ enqueue("addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function createEventTracker(_arg1:String):EventTracker{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'createEventTracker' method for the moment.")); }; return (null); } public function clearIgnoredOrganic():void{ enqueue("clearIgnoredOrganic"); } public function setVar(_arg1:String):void{ enqueue("setVar", _arg1); } public function setDomainName(_arg1:String):void{ enqueue("setDomainName", _arg1); } public function setCampSourceKey(_arg1:String):void{ enqueue("setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):void{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'addTrans' method for the moment.")); }; } public function setCampContentKey(_arg1:String):void{ enqueue("setCampContentKey", _arg1); } public function setLocalServerMode():void{ enqueue("setLocalServerMode"); } public function getLocalGifPath():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getLocalGifPath' method for the moment.")); }; return (""); } public function setAllowAnchor(_arg1:Boolean):void{ enqueue("setAllowAnchor", _arg1); } public function clearIgnoredRef():void{ enqueue("clearIgnoredRef"); } public function setLocalGifPath(_arg1:String):void{ enqueue("setLocalGifPath", _arg1); } public function getVersion():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getVersion' method for the moment.")); }; return (""); } public function setCookiePath(_arg1:String):void{ enqueue("setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ enqueue("setSampleRate", _arg1); } public function setDetectTitle(_arg1:Boolean):void{ enqueue("setDetectTitle", _arg1); } public function setAllowHash(_arg1:Boolean):void{ enqueue("setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ enqueue("addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ enqueue("setCampNOKey", _arg1); } public function getServiceMode():ServerOperationMode{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getServiceMode' method for the moment.")); }; return (null); } public function setLocalRemoteServerMode():void{ enqueue("setLocalRemoteServerMode"); } public function cookiePathCopy(_arg1:String):void{ enqueue("cookiePathCopy", _arg1); } public function getDetectFlash():Boolean{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getDetectFlash' method for the moment.")); }; return (false); } public function setCampaignTrack(_arg1:Boolean):void{ enqueue("setCampaignTrack", _arg1); } public function clearOrganic():void{ enqueue("clearOrganic"); } public function setCampTermKey(_arg1:String):void{ enqueue("setCampTermKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ enqueue("addIgnoredRef", _arg1); } public function setCampMediumKey(_arg1:String):void{ enqueue("setCampMediumKey", _arg1); } public function setSessionTimeout(_arg1:int):void{ enqueue("setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ enqueue("setRemoteServerMode"); } public function element(){ return (_ar[0]); } public function getAccount():String{ if (CACHE_THROW_ERROR){ throw (new IllegalOperationError("The tracker is not ready and you can use the 'getAccount' method for the moment.")); }; return (""); } } }//package com.google.analytics.coreSection 140//TrackerMode (com.google.analytics.core.TrackerMode) package com.google.analytics.core { public class TrackerMode { public static const BRIDGE:String = "Bridge"; public static const AS3:String = "AS3"; } }//package com.google.analytics.coreSection 141//Utils (com.google.analytics.core.Utils) package com.google.analytics.core { public class Utils { public static function trim(_arg1:String, _arg2:Boolean=false):String{ var _local5:int; var _local6:int; var _local7:int; if (_arg1 == ""){ return (""); }; var _local3:Array = [" ", "\n", "\r", "\t"]; var _local4:String = _arg1; if (_arg2){ _local5 = 0; while ((((_local5 < _local3.length)) && ((_local4.indexOf(_local3[_local5]) > -1)))) { _local4 = _local4.split(_local3[_local5]).join(""); _local5++; }; } else { _local6 = 0; while ((((_local6 < _local4.length)) && ((_local3.indexOf(_local4.charAt(_local6)) > -1)))) { _local6++; }; _local4 = _local4.substr(_local6); _local7 = (_local4.length - 1); while ((((_local7 >= 0)) && ((_local3.indexOf(_local4.charAt(_local7)) > -1)))) { _local7--; }; _local4 = _local4.substring(0, (_local7 + 1)); }; return (_local4); } public static function generateHash(_arg1:String):int{ var _local4:int; var _local5:int; var _local2 = 1; var _local3:int; if (((!((_arg1 == null))) && (!((_arg1 == ""))))){ _local2 = 0; _local4 = (_arg1.length - 1); while (_local4 >= 0) { _local5 = _arg1.charCodeAt(_local4); _local2 = ((((_local2 << 6) & 268435455) + _local5) + (_local5 << 14)); _local3 = (_local2 & 266338304); if (_local3 != 0){ _local2 = (_local2 ^ (_local3 >> 21)); }; _local4--; }; }; return (_local2); } public static function generate32bitRandom():int{ return (Math.round((Math.random() * 2147483647))); } public static function validateAccount(_arg1:String):Boolean{ var _local2:RegExp = /^UA-[0-9]*-[0-9]*$/; return (_local2.test(_arg1)); } } }//package com.google.analytics.coreSection 142//Cookie (com.google.analytics.data.Cookie) package com.google.analytics.data { public interface Cookie { function fromSharedObject(_arg1:Object):void; function toURLString():String; function get creation():Date; function toSharedObject():Object; function isExpired():Boolean; function set creation(_arg1:Date):void; function set expiration(_arg1:Date):void; function get expiration():Date; } }//package com.google.analytics.dataSection 143//UTMA (com.google.analytics.data.UTMA) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMA extends UTMCookie { private var _sessionId:Number; private var _domainHash:Number; private var _firstTime:Number; private var _currentTime:Number; private var _lastTime:Number; private var _sessionCount:Number; public function UTMA(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:Number=NaN, _arg6:Number=NaN){ super("utma", "__utma", ["domainHash", "sessionId", "firstTime", "lastTime", "currentTime", "sessionCount"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.sessionId = _arg2; this.firstTime = _arg3; this.lastTime = _arg4; this.currentTime = _arg5; this.sessionCount = _arg6; } public function get lastTime():Number{ return (_lastTime); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function set currentTime(_arg1:Number):void{ _currentTime = _arg1; update(); } public function get sessionId():Number{ return (_sessionId); } public function get sessionCount():Number{ return (_sessionCount); } public function get firstTime():Number{ return (_firstTime); } public function get currentTime():Number{ return (_currentTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set sessionId(_arg1:Number):void{ _sessionId = _arg1; update(); } public function set sessionCount(_arg1:Number):void{ _sessionCount = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function set firstTime(_arg1:Number):void{ _firstTime = _arg1; update(); } } }//package com.google.analytics.dataSection 144//UTMB (com.google.analytics.data.UTMB) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMB extends UTMCookie { private var _trackCount:Number; private var _lastTime:Number; private var _domainHash:Number; private var _token:Number; public static var defaultTimespan:Number = Timespan.thirtyminutes; public function UTMB(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN){ super("utmb", "__utmb", ["domainHash", "trackCount", "token", "lastTime"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.trackCount = _arg2; this.token = _arg3; this.lastTime = _arg4; } public function set token(_arg1:Number):void{ _token = _arg1; update(); } public function set trackCount(_arg1:Number):void{ _trackCount = _arg1; update(); } public function get lastTime():Number{ return (_lastTime); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set lastTime(_arg1:Number):void{ _lastTime = _arg1; update(); } public function get domainHash():Number{ return (_domainHash); } public function get token():Number{ return (_token); } public function get trackCount():Number{ return (_trackCount); } } }//package com.google.analytics.dataSection 145//UTMC (com.google.analytics.data.UTMC) package com.google.analytics.data { public class UTMC extends UTMCookie { private var _domainHash:Number; public function UTMC(_arg1:Number=NaN){ super("utmc", "__utmc", ["domainHash"]); this.domainHash = _arg1; } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } } }//package com.google.analytics.dataSection 146//UTMCookie (com.google.analytics.data.UTMCookie) package com.google.analytics.data { import com.google.analytics.core.*; public class UTMCookie implements Cookie { protected var inURL:String; protected var name:String; private var _creation:Date; private var _expiration:Date; public var proxy:Buffer; protected var fields:Array; private var _timespan:Number; public function UTMCookie(_arg1:String, _arg2:String, _arg3:Array, _arg4:Number=0){ this.name = _arg1; this.inURL = _arg2; this.fields = _arg3; _timestamp(_arg4); } public function isEmpty():Boolean{ var _local2:String; var _local1:int; var _local3:int; while (_local3 < fields.length) { _local2 = fields[_local3]; if ((((this[_local2] is Number)) && (isNaN(this[_local2])))){ _local1++; } else { if ((((this[_local2] is String)) && ((this[_local2] == "")))){ _local1++; }; }; _local3++; }; if (_local1 == fields.length){ return (true); }; return (false); } public function resetTimestamp(_arg1:Number=NaN):void{ if (!isNaN(_arg1)){ _timespan = _arg1; }; _creation = null; _expiration = null; _timestamp(_timespan); } protected function update():void{ resetTimestamp(); if (proxy){ proxy.update(name, toSharedObject()); }; } public function reset():void{ var _local1:String; var _local2:int; while (_local2 < fields.length) { _local1 = fields[_local2]; if ((this[_local1] is Number)){ this[_local1] = NaN; } else { if ((this[_local1] is String)){ this[_local1] = ""; }; }; _local2++; }; resetTimestamp(); update(); } public function fromSharedObject(_arg1:Object):void{ var _local2:String; var _local3:int = fields.length; var _local4:int; while (_local4 < _local3) { _local2 = fields[_local4]; if (_arg1[_local2]){ this[_local2] = _arg1[_local2]; }; _local4++; }; if (_arg1.creation){ this.creation = _arg1.creation; }; if (_arg1.expiration){ this.expiration = _arg1.expiration; }; } private function _timestamp(_arg1:Number):void{ creation = new Date(); _timespan = _arg1; if (_arg1 > 0){ expiration = new Date((creation.valueOf() + _arg1)); }; } public function isExpired():Boolean{ var _local1:Date = new Date(); var _local2:Number = (expiration.valueOf() - _local1.valueOf()); if (_local2 <= 0){ return (true); }; return (false); } public function set expiration(_arg1:Date):void{ _expiration = _arg1; } public function get creation():Date{ return (_creation); } public function valueOf():String{ var _local2:String; var _local3:*; var _local4:Array; var _local1:Array = []; var _local5 = ""; var _local6:int; while (_local6 < fields.length) { _local2 = fields[_local6]; _local3 = this[_local2]; if ((_local3 is String)){ if (_local3 == ""){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; } else { if ((_local3 is Number)){ if (_local3 == 0){ _local1.push(_local3); } else { if (isNaN(_local3)){ _local3 = "-"; _local1.push(_local3); } else { _local1.push(_local3); }; }; }; }; _local6++; }; if (isEmpty()){ return ("-"); }; return (("" + _local1.join("."))); } public function toURLString():String{ return (((inURL + "=") + valueOf())); } public function get expiration():Date{ if (_expiration){ return (_expiration); }; return (new Date((new Date().valueOf() + 1000))); } public function toSharedObject():Object{ var _local2:String; var _local3:*; var _local1:Object = {}; var _local4:int; for (;_local4 < fields.length;_local4++) { _local2 = fields[_local4]; _local3 = this[_local2]; if ((_local3 is String)){ _local1[_local2] = _local3; } else { if (_local3 == 0){ _local1[_local2] = _local3; } else { if (isNaN(_local3)){ continue; } else { _local1[_local2] = _local3; }; }; }; }; _local1.creation = creation; _local1.expiration = expiration; return (_local1); } public function toString(_arg1:Boolean=false):String{ var _local3:String; var _local4:*; var _local2:Array = []; var _local5:int = fields.length; var _local6:int; for (;_local6 < _local5;_local6++) { _local3 = fields[_local6]; _local4 = this[_local3]; if ((_local4 is String)){ _local2.push((((_local3 + ": \"") + _local4) + "\"")); } else { if (_local4 == 0){ _local2.push(((_local3 + ": ") + _local4)); } else { if (isNaN(_local4)){ continue; } else { _local2.push(((_local3 + ": ") + _local4)); }; }; }; }; var _local7 = (((name.toUpperCase() + " {") + _local2.join(", ")) + "}"); if (_arg1){ _local7 = (_local7 + (((" creation:" + creation) + ", expiration:") + expiration)); }; return (_local7); } public function set creation(_arg1:Date):void{ _creation = _arg1; } } }//package com.google.analytics.dataSection 147//UTMK (com.google.analytics.data.UTMK) package com.google.analytics.data { public class UTMK extends UTMCookie { private var _hash:Number; public function UTMK(_arg1:Number=NaN){ super("utmk", "__utmk", ["hash"]); this.hash = _arg1; } public function set hash(_arg1:Number):void{ _hash = _arg1; update(); } public function get hash():Number{ return (_hash); } } }//package com.google.analytics.dataSection 148//UTMV (com.google.analytics.data.UTMV) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMV extends UTMCookie { private var _domainHash:Number; private var _value:String; public function UTMV(_arg1:Number=NaN, _arg2:String=""){ super("utmv", "__utmv", ["domainHash", "value"], (Timespan.twoyears * 1000)); this.domainHash = _arg1; this.value = _arg2; } public function get value():String{ return (_value); } public function get domainHash():Number{ return (_domainHash); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set value(_arg1:String):void{ _value = _arg1; update(); } } }//package com.google.analytics.dataSection 149//UTMX (com.google.analytics.data.UTMX) package com.google.analytics.data { public class UTMX extends UTMCookie { private var _value:String; public function UTMX(){ super("utmx", "__utmx", ["value"], 0); _value = "-"; } public function get value():String{ return (_value); } public function set value(_arg1:String):void{ _value = _arg1; } } }//package com.google.analytics.dataSection 150//UTMZ (com.google.analytics.data.UTMZ) package com.google.analytics.data { import com.google.analytics.utils.*; public class UTMZ extends UTMCookie { private var _campaignTracking:String; private var _campaignCreation:Number; private var _responseCount:Number; private var _domainHash:Number; private var _campaignSessions:Number; public static var defaultTimespan:Number = Timespan.sixmonths; public function UTMZ(_arg1:Number=NaN, _arg2:Number=NaN, _arg3:Number=NaN, _arg4:Number=NaN, _arg5:String=""){ super("utmz", "__utmz", ["domainHash", "campaignCreation", "campaignSessions", "responseCount", "campaignTracking"], (defaultTimespan * 1000)); this.domainHash = _arg1; this.campaignCreation = _arg2; this.campaignSessions = _arg3; this.responseCount = _arg4; this.campaignTracking = _arg5; } public function set responseCount(_arg1:Number):void{ _responseCount = _arg1; update(); } public function set domainHash(_arg1:Number):void{ _domainHash = _arg1; update(); } public function set campaignCreation(_arg1:Number):void{ _campaignCreation = _arg1; update(); } public function get campaignTracking():String{ return (_campaignTracking); } public function get campaignSessions():Number{ return (_campaignSessions); } public function get domainHash():Number{ return (_domainHash); } public function get responseCount():Number{ return (_responseCount); } public function get campaignCreation():Number{ return (_campaignCreation); } public function set campaignSessions(_arg1:Number):void{ _campaignSessions = _arg1; update(); } public function set campaignTracking(_arg1:String):void{ _campaignTracking = _arg1; update(); } } }//package com.google.analytics.dataSection 151//X10 (com.google.analytics.data.X10) package com.google.analytics.data { public class X10 { private var _delimEnd:String;// = ")" private var _minimum:int; private var _delimSet:String;// = "*" private var _escapeChar:String;// = "'" private var _delimBegin:String;// = "(" private var _delimNumValue:String;// = "!" private var _key:String;// = "k" private var _set:Array; private var _hasData:int; private var _escapeCharMap:Object; private var _projectData:Object; private var _value:String;// = "v" public function X10(){ _set = [_key, _value]; super(); _projectData = {}; _escapeCharMap = {}; _escapeCharMap[_escapeChar] = "'0"; _escapeCharMap[_delimEnd] = "'1"; _escapeCharMap[_delimSet] = "'2"; _escapeCharMap[_delimNumValue] = "'3"; _minimum = 1; } private function _setInternal(_arg1:Number, _arg2:String, _arg3:Number, _arg4:String):void{ if (!hasProject(_arg1)){ _projectData[_arg1] = {}; }; if (_projectData[_arg1][_arg2] == undefined){ _projectData[_arg1][_arg2] = []; }; _projectData[_arg1][_arg2][_arg3] = _arg4; _hasData = (_hasData + 1); } private function _renderProject(_arg1:Object):String{ var _local4:int; var _local5:Array; var _local2 = ""; var _local3:Boolean; var _local6:int = _set.length; _local4 = 0; while (_local4 < _local6) { _local5 = _arg1[_set[_local4]]; if (_local5){ if (_local3){ _local2 = (_local2 + _set[_local4]); }; _local2 = (_local2 + _renderDataType(_local5)); _local3 = false; } else { _local3 = true; }; _local4++; }; return (_local2); } public function hasProject(_arg1:Number):Boolean{ return (_projectData[_arg1]); } public function clearKey(_arg1:Number):void{ _clearInternal(_arg1, _key); } private function _renderDataType(_arg1:Array):String{ var _local3:String; var _local4:int; var _local2:Array = []; _local4 = 0; while (_local4 < _arg1.length) { if (_arg1[_local4] != undefined){ _local3 = ""; if (((!((_local4 == _minimum))) && ((_arg1[(_local4 - 1)] == undefined)))){ _local3 = (_local3 + _local4.toString()); _local3 = (_local3 + _delimNumValue); }; _local3 = (_local3 + _escapeExtensibleValue(_arg1[_local4])); _local2.push(_local3); }; _local4++; }; return (((_delimBegin + _local2.join(_delimSet)) + _delimEnd)); } public function getKey(_arg1:Number, _arg2:Number):String{ return ((_getInternal(_arg1, _key, _arg2) as String)); } public function hasData():Boolean{ return ((_hasData > 0)); } public function renderMergedUrlString(_arg1:X10=null):String{ var _local3:String; if (!_arg1){ return (renderUrlString()); }; var _local2:Array = [_arg1.renderUrlString()]; for (_local3 in _projectData) { if (((hasProject(Number(_local3))) && (!(_arg1.hasProject(Number(_local3)))))){ _local2.push((_local3 + _renderProject(_projectData[_local3]))); }; }; return (_local2.join("")); } public function setValue(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ if (((((!((Math.round(_arg3) == _arg3))) || (isNaN(_arg3)))) || ((_arg3 == Infinity)))){ return (false); }; _setInternal(_arg1, _value, _arg2, _arg3.toString()); return (true); } public function renderUrlString():String{ var _local2:String; var _local1:Array = []; for (_local2 in _projectData) { if (hasProject(Number(_local2))){ _local1.push((_local2 + _renderProject(_projectData[_local2]))); }; }; return (_local1.join("")); } private function _getInternal(_arg1:Number, _arg2:String, _arg3:Number):Object{ if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ return (_projectData[_arg1][_arg2][_arg3]); }; return (undefined); } public function setKey(_arg1:Number, _arg2:Number, _arg3:String):Boolean{ _setInternal(_arg1, _key, _arg2, _arg3); return (true); } public function clearValue(_arg1:Number):void{ _clearInternal(_arg1, _value); } private function _clearInternal(_arg1:Number, _arg2:String):void{ var _local3:Boolean; var _local4:int; var _local5:int; if (((hasProject(_arg1)) && (!((_projectData[_arg1][_arg2] == undefined))))){ _projectData[_arg1][_arg2] = undefined; _local3 = true; _local5 = _set.length; _local4 = 0; while (_local4 < _local5) { if (_projectData[_arg1][_set[_local4]] != undefined){ _local3 = false; break; }; _local4++; }; if (_local3){ _projectData[_arg1] = undefined; _hasData = (_hasData - 1); }; }; } public function getValue(_arg1:Number, _arg2:Number){ var _local3:* = _getInternal(_arg1, _value, _arg2); if (_local3 == null){ return (null); }; return (Number(_local3)); } private function _escapeExtensibleValue(_arg1:String):String{ var _local3:int; var _local4:String; var _local5:String; var _local2 = ""; _local3 = 0; while (_local3 < _arg1.length) { _local4 = _arg1.charAt(_local3); _local5 = _escapeCharMap[_local4]; if (_local5){ _local2 = (_local2 + _local5); } else { _local2 = (_local2 + _local4); }; _local3++; }; return (_local2); } } }//package com.google.analytics.dataSection 152//_Style (com.google.analytics.debug._Style) package com.google.analytics.debug { import flash.net.*; import flash.text.*; public class _Style { public var failureColor:uint; public var borderColor:uint; public var backgroundColor:uint; private var _sheet:StyleSheet; public var roundedCorner:uint; public var warningColor:uint; public var infoColor:uint; public var alertColor:uint; public var successColor:uint; private var _loader:URLLoader; private var _defaultSheet:String; public function _Style(){ _sheet = new StyleSheet(); _loader = new URLLoader(); _init(); } private function _parseSheet(_arg1:String):void{ _sheet.parseCSS(_arg1); } public function get sheet():StyleSheet{ return (_sheet); } private function _init():void{ _defaultSheet = ""; _defaultSheet = (_defaultSheet + "a{text-decoration: underline;}\n"); _defaultSheet = (_defaultSheet + ".uiLabel{color: #000000;font-family: Arial;font-size: 12;margin-left: 2;margin-right: 2;}\n"); _defaultSheet = (_defaultSheet + ".uiWarning{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlert{color: #ffffff;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiInfo{color: #000000;font-family: Arial;font-size: 14;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiSuccess{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiFailure{color: #ffffff;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertAction{color: #ffffff;text-align: center;font-family: Arial;font-size: 12;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + ".uiAlertTitle{color: #ffffff;font-family: Arial;font-size: 16;font-weight: bold;margin-left: 6;margin-right: 6;}\n"); _defaultSheet = (_defaultSheet + "\n"); roundedCorner = 6; backgroundColor = 0xCCCCCC; borderColor = 0x555555; infoColor = 16777113; alertColor = 0xFFCC00; warningColor = 0xCC0000; successColor = 0xFF00; failureColor = 0xFF0000; _parseSheet(_defaultSheet); } } }//package com.google.analytics.debugSection 153//Alert (com.google.analytics.debug.Alert) package com.google.analytics.debug { import flash.events.*; public class Alert extends Label { public var autoClose:Boolean;// = true public var actionOnNextLine:Boolean;// = true private var _actions:Array; public function Alert(_arg1:String, _arg2:Array, _arg3:String="uiAlert", _arg4:uint=0, _arg5:Align=null, _arg6:Boolean=false, _arg7:Boolean=true){ if (_arg4 == 0){ _arg4 = Style.alertColor; }; if (_arg5 == null){ _arg5 = Align.center; }; super(_arg1, _arg3, _arg4, _arg5, _arg6); this.selectable = true; super.mouseChildren = true; this.buttonMode = true; this.mouseEnabled = true; this.useHandCursor = true; this.actionOnNextLine = _arg7; _actions = []; var _local8:int; while (_local8 < _arg2.length) { _arg2[_local8].container = this; _actions.push(_arg2[_local8]); _local8++; }; } private function _defineActions():void{ var _local3:AlertAction; var _local1 = ""; if (actionOnNextLine){ _local1 = (_local1 + "\n"); } else { _local1 = (_local1 + " |"); }; _local1 = (_local1 + " "); var _local2:Array = []; var _local4:int; while (_local4 < _actions.length) { _local3 = _actions[_local4]; _local2.push((((("<a href=\"event:" + _local3.activator) + "\">") + _local3.name) + "</a>")); _local4++; }; _local1 = (_local1 + _local2.join(" | ")); appendText(_local1, "uiAlertAction"); } protected function isValidAction(_arg1:String):Boolean{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (true); }; _local2++; }; return (false); } override protected function layout():void{ super.layout(); _defineActions(); } protected function getAction(_arg1:String):AlertAction{ var _local2:int; while (_local2 < _actions.length) { if (_arg1 == _actions[_local2].activator){ return (_actions[_local2]); }; _local2++; }; return (null); } protected function spaces(_arg1:int):String{ var _local2 = ""; var _local3 = " "; var _local4:int; while (_local4 < (_arg1 + 1)) { _local2 = (_local2 + _local3); _local4++; }; return (_local2); } override public function onLink(_arg1:TextEvent):void{ var _local2:AlertAction; if (isValidAction(_arg1.text)){ _local2 = getAction(_arg1.text); if (_local2){ _local2.execute(); }; }; if (autoClose){ close(); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debugSection 154//AlertAction (com.google.analytics.debug.AlertAction) package com.google.analytics.debug { public class AlertAction { public var container:Alert; private var _callback; public var activator:String; public var name:String; public function AlertAction(_arg1:String, _arg2:String, _arg3){ this.name = _arg1; this.activator = _arg2; _callback = _arg3; } public function execute():void{ if (_callback){ if ((_callback is Function)){ (_callback as Function)(); } else { if ((_callback is String)){ var _local1 = container; _local1[_callback](); }; }; }; } } }//package com.google.analytics.debugSection 155//Align (com.google.analytics.debug.Align) package com.google.analytics.debug { public class Align { private var _value:int; private var _name:String; public static const bottomRight:Align = new Align(18, "bottomRight"); ; public static const right:Align = new Align(16, "right"); ; public static const left:Align = new Align(32, "left"); ; public static const topRight:Align = new Align(17, "topRight"); ; public static const bottom:Align = new Align(2, "bottom"); ; public static const bottomLeft:Align = new Align(34, "bottomLeft"); ; public static const topLeft:Align = new Align(33, "topLeft"); ; public static const center:Align = new Align(0x0100, "center"); ; public static const none:Align = new Align(0, "none"); ; public static const top:Align = new Align(1, "top"); ; public function Align(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debugSection 156//Background (com.google.analytics.debug.Background) package com.google.analytics.debug { import flash.display.*; public class Background { public static function drawRounded(_arg1, _arg2:Graphics, _arg3:uint=0, _arg4:uint=0):void{ var _local5:uint; var _local6:uint; var _local7:uint = Style.roundedCorner; if ((((_arg3 > 0)) && ((_arg4 > 0)))){ _local5 = _arg3; _local6 = _arg4; } else { _local5 = _arg1.width; _local6 = _arg1.height; }; if (((_arg1.stickToEdge) && (!((_arg1.alignement == Align.none))))){ switch (_arg1.alignement){ case Align.top: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, _local7); break; case Align.topLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, 0, _local7); break; case Align.topRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, 0, _local7, 0); break; case Align.bottom: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, _local7, 0, 0); break; case Align.bottomLeft: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, 0); break; case Align.bottomRight: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, 0, 0); break; case Align.left: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, 0, _local7, 0, _local7); break; case Align.right: _arg2.drawRoundRectComplex(0, 0, _local5, _local6, _local7, 0, _local7, 0); break; case Align.center: _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); break; }; } else { _arg2.drawRoundRect(0, 0, _local5, _local6, _local7, _local7); }; } } }//package com.google.analytics.debugSection 157//Debug (com.google.analytics.debug.Debug) package com.google.analytics.debug { import flash.events.*; import flash.ui.*; public class Debug extends Label { private var _lines:Array; private var _preferredForcedWidth:uint;// = 540 private var _linediff:int;// = 0 public var maxLines:uint;// = 16 public static var count:uint; public function Debug(_arg1:uint=0, _arg2:Align=null, _arg3:Boolean=false){ if (_arg2 == null){ _arg2 = Align.bottom; }; super("", "uiLabel", _arg1, _arg2, _arg3); this.name = ("Debug" + count++); _lines = []; selectable = true; addEventListener(KeyboardEvent.KEY_DOWN, onKey); } public function writeBold(_arg1:String):void{ write(_arg1, true); } private function _getLinesToDisplay(_arg1:int=0):Array{ var _local2:Array; var _local3:uint; var _local4:uint; if ((_lines.length - 1) > maxLines){ if ((_linediff <= 0)){ _linediff = (_linediff + _arg1); } else { if ((((_linediff > 0)) && ((_arg1 < 0)))){ _linediff = (_linediff + _arg1); }; }; _local3 = ((_lines.length - maxLines) + _linediff); _local4 = (_local3 + maxLines); _local2 = _lines.slice(_local3, _local4); } else { _local2 = _lines; }; return (_local2); } private function onKey(_arg1:KeyboardEvent=null):void{ var _local2:Array; switch (_arg1.keyCode){ case Keyboard.DOWN: _local2 = _getLinesToDisplay(1); break; case Keyboard.UP: _local2 = _getLinesToDisplay(-1); break; default: _local2 = null; }; if (_local2 == null){ return; }; text = _local2.join("\n"); } override public function get forcedWidth():uint{ if (this.parent){ if (UISprite(this.parent).forcedWidth > _preferredForcedWidth){ return (_preferredForcedWidth); }; return (UISprite(this.parent).forcedWidth); //unresolved jump }; return (super.forcedWidth); } public function write(_arg1:String, _arg2:Boolean=false):void{ var _local3:Array; if (_arg1.indexOf("") > -1){ _local3 = _arg1.split("\n"); } else { _local3 = [_arg1]; }; var _local4 = ""; var _local5 = ""; if (_arg2){ _local4 = "<b>"; _local5 = "</b>"; }; var _local6:int; while (_local6 < _local3.length) { _lines.push(((_local4 + _local3[_local6]) + _local5)); _local6++; }; var _local7:Array = _getLinesToDisplay(); text = _local7.join("\n"); } public function close():void{ dispose(); } override protected function dispose():void{ removeEventListener(KeyboardEvent.KEY_DOWN, onKey); super.dispose(); } } }//package com.google.analytics.debugSection 158//DebugConfiguration (com.google.analytics.debug.DebugConfiguration) package com.google.analytics.debug { import flash.utils.*; import com.google.analytics.core.*; import flash.net.*; public class DebugConfiguration { public var showHideKey:Number;// = 32 private var _mode:VisualDebugMode; private var _verbose:Boolean;// = false public var destroyKey:Number;// = 8 public var GIFRequests:Boolean;// = false public var showInfos:Boolean;// = true public var infoTimeout:Number;// = 1000 public var minimizedOnStart:Boolean;// = false private var _active:Boolean;// = false public var traceOutput:Boolean;// = false public var layout:ILayout; public var warningTimeout:Number;// = 1500 public var javascript:Boolean;// = false public var showWarnings:Boolean;// = true private var _visualInitialized:Boolean;// = false public function DebugConfiguration(){ _mode = VisualDebugMode.basic; super(); } public function get verbose():Boolean{ return (_verbose); } public function set verbose(_arg1:Boolean):void{ _verbose = _arg1; } public function set mode(_arg1):void{ if ((_arg1 is String)){ switch (_arg1){ case "geek": _arg1 = VisualDebugMode.geek; break; case "advanced": _arg1 = VisualDebugMode.advanced; break; case "basic": default: _arg1 = VisualDebugMode.basic; }; }; _mode = _arg1; } public function success(_arg1:String):void{ if (layout){ layout.createSuccessAlert(_arg1); }; if (traceOutput){ trace((("[+] " + _arg1) + " !!")); }; } public function get active():Boolean{ return (_active); } private function _initializeVisual():void{ if (layout){ layout.init(); _visualInitialized = true; }; } private function _destroyVisual():void{ if (((layout) && (_visualInitialized))){ layout.destroy(); }; } public function warning(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showWarnings))){ layout.createWarning(_arg1); }; if (traceOutput){ trace((("## " + _arg1) + " ##")); }; } private function _filter(_arg1:VisualDebugMode=null):Boolean{ return (((_arg1) && ((int(_arg1) >= int(this.mode))))); } public function failure(_arg1:String):void{ if (layout){ layout.createFailureAlert(_arg1); }; if (traceOutput){ trace((("[-] " + _arg1) + " !!")); }; } public function get mode(){ return (_mode); } public function set active(_arg1:Boolean):void{ _active = _arg1; if (_active){ _initializeVisual(); } else { _destroyVisual(); }; } protected function trace(_arg1:String):void{ var _local7:Array; var _local8:int; var _local2:Array = []; var _local3 = ""; var _local4 = ""; if (this.mode == VisualDebugMode.geek){ _local3 = (getTimer() + " - "); _local4 = (new Array(_local3.length).join(" ") + " "); }; if (_arg1.indexOf("\n") > -1){ _local7 = _arg1.split("\n"); _local8 = 0; while (_local8 < _local7.length) { if (_local7[_local8] == ""){ } else { if (_local8 == 0){ _local2.push((_local3 + _local7[_local8])); } else { _local2.push((_local4 + _local7[_local8])); }; }; _local8++; }; } else { _local2.push((_local3 + _arg1)); }; var _local5:int = _local2.length; var _local6:int; while (_local6 < _local5) { trace(_local2[_local6]); _local6++; }; } public function alert(_arg1:String):void{ if (layout){ layout.createAlert(_arg1); }; if (traceOutput){ trace((("!! " + _arg1) + " !!")); }; } public function info(_arg1:String, _arg2:VisualDebugMode=null):void{ if (_filter(_arg2)){ return; }; if (((layout) && (showInfos))){ layout.createInfo(_arg1); }; if (traceOutput){ trace(_arg1); }; } public function alertGifRequest(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ if (layout){ layout.createGIFRequestAlert(_arg1, _arg2, _arg3); }; if (traceOutput){ trace(((">> " + _arg1) + " <<")); }; } } }//package com.google.analytics.debugSection 159//FailureAlert (com.google.analytics.debug.FailureAlert) package com.google.analytics.debug { public class FailureAlert extends Alert { public function FailureAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Failure</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiFailure", Style.failureColor, _local4, _local5, _local6); } } }//package com.google.analytics.debugSection 160//GIFRequestAlert (com.google.analytics.debug.GIFRequestAlert) package com.google.analytics.debug { public class GIFRequestAlert extends Alert { public function GIFRequestAlert(_arg1:String, _arg2:Array){ super(_arg1, _arg2); } } }//package com.google.analytics.debugSection 161//ILayout (com.google.analytics.debug.ILayout) package com.google.analytics.debug { import flash.display.*; import com.google.analytics.core.*; import flash.net.*; public interface ILayout { function createAlert(_arg1:String):void; function addToStage(_arg1:DisplayObject):void; function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void; function createWarning(_arg1:String):void; function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void; function createInfo(_arg1:String):void; function createFailureAlert(_arg1:String):void; function addToPanel(_arg1:String, _arg2:DisplayObject):void; function init():void; function createSuccessAlert(_arg1:String):void; function createVisualDebug():void; function destroy():void; function bringToFront(_arg1:DisplayObject):void; function isAvailable():Boolean; } }//package com.google.analytics.debugSection 162//Info (com.google.analytics.debug.Info) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Info extends Label { private var _timer:Timer; public function Info(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiInfo", Style.infoColor, Align.top, true); if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debugSection 163//Label (com.google.analytics.debug.Label) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import flash.text.*; public class Label extends UISprite { private var _color:uint; private var _background:Shape; private var _textField:TextField; public var stickToEdge:Boolean; private var _text:String; protected var selectable:Boolean; private var _tag:String; public static var count:uint = 0; public function Label(_arg1:String="", _arg2:String="uiLabel", _arg3:uint=0, _arg4:Align=null, _arg5:Boolean=false){ this.name = ("Label" + count++); selectable = false; _background = new Shape(); _textField = new TextField(); _text = _arg1; _tag = _arg2; if (_arg4 == null){ _arg4 = Align.none; }; this.alignement = _arg4; this.stickToEdge = _arg5; if (_arg3 == 0){ _arg3 = Style.backgroundColor; }; _color = _arg3; _textField.addEventListener(TextEvent.LINK, onLink); } public function get tag():String{ return (_tag); } private function _draw():void{ var _local1:Graphics = _background.graphics; _local1.clear(); _local1.beginFill(_color); var _local2:uint = _textField.width; var _local3:uint = _textField.height; if (forcedWidth > 0){ _local2 = forcedWidth; }; Background.drawRounded(this, _local1, _local2, _local3); _local1.endFill(); } public function get text():String{ return (_textField.text); } public function appendText(_arg1:String, _arg2:String=""):void{ if (_arg1 == ""){ return; }; if (_arg2 == ""){ _arg2 = tag; }; _textField.htmlText = (_textField.htmlText + (((("<span class=\"" + _arg2) + "\">") + _arg1) + "</span>")); _text = (_text + _arg1); _draw(); resize(); } public function set text(_arg1:String):void{ if (_arg1 == ""){ _arg1 = _text; }; _textField.htmlText = (((("<span class=\"" + tag) + "\">") + _arg1) + "</span>"); _text = _arg1; _draw(); resize(); } override protected function layout():void{ _textField.type = TextFieldType.DYNAMIC; _textField.autoSize = TextFieldAutoSize.LEFT; _textField.background = false; _textField.selectable = selectable; _textField.multiline = true; _textField.styleSheet = Style.sheet; this.text = _text; addChild(_background); addChild(_textField); } public function set tag(_arg1:String):void{ _tag = _arg1; text = ""; } public function onLink(_arg1:TextEvent):void{ } override protected function dispose():void{ _textField.removeEventListener(TextEvent.LINK, onLink); super.dispose(); } } }//package com.google.analytics.debugSection 164//Layout (com.google.analytics.debug.Layout) package com.google.analytics.debug { import flash.events.*; import flash.display.*; import com.google.analytics.core.*; import flash.net.*; import com.google.analytics.*; public class Layout implements ILayout { private var _display:DisplayObject; private var _infoQueue:Array; private var _maxCharPerLine:int;// = 85 private var _hasInfo:Boolean; private var _warningQueue:Array; private var _hasDebug:Boolean; private var _hasWarning:Boolean; private var _mainPanel:Panel; private var _GRAlertQueue:Array; private var _debug:DebugConfiguration; public var visualDebug:Debug; private var _hasGRAlert:Boolean; public function Layout(_arg1:DebugConfiguration, _arg2:DisplayObject){ _display = _arg2; _debug = _arg1; _hasWarning = false; _hasInfo = false; _hasDebug = false; _hasGRAlert = false; _warningQueue = []; _infoQueue = []; _GRAlertQueue = []; } private function onKey(_arg1:KeyboardEvent=null):void{ switch (_arg1.keyCode){ case _debug.showHideKey: _mainPanel.visible = !(_mainPanel.visible); break; case _debug.destroyKey: destroy(); break; }; } public function createWarning(_arg1:String):void{ if (((_hasWarning) || (!(isAvailable())))){ _warningQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasWarning = true; var _local2:Warning = new Warning(_arg1, _debug.warningTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearWarning, false, 0, true); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function bringToFront(_arg1:DisplayObject):void{ _display.stage.setChildIndex(_arg1, (_display.stage.numChildren - 1)); } public function createFailureAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new FailureAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function init():void{ var _local1 = 10; var _local2:uint = (_display.stage.stageWidth - (_local1 * 2)); var _local3:uint = (_display.stage.stageHeight - (_local1 * 2)); var _local4:Panel = new Panel("analytics", _local2, _local3); _local4.alignement = Align.top; _local4.stickToEdge = false; _local4.title = ("Google Analytics v" + GATracker.version); _mainPanel = _local4; addToStage(_local4); bringToFront(_local4); if (_debug.minimizedOnStart){ _mainPanel.onToggle(); }; createVisualDebug(); _display.stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey, false, 0, true); } public function addToPanel(_arg1:String, _arg2:DisplayObject):void{ var _local4:Panel; var _local3:DisplayObject = _display.stage.getChildByName(_arg1); if (_local3){ _local4 = (_local3 as Panel); _local4.addData(_arg2); } else { trace((("panel \"" + _arg1) + "\" not found")); }; } private function _clearInfo(_arg1:Event):void{ _hasInfo = false; if (_infoQueue.length > 0){ createInfo(_infoQueue.shift()); }; } private function _filterMaxChars(_arg1:String, _arg2:int=0):String{ var _local6:String; var _local3 = "\n"; var _local4:Array = []; var _local5:Array = _arg1.split(_local3); if (_arg2 == 0){ _arg2 = _maxCharPerLine; }; var _local7:int; while (_local7 < _local5.length) { _local6 = _local5[_local7]; while (_local6.length > _arg2) { _local4.push(_local6.substr(0, _arg2)); _local6 = _local6.substring(_arg2); }; _local4.push(_local6); _local7++; }; return (_local4.join(_local3)); } private function _clearGRAlert(_arg1:Event):void{ _hasGRAlert = false; if (_GRAlertQueue.length > 0){ createGIFRequestAlert.apply(this, _GRAlertQueue.shift()); }; } public function createSuccessAlert(_arg1:String):void{ var _local2:AlertAction; if (_debug.verbose){ _arg1 = _filterMaxChars(_arg1); _local2 = new AlertAction("Close", "close", "close"); } else { _local2 = new AlertAction("X", "close", "close"); }; var _local3:Alert = new SuccessAlert(_debug, _arg1, [_local2]); addToPanel("analytics", _local3); if (_hasDebug){ if (_debug.verbose){ _arg1 = _arg1.split("\n").join(""); _arg1 = _filterMaxChars(_arg1, 66); }; visualDebug.writeBold(_arg1); }; } public function isAvailable():Boolean{ return (!((_display.stage == null))); } public function createAlert(_arg1:String):void{ _arg1 = _filterMaxChars(_arg1); var _local2:Alert = new Alert(_arg1, [new AlertAction("Close", "close", "close")]); addToPanel("analytics", _local2); if (_hasDebug){ visualDebug.writeBold(_arg1); }; } public function createInfo(_arg1:String):void{ if (((_hasInfo) || (!(isAvailable())))){ _infoQueue.push(_arg1); return; }; _arg1 = _filterMaxChars(_arg1); _hasInfo = true; var _local2:Info = new Info(_arg1, _debug.infoTimeout); addToPanel("analytics", _local2); _local2.addEventListener(Event.REMOVED_FROM_STAGE, _clearInfo, false, 0, true); if (_hasDebug){ visualDebug.write(_arg1); }; } public function createGIFRequestAlert(_arg1:String, _arg2:URLRequest, _arg3:GIFRequest):void{ var message = _arg1; var request = _arg2; var ref = _arg3; if (_hasGRAlert){ _GRAlertQueue.push([message, request, ref]); return; }; _hasGRAlert = true; var f:Function = function ():void{ ref.sendRequest(request); }; message = _filterMaxChars(message); var gra:GIFRequestAlert = new GIFRequestAlert(message, [new AlertAction("OK", "ok", f), new AlertAction("Cancel", "cancel", "close")]); addToPanel("analytics", gra); gra.addEventListener(Event.REMOVED_FROM_STAGE, _clearGRAlert, false, 0, true); if (_hasDebug){ if (_debug.verbose){ message = message.split("\n").join(""); message = _filterMaxChars(message, 66); }; visualDebug.write(message); }; } public function createVisualDebug():void{ if (!visualDebug){ visualDebug = new Debug(); visualDebug.alignement = Align.bottom; visualDebug.stickToEdge = true; addToPanel("analytics", visualDebug); _hasDebug = true; }; } public function addToStage(_arg1:DisplayObject):void{ _display.stage.addChild(_arg1); } private function _clearWarning(_arg1:Event):void{ _hasWarning = false; if (_warningQueue.length > 0){ createWarning(_warningQueue.shift()); }; } public function createPanel(_arg1:String, _arg2:uint, _arg3:uint):void{ var _local4:Panel = new Panel(_arg1, _arg2, _arg3); _local4.alignement = Align.center; _local4.stickToEdge = false; addToStage(_local4); bringToFront(_local4); } public function destroy():void{ _mainPanel.close(); _debug.layout = null; } } }//package com.google.analytics.debugSection 165//Margin (com.google.analytics.debug.Margin) package com.google.analytics.debug { public class Margin { public var top:int; public var left:int; public var bottom:int; public var right:int; public function Margin(_arg1:int=0, _arg2:int=0, _arg3:int=0, _arg4:int=0){ this.top = _arg1; this.bottom = _arg2; this.left = _arg3; this.right = _arg4; } } }//package com.google.analytics.debugSection 166//Panel (com.google.analytics.debug.Panel) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class Panel extends UISprite { private var _savedH:uint; private var _data:UISprite; private var _mask:Sprite; private var _background:Shape; private var _savedW:uint; private var _stickToEdge:Boolean; private var _border:Shape; private var _borderColor:uint; protected var baseAlpha:Number; private var _backgroundColor:uint; private var _title:Label; private var _colapsed:Boolean; private var _name:String; public function Panel(_arg1:String, _arg2:uint, _arg3:uint, _arg4:uint=0, _arg5:uint=0, _arg6:Number=0.3, _arg7:Align=null, _arg8:Boolean=false){ _name = _arg1; this.name = _arg1; this.mouseEnabled = false; _colapsed = false; forcedWidth = _arg2; forcedHeight = _arg3; this.baseAlpha = _arg6; _background = new Shape(); _data = new UISprite(); _data.forcedWidth = _arg2; _data.forcedHeight = _arg3; _data.mouseEnabled = false; _title = new Label(_arg1, "uiLabel", 0xFFFFFF, Align.topLeft, _arg8); _title.buttonMode = true; _title.margin.top = 0.6; _title.margin.left = 0.6; _title.addEventListener(MouseEvent.CLICK, onToggle); _title.mouseChildren = false; _border = new Shape(); _mask = new Sprite(); _mask.useHandCursor = false; _mask.mouseEnabled = false; _mask.mouseChildren = false; if (_arg7 == null){ _arg7 = Align.none; }; this.alignement = _arg7; this.stickToEdge = _arg8; if (_arg4 == 0){ _arg4 = Style.backgroundColor; }; _backgroundColor = _arg4; if (_arg5 == 0){ _arg5 = Style.borderColor; }; _borderColor = _arg5; } public function get stickToEdge():Boolean{ return (_stickToEdge); } public function onToggle(_arg1:MouseEvent=null):void{ if (_colapsed){ _data.visible = true; } else { _data.visible = false; }; _colapsed = !(_colapsed); _update(); resize(); } public function set stickToEdge(_arg1:Boolean):void{ _stickToEdge = _arg1; _title.stickToEdge = _arg1; } override protected function dispose():void{ _title.removeEventListener(MouseEvent.CLICK, onToggle); super.dispose(); } private function _draw():void{ var _local1:uint; var _local2:uint; if (((_savedW) && (_savedH))){ forcedWidth = _savedW; forcedHeight = _savedH; }; if (!_colapsed){ _local1 = forcedWidth; _local2 = forcedHeight; } else { _local1 = _title.width; _local2 = _title.height; _savedW = forcedWidth; _savedH = forcedHeight; forcedWidth = _local1; forcedHeight = _local2; }; var _local3:Graphics = _background.graphics; _local3.clear(); _local3.beginFill(_backgroundColor); Background.drawRounded(this, _local3, _local1, _local2); _local3.endFill(); var _local4:Graphics = _data.graphics; _local4.clear(); _local4.beginFill(_backgroundColor, 0); Background.drawRounded(this, _local4, _local1, _local2); _local4.endFill(); var _local5:Graphics = _border.graphics; _local5.clear(); _local5.lineStyle(0.1, _borderColor); Background.drawRounded(this, _local5, _local1, _local2); _local5.endFill(); var _local6:Graphics = _mask.graphics; _local6.clear(); _local6.beginFill(_backgroundColor); Background.drawRounded(this, _local6, (_local1 + 1), (_local2 + 1)); _local6.endFill(); } public function get title():String{ return (_title.text); } private function _update():void{ _draw(); if (baseAlpha < 1){ _background.alpha = baseAlpha; _border.alpha = baseAlpha; }; } public function addData(_arg1:DisplayObject):void{ _data.addChild(_arg1); } override protected function layout():void{ _update(); addChild(_background); addChild(_data); addChild(_title); addChild(_border); addChild(_mask); mask = _mask; } public function set title(_arg1:String):void{ _title.text = _arg1; } public function close():void{ dispose(); if (parent != null){ parent.removeChild(this); }; } } }//package com.google.analytics.debugSection 167//Style (com.google.analytics.debug.Style) package com.google.analytics.debug { public const Style:_Style = new _Style(); }//package com.google.analytics.debugSection 168//SuccessAlert (com.google.analytics.debug.SuccessAlert) package com.google.analytics.debug { public class SuccessAlert extends Alert { public function SuccessAlert(_arg1:DebugConfiguration, _arg2:String, _arg3:Array){ var _local4:Align = Align.bottomLeft; var _local5:Boolean; var _local6:Boolean; if (_arg1.verbose){ _arg2 = ((("<u><span class=\"uiAlertTitle\">Success</span>" + spaces(18)) + "</u>\n\n") + _arg2); _local4 = Align.center; _local5 = false; _local6 = true; }; super(_arg2, _arg3, "uiSuccess", Style.successColor, _local4, _local5, _local6); } } }//package com.google.analytics.debugSection 169//UISprite (com.google.analytics.debug.UISprite) package com.google.analytics.debug { import flash.events.*; import flash.display.*; public class UISprite extends Sprite { private var _forcedWidth:uint; public var margin:Margin; protected var alignTarget:DisplayObject; protected var listenResize:Boolean; public var alignement:Align; private var _forcedHeight:uint; public function UISprite(_arg1:DisplayObject=null){ listenResize = false; alignement = Align.none; this.alignTarget = _arg1; margin = new Margin(); addEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); addEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); } public function get forcedHeight():uint{ if (_forcedHeight){ return (_forcedHeight); }; return (height); } private function _onAddedToStage(_arg1:Event):void{ layout(); resize(); } protected function dispose():void{ var _local1:DisplayObject; var _local2:int; while (_local2 < numChildren) { _local1 = getChildAt(_local2); if (_local1){ removeChild(_local1); }; _local2++; }; } public function set forcedHeight(_arg1:uint):void{ _forcedHeight = _arg1; } public function set forcedWidth(_arg1:uint):void{ _forcedWidth = _arg1; } protected function layout():void{ } public function get forcedWidth():uint{ if (_forcedWidth){ return (_forcedWidth); }; return (width); } public function alignTo(_arg1:Align, _arg2:DisplayObject=null):void{ var _local3:uint; var _local4:uint; var _local5:uint; var _local6:uint; var _local7:UISprite; if (_arg2 == null){ if ((parent is Stage)){ _arg2 = this.stage; } else { _arg2 = parent; }; }; if (_arg2 == this.stage){ if (this.stage == null){ return; }; _local3 = this.stage.stageHeight; _local4 = this.stage.stageWidth; _local5 = 0; _local6 = 0; } else { _local7 = (_arg2 as UISprite); if (_local7.forcedHeight){ _local3 = _local7.forcedHeight; } else { _local3 = _local7.height; }; if (_local7.forcedWidth){ _local4 = _local7.forcedWidth; } else { _local4 = _local7.width; }; _local5 = 0; _local6 = 0; }; switch (_arg1){ case Align.top: x = ((_local4 / 2) - (forcedWidth / 2)); y = (_local6 + margin.top); break; case Align.bottom: x = ((_local4 / 2) - (forcedWidth / 2)); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.left: x = (_local5 + margin.left); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.right: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.center: x = ((_local4 / 2) - (forcedWidth / 2)); y = ((_local3 / 2) - (forcedHeight / 2)); break; case Align.topLeft: x = (_local5 + margin.left); y = (_local6 + margin.top); break; case Align.topRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (_local6 + margin.top); break; case Align.bottomLeft: x = (_local5 + margin.left); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; case Align.bottomRight: x = (((_local5 + _local4) - forcedWidth) - margin.right); y = (((_local6 + _local3) - forcedHeight) - margin.bottom); break; }; if (((!(listenResize)) && (!((_arg1 == Align.none))))){ _arg2.addEventListener(Event.RESIZE, onResize, false, 0, true); listenResize = true; }; this.alignement = _arg1; this.alignTarget = _arg2; } private function _onRemovedFromStage(_arg1:Event):void{ removeEventListener(Event.ADDED_TO_STAGE, _onAddedToStage); removeEventListener(Event.REMOVED_FROM_STAGE, _onRemovedFromStage); dispose(); } public function resize():void{ if (alignement != Align.none){ alignTo(alignement, alignTarget); }; } protected function onResize(_arg1:Event):void{ resize(); } } }//package com.google.analytics.debugSection 170//Warning (com.google.analytics.debug.Warning) package com.google.analytics.debug { import flash.events.*; import flash.utils.*; public class Warning extends Label { private var _timer:Timer; public function Warning(_arg1:String="", _arg2:uint=3000){ super(_arg1, "uiWarning", Style.warningColor, Align.top, false); margin.top = 32; if (_arg2 > 0){ _timer = new Timer(_arg2, 1); _timer.start(); _timer.addEventListener(TimerEvent.TIMER_COMPLETE, onComplete, false, 0, true); }; } public function close():void{ if (parent != null){ parent.removeChild(this); }; } override public function onLink(_arg1:TextEvent):void{ switch (_arg1.text){ case "hide": close(); break; }; } public function onComplete(_arg1:TimerEvent):void{ close(); } } }//package com.google.analytics.debugSection 171//VisualDebugMode (com.google.analytics.debug.VisualDebugMode) package com.google.analytics.debug { public class VisualDebugMode { private var _value:int; private var _name:String; public static const advanced:VisualDebugMode = new VisualDebugMode(1, "advanced"); ; public static const geek:VisualDebugMode = new VisualDebugMode(2, "geek"); ; public static const basic:VisualDebugMode = new VisualDebugMode(0, "basic"); ; public function VisualDebugMode(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.debugSection 172//Item (com.google.analytics.ecommerce.Item) package com.google.analytics.ecommerce { import com.google.analytics.utils.*; public class Item { private var _price:String; private var _id:String; private var _sku:String; private var _category:String; private var _quantity:String; private var _name:String; public function Item(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String){ this._id = _arg1; this._sku = _arg2; this._name = _arg3; this._category = _arg4; this._price = _arg5; this._quantity = _arg6; } public function set sku(_arg1:String):void{ _sku = _arg1; } public function get price():String{ return (_price); } public function get name():String{ return (_name); } public function get quantity():String{ return (_quantity); } public function set name(_arg1:String):void{ _name = _arg1; } public function set price(_arg1:String):void{ _price = _arg1; } public function get id():String{ return (_id); } public function get sku():String{ return (_sku); } public function set quantity(_arg1:String):void{ _quantity = _arg1; } public function toGifParams():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; _local1.post = ["utmt", "utmtid", "utmipc", "utmipn", "utmiva", "utmipr", "utmiqt"]; _local1.utmt = "item"; _local1.utmtid = _id; _local1.utmipc = _sku; _local1.utmipn = _name; _local1.utmiva = _category; _local1.utmipr = _price; _local1.utmiqt = _quantity; return (_local1); } public function set id(_arg1:String):void{ _id = _arg1; } public function set category(_arg1:String):void{ _category = _arg1; } public function get category():String{ return (_category); } } }//package com.google.analytics.ecommerceSection 173//Transaction (com.google.analytics.ecommerce.Transaction) package com.google.analytics.ecommerce { import com.google.analytics.utils.*; public class Transaction { private var _items:Array; private var _total:String; private var _vars:Variables; private var _shipping:String; private var _city:String; private var _state:String; private var _country:String; private var _tax:String; private var _affiliation:String; private var _id:String; public function Transaction(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String, _arg7:String, _arg8:String){ this._id = _arg1; this._affiliation = _arg2; this._total = _arg3; this._tax = _arg4; this._shipping = _arg5; this._city = _arg6; this._state = _arg7; this._country = _arg8; _items = new Array(); } public function get total():String{ return (_total); } public function getItemFromArray(_arg1:Number):Item{ return (_items[_arg1]); } public function set total(_arg1:String):void{ _total = _arg1; } public function getItem(_arg1:String):Item{ var _local2:Number; _local2 = 0; while (_local2 < _items.length) { if (_items[_local2].sku == _arg1){ return (_items[_local2]); }; _local2++; }; return (null); } public function getItemsLength():Number{ return (_items.length); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String):void{ var _local6:Item; _local6 = getItem(_arg1); if (_local6 == null){ _local6 = new Item(_id, _arg1, _arg2, _arg3, _arg4, _arg5); _items.push(_local6); } else { _local6.name = _arg2; _local6.category = _arg3; _local6.price = _arg4; _local6.quantity = _arg5; }; } public function set shipping(_arg1:String):void{ _shipping = _arg1; } public function get country():String{ return (_country); } public function get state():String{ return (_state); } public function set tax(_arg1:String):void{ _tax = _arg1; } public function set affiliation(_arg1:String):void{ _affiliation = _arg1; } public function set state(_arg1:String):void{ _state = _arg1; } public function get id():String{ return (_id); } public function get tax():String{ return (_tax); } public function toGifParams():Variables{ var _local1:Variables = new Variables(); _local1.URIencode = true; _local1.utmt = "tran"; _local1.utmtid = id; _local1.utmtst = affiliation; _local1.utmtto = total; _local1.utmttx = tax; _local1.utmtsp = shipping; _local1.utmtci = city; _local1.utmtrg = state; _local1.utmtco = country; _local1.post = ["utmtid", "utmtst", "utmtto", "utmttx", "utmtsp", "utmtci", "utmtrg", "utmtco"]; return (_local1); } public function get affiliation():String{ return (_affiliation); } public function get city():String{ return (_city); } public function get shipping():String{ return (_shipping); } public function set id(_arg1:String):void{ _id = _arg1; } public function set city(_arg1:String):void{ _city = _arg1; } public function set country(_arg1:String):void{ _country = _arg1; } } }//package com.google.analytics.ecommerceSection 174//AnalyticsEvent (com.google.analytics.events.AnalyticsEvent) package com.google.analytics.events { import flash.events.*; import com.google.analytics.*; public class AnalyticsEvent extends Event { public var tracker:AnalyticsTracker; public static const READY:String = "ready"; public function AnalyticsEvent(_arg1:String, _arg2:AnalyticsTracker, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.tracker = _arg2; } override public function clone():Event{ return (new AnalyticsEvent(type, tracker, bubbles, cancelable)); } } }//package com.google.analytics.eventsSection 175//AdSenseGlobals (com.google.analytics.external.AdSenseGlobals) package com.google.analytics.external { import com.google.analytics.debug.*; public class AdSenseGlobals extends JavascriptProxy { private var _gaGlobalVerified:Boolean;// = false public static var gaGlobal_js:XML = <script> <![CDATA[ function() { try { gaGlobal } catch(e) { gaGlobal = {} ; } } ]]> </script> ; public function AdSenseGlobals(_arg1:DebugConfiguration){ super(_arg1); } public function set vid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.vid", _arg1); } public function get hid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.hid")); } public function set hid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.hid", _arg1); } public function get dh():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.dh")); } public function get sid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.sid")); } public function get vid():String{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal.vid")); } private function _verify():void{ if (!_gaGlobalVerified){ executeBlock(gaGlobal_js); _gaGlobalVerified = true; }; } public function set sid(_arg1:String):void{ if (!isAvailable()){ return; }; _verify(); setProperty("gaGlobal.sid", _arg1); } public function get gaGlobal():Object{ if (!isAvailable()){ return (null); }; _verify(); return (getProperty("gaGlobal")); } } }//package com.google.analytics.externalSection 176//HTMLDOM (com.google.analytics.external.HTMLDOM) package com.google.analytics.external { import com.google.analytics.debug.*; public class HTMLDOM extends JavascriptProxy { private var _referrer:String; private var _language:String; private var _host:String; private var _pathname:String; private var _location:String; private var _search:String; private var _characterSet:String; private var _title:String; private var _protocol:String; private var _colorDepth:String; public static var cache_properties_js:XML = <script> <![CDATA[ function() { var obj = {}; obj.host = document.location.host; obj.language = navigator.language ? navigator.language : navigator.browserLanguage; obj.characterSet = document.characterSet ? document.characterSet : document.charset; obj.colorDepth = window.screen.colorDepth; obj.location = document.location.toString(); obj.pathname = document.location.pathname; obj.protocol = document.location.protocol; obj.search = document.location.search; obj.referrer = document.referrer; obj.title = document.title; return obj; } ]]> </script> ; public function HTMLDOM(_arg1:DebugConfiguration){ super(_arg1); } public function get search():String{ if (_search){ return (_search); }; if (!isAvailable()){ return (null); }; _search = getProperty("document.location.search"); return (_search); } public function get location():String{ if (_location){ return (_location); }; if (!isAvailable()){ return (null); }; _location = getPropertyString("document.location"); return (_location); } public function get pathname():String{ if (_pathname){ return (_pathname); }; if (!isAvailable()){ return (null); }; _pathname = getProperty("document.location.pathname"); return (_pathname); } public function cacheProperties():void{ if (!isAvailable()){ return; }; var _local1:Object = call(cache_properties_js); if (_local1){ _host = _local1.host; _language = _local1.language; _characterSet = _local1.characterSet; _colorDepth = _local1.colorDepth; _location = _local1.location; _pathname = _local1.pathname; _protocol = _local1.protocol; _search = _local1.search; _referrer = _local1.referrer; _title = _local1.title; }; } public function get language():String{ if (_language){ return (_language); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("navigator.language"); if (_local1 == null){ _local1 = getProperty("navigator.browserLanguage"); }; _language = _local1; return (_language); } public function get colorDepth():String{ if (_colorDepth){ return (_colorDepth); }; if (!isAvailable()){ return (null); }; _colorDepth = getProperty("window.screen.colorDepth"); return (_colorDepth); } public function get referrer():String{ if (_referrer){ return (_referrer); }; if (!isAvailable()){ return (null); }; _referrer = getProperty("document.referrer"); return (_referrer); } public function get protocol():String{ if (_protocol){ return (_protocol); }; if (!isAvailable()){ return (null); }; _protocol = getProperty("document.location.protocol"); return (_protocol); } public function get host():String{ if (_host){ return (_host); }; if (!isAvailable()){ return (null); }; _host = getProperty("document.location.host"); return (_host); } public function get characterSet():String{ if (_characterSet){ return (_characterSet); }; if (!isAvailable()){ return (null); }; var _local1:String = getProperty("document.characterSet"); if (_local1 == null){ _local1 = getProperty("document.charset"); }; _characterSet = _local1; return (_characterSet); } public function get title():String{ if (_title){ return (_title); }; if (!isAvailable()){ return (null); }; _title = getProperty("document.title"); return (_title); } } }//package com.google.analytics.externalSection 177//JavascriptProxy (com.google.analytics.external.JavascriptProxy) package com.google.analytics.external { import com.google.analytics.debug.*; import flash.system.*; import flash.external.*; public class JavascriptProxy { private var _notAvailableWarning:Boolean;// = true private var _debug:DebugConfiguration; public static var setProperty_js:XML = <script> <![CDATA[ function( path , value ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } target[ prop ] = value ; } ]]> </script> ; public static var hasProperty_js:XML = <script> <![CDATA[ function( path ) { var paths; if( path.indexOf(".") > 0 ) { paths = path.split("."); } else { paths = [path]; } var target = window ; var len = paths.length ; for( var i = 0 ; i < len ; i++ ) { target = target[ paths[i] ] ; } if( target ) { return true; } else { return false; } } ]]> </script> ; public static var setPropertyRef_js:XML = <script> <![CDATA[ function( path , target ) { var paths; var prop; if( path.indexOf(".") > 0 ) { paths = path.split("."); prop = paths.pop() ; } else { paths = []; prop = path; } alert( "paths:"+paths.length+", prop:"+prop ); var targets; var name; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } alert( "targets:"+targets.length+", name:"+name ); var root = window; var len = paths.length; for( var i = 0 ; i < len ; i++ ) { root = root[ paths[i] ] ; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } root[ prop ] = ref[name] ; } ]]> </script> ; public function JavascriptProxy(_arg1:DebugConfiguration){ _debug = _arg1; } public function getProperty(_arg1:String){ return (call((_arg1 + ".valueOf"))); } public function hasProperty(_arg1:String):Boolean{ return (call(hasProperty_js, _arg1)); } public function setProperty(_arg1:String, _arg2):void{ call(setProperty_js, _arg1, _arg2); } public function executeBlock(_arg1:String):void{ var data = _arg1; if (isAvailable()){ try { ExternalInterface.call(data); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; } public function getPropertyString(_arg1:String):String{ return (call((_arg1 + ".toString"))); } public function setPropertyByReference(_arg1:String, _arg2:String):void{ call(setPropertyRef_js, _arg1, _arg2); } public function call(_arg1:String, ... _args){ var output:String; var functionName = _arg1; var args = _args; if (isAvailable()){ try { if (((_debug.javascript) && (_debug.verbose))){ output = ""; output = ("Flash->JS: " + functionName); output = (output + "( "); if (args.length > 0){ output = (output + args.join(",")); }; output = (output + " )"); _debug.info(output); }; args.unshift(functionName); return (ExternalInterface.call.apply(ExternalInterface, args)); } catch(e:SecurityError) { if (_debug.javascript){ _debug.warning("ExternalInterface is not allowed.\nEnsure that allowScriptAccess is set to \"always\" in the Flash embed HTML."); }; } catch(e:Error) { if (_debug.javascript){ _debug.warning(("ExternalInterface failed to make the call\nreason: " + e.message)); }; }; }; return (null); } public function isAvailable():Boolean{ var _local1:Boolean = ExternalInterface.available; if (((_local1) && ((Capabilities.playerType == "External")))){ _local1 = false; }; if (((((!(_local1)) && (_debug.javascript))) && (_notAvailableWarning))){ _debug.warning("ExternalInterface is not available."); _notAvailableWarning = false; }; return (_local1); } } }//package com.google.analytics.externalSection 178//Environment (com.google.analytics.utils.Environment) package com.google.analytics.utils { import com.google.analytics.debug.*; import flash.system.*; import com.google.analytics.external.*; public class Environment { private var _dom:HTMLDOM; private var _appName:String; private var _debug:DebugConfiguration; private var _appVersion:Version; private var _url:String; private var _protocol:Protocols; private var _userAgent:UserAgent; public function Environment(_arg1:String="", _arg2:String="", _arg3:String="", _arg4:DebugConfiguration=null, _arg5:HTMLDOM=null){ var _local6:Version; super(); if (_arg2 == ""){ if (isAIR()){ _arg2 = "AIR"; } else { _arg2 = "Flash"; }; }; if (_arg3 == ""){ _local6 = flashVersion; } else { _local6 = Version.fromString(_arg3); }; _url = _arg1; _appName = _arg2; _appVersion = _local6; _debug = _arg4; _dom = _arg5; } public function isAIR():Boolean{ return ((((playerType == "Desktop")) && ((Security.sandboxType.toString() == "application")))); } public function get screenWidth():Number{ return (Capabilities.screenResolutionX); } public function get playerType():String{ return (Capabilities.playerType); } public function get locationSearch():String{ var _local1:String = _dom.search; if (_local1){ return (_local1); }; return (""); } public function get protocol():Protocols{ if (!_protocol){ _findProtocol(); }; return (_protocol); } public function get flashVersion():Version{ var _local1:Version = Version.fromString(Capabilities.version.split(" ")[1], ","); return (_local1); } public function get userAgent():UserAgent{ if (!_userAgent){ _userAgent = new UserAgent(this, appName, appVersion.toString(4)); }; return (_userAgent); } public function get languageEncoding():String{ var _local1:String; if (System.useCodePage){ _local1 = _dom.characterSet; if (_local1){ return (_local1); }; return ("-"); }; return ("UTF-8"); } public function get appName():String{ return (_appName); } public function get screenColorDepth():String{ var _local1:String; switch (Capabilities.screenColor){ case "bw": _local1 = "1"; break; case "gray": _local1 = "2"; break; case "color": default: _local1 = "24"; }; var _local2:String = _dom.colorDepth; if (_local2){ _local1 = _local2; }; return (_local1); } private function _findProtocol():void{ var _local4:String; var _local5:String; var _local1:Protocols = Protocols.none; if (_url != ""){ _local4 = _url.toLowerCase(); _local5 = _local4.substr(0, 5); switch (_local5){ case "file:": _local1 = Protocols.file; break; case "http:": _local1 = Protocols.HTTP; break; case "https": if (_local4.charAt(5) == ":"){ _local1 = Protocols.HTTPS; }; break; default: _protocol = Protocols.none; }; }; var _local2:String = _dom.protocol; var _local3:String = (_local1.toString() + ":").toLowerCase(); if (((((_local2) && (!((_local2 == _local3))))) && (_debug))){ _debug.warning(((("Protocol mismatch: SWF=" + _local3) + ", DOM=") + _local2)); }; _protocol = _local1; } public function get locationSWFPath():String{ return (_url); } public function get platform():String{ var _local1:String = Capabilities.manufacturer; return (_local1.split("Adobe ")[1]); } public function get operatingSystem():String{ return (Capabilities.os); } public function set appName(_arg1:String):void{ _appName = _arg1; userAgent.applicationProduct = _arg1; } function set url(_arg1:String):void{ _url = _arg1; } public function get referrer():String{ var _local1:String = _dom.referrer; if (_local1){ return (_local1); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function isInHTML():Boolean{ return ((Capabilities.playerType == "PlugIn")); } public function get language():String{ var _local1:String = _dom.language; var _local2:String = Capabilities.language; if (_local1){ if ((((_local1.length > _local2.length)) && ((_local1.substr(0, _local2.length) == _local2)))){ _local2 = _local1; }; }; return (_local2); } public function get domainName():String{ var _local1:String; var _local2:String; var _local3:int; if ((((protocol == Protocols.HTTP)) || ((protocol == Protocols.HTTPS)))){ _local1 = _url.toLowerCase(); if (protocol == Protocols.HTTP){ _local2 = _local1.split("http://").join(""); } else { if (protocol == Protocols.HTTPS){ _local2 = _local1.split("https://").join(""); }; }; _local3 = _local2.indexOf("/"); if (_local3 > -1){ _local2 = _local2.substring(0, _local3); }; return (_local2); }; if (protocol == Protocols.file){ return ("localhost"); }; return (""); } public function set userAgent(_arg1:UserAgent):void{ _userAgent = _arg1; } public function set appVersion(_arg1:Version):void{ _appVersion = _arg1; userAgent.applicationVersion = _arg1.toString(4); } public function get screenHeight():Number{ return (Capabilities.screenResolutionY); } public function get locationPath():String{ var _local1:String = _dom.pathname; if (_local1){ return (_local1); }; return (""); } public function get documentTitle():String{ var _local1:String = _dom.title; if (_local1){ return (_local1); }; return (""); } public function get appVersion():Version{ return (_appVersion); } } }//package com.google.analytics.utilsSection 179//Protocols (com.google.analytics.utils.Protocols) package com.google.analytics.utils { public class Protocols { private var _value:int; private var _name:String; public static const none:Protocols = new Protocols(0, "none"); ; public static const HTTPS:Protocols = new Protocols(3, "HTTPS"); ; public static const file:Protocols = new Protocols(1, "file"); ; public static const HTTP:Protocols = new Protocols(2, "HTTP"); ; public function Protocols(_arg1:int=0, _arg2:String=""){ _value = _arg1; _name = _arg2; } public function valueOf():int{ return (_value); } public function toString():String{ return (_name); } } }//package com.google.analytics.utilsSection 180//Timespan (com.google.analytics.utils.Timespan) package com.google.analytics.utils { public class Timespan { public static var sixmonths:Number = 15768000; public static var twoyears:Number = 63072000; public static var thirtyminutes:Number = 1800; } }//package com.google.analytics.utilsSection 181//URL (com.google.analytics.utils.URL) package com.google.analytics.utils { public class URL { private var _url:String; public function URL(_arg1:String=""){ _url = _arg1.toLowerCase(); } public function get domain():String{ var _local1:Array; if (((!((hostName == ""))) && ((hostName.indexOf(".") > -1)))){ _local1 = hostName.split("."); switch (_local1.length){ case 2: return (hostName); case 3: if (_local1[1] == "co"){ return (hostName); }; _local1.shift(); return (_local1.join(".")); case 4: _local1.shift(); return (_local1.join(".")); }; }; return (""); } public function get path():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if (_local1.charAt(0) != "/"){ _local1 = ("/" + _local1); }; return (_local1); } public function get protocol():Protocols{ var _local1:String = _url.split("://")[0]; switch (_local1){ case "file": return (Protocols.file); case "http": return (Protocols.HTTP); case "https": return (Protocols.HTTPS); default: return (Protocols.none); }; } public function get hostName():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf("/") > -1){ _local1 = _local1.split("/")[0]; }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[0]; }; if ((((protocol == Protocols.file)) || ((protocol == Protocols.none)))){ return (""); }; return (_local1); } public function get subDomain():String{ if (((!((domain == ""))) && (!((domain == hostName))))){ return (hostName.split(("." + domain)).join("")); }; return (""); } public function get search():String{ var _local1:String = _url; if (_local1.indexOf("://") > -1){ _local1 = _local1.split("://")[1]; }; if (_local1.indexOf(hostName) == 0){ _local1 = _local1.substr(hostName.length); }; if (_local1.indexOf("?") > -1){ _local1 = _local1.split("?")[1]; } else { _local1 = ""; }; return (_local1); } } }//package com.google.analytics.utilsSection 182//UserAgent (com.google.analytics.utils.UserAgent) package com.google.analytics.utils { import com.google.analytics.core.*; import flash.system.*; public class UserAgent { private var _localInfo:Environment; private var _applicationProduct:String; private var _version:Version; public static var minimal:Boolean = false; public function UserAgent(_arg1:Environment, _arg2:String="", _arg3:String=""){ _localInfo = _arg1; applicationProduct = _arg2; _version = Version.fromString(_arg3); } public function get tamarinProductToken():String{ if (UserAgent.minimal){ return (""); }; if (System.vmVersion){ return (("Tamarin/" + Utils.trim(System.vmVersion, true))); }; return (""); } public function get applicationVersion():String{ return (_version.toString(2)); } public function get vendorProductToken():String{ var _local1 = ""; if (_localInfo.isAIR()){ _local1 = (_local1 + "AIR"); } else { _local1 = (_local1 + "FlashPlayer"); }; _local1 = (_local1 + "/"); _local1 = (_local1 + _version.toString(3)); return (_local1); } public function toString():String{ var _local1 = ""; _local1 = (_local1 + applicationProductToken); if (applicationComment != ""){ _local1 = (_local1 + (" " + applicationComment)); }; if (tamarinProductToken != ""){ _local1 = (_local1 + (" " + tamarinProductToken)); }; if (vendorProductToken != ""){ _local1 = (_local1 + (" " + vendorProductToken)); }; return (_local1); } public function get applicationComment():String{ var _local1:Array = []; _local1.push(_localInfo.platform); _local1.push(_localInfo.playerType); if (!UserAgent.minimal){ _local1.push(_localInfo.operatingSystem); _local1.push(_localInfo.language); }; if (Capabilities.isDebugger){ _local1.push("DEBUG"); }; if (_local1.length > 0){ return ((("(" + _local1.join("; ")) + ")")); }; return (""); } public function set applicationVersion(_arg1:String):void{ _version = Version.fromString(_arg1); } public function get applicationProductToken():String{ var _local1:String = applicationProduct; if (applicationVersion != ""){ _local1 = (_local1 + ("/" + applicationVersion)); }; return (_local1); } public function set applicationProduct(_arg1:String):void{ _applicationProduct = _arg1; } public function get applicationProduct():String{ return (_applicationProduct); } } }//package com.google.analytics.utilsSection 183//Variables (com.google.analytics.utils.Variables) package com.google.analytics.utils { import flash.net.*; public dynamic class Variables { public var post:Array; public var URIencode:Boolean; public var pre:Array; public var sort:Boolean;// = true public function Variables(_arg1:String=null, _arg2:Array=null, _arg3:Array=null){ pre = []; post = []; super(); if (_arg1){ decode(_arg1); }; if (_arg2){ this.pre = _arg2; }; if (_arg3){ this.post = _arg3; }; } private function _join(_arg1:Variables):void{ var _local2:String; if (!_arg1){ return; }; for (_local2 in _arg1) { this[_local2] = _arg1[_local2]; }; } public function join(... _args):void{ var _local2:int = _args.length; var _local3:int; while (_local3 < _local2) { if (!(_args[_local3] is Variables)){ } else { _join(_args[_local3]); }; _local3++; }; } public function toString():String{ var _local2:String; var _local3:String; var _local4:String; var _local5:int; var _local6:int; var _local7:String; var _local8:String; var _local1:Array = []; for (_local3 in this) { _local2 = this[_local3]; if (URIencode){ _local2 = encodeURI(_local2); }; _local1.push(((_local3 + "=") + _local2)); }; if (sort){ _local1.sort(); }; if (pre.length > 0){ pre.reverse(); _local5 = 0; while (_local5 < pre.length) { _local7 = pre[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local7) == 0){ _local1.unshift(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; pre.reverse(); }; if (post.length > 0){ _local5 = 0; while (_local5 < post.length) { _local8 = post[_local5]; _local6 = 0; while (_local6 < _local1.length) { _local4 = _local1[_local6]; if (_local4.indexOf(_local8) == 0){ _local1.push(_local1.splice(_local6, 1)[0]); }; _local6++; }; _local5++; }; }; return (_local1.join("&")); } public function decode(_arg1:String):void{ var _local2:Array; var _local3:String; var _local4:String; var _local5:String; var _local6:Array; if (_arg1 == ""){ return; }; if (_arg1.charAt(0) == "?"){ _arg1 = _arg1.substr(1, _arg1.length); }; if (_arg1.indexOf("&") > -1){ _local2 = _arg1.split("&"); } else { _local2 = [_arg1]; }; var _local7:int; while (_local7 < _local2.length) { _local3 = _local2[_local7]; if (_local3.indexOf("=") > -1){ _local6 = _local3.split("="); _local4 = _local6[0]; _local5 = decodeURI(_local6[1]); this[_local4] = _local5; }; _local7++; }; } public function toURLVariables():URLVariables{ var _local2:String; var _local1:URLVariables = new URLVariables(); for (_local2 in this) { _local1[_local2] = this[_local2]; }; return (_local1); } } }//package com.google.analytics.utilsSection 184//Version (com.google.analytics.utils.Version) package com.google.analytics.utils { public class Version { private var _revision:uint; private var _maxBuild:uint;// = 0xFF private var _maxMinor:uint;// = 15 private var _maxMajor:uint;// = 15 private var _separator:String;// = "." private var _maxRevision:uint;// = 0xFFFF private var _build:uint; private var _major:uint; private var _minor:uint; public function Version(_arg1:uint=0, _arg2:uint=0, _arg3:uint=0, _arg4:uint=0){ var _local5:Version; super(); if ((((((((_arg1 > _maxMajor)) && ((_arg2 == 0)))) && ((_arg3 == 0)))) && ((_arg4 == 0)))){ _local5 = Version.fromNumber(_arg1); _arg1 = _local5.major; _arg2 = _local5.minor; _arg3 = _local5.build; _arg4 = _local5.revision; }; this.major = _arg1; this.minor = _arg2; this.build = _arg3; this.revision = _arg4; } public function toString(_arg1:int=0):String{ var _local2:Array; if ((((_arg1 <= 0)) || ((_arg1 > 4)))){ _arg1 = getFields(); }; switch (_arg1){ case 1: _local2 = [major]; break; case 2: _local2 = [major, minor]; break; case 3: _local2 = [major, minor, build]; break; case 4: default: _local2 = [major, minor, build, revision]; }; return (_local2.join(_separator)); } public function set revision(_arg1:uint):void{ _revision = Math.min(_arg1, _maxRevision); } public function get revision():uint{ return (_revision); } public function set build(_arg1:uint):void{ _build = Math.min(_arg1, _maxBuild); } public function set minor(_arg1:uint):void{ _minor = Math.min(_arg1, _maxMinor); } public function get build():uint{ return (_build); } public function set major(_arg1:uint):void{ _major = Math.min(_arg1, _maxMajor); } public function get minor():uint{ return (_minor); } private function getFields():int{ var _local1 = 4; if (revision == 0){ _local1--; }; if ((((_local1 == 3)) && ((build == 0)))){ _local1--; }; if ((((_local1 == 2)) && ((minor == 0)))){ _local1--; }; return (_local1); } public function valueOf():uint{ return (((((major << 28) | (minor << 24)) | (build << 16)) | revision)); } public function get major():uint{ return (_major); } public function equals(_arg1):Boolean{ if (!(_arg1 is Version)){ return (false); }; if ((((((((_arg1.major == major)) && ((_arg1.minor == minor)))) && ((_arg1.build == build)))) && ((_arg1.revision == revision)))){ return (true); }; return (false); } public static function fromString(_arg1:String="", _arg2:String="."):Version{ var _local4:Array; var _local3:Version = new (Version); if ((((_arg1 == "")) || ((_arg1 == null)))){ return (_local3); }; if (_arg1.indexOf(_arg2) > -1){ _local4 = _arg1.split(_arg2); _local3.major = parseInt(_local4[0]); _local3.minor = parseInt(_local4[1]); _local3.build = parseInt(_local4[2]); _local3.revision = parseInt(_local4[3]); } else { _local3.major = parseInt(_arg1); }; return (_local3); } public static function fromNumber(_arg1:Number=0):Version{ var _local2:Version = new (Version); if (((((((((((isNaN(_arg1)) || ((_arg1 == 0)))) || ((_arg1 < 0)))) || ((_arg1 == Number.MAX_VALUE)))) || ((_arg1 == Number.POSITIVE_INFINITY)))) || ((_arg1 == Number.NEGATIVE_INFINITY)))){ return (_local2); }; _local2.major = (_arg1 >>> 28); _local2.minor = ((_arg1 & 251658240) >>> 24); _local2.build = ((_arg1 & 0xFF0000) >>> 16); _local2.revision = (_arg1 & 0xFFFF); return (_local2); } } }//package com.google.analytics.utilsSection 185//Bridge (com.google.analytics.v4.Bridge) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; public class Bridge implements GoogleAnalyticsAPI { private var _debug:DebugConfiguration; private var _proxy:JavascriptProxy; private var _jsContainer:String;// = "_GATracker" private var _hasGATracker:Boolean;// = false private var _account:String; private static var _linkTrackingObject_js:XML = <script> <![CDATA[ function( container , target ) { var targets ; var name ; if( target.indexOf(".") > 0 ) { targets = target.split("."); name = targets.pop(); } else { targets = []; name = target; } var ref = window; var depth = targets.length; for( var j = 0 ; j < depth ; j++ ) { ref = ref[ targets[j] ] ; } window[container][target] = ref[name] ; } ]]> </script> ; private static var _createTrackingObject_js:XML = <script> <![CDATA[ function( acct ) { _GATracker[acct] = _gat._getTracker(acct); } ]]> </script> ; private static var _injectTrackingObject_js:XML = <script> <![CDATA[ function() { try { _GATracker } catch(e) { _GATracker = {}; } } ]]> </script> ; private static var _checkGAJS_js:XML = <script> <![CDATA[ function() { if( _gat && _gat._getTracker ) { return true; } return false; } ]]> </script> ; private static var _checkValidTrackingObject_js:XML = <script> <![CDATA[ function(acct) { if( _GATracker[acct] && (_GATracker[acct]._getAccount) ) { return true ; } else { return false; } } ]]> </script> ; public function Bridge(_arg1:String, _arg2:DebugConfiguration, _arg3:JavascriptProxy){ var _local4:String; var _local5:String; var _local6:String; super(); _account = _arg1; _debug = _arg2; _proxy = _arg3; if (!_checkGAJS()){ _local4 = ""; _local4 = (_local4 + "ga.js not found, be sure to check if\n"); _local4 = (_local4 + "<script src=\"http://www.google-analytics.com/ga.js\"></script>\n"); _local4 = (_local4 + "is included in the HTML."); _debug.warning(_local4); throw (new Error(_local4)); }; if (!_hasGATracker){ if (((_debug.javascript) && (_debug.verbose))){ _local5 = ""; _local5 = (_local5 + "The Google Analytics tracking code was not found on the container page\n"); _local5 = (_local5 + "we create it"); _debug.info(_local5, VisualDebugMode.advanced); }; _injectTrackingObject(); }; if (Utils.validateAccount(_arg1)){ _createTrackingObject(_arg1); } else { if (_checkTrackingObject(_arg1)){ _linkTrackingObject(_arg1); } else { _local6 = ""; _local6 = (_local6 + (("JS Object \"" + _arg1) + "\" doesn't exist in DOM\n")); _local6 = (_local6 + "Bridge object not created."); _debug.warning(_local6); throw (new Error(_local6)); }; }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _debug.info((((("link( " + _arg1) + ", ") + _arg2) + " )")); _call("_link", _arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _call("_addOrganic", _arg1); } public function setAllowLinker(_arg1:Boolean):void{ _debug.info((("setAllowLinker( " + _arg1) + " )")); _call("_setAllowLinker", _arg1); } public function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String{ _debug.info((((("getLinkerUrl(" + _arg1) + ", ") + _arg2) + ")")); return (_call("_getLinkerUrl", _arg1, _arg2)); } private function _linkTrackingObject(_arg1:String):void{ _proxy.call(_linkTrackingObject_js, _jsContainer, _arg1); } public function setClientInfo(_arg1:Boolean):void{ _debug.info((("setClientInfo( " + _arg1) + " )")); _call("_setClientInfo", _arg1); } public function trackTrans():void{ _debug.info("trackTrans()"); _call("_trackTrans"); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ var _local5 = 2; if (((_arg3) && (!((_arg3 == ""))))){ _local5 = 3; }; if ((((_local5 == 3)) && (!(isNaN(_arg4))))){ _local5 = 4; }; switch (_local5){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3, _arg4)); case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2, _arg3)); case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); return (_call("_trackEvent", _arg1, _arg2)); }; } public function setCookieTimeout(_arg1:int):void{ _debug.info((("setCookieTimeout( " + _arg1) + " )")); _call("_setCookieTimeout", _arg1); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); _call("_trackPageview", _arg1); } private function _checkValidTrackingObject(_arg1:String):Boolean{ return (_proxy.call(_checkValidTrackingObject_js, _arg1)); } private function _checkGAJS():Boolean{ return (_proxy.call(_checkGAJS_js)); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning((((("linkByPost( " + _arg1) + ", ") + _arg2) + " ) not implemented")); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_call("_getClientInfo")); } private function _call(_arg1:String, ... _args){ _args.unshift(((((("window." + _jsContainer) + "[\"") + _account) + "\"].") + _arg1)); return (_proxy.call.apply(_proxy, _args)); } public function hasGAJS():Boolean{ return (_checkGAJS()); } private function _checkTrackingObject(_arg1:String):Boolean{ var _local2:Boolean = _proxy.hasProperty(_arg1); var _local3:Boolean = _proxy.hasProperty((_arg1 + "._getAccount")); return (((_local2) && (_local3))); } public function resetSession():void{ _debug.warning("resetSession() not implemented"); } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_call("_getDetectTitle")); } public function setCampNameKey(_arg1:String):void{ _debug.info((("setCampNameKey( " + _arg1) + " )")); _call("_setCampNameKey", _arg1); } public function setDetectFlash(_arg1:Boolean):void{ _debug.info((("setDetectFlash( " + _arg1) + " )")); _call("_setDetectFlash", _arg1); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _debug.info((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " )")); _call("_addItem", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _call("_clearIgnoreOrganic"); } public function setVar(_arg1:String):void{ _debug.info((("setVar( " + _arg1) + " )")); _call("_setVar", _arg1); } public function setDomainName(_arg1:String):void{ _debug.info((("setDomainName( " + _arg1) + " )")); _call("_setDomainName", _arg1); } public function hasTrackingAccount(_arg1:String):Boolean{ if (Utils.validateAccount(_arg1)){ return (_checkValidTrackingObject(_arg1)); }; return (_checkTrackingObject(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _debug.info((("setCampSourceKey( " + _arg1) + " )")); _call("_setCampSourceKey", _arg1); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):void{ _debug.info((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " )")); _call("_addTrans", _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); } public function setCampContentKey(_arg1:String):void{ _debug.info((("setCampContentKey( " + _arg1) + " )")); _call("_setCampContentKey", _arg1); } public function setLocalServerMode():void{ _debug.info("setLocalServerMode()"); _call("_setLocalServerMode"); } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_call("_getLocalGifPath")); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _call("_clearIgnoreRef"); } public function setAllowAnchor(_arg1:Boolean):void{ _debug.info((("setAllowAnchor( " + _arg1) + " )")); _call("_setAllowAnchor", _arg1); } public function setLocalGifPath(_arg1:String):void{ _debug.info((("setLocalGifPath( " + _arg1) + " )")); _call("_setLocalGifPath", _arg1); } public function getVersion():String{ _debug.info("getVersion()"); return (_call("_getVersion")); } private function _injectTrackingObject():void{ _proxy.executeBlock(_injectTrackingObject_js); _hasGATracker = true; } public function setCookiePath(_arg1:String):void{ _debug.info((("setCookiePath( " + _arg1) + " )")); _call("_setCookiePath", _arg1); } public function setSampleRate(_arg1:Number):void{ _debug.info((("setSampleRate( " + _arg1) + " )")); _call("_setSampleRate", _arg1); } public function setAllowHash(_arg1:Boolean):void{ _debug.info((("setAllowHash( " + _arg1) + " )")); _call("_setAllowHash", _arg1); } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _call("_addIgnoredOrganic", _arg1); } public function setCampNOKey(_arg1:String):void{ _debug.info((("setCampNOKey( " + _arg1) + " )")); _call("_setCampNOKey", _arg1); } public function cookiePathCopy(_arg1:String):void{ _debug.info((("cookiePathCopy( " + _arg1) + " )")); _call("_cookiePathCopy", _arg1); } public function setLocalRemoteServerMode():void{ _debug.info("setLocalRemoteServerMode()"); _call("_setLocalRemoteServerMode"); } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_call("_getServiceMode")); } public function setDetectTitle(_arg1:Boolean):void{ _debug.info((("setDetectTitle( " + _arg1) + " )")); _call("_setDetectTitle", _arg1); } private function _createTrackingObject(_arg1:String):void{ _proxy.call(_createTrackingObject_js, _arg1); } public function setCampaignTrack(_arg1:Boolean):void{ _debug.info((("setCampaignTrack( " + _arg1) + " )")); _call("_setCampaignTrack", _arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _call("_clearOrganic"); } public function setCampTermKey(_arg1:String):void{ _debug.info((("setCampTermKey( " + _arg1) + " )")); _call("_setCampTermKey", _arg1); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_call("_getDetectFlash")); } public function setCampMediumKey(_arg1:String):void{ _debug.info((("setCampMediumKey( " + _arg1) + " )")); _call("_setCampMediumKey", _arg1); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _call("_addIgnoredRef", _arg1); } public function setSessionTimeout(_arg1:int):void{ _debug.info((("setSessionTimeout( " + _arg1) + " )")); _call("_setSessionTimeout", _arg1); } public function setRemoteServerMode():void{ _debug.info("setRemoteServerMode()"); _call("_setRemoteServerMode"); } public function getAccount():String{ _debug.info("getAccount()"); return (_call("_getAccount")); } } }//package com.google.analytics.v4Section 186//Configuration (com.google.analytics.v4.Configuration) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import com.google.analytics.utils.*; import com.google.analytics.campaign.*; public class Configuration { public var serverMode:ServerOperationMode; public var detectFlash:Boolean;// = true public var hasSiteOverlay:Boolean;// = false public var allowLocalTracking:Boolean;// = true public var secureRemoteGIFpath:String;// = "https://ssl.google-analytics.com/__utm.gif" private var _version:String;// = "4.3as" public var allowDomainHash:Boolean;// = true public var detectClientInfo:Boolean;// = true public var idleLoop:Number;// = 30 public var isTrackOutboundSubdomains:Boolean;// = false public var cookiePath:String;// = "/" public var transactionFieldDelim:String;// = "|" private var _organic:Organic; private var _cookieName:String;// = "analytics" public var campaignKey:CampaignKey; public var google:String;// = "google" public var googleCsePath:String;// = "cse" public var bucketCapacity:Number;// = 10 private var _sampleRate:Number;// = 1 public var remoteGIFpath:String;// = "http://www.google-analytics.com/__utm.gif" public var googleSearchParam:String;// = "q" public var allowLinker:Boolean;// = false public var maxOutboundLinkExamined:Number;// = 1000 private var _debug:DebugConfiguration; public var allowAnchor:Boolean;// = false private var _domain:Domain; private var _trackingLimitPerSession:int;// = 500 public var tokenCliff:int;// = 10 public var sessionTimeout:Number; public var idleTimeout:Number;// = 60 public var campaignTracking:Boolean;// = true public var domainName:String;// = "" public var detectTitle:Boolean;// = true public var tokenRate:Number;// = 0.2 public var conversionTimeout:Number; public var localGIFpath:String;// = "/__utm.gif" public function Configuration(_arg1:DebugConfiguration=null){ _organic = new Organic(); conversionTimeout = Timespan.sixmonths; sessionTimeout = Timespan.thirtyminutes; campaignKey = new CampaignKey(); serverMode = ServerOperationMode.remote; super(); _debug = _arg1; _domain = new Domain(DomainNameMode.auto, "", _debug); serverMode = ServerOperationMode.remote; _initOrganicSources(); } public function get organic():Organic{ return (_organic); } public function get cookieName():String{ return (_cookieName); } public function get trackingLimitPerSession():int{ return (_trackingLimitPerSession); } private function _initOrganicSources():void{ addOrganicSource(google, googleSearchParam); addOrganicSource("yahoo", "p"); addOrganicSource("msn", "q"); addOrganicSource("aol", "query"); addOrganicSource("aol", "encquery"); addOrganicSource("lycos", "query"); addOrganicSource("ask", "q"); addOrganicSource("altavista", "q"); addOrganicSource("netscape", "query"); addOrganicSource("cnn", "query"); addOrganicSource("looksmart", "qt"); addOrganicSource("about", "terms"); addOrganicSource("mamma", "query"); addOrganicSource("alltheweb", "q"); addOrganicSource("gigablast", "q"); addOrganicSource("voila", "rdata"); addOrganicSource("virgilio", "qs"); addOrganicSource("live", "q"); addOrganicSource("baidu", "wd"); addOrganicSource("alice", "qs"); addOrganicSource("yandex", "text"); addOrganicSource("najdi", "q"); addOrganicSource("aol", "q"); addOrganicSource("club-internet", "q"); addOrganicSource("mama", "query"); addOrganicSource("seznam", "q"); addOrganicSource("search", "q"); addOrganicSource("wp", "szukaj"); addOrganicSource("onet", "qt"); addOrganicSource("netsprint", "q"); addOrganicSource("google.interia", "q"); addOrganicSource("szukacz", "q"); addOrganicSource("yam", "k"); addOrganicSource("pchome", "q"); addOrganicSource("kvasir", "searchExpr"); addOrganicSource("sesam", "q"); addOrganicSource("ozu", "q"); addOrganicSource("terra", "query"); addOrganicSource("nostrum", "query"); addOrganicSource("mynet", "q"); addOrganicSource("ekolay", "q"); addOrganicSource("search.ilse", "search_for"); } public function get sampleRate():Number{ return (_sampleRate); } public function addOrganicSource(_arg1:String, _arg2:String):void{ var engine = _arg1; var keyword = _arg2; try { _organic.addSource(engine, keyword); } catch(e:Error) { if (((_debug) && (_debug.active))){ _debug.warning(e.message); }; }; } public function get domain():Domain{ return (_domain); } public function set sampleRate(_arg1:Number):void{ if (_arg1 <= 0){ _arg1 = 0.1; }; if (_arg1 > 1){ _arg1 = 1; }; _arg1 = Number(_arg1.toFixed(2)); _sampleRate = _arg1; } public function get version():String{ return (_version); } } }//package com.google.analytics.v4Section 187//GoogleAnalyticsAPI (com.google.analytics.v4.GoogleAnalyticsAPI) package com.google.analytics.v4 { import com.google.analytics.core.*; public interface GoogleAnalyticsAPI { function setCampSourceKey(_arg1:String):void; function setDetectTitle(_arg1:Boolean):void; function setLocalRemoteServerMode():void; function resetSession():void; function setLocalServerMode():void; function setCampContentKey(_arg1:String):void; function addOrganic(_arg1:String, _arg2:String):void; function setDetectFlash(_arg1:Boolean):void; function setAllowLinker(_arg1:Boolean):void; function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean; function setCampTermKey(_arg1:String):void; function setCampNameKey(_arg1:String):void; function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String; function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void; function clearIgnoredRef():void; function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):void; function getDetectFlash():Boolean; function setCampaignTrack(_arg1:Boolean):void; function createEventTracker(_arg1:String):EventTracker; function setCookieTimeout(_arg1:int):void; function setAllowAnchor(_arg1:Boolean):void; function trackTrans():void; function clearOrganic():void; function trackPageview(_arg1:String=""):void; function setLocalGifPath(_arg1:String):void; function getVersion():String; function getLocalGifPath():String; function getServiceMode():ServerOperationMode; function setVar(_arg1:String):void; function clearIgnoredOrganic():void; function setCampMediumKey(_arg1:String):void; function addIgnoredRef(_arg1:String):void; function setClientInfo(_arg1:Boolean):void; function setCookiePath(_arg1:String):void; function setSampleRate(_arg1:Number):void; function setSessionTimeout(_arg1:int):void; function setRemoteServerMode():void; function setDomainName(_arg1:String):void; function addIgnoredOrganic(_arg1:String):void; function setAllowHash(_arg1:Boolean):void; function getAccount():String; function linkByPost(_arg1:Object, _arg2:Boolean=false):void; function link(_arg1:String, _arg2:Boolean=false):void; function setCampNOKey(_arg1:String):void; function getClientInfo():Boolean; function cookiePathCopy(_arg1:String):void; function getDetectTitle():Boolean; } }//package com.google.analytics.v4Section 188//Tracker (com.google.analytics.v4.Tracker) package com.google.analytics.v4 { import com.google.analytics.core.*; import com.google.analytics.debug.*; import flash.net.*; import com.google.analytics.data.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.ecommerce.*; import com.google.analytics.campaign.*; public class Tracker implements GoogleAnalyticsAPI { private const EVENT_TRACKER_LABEL_KEY_NUM:int = 3; private const EVENT_TRACKER_VALUE_VALUE_NUM:int = 1; private const EVENT_TRACKER_PROJECT_ID:int = 5; private const EVENT_TRACKER_OBJECT_NAME_KEY_NUM:int = 1; private const EVENT_TRACKER_TYPE_KEY_NUM:int = 2; private var _adSense:AdSenseGlobals; private var _eventTracker:X10; private var _noSessionInformation:Boolean;// = false private var _browserInfo:BrowserInfo; private var _debug:DebugConfiguration; private var _isNewVisitor:Boolean;// = false private var _buffer:Buffer; private var _config:Configuration; private var _x10Module:X10; private var _campaign:CampaignManager; private var _formatedReferrer:String; private var _timeStamp:Number; private var _info:Environment; private var _domainHash:Number; private var _campaignInfo:CampaignInfo; private var _gifRequest:GIFRequest; private var _hasInitData:Boolean;// = false private var _ecom:Ecommerce; private var _account:String; public function Tracker(_arg1:String, _arg2:Configuration, _arg3:DebugConfiguration, _arg4:Environment, _arg5:Buffer, _arg6:GIFRequest, _arg7:AdSenseGlobals, _arg8:Ecommerce){ var _local9:String; super(); _account = _arg1; _config = _arg2; _debug = _arg3; _info = _arg4; _buffer = _arg5; _gifRequest = _arg6; _adSense = _arg7; _ecom = _arg8; if (!Utils.validateAccount(_arg1)){ _local9 = (("Account \"" + _arg1) + "\" is not valid."); _debug.warning(_local9); throw (new Error(_local9)); }; } private function _doTracking():Boolean{ if (((((!((_info.protocol == Protocols.file))) && (!((_info.protocol == Protocols.none))))) && (_isNotGoogleSearch()))){ return (true); }; if (_config.allowLocalTracking){ return (true); }; return (false); } public function addOrganic(_arg1:String, _arg2:String):void{ _debug.info((("addOrganic( " + [_arg1, _arg2].join(", ")) + " )")); _config.organic.addSource(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _config.allowLinker = _arg1; _debug.info((("setAllowLinker( " + _config.allowLinker) + " )")); } public function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String{ _initData(); _debug.info((((("getLinkerUrl( " + _arg1) + ", ") + _arg2.toString()) + " )")); return (_buffer.getLinkerUrl(_arg1, _arg2)); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ _initData(); var _local5:Boolean; var _local6 = 2; if (((!((_arg1 == ""))) && (!((_arg2 == ""))))){ _eventTracker.clearKey(EVENT_TRACKER_PROJECT_ID); _eventTracker.clearValue(EVENT_TRACKER_PROJECT_ID); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_OBJECT_NAME_KEY_NUM, _arg1); _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_TYPE_KEY_NUM, _arg2); if (((_arg3) && (!((_arg3 == ""))))){ _local5 = _eventTracker.setKey(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_LABEL_KEY_NUM, _arg3); _local6 = 3; if (!isNaN(_arg4)){ _local5 = _eventTracker.setValue(EVENT_TRACKER_PROJECT_ID, EVENT_TRACKER_VALUE_VALUE_NUM, _arg4); _local6 = 4; }; }; if (_local5){ _debug.info(((("valid event tracking call\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _sendXEvent(_eventTracker); }; } else { _debug.warning(((("event tracking call is not valid, failed!\ncategory: " + _arg1) + "\naction: ") + _arg2), VisualDebugMode.geek); _local5 = false; }; switch (_local6){ case 4: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3, _arg4].join(", ")) + " )")); break; case 3: _debug.info((("trackEvent( " + [_arg1, _arg2, _arg3].join(", ")) + " )")); break; case 2: default: _debug.info((("trackEvent( " + [_arg1, _arg2].join(", ")) + " )")); }; return (_local5); } public function trackPageview(_arg1:String=""):void{ _debug.info((("trackPageview( " + _arg1) + " )")); if (_doTracking()){ _initData(); _trackMetrics(_arg1); _noSessionInformation = false; } else { _debug.warning((("trackPageview( " + _arg1) + " ) failed")); }; } public function setCookieTimeout(_arg1:int):void{ _config.conversionTimeout = _arg1; _debug.info((("setCookieTimeout( " + _config.conversionTimeout) + " )")); } public function trackTrans():void{ var _local1:Number; var _local2:Number; var _local4:Transaction; _initData(); var _local3:Array = new Array(); if (_takeSample()){ _local1 = 0; while (_local1 < _ecom.getTransLength()) { _local4 = _ecom.getTransFromArray(_local1); _local3.push(_local4.toGifParams()); _local2 = 0; while (_local2 < _local4.getItemsLength()) { _local3.push(_local4.getItemFromArray(_local2).toGifParams()); _local2++; }; _local1++; }; _local1 = 0; while (_local1 < _local3.length) { _gifRequest.send(_account, _local3[_local1]); _local1++; }; }; } public function setClientInfo(_arg1:Boolean):void{ _config.detectClientInfo = _arg1; _debug.info((("setClientInfo( " + _config.detectClientInfo) + " )")); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _debug.warning("linkByPost not implemented in AS3 mode"); } private function _initData():void{ var _local1:String; var _local2:String; if (!_hasInitData){ _updateDomainName(); _domainHash = _getDomainHash(); _timeStamp = Math.round((new Date().getTime() / 1000)); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "_initData 0"); _local1 = (_local1 + ("\ndomain name: " + _config.domainName)); _local1 = (_local1 + ("\ndomain hash: " + _domainHash)); _local1 = (_local1 + (((("\ntimestamp: " + _timeStamp) + " (") + new Date((_timeStamp * 1000))) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_doTracking()){ _handleCookie(); }; if (!_hasInitData){ if (_doTracking()){ _formatedReferrer = _formatReferrer(); _browserInfo = new BrowserInfo(_config, _info); _debug.info(("browserInfo: " + _browserInfo.toURLString()), VisualDebugMode.advanced); if (_config.campaignTracking){ _campaign = new CampaignManager(_config, _debug, _buffer, _domainHash, _formatedReferrer, _timeStamp); _campaignInfo = _campaign.getCampaignInformation(_info.locationSearch, _noSessionInformation); _debug.info(("campaignInfo: " + _campaignInfo.toURLString()), VisualDebugMode.advanced); _debug.info(("Search: " + _info.locationSearch)); _debug.info(("CampaignTrackig: " + _buffer.utmz.campaignTracking)); }; }; _x10Module = new X10(); _eventTracker = new X10(); _hasInitData = true; }; if (_config.hasSiteOverlay){ _debug.warning("Site Overlay is not supported"); }; if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "_initData (misc)"); _local2 = (_local2 + ("\nflash version: " + _info.flashVersion.toString(4))); _local2 = (_local2 + ("\nprotocol: " + _info.protocol)); _local2 = (_local2 + (("\ndefault domain name (auto): \"" + _info.domainName) + "\"")); _local2 = (_local2 + ("\nlanguage: " + _info.language)); _local2 = (_local2 + ("\ndomain hash: " + _getDomainHash())); _local2 = (_local2 + ("\nuser-agent: " + _info.userAgent)); _debug.info(_local2, VisualDebugMode.geek); }; } public function getDetectTitle():Boolean{ _debug.info("getDetectTitle()"); return (_config.detectTitle); } public function resetSession():void{ _debug.info("resetSession()"); _buffer.resetCurrentSession(); } public function getClientInfo():Boolean{ _debug.info("getClientInfo()"); return (_config.detectClientInfo); } private function _sendXEvent(_arg1:X10=null):void{ var _local2:Variables; var _local3:EventInfo; var _local4:Variables; var _local5:Variables; if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; _local3 = new EventInfo(true, _x10Module, _arg1); _local4 = _local3.toVariables(); _local5 = _renderMetricsSearchVariables(); _local2.join(_local4, _local5); _gifRequest.send(_account, _local2, false, true); }; } public function setDetectFlash(_arg1:Boolean):void{ _config.detectFlash = _arg1; _debug.info((("setDetectFlash( " + _config.detectFlash) + " )")); } public function setCampNameKey(_arg1:String):void{ _config.campaignKey.UCCN = _arg1; var _local2 = (("setCampNameKey( " + _config.campaignKey.UCCN) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCN]")); } else { _debug.info(_local2); }; } private function _formatReferrer():String{ var _local2:String; var _local3:URL; var _local4:URL; var _local1:String = _info.referrer; if ((((_local1 == "")) || ((_local1 == "localhost")))){ _local1 = "-"; } else { _local2 = _info.domainName; _local3 = new URL(_local1); _local4 = new URL(("http://" + _local2)); if (_local3.hostName == _local2){ return ("-"); }; if (_local4.domain == _local3.domain){ if (_local4.subDomain != _local3.subDomain){ _local1 = "0"; }; }; if ((((_local1.charAt(0) == "[")) && (_local1.charAt((_local1.length - 1))))){ _local1 = "-"; }; }; _debug.info(("formated referrer: " + _local1), VisualDebugMode.advanced); return (_local1); } private function _visitCode():Number{ if (_debug.verbose){ _debug.info(("visitCode: " + _buffer.utma.sessionId), VisualDebugMode.geek); }; return (_buffer.utma.sessionId); } public function createEventTracker(_arg1:String):EventTracker{ _debug.info((("createEventTracker( " + _arg1) + " )")); return (new EventTracker(_arg1, this)); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ var _local7:Transaction; _local7 = _ecom.getTransaction(_arg1); if (_local7 == null){ _local7 = _ecom.addTransaction(_arg1, "", "", "", "", "", "", ""); }; _local7.addItem(_arg2, _arg3, _arg4, _arg5.toString(), _arg6.toString()); if (_debug.active){ _debug.info((("addItem( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6].join(", ")) + " )")); }; } public function clearIgnoredOrganic():void{ _debug.info("clearIgnoredOrganic()"); _config.organic.clearIgnoredKeywords(); } public function setVar(_arg1:String):void{ var _local2:Variables; if (((!((_arg1 == ""))) && (_isNotGoogleSearch()))){ _initData(); _buffer.utmv.domainHash = _domainHash; _buffer.utmv.value = encodeURI(_arg1); if (_debug.verbose){ _debug.info(_buffer.utmv.toString(), VisualDebugMode.geek); }; _debug.info((("setVar( " + _arg1) + " )")); if (_takeSample()){ _local2 = new Variables(); _local2.utmt = "var"; _gifRequest.send(_account, _local2); }; } else { _debug.warning((("setVar \"" + _arg1) + "\" is ignored")); }; } public function setDomainName(_arg1:String):void{ if (_arg1 == "auto"){ _config.domain.mode = DomainNameMode.auto; } else { if (_arg1 == "none"){ _config.domain.mode = DomainNameMode.none; } else { _config.domain.mode = DomainNameMode.custom; _config.domain.name = _arg1; }; }; _updateDomainName(); _debug.info((("setDomainName( " + _config.domainName) + " )")); } private function _updateDomainName():void{ var _local1:String; if (_config.domain.mode == DomainNameMode.auto){ _local1 = _info.domainName; if (_local1.substring(0, 4) == "www."){ _local1 = _local1.substring(4); }; _config.domain.name = _local1; }; _config.domainName = _config.domain.name.toLowerCase(); _debug.info(("domain name: " + _config.domainName), VisualDebugMode.advanced); } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):void{ _ecom.addTransaction(_arg1, _arg2, _arg3.toString(), _arg4.toString(), _arg5.toString(), _arg6, _arg7, _arg8); if (_debug.active){ _debug.info((("addTrans( " + [_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8].join(", ")) + " );")); }; } private function _renderMetricsSearchVariables(_arg1:String=""):Variables{ var _local4:Variables; var _local2:Variables = new Variables(); _local2.URIencode = true; var _local3:DocumentInfo = new DocumentInfo(_config, _info, _formatedReferrer, _arg1, _adSense); _debug.info(("docInfo: " + _local3.toURLString()), VisualDebugMode.geek); if (_config.campaignTracking){ _local4 = _campaignInfo.toVariables(); }; var _local5:Variables = _browserInfo.toVariables(); _local2.join(_local3.toVariables(), _local5, _local4); return (_local2); } public function setCampContentKey(_arg1:String):void{ _config.campaignKey.UCCT = _arg1; var _local2 = (("setCampContentKey( " + _config.campaignKey.UCCT) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCCT]")); } else { _debug.info(_local2); }; } private function _handleCookie():void{ var _local1:String; var _local2:String; var _local3:Array; var _local4:String; if (_config.allowLinker){ }; _buffer.createSO(); if (((_buffer.hasUTMA()) && (!(_buffer.utma.isEmpty())))){ if (((!(_buffer.hasUTMB())) || (!(_buffer.hasUTMC())))){ _buffer.updateUTMA(_timeStamp); _noSessionInformation = true; }; if (_debug.verbose){ _debug.info(("from cookie " + _buffer.utma.toString()), VisualDebugMode.geek); }; } else { _debug.info("create a new utma", VisualDebugMode.advanced); _buffer.utma.domainHash = _domainHash; _buffer.utma.sessionId = _getUniqueSessionId(); _buffer.utma.firstTime = _timeStamp; _buffer.utma.lastTime = _timeStamp; _buffer.utma.currentTime = _timeStamp; _buffer.utma.sessionCount = 1; if (_debug.verbose){ _debug.info(_buffer.utma.toString(), VisualDebugMode.geek); }; _noSessionInformation = true; _isNewVisitor = true; }; if (((_adSense.gaGlobal) && ((_adSense.dh == String(_domainHash))))){ if (_adSense.sid){ _buffer.utma.currentTime = Number(_adSense.sid); if (_debug.verbose){ _local1 = ""; _local1 = (_local1 + "AdSense sid found\n"); _local1 = (_local1 + (((("Override currentTime(" + _buffer.utma.currentTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local1, VisualDebugMode.geek); }; }; if (_isNewVisitor){ if (_adSense.sid){ _buffer.utma.lastTime = Number(_adSense.sid); if (_debug.verbose){ _local2 = ""; _local2 = (_local2 + "AdSense sid found (new visitor)\n"); _local2 = (_local2 + (((("Override lastTime(" + _buffer.utma.lastTime) + ") from AdSense sid(") + Number(_adSense.sid)) + ")")); _debug.info(_local2, VisualDebugMode.geek); }; }; if (_adSense.vid){ _local3 = _adSense.vid.split("."); _buffer.utma.sessionId = Number(_local3[0]); _buffer.utma.firstTime = Number(_local3[1]); if (_debug.verbose){ _local4 = ""; _local4 = (_local4 + "AdSense vid found (new visitor)\n"); _local4 = (_local4 + (((("Override sessionId(" + _buffer.utma.sessionId) + ") from AdSense vid(") + Number(_local3[0])) + ")\n")); _local4 = (_local4 + (((("Override firstTime(" + _buffer.utma.firstTime) + ") from AdSense vid(") + Number(_local3[1])) + ")")); _debug.info(_local4, VisualDebugMode.geek); }; }; if (_debug.verbose){ _debug.info(("AdSense modified : " + _buffer.utma.toString()), VisualDebugMode.geek); }; }; }; _buffer.utmb.domainHash = _domainHash; if (isNaN(_buffer.utmb.trackCount)){ _buffer.utmb.trackCount = 0; }; if (isNaN(_buffer.utmb.token)){ _buffer.utmb.token = _config.tokenCliff; }; if (isNaN(_buffer.utmb.lastTime)){ _buffer.utmb.lastTime = _buffer.utma.currentTime; }; _buffer.utmc.domainHash = _domainHash; if (_debug.verbose){ _debug.info(_buffer.utmb.toString(), VisualDebugMode.advanced); _debug.info(_buffer.utmc.toString(), VisualDebugMode.advanced); }; } public function setLocalServerMode():void{ _config.serverMode = ServerOperationMode.local; _debug.info("setLocalServerMode()"); } public function clearIgnoredRef():void{ _debug.info("clearIgnoredRef()"); _config.organic.clearIgnoredReferrals(); } public function setCampSourceKey(_arg1:String):void{ _config.campaignKey.UCSR = _arg1; var _local2 = (("setCampSourceKey( " + _config.campaignKey.UCSR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCSR]")); } else { _debug.info(_local2); }; } public function getLocalGifPath():String{ _debug.info("getLocalGifPath()"); return (_config.localGIFpath); } public function setLocalGifPath(_arg1:String):void{ _config.localGIFpath = _arg1; _debug.info((("setLocalGifPath( " + _config.localGIFpath) + " )")); } public function getVersion():String{ _debug.info("getVersion()"); return (_config.version); } public function setAllowAnchor(_arg1:Boolean):void{ _config.allowAnchor = _arg1; _debug.info((("setAllowAnchor( " + _config.allowAnchor) + " )")); } private function _isNotGoogleSearch():Boolean{ var _local1:String = _config.domainName; var _local2 = (_local1.indexOf("www.google.") < 0); var _local3 = (_local1.indexOf(".google.") < 0); var _local4 = (_local1.indexOf("google.") < 0); var _local5 = (_local1.indexOf("google.org") > -1); return (((((((((_local2) || (_local3))) || (_local4))) || (!((_config.cookiePath == "/"))))) || (_local5))); } public function setSampleRate(_arg1:Number):void{ if (_arg1 < 0){ _debug.warning("sample rate can not be negative, ignoring value."); } else { _config.sampleRate = _arg1; }; _debug.info((("setSampleRate( " + _config.sampleRate) + " )")); } private function _takeSample():Boolean{ if (_debug.verbose){ _debug.info((((("takeSample: (" + (_visitCode() % 10000)) + ") < (") + (_config.sampleRate * 10000)) + ")"), VisualDebugMode.geek); }; return (((_visitCode() % 10000) < (_config.sampleRate * 10000))); } public function setCookiePath(_arg1:String):void{ _config.cookiePath = _arg1; _debug.info((("setCookiePath( " + _config.cookiePath) + " )")); } public function setAllowHash(_arg1:Boolean):void{ _config.allowDomainHash = _arg1; _debug.info((("setAllowHash( " + _config.allowDomainHash) + " )")); } private function _generateUserDataHash():Number{ var _local1 = ""; _local1 = (_local1 + _info.appName); _local1 = (_local1 + _info.appVersion); _local1 = (_local1 + _info.language); _local1 = (_local1 + _info.platform); _local1 = (_local1 + _info.userAgent.toString()); _local1 = (_local1 + (((_info.screenWidth + "x") + _info.screenHeight) + _info.screenColorDepth)); _local1 = (_local1 + _info.referrer); return (Utils.generateHash(_local1)); } public function setCampNOKey(_arg1:String):void{ _config.campaignKey.UCNO = _arg1; var _local2 = (("setCampNOKey( " + _config.campaignKey.UCNO) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCNO]")); } else { _debug.info(_local2); }; } public function addIgnoredOrganic(_arg1:String):void{ _debug.info((("addIgnoredOrganic( " + _arg1) + " )")); _config.organic.addIgnoredKeyword(_arg1); } public function setLocalRemoteServerMode():void{ _config.serverMode = ServerOperationMode.both; _debug.info("setLocalRemoteServerMode()"); } public function cookiePathCopy(_arg1:String):void{ _debug.warning((("cookiePathCopy( " + _arg1) + " ) not implemented")); } public function setDetectTitle(_arg1:Boolean):void{ _config.detectTitle = _arg1; _debug.info((("setDetectTitle( " + _config.detectTitle) + " )")); } public function setCampTermKey(_arg1:String):void{ _config.campaignKey.UCTR = _arg1; var _local2 = (("setCampTermKey( " + _config.campaignKey.UCTR) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCTR]")); } else { _debug.info(_local2); }; } public function getServiceMode():ServerOperationMode{ _debug.info("getServiceMode()"); return (_config.serverMode); } private function _trackMetrics(_arg1:String=""):void{ var _local2:Variables; var _local3:Variables; var _local4:Variables; var _local5:EventInfo; if (_takeSample()){ _local2 = new Variables(); _local2.URIencode = true; if (((_x10Module) && (_x10Module.hasData()))){ _local5 = new EventInfo(false, _x10Module); _local3 = _local5.toVariables(); }; _local4 = _renderMetricsSearchVariables(_arg1); _local2.join(_local3, _local4); _gifRequest.send(_account, _local2); }; } public function setCampaignTrack(_arg1:Boolean):void{ _config.campaignTracking = _arg1; _debug.info((("setCampaignTrack( " + _config.campaignTracking) + " )")); } public function addIgnoredRef(_arg1:String):void{ _debug.info((("addIgnoredRef( " + _arg1) + " )")); _config.organic.addIgnoredReferral(_arg1); } public function clearOrganic():void{ _debug.info("clearOrganic()"); _config.organic.clearEngines(); } public function getDetectFlash():Boolean{ _debug.info("getDetectFlash()"); return (_config.detectFlash); } public function setCampMediumKey(_arg1:String):void{ _config.campaignKey.UCMD = _arg1; var _local2 = (("setCampMediumKey( " + _config.campaignKey.UCMD) + " )"); if (_debug.mode == VisualDebugMode.geek){ _debug.info((_local2 + " [UCMD]")); } else { _debug.info(_local2); }; } private function _getUniqueSessionId():Number{ var _local1:Number = ((Utils.generate32bitRandom() ^ _generateUserDataHash()) * 2147483647); _debug.info(("Session ID: " + _local1), VisualDebugMode.geek); return (_local1); } private function _getDomainHash():Number{ if (((((!(_config.domainName)) || ((_config.domainName == "")))) || ((_config.domain.mode == DomainNameMode.none)))){ _config.domainName = ""; return (1); }; _updateDomainName(); if (_config.allowDomainHash){ return (Utils.generateHash(_config.domainName)); }; return (1); } public function setSessionTimeout(_arg1:int):void{ _config.sessionTimeout = _arg1; _debug.info((("setSessionTimeout( " + _config.sessionTimeout) + " )")); } public function getAccount():String{ _debug.info("getAccount()"); return (_account); } public function link(_arg1:String, _arg2:Boolean=false):void{ var targetUrl = _arg1; var useHash = _arg2; _initData(); var out:String = _buffer.getLinkerUrl(targetUrl, useHash); var request:URLRequest = new URLRequest(out); _debug.info((("link( " + [targetUrl, useHash].join(",")) + " )")); try { navigateToURL(request, "_top"); } catch(e:Error) { _debug.warning(("An error occured in link() msg: " + e.message)); }; } public function setRemoteServerMode():void{ _config.serverMode = ServerOperationMode.remote; _debug.info("setRemoteServerMode()"); } } }//package com.google.analytics.v4Section 189//AnalyticsTracker (com.google.analytics.AnalyticsTracker) package com.google.analytics { import flash.events.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; public interface AnalyticsTracker extends GoogleAnalyticsAPI, IEventDispatcher { function set account(_arg1:String):void; function get config():Configuration; function get mode():String; function set config(_arg1:Configuration):void; function set mode(_arg1:String):void; function set debug(_arg1:DebugConfiguration):void; function get visualDebug():Boolean; function get account():String; function set visualDebug(_arg1:Boolean):void; function isReady():Boolean; function get debug():DebugConfiguration; } }//package com.google.analyticsSection 190//API (com.google.analytics.API) package com.google.analytics { import com.google.analytics.utils.*; public class API { public static var version:Version = new Version(); version.major = 1; version.minor = 0; version.build = 1; version.revision = "$Rev: 319 $ ".split(" ")[1]; } }//package com.google.analyticsSection 191//GATracker (com.google.analytics.GATracker) package com.google.analytics { import flash.events.*; import flash.display.*; import com.google.analytics.core.*; import com.google.analytics.v4.*; import com.google.analytics.debug.*; import com.google.analytics.external.*; import com.google.analytics.utils.*; import com.google.analytics.events.*; public class GATracker implements AnalyticsTracker { private var _adSense:AdSenseGlobals; private var _env:Environment; private var _visualDebug:Boolean; private var _idleTimer:IdleTimer; private var _debug:DebugConfiguration; private var _buffer:Buffer; private var _config:Configuration; private var _mode:String; private var _display:DisplayObject; private var _jsproxy:JavascriptProxy; private var _dom:HTMLDOM; private var _eventDispatcher:EventDispatcher; private var _ready:Boolean;// = false private var _gifRequest:GIFRequest; private var _ecom:Ecommerce; private var _account:String; private var _tracker:GoogleAnalyticsAPI; public static var version:Version = API.version; public static var autobuild:Boolean = true; public function GATracker(_arg1:DisplayObject, _arg2:String, _arg3:String="AS3", _arg4:Boolean=false, _arg5:Configuration=null, _arg6:DebugConfiguration=null){ _display = _arg1; _eventDispatcher = new EventDispatcher(this); _tracker = new TrackerCache(); this.account = _arg2; this.mode = _arg3; this.visualDebug = _arg4; if (!_arg6){ this.debug = new DebugConfiguration(); }; if (!_arg5){ this.config = new Configuration(_arg6); }; if (autobuild){ _factory(); }; } public function link(_arg1:String, _arg2:Boolean=false):void{ _tracker.link(_arg1, _arg2); } public function addOrganic(_arg1:String, _arg2:String):void{ _tracker.addOrganic(_arg1, _arg2); } public function setAllowLinker(_arg1:Boolean):void{ _tracker.setAllowLinker(_arg1); } public function trackEvent(_arg1:String, _arg2:String, _arg3:String=null, _arg4:Number=NaN):Boolean{ return (_tracker.trackEvent(_arg1, _arg2, _arg3, _arg4)); } public function getLinkerUrl(_arg1:String="", _arg2:Boolean=false):String{ return (_tracker.getLinkerUrl(_arg1, _arg2)); } public function setCookieTimeout(_arg1:int):void{ _tracker.setCookieTimeout(_arg1); } public function trackTrans():void{ _tracker.trackTrans(); } public function getClientInfo():Boolean{ return (_tracker.getClientInfo()); } public function trackPageview(_arg1:String=""):void{ _tracker.trackPageview(_arg1); } public function setClientInfo(_arg1:Boolean):void{ _tracker.setClientInfo(_arg1); } public function get account():String{ return (_account); } public function linkByPost(_arg1:Object, _arg2:Boolean=false):void{ _tracker.linkByPost(_arg1, _arg2); } public function getDetectTitle():Boolean{ return (_tracker.getDetectTitle()); } public function dispatchEvent(_arg1:Event):Boolean{ return (_eventDispatcher.dispatchEvent(_arg1)); } public function get config():Configuration{ return (_config); } public function set mode(_arg1:String):void{ _mode = _arg1; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ _eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); } public function setDetectFlash(_arg1:Boolean):void{ _tracker.setDetectFlash(_arg1); } public function resetSession():void{ _tracker.resetSession(); } public function setCampNameKey(_arg1:String):void{ _tracker.setCampNameKey(_arg1); } public function get debug():DebugConfiguration{ return (_debug); } public function addItem(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:Number, _arg6:int):void{ _tracker.addItem(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } private function _bridgeFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (Bridge) v" + version) + "\naccount: ") + account)); return (new Bridge(account, _debug, _jsproxy)); } public function clearIgnoredOrganic():void{ _tracker.clearIgnoredOrganic(); } public function set account(_arg1:String):void{ _account = _arg1; } public function setVar(_arg1:String):void{ _tracker.setVar(_arg1); } public function build():void{ if (!isReady()){ _factory(); }; } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ _eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function setDomainName(_arg1:String):void{ _tracker.setDomainName(_arg1); } public function createEventTracker(_arg1:String):EventTracker{ return (_tracker.createEventTracker(_arg1)); } public function setCampSourceKey(_arg1:String):void{ _tracker.setCampSourceKey(_arg1); } public function set config(_arg1:Configuration):void{ _config = _arg1; } public function addTrans(_arg1:String, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:String, _arg7:String, _arg8:String):void{ _tracker.addTrans(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8); } public function setCampContentKey(_arg1:String):void{ _tracker.setCampContentKey(_arg1); } public function willTrigger(_arg1:String):Boolean{ return (_eventDispatcher.willTrigger(_arg1)); } public function setLocalServerMode():void{ _tracker.setLocalServerMode(); } public function isReady():Boolean{ return (_ready); } public function getLocalGifPath():String{ return (_tracker.getLocalGifPath()); } public function setAllowAnchor(_arg1:Boolean):void{ _tracker.setAllowAnchor(_arg1); } public function clearIgnoredRef():void{ _tracker.clearIgnoredRef(); } public function get mode():String{ return (_mode); } public function set debug(_arg1:DebugConfiguration):void{ _debug = _arg1; } public function setLocalGifPath(_arg1:String):void{ _tracker.setLocalGifPath(_arg1); } public function getVersion():String{ return (_tracker.getVersion()); } public function setSampleRate(_arg1:Number):void{ _tracker.setSampleRate(_arg1); } public function setCookiePath(_arg1:String):void{ _tracker.setCookiePath(_arg1); } public function setAllowHash(_arg1:Boolean):void{ _tracker.setAllowHash(_arg1); } public function addIgnoredOrganic(_arg1:String):void{ _tracker.addIgnoredOrganic(_arg1); } public function setLocalRemoteServerMode():void{ _tracker.setLocalRemoteServerMode(); } public function cookiePathCopy(_arg1:String):void{ _tracker.cookiePathCopy(_arg1); } private function _factory():void{ var _local1:GoogleAnalyticsAPI; _jsproxy = new JavascriptProxy(debug); if (visualDebug){ debug.layout = new Layout(debug, _display); debug.active = visualDebug; }; var _local2:TrackerCache = (_tracker as TrackerCache); switch (mode){ case TrackerMode.BRIDGE: _local1 = _bridgeFactory(); break; case TrackerMode.AS3: default: _local1 = _trackerFactory(); }; if (!_local2.isEmpty()){ _local2.tracker = _local1; _local2.flush(); }; _tracker = _local1; _ready = true; dispatchEvent(new AnalyticsEvent(AnalyticsEvent.READY, this)); } public function setCampTermKey(_arg1:String):void{ _tracker.setCampTermKey(_arg1); } private function _trackerFactory():GoogleAnalyticsAPI{ debug.info(((("GATracker (AS3) v" + version) + "\naccount: ") + account)); _adSense = new AdSenseGlobals(debug); _dom = new HTMLDOM(debug); _dom.cacheProperties(); _env = new Environment("", "", "", debug, _dom); _buffer = new Buffer(config, debug, false); _gifRequest = new GIFRequest(config, debug, _buffer, _env); _idleTimer = new IdleTimer(config, debug, _display, _buffer); _ecom = new Ecommerce(_debug); _env.url = _display.stage.loaderInfo.url; return (new Tracker(account, config, debug, _env, _buffer, _gifRequest, _adSense, _ecom)); } public function setCampNOKey(_arg1:String):void{ _tracker.setCampNOKey(_arg1); } public function setDetectTitle(_arg1:Boolean):void{ _tracker.setDetectTitle(_arg1); } public function clearOrganic():void{ _tracker.clearOrganic(); } public function setCampaignTrack(_arg1:Boolean):void{ _tracker.setCampaignTrack(_arg1); } public function addIgnoredRef(_arg1:String):void{ _tracker.addIgnoredRef(_arg1); } public function getServiceMode():ServerOperationMode{ return (_tracker.getServiceMode()); } public function set visualDebug(_arg1:Boolean):void{ _visualDebug = _arg1; } public function setCampMediumKey(_arg1:String):void{ _tracker.setCampMediumKey(_arg1); } public function getDetectFlash():Boolean{ return (_tracker.getDetectFlash()); } public function get visualDebug():Boolean{ return (_visualDebug); } public function hasEventListener(_arg1:String):Boolean{ return (_eventDispatcher.hasEventListener(_arg1)); } public function getAccount():String{ return (_tracker.getAccount()); } public function setSessionTimeout(_arg1:int):void{ _tracker.setSessionTimeout(_arg1); } public function setRemoteServerMode():void{ _tracker.setRemoteServerMode(); } } var _local1:* = ServerOperationMode; return (_local1); }//package com.google.analyticsSection 192//Key (com.keyboard.Key) package com.keyboard { import flash.events.*; import flash.display.*; public class Key { private static var initialized:Boolean = false; private static var keysDown:Object = new Object(); public static function initialize(_arg1:Stage):void{ if (!initialized){ _arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); _arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.addEventListener(Event.DEACTIVATE, clearKeys); initialized = true; }; } private static function clearKeys(_arg1:Event):void{ keysDown = new Object(); } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ throw (new Error("Key class has yet been initialized.")); }; return (Boolean((_arg1 in keysDown))); } private static function keyPressed(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; } private static function keyReleased(_arg1:KeyboardEvent):void{ if ((_arg1.keyCode in keysDown)){ delete keysDown[_arg1.keyCode]; }; } } }//package com.keyboardSection 193//LoaderEvent (com.malee.events.LoaderEvent) package com.malee.events { import flash.events.*; public class LoaderEvent extends Event { private var _item:IEventDispatcher; public static const ITEM_SECURITY_ERROR:String = "itemSecurityError"; public static const ITEM_IO_ERROR:String = "itemIOError"; public static const ITEM_COMPLETE:String = "itemComplete"; public function LoaderEvent(_arg1:String, _arg2:IEventDispatcher, _arg3:Boolean=false, _arg4:Boolean=false):void{ super(_arg1, _arg3, _arg4); _item = _arg2; } public function get item():IEventDispatcher{ return (_item); } override public function clone():Event{ return (new LoaderEvent(type, _item, bubbles, cancelable)); } } }//package com.malee.eventsSection 194//TimeoutErrorEvent (com.malee.events.TimeoutErrorEvent) package com.malee.events { import flash.events.*; public class TimeoutErrorEvent extends ErrorEvent { public static const TIMEOUT:String = "timeoutError"; public function TimeoutErrorEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=""){ super(_arg1, _arg2, _arg3, _arg4); } override public function clone():Event{ return (new TimeoutErrorEvent(type, bubbles, cancelable, text)); } } }//package com.malee.eventsSection 195//AssetLoader (com.malee.loaders.AssetLoader) package com.malee.loaders { import flash.events.*; import flash.display.*; import flash.system.*; import flash.net.*; import flash.errors.*; public class AssetLoader extends Loader implements ILoader { private var _url:String; private var context:LoaderContext; private var request:URLRequest; public function AssetLoader(_arg1:String="", _arg2:ApplicationDomain=null){ _url = _arg1; request = new URLRequest(); context = new LoaderContext(); this.applicationDomain = ((_arg2 == null)) ? CURRENT_DOMAIN : _arg2; handleInternalEvents(); } public function set applicationDomain(_arg1:ApplicationDomain):void{ context.applicationDomain = _arg1; } private function onError(_arg1:ErrorEvent):void{ dispatchEvent(_arg1); } private function onProgress(_arg1:ProgressEvent):void{ dispatchEvent(_arg1); } private function handleInternalEvents():void{ contentLoaderInfo.addEventListener(Event.INIT, onInit); contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError); contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError); contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress); } public function get url():String{ return (_url); } public function get applicationDomain():ApplicationDomain{ return (contentLoaderInfo.applicationDomain); } public function get bytesLoaded():uint{ return (contentLoaderInfo.bytesLoaded); } override public function close():void{ try { super.close(); } catch(error:IOError) { }; } public function get bytesTotal():uint{ return (contentLoaderInfo.bytesTotal); } private function onComplete(_arg1:Event):void{ dispatchEvent(_arg1); } private function onInit(_arg1:Event):void{ dispatchEvent(_arg1); } public function loadData(_arg1:String):void{ _url = _arg1; request.url = _arg1; load(request, context); } public static function get CURRENT_DOMAIN():ApplicationDomain{ return (ApplicationDomain.currentDomain); } public static function get NEW_DOMAIN():ApplicationDomain{ return (new ApplicationDomain()); } public static function loadQuick(_arg1:String, _arg2:Function=null, _arg3:Function=null):AssetLoader{ var _local4:AssetLoader = new (AssetLoader); if (_arg3 != null){ _local4.addEventListener(IOErrorEvent.IO_ERROR, _arg3); _local4.addEventListener(SecurityErrorEvent.SECURITY_ERROR, _arg3); }; if (_arg2 != null){ _local4.addEventListener(Event.COMPLETE, _arg2); }; _local4.loadData(_arg1); return (_local4); } public static function get CHILD_DOMAIN():ApplicationDomain{ return (new ApplicationDomain(CURRENT_DOMAIN)); } } }//package com.malee.loadersSection 196//ILoader (com.malee.loaders.ILoader) package com.malee.loaders { import flash.events.*; public interface ILoader extends IEventDispatcher { function loadData(_arg1:String):void; function get url():String; } }//package com.malee.loadersSection 197//XMLLoader (com.malee.loaders.XMLLoader) package com.malee.loaders { import flash.events.*; import flash.net.*; import flash.utils.*; public class XMLLoader extends URLLoader implements ILoader { private var timeout:Timer; private var request:URLRequest; private var _url:String; private var _xml:XML; public function XMLLoader(_arg1:String=""):void{ _url = _arg1; request = new URLRequest(); initInternalEvents(); } private function onComplete(_arg1:Event):void{ stopTimeout(); _xml = new XML(data); } private function initInternalEvents():void{ addEventListener(Event.COMPLETE, onComplete); } public function loadData(_arg1:String):void{ _url = _arg1; request.url = _arg1; load(request); } private function onTimeout(_arg1:TimerEvent):void{ close(); dispatchEvent(new ErrorEvent(ErrorEvent.ERROR, false, false, "Response Timeout")); } private function stopTimeout():void{ if (timeout != null){ timeout.stop(); timeout.removeEventListener(TimerEvent.TIMER, onTimeout); }; } public function get url():String{ return (_url); } public function loadDataTimeout(_arg1:String, _arg2:int):void{ if (_arg2 > 0){ timeout = new Timer((_arg2 * 1000)); timeout.addEventListener(TimerEvent.TIMER, onTimeout, false, 0, true); timeout.start(); }; loadData(_arg1); } public function get xml():XML{ return (_xml); } override public function close():void{ try { super.close(); } catch(error:Error) { }; stopTimeout(); } } }//package com.malee.loadersSection 198//ClearSpringInterface (com.malee.net.clearspring.ClearSpringInterface) package com.malee.net.clearspring { import flash.display.*; import flash.system.*; public class ClearSpringInterface { private var _ref:DisplayObject; private var _api:Object; public function ClearSpringInterface(_arg1:DisplayObject){ _ref = _arg1; start(); } public function start():void{ Security.allowDomain("bin.clearspring.com"); Security.allowDomain("widgets.clearspring.com"); try { _api = _ref.loaderInfo.loader.root; trace((("User has viewed me " + _api.context.user.WIDGET_VIEWS) + " times")); } catch(e:Error) { trace("WARNING: Not able to add loader event listener. Normal if not running in the Clearspring container."); }; } public function get api():Object{ if (_api != null){ return (_api); }; return (null); } } }//package com.malee.net.clearspringSection 199//getURL (com.malee.net.getURL) package com.malee.net { import flash.net.*; public function getURL(_arg1:String, _arg2:String=null):void{ navigateToURL(new URLRequest(_arg1), _arg2); } }//package com.malee.netSection 200//URLDataLoader (com.malee.net.URLDataLoader) package com.malee.net { import flash.events.*; import flash.utils.*; import flash.net.*; import com.malee.events.*; import flash.errors.*; public class URLDataLoader extends URLLoader { private var timeout:Timer; private var _data:URLVariables; private var _request:URLRequest; public function URLDataLoader(_arg1:String="text"){ _data = new URLVariables(); _request = new URLRequest(); this.dataFormat = _arg1; } private function onComplete(_arg1:Event):void{ stopTimeout(); } public function clearVariables():void{ _data = new URLVariables(); } private function onError(_arg1:Event):void{ stopTimeout(); } private function onTimeout(_arg1:TimerEvent):void{ close(); dispatchEvent(new TimeoutErrorEvent(TimeoutErrorEvent.TIMEOUT, false, false, "Response Timeout")); } public function get variables():URLVariables{ return (_data); } override public function close():void{ try { super.close(); } catch(error:IOError) { }; stopTimeout(); } public function sendData(_arg1:String, _arg2:int=0, _arg3:String="POST"):void{ if (_arg2 > 0){ if (timeout == null){ timeout = new Timer(0); }; timeout.delay = (_arg2 * 1000); timeout.addEventListener(TimerEvent.TIMER, onTimeout, false, 0, true); timeout.start(); }; removeInternalEvents(); addInternalEvents(); _request.url = _arg1; _request.method = _arg3; _request.data = _data; load(_request); } private function removeInternalEvents():void{ removeEventListener(Event.COMPLETE, onComplete); removeEventListener(IOErrorEvent.IO_ERROR, onError); removeEventListener(SecurityErrorEvent.SECURITY_ERROR, onError); } public function addVariable(_arg1:String, _arg2):void{ _data[_arg1] = _arg2; } private function addInternalEvents():void{ addEventListener(Event.COMPLETE, onComplete); addEventListener(IOErrorEvent.IO_ERROR, onError); addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError); } private function stopTimeout():void{ if (timeout != null){ timeout.stop(); timeout.removeEventListener(TimerEvent.TIMER, onTimeout); }; } } }//package com.malee.netSection 201//SoapMenu (com.malee.soap.SoapMenu) package com.malee.soap { import flash.events.*; import flash.display.*; import flash.net.*; import flash.ui.*; public class SoapMenu { private var _context:ContextMenu; private var _object:InteractiveObject; public function SoapMenu(_arg1:DisplayObject):void{ _object = (_arg1 as InteractiveObject); _context = new ContextMenu(); _context.hideBuiltInItems(); _object.contextMenu = _context; init(); } public function addItem(_arg1:String):void{ var _local2:ContextMenuItem = new ContextMenuItem(_arg1); _local2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, selectItem); _context.customItems.push(_local2); } private function selectItem(_arg1:ContextMenuEvent):void{ switch (_arg1.target.caption){ case "Game by Soap Creative": linkToSoap(); break; case "High Quality": toggleQuality("HIGH"); break; case "Low Quality": toggleQuality("LOW"); break; }; } private function linkToSoap():void{ SoapTracking.trackSite("click", "visit_SOAP"); navigateToURL(new URLRequest("http://www.soap.com.au"), "_blank"); } private function toggleQuality(_arg1:String):void{ _object.stage.quality = _arg1; } private function init():void{ addItem("Game by Soap Creative"); addItem("High Quality"); addItem("Low Quality"); } } }//package com.malee.soapSection 202//SoapTracking (com.malee.soap.SoapTracking) package com.malee.soap { import flash.events.*; import flash.display.*; import flash.net.*; import flash.utils.*; public class SoapTracking { private static var _shared:SharedObject; public static var clientId:int; private static var siteEVTTime:Number; private static var _request:URLRequest; public static var projectId:int; private static var _tracking:URLLoader; private static var siteStartTime:Number; private static var returnVisitor:int; private static function onError(_arg1:IOErrorEvent):void{ trace("Tracking Error"); } private static function sendSiteStats(_arg1:DisplayObject):void{ var _local2:URLRequest = new URLRequest(); var _local3:URLLoader = new URLLoader(); var _local4:URLVariables = new URLVariables(); _local2.url = "http://stats.soap.com.au/usrinfo.php"; _local2.method = URLRequestMethod.POST; var _local5:String = _arg1.loaderInfo.url; if (_local5.substring(0, 4) == "http"){ _local4.url = _local5; } else { _local4.url = "local"; }; _local4.clientId = clientId; _local4.projectId = projectId; _local2.data = _local4; _local3.load(_local2); } private static function initTracking():void{ siteStartTime = getTimer(); siteEVTTime = getTimer(); checkReturn(); } private static function onComplete(_arg1:Event):void{ } public static function trackSite(_arg1:String, ... _args):void{ if (_tracking == null){ trace("ERROR - SoapTracking has not been Initalised"); return; }; var _local3:String = _args.join(","); var _local4:int; switch (_arg1){ case "impression": break; case "click": break; case "over": break; case "durationFromInit": _local4 = ((getTimer() - siteStartTime) / 1000); break; case "durationEvent": _local4 = ((getTimer() - siteEVTTime) / 1000); break; default: _arg1 = ""; }; var _local5:URLVariables = new URLVariables(); _local5["return"] = returnVisitor; _local5.clientId = clientId; _local5.projectId = projectId; _local5.actionType = _arg1; _local5.pageId = _local3; _local5.time = _local4; _local5.user = _shared.data.userID; _request.data = _local5; _tracking.load(_request); } private static function checkReturn():void{ returnVisitor = ((_shared.data.userID == undefined)) ? 0 : 1; _shared.data.userID = (Math.random() * 9999999999); } public static function INIT(_arg1:int, _arg2:int, _arg3:DisplayObject):void{ clientId = _arg1; projectId = _arg2; _tracking = new URLLoader(); _request = new URLRequest(); _shared = SharedObject.getLocal(((("siteTrackingStats_" + _arg1) + "_") + _arg2), "/"); _request.url = "http://stats.soap.com.au/pgtrack.php"; _request.method = URLRequestMethod.POST; _tracking.dataFormat = URLLoaderDataFormat.TEXT; _tracking.addEventListener(Event.COMPLETE, onComplete); _tracking.addEventListener(IOErrorEvent.IO_ERROR, onError); initTracking(); sendSiteStats(_arg3); } } }//package com.malee.soapSection 203//FormUtil (com.malee.utils.FormUtil) package com.malee.utils { public class FormUtil { public static const BAD_ALL:Array = BAD_INITIALS.concat(BAD_NAMES); public static const BAD_INITIALS:Array = ["fuk", "fuc", "cnt", "knt", "ass", "dic", "fag", "d1k", "4q", "cun", "pis", "nig", "fu", "as5", "a55", "p1s", "fu2", "BJ", "BJU", "bum", "cok", "cum", "tit", "t1t", "coc", "koc", "f4g", "c0k", "c0c", "twt", "pus", "dyk", "tlt", "sac", "sak", "s4c", "s4k"]; public static const BAD_NAMES:Array = ["fuck", "cunt", "dick", "shit", "pussy", "kunt"]; public static function isBadLanguage(_arg1:String, _arg2:Array):Boolean{ var _local3:String; var _local4:String; var _local5:int; _local3 = _arg1.toLowerCase(); if (_local3.length == 0){ return (true); }; _local5 = _arg2.length; while (--_local5 >= 0) { _local4 = _arg2[_local5].toLowerCase(); if (_local3.indexOf(_local4, 0) >= 0){ return (true); }; }; return (false); } public static function isValidEmail(_arg1:String):Boolean{ if (_arg1.length > 7){ if (_arg1.indexOf("@") > 0){ if ((((((((_arg1.indexOf(" ") < 0)) && ((_arg1.indexOf(",") < 0)))) && ((_arg1.indexOf("'") < 0)))) && ((_arg1.indexOf("\"") < 0)))){ if ((_arg1.indexOf("@") + 1) < _arg1.lastIndexOf(".")){ if (_arg1.indexOf("@") == _arg1.lastIndexOf("@")){ if (_arg1.lastIndexOf(".") < (_arg1.length - 1)){ return (true); }; }; }; }; }; }; return (false); } } }//package com.malee.utilsSection 204//TextUtil (com.malee.utils.TextUtil) package com.malee.utils { public class TextUtil { public static function formatScoreComma(_arg1:Number, _arg2:String=","):String{ return (formatScoreCommaString(_arg1.toString(), _arg2)); } private static function formatScoreCommaString(_arg1:String, _arg2:String):String{ var _local5:int; var _local6:int; var _local3:int = _arg1.length; var _local4 = ""; if (_local3 > 3){ _local5 = (_local3 % 3); _local6 = 0; while (_local6 < _local3) { if (((((((_local6 % 3) == _local5)) && (!((_local6 == (_local3 - 1)))))) && (!((_local6 == 0))))){ _local4 = (_local4 + _arg2); }; _local4 = (_local4 + _arg1.charAt(_local6)); _local6++; }; } else { _local4 = (_local4 + _arg1); }; return (_local4); } public static function formatTime(_arg1:Number, _arg2:String="0", _arg3:String="0"):String{ var _local4:int = (int((_arg1 / 60)) % 60); var _local5:int = (int(_arg1) % 60); var _local6:String = ((_local4 < 10)) ? (_arg2 + _local4.toString()) : _local4.toString(); var _local7:String = ((_local5 < 10)) ? (_arg3 + _local5.toString()) : _local5.toString(); return (((_local6 + ":") + _local7)); } public static function formatMiliseconds(_arg1:Number, _arg2:String="0", _arg3:String="0", _arg4:String="0"):String{ var _local5:int = (int(_arg1) % 60); var _local6:int = (Math.round(((_arg1 - _local5) * 10)) % 10); var _local7:String = (_arg4 + _local6.toString()); return (((formatTime(_arg1, _arg2, _arg3) + ":") + _local7)); } public static function formatInvertedScoreComma(_arg1:Number, _arg2:String="000000000", _arg3:String=","):String{ var _local4:String = _arg1.toString(); var _local5:String = _arg2.substring(0, (_arg2.length - _local4.length)).concat(_local4); return (formatScoreCommaString(_local5, _arg3)); } } }//package com.malee.utilsSection 205//Earthquake (com.markfennell.display.Earthquake) package com.markfennell.display { import flash.events.*; import flash.display.*; import flash.utils.*; public class Earthquake { private static const FRAME_RATE:int = 25; private static var timer:Timer; private static var originalX:int; private static var originalY:int; private static var horizontal:Boolean; private static var intensityOffset:int; private static var intensity:int; private static var image:DisplayObject; private static var vertical:Boolean; private static function resetImage(_arg1:TimerEvent=null):void{ image.x = originalX; image.y = originalY; cleanup(); } public static function temp():void{ } public static function go(_arg1:DisplayObject, _arg2:Number=10, _arg3:Number=1, _arg4:Boolean=true, _arg5:Boolean=true):void{ if (timer){ timer.stop(); }; image = _arg1; originalX = image.x; originalY = image.y; horizontal = _arg5; vertical = _arg4; intensity = _arg2; intensityOffset = (intensity / 2); var _local6:int = int((1000 / FRAME_RATE)); var _local7:int = int(((_arg3 * 1000) / _local6)); timer = new Timer(_local6, _local7); timer.addEventListener(TimerEvent.TIMER, quake); timer.addEventListener(TimerEvent.TIMER_COMPLETE, resetImage); timer.start(); } private static function cleanup():void{ timer = null; image = null; } private static function quake(_arg1:TimerEvent):void{ var _local2:int = ((originalX + (Math.random() * intensity)) - intensityOffset); var _local3:int = ((originalY + (Math.random() * intensity)) - intensityOffset); if (horizontal){ image.x = _local2; }; if (vertical){ image.y = _local3; }; } } }//package com.markfennell.displaySection 206//Fx (com.markfennell.display.Fx) package com.markfennell.display { import flash.display.*; import flash.utils.*; import flash.filters.*; import caurina.transitions.*; public class Fx extends Sprite { private var m_callBack:Function; private var m_mc:DisplayObject; public function zoomIn(_arg1:DisplayObject, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:String, _arg10:Function=null):void{ var _interval:Number; var blurFilter:BlurFilter; var _animate:Function; var _mc = _arg1; var delay = _arg2; var duration = _arg3; var startX = _arg4; var startY = _arg5; var finishX = _arg6; var finishY = _arg7; var blur = _arg8; var transition = _arg9; var a_callBack = _arg10; _animate = function ():void{ m_mc.filters = [blurFilter]; Tweener.addTween(m_mc, {x:finishX, y:finishY, time:duration, transition:transition, onComplete:onMotionStopped}); }; var _initTime:Number = getTimer(); var angle:Number = Math.atan2((finishY - startY), (finishX - startX)); var blurX:int = Math.abs(Math.floor((Math.cos(angle) * blur))); var blurY:int = Math.abs(Math.floor((Math.sin(angle) * blur))); m_mc = _mc; var wait:int = (1000 * delay); m_callBack = a_callBack; m_mc.x = startX; m_mc.y = startY; blurFilter = new BlurFilter(blurX, blurY, 1); _interval = setTimeout(_animate, wait); } public function onMotionStopped():void{ m_mc.filters = []; if (m_callBack != null){ m_callBack(); }; } } }//package com.markfennell.displaySection 207//SpriteSheet (com.markfennell.display.SpriteSheet) package com.markfennell.display { import flash.display.*; import flash.geom.*; public class SpriteSheet extends Sprite { private var BitmapDataArray:Array; private var _frames:Number; private var stepX:Number; private var transformMatrix:Matrix; private var yScale:Number; private var stepY:Number; private var copyPoint:Point; private var BitmapDataTile:BitmapData; private var _h:Number; private var stepRot:Number; private var xScale:Number; private var rotScale:Number; private var _w:Number; private var copyRectangle:Rectangle; public function SpriteSheet(_arg1:MovieClip, _arg2:Number, _arg3:Number){ _frames = _arg1.totalFrames; _w = _arg2; _h = _arg3; BitmapDataArray = []; copyRectangle = new Rectangle(0, 0, _w, _h); var _local4:int; while (_local4 < _frames) { BitmapDataTile = new BitmapData(_arg2, _arg3, true, 0xFFFFFF); transformMatrix = new Matrix(); transformMatrix.tx = (_arg2 / 2); transformMatrix.ty = _arg3; _arg1.gotoAndStop((_local4 + 1)); BitmapDataTile.draw(_arg1, transformMatrix); BitmapDataArray.push(BitmapDataTile); _local4++; }; } public function destroy():void{ var _local1:int; while (_local1 < BitmapDataArray.length) { BitmapDataArray[_local1].dispose(); _local1++; }; } public function draw(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:int, _arg5:Boolean=false):void{ if (_arg4 < 0){ _arg4 = 0; }; if (_arg4 >= BitmapDataArray.length){ _arg4 = (BitmapDataArray.length - 1); }; copyPoint = new Point((_arg2 - int((_w / 2))), (_arg3 - int((_h / 2)))); _arg1.copyPixels(getBitmap(_arg4, _arg5), copyRectangle, copyPoint, null, null, true); } public function getWidth():Number{ return (_w); } public function getFrames():int{ return (_frames); } public function getHeight():Number{ return (_h); } public function getBitmap(_arg1:Number, _arg2:Boolean):BitmapData{ var _local3:BitmapData; var _local4:Matrix; if (_arg1 < 0){ _arg1 = 0; }; if (_arg1 >= BitmapDataArray.length){ _arg1 = (BitmapDataArray.length - 1); }; if (_arg2){ _local3 = new BitmapData(_w, _h, true, 0xFFFFFF); _local4 = new Matrix(); _local4.scale(-1, 1); _local4.tx = _w; _local3.draw(BitmapDataArray[_arg1], _local4); return (_local3); }; return (BitmapDataArray[_arg1]); } } }//package com.markfennell.displaySection 208//Static (com.markfennell.display.Static) package com.markfennell.display { import flash.events.*; import flash.display.*; import flash.utils.*; import org.casalib.display.*; import flash.geom.*; public class Static extends CasaSprite { private var m_distort:Number; private var m_angle:Number;// = 0 private var m_bitmapData0:BitmapData; private var m_bitmapData1:BitmapData; private var m_bitmapData2:BitmapData; private var m_bitmapData3:BitmapData; private var m_displayObject:DisplayObject; private var m_frequency:Number; private var m_timeout:int; private var m_bitmap:Bitmap; private var m_vshift:Number;// = 0 private var m_fuzz:Number; private var m_time:int; private var m_amount:Number; private var m_width:int; private var m_height:int; private var m_angleinc:Number;// = 0.01 private var m_vshiftrate:Number;// = 60 public function Static(_arg1:DisplayObject, _arg2:int, _arg3:int){ m_displayObject = _arg1; m_width = _arg2; m_height = _arg3; m_bitmapData0 = new BitmapData(m_width, m_height, false, 0); m_bitmapData1 = m_bitmapData0.clone(); m_bitmapData2 = m_bitmapData0.clone(); m_bitmapData3 = m_bitmapData0.clone(); m_bitmap = new Bitmap(m_bitmapData2); addChild(m_bitmap); } public function distort(_arg1:Event=null):void{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:BitmapData; m_bitmapData0.draw(m_displayObject, new Matrix()); m_angle = (m_angle + m_angleinc); m_frequency = ((Math.sin(m_angle) * 3) * Math.PI); var _local2:int; while (_local2 <= m_height) { _local3 = (((m_frequency * _local2) / height) + m_angle); _local4 = (m_amount * Math.sin(_local3)); _local4 = (_local4 + (Math.random() * 4)); m_bitmapData1.copyPixels(m_bitmapData0, new Rectangle(_local4, _local2, (m_width - _local4), 1), new Point(0, _local2)); _local2++; }; if (Math.random() < 0.1){ m_angle = (Math.random() * Math.PI); } else { m_angle = (m_angle * 0.8); }; if (Math.random() < m_fuzz){ m_bitmapData3.noise(int((Math.random() * 0xFF)), 0, 0xFF, ((1 | 2) | 4), true); _local5 = Math.floor((Math.random() * 128)); m_bitmapData1.merge(m_bitmapData3, m_bitmapData1.rect, new Point(0, 0), _local5, _local5, _local5, _local5); }; if (Math.random() < 0.02){ m_vshift = m_vshiftrate; } else { m_vshift = 0; }; if (m_vshift > 0){ m_vshift = (m_vshift + m_vshiftrate); m_vshift = (m_vshift % m_height); _local6 = m_bitmapData1.clone(); m_bitmapData1.copyPixels(_local6, new Rectangle(0, 0, m_width, m_vshift), new Point(0, (m_height - m_vshift))); m_bitmapData1.copyPixels(_local6, new Rectangle(0, m_vshift, m_width, (m_height - m_vshift)), new Point(0, 0)); }; m_bitmapData2.copyChannel(m_bitmapData1, m_bitmapData2.rect, new Point((Math.random() * m_distort), 0), 1, 1); m_bitmapData2.copyChannel(m_bitmapData1, m_bitmapData2.rect, new Point((Math.random() * m_distort), 0), 2, 2); m_bitmapData2.copyChannel(m_bitmapData1, m_bitmapData2.rect, new Point((Math.random() * m_distort), 0), 4, 4); } override public function destroy():void{ clearTimeout(m_timeout); removeChild(m_bitmap); m_bitmap = null; m_bitmapData0.dispose(); m_bitmapData1.dispose(); m_bitmapData2.dispose(); m_bitmapData3.dispose(); m_displayObject = null; super.destroy(); } public function reset():void{ removeEventListener(Event.ENTER_FRAME, distort); m_bitmapData2.draw(m_bitmapData0, new Matrix()); } public function glitch(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ m_amount = _arg2; m_fuzz = _arg3; m_distort = _arg4; m_time = _arg1; addEventListener(Event.ENTER_FRAME, distort); if (m_time > 0){ m_timeout = setTimeout(reset, m_time); }; } } }//package com.markfennell.displaySection 209//TimeKeeper (com.markfennell.display.TimeKeeper) package com.markfennell.display { import flash.utils.*; public class TimeKeeper { private var isCountdown:Boolean;// = false private var totalTime:Number;// = 0 private var oldTime:Number;// = 0 private var pause:Boolean;// = false private var countdownTime:Number;// = 0 public function TimeKeeper(_arg1:Number=0){ if (_arg1 != 0){ isCountdown = true; countdownTime = _arg1; }; this.reset(); } public function addMili(_arg1:int):void{ this.totalTime = Math.max(0, (this.totalTime + _arg1)); } public function reset():void{ this.oldTime = 0; this.pause = true; this.totalTime = 0; } public function displayHour():int{ var _local1:int = this.getMili(); var _local2:int = Math.floor((_local1 / 1000)); var _local3:int = Math.floor((_local2 / 60)); var _local4:int = Math.floor((_local3 / 60)); return (_local4); } public function stop():void{ if (!this.pause){ this.pause = true; this.totalTime = (this.totalTime + (getTimer() - this.oldTime)); }; } public function getTime(_arg1:int):int{ if (isCountdown){ return ((countdownTime - _arg1)); }; return (_arg1); } public function displaySec():int{ var _local1:int = this.getMili(); var _local2:int = Math.floor((_local1 / 1000)); _local2 = (_local2 % 60); return (_local2); } public function displayMin():int{ var _local1:int = this.getMili(); var _local2:int = Math.floor((_local1 / 1000)); var _local3:int = Math.floor((_local2 / 60)); _local3 = (_local3 % 60); return (_local3); } public function getMili():int{ var _local1:int = this.totalTime; if (!this.pause){ _local1 = (_local1 + (getTimer() - this.oldTime)); }; return (getTime(_local1)); } public function displayTime():String{ var _local1:String = three(displayMili()); _local1 = _local1.substring(0, 3); var _local2:String = ((((displayMin() + "'") + two(displaySec())) + "\"") + _local1); return (_local2); } public function getMins():int{ var _local1:int = (this.totalTime / 1000); if (!this.pause){ _local1 = (_local1 + (((getTimer() - this.oldTime) / 1000) / 60)); }; return (Math.round(getTime(_local1))); } public function getSecs():int{ var _local1:int = (this.totalTime / 1000); if (!this.pause){ _local1 = (_local1 + ((getTimer() - this.oldTime) / 1000)); }; return (Math.round(getTime(_local1))); } public function subMili(_arg1:int):void{ this.totalTime = (this.totalTime - _arg1); } public function start():void{ if (this.pause){ this.pause = false; this.oldTime = getTimer(); }; } public function displayMili():int{ var _local1:int = this.getMili(); _local1 = (_local1 % 1000); return (_local1); } public static function display(_arg1:Number, _arg2:String="'", _arg3:String="""):String{ var _local4:int = Math.floor((_arg1 / 1000)); var _local5:int = Math.floor((_local4 / 60)); return ((((((_local5 % 60) + _arg2) + two((_local4 % 60))) + _arg3) + three((_arg1 % 1000)))); } private static function two(_arg1:int):String{ return ((((_arg1)>9) ? "" : "0" + _arg1)); } private static function three(_arg1:int):String{ return (((((_arg1)>99) ? "" : "0" + ((_arg1)>9) ? "" : "0") + _arg1)); } } }//package com.markfennell.displaySection 210//TriggerEvent (com.markfennell.events.TriggerEvent) package com.markfennell.events { import flash.events.*; public class TriggerEvent extends Event { public var data; public function TriggerEvent(_arg1:String, _arg2){ super(_arg1, true, true); data = _arg2; } override public function clone():Event{ return (new TriggerEvent(type, data)); } } }//package com.markfennell.eventsSection 211//Line (com.markfennell.geom.Line) package com.markfennell.geom { import flash.display.*; import flash.geom.*; import com.foxaweb.utils.*; public class Line { public var p0:Point; public var p1:Point; public function Line(_arg1:Point, _arg2:Point):void{ p0 = _arg1; p1 = _arg2; } public function get angle():Number{ return (Math.atan2((p1.y - p0.y), (p1.x - p0.x))); } public function toString():void{ trace((((((((("Line (" + int(p0.x)) + ",") + int(p0.y)) + ") -> (") + int(p1.x)) + ",") + int(p1.y)) + ")")); } public static function createLine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Line{ var _local5:Number = (_arg3 / 2); var _local6:Number = Math.sin(_arg4); var _local7:Number = Math.cos(_arg4); var _local8:Point = new Point((_arg1 + (_local5 * _local7)), (_arg2 + (_local5 * _local6))); var _local9:Point = new Point((_arg1 - (_local5 * _local7)), (_arg2 - (_local5 * _local6))); return (new Line(_local8, _local9)); } public static function draw(_arg1:Line, _arg2, _arg3:int=0xFF0000):void{ if ((((_arg2 is MovieClip)) || ((_arg2 is Sprite)))){ _arg2.graphics.lineStyle(2, _arg3); _arg2.graphics.moveTo(_arg1.p0.x, _arg1.p0.y); _arg2.graphics.lineTo(_arg1.p1.x, _arg1.p1.y); } else { if ((_arg2 is BitmapData)){ Raster.line(_arg2, _arg1.p0.x, _arg1.p0.y, _arg1.p1.x, _arg1.p1.y, _arg3); }; }; } public static function localToLocal(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Point=null):Point{ var _local4:Point = (_arg3) ? _arg3 : new Point(); _local4 = _arg1.localToGlobal(_local4); _local4 = _arg2.globalToLocal(_local4); return (_local4); } public static function drawRect(_arg1:Rectangle, _arg2, _arg3:uint=0xFF0000):void{ if ((((_arg2 is MovieClip)) || ((_arg2 is Sprite)))){ _arg2.graphics.lineStyle(2, _arg3); _arg2.graphics.moveTo(_arg1.x, _arg1.y); _arg2.graphics.lineTo((_arg1.x + _arg1.width), _arg1.y); _arg2.graphics.lineTo((_arg1.x + _arg1.width), (_arg1.y + _arg1.height)); _arg2.graphics.lineTo(_arg1.x, (_arg1.y + _arg1.height)); _arg2.graphics.lineTo(_arg1.x, _arg1.y); } else { if ((_arg2 is BitmapData)){ Raster.line(_arg2, _arg1.x, _arg1.y, (_arg1.x + _arg1.width), _arg1.y, _arg3); Raster.line(_arg2, (_arg1.x + _arg1.width), _arg1.y, (_arg1.x + _arg1.width), (_arg1.y + _arg1.height), _arg3); Raster.line(_arg2, (_arg1.x + _arg1.width), (_arg1.y + _arg1.height), _arg1.x, (_arg1.y + _arg1.height), _arg3); Raster.line(_arg2, _arg1.x, (_arg1.y + _arg1.height), _arg1.x, _arg1.y, _arg3); }; }; } public static function getPoint(_arg1:Line, _arg2:Number):Point{ var _local3:Number = (_arg1.p0.x + (_arg2 * (_arg1.p1.x - _arg1.p0.x))); var _local4:Number = (_arg1.p0.y + (_arg2 * (_arg1.p1.y - _arg1.p0.y))); return (new Point(_local3, _local4)); } public static function intersects(_arg1:Line, _arg2:Line):Boolean{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; _local3 = (_arg1.p1.x - _arg1.p0.x); _local4 = (_arg1.p1.y - _arg1.p0.y); _local5 = (_arg2.p1.x - _arg2.p0.x); _local6 = (_arg2.p1.y - _arg2.p0.y); _local7 = ((-(_local5) * _local4) + (_local3 * _local6)); _local10 = (_arg1.p0.x - _arg2.p0.x); _local11 = (_arg1.p0.y - _arg2.p0.y); _local8 = (((-(_local4) * _local10) + (_local3 * _local11)) / _local7); _local9 = (((_local5 * _local11) - (_local6 * _local10)) / _local7); if ((((((((_local8 >= 0)) && ((_local8 <= 1)))) && ((_local9 >= 0)))) && ((_local9 <= 1)))){ return (true); }; return (false); } public static function drawPoint(_arg1:Point, _arg2, _arg3:uint=0xFF00):void{ if ((((_arg2 is MovieClip)) || ((_arg2 is Sprite)))){ _arg2.graphics.lineStyle(2, _arg3); _arg2.graphics.drawCircle(_arg1.x, _arg1.y, 4); } else { if ((_arg2 is BitmapData)){ Raster.circle(_arg2, _arg1.x, _arg1.y, 4, _arg3); }; }; } } }//package com.markfennell.geomSection 212//Polygon (com.markfennell.geom.Polygon) package com.markfennell.geom { import flash.geom.*; public class Polygon { public var edges:Array; public function Polygon(... _args):void{ edges = []; super(); var _local2:int; while (_local2 < _args.length) { if ((_args[_local2] is Line)){ edges.push(_args[_local2]); }; _local2++; }; } public function draw(_arg1, _arg2:int=0xFF0000):void{ var _local3:int; while (_local3 < length) { Line.draw(getEdge(_local3), _arg1, _arg2); _local3++; }; } public function getEdge(_arg1:int):Line{ return (edges[_arg1]); } public function get length():Number{ return (edges.length); } public static function pointInRect(_arg1:Point, _arg2:Rectangle):Boolean{ if ((((((((_arg1.x >= _arg2.x)) && ((_arg1.x <= (_arg2.x + _arg2.width))))) && ((_arg1.y >= _arg2.y)))) && ((_arg1.y <= (_arg2.y + _arg2.height))))){ return (true); }; return (false); } public static function rectToPoly(_arg1:Rectangle):Polygon{ var _local2:Line = new Line(new Point(_arg1.x, _arg1.y), new Point(_arg1.x, (_arg1.y + _arg1.height))); var _local3:Line = new Line(new Point((_arg1.x + _arg1.width), _arg1.y), new Point((_arg1.x + _arg1.width), (_arg1.y + _arg1.height))); var _local4:Line = new Line(new Point(_arg1.x, _arg1.y), new Point((_arg1.x + _arg1.width), _arg1.y)); var _local5:Line = new Line(new Point(_arg1.x, (_arg1.y + _arg1.height)), new Point((_arg1.x + _arg1.width), (_arg1.y + _arg1.height))); var _local6:Polygon = new Polygon(_local2, _local4, _local3, _local5); return (_local6); } public static function isWithin(_arg1:Point, _arg2:Polygon):Boolean{ var _local3:Line = new Line(_arg1, new Point(_arg1.x, 10000000)); var _local4:int; var _local5:int; while (_local5 < _arg2.length) { if (Line.intersects(_arg2.getEdge(_local5), _local3)){ _local4++; }; _local5++; }; return (!(((_local4 % 2) == 0))); } public static function rectInPoly(_arg1:Rectangle, _arg2:Polygon):Boolean{ var _local5:int; if (isWithin(new Point(_arg1.x, _arg1.y), _arg2)){ return (true); }; if (isWithin(new Point((_arg1.x + _arg1.width), _arg1.y), _arg2)){ return (true); }; if (isWithin(new Point((_arg1.x + _arg1.width), (_arg1.y + _arg1.height)), _arg2)){ return (true); }; if (isWithin(new Point(_arg1.x, (_arg1.y + _arg1.height)), _arg2)){ return (true); }; var _local3:Polygon = rectToPoly(_arg1); var _local4:int; while (_local4 < _arg2.length) { _local5 = 0; while (_local5 < _local3.length) { if (Line.intersects(_local3.getEdge(_local5), _arg2.getEdge(_local4))){ return (true); }; _local5++; }; _local4++; }; return (false); } } }//package com.markfennell.geomSection 213//SoundEvent (com.markfennell.sound.SoundEvent) package com.markfennell.sound { import flash.events.*; public class SoundEvent extends Event { public var force:Boolean; public var volume:Number; public var name:String; public var loops:int; public static var DIALOG:String = "Sound Dialog"; public static var EFFECT:String = "Sound Effect"; public function SoundEvent(_arg1:String, _arg2:String, _arg3:Number, _arg4:int=1, _arg5:Boolean=false){ super(_arg1, true, true); name = _arg2; volume = _arg3; loops = _arg4; force = _arg5; } override public function clone():Event{ return (new SoundEvent(type, name, volume, loops, force)); } } }//package com.markfennell.soundSection 214//SoundPlayer (com.markfennell.sound.SoundPlayer) package com.markfennell.sound { import flash.events.*; import flash.utils.*; import flash.media.*; public class SoundPlayer extends EventDispatcher { private var m_soundChannel:SoundChannel; public var stoppable:Boolean;// = true private var m_loops:int; public var m_soundState:String; private var m_volume:Number; private var m_position:Number;// = 0 private var m_sound:Sound; private static var soundsDictionary:Dictionary = new Dictionary(); public static var STOPPED:String = "stopped"; public static var PAUSED:String = "paused"; public static var FINISHED:String = "finished"; public static var INITIALIZED:String = "init"; public static var PLAYING:String = "playing"; public static var COMPLETE:String = "complete"; public function SoundPlayer(_arg1:Sound):void{ m_soundChannel = new SoundChannel(); super(); m_sound = _arg1; m_soundState = INITIALIZED; soundsDictionary[this] = this; } public function get soundState():String{ return (m_soundState); } public function play(_arg1:Number=1, _arg2:int=1):void{ if (m_soundState == PLAYING){ return; }; m_volume = _arg1; m_loops = _arg2; m_soundChannel.stop(); m_soundChannel = m_sound.play(m_position); m_soundChannel.addEventListener(Event.SOUND_COMPLETE, soundComplete); m_soundState = PLAYING; volume = m_volume; } public function set soundState(_arg1:String):void{ m_soundState = _arg1; } public function pause():void{ if (m_soundState == INITIALIZED){ return; }; m_position = m_soundChannel.position; m_soundChannel.stop(); m_soundChannel.removeEventListener(Event.SOUND_COMPLETE, soundComplete); m_soundState = PAUSED; } public function stop():void{ m_position = 0; m_soundState = STOPPED; if (m_soundChannel){ m_soundChannel.stop(); m_soundChannel.removeEventListener(Event.SOUND_COMPLETE, soundComplete); }; } public function get leftPeak():Number{ return (m_soundChannel.leftPeak); } public function set position(_arg1:Number):void{ var _local2 = (m_soundState == PLAYING); pause(); m_position = _arg1; if (_local2){ play(); }; } public function get duration():Number{ return (m_sound.length); } public function get volume():Number{ return (m_soundChannel.soundTransform.volume); } public function get rightPeak():Number{ return (m_soundChannel.rightPeak); } public function destroy():void{ stop(); m_sound = null; m_soundChannel = null; soundsDictionary[this] = null; } public function get position():Number{ return (m_soundChannel.position); } public function resume():void{ play(m_volume, m_loops); } public function get playing():Boolean{ return ((m_soundState == PLAYING)); } private function soundComplete(_arg1:Event):void{ m_loops--; m_soundState = FINISHED; if (m_loops == 0){ dispatchEvent(new Event(COMPLETE)); destroy(); } else { play(volume, m_loops); }; } public function set volume(_arg1:Number):void{ if (m_soundChannel == null){ return; }; var _local2:SoundTransform = m_soundChannel.soundTransform; _local2.volume = _arg1; m_soundChannel.soundTransform = _local2; } public static function stopSounds():void{ var item:SoundPlayer; for each (item in soundsDictionary) { try { if (item.stoppable){ item.destroy(); soundsDictionary[item] = null; }; } catch(e:Error) { }; }; } } }//package com.markfennell.soundSection 215//TextWriter (com.markfennell.text.TextWriter) package com.markfennell.text { import flash.events.*; import flash.utils.*; import flash.text.*; import org.casalib.util.*; public class TextWriter extends EventDispatcher { private var m_position:int;// = 0 private var m_string:String; private var m_function:Function; private var m_timeout:int; private var m_editedString:String;// = "" private var m_textfield:TextField; private var m_textFormat:TextFormat; private var m_time:int; public static var COMPLETE:String = "Writer Complete"; public function TextWriter(_arg1:TextField, _arg2:String, _arg3:int=0, _arg4:int=15, _arg5:Boolean=false, _arg6:Function=null){ m_textfield = _arg1; m_textfield.htmlText = ""; m_textfield.wordWrap = false; m_textfield.multiline = true; m_string = _arg2; m_time = _arg4; m_function = _arg6; m_textFormat = new TextFormat(); if (_arg5){ m_textFormat.bold = true; }; editString(); setTimeout(startWriting, _arg3); } private function startWriting():void{ m_timeout = setInterval(writeLetter, m_time); } private function writeLetter():void{ if (m_position > m_string.length){ clearInterval(m_timeout); dispatchEvent(new Event(COMPLETE)); return; }; m_textfield.htmlText = m_string.substring(0, m_position); m_textfield.setTextFormat(m_textFormat); m_position++; if (m_function != null){ m_function(); }; } private function editString():void{ m_textfield.htmlText = ""; var _local1:Array = m_string.split(" "); m_string = ""; var _local2:int; while (_local2 < _local1.length) { m_textfield.htmlText = ((m_editedString + _local1[_local2]) + " "); if (m_textfield.textWidth > m_textfield.width){ m_editedString = (m_editedString + "<BR>"); m_string = (m_string + StringUtil.trim(m_editedString)); m_editedString = (_local1[_local2] + " "); } else { m_editedString = ((m_editedString + _local1[_local2]) + " "); }; if (_local2 == (_local1.length - 1)){ m_string = (m_string + StringUtil.trim(m_editedString)); }; _local2++; }; m_textfield.htmlText = ""; m_textfield.visible = true; } public function destroy():void{ clearInterval(m_timeout); } } }//package com.markfennell.textSection 216//DelayedCall (com.markfennell.utils.DelayedCall) package com.markfennell.utils { import flash.events.*; import flash.display.*; import flash.utils.*; public class DelayedCall { private var delay:Number; private var func:Function; private var timer:Timer; private var parameters:Array; private var loop:Boolean;// = false private var count:Number; private var milliseconds:Boolean;// = false private var _pending:Boolean;// = false private static var FRAME_DISPATCHER:Shape; public function DelayedCall(_arg1:Function, _arg2:Array, _arg3:Number, _arg4:Boolean=true){ count = 0; this.func = _arg1; this.delay = _arg3; this.parameters = _arg2; this.milliseconds = _arg4; begin(); } public function begin():void{ if (_pending){ clear(); }; _pending = true; if (milliseconds){ timer = new Timer(delay, 1); timer.addEventListener(TimerEvent.TIMER, tick); timer.start(); } else { if (!FRAME_DISPATCHER){ FRAME_DISPATCHER = new Shape(); }; FRAME_DISPATCHER.addEventListener(Event.ENTER_FRAME, frameTick); }; } public function get remainingDelay():Number{ var _local1:Number = 0; if (this._pending){ if (this.milliseconds){ _local1 = this.timer.currentCount; } else { _local1 = (_local1 + this.count); }; }; return (_local1); } public function get pending():Boolean{ return (_pending); } private function frameTick(_arg1:Event=null):void{ count++; if (count >= delay){ tick(); }; } public function clear():void{ _pending = false; if (timer){ timer.removeEventListener(TimerEvent.TIMER, tick); timer = null; }; if (!milliseconds){ FRAME_DISPATCHER.removeEventListener(Event.ENTER_FRAME, frameTick); }; } private function tick(_arg1:Event=null):void{ _pending = false; if (!loop){ clear(); delete ??getglobalscope [this]; } else { begin(); }; func.apply(null, parameters); } } }//package com.markfennell.utilsSection 217//TEA (com.meychi.ascrypt3.TEA) package com.meychi.ascrypt3 { public class TEA { public function decrypt(_arg1:String, _arg2:String):String{ var _local9:Number; var _local10:Number; var _local13:Number; var _local3:Array = charsToLongs(hexToChars(_arg1)); var _local4:Array = charsToLongs(strToChars(_arg2)); var _local5:Number = _local3.length; if (_local5 == 0){ return (""); }; var _local6:Number = _local3[(_local5 - 1)]; var _local7:Number = _local3[0]; var _local8:Number = 2654435769; var _local11:Number = Math.floor((6 + (52 / _local5))); var _local12:Number = (_local11 * _local8); while (_local12 != 0) { _local10 = ((_local12 >>> 2) & 3); _local13 = (_local5 - 1); while (_local13 > 0) { _local6 = _local3[(_local13 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[_local13] = (_local3[_local13] - _local9)); _local13--; }; _local6 = _local3[(_local5 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[0] = (_local3[0] - _local9)); _local12 = (_local12 - _local8); }; return (charsToStr(longsToChars(_local3))); } public function encrypt(_arg1:String, _arg2:String):String{ var _local9:Number; var _local10:Number; var _local13:Number; var _local3:Array = charsToLongs(strToChars(_arg1)); var _local4:Array = charsToLongs(strToChars(_arg2)); var _local5:Number = _local3.length; if (_local5 == 0){ return (""); }; if (_local5 == 1){ var _temp1 = _local5; _local5 = (_local5 + 1); var _local14 = _temp1; _local3[_local14] = 0; }; var _local6:Number = _local3[(_local5 - 1)]; var _local7:Number = _local3[0]; var _local8:Number = 2654435769; var _local11:Number = Math.floor((6 + (52 / _local5))); var _local12:Number = 0; while (_local11-- > 0) { _local12 = (_local12 + _local8); _local10 = ((_local12 >>> 2) & 3); _local13 = 0; while (_local13 < (_local5 - 1)) { _local7 = _local3[(_local13 + 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[_local13] = (_local3[_local13] + _local9)); _local13++; }; _local7 = _local3[0]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[(_local5 - 1)] = (_local3[(_local5 - 1)] + _local9)); }; return (charsToHex(longsToChars(_local3))); } private static function strToChars(_arg1:String):Array{ var _local2:Array = new Array(); var _local3:Number = 0; while (_local3 < _arg1.length) { _local2.push(_arg1.charCodeAt(_local3)); _local3++; }; return (_local2); } private static function charsToHex(_arg1:Array):String{ var _local2:String = new String(""); var _local3:Array = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var _local4:Number = 0; while (_local4 < _arg1.length) { _local2 = (_local2 + (_local3[(_arg1[_local4] >> 4)] + _local3[(_arg1[_local4] & 15)])); _local4++; }; return (_local2); } private static function hexToChars(_arg1:String):Array{ var _local2:Array = new Array(); var _local3:Number = ((_arg1.substr(0, 2))=="0x") ? 2 : 0; while (_local3 < _arg1.length) { _local2.push(parseInt(_arg1.substr(_local3, 2), 16)); _local3 = (_local3 + 2); }; return (_local2); } private static function charsToStr(_arg1:Array):String{ var _local2:String = new String(""); var _local3:Number = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(_arg1[_local3])); _local3++; }; return (_local2); } private static function longsToChars(_arg1:Array):Array{ var _local2:Array = new Array(); var _local3:Number = 0; while (_local3 < _arg1.length) { _local2.push((_arg1[_local3] & 0xFF), ((_arg1[_local3] >>> 8) & 0xFF), ((_arg1[_local3] >>> 16) & 0xFF), ((_arg1[_local3] >>> 24) & 0xFF)); _local3++; }; return (_local2); } private static function charsToLongs(_arg1:Array):Array{ var _local2:Array = new Array(Math.ceil((_arg1.length / 4))); var _local3:Number = 0; while (_local3 < _local2.length) { _local2[_local3] = (((_arg1[(_local3 * 4)] + (_arg1[((_local3 * 4) + 1)] << 8)) + (_arg1[((_local3 * 4) + 2)] << 16)) + (_arg1[((_local3 * 4) + 3)] << 24)); _local3++; }; return (_local2); } } }//package com.meychi.ascrypt3Section 218//Console (console.Console) package console { import flash.events.*; import flash.utils.*; import pages.*; import com.markfennell.sound.*; import events.*; import net.*; import game.*; import game.hud.*; import flash.net.*; import org.casalib.display.*; import com.google.analytics.*; import game.interfaces.*; import org.casalib.util.*; public class Console extends CasaSprite { private var m_hud:HudController; private var m_currentState:String; private var m_currentClass:IConsoleSection;// = null private var m_nextClass:IConsoleSection;// = null private var m_callBack:Function; private var m_soundController:SoundController; private var m_user:User; public static var firstPlay:Boolean = true; public static var GoogleAnalytics:AnalyticsTracker; public static var paused:Boolean = false; public function Console(){ m_soundController = new SoundController(); super(); m_hud = new HudController(); addChild(m_hud); GoogleAnalytics = new GATracker(StageReference.getStage(), Constants.GOOGLE, "AS3", false); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_CREDITS, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_HELP, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_INTRO, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_MORE, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_PLAYGAME, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_MUTANTS, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_SHARE, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.DISPLAY_MEDALS, handleConsoleEvent); addEventListener(ConsoleEvents.TRANSITION_COMPLETE, handleTransitionComplete); GameBroadcaster.addEventListener(ConsoleEvents.PAUSE, handleConsoleEvent); GameBroadcaster.addEventListener(ConsoleEvents.EXIT, handleConsoleEvent); handleConsoleEvent(new ConsoleEvent(ConsoleEvents.DISPLAY_INTRO)); GameBroadcaster.addEventListener(SoundEvent.EFFECT, handleSoundEffect); GameBroadcaster.addEventListener(ConsoleEvents.GAME_COMPLETE, handleGameComplete); Console.GoogleAnalytics.trackPageview("MRD_Escape/game/index"); } private function onLoginEnd(_arg1:LoginEvent):void{ if ((m_currentClass is Title)){ Title(m_currentClass).playIntro(); }; m_hud.enableHud(); } private function checkLogin(_arg1:Title):void{ _arg1.playIntro(); m_hud.enableHud(); } private function handleConsoleEvent(_arg1:ConsoleEvent):void{ var e = _arg1; if (e.type == m_currentState){ return; }; trace(e.type, m_currentState); m_hud.setScore(); m_hud.updatePanel(); if (((!((m_callBack == null))) && (!((e.type == ConsoleEvents.DISPLAY_MORE))))){ m_callBack(); m_callBack = null; }; switch (e.type){ case ConsoleEvents.PAUSE: if (!paused){ m_nextClass.doPause(); SoundController.getInstance().pause_music(true); paused = true; } else { m_nextClass.doResume(); SoundController.getInstance().pause_music(false); paused = false; }; break; case ConsoleEvents.EXIT: paused = false; m_hud.hideInGameButtons(); SoundController.getInstance().start_music(0, true); m_currentState = ConsoleEvents.DISPLAY_INTRO; m_nextClass = new Title(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); setHudToTop(); break; case ConsoleEvents.DISPLAY_INTRO: SoundController.getInstance().start_music(0); m_hud.disableHud(); m_currentState = ConsoleEvents.DISPLAY_INTRO; m_nextClass = new Title(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); setHudToTop(); break; case ConsoleEvents.DISPLAY_HELP: Console.GoogleAnalytics.trackPageview("MRD_Escape/menu/instructions"); m_currentState = ConsoleEvents.DISPLAY_HELP; m_nextClass = new Help(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); setHudToTop(); break; case ConsoleEvents.DISPLAY_MEDALS: Console.GoogleAnalytics.trackPageview("MRD_Escape/menu/achievements"); m_currentState = ConsoleEvents.DISPLAY_MEDALS; m_nextClass = new Medals(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); m_callBack = m_nextClass.hide; setHudToTop(); break; case ConsoleEvents.DISPLAY_MUTANTS: Console.GoogleAnalytics.trackPageview("MRD_Escape/menu/mutants"); m_currentState = ConsoleEvents.DISPLAY_MUTANTS; m_nextClass = new Mutants(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); m_callBack = m_nextClass.hide; setHudToTop(); break; case ConsoleEvents.DISPLAY_PLAYGAME: Console.GoogleAnalytics.trackPageview("MRD_Escape/game/start"); if (m_currentState != ConsoleEvents.GAME_COMPLETE){ SoundController.getInstance().pause_music(true); }; m_currentState = ConsoleEvents.DISPLAY_PLAYGAME; m_nextClass = new GameController(int(e.data)); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); setHudToTop(); break; case ConsoleEvents.DISPLAY_CREDITS: if (m_currentState == ConsoleEvents.DISPLAY_CREDITS){ return; }; Console.GoogleAnalytics.trackPageview("MRD_Escape/menu/credits"); SoundController.getInstance().start_music(0); m_currentState = ConsoleEvents.DISPLAY_CREDITS; m_nextClass = new Credits(); addChild((m_nextClass as CasaSprite)); m_nextClass.transitionIn(); if (!m_hud.showingTitleButtons){ m_hud.hideInGameButtons(); setTimeout(m_hud.showTitleButtons, 500); }; setHudToTop(); break; case ConsoleEvents.DISPLAY_MORE: trace("More Games"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "linkout", "more games"); navigateToURL(Constants.URL_MOREGAMES, "_blank"); break; case ConsoleEvents.DISPLAY_SHARE: Console.GoogleAnalytics.trackPageview("MRD_Escape/menu/share"); trace("SHARE URL HERE"); try { Main.ClearSpring.api.menu.show(); } catch(e:TypeError) { trace("could not open clearspring"); navigateToURL(Constants.URL_MOREGAMES, "_blank"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "linkout", "more games share"); }; break; }; } private function setHudToTop():void{ setChildIndex(m_hud, (numChildren - 1)); } override public function destroy():void{ GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_CREDITS, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_HELP, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_INTRO, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_MORE, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_PLAYGAME, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_MUTANTS, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.DISPLAY_SHARE, handleConsoleEvent); GameBroadcaster.removeEventListener(ConsoleEvents.TRANSITION_COMPLETE, handleTransitionComplete); GameBroadcaster.removeEventListener(SoundEvent.EFFECT, handleSoundEffect); GameBroadcaster.removeEventListener(ConsoleEvents.GAME_COMPLETE, handleGameComplete); m_currentClass.destroy(); m_nextClass.destroy(); super.destroy(); } private function handleGameComplete(_arg1:Event):void{ m_currentState = ConsoleEvents.GAME_COMPLETE; } private function handleTransitionComplete(_arg1:ConsoleEvent):void{ if (m_currentClass){ m_currentClass.destroy(); }; m_currentClass = m_nextClass; if (m_currentState == ConsoleEvents.DISPLAY_INTRO){ m_hud.showTitleButtons(); checkLogin((m_currentClass as Title)); }; } private function handleSoundEffect(_arg1:SoundEvent):void{ switch (_arg1.type){ case SoundEvent.EFFECT: SoundController.getInstance().playSound(_arg1); break; }; } } }//package consoleSection 219//ConsoleEvent (console.ConsoleEvent) package console { import flash.events.*; public class ConsoleEvent extends Event { public var data; public function ConsoleEvent(_arg1:String, _arg2=null){ super(_arg1, true, true); data = _arg2; } override public function clone():Event{ return (new ConsoleEvent(type, data)); } } }//package consoleSection 220//ConsoleEvents (console.ConsoleEvents) package console { public class ConsoleEvents { public static var PAUSE_DISABLED:String = "PauseDisabled"; public static var DISPLAY_MORE:String = "ConsoleDisplayMore"; public static var PAUSE:String = "GamePause"; public static var DISPLAY_MEDALS:String = "ConsoleDisplayMedals"; public static var DISPLAY_CREDITS:String = "ConsoleDisplayCredits"; public static var EXIT:String = "GameExit"; public static var STARTED:String = "GameStarted"; public static var DISPLAY_PLAYGAME:String = "ConsoleDisplayPlayGame"; public static var GAME_COMPLETE:String = "Game Completed"; public static var DISPLAY_SHARE:String = "ConsoleDisplaySendToFriend"; public static var TRANSITION_COMPLETE:String = "Transition COmplete"; public static var RESUME:String = "GameResume"; public static var DISPLAY_INTRO:String = "ConsoleDisplayIntro"; public static var PAUSE_ENABLED:String = "PauseEnabled"; public static var DISPLAY_MUTANTS:String = "ConsoleDisplayScores"; public static var DISPLAY_HELP:String = "ConsoleDisplayHelp"; } }//package consoleSection 221//LoginEvent (events.LoginEvent) package events { import flash.events.*; public class LoginEvent extends Event { private var _data:Object; public static const REGISTER:String = "loginRegister"; public static const LOGIN:String = "loginLogin"; public static const LOGIN_SUCCESS:String = "loginSuccess"; public static const INITIALIZE:String = "loginInitialize"; public static const OPEN_LOGIN:String = "loginOpenLogin"; public static const LOGIN_CANCEL:String = "loginCancel"; public static const LOGIN_ERROR:String = "loginError"; public static const TRY_AGAIN:String = "loginTryAgain"; public static const SKIP:String = "loginSkip"; public function LoginEvent(_arg1:String, _arg2:Object=null){ super(_arg1); _data = _arg2; } public function get data():Object{ return (_data); } override public function clone():Event{ return (new LoginEvent(type, _data)); } } }//package eventsSection 222//UIEvent (events.UIEvent) package events { import flash.events.*; public class UIEvent extends Event { public static const SHOW_HIGHSCORES:String = "UIShowHighScores"; public static const SUBMIT_SCORE:String = "UISubmitScore"; public static const SUBMIT_SCORE_AGAIN:String = "UISubmitScoreAgain"; public static const SUBMIT_SCORE_SUCCESS:String = "UISubmitScoreSuccess"; public static const CLOSE:String = "UIClose"; public static const SEND_SCORE:String = "UISendScore"; public static const LOAD_HIGHSCORES:String = "UILoadHighScores"; public static const SUBMIT_SCORE_FORM:String = "UISubmitScoreForm"; public function UIEvent(_arg1:String){ super(_arg1); } override public function clone():Event{ return (new UIEvent(type)); } } }//package eventsSection 223//Quadratic (fl.motion.easing.Quadratic) package fl.motion.easing { public class Quadratic { public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } } }//package fl.motion.easingSection 224//HudButton (game.hud.HudButton) package game.hud { import flash.events.*; import flash.display.*; import console.*; import com.markfennell.sound.*; import gs.*; import org.casalib.display.*; public class HudButton extends CasaSprite { private var m_label:String; private var m_item:MovieClip; private var m_toggle:Boolean;// = true private var m_event:String; private var m_enabled:Boolean;// = true private var m_canToggle:Boolean;// = false private var m_labelToggle:String; public function HudButton(_arg1:MovieClip, _arg2:String, _arg3:String, _arg4:String=""){ var a_item = _arg1; var a_label = _arg2; var a_event = _arg3; var a_toggle = _arg4; super(); m_item = a_item; m_item.hover.alpha = 0; m_event = a_event; m_label = a_label; if (a_toggle != ""){ m_canToggle = true; m_labelToggle = a_toggle; }; try { m_item.label.text = m_label; m_item.label.mouseEnabled = false; m_item.buttonMode = (m_item.useHandCursor = true); } catch(e:Error) { }; m_item.addEventListener(MouseEvent.CLICK, handleClick); m_item.addEventListener(MouseEvent.ROLL_OUT, handleRollOut); m_item.addEventListener(MouseEvent.ROLL_OVER, handleRollOver); this.buttonMode = true; this.useHandCursor = true; } private function handleClick(_arg1:MouseEvent):void{ if (m_enabled){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_02", 0.5, 1)); if (m_canToggle){ if (m_toggle){ m_item.label.text = m_labelToggle; m_toggle = false; } else { m_item.label.text = m_label; m_toggle = true; }; }; GameBroadcaster.dispatchEvent(new ConsoleEvent(m_event)); }; } public function enable():void{ m_enabled = true; TweenMax.to(m_item, 0.3, {alpha:1}); } public function reset():void{ m_item.label.text = m_label; m_toggle = true; disable(); } private function handleRollOut(_arg1:MouseEvent):void{ TweenMax.to(m_item.hover, 0.3, {alpha:0}); } public function disable():void{ m_enabled = false; TweenMax.to(m_item, 0.3, {alpha:0.5}); } private function handleRollOver(_arg1:MouseEvent):void{ TweenMax.to(m_item.hover, 0.3, {alpha:1}); } } }//package game.hudSection 225//HudController (game.hud.HudController) package game.hud { import flash.events.*; import flash.display.*; import flash.utils.*; import console.*; import com.markfennell.sound.*; import net.*; import game.*; import gs.*; import flash.net.*; import org.casalib.display.*; import org.casalib.util.*; import assets.*; import fl.motion.easing.*; public class HudController extends CasaSprite { private var m_btnMedals:HudButton; private var m_btnPause:HudButton; private var m_showingTitleButtons:Boolean; private var m_ui:HudUI; private var m_canShowPanel:Boolean;// = true private var m_stage:Stage; private var m_level:int; private var m_buttons:HudUIButtons; private var m_scoreLength:int;// = 9 private var m_btnScores:HudButton; private var m_startPanel:StartPanel; private var m_btnMain:HudButton; private var m_btnHelp:HudButton; private var m_btnShare:HudButton; private var m_mask:Shape; private var m_btnMore:HudButton; public function HudController(){ m_ui = new HudUI(); addChild(m_ui); setScore(); m_startPanel = new StartPanel(); m_startPanel.x = 230; m_startPanel.y = 500; m_buttons = new HudUIButtons(); m_buttons.x = 365; m_buttons.y = 434; addChild(m_buttons); User.getInstance().loadMedals(); m_buttons.ButtonHelp.x = 0; m_buttons.ButtonScores.x = 0; m_buttons.ButtonMore.x = 0; m_buttons.ButtonShare.x = 0; m_buttons.BaseHelp.x = 0; m_buttons.BaseScores.x = 0; m_buttons.BaseMore.x = 0; m_buttons.BaseShare.x = 0; m_btnHelp = new HudButton(m_buttons.ButtonHelp, "HOW TO PLAY", ConsoleEvents.DISPLAY_HELP); m_btnScores = new HudButton(m_buttons.ButtonScores, "MUTANTS", ConsoleEvents.DISPLAY_MUTANTS); m_btnMore = new HudButton(m_buttons.ButtonMore, "MORE GAMES", ConsoleEvents.DISPLAY_MORE); m_btnShare = new HudButton(m_buttons.ButtonShare, "MEDALS", ConsoleEvents.DISPLAY_MEDALS); m_btnMain = new HudButton(m_buttons.InGame.ButtonMain, "QUIT", ConsoleEvents.EXIT); m_btnPause = new HudButton(m_buttons.InGame.ButtonPause, "PAUSE GAME", ConsoleEvents.PAUSE, "RESUME GAME"); m_stage = StageReference.getStage(); m_stage.addChild(m_startPanel); m_mask = new Shape(); m_mask.graphics.beginFill(0xFFFFFF, 1); m_mask.graphics.drawRect(230, 0, 270, 457); m_mask.graphics.endFill(); addChild(m_mask); m_startPanel.mask = m_mask; m_startPanel.addEventListener(StartPanel.SHOW, handleStartPanel); m_startPanel.addEventListener(StartPanel.HIDE, handleStartPanel); GameBroadcaster.addEventListener(StartPanel.CLICK, handleStartPanel); GameBroadcaster.addEventListener(ConsoleEvents.STARTED, showInGameButtons); GameBroadcaster.addEventListener(ConsoleEvents.PAUSE_DISABLED, handlePauseState); GameBroadcaster.addEventListener(ConsoleEvents.PAUSE_ENABLED, handlePauseState); m_ui.btnMarvel.addEventListener(MouseEvent.CLICK, handleMouseClick); m_ui.btnXmen.addEventListener(MouseEvent.CLICK, handleMouseClick); m_ui.btnCredits.addEventListener(MouseEvent.CLICK, handleMouseClick); m_ui.soundControls.musicButton.addEventListener(MouseEvent.CLICK, handleMouseClick); m_ui.soundControls.soundButton.addEventListener(MouseEvent.CLICK, handleMouseClick); hideButtons(); mouseEnabled = false; } private function handlePauseState(_arg1:ConsoleEvent):void{ trace("Handle Pause State"); switch (_arg1.type){ case ConsoleEvents.PAUSE_ENABLED: m_btnPause.enable(); break; case ConsoleEvents.PAUSE_DISABLED: m_btnPause.disable(); break; }; } private function handleStartPanel(_arg1:StartEvent):void{ if (_arg1.type == StartPanel.SHOW){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_throw_whoosh_01", 0.8, 1)); if (m_canShowPanel){ TweenMax.to(m_startPanel, 0.25, {y:(395 - m_startPanel.itemsHeight), ease:Quadratic.easeOut}); }; }; if (_arg1.type == StartPanel.HIDE){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_throw_whoosh_03", 0.3, 1)); if (m_canShowPanel){ TweenMax.to(m_startPanel, 0.2, {y:395, ease:Quadratic.easeIn}); }; }; if (_arg1.type == StartPanel.CLICK){ if (m_canShowPanel){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_04", 0.5, 1)); m_level = _arg1.id; hideTitleButtons(); m_canShowPanel = false; }; }; } private function onPlayLevel(_arg1:ConsoleEvent):void{ m_buttons.InGame.reloadXML.level.text = EmbeddedData.getLevel(int(_arg1.data)).url; } public function startGame():void{ GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.DISPLAY_PLAYGAME, m_level)); } public function hideInGameButtons():void{ TweenMax.to(m_buttons.InGame, 0.5, {delay:0, y:250, ease:Quadratic.easeOut}); } private function handleMouseClick(_arg1:MouseEvent):void{ switch (_arg1.target){ case m_ui.btnCredits: GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.DISPLAY_CREDITS)); break; case m_ui.soundControls.soundButton: if (SoundController.getInstance().soundsEnabled == false){ m_ui.soundControls.soundSlider.gotoAndPlay("on"); trace("sound On"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "toggleSFX", "on"); SoundController.getInstance().soundsEnabled = true; SoundController.getInstance().resumeSounds(); } else { m_ui.soundControls.soundSlider.gotoAndPlay("off"); trace("sound Off"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "toggleSFX", "off"); SoundController.getInstance().soundsEnabled = false; SoundController.getInstance().stopSounds(); }; break; case m_ui.soundControls.musicButton: if (SoundController.getInstance().musicEnabled == false){ m_ui.soundControls.musicSlider.gotoAndPlay("on"); trace("Music On"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "toggleMusic", "on"); SoundController.getInstance().musicEnabled = true; SoundController.getInstance().resume_music(); } else { m_ui.soundControls.musicSlider.gotoAndPlay("off"); trace("Music Off"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "toggleMusic", "off"); SoundController.getInstance().musicEnabled = false; SoundController.getInstance().stop_music(); }; break; case m_ui.btnMarvel: trace("GOTO URL MARVEL"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "linkout", "marvel kids logo"); navigateToURL(Constants.URL_MARVELKIDS, "_blank"); break; case m_ui.btnXmen: trace("GOTO URL XMEN"); Console.GoogleAnalytics.trackEvent("MRD_Escape", "linkout", "xmen"); navigateToURL(Constants.URL_XMEN, "_blank"); break; }; } public function showTitleButtons():void{ hideButtons(); m_showingTitleButtons = true; m_canShowPanel = true; TweenMax.killAll(true, false, false); hideInGameButtons(); TweenMax.to(m_startPanel, 0.25, {delay:0.2, y:393, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.ButtonHelp, 0.25, {delay:0.4, x:-260, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.BaseHelp, 0.25, {delay:0.4, x:-251, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.ButtonShare, 0.25, {delay:0.4, x:262, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.BaseShare, 0.25, {delay:0.4, x:251, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.ButtonScores, 0.25, {delay:0.5, x:-143, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.BaseScores, 0.25, {delay:0.5, x:-143, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.ButtonMore, 0.25, {delay:0.5, x:172, ease:Quadratic.easeOut}); TweenMax.to(m_buttons.BaseMore, 0.25, {delay:0.5, x:156, ease:Quadratic.easeOut}); setTimeout(revealButtons, 400); } private function onLevelReloadComplete():void{ } private function onReloadButtonPress(_arg1:MouseEvent):void{ var _local2:String = m_buttons.InGame.reloadXML.level.text; if (_local2.length > 0){ EmbeddedData.reloadLevel(_local2, m_level, onLevelReloadComplete); }; } public function updatePanel():void{ m_startPanel.updatePanel(); } public function hide(_arg1:DisplayObject):void{ _arg1.visible = false; } public function setScore():void{ m_ui.scoretext.text = NumberUtil.format(User.getInstance().loadScore(), m_scoreLength, ",", ""); } private function showInGameButtons(_arg1:ConsoleEvent):void{ m_btnPause.reset(); TweenMax.to(m_buttons.InGame, 0.5, {delay:0, y:-2, ease:Quadratic.easeOut}); } private function hideButtons():void{ m_buttons.ButtonHelp.visible = false; m_buttons.BaseHelp.visible = false; m_buttons.ButtonShare.visible = false; m_buttons.BaseShare.visible = false; m_buttons.ButtonScores.visible = false; m_buttons.BaseScores.visible = false; m_buttons.ButtonMore.visible = false; m_buttons.BaseMore.visible = false; } public function get showingTitleButtons():Boolean{ return (m_showingTitleButtons); } public function disableHud():void{ mouseChildren = false; TweenMax.to(m_buttons, 0.25, {colorMatrixFilter:{colorize:0xCCCCCC, amount:1}}); TweenMax.to(m_startPanel, 0.25, {colorMatrixFilter:{colorize:0xCCCCCC, amount:1}}); } private function hideTitleButtons():void{ m_showingTitleButtons = false; TweenMax.to(m_buttons.ButtonHelp, 0.25, {delay:0.1, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.ButtonHelp]}); TweenMax.to(m_buttons.BaseHelp, 0.25, {delay:0.1, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.BaseHelp]}); TweenMax.to(m_buttons.ButtonShare, 0.25, {delay:0.1, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.ButtonShare]}); TweenMax.to(m_buttons.BaseShare, 0.25, {delay:0.1, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.BaseShare]}); TweenMax.to(m_buttons.ButtonScores, 0.25, {delay:0, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.ButtonScores]}); TweenMax.to(m_buttons.BaseScores, 0.25, {delay:0, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.BaseScores]}); TweenMax.to(m_buttons.ButtonMore, 0.25, {delay:0, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.ButtonMore]}); TweenMax.to(m_buttons.BaseMore, 0.25, {delay:0, x:0, ease:Quadratic.easeOut, onComplete:hide, onCompleteParams:[m_buttons.BaseMore]}); TweenMax.to(m_startPanel, 0.2, {delay:0.2, y:700, ease:Quadratic.easeIn, onComplete:startGame}); } private function revealButtons():void{ m_buttons.ButtonHelp.visible = true; m_buttons.BaseHelp.visible = true; m_buttons.ButtonShare.visible = true; m_buttons.BaseShare.visible = true; m_buttons.ButtonScores.visible = true; m_buttons.BaseScores.visible = true; m_buttons.ButtonMore.visible = true; m_buttons.BaseMore.visible = true; } override public function destroy():void{ removeChild(m_ui); m_ui = null; super.destroy(); } public function enableHud():void{ TweenMax.to(m_buttons, 0.25, {colorMatrixFilter:{}}); TweenMax.to(m_startPanel, 0.25, {colorMatrixFilter:{}}); mouseChildren = true; m_ui.mouseEnabled = false; m_ui.top.mouseEnabled = (m_ui.top.mouseChildren = false); } } }//package game.hudSection 226//StartEvent (game.hud.StartEvent) package game.hud { import flash.events.*; public class StartEvent extends Event { public var id:int; public static var PLAY:String = "PlayGame"; public function StartEvent(_arg1:String, _arg2:int){ super(_arg1, true, true); id = _arg2; } override public function clone():Event{ return (new StartEvent(type, id)); } } }//package game.hudSection 227//StartPanel (game.hud.StartPanel) package game.hud { import flash.events.*; import flash.display.*; import net.*; import org.casalib.display.*; import org.casalib.util.*; import assets.*; public class StartPanel extends CasaSprite { private var m_base:int;// = 395 private var m_gap:int;// = 28 private var m_item:StartPanelItem; public var itemsHeight:int;// = 0 private var m_itemsArray:Array; private var m_panel:DisplayObject; private var m_offsetX:int;// = 0 private var m_offsetY:int;// = 0 private var m_showing:Boolean;// = false private var m_header:HudStartUI; public static var CLICK:String = "StartPanelClicked"; public static var HIDE:String = "StartPanelHide"; public static var SHOW:String = "StartPanelShow"; public function StartPanel(){ var _local1:XML; var _local2:String; m_itemsArray = []; super(); m_header = new HudStartUI(); addChild(m_header); var _local3:int; while (_local3 < EmbeddedData.levelNum) { _local1 = EmbeddedData.getLevel(_local3).xml; _local2 = ((("Level " + String((_local3 + 1))) + ": ") + String(_local1.name)); m_item = new StartPanelItem(_local2, _local3); m_item.x = m_offsetX; m_item.y = (m_offsetY + (m_gap * _local3)); m_header.buttonContainer.addChild(m_item); m_itemsArray.push(m_item); itemsHeight = (itemsHeight + m_gap); _local3++; }; m_header.btnStart.addEventListener(MouseEvent.ROLL_OVER, showPanel); StageReference.getStage().addEventListener(MouseEvent.MOUSE_MOVE, hidePanel); updatePanel(); } public function showPanel(_arg1:MouseEvent=null):void{ if (!m_showing){ m_showing = true; dispatchEvent(new StartEvent(SHOW, 0)); }; } public function hidePanel(_arg1:MouseEvent=null):void{ var _local2:Boolean; if (!m_showing){ return; }; if ((((((_arg1.stageX < 229)) || ((_arg1.stageX > 501)))) || ((_arg1.stageY < (395 - itemsHeight))))){ m_showing = false; dispatchEvent(new StartEvent(HIDE, 0)); }; } public function updatePanel():void{ var _local1:Array = User.getInstance().loadLevels(); var _local2:int; while (_local2 < m_itemsArray.length) { if (_local1[_local2]){ m_itemsArray[_local2].unlock(); }; _local2++; }; } } }//package game.hudSection 228//StartPanelItem (game.hud.StartPanelItem) package game.hud { import flash.events.*; import console.*; import gs.*; import org.casalib.display.*; import assets.*; public class StartPanelItem extends CasaSprite { private var m_item:HudItemUI; private var m_itemBase:HudItemBaseUI; public var id:int; public function StartPanelItem(_arg1:String, _arg2:int){ id = _arg2; m_item = new HudItemUI(); m_item.titleText.text = _arg1; m_item.hover.alpha = 0; addChild(m_item); if (id > 0){ m_itemBase = new HudItemBaseUI(); addChildAt(m_itemBase, 0); }; mouseChildren = false; } private function handleClick(_arg1:MouseEvent):void{ Console.GoogleAnalytics.trackPageview((("MRD_Escape/game/level/" + String((id + 1))) + "/start")); GameBroadcaster.dispatchEvent(new StartEvent(StartPanel.CLICK, id)); } public function unlock():void{ m_item.locked.visible = false; addEventListener(MouseEvent.CLICK, handleClick); addEventListener(MouseEvent.ROLL_OUT, handleRollOut); addEventListener(MouseEvent.ROLL_OVER, handleRollOver); this.buttonMode = true; this.useHandCursor = true; } private function handleRollOut(_arg1:MouseEvent):void{ TweenMax.to(m_item.hover, 0.3, {alpha:0}); } private function handleRollOver(_arg1:MouseEvent):void{ TweenMax.to(m_item.hover, 0.3, {alpha:1}); } override public function destroy():void{ removeChild(m_item); m_item = null; if (id > 0){ removeChild(m_itemBase); m_itemBase = null; }; super.destroy(); } } }//package game.hudSection 229//IConsoleSection (game.interfaces.IConsoleSection) package game.interfaces { import flash.events.*; public interface IConsoleSection extends IEventDispatcher { function destroy():void; function hide():void; function doResume():void; function transitionOut():void; function transitionIn():void; function doPause():void; function transitionIn_COMPLETE():void; } }//package game.interfacesSection 230//IGameController (game.interfaces.IGameController) package game.interfaces { import flash.events.*; public interface IGameController { function nextLevel(_arg1:Event=null):void; function doResume():void; function destroy():void; function doPause():void; function replayLevel(_arg1:Event=null):void; function restart(_arg1:Event=null):void; } }//package game.interfacesSection 231//ILevelController (game.interfaces.ILevelController) package game.interfaces { import flash.display.*; import game.levels.*; import org.casalib.display.*; public interface ILevelController { function init(_arg1:Level):void; function renderPhysics():void; function get gameBitmapData():BitmapData; function render(_arg1):void; function doResume():void; function get gameBitmap():CasaBitmap; function doPause():void; function renderDisplay():void; } }//package game.interfacesSection 232//IObstacle (game.interfaces.IObstacle) package game.interfaces { import flash.geom.*; public interface IObstacle { function destroy():void; function positionFromTile(_arg1:int, _arg2:int):Point; function get sx():int; function get sy():int; function getRange(_arg1:Point):Number; function setOn():void; function get isOn():Boolean; function set sx(_arg1:int):void; function get tileY():int; function renderDisplay(_arg1:int, _arg2:int):void; function setOff():void; function setAnimationState(_arg1:String):void; function get isActive():Boolean; function renderPhysics():void; function get point():Point; function get tileX():int; function get type():String; function get range():int; } }//package game.interfacesSection 233//CutSceneController (game.levels.CutSceneController) package game.levels { import flash.events.*; import flash.display.*; import flash.utils.*; import console.*; import game.*; import flash.media.*; import gs.*; import org.casalib.display.*; import org.casalib.util.*; import assets.*; import flash.ui.*; public class CutSceneController extends CasaSprite { private var m_ui:MovieClip; private var embed_VideoEndSequence:VideoEndSequence; private var m_stage:Stage; private var embed_VideoUnlockSequence:VideoUnlockSequence; private var m_skipTime:int; private var embed_VideoIntroSequence:VideoIntroSequence; public static var displayed:Boolean = false; override public function destroy():void{ removeCutScene(); super.destroy(); } public function display(_arg1:CutSceneEvent):void{ var _local3:SoundTransform; m_skipTime = getTimer(); displayed = true; m_stage = StageReference.getStage(); var _local2:* = getDefinitionByName(_arg1.cutScene); m_ui = new (_local2); addChild(m_ui); m_ui.x = 8; m_ui.y = 64; m_ui.alpha = 0; TweenMax.to(m_ui, 0, {tint:0xFFFFFF}); TweenMax.to(m_ui, 0.25, {alpha:1, delay:0.05}); TweenMax.to(m_ui, 0.25, {delay:0.3, removeTint:true}); m_ui.addEventListener(Event.ENTER_FRAME, render); if (SoundController.getInstance().soundsEnabled == false){ _local3 = new SoundTransform(); _local3.volume = 0; this.soundTransform = _local3; }; setupKeyListener(); m_stage.frameRate = 25; } public function removeCutScene_COMPLETE():void{ if (m_ui){ removeChild(m_ui); m_ui = null; }; displayed = false; GameBroadcaster.dispatchEvent(new CutSceneEvent(CutSceneEvent.HIDE, null)); } private function clearKeyListener():void{ StageReference.getStage().removeEventListener(KeyboardEvent.KEY_UP, handleCutSeneKeyUp); } private function removeCutScene():void{ if (m_ui){ m_ui.removeEventListener(Event.ENTER_FRAME, render); m_ui.stop(); TweenMax.to(m_ui, 0.25, {alpha:0, onComplete:removeCutScene_COMPLETE}); }; if (m_stage){ m_stage.frameRate = Constants.FRAME_RATE; }; } private function setupKeyListener():void{ clearKeyListener(); StageReference.getStage().addEventListener(KeyboardEvent.KEY_UP, handleCutSeneKeyUp); } private function handleCutSeneKeyUp(_arg1:KeyboardEvent):void{ if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.ESCAPE)))){ removeCutScene(); if (Console.firstPlay){ Console.GoogleAnalytics.trackEvent("MRD_Escape", "intro", "skipped", int(((getTimer() - m_skipTime) / 1000))); }; }; } private function render(_arg1:Event):void{ if (m_ui.currentFrame == m_ui.totalFrames){ m_ui.removeEventListener(Event.ENTER_FRAME, render); m_ui.stop(); removeCutScene(); }; } } }//package game.levelsSection 234//CutSceneEvent (game.levels.CutSceneEvent) package game.levels { import flash.events.*; public class CutSceneEvent extends Event { public var cutScene:String; public static var DISPLAY:String = "DisplayCutScene"; public static var HIDE:String = "HideCutScene"; public function CutSceneEvent(_arg1:String, _arg2:String){ super(_arg1, true, true); cutScene = _arg2; } override public function clone():Event{ return (new CutSceneEvent(type, cutScene)); } } }//package game.levelsSection 235//Digit (game.levels.Digit) package game.levels { import flash.events.*; import flash.display.*; import flash.utils.*; import com.markfennell.sound.*; public class Digit extends EventDispatcher { private var m_target:MovieClip; private var m_stickTime:int;// = 40 private var m_id:int; private static var m_digitsArray:Array = []; public function Digit(_arg1:MovieClip, _arg2:int){ m_target = _arg1; m_id = _arg2; m_target.sheen.visible = false; m_target.digit.text = (m_id + 1); m_target.digit.mouseEnabled = false; m_target.gotoAndStop("up"); m_target.addEventListener(MouseEvent.CLICK, handleClick); m_target.addEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_target.addEventListener(MouseEvent.ROLL_OUT, handleRollOut); m_target.buttonMode = true; m_digitsArray.push(this); } private function handleClick(_arg1:MouseEvent):void{ click(); } public function click():void{ m_target.gotoAndStop("down"); GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_dry_fire_02", 1, 1)); dispatchEvent(new DigitEvent(DigitEvent.CLICK, m_id)); setTimeout(reset, m_stickTime); } private function handleRollOut(_arg1:MouseEvent):void{ m_target.sheen.visible = false; } public function reset():void{ m_target.gotoAndStop("up"); } private function handleRollOver(_arg1:MouseEvent):void{ m_target.sheen.visible = true; } public function get id():int{ return (m_id); } public static function keyClick(_arg1:int):void{ var _local2:int; while (_local2 < m_digitsArray.length) { if (_arg1 == m_digitsArray[_local2].id){ m_digitsArray[_local2].click(); return; }; _local2++; }; } public static function reset():void{ var _local1:int; while (_local1 < m_digitsArray.length) { m_digitsArray[_local1] = null; _local1++; }; m_digitsArray = []; } } }//package game.levelsSection 236//DigitEvent (game.levels.DigitEvent) package game.levels { import flash.events.*; public class DigitEvent extends Event { public var id:int; public static var CLICK:String = "DigitClick"; public function DigitEvent(_arg1:String, _arg2:int){ super(_arg1, true, true); id = _arg2; } override public function clone():Event{ return (new DigitEvent(type, id)); } } }//package game.levelsSection 237//EndLevel (game.levels.EndLevel) package game.levels { import flash.events.*; import flash.display.*; import flash.utils.*; import console.*; import pages.*; import events.*; import net.*; import game.*; import game.medals.*; import gs.*; import org.casalib.display.*; import org.casalib.util.*; import assets.*; import com.electrotank.util.*; import com.markfennell.display.*; import com.malee.utils.*; import flash.ui.*; public class EndLevel extends CasaSprite { private var m_ui:MovieClip; private var m_submitScore:SubmitScore; private var m_medalsArray:Array; private var m_level:Level; private var m_stage:Stage; private var m_state:String; private static var m_totalTime:Dictionary; public function EndLevel(_arg1:String, _arg2:int, _arg3:Level){ m_stage = StageReference.getStage(); m_level = _arg3; m_state = _arg1; GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_DISABLED)); switch (m_state){ case GameController.LEVEL_COMPLETED: Console.GoogleAnalytics.trackPageview((("MRD_Escape/game/level/" + String((m_level.id + 1))) + "/complete")); Console.GoogleAnalytics.trackEvent("MRD_Escape", "finishLevel", String((m_level.id + 1)), int((_arg2 / 1000))); m_ui = new LevelEndCompleteUI(); populate(_arg2); m_totalTime[_arg3] = _arg2; m_stage.addEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); m_ui.btnPlay.addEventListener(MouseEvent.CLICK, handleClick); break; case GameController.LEVEL_FAILED: Console.GoogleAnalytics.trackPageview((("MRD_Escape/game/level/" + String((m_level.id + 1))) + "/fail")); m_ui = new LevelEndFailedUI(); m_stage.addEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); m_ui.btnPlay.addEventListener(MouseEvent.CLICK, handleClick); if (MemoryCrypto.getValue("score") == 0){ m_ui.btnPlay.x = 0; }; break; case GameController.GAME_COMPLETED: Console.GoogleAnalytics.trackPageview((("MRD_Escape/game/level/" + String((m_level.id + 1))) + "/complete")); Console.GoogleAnalytics.trackEvent("MRD_Escape", "finishLevel", String((m_level.id + 1)), int((_arg2 / 1000))); GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.WEAPONX, m_level.id, MemoryCrypto.getValue("score"))); GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.BEST, m_level.id, totalTime())); GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.NINJA_SKILLS, m_level.id)); m_ui = new LevelEndGameCompleteUI(); m_totalTime[_arg3] = _arg2; populate(_arg2); GameBroadcaster.dispatchEvent(new Event(ConsoleEvents.GAME_COMPLETE)); }; m_ui.textScore.text = TextUtil.formatScoreComma(MemoryCrypto.getValue("score")); addChild(m_ui); m_ui.x = int((m_stage.stageWidth * 0.5)); m_ui.y = int((m_stage.stageHeight * 0.5)); m_ui.alpha = 0; TweenMax.to(m_ui, 0.3, {delay:0.25, alpha:1}); } private function handleClick(_arg1=null):void{ GameBroadcaster.dispatchEvent(new Event(m_state)); transitionOut(handleClick_COMPLETE); } override public function destroy():void{ m_stage.removeEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); if (m_ui){ if (m_ui.btnPlay){ m_ui.btnPlay.removeEventListener(MouseEvent.CLICK, handleClick); }; if (m_submitScore){ m_submitScore.destroy(); }; transitionOut(destroy_COMPLETE); }; } public function destroy_COMPLETE():void{ removeChild(m_ui); m_ui = null; super.destroy(); MedalDisplay.destroyAll(); } public function handleClick_COMPLETE():void{ if (m_state == GameController.LEVEL_FAILED){ Console.GoogleAnalytics.trackPageview(("MRD_Escape/replay level/" + String((m_level.id + 1)))); }; } private function populate(_arg1:int):void{ var _local5:MedalDisplay; var _local2:int; var _local3 = 10; m_ui.textTime.text = String(TimeKeeper.display(_arg1, ":", ":")); if ((m_level.time - _arg1) > 0){ _local2 = ((m_level.time - _arg1) * Constants.POINTS_TIME); }; MemoryCrypto.incrementValue("score", _local2); _local2 = (LevelController.attempts * Constants.POINTS_ALARM); m_ui.textAlarms.text = String(_local2); MemoryCrypto.incrementValue("score", _local2); _local2 = MemoryCrypto.getValue("bonus"); m_ui.textBonusPoints.text = TextUtil.formatScoreComma(_local2); MemoryCrypto.incrementValue("score", _local2); MemoryCrypto.setValue("bonus", 0); if (m_state == GameController.GAME_COMPLETED){ _local3 = 28; m_ui.textGameTime.text = String(TimeKeeper.display(totalTime(), ":", ":")); }; m_medalsArray = Medal.getMedals(m_level.id); var _local4:int; while (_local4 < m_medalsArray.length) { _local5 = new MedalDisplay(m_medalsArray[_local4]); _local5.x = (10 + (_local4 * 35)); _local5.y = _local3; m_ui.addChild(_local5); _local4++; }; User.getInstance().unlockLevel((m_level.id + 1)); User.getInstance().saveScore(); User.getInstance().saveMedals(MedalController.getMedals()); } private function handleSubmit(_arg1:MouseEvent):void{ m_stage.removeEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); m_submitScore = new SubmitScore(); m_submitScore.transitionIn(); m_submitScore.addEventListener(UIEvent.SUBMIT_SCORE_SUCCESS, onSubmitScoreSuccess); addChild(m_submitScore); } private function totalTime():int{ var _local2:Object; var _local1:int; for each (_local2 in m_totalTime) { _local1 = (_local1 + _local2); }; return (_local1); } private function onSubmitScoreSuccess(_arg1:UIEvent):void{ if (m_ui.btnPlay){ m_ui.btnPlay.x = 0; }; m_stage.addEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); } private function handleKeyboardUp(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.SPACE){ m_stage.removeEventListener(KeyboardEvent.KEY_UP, handleKeyboardUp); handleClick(); }; } private function transitionOut(_arg1:Function):void{ TweenMax.to(m_ui, 0.3, {alpha:0, onComplete:_arg1}); } public static function reset():void{ m_totalTime = new Dictionary(); } } }//package game.levelsSection 238//Level (game.levels.Level) package game.levels { import flash.geom.*; public class Level { public var unlock:String; private var m_levelXML:XML; public var collisionArray:Array; public var mapWidth:int; public var doorArray:Array; public var backgroundBlank:int; public var tileSize:int; public var foregroundBlank:int; public var backgroundArray:Array; public var id:int; public var time:int; public var player:Point; public var mapHeight:int; public var foregroundArray:Array; public var backgroundTileset:String; public var foregroundTileset:String; public var introText:String; public function Level(_arg1:int){ var _local2:int; var _local3:Array; backgroundArray = []; foregroundArray = []; collisionArray = []; doorArray = []; super(); id = _arg1; m_levelXML = EmbeddedData.getLevel(_arg1).xml; introText = String(m_levelXML.description); tileSize = int(m_levelXML.map.@tileSize); _local2 = 0; while (_local2 < m_levelXML.map.background.data.length()) { _local3 = NumberArray(String(m_levelXML.map.background.data[_local2]).split(",")); backgroundArray.push(_local3); _local2++; }; _local2 = 0; while (_local2 < m_levelXML.map.foreground.data.length()) { _local3 = NumberArray(String(m_levelXML.map.foreground.data[_local2]).split(",")); foregroundArray.push(_local3); _local2++; }; _local2 = 0; while (_local2 < m_levelXML.map.collision.data.length()) { _local3 = NumberArray(String(m_levelXML.map.collision.data[_local2]).split(",")); collisionArray.push(_local3); _local2++; }; foregroundTileset = String(m_levelXML.map.foreground.@tileset); backgroundTileset = String(m_levelXML.map.background.@tileset); foregroundBlank = int(m_levelXML.map.foreground.@blank); backgroundBlank = int(m_levelXML.map.background.@blank); unlock = String(m_levelXML.unlock); time = int(m_levelXML.time); player = new Point(int(m_levelXML.start.@x), int(m_levelXML.start.@y)); mapWidth = collisionArray[0].length; mapHeight = collisionArray.length; } public function validHeight(_arg1:int):int{ if (_arg1 < 0){ return (0); }; if (_arg1 >= (mapHeight - 1)){ return ((mapHeight - 1)); }; return (_arg1); } public function getXMLList(_arg1:String):XML{ var _local2:int; while (_local2 < m_levelXML.children().length()) { if (m_levelXML.children()[_local2].name() == _arg1){ return (m_levelXML.children()[_local2]); }; _local2++; }; return (null); } public function validWidth(_arg1:int):int{ if (_arg1 < 0){ return (0); }; if (_arg1 >= (mapWidth - 1)){ return ((mapWidth - 1)); }; return (_arg1); } private function NumberArray(_arg1:Array):Array{ var _local2:Array = []; var _local3:int; while (_local3 < _arg1.length) { _local2.push(int(_arg1[_local3])); _local3++; }; return (_local2); } } }//package game.levelsSection 239//LevelController (game.levels.LevelController) package game.levels { import flash.events.*; import flash.display.*; import flash.utils.*; import console.*; import com.markfennell.sound.*; import game.*; import game.medals.*; import gs.*; import flash.filters.*; import org.casalib.display.*; import flash.geom.*; import game.obstacles.*; import game.interfaces.*; import org.casalib.util.*; import com.electrotank.util.*; import com.markfennell.utils.*; import com.markfennell.display.*; import game.tiles.*; import game.player.*; import com.keyboard.*; import flash.ui.*; public class LevelController extends CasaSprite implements ILevelController { private var m_timeDiff:int;// = 0 private var m_overSleepTime:int;// = 0 private var m_excess:int;// = 0 private var m_filter:BlurFilter; private var m_afterTime:int;// = 0 private var m_useTimer:Boolean;// = false private var m_startTimer:Boolean;// = false private var m_introShown:Boolean;// = false private var m_levelRobots:int; private var m_showIntro:Boolean;// = false private var m_gameTimer:Timer; private var m_stageRectangle:Rectangle; private var m_gameBitmapData:BitmapData; private var m_dx:int; private var m_dy:int; private var m_pause:Boolean;// = false private var m_obstacleController:ObstacleController; private var m_timeKeeper:TimeKeeper; private var m_level:Level; private var m_filterShow:Boolean;// = false private var m_cutSceneController:CutSceneController; private var m_origin:Point; private var m_period:Number;// = 32 private var m_gameBitmap:CasaBitmap; private var m_robots:Boolean;// = false private var m_tileLayerFG:TileEngine; private var m_player:Player; private var m_tileLayerBG:TileEngine; private var m_miniGameController:MiniGameController; private var m_sleepTime:int;// = 0 private var m_beforeTime:int;// = 0 public static var ALARM:String = "LevelAlarm"; public static var attempts:int = 0; public static var COMPLETE:String = "LevelComplete"; public static var PAN_HIDE:String = "PanHide"; public static var PAN_SHOW:String = "PanShow"; public function LevelController(){ m_origin = new Point(0, 0); m_filter = new BlurFilter(5, 5, 1); super(); Key.initialize(StageReference.getStage()); StageReference.getStage().addEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown); StageReference.getStage().addEventListener(KeyboardEvent.KEY_UP, handleKeyUp); StageReference.getStage().focus = this; } private function handlePauseTimeout():void{ GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_ENABLED)); } public function clearListeners():void{ StageReference.getStage().removeEventListener(KeyboardEvent.KEY_DOWN, handleKeyDown); StageReference.getStage().removeEventListener(KeyboardEvent.KEY_UP, handleKeyUp); GameBroadcaster.removeEventListener(RumbleEvent.RUMBLE, handleRumble); GameBroadcaster.removeEventListener(MiniGameEvent.DISPLAY, handleMiniGame); GameBroadcaster.removeEventListener(MiniGameEvent.HIDE, handleMiniGame); GameBroadcaster.removeEventListener(CutSceneEvent.DISPLAY, handleCutScene); GameBroadcaster.removeEventListener(CutSceneEvent.HIDE, handleCutScene); GameBroadcaster.removeEventListener(PAN_SHOW, handleLevelPan); GameBroadcaster.removeEventListener(PAN_HIDE, handleLevelPan); if (m_useTimer){ m_gameTimer.removeEventListener(TimerEvent.TIMER, render); m_gameTimer.stop(); m_gameTimer = null; } else { removeEventListener(Event.ENTER_FRAME, render); }; } private function handleKeyInput():void{ m_player.resetInputs(); if (Key.isDown(Keyboard.LEFT)){ m_player.inputLeft = true; } else { if (Key.isDown(Keyboard.RIGHT)){ m_player.inputRight = true; }; }; } public function get gameBitmapData():BitmapData{ return (m_gameBitmapData); } public function gameOver():void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_SOUNDDOGS_AL_147468", 1, 1, true)); var _local1:DelayedCall = new DelayedCall(doPause, [], 1, false); TweenMax.to(m_gameBitmap, 1, {colorMatrixFilter:{colorize:0xFF0000, amount:1}}); clearListeners(); } public function render(_arg1):void{ if (m_useTimer){ m_beforeTime = getTimer(); m_overSleepTime = ((m_beforeTime - m_afterTime) - m_sleepTime); renderPhysics(); renderDisplay(); m_afterTime = getTimer(); m_timeDiff = (m_afterTime - m_beforeTime); m_sleepTime = ((m_period - m_timeDiff) - m_overSleepTime); if (m_sleepTime <= 0){ m_excess = (m_excess - m_sleepTime); m_sleepTime = 2; }; m_gameTimer.reset(); m_gameTimer.delay = m_sleepTime; m_gameTimer.start(); while (m_excess > m_period) { renderPhysics(); m_excess = (m_excess - m_period); }; _arg1.updateAfterEvent(); } else { renderPhysics(); renderDisplay(); }; } public function doResume():void{ m_pause = false; m_timeKeeper.start(); } private function handleKeyUp(_arg1:KeyboardEvent):void{ if (m_pause){ return; }; if (((MiniGameController.displayed) || (CutSceneController.displayed))){ return; }; if (_arg1.keyCode == Keyboard.DOWN){ m_player.resetCrouch(); }; } private function handleRobotDestroyed(_arg1:MedalEvent):void{ trace("Level Robot Destroyed"); m_levelRobots--; } public function init(_arg1:Level):void{ m_level = _arg1; m_stageRectangle = new Rectangle(0, 0, Constants.STAGE_WIDTH, Constants.STAGE_HEIGHT); m_gameBitmapData = new BitmapData(Constants.STAGE_WIDTH, Constants.STAGE_HEIGHT, false, 0); m_gameBitmap = new CasaBitmap(m_gameBitmapData); addChild(m_gameBitmap); m_obstacleController = new ObstacleController(m_level, m_gameBitmapData); m_player = new Player(m_level, m_gameBitmapData); m_player.placePlayer(); m_tileLayerBG = new TileEngine(m_level.tileSize, m_level.backgroundBlank, m_level.backgroundArray, m_level.backgroundTileset); m_tileLayerFG = new TileEngine(m_level.tileSize, m_level.foregroundBlank, m_level.foregroundArray, m_level.foregroundTileset); if (m_useTimer){ m_gameTimer = new Timer(m_period, 1); m_gameTimer.addEventListener(TimerEvent.TIMER, render); m_gameTimer.start(); } else { addEventListener(Event.ENTER_FRAME, render); }; GameBroadcaster.addEventListener(RumbleEvent.RUMBLE, handleRumble); GameBroadcaster.addEventListener(MiniGameEvent.DISPLAY, handleMiniGame); GameBroadcaster.addEventListener(MiniGameEvent.HIDE, handleMiniGame); GameBroadcaster.addEventListener(CutSceneEvent.DISPLAY, handleCutScene); GameBroadcaster.addEventListener(CutSceneEvent.HIDE, handleCutScene); GameBroadcaster.addEventListener(PAN_SHOW, handleLevelPan); GameBroadcaster.addEventListener(PAN_HIDE, handleLevelPan); m_miniGameController = new MiniGameController(m_level.introText); addChild(m_miniGameController); m_cutSceneController = new CutSceneController(); addChild(m_cutSceneController); m_timeKeeper = new TimeKeeper(); m_showIntro = false; m_introShown = false; MemoryCrypto.setValue("bonus", 0); if (Guard.guards > 0){ m_levelRobots = (Guard.guards - 1); GameBroadcaster.addEventListener(MedalEvent.ROBOT_DESTROYED, handleRobotDestroyed); m_robots = true; } else { m_robots = false; }; } public function renderDisplay():void{ if (((Console.firstPlay) && ((m_level.id == 0)))){ handleCutScene(new CutSceneEvent(CutSceneEvent.DISPLAY, "assets.VideoIntroSequence")); } else { if (!m_introShown){ m_showIntro = true; m_introShown = true; }; }; if (!m_pause){ m_dx = int((-(m_player.sx) + 365)); m_dy = int(((-(m_player.sy) + 236) + 55)); m_gameBitmapData.lock(); m_gameBitmapData.copyPixels(m_tileLayerBG.renderDisplay(-(m_dx), -(m_dy)), m_stageRectangle, m_origin); m_obstacleController.renderDisplay(-(m_dx), -(m_dy)); m_player.renderDisplay(); m_gameBitmapData.copyPixels(m_tileLayerFG.renderDisplay(-(m_dx), -(m_dy)), m_stageRectangle, m_origin); if (m_filterShow){ m_gameBitmapData.applyFilter(m_gameBitmapData, m_stageRectangle, new Point(0, 0), m_filter); }; m_gameBitmapData.unlock(); }; if (m_showIntro){ handleMiniGame(new MiniGameEvent(MiniGameEvent.DISPLAY, MiniGameTypes.MINIGAME_INTRO, null, m_level.id)); m_showIntro = false; }; } private function handleLevelPan(_arg1:PanEvent):void{ if (_arg1.type == PAN_SHOW){ m_player.moveSprite(_arg1.x, _arg1.y, 1, _arg1.callBack); m_filterShow = true; } else { m_filterShow = false; }; } private function handleCutScene(_arg1:CutSceneEvent):void{ switch (_arg1.type){ case CutSceneEvent.DISPLAY: if (!CutSceneController.displayed){ Guard.resetWarnings(); CCTV.pauseTimers(); m_cutSceneController.display(_arg1); doPause(); GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_DISABLED)); }; break; case CutSceneEvent.HIDE: if (!m_introShown){ m_showIntro = true; m_introShown = true; }; if (Console.firstPlay){ Console.firstPlay = false; }; doResume(); CCTV.resumeTimers(); stage.focus = this; if (!Console.firstPlay){ GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_ENABLED)); }; break; }; } private function handleMiniGame(_arg1:MiniGameEvent):void{ switch (_arg1.type){ case MiniGameEvent.DISPLAY: if (!MiniGameController.displayed){ Guard.resetWarnings(); CCTV.pauseTimers(); m_miniGameController.display(_arg1); GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_DISABLED)); doPause(); }; if (m_showIntro){ switch (m_level.id){ case 1: SoundController.getInstance().start_music(2); break; case 2: SoundController.getInstance().start_music(3); break; case 3: SoundController.getInstance().start_music(1); break; case 4: SoundController.getInstance().start_music(2); break; case 5: SoundController.getInstance().start_music(3); break; case 6: SoundController.getInstance().start_music(1); break; case 7: SoundController.getInstance().start_music(2); break; case 8: SoundController.getInstance().start_music(3); break; case 9: SoundController.getInstance().start_music(1); break; default: SoundController.getInstance().start_music(1); break; }; }; break; case MiniGameEvent.HIDE: doResume(); CCTV.resumeTimers(); stage.focus = this; if (!m_startTimer){ m_player.start(); m_startTimer = true; m_timeKeeper.start(); GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.STARTED)); }; GameBroadcaster.dispatchEvent(new ConsoleEvent(ConsoleEvents.PAUSE_ENABLED)); break; }; } public function doPause():void{ m_pause = true; m_timeKeeper.stop(); } public function get time():int{ return (m_timeKeeper.getMili()); } public function get gameBitmap():CasaBitmap{ return (m_gameBitmap); } public function renderPhysics():void{ if (!m_pause){ if (((MiniGameController.displayed) || (CutSceneController.displayed))){ return; }; handleKeyInput(); m_player.renderPhysics(m_obstacleController.obstacles); m_obstacleController.renderPhysics(); }; } public function stopTimer():void{ m_timeKeeper.stop(); } private function handleKeyDown(_arg1:KeyboardEvent):void{ if (m_pause){ return; }; if (((MiniGameController.displayed) || (CutSceneController.displayed))){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ m_player.handleSpace(); } else { if (_arg1.keyCode == Keyboard.UP){ m_player.handleUp(); } else { if (_arg1.keyCode == Keyboard.DOWN){ m_player.handleDown(); }; }; }; } public function checkMedalSecretAgent():void{ if (m_robots){ if (m_levelRobots == (Guard.guards - 1)){ GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.SECRET, m_level.id)); }; }; } private function handleRumble(_arg1:RumbleEvent=null):void{ Earthquake.go(this, _arg1.intensity, _arg1.time); } override public function destroy():void{ trace("Level Controller destroy"); SoundController.getInstance().stopLasers(); clearListeners(); m_player.destroy(); m_gameBitmap.destroy(); m_gameBitmapData.dispose(); m_obstacleController.destroy(); m_tileLayerBG.destroy(); m_tileLayerFG.destroy(); m_tileLayerBG = null; m_tileLayerFG = null; m_miniGameController.destroy(); m_miniGameController = null; m_cutSceneController.destroy(); m_cutSceneController = null; super.destroy(); } } }//package game.levelsSection 240//LevelXML (game.levels.LevelXML) package game.levels { public class LevelXML { private var _url:String; private var _xml:XML; public function LevelXML(_arg1:String, _arg2:XML){ _url = _arg1; _xml = _arg2; } public function get xml():XML{ return (_xml); } public function get url():String{ return (_url); } } }//package game.levelsSection 241//MessageBox (game.levels.MessageBox) package game.levels { import flash.events.*; import flash.display.*; import gs.*; import org.casalib.util.*; import assets.*; import com.markfennell.text.*; public class MessageBox extends Sprite { private var m_delay:Number;// = 0.7 private var m_ui:MessageBoxUI; private var m_textWriter:TextWriter; private var m_stage:Stage; public function MessageBox(_arg1:String){ if (_arg1.length < 1){ return; }; m_stage = StageReference.getStage(); m_ui = new MessageBoxUI(); m_ui.x = int((m_stage.stageWidth * 0.5)); m_ui.y = int((m_stage.stageHeight * 0.5)); m_ui.alpha = 0; m_stage.addChild(m_ui); reveal(); m_textWriter = new TextWriter(m_ui.description, _arg1.toUpperCase(), 20, 15); m_textWriter.addEventListener(TextWriter.COMPLETE, hide); } public function hide_COMPLETE():void{ m_stage.removeChild(m_ui); m_ui = null; } private function reveal():void{ TweenMax.to(m_ui, 0.5, {alpha:1, y:(m_ui.y - 10)}); } private function hide(_arg1:Event=null):void{ m_textWriter.removeEventListener(TextWriter.COMPLETE, hide); TweenMax.to(m_ui, 0.5, {delay:m_delay, alpha:0, onComplete:hide_COMPLETE}); } } }//package game.levelsSection 242//MiniGameController (game.levels.MiniGameController) package game.levels { import flash.events.*; import flash.display.*; import flash.utils.*; import com.markfennell.sound.*; import game.medals.*; import gs.*; import org.casalib.display.*; import game.obstacles.*; import flash.text.*; import org.casalib.util.*; import assets.*; import com.markfennell.display.*; import com.markfennell.text.*; import flash.ui.*; public class MiniGameController extends CasaSprite { private var m_showTime:int;// = 600 private var m_writer:TextWriter; private var m_keys:Array; private var m_static:Static; private var embed_Wires:MiniGameWires; private var m_removeFunction:Function; private var m_keypadArray:Array; private var m_terminal:MovieClip; private var m_textFormat:TextFormat; private var m_correct:String; private var embed_Keypad:MiniGameKeyboard; private var m_setAlarm:Boolean;// = false private var m_setupFunction:Function; private var m_ui:MovieClip; private var m_submitted:Boolean;// = false private var m_stage:Stage; private var m_level:int; private var m_effects:MovieClip; private var m_scanlineContainer:Sprite; private var m_isKeypad:Boolean;// = false private var m_info:String; private var embed_Terminal:MiniGameTerminal; private var m_scanlines:Scanline; private var m_type:String; private var m_keypad:Keypad; private var m_fx:Fx; private var m_introText:String; public static var displayed:Boolean = false; public function MiniGameController(_arg1:String){ m_fx = new Fx(); m_keys = []; m_introText = _arg1; super(); } private function clawStrike(_arg1:MouseEvent):void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_04", 1, 1)); var _local2:Boolean; m_ui.claw.gotoAndPlay("strike"); if (_arg1.target == m_ui.btnGreen){ if (m_correct == MiniGameTypes.GREEN){ _local2 = true; }; m_ui.wires.gotoAndStop("green"); }; if (_arg1.target == m_ui.btnBlue){ if (m_correct == MiniGameTypes.BLUE){ _local2 = true; }; m_ui.wires.gotoAndStop("blue"); }; if (_arg1.target == m_ui.btnRed){ if (m_correct == MiniGameTypes.RED){ _local2 = true; }; m_ui.wires.gotoAndStop("red"); }; if (_local2){ GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.WIRES_DESTROYED, m_level)); m_ui.greenbar.visible = true; setTimeout(success, m_showTime); GameBroadcaster.dispatchEvent(new RumbleEvent(RumbleEvent.RUMBLE, 10, 0.2)); } else { setTimeout(close, m_showTime); m_setAlarm = true; }; GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_wire_slice_01", 1, 1)); } private function removeMiniGame():void{ clearKeyListener(); if (m_ui){ m_fx.zoomIn(m_ui, 0, 0.2, m_ui.x, m_ui.y, m_ui.x, 1000, 10, "easeInExpo", removeMiniGame_COMPLETE); }; } public function success(_arg1:MouseEvent=null):void{ m_keypad.toggle(); removeMiniGame(); } private function handleClear(_arg1:MouseEvent):void{ if (m_submitted){ return; }; GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_dry_fire_02", 1, 1)); m_ui.digits.digitsText.text = ""; } public function setAlarm():void{ GameBroadcaster.dispatchEvent(new Event(LevelController.ALARM)); } public function close(_arg1:MouseEvent=null):void{ removeMiniGame(); } private function removeTerminal():void{ GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.TERMINAL_ACCESSED, m_level)); m_terminal = null; m_writer.destroy(); if (m_ui){ m_ui.btnClose.removeEventListener(MouseEvent.CLICK, close); m_static.destroy(); }; } private function clearKeyListener():void{ StageReference.getStage().removeEventListener(KeyboardEvent.KEY_UP, handleMiniGameKeyUp); } private function handleMiniGameKeyUp(_arg1:KeyboardEvent):void{ trace(("CLICKED " + _arg1.keyCode)); if ((((((_arg1.keyCode == 49)) || ((_arg1.keyCode == 97)))) && (m_isKeypad))){ Digit.keyClick(0); }; if ((((((_arg1.keyCode == 50)) || ((_arg1.keyCode == 98)))) && (m_isKeypad))){ Digit.keyClick(1); }; if ((((((_arg1.keyCode == 51)) || ((_arg1.keyCode == 99)))) && (m_isKeypad))){ Digit.keyClick(2); }; if ((((((_arg1.keyCode == 52)) || ((_arg1.keyCode == 100)))) && (m_isKeypad))){ Digit.keyClick(3); }; if ((((((_arg1.keyCode == 53)) || ((_arg1.keyCode == 101)))) && (m_isKeypad))){ Digit.keyClick(4); }; if ((((((_arg1.keyCode == 54)) || ((_arg1.keyCode == 102)))) && (m_isKeypad))){ Digit.keyClick(5); }; if ((((((_arg1.keyCode == 55)) || ((_arg1.keyCode == 103)))) && (m_isKeypad))){ Digit.keyClick(6); }; if ((((((_arg1.keyCode == 56)) || ((_arg1.keyCode == 104)))) && (m_isKeypad))){ Digit.keyClick(7); }; if ((((((_arg1.keyCode == 57)) || ((_arg1.keyCode == 105)))) && (m_isKeypad))){ Digit.keyClick(8); }; if ((((_arg1.keyCode == Keyboard.ENTER)) && (m_isKeypad))){ handleSubmit(); }; if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.ESCAPE)))){ close(); }; } private function setUpTerminal():void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_console_entry_03", 1, 1)); m_ui.btnClose.addEventListener(MouseEvent.CLICK, close); m_terminal = new MiniGameTerminalScreen(); m_writer = new TextWriter(m_ui.infoText, m_info, 500, 25, false, beepTick); m_static = new Static(m_terminal, 191, 191); m_static.x = -95; m_static.y = -126; m_static.blendMode = BlendMode.ADD; m_static.alpha = 0.25; m_ui.addChildAt(m_static, 1); m_static.glitch(0, 10, 0, 2); } public function removeMiniGame_COMPLETE():void{ trace("removeMiniGame_COMPLETE"); m_removeFunction(); displayed = false; if (m_ui){ m_stage.removeChild(m_ui); m_ui = null; }; if (m_scanlineContainer){ removeChild(m_scanlineContainer); m_scanlineContainer = null; }; GameBroadcaster.dispatchEvent(new MiniGameEvent(MiniGameEvent.HIDE, null, m_keypad, m_level)); if (m_setAlarm){ setAlarm(); }; } private function handleClick(_arg1:DigitEvent):void{ if (m_ui){ if (m_ui.digits.digitsText.text.length < 4){ m_ui.digits.digitsText.text = (m_ui.digits.digitsText.text + String((_arg1.id + 1))); }; m_ui.digits.digitsText.setTextFormat(m_textFormat); }; } private function setUpIntro():void{ m_ui.btnClose.addEventListener(MouseEvent.CLICK, close); m_writer = new TextWriter(m_ui.infoText, m_introText, 500, 25, false, beepTick); m_effects = new MiniGameIntroScreenBackground(); m_static = new Static(m_effects, 360, 264); m_static.x = -180; m_static.y = -126; m_static.blendMode = BlendMode.ADD; m_static.alpha = 0.25; m_ui.addChildAt(m_static, 1); m_static.glitch(0, 20, 0, 5); } public function display(_arg1:MiniGameEvent):void{ var _local2:Number = 0; m_setAlarm = false; displayed = true; m_keypad = _arg1.keypad; m_stage = StageReference.getStage(); m_scanlines = new Scanline(0, 0); m_type = _arg1.miniGame; m_level = _arg1.level; if (_arg1.keypad){ m_correct = _arg1.keypad.correct; }; if (_arg1.keypad){ m_info = _arg1.keypad.info; }; m_setupFunction = new Function(); m_removeFunction = new Function(); switch (m_type){ case MiniGameTypes.MINIGAME_INTRO: m_ui = new MiniGameIntro(); m_setupFunction = setUpIntro; m_removeFunction = removeIntro; _local2 = 0.3; break; case MiniGameTypes.MINIGAME_WIRES: m_ui = new MiniGameWires(); m_setupFunction = setUpWires; m_removeFunction = removeWires; break; case MiniGameTypes.MINIGAME_TERMINAL: m_ui = new MiniGameTerminal(); m_setupFunction = setUpTerminal; m_removeFunction = removeTerminal; break; case MiniGameTypes.MINIGAME_KEYPAD: m_ui = new MiniGameKeyboard(); m_setupFunction = setUpKeypad; m_removeFunction = removeKeypad; break; }; m_setupFunction(); m_scanlineContainer = new Sprite(); addChild(m_scanlineContainer); m_scanlineContainer.alpha = 0; TweenMax.to(m_scanlineContainer, 0.5, {alpha:1}); m_scanlineContainer.graphics.beginBitmapFill(m_scanlines); m_scanlineContainer.graphics.moveTo(0, 0); m_scanlineContainer.graphics.lineTo(m_stage.stageWidth, 0); m_scanlineContainer.graphics.lineTo(m_stage.stageWidth, m_stage.stageHeight); m_scanlineContainer.graphics.lineTo(0, m_stage.stageHeight); m_scanlineContainer.graphics.lineTo(0, 0); m_scanlineContainer.graphics.endFill(); m_scanlineContainer.cacheAsBitmap = true; m_stage.addChild(m_ui); m_fx.zoomIn(m_ui, _local2, 0.3, int((Constants.STAGE_WIDTH * 0.5)), 1000, int((Constants.STAGE_WIDTH * 0.5)), int((Constants.STAGE_HEIGHT * 0.5)), 10, "easeOutExpo", setupKeyListener); } private function removeIntro():void{ if (m_ui){ m_ui.btnClose.removeEventListener(MouseEvent.CLICK, close); }; if (m_static){ m_static.destroy(); }; m_effects = null; m_writer.destroy(); } private function setUpKeypad():void{ var _local2:Digit; m_isKeypad = true; Digit.reset(); m_submitted = false; m_textFormat = new TextFormat(); m_textFormat.letterSpacing = 25; m_ui.btnClose.addEventListener(MouseEvent.CLICK, close); m_ui.digits.digitsText.text = ""; m_keypadArray = [m_ui.key1, m_ui.key2, m_ui.key3, m_ui.key4, m_ui.key5, m_ui.key6, m_ui.key7, m_ui.key8, m_ui.key9]; var _local1:int; while (_local1 < m_keypadArray.length) { _local2 = new Digit(m_keypadArray[_local1], _local1); _local2.addEventListener(DigitEvent.CLICK, handleClick); _local1++; }; m_ui.btnClear.addEventListener(MouseEvent.CLICK, handleClear); m_ui.btnSubmit.addEventListener(MouseEvent.CLICK, handleSubmit); } private function removeWires():void{ if (m_ui){ m_ui.btnGreen.removeEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnBlue.removeEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnRed.removeEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnClose.removeEventListener(MouseEvent.CLICK, close); }; } private function handleSubmit(_arg1:MouseEvent=null):void{ if (m_submitted){ return; }; m_submitted = true; GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_dry_fire_02", 1, 1)); if (m_ui.digits.digitsText.text == m_correct){ GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.KEYPAD_ACCESSED, m_level)); m_ui.status.gotoAndStop("green"); setTimeout(success, m_showTime); } else { setTimeout(close, m_showTime); m_setAlarm = true; }; } private function setUpWires():void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_console_entry_03", 1, 1)); m_ui.greenbar.visible = false; m_ui.wires.gotoAndStop("all"); m_ui.claw.gotoAndStop(1); m_ui.btnGreen.addEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnBlue.addEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnRed.addEventListener(MouseEvent.CLICK, clawStrike); m_ui.btnClose.addEventListener(MouseEvent.CLICK, close); } public function beepTick():void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_cursor", 0.5, 1)); } private function setupKeyListener():void{ clearKeyListener(); StageReference.getStage().addEventListener(KeyboardEvent.KEY_UP, handleMiniGameKeyUp); } override public function destroy():void{ trace("MiniGameController.destroy()"); removeMiniGame(); super.destroy(); } private function removeKeypad():void{ var _local1:int; m_isKeypad = false; if (m_ui){ m_ui.btnClose.removeEventListener(MouseEvent.CLICK, close); m_ui.btnClear.removeEventListener(MouseEvent.CLICK, handleClear); m_ui.btnSubmit.removeEventListener(MouseEvent.CLICK, handleSubmit); _local1 = 0; while (_local1 < m_keypadArray.length) { m_keypadArray[_local1].gotoAndStop("down"); m_keypadArray[_local1].removeEventListener(MouseEvent.CLICK, handleClick); _local1++; }; }; } public static function reset():void{ } } }//package game.levelsSection 243//MiniGameEvent (game.levels.MiniGameEvent) package game.levels { import flash.events.*; import game.obstacles.*; public class MiniGameEvent extends Event { public var level:int; public var miniGame:String; public var keypad:Keypad; public static var DISPLAY:String = "DisplayMiniGame"; public static var HIDE:String = "HideMiniGame"; public function MiniGameEvent(_arg1:String, _arg2:String, _arg3:Keypad, _arg4:int){ super(_arg1, true, true); miniGame = _arg2; keypad = _arg3; level = _arg4; } override public function clone():Event{ return (new MiniGameEvent(type, miniGame, keypad, level)); } } }//package game.levelsSection 244//MiniGameTypes (game.levels.MiniGameTypes) package game.levels { public class MiniGameTypes { public static var GREEN:String = "green"; public static var MINIGAME_KEYPAD:String = "MiniGameKeypad"; public static var RED:String = "red"; public static var MINIGAME_TERMINAL:String = "MiniGameTerminal"; public static var MINIGAME_INTRO:String = "MiniGameIntro"; public static var MINIGAME_WIRES:String = "MiniGameWires"; public static var BLUE:String = "blue"; } }//package game.levelsSection 245//PanEvent (game.levels.PanEvent) package game.levels { import flash.events.*; public class PanEvent extends Event { public var callBack:Function; public var x:Number; public var y:Number; public function PanEvent(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Function){ super(_arg1, true, true); x = _arg2; y = _arg3; callBack = _arg4; } override public function clone():Event{ return (new PanEvent(type, x, y, callBack)); } } }//package game.levelsSection 246//RumbleEvent (game.levels.RumbleEvent) package game.levels { import flash.events.*; public class RumbleEvent extends Event { public var intensity:Number; public var time:Number; public static var RUMBLE:String = "Rumble"; public function RumbleEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(_arg1, true, true); intensity = _arg2; time = _arg3; } override public function clone():Event{ return (new RumbleEvent(type, intensity, time)); } } }//package game.levelsSection 247//Medal (game.medals.Medal) package game.medals { public class Medal { public var unlockLevel:int;// = 0 public var unlocked:Boolean;// = false public var saved:Boolean;// = false public var title:String; public var id:int; public var description:String; public static var medalArray:Array = []; public function Medal(_arg1:int, _arg2:String, _arg3:String){ id = _arg1; title = _arg2; description = _arg3; medalArray.push(this); } public function get frame():int{ return ((id + 1)); } public static function getMedals(_arg1:int):Array{ var _local2:Array = []; var _local3:int; while (_local3 < medalArray.length) { if (((((medalArray[_local3].unlocked) && (!(medalArray[_local3].saved)))) && ((medalArray[_local3].unlockLevel == _arg1)))){ _local2.push(medalArray[_local3]); }; _local3++; }; return (_local2); } } }//package game.medalsSection 248//MedalController (game.medals.MedalController) package game.medals { import console.*; public class MedalController { private var m_medal:Medal; private var m_terminalsAccessed:int;// = 0 private var m_robotsTotal:int;// = 0 private var m_medalsUnlocked:Array; private var m_keypadsSolved:int;// = 0 private var m_wiresDestroyed:int;// = 0 private var m_robotsDestroyed:int;// = 0 public static var SECRET_AGENT:int = 8; public static var BEST_THERE_IS:int = 1; public static var SABOTUER:int = 5; public static var SCRAP_YARD:int = 2; public static var MASTERMIND:int = 3; public static var DESTROYER:int = 6; public static var GENIUS:int = 4; public static var WEAPONX:int = 0; public static var INTEL:int = 7; public static var NINJA_SKILLS:int = 9; public function MedalController(){ m_medalsUnlocked = []; super(); } public function clearListeners():void{ GameBroadcaster.removeEventListener(MedalEvent.WIRES_DESTROYED, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.ROBOT_DESTROYED, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.KEYPAD_ACCESSED, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.TERMINAL_ACCESSED, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.NINJA_SKILLS, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.WEAPONX, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.BEST, handleEvents); GameBroadcaster.removeEventListener(MedalEvent.SECRET, handleEvents); } private function handleEvents(_arg1:MedalEvent):void{ trace((" ---> Medal Event Called : " + _arg1.type)); switch (_arg1.type){ case MedalEvent.WIRES_DESTROYED: m_wiresDestroyed++; if (m_wiresDestroyed == 5){ unlockMedal(SABOTUER, _arg1.level); }; if (m_wiresDestroyed == 10){ unlockMedal(DESTROYER, _arg1.level); }; break; case MedalEvent.KEYPAD_ACCESSED: m_keypadsSolved++; if (m_keypadsSolved == 5){ unlockMedal(MASTERMIND, _arg1.level); }; if (m_keypadsSolved == 10){ unlockMedal(GENIUS, _arg1.level); }; break; case MedalEvent.ROBOT_DESTROYED: m_robotsDestroyed++; if (m_robotsDestroyed == 20){ unlockMedal(SCRAP_YARD, _arg1.level); }; break; case MedalEvent.TERMINAL_ACCESSED: m_terminalsAccessed++; if (m_terminalsAccessed == 20){ unlockMedal(INTEL, _arg1.level); }; break; case MedalEvent.NINJA_SKILLS: if (m_robotsDestroyed == 0){ unlockMedal(NINJA_SKILLS, _arg1.level); }; break; case MedalEvent.WEAPONX: if (_arg1.data >= 1000000){ unlockMedal(WEAPONX, _arg1.level); }; break; case MedalEvent.BEST: if (_arg1.data < 60000){ unlockMedal(BEST_THERE_IS, _arg1.level); }; break; case MedalEvent.SECRET: unlockMedal(SECRET_AGENT, _arg1.level); break; }; } public function unlockMedal(_arg1:int, _arg2:int):void{ if ((((_arg1 > 0)) && ((_arg1 < Medal.medalArray.length)))){ Console.GoogleAnalytics.trackEvent("MRD_Escape", "achievements", Medal.medalArray[_arg1].title); Medal.medalArray[_arg1].unlocked = true; Medal.medalArray[_arg1].unlockLevel = _arg2; }; } public function initMedals(_arg1:Array):void{ m_medal = new Medal(0, "Weapon X", "Scored 1,000,000+"); m_medal = new Medal(1, "The Best", "Completed under X min"); m_medal = new Medal(2, "Scrapyard", "20 robots destroyed"); m_medal = new Medal(3, "Mastermind", "5 Keypads Solved"); m_medal = new Medal(4, "Genius", "10 Keypads Solved"); m_medal = new Medal(5, "Saboteur", "5 wire panels destroyed"); m_medal = new Medal(6, "Destroyer", "10 wire panels"); m_medal = new Medal(7, "Intel", "Accessed 20 Terminals"); m_medal = new Medal(8, "Secret Agent", "Level Robots unharmed"); m_medal = new Medal(9, "Ninja Skills", "All Robots unharmed"); var _local2:int; while (_local2 < _arg1.length) { if (((_arg1[_local2]) && ((_local2 < Medal.medalArray.length)))){ Medal.medalArray[_local2].unlocked = true; Medal.medalArray[_local2].saved = true; }; _local2++; }; _local2 = 0; while (_local2 < Medal.medalArray.length) { trace(("--> " + Medal.medalArray[_local2].title), Medal.medalArray[_local2].unlocked); _local2++; }; } public function setupListeners():void{ GameBroadcaster.addEventListener(MedalEvent.WIRES_DESTROYED, handleEvents); GameBroadcaster.addEventListener(MedalEvent.ROBOT_DESTROYED, handleEvents); GameBroadcaster.addEventListener(MedalEvent.KEYPAD_ACCESSED, handleEvents); GameBroadcaster.addEventListener(MedalEvent.TERMINAL_ACCESSED, handleEvents); GameBroadcaster.addEventListener(MedalEvent.NINJA_SKILLS, handleEvents); GameBroadcaster.addEventListener(MedalEvent.WEAPONX, handleEvents); GameBroadcaster.addEventListener(MedalEvent.BEST, handleEvents); GameBroadcaster.addEventListener(MedalEvent.SECRET, handleEvents); } public static function getMedals():Array{ var _local1:Array = []; var _local2:int; while (_local2 < Medal.medalArray.length) { if (Medal.medalArray[_local2].unlocked){ _local1.push(true); } else { _local1.push(false); }; _local2++; }; trace("getMedals Array", _local1); return (_local1); } } }//package game.medalsSection 249//MedalDisplay (game.medals.MedalDisplay) package game.medals { import flash.events.*; import flash.display.*; import gs.*; import org.casalib.display.*; import assets.*; public class MedalDisplay extends CasaSprite { public var m_medal:Medal; public var m_ui:MovieClip; public static var medalArray:Array = []; public function MedalDisplay(_arg1:Medal){ m_medal = _arg1; m_ui = new MedalSmall(); m_ui.gotoAndStop(m_medal.frame); m_ui.toolTip.titleText.text = m_medal.title; m_ui.toolTip.descriptionText.text = m_medal.description; addChild(m_ui); m_ui.toolTip.alpha = 0; m_ui.hit.addEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_ui.hit.addEventListener(MouseEvent.ROLL_OUT, handleRollOut); medalArray.push(this); } private function handleRollOut(_arg1:MouseEvent):void{ TweenMax.to(m_ui.toolTip, 0.5, {alpha:0}); } override public function destroy():void{ m_ui.hit.removeEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_ui.hit.removeEventListener(MouseEvent.ROLL_OUT, handleRollOut); removeChild(m_ui); m_ui = null; super.destroy(); } private function handleRollOver(_arg1:MouseEvent):void{ TweenMax.to(m_ui.toolTip, 0.5, {alpha:1}); } public static function destroyAll():void{ var _local1:int; while (_local1 < medalArray.length) { medalArray[_local1].destroy(); _local1++; }; medalArray = []; } } }//package game.medalsSection 250//MedalEvent (game.medals.MedalEvent) package game.medals { import flash.events.*; public class MedalEvent extends Event { public var data; public var level:int; public static var ROBOT_DESTROYED:String = "Medal Robot Destroyed"; public static var TERMINAL_ACCESSED:String = "Medal Terminal Access"; public static var WIRES_DESTROYED:String = "Medal WIRres Destroyed"; public static var BEST:String = "Best Tehre iss"; public static var KEYPAD_ACCESSED:String = "Medal Keypad Access"; public static var LEVEL_START:String = "Medal Level Start"; public static var NINJA_SKILLS:String = "Ninja Skills"; public static var LEVEL_FINISH:String = "Medal Level Finish"; public static var WEAPONX:String = "Weaponsx"; public static var SECRET:String = "SecretAgent"; public function MedalEvent(_arg1:String, _arg2:int, _arg3=null){ super(_arg1, true, true); level = _arg2; data = _arg3; } override public function clone():Event{ return (new MedalEvent(type, level, data)); } } }//package game.medalsSection 251//MedalPageDisplay (game.medals.MedalPageDisplay) package game.medals { import flash.events.*; import flash.display.*; import gs.*; import org.casalib.display.*; import org.casalib.util.*; public class MedalPageDisplay extends CasaSprite { public var m_base:MovieClip; public var m_medal:Medal; private var m_stage:Stage; public var m_ui:MovieClip; public static var medalArray:Array = []; public function MedalPageDisplay(_arg1:Medal, _arg2:MovieClip, _arg3:MovieClip, _arg4:MovieClip){ m_stage = StageReference.getStage(); m_medal = _arg1; m_ui = _arg2; m_base = _arg3; m_ui.mouseEnabled = false; m_ui.mouseChildren = false; m_stage.addChildAt(m_ui, 1); m_ui.x = (m_ui.x + 365); m_ui.y = (m_ui.y + 232); m_ui.toolTip.titleText.text = m_medal.title; m_ui.toolTip.descriptionText.text = m_medal.description; m_ui.toolTip.alpha = 0; if (!m_medal.unlocked){ m_ui.scratch.visible = false; TweenMax.to(m_base, 0.05, {colorMatrixFilter:{colorize:0xCCCCCC, amount:1}, alpha:0.5}); } else { m_ui.scratch.blendMode = BlendMode.MULTIPLY; m_ui.scratch.visible = true; TweenMax.to(m_base, 0.05, {colorMatrixFilter:{}, alpha:1}); }; m_stage.addChildAt(m_base, 1); m_base.x = (m_base.x + 365); m_base.y = (m_base.y + 232); m_base.addEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_base.addEventListener(MouseEvent.ROLL_OUT, handleRollOut); medalArray.push(this); } private function handleRollOut(_arg1:MouseEvent):void{ TweenMax.to(m_ui.toolTip, 0.5, {alpha:0}); } private function handleRollOver(_arg1:MouseEvent):void{ TweenMax.to(m_ui.toolTip, 0.5, {alpha:1}); } override public function destroy():void{ m_stage.removeChild(m_base); m_stage.removeChild(m_ui); m_base.removeEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_base.removeEventListener(MouseEvent.ROLL_OUT, handleRollOut); super.destroy(); } public static function destroyAll():void{ var _local1:int; while (_local1 < medalArray.length) { medalArray[_local1].destroy(); _local1++; }; medalArray = []; } } }//package game.medalsSection 252//CCTV (game.obstacles.CCTV) package game.obstacles { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import com.markfennell.geom.*; import org.casalib.util.*; public class CCTV extends Obstacle { private var m_fov_v2:Point; private var m_fov_v0:Point; private var m_fov_v1:Point; private var m_cameraTimer:Timer; private var m_frameOff:int; private var m_timedSensor:Boolean;// = false private var m_frameOnEnd:int; private var m_cameraTime:int; private var m_frameOnStart:int; private var m_faces:String; private var m_fovPolygon:Polygon; public static var STATE_CAMERA_OFF:String = "CameraOff"; private static var camerasDictionary:Dictionary; private static var LEFT:String = "left"; public static var STATE_CAMERA_ON:String = "CameraOn"; private static var RIGHT:String = "right"; public function CCTV(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:Boolean, _arg7:int, _arg8:int, _arg9:String){ m_fov_v0 = new Point(35, 25); m_fov_v1 = new Point(60, 58); m_fov_v2 = new Point(160, 58); super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.CAMERA); if (camerasDictionary == null){ camerasDictionary = new Dictionary(true); }; m_isOn = _arg6; m_id = _arg5; m_cameraTime = _arg8; m_faces = _arg9; m_range = _arg7; m_offsetY = 5; if (m_faces == LEFT){ m_offsetX = 50; } else { m_offsetX = -50; m_fov_v0.x = -(m_fov_v0.x); m_fov_v1.x = -(m_fov_v1.x); m_fov_v2.x = -(m_fov_v2.x); }; m_frameOnStart = (FrameUtil.getFrameNumberForLabel(_arg2, "onStart") - 1); m_frameOnEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "onEnd") - 1); m_frameOff = (FrameUtil.getFrameNumberForLabel(_arg2, "off") - 1); if (m_isOn){ setAnimationState(STATE_CAMERA_ON); } else { setAnimationState(STATE_CAMERA_OFF); }; if (_arg8 > 0){ setTimedSensor(); }; camerasDictionary[m_id] = this; _arg2 = null; } override public function renderDisplay(_arg1:int, _arg2:int):void{ super.renderDisplay(_arg1, _arg2); var _local3:Point = new Point(((sx - _arg1) - m_fov_v0.x), ((sy - _arg2) - m_fov_v0.y)); var _local4:Point = new Point(((sx - _arg1) + m_fov_v1.x), ((sy - _arg2) + m_fov_v1.y)); var _local5:Point = new Point(((sx - _arg1) + m_fov_v2.x), ((sy - _arg2) + m_fov_v2.y)); m_fovPolygon = new Polygon(new Line(_local3, _local4), new Line(_local4, _local5), new Line(_local5, _local3)); if (Constants.BOUNDS){ m_fovPolygon.draw(m_gameBitmapData, 0xFF0000); }; } public function onLeft():Boolean{ return ((m_faces == LEFT)); } private function setTimedSensor():void{ m_timedSensor = true; m_cameraTimer = new Timer(m_cameraTime); m_cameraTimer.addEventListener(TimerEvent.TIMER, toggle); m_cameraTimer.start(); } public function doResume():void{ if (m_timedSensor){ if (m_cameraTimer){ m_cameraTimer.start(); }; }; } public function toggle(_arg1:TimerEvent=null):void{ if (m_isOn){ m_isOn = false; setAnimationState(STATE_CAMERA_OFF); } else { m_isOn = true; setAnimationState(STATE_CAMERA_ON); }; } public function get fov():Polygon{ return (m_fovPolygon); } override public function setOff():void{ trace("CCTV OFF"); m_isOn = false; setAnimationState(STATE_CAMERA_OFF); if (m_timedSensor){ m_cameraTimer.stop(); m_cameraTimer = null; }; } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_CAMERA_ON: m_startFrame = m_frameOnStart; m_endFrame = m_frameOnEnd; m_loopFrames = true; break; case STATE_CAMERA_OFF: m_startFrame = m_frameOff; m_endFrame = m_frameOff; m_loopFrames = false; break; }; m_currentFrame = m_startFrame; } override public function setOn():void{ m_isOn = true; setAnimationState(STATE_CAMERA_ON); if (m_timedSensor){ setTimedSensor(); }; } public function doPause():void{ if (m_timedSensor){ if (m_cameraTimer){ m_cameraTimer.stop(); }; }; } public static function getItem(_arg1:int):CCTV{ return (camerasDictionary[_arg1]); } public static function reset():void{ camerasDictionary = null; } public static function pauseTimers():void{ var _local1:CCTV; for each (_local1 in camerasDictionary) { _local1.doPause(); }; } public static function resumeTimers():void{ var _local1:CCTV; for each (_local1 in camerasDictionary) { _local1.doResume(); }; } } }//package game.obstaclesSection 253//Door (game.obstacles.Door) package game.obstacles { import flash.display.*; import flash.utils.*; import com.markfennell.sound.*; import org.casalib.util.*; public class Door extends Obstacle { private var m_frameClose:int; private var m_frameOpen:int; private var m_isLocked:Boolean; private var m_goto:int; private var m_frameOpenEnd:int; private var m_frameOpenStart:int; public static var STATE_DOOR_CLOSED:String = "DoorClosed"; public static var STATE_DOOR_OPEN:String = "DoorOpen"; public static var STATE_DOOR_OPENING:String = "DoorOpening"; private static var doorsDictionary:Dictionary; public static var EXIT:int = -1; public function Door(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:Boolean, _arg8:int){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.DOOR); if (doorsDictionary == null){ doorsDictionary = new Dictionary(true); }; m_id = _arg5; m_goto = _arg6; m_isLocked = _arg7; m_range = _arg8; m_frameOpen = (FrameUtil.getFrameNumberForLabel(_arg2, "open") - 1); m_frameOpenStart = (FrameUtil.getFrameNumberForLabel(_arg2, "openStart") - 1); m_frameOpenEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "openEnd") - 1); m_frameClose = (FrameUtil.getFrameNumberForLabel(_arg2, "close") - 1); if (m_isLocked){ setAnimationState(STATE_DOOR_CLOSED); } else { setAnimationState(STATE_DOOR_OPEN); }; doorsDictionary[m_id] = this; _arg2 = null; } public function get goto():int{ return (m_goto); } override public function setOn():void{ if (m_isLocked == false){ m_isLocked = true; if (getItem(m_goto).goto == id){ getItem(m_goto).setOn(); }; setAnimationState(STATE_DOOR_CLOSED); }; } override public function setOff():void{ if (m_isLocked){ m_isLocked = false; if (m_goto > 0){ if (getItem(m_goto).goto == id){ getItem(m_goto).setOff(); }; }; setAnimationState(STATE_DOOR_OPEN); }; } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_DOOR_OPEN: m_startFrame = m_frameOpen; m_endFrame = m_frameOpen; m_loopFrames = false; break; case STATE_DOOR_CLOSED: m_startFrame = m_frameClose; m_endFrame = m_frameClose; m_loopFrames = false; break; case STATE_DOOR_OPENING: m_startFrame = m_frameOpenStart; m_endFrame = m_frameOpenEnd; m_loopFrames = false; m_callBack = shut; break; }; m_currentFrame = m_startFrame; } public function shut():void{ if (locked){ setAnimationState(STATE_DOOR_CLOSED); } else { setAnimationState(STATE_DOOR_OPEN); }; } public function open():void{ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_turbolift_doorclose_01", 1, 1)); setAnimationState(STATE_DOOR_OPENING); } public function get locked():Boolean{ return (m_isLocked); } public static function getItem(_arg1:int):Door{ return (doorsDictionary[_arg1]); } public static function reset():void{ doorsDictionary = null; } } }//package game.obstaclesSection 254//Guard (game.obstacles.Guard) package game.obstacles { import flash.events.*; import flash.display.*; import flash.utils.*; import com.markfennell.sound.*; import game.levels.*; import org.casalib.util.*; import game.tiles.*; public class Guard extends Obstacle { private var HUMAN:String;// = "human" private var m_moveRange:int; private var m_frameWarningEnd:int; private var m_guardType:String; private var m_moveAngle:Number;// = 0 private var m_frameExplodeEnd:int; private var m_warningTimeout:int; private var m_frameExplodeStart:int; private var m_warningTime:int;// = 2000 private var m_isDead:Boolean;// = false private var m_frameWalkStart:int; private var m_isWarning:Boolean;// = false private var ROBOT:String;// = "robot" private var m_maxRange:int;// = 300 private var m_frameWalkEnd:int; private var m_baseX:int; private var m_baseY:int; private var m_frameWarningStart:int; private var m_moveRate:Number; public static var STATE_EXPLODE:String = "guardExplode"; public static var STATE_WALK:String = "guardWalk"; private static var guardsArray:Array = []; public static var STATE_WARNING:String = "guardWarning"; public function Guard(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:Number, _arg9:String, _arg10:int){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.GUARD); m_id = _arg5; m_range = _arg6; m_moveRate = _arg8; m_baseX = sx; m_baseY = sy; m_moveRange = _arg7; m_guardType = _arg9; m_points = _arg10; if (m_guardType == HUMAN){ m_offsetY = 0; } else { m_offsetY = 3; }; m_frameWalkStart = (FrameUtil.getFrameNumberForLabel(_arg2, "walkStart") - 1); m_frameWalkEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "walkEnd") - 1); m_frameWarningStart = (FrameUtil.getFrameNumberForLabel(_arg2, "huhStart") - 1); m_frameWarningEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "huhEnd") - 1); m_frameExplodeStart = (FrameUtil.getFrameNumberForLabel(_arg2, "explodeStart") - 1); m_frameExplodeEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "explodeEnd") - 1); setAnimationState(STATE_WALK); guardsArray.push(this); _arg2 = null; } public function clearWarning():void{ if (((!(m_isDead)) && (m_isWarning))){ clearTimeout(m_warningTimeout); setAnimationState(STATE_WALK); m_isWarning = false; }; } private function setAlarm():void{ GameBroadcaster.dispatchEvent(new Event(LevelController.ALARM)); } public function checkFOV(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:Array):void{ var _local6:int; if (Math.abs((_arg1 - sx)) > m_maxRange){ return; }; if ((_arg1 - sx) < 0){ _local6 = _arg3; while (_local6 <= tileX) { if (_arg5[tileY][_local6] == TileTypes.WALL_SOLID){ return; }; if (_arg5[tileY][_local6] == TileTypes.WALL_LEFT){ return; }; if (_arg5[tileY][_local6] == TileTypes.WALL_RIGHT){ return; }; _local6++; }; if (((((!(m_flip)) && (!(m_isWarning)))) && (!(m_isDead)))){ setWarning(); }; if (((((m_flip) && (m_isWarning))) && (!(m_isDead)))){ clearWarning(); }; } else { _local6 = tileX; while (_local6 <= _arg3) { if (_arg5[tileY][_local6] == TileTypes.WALL_SOLID){ return; }; if (_arg5[tileY][_local6] == TileTypes.WALL_LEFT){ return; }; if (_arg5[tileY][_local6] == TileTypes.WALL_RIGHT){ return; }; _local6++; }; if (((((m_flip) && (!(m_isWarning)))) && (!(m_isDead)))){ setWarning(); }; if (((((!(m_flip)) && (m_isWarning))) && (!(m_isDead)))){ clearWarning(); }; }; } public function isAlive():Boolean{ return (!(m_isDead)); } override public function renderDisplay(_arg1:int, _arg2:int):void{ if (((!(m_isDead)) && (!(m_isWarning)))){ sx = (m_baseX + int((Math.sin(m_moveAngle) * m_moveRange))); m_moveAngle = (m_moveAngle + m_moveRate); m_moveAngle = (m_moveAngle % (Math.PI * 2)); if ((((m_moveAngle > (Math.PI * 0.5))) && ((m_moveAngle < (Math.PI * 1.5))))){ m_flip = false; } else { m_flip = true; }; }; super.renderDisplay(_arg1, _arg2); } public function canKill():Boolean{ return ((m_guardType == ROBOT)); } public function setWarning():void{ if (((!(m_isDead)) && (!(m_isWarning)))){ m_isWarning = true; m_warningTimeout = setTimeout(setAlarm, m_warningTime); setAnimationState(STATE_WARNING); }; } private function setDead():void{ m_isDead = true; } public function explode():void{ GameBroadcaster.dispatchEvent(new RumbleEvent(RumbleEvent.RUMBLE, 10, 0.25)); GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_charge_kill_stab_01", 1, 1)); clearWarning(); setAnimationState(STATE_EXPLODE); } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_WALK: m_startFrame = m_frameWalkStart; m_endFrame = m_frameWalkEnd; m_loopFrames = true; break; case STATE_EXPLODE: m_startFrame = m_frameExplodeStart; m_endFrame = m_frameExplodeEnd; m_loopFrames = false; setDead(); break; case STATE_WARNING: m_startFrame = m_frameWarningStart; m_endFrame = m_frameWarningEnd; m_loopFrames = true; break; }; m_currentFrame = m_startFrame; } override public function destroy():void{ clearTimeout(m_warningTimeout); super.destroy(); } public static function get guards():int{ return (guardsArray.length); } public static function resetWarnings():void{ var _local1:int; while (_local1 < guardsArray.length) { guardsArray[_local1].clearWarning(); _local1++; }; } public static function reset():void{ var _local1:int; while (_local1 < guardsArray.length) { guardsArray[_local1].destroy(); _local1++; }; guardsArray = []; } } }//package game.obstaclesSection 255//Keypad (game.obstacles.Keypad) package game.obstacles { import flash.display.*; import game.levels.*; import org.casalib.util.*; public class Keypad extends Obstacle { private var m_info:String; private var m_used:Boolean;// = false private var m_frameOff:int; private var m_correct:String; private var m_frameOn:int; private var m_isTerminal:Boolean;// = false private var m_frameOnEnd:int; private var m_frameOnStart:int; private var m_canToggle:Boolean; private var m_message:String; private var m_miniGame:String; private var m_targetType:String; private var m_targetID:int; public static var STATE_KEYPAD_OFF:String = "KeypadOff"; public static var STATE_TERMINAL:String = "Terminal"; public static var STATE_KEYPAD_ON:String = "KeypadOn"; public function Keypad(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:Boolean, _arg8:int, _arg9:String, _arg10:String, _arg11:String, _arg12:Boolean=false, _arg13:int=0, _arg14:String=""){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.KEYPAD); m_isOn = _arg7; m_id = _arg5; m_targetID = _arg6; m_range = _arg8; m_targetType = _arg9; m_miniGame = _arg10; m_canToggle = _arg12; m_correct = _arg11; m_points = _arg13; m_message = _arg14; m_frameOn = (FrameUtil.getFrameNumberForLabel(_arg2, "on") - 1); m_frameOff = (FrameUtil.getFrameNumberForLabel(_arg2, "off") - 1); if (String(m_targetType) == "null"){ m_info = m_message; m_offsetY = -10; setAnimationState(STATE_TERMINAL); } else { m_offsetY = -30; if (m_isOn){ setAnimationState(STATE_KEYPAD_ON); } else { setAnimationState(STATE_KEYPAD_OFF); }; }; _arg2 = null; } public function get used():Boolean{ return (m_used); } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_KEYPAD_ON: m_startFrame = m_frameOn; m_endFrame = m_frameOn; m_loopFrames = false; break; case STATE_KEYPAD_OFF: m_startFrame = m_frameOff; m_endFrame = m_frameOff; m_loopFrames = false; break; case STATE_TERMINAL: m_startFrame = m_frameOn; m_endFrame = m_frameOff; m_loopFrames = true; break; }; m_currentFrame = m_startFrame; } public function toggle():void{ var _local1:MessageBox; if (!m_canToggle){ if (m_used){ return; }; m_used = true; }; if (m_isOn){ setAnimationState(STATE_KEYPAD_OFF); m_isOn = false; } else { trace(m_message); _local1 = new MessageBox(m_message); m_isOn = true; setAnimationState(STATE_KEYPAD_ON); }; GameBroadcaster.dispatchEvent(new SwitchEvent(SwitchEvent.FLICKED, m_targetType, m_targetID, m_isOn)); } public function get miniGame():String{ return (m_miniGame); } public function get info():String{ return (m_info); } public function get correct():String{ return (m_correct); } } }//package game.obstaclesSection 256//Laser (game.obstacles.Laser) package game.obstacles { import flash.events.*; import flash.display.*; import flash.utils.*; import game.*; import org.casalib.util.*; public class Laser extends Obstacle { private var m_movingLaser:Boolean;// = false private var m_frameOff:int; private var m_baseX:int; private var m_moveRange:int; private var m_laserTimer:Timer; private var m_baseY:int; private var m_frameOnEnd:int; private var m_moveRate:Number; private var m_laserTime:int; private var m_frameOnStart:int; private var m_timedLaser:Boolean;// = false private var m_moveAngle:Number;// = 0 public static var STATE_LASER_ON:String = "DoorClosed"; public static var STATE_LASER_OFF:String = "DoorOpen"; public static var LASER_ON:String = "LaserStart"; public static var LASER_OFF:String = "LaserFinish"; private static var lasersDictionary:Dictionary; public function Laser(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:Boolean, _arg7:int, _arg8:int, _arg9:int, _arg10:Number){ super(_arg1, _arg2, _arg2.width, 101, _arg3, _arg4, ObstacleTypes.LASER); if (lasersDictionary == null){ SoundController.getInstance().startLasers(); lasersDictionary = new Dictionary(true); }; m_offsetY = 0; m_isOn = _arg6; m_id = _arg5; m_range = _arg7; m_laserTime = _arg8; m_moveRate = _arg10; m_frameOnStart = (FrameUtil.getFrameNumberForLabel(_arg2, "onStart") - 1); m_frameOnEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "onEnd") - 1); m_frameOff = (FrameUtil.getFrameNumberForLabel(_arg2, "off") - 1); if (m_isOn){ setAnimationState(STATE_LASER_ON); } else { setAnimationState(STATE_LASER_OFF); }; if (_arg9 > 0){ m_baseX = sx; m_baseY = sy; m_moveRange = _arg9; setMovingLaser(); }; if (_arg8 > 0){ setTimedLaser(); }; lasersDictionary[m_id] = this; _arg2 = null; } public function toggle(_arg1:TimerEvent=null):void{ if (m_isOn){ m_isOn = false; setAnimationState(STATE_LASER_OFF); } else { m_isOn = true; setAnimationState(STATE_LASER_ON); }; } private function setMovingLaser():void{ m_movingLaser = true; } override public function renderDisplay(_arg1:int, _arg2:int):void{ if (m_movingLaser){ sx = (m_baseX + int((Math.sin(m_moveAngle) * m_moveRange))); m_moveAngle = (m_moveAngle + m_moveRate); }; super.renderDisplay(_arg1, _arg2); } private function setTimedLaser():void{ m_timedLaser = true; m_laserTimer = new Timer(m_laserTime); m_laserTimer.addEventListener(TimerEvent.TIMER, toggle); m_laserTimer.start(); } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_LASER_ON: m_startFrame = m_frameOnStart; m_endFrame = m_frameOnEnd; m_loopFrames = true; break; case STATE_LASER_OFF: m_startFrame = m_frameOff; m_endFrame = m_frameOff; m_loopFrames = false; break; }; m_currentFrame = m_startFrame; } override public function setOn():void{ m_isOn = true; setAnimationState(STATE_LASER_ON); if (m_timedLaser){ setTimedLaser(); }; } override public function setOff():void{ m_isOn = false; setAnimationState(STATE_LASER_OFF); if (m_timedLaser){ m_laserTimer.stop(); m_laserTimer = null; }; if (m_movingLaser){ m_movingLaser = true; }; } public static function reset():void{ lasersDictionary = null; } public static function getItem(_arg1:int):Laser{ return (lasersDictionary[_arg1]); } } }//package game.obstaclesSection 257//Mutant (game.obstacles.Mutant) package game.obstacles { import flash.display.*; import flash.utils.*; import game.levels.*; import org.casalib.util.*; import assets.*; public class Mutant extends Obstacle { private var m_frameCaptiveEnd:int; private var m_frameCaptiveStart:int; private var m_frameReleaseEnd:int; private var m_goto:int; private var m_frameReleaseStart:int; private var m_cutscene:String; public static var STATE_MUTANT_CAPTIVE:String = "MutantCaptive"; public static var STATE_MUTANT_RELEASE:String = "MutantRelease"; private static var mutantsDictionary:Dictionary; public function Mutant(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:String){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.MUTANT); if (mutantsDictionary == null){ mutantsDictionary = new Dictionary(true); }; m_id = _arg5; m_goto = _arg6; m_cutscene = _arg7; m_frameCaptiveStart = (FrameUtil.getFrameNumberForLabel(_arg2, "captiveStart") - 1); m_frameCaptiveEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "captiveEnd") - 1); m_frameReleaseStart = (FrameUtil.getFrameNumberForLabel(_arg2, "releaseStart") - 1); m_frameReleaseEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "releaseEnd") - 1); setAnimationState(STATE_MUTANT_CAPTIVE); mutantsDictionary[m_id] = this; m_offsetY = ((_arg2 is Mutant1)) ? -42 : -1; _arg2 = null; } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_MUTANT_CAPTIVE: m_startFrame = m_frameCaptiveStart; m_endFrame = m_frameCaptiveEnd; m_loopFrames = true; break; case STATE_MUTANT_RELEASE: m_startFrame = m_frameReleaseStart; m_endFrame = m_frameReleaseEnd; m_loopFrames = false; m_callBack = released; break; }; m_currentFrame = m_startFrame; } override public function setOff():void{ Door.getItem(m_goto).setOff(); setAnimationState(STATE_MUTANT_RELEASE); } public function released():void{ GameBroadcaster.dispatchEvent(new CutSceneEvent(CutSceneEvent.DISPLAY, m_cutscene)); } public static function getItem(_arg1:int):Mutant{ return (mutantsDictionary[_arg1]); } public static function reset():void{ mutantsDictionary = null; } } }//package game.obstaclesSection 258//Obstacle (game.obstacles.Obstacle) package game.obstacles { import flash.display.*; import org.casalib.display.*; import flash.geom.*; import game.interfaces.*; import com.electrotank.util.*; import com.markfennell.display.*; public class Obstacle implements IObstacle { private var m_debugContainer:CasaSprite; protected var m_loopFrames:Boolean;// = false protected var m_points:int;// = 0 protected var m_currentFrame:int;// = 1 protected var m_flip:Boolean;// = false protected var m_callBack:Function; private var m_tileY:int; protected var m_gameBitmapData:BitmapData; private var m_tileX:int; protected var m_id:int; private var m_height:int; protected var m_isOn:Boolean;// = true protected var m_startFrame:int;// = 1 private var m_displayMargin:int;// = 50 protected var m_state:String; protected var m_type:String; private var m_spriteSheet:SpriteSheet; protected var m_offsetX:int;// = 0 protected var m_offsetY:int;// = 0 private var m_tileSize:Number;// = 118 protected var m_isActive:Boolean;// = false protected var m_endFrame:int;// = 1 private var m_floorThickness:int;// = 19 protected var m_range:int; private var m_stageHeight:int; private var m_sx:int; private var m_sy:int; private var m_stageWidth:int; private var m_width:int; public function Obstacle(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:String){ m_gameBitmapData = _arg1; m_spriteSheet = new SpriteSheet(_arg2, _arg3, _arg4); m_type = _arg7; m_stageWidth = Constants.STAGE_WIDTH; m_stageHeight = Constants.STAGE_HEIGHT; m_tileX = _arg5; m_tileY = _arg6; m_sx = ((_arg5 * m_tileSize) + (m_tileSize / 2)); m_sy = (((_arg6 * m_tileSize) + (m_tileSize - m_floorThickness)) - int((_arg2.height / 2))); } public function destroy():void{ m_spriteSheet.destroy(); } public function get tileY():int{ return (m_tileY); } public function renderDisplay(_arg1:int, _arg2:int):void{ m_isActive = false; if ((((m_sx > (_arg1 - m_displayMargin))) && ((m_sx < ((m_stageWidth + m_displayMargin) + _arg1))))){ if ((((m_sy > (_arg2 - m_displayMargin))) && ((m_sy < ((m_stageHeight + m_displayMargin) + _arg2))))){ m_isActive = true; if (m_currentFrame < (m_endFrame - 1)){ m_currentFrame++; } else { if (m_loopFrames){ m_currentFrame = m_startFrame; } else { if (m_callBack != null){ m_callBack(); m_callBack = null; } else { m_currentFrame = m_endFrame; }; }; }; m_spriteSheet.draw(m_gameBitmapData, ((m_sx - _arg1) + m_offsetX), ((m_sy - _arg2) + m_offsetY), m_currentFrame, m_flip); }; }; } public function getRange(_arg1:Point):Number{ return (Point.distance(point, _arg1)); } public function get point():Point{ return (new Point(m_sx, m_sy)); } public function setOn():void{ } public function get id():int{ return (m_id); } public function get height():int{ return (m_height); } public function get isOn():Boolean{ return (m_isOn); } public function setOff():void{ } public function get type():String{ return (m_type); } public function get width():int{ return (m_width); } public function set sx(_arg1:int):void{ m_sx = _arg1; } public function get isActive():Boolean{ return (m_isActive); } public function get range():int{ return (m_range); } public function renderPhysics():void{ } public function positionFromTile(_arg1:int, _arg2:int):Point{ var _local3:Point = new Point(); _local3.x = ((_arg1 * m_tileSize) + (m_tileSize / 2)); _local3.y = ((_arg2 * m_tileSize) + (m_tileSize - m_floorThickness)); return (_local3); } public function set sy(_arg1:int):void{ m_sy = _arg1; } public function setPoints():void{ MemoryCrypto.incrementValue("bonus", m_points); m_points = 0; } public function get sx():int{ return (m_sx); } public function get sy():int{ return (m_sy); } public function setAnimationState(_arg1:String):void{ } public function get tileX():int{ return (m_tileX); } } }//package game.obstaclesSection 259//ObstacleController (game.obstacles.ObstacleController) package game.obstacles { import flash.display.*; import flash.utils.*; import game.levels.*; import org.casalib.display.*; import game.interfaces.*; import assets.*; public class ObstacleController { private var m_debugContainer:CasaSprite; private var embed_keypad:KeypadUI; private var embed_robot:RobotUI; private var embed_terminalFuture:TerminalFutureUI; private var embed_doorDoubleSteel:DoorDoubleSteelUI; private var embed_laserFuture:LaserFutureUI; private var embed_cameraRight:CameraRightUI; private var embed_mutant3:Mutant3; private var embed_mutant4:Mutant4; private var m_obstaclesArray:Array; private var embed_mutant2:Mutant2; private var m_gameBitmapData:BitmapData; private var embed_mutant1:Mutant1; private var embed_doorDoubleFutureExit:DoorDoubleFutureExitUI; private var embed_wires:WiresUI; private var embed_terminal:TerminalUI; private var embed_sensorBottom:SensorBottomUI; private var embed_doorSingleSteelExit:DoorSingleSteelExitUI; private var embed_robot2:Robot2UI; private var m_level:Level; private var embed_switchFuture:SwitchFutureUI; private var embed_doorDoubleSteelExit:DoorDoubleSteelExitUI; private var embed_human:HumanUI; private var embed_sensorTop:SensorTopUI; private var embed_laserBig:LaserBigUI; private var embed_keypadFuture:KeypadFutureUI; private var m_floorThickness:int;// = 19 private var embed_doorDoubleFuture:DoorDoubleFutureUI; private var embed_switch:SwitchUI; private var embed_doorSingleSteel:DoorSingleSteelUI; private var embed_cameraLeft:CameraLeftUI; public function ObstacleController(_arg1:Level, _arg2:BitmapData){ m_obstaclesArray = []; super(); Door.reset(); Laser.reset(); Sensor.reset(); CCTV.reset(); Guard.reset(); m_level = _arg1; m_gameBitmapData = _arg2; initObstacles(); GameBroadcaster.addEventListener(SwitchEvent.FLICKED, handleSwitchFlicked); } public function destroy():void{ GameBroadcaster.removeEventListener(SwitchEvent.FLICKED, handleSwitchFlicked); var _local1:int; while (_local1 < m_obstaclesArray.length) { m_obstaclesArray[_local1].destroy(); _local1++; }; } private function initObstacles():void{ var _local1:int; var _local2:XML; var _local3:XML; var _local4:*; var _local5:Boolean; var _local6:IObstacle; _local2 = m_level.getXMLList("doors"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local5 = (String(_local3.@locked) == "true"); _local4 = getDefinitionByName(String(_local3.@asset)); _local6 = new Door(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), int(_local3.@goto), _local5, int(_local3.@range)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("switches"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local6 = new Switch(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), int(_local3.@goto), (String(_local3.@isOn) == "true"), int(_local3.@range), String(_local3.@type), (String(_local3.@canToggle) == "true"), String(_local3)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("lasers"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local5 = (String(_local3.@isOn) == "true"); _local6 = new Laser(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), _local5, int(_local3.@range), int(_local3.@time), int(_local3.@move), Number(_local3.@rate)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("sensors"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local5 = (String(_local3.@isOn) == "true"); _local6 = new Sensor(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), _local5, int(_local3.@range), int(_local3.@time), String(_local3.@attach)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("cameras"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local5 = (String(_local3.@isOn) == "true"); _local6 = new CCTV(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), _local5, int(_local3.@range), int(_local3.@time), String(_local3.@face)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("keypads"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local5 = (String(_local3.@isOn) == "true"); _local6 = new Keypad(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), int(_local3.@goto), _local5, int(_local3.@range), String(_local3.@type), String(_local3.@miniGame), String(_local3.@correct), (String(_local3.@canToggle) == "true"), int(_local3.@points), String(_local3)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("mutants"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local6 = new Mutant(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), int(_local3.@goto), String(_local3.@cutscene)); m_obstaclesArray.push(_local6); _local1++; }; _local2 = m_level.getXMLList("guards"); _local1 = 0; while (_local1 < _local2.children().length()) { _local3 = _local2.children()[_local1]; _local4 = getDefinitionByName(String(_local3.@asset)); _local6 = new Guard(m_gameBitmapData, new (_local4), int(_local3.@x), int(_local3.@y), int(_local3.@id), int(_local3.@range), int(_local3.@move), Number(_local3.@rate), String(_local3.@type), int(_local3.@points)); m_obstaclesArray.push(_local6); _local1++; }; } private function tweenToObject(_arg1:IObstacle, _arg2:Function):void{ _arg2(); } private function handleSwitchFlicked(_arg1:SwitchEvent):void{ var _local2:IObstacle; switch (_arg1.targetType){ case ObstacleTypes.DOOR: _local2 = Door.getItem(_arg1.targetID); if (_local2.isOn){ tweenToObject(_local2, _local2.setOff); } else { tweenToObject(_local2, _local2.setOn); }; break; case ObstacleTypes.LASER: _local2 = Laser.getItem(_arg1.targetID); if (_local2.isOn){ tweenToObject(_local2, _local2.setOff); } else { tweenToObject(_local2, _local2.setOn); }; break; case ObstacleTypes.SENSOR: _local2 = Sensor.getItem(_arg1.targetID); if (_local2.isOn){ tweenToObject(_local2, _local2.setOff); } else { tweenToObject(_local2, _local2.setOn); }; break; case ObstacleTypes.CAMERA: _local2 = CCTV.getItem(_arg1.targetID); if (_local2.isOn){ tweenToObject(_local2, _local2.setOff); } else { tweenToObject(_local2, _local2.setOn); }; break; case ObstacleTypes.MUTANT: _local2 = Mutant.getItem(_arg1.targetID); tweenToObject(_local2, _local2.setOff); break; }; } public function renderPhysics():void{ var _local1:int; while (_local1 < m_obstaclesArray.length) { m_obstaclesArray[_local1].renderPhysics(); _local1++; }; } public function get obstacles():Array{ return (m_obstaclesArray); } public function renderDisplay(_arg1:int, _arg2:int):void{ var _local3:int; while (_local3 < m_obstaclesArray.length) { m_obstaclesArray[_local3].renderDisplay(_arg1, _arg2); _local3++; }; } } }//package game.obstaclesSection 260//ObstacleTypes (game.obstacles.ObstacleTypes) package game.obstacles { public class ObstacleTypes { public static var KEYPAD:String = "keypad"; public static var CAMERA:String = "camera"; public static var LASER:String = "laser"; public static var GUARD:String = "guard"; public static var DOOR:String = "door"; public static var MUTANT:String = "mutant"; public static var BARRIER:String = "barrier"; public static var SENSOR:String = "sensor"; public static var SWITCH:String = "switch"; } }//package game.obstaclesSection 261//Sensor (game.obstacles.Sensor) package game.obstacles { import flash.events.*; import flash.display.*; import flash.utils.*; import org.casalib.util.*; public class Sensor extends Obstacle { private var m_sensorTime:int; private var m_frameOnEnd:int; private var m_frameOnStart:int; private var m_frameOff:int; private var m_attach:String; private var m_sensorTimer:Timer; private var m_timedSensor:Boolean;// = false private static var sensorsDictionary:Dictionary; private static var BOTTOM:String = "bottom"; private static var TOP:String = "top"; public static var STATE_SENSOR_ON:String = "DoorClosed"; public static var STATE_SENSOR_OFF:String = "DoorOpen"; public function Sensor(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:Boolean, _arg7:int, _arg8:int, _arg9:String){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.SENSOR); if (sensorsDictionary == null){ sensorsDictionary = new Dictionary(true); }; m_isOn = _arg6; m_id = _arg5; m_sensorTime = _arg8; m_attach = _arg9; m_range = _arg7; if (m_attach == TOP){ m_offsetY = -70; } else { m_offsetY = 0; }; m_frameOnStart = (FrameUtil.getFrameNumberForLabel(_arg2, "onStart") - 1); m_frameOnEnd = (FrameUtil.getFrameNumberForLabel(_arg2, "onEnd") - 1); m_frameOff = (FrameUtil.getFrameNumberForLabel(_arg2, "off") - 1); if (m_isOn){ setAnimationState(STATE_SENSOR_ON); } else { setAnimationState(STATE_SENSOR_OFF); }; if (_arg8 > 0){ setTimedSensor(); }; sensorsDictionary[m_id] = this; _arg2 = null; } override public function setOn():void{ m_isOn = true; setAnimationState(STATE_SENSOR_ON); if (m_timedSensor){ setTimedSensor(); }; } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_SENSOR_ON: m_startFrame = m_frameOnStart; m_endFrame = m_frameOnEnd; m_loopFrames = true; break; case STATE_SENSOR_OFF: m_startFrame = m_frameOff; m_endFrame = m_frameOff; m_loopFrames = false; break; }; m_currentFrame = m_startFrame; } override public function setOff():void{ m_isOn = false; setAnimationState(STATE_SENSOR_OFF); if (m_timedSensor){ m_sensorTimer.stop(); m_sensorTimer = null; }; } private function setTimedSensor():void{ m_timedSensor = true; m_sensorTimer = new Timer(m_sensorTime); m_sensorTimer.addEventListener(TimerEvent.TIMER, toggle); m_sensorTimer.start(); } public function toggle(_arg1:TimerEvent=null):void{ if (m_isOn){ m_isOn = false; setAnimationState(STATE_SENSOR_OFF); } else { m_isOn = true; setAnimationState(STATE_SENSOR_ON); }; } public function onTop():Boolean{ return ((m_attach == TOP)); } public static function getItem(_arg1:int):Sensor{ return (sensorsDictionary[_arg1]); } public static function reset():void{ sensorsDictionary = null; } } }//package game.obstaclesSection 262//Switch (game.obstacles.Switch) package game.obstacles { import flash.display.*; import game.levels.*; import org.casalib.util.*; public class Switch extends Obstacle { private var m_frameOnEnd:int; private var m_targetID:int; private var m_frameOnStart:int; private var m_used:Boolean;// = false private var m_canToggle:Boolean;// = true private var m_message:String; private var m_frameOn:int; private var m_frameOff:int; private var m_targetType:String; public static var STATE_SWITCH_OFF:String = "DoorOpen"; public static var STATE_SWITCH_ON:String = "DoorClosed"; public function Switch(_arg1:BitmapData, _arg2:MovieClip, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:Boolean, _arg8:int, _arg9:String, _arg10:Boolean, _arg11:String=""){ super(_arg1, _arg2, _arg2.width, _arg2.height, _arg3, _arg4, ObstacleTypes.SWITCH); m_offsetY = -30; m_isOn = _arg7; m_id = _arg5; m_targetID = _arg6; m_range = _arg8; m_targetType = _arg9; m_canToggle = _arg10; m_message = _arg11; m_frameOn = (FrameUtil.getFrameNumberForLabel(_arg2, "on") - 1); m_frameOff = (FrameUtil.getFrameNumberForLabel(_arg2, "off") - 1); if (m_isOn){ setAnimationState(STATE_SWITCH_ON); } else { setAnimationState(STATE_SWITCH_OFF); }; _arg2 = null; } public function toggle():void{ var _local1:MessageBox; if (!m_canToggle){ if (m_used){ return; }; m_used = true; }; if (m_isOn){ m_isOn = false; setAnimationState(STATE_SWITCH_OFF); } else { _local1 = new MessageBox(m_message); m_isOn = true; setAnimationState(STATE_SWITCH_ON); }; GameBroadcaster.dispatchEvent(new SwitchEvent(SwitchEvent.FLICKED, m_targetType, m_targetID, m_isOn)); } public function get used():Boolean{ return (m_used); } override public function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_SWITCH_ON: m_startFrame = m_frameOn; m_endFrame = m_frameOn; m_loopFrames = false; break; case STATE_SWITCH_OFF: m_startFrame = m_frameOff; m_endFrame = m_frameOff; m_loopFrames = false; break; }; m_currentFrame = m_startFrame; } } }//package game.obstaclesSection 263//SwitchEvent (game.obstacles.SwitchEvent) package game.obstacles { import flash.events.*; public class SwitchEvent extends Event { public var state:Boolean; public var targetType:String; public var targetID:int; public static var FLICKED:String = "SwitchFlicked"; public function SwitchEvent(_arg1:String, _arg2:String, _arg3:int, _arg4:Boolean=true){ super(_arg1, true, true); targetType = _arg2; targetID = _arg3; state = _arg4; } override public function clone():Event{ return (new SwitchEvent(type, targetType, targetID, state)); } } }//package game.obstaclesSection 264//Player (game.player.Player) package game.player { import flash.events.*; import flash.display.*; import flash.utils.*; import console.*; import com.markfennell.sound.*; import game.levels.*; import game.*; import game.medals.*; import gs.*; import org.casalib.display.*; import flash.geom.*; import game.obstacles.*; import com.markfennell.geom.*; import game.interfaces.*; import org.casalib.util.*; import assets.*; import fl.motion.easing.*; import com.markfennell.display.*; import game.tiles.*; public class Player extends EventDispatcher { private var m_character_w2:int;// = 13 public var inputUp:Boolean;// = false private var m_jumpHeight:int; private var m_isJumpingRoof:Boolean;// = false private var m_isOnRoofHold:Boolean;// = false public var spriteSheetX:int; private var m_currentFrame:int;// = 1 private var m_isFallingRoof:Boolean;// = false private var m_accelerationCrawl:Number;// = 2 private var m_state:String; private var m_door:Door;// = null private var m_isGameOver:Boolean;// = false private var m_laserRange:Number;// = 150 private var m_attackTime:int;// = 200 private var m_guard:Guard;// = null private var m_walkOutTime:int;// = 300 public var inputRight:Boolean;// = false private var m_max_vx_walk:Number;// = 9 private var m_gravity:Number;// = 2 private var m_isAnimating:Boolean;// = false private var m_isOverSwitch:Boolean;// = false private var m_friction:Number;// = 0.8 private var m_character_height:int;// = 70 private var m_isVisible:Boolean;// = true private var m_offset:int;// = 14 private var m_isFalling:Boolean;// = false private var m_isOnRoof:Boolean;// = false private var m_started:Boolean;// = false private var m_isCrawling:Boolean;// = false private var m_bounds:Rectangle; private var m_spriteSheet:SpriteSheet; private var m_floorThickness:int;// = 19 private var m_isOverdoor:Boolean;// = false private var m_sy_old:int; private var m_endFrame:int;// = 1 public var inputLeft:Boolean;// = false private var m_tile_B:Point; private var m_tile_C:Point; private var m_accelerationRoof:Number;// = 0.7 private var m_isCrouching:Boolean;// = false private var m_tile_L:Point; private var m_acceleration:Number;// = 1 private var m_tile_R:Point; private var m_tile_T:Point; private var m_gameBitmapData:BitmapData; private var m_spriteSheetX_BASE:int; private var m_isOverKeypad:Boolean;// = false private var m_crouchReleased:Boolean;// = true private var m_level:Level; private var m_panTime:Number;// = 0.5 private var m_startFrame:int;// = 1 private var m_switch:Switch;// = null private var m_isJumpingLevel:Boolean;// = false private var m_isOverGuard:Boolean;// = false public var inputSpace:Boolean;// = false private var m_sx_old:int; private var m_tileSize:Number;// = 118 private var m_sx:Number;// = 0 private var m_sy:Number;// = 0 private var m_max_vx_crawl:Number;// = 3 private var m_debugContainer:CasaSprite; private var m_loopFrames:Boolean;// = false private var m_max_vx_roof:Number;// = 2 public var inputDown:Boolean;// = false private var m_max_vx:Number; private var m_boundColor:int;// = 0xFF0000 private var m_isWalking:Boolean;// = true private var m_tile_BL:Point; private var m_jumpTime:Number; private var m_tile_BR:Point; private var m_isAttacking:Boolean;// = false private var m_spriteSheetY_BASE:int; private var m_vx:Number;// = 0 private var m_vy:Number;// = 0 private var m_character:MovieClip; private var m_tile_TR:Point; private var m_tile_TL:Point; private var m_isOnRoofMoving:Boolean;// = false private var m_keypad:Keypad;// = null private var m_spriteFlip:Boolean;// = false private var m_targetDoor:Door;// = null private var m_callBack:Function; public var spriteSheetY:int; private static var LEFT:String = "left"; public static var STATE_DEAD:String = "PlayerDead"; public static var STATE_CROUCH:String = "PlayerCrouch"; public static var STATE_FALL:String = "PlayerFall"; public static var STATE_ROOF_MOVE:String = "PlayerRoofMove"; public static var STATE_DOOR_IN:String = "PlayerDoorIn"; public static var STATE_ATTACK:String = "PlayerAttack"; public static var STATE_WALK:String = "PlayerWalk"; public static var STATE_IDLE:String = "PlayerIdle"; public static var STATE_FLOOR_DOWN:String = "PlayerFloorDown"; public static var STATE_ROOF_JUMP:String = "PlayerRoofJump"; public static var STATE_ROOF_HANG:String = "PlayerRoofHang"; public static var STATE_FLOOR_UP:String = "PlayerFloorUp"; public static var STATE_CRAWL:String = "PlayerCrawl"; public static var STATE_DOOR_OUT:String = "PlayerDoorOut"; private static var RIGHT:String = "right"; public static var STATE_HIT:String = "PlayerHit"; public static var STATE_ROOF_HIDE:String = "PlayerRoofHide"; public function Player(_arg1:Level, _arg2:BitmapData){ m_tile_TL = new Point(); m_tile_T = new Point(); m_tile_TR = new Point(); m_tile_L = new Point(); m_tile_C = new Point(); m_tile_R = new Point(); m_tile_BL = new Point(); m_tile_B = new Point(); m_tile_BR = new Point(); super(); m_level = _arg1; m_gameBitmapData = _arg2; m_character = new HeroUI(); m_spriteSheet = new SpriteSheet(m_character, 120, 100); m_spriteSheetX_BASE = (spriteSheetX = (Constants.STAGE_WIDTH * 0.5)); m_spriteSheetY_BASE = (spriteSheetY = ((Constants.STAGE_HEIGHT * 0.5) + m_offset)); setAnimationState(STATE_IDLE); GameBroadcaster.addEventListener(LevelController.ALARM, playerDiscovered); } private function moveToDoor():void{ Guard.resetWarnings(); m_isAnimating = true; m_door.open(); setAnimationState(STATE_DOOR_IN); } private function playerDiscovered(_arg1:Event=null):void{ if (m_isGameOver){ return; }; m_isGameOver = true; m_boundColor = 0xFF0000; GameBroadcaster.dispatchEvent(new Event(LevelController.ALARM)); } public function destroy():void{ GameBroadcaster.removeEventListener(LevelController.ALARM, playerDiscovered); TweenMax.killAll(); m_spriteSheet.destroy(); } private function canJump():Boolean{ if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; if (m_isOnRoof){ return (false); }; if (m_isOnRoofHold){ return (false); }; if (isForcedCrawl()){ return (false); }; if (m_isCrouching){ return (false); }; if (m_isCrawling){ return (false); }; return (true); } private function checkSpeed():void{ if (((((!(m_isWalking)) && (!(m_isCrawling)))) && (!(m_isAttacking)))){ m_vx = (m_vx * m_friction); if (Math.abs(m_vx) < 0.5){ m_vx = 0; }; }; if (m_vx > m_max_vx){ m_vx = m_max_vx; }; if (m_vx < -(m_max_vx)){ m_vx = -(m_max_vx); }; } public function resetInputs():void{ inputLeft = false; inputRight = false; } private function canCrawl():Boolean{ if (m_isOnRoofHold){ return (false); }; if (m_isOnRoof){ return (false); }; if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; return (true); } private function canAttack():Boolean{ if (m_isAttacking){ return (false); }; if (m_isCrawling){ return (false); }; if (m_isCrouching){ return (false); }; if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; if (m_isOnRoof){ return (false); }; return (true); } public function renderDisplay():void{ if (!m_isAnimating){ if (m_isAttacking){ setAnimationState(STATE_ATTACK); } else { if (m_isWalking){ setAnimationState(STATE_WALK); } else { if (m_isCrawling){ setAnimationState(STATE_CRAWL); } else { if (m_isCrouching){ setAnimationState(STATE_CROUCH); } else { if (m_isFalling){ setAnimationState(STATE_FALL); } else { if (m_isJumpingRoof){ setAnimationState(STATE_ROOF_JUMP); } else { if (m_isJumpingLevel){ setAnimationState(STATE_FLOOR_UP); } else { if (m_isOnRoofHold){ setAnimationState(STATE_ROOF_HIDE); } else { if (m_isOnRoofMoving){ setAnimationState(STATE_ROOF_MOVE); } else { if (m_isOnRoof){ setAnimationState(STATE_ROOF_HANG); } else { setAnimationState(STATE_IDLE); }; }; }; }; }; }; }; }; }; }; }; if (m_currentFrame < (m_endFrame - 1)){ m_currentFrame++; } else { if (m_loopFrames){ m_currentFrame = m_startFrame; } else { if (m_callBack != null){ m_callBack(); m_callBack = null; }; }; }; m_spriteSheet.draw(m_gameBitmapData, spriteSheetX, spriteSheetY, m_currentFrame, m_spriteFlip); if (Constants.BOUNDS){ Line.drawRect(getBounds(spriteSheetX, spriteSheetY), m_gameBitmapData, m_boundColor); }; } public function handleLeft():void{ if (m_isAnimating){ return; }; if (!m_isOnRoofHold){ m_spriteFlip = true; }; if (m_isCrouching){ m_max_vx = m_max_vx_crawl; m_vx = (m_vx - m_accelerationCrawl); m_isCrawling = true; } else { if (m_isOnRoofHold){ m_vx = 0; } else { if (m_isOnRoof){ m_max_vx = m_max_vx_roof; m_vx = (m_vx - m_acceleration); m_isOnRoofMoving = true; } else { if (canWalk()){ m_max_vx = m_max_vx_walk; m_vx = (m_vx - m_acceleration); m_isWalking = true; }; }; }; }; } private function attack():void{ if (m_guard){ m_guard.setPoints(); m_guard.explode(); m_guard = null; GameBroadcaster.dispatchEvent(new MedalEvent(MedalEvent.ROBOT_DESTROYED, m_level.id)); Console.GoogleAnalytics.trackEvent("MRD_Escape", "misc", "robotDestroyed"); } else { switch (int((Math.random() * 4))){ case 1: GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_02", 0.6, 1)); break; case 2: GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_04", 0.6, 1)); break; case 3: GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_08", 0.6, 1)); break; default: GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_staff_12", 0.8, 1)); break; }; }; m_vx = 0; m_isAttacking = true; setTimeout(attack_COMPLETE, m_attackTime); } public function start():void{ m_started = true; } public function get sx():Number{ return (m_sx); } public function get sy():Number{ return (m_sy); } private function setAnimationState(_arg1:String):void{ if (_arg1 == m_state){ return; }; m_state = _arg1; m_callBack = null; switch (m_state){ case STATE_IDLE: m_startFrame = 1; m_endFrame = 24; m_loopFrames = true; break; case STATE_WALK: m_startFrame = 42; m_endFrame = 59; m_loopFrames = true; break; case STATE_CROUCH: m_startFrame = 25; m_endFrame = 41; m_loopFrames = false; break; case STATE_ATTACK: if (Math.random() > 0.5){ m_startFrame = 71; m_endFrame = 80; } else { m_startFrame = 198; m_endFrame = 207; }; m_loopFrames = true; break; case STATE_ROOF_JUMP: m_startFrame = 60; m_endFrame = 70; m_loopFrames = false; break; case STATE_FLOOR_UP: m_startFrame = 60; m_endFrame = 70; m_loopFrames = false; break; case STATE_FALL: m_startFrame = 81; m_endFrame = 90; m_loopFrames = true; break; case STATE_CRAWL: m_startFrame = 209; m_endFrame = 236; m_loopFrames = true; break; case STATE_ROOF_HIDE: m_startFrame = 91; m_endFrame = 97; m_loopFrames = false; break; case STATE_ROOF_HANG: m_startFrame = 145; m_endFrame = 172; m_loopFrames = true; break; case STATE_ROOF_MOVE: m_startFrame = 173; m_endFrame = 197; m_loopFrames = true; break; case STATE_DOOR_IN: m_startFrame = 110; m_endFrame = 117; m_loopFrames = false; m_callBack = moveToDoor_TRANSITION_BEGIN; break; case STATE_DOOR_OUT: m_startFrame = 118; m_endFrame = 125; m_loopFrames = false; m_callBack = moveToDoor_COMPLETE; break; }; m_currentFrame = m_startFrame; } private function getBoundingTiles():void{ m_tile_C.x = int((m_sx / m_tileSize)); m_tile_C.y = int((m_sy / m_tileSize)); m_tile_L.x = m_level.validWidth((m_tile_C.x - 1)); m_tile_L.y = m_tile_C.y; m_tile_R.x = m_level.validWidth((m_tile_C.x + 1)); m_tile_R.y = m_tile_C.y; m_tile_T.x = m_tile_C.x; m_tile_T.y = m_level.validHeight((m_tile_C.y - 1)); m_tile_B.x = m_tile_C.x; m_tile_B.y = m_level.validHeight((m_tile_C.y + 1)); m_tile_BL.x = m_level.validWidth((m_tile_C.x - 1)); m_tile_BL.y = m_level.validHeight((m_tile_C.y + 1)); m_tile_BR.x = m_level.validWidth((m_tile_C.x + 1)); m_tile_BR.y = m_level.validHeight((m_tile_C.y + 1)); m_tile_TL.x = m_level.validWidth((m_tile_C.x - 1)); m_tile_TL.y = m_level.validHeight((m_tile_C.y - 1)); m_tile_TR.x = m_level.validWidth((m_tile_C.x + 1)); m_tile_TR.y = m_level.validHeight((m_tile_C.y - 1)); } public function set isAnimating(_arg1:Boolean):void{ m_isAnimating = _arg1; } private function checkCollisions(_arg1:Array):void{ var _local2:Number; m_sx = (m_sx + m_vx); if (m_vx < 0){ if (!tilePassable(m_tile_L)){ _local2 = (((m_tile_L.x + 1) * m_tileSize) + m_character_w2); if (m_sx < _local2){ m_sx = _local2; m_vx = 0; }; } else { if (m_level.collisionArray[m_tile_C.y][m_tile_C.x] == TileTypes.WALL_LEFT){ _local2 = (((m_tile_C.x + 0.5) * m_tileSize) + m_character_w2); if (m_sx < _local2){ m_sx = _local2; m_vx = 0; }; }; }; } else { if (m_vx > 0){ if (!tilePassable(m_tile_R)){ _local2 = ((m_tile_R.x * m_tileSize) - m_character_w2); if (m_sx > _local2){ m_sx = _local2; m_vx = 0; }; } else { if (m_level.collisionArray[m_tile_C.y][m_tile_C.x] == TileTypes.WALL_RIGHT){ _local2 = (((m_tile_C.x + 0.5) * m_tileSize) - m_character_w2); if (m_sx > _local2){ m_sx = _local2; m_vx = 0; }; }; }; }; }; } private function doFall():void{ m_isFalling = true; m_isOnRoof = false; m_isOnRoofHold = false; m_jumpHeight = ((m_tile_C.y * m_tileSize) + (m_tileSize - m_floorThickness)); TweenMax.to(this, 0.2, {ease:Quadratic.easeIn, sy:m_jumpHeight, onComplete:doFall_COMPLETE}); } public function doFall_COMPLETE():void{ m_isFalling = false; if (Math.random() > 0.5){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_thud", 0.6, 1)); } else { GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_thud2", 0.6, 1)); }; } private function moveToDoor_TRANSITION_BEGIN():void{ var _local1:Point; if (m_door.goto == Door.EXIT){ GameBroadcaster.dispatchEvent(new Event(LevelController.COMPLETE)); } else { m_targetDoor = Door.getItem(m_door.goto); _local1 = positionFromTile(m_targetDoor.tileX, m_targetDoor.tileY); TweenMax.to(this, 1, {sx:_local1.x, sy:_local1.y, onComplete:moveToDoor_TRANSITION_COMPLETE}); }; } public function set sx(_arg1:Number):void{ m_sx = _arg1; } public function set sy(_arg1:Number):void{ m_sy = _arg1; } public function placePlayer():void{ var _local1:Point = positionFromTile(m_level.player.x, m_level.player.y); m_sx = _local1.x; m_sy = _local1.y; } public function handleRight():void{ if (m_isAnimating){ return; }; if (!m_isOnRoofHold){ m_spriteFlip = false; }; if (m_isCrouching){ m_max_vx = m_max_vx_crawl; m_vx = (m_vx + m_accelerationCrawl); m_isCrawling = true; } else { if (m_isOnRoofHold){ m_vx = 0; } else { if (m_isOnRoof){ m_max_vx = m_max_vx_roof; m_vx = (m_vx + m_acceleration); m_isOnRoofMoving = true; } else { if (canWalk()){ m_max_vx = m_max_vx_walk; m_vx = (m_vx + m_acceleration); m_isWalking = true; }; }; }; }; } public function handleUp():void{ var _local1:Number; if (m_isAnimating){ return; }; if (canJump()){ if (isJumpTile(m_tile_T)){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_tram_crash_01", 0.9, 1)); m_jumpHeight = (((m_tile_T.y + 1) * m_tileSize) - m_floorThickness); m_isJumpingLevel = true; m_vx = 0; if (((!(tilePassable(m_tile_TL))) && ((m_vx < 0)))){ _local1 = (((m_tile_TL.x + 1) * m_tileSize) + m_character_w2); if (m_sx < _local1){ m_sx = _local1; m_vx = 0; }; TweenMax.to(this, 0.4, {ease:Quadratic.easeOut, sx:_local1, sy:m_jumpHeight, onComplete:doJumpLevel_COMPLETE}); } else { if (((!(tilePassable(m_tile_TR))) && ((m_vx > 0)))){ _local1 = ((m_tile_TR.x * m_tileSize) - m_character_w2); if (m_sx > _local1){ m_sx = _local1; }; TweenMax.to(this, 0.4, {ease:Quadratic.easeOut, sx:_local1, sy:m_jumpHeight, onComplete:doJumpLevel_COMPLETE}); } else { TweenMax.to(this, 0.4, {ease:Quadratic.easeOut, sy:m_jumpHeight, onComplete:doJumpLevel_COMPLETE}); }; }; } else { GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_wall_climb_02", 0.8, 1)); m_jumpHeight = (((m_tile_C.y + 1) * m_tileSize) - 45); m_isJumpingRoof = true; TweenMax.to(this, 0.2, {ease:Quadratic.easeOut, sy:m_jumpHeight, onComplete:doJumpRoof_COMPLETE}); }; } else { if (((m_isOnRoof) && (!(m_isOnRoofHold)))){ m_isOnRoofHold = true; } else { if (m_isOnRoofHold){ }; }; }; } public function handleDown():void{ var _local1:Number; m_vx = 0; if (m_isAnimating){ return; }; m_crouchReleased = false; if (m_isOnRoofHold){ m_isOnRoofHold = false; setAnimationState(STATE_ROOF_HANG); } else { if (m_isOnRoof){ doFall(); } else { if (((isJumpTile(m_tile_C)) && (canFall()))){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_aerial_01", 0.5, 1)); m_isFalling = true; m_jumpHeight = (((m_tile_B.y + 1) * m_tileSize) - m_floorThickness); if (((!(tilePassable(m_tile_BL))) && ((m_vx < 0)))){ _local1 = (((m_tile_BL.x + 1) * m_tileSize) + m_character_w2); if (m_sx < _local1){ m_sx = _local1; }; TweenMax.to(this, 0.4, {ease:Quadratic.easeIn, sx:_local1, sy:m_jumpHeight, onComplete:doFall_COMPLETE}); } else { if (((!(tilePassable(m_tile_BR))) && ((m_vx > 0)))){ _local1 = ((m_tile_BR.x * m_tileSize) - m_character_w2); if (m_sx > _local1){ m_sx = _local1; }; TweenMax.to(this, 0.4, {ease:Quadratic.easeIn, sx:_local1, sy:m_jumpHeight, onComplete:doFall_COMPLETE}); } else { TweenMax.to(this, 0.4, {ease:Quadratic.easeIn, sy:m_jumpHeight, onComplete:doFall_COMPLETE}); }; }; } else { if (canCrawl()){ m_isCrouching = true; }; }; }; }; } public function revertSprite_COMPLETE():void{ m_isAnimating = false; GameBroadcaster.dispatchEvent(new PanEvent(LevelController.PAN_HIDE, NaN, NaN, null)); } private function canOpenDoor():Boolean{ if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; if (m_isOnRoof){ return (false); }; if (m_isOnRoofHold){ return (false); }; if (m_isCrouching){ return (false); }; if (m_isCrawling){ return (false); }; if (isForcedCrawl()){ return (false); }; return (true); } public function moveToDoor_TRANSITION_COMPLETE():void{ m_targetDoor.open(); setTimeout(moveToDoor_WALKOUT, m_walkOutTime); } private function isForcedCrawl():Boolean{ var _local1:int = m_level.collisionArray[m_tile_C.y][m_tile_C.x]; if (_local1 == TileTypes.CRAWL){ return (true); }; return (false); } public function doJumpLevel_COMPLETE():void{ m_isJumpingLevel = false; } private function attack_COMPLETE():void{ m_isAttacking = false; } public function moveSprite_COMPLETE():void{ if (m_callBack != null){ m_callBack(); }; m_callBack = null; revertSprite(); } private function isJumpTile(_arg1:Point):Boolean{ var _local2:int = m_level.collisionArray[_arg1.y][_arg1.x]; if (_local2 == TileTypes.FLOOR_JUMP){ return (true); }; return (false); } public function get tileX():int{ return (m_tile_C.x); } public function get tileY():int{ return (m_tile_C.y); } public function doJumpRoof_COMPLETE():void{ m_isJumpingRoof = false; m_isOnRoof = true; } private function canFall():Boolean{ if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; return (true); } private function moveToDoor_WALKOUT():void{ setAnimationState(STATE_DOOR_OUT); } private function checkObstacles(_arg1:Array):void{ var _local4:IObstacle; var _local5:int; var _local6:Guard; var _local2:Array = []; m_boundColor = 0xFF00; m_guard = null; var _local3:int; while (_local3 < _arg1.length) { _local4 = _arg1[_local3]; _local5 = (sx - _local4.sx); _local5 = ((_local5 < 0)) ? -(_local5) : _local5; if (!_local4.isActive){ } else { switch (_local4.type){ case ObstacleTypes.DOOR: if ((((tileY == _local4.tileY)) && ((_local5 < _local4.range)))){ m_door = (_local4 as Door); m_isOverdoor = true; }; break; case ObstacleTypes.SWITCH: if ((((tileY == _local4.tileY)) && ((_local5 < _local4.range)))){ m_switch = (_local4 as Switch); m_isOverSwitch = true; }; break; case ObstacleTypes.KEYPAD: if ((((tileY == _local4.tileY)) && ((_local5 < _local4.range)))){ m_keypad = (_local4 as Keypad); m_isOverKeypad = true; }; break; case ObstacleTypes.LASER: if (tileY == _local4.tileY){ if (_local5 < _local4.range){ if ((_local4 as Laser).isOn){ playerDiscovered(); }; } else { if ((_local4 as Laser).isOn){ _local2.push(((m_laserRange - Math.min(m_laserRange, Math.abs(_local5))) / (m_laserRange - _local4.range))); } else { _local2.push(0); }; }; }; break; case ObstacleTypes.SENSOR: if (tileY == _local4.tileY){ if ((_local4 as Sensor).isOn){ _local2.push(((m_laserRange - Math.min(m_laserRange, Math.abs(_local5))) / (m_laserRange - _local4.range))); } else { _local2.push(0); }; if (_local5 < _local4.range){ if ((_local4 as Sensor).isOn){ if (((m_isOnRoof) || (m_isOnRoofHold))){ if ((_local4 as Sensor).onTop()){ playerDiscovered(); }; } else { if (!(_local4 as Sensor).onTop()){ playerDiscovered(); }; }; }; }; }; break; case ObstacleTypes.CAMERA: if ((((tileY == _local4.tileY)) && ((_local5 < _local4.range)))){ if ((_local4 as CCTV).isOn){ if (Polygon.rectInPoly(getBounds(spriteSheetX, spriteSheetY), (_local4 as CCTV).fov)){ playerDiscovered(); }; }; }; break; case ObstacleTypes.GUARD: if (tileY == _local4.tileY){ _local6 = (_local4 as Guard); if ((((((_local5 < _local4.range)) && (_local6.canKill()))) && (_local6.isAlive()))){ m_guard = _local6; }; if (!m_isOnRoofHold){ _local6.checkFOV(sx, sy, tileX, tileY, m_level.collisionArray); }; }; break; }; }; _local3++; }; SoundController.getInstance().setLaserVolume(ArrayUtil.getHighestValue(_local2)); } public function get point():Point{ return (new Point(m_sx, m_sy)); } private function getBounds(_arg1:int, _arg2:int):Rectangle{ var _local3:Rectangle; switch (m_state){ default: if (m_spriteFlip){ _local3 = new Rectangle((_arg1 - 10), (_arg2 - 5), 30, 50); } else { _local3 = new Rectangle((_arg1 - 20), (_arg2 - 5), 30, 50); }; break; case STATE_CRAWL: case STATE_CROUCH: if (m_spriteFlip){ _local3 = new Rectangle((_arg1 - 15), (_arg2 + 15), 33, 30); } else { _local3 = new Rectangle((_arg1 - 20), (_arg2 + 15), 33, 30); }; break; case STATE_FALL: case STATE_FLOOR_UP: case STATE_ROOF_MOVE: case STATE_ROOF_HANG: case STATE_ROOF_JUMP: if (m_spriteFlip){ _local3 = new Rectangle((_arg1 - 15), (_arg2 - 29), 30, 70); } else { _local3 = new Rectangle((_arg1 - 15), (_arg2 - 29), 30, 70); }; break; case STATE_ROOF_HIDE: if (m_spriteFlip){ _local3 = new Rectangle((_arg1 - 24), (_arg2 - 29), 50, 33); } else { _local3 = new Rectangle((_arg1 - 24), (_arg2 - 29), 50, 33); }; break; }; return (_local3); } private function canWalk():Boolean{ if (m_isAttacking){ return (false); }; if (m_isCrawling){ return (false); }; if (m_isCrouching){ return (false); }; if (m_isFalling){ return (false); }; if (m_isJumpingLevel){ return (false); }; if (m_isJumpingRoof){ return (false); }; if (m_isOnRoof){ return (false); }; return (true); } public function handleSpace():void{ if (m_isAnimating){ return; }; m_vx = 0; if (((!((m_guard == null))) && (canAttack()))){ attack(); } else { if (((m_isOverdoor) && (canOpenDoor()))){ if (!m_door.locked){ moveToDoor(); m_isAnimating = true; } else { GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_access_denied_01", 0.8, 1)); }; } else { if (((((m_isOverSwitch) && (!(m_switch.used)))) && (canOpenDoor()))){ m_switch.toggle(); GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_mech_operate_17", 0.8, 1)); } else { if (((((m_isOverKeypad) && (!(m_keypad.used)))) && (canOpenDoor()))){ m_keypad.setPoints(); GameBroadcaster.dispatchEvent(new MiniGameEvent(MiniGameEvent.DISPLAY, m_keypad.miniGame, m_keypad, m_level.id)); } else { if (canAttack()){ attack(); }; }; }; }; }; } public function revertSprite():void{ TweenMax.to(this, m_panTime, {delay:0.25, sx:m_sx_old, sy:m_sy_old, spriteSheetX:m_spriteSheetX_BASE, spriteSheetY:m_spriteSheetY_BASE, ease:Quadratic.easeOut, onComplete:revertSprite_COMPLETE}); } public function positionFromTile(_arg1:int, _arg2:int):Point{ var _local3:Point = new Point(); _local3.x = ((_arg1 * m_tileSize) + (m_tileSize / 2)); _local3.y = ((_arg2 * m_tileSize) + (m_tileSize - m_floorThickness)); return (_local3); } public function renderPhysics(_arg1:Array):void{ if (!m_started){ return; }; if (!m_isAnimating){ getBoundingTiles(); m_isOverdoor = false; m_isOverSwitch = false; m_isOverKeypad = false; m_isWalking = false; m_isCrawling = false; m_isOverGuard = false; m_isOnRoofMoving = false; if (((isForcedCrawl()) && (canCrawl()))){ m_isCrouching = true; }; if (((((!(isForcedCrawl())) && (m_isCrouching))) && (m_crouchReleased))){ m_isCrouching = false; }; if (inputLeft){ handleLeft(); } else { if (inputRight){ handleRight(); }; }; checkSpeed(); checkCollisions(_arg1); checkObstacles(_arg1); getBounds(spriteSheetX, spriteSheetX); if (((((m_isOnRoofHold) || (m_isJumpingLevel))) || (m_isFalling))){ Guard.resetWarnings(); }; }; } private function tilePassable(_arg1:Point):Boolean{ var _local2:int = m_level.collisionArray[_arg1.y][_arg1.x]; if (_local2 == TileTypes.WALL_SOLID){ return (false); }; if ((((_local2 == TileTypes.WALL_LEFT)) && ((m_vx > 0)))){ return (false); }; if ((((_local2 == TileTypes.WALL_RIGHT)) && ((m_vx < 0)))){ return (false); }; if ((((_local2 == TileTypes.CRAWL)) && (!(m_isCrawling)))){ return (false); }; return (true); } private function moveToDoor_COMPLETE():void{ m_isAnimating = false; } public function resetCrouch():void{ m_crouchReleased = true; m_isCrouching = false; } public function moveSprite(_arg1:int, _arg2:int, _arg3:Number, _arg4:Function):void{ m_sx_old = m_sx; m_sy_old = m_sy; m_callBack = _arg4; m_isAnimating = true; TweenMax.to(this, m_panTime, {sx:_arg1, sy:_arg2, spriteSheetX:(m_spriteSheetX_BASE + (m_sx - _arg1)), spriteSheetY:(m_spriteSheetY_BASE + (m_sy - _arg2)), ease:Quadratic.easeOut, onComplete:moveSprite_COMPLETE}); } } }//package game.playerSection 265//TileEngine (game.tiles.TileEngine) package game.tiles { import flash.events.*; import flash.display.*; import flash.utils.*; import game.levels.*; import flash.geom.*; import assets.*; public class TileEngine { private var tx:Number; private var ty:Number; public var left:Number; private var tileSheetRef; private var level:Level; public var tileHeight:Number; private var m_bitmapData:BitmapData; public var tileSheetWidth:int; private var stageRectangle:Rectangle; private var mapPoint:Point; public var right:Number; private var oldX:int;// = 0 private var oldY:int;// = 0 public var mapHeight:Number; public var bottom:Number; private var m_container:Sprite; public var tileWidth:Number; private var stageHeight:Number; public var mapWidth:Number; private var tileArray:Array; private var offsetx:Number; private var offsety:Number; private var topMax:Number; private var tileSheet:BitmapData; private var blank:int; public var top:Number; private var _bitmapTilesFG:tilesForeground;// = null private var _bitmapTilesBG:tilesBackground;// = null public var mapArray:Array; private var mapRect:Rectangle; public var mapArrayHeight:int; private var stageWidth:Number; public var mapArrayWidth:int; private var cx:Number; private var cy:Number; private var _x:Number; private var _y:Number; private var t:Number; private var u:Number; private var leftMax:Number; public static var TOP:int = 2; public static var LEFT:int = 0; public static var BOTTOM:int = 3; public static var RIGHT:int = 1; public function TileEngine(_arg1:int, _arg2:int, _arg3:Array, _arg4:String){ mapArray = []; tileArray = []; super(); blank = _arg2; tileWidth = _arg1; tileHeight = _arg1; tileSheetRef = getDefinitionByName(_arg4); tileSheet = new tileSheetRef(0, 0); tileSheetRef = null; tileSheetWidth = (tileSheet.width / _arg1); stageWidth = Constants.STAGE_WIDTH; stageHeight = Constants.STAGE_HEIGHT; stageRectangle = new Rectangle(0, 0, stageWidth, stageHeight); m_bitmapData = new BitmapData(stageRectangle.width, stageRectangle.height, true, 0); mapArray = _arg3; mapArrayWidth = mapArray[0].length; mapArrayHeight = mapArray.length; mapWidth = (mapArrayWidth * tileWidth); mapHeight = (mapArray.length * tileHeight); tx = (Math.ceil((stageWidth / tileWidth)) + 1); ty = (Math.ceil((stageHeight / tileHeight)) + 1); leftMax = (mapWidth / tileWidth); topMax = (mapHeight / tileHeight); } public function get bitmapData():BitmapData{ return (m_bitmapData); } public function destroy():void{ tileSheet.dispose(); m_bitmapData.dispose(); } private function drawCircle(_arg1:int, _arg2:int, _arg3:int=0xFF0000):void{ m_container.graphics.lineStyle(1, _arg3); m_container.graphics.drawCircle(_arg1, _arg2, 4); } public function validWidth(_arg1:int):int{ if (_arg1 < 0){ _arg1 = 0; }; if (_arg1 >= mapArrayWidth){ _arg1 = (mapArrayWidth - 1); }; return (_arg1); } private function getTile(_arg1:int):Rectangle{ _arg1--; var _local2:int = int((_arg1 / tileSheetWidth)); var _local3:int = (_arg1 % tileSheetWidth); var _local4:Rectangle = new Rectangle((_local3 * tileWidth), (_local2 * tileHeight), tileWidth, tileHeight); return (_local4); } public function validHeight(_arg1:int):int{ if (_arg1 < 0){ _arg1 = 0; }; if (_arg1 >= mapArrayHeight){ _arg1 = (mapArrayHeight - 1); }; return (_arg1); } public function renderDisplay(_arg1:Number, _arg2:Number):BitmapData{ if (((((_arg1 - oldX) == 0)) && (((_arg2 - oldY) == 0)))){ return (m_bitmapData); }; m_bitmapData.fillRect(stageRectangle, 0); if (_arg1 < 0){ cx = -(Math.floor(Math.abs((_arg1 / tileWidth)))); } else { cx = Math.floor((_arg1 / tileWidth)); }; if (_arg2 < 0){ cy = -(Math.floor(Math.abs((_arg2 / tileHeight)))); } else { cy = Math.floor((_arg2 / tileHeight)); }; offsetx = (_arg1 % tileWidth); offsety = (_arg2 % tileHeight); t = -1; while (t < tx) { u = -1; for (;u < ty;u++) { left = (cx + t); top = (cy + u); right = (left + tx); bottom = (top + ty); if ((((((((left < 0)) || ((top < 0)))) || ((left >= leftMax)))) || ((top >= topMax)))){ mapRect = getTile(blank); } else { mapRect = getTile(mapArray[top][left]); }; mapPoint = new Point((-(offsetx) + (t * tileWidth)), (-(offsety) + (u * tileHeight))); if (mapPoint.x < -(tileWidth)){ continue; } else { if (mapPoint.y < -(tileHeight)){ continue; } else { if (mapPoint.x > stageWidth){ continue; } else { if (mapPoint.y > stageHeight){ continue; }; }; }; }; if (mapPoint.x > (stageWidth - tileWidth)){ mapRect.width = (stageWidth - mapPoint.x); } else { if (mapPoint.x <= 0){ mapRect.x = (mapRect.x + -(mapPoint.x)); mapRect.width = (mapRect.width + mapPoint.x); mapPoint.x = 0; }; }; if (mapPoint.y > (stageHeight - tileHeight)){ mapRect.height = (stageHeight - mapPoint.y); } else { if (mapPoint.y <= 0){ mapRect.y = (mapRect.y + -(mapPoint.y)); mapRect.height = (mapRect.height + mapPoint.y); mapPoint.y = 0; }; }; m_bitmapData.copyPixels(tileSheet, mapRect, mapPoint, null, null, false); }; t++; }; oldX = _arg1; oldY = _arg2; return (m_bitmapData); } private function drawRect(_arg1:Rectangle, _arg2:int):void{ m_container.graphics.lineStyle(1, _arg2); m_container.graphics.moveTo(_arg1.x, _arg1.y); m_container.graphics.lineTo((_arg1.x + _arg1.width), _arg1.y); m_container.graphics.lineTo((_arg1.x + _arg1.width), (_arg1.y + _arg1.height)); m_container.graphics.lineTo(_arg1.x, (_arg1.y + _arg1.height)); m_container.graphics.lineTo(_arg1.x, _arg1.y); } } }//package game.tilesSection 266//TileTypes (game.tiles.TileTypes) package game.tiles { public class TileTypes { public static var FLOOR_JUMP:int = 3; public static var WALL_RIGHT:int = 6; public static var CRAWL:int = 4; public static var WALL_SOLID:int = 1; public static var FLOOR_SOLID:int = 2; public static var WALL_LEFT:int = 5; } }//package game.tilesSection 267//GameController (game.GameController) package game { import flash.events.*; import console.*; import game.levels.*; import game.medals.*; import gs.*; import org.casalib.display.*; import game.interfaces.*; import org.casalib.util.*; import com.electrotank.util.*; import com.markfennell.utils.*; public class GameController extends CasaSprite implements IGameController, IConsoleSection { private var m_levels:int; private var m_medalController:MedalController; private var m_pause:Boolean;// = false private var m_addedToStage:Boolean;// = false private var m_cutSceneController:CutSceneController; private var m_level:int; private var m_levelController:LevelController; private var m_endLevel:EndLevel; private var m_levelData:Level; public static var LEVEL_COMPLETED:String = "Level Completed"; public static var alarm:Boolean = false; public static var LEVEL_FAILED:String = "LevelHASBEENFailed"; public static var GAME_COMPLETED:String = "Game Completed"; public function GameController(_arg1:int){ EndLevel.reset(); m_levels = EmbeddedData.levelNum; m_level = _arg1; GameBroadcaster.addEventListener(LEVEL_COMPLETED, nextLevel); GameBroadcaster.addEventListener(LEVEL_FAILED, replayLevel); MemoryCrypto.reset(); MemoryCrypto.setValue("score", 0); MemoryCrypto.setValue("bonus", 0); m_cutSceneController = new CutSceneController(); addChild(m_cutSceneController); m_medalController = new MedalController(); m_medalController.setupListeners(); } public function transitionIn_COMPLETE():void{ } public function restart(_arg1:Event=null):void{ MemoryCrypto.reset(); if (m_levelController){ m_levelController.destroy(); }; LevelController.attempts = 0; playLevel(); } private function handleLevelComplete(_arg1:Event):void{ m_levelController.checkMedalSecretAgent(); m_levelController.stopTimer(); clearListeners(); m_levelController.doPause(); if (m_level < (m_levels - 1)){ showEndScreen(LEVEL_COMPLETED); } else { showEndGame(); }; } public function doResume():void{ m_pause = false; m_levelController.doResume(); } private function showEndScreen(_arg1:String):void{ m_endLevel = new EndLevel(_arg1, m_levelController.time, m_levelData); addChild(m_endLevel); } public function doPause():void{ m_pause = true; m_levelController.doPause(); } private function handleGameOver(_arg1:Event):void{ alarm = true; clearListeners(); m_levelController.gameOver(); m_levelController.stopTimer(); var _local2:DelayedCall = new DelayedCall(showEndScreen, [LEVEL_FAILED], 1000); } private function showEndGame():void{ m_cutSceneController = new CutSceneController(); addChild(m_cutSceneController); GameBroadcaster.addEventListener(CutSceneEvent.DISPLAY, handleCutScene); GameBroadcaster.addEventListener(CutSceneEvent.HIDE, handleCutScene); handleCutScene(new CutSceneEvent(CutSceneEvent.DISPLAY, "assets.VideoEndSequence")); } private function playLevel():void{ if (m_endLevel){ m_endLevel.destroy(); }; alarm = false; m_levelData = new Level(m_level); GameBroadcaster.addEventListener(LevelController.COMPLETE, handleLevelComplete); GameBroadcaster.addEventListener(LevelController.ALARM, handleGameOver); m_levelController = new LevelController(); addChild(m_levelController); m_levelController.alpha = 0; m_levelController.init(m_levelData); if (!m_addedToStage){ m_addedToStage = true; TweenMax.to(m_levelController, 0.75, {delay:0.3, alpha:1, onComplete:playLevel_COMPLETE}); } else { TweenMax.to(m_levelController, 0.75, {delay:0.3, alpha:1}); }; StageReference.getStage().focus = m_levelController; } public function transitionOut():void{ TweenMax.to(this, 0.75, {alpha:0}); } private function handleCutScene(_arg1:CutSceneEvent):void{ switch (_arg1.type){ case CutSceneEvent.DISPLAY: m_cutSceneController.display(_arg1); m_levelController.alpha = 0; SoundController.getInstance().pause_music(true); break; case CutSceneEvent.HIDE: SoundController.getInstance().pause_music(false); showEndGame_COMPLETE(); break; }; } public function hide():void{ } public function nextLevel(_arg1:Event=null):void{ trace("NEXT LEVEL"); LevelController.attempts = 0; if (m_levelController){ m_levelController.destroy(); }; m_level++; playLevel(); } public function replayLevel_COMPLETE(_arg1:Event=null):void{ if (m_levelController){ m_levelController.destroy(); }; playLevel(); } public function replayLevel(_arg1:Event=null):void{ LevelController.attempts++; if (m_levelController){ TweenMax.to(m_levelController, 0.5, {alpha:0, onComplete:replayLevel_COMPLETE}); } else { replayLevel_COMPLETE(); }; } private function onReload(_arg1:ConsoleEvent):void{ m_level = int(_arg1.data); restart(); } public function transitionIn():void{ restart(); } private function showEndGame_COMPLETE():void{ showEndScreen(GAME_COMPLETED); } private function clearListeners():void{ GameBroadcaster.removeEventListener(LevelController.COMPLETE, handleLevelComplete); GameBroadcaster.removeEventListener(LevelController.ALARM, handleGameOver); } public function playLevel_COMPLETE():void{ dispatchEvent(new ConsoleEvent(ConsoleEvents.TRANSITION_COMPLETE)); } override public function destroy():void{ m_medalController.clearListeners(); GameBroadcaster.removeEventListener(CutSceneEvent.DISPLAY, handleCutScene); GameBroadcaster.removeEventListener(CutSceneEvent.HIDE, handleCutScene); GameBroadcaster.removeEventListener(LevelController.COMPLETE, handleLevelComplete); GameBroadcaster.removeEventListener(LevelController.ALARM, handleGameOver); GameBroadcaster.removeEventListener(LEVEL_COMPLETED, nextLevel); GameBroadcaster.removeEventListener(LEVEL_FAILED, replayLevel); if (m_endLevel){ m_endLevel.destroy(); }; if (m_levelController){ m_levelController.destroy(); }; if (m_cutSceneController){ m_cutSceneController.destroy(); }; super.destroy(); } } }//package gameSection 268//SoundController (game.SoundController) package game { import flash.events.*; import flash.utils.*; import com.markfennell.sound.*; import assets.*; public class SoundController { private var _sfx_door:sfx_turbolift_doorclose_01; private var m_soundsEnabled:Boolean;// = true private var _sfx_laser:sfx_auto_turret_scan_01; private var m_music_position:Number;// = 0 private var m_laserSoundPlayer:SoundPlayer; private var _sfx_alarm:sfx_SOUNDDOGS_AL_147468; private var _sfx_beep:sfx_cursor; private var m_soundsArray:Array; private var m_soundDictionary:Dictionary; private var _sfx_denied:sfx_access_denied_01; private var m_volumeEffects:Number;// = 1 private var _sfx_wall:sfx_wall_climb_02; private var _sfx_music1:sfx_MRD_intro_main; private var m_musicArray:Array; private var _sfx_music3:sfx_MRD_level_loop_3; private var _sfx_click:sfx_dry_fire_02; private var m_music:SoundPlayer; private var _sfx_switch:sfx_mech_operate_17; private var _sfx_thud1:sfx_thud2; private var _sfx_thud2:sfx_thud; private var _sfx_music4:sfx_MRD_level_loop_4; private var m_volumeMusic:Number;// = 1 private var _sfx_fall:sfx_aerial_01; public var musicEnabled:Boolean;// = true private var _sfx_console:sfx_console_entry_03; private var m_currentTrack:int;// = -1 private var _sfx_wire:sfx_wire_slice_01; private var _sfx_explode:sfx_charge_kill_stab_01; private var _sfx_slash4:sfx_machete_heavy_01; private var _sfx_slash5:sfx_staff_12; private var _sfx_whoosh1:sfx_throw_whoosh_03; private var _sfx_slash1:sfx_machete_normal_02; private var _sfx_slash2:sfx_machete_normal_04; private var _sfx_slash3:sfx_machete_normal_08; private var _sfx_grunt:sfx_tram_crash_01; private var _sfx_whoosh2:sfx_throw_whoosh_01; private var _sfx_music2:sfx_MRD_level_loop_2; private static var m_instance:SoundController = null; public function SoundController(){ m_instance = this; m_musicArray = ["assets.sfx_MRD_intro_main", "assets.sfx_MRD_level_loop_2", "assets.sfx_MRD_level_loop_3", "assets.sfx_MRD_level_loop_4"]; m_soundsArray = []; } public function setLaserVolume(_arg1:Number, _arg2:Boolean=false):void{ if (m_laserSoundPlayer){ if (!soundsEnabled){ _arg1 = 0; }; m_laserSoundPlayer.volume = (_arg1 * m_volumeEffects); }; } public function start_music(_arg1:int=0, _arg2:Boolean=false):void{ var _local3:*; trace(("STARTING MUSIC TRACK " + _arg1)); if ((((m_currentTrack == _arg1)) && (!(_arg2)))){ return; }; if (musicEnabled){ m_currentTrack = _arg1; if (m_music){ m_music.destroy(); }; _local3 = getDefinitionByName(m_musicArray[m_currentTrack]); m_music = new SoundPlayer(new (_local3)); m_music.stoppable = false; _local3 = null; m_music.play((Constants.VOLUME_MUSIC * m_volumeMusic), 999); }; } public function get volumeEffects():Number{ return (m_volumeEffects); } public function startLasers():void{ m_laserSoundPlayer = new SoundPlayer(new sfx_auto_turret_scan_01()); m_laserSoundPlayer.play(1, 999); m_laserSoundPlayer.volume = 0; } public function pause_music(_arg1:Boolean):void{ if (_arg1){ m_music.pause(); } else { m_music.resume(); }; } public function resume_music():void{ start_music(m_currentTrack, true); } public function get volumeMusic():Number{ return (m_volumeMusic); } public function stop_music():void{ m_music.stop(); } public function musicRestart(_arg1:Event):void{ if (musicEnabled){ m_music.stop(); m_music.play((Constants.VOLUME_MUSIC * m_volumeMusic), 999); }; } public function set soundsEnabled(_arg1:Boolean):void{ m_soundsEnabled = _arg1; } public function set volumeEffects(_arg1:Number):void{ m_volumeEffects = Math.max(0, Math.min(1, _arg1)); } public function stopSounds():void{ stopLasers(); SoundPlayer.stopSounds(); } public function playSound(_arg1:SoundEvent):void{ var _local2:*; var _local3:SoundPlayer; if (soundsEnabled){ if (_arg1.force){ stopSounds(); }; _local2 = getDefinitionByName(_arg1.name); _local3 = new SoundPlayer(new (_local2)); _local3.play((_arg1.volume * m_volumeEffects)); _local2 = null; }; } public function stopLasers():void{ try { m_laserSoundPlayer.stop(); m_laserSoundPlayer.destroy(); } catch(e:Error) { }; } public function resumeSounds():void{ startLasers(); } public function get soundsEnabled():Boolean{ return (m_soundsEnabled); } public function set volumeMusic(_arg1:Number):void{ m_volumeMusic = Math.max(0, Math.min(1, _arg1)); } public static function getInstance():SoundController{ if (m_instance == null){ m_instance = new (SoundController); }; return (m_instance); } } }//package gameSection 269//TweenEvent (gs.events.TweenEvent) package gs.events { import flash.events.*; public class TweenEvent extends Event { public var info:Object; public static const UPDATE:String = "update"; public static const START:String = "start"; public static const version:Number = 0.9; public static const COMPLETE:String = "complete"; public function TweenEvent(_arg1:String, _arg2:Object=null, _arg3:Boolean=false, _arg4:Boolean=false){ super(_arg1, _arg3, _arg4); this.info = _arg2; } override public function clone():Event{ return (new TweenEvent(this.type, this.info, this.bubbles, this.cancelable)); } } }//package gs.eventsSection 270//OverwriteManager (gs.OverwriteManager) package gs { import flash.utils.*; import flash.errors.*; public class OverwriteManager { public static const ALL:int = 1; public static const NONE:int = 0; public static const AUTO:int = 2; public static const CONCURRENT:int = 3; public static const version:Number = 1; public static var mode:int; public static var enabled:Boolean; public static function killVars(_arg1:Object, _arg2:Object, _arg3:Array, _arg4:Array, _arg5:Array):void{ var _local6:int; var _local7:String; _local6 = (_arg4.length - 1); while (_local6 > -1) { if (_arg1[_arg4[_local6].name] != undefined){ _arg4.splice(_local6, 1); }; _local6--; }; _local6 = (_arg3.length - 1); while (_local6 > -1) { if (_arg1[_arg3[_local6][4]] != undefined){ _arg3.splice(_local6, 1); }; _local6--; }; _local6 = (_arg5.length - 1); while (_local6 > -1) { if (_arg1[_arg5[_local6].name] != undefined){ _arg5.splice(_local6, 1); }; _local6--; }; for (_local7 in _arg1) { delete _arg2[_local7]; }; } public static function manageOverwrites(_arg1:TweenLite, _arg2:Array):void{ var _local7:int; var _local8:TweenLite; var _local9:Object; var _local10:String; var _local3:Object = _arg1.vars; var _local4:int = ((_local3.overwrite)==undefined) ? mode : int(_local3.overwrite); if ((((_local4 < 2)) || ((_arg2 == null)))){ return; }; var _local5:Number = _arg1.startTime; var _local6:Array = []; _local7 = (_arg2.length - 1); while (_local7 > -1) { _local8 = _arg2[_local7]; if (((((!((_local8 == _arg1))) && ((_local8.startTime <= _local5)))) && (((_local8.startTime + ((_local8.duration * 1000) / _local8.combinedTimeScale)) > _local5)))){ _local6[_local6.length] = _local8; }; _local7--; }; if (_local6.length == 0){ return; }; if (_local4 == AUTO){ if (_local3.isTV == true){ _local3 = _local3.exposedProps; }; _local9 = {}; for (_local10 in _local3) { if ((((((((((((((((((((((((((((((((((((((((((((_local10 == "ease")) || ((_local10 == "delay")))) || ((_local10 == "overwrite")))) || ((_local10 == "onComplete")))) || ((_local10 == "onCompleteParams")))) || ((_local10 == "runBackwards")))) || ((_local10 == "persist")))) || ((_local10 == "onUpdate")))) || ((_local10 == "onUpdateParams")))) || ((_local10 == "timeScale")))) || ((_local10 == "onStart")))) || ((_local10 == "onStartParams")))) || ((_local10 == "renderOnStart")))) || ((_local10 == "proxiedEase")))) || ((_local10 == "easeParams")))) || ((_local10 == "onCompleteAll")))) || ((_local10 == "onCompleteAllParams")))) || ((_local10 == "yoyo")))) || ((_local10 == "loop")))) || ((_local10 == "onCompleteListener")))) || ((_local10 == "onStartListener")))) || ((_local10 == "onUpdateListener")))){ } else { _local9[_local10] = 1; if (_local10 == "shortRotate"){ _local9.rotation = 1; } else { if (_local10 == "removeTint"){ _local9.tint = 1; } else { if (_local10 == "autoAlpha"){ _local9.alpha = 1; _local9.visible = 1; }; }; }; }; }; _local7 = (_local6.length - 1); while (_local7 > -1) { _local6[_local7].killVars(_local9); _local7--; }; } else { _local7 = (_local6.length - 1); while (_local7 > -1) { _local6[_local7].enabled = false; _local7--; }; }; } public static function init(_arg1:int=2):int{ if (TweenLite.version < 9.29){ trace("TweenLite warning: Your TweenLite class needs to be updated to work with OverwriteManager (or you may need to clear your ASO files). Please download and install the latest version from http://www.tweenlite.com."); }; TweenLite.overwriteManager = OverwriteManager; mode = _arg1; enabled = true; return (mode); } } }//package gsSection 271//TweenFilterLite (gs.TweenFilterLite) package gs { import flash.utils.*; import flash.filters.*; public class TweenFilterLite extends TweenLite { protected var _matrix:Array; protected var _hf:Boolean;// = false protected var _roundProps:Boolean; protected var _cmf:ColorMatrixFilter; protected var _filters:Array; protected var _endMatrix:Array; protected var _timeScale:Number; protected var _clrsa:Array; public static var removeTween:Function = TweenLite.removeTween; private static var _idMatrix:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; private static var _lumB:Number = 0.072169; public static var delayedCall:Function = TweenLite.delayedCall; public static var killTweensOf:Function = TweenLite.killTweensOf; public static var version:Number = 9.29; private static var _lumG:Number = 0.71516; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _lumR:Number = 0.212671; protected static var _globalTimeScale:Number = 1; public function TweenFilterLite(_arg1:Object, _arg2:Number, _arg3:Object){ _filters = []; super(_arg1, _arg2, _arg3); if (((!((this.combinedTimeScale == 1))) && ((this.target is TweenFilterLite)))){ _timeScale = 1; this.combinedTimeScale = _globalTimeScale; } else { _timeScale = this.combinedTimeScale; this.combinedTimeScale = (this.combinedTimeScale * _globalTimeScale); }; if (((!((this.combinedTimeScale == 1))) && (!((this.delay == 0))))){ this.startTime = (this.initTime + (this.delay * (1000 / this.combinedTimeScale))); }; if (TweenLite.version < 9.29){ trace("TweenFilterLite error! Please update your TweenLite class or try deleting your ASO files. TweenFilterLite requires a more recent version. Download updates at http://www.TweenLite.com."); }; } override public function killVars(_arg1:Object):void{ if (TweenLite.overwriteManager.enabled){ TweenLite.overwriteManager.killVars(_arg1, this.vars, this.tweens, _subTweens, ((_filters) || ([]))); }; } override public function initTweenVals(_arg1:Boolean=false, _arg2:String=""):void{ var _local3:int; var _local4:Object; var _local5:Object; var _local6:Object; var _local7:int; var _local8:String; if (((!(_arg1)) && (TweenLite.overwriteManager.enabled))){ TweenLite.overwriteManager.manageOverwrites(this, masterList[this.target]); }; _clrsa = []; _filters = []; _matrix = _idMatrix.slice(); _arg2 = (_arg2 + " blurFilter glowFilter colorMatrixFilter dropShadowFilter bevelFilter roundProps "); _roundProps = Boolean((this.vars.roundProps is Array)); if (_isDisplayObject){ if (this.vars.blurFilter != null){ _local4 = this.vars.blurFilter; addFilter("blurFilter", _local4, BlurFilter, ["blurX", "blurY", "quality"], new BlurFilter(0, 0, ((_local4.quality) || (2)))); }; if (this.vars.glowFilter != null){ _local4 = this.vars.glowFilter; addFilter("glowFilter", _local4, GlowFilter, ["alpha", "blurX", "blurY", "color", "quality", "strength", "inner", "knockout"], new GlowFilter(0xFFFFFF, 0, 0, 0, ((_local4.strength) || (1)), ((_local4.quality) || (2)), _local4.inner, _local4.knockout)); }; if (this.vars.colorMatrixFilter != null){ _local4 = this.vars.colorMatrixFilter; _local5 = addFilter("colorMatrixFilter", _local4, ColorMatrixFilter, [], new ColorMatrixFilter(_matrix)); _cmf = _local5.filter; _matrix = ColorMatrixFilter(_cmf).matrix; if (((!((_local4.matrix == null))) && ((_local4.matrix is Array)))){ _endMatrix = _local4.matrix; } else { if (_local4.relative == true){ _endMatrix = _matrix.slice(); } else { _endMatrix = _idMatrix.slice(); }; _endMatrix = setBrightness(_endMatrix, _local4.brightness); _endMatrix = setContrast(_endMatrix, _local4.contrast); _endMatrix = setHue(_endMatrix, _local4.hue); _endMatrix = setSaturation(_endMatrix, _local4.saturation); _endMatrix = setThreshold(_endMatrix, _local4.threshold); if (!isNaN(_local4.colorize)){ _endMatrix = colorize(_endMatrix, _local4.colorize, _local4.amount); } else { if (!isNaN(_local4.color)){ _endMatrix = colorize(_endMatrix, _local4.color, _local4.amount); }; }; }; _local3 = 0; while (_local3 < _endMatrix.length) { if (((!((_matrix[_local3] == _endMatrix[_local3]))) && (!((_matrix[_local3] == undefined))))){ this.tweens[this.tweens.length] = [_matrix, _local3.toString(), _matrix[_local3], (_endMatrix[_local3] - _matrix[_local3]), "colorMatrixFilter"]; }; _local3++; }; }; if (this.vars.dropShadowFilter != null){ _local4 = this.vars.dropShadowFilter; addFilter("dropShadowFilter", _local4, DropShadowFilter, ["alpha", "angle", "blurX", "blurY", "color", "distance", "quality", "strength", "inner", "knockout", "hideObject"], new DropShadowFilter(0, 45, 0, 0, 0, 0, 1, ((_local4.quality) || (2)), _local4.inner, _local4.knockout, _local4.hideObject)); }; if (this.vars.bevelFilter != null){ _local4 = this.vars.bevelFilter; addFilter("bevelFilter", _local4, BevelFilter, ["angle", "blurX", "blurY", "distance", "highlightAlpha", "highlightColor", "quality", "shadowAlpha", "shadowColor", "strength"], new BevelFilter(0, 0, 0xFFFFFF, 0.5, 0, 0.5, 2, 2, 0, ((_local4.quality) || (2)))); }; if (this.vars.runBackwards == true){ _local3 = (_clrsa.length - 1); while (_local3 > -1) { _local6 = _clrsa[_local3]; _clrsa[_local3].sr = (_local6.sr + _local6.cr); _local6.cr = (_local6.cr * -1); _local6.sg = (_local6.sg + _local6.cg); _local6.cg = (_local6.cg * -1); _local6.sb = (_local6.sb + _local6.cb); _local6.cb = (_local6.cb * -1); _local6.f[_local6.p] = (((_local6.sr << 16) | (_local6.sg << 8)) | _local6.sb); _local3--; }; }; super.initTweenVals(true, _arg2); } else { super.initTweenVals(_arg1, _arg2); }; if (_roundProps){ _local3 = (this.vars.roundProps.length - 1); while (_local3 > -1) { _local8 = this.vars.roundProps[_local3]; _local7 = (this.tweens.length - 1); while (_local7 > -1) { if ((((this.tweens[_local7][1] == _local8)) && ((this.tweens[_local7][0] == this.target)))){ this.tweens[_local7][5] = true; break; }; _local7--; }; _local3--; }; }; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; if (_arg1){ this.combinedTimeScale = (_timeScale * _globalTimeScale); }; } public function set timeScale(_arg1:Number):void{ if (_arg1 < 1E-5){ _arg1 = (_timeScale = 1E-5); } else { _timeScale = _arg1; _arg1 = (_arg1 * _globalTimeScale); }; this.initTime = ((currentTime - ((((currentTime - this.initTime) - (this.delay * (1000 / this.combinedTimeScale))) * this.combinedTimeScale) * (1 / _arg1))) - (this.delay * (1000 / _arg1))); if (this.startTime != 999999999999999){ this.startTime = (this.initTime + (this.delay * (1000 / _arg1))); }; this.combinedTimeScale = _arg1; } public function get timeScale():Number{ return (_timeScale); } override public function render(_arg1:uint):void{ var _local3:Number; var _local4:Object; var _local5:int; var _local6:Number; var _local7:int; var _local8:Array; var _local9:int; var _local2:Number = (((_arg1 - this.startTime) * 0.001) * this.combinedTimeScale); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = ((((this.ease == this.vars.ease)) || ((this.duration == 0.001)))) ? 1 : 0; } else { _local3 = this.ease(_local2, 0, 1, this.duration); }; if (!_roundProps){ _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4[0][_local4[1]] = (_local4[2] + (_local3 * _local4[3])); _local5--; }; } else { _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; if (_local4[5]){ _local6 = (_local4[2] + (_local3 * _local4[3])); _local7 = ((_local6)<0) ? -1 : 1; _local4[0][_local4[1]] = ((((_local6 % 1) * _local7))>0.5) ? (int(_local6) + _local7) : int(_local6); } else { _local4[0][_local4[1]] = (_local4[2] + (_local3 * _local4[3])); }; _local5--; }; }; if (_hf){ _local5 = (_clrsa.length - 1); while (_local5 > -1) { _local4 = _clrsa[_local5]; _local4.f[_local4.p] = ((((_local4.sr + (_local3 * _local4.cr)) << 16) | ((_local4.sg + (_local3 * _local4.cg)) << 8)) | (_local4.sb + (_local3 * _local4.cb))); _local5--; }; if (_cmf != null){ ColorMatrixFilter(_cmf).matrix = _matrix; }; _local8 = this.target.filters; _local5 = 0; while (_local5 < _filters.length) { _local9 = (_local8.length - 1); while (_local9 > -1) { if ((_local8[_local9] is _filters[_local5].type)){ _local8.splice(_local9, 1, _filters[_local5].filter); break; }; _local9--; }; _local5++; }; this.target.filters = _local8; }; if (_hst){ _local5 = (_subTweens.length - 1); while (_local5 > -1) { _subTweens[_local5].proxy(_subTweens[_local5], _local2); _local5--; }; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } private function addFilter(_arg1:String, _arg2:Object, _arg3:Class, _arg4:Array, _arg5:BitmapFilter):Object{ var _local8:int; var _local9:String; var _local10:Number; var _local11:Object; var _local12:Object; var _local6:Object = {type:_arg3, name:_arg1}; var _local7:Array = this.target.filters; _local8 = 0; while (_local8 < _local7.length) { if ((_local7[_local8] is _arg3)){ _local6.filter = _local7[_local8]; break; }; _local8++; }; if (_local6.filter == undefined){ _local6.filter = _arg5; _local7[_local7.length] = _local6.filter; this.target.filters = _local7; }; _local8 = 0; while (_local8 < _arg4.length) { _local9 = _arg4[_local8]; if (_arg2[_local9] != undefined){ if ((((((_local9 == "color")) || ((_local9 == "highlightColor")))) || ((_local9 == "shadowColor")))){ _local11 = HEXtoRGB(_local6.filter[_local9]); _local12 = HEXtoRGB(_arg2[_local9]); _clrsa[_clrsa.length] = {f:_local6.filter, p:_local9, sr:_local11.rb, cr:(_local12.rb - _local11.rb), sg:_local11.gb, cg:(_local12.gb - _local11.gb), sb:_local11.bb, cb:(_local12.bb - _local11.bb)}; } else { if ((((((((_local9 == "quality")) || ((_local9 == "inner")))) || ((_local9 == "knockout")))) || ((_local9 == "hideObject")))){ _local6.filter[_local9] = _arg2[_local9]; } else { if (typeof(_arg2[_local9]) == "number"){ _local10 = (_arg2[_local9] - _local6.filter[_local9]); } else { _local10 = Number(_arg2[_local9]); }; this.tweens[this.tweens.length] = [_local6.filter, _local9, _local6.filter[_local9], _local10, _arg1]; }; }; }; _local8++; }; _filters[_filters.length] = _local6; _hf = true; return (_local6); } public static function setHue(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 * (Math.PI / 180)); var _local3:Number = Math.cos(_arg2); var _local4:Number = Math.sin(_arg2); var _local5:Array = [((_lumR + (_local3 * (1 - _lumR))) + (_local4 * -(_lumR))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * -(_lumG))), ((_lumB + (_local3 * -(_lumB))) + (_local4 * (1 - _lumB))), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * 0.143)), ((_lumG + (_local3 * (1 - _lumG))) + (_local4 * 0.14)), ((_lumB + (_local3 * -(_lumB))) + (_local4 * -0.283)), 0, 0, ((_lumR + (_local3 * -(_lumR))) + (_local4 * -((1 - _lumR)))), ((_lumG + (_local3 * -(_lumG))) + (_local4 * _lumG)), ((_lumB + (_local3 * (1 - _lumB))) + (_local4 * _lumB)), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]; return (applyMatrix(_local5, _arg1)); } public static function setContrast(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = (_arg2 + 0.01); var _local3:Array = [_arg2, 0, 0, 0, (128 * (1 - _arg2)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg2, 0, (128 * (1 - _arg2)), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function applyMatrix(_arg1:Array, _arg2:Array):Array{ var _local6:int; var _local7:int; if (((!((_arg1 is Array))) || (!((_arg2 is Array))))){ return (_arg2); }; var _local3:Array = []; var _local4:int; var _local5:int; _local6 = 0; while (_local6 < 4) { _local7 = 0; while (_local7 < 5) { if (_local7 == 4){ _local5 = _arg1[(_local4 + 4)]; } else { _local5 = 0; }; _local3[(_local4 + _local7)] = (((((_arg1[_local4] * _arg2[_local7]) + (_arg1[(_local4 + 1)] * _arg2[(_local7 + 5)])) + (_arg1[(_local4 + 2)] * _arg2[(_local7 + 10)])) + (_arg1[(_local4 + 3)] * _arg2[(_local7 + 15)])) + _local5); _local7++; }; _local4 = (_local4 + 5); _local6++; }; return (_local3); } public static function colorize(_arg1:Array, _arg2:Number, _arg3:Number=1):Array{ if (isNaN(_arg2)){ return (_arg1); }; if (isNaN(_arg3)){ _arg3 = 1; }; var _local4:Number = (((_arg2 >> 16) & 0xFF) / 0xFF); var _local5:Number = (((_arg2 >> 8) & 0xFF) / 0xFF); var _local6:Number = ((_arg2 & 0xFF) / 0xFF); var _local7:Number = (1 - _arg3); var _local8:Array = [(_local7 + ((_arg3 * _local4) * _lumR)), ((_arg3 * _local4) * _lumG), ((_arg3 * _local4) * _lumB), 0, 0, ((_arg3 * _local5) * _lumR), (_local7 + ((_arg3 * _local5) * _lumG)), ((_arg3 * _local5) * _lumB), 0, 0, ((_arg3 * _local6) * _lumR), ((_arg3 * _local6) * _lumG), (_local7 + ((_arg3 * _local6) * _lumB)), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local8, _arg1)); } public static function setBrightness(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; _arg2 = ((_arg2 * 100) - 100); return (applyMatrix([1, 0, 0, 0, _arg2, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1], _arg1)); } public static function setSaturation(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; var _local3:Number = (1 - _arg2); var _local4:Number = (_local3 * _lumR); var _local5:Number = (_local3 * _lumG); var _local6:Number = (_local3 * _lumB); var _local7:Array = [(_local4 + _arg2), _local5, _local6, 0, 0, _local4, (_local5 + _arg2), _local6, 0, 0, _local4, _local5, (_local6 + _arg2), 0, 0, 0, 0, 0, 1, 0]; return (applyMatrix(_local7, _arg1)); } public static function setGlobalTimeScale(_arg1:Number):void{ var _local3:int; var _local4:Array; if (_arg1 < 1E-5){ _arg1 = 1E-5; }; var _local2:Dictionary = masterList; _globalTimeScale = _arg1; for each (_local4 in _local2) { _local3 = (_local4.length - 1); while (_local3 > -1) { if ((_local4[_local3] is TweenFilterLite)){ _local4[_local3].timeScale = (_local4[_local3].timeScale * 1); }; _local3--; }; }; } public static function get globalTimeScale():Number{ return (_globalTimeScale); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenFilterLite{ _arg3.runBackwards = true; return (new TweenFilterLite(_arg1, _arg2, _arg3)); } public static function set globalTimeScale(_arg1:Number):void{ setGlobalTimeScale(_arg1); } public static function HEXtoRGB(_arg1:Number):Object{ return ({rb:(_arg1 >> 16), gb:((_arg1 >> 8) & 0xFF), bb:(_arg1 & 0xFF)}); } public static function setThreshold(_arg1:Array, _arg2:Number):Array{ if (isNaN(_arg2)){ return (_arg1); }; var _local3:Array = [(_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), (_lumR * 0x0100), (_lumG * 0x0100), (_lumB * 0x0100), 0, (-256 * _arg2), 0, 0, 0, 1, 0]; return (applyMatrix(_local3, _arg1)); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenFilterLite{ return (new TweenFilterLite(_arg1, _arg2, _arg3)); } } }//package gsSection 272//TweenLite (gs.TweenLite) package gs { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; public class TweenLite { public var started:Boolean; public var delay:Number; protected var _hasUpdate:Boolean; protected var _subTweens:Array; public var initted:Boolean; public var active:Boolean; public var startTime:Number; public var target:Object; public var duration:Number; protected var _hst:Boolean; public var gc:Boolean; protected var _isDisplayObject:Boolean; public var tweens:Array; public var vars:Object; public var ease:Function; protected var _specialVars:Object; public var initTime:Number; public var combinedTimeScale:Number; private static var _timer:Timer = new Timer(2000); private static var _classInitted:Boolean; public static var defaultEase:Function = TweenLite.easeOut; public static var version:Number = 9.29; public static var masterList:Dictionary = new Dictionary(false); public static var currentTime:uint; public static var overwriteManager:Object; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; public static var timingSprite:Sprite = new Sprite(); public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ if (_arg1 == null){ return; }; if (!_classInitted){ currentTime = getTimer(); timingSprite.addEventListener(Event.ENTER_FRAME, updateAll, false, 0, true); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; _timer.addEventListener("timer", killGarbage, false, 0, true); _timer.start(); _classInitted = true; }; this.vars = _arg3; this.duration = ((_arg2) || (0.001)); this.delay = ((_arg3.delay) || (0)); this.combinedTimeScale = ((_arg3.timeScale) || (1)); this.active = Boolean((((_arg2 == 0)) && ((this.delay == 0)))); this.target = _arg1; _isDisplayObject = Boolean((_arg1 is DisplayObject)); if (!(this.vars.ease is Function)){ this.vars.ease = defaultEase; }; if (this.vars.easeParams != null){ this.vars.proxiedEase = this.vars.ease; this.vars.ease = easeProxy; }; this.ease = this.vars.ease; if (!isNaN(Number(this.vars.autoAlpha))){ this.vars.alpha = Number(this.vars.autoAlpha); this.vars.visible = Boolean((this.vars.alpha > 0)); }; _specialVars = ((this.vars.isTV)==true) ? this.vars.exposedProps : this.vars; this.tweens = []; _subTweens = []; _hst = (this.initted = false); this.initTime = currentTime; this.startTime = (this.initTime + (this.delay * 1000)); var _local4:int = ((((_arg3.overwrite == undefined)) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); if ((((masterList[_arg1] == undefined)) || (((!((_arg1 == null))) && ((_local4 == 1)))))){ masterList[_arg1] = []; }; masterList[_arg1].push(this); if ((((((this.vars.runBackwards == true)) && (!((this.vars.renderOnStart == true))))) || (this.active))){ initTweenVals(); if (this.active){ render((this.startTime + 1)); } else { render(this.startTime); }; if (((((!((_specialVars.visible == null))) && ((this.vars.runBackwards == true)))) && (_isDisplayObject))){ this.target.visible = _specialVars.visible; }; }; } public function get enabled():Boolean{ return ((this.gc) ? false : true); } public function render(_arg1:uint):void{ var _local3:Number; var _local4:Object; var _local5:int; var _local2:Number = ((_arg1 - this.startTime) * 0.001); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = ((((this.ease == this.vars.ease)) || ((this.duration == 0.001)))) ? 1 : 0; } else { _local3 = this.ease(_local2, 0, 1, this.duration); }; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4[0][_local4[1]] = (_local4[2] + (_local3 * _local4[3])); _local5--; }; if (_hst){ _local5 = (_subTweens.length - 1); while (_local5 > -1) { _subTweens[_local5].proxy(_subTweens[_local5], _local2); _local5--; }; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } public function set enabled(_arg1:Boolean):void{ var _local2:Array; var _local3:Boolean; var _local4:int; if (_arg1){ if (masterList[this.target] == undefined){ masterList[this.target] = [this]; } else { _local2 = masterList[this.target]; _local4 = (_local2.length - 1); while (_local4 > -1) { if (_local2[_local4] == this){ _local3 = true; break; }; _local4--; }; if (!_local3){ masterList[this.target].push(this); }; }; }; this.gc = (_arg1) ? false : true; if (this.gc){ this.active = false; } else { this.active = this.started; }; } public function activate():void{ this.started = (this.active = true); if (!this.initted){ initTweenVals(); }; if (this.vars.onStart != null){ this.vars.onStart.apply(null, this.vars.onStartParams); }; if (this.duration == 0.001){ this.startTime = (this.startTime - 1); }; } public function clear():void{ this.tweens = []; _subTweens = []; this.vars = {}; _hst = (_hasUpdate = false); } protected function addSubTween(_arg1:String, _arg2:Function, _arg3:Object, _arg4:Object, _arg5:Object=null):void{ var _local6:String; _subTweens[_subTweens.length] = {name:_arg1, proxy:_arg2, target:_arg3, info:_arg5}; for (_local6 in _arg4) { if (typeof(_arg4[_local6]) == "number"){ this.tweens[this.tweens.length] = [_arg3, _local6, _arg3[_local6], (_arg4[_local6] - _arg3[_local6]), _arg1]; } else { this.tweens[this.tweens.length] = [_arg3, _local6, _arg3[_local6], Number(_arg4[_local6]), _arg1]; }; }; _hst = true; } public function initTweenVals(_arg1:Boolean=false, _arg2:String=""):void{ var _local3:String; var _local4:int; var _local5:Array; var _local6:ColorTransform; var _local7:ColorTransform; var _local8:Object; if (((!(_arg1)) && (overwriteManager.enabled))){ overwriteManager.manageOverwrites(this, masterList[this.target]); }; if ((this.target is Array)){ _local5 = ((this.vars.endArray) || ([])); _local4 = 0; while (_local4 < _local5.length) { if (((!((this.target[_local4] == _local5[_local4]))) && (!((this.target[_local4] == undefined))))){ this.tweens[this.tweens.length] = [this.target, _local4.toString(), this.target[_local4], (_local5[_local4] - this.target[_local4]), _local4.toString()]; }; _local4++; }; } else { if (((((!((typeof(_specialVars.tint) == "undefined"))) || ((this.vars.removeTint == true)))) && (_isDisplayObject))){ _local6 = this.target.transform.colorTransform; _local7 = new ColorTransform(); if (_specialVars.alpha != undefined){ _local7.alphaMultiplier = _specialVars.alpha; delete _specialVars.alpha; } else { _local7.alphaMultiplier = this.target.alpha; }; if (((!((this.vars.removeTint == true))) && (((((!((_specialVars.tint == null))) && (!((_specialVars.tint == ""))))) || ((_specialVars.tint == 0)))))){ _local7.color = _specialVars.tint; }; addSubTween("tint", tintProxy, {progress:0}, {progress:1}, {target:this.target, color:_local6, endColor:_local7}); }; if (((!((_specialVars.frame == null))) && (_isDisplayObject))){ addSubTween("frame", frameProxy, {frame:this.target.currentFrame}, {frame:_specialVars.frame}, {target:this.target}); }; if (((!(isNaN(this.vars.volume))) && (this.target.hasOwnProperty("soundTransform")))){ addSubTween("volume", volumeProxy, this.target.soundTransform, {volume:this.vars.volume}, {target:this.target}); }; if (((!((_specialVars.visible == null))) && (_isDisplayObject))){ addSubTween("visible", visibleProxy, {}, {}, {tween:this}); }; for (_local3 in _specialVars) { if ((((((((((((((((((((((((((((((((((((((_local3 == "ease")) || ((_local3 == "delay")))) || ((_local3 == "overwrite")))) || ((_local3 == "onComplete")))) || ((_local3 == "onCompleteParams")))) || ((_local3 == "runBackwards")))) || ((_local3 == "visible")))) || ((_local3 == "autoOverwrite")))) || ((_local3 == "persist")))) || ((_local3 == "onUpdate")))) || ((_local3 == "onUpdateParams")))) || ((_local3 == "autoAlpha")))) || ((((_local3 == "timeScale")) && (!((this.target is TweenLite))))))) || ((_local3 == "onStart")))) || ((_local3 == "onStartParams")))) || ((_local3 == "renderOnStart")))) || ((_local3 == "proxiedEase")))) || ((_local3 == "easeParams")))) || (((_arg1) && (!((_arg2.indexOf(((" " + _local3) + " ")) == -1))))))){ } else { if (((!(((_isDisplayObject) && ((((((_local3 == "tint")) || ((_local3 == "removeTint")))) || ((_local3 == "frame"))))))) && (!((((_local3 == "volume")) && (this.target.hasOwnProperty("soundTransform"))))))){ if (typeof(_specialVars[_local3]) == "number"){ this.tweens[this.tweens.length] = [this.target, _local3, this.target[_local3], (_specialVars[_local3] - this.target[_local3]), _local3]; } else { this.tweens[this.tweens.length] = [this.target, _local3, this.target[_local3], Number(_specialVars[_local3]), _local3]; }; }; }; }; }; if (this.vars.runBackwards == true){ _local4 = (this.tweens.length - 1); while (_local4 > -1) { _local8 = this.tweens[_local4]; _local8[2] = (_local8[2] + _local8[3]); _local8[3] = (_local8[3] * -1); _local4--; }; }; if (this.vars.onUpdate != null){ _hasUpdate = true; }; this.initted = true; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } public function killVars(_arg1:Object):void{ if (overwriteManager.enabled){ overwriteManager.killVars(_arg1, this.vars, this.tweens, _subTweens, []); }; } public function complete(_arg1:Boolean=false):void{ if (!_arg1){ if (!this.initted){ initTweenVals(); }; this.startTime = (currentTime - ((this.duration * 1000) / this.combinedTimeScale)); render(currentTime); return; }; if (this.vars.persist != true){ this.enabled = false; }; if (this.vars.onComplete != null){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); }; } public static function frameProxy(_arg1:Object, _arg2:Number=0):void{ _arg1.info.target.gotoAndStop(Math.round(_arg1.target.frame)); } public static function removeTween(_arg1:TweenLite, _arg2:Boolean=true):void{ if (_arg1 != null){ if (_arg2){ _arg1.clear(); }; _arg1.enabled = false; }; } public static function visibleProxy(_arg1:Object, _arg2:Number):void{ var _local3:TweenLite = _arg1.info.tween; if (_local3.duration == _arg2){ if (((!((_local3.vars.runBackwards == true))) && ((_local3.ease == _local3.vars.ease)))){ _local3.target.visible = _local3.vars.visible; }; } else { if (_local3.target.visible != true){ _local3.target.visible = true; }; }; } public static function killTweensOf(_arg1:Object=null, _arg2:Boolean=false):void{ var _local3:Array; var _local4:int; var _local5:TweenLite; if (((!((_arg1 == null))) && (!((masterList[_arg1] == undefined))))){ _local3 = masterList[_arg1]; _local4 = (_local3.length - 1); while (_local4 > -1) { _local5 = _local3[_local4]; if (((_arg2) && (!(_local5.gc)))){ _local5.complete(false); }; _local5.clear(); _local4--; }; delete masterList[_arg1]; }; } public static function updateAll(_arg1:Event=null):void{ var _local4:Array; var _local5:int; var _local6:TweenLite; var _local2:uint = (currentTime = getTimer()); var _local3:Dictionary = masterList; for each (_local4 in _local3) { _local5 = (_local4.length - 1); while (_local5 > -1) { _local6 = _local4[_local5]; if (_local6 == null){ } else { if (_local6.active){ _local6.render(_local2); } else { if (_local6.gc){ _local4.splice(_local5, 1); } else { if (_local2 >= _local6.startTime){ _local6.activate(); _local6.render(_local2); }; }; }; }; _local5--; }; }; } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, overwrite:0})); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; return (new TweenLite(_arg1, _arg2, _arg3)); } public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function tintProxy(_arg1:Object, _arg2:Number=0):void{ var _local3:Number = _arg1.target.progress; var _local4:Number = (1 - _local3); var _local5:Object = _arg1.info.color; var _local6:Object = _arg1.info.endColor; _arg1.info.target.transform.colorTransform = new ColorTransform(((_local5.redMultiplier * _local4) + (_local6.redMultiplier * _local3)), ((_local5.greenMultiplier * _local4) + (_local6.greenMultiplier * _local3)), ((_local5.blueMultiplier * _local4) + (_local6.blueMultiplier * _local3)), ((_local5.alphaMultiplier * _local4) + (_local6.alphaMultiplier * _local3)), ((_local5.redOffset * _local4) + (_local6.redOffset * _local3)), ((_local5.greenOffset * _local4) + (_local6.greenOffset * _local3)), ((_local5.blueOffset * _local4) + (_local6.blueOffset * _local3)), ((_local5.alphaOffset * _local4) + (_local6.alphaOffset * _local3))); } public static function volumeProxy(_arg1:Object, _arg2:Number=0):void{ _arg1.info.target.soundTransform = _arg1.target; } protected static function killGarbage(_arg1:TimerEvent):void{ var _local3:Object; var _local4:Array; var _local2:Dictionary = masterList; for (_local3 in _local2) { if (_local2[_local3].length == 0){ delete _local2[_local3]; }; }; } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package gsSection 273//TweenMax (gs.TweenMax) package gs { import flash.events.*; import flash.utils.*; import gs.events.*; public class TweenMax extends TweenFilterLite implements IEventDispatcher { protected var _dispatcher:EventDispatcher; public var pauseTime:Number; protected var _callbacks:Object; protected var _repeatCount:Number; protected static const _RAD2DEG:Number = 57.2957795130823; public static var removeTween:Function = TweenLite.removeTween; private static var _overwriteMode:int = (OverwriteManager.enabled) ? OverwriteManager.mode : OverwriteManager.init(); ; protected static var _pausedTweens:Dictionary = new Dictionary(false); public static var setGlobalTimeScale:Function = TweenFilterLite.setGlobalTimeScale; public static var killTweensOf:Function = TweenLite.killTweensOf; public static var version:Number = 3.51; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; public function TweenMax(_arg1:Object, _arg2:Number, _arg3:Object){ super(_arg1, _arg2, _arg3); if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){ initDispatcher(); if ((((_arg2 == 0)) && ((this.delay == 0)))){ onUpdateDispatcher(); onCompleteDispatcher(); }; }; _repeatCount = 0; if (((!(isNaN(this.vars.yoyo))) || (!(isNaN(this.vars.loop))))){ this.vars.persist = true; }; if (TweenFilterLite.version < 9.29){ trace("TweenMax error! Please update your TweenFilterLite class or try deleting your ASO files. TweenMax requires a more recent version. Download updates at http://www.TweenMax.com."); }; } public function dispatchEvent(_arg1:Event):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.dispatchEvent(_arg1)); } public function get reversed():Boolean{ return ((this.ease == reverseEase)); } public function set reversed(_arg1:Boolean):void{ if (this.reversed != _arg1){ reverse(); }; } override public function set enabled(_arg1:Boolean):void{ if (!_arg1){ _pausedTweens[this] = null; delete _pausedTweens[this]; }; super.enabled = _arg1; } protected function onStartDispatcher(... _args):void{ if (_callbacks.onStart != null){ _callbacks.onStart.apply(null, this.vars.onStartParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.START)); } public function setDestination(_arg1:String, _arg2, _arg3:Boolean=true):void{ var _local5:Object; var _local6:int; var _local7:Object; var _local8:Array; var _local9:Array; var _local4:Number = this.progress; if (((!((this.vars[_arg1] == undefined))) && (this.initted))){ if (((!(_arg3)) && (!((_local4 == 0))))){ _local6 = (this.tweens.length - 1); while (_local6 > -1) { if (this.tweens[_local6][4] == _arg1){ this.tweens[_local6][0][this.tweens[_local6][1]] = this.tweens[_local6][2]; }; _local6--; }; }; _local5 = {}; _local5[_arg1] = 1; killVars(_local5); }; this.vars[_arg1] = _arg2; if (this.initted){ _local7 = this.vars; _local8 = this.tweens; _local9 = _subTweens; this.vars = {}; this.tweens = []; _subTweens = []; this.vars[_arg1] = _arg2; initTweenVals(); if (((!((this.ease == reverseEase))) && ((_local7.ease is Function)))){ this.ease = _local7.ease; }; if (((_arg3) && (!((_local4 == 0))))){ adjustStartValues(); }; this.vars = _local7; this.tweens = _local8.concat(this.tweens); _subTweens = _local9.concat(_subTweens); }; } override public function initTweenVals(_arg1:Boolean=false, _arg2:String=""):void{ var _local3:String; var _local4:int; var _local5:Object; var _local6:Object; var _local7:Array; var _local9:Number; _arg2 = (_arg2 + " hexColors bezier bezierThrough shortRotation orientToBezier quaternions onCompleteAll onCompleteAllParams yoyo loop onCompleteListener onUpdateListener onStartListener "); if (((!(_arg1)) && (TweenLite.overwriteManager.enabled))){ TweenLite.overwriteManager.manageOverwrites(this, masterList[this.target]); }; var _local8:Function = bezierProxy; if (this.vars.orientToBezier == true){ this.vars.orientToBezier = [["x", "y", "rotation", 0]]; _local8 = bezierProxy2; } else { if ((this.vars.orientToBezier is Array)){ _local8 = bezierProxy2; }; }; if (((!((this.vars.bezier == undefined))) && ((this.vars.bezier is Array)))){ _local6 = {}; _local7 = this.vars.bezier; _local4 = 0; while (_local4 < _local7.length) { for (_local3 in _local7[_local4]) { if (_local6[_local3] == undefined){ _local6[_local3] = [this.target[_local3]]; }; if (typeof(_local7[_local4][_local3]) == "number"){ _local6[_local3].push(_local7[_local4][_local3]); } else { _local6[_local3].push((this.target[_local3] + Number(_local7[_local4][_local3]))); }; }; _local4++; }; for (_local3 in _local6) { if (typeof(this.vars[_local3]) == "number"){ _local6[_local3].push(this.vars[_local3]); } else { _local6[_local3].push((this.target[_local3] + Number(this.vars[_local3]))); }; delete this.vars[_local3]; }; addSubTween("bezier", _local8, {t:0}, {t:1}, {props:parseBeziers(_local6, false), target:this.target, orientToBezier:this.vars.orientToBezier}); }; if (((!((this.vars.bezierThrough == undefined))) && ((this.vars.bezierThrough is Array)))){ _local6 = {}; _local7 = this.vars.bezierThrough; _local4 = 0; while (_local4 < _local7.length) { for (_local3 in _local7[_local4]) { if (_local6[_local3] == undefined){ _local6[_local3] = [this.target[_local3]]; }; if (typeof(_local7[_local4][_local3]) == "number"){ _local6[_local3].push(_local7[_local4][_local3]); } else { _local6[_local3].push((this.target[_local3] + Number(_local7[_local4][_local3]))); }; }; _local4++; }; for (_local3 in _local6) { if (typeof(this.vars[_local3]) == "number"){ _local6[_local3].push(this.vars[_local3]); } else { _local6[_local3].push((this.target[_local3] + Number(this.vars[_local3]))); }; delete this.vars[_local3]; }; addSubTween("bezierThrough", _local8, {t:0}, {t:1}, {props:parseBeziers(_local6, true), target:this.target, orientToBezier:this.vars.orientToBezier}); }; if (!isNaN(this.vars.shortRotation)){ _local9 = ((this.vars.shortRotation - this.target.rotation) % 360); if (((this.vars.shortRotation - this.target.rotation) % 360) != (_local9 % 180)){ _local9 = ((_local9)<0) ? (_local9 + 360) : (_local9 - 360); }; this.tweens[this.tweens.length] = [this.target, "rotation", this.target.rotation, _local9, "rotation"]; }; if (((!((this.vars.hexColors == undefined))) && ((typeof(this.vars.hexColors) == "object")))){ for (_local3 in this.vars.hexColors) { addSubTween("hexColors", hexColorsProxy, {r:(this.target[_local3] >> 16), g:((this.target[_local3] >> 8) & 0xFF), b:(this.target[_local3] & 0xFF)}, {r:(this.vars.hexColors[_local3] >> 16), g:((this.vars.hexColors[_local3] >> 8) & 0xFF), b:(this.vars.hexColors[_local3] & 0xFF)}, {prop:_local3, target:this.target}); }; }; super.initTweenVals(true, _arg2); } public function restart(_arg1:Boolean=false):void{ if (_arg1){ this.initTime = currentTime; this.startTime = (currentTime + (this.delay * (1000 / this.combinedTimeScale))); } else { this.startTime = currentTime; this.initTime = (currentTime - (this.delay * (1000 / this.combinedTimeScale))); }; _repeatCount = 0; if (this.target != this.vars.onComplete){ render(this.startTime); }; this.pauseTime = NaN; _pausedTweens[this] = null; delete _pausedTweens[this]; this.enabled = true; } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (_dispatcher != null){ _dispatcher.removeEventListener(_arg1, _arg2, _arg3); }; } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ if (_dispatcher == null){ initDispatcher(); }; if ((((_arg1 == TweenEvent.UPDATE)) && (!((this.vars.onUpdate == onUpdateDispatcher))))){ this.vars.onUpdate = onUpdateDispatcher; _hasUpdate = true; }; _dispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } protected function adjustStartValues():void{ var _local2:Number; var _local3:Number; var _local4:Object; var _local5:int; var _local1:Number = this.progress; if (_local1 != 0){ _local2 = (1 / (1 - this.ease((_local1 * this.duration), 0, 1, this.duration))); _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local3 = (_local4[2] + _local4[3]); _local4[3] = ((_local3 - _local4[0][_local4[1]]) * _local2); _local4[2] = (_local3 - _local4[3]); _local5--; }; }; } protected function onUpdateDispatcher(... _args):void{ if (_callbacks.onUpdate != null){ _callbacks.onUpdate.apply(null, this.vars.onUpdateParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.UPDATE)); } protected function initDispatcher():void{ var _local1:Object; var _local2:String; if (_dispatcher == null){ _dispatcher = new EventDispatcher(this); _callbacks = {onStart:this.vars.onStart, onUpdate:this.vars.onUpdate, onComplete:this.vars.onComplete}; _local1 = {}; for (_local2 in this.vars) { _local1[_local2] = this.vars[_local2]; }; this.vars = _local1; this.vars.onStart = onStartDispatcher; this.vars.onComplete = onCompleteDispatcher; if ((this.vars.onStartListener is Function)){ _dispatcher.addEventListener(TweenEvent.START, this.vars.onStartListener, false, 0, true); }; if ((this.vars.onUpdateListener is Function)){ _dispatcher.addEventListener(TweenEvent.UPDATE, this.vars.onUpdateListener, false, 0, true); this.vars.onUpdate = onUpdateDispatcher; _hasUpdate = true; }; if ((this.vars.onCompleteListener is Function)){ _dispatcher.addEventListener(TweenEvent.COMPLETE, this.vars.onCompleteListener, false, 0, true); }; }; } public function willTrigger(_arg1:String):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.willTrigger(_arg1)); } public function set progress(_arg1:Number):void{ this.startTime = (currentTime - ((this.duration * _arg1) * 1000)); this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); if (!this.started){ activate(); }; render(currentTime); if (!isNaN(this.pauseTime)){ this.pauseTime = currentTime; this.startTime = 999999999999999; this.active = false; }; } public function reverse(_arg1:Boolean=true, _arg2:Boolean=true):void{ this.ease = ((this.vars.ease)==this.ease) ? reverseEase : this.vars.ease; var _local3:Number = this.progress; if (((_arg1) && ((_local3 > 0)))){ this.startTime = (currentTime - ((((1 - _local3) * this.duration) * 1000) / this.combinedTimeScale)); this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); }; if (_arg2 != false){ if (_local3 < 1){ resume(); } else { restart(); }; }; } public function set paused(_arg1:Boolean):void{ if (_arg1){ pause(); } else { resume(); }; } public function resume():void{ this.enabled = true; if (!isNaN(this.pauseTime)){ this.initTime = (this.initTime + (currentTime - this.pauseTime)); this.startTime = (this.initTime + (this.delay * (1000 / this.combinedTimeScale))); this.pauseTime = NaN; if (((!(this.started)) && ((currentTime >= this.startTime)))){ activate(); } else { this.active = this.started; }; _pausedTweens[this] = null; delete _pausedTweens[this]; }; } public function get paused():Boolean{ return (isNaN(this.pauseTime)); } public function reverseEase(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.ease((_arg4 - _arg1), _arg2, _arg3, _arg4)); } public function killProperties(_arg1:Array):void{ var _local3:int; var _local2:Object = {}; _local3 = (_arg1.length - 1); while (_local3 > -1) { if (this.vars[_arg1[_local3]] != null){ _local2[_arg1[_local3]] = 1; }; _local3--; }; killVars(_local2); } public function hasEventListener(_arg1:String):Boolean{ if (_dispatcher == null){ return (false); }; return (_dispatcher.hasEventListener(_arg1)); } public function pause():void{ if (isNaN(this.pauseTime)){ this.pauseTime = currentTime; this.startTime = 999999999999999; this.enabled = false; _pausedTweens[this] = this; }; } override public function complete(_arg1:Boolean=false):void{ if (((((!(isNaN(this.vars.yoyo))) && ((((_repeatCount < this.vars.yoyo)) || ((this.vars.yoyo == 0)))))) || (((!(isNaN(this.vars.loop))) && ((((_repeatCount < this.vars.loop)) || ((this.vars.loop == 0)))))))){ _repeatCount++; if (!isNaN(this.vars.yoyo)){ this.ease = ((this.vars.ease)==this.ease) ? reverseEase : this.vars.ease; }; this.startTime = (_arg1) ? (this.startTime + (this.duration * (1000 / this.combinedTimeScale))) : currentTime; this.initTime = (this.startTime - (this.delay * (1000 / this.combinedTimeScale))); } else { if (this.vars.persist == true){ super.complete(_arg1); pause(); return; }; }; super.complete(_arg1); } public function invalidate(_arg1:Boolean=true):void{ var _local2:Number; if (this.initted){ _local2 = this.progress; if (((!(_arg1)) && (!((_local2 == 0))))){ this.progress = 0; }; this.tweens = []; _subTweens = []; _specialVars = ((this.vars.isTV)==true) ? this.vars.exposedProps : this.vars; initTweenVals(); _timeScale = ((this.vars.timeScale) || (1)); this.combinedTimeScale = (_timeScale * _globalTimeScale); this.delay = ((this.vars.delay) || (0)); if (isNaN(this.pauseTime)){ this.startTime = (this.initTime + ((this.delay * 1000) / this.combinedTimeScale)); }; if (((((!((this.vars.onCompleteListener == null))) || (!((this.vars.onUpdateListener == null))))) || (!((this.vars.onStartListener == null))))){ if (_dispatcher != null){ this.vars.onStart = _callbacks.onStart; this.vars.onUpdate = _callbacks.onUpdate; this.vars.onComplete = _callbacks.onComplete; _dispatcher = null; }; initDispatcher(); }; if (_local2 != 0){ if (_arg1){ adjustStartValues(); } else { this.progress = _local2; }; }; }; } public function get progress():Number{ var _local1:Number = (isNaN(this.pauseTime)) ? currentTime : this.pauseTime; var _local2:Number = (((((_local1 - this.initTime) * 0.001) - (this.delay / this.combinedTimeScale)) / this.duration) * this.combinedTimeScale); if (_local2 > 1){ return (1); }; if (_local2 < 0){ return (0); }; return (_local2); } protected function onCompleteDispatcher(... _args):void{ if (_callbacks.onComplete != null){ _callbacks.onComplete.apply(null, this.vars.onCompleteParams); }; _dispatcher.dispatchEvent(new TweenEvent(TweenEvent.COMPLETE)); } public static function sequence(_arg1:Object, _arg2:Array):Array{ var _local3:uint; while (_local3 < _arg2.length) { _arg2[_local3].target = _arg1; _local3++; }; return (multiSequence(_arg2)); } public static function bezierProxy(_arg1:Object, _arg2:Number=0):void{ var _local6:int; var _local7:String; var _local8:Object; var _local9:Number; var _local10:uint; var _local3:Number = _arg1.target.t; var _local4:Object = _arg1.info.props; var _local5:Object = _arg1.info.target; if (_local3 == 1){ for (_local7 in _local4) { _local6 = (_local4[_local7].length - 1); _local5[_local7] = _local4[_local7][_local6].e; }; } else { for (_local7 in _local4) { _local10 = _local4[_local7].length; if (_local3 < 0){ _local6 = 0; } else { if (_local3 >= 1){ _local6 = (_local10 - 1); } else { _local6 = int((_local10 * _local3)); }; }; _local9 = ((_local3 - (_local6 * (1 / _local10))) * _local10); _local8 = _local4[_local7][_local6]; _local5[_local7] = (_local8.s + (_local9 * (((2 * (1 - _local9)) * (_local8.cp - _local8.s)) + (_local9 * (_local8.e - _local8.s))))); }; }; } public static function hexColorsProxy(_arg1:Object, _arg2:Number=0):void{ _arg1.info.target[_arg1.info.prop] = uint((((_arg1.target.r << 16) | (_arg1.target.g << 8)) | _arg1.target.b)); } public static function parseBeziers(_arg1:Object, _arg2:Boolean=false):Object{ var _local3:int; var _local4:Array; var _local5:Object; var _local6:String; var _local7:Object = {}; if (_arg2){ for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 2){ _local5[_local5.length] = {s:_local4[0], cp:(_local4[1] - ((_local4[2] - _local4[0]) / 4)), e:_local4[1]}; _local3 = 1; while (_local3 < (_local4.length - 1)) { _local5[_local5.length] = {s:_local4[_local3], cp:(_local4[_local3] + (_local4[_local3] - _local5[(_local3 - 1)].cp)), e:_local4[(_local3 + 1)]}; _local3++; }; } else { _local5[_local5.length] = {s:_local4[0], cp:((_local4[0] + _local4[1]) / 2), e:_local4[1]}; }; }; } else { for (_local6 in _arg1) { _local4 = _arg1[_local6]; _local5 = []; _local7[_local6] = _local5; if (_local4.length > 3){ _local5[_local5.length] = {s:_local4[0], cp:_local4[1], e:((_local4[1] + _local4[2]) / 2)}; _local3 = 2; while (_local3 < (_local4.length - 2)) { _local5[_local5.length] = {s:_local5[(_local3 - 2)].e, cp:_local4[_local3], e:((_local4[_local3] + _local4[(_local3 + 1)]) / 2)}; _local3++; }; _local5[_local5.length] = {s:_local5[(_local5.length - 1)].e, cp:_local4[(_local4.length - 2)], e:_local4[(_local4.length - 1)]}; } else { if (_local4.length == 3){ _local5[_local5.length] = {s:_local4[0], cp:_local4[1], e:_local4[2]}; } else { if (_local4.length == 2){ _local5[_local5.length] = {s:_local4[0], cp:((_local4[0] + _local4[1]) / 2), e:_local4[1]}; }; }; }; }; }; return (_local7); } public static function bezierProxy2(_arg1:Object, _arg2:Number=0):void{ var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Array; var _local10:Number; bezierProxy(_arg1, _arg2); var _local3:Object = {}; var _local4:Object = _arg1.info.target; _arg1.info.target = _local3; _arg1.target.t = (_arg1.target.t + 0.01); bezierProxy(_arg1); var _local5:Array = _arg1.info.orientToBezier; var _local11:uint; while (_local11 < _local5.length) { _local9 = _local5[_local11]; _local10 = ((_local9[3]) || (0)); _local7 = (_local3[_local9[0]] - _local4[_local9[0]]); _local8 = (_local3[_local9[1]] - _local4[_local9[1]]); _local4[_local9[2]] = ((Math.atan2(_local8, _local7) * _RAD2DEG) + _local10); _local11++; }; _arg1.info.target = _local4; _arg1.target.t = (_arg1.target.t - 0.01); } public static function pauseAll(_arg1:Boolean=true, _arg2:Boolean=false):void{ changePause(true, _arg1, _arg2); } public static function set globalTimeScale(_arg1:Number):void{ setGlobalTimeScale(_arg1); } public static function get globalTimeScale():Number{ return (_globalTimeScale); } public static function killAllDelayedCalls(_arg1:Boolean=false):void{ killAll(_arg1, false, true); } public static function multiSequence(_arg1:Array):Array{ var _local6:Object; var _local7:Object; var _local8:Number; var _local9:Number; var _local10:uint; var _local11:Object; var _local12:String; trace("WARNING: TweenMax.multiSequence() and TweenMax.sequence() have been deprecated in favor of the much more powerful and flexible TweenGroup class. See http://blog.greensock.com/tweengroup/ for more details. Future versions of TweenMax may not include sequence() and multiSequence() (to conserve file size)."); var _local2:Dictionary = new Dictionary(); var _local3:Array = []; var _local4:int = TweenLite.overwriteManager.mode; var _local5:Number = 0; _local10 = 0; while (_local10 < _arg1.length) { _local6 = _arg1[_local10]; _local9 = ((_local6.time) || (0)); _local11 = {}; for (_local12 in _local6) { _local11[_local12] = _local6[_local12]; }; delete _local11.time; _local8 = ((_local11.delay) || (0)); _local11.delay = (_local5 + _local8); _local7 = _local11.target; delete _local11.target; if (_local4 == 1){ if (_local2[_local7] == undefined){ _local2[_local7] = _local11; } else { _local11.overwrite = 2; }; }; _local3[_local3.length] = new TweenMax(_local7, _local9, _local11); _local5 = (_local5 + (_local9 + _local8)); _local10++; }; return (_local3); } public static function getTweensOf(_arg1:Object):Array{ var _local4:TweenLite; var _local5:int; var _local2:Array = masterList[_arg1]; var _local3:Array = []; if (_local2 != null){ _local5 = (_local2.length - 1); while (_local5 > -1) { if (!_local2[_local5].gc){ _local3[_local3.length] = _local2[_local5]; }; _local5--; }; }; for each (_local4 in _pausedTweens) { if (_local4.target == _arg1){ _local3[_local3.length] = _local4; }; }; return (_local3); } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null, _arg4:Boolean=false):TweenMax{ return (new TweenMax(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, persist:_arg4, overwrite:0})); } public static function isTweening(_arg1:Object):Boolean{ var _local2:Array = getTweensOf(_arg1); var _local3:int = (_local2.length - 1); while (_local3 > -1) { if (((_local2[_local3].active) && (!(_local2[_local3].gc)))){ return (true); }; _local3--; }; return (false); } public static function killAll(_arg1:Boolean=false, _arg2:Boolean=true, _arg3:Boolean=true):void{ var _local5:Boolean; var _local6:int; var _local4:Array = getAllTweens(); _local6 = (_local4.length - 1); while (_local6 > -1) { _local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete); if ((((_local5 == _arg3)) || (!((_local5 == _arg2))))){ if (_arg1){ _local4[_local6].complete(false); _local4[_local6].clear(); } else { TweenLite.removeTween(_local4[_local6], true); }; }; _local6--; }; } public static function changePause(_arg1:Boolean, _arg2:Boolean=true, _arg3:Boolean=false):void{ var _local5:Boolean; var _local4:Array = getAllTweens(); var _local6:int = (_local4.length - 1); while (_local6 > -1) { _local5 = (_local4[_local6].target == _local4[_local6].vars.onComplete); if ((((_local4[_local6] is TweenMax)) && ((((_local5 == _arg3)) || (!((_local5 == _arg2))))))){ _local4[_local6].paused = _arg1; }; _local6--; }; } public static function callbackProxy(_arg1:Array, _arg2:Array=null):void{ var _local3:uint; while (_local3 < _arg1.length) { if (_arg1[_local3] != undefined){ _arg1[_local3].apply(null, _arg2[_local3]); }; _local3++; }; } public static function allFrom(_arg1:Array, _arg2:Number, _arg3:Object):Array{ _arg3.runBackwards = true; return (allTo(_arg1, _arg2, _arg3)); } public static function killAllTweens(_arg1:Boolean=false):void{ killAll(_arg1, true, false); } public static function getAllTweens():Array{ var _local3:Array; var _local4:int; var _local5:TweenLite; var _local1:Dictionary = masterList; var _local2:Array = []; for each (_local3 in _local1) { _local4 = (_local3.length - 1); while (_local4 > -1) { if (!_local3[_local4].gc){ _local2[_local2.length] = _local3[_local4]; }; _local4--; }; }; for each (_local5 in _pausedTweens) { _local2[_local2.length] = _local5; }; return (_local2); } public static function resumeAll(_arg1:Boolean=true, _arg2:Boolean=false):void{ changePause(false, _arg1, _arg2); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ _arg3.runBackwards = true; return (new TweenMax(_arg1, _arg2, _arg3)); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenMax{ return (new TweenMax(_arg1, _arg2, _arg3)); } public static function allTo(_arg1:Array, _arg2:Number, _arg3:Object):Array{ var _local4:int; var _local5:Object; var _local6:String; var _local7:Number; var _local8:Object; trace("WARNING: TweenMax.allTo() and TweenMax.allFrom() have been deprecated in favor of the much more powerful and flexible TweenGroup class. See http://blog.greensock.com/tweengroup/ for more details. Future versions of TweenMax may not include allTo() and allFrom() (to conserve file size)."); if (_arg1.length == 0){ return ([]); }; var _local9:Array = []; var _local10:Number = ((_arg3.delayIncrement) || (0)); delete _arg3.delayIncrement; if (_arg3.onCompleteAll == undefined){ _local8 = _arg3; } else { _local8 = {}; for (_local6 in _arg3) { _local8[_local6] = _arg3[_local6]; }; _local8.onCompleteParams = [[_arg3.onComplete, _arg3.onCompleteAll], [_arg3.onCompleteParams, _arg3.onCompleteAllParams]]; _local8.onComplete = TweenMax.callbackProxy; delete _arg3.onCompleteAll; }; delete _arg3.onCompleteAllParams; if (_local10 == 0){ _local4 = 0; while (_local4 < (_arg1.length - 1)) { _local5 = {}; for (_local6 in _arg3) { _local5[_local6] = _arg3[_local6]; }; _local9[_local9.length] = new TweenMax(_arg1[_local4], _arg2, _local5); _local4++; }; } else { _local7 = ((_arg3.delay) || (0)); _local4 = 0; while (_local4 < (_arg1.length - 1)) { _local5 = {}; for (_local6 in _arg3) { _local5[_local6] = _arg3[_local6]; }; _local5.delay = (_local7 + (_local4 * _local10)); _local9[_local9.length] = new TweenMax(_arg1[_local4], _arg2, _local5); _local4++; }; _local8.delay = (_local7 + ((_arg1.length - 1) * _local10)); }; _local9[_local9.length] = new TweenMax(_arg1[(_arg1.length - 1)], _arg2, _local8); if ((_arg3.onCompleteAllListener is Function)){ _local9[(_local9.length - 1)].addEventListener(TweenEvent.COMPLETE, _arg3.onCompleteAllListener); }; return (_local9); } } }//package gsSection 274//FlashVars (net.FlashVars) package net { import flash.display.*; public class FlashVars { private static var _data:Object; public static function getVariable(_arg1:String){ return (_data[_arg1]); } public static function initializeVariables(_arg1:DisplayObject):void{ _data = LoaderInfo(_arg1.loaderInfo).parameters; } public static function get data():Object{ return (_data); } } }//package netSection 275//User (net.User) package net { import flash.display.*; import flash.utils.*; import game.medals.*; import flash.net.*; import com.electrotank.util.*; public class User { private var m_levelsUnlocked:Array; private var _userID:String; public var userEmail:String;// = null private var m_hostName:String;// = "MRDEscape" private var _enableLogin:Boolean; private var m_so:SharedObject; private var _countryID:String; private var _username:String; public var userName:String;// = null private var m_medalsUnlocked:Array; private var m_bestScore:int; private static var _instance:User; public function User(_arg1:SingletonEnforcer){ m_so = SharedObject.getLocal(m_hostName); if (_arg1 == null){ throw (new Error("User must be implemented as a Singleton")); }; } public function get loggedIn():Boolean{ if (userID != null){ return ((userID.length > 0)); }; return (false); } public function createUser(_arg1:String, _arg2:String, _arg3:String):void{ _userID = _arg1; _username = _arg2; _countryID = _arg3; if ((((_countryID == null)) || ((_countryID.length == 0)))){ _countryID = "1"; }; } public function createFlashVarsUser(_arg1:DisplayObject, _arg2:Boolean):void{ var _local3:Object = LoaderInfo(_arg1.loaderInfo).parameters; _enableLogin = _arg2; if (_enableLogin == false){ createUser("0", "test", "1"); } else { createUser(_local3.userID, _local3.username, _local3.countryID); }; } public function saveLevels():void{ trace("Saving Levels ", m_levelsUnlocked); m_so.data.level = m_levelsUnlocked; m_so.flush(); } public function loadLevels():Array{ if (m_so.data.level == null){ m_levelsUnlocked = [false, false, false, false, false, false, false, false, false, false]; m_levelsUnlocked[0] = true; } else { m_levelsUnlocked = m_so.data.level; }; return (m_levelsUnlocked); } public function loadScore():int{ if (m_so.data.score == null){ return (0); }; return (int(m_so.data.score)); } public function saveScore():void{ if (m_so.data.score == null){ m_so.data.score = MemoryCrypto.getValue("score"); } else { if (int(MemoryCrypto.getValue("score")) > int(m_so.data.score)){ m_so.data.score = MemoryCrypto.getValue("score"); }; }; m_so.flush(); } public function get username():String{ return (_username); } public function unlockLevel(_arg1:int):void{ if (_arg1 < m_levelsUnlocked.length){ m_levelsUnlocked[_arg1] = true; saveLevels(); }; } public function get userID():String{ return (_userID); } public function get enableLogin():Boolean{ return (_enableLogin); } public function get countryID():String{ return (_countryID); } public function saveMedals(_arg1:Array):void{ m_so.data.medal = _arg1; m_so.flush(); } public function loadMedals():void{ if (m_so.data.medal == null){ m_medalsUnlocked = [false, false, false, false, false, false, false, false, false, false]; } else { m_medalsUnlocked = m_so.data.medal; }; var _local1:MedalController = new MedalController(); _local1.initMedals(m_medalsUnlocked); } public static function getInstance():User{ if (_instance == null){ _instance = new User(new SingletonEnforcer()); }; return (_instance); } } }//package net class SingletonEnforcer { private function SingletonEnforcer(){ } }Section 276//Destroyable (org.casalib.core.Destroyable) package org.casalib.core { public class Destroyable implements IDestroyable { protected var _isDestroyed:Boolean; public function get destroyed():Boolean{ return (this._isDestroyed); } public function destroy():void{ this._isDestroyed = true; } } }//package org.casalib.coreSection 277//IDestroyable (org.casalib.core.IDestroyable) package org.casalib.core { public interface IDestroyable { function get destroyed():Boolean; function destroy():void; } }//package org.casalib.coreSection 278//CasaBitmap (org.casalib.display.CasaBitmap) package org.casalib.display { import flash.display.*; import org.casalib.events.*; import org.casalib.core.*; public class CasaBitmap extends Bitmap implements IRemovableEventDispatcher, IDestroyable { protected var _isDestroyed:Boolean; protected var _listenerManager:ListenerManager; public function CasaBitmap(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); this._listenerManager = ListenerManager.getManager(this); } public function destroy():void{ this.removeEventListeners(); this._listenerManager.destroy(); this._isDestroyed = true; if (this.parent != null){ this.parent.removeChild(this); }; } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ super.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); this._listenerManager.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function removeEventsForListener(_arg1:Function):void{ this._listenerManager.removeEventsForListener(_arg1); } public function removeEventListeners():void{ this._listenerManager.removeEventListeners(); } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ super.removeEventListener(_arg1, _arg2, _arg3); this._listenerManager.removeEventListener(_arg1, _arg2, _arg3); } public function removeEventsForType(_arg1:String):void{ this._listenerManager.removeEventsForType(_arg1); } public function get destroyed():Boolean{ return (this._isDestroyed); } } }//package org.casalib.displaySection 279//CasaSprite (org.casalib.display.CasaSprite) package org.casalib.display { import flash.display.*; import org.casalib.events.*; import org.casalib.core.*; public class CasaSprite extends Sprite implements IRemovableEventDispatcher, IDestroyable { protected var _isDestroyed:Boolean; protected var _listenerManager:ListenerManager; public function CasaSprite(){ this._listenerManager = ListenerManager.getManager(this); } public function destroy():void{ this.removeEventListeners(); this._listenerManager.destroy(); this._isDestroyed = true; if (this.parent != null){ this.parent.removeChild(this); }; } override public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ super.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); this._listenerManager.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } public function removeEventsForListener(_arg1:Function):void{ this._listenerManager.removeEventsForListener(_arg1); } public function removeEventListeners():void{ this._listenerManager.removeEventListeners(); } override public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ super.removeEventListener(_arg1, _arg2, _arg3); this._listenerManager.removeEventListener(_arg1, _arg2, _arg3); } public function removeEventsForType(_arg1:String):void{ this._listenerManager.removeEventsForType(_arg1); } public function get destroyed():Boolean{ return (this._isDestroyed); } } }//package org.casalib.displaySection 280//ArguementTypeError (org.casalib.errors.ArguementTypeError) package org.casalib.errors { public class ArguementTypeError extends ArgumentError { public function ArguementTypeError(_arg1:String=null){ super(((_arg1)==null) ? "You passed an argument with an incorrect type to this method." : (("The argument type you passed for parameter \"" + _arg1) + "\" is not allowed by this method.")); } } }//package org.casalib.errorsSection 281//IRemovableEventDispatcher (org.casalib.events.IRemovableEventDispatcher) package org.casalib.events { import flash.events.*; public interface IRemovableEventDispatcher extends IEventDispatcher { function removeEventsForListener(_arg1:Function):void; function removeEventListeners():void; function removeEventsForType(_arg1:String):void; } }//package org.casalib.eventsSection 282//ListenerManager (org.casalib.events.ListenerManager) package org.casalib.events { import flash.events.*; import flash.utils.*; import org.casalib.core.*; public class ListenerManager extends Destroyable implements IRemovableEventDispatcher { protected var _blockRequest:Boolean; protected var _eventDispatcher:IEventDispatcher; protected var _events:Array; protected static var _proxyMap:Dictionary; public function ListenerManager(_arg1:EventInfo, _arg2:IEventDispatcher){ this._eventDispatcher = _arg2; this._events = new Array(); } public function dispatchEvent(_arg1:Event):Boolean{ return (this._eventDispatcher.dispatchEvent(_arg1)); } public function willTrigger(_arg1:String):Boolean{ return (this._eventDispatcher.willTrigger(_arg1)); } public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (this._blockRequest){ return; }; var _local4:EventInfo = new EventInfo(_arg1, _arg2, _arg3); var _local5:int = this._events.length; while (_local5--) { if (this._events[_local5].equals(_local4)){ this._events.splice(_local5, 1); }; }; } public function removeEventListeners():void{ var _local2:EventInfo; this._blockRequest = true; var _local1:int = this._events.length; while (_local1--) { _local2 = this._events.splice(_local1, 1)[0]; this._eventDispatcher.removeEventListener(_local2.type, _local2.listener, _local2.useCapture); }; this._blockRequest = false; } public function removeEventsForListener(_arg1:Function):void{ var _local3:EventInfo; this._blockRequest = true; var _local2:int = this._events.length; while (_local2--) { _local3 = this._events[_local2]; if (_local3.listener == _arg1){ this._events.splice(_local2, 1); this._eventDispatcher.removeEventListener(_local3.type, _local3.listener, _local3.useCapture); }; }; this._blockRequest = false; } public function hasEventListener(_arg1:String):Boolean{ return (this._eventDispatcher.hasEventListener(_arg1)); } override public function destroy():void{ this.removeEventListeners(); delete ListenerManager._proxyMap[this._eventDispatcher]; this._eventDispatcher = null; super.destroy(); } public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{ var _local6:EventInfo = new EventInfo(_arg1, _arg2, _arg3); var _local7:int = this._events.length; while (_local7--) { if (this._events[_local7].equals(_local6)){ return; }; }; this._events.push(_local6); } public function removeEventsForType(_arg1:String):void{ var _local3:EventInfo; this._blockRequest = true; var _local2:int = this._events.length; while (_local2--) { _local3 = this._events[_local2]; if (_local3.type == _arg1){ this._events.splice(_local2, 1); this._eventDispatcher.removeEventListener(_local3.type, _local3.listener, _local3.useCapture); }; }; this._blockRequest = false; } public static function getManager(_arg1:IEventDispatcher):ListenerManager{ if (ListenerManager._proxyMap == null){ ListenerManager._proxyMap = new Dictionary(); }; if (ListenerManager._proxyMap[_arg1] == null){ ListenerManager._proxyMap[_arg1] = new ListenerManager(new EventInfo(null, null, false), _arg1); }; return (ListenerManager._proxyMap[_arg1]); } } }//package org.casalib.events class EventInfo { public var listener:Function; public var type:String; public var useCapture:Boolean; private function EventInfo(_arg1:String, _arg2:Function, _arg3:Boolean){ this.type = _arg1; this.listener = _arg2; this.useCapture = _arg3; } public function equals(_arg1:EventInfo):Boolean{ return ((((((this.type == _arg1.type)) && ((this.listener == _arg1.listener)))) && ((this.useCapture == _arg1.useCapture)))); } }Section 283//Percent (org.casalib.math.Percent) package org.casalib.math { public class Percent { protected var _percent:Number; public function Percent(_arg1:Number=0, _arg2:Boolean=true){ if (_arg2){ this.decimalPercentage = _arg1; } else { this.percentage = _arg1; }; } public function set percentage(_arg1:Number):void{ this._percent = (_arg1 * 0.01); } public function clone():Percent{ return (new Percent(this.decimalPercentage)); } public function get percentage():Number{ return ((100 * this._percent)); } public function get decimalPercentage():Number{ return (this._percent); } public function set decimalPercentage(_arg1:Number):void{ this._percent = _arg1; } public function toString():String{ return (this.decimalPercentage.toString()); } public function equals(_arg1:Percent):Boolean{ return ((this.decimalPercentage == _arg1.decimalPercentage)); } } }//package org.casalib.mathSection 284//ArrayUtil (org.casalib.util.ArrayUtil) package org.casalib.util { public class ArrayUtil { protected static function _sortRandom(_arg1, _arg2):int{ return ((NumberUtil.randomIntegerWithinRange(0, 1)) ? 1 : -1); } public static function containsAll(_arg1:Array, _arg2:Array):Boolean{ var _local3:uint = _arg2.length; while (_local3--) { if (_arg1.indexOf(_arg2[_local3]) == -1){ return (false); }; }; return (true); } protected static function _removeDuplicatesFilter(_arg1, _arg2:int, _arg3:Array):Boolean{ return (((_arg2)==0) ? true : (_arg3.lastIndexOf(_arg1, (_arg2 - 1)) == -1)); } public static function equals(_arg1:Array, _arg2:Array):Boolean{ var _local3:uint = _arg1.length; if (_local3 != _arg2.length){ return (false); }; while (_local3--) { if (_arg1[_local3] != _arg2[_local3]){ return (false); }; }; return (true); } public static function getHighestValue(_arg1:Array):Number{ return (_arg1[_arg1.sort((16 | 8))[(_arg1.length - 1)]]); } public static function sum(_arg1:Array):Number{ var _local2:Number = 0; var _local3:uint = _arg1.length; while (_local3--) { _local2 = (_local2 + _arg1[_local3]); }; return (_local2); } public static function removeDuplicates(_arg1:Array):Array{ return (_arg1.filter(ArrayUtil._removeDuplicatesFilter)); } public static function containsAny(_arg1:Array, _arg2:Array):Boolean{ var _local3:uint = _arg2.length; while (_local3--) { if (_arg1.indexOf(_arg2[_local3]) != -1){ return (true); }; }; return (false); } public static function getIndexOfDifference(_arg1:Array, _arg2:Array, _arg3:uint=0):int{ var _local4:int = (_arg3 - 1); while (++_local4 < _arg1.length) { if (_arg1[_local4] != _arg2[_local4]){ return (_local4); }; }; return (-1); } public static function randomize(_arg1:Array):Array{ var _local2:Array = new Array(); var _local3:Array = _arg1.sort(ArrayUtil._sortRandom, Array.RETURNINDEXEDARRAY); var _local4 = -1; while (++_local4 < _arg1.length) { _local2.push(_arg1[_local3[_local4]]); }; return (_local2); } public static function addItemsAt(_arg1:Array, _arg2:Array, _arg3:int=2147483647):Boolean{ if (_arg2.length == 0){ return (false); }; var _local4:Array = _arg2.concat(); _local4.splice(0, 0, _arg3, 0); _arg1.splice.apply(null, _local4); return (true); } public static function removeItem(_arg1:Array, _arg2):uint{ var _local3:int = _arg1.indexOf(_arg2); var _local4:uint; while (_local3 != -1) { _arg1.splice(_local3, 1); _local3 = _arg1.indexOf(_arg2, _local3); _local4++; }; return (_local4); } public static function getLowestValue(_arg1:Array):Number{ return (_arg1[_arg1.sort((16 | 8))[0]]); } public static function retainItems(_arg1:Array, _arg2:Array):Boolean{ var _local3:Boolean; var _local4:uint = _arg1.length; while (_local4--) { if (_arg2.indexOf(_arg1[_local4]) == -1){ _arg1.splice(_local4, 1); _local3 = true; }; }; return (_local3); } public static function removeItems(_arg1:Array, _arg2:Array):Boolean{ var _local3:Boolean; var _local4:uint = _arg1.length; while (_local4--) { if (_arg2.indexOf(_arg1[_local4]) != -1){ _arg1.splice(_local4, 1); _local3 = true; }; }; return (_local3); } public static function average(_arg1:Array):Number{ if (_arg1.length == 0){ return (0); }; return ((ArrayUtil.sum(_arg1) / _arg1.length)); } public static function contains(_arg1:Array, _arg2):uint{ var _local3:int = _arg1.indexOf(_arg2, 0); var _local4:uint; while (_local3 != -1) { _local3 = _arg1.indexOf(_arg2, (_local3 + 1)); _local4++; }; return (_local4); } } }//package org.casalib.utilSection 285//FrameUtil (org.casalib.util.FrameUtil) package org.casalib.util { import flash.display.*; import org.casalib.errors.*; public class FrameUtil { public static function getFrameNumberForLabel(_arg1:MovieClip, _arg2:String):int{ var _local3:Array = _arg1.currentLabels; var _local4:int = _local3.length; while (_local4--) { if (_local3[_local4].name == _arg2){ return (_local3[_local4].frame); }; }; return (-1); } public static function removeFrameScript(_arg1:MovieClip, _arg2):void{ if ((_arg2 is String)){ _arg2 = FrameUtil.getFrameNumberForLabel(_arg1, _arg2); } else { if (!(_arg2 is uint)){ throw (new ArguementTypeError("frame")); }; }; if ((((((_arg2 == -1)) || ((_arg2 == 0)))) || ((_arg2 > _arg1.totalFrames)))){ return; }; _arg1.addFrameScript((_arg2 - 1), null); } public static function addFrameScript(_arg1:MovieClip, _arg2, _arg3:Function):Boolean{ if ((_arg2 is String)){ _arg2 = FrameUtil.getFrameNumberForLabel(_arg1, _arg2); } else { if (!(_arg2 is uint)){ throw (new ArguementTypeError("frame")); }; }; if ((((((_arg2 == -1)) || ((_arg2 == 0)))) || ((_arg2 > _arg1.totalFrames)))){ return (false); }; _arg1.addFrameScript((_arg2 - 1), _arg3); return (true); } } }//package org.casalib.utilSection 286//NumberUtil (org.casalib.util.NumberUtil) package org.casalib.util { import org.casalib.math.*; public class NumberUtil { public static function interpolate(_arg1:Percent, _arg2:Number, _arg3:Number):Number{ return ((_arg2 + ((_arg3 - _arg2) * _arg1.decimalPercentage))); } public static function isEven(_arg1:Number):Boolean{ return (((_arg1 & 1) == 0)); } public static function isOdd(_arg1:Number):Boolean{ return (!(_slot1.isEven(_arg1))); } public static function constrain(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return (Math.min(Math.max(_arg1, Math.min(_arg2, _arg3)), Math.max(_arg2, _arg3))); } public static function roundDecimalToPlace(_arg1:Number, _arg2:uint):Number{ var _local3:Number = Math.pow(10, _arg2); return ((Math.round((_arg1 * _local3)) / _local3)); } public static function max(_arg1, _arg2):Number{ if (((((isNaN(_arg1)) && (isNaN(_arg2)))) || ((((_arg1 == null)) && ((_arg2 == null)))))){ return (NaN); }; if ((((_arg1 == null)) || ((_arg2 == null)))){ return (((_arg2)==null) ? _arg1 : _arg2); }; if (((isNaN(_arg1)) || (isNaN(_arg2)))){ return ((isNaN(_arg2)) ? _arg1 : _arg2); }; return (Math.max(_arg1, _arg2)); } public static function getOrdinalSuffix(_arg1:int):String{ if ((((_arg1 >= 10)) && ((_arg1 <= 20)))){ return ("th"); }; switch ((_arg1 % 10)){ case 0: case 4: case 5: case 6: case 7: case 8: case 9: return ("th"); case 3: return ("rd"); case 2: return ("nd"); case 1: return ("st"); default: return (""); }; } public static function normalize(_arg1:Number, _arg2:Number, _arg3:Number):Percent{ return (new Percent(((_arg1 - _arg2) / (_arg3 - _arg2)))); } public static function loopIndex(_arg1:int, _arg2:uint):uint{ if (_arg1 < 0){ _arg1 = (_arg2 + (_arg1 % _arg2)); }; if (_arg1 >= _arg2){ return ((_arg1 % _arg2)); }; return (_arg1); } public static function randomWithinRange(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + (Math.random() * (_arg2 - _arg1)))); } public static function min(_arg1, _arg2):Number{ if (((((isNaN(_arg1)) && (isNaN(_arg2)))) || ((((_arg1 == null)) && ((_arg2 == null)))))){ return (NaN); }; if ((((_arg1 == null)) || ((_arg2 == null)))){ return (((_arg2)==null) ? _arg1 : _arg2); }; if (((isNaN(_arg1)) || (isNaN(_arg2)))){ return ((isNaN(_arg2)) ? _arg1 : _arg2); }; return (Math.min(_arg1, _arg2)); } public static function isInteger(_arg1:Number):Boolean{ return (((_arg1 % 1) == 0)); } public static function isPrime(_arg1:Number):Boolean{ if ((((_arg1 == 1)) || ((_arg1 == 2)))){ return (true); }; if (_slot1.isEven(_arg1)){ return (false); }; var _local2:Number = Math.sqrt(_arg1); var _local3:Number = 3; while (_local3 <= _local2) { if ((_arg1 % _local3) == 0){ return (false); }; _local3++; }; return (true); } public static function randomIntegerWithinRange(_arg1:int, _arg2:int):int{ return (Math.round(_slot1.randomWithinRange(_arg1, _arg2))); } public static function format(_arg1:Number, _arg2:uint, _arg3:String=null, _arg4:String=null):String{ var _local7:Array; var _local8:uint; var _local9:uint; var _local10:String; var _local5:String = _arg1.toString(); var _local6:uint = _local5.length; if (_arg3 != null){ _local7 = _local5.split(""); _local8 = 3; _local9 = _local7.length; while (--_local9 > 0) { --_local8; if (_local8 == 0){ _local8 = 3; _local7.splice(_local9, 0, _arg3); }; }; _local5 = _local7.join(""); }; if (_arg2 != 0){ if (_local6 < _arg2){ _arg2 = (_arg2 - _local6); _local10 = ((_arg4)==null) ? "0" : _arg4; while (_arg2--) { _local5 = (_local10 + _local5); }; }; }; return (_local5); } public static function addLeadingZero(_arg1:Number):String{ return (((_arg1)<10) ? ("0" + _arg1) : _arg1.toString()); } public static function map(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ return (_slot1.interpolate(_slot1.normalize(_arg1, _arg2, _arg3), _arg4, _arg5)); } public static function createStepsBetween(_arg1:Number, _arg2:Number, _arg3:Number):Array{ _arg3++; var _local4:uint; var _local5:Array = new Array(); var _local6:Number = ((_arg2 - _arg1) / _arg3); while (++_local4 < _arg3) { _local5.push(((_local4 * _local6) + _arg1)); }; return (_local5); } public static function isBetween(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ return (!((((_arg1 < Math.min(_arg2, _arg3))) || ((_arg1 > Math.max(_arg2, _arg3)))))); } } }//package org.casalib.utilSection 287//ObjectUtil (org.casalib.util.ObjectUtil) package org.casalib.util { import flash.utils.*; public class ObjectUtil { public static function isNull(_arg1:Object):Boolean{ return ((_arg1 === null)); } public static function isEmpty(_arg1):Boolean{ var _local2:String; if (_arg1 == undefined){ return (true); }; if ((_arg1 is Number)){ return (isNaN(_arg1)); }; if ((((_arg1 is Array)) || ((_arg1 is String)))){ return ((_arg1.length == 0)); }; if ((_arg1 is Object)){ for (_local2 in _arg1) { return (false); }; return (true); }; return (false); } public static function isUndefined(_arg1:Object):Boolean{ return ((_arg1 is undefined)); } public static function getKeys(_arg1:Object):Array{ var _local3:String; var _local2:Array = new Array(); for (_local3 in _arg1) { _local2.push(_local3); }; return (_local2); } public static function clone(_arg1:Object):Object{ var _local2:ByteArray = new ByteArray(); _local2.writeObject(_arg1); _local2.position = 0; return (_local2.readObject()); } public static function contains(_arg1:Object, _arg2:Object):Boolean{ var _local3:String; for (_local3 in _arg1) { if (_arg1[_local3] == _arg2){ return (true); }; }; return (false); } } }//package org.casalib.utilSection 288//StageReference (org.casalib.util.StageReference) package org.casalib.util { import flash.display.*; import flash.utils.*; public class StageReference { public static const STAGE_DEFAULT:String = "stageDefault"; protected static var _stageMap:Dictionary; public static function removeStage(_arg1:String="stageDefault"):Boolean{ if (_slot1._getMap()[_arg1] == null){ return (false); }; _slot1.setStage(null, _arg1); return (true); } public static function getStageId(_arg1:Stage):String{ var _local3:String; var _local2:Dictionary = _slot1._getMap(); for (_local3 in _local2) { if (_local2[_local3] == _arg1){ return (_local3); }; }; return (null); } protected static function _getMap():Dictionary{ if (_slot1._stageMap == null){ _slot1._stageMap = new Dictionary(); }; return (_slot1._stageMap); } public static function getStage(_arg1:String="stageDefault"):Stage{ if (_slot1._getMap()[_arg1] == null){ throw (new Error((("Cannot get Stage (\"" + _arg1) + "\") before it has been set."))); }; return (_slot1._getMap()[_arg1]); } public static function getIds():Array{ return (ObjectUtil.getKeys(_slot1._getMap())); } public static function setStage(_arg1:Stage, _arg2:String="stageDefault"):void{ _slot1._getMap()[_arg2] = _arg1; } } }//package org.casalib.utilSection 289//StringUtil (org.casalib.util.StringUtil) package org.casalib.util { public class StringUtil { public static var SMALL_WORDS:Array = new Array("a", "an", "and", "as", "at", "but", "by", "en", "for", "if", "in", "of", "on", "or", "the", "to", "v", "via", "vs"); public static function remove(_arg1:String, _arg2:String):String{ return (StringUtil.replace(_arg1, _arg2, "")); } public static function isLowerCase(_arg1:String):Boolean{ var _local2:Array = _arg1.split(""); var _local3:Number = _local2.length; while (_local3--) { if (_local2[_local3] != _local2[_local3].toLowerCase()){ return (false); }; }; return (true); } public static function indexOfLowerCase(_arg1:String, _arg2:uint=0):int{ var _local3:Array = _arg1.split(""); var _local4:int = (_arg2 - 1); while (++_local4 < _local3.length) { if ((((_local3[_local4] == _local3[_local4].toLowerCase())) && (!((_local3[_local4] == _local3[_local4].toUpperCase()))))){ return (_local4); }; }; return (-1); } public static function trimLeft(_arg1:String, _arg2:String=" "):String{ var _local3:RegExp = new RegExp((("^[" + _arg2) + "]+"), ""); return (_arg1.replace(_local3, "")); } public static function replaceAt(_arg1:String, _arg2:int, _arg3:String):String{ var _local4:Array = _arg1.split(""); _local4.splice(_arg2, 1, _arg3); return (_local4.join("")); } public static function getNumbersFromString(_arg1:String):String{ var _local2:RegExp = /[^0-9]/g; return (_arg1.replace(_local2, "")); } public static function isPunctuation(_arg1:String, _arg2:Boolean=true):Boolean{ if (((!((StringUtil.getNumbersFromString(_arg1).length == 0))) || (!((StringUtil.getLettersFromString(_arg1).length == 0))))){ return (false); }; if (!_arg2){ return ((_arg1.split(" ").length == 1)); }; return (true); } public static function getUniqueCharacters(_arg1:String):String{ var _local4:String; var _local2 = ""; var _local3:uint; while (_local3 < _arg1.length) { _local4 = _arg1.charAt(_local3); if (_local2.indexOf(_local4) == -1){ _local2 = (_local2 + _local4); }; _local3++; }; return (_local2); } public static function getLettersFromString(_arg1:String):String{ var _local2:RegExp = /[^A-Z^a-z]/g; return (_arg1.replace(_local2, "")); } public static function removeAt(_arg1:String, _arg2:int):String{ return (StringUtil.replaceAt(_arg1, _arg2, "")); } public static function trimRight(_arg1:String, _arg2:String=" "):String{ var _local3:RegExp = new RegExp((("[" + _arg2) + "]+$"), ""); return (_arg1.replace(_local3, "")); } public static function contains(_arg1:String, _arg2:String):uint{ var _local3:RegExp = new RegExp(_arg2, "g"); return (_arg1.match(_local3).length); } protected static function _checkWords(_arg1:String, _arg2:String, _arg3:Boolean=false, _arg4:Boolean=false):String{ var _local7:String; var _local5:Array = _arg1.split(_arg2); var _local6:int = _local5.length; while (_local6--) { _local7 = _local5[_local6]; _local5[_local6] = StringUtil._checkWord(_local7, _arg3, _arg4); }; return (_local5.join(_arg2)); } public static function removeWhitespace(_arg1:String):String{ var _local2:RegExp = new RegExp("[ \n\t\r]", "g"); return (_arg1.replace(_local2, "")); } protected static function _isSmallWord(_arg1:String):Boolean{ var _local2:int = StringUtil.SMALL_WORDS.length; _arg1 = StringUtil.getLettersFromString(_arg1); while (_local2--) { if (_arg1.toLowerCase() == StringUtil.SMALL_WORDS[_local2]){ return (true); }; }; return (false); } public static function trim(_arg1:String, _arg2:String=" "):String{ var _local3:RegExp = new RegExp((((("^[" + _arg2) + "]+|[") + _arg2) + "]+$"), "g"); return (_arg1.replace(_local3, "")); } protected static function _capitalizeFirstLetter(_arg1:String):String{ var _local2 = -1; while (++_local2 < _arg1.length) { if (!StringUtil.isPunctuation(_arg1.charAt(_local2))){ return (StringUtil.replaceAt(_arg1, _local2, _arg1.charAt(_local2).toUpperCase())); }; }; return (_arg1); } public static function toTitleCase(_arg1:String, _arg2:Boolean=true):String{ var _local5:int; _arg1 = StringUtil._checkWords(_arg1, " ", true, _arg2); var _local3:Array = _arg1.split(" "); var _local4:int = (_local3.length - 1); if (!StringUtil._isIgnoredWord(_local3[0])){ _local3[0] = StringUtil._capitalizeFirstLetter(_local3[0]); }; if (!StringUtil._isIgnoredWord(_local3[_local4])){ _local3[_local4] = StringUtil._capitalizeFirstLetter(_local3[_local4]); }; _arg1 = _local3.join(" "); if (StringUtil.contains(_arg1, ": ")){ _local5 = -1; _local3 = _arg1.split(": "); while (++_local5 < _local3.length) { _local3[_local5] = StringUtil._capitalizeFirstLetter(_local3[_local5]); }; _arg1 = _local3.join(": "); }; return (_arg1); } public static function isUpperCase(_arg1:String):Boolean{ var _local2:Array = _arg1.split(""); var _local3:Number = _local2.length; while (_local3--) { if (_local2[_local3] != _local2[_local3].toUpperCase()){ return (false); }; }; return (true); } public static function indexOfUpperCase(_arg1:String, _arg2:uint=0):int{ var _local3:Array = _arg1.split(""); var _local4:int = (_arg2 - 1); while (++_local4 < _local3.length) { if ((((_local3[_local4] == _local3[_local4].toUpperCase())) && (!((_local3[_local4] == _local3[_local4].toLowerCase()))))){ return (_local4); }; }; return (-1); } protected static function _checkWord(_arg1:String, _arg2:Boolean, _arg3:Boolean):String{ var _local4:Array; var _local5:int; var _local6:Boolean; if (StringUtil._isIgnoredWord(_arg1)){ return (_arg1); }; if (_arg3){ if (StringUtil._isSmallWord(_arg1)){ return (_arg1.toLowerCase()); }; }; if (_arg2){ _local4 = new Array("-", "–", "—"); _local5 = -1; while (++_local5 < _local4.length) { if (StringUtil.contains(_arg1, _local4[_local5]) != 0){ _arg1 = StringUtil._checkWords(_arg1, _local4[_local5], false, true); _local6 = true; }; }; if (_local6){ return (_arg1); }; }; return (StringUtil._capitalizeFirstLetter(_arg1)); } public static function replace(_arg1:String, _arg2:String, _arg3:String):String{ var _local4:RegExp = new RegExp(_arg2, "g"); return (_arg1.replace(_local4, _arg3)); } public static function removeExtraSpaces(_arg1:String):String{ var _local2:RegExp = /( )+/g; return (StringUtil.trim(_arg1.replace(_local2, " "), " ")); } protected static function _isIgnoredWord(_arg1:String):Boolean{ var _local2:int = _arg1.indexOf("."); var _local3:int = StringUtil.indexOfUpperCase(_arg1); if (((((!((_local2 == -1))) && (!((_local2 == (_arg1.length - 1)))))) || (((!((_local3 == -1))) && (!((_local3 == 0))))))){ return (true); }; return (false); } public static function addAt(_arg1:String, _arg2:int, _arg3:String):String{ var _local4:Array = _arg1.split(""); _local4.splice(_arg2, 0, _arg3); return (_local4.join("")); } } }//package org.casalib.utilSection 290//BasePage (pages.BasePage) package pages { import flash.display.*; import console.*; import gs.*; import org.casalib.display.*; import game.interfaces.*; public class BasePage extends CasaSprite implements IConsoleSection { protected var m_ui:MovieClip; public function hide():void{ } public function transitionIn_COMPLETE():void{ dispatchEvent(new ConsoleEvent(ConsoleEvents.TRANSITION_COMPLETE)); } public function doPause():void{ } protected function center():void{ m_ui.x = int((Constants.STAGE_WIDTH * 0.5)); m_ui.y = int((Constants.STAGE_HEIGHT * 0.5)); } public function doResume():void{ } public function transitionOut():void{ TweenMax.to(m_ui, 0.75, {alpha:0}); } public function transitionIn():void{ TweenMax.to(m_ui, 0.75, {alpha:1, onComplete:transitionIn_COMPLETE}); } override public function destroy():void{ if (m_ui){ TweenMax.killTweensOf(m_ui); removeChild(m_ui); m_ui = null; }; super.destroy(); } } }//package pagesSection 291//Credits (pages.Credits) package pages { import assets.pages.*; public class Credits extends BasePage { public function Credits(){ m_ui = new CreditsUI(); addChild(m_ui); m_ui.alpha = 0; center(); } } }//package pagesSection 292//Help (pages.Help) package pages { import assets.pages.*; public class Help extends BasePage { public function Help(){ m_ui = new HelpUI(); addChild(m_ui); m_ui.alpha = 0; center(); } } }//package pagesSection 293//MarvelLogin (pages.MarvelLogin) package pages { import flash.events.*; import events.*; import net.*; import gs.*; import flash.system.*; import assets.*; import com.malee.net.*; import com.malee.events.*; public class MarvelLogin extends BasePage { private var _loader:URLDataLoader; private var _username:String; private var _password:String; private var _errorMessage:String; private static const LOGIN_URL:String = "http://marvelkids.marvel.com/soap/armored_assault/login.php?action=login"; public function MarvelLogin(){ initialize(); initializeComponent(); } private function onRegister(_arg1:LoginEvent):void{ var _local2:String; var _local3:String; if (((FlashVars.data) && (FlashVars.data.ref))){ _local2 = FlashVars.data.ref; } else { _local2 = "none"; }; trace(("urlReferrer: " + _local2)); _local3 = (("javascript:loadSignup('" + _local2) + "')"); trace(_local3); getURL(_local3, "_self"); } private function onLoginComplete(_arg1:Event):void{ var _local7:Array; var _local8:String; var _local9:String; var _local2:String = _loader.data; var _local3:String = _local2.substr(1, (_local2.length - 2)); var _local4:Array = _local3.split("&"); var _local5:Object = {}; var _local6:int; while (_local6 < _local4.length) { _local7 = _local4[_local6].split("="); _local8 = _local7[0]; _local9 = _local7[1]; _local5[_local8] = _local9; _local6++; }; if (_local5.user_id.length > 0){ User.getInstance().createUser(_local5.user_id, _local5.member_name, _local5.country_id); m_ui.gotoAndPlay("success"); } else { _errorMessage = "User not found."; m_ui.gotoAndPlay("error"); }; } private function onLoginError(_arg1:ErrorEvent):void{ trace("login error", _arg1.text); _errorMessage = _arg1.text; m_ui.gotoAndPlay("error"); } private function onTransitionOut():void{ destroy(); } private function onLoginSuccess(_arg1:LoginEvent):void{ transitionOut(); dispatchEvent(_arg1); } override public function transitionIn():void{ TweenMax.to(m_ui, 0.3, {alpha:1}); } private function onSkipLogin(_arg1:LoginEvent):void{ transitionOut(); dispatchEvent(new LoginEvent(LoginEvent.LOGIN_CANCEL)); } private function initializeComponent():void{ m_ui.addEventListener(LoginEvent.INITIALIZE, onLoginInitalize); m_ui.addEventListener(LoginEvent.LOGIN, onAttemptLogin); m_ui.addEventListener(LoginEvent.SKIP, onSkipLogin); m_ui.addEventListener(LoginEvent.REGISTER, onRegister); m_ui.addEventListener(LoginEvent.LOGIN_SUCCESS, onLoginSuccess); m_ui.addEventListener(LoginEvent.LOGIN_ERROR, onLoginUIError); m_ui.addEventListener(LoginEvent.TRY_AGAIN, onLoginTryAgain); } private function onLoginInitalize(_arg1:LoginEvent):void{ if (_username != null){ m_ui.nameEntry.input.text = _username; }; if (_password != null){ m_ui.passEntry.input.text = _password; }; } private function initialize():void{ Security.allowDomain("http://marvelkids.marvel.com"); Security.allowInsecureDomain("http://marvelkids.marvel.com"); m_ui = new MarvelLoginUI(); m_ui.alpha = 0; addChild(m_ui); _loader = new URLDataLoader(); _loader.addEventListener(Event.COMPLETE, onLoginComplete, false, 0, true); _loader.addEventListener(IOErrorEvent.IO_ERROR, onLoginError, false, 0, true); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onLoginError, false, 0, true); _loader.addEventListener(TimeoutErrorEvent.TIMEOUT, onLoginError, false, 0, true); center(); } private function onLoginUIError(_arg1:LoginEvent):void{ m_ui.errorMessage.text = _errorMessage; } private function onLoginTryAgain(_arg1:LoginEvent):void{ m_ui.gotoAndPlay("main"); } override public function transitionOut():void{ TweenMax.to(m_ui, 0.3, {alpha:0, onComplete:onTransitionOut}); } private function onAttemptLogin(_arg1:LoginEvent):void{ var _local2:String = LOGIN_URL; _username = _arg1.data.username; _password = _arg1.data.password; _local2 = (_local2 + ("&user=" + _arg1.data.username)); _local2 = (_local2 + ("&pass=" + _arg1.data.password)); _loader.sendData(_local2, 3); m_ui.gotoAndPlay("login"); } } }//package pagesSection 294//Medals (pages.Medals) package pages { import game.medals.*; import assets.pages.*; public class Medals extends BasePage { private var m_medalPageDisplay:MedalPageDisplay; public function Medals(){ m_ui = new MedalsUI(); addChild(m_ui); m_ui.alpha = 0; center(); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[9], m_ui.medalNinja, m_ui.baseNinja, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[8], m_ui.medalSecret, m_ui.baseSecret, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[7], m_ui.medalIntel, m_ui.baseIntel, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[6], m_ui.medalDestroyer, m_ui.baseDestroyer, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[5], m_ui.medalSaboteur, m_ui.baseSabotuer, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[4], m_ui.medalGenius, m_ui.baseGenius, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[3], m_ui.medalMastermind, m_ui.baseMastermind, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[2], m_ui.medalScrapyard, m_ui.baseScrapyard, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[1], m_ui.medalBest, m_ui.baseBest, m_ui); m_medalPageDisplay = new MedalPageDisplay(Medal.medalArray[0], m_ui.medalWeaponX, m_ui.baseWeaponx, m_ui); } override public function hide():void{ MedalPageDisplay.destroyAll(); } override public function destroy():void{ removeChild(m_ui); m_ui = null; super.destroy(); } } }//package pagesSection 295//MutantButton (pages.MutantButton) package pages { import flash.events.*; import flash.display.*; import com.markfennell.events.*; import gs.*; import flash.filters.*; public class MutantButton { private var m_item:MovieClip; public var id:int; private var m_enabled:Boolean; public static var CLICKED:String = "MutantClicked"; public function MutantButton(_arg1:MovieClip, _arg2:int, _arg3:String){ id = _arg2; m_item = _arg1; m_item.addEventListener(MouseEvent.CLICK, handleClick); m_item.addEventListener(MouseEvent.ROLL_OUT, handleRollOut); m_item.addEventListener(MouseEvent.ROLL_OVER, handleRollOver); m_item.buttonMode = true; m_item.useHandCursor = true; } private function handleClick(_arg1:MouseEvent):void{ TweenMax.to(m_item, 0.1, {tint:0xFFFFFF}); TweenMax.to(m_item, 0.2, {alpha:1, delay:0.1}); TweenMax.to(m_item, 0.2, {delay:0.2, removeTint:true}); GameBroadcaster.dispatchEvent(new TriggerEvent(CLICKED, id)); } private function handleRollOver(_arg1:MouseEvent):void{ m_item.filters = [new GlowFilter(4294967295, 1, 4, 4, 3)]; } public function enable():void{ m_enabled = true; } public function disable():void{ m_enabled = false; } private function handleRollOut(_arg1:MouseEvent):void{ m_item.filters = []; TweenMax.to(m_item, 0.25, {delay:0.5, removeTint:true}); } } }//package pagesSection 296//Mutants (pages.Mutants) package pages { import flash.events.*; import flash.display.*; import com.markfennell.sound.*; import com.markfennell.events.*; import gs.*; import org.casalib.util.*; import assets.pages.*; public class Mutants extends BasePage { private var m_iconButton_1:MutantButton; private var m_iconButton_2:MutantButton; private var m_iconButton_3:MutantButton; private var m_max:int;// = 4 private var m_iconButton_5:MutantButton; private var m_currentPage:MovieClip; private var m_iconButton_4:MutantButton; private var m_pagesArray:Array; private var m_current:int;// = 0 private var m_stage:Stage; private var m_buttons:mutantButtons; public function Mutants(){ m_ui = new MutantsUI(); addChild(m_ui); m_ui.alpha = 0; m_ui.pageWolverine.alpha = 0; m_ui.pageCyclops.alpha = 0; m_ui.pageBeast.alpha = 0; m_ui.pageShadowcat.alpha = 0; m_ui.pageRogue.alpha = 0; m_stage = StageReference.getStage(); m_pagesArray = [m_ui.pageWolverine, m_ui.pageCyclops, m_ui.pageBeast, m_ui.pageShadowcat, m_ui.pageRogue]; center(); changePage(m_pagesArray[m_current]); m_buttons = new mutantButtons(); m_stage.addChild(m_buttons); m_buttons.alpha = 0; m_buttons.x = 370; m_buttons.y = 175; m_buttons.prev.alpha = 0; m_buttons.prev.mouseEnabled = false; m_buttons.prev.mouseChildren = false; TweenMax.to(m_buttons, 0.25, {delay:0.25, alpha:1}); m_buttons.prev.addEventListener(MouseEvent.CLICK, handlePrev); m_buttons.next.addEventListener(MouseEvent.CLICK, handleNext); m_iconButton_1 = new MutantButton(m_buttons.iconWolverine, 0, ""); m_iconButton_2 = new MutantButton(m_buttons.iconCyclops, 1, ""); m_iconButton_3 = new MutantButton(m_buttons.iconBeast, 2, ""); m_iconButton_4 = new MutantButton(m_buttons.iconShadowcat, 3, ""); m_iconButton_5 = new MutantButton(m_buttons.iconRogue, 4, ""); GameBroadcaster.addEventListener(MutantButton.CLICKED, handleIconClick); } override public function destroy():void{ m_iconButton_1 = null; m_iconButton_2 = null; m_iconButton_3 = null; m_iconButton_4 = null; m_iconButton_5 = null; m_buttons.prev.removeEventListener(MouseEvent.CLICK, handlePrev); m_buttons.next.removeEventListener(MouseEvent.CLICK, handleNext); m_stage.removeChild(m_buttons); m_stage = null; m_buttons = null; super.destroy(); } private function handleNext(_arg1:MouseEvent):void{ if (m_current < m_max){ TweenMax.to(m_buttons.prev, 0.25, {alpha:1}); m_buttons.prev.mouseEnabled = true; m_buttons.prev.mouseChildren = true; m_current++; changePage(m_pagesArray[m_current]); GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_02", 0.3, 1)); if (m_current == m_max){ TweenMax.to(m_buttons.next, 0.25, {alpha:0}); m_buttons.next.mouseEnabled = false; m_buttons.next.mouseChildren = false; }; }; } private function handleIconClick(_arg1:TriggerEvent):void{ if (_arg1.data != m_current){ GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_02", 0.5, 1)); m_current = _arg1.data; changePage(m_pagesArray[m_current]); TweenMax.to(m_buttons.next, 0.25, {alpha:1}); m_buttons.next.mouseEnabled = true; m_buttons.next.mouseChildren = true; TweenMax.to(m_buttons.prev, 0.25, {alpha:1}); m_buttons.prev.mouseEnabled = true; m_buttons.prev.mouseChildren = true; if (m_current == 0){ TweenMax.to(m_buttons.prev, 0.25, {alpha:0}); m_buttons.prev.mouseEnabled = false; m_buttons.prev.mouseChildren = false; }; if (m_current == m_max){ TweenMax.to(m_buttons.next, 0.25, {alpha:0}); m_buttons.next.mouseEnabled = false; m_buttons.next.mouseChildren = false; }; }; } override public function hide():void{ trace("Hide Buttons Called"); TweenMax.to(m_buttons, 0.25, {alpha:0}); } public function changePage_COMPLETE(_arg1:MovieClip):void{ _arg1.alpha = 0; _arg1.visible = true; TweenMax.to(_arg1, 0.2, {tint:0xFFFFFF}); TweenMax.to(_arg1, 0.25, {alpha:1, delay:0.2}); TweenMax.to(_arg1, 0.25, {delay:0.5, removeTint:true}); m_currentPage = _arg1; } public function changePage(_arg1:MovieClip):void{ if (m_currentPage != null){ m_currentPage.visible = false; }; changePage_COMPLETE(_arg1); } private function handlePrev(_arg1:MouseEvent):void{ if (m_current >= 0){ TweenMax.to(m_buttons.next, 0.25, {alpha:1}); m_buttons.next.mouseEnabled = true; m_buttons.next.mouseChildren = true; m_current--; changePage(m_pagesArray[m_current]); GameBroadcaster.dispatchEvent(new SoundEvent(SoundEvent.EFFECT, "assets.sfx_machete_normal_02", 0.3, 1)); if (m_current == 0){ TweenMax.to(m_buttons.prev, 0.25, {alpha:0}); m_buttons.prev.mouseEnabled = false; m_buttons.prev.mouseChildren = false; }; }; } } }//package pagesSection 297//SubmitScore (pages.SubmitScore) package pages { import flash.events.*; import console.*; import events.*; import net.*; import gs.*; import flash.text.*; import assets.pages.*; import com.electrotank.util.*; import com.malee.utils.*; import com.malee.net.*; public class SubmitScore extends BasePage { private var _loader:URLDataLoader; private static const DEFAULT_NAME:String = "ENTER NAME"; public function SubmitScore(){ initialize(); initializeComponent(); } override public function transitionOut():void{ TweenMax.to(m_ui, 0.5, {alpha:0, onComplete:onTransitionOut}); } private function checkName(_arg1:String):Boolean{ var _local2 = (_arg1.length > 0); var _local3 = (FormUtil.isBadLanguage(_arg1, FormUtil.BAD_ALL) == false); var _local4 = !((_arg1 == DEFAULT_NAME)); if (((((_local2) && (_local3))) && (_local4))){ return (true); }; return (false); } private function onScoreSent(_arg1:Event):void{ m_ui.gotoAndPlay("success"); } private function onOpenLogin(_arg1:LoginEvent):void{ var _local2:MarvelLogin = new MarvelLogin(); addChild(_local2); _local2.transitionIn(); _local2.addEventListener(LoginEvent.LOGIN_CANCEL, onLoginEnd); _local2.addEventListener(LoginEvent.LOGIN_SUCCESS, onLoginEnd); m_ui.mouseEnabled = (m_ui.mouseChildren = false); } override public function transitionIn():void{ TweenMax.to(m_ui, 0.5, {alpha:1}); } private function onSendScore(_arg1:UIEvent):void{ _loader.sendData("http://stats.soap.com.au/highscore/engine_mofo.php"); } private function onSubmitSuccess(_arg1:UIEvent):void{ transitionOut(); dispatchEvent(_arg1); } private function initializeComponent():void{ if (User.getInstance().loggedIn == false){ m_ui.gotoAndPlay("formSmall"); } else { m_ui.gotoAndPlay("form"); }; } private function onTransitionOut():void{ destroy(); } private function onShowForm(_arg1:UIEvent):void{ m_ui.score.text = TextUtil.formatScoreComma(MemoryCrypto.getValue("score")); if (User.getInstance().loggedIn == true){ if (User.getInstance().enableLogin == true){ m_ui.nameField.type = TextFieldType.DYNAMIC; m_ui.nameField.text = User.getInstance().username.toUpperCase(); m_ui.nameField.selectable = false; } else { m_ui.nameField.type = TextFieldType.INPUT; m_ui.nameField.text = DEFAULT_NAME; m_ui.nameField.selectable = true; }; }; } private function initialize():void{ m_ui = new SubmitScoreUI(); addChild(m_ui); m_ui.alpha = 0; m_ui.addEventListener(UIEvent.SUBMIT_SCORE_FORM, onShowForm); m_ui.addEventListener(UIEvent.SUBMIT_SCORE, onSubmitScore); m_ui.addEventListener(UIEvent.SEND_SCORE, onSendScore); m_ui.addEventListener(UIEvent.SUBMIT_SCORE_SUCCESS, onSubmitSuccess); m_ui.addEventListener(UIEvent.SUBMIT_SCORE_AGAIN, onSubmitAgain); m_ui.addEventListener(UIEvent.CLOSE, onCloseForm); m_ui.addEventListener(LoginEvent.OPEN_LOGIN, onOpenLogin); _loader = new URLDataLoader(); _loader.addEventListener(Event.COMPLETE, onScoreSent, false, 0, true); _loader.addEventListener(IOErrorEvent.IO_ERROR, onScoreSendError, false, 0, true); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onScoreSendError, false, 0, true); center(); } private function onLoginEnd(_arg1:LoginEvent):void{ initializeComponent(); m_ui.mouseEnabled = (m_ui.mouseChildren = true); } private function onScoreSendError(_arg1:ErrorEvent):void{ trace("score send error", _arg1.text); m_ui.gotoAndPlay("error"); } private function onSubmitAgain(_arg1:UIEvent):void{ m_ui.gotoAndPlay("submit"); } private function onSubmitScore(_arg1:UIEvent):void{ var _local2:String; if (User.getInstance().enableLogin == true){ _local2 = User.getInstance().username; } else { _local2 = m_ui.nameField.text.toUpperCase(); if (checkName(_local2) == false){ return; }; }; var _local3:int = (Math.random() * 100000); var _local4:int = (Math.random() * 100000); var _local5 = (((_local3 + "noemail@www") + _local4) + ".com"); trace(("SUBMIT SCORE : " + MemoryCrypto.getValue("score"))); Console.GoogleAnalytics.trackEvent("MRD_Escape", "submit score", "submitted", Number(MemoryCrypto.getValue("score"))); _loader.clearVariables(); _loader.addVariable("intGameId", 34); _loader.addVariable("intScore", MemoryCrypto.getValue("score")); _loader.addVariable("strName", _local2); _loader.addVariable("strEmail", _local5); _loader.addVariable("strMisc1", User.getInstance().countryID); _loader.addVariable("strMisc4", User.getInstance().userID); m_ui.gotoAndPlay("submit"); } override public function destroy():void{ dispatchEvent(new UIEvent(UIEvent.CLOSE)); super.destroy(); } private function onCloseForm(_arg1:UIEvent):void{ transitionOut(); } } }//package pagesSection 298//Title (pages.Title) package pages { import flash.events.*; import com.malee.loaders.*; import assets.pages.*; public class Title extends BasePage { private var _sponsorLoaded:Boolean; private var _requestPlay:Boolean; private var _sponsorLogo:AssetLoader; public function Title(){ m_ui = new TitleUI(); addChild(m_ui); m_ui.alpha = 0; m_ui.stop(); m_ui.x = 10; m_ui.y = 66; _sponsorLoaded = false; _requestPlay = false; _sponsorLogo = new AssetLoader(); _sponsorLogo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onSponsorError, false, 0, true); _sponsorLogo.addEventListener(IOErrorEvent.IO_ERROR, onSponsorError, false, 0, true); _sponsorLogo.addEventListener(Event.COMPLETE, onSponsorLoaded, false, 0, true); _sponsorLogo.loadData((Main.SPONSOR_URL + "sponsor.swf")); trace("Loading ", (Main.SPONSOR_URL + "sponsor.swf")); } private function onSponsorLoaded(_arg1:Event):void{ m_ui.sponsor.addChild(_sponsorLogo.content); _sponsorLoaded = true; if (_requestPlay == true){ m_ui.gotoAndPlay("intro"); }; } private function onSponsorError(_arg1:ErrorEvent):void{ _sponsorLoaded = true; if (_requestPlay == true){ m_ui.gotoAndPlay("intro"); }; } public function playIntro():void{ _requestPlay = true; if (_sponsorLoaded == true){ m_ui.gotoAndPlay("intro"); }; } } }//package pagesSection 299//AbstractPreloader (preloader.AbstractPreloader) package preloader { import flash.events.*; import flash.display.*; import flash.utils.*; public class AbstractPreloader extends MovieClip { private var USE_EXTERNAL:Boolean;// = true private var m_loadTime:int; protected var VALID_URL:Array; private var m_firstEnterFrame:Boolean; public function AbstractPreloader(){ addEventListener(Event.ADDED_TO_STAGE, handleOnAddedToStage); stop(); } protected function endLoading():void{ } public function start():void{ trace("start"); m_firstEnterFrame = true; addEventListener(Event.ENTER_FRAME, onEnterFrame); } protected function updateLoading(_arg1:Number):void{ } private function handleOnAddedToStage(_arg1:Event):void{ stage.scaleMode = StageScaleMode.EXACT_FIT; stage.align = StageAlign.TOP_LEFT; m_loadTime = getTimer(); } protected function run():void{ var _local4:Class; var _local5:DisplayObject; var _local1:String = root.loaderInfo.url; var _local2:Boolean; var _local3:int; while (_local3 < VALID_URL.length) { if (_local1.indexOf(VALID_URL[_local3]) != -1){ _local2 = true; break; }; _local3++; }; if (_local2){ _local4 = (getDefinitionByName(mainClassName) as Class); if (_local4 == null){ throw (new Error("AbstractPreloader:initialize. There was no class matching that name. Did you remember to override mainClassName?")); }; _local5 = (new (_local4) as DisplayObject); if (_local5 == null){ throw (new Error("AbstractPreloader:initialize. Main class needs to inherit from Sprite or MovieClip.")); }; _local4.loadTime = int(((getTimer() - m_loadTime) / 1000)); if (((!((_local1.indexOf("mofo") == -1))) || (!((_local1.indexOf("file") == -1))))){ _local4.SPONSOR_URL = "http://littlemofo.soap.com.au/marvel/mrdescape/"; } else { _local4.SPONSOR_URL = "http://marvelkids.com/games/Wolverine_MRD_Escape/"; }; addChildAt(_local5, 0); }; } private function onEnterFrame(_arg1:Event):void{ var _local2:Number; if (m_firstEnterFrame){ m_firstEnterFrame = false; if (root.loaderInfo.bytesLoaded >= root.loaderInfo.bytesTotal){ removeEventListener(Event.ENTER_FRAME, onEnterFrame); nextFrame(); run(); } else { beginLoading(); }; return; }; if (root.loaderInfo.bytesLoaded >= root.loaderInfo.bytesTotal){ removeEventListener(Event.ENTER_FRAME, onEnterFrame); nextFrame(); run(); endLoading(); } else { _local2 = (root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal); updateLoading(_local2); }; } protected function beginLoading():void{ } protected function get mainClassName():String{ return ("Main"); } } }//package preloaderSection 300//AbstractPreloaderView (preloader.AbstractPreloaderView) package preloader { import flash.events.*; import com.malee.events.*; import flash.display.*; import assets.*; import com.malee.soap.*; import game.levels.*; import com.malee.loaders.*; public class AbstractPreloaderView extends AbstractPreloader { private var m_ui:Preloader; private var m_menu:SoapMenu; private var m_embedded:Boolean;// = true public function AbstractPreloaderView(){ trace("AbstractPreloaderView"); stop(); VALID_URL = ["lilmofo", "", "http://127.0.0.1", "", "", "file://"]; m_ui = new Preloader(); m_ui.x = 365; m_ui.y = 236; addChild(m_ui); m_menu = new SoapMenu(this); m_menu.addItem("v 1.0"); super.start(); } override protected function endLoading():void{ } private function onDataComplete(_arg1:Event=null):void{ super.start(); } private function onLevelLoaded(_arg1:LoaderEvent):void{ var _local2:XMLLoader = (_arg1.item as XMLLoader); var _local3:LevelXML = new LevelXML(_local2.url, _local2.xml); } override protected function beginLoading():void{ trace("begin Loading"); } override protected function run():void{ removeChild(m_ui); m_ui = null; super.run(); } override protected function updateLoading(_arg1:Number):void{ var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local2:int = (104 / 2); var _local3:Number = (_arg1 * (Math.PI * 2)); var _local4:int = (1 + ((_local3 / Math.PI) * 30)); m_ui.bar.graphics.clear(); m_ui.bar.graphics.lineStyle(6, 0xFF0000, 1, false, "normal", CapsStyle.SQUARE); m_ui.bar.graphics.moveTo(0, -(_local2)); var _local5:int; while (_local5 <= _local4) { _local6 = ((_local5 / _local4) * _local3); _local7 = (_local6 - (Math.PI / 2)); _local8 = (Math.cos(_local7) * _local2); _local9 = (Math.sin(_local7) * _local2); m_ui.bar.graphics.lineTo(_local8, _local9); _local5++; }; } private function onAllLevelsLoaded(_arg1:Event):void{ onDataComplete(); } } }//package preloaderSection 301//Constants (Constants) package { import flash.net.*; public class Constants { public static const FLOOR_THICKNESS:int = 19; public static const STAGE_WIDTH:int = 730; public static const FRAME_RATE:int = 31; public static const STAGE_HEIGHT:int = 472; public static const TILE_SIZE:int = 118; public static const BOUNDS:Boolean = false; public static var URL_XMEN:URLRequest = new URLRequest("http://marvelkids.marvel.com/shows/Wolverine_and_the_X-Men?utm_source=games&utm_medium=link_marvelkids&utm_content=MRDEscape&utm_campaign=MarvelGames2009"); public static var POINTS_ALARM:int = -500; public static var URL_MARVELKIDS:URLRequest = new URLRequest("http://marvelkids.marvel.com/?utm_source=games&utm_medium=link_marvelkids&utm_content=MRDEscape&utm_campaign=MarvelGames2009"); public static var VOLUME_MUSIC:Number = 1; public static var POINTS_TIME:int = 1; public static var GOOGLE:String = "UA-273913-11"; public static var URL_MOREGAMES:URLRequest = new URLRequest("http://marvelkids.marvel.com/games/?utm_source=games&utm_medium=link_moregames&utm_content=MRDEscape&utm_campaign=MarvelGames2009"); } }//packageSection 302//EmbeddedData (EmbeddedData) package { import flash.events.*; import game.levels.*; public class EmbeddedData { private var m_levelsXML:XML; private static var _levels:Array = []; public function EmbeddedData(){ m_levelsXML = <levels> <level> <name>The Escape (Tutorial)</name> <description>Level 1: Learn how to escape. Use the space bar to access the info panels.</description> <start x="1" y="2"/> <time>5000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>20,16,16,16,1,1,1,16,16,16,16,16,21</data> <data>20,1,1,1,3,12,3,1,1,1,1,16,21</data> <data>20,2,2,2,13,16,8,13,2,2,8,16,21</data> <data>20,16,16,16,16,16,16,16,16,16,16,16,21</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,3,1,1,1,1,1,1,1</data> <data>1,1,3,3,1,1,1,3,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,3,2,3,1,1,1,1,1,1</data> <data>1,2,2,2,2,1,2,2,2,2,2,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorSingleSteelUI" x="1" y="2" id="0" goto="0" locked="true" range="25"/> <door asset="assets.DoorSingleSteelExitUI" x="10" y="2" id="1" goto="-1" locked="false" range="25"/> </doors> <switches/> <lasers> <laser asset="assets.LaserBigUI" x="8" y="2" id="0" isOn="true" range="20" time="1000" move="0" rate="0"/> </lasers> <sensors/> <cameras/> <guards/> <keypads> <keypad asset="assets.TerminalUI" x="6" y="1" id="0" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="250"><![CDATA[Wolverine can jump down through dark platforms. Press the down key to drop down to the platform below.<BR>Use space to close panels.]]></keypad> <keypad asset="assets.TerminalUI" x="4" y="2" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="250"><![CDATA[Wolverine can jump up through dark platforms. Press the up key to jump to the platform above.]]></keypad> <keypad asset="assets.TerminalUI" x="7" y="2" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="500"><![CDATA[Along the way, Wolverine will encounter obstacles. Wait until the laser is disabled and run through.]]></keypad> <keypad asset="assets.TerminalUI" x="9" y="2" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="500"><![CDATA[Doors with a green light are unlocked. Tap SPACE to enter unlocked doors.]]></keypad> </keypads> <mutants> <!-- <mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/> --> </mutants> </level> <level> <name>Using Skills (Tutorial)</name> <description>Level 2: Use Wolverine’s skills to finish the level.</description> <start x="8" y="1"/> <time>20000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>20,1,1,1,1,16,16,1,1,1,21</data> <data>20,3,2,2,2,4,4,2,2,2,21</data> <data>20,8,3,1,1,1,1,1,1,1,21</data> <data>20,16,2,2,2,2,8,2,2,3,21</data> <data>20,16,16,16,16,16,2,2,2,10,21</data> <data>20,16,16,16,16,16,16,16,16,16,21</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,4</data> <data>1,1,1,3,2,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,2,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,2,2,2,4,4,2,2,2,1</data> <data>1,2,3,1,1,1,1,1,1,1,1</data> <data>1,1,2,2,2,2,2,2,2,3,1</data> <data>1,1,1,1,1,1,2,2,2,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorSingleSteelUI" x="8" y="1" id="0" goto="0" locked="true" range="25"/> <door asset="assets.DoorSingleSteelExitUI" x="6" y="4" id="1" goto="-1" locked="true" range="25"/> </doors> <switches> <switch asset="assets.SwitchUI" x="7" y="4" id="0" goto="1" type="door" isOn="false" range="15" canToggle="true"/> </switches> <lasers> <laser asset="assets.LaserBigUI" x="2" y="1" id="0" isOn="true" range="20" time="2000" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="4" y="3" id="0" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="5" y="3" id="1" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorTopUI" x="8" y="3" id="2" isOn="true" range="50" time="0" attach="top"/> <sensor asset="assets.SensorTopUI" x="9" y="3" id="3" isOn="true" range="50" time="0" attach="top"/> </sensors> <cameras/> <guards/> <keypads> <keypad asset="assets.TerminalUI" x="7" y="1" id="0" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="200"><![CDATA[Wolverine can crouch and crawl. Press the down key while moving to crawl through the small space to the left.]]></keypad> <keypad asset="assets.TerminalUI" x="3" y="3" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="200"><![CDATA[Wolverine can use his claws to attach himself to a solid ceiling. Press the up key to perform the move and move past the floor sensors.]]></keypad> <keypad asset="assets.TerminalUI" x="7" y="3" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="200"><![CDATA[Some sensors will be attached to the ceiling, preventing Wolverine from using his claws.]]></keypad> <keypad asset="assets.TerminalUI" x="8" y="4" id="3" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="500"><![CDATA[Wolverine can use switches to control different sorts of objects in the game. Press the space bar to flick switches.]]></keypad> </keypads> <mutants> <!-- <mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/> --> </mutants> </level> <level> <name>Be the Shadows (Tutorial)</name> <description>Level 3: Disable the security systems to finish the level.</description> <start x="9" y="4"/> <time>20000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>20,1,1,1,1,16,16,16,16,16,16,16,16,16,16,21</data> <data>20,2,2,2,3,16,16,16,16,16,16,16,16,16,16,21</data> <data>20,16,16,16,3,16,16,16,16,16,16,16,16,16,16,21</data> <data>20,16,16,16,3,1,1,16,16,16,16,16,16,16,16,21</data> <data>20,1,1,15,8,2,2,7,2,2,16,16,16,16,16,21</data> <data>20,13,13,13,13,13,13,9,17,16,16,16,16,16,16,21</data> <data>20,16,16,16,16,16,16,16,17,1,1,1,1,1,16,21</data> <data>20,16,16,16,16,16,16,16,13,2,13,13,2,17,16,21</data> <data>20,16,16,16,16,16,16,16,13,13,11,13,13,13,16,21</data> <data>20,16,16,16,16,16,16,16,16,13,2,13,13,13,16,21</data> <data>20,16,16,16,16,16,16,16,16,16,16,16,16,16,16,21</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,4</data> <data>1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,2,1,1,3,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,2,2,2,3,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1</data> <data>1,2,2,2,2,2,2,2,3,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,2,2,2,2,2,3,1,1</data> <data>1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1</data> <data>1,1,1,1,1,1,1,1,1,2,2,2,2,2,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorSingleSteelUI" x="1" y="1" id="0" goto="2" locked="true" range="25"/> <door asset="assets.DoorSingleSteelUI" x="9" y="4" id="1" goto="0" locked="true" range="25"/> <door asset="assets.DoorSingleSteelUI" x="1" y="5" id="2" goto="0" locked="true" range="25"/> <door asset="assets.DoorSingleSteelUI" x="8" y="8" id="3" goto="4" locked="false" range="25"/> <door asset="assets.DoorSingleSteelUI" x="9" y="9" id="4" goto="3" locked="true" range="25"/> <door asset="assets.DoorDoubleSteelExitUI" x="11" y="9" id="5" goto="-1" locked="true" range="50"/> </doors> <switches> <switch asset="assets.SwitchUI" x="12" y="8" id="0" goto="1" type="camera" isOn="false" range="15" canToggle="true"/> </switches> <lasers> <laser asset="assets.LaserBigUI" x="4" y="5" id="0" isOn="true" range="20" time="0" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="6" y="4" id="0" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="12" y="9" id="1" isOn="true" range="50" time="0" attach="bottom"/> </sensors> <cameras> <camera asset="assets.CameraRightUI" x="11" y="7" id="0" isOn="true" range="200" time="2000" face="left"/> <camera asset="assets.CameraLeftUI" x="11" y="8" id="1" isOn="true" range="200" time="0" face="right"/> </cameras> <guards/> <keypads> <keypad asset="assets.KeypadUI" x="2" y="1" id="0" goto="0" type="door" isOn="false" range="15" miniGame="MiniGameKeypad" correct="1234" canToggle="false" points="200"><![CDATA[Door access granted.]]></keypad> <keypad asset="assets.TerminalUI" x="3" y="1" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Security is tight, so you might need to use more advanced methods to advance. To use keypads, press the space bar and enter the code you have found. The code for this door is 1234]]></keypad> <keypad asset="assets.TerminalUI" x="2" y="5" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Wolverine can cut wires to disable certain security systems. Open the wire panel and cut the red wire to disable the laser.]]></keypad> <keypad asset="assets.WiresUI" x="3" y="5" id="3" goto="0" type="laser" isOn="false" range="15" miniGame="MiniGameWires" correct="red" canToggle="false" points="1000"><![CDATA[Laser shutdown confirmed.]]></keypad> <keypad asset="assets.TerminalUI" x="10" y="7" id="4" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Wolverine must not be detected by any camera. When a camera is flashing red, avoid its vision cone. Wait until the camera is inactive and run past.]]></keypad> <keypad asset="assets.TerminalUI" x="13" y="8" id="5" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Some cameras don't turn off. To disable the camera on the left flick the switch.]]></keypad> <keypad asset="assets.KeypadUI" x="10" y="9" id="6" goto="5" type="door" isOn="false" range="15" miniGame="MiniGameKeypad" correct="4321" canToggle="false" points="1000"><![CDATA[Exit code accepted.]]></keypad> <keypad asset="assets.TerminalUI" x="13" y="9" id="7" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[The code for the keypad is 4321.]]></keypad> </keypads> <mutants> <!--<mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/>--> </mutants> </level> <!-- LEVEL 4 --> <level> <name>The One-Eyed Man (Tutorial)</name> <description>Level 4: Free Cyclops to finish the level.</description> <start x="11" y="3"/> <time>20000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>20,1,1,1,1,16,16,16,16,16,16,16,16,16,16,21</data> <data>20,18,11,2,13,16,16,16,16,16,16,16,16,16,16,21</data> <data>20,13,8,13,17,16,16,16,16,1,1,1,16,16,16,21</data> <data>20,13,13,13,9,16,16,1,1,18,9,13,16,16,16,21</data> <data>20,1,1,1,1,1,1,13,13,13,2,10,1,1,1,21</data> <data>20,10,2,13,13,2,24,12,13,2,12,12,4,4,7,21</data> <data>20,16,16,16,16,16,16,16,16,16,16,16,16,16,16,21</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1</data> <data>1,1,1,1,2,1,1,1,1,3,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,2,2,2,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,2,2,2,3,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,2,2,2,2,1,1,1,1,3,2,2,1,1,1,1</data> <data>1,1,1,1,1,1,1,2,2,2,2,2,1,1,1,1</data> <data>1,2,2,2,2,2,2,2,2,2,2,2,4,4,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorSingleSteelUI" x="4" y="1" id="0" goto="3" locked="true" range="25"/> <door asset="assets.DoorSingleSteelUI" x="1" y="3" id="1" goto="4" locked="false" range="25"/> <door asset="assets.DoorDoubleSteelUI" x="11" y="3" id="2" goto="0" locked="true" range="50"/> <door asset="assets.DoorSingleSteelUI" x="7" y="4" id="3" goto="0" locked="false" range="25"/> <door asset="assets.DoorSingleSteelUI" x="3" y="5" id="4" goto="1" locked="true" range="25"/> <door asset="assets.DoorSingleSteelExitUI" x="8" y="5" id="5" goto="-1" locked="true" range="25"/> </doors> <switches/> <lasers> <laser asset="assets.LaserBigUI" x="2" y="5" id="0" isOn="true" range="20" time="2000" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="12" y="5" id="0" isOn="true" range="50" time="4500" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="13" y="5" id="1" isOn="true" range="50" time="4500" attach="bottom"/> </sensors> <cameras> <camera asset="assets.CameraRightUI" x="11" y="5" id="0" isOn="true" range="200" time="0" face="left"/> </cameras> <guards> <guard asset="assets.RobotUI" x="2" y="3" id="0" range="60" move="100" rate="0.03" type="robot" points="1000"/> <guard asset="assets.Robot2UI" x="3" y="3" id="1" range="60" move="100" rate="0.01" type="robot" points="2000"/> <guard asset="assets.RobotUI" x="9" y="4" id="2" range="60" move="240" rate="0.02" type="robot" points="2000"/> </guards> <keypads> <keypad asset="assets.TerminalUI" x="3" y="2" id="0" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Wolverine can hold himself up when attached to the ceiling to avoid being seen. Try getting past the robots below without being seen.]]></keypad> <keypad asset="assets.TerminalUI" x="9" y="3" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Robots also patrol these areas. Robots can be destroyed by pressing the space bar. A robot cannot see behind itself. If a robot spots you, you’ll have a brief time to escape sight or to destroy it.]]></keypad> <keypad asset="assets.TerminalUI" x="1" y="5" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Cut the green wire to disable the camera.]]></keypad> <keypad asset="assets.KeypadUI" x="5" y="5" id="3" goto="0" type="mutant" isOn="false" range="15" miniGame="MiniGameKeypad" correct="1324" canToggle="false" points="2500"><![CDATA[Prisoner cell unlocked.]]></keypad> <keypad asset="assets.WiresUI" x="7" y="5" id="4" goto="0" type="camera" isOn="false" range="15" miniGame="MiniGameWires" correct="green" canToggle="false" points="2500"><![CDATA[Tunnel security camera disabled.]]></keypad> <keypad asset="assets.TerminalUI" x="14" y="5" id="5" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[If you encounter any mutants along the way you must try and free them. To save this mutant, enter 1324 into the keypad.]]></keypad> </keypads> <mutants> <mutant asset="assets.Mutant1" x="6" y="5" id="0" goto="5" cutscene="assets.VideoUnlockSequence"/> </mutants> </level> <!-- LEVEL 5 --> <level> <name>The Beast Within</name> <description>Level 5: Beast is trapped somewhere on this level. You must free him to exit.</description> <!-- 1,4 --> <start x="1" y="4"/> <time>100000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>40,40,40,40,40,40,40,40,40,40,40,40,40,40,40</data> <data>40,34,25,34,25,34,27,26,49,34,34,34,40,40,40</data> <data>40,32,27,32,30,27,26,36,34,27,26,34,40,40,40</data> <data>40,34,46,47,48,33,27,33,33,33,52,34,40,40,40</data> <data>40,26,35,36,26,35,27,34,34,25,34,34,40,25,40</data> <data>40,34,25,34,25,34,26,28,28,28,28,28,35,35,40</data> <data>40,40,40,40,40,40,40,40,40,40,40,40,40,40,40</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,7,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,6,1,1,1,1,1,1,1</data> <data>1,1,7,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,3,2,2,1,1,1,1,1,1</data> <data>1,2,3,2,6,3,2,2,1,3,2,1,1,1,1</data> <data>1,1,2,2,2,2,3,2,2,2,1,1,1,1,1</data> <data>1,2,2,2,2,2,3,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,2,4,4,4,4,4,2,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureUI" x="1" y="4" id="0" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureExitUI" x="6" y="5" id="1" goto="-1" locked="true" range="25"/> </doors> <switches> <switch asset="assets.SwitchFutureUI" x="13" y="5" id="0" goto="0" type="mutant" isOn="false" range="15" canToggle="false"></switch> </switches> <lasers> <laser asset="assets.LaserFutureUI" x="3" y="3" id="0" isOn="true" range="20" time="2000" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="2" y="2" id="0" isOn="true" range="50" time="2000" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="8" y="5" id="1" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="10" y="5" id="2" isOn="true" range="50" time="0" attach="bottom"/> </sensors> <cameras> <camera asset="assets.CameraRightUI" x="5" y="2" id="0" isOn="true" range="200" time="3000" face="left"/> <camera asset="assets.CameraRightUI" x="5" y="4" id="2" isOn="true" range="200" time="3000" face="left"/> </cameras> <guards> <guard asset="assets.Robot2UI" x="6" y="2" id="0" range="60" move="80" rate="0.01" type="robot" points="2000"/> <guard asset="assets.RobotUI" x="8" y="3" id="1" range="60" move="80" rate="0.01" type="robot" points="2000"/> <guard asset="assets.Robot2UI" x="4" y="4" id="2" range="60" move="200" rate="0.01" type="robot" points="2000"/> </guards> <keypads> <keypad asset="assets.TerminalFutureUI" x="6" y="1" id="0" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Terminal access code: 5731]]></keypad> <keypad asset="assets.TerminalFutureUI" x="1" y="2" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Sentinel-prototype live test commencing in three days.]]></keypad> <keypad asset="assets.KeypadFutureUI" x="3" y="2" id="2" goto="2" type="sensor" isOn="false" range="15" miniGame="MiniGameKeypad" correct="5731" canToggle="false" points="0"><![CDATA[Tunnel sensor 2 disabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="10" y="2" id="3" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Blue wire on level 2 is faulty.]]></keypad> <keypad asset="assets.WiresUI" x="5" y="3" id="4" goto="1" type="sensor" isOn="false" range="15" miniGame="MiniGameWires" correct="blue" canToggle="false" points="0"><![CDATA[Tunnel sensor 1 disabled.]]></keypad> </keypads> <mutants> <mutant asset="assets.Mutant2" x="12" y="5" id="0" goto="1" cutscene="assets.VideoUnlockSequence"/> </mutants> </level> <!-- LEVEL 6 --> <level> <name>Laser Test Zone</name> <description>Level 6: Get out any way you can.</description> <!--17 3--> <start x="17" y="3"/> <time>100000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>25,25,40,40,40,40,40,40,40,40,40,40,40,40,25,25,25,25,25,25,40</data> <data>40,32,32,32,32,33,36,33,36,33,36,33,36,33,36,33,31,31,35,25,40</data> <data>25,26,36,27,40,25,40,26,31,40,40,40,34,34,40,40,40,40,25,25,40</data> <data>25,40,25,27,40,40,40,25,25,40,25,40,40,40,40,26,32,26,40,40,40</data> <data>40,40,34,26,49,50,50,51,26,30,35,27,34,34,34,40,40,40,34,34,34</data> <data>40,40,25,25,52,34,25,34,52,25,25,46,47,48,33,33,49,50,51,35,34</data> <data>40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,34,34,34</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,7,1,1,1,1,1,1,1,1,1,7,1,6,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,7,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,7,1,1,1,7,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,1,1</data> <data>1,2,2,3,1,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,2,2,2,1,1,1</data> <data>1,1,1,2,2,2,2,2,2,6,2,3,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureUI" x="2" y="1" id="0" goto="7" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="9" y="1" id="1" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="1" y="2" id="2" goto="3" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="7" y="2" id="3" goto="2" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="15" y="3" id="4" goto="10" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="17" y="3" id="5" goto="0" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="3" y="4" id="6" goto="8" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="8" y="4" id="7" goto="0" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="10" y="4" id="8" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureExitUI" x="19" y="5" id="9" goto="-1" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="18" y="1" id="10" goto="4" locked="false" range="25"/> </doors> <switches> <switch asset="assets.SwitchFutureUI" x="4" y="1" id="0" goto="0" type="door" isOn="false" range="15" canToggle="false"/> </switches> <lasers> <laser asset="assets.LaserFutureUI" x="3" y="1" id="0" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="5" y="1" id="1" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="10" y="1" id="2" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="12" y="1" id="3" isOn="true" range="20" time="4000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="12" y="5" id="4" isOn="true" range="20" time="1000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="13" y="5" id="5" isOn="true" range="20" time="1100" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="14" y="5" id="6" isOn="true" range="20" time="1200" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="15" y="5" id="7" isOn="true" range="20" time="1300" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="16" y="5" id="8" isOn="true" range="20" time="1200" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="17" y="5" id="9" isOn="true" range="20" time="1100" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="18" y="5" id="10" isOn="true" range="20" time="1000" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="6" y="1" id="0" isOn="true" range="50" time="1500" attach="bottom"/> <sensor asset="assets.SensorTopUI" x="7" y="1" id="1" isOn="true" range="50" time="1500" attach="top"/> <sensor asset="assets.SensorBottomUI" x="8" y="1" id="2" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="11" y="1" id="3" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="13" y="1" id="4" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="14" y="1" id="5" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="16" y="1" id="6" isOn="true" range="50" time="2000" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="3" y="2" id="7" isOn="true" range="50" time="2000" attach="bottom"/> </sensors> <cameras> <camera asset="assets.CameraLeftUI" x="5" y="4" id="0" isOn="true" range="200" time="3000" face="right"/> </cameras> <guards> <guard asset="assets.RobotUI" x="16" y="3" id="0" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="6" y="4" id="1" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="11" y="4" id="2" range="60" move="0" rate="0.01" type="robot" points="2500"/> </guards> <keypads> <keypad asset="assets.TerminalFutureUI" x="15" y="1" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Use the ceiling!]]></keypad> <keypad asset="assets.TerminalFutureUI" x="8" y="2" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Sub level access code: 2366]]></keypad> <keypad asset="assets.KeypadFutureUI" x="3" y="3" id="3" goto="6" type="door" isOn="false" range="15" miniGame="MiniGameKeypad" correct="2366" canToggle="false" points="0"><![CDATA[Door access code accepted.]]></keypad> </keypads> <mutants> <!--<mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/>--> </mutants> </level> <!-- LEVEL 7 --> <level> <name>Trapped</name> <description>Level 7: Escape the maze of doors.</description> <!-- 10, 5 --> <start x="10" y="5"/> <time>100000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>40,40,40,40,40,40,40,40,40,34,34,25,40,40,40,40,40,40,40</data> <data>40,25,25,40,25,34,34,25,34,52,27,25,27,52,25,25,34,34,34</data> <data>25,34,26,35,31,34,35,33,26,35,26,25,26,32,26,26,26,26,34</data> <data>25,26,36,26,34,25,52,40,25,40,40,34,34,34,40,25,26,26,34</data> <data>25,25,52,33,27,33,36,33,35,33,27,32,33,36,32,27,26,25,25</data> <data>40,40,34,34,26,34,34,25,40,25,26,25,40,25,25,26,25,25,40</data> <data>40,40,40,34,34,34,40,40,40,25,25,34,40,40,25,25,25,40,40</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,7,1,1,1,7,1,1,1,1,1</data> <data>1,1,6,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,6,1,7,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,3,1,3,1,1,1,1,1,1</data> <data>1,1,2,2,2,1,2,2,2,2,2,1,2,2,2,2,2,2,1</data> <data>1,2,2,2,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1</data> <data>1,1,1,2,3,2,2,2,2,2,3,2,2,2,2,3,2,1,1</data> <data>1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,2,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureUI" x="4" y="2" id="0" goto="10" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="6" y="2" id="1" goto="3" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="7" y="2" id="2" goto="17" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="8" y="2" id="3" goto="5" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="14" y="2" id="4" goto="14" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="15" y="2" id="5" goto="16" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="16" y="2" id="6" goto="9" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureExitUI" x="1" y="3" id="7" goto="-1" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="3" y="3" id="8" goto="13" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="16" y="3" id="9" goto="6" locked="false" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="3" y="4" id="10" goto="0" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="4" y="4" id="11" goto="13" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="5" y="4" id="12" goto="13" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="8" y="4" id="13" goto="8" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="12" y="4" id="14" goto="4" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="14" y="4" id="15" goto="14" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="15" y="4" id="16" goto="5" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="16" y="4" id="17" goto="2" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="10" y="5" id="18" goto="0" locked="true" range="50"/> </doors> <switches> <switch asset="assets.SwitchFutureUI" x="3" y="2" id="0" goto="7" type="door" isOn="false" range="15" canToggle="false"/> <switch asset="assets.SwitchFutureUI" x="10" y="2" id="1" goto="13" type="door" isOn="false" range="15" canToggle="false"/> <switch asset="assets.SwitchFutureUI" x="12" y="2" id="2" goto="17" type="door" isOn="false" range="15" canToggle="false"/> <switch asset="assets.SwitchFutureUI" x="11" y="4" id="3" goto="14" type="door" isOn="false" range="15" canToggle="false"/> </switches> <lasers> <laser asset="assets.LaserFutureUI" x="9" y="2" id="0" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="13" y="2" id="1" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="6" y="4" id="2" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="13" y="4" id="3" isOn="true" range="20" time="2000" move="0" rate="0"/> </lasers> <sensors/> <cameras/> <guards> <guard asset="assets.RobotUI" x="10" y="4" id="0" range="60" move="80" rate="0.01" type="robot" points="2500"/> </guards> <keypads> <keypad asset="assets.TerminalFutureUI" x="10" y="1" id="0" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Please do not feed the robots.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="12" y="1" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Standard issue cells cannot hold Magneto.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="2" y="2" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Administration: Door access is becoming a problem. Productivity down 50%.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="17" y="2" id="3" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Spillage on level 4.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="17" y="3" id="4" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Science Department: Robots are severely lacking intelligence.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="4" y="5" id="5" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Administration: Morale needs significant boost. Suggest addition of plants on certain levels.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="15" y="5" id="6" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Robot on level 1 may not be able to see.]]></keypad> </keypads> <mutants> <!-- <mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/> --> </mutants> </level> <!-- LEVEL 8 --> <level> <name>Cat’s Shadow</name> <description>Level 8: Escape the ventilation system.</description> <!--15 7--> <start x="15" y="7"/> <time>1000500</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40</data> <data>40,27,35,27,40,40,34,34,40,40,40,40,40,40,40,40,40</data> <data>25,27,34,26,26,27,49,34,25,25,40,40,40,40,40,40,40</data> <data>25,27,40,25,25,51,28,36,27,25,27,40,34,25,40,40,40</data> <data>25,27,26,40,40,25,40,34,36,26,26,40,34,27,26,25,40</data> <data>40,27,34,35,26,27,32,34,52,34,33,26,27,33,25,34,34</data> <data>40,35,25,34,31,27,40,34,35,34,34,52,46,47,48,27,34</data> <data>40,40,40,40,25,32,32,26,32,26,26,34,40,34,34,35,40</data> <data>40,40,40,40,40,40,34,25,25,25,40,40,40,40,40,40,40</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,6,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,6,1,1,1,1,1,1,1</data> <data>1,1,1,1,7,1,1,1,1,1,1,1,7,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,7,1,1,1,1</data> <data>1,1,1,1,1,1,6,7,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,2,3,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,1,2,2,3,2,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,1,1,1,2,4,2,3,1,3,1,1,1,1,1,1</data> <data>1,3,2,1,1,1,1,1,2,2,2,1,1,3,2,1,1</data> <data>1,3,1,2,2,3,2,1,1,1,2,2,3,2,1,1,1</data> <data>1,2,1,1,2,3,1,1,1,1,1,1,2,2,2,3,1</data> <data>1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureUI" x="8" y="3" id="0" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="13" y="4" id="1" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="3" y="5" id="2" goto="0" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="1" y="6" id="3" goto="2" locked="false" range="25"/> <door asset="assets.DoorDoubleFutureExitUI" x="9" y="7" id="4" goto="-1" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="10" y="3" id="5" goto="6" locked="false" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="3" y="1" id="6" goto="5" locked="true" range="50"/> </doors> <switches> <switch asset="assets.SwitchFutureUI" x="10" y="4" id="0" goto="0" type="sensor" isOn="false" range="15" canToggle="false"/> <switch asset="assets.SwitchFutureUI" x="5" y="5" id="1" goto="3" type="camera" isOn="false" range="15" canToggle="true"/> <switch asset="assets.SwitchFutureUI" x="5" y="6" id="2" goto="2" type="laser" isOn="false" range="15" canToggle="true"/> <switch asset="assets.SwitchFutureUI" x="5" y="7" id="3" goto="5" type="camera" isOn="false" range="15" canToggle="true"/> <switch asset="assets.SwitchFutureUI" x="10" y="7" id="4" goto="0" type="mutant" isOn="false" range="15" canToggle="false"/> </switches> <lasers> <laser asset="assets.LaserFutureUI" x="7" y="3" id="0" isOn="true" range="20" time="800" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="14" y="6" id="1" isOn="true" range="20" time="1000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="8" y="7" id="2" isOn="true" range="20" time="0" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorBottomUI" x="1" y="3" id="0" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="6" y="3" id="1" isOn="true" range="50" time="4000" attach="bottom"/> <sensor asset="assets.SensorTopUI" x="1" y="5" id="2" isOn="true" range="50" time="0" attach="top"/> </sensors> <cameras> <camera asset="assets.CameraRightUI" x="1" y="1" id="0" isOn="true" range="200" time="3000" face="left"/> <camera asset="assets.CameraRightUI" x="9" y="4" id="1" isOn="true" range="200" time="0" face="left"/> <camera asset="assets.CameraLeftUI" x="13" y="5" id="2" isOn="true" range="200" time="3000" face="right"/> <camera asset="assets.CameraLeftUI" x="6" y="5" id="3" isOn="false" range="200" time="0" face="right"/> <camera asset="assets.CameraRightUI" x="4" y="6" id="4" isOn="false" range="200" time="0" face="left"/> <camera asset="assets.CameraLeftUI" x="6" y="7" id="5" isOn="false" range="200" time="0" face="right"/> </cameras> <guards> <guard asset="assets.RobotUI" x="2" y="1" id="0" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="4" y="2" id="1" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="5" y="2" id="2" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="12" y="5" id="3" range="60" move="80" rate="0.1" type="robot" points="2500"/> </guards> <keypads> <keypad asset="assets.KeypadFutureUI" x="1" y="2" id="0" goto="1" type="camera" isOn="false" range="15" miniGame="MiniGameKeypad" correct="7511" canToggle="false" points="0"><![CDATA[Switch Camera Disabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="3" y="2" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Camera override code: 7511]]></keypad> <keypad asset="assets.KeypadFutureUI" x="1" y="4" id="2" goto="2" type="sensor" isOn="false" range="15" miniGame="MiniGameKeypad" correct="1157" canToggle="false" points="0"><![CDATA[Manual override accepted.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="2" y="4" id="3" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance report: Please change basement access code to reverse of camera access code.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="14" y="4" id="4" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance report: Wires have been cross-patched. Red is blue, and green is red.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="11" y="5" id="5" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance report: Red wire is faulty on level 2.]]></keypad> <keypad asset="assets.WiresUI" x="12" y="6" id="6" goto="1" type="door" isOn="false" range="15" miniGame="MiniGameWires" correct="blue" canToggle="false" points="0"><![CDATA[Door security disabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="7" y="7" id="7" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance report: Camera 2 is faulty.]]></keypad> </keypads> <mutants> <mutant asset="assets.Mutant3" x="8" y="6" id="0" goto="4" cutscene="assets.VideoUnlockSequence"/> </mutants> </level> <!-- LEVEL 9 --> <level> <name>The Lost Robots</name> <description>Level 9: Send your regards to administration.</description> <!-- 11, 3 --> <start x="11" y="3"/> <time>100000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>25,40,40,40,40,40,52,25,25,25,25,40,40</data> <data>34,27,33,33,33,36,33,36,33,35,25,40,40</data> <data>52,32,36,31,32,31,46,47,48,27,34,52,40</data> <data>34,27,32,32,36,32,32,26,26,31,34,27,25</data> <data>34,26,33,32,33,36,33,26,33,36,33,32,25</data> <data>34,34,34,40,40,25,40,25,40,40,34,34,34</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,1,1,1,7,1,1,6,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,6,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,6,1,1,1,1,1</data> <data>1,7,7,1,1,1,1,6,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,3,2,2,2,2,2,2,2,2,1,1,1</data> <data>1,2,2,2,2,2,2,2,2,3,1,1,1</data> <data>1,3,2,2,2,2,2,2,2,2,1,3,1</data> <data>1,2,2,2,2,2,2,2,2,2,2,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureExitUI" x="9" y="1" id="0" goto="-1" locked="true" range="25"/> <door asset="assets.DoorDoubleFutureUI" x="11" y="3" id="1" goto="0" locked="true" range="25"/> </doors> <switches/> <lasers> <laser asset="assets.LaserFutureUI" x="2" y="2" id="0" isOn="true" range="20" time="800" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="7" y="2" id="1" isOn="true" range="20" time="800" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="6" y="3" id="2" isOn="true" range="20" time="800" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="9" y="4" id="3" isOn="true" range="20" time="800" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorTopUI" x="3" y="1" id="0" isOn="true" range="50" time="900" attach="top"/> <sensor asset="assets.SensorBottomUI" x="4" y="1" id="1" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="6" y="2" id="2" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="5" y="3" id="3" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="3" y="4" id="4" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorTopUI" x="4" y="4" id="5" isOn="true" range="50" time="900" attach="top"/> </sensors> <cameras/> <guards> <guard asset="assets.Robot2UI" x="2" y="1" id="0" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="5" y="1" id="1" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="8" y="1" id="2" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="4" y="2" id="3" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="8" y="2" id="4" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="4" y="3" id="5" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.Robot2UI" x="8" y="3" id="6" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="4" y="4" id="7" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="7" y="4" id="8" range="60" move="80" rate="0.01" type="robot" points="2500"/> </guards> <keypads> <keypad asset="assets.KeypadFutureUI" x="3" y="3" id="0" goto="0" type="door" isOn="false" range="15" miniGame="MiniGameKeypad" correct="2449" canToggle="false" points="0"><![CDATA[Administration access granted.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="6" y="4" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Notify Administration about the status of all robots on all decks. Send code 244 and the amount.]]></keypad> </keypads> <mutants> <!--<mutant asset="assets.CharacterMagnetoUI" x="1" y="1" id="0" goto="0" cutscene="assets.VideoUnlockSequence"/>--> </mutants> </level> <!-- LEVEL 10 --> <level> <name>Going Rogue</name> <description>Level 10: Free Rogue. Escape to the surface.</description> <!-- 13 5 --> <start x="13" y="5"/> <time>200000</time> <map tileSize="118"> <background tileset="assets.tilesBackground" blank="19"> <data>25,25,25,40,40,34,52,40,34,34,34,40,52,34,34</data> <data>34,26,49,51,27,35,46,47,27,26,28,32,36,26,34</data> <data>34,26,28,28,26,29,32,26,26,31,31,26,31,26,34</data> <data>25,27,35,27,52,40,34,26,31,28,26,26,52,40,40</data> <data>52,27,30,26,28,26,36,28,26,34,34,40,34,25,25</data> <data>25,33,36,33,36,33,36,33,28,26,49,50,51,26,25</data> <data>25,25,25,40,40,40,40,34,25,25,25,34,40,34,34</data> </background> <foreground tileset="assets.tilesForeground" blank="1"> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,7,1,1,1,1,1,1,6,1,1,1,1,1,1</data> <data>1,1,1,1,7,1,1,1,6,7,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,6,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,6,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,6,1,1,1,1,1,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </foreground> <collision> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> <data>1,2,2,2,3,2,2,2,3,2,4,2,2,2,1</data> <data>1,2,4,4,2,5,2,2,2,2,2,2,2,2,1</data> <data>1,3,2,3,1,1,1,2,2,4,2,2,1,1,1</data> <data>1,3,6,2,4,2,2,4,2,1,1,1,1,1,1</data> <data>1,2,2,2,2,2,2,2,4,2,2,2,2,2,1</data> <data>1,1,1,1,1,1,1,1,1,1,1,1,1,1,1</data> </collision> </map> <doors> <door asset="assets.DoorDoubleFutureUI" x="1" y="1" id="0" goto="1" locked="false" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="1" y="3" id="1" goto="0" locked="true" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="7" y="3" id="2" goto="4" locked="false" range="50"/> <door asset="assets.DoorDoubleFutureExitUI" x="1" y="4" id="3" goto="-1" locked="true" range="50"/> <!-- LOCK --> <door asset="assets.DoorDoubleFutureUI" x="8" y="4" id="4" goto="2" locked="false" range="50"/> <door asset="assets.DoorDoubleFutureUI" x="13" y="5" id="5" goto="0" locked="true" range="50"/> </doors> <switches> <switch asset="assets.SwitchFutureUI" x="7" y="1" id="0" goto="2" type="sensor" isOn="false" range="15" canToggle="false"/> </switches> <lasers> <laser asset="assets.LaserFutureUI" x="2" y="1" id="0" isOn="true" range="20" time="1000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="3" y="1" id="1" isOn="true" range="20" time="1000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="12" y="2" id="2" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="10" y="3" id="3" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="3" y="5" id="4" isOn="true" range="20" time="900" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="5" y="5" id="5" isOn="true" range="20" time="900" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="9" y="5" id="6" isOn="true" range="20" time="2000" move="0" rate="0"/> <laser asset="assets.LaserFutureUI" x="12" y="5" id="7" isOn="true" range="20" time="2000" move="0" rate="0"/> </lasers> <sensors> <sensor asset="assets.SensorTopUI" x="4" y="1" id="0" isOn="true" range="50" time="0" attach="top"/> <sensor asset="assets.SensorBottomUI" x="9" y="1" id="1" isOn="true" range="50" time="2000" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="10" y="1" id="2" isOn="true" range="50" time="0" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="8" y="2" id="3" isOn="true" range="50" time="2000" attach="bottom"/> <sensor asset="assets.SensorBottomUI" x="4" y="5" id="4" isOn="true" range="50" time="0" attach="bottom"/> </sensors> <cameras> <camera asset="assets.CameraLeftUI" x="9" y="2" id="0" isOn="true" range="200" time="0" face="right"/> <camera asset="assets.CameraRightUI" x="10" y="2" id="1" isOn="true" range="200" time="3000" face="left"/> <camera asset="assets.CameraLeftUI" x="3" y="3" id="2" isOn="true" range="200" time="3000" face="right"/> <camera asset="assets.CameraRightUI" x="10" y="5" id="3" isOn="true" range="200" time="2000" face="left"/> </cameras> <guards> <guard asset="assets.RobotUI" x="5" y="1" id="0" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="7" y="2" id="1" range="60" move="80" rate="0.01" type="robot" points="2500"/> <guard asset="assets.RobotUI" x="6" y="4" id="2" range="60" move="80" rate="0.01" type="robot" points="2500"/> </guards> <keypads> <keypad asset="assets.WiresUI" x="11" y="1" id="0" goto="0" type="camera" isOn="false" range="15" miniGame="MiniGameWires" correct="green" canToggle="false" points="500"><![CDATA[Prisoner camera security disabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="13" y="1" id="1" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Weather Report: Partly cloudy with a chance of rain.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="1" y="2" id="2" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Maintenance: Red and blue wires are working at 150% capacity.]]></keypad> <keypad asset="assets.KeypadUI" x="6" y="2" id="3" goto="0" type="mutant" isOn="false" range="15" miniGame="MiniGameKeypad" correct="9177" canToggle="false" points="1000"><![CDATA[Prisioner cell access code accepted. Level 2 exit door access enabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="13" y="2" id="4" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="1000"><![CDATA[Exit access code: 9177]]></keypad> <keypad asset="assets.KeypadFutureUI" x="11" y="3" id="5" goto="1" type="door" isOn="false" range="15" miniGame="MiniGameKeypad" correct="5555" canToggle="false" points="1000"><![CDATA[Western top level access door enabled.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="3" y="4" id="6" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="0"><![CDATA[Mind your head.]]></keypad> <keypad asset="assets.TerminalFutureUI" x="5" y="4" id="7" goto="0" type="null" isOn="false" range="15" miniGame="MiniGameTerminal" canToggle="true" correct="" points="1000"><![CDATA[Top level access code: 5555.]]></keypad> </keypads> <mutants> <mutant asset="assets.Mutant4" x="7" y="2" id="0" goto="3" cutscene="assets.VideoUnlockSequence"/> </mutants> </level> </levels> ; super(); var _local1:int; while (_local1 < m_levelsXML.level.length()) { _levels.push(new LevelXML("", m_levelsXML.level[_local1])); _local1++; }; } public static function get levelNum():int{ return (_levels.length); } public static function addLevel(_arg1:LevelXML):void{ if (_levels == null){ _levels = new Array(); }; _levels.push(_arg1); } public static function reloadLevel(_arg1:String, _arg2:int, _arg3:Function):void{ var _local4:LevelLoader = new LevelLoader(); _local4.load(_arg1, _arg2, _arg3); _local4.addEventListener(Event.COMPLETE, onLevelReloaded); } private static function onLevelReloaded(_arg1:Event):void{ var _local2:LevelLoader = (_arg1.currentTarget as LevelLoader); _levels.splice(_local2.index, 0, _local2.level); _local2.onComplete(); } public static function getLevel(_arg1:int):LevelXML{ return (_levels[_arg1]); } } }//package import flash.events.*; import game.levels.*; import com.malee.loaders.*; class LevelLoader extends EventDispatcher { private var _level:LevelXML; private var _xmlLoader:XMLLoader; private var _url:String; private var onComplete:Function; private var _index:int; private function LevelLoader(){ _xmlLoader = new XMLLoader(); } private function onLoadError(_arg1:IOErrorEvent):void{ trace(("cannot load" + _url)); } public function get level():LevelXML{ return (_level); } private function load(_arg1:String, _arg2:int, _arg3:Function):void{ _url = _arg1; _index = _arg2; this.onComplete = _arg3; _xmlLoader.loadData(_arg1); _xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, onLoadError); _xmlLoader.addEventListener(Event.COMPLETE, onLevelReloaded, false, 0, true); } public function get index():int{ return (_index); } private function onLevelReloaded(_arg1:Event):void{ _level = new LevelXML(_url, _xmlLoader.xml); dispatchEvent(_arg1); } }Section 303//GameBroadcaster (GameBroadcaster) package { import flash.events.*; public class GameBroadcaster { private static var eventDispatcher:EventDispatcher; private static var m_alarm:Boolean = false; public static function dispatchEvent(_arg1:Event):void{ if (!m_alarm){ if (eventDispatcher){ eventDispatcher.dispatchEvent(_arg1); }; }; } public static function set alarm(_arg1:Boolean):void{ m_alarm = _arg1; } public static function broadcast(_arg1:Event):void{ trace(("Event Broadcast " + _arg1.type)); dispatchEvent(_arg1); } public static function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{ if (eventDispatcher){ eventDispatcher.removeEventListener(_arg1, _arg2, _arg3); }; } public static function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=true):void{ if (!eventDispatcher){ eventDispatcher = new EventDispatcher(); }; eventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5); } } }//packageSection 304//Main (Main) package { import flash.events.*; import flash.display.*; import console.*; import net.*; import org.casalib.util.*; import com.malee.net.clearspring.*; public class Main extends Sprite { private var m_console:Console; public static var SPONSOR_URL:String; public static var loadTime:int; public static var ClearSpring:ClearSpringInterface; public function Main(){ var _local1:EmbeddedData = new EmbeddedData(); addEventListener(Event.ADDED_TO_STAGE, handleOnAddedToStage); } private function handleOnAddedToStage(_arg1:Event):void{ ClearSpring = new ClearSpringInterface(this); removeEventListener(Event.ADDED_TO_STAGE, handleOnAddedToStage); StageReference.setStage(stage); stage.scaleMode = StageScaleMode.NO_SCALE; stage.quality = StageQuality.MEDIUM; stage.stageFocusRect = false; FlashVars.initializeVariables(root); User.getInstance().createFlashVarsUser(root, true); m_console = new Console(); addChild(m_console); Console.GoogleAnalytics.trackEvent("MRD_Escape", "loadGame", "index", loadTime); } public function destroy():void{ m_console.destroy(); } } }//packageSection 305//NavButtonUI (NavButtonUI) package { import buttons.*; public dynamic class NavButtonUI extends NavButton { } }//package
Library Items
Symbol 1 Graphic | Used by:2 | |
Symbol 2 MovieClip | Uses:1 | Used by:16 |
Symbol 3 Bitmap | Used by:4 | |
Symbol 4 Graphic | Uses:3 | Used by:5 |
Symbol 5 MovieClip | Uses:4 | Used by:6 343 345 347 |
Symbol 6 MovieClip {assets_fla.scanLines_52} [assets_fla.scanLines_52] | Uses:5 | Used by:16 166 210 248 276 301 327 339 793 817 |
Symbol 7 Bitmap | Used by:8 | |
Symbol 8 Graphic | Uses:7 | Used by:9 |
Symbol 9 MovieClip | Uses:8 | Used by:16 |
Symbol 10 MovieClip | Used by:16 285 327 339 | |
Symbol 11 Bitmap | Used by:12 | |
Symbol 12 Graphic | Uses:11 | Used by:13 |
Symbol 13 MovieClip | Uses:12 | Used by:16 |
Symbol 14 Bitmap | Used by:15 | |
Symbol 15 Graphic | Uses:14 | Used by:16 |
Symbol 16 MovieClip {assets.Preloader} [assets.Preloader] | Uses:2 6 9 10 13 15 | |
Symbol 17 Sound {assets.sfx_access_denied_01} [assets.sfx_access_denied_01] | ||
Symbol 18 Sound {assets.sfx_dry_fire_02} [assets.sfx_dry_fire_02] | ||
Symbol 19 Sound {assets.sfx_machete_normal_08} [assets.sfx_machete_normal_08] | ||
Symbol 20 Sound {assets.sfx_MRD_level_loop_3} [assets.sfx_MRD_level_loop_3] | ||
Symbol 21 Sound {assets.sfx_cursor} [assets.sfx_cursor] | ||
Symbol 22 Sound {assets.sfx_wire_slice_01} [assets.sfx_wire_slice_01] | ||
Symbol 23 Sound {assets.sfx_turbolift_doorclose_01} [assets.sfx_turbolift_doorclose_01] | ||
Symbol 24 Sound {assets.sfx_throw_whoosh_01} [assets.sfx_throw_whoosh_01] | ||
Symbol 25 Sound {assets.sfx_MRD_level_loop_4} [assets.sfx_MRD_level_loop_4] | ||
Symbol 26 Sound {assets.sfx_mech_operate_17} [assets.sfx_mech_operate_17] | ||
Symbol 27 Sound {assets.sfx_MRD_level_loop_2} [assets.sfx_MRD_level_loop_2] | ||
Symbol 28 Sound {assets.sfx_throw_whoosh_03} [assets.sfx_throw_whoosh_03] | ||
Symbol 29 Sound {assets.sfx_tram_crash_01} [assets.sfx_tram_crash_01] | ||
Symbol 30 Sound {assets.sfx_thud2} [assets.sfx_thud2] | ||
Symbol 31 Sound {assets.sfx_aerial_01} [assets.sfx_aerial_01] | ||
Symbol 32 Sound {assets.sfx_machete_heavy_01} [assets.sfx_machete_heavy_01] | Used by:203 | |
Symbol 33 Sound {assets.sfx_console_entry_03} [assets.sfx_console_entry_03] | ||
Symbol 34 Sound {assets.sfx_staff_12} [assets.sfx_staff_12] | ||
Symbol 35 Sound {assets.sfx_machete_normal_04} [assets.sfx_machete_normal_04] | ||
Symbol 36 Sound {assets.sfx_thud} [assets.sfx_thud] | ||
Symbol 37 Sound {assets.sfx_charge_kill_stab_01} [assets.sfx_charge_kill_stab_01] | ||
Symbol 38 Sound {assets.sfx_machete_normal_02} [assets.sfx_machete_normal_02] | ||
Symbol 39 Sound {assets.sfx_wall_climb_02} [assets.sfx_wall_climb_02] | ||
Symbol 40 Sound {assets.sfx_auto_turret_scan_01} [assets.sfx_auto_turret_scan_01] | ||
Symbol 41 Sound {assets.sfx_MRD_intro_main} [assets.sfx_MRD_intro_main] | ||
Symbol 42 Sound {assets.sfx_SOUNDDOGS_AL_147468} [assets.sfx_SOUNDDOGS_AL_147468] | ||
Symbol 43 Bitmap | Used by:44 | |
Symbol 44 Graphic | Uses:43 | Used by:45 |
Symbol 45 MovieClip | Uses:44 | Used by:84 |
Symbol 46 Bitmap | Used by:47 | |
Symbol 47 Graphic | Uses:46 | Used by:48 |
Symbol 48 MovieClip | Uses:47 | Used by:84 |
Symbol 49 Bitmap | Used by:50 | |
Symbol 50 Graphic | Uses:49 | Used by:51 |
Symbol 51 MovieClip | Uses:50 | Used by:84 |
Symbol 52 Bitmap | Used by:53 | |
Symbol 53 Graphic | Uses:52 | Used by:54 |
Symbol 54 MovieClip | Uses:53 | Used by:84 |
Symbol 55 Graphic | Used by:56 | |
Symbol 56 MovieClip | Uses:55 | Used by:59 |
Symbol 57 Font | Used by:58 62 66 70 76 80 112 157 158 353 405 769 771 803 804 | |
Symbol 58 EditableText | Uses:57 | Used by:59 |
Symbol 59 MovieClip {assets_fla.HudUI_19} [assets_fla.HudUI_19] | Uses:56 58 | Used by:84 |
Symbol 60 Graphic | Used by:61 | |
Symbol 61 MovieClip | Uses:60 | Used by:63 |
Symbol 62 EditableText | Uses:57 | Used by:63 |
Symbol 63 MovieClip {assets_fla.HudUi_21} [assets_fla.HudUi_21] | Uses:61 62 | Used by:84 |
Symbol 64 Graphic | Used by:65 | |
Symbol 65 MovieClip | Uses:64 | Used by:67 |
Symbol 66 EditableText | Uses:57 | Used by:67 |
Symbol 67 MovieClip {assets_fla.HudUi_23} [assets_fla.HudUi_23] | Uses:65 66 | Used by:84 |
Symbol 68 Graphic | Used by:69 | |
Symbol 69 MovieClip | Uses:68 | Used by:71 |
Symbol 70 EditableText | Uses:57 | Used by:71 |
Symbol 71 MovieClip {assets_fla.HudUi_25} [assets_fla.HudUi_25] | Uses:69 70 | Used by:84 |
Symbol 72 Bitmap | Used by:73 | |
Symbol 73 Graphic | Uses:72 | Used by:83 |
Symbol 74 Graphic | Used by:75 | |
Symbol 75 MovieClip | Uses:74 | Used by:77 |
Symbol 76 EditableText | Uses:57 | Used by:77 |
Symbol 77 MovieClip {assets_fla.HudUI_28} [assets_fla.HudUI_28] | Uses:75 76 | Used by:83 |
Symbol 78 Graphic | Used by:79 | |
Symbol 79 MovieClip | Uses:78 | Used by:81 |
Symbol 80 EditableText | Uses:57 | Used by:81 |
Symbol 81 MovieClip {assets_fla.HudUI_30} [assets_fla.HudUI_30] | Uses:79 80 | Used by:83 |
Symbol 82 Graphic | Used by:83 | |
Symbol 83 MovieClip {assets_fla.HudUI_27} [assets_fla.HudUI_27] | Uses:73 77 81 82 | Used by:84 |
Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] | Uses:45 48 51 54 59 63 67 71 83 | |
Symbol 85 Bitmap | Used by:86 | |
Symbol 86 Graphic | Uses:85 | Used by:87 |
Symbol 87 MovieClip | Uses:86 | Used by:115 |
Symbol 88 Bitmap | Used by:89 | |
Symbol 89 Graphic | Uses:88 | Used by:111 |
Symbol 90 ShapeTweening | Used by:102 | |
Symbol 91 Bitmap | Used by:92 | |
Symbol 92 Graphic | Uses:91 | Used by:93 |
Symbol 93 MovieClip | Uses:92 | Used by:102 |
Symbol 94 ShapeTweening | Used by:102 | |
Symbol 95 Bitmap | Used by:96 | |
Symbol 96 Graphic | Uses:95 | Used by:97 |
Symbol 97 MovieClip | Uses:96 | Used by:102 |
Symbol 98 ShapeTweening | Used by:102 | |
Symbol 99 ShapeTweening | Used by:102 | |
Symbol 100 Graphic | Used by:102 404 628 719 | |
Symbol 101 Graphic | Used by:102 252 | |
Symbol 102 MovieClip {assets_fla.soundSlider_136} [assets_fla.soundSlider_136] | Uses:90 93 94 97 98 99 100 101 | Used by:111 |
Symbol 103 Bitmap | Used by:104 | |
Symbol 104 Graphic | Uses:103 | Used by:105 |
Symbol 105 MovieClip | Uses:104 | Used by:111 |
Symbol 106 Bitmap | Used by:107 | |
Symbol 107 Graphic | Uses:106 | Used by:108 |
Symbol 108 MovieClip | Uses:107 | Used by:111 |
Symbol 109 Graphic | Used by:110 395 | |
Symbol 110 Button | Uses:109 | Used by:111 |
Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] | Uses:89 102 105 108 110 | Used by:115 |
Symbol 112 EditableText | Uses:57 396 | Used by:115 |
Symbol 113 Graphic | Used by:114 | |
Symbol 114 Button | Uses:113 | Used by:115 460 |
Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] | Uses:87 111 112 114 | |
Symbol 116 Bitmap | Used by:117 | |
Symbol 117 Graphic | Uses:116 | Used by:118 |
Symbol 118 MovieClip | Uses:117 | Used by:166 210 276 327 339 793 817 |
Symbol 119 Bitmap | Used by:120 | |
Symbol 120 Graphic | Uses:119 | Used by:121 |
Symbol 121 MovieClip | Uses:120 | Used by:166 210 248 276 |
Symbol 122 Bitmap | Used by:123 | |
Symbol 123 Graphic | Uses:122 | Used by:124 |
Symbol 124 MovieClip | Uses:123 | Used by:166 |
Symbol 125 Bitmap | Used by:126 | |
Symbol 126 Graphic | Uses:125 | Used by:127 |
Symbol 127 MovieClip | Uses:126 | Used by:166 |
Symbol 128 Bitmap | Used by:129 | |
Symbol 129 Graphic | Uses:128 | Used by:130 |
Symbol 130 MovieClip | Uses:129 | Used by:166 |
Symbol 131 Bitmap | Used by:132 | |
Symbol 132 Graphic | Uses:131 | Used by:133 |
Symbol 133 MovieClip | Uses:132 | Used by:166 |
Symbol 134 Bitmap | Used by:135 | |
Symbol 135 Graphic | Uses:134 | Used by:136 |
Symbol 136 MovieClip | Uses:135 | Used by:166 |
Symbol 137 Bitmap | Used by:138 | |
Symbol 138 Graphic | Uses:137 | Used by:139 |
Symbol 139 MovieClip | Uses:138 | Used by:166 |
Symbol 140 Bitmap | Used by:141 | |
Symbol 141 Graphic | Uses:140 | Used by:142 |
Symbol 142 MovieClip | Uses:141 | Used by:166 |
Symbol 143 Bitmap | Used by:144 | |
Symbol 144 Graphic | Uses:143 | Used by:145 |
Symbol 145 MovieClip | Uses:144 | Used by:166 |
Symbol 146 Bitmap | Used by:147 | |
Symbol 147 Graphic | Uses:146 | Used by:148 |
Symbol 148 MovieClip | Uses:147 | Used by:166 |
Symbol 149 Bitmap | Used by:150 | |
Symbol 150 Graphic | Uses:149 | Used by:151 |
Symbol 151 MovieClip | Uses:150 | Used by:166 |
Symbol 152 Bitmap | Used by:153 | |
Symbol 153 Graphic | Uses:152 | Used by:154 |
Symbol 154 MovieClip | Uses:153 | Used by:162 |
Symbol 155 Bitmap | Used by:156 | |
Symbol 156 Graphic | Uses:155 | Used by:159 |
Symbol 157 EditableText | Uses:57 | Used by:159 |
Symbol 158 EditableText | Uses:57 | Used by:159 |
Symbol 159 MovieClip {assets_fla.tooltip_12} [assets_fla.tooltip_12] | Uses:156 157 158 | Used by:162 798 |
Symbol 160 Graphic | Used by:161 170 580 625 797 | |
Symbol 161 MovieClip | Uses:160 | Used by:162 |
Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] | Uses:154 159 161 | Used by:166 |
Symbol 163 Bitmap | Used by:164 | |
Symbol 164 Graphic | Uses:163 | Used by:165 |
Symbol 165 MovieClip | Uses:164 | Used by:166 |
Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] | Uses:118 6 121 124 127 130 133 136 139 142 145 148 151 162 165 | |
Symbol 167 Bitmap | Used by:168 | |
Symbol 168 Graphic | Uses:167 | Used by:169 |
Symbol 169 MovieClip | Uses:168 | Used by:203 |
Symbol 170 MovieClip | Uses:160 | Used by:203 |
Symbol 171 Bitmap | Used by:172 | |
Symbol 172 Graphic | Uses:171 | Used by:173 |
Symbol 173 MovieClip | Uses:172 | Used by:174 |
Symbol 174 MovieClip | Uses:173 | Used by:203 |
Symbol 175 Bitmap | Used by:176 | |
Symbol 176 Graphic | Uses:175 | Used by:177 |
Symbol 177 MovieClip | Uses:176 | Used by:203 |
Symbol 178 Bitmap | Used by:179 | |
Symbol 179 Graphic | Uses:178 | Used by:180 |
Symbol 180 MovieClip | Uses:179 | Used by:203 |
Symbol 181 Bitmap | Used by:182 | |
Symbol 182 Graphic | Uses:181 | Used by:203 456 |
Symbol 183 Bitmap | Used by:184 | |
Symbol 184 Graphic | Uses:183 | Used by:203 456 |
Symbol 185 Bitmap | Used by:186 | |
Symbol 186 Graphic | Uses:185 | Used by:203 456 |
Symbol 187 Bitmap | Used by:188 | |
Symbol 188 Graphic | Uses:187 | Used by:203 456 |
Symbol 189 Bitmap | Used by:190 | |
Symbol 190 Graphic | Uses:189 | Used by:203 456 |
Symbol 191 Bitmap | Used by:192 | |
Symbol 192 Graphic | Uses:191 | Used by:203 456 |
Symbol 193 Bitmap | Used by:194 | |
Symbol 194 Graphic | Uses:193 | Used by:203 456 |
Symbol 195 Bitmap | Used by:196 | |
Symbol 196 Graphic | Uses:195 | Used by:203 456 |
Symbol 197 Bitmap | Used by:198 | |
Symbol 198 Graphic | Uses:197 | Used by:203 456 |
Symbol 199 Bitmap | Used by:200 | |
Symbol 200 Graphic | Uses:199 | Used by:203 456 |
Symbol 201 Bitmap | Used by:202 | |
Symbol 202 Graphic | Uses:201 | Used by:203 456 |
Symbol 203 MovieClip {assets.pages.TitleUI} [assets.pages.TitleUI] | Uses:169 170 174 177 180 182 32 184 186 188 190 192 194 196 198 200 202 | |
Symbol 204 Bitmap | Used by:205 | |
Symbol 205 Graphic | Uses:204 | Used by:206 |
Symbol 206 MovieClip | Uses:205 | Used by:210 |
Symbol 207 Bitmap | Used by:208 | |
Symbol 208 Graphic | Uses:207 | Used by:209 |
Symbol 209 MovieClip | Uses:208 | Used by:210 |
Symbol 210 MovieClip {assets.pages.CreditsUI} [assets.pages.CreditsUI] | Uses:118 6 121 206 209 | |
Symbol 211 Bitmap | Used by:212 | |
Symbol 212 Graphic | Uses:211 | Used by:213 |
Symbol 213 MovieClip | Uses:212 | Used by:248 |
Symbol 214 Bitmap | Used by:215 | |
Symbol 215 Graphic | Uses:214 | Used by:220 |
Symbol 216 Font | Used by:217 223 229 235 241 386 459 | |
Symbol 217 Text | Uses:216 | Used by:220 |
Symbol 218 Graphic | Used by:219 | |
Symbol 219 MovieClip | Uses:218 | Used by:220 |
Symbol 220 MovieClip | Uses:215 217 219 | Used by:248 |
Symbol 221 Bitmap | Used by:222 | |
Symbol 222 Graphic | Uses:221 | Used by:226 |
Symbol 223 Text | Uses:216 | Used by:226 |
Symbol 224 Graphic | Used by:225 | |
Symbol 225 MovieClip | Uses:224 | Used by:226 |
Symbol 226 MovieClip | Uses:222 223 225 | Used by:248 |
Symbol 227 Bitmap | Used by:228 | |
Symbol 228 Graphic | Uses:227 | Used by:232 |
Symbol 229 Text | Uses:216 | Used by:232 |
Symbol 230 Graphic | Used by:231 | |
Symbol 231 MovieClip | Uses:230 | Used by:232 |
Symbol 232 MovieClip | Uses:228 229 231 | Used by:248 |
Symbol 233 Bitmap | Used by:234 | |
Symbol 234 Graphic | Uses:233 | Used by:238 |
Symbol 235 Text | Uses:216 | Used by:238 |
Symbol 236 Graphic | Used by:237 | |
Symbol 237 MovieClip | Uses:236 | Used by:238 |
Symbol 238 MovieClip | Uses:234 235 237 | Used by:248 |
Symbol 239 Bitmap | Used by:240 | |
Symbol 240 Graphic | Uses:239 | Used by:244 |
Symbol 241 Text | Uses:216 | Used by:244 |
Symbol 242 Graphic | Used by:243 | |
Symbol 243 MovieClip | Uses:242 | Used by:244 |
Symbol 244 MovieClip | Uses:240 241 243 | Used by:248 |
Symbol 245 Bitmap | Used by:246 | |
Symbol 246 Graphic | Uses:245 | Used by:247 |
Symbol 247 MovieClip | Uses:246 | Used by:248 |
Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] | Uses:213 220 226 232 238 244 6 121 247 | |
Symbol 249 Bitmap | Used by:250 | |
Symbol 250 Graphic | Uses:249 | Used by:251 |
Symbol 251 MovieClip | Uses:250 | Used by:253 |
Symbol 252 Button {NavButtonUI} [NavButtonUI] | Uses:101 | Used by:253 758 762 785 789 802 |
Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] | Uses:251 252 | Used by:269 |
Symbol 254 Bitmap | Used by:255 | |
Symbol 255 Graphic | Uses:254 | Used by:256 |
Symbol 256 MovieClip | Uses:255 | Used by:269 |
Symbol 257 Bitmap | Used by:258 | |
Symbol 258 Graphic | Uses:257 | Used by:259 |
Symbol 259 MovieClip | Uses:258 | Used by:269 |
Symbol 260 Bitmap | Used by:261 | |
Symbol 261 Graphic | Uses:260 | Used by:262 |
Symbol 262 MovieClip | Uses:261 | Used by:269 |
Symbol 263 Bitmap | Used by:264 | |
Symbol 264 Graphic | Uses:263 | Used by:265 |
Symbol 265 MovieClip | Uses:264 | Used by:269 |
Symbol 266 Bitmap | Used by:267 | |
Symbol 267 Graphic | Uses:266 | Used by:268 |
Symbol 268 MovieClip | Uses:267 | Used by:269 |
Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] | Uses:253 256 259 262 265 268 | |
Symbol 270 Bitmap | Used by:271 | |
Symbol 271 Graphic | Uses:270 | Used by:272 |
Symbol 272 MovieClip | Uses:271 | Used by:276 |
Symbol 273 Bitmap | Used by:274 | |
Symbol 274 Graphic | Uses:273 | Used by:275 |
Symbol 275 MovieClip | Uses:274 | Used by:276 |
Symbol 276 MovieClip {assets.pages.HelpUI} [assets.pages.HelpUI] | Uses:118 6 121 272 275 | |
Symbol 277 Bitmap | Used by:278 | |
Symbol 278 Graphic | Uses:277 | Used by:285 |
Symbol 279 Graphic | Used by:285 | |
Symbol 280 Graphic | Used by:281 | |
Symbol 281 MovieClip | Uses:280 | Used by:283 |
Symbol 282 Graphic | Used by:283 | |
Symbol 283 Button | Uses:281 282 | Used by:285 |
Symbol 284 Graphic | Used by:285 | |
Symbol 285 MovieClip {assets.HudStartUI} [assets.HudStartUI] | Uses:278 279 10 283 284 | |
Symbol 286 Graphic | Used by:287 | |
Symbol 287 MovieClip | Uses:286 | Used by:301 |
Symbol 288 Font | Used by:289 302 303 304 305 328 329 330 331 748 816 | |
Symbol 289 EditableText | Uses:288 | Used by:301 |
Symbol 290 Bitmap | Used by:291 | |
Symbol 291 Graphic | Uses:290 | Used by:292 |
Symbol 292 MovieClip | Uses:291 | Used by:294 |
Symbol 293 Graphic | Used by:294 335 404 647 686 734 775 | |
Symbol 294 Button | Uses:292 293 | Used by:301 |
Symbol 295 Bitmap | Used by:296 | |
Symbol 296 Graphic | Uses:295 | Used by:297 |
Symbol 297 MovieClip | Uses:296 | Used by:301 |
Symbol 298 Bitmap | Used by:299 | |
Symbol 299 Graphic | Uses:298 | Used by:300 |
Symbol 300 MovieClip | Uses:299 | Used by:301 |
Symbol 301 MovieClip {assets.LevelEndFailedUI} [assets.LevelEndFailedUI] | Uses:287 289 294 297 300 6 | |
Symbol 302 EditableText | Uses:288 | Used by:327 |
Symbol 303 EditableText | Uses:288 | Used by:327 |
Symbol 304 EditableText | Uses:288 | Used by:327 |
Symbol 305 EditableText | Uses:288 | Used by:327 |
Symbol 306 Bitmap | Used by:307 | |
Symbol 307 Graphic | Uses:306 | Used by:308 |
Symbol 308 MovieClip | Uses:307 | Used by:327 339 |
Symbol 309 Bitmap | Used by:310 | |
Symbol 310 Graphic | Uses:309 | Used by:311 |
Symbol 311 MovieClip | Uses:310 | Used by:327 339 |
Symbol 312 Bitmap | Used by:313 | |
Symbol 313 Graphic | Uses:312 | Used by:314 |
Symbol 314 MovieClip | Uses:313 | Used by:327 339 |
Symbol 315 Bitmap | Used by:316 | |
Symbol 316 Graphic | Uses:315 | Used by:317 |
Symbol 317 MovieClip | Uses:316 | Used by:327 339 |
Symbol 318 Bitmap | Used by:319 | |
Symbol 319 Graphic | Uses:318 | Used by:320 |
Symbol 320 MovieClip | Uses:319 | Used by:327 339 |
Symbol 321 Bitmap | Used by:322 | |
Symbol 322 Graphic | Uses:321 | Used by:323 |
Symbol 323 MovieClip | Uses:322 | Used by:327 |
Symbol 324 Bitmap | Used by:325 | |
Symbol 325 Graphic | Uses:324 | Used by:326 |
Symbol 326 MovieClip | Uses:325 | Used by:327 |
Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] | Uses:118 302 303 304 305 10 308 311 314 317 320 323 326 6 | |
Symbol 328 EditableText | Uses:288 | Used by:339 |
Symbol 329 EditableText | Uses:288 | Used by:339 |
Symbol 330 EditableText | Uses:288 | Used by:339 |
Symbol 331 EditableText | Uses:288 | Used by:339 |
Symbol 332 Bitmap | Used by:333 | |
Symbol 333 Graphic | Uses:332 | Used by:334 |
Symbol 334 MovieClip | Uses:333 | Used by:335 |
Symbol 335 Button | Uses:334 293 | Used by:339 |
Symbol 336 Bitmap | Used by:337 | |
Symbol 337 Graphic | Uses:336 | Used by:338 |
Symbol 338 MovieClip | Uses:337 | Used by:339 |
Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] | Uses:118 328 329 330 331 10 308 311 314 317 320 335 338 6 | |
Symbol 340 Video | Used by:343 | |
Symbol 341 Graphic | Used by:342 | |
Symbol 342 MovieClip | Uses:341 | Used by:343 345 347 |
Symbol 343 MovieClip {assets.VideoUnlockSequence} [assets.VideoUnlockSequence] | Uses:340 342 5 SS1 | |
Symbol 344 Video | Used by:345 | |
Symbol 345 MovieClip {assets.VideoIntroSequence} [assets.VideoIntroSequence] | Uses:344 342 5 SS2 | |
Symbol 346 Video | Used by:347 | |
Symbol 347 MovieClip {assets.VideoEndSequence} [assets.VideoEndSequence] | Uses:346 342 5 SS3 | |
Symbol 348 Bitmap | Used by:349 | |
Symbol 349 Graphic | Uses:348 | Used by:350 |
Symbol 350 MovieClip {assets.HudItemBaseUI} [assets.HudItemBaseUI] | Uses:349 | |
Symbol 351 Graphic | Used by:352 | |
Symbol 352 MovieClip | Uses:351 | Used by:359 |
Symbol 353 EditableText | Uses:57 396 | Used by:359 |
Symbol 354 Graphic | Used by:357 | |
Symbol 355 Graphic | Used by:356 | |
Symbol 356 MovieClip | Uses:355 | Used by:357 |
Symbol 357 MovieClip | Uses:354 356 | Used by:359 |
Symbol 358 Graphic | Used by:359 | |
Symbol 359 MovieClip {assets.HudItemUI} [assets.HudItemUI] | Uses:352 353 357 358 | |
Symbol 360 Bitmap {assets.tilesBackground} [assets.tilesBackground] | ||
Symbol 361 Bitmap {assets.tilesForeground} [assets.tilesForeground] | ||
Symbol 362 Bitmap {assets.Scanline} [assets.Scanline] | Used by:636 | |
Symbol 363 Graphic | Used by:374 420 | |
Symbol 364 Bitmap | Used by:365 390 | |
Symbol 365 Graphic | Uses:364 | Used by:374 |
Symbol 366 Bitmap | Used by:367 418 | |
Symbol 367 Graphic | Uses:366 | Used by:374 |
Symbol 368 Bitmap | Used by:369 373 | |
Symbol 369 Graphic | Uses:368 | Used by:374 419 |
Symbol 370 Bitmap | Used by:371 372 | |
Symbol 371 Graphic | Uses:370 | Used by:374 419 |
Symbol 372 Graphic | Uses:370 | Used by:374 419 |
Symbol 373 Graphic | Uses:368 | Used by:374 419 |
Symbol 374 MovieClip {assets.MiniGameTerminalScreen} [assets.MiniGameTerminalScreen] | Uses:363 365 367 369 371 372 373 | |
Symbol 375 Bitmap | Used by:377 | |
Symbol 376 Bitmap | Used by:377 | |
Symbol 377 Graphic | Uses:376 375 | Used by:387 |
Symbol 378 Font | Used by:379 391 | |
Symbol 379 EditableText | Uses:378 | Used by:387 |
Symbol 380 Bitmap | Used by:381 | |
Symbol 381 Graphic | Uses:380 | Used by:385 |
Symbol 382 Bitmap | Used by:383 384 | |
Symbol 383 Graphic | Uses:382 | Used by:385 |
Symbol 384 Graphic | Uses:382 | Used by:385 |
Symbol 385 Button | Uses:381 383 384 | Used by:387 392 417 460 |
Symbol 386 Text | Uses:216 | Used by:387 |
Symbol 387 MovieClip {assets.MiniGameIntro} [assets.MiniGameIntro] | Uses:377 379 385 386 | |
Symbol 388 Bitmap | Used by:390 | |
Symbol 389 Bitmap | Used by:390 403 | |
Symbol 390 Graphic | Uses:364 388 389 | Used by:392 |
Symbol 391 EditableText | Uses:378 | Used by:392 |
Symbol 392 MovieClip {assets.MiniGameTerminal} [assets.MiniGameTerminal] | Uses:390 391 385 | |
Symbol 393 Bitmap | Used by:394 | |
Symbol 394 Graphic | Uses:393 | Used by:417 |
Symbol 395 MovieClip | Uses:109 | Used by:402 |
Symbol 396 Font | Used by:112 353 397 410 414 | |
Symbol 397 EditableText | Uses:396 | Used by:402 |
Symbol 398 Graphic | Used by:399 | |
Symbol 399 MovieClip | Uses:398 | Used by:402 |
Symbol 400 Bitmap | Used by:401 | |
Symbol 401 Graphic | Uses:400 | Used by:402 |
Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] | Uses:395 397 399 401 | Used by:417 |
Symbol 403 Graphic | Uses:389 | Used by:417 |
Symbol 404 MovieClip {assets_fla.Terminal_71} [assets_fla.Terminal_71] | Uses:293 100 | Used by:417 |
Symbol 405 EditableText | Uses:57 | Used by:406 |
Symbol 406 MovieClip {assets_fla.Terminal_72} [assets_fla.Terminal_72] | Uses:405 | Used by:417 |
Symbol 407 Bitmap | Used by:409 | |
Symbol 408 Bitmap | Used by:409 | |
Symbol 409 Graphic | Uses:407 408 | Used by:417 |
Symbol 410 Text | Uses:396 | Used by:413 |
Symbol 411 Graphic | Used by:413 | |
Symbol 412 Graphic | Used by:413 | |
Symbol 413 Button | Uses:410 411 412 | Used by:417 |
Symbol 414 Text | Uses:396 | Used by:416 |
Symbol 415 Graphic | Used by:416 | |
Symbol 416 Button | Uses:414 415 | Used by:417 |
Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] | Uses:394 402 403 404 406 409 385 413 416 | |
Symbol 418 Graphic | Uses:366 | Used by:419 |
Symbol 419 MovieClip | Uses:418 369 371 372 373 | Used by:420 |
Symbol 420 MovieClip {assets.MiniGameIntroScreenBackground} [assets.MiniGameIntroScreenBackground] | Uses:363 419 | |
Symbol 421 Bitmap | Used by:422 | |
Symbol 422 Graphic | Uses:421 | Used by:460 |
Symbol 423 Bitmap | Used by:424 | |
Symbol 424 Graphic | Uses:423 | Used by:425 |
Symbol 425 MovieClip | Uses:424 | Used by:460 |
Symbol 426 Bitmap | Used by:427 | |
Symbol 427 Graphic | Uses:426 | Used by:455 |
Symbol 428 Bitmap | Used by:429 | |
Symbol 429 Graphic | Uses:428 | Used by:448 580 625 |
Symbol 430 Bitmap | Used by:431 | |
Symbol 431 Graphic | Uses:430 | Used by:448 580 625 |
Symbol 432 Bitmap | Used by:433 | |
Symbol 433 Graphic | Uses:432 | Used by:448 580 625 |
Symbol 434 Bitmap | Used by:435 | |
Symbol 435 Graphic | Uses:434 | Used by:448 580 625 |
Symbol 436 Bitmap | Used by:437 | |
Symbol 437 Graphic | Uses:436 | Used by:448 580 625 |
Symbol 438 Bitmap | Used by:439 | |
Symbol 439 Graphic | Uses:438 | Used by:448 580 625 |
Symbol 440 Bitmap | Used by:441 | |
Symbol 441 Graphic | Uses:440 | Used by:448 580 625 |
Symbol 442 Bitmap | Used by:443 | |
Symbol 443 Graphic | Uses:442 | Used by:448 580 625 |
Symbol 444 Bitmap | Used by:445 | |
Symbol 445 Graphic | Uses:444 | Used by:448 580 625 |
Symbol 446 Bitmap | Used by:447 | |
Symbol 447 Graphic | Uses:446 | Used by:448 580 625 |
Symbol 448 MovieClip | Uses:429 431 433 435 437 439 441 443 445 447 | Used by:455 |
Symbol 449 Bitmap | Used by:450 | |
Symbol 450 Graphic | Uses:449 | Used by:455 |
Symbol 451 Bitmap | Used by:452 | |
Symbol 452 Graphic | Uses:451 | Used by:455 |
Symbol 453 Bitmap | Used by:454 | |
Symbol 454 Graphic | Uses:453 | Used by:455 |
Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] | Uses:427 448 450 452 454 | Used by:460 |
Symbol 456 MovieClip {assets_fla.Clawcopy_80} [assets_fla.Clawcopy_80] | Uses:182 184 186 188 190 192 194 196 198 200 202 | Used by:460 |
Symbol 457 Bitmap | Used by:458 | |
Symbol 458 Graphic | Uses:457 | Used by:460 |
Symbol 459 Text | Uses:216 | Used by:460 |
Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] | Uses:422 425 455 456 458 459 385 114 | |
Symbol 461 Bitmap | Used by:462 | |
Symbol 462 Graphic | Uses:461 | Used by:556 |
Symbol 463 Bitmap | Used by:464 467 | |
Symbol 464 Graphic | Uses:463 | Used by:556 |
Symbol 465 Bitmap | Used by:466 | |
Symbol 466 Graphic | Uses:465 | Used by:556 |
Symbol 467 Graphic | Uses:463 | Used by:556 |
Symbol 468 Bitmap | Used by:469 | |
Symbol 469 Graphic | Uses:468 | Used by:556 |
Symbol 470 Bitmap | Used by:471 | |
Symbol 471 Graphic | Uses:470 | Used by:556 |
Symbol 472 Bitmap | Used by:473 | |
Symbol 473 Graphic | Uses:472 | Used by:556 |
Symbol 474 Bitmap | Used by:475 | |
Symbol 475 Graphic | Uses:474 | Used by:556 |
Symbol 476 Bitmap | Used by:477 | |
Symbol 477 Graphic | Uses:476 | Used by:556 |
Symbol 478 Bitmap | Used by:479 | |
Symbol 479 Graphic | Uses:478 | Used by:556 |
Symbol 480 Bitmap | Used by:481 | |
Symbol 481 Graphic | Uses:480 | Used by:556 |
Symbol 482 Bitmap | Used by:483 | |
Symbol 483 Graphic | Uses:482 | Used by:556 |
Symbol 484 Bitmap | Used by:485 | |
Symbol 485 Graphic | Uses:484 | Used by:556 |
Symbol 486 Bitmap | Used by:487 | |
Symbol 487 Graphic | Uses:486 | Used by:556 |
Symbol 488 Bitmap | Used by:489 | |
Symbol 489 Graphic | Uses:488 | Used by:556 |
Symbol 490 Bitmap | Used by:491 | |
Symbol 491 Graphic | Uses:490 | Used by:556 |
Symbol 492 Bitmap | Used by:493 | |
Symbol 493 Graphic | Uses:492 | Used by:556 |
Symbol 494 Bitmap | Used by:495 | |
Symbol 495 Graphic | Uses:494 | Used by:556 |
Symbol 496 Bitmap | Used by:497 | |
Symbol 497 Graphic | Uses:496 | Used by:556 |
Symbol 498 Bitmap | Used by:499 | |
Symbol 499 Graphic | Uses:498 | Used by:556 |
Symbol 500 Bitmap | Used by:501 | |
Symbol 501 Graphic | Uses:500 | Used by:556 |
Symbol 502 Bitmap | Used by:503 | |
Symbol 503 Graphic | Uses:502 | Used by:556 |
Symbol 504 Bitmap | Used by:505 | |
Symbol 505 Graphic | Uses:504 | Used by:556 |
Symbol 506 Bitmap | Used by:507 | |
Symbol 507 Graphic | Uses:506 | Used by:556 |
Symbol 508 Bitmap | Used by:509 | |
Symbol 509 Graphic | Uses:508 | Used by:556 |
Symbol 510 Bitmap | Used by:511 | |
Symbol 511 Graphic | Uses:510 | Used by:556 |
Symbol 512 Bitmap | Used by:513 | |
Symbol 513 Graphic | Uses:512 | Used by:556 |
Symbol 514 Bitmap | Used by:515 | |
Symbol 515 Graphic | Uses:514 | Used by:556 |
Symbol 516 Bitmap | Used by:517 | |
Symbol 517 Graphic | Uses:516 | Used by:556 |
Symbol 518 Bitmap | Used by:519 | |
Symbol 519 Graphic | Uses:518 | Used by:556 |
Symbol 520 Bitmap | Used by:521 | |
Symbol 521 Graphic | Uses:520 | Used by:556 |
Symbol 522 Bitmap | Used by:523 | |
Symbol 523 Graphic | Uses:522 | Used by:556 |
Symbol 524 Bitmap | Used by:525 | |
Symbol 525 Graphic | Uses:524 | Used by:556 |
Symbol 526 Bitmap | Used by:527 530 | |
Symbol 527 Graphic | Uses:526 | Used by:556 |
Symbol 528 Bitmap | Used by:529 | |
Symbol 529 Graphic | Uses:528 | Used by:556 |
Symbol 530 Graphic | Uses:526 | Used by:556 |
Symbol 531 Bitmap | Used by:532 | |
Symbol 532 Graphic | Uses:531 | Used by:556 |
Symbol 533 Bitmap | Used by:534 | |
Symbol 534 Graphic | Uses:533 | Used by:556 |
Symbol 535 Bitmap | Used by:536 | |
Symbol 536 Graphic | Uses:535 | Used by:556 |
Symbol 537 Bitmap | Used by:538 | |
Symbol 538 Graphic | Uses:537 | Used by:556 |
Symbol 539 Bitmap | Used by:540 | |
Symbol 540 Graphic | Uses:539 | Used by:556 |
Symbol 541 Bitmap | Used by:542 547 | |
Symbol 542 Graphic | Uses:541 | Used by:556 |
Symbol 543 Bitmap | Used by:544 | |
Symbol 544 Graphic | Uses:543 | Used by:556 |
Symbol 545 Bitmap | Used by:546 | |
Symbol 546 Graphic | Uses:545 | Used by:556 |
Symbol 547 Graphic | Uses:541 | Used by:556 |
Symbol 548 Bitmap | Used by:549 | |
Symbol 549 Graphic | Uses:548 | Used by:556 |
Symbol 550 Bitmap | Used by:551 | |
Symbol 551 Graphic | Uses:550 | Used by:556 |
Symbol 552 Bitmap | Used by:553 | |
Symbol 553 Graphic | Uses:552 | Used by:556 |
Symbol 554 Bitmap | Used by:555 | |
Symbol 555 Graphic | Uses:554 | Used by:556 |
Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] | Uses:462 464 466 467 469 471 473 475 477 479 481 483 485 487 489 491 493 495 497 499 501 503 505 507 509 511 513 515 517 519 521 523 525 527 529 530 532 534 536 538 540 542 544 546 547 549 551 553 555 | |
Symbol 557 Bitmap | Used by:558 | |
Symbol 558 Graphic | Uses:557 | Used by:580 |
Symbol 559 Bitmap | Used by:560 | |
Symbol 560 Graphic | Uses:559 | Used by:580 |
Symbol 561 Bitmap | Used by:562 | |
Symbol 562 Graphic | Uses:561 | Used by:563 |
Symbol 563 MovieClip | Uses:562 | Used by:580 |
Symbol 564 Bitmap | Used by:565 | |
Symbol 565 Graphic | Uses:564 | Used by:580 625 |
Symbol 566 Bitmap | Used by:567 | |
Symbol 567 Graphic | Uses:566 | Used by:580 625 |
Symbol 568 Bitmap | Used by:569 | |
Symbol 569 Graphic | Uses:568 | Used by:580 625 |
Symbol 570 Bitmap | Used by:571 | |
Symbol 571 Graphic | Uses:570 | Used by:580 625 |
Symbol 572 Bitmap | Used by:573 | |
Symbol 573 Graphic | Uses:572 | Used by:580 625 |
Symbol 574 Bitmap | Used by:575 | |
Symbol 575 Graphic | Uses:574 | Used by:580 625 |
Symbol 576 Bitmap | Used by:577 | |
Symbol 577 Graphic | Uses:576 | Used by:580 625 |
Symbol 578 Font | Used by:579 | |
Symbol 579 Text | Uses:578 | Used by:580 614 625 |
Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] | Uses:160 558 560 563 565 567 569 571 573 575 577 429 431 433 435 437 439 441 443 445 447 579 | |
Symbol 581 Bitmap | Used by:582 | |
Symbol 582 Graphic | Uses:581 | Used by:585 |
Symbol 583 Bitmap | Used by:584 | |
Symbol 584 Graphic | Uses:583 | Used by:585 |
Symbol 585 MovieClip {assets.KeypadFutureUI} [assets.KeypadFutureUI] | Uses:582 584 | |
Symbol 586 Bitmap | Used by:587 | |
Symbol 587 Graphic | Uses:586 | Used by:588 |
Symbol 588 MovieClip {assets.TerminalUI} [assets.TerminalUI] | Uses:587 | |
Symbol 589 Bitmap | Used by:590 615 | |
Symbol 590 Graphic | Uses:589 | Used by:593 |
Symbol 591 Bitmap | Used by:592 616 | |
Symbol 592 Graphic | Uses:591 | Used by:593 |
Symbol 593 MovieClip {assets.CameraLeftUI} [assets.CameraLeftUI] | Uses:590 592 | |
Symbol 594 Graphic | Used by:611 676 | |
Symbol 595 Bitmap | Used by:596 | |
Symbol 596 Graphic | Uses:595 | Used by:597 |
Symbol 597 MovieClip | Uses:596 | Used by:611 676 |
Symbol 598 Bitmap | Used by:599 | |
Symbol 599 Graphic | Uses:598 | Used by:600 |
Symbol 600 MovieClip | Uses:599 | Used by:611 676 |
Symbol 601 Bitmap | Used by:602 | |
Symbol 602 Graphic | Uses:601 | Used by:603 |
Symbol 603 MovieClip | Uses:602 | Used by:611 676 |
Symbol 604 Bitmap | Used by:605 | |
Symbol 605 Graphic | Uses:604 | Used by:611 647 676 686 734 |
Symbol 606 Bitmap | Used by:607 | |
Symbol 607 Graphic | Uses:606 | Used by:611 676 |
Symbol 608 Bitmap | Used by:609 | |
Symbol 609 Graphic | Uses:608 | Used by:610 647 686 734 |
Symbol 610 MovieClip | Uses:609 | Used by:611 676 |
Symbol 611 MovieClip {assets.DoorDoubleFutureUI} [assets.DoorDoubleFutureUI] | Uses:594 597 600 603 605 607 610 | |
Symbol 612 Bitmap | Used by:613 | |
Symbol 613 Graphic | Uses:612 | Used by:614 |
Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] | Uses:613 579 | |
Symbol 615 Graphic | Uses:589 | Used by:617 |
Symbol 616 Graphic | Uses:591 | Used by:617 |
Symbol 617 MovieClip {assets.CameraRightUI} [assets.CameraRightUI] | Uses:615 616 | |
Symbol 618 Bitmap | Used by:619 | |
Symbol 619 Graphic | Uses:618 | Used by:625 |
Symbol 620 Bitmap | Used by:621 | |
Symbol 621 Graphic | Uses:620 | Used by:625 |
Symbol 622 Bitmap | Used by:623 | |
Symbol 623 Graphic | Uses:622 | Used by:624 |
Symbol 624 MovieClip | Uses:623 | Used by:625 |
Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] | Uses:160 619 621 624 565 567 569 571 573 575 577 429 431 433 435 437 439 441 443 445 447 579 | |
Symbol 626 Bitmap | Used by:627 | |
Symbol 627 Graphic | Uses:626 | Used by:628 |
Symbol 628 MovieClip {assets.KeypadUI} [assets.KeypadUI] | Uses:627 100 | |
Symbol 629 Bitmap | Used by:630 | |
Symbol 630 Graphic | Uses:629 | Used by:631 |
Symbol 631 MovieClip {assets.TerminalFutureUI} [assets.TerminalFutureUI] | Uses:630 | |
Symbol 632 Bitmap | Used by:633 | |
Symbol 633 Graphic | Uses:632 | Used by:636 |
Symbol 634 Bitmap | Used by:635 | |
Symbol 635 Graphic | Uses:634 | Used by:636 |
Symbol 636 MovieClip {assets.SwitchUI} [assets.SwitchUI] | Uses:633 635 362 | |
Symbol 637 Bitmap | Used by:638 | |
Symbol 638 Graphic | Uses:637 | Used by:647 686 734 |
Symbol 639 Bitmap | Used by:640 | |
Symbol 640 Graphic | Uses:639 | Used by:641 |
Symbol 641 MovieClip | Uses:640 | Used by:647 |
Symbol 642 Bitmap | Used by:643 | |
Symbol 643 Graphic | Uses:642 | Used by:644 |
Symbol 644 MovieClip | Uses:643 | Used by:647 686 734 |
Symbol 645 Bitmap | Used by:646 | |
Symbol 646 Graphic | Uses:645 | Used by:647 686 734 |
Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] | Uses:638 293 641 644 605 646 609 | |
Symbol 648 Bitmap | Used by:649 669 | |
Symbol 649 Graphic | Uses:648 | Used by:654 |
Symbol 650 Bitmap | Used by:651 670 | |
Symbol 651 Graphic | Uses:650 | Used by:654 |
Symbol 652 Bitmap | Used by:653 671 | |
Symbol 653 Graphic | Uses:652 | Used by:654 |
Symbol 654 MovieClip {assets.SensorBottomUI} [assets.SensorBottomUI] | Uses:649 651 653 | |
Symbol 655 Bitmap | Used by:656 | |
Symbol 656 Graphic | Uses:655 | Used by:668 747 |
Symbol 657 Bitmap | Used by:658 745 | |
Symbol 658 Graphic | Uses:657 | Used by:659 |
Symbol 659 MovieClip | Uses:658 | Used by:668 |
Symbol 660 Bitmap | Used by:661 703 | |
Symbol 661 Graphic | Uses:660 | Used by:668 747 |
Symbol 662 Bitmap | Used by:663 | |
Symbol 663 Graphic | Uses:662 | Used by:668 747 |
Symbol 664 Bitmap | Used by:665 | |
Symbol 665 Graphic | Uses:664 | Used by:666 |
Symbol 666 MovieClip | Uses:665 | Used by:668 715 735 747 |
Symbol 667 Graphic | Used by:668 693 715 735 747 | |
Symbol 668 MovieClip {assets.DoorSingleSteelUI} [assets.DoorSingleSteelUI] | Uses:656 659 661 663 666 667 | |
Symbol 669 Graphic | Uses:648 | Used by:672 |
Symbol 670 Graphic | Uses:650 | Used by:672 |
Symbol 671 Graphic | Uses:652 | Used by:672 |
Symbol 672 MovieClip {assets.SensorTopUI} [assets.SensorTopUI] | Uses:669 670 671 | |
Symbol 673 Bitmap | Used by:674 | |
Symbol 674 Graphic | Uses:673 | Used by:675 |
Symbol 675 MovieClip | Uses:674 | Used by:676 |
Symbol 676 MovieClip {assets.DoorDoubleFutureExitUI} [assets.DoorDoubleFutureExitUI] | Uses:594 597 600 603 605 675 607 610 | |
Symbol 677 Bitmap | Used by:679 681 | |
Symbol 678 Bitmap | Used by:679 | |
Symbol 679 Graphic | Uses:677 678 | Used by:682 |
Symbol 680 Bitmap | Used by:681 | |
Symbol 681 Graphic | Uses:677 680 | Used by:682 |
Symbol 682 MovieClip {assets.SwitchFutureUI} [assets.SwitchFutureUI] | Uses:679 681 | |
Symbol 683 Bitmap | Used by:684 | |
Symbol 684 Graphic | Uses:683 | Used by:685 |
Symbol 685 MovieClip | Uses:684 | Used by:686 |
Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] | Uses:638 293 685 644 605 646 609 | |
Symbol 687 Bitmap | Used by:688 | |
Symbol 688 Graphic | Uses:687 | Used by:689 |
Symbol 689 MovieClip | Uses:688 | Used by:693 |
Symbol 690 Bitmap | Used by:691 | |
Symbol 691 Graphic | Uses:690 | Used by:692 |
Symbol 692 MovieClip | Uses:691 | Used by:693 |
Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] | Uses:689 667 692 | |
Symbol 694 Bitmap | Used by:695 | |
Symbol 695 Graphic | Uses:694 | Used by:715 735 |
Symbol 696 Bitmap | Used by:697 | |
Symbol 697 Graphic | Uses:696 | Used by:698 |
Symbol 698 MovieClip | Uses:697 | Used by:715 735 |
Symbol 699 Bitmap | Used by:700 | |
Symbol 700 Graphic | Uses:699 | Used by:701 |
Symbol 701 MovieClip | Uses:700 | Used by:715 735 |
Symbol 702 Bitmap | Used by:703 | |
Symbol 703 Graphic | Uses:702 660 | Used by:715 735 |
Symbol 704 Bitmap | Used by:705 | |
Symbol 705 Graphic | Uses:704 | Used by:706 |
Symbol 706 MovieClip | Uses:705 | Used by:715 |
Symbol 707 Bitmap | Used by:708 | |
Symbol 708 Graphic | Uses:707 | Used by:709 |
Symbol 709 MovieClip | Uses:708 | Used by:715 |
Symbol 710 Bitmap | Used by:711 | |
Symbol 711 Graphic | Uses:710 | Used by:715 735 |
Symbol 712 Bitmap | Used by:713 | |
Symbol 713 Graphic | Uses:712 | Used by:714 |
Symbol 714 MovieClip | Uses:713 | Used by:715 735 |
Symbol 715 MovieClip {assets.DoorDoubleSteelExitUI} [assets.DoorDoubleSteelExitUI] | Uses:695 698 701 703 706 709 711 666 714 667 | |
Symbol 716 Bitmap | Used by:717 | |
Symbol 717 Graphic | Uses:716 | Used by:719 |
Symbol 718 Graphic | Used by:719 | |
Symbol 719 MovieClip {assets.WiresUI} [assets.WiresUI] | Uses:717 718 100 | |
Symbol 720 Bitmap | Used by:721 | |
Symbol 721 Graphic | Uses:720 | Used by:730 |
Symbol 722 Bitmap | Used by:723 729 | |
Symbol 723 Graphic | Uses:722 | Used by:730 |
Symbol 724 Bitmap | Used by:725 | |
Symbol 725 Graphic | Uses:724 | Used by:730 |
Symbol 726 Graphic | Used by:727 | |
Symbol 727 MovieClip | Uses:726 | Used by:728 |
Symbol 728 MovieClip | Uses:727 | Used by:730 |
Symbol 729 Graphic | Uses:722 | Used by:730 |
Symbol 730 MovieClip {assets.LaserFutureUI} [assets.LaserFutureUI] | Uses:721 723 725 728 729 | |
Symbol 731 Bitmap | Used by:732 | |
Symbol 732 Graphic | Uses:731 | Used by:733 |
Symbol 733 MovieClip | Uses:732 | Used by:734 |
Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] | Uses:638 293 733 644 605 646 609 | |
Symbol 735 MovieClip {assets.DoorDoubleSteelUI} [assets.DoorDoubleSteelUI] | Uses:695 698 701 703 711 666 714 667 | |
Symbol 736 Graphic | Used by:743 | |
Symbol 737 Bitmap | Used by:738 | |
Symbol 738 Graphic | Uses:737 | Used by:743 |
Symbol 739 Bitmap | Used by:740 | |
Symbol 740 Graphic | Uses:739 | Used by:743 |
Symbol 741 Bitmap | Used by:742 | |
Symbol 742 Graphic | Uses:741 | Used by:743 |
Symbol 743 MovieClip {assets.LaserBigUI} [assets.LaserBigUI] | Uses:736 738 740 742 | |
Symbol 744 Bitmap | Used by:745 | |
Symbol 745 Graphic | Uses:744 657 | Used by:746 |
Symbol 746 MovieClip | Uses:745 | Used by:747 |
Symbol 747 MovieClip {assets.DoorSingleSteelExitUI} [assets.DoorSingleSteelExitUI] | Uses:656 746 661 663 666 667 | |
Symbol 748 EditableText | Uses:288 | Used by:793 |
Symbol 749 Bitmap | Used by:750 | |
Symbol 750 Graphic | Uses:749 | Used by:751 |
Symbol 751 MovieClip | Uses:750 | Used by:793 |
Symbol 752 Bitmap | Used by:753 | |
Symbol 753 Graphic | Uses:752 | Used by:754 |
Symbol 754 MovieClip | Uses:753 | Used by:793 |
Symbol 755 Bitmap | Used by:756 | |
Symbol 756 Graphic | Uses:755 | Used by:757 |
Symbol 757 MovieClip | Uses:756 | Used by:758 |
Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] | Uses:757 252 | Used by:793 817 |
Symbol 759 Bitmap | Used by:760 | |
Symbol 760 Graphic | Uses:759 | Used by:761 |
Symbol 761 MovieClip | Uses:760 | Used by:762 |
Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] | Uses:761 252 | Used by:793 |
Symbol 763 Bitmap | Used by:764 | |
Symbol 764 Graphic | Uses:763 | Used by:765 |
Symbol 765 MovieClip | Uses:764 | Used by:793 817 |
Symbol 766 Bitmap | Used by:767 | |
Symbol 767 Graphic | Uses:766 | Used by:768 |
Symbol 768 MovieClip | Uses:767 | Used by:770 |
Symbol 769 EditableText | Uses:57 | Used by:770 |
Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] | Uses:768 769 | Used by:793 817 |
Symbol 771 Text | Uses:57 | Used by:793 |
Symbol 772 Bitmap | Used by:773 | |
Symbol 773 Graphic | Uses:772 | Used by:774 |
Symbol 774 MovieClip | Uses:773 | Used by:775 |
Symbol 775 Button | Uses:774 293 | Used by:793 |
Symbol 776 Bitmap | Used by:777 | |
Symbol 777 Graphic | Uses:776 | Used by:778 |
Symbol 778 MovieClip | Uses:777 | Used by:793 |
Symbol 779 Bitmap | Used by:780 | |
Symbol 780 Graphic | Uses:779 | Used by:781 |
Symbol 781 MovieClip | Uses:780 | Used by:793 |
Symbol 782 Bitmap | Used by:783 | |
Symbol 783 Graphic | Uses:782 | Used by:784 |
Symbol 784 MovieClip | Uses:783 | Used by:785 |
Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] | Uses:784 252 | Used by:793 817 |
Symbol 786 Bitmap | Used by:787 | |
Symbol 787 Graphic | Uses:786 | Used by:788 |
Symbol 788 MovieClip | Uses:787 | Used by:789 |
Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] | Uses:788 252 | Used by:793 817 |
Symbol 790 Bitmap | Used by:791 | |
Symbol 791 Graphic | Uses:790 | Used by:792 |
Symbol 792 MovieClip | Uses:791 | Used by:793 817 |
Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] | Uses:118 6 748 751 754 758 762 765 770 771 775 778 781 785 789 792 | |
Symbol 794 Graphic | Used by:798 | |
Symbol 795 Bitmap | Used by:796 | |
Symbol 796 Graphic | Uses:795 | Used by:798 |
Symbol 797 MovieClip | Uses:160 | Used by:798 |
Symbol 798 MovieClip {assets.MedalSmall} [assets.MedalSmall] | Uses:794 796 797 159 | |
Symbol 799 Bitmap | Used by:800 | |
Symbol 800 Graphic | Uses:799 | Used by:801 |
Symbol 801 MovieClip | Uses:800 | Used by:802 |
Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] | Uses:801 252 | Used by:817 |
Symbol 803 Text | Uses:57 | Used by:817 |
Symbol 804 Text | Uses:57 | Used by:817 |
Symbol 805 Bitmap | Used by:806 | |
Symbol 806 Graphic | Uses:805 | Used by:817 |
Symbol 807 Bitmap | Used by:808 | |
Symbol 808 Graphic | Uses:807 | Used by:809 |
Symbol 809 MovieClip | Uses:808 | Used by:817 |
Symbol 810 Bitmap | Used by:811 | |
Symbol 811 Graphic | Uses:810 | Used by:812 |
Symbol 812 MovieClip | Uses:811 | Used by:817 |
Symbol 813 Bitmap | Used by:814 | |
Symbol 814 Graphic | Uses:813 | Used by:815 |
Symbol 815 MovieClip | Uses:814 | Used by:817 |
Symbol 816 EditableText | Uses:288 | Used by:817 |
Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] | Uses:118 758 789 802 770 803 804 806 6 809 765 812 815 792 785 816 | |
Symbol 818 Graphic | Used by:821 | |
Symbol 819 Font | Used by:820 | |
Symbol 820 EditableText | Uses:819 | Used by:821 |
Symbol 821 MovieClip {assets.MessageBoxUI} [assets.MessageBoxUI] | Uses:818 820 | |
Streaming Sound 1 | Used by:Symbol 343 MovieClip {assets.VideoUnlockSequence} [assets.VideoUnlockSequence] | |
Streaming Sound 2 | Used by:Symbol 345 MovieClip {assets.VideoIntroSequence} [assets.VideoIntroSequence] | |
Streaming Sound 3 | Used by:Symbol 347 MovieClip {assets.VideoEndSequence} [assets.VideoEndSequence] |
Instance Names
"bar" | Symbol 16 MovieClip {assets.Preloader} [assets.Preloader] Frame 1 | Symbol 10 MovieClip |
"hover" | Symbol 59 MovieClip {assets_fla.HudUI_19} [assets_fla.HudUI_19] Frame 1 | Symbol 56 MovieClip |
"label" | Symbol 59 MovieClip {assets_fla.HudUI_19} [assets_fla.HudUI_19] Frame 1 | Symbol 58 EditableText |
"hover" | Symbol 63 MovieClip {assets_fla.HudUi_21} [assets_fla.HudUi_21] Frame 1 | Symbol 61 MovieClip |
"label" | Symbol 63 MovieClip {assets_fla.HudUi_21} [assets_fla.HudUi_21] Frame 1 | Symbol 62 EditableText |
"hover" | Symbol 67 MovieClip {assets_fla.HudUi_23} [assets_fla.HudUi_23] Frame 1 | Symbol 65 MovieClip |
"label" | Symbol 67 MovieClip {assets_fla.HudUi_23} [assets_fla.HudUi_23] Frame 1 | Symbol 66 EditableText |
"hover" | Symbol 71 MovieClip {assets_fla.HudUi_25} [assets_fla.HudUi_25] Frame 1 | Symbol 69 MovieClip |
"label" | Symbol 71 MovieClip {assets_fla.HudUi_25} [assets_fla.HudUi_25] Frame 1 | Symbol 70 EditableText |
"hover" | Symbol 77 MovieClip {assets_fla.HudUI_28} [assets_fla.HudUI_28] Frame 1 | Symbol 75 MovieClip |
"label" | Symbol 77 MovieClip {assets_fla.HudUI_28} [assets_fla.HudUI_28] Frame 1 | Symbol 76 EditableText |
"hover" | Symbol 81 MovieClip {assets_fla.HudUI_30} [assets_fla.HudUI_30] Frame 1 | Symbol 79 MovieClip |
"label" | Symbol 81 MovieClip {assets_fla.HudUI_30} [assets_fla.HudUI_30] Frame 1 | Symbol 80 EditableText |
"ButtonPause" | Symbol 83 MovieClip {assets_fla.HudUI_27} [assets_fla.HudUI_27] Frame 1 | Symbol 77 MovieClip {assets_fla.HudUI_28} [assets_fla.HudUI_28] |
"ButtonMain" | Symbol 83 MovieClip {assets_fla.HudUI_27} [assets_fla.HudUI_27] Frame 1 | Symbol 81 MovieClip {assets_fla.HudUI_30} [assets_fla.HudUI_30] |
"BaseHelp" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 45 MovieClip |
"BaseShare" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 48 MovieClip |
"BaseMore" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 51 MovieClip |
"BaseScores" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 54 MovieClip |
"ButtonHelp" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 59 MovieClip {assets_fla.HudUI_19} [assets_fla.HudUI_19] |
"ButtonScores" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 63 MovieClip {assets_fla.HudUi_21} [assets_fla.HudUi_21] |
"ButtonMore" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 67 MovieClip {assets_fla.HudUi_23} [assets_fla.HudUi_23] |
"ButtonShare" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 71 MovieClip {assets_fla.HudUi_25} [assets_fla.HudUi_25] |
"InGame" | Symbol 84 MovieClip {assets.HudUIButtons} [assets.HudUIButtons] Frame 1 | Symbol 83 MovieClip {assets_fla.HudUI_27} [assets_fla.HudUI_27] |
"musicSlider" | Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] Frame 1 | Symbol 102 MovieClip {assets_fla.soundSlider_136} [assets_fla.soundSlider_136] |
"soundSlider" | Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] Frame 1 | Symbol 102 MovieClip {assets_fla.soundSlider_136} [assets_fla.soundSlider_136] |
"soundButton" | Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] Frame 1 | Symbol 110 Button |
"musicButton" | Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] Frame 1 | Symbol 110 Button |
"top" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 87 MovieClip |
"soundControls" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 111 MovieClip {assets_fla.SoundControls_135} [assets_fla.SoundControls_135] |
"scoretext" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 112 EditableText |
"btnMarvel" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 114 Button |
"btnCredits" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 114 Button |
"btnXmen" | Symbol 115 MovieClip {assets.HudUI} [assets.HudUI] Frame 1 | Symbol 114 Button |
"titleText" | Symbol 159 MovieClip {assets_fla.tooltip_12} [assets_fla.tooltip_12] Frame 1 | Symbol 157 EditableText |
"descriptionText" | Symbol 159 MovieClip {assets_fla.tooltip_12} [assets_fla.tooltip_12] Frame 1 | Symbol 158 EditableText |
"scratch" | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] Frame 1 | Symbol 154 MovieClip |
"toolTip" | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] Frame 1 | Symbol 159 MovieClip {assets_fla.tooltip_12} [assets_fla.tooltip_12] |
"hit" | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] Frame 1 | Symbol 161 MovieClip |
"baseSecret" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 124 MovieClip |
"baseIntel" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 127 MovieClip |
"baseNinja" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 130 MovieClip |
"baseDestroyer" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 133 MovieClip |
"baseSabotuer" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 136 MovieClip |
"baseWeaponx" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 139 MovieClip |
"baseBest" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 142 MovieClip |
"baseScrapyard" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 145 MovieClip |
"baseMastermind" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 148 MovieClip |
"baseGenius" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 151 MovieClip |
"medalWeaponX" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalBest" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalScrapyard" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalMastermind" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalGenius" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalSaboteur" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalDestroyer" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalIntel" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalSecret" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"medalNinja" | Symbol 166 MovieClip {assets.pages.MedalsUI} [assets.pages.MedalsUI] Frame 1 | Symbol 162 MovieClip {assets_fla.medalsOverlay_116} [assets_fla.medalsOverlay_116] |
"sponsor" | Symbol 203 MovieClip {assets.pages.TitleUI} [assets.pages.TitleUI] Frame 1 | Symbol 170 MovieClip |
"pageRogue" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 1 | Symbol 220 MovieClip |
"pageShadowcat" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 1 | Symbol 226 MovieClip |
"pageBeast" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 1 | Symbol 232 MovieClip |
"pageCyclops" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 1 | Symbol 238 MovieClip |
"pageWolverine" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 1 | Symbol 244 MovieClip |
"next" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] |
"prev" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] |
"iconRogue" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 256 MovieClip |
"iconShadowcat" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 259 MovieClip |
"iconBeast" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 262 MovieClip |
"iconCyclops" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 265 MovieClip |
"iconWolverine" | Symbol 269 MovieClip {assets.pages.mutantButtons} [assets.pages.mutantButtons] Frame 1 | Symbol 268 MovieClip |
"buttonContainer" | Symbol 285 MovieClip {assets.HudStartUI} [assets.HudStartUI] Frame 1 | Symbol 10 MovieClip |
"btnStart" | Symbol 285 MovieClip {assets.HudStartUI} [assets.HudStartUI] Frame 1 | Symbol 283 Button |
"textScore" | Symbol 301 MovieClip {assets.LevelEndFailedUI} [assets.LevelEndFailedUI] Frame 1 | Symbol 289 EditableText |
"btnPlay" | Symbol 301 MovieClip {assets.LevelEndFailedUI} [assets.LevelEndFailedUI] Frame 1 | Symbol 294 Button |
"textTime" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 302 EditableText |
"textAlarms" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 303 EditableText |
"textScore" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 304 EditableText |
"textBonusPoints" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 305 EditableText |
"medalsEarned" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 10 MovieClip |
"textGameTime" | Symbol 327 MovieClip {assets.LevelEndGameCompleteUI} [assets.LevelEndGameCompleteUI] Frame 1 | Symbol 302 EditableText |
"textTime" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 328 EditableText |
"textAlarms" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 329 EditableText |
"textScore" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 330 EditableText |
"textBonusPoints" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 331 EditableText |
"medalsEarned" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 10 MovieClip |
"btnPlay" | Symbol 339 MovieClip {assets.LevelEndCompleteUI} [assets.LevelEndCompleteUI] Frame 1 | Symbol 335 Button |
"hover" | Symbol 359 MovieClip {assets.HudItemUI} [assets.HudItemUI] Frame 1 | Symbol 352 MovieClip |
"titleText" | Symbol 359 MovieClip {assets.HudItemUI} [assets.HudItemUI] Frame 1 | Symbol 353 EditableText |
"locked" | Symbol 359 MovieClip {assets.HudItemUI} [assets.HudItemUI] Frame 1 | Symbol 357 MovieClip |
"infoText" | Symbol 387 MovieClip {assets.MiniGameIntro} [assets.MiniGameIntro] Frame 1 | Symbol 379 EditableText |
"btnClose" | Symbol 387 MovieClip {assets.MiniGameIntro} [assets.MiniGameIntro] Frame 1 | Symbol 385 Button |
"infoText" | Symbol 392 MovieClip {assets.MiniGameTerminal} [assets.MiniGameTerminal] Frame 1 | Symbol 391 EditableText |
"btnClose" | Symbol 392 MovieClip {assets.MiniGameTerminal} [assets.MiniGameTerminal] Frame 1 | Symbol 385 Button |
"base" | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] Frame 1 | Symbol 395 MovieClip |
"digit" | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] Frame 1 | Symbol 397 EditableText |
"sheen" | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] Frame 1 | Symbol 399 MovieClip |
"digitsText" | Symbol 406 MovieClip {assets_fla.Terminal_72} [assets_fla.Terminal_72] Frame 1 | Symbol 405 EditableText |
"key4" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key1" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key7" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key5" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key2" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key8" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key6" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key3" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"key9" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] |
"status" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 404 MovieClip {assets_fla.Terminal_71} [assets_fla.Terminal_71] |
"digits" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 406 MovieClip {assets_fla.Terminal_72} [assets_fla.Terminal_72] |
"btnClose" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 385 Button |
"btnClear" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 413 Button |
"btnSubmit" | Symbol 417 MovieClip {assets.MiniGameKeyboard} [assets.MiniGameKeyboard] Frame 1 | Symbol 416 Button |
"greenbar" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 425 MovieClip |
"wires" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] |
"claw" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 456 MovieClip {assets_fla.Clawcopy_80} [assets_fla.Clawcopy_80] |
"btnClose" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 385 Button |
"btnGreen" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 114 Button |
"btnBlue" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 114 Button |
"btnRed" | Symbol 460 MovieClip {assets.MiniGameWires} [assets.MiniGameWires] Frame 1 | Symbol 114 Button |
"button" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 1 | Symbol 252 Button {NavButtonUI} [NavButtonUI] |
"input" | Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] Frame 1 | Symbol 769 EditableText |
"button" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 1 | Symbol 252 Button {NavButtonUI} [NavButtonUI] |
"button" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 1 | Symbol 252 Button {NavButtonUI} [NavButtonUI] |
"score" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 8 | Symbol 748 EditableText |
"loginButton" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 8 | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] |
"closeButton" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 8 | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] |
"nameField" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 21 | Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] |
"submitButton" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 21 | Symbol 775 Button |
"tryAgainButton" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 78 | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] |
"skipButton" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 78 | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] |
"hit" | Symbol 798 MovieClip {assets.MedalSmall} [assets.MedalSmall] Frame 1 | Symbol 797 MovieClip |
"toolTip" | Symbol 798 MovieClip {assets.MedalSmall} [assets.MedalSmall] Frame 1 | Symbol 159 MovieClip {assets_fla.tooltip_12} [assets_fla.tooltip_12] |
"button" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 1 | Symbol 252 Button {NavButtonUI} [NavButtonUI] |
"loginButton" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] |
"skipButton" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] |
"registerButton" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] |
"nameEntry" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 | Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] |
"passEntry" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 | Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] |
"tryAgainButton" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 55 | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] |
"skipButton" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 55 | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] |
"errorMessage" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 55 | Symbol 816 EditableText |
"description" | Symbol 821 MovieClip {assets.MessageBoxUI} [assets.MessageBoxUI] Frame 1 | Symbol 820 EditableText |
Special Tags
FileAttributes (69) | Timeline Frame 1 | Access network only, Metadata present, AS3. |
SWFMetaData (77) | Timeline Frame 1 | 456 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..." |
ScriptLimits (65) | Timeline Frame 1 | MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds |
ExportAssets (56) | Timeline Frame 1 | Symbol 16 as "assets.Preloader" |
ExportAssets (56) | Timeline Frame 1 | Symbol 6 as "assets_fla.scanLines_52" |
ExportAssets (56) | Timeline Frame 2 | Symbol 17 as "assets.sfx_access_denied_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 18 as "assets.sfx_dry_fire_02" |
ExportAssets (56) | Timeline Frame 2 | Symbol 19 as "assets.sfx_machete_normal_08" |
ExportAssets (56) | Timeline Frame 2 | Symbol 20 as "assets.sfx_MRD_level_loop_3" |
ExportAssets (56) | Timeline Frame 2 | Symbol 21 as "assets.sfx_cursor" |
ExportAssets (56) | Timeline Frame 2 | Symbol 22 as "assets.sfx_wire_slice_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 23 as "assets.sfx_turbolift_doorclose_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 24 as "assets.sfx_throw_whoosh_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 25 as "assets.sfx_MRD_level_loop_4" |
ExportAssets (56) | Timeline Frame 2 | Symbol 26 as "assets.sfx_mech_operate_17" |
ExportAssets (56) | Timeline Frame 2 | Symbol 27 as "assets.sfx_MRD_level_loop_2" |
ExportAssets (56) | Timeline Frame 2 | Symbol 28 as "assets.sfx_throw_whoosh_03" |
ExportAssets (56) | Timeline Frame 2 | Symbol 29 as "assets.sfx_tram_crash_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 30 as "assets.sfx_thud2" |
ExportAssets (56) | Timeline Frame 2 | Symbol 31 as "assets.sfx_aerial_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 32 as "assets.sfx_machete_heavy_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 33 as "assets.sfx_console_entry_03" |
ExportAssets (56) | Timeline Frame 2 | Symbol 34 as "assets.sfx_staff_12" |
ExportAssets (56) | Timeline Frame 2 | Symbol 35 as "assets.sfx_machete_normal_04" |
ExportAssets (56) | Timeline Frame 2 | Symbol 36 as "assets.sfx_thud" |
ExportAssets (56) | Timeline Frame 2 | Symbol 37 as "assets.sfx_charge_kill_stab_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 38 as "assets.sfx_machete_normal_02" |
ExportAssets (56) | Timeline Frame 2 | Symbol 39 as "assets.sfx_wall_climb_02" |
ExportAssets (56) | Timeline Frame 2 | Symbol 40 as "assets.sfx_auto_turret_scan_01" |
ExportAssets (56) | Timeline Frame 2 | Symbol 41 as "assets.sfx_MRD_intro_main" |
ExportAssets (56) | Timeline Frame 2 | Symbol 42 as "assets.sfx_SOUNDDOGS_AL_147468" |
ExportAssets (56) | Timeline Frame 2 | Symbol 84 as "assets.HudUIButtons" |
ExportAssets (56) | Timeline Frame 2 | Symbol 115 as "assets.HudUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 166 as "assets.pages.MedalsUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 203 as "assets.pages.TitleUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 210 as "assets.pages.CreditsUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 248 as "assets.pages.MutantsUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 269 as "assets.pages.mutantButtons" |
ExportAssets (56) | Timeline Frame 2 | Symbol 276 as "assets.pages.HelpUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 285 as "assets.HudStartUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 63 as "assets_fla.HudUi_21" |
ExportAssets (56) | Timeline Frame 2 | Symbol 67 as "assets_fla.HudUi_23" |
ExportAssets (56) | Timeline Frame 2 | Symbol 83 as "assets_fla.HudUI_27" |
ExportAssets (56) | Timeline Frame 2 | Symbol 59 as "assets_fla.HudUI_19" |
ExportAssets (56) | Timeline Frame 2 | Symbol 71 as "assets_fla.HudUi_25" |
ExportAssets (56) | Timeline Frame 2 | Symbol 111 as "assets_fla.SoundControls_135" |
ExportAssets (56) | Timeline Frame 2 | Symbol 162 as "assets_fla.medalsOverlay_116" |
ExportAssets (56) | Timeline Frame 2 | Symbol 253 as "assets_fla.highscoresNavArrow_2" |
ExportAssets (56) | Timeline Frame 2 | Symbol 301 as "assets.LevelEndFailedUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 327 as "assets.LevelEndGameCompleteUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 339 as "assets.LevelEndCompleteUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 343 as "assets.VideoUnlockSequence" |
ExportAssets (56) | Timeline Frame 2 | Symbol 345 as "assets.VideoIntroSequence" |
ExportAssets (56) | Timeline Frame 2 | Symbol 347 as "assets.VideoEndSequence" |
ExportAssets (56) | Timeline Frame 2 | Symbol 350 as "assets.HudItemBaseUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 359 as "assets.HudItemUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 77 as "assets_fla.HudUI_28" |
ExportAssets (56) | Timeline Frame 2 | Symbol 81 as "assets_fla.HudUI_30" |
ExportAssets (56) | Timeline Frame 2 | Symbol 102 as "assets_fla.soundSlider_136" |
ExportAssets (56) | Timeline Frame 2 | Symbol 159 as "assets_fla.tooltip_12" |
ExportAssets (56) | Timeline Frame 2 | Symbol 252 as "NavButtonUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 360 as "assets.tilesBackground" |
ExportAssets (56) | Timeline Frame 2 | Symbol 361 as "assets.tilesForeground" |
ExportAssets (56) | Timeline Frame 2 | Symbol 362 as "assets.Scanline" |
ExportAssets (56) | Timeline Frame 2 | Symbol 374 as "assets.MiniGameTerminalScreen" |
ExportAssets (56) | Timeline Frame 2 | Symbol 387 as "assets.MiniGameIntro" |
ExportAssets (56) | Timeline Frame 2 | Symbol 392 as "assets.MiniGameTerminal" |
ExportAssets (56) | Timeline Frame 2 | Symbol 417 as "assets.MiniGameKeyboard" |
ExportAssets (56) | Timeline Frame 2 | Symbol 420 as "assets.MiniGameIntroScreenBackground" |
ExportAssets (56) | Timeline Frame 2 | Symbol 460 as "assets.MiniGameWires" |
ExportAssets (56) | Timeline Frame 2 | Symbol 556 as "assets.HeroUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 580 as "assets.RobotUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 585 as "assets.KeypadFutureUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 588 as "assets.TerminalUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 593 as "assets.CameraLeftUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 611 as "assets.DoorDoubleFutureUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 614 as "assets.HumanUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 617 as "assets.CameraRightUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 625 as "assets.Robot2UI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 628 as "assets.KeypadUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 631 as "assets.TerminalFutureUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 636 as "assets.SwitchUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 647 as "assets.Mutant4" |
ExportAssets (56) | Timeline Frame 2 | Symbol 654 as "assets.SensorBottomUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 668 as "assets.DoorSingleSteelUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 672 as "assets.SensorTopUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 676 as "assets.DoorDoubleFutureExitUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 682 as "assets.SwitchFutureUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 686 as "assets.Mutant3" |
ExportAssets (56) | Timeline Frame 2 | Symbol 693 as "assets.Mutant1" |
ExportAssets (56) | Timeline Frame 2 | Symbol 715 as "assets.DoorDoubleSteelExitUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 719 as "assets.WiresUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 730 as "assets.LaserFutureUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 734 as "assets.Mutant2" |
ExportAssets (56) | Timeline Frame 2 | Symbol 735 as "assets.DoorDoubleSteelUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 743 as "assets.LaserBigUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 747 as "assets.DoorSingleSteelExitUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 793 as "assets.pages.SubmitScoreUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 798 as "assets.MedalSmall" |
ExportAssets (56) | Timeline Frame 2 | Symbol 402 as "assets_fla.Key_68" |
ExportAssets (56) | Timeline Frame 2 | Symbol 404 as "assets_fla.Terminal_71" |
ExportAssets (56) | Timeline Frame 2 | Symbol 406 as "assets_fla.Terminal_72" |
ExportAssets (56) | Timeline Frame 2 | Symbol 455 as "assets_fla.Wires_78" |
ExportAssets (56) | Timeline Frame 2 | Symbol 456 as "assets_fla.Clawcopy_80" |
ExportAssets (56) | Timeline Frame 2 | Symbol 762 as "assets_fla.submitScoreClose_152" |
ExportAssets (56) | Timeline Frame 2 | Symbol 758 as "assets_fla.loginButton_150" |
ExportAssets (56) | Timeline Frame 2 | Symbol 770 as "assets_fla.loginEntry_155" |
ExportAssets (56) | Timeline Frame 2 | Symbol 789 as "assets_fla.skipButton_163" |
ExportAssets (56) | Timeline Frame 2 | Symbol 785 as "assets_fla.tryAgainButton_161" |
ExportAssets (56) | Timeline Frame 2 | Symbol 817 as "assets.MarvelLoginUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 821 as "assets.MessageBoxUI" |
ExportAssets (56) | Timeline Frame 2 | Symbol 802 as "assets_fla.registerButton_183" |
SerialNumber (41) | Timeline Frame 1 |
Labels
"preloader_AbstractPreloaderView" | Frame 1 |
"Main" | Frame 2 |
"off" | Symbol 102 MovieClip {assets_fla.soundSlider_136} [assets_fla.soundSlider_136] Frame 2 |
"on" | Symbol 102 MovieClip {assets_fla.soundSlider_136} [assets_fla.soundSlider_136] Frame 9 |
"intro" | Symbol 203 MovieClip {assets.pages.TitleUI} [assets.pages.TitleUI] Frame 2 |
"loading" | Symbol 248 MovieClip {assets.pages.MutantsUI} [assets.pages.MutantsUI] Frame 25 |
"over" | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] Frame 2 |
"press" | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] Frame 11 |
"release" | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] Frame 20 |
"out" | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] Frame 30 |
"releaseOutside" | Symbol 253 MovieClip {assets_fla.highscoresNavArrow_2} [assets_fla.highscoresNavArrow_2] Frame 40 |
"up" | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] Frame 1 |
"down" | Symbol 402 MovieClip {assets_fla.Key_68} [assets_fla.Key_68] Frame 2 |
"red" | Symbol 404 MovieClip {assets_fla.Terminal_71} [assets_fla.Terminal_71] Frame 1 |
"green" | Symbol 404 MovieClip {assets_fla.Terminal_71} [assets_fla.Terminal_71] Frame 2 |
"all" | Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] Frame 1 |
"green" | Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] Frame 2 |
"blue" | Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] Frame 3 |
"red" | Symbol 455 MovieClip {assets_fla.Wires_78} [assets_fla.Wires_78] Frame 4 |
"off" | Symbol 456 MovieClip {assets_fla.Clawcopy_80} [assets_fla.Clawcopy_80] Frame 1 |
"swipe" | Symbol 456 MovieClip {assets_fla.Clawcopy_80} [assets_fla.Clawcopy_80] Frame 2 |
"idle" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 1 |
"crouch" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 25 |
"walk" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 42 |
"jumpSmall" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 60 |
"attack" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 71 |
"fall" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 81 |
"hold" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 91 |
"hit" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 98 |
"doorIn" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 110 |
"doorOut" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 118 |
"toCrawl" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 126 |
"fromCrawl" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 139 |
"roofHold" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 145 |
"roofMove" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 173 |
"attack2" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 198 |
"crawl" | Symbol 556 MovieClip {assets.HeroUI} [assets.HeroUI] Frame 209 |
"walkStart" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 1 |
"walkEnd" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 7 |
"explodeStart" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 8 |
"explodeEnd" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 30 |
"huhStart" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 31 |
"huhEnd" | Symbol 580 MovieClip {assets.RobotUI} [assets.RobotUI] Frame 38 |
"off" | Symbol 585 MovieClip {assets.KeypadFutureUI} [assets.KeypadFutureUI] Frame 1 |
"onStart" | Symbol 585 MovieClip {assets.KeypadFutureUI} [assets.KeypadFutureUI] Frame 2 |
"onEnd" | Symbol 585 MovieClip {assets.KeypadFutureUI} [assets.KeypadFutureUI] Frame 10 |
"on" | Symbol 585 MovieClip {assets.KeypadFutureUI} [assets.KeypadFutureUI] Frame 11 |
"on" | Symbol 588 MovieClip {assets.TerminalUI} [assets.TerminalUI] Frame 1 |
"off" | Symbol 588 MovieClip {assets.TerminalUI} [assets.TerminalUI] Frame 4 |
"off" | Symbol 593 MovieClip {assets.CameraLeftUI} [assets.CameraLeftUI] Frame 1 |
"onStart" | Symbol 593 MovieClip {assets.CameraLeftUI} [assets.CameraLeftUI] Frame 2 |
"onEnd" | Symbol 593 MovieClip {assets.CameraLeftUI} [assets.CameraLeftUI] Frame 7 |
"close" | Symbol 611 MovieClip {assets.DoorDoubleFutureUI} [assets.DoorDoubleFutureUI] Frame 1 |
"openStart" | Symbol 611 MovieClip {assets.DoorDoubleFutureUI} [assets.DoorDoubleFutureUI] Frame 2 |
"openEnd" | Symbol 611 MovieClip {assets.DoorDoubleFutureUI} [assets.DoorDoubleFutureUI] Frame 37 |
"open" | Symbol 611 MovieClip {assets.DoorDoubleFutureUI} [assets.DoorDoubleFutureUI] Frame 38 |
"walkStart" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 1 |
"walkEnd" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 7 |
"explodeStart" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 8 |
"explodeEnd" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 9 |
"huhStart" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 10 |
"huhEnd" | Symbol 614 MovieClip {assets.HumanUI} [assets.HumanUI] Frame 17 |
"off" | Symbol 617 MovieClip {assets.CameraRightUI} [assets.CameraRightUI] Frame 1 |
"onStart" | Symbol 617 MovieClip {assets.CameraRightUI} [assets.CameraRightUI] Frame 2 |
"onEnd" | Symbol 617 MovieClip {assets.CameraRightUI} [assets.CameraRightUI] Frame 7 |
"walkStart" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 1 |
"walkEnd" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 7 |
"explodeStart" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 8 |
"explodeEnd" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 30 |
"huhStart" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 31 |
"huhEnd" | Symbol 625 MovieClip {assets.Robot2UI} [assets.Robot2UI] Frame 38 |
"off" | Symbol 628 MovieClip {assets.KeypadUI} [assets.KeypadUI] Frame 1 |
"onStart" | Symbol 628 MovieClip {assets.KeypadUI} [assets.KeypadUI] Frame 2 |
"onEnd" | Symbol 628 MovieClip {assets.KeypadUI} [assets.KeypadUI] Frame 10 |
"on" | Symbol 628 MovieClip {assets.KeypadUI} [assets.KeypadUI] Frame 11 |
"on" | Symbol 631 MovieClip {assets.TerminalFutureUI} [assets.TerminalFutureUI] Frame 1 |
"off" | Symbol 631 MovieClip {assets.TerminalFutureUI} [assets.TerminalFutureUI] Frame 4 |
"off" | Symbol 636 MovieClip {assets.SwitchUI} [assets.SwitchUI] Frame 1 |
"onStart" | Symbol 636 MovieClip {assets.SwitchUI} [assets.SwitchUI] Frame 2 |
"onEnd" | Symbol 636 MovieClip {assets.SwitchUI} [assets.SwitchUI] Frame 10 |
"on" | Symbol 636 MovieClip {assets.SwitchUI} [assets.SwitchUI] Frame 11 |
"captiveStart" | Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] Frame 1 |
"captiveEnd" | Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] Frame 25 |
"releaseStart" | Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] Frame 26 |
"releaseEnd" | Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] Frame 60 |
"free" | Symbol 647 MovieClip {assets.Mutant4} [assets.Mutant4] Frame 61 |
"off" | Symbol 654 MovieClip {assets.SensorBottomUI} [assets.SensorBottomUI] Frame 1 |
"onStart" | Symbol 654 MovieClip {assets.SensorBottomUI} [assets.SensorBottomUI] Frame 2 |
"onEnd" | Symbol 654 MovieClip {assets.SensorBottomUI} [assets.SensorBottomUI] Frame 9 |
"close" | Symbol 668 MovieClip {assets.DoorSingleSteelUI} [assets.DoorSingleSteelUI] Frame 1 |
"openStart" | Symbol 668 MovieClip {assets.DoorSingleSteelUI} [assets.DoorSingleSteelUI] Frame 2 |
"openEnd" | Symbol 668 MovieClip {assets.DoorSingleSteelUI} [assets.DoorSingleSteelUI] Frame 16 |
"open" | Symbol 668 MovieClip {assets.DoorSingleSteelUI} [assets.DoorSingleSteelUI] Frame 17 |
"off" | Symbol 672 MovieClip {assets.SensorTopUI} [assets.SensorTopUI] Frame 1 |
"onStart" | Symbol 672 MovieClip {assets.SensorTopUI} [assets.SensorTopUI] Frame 2 |
"onEnd" | Symbol 672 MovieClip {assets.SensorTopUI} [assets.SensorTopUI] Frame 9 |
"close" | Symbol 676 MovieClip {assets.DoorDoubleFutureExitUI} [assets.DoorDoubleFutureExitUI] Frame 1 |
"openStart" | Symbol 676 MovieClip {assets.DoorDoubleFutureExitUI} [assets.DoorDoubleFutureExitUI] Frame 2 |
"openEnd" | Symbol 676 MovieClip {assets.DoorDoubleFutureExitUI} [assets.DoorDoubleFutureExitUI] Frame 37 |
"open" | Symbol 676 MovieClip {assets.DoorDoubleFutureExitUI} [assets.DoorDoubleFutureExitUI] Frame 38 |
"off" | Symbol 682 MovieClip {assets.SwitchFutureUI} [assets.SwitchFutureUI] Frame 1 |
"onStart" | Symbol 682 MovieClip {assets.SwitchFutureUI} [assets.SwitchFutureUI] Frame 2 |
"onEnd" | Symbol 682 MovieClip {assets.SwitchFutureUI} [assets.SwitchFutureUI] Frame 10 |
"on" | Symbol 682 MovieClip {assets.SwitchFutureUI} [assets.SwitchFutureUI] Frame 11 |
"captiveStart" | Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] Frame 1 |
"captiveEnd" | Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] Frame 25 |
"releaseStart" | Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] Frame 26 |
"releaseEnd" | Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] Frame 60 |
"free" | Symbol 686 MovieClip {assets.Mutant3} [assets.Mutant3] Frame 61 |
"captiveStart" | Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] Frame 1 |
"captiveEnd" | Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] Frame 25 |
"releaseStart" | Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] Frame 26 |
"releaseEnd" | Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] Frame 55 |
"free" | Symbol 693 MovieClip {assets.Mutant1} [assets.Mutant1] Frame 56 |
"close" | Symbol 715 MovieClip {assets.DoorDoubleSteelExitUI} [assets.DoorDoubleSteelExitUI] Frame 1 |
"openStart" | Symbol 715 MovieClip {assets.DoorDoubleSteelExitUI} [assets.DoorDoubleSteelExitUI] Frame 2 |
"openEnd" | Symbol 715 MovieClip {assets.DoorDoubleSteelExitUI} [assets.DoorDoubleSteelExitUI] Frame 19 |
"open" | Symbol 715 MovieClip {assets.DoorDoubleSteelExitUI} [assets.DoorDoubleSteelExitUI] Frame 20 |
"off" | Symbol 719 MovieClip {assets.WiresUI} [assets.WiresUI] Frame 1 |
"onStart" | Symbol 719 MovieClip {assets.WiresUI} [assets.WiresUI] Frame 2 |
"onEnd" | Symbol 719 MovieClip {assets.WiresUI} [assets.WiresUI] Frame 10 |
"on" | Symbol 719 MovieClip {assets.WiresUI} [assets.WiresUI] Frame 11 |
"off" | Symbol 730 MovieClip {assets.LaserFutureUI} [assets.LaserFutureUI] Frame 1 |
"onStart" | Symbol 730 MovieClip {assets.LaserFutureUI} [assets.LaserFutureUI] Frame 2 |
"onEnd" | Symbol 730 MovieClip {assets.LaserFutureUI} [assets.LaserFutureUI] Frame 9 |
"captiveStart" | Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] Frame 1 |
"captiveEnd" | Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] Frame 25 |
"releaseStart" | Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] Frame 26 |
"releaseEnd" | Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] Frame 60 |
"free" | Symbol 734 MovieClip {assets.Mutant2} [assets.Mutant2] Frame 61 |
"close" | Symbol 735 MovieClip {assets.DoorDoubleSteelUI} [assets.DoorDoubleSteelUI] Frame 1 |
"openStart" | Symbol 735 MovieClip {assets.DoorDoubleSteelUI} [assets.DoorDoubleSteelUI] Frame 2 |
"openEnd" | Symbol 735 MovieClip {assets.DoorDoubleSteelUI} [assets.DoorDoubleSteelUI] Frame 19 |
"open" | Symbol 735 MovieClip {assets.DoorDoubleSteelUI} [assets.DoorDoubleSteelUI] Frame 20 |
"off" | Symbol 743 MovieClip {assets.LaserBigUI} [assets.LaserBigUI] Frame 1 |
"onStart" | Symbol 743 MovieClip {assets.LaserBigUI} [assets.LaserBigUI] Frame 2 |
"onEnd" | Symbol 743 MovieClip {assets.LaserBigUI} [assets.LaserBigUI] Frame 9 |
"close" | Symbol 747 MovieClip {assets.DoorSingleSteelExitUI} [assets.DoorSingleSteelExitUI] Frame 1 |
"openStart" | Symbol 747 MovieClip {assets.DoorSingleSteelExitUI} [assets.DoorSingleSteelExitUI] Frame 2 |
"openEnd" | Symbol 747 MovieClip {assets.DoorSingleSteelExitUI} [assets.DoorSingleSteelExitUI] Frame 16 |
"open" | Symbol 747 MovieClip {assets.DoorSingleSteelExitUI} [assets.DoorSingleSteelExitUI] Frame 17 |
"over" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 2 |
"press" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 11 |
"release" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 20 |
"out" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 30 |
"releaseOutside" | Symbol 758 MovieClip {assets_fla.loginButton_150} [assets_fla.loginButton_150] Frame 40 |
"over" | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] Frame 2 |
"press" | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] Frame 11 |
"release" | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] Frame 20 |
"out" | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] Frame 30 |
"releaseOutside" | Symbol 762 MovieClip {assets_fla.submitScoreClose_152} [assets_fla.submitScoreClose_152] Frame 40 |
"error" | Symbol 770 MovieClip {assets_fla.loginEntry_155} [assets_fla.loginEntry_155] Frame 2 |
"over" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 2 |
"press" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 11 |
"release" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 20 |
"out" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 30 |
"releaseOutside" | Symbol 785 MovieClip {assets_fla.tryAgainButton_161} [assets_fla.tryAgainButton_161] Frame 40 |
"over" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 2 |
"press" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 11 |
"release" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 20 |
"out" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 30 |
"releaseOutside" | Symbol 789 MovieClip {assets_fla.skipButton_163} [assets_fla.skipButton_163] Frame 40 |
"init" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 1 |
"formSmall" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 8 |
"form" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 21 |
"submit" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 29 |
"success" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 38 |
"error" | Symbol 793 MovieClip {assets.pages.SubmitScoreUI} [assets.pages.SubmitScoreUI] Frame 78 |
"over" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 2 |
"press" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 11 |
"release" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 20 |
"out" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 30 |
"releaseOutside" | Symbol 802 MovieClip {assets_fla.registerButton_183} [assets_fla.registerButton_183] Frame 40 |
"idle" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 1 |
"main" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 2 |
"login" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 17 |
"success" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 25 |
"error" | Symbol 817 MovieClip {assets.MarvelLoginUI} [assets.MarvelLoginUI] Frame 55 |
|