STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
234760
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2684 · P5368

<div style="position:absolute;top:-99px;left:-99px;"><img src="https://tools.swfchan.com/stathit.asp?noj=FRM55215215-16DC&rnd=55215215" width="1" height="1"></div>

scrapbook_detective.swf

This is the info page for
Flash #268283

(Click the ID number above for more basic data on this flash file.)


Text
<p align="center"><font face="HelveticaNeueLT Std Cn" size="13" color="#ffffff" letterSpacing="1.000000" kerning="1">APSKAFT OCH SYLT</font></p>

+1000

<p align="center"><font face="American Typewriter Std Cn" size="17" color="#6c1e5a" letterSpacing="0.000000" kerning="1">To play the full game</font></p><p align="center"><font face="American Typewriter Std Cn" size="17" color="#6c1e5a" letterSpacing="0.000000" kerning="1">please register at</font></p><p align="center"><font face="American Typewriter Std Cn" size="17" color="#6c1e5a" letterSpacing="0.000000" kerning="1">king.com</font></p>

<p align="center"><font face="Segoe Script" size="14" color="#6c1e5a" letterSpacing="0.000000" kerning="1"><b>Il gioco termina fra [0] secondi!</b></font></p>

<p align="center"><font face="Segoe Script" size="20" color="#53123a" letterSpacing="0.000000" kerning="1"><b>Puntuación</b></font></p>

<p align="center"><font face="Segoe Script" size="16" color="#98216b" letterSpacing="0.000000" kerning="1"><b>Puntuación best ever</b></font></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">Score1</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">Score2</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">HintBonus</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">Penalty</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">Total</font></p>

<p align="right"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">99999</font></p>

<p align="right"></p>

<p align="right"></p>

<p align="right"></p>

<p align="right"></p>

<p align="left"><font face="American Typewriter Std Cn" size="18" color="#53123a" letterSpacing="0.000000" kerning="1">Penalty</font></p>

<p align="right"></p>

<p align="center"><font face="American Typewriter Std Cn" size="26" color="#ffba00" letterSpacing="0.000000" kerning="1">••• GAME OVER •••</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">PUNTUACIÓN JUEGO</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">PUNTUACIÓN JUEGO</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">PUNTUACIÓN JUEGO</font></p>

<p align="left"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">PUNTUACIÓN JUEGO</font></p>

<p align="right"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">99999</font></p>

<p align="right"></p>

<p align="right"></p>

<p align="right"></p>

<p align="left"><font face="American Typewriter Std Cn" size="12" color="#98216b" letterSpacing="0.000000" kerning="1">PUNTUACIÓN JUEGO</font></p>

<p align="right"></p>

<p align="center"><font face="Segoe Script" size="30" color="#e63ee1" letterSpacing="0.000000" kerning="1"><b>Artist Studio</b></font></p>

10

0

0

0

:

Hinweis

Hinweis

12345

<p align="center"><font face="Segoe Script" size="14" color="#6c1e5a" letterSpacing="0.000000" kerning="1"><b>Il gioco termina fra [0] secondi!</b></font></p>

<p align="center"></p>

<p align="center"></p>

<p align="left"></p>

<p align="center"><font face="Segoe Script" size="14" color="#6c1e5a" letterSpacing="0.000000" kerning="1"><b>Il gioco termina fra [0] secondi!</b></font></p>

<p align="center"></p>

<p align="center"></p>

<p align="center"></p>

<p align="center"></p>

<p align="center"></p>

ActionScript [AS3]

Section 1
//ButtonAnimation (amazingadventures.client.ButtonAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class ButtonAnimation extends MovieClip implements Renderable { public var framePlayer:FramePlayer;// = null public function ButtonAnimation(_arg1:int, _arg2:int, _arg3:int){ this.x = _arg1; this.y = _arg2; this.alpha = 0.6; framePlayer = new FramePlayer(this, _arg3, 10, 0); mouseEnabled = false; } public function render(_arg1:int, _arg2:Number):int{ if (framePlayer != null){ framePlayer.update(_arg1, _arg2); if (_arg1 >= framePlayer.endTick){ framePlayer = null; }; return (Renderer.CONTINUE); //unresolved jump }; return (Renderer.STOP_REMOVE); } } }//package amazingadventures.client
Section 2
//ButtonHandler (amazingadventures.client.ButtonHandler) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import flash.display.*; public class ButtonHandler { public var active:Boolean;// = true public var on:int;// = 1 public var over:int;// = 2 public var pressed:int;// = 3 public var off:int;// = 4 public var func:Function;// = null public var directOver:Boolean;// = false public var btn:MovieClip;// = null public var currentState:int; public var mouseOver:Boolean;// = false public var mouseOverFunc:Function;// = null public function ButtonHandler(_arg1:MovieClip){ currentState = on; super(); this.btn = _arg1; _arg1.stop(); _arg1.addEventListener(MouseEvent.ROLL_OVER, rollOver); _arg1.addEventListener(MouseEvent.ROLL_OUT, rollOut); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); _arg1.addEventListener(MouseEvent.MOUSE_UP, mouseUp); } public function rollOver(_arg1:MouseEvent):void{ if (active){ if (btn.currentFrame != pressed){ btn.gotoAndStop(over); }; mouseOver = true; if (mouseOverFunc != null){ mouseOverFunc(mouseOver); }; }; } public function rollOut(_arg1:MouseEvent):void{ if (active){ if (btn.currentFrame != pressed){ btn.gotoAndStop(currentState); }; mouseOver = false; if (mouseOverFunc != null){ mouseOverFunc(mouseOver); }; }; } public function mouseDown(_arg1:MouseEvent):void{ if (active){ btn.gotoAndStop(pressed); }; } public function mouseUp(_arg1:MouseEvent):void{ if (active){ Main.main.soundManager.startSound(new ButtonClickSnd(), SoundManager.VOLUME_CLICK); if (func != null){ func(); }; if (!directOver){ if (currentState == on){ currentState = off; } else { currentState = on; }; }; if (((((mouseOver) && (active))) && (directOver))){ btn.gotoAndStop(over); } else { btn.gotoAndStop(currentState); }; }; } public function setOnOff(_arg1:Boolean):void{ if (_arg1){ currentState = on; } else { currentState = off; }; btn.gotoAndStop(currentState); } } }//package amazingadventures.client
Section 3
//Clock (amazingadventures.client.Clock) package amazingadventures.client { import amazingadventures.*; import util.*; import flash.display.*; import flash.text.*; public class Clock extends Sprite implements Renderable { public var second1:TextField; public var second10:TextField; public var colon:TextField; public var minute1:TextField; public var timeDisplay:TimeDisplay; public var game:Game; public var timeWarning:Boolean;// = false private var color:int; private var flashColor:int;// = 0xFF0000 private var flashTicks:int;// = 30 public function Clock(){ color = second1.textColor; timeDisplay = new TimeDisplay([second1, second10, minute1], Game.TICKS_PER_SECOND); } public function render(_arg1:int, _arg2:Number):int{ timeDisplay.update(game.countDownTicks); if (timeWarning){ if ((int((_arg1 / flashTicks)) % 2) == 0){ second1.textColor = flashColor; second10.textColor = flashColor; colon.textColor = flashColor; minute1.textColor = flashColor; } else { second1.textColor = color; second10.textColor = color; colon.textColor = color; minute1.textColor = color; }; }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 4
//FailAnimation (amazingadventures.client.FailAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class FailAnimation extends MovieClip implements Renderable { public var framePlayer:FramePlayer;// = null public function FailAnimation(_arg1:int, _arg2:int, _arg3:int){ this.x = _arg1; this.y = _arg2; framePlayer = new FramePlayer(this, _arg3, 60, 0); mouseEnabled = false; } public function render(_arg1:int, _arg2:Number):int{ if (framePlayer != null){ framePlayer.update(_arg1, _arg2); if (_arg1 >= framePlayer.endTick){ framePlayer = null; }; return (Renderer.CONTINUE); //unresolved jump }; return (Renderer.STOP_REMOVE); } } }//package amazingadventures.client
Section 5
//FoundAnimation (amazingadventures.client.FoundAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class FoundAnimation extends Sprite implements Renderable { public var chainResize:ChainResize;// = null public var imageMovement:Movement;// = null public var image:Image;// = null public var successAnimation:MovieClip;// = null public var successFramePlayer:FramePlayer;// = null public var animationLayer:Sprite;// = null public var textItem:TextItem;// = null public var textItemPlayer:FramePlayer;// = null public var scorePop:ScorePop;// = null public var scorePopMovement:Movement;// = null public var scorePopFader:Fader;// = null public function FoundAnimation(_arg1:Sprite, _arg2:Image, _arg3:TextItem, _arg4:int, _arg5:int, _arg6:int, _arg7:int):void{ var _local8:int; super(); this.animationLayer = _arg1; this.image = _arg2; this.textItem = _arg3; _local8 = Math.floor((_arg2.width / 2)); var _local9:int = Math.floor((_arg2.height / 2)); x = (_arg2.x + _local8); y = (_arg2.y + _local9); _arg2.x = -(_local8); _arg2.y = -(_local9); addChild(_arg2); successAnimation = new SuccessAnimation(); _arg1.addChild(successAnimation); successAnimation.x = x; successAnimation.y = y; _arg1.addChild(this); scorePop = new ScorePop(); scorePop.init(_arg6, _arg7); var _local10:int = (stage.width - 250); if (x > _local10){ scorePop.x = _local10; } else { scorePop.x = x; }; scorePop.y = y; _arg1.addChild(scorePop); mouseEnabled = false; _arg2.mouseEnabled = false; _arg2.mc.mouseEnabled = false; successAnimation.mouseEnabled = false; scorePop.mouseEnabled = false; scorePop.textField.mouseEnabled = false; successFramePlayer = new FramePlayer(successAnimation, _arg6, 70, 0); var _local11:int = _arg6; var _local12 = 120; scorePopMovement = new Movement(scorePop, _local11, (_local11 + _local12), scorePop.x, scorePop.y, scorePop.x, (scorePop.y - 100)); scorePopFader = new Fader(scorePop, _local11, (_local11 + _local12), 1, 0); chainResize = new ChainResize(this); var _local13 = 15; _local11 = _arg6; chainResize.addResize(_local11, 1, 1); _local11 = (_local11 + _local13); chainResize.addResize(_local11, 1.4, 1.4); _local11 = (_local11 + _local13); chainResize.addResize(_local11, 1, 1); _local11 = (_local11 + _local13); chainResize.addResize(_local11, 1.4, 1.4); _local11 = (_local11 + _local13); chainResize.addResize(_local11, 1, 1); var _local14 = 35; imageMovement = new Movement(this, _local11, (_local11 + _local14), x, y, _arg4, _arg5); _local11 = (_local11 + _local14); textItemPlayer = new FramePlayer(_arg3.line, _local11, 30, 0); } public function render(_arg1:int, _arg2:Number):int{ if (scorePop != null){ if (scorePop.y == scorePopMovement.endY){ animationLayer.removeChild(scorePop); scorePop = null; } else { scorePopMovement.update(_arg1, _arg2); scorePopFader.update(_arg1, _arg2); }; }; if (image != null){ if ((((imageMovement.endX == x)) && ((imageMovement.endY == y)))){ removeChild(image); image = null; } else { chainResize.update(_arg1, _arg2); imageMovement.update(_arg1, _arg2); }; }; if (successFramePlayer != null){ if (_arg1 > successFramePlayer.endTick){ animationLayer.removeChild(successAnimation); successFramePlayer = null; } else { successFramePlayer.update(_arg1, _arg2); }; }; textItemPlayer.update(_arg1, _arg2); if ((((((scorePop == null)) && ((image == null)))) && ((successFramePlayer == null)))){ return (Renderer.STOP_REMOVE); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 6
//GameC (amazingadventures.client.GameC) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import flash.display.*; import flash.text.*; import flash.geom.*; public class GameC extends Sprite { public var game:Game;// = null public var gameSprite:Sprite;// = null public var middleBorder:MiddleBorder;// = null public var middleBorderLeft:MiddleBorder;// = null public var middleBorderRight:MiddleBorder;// = null public var middleBorderTop:MiddleBorder;// = null public var newBar:NewBar;// = null public var animationLayer:Sprite;// = null public var dialogLayer:Sprite;// = null public var hintLayer:Sprite;// = null public var musicBh:ButtonHandler;// = null public var soundBh:ButtonHandler;// = null public var exitBh:ButtonHandler;// = null public var clock:Clock;// = null public var extraGameDialog:MiddleGameDialog;// = null public var seedTf:TextField;// = null public var hintBh:ButtonHandler;// = null public var shortMode:Boolean;// = false public static var gameStartsInStr:String; public static var secondsStr:String; public function GameC(_arg1:Game){ this.game = _arg1; if (Main.gameDataXml.@mode == "short"){ shortMode = true; }; gameSprite = new Sprite(); gameSprite.name = "game sprite"; addChild(gameSprite); hintLayer = new Sprite(); addChild(hintLayer); hintLayer.mouseEnabled = false; middleBorder = new MiddleBorder(); middleBorder.x = 378; middleBorder.y = 0; middleBorder.mouseEnabled = false; middleBorder.visible = false; addChild(middleBorder); middleBorderLeft = new MiddleBorder(); middleBorderLeft.x = 0; middleBorderLeft.y = 0; middleBorderLeft.mouseEnabled = false; middleBorderLeft.visible = false; addChild(middleBorderLeft); middleBorderRight = new MiddleBorder(); middleBorderRight.x = 756; middleBorderRight.y = 0; middleBorderRight.mouseEnabled = false; middleBorderRight.visible = false; addChild(middleBorderRight); middleBorderTop = new MiddleBorder(); middleBorderTop.x = -11; middleBorderTop.y = 0; middleBorderTop.rotation = 270; middleBorderTop.mouseEnabled = false; middleBorderTop.visible = false; addChild(middleBorderTop); newBar = new NewBar(); newBar.newSlideBar.mouseEnabled = false; newBar.y = 479; addChild(newBar); hintBh = new ButtonHandler(newBar.hintBtn); hintBh.directOver = true; newBar.hintBtn.stop(); hintBh.mouseOverFunc = mouseOverHint; newBar.hintMc.stop(); exitBh = new ButtonHandler(newBar.exitBtn); exitBh.btn.addEventListener(MouseEvent.CLICK, gameEnd); soundBh = new ButtonHandler(newBar.soundBtn); soundBh.setOnOff(_arg1.main.soundManager.getSoundOn()); soundBh.btn.addEventListener(MouseEvent.CLICK, toggleSound); musicBh = new ButtonHandler(newBar.musicBtn); musicBh.setOnOff(_arg1.main.soundManager.getMusicOn()); musicBh.btn.addEventListener(MouseEvent.CLICK, toggleMusic); newBar.itemsLeftBox.mouseEnabled = false; newBar.itemsLeftBox.visible = false; newBar.scoreMc.scoreTf.text = "0"; clock = newBar.clock; clock.game = _arg1; _arg1.main.renderer.start(clock); animationLayer = new Sprite(); addChild(animationLayer); animationLayer.mouseEnabled = false; dialogLayer = new Sprite(); addChild(dialogLayer); dialogLayer.mouseEnabled = false; } public function gameEnd(_arg1:MouseEvent):void{ game.main.addPlayData([Game.INPUT_EXIT]); var _local2:Point = _arg1.target.localToGlobal(new Point((_arg1.target.width / 2), (_arg1.target.height / 2))); var _local3:ButtonAnimation = new ButtonAnimation(_local2.x, _local2.y, game.main.gameTimer.currentTick); game.main.addChild(_local3); game.main.renderer.start(_local3); } public function toggleSound(_arg1:MouseEvent):void{ _arg1.stopPropagation(); game.main.soundManager.toggleSound(); var _local2:Point = _arg1.target.localToGlobal(new Point((_arg1.target.width / 2), (_arg1.target.height / 2))); var _local3:ButtonAnimation = new ButtonAnimation(_local2.x, _local2.y, game.main.gameTimer.currentTick); game.main.addChild(_local3); game.main.renderer.start(_local3); } public function toggleMusic(_arg1:MouseEvent):void{ _arg1.stopPropagation(); game.main.soundManager.toggleMusic(); var _local2:Point = _arg1.target.localToGlobal(new Point((_arg1.target.width / 2), (_arg1.target.height / 2))); var _local3:ButtonAnimation = new ButtonAnimation(_local2.x, _local2.y, game.main.gameTimer.currentTick); game.main.addChild(_local3); game.main.renderer.start(_local3); } public function showExtraGameDialog():void{ extraGameDialog = new MiddleGameDialog(game.startMiniGameTick, false, game.main); dialogLayer.addChild(extraGameDialog); extraGameDialog.addEventListener(MouseEvent.CLICK, dialogClicked); game.main.renderer.start(extraGameDialog); } public function dialogClicked(_arg1:MouseEvent):void{ game.main.addPlayData([Game.INPUT_START_NEXT, game.spyGame.score, game.penalties]); extraGameDialog.removeEventListener(MouseEvent.CLICK, dialogClicked); } public function startNext(_arg1:MouseEvent=null):void{ game.main.renderer.stop(extraGameDialog); dialogLayer.removeChild(extraGameDialog); soundBh.setOnOff(game.main.soundManager.getSoundOn()); musicBh.setOnOff(game.main.soundManager.getMusicOn()); } public function updateScoreTf():void{ newBar.scoreMc.scoreTf.text = ("" + game.getCurrentScore()); } public function updateItemsLeft(_arg1:int):void{ if (_arg1 > 0){ newBar.itemsLeftBox.itemsLeftTf.text = ("" + _arg1); } else { newBar.itemsLeftBox.itemsLeftTf.text = "0"; }; } public function updateRelaxHints():void{ } public function hintAnimationEnded():void{ } public function start():void{ game.main.addChild(this); game.main.soundManager.gameStart(); soundBh.setOnOff(game.main.soundManager.getSoundOn()); musicBh.setOnOff(game.main.soundManager.getMusicOn()); var _local1:SlideBarAnimation = new SlideBarAnimation((1.5 * Game.TICKS_PER_SECOND), newBar.newSlideBar, (11 + 62)); game.main.renderer.start(_local1); } public function timeWarning(_arg1:Boolean):void{ game.main.soundManager.startSound(new TimeWarningSnd(), SoundManager.VOLUME_TIME_WARNING); if (_arg1){ clock.timeWarning = true; }; } public function deActivate():void{ hintBh.active = false; exitBh.btn.removeEventListener(MouseEvent.CLICK, gameEnd); soundBh.btn.removeEventListener(MouseEvent.CLICK, toggleSound); musicBh.btn.removeEventListener(MouseEvent.CLICK, toggleMusic); } public function mouseOverHint(_arg1:Boolean):void{ if (_arg1){ newBar.hintMc.hint1Tf.visible = false; newBar.hintMc.hint2Tf.visible = true; newBar.hintMc.hint1Arrow.visible = false; newBar.hintMc.hint2Arrow.visible = true; } else { newBar.hintMc.hint1Tf.visible = true; newBar.hintMc.hint2Tf.visible = false; newBar.hintMc.hint1Arrow.visible = true; newBar.hintMc.hint2Arrow.visible = false; }; } public static function addChildAtByFrame(_arg1:Image, _arg2:DisplayObjectContainer):void{ var _local4:int; var _local5:Image; var _local6:int; var _local3:int = _arg1.mc.currentFrame; _local4 = 0; while (_local4 < _arg2.numChildren) { _local5 = Image(_arg2.getChildAt(_local4)); _local6 = _local5.mc.currentFrame; if (_local3 < _local6){ break; }; _local4++; }; _arg2.addChildAt(_arg1, _local4); } public static function addChildAtByZ(_arg1:Image, _arg2:DisplayObjectContainer):int{ var _local6:Image; var _local3 = -1; var _local4 = 1; var _local5 = 1; while (_local5 < _arg2.numChildren) { _local6 = Image(_arg2.getChildAt(_local5)); if ((((_arg1.z > _local6.z)) && ((_local3 <= _local6.z)))){ _local3 = _local6.z; _local4 = _local5; }; _local5++; }; _arg2.addChildAt(_arg1, (_local4 + 1)); return ((_local4 + 1)); } } }//package amazingadventures.client
Section 7
//GameTimer (amazingadventures.client.GameTimer) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.utils.*; public class GameTimer { private var lastTime:Number;// = -1 private var msPerTick:Number; private var unprocessedTime:Number;// = 0 public var alpha:Number;// = 0 public var currentTick:int;// = -1 public var passedTime:Number;// = 0 public var game:Game; public var renderer:Renderer; public function GameTimer(_arg1:Number, _arg2:Game, _arg3:Renderer){ msPerTick = (1000 / _arg1); this.game = _arg2; this.renderer = _arg3; } public function advanceTime(_arg1:Event):void{ if (lastTime == -1){ lastTime = getTimer(); }; var _local2:int = getTimer(); passedTime = (_local2 - lastTime); lastTime = _local2; unprocessedTime = (unprocessedTime + passedTime); var _local3:int = int((unprocessedTime / msPerTick)); unprocessedTime = (unprocessedTime - (_local3 * msPerTick)); var _local4:int; while (_local4 < _local3) { currentTick++; if (game != null){ game.tick(currentTick); }; _local4++; }; alpha = (unprocessedTime / msPerTick); renderer.update(currentTick, alpha); } } }//package amazingadventures.client
Section 8
//GraphicsHalf (amazingadventures.client.GraphicsHalf) package amazingadventures.client { import flash.display.*; import flash.geom.*; public class GraphicsHalf extends Sprite { public var background:Image;// = null public function GraphicsHalf(_arg1:Array, _arg2:int){ var _local8:Image; super(); var _local3:MovieClip = MovieClip(new Image.imageClass()); _local3.gotoAndStop(1); var _local4:Matrix = new Matrix(); if (_arg2 == 1){ _local4.translate(-378, 0); }; var _local5:Rectangle = new Rectangle(0, 0, 377, 480); var _local6:BitmapData = new BitmapData(377, 480, false, 0xFF00FF); _local6.draw(_local3, _local4, null, null, _local5, false); addChild(new Bitmap(_local6)); var _local7:int; while (_local7 < _arg1.length) { _local8 = Image(_arg1[_local7]); if (_arg2 == 1){ _local8.x = (_local8.x - 378); }; addChild(_local8); _local7++; }; } } }//package amazingadventures.client
Section 9
//HintAnimation (amazingadventures.client.HintAnimation) package amazingadventures.client { import amazingadventures.*; import util.*; import flash.display.*; public class HintAnimation extends MovieClip implements Renderable { public var framePlayer:FramePlayer;// = null public var gameC:GameC; public function HintAnimation(_arg1:GameC){ this.gameC = _arg1; mouseEnabled = false; } public function spyInit(_arg1:Obj, _arg2:int):void{ var _local3:int = Math.floor((_arg1.c.left.mc.width / 2)); var _local4:int = Math.floor((_arg1.c.left.mc.height / 2)); x = (_arg1.c.x + _local3); y = (_arg1.c.y + _local4); var _local5 = 140; framePlayer = new FramePlayer(this, _arg2, _local5, 0); } public function miniGameInit(_arg1:Obj, _arg2:int, _arg3:int, _arg4:int):void{ var _local5:int = Math.floor((_arg1.c.left.mc.width / 2)); var _local6:int = Math.floor((_arg1.c.left.mc.height / 2)); x = (_arg1.c.x + _local5); y = (_arg1.c.y + _local6); if (_arg3 == 1){ x = (x - 378); }; if (_arg2 == 1){ x = (x + 378); }; var _local7 = 140; framePlayer = new FramePlayer(this, _arg4, _local7, 0); var _local8:Sprite = new Sprite(); _local8.graphics.beginFill(0xFF0000); _local8.graphics.drawRect(0, 0, 377, 480); _local8.x = ((x >= 378)) ? 378 : 0; mask = _local8; } public function render(_arg1:int, _arg2:Number):int{ if (framePlayer != null){ framePlayer.update(_arg1, _arg2); if (_arg1 >= framePlayer.endTick){ framePlayer = null; }; return (Renderer.CONTINUE); //unresolved jump }; gameC.hintAnimationEnded(); return (Renderer.STOP_REMOVE); } } }//package amazingadventures.client
Section 10
//Image (amazingadventures.client.Image) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.display.*; import flash.geom.*; import flash.utils.*; public class Image extends Sprite { public var mc:MovieClip; protected var data:XMLList; public var state:int;// = -1 public var bitmapData:BitmapData; public var bitmap:Bitmap; public var frame:int; public var z:int; public static const NOT_SET:int = -1; public static const FOUND_ANIMATION_1:int = 0; public static const FOUND_ANIMATION_2:int = 1; public static var imageClass:Class; public static var retryLoader:RetryLoader; private static var loadTimer:Timer; public static var main:Main; public function Image(_arg1:String, _arg2:int, _arg3:int=0, _arg4:Boolean=false){ this.z = _arg2; mc = MovieClip(new Image.imageClass()); var _local5:String = _arg1.replace("img_", ""); var _local6:int = (parseInt(_local5) + 1); mc.gotoAndStop(_local6); var _local7:int = mc.width; var _local8:int = mc.height; if ((((_arg3 == 90)) || ((_arg3 == 270)))){ _local7 = mc.height; _local8 = mc.width; _arg3 = (360 - _arg3); }; var _local9:Matrix = new Matrix(); if (((_arg4) && ((_arg3 == 0)))){ _local9.scale(-1, 1); _local9.translate(_local7, 0); }; _local9.rotate((_arg3 * (Math.PI / 180))); if (_arg3 == 90){ _local9.translate(_local7, 0); } else { if (_arg3 == 180){ _local9.translate(_local7, _local8); } else { if (_arg3 == 270){ _local9.translate(0, _local8); }; }; }; var _local10:Rectangle = new Rectangle(0, 0, _local7, _local8); bitmapData = new BitmapData(_local7, _local8, true, 0); bitmapData.draw(mc, _local9, null, null, _local10, false); frame = mc.currentFrame; addChild(new Bitmap(bitmapData)); } public function bitmapPixelHit(_arg1:int, _arg2:int):Boolean{ var _local3 = ((bitmapData.getPixel32(_arg1, _arg2) >> 24) & 0xFF); if (_local3 >= 50){ return (true); }; return (false); } public function testHit(_arg1:int, _arg2:int):Boolean{ var _local3:Point = globalToLocal(new Point(_arg1, _arg2)); var _local4:int = int(_local3.x); var _local5:int = int(_local3.y); var _local6 = 5; var _local7 = 2; var _local8:Array = [0, -(_local6), 0, _local6, 0, _local7, _local7, -(_local7), -(_local7)]; var _local9:Array = [-(_local6), 0, 0, 0, _local6, _local7, -(_local7), _local7, -(_local7)]; var _local10:int; while (_local10 < _local8.length) { if (bitmapPixelHit((_local4 + int(_local8[_local10])), (_local5 + int(_local9[_local10])))){ return (true); }; _local10++; }; return (false); } public function mouseDisable():void{ mouseEnabled = false; mc.mouseEnabled = false; } public static function LoadSwf(_arg1:Main, _arg2:String):void{ Image.main = _arg1; retryLoader = new RetryLoader(_arg2); retryLoader.load(); loadTimer = new Timer(200, 0); loadTimer.start(); loadTimer.addEventListener("timer", loadHandler); } public static function loadSuccess(_arg1:ReLoader):void{ imageClass = Class(_arg1.loader.contentLoaderInfo.applicationDomain.getDefinition("Image")); main.graphicsLoaded(); } public static function loadFail(_arg1:ReLoader):void{ main.loadFail(); } public static function loadHandler(_arg1:Event):void{ if (retryLoader.failed){ loadTimer.stop(); } else { if (retryLoader.progress == 100){ loadTimer.stop(); imageClass = Class(retryLoader.loader.contentLoaderInfo.applicationDomain.getDefinition("Image")); main.graphicsLoaded(); }; }; } } }//package amazingadventures.client
Section 11
//Intro (amazingadventures.client.Intro) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.display.*; import flash.text.*; public class Intro extends MovieClip implements Renderable { public var instructionsTf:TextField; public var soundBtn:SoundBtn; public var introflower:MovieClip; public var timeLeftTf:TextField; public var musicBtn:MusicBtn; public var instructions1Mc:MovieClip; public var instructions3Mc:MovieClip; public var instructions2Mc:MovieClip; public var instructions4Mc:MovieClip; private var main:Main; private var startTick:int;// = -1 private var endTick:int; private var firstPage:Boolean;// = true public var musicBh:ButtonHandler;// = null public var soundBh:ButtonHandler;// = null public var instructions:String; public var instructions1:String; public var instructions2:String; public var instructions3:String; public var instructions4:String; public function Intro(_arg1:Main){ this.main = _arg1; addEventListener(MouseEvent.CLICK, showInstructions); soundBh = new ButtonHandler(soundBtn); musicBh = new ButtonHandler(musicBtn); soundBh.btn.visible = false; musicBh.btn.visible = false; this.gotoAndStop(1); } public function gameDataReady():void{ timeLeftTf.text = Main.gameDataXml.text.(@id == "loading"); GameC.gameStartsInStr = Main.gameDataXml.text.(@id == "game_starts_in"); GameC.secondsStr = Main.gameDataXml.text.(@id == "seconds"); instructions = Main.gameDataXml.text.(@id == "instructions"); instructions1 = Main.gameDataXml.text.(@id == "instruction_1"); instructions2 = Main.gameDataXml.text.(@id == "instruction_2"); instructions3 = Main.gameDataXml.text.(@id == "instruction_3"); instructions4 = Main.gameDataXml.text.(@id == "instruction_4"); } public function init():void{ stage.frameRate = 30; this.gotoAndPlay(1); timeLeftTf.text = ((GameC.gameStartsInStr + " 23 ") + GameC.secondsStr); soundBh.setOnOff(main.soundManager.getSoundOn()); musicBh.setOnOff(main.soundManager.getMusicOn()); soundBh.btn.addEventListener(MouseEvent.CLICK, main.game.c.toggleSound); musicBh.btn.addEventListener(MouseEvent.CLICK, main.game.c.toggleMusic); soundBh.btn.visible = true; musicBh.btn.visible = true; main.renderer.start(this); } public function showInstructions(_arg1:Event=null):void{ startTick = (main.gameTimer.currentTick - (3 * Game.TICKS_PER_SECOND)); endTick = (startTick + (23 * Game.TICKS_PER_SECOND)); } protected function start(_arg1:MouseEvent):void{ endTick = 0; } public function render(_arg1:int, _arg2:Number):int{ if (startTick == -1){ startTick = _arg1; endTick = (startTick + (23 * Game.TICKS_PER_SECOND)); }; if (instructionsTf){ instructionsTf.text = instructions; }; if (((instructions1Mc) && (instructions1Mc.instructions1Tf))){ instructions1Mc.instructions1Tf.text = instructions1; }; if (((instructions2Mc) && (instructions2Mc.instructions2Tf))){ instructions2Mc.instructions2Tf.text = instructions2; }; if (((instructions3Mc) && (instructions3Mc.instructions3Tf))){ instructions3Mc.instructions3Tf.text = instructions3; }; if (((instructions4Mc) && (instructions4Mc.instructions4Tf))){ instructions4Mc.instructions4Tf.text = instructions4; }; var _local3:int = (((endTick - _arg1) / Game.TICKS_PER_SECOND) + 1); if (((firstPage) && ((_arg1 > (startTick + (3 * Game.TICKS_PER_SECOND)))))){ firstPage = false; gotoAndPlay(91); removeEventListener(MouseEvent.CLICK, showInstructions); addEventListener(MouseEvent.CLICK, start); }; timeLeftTf.text = ((((GameC.gameStartsInStr + " ") + _local3) + " ") + GameC.secondsStr); if (_arg1 >= endTick){ soundBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleSound); musicBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleMusic); removeEventListener(MouseEvent.CLICK, start); main.startGame(); return (Renderer.STOP_REMOVE); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 12
//MiddleGameDialog (amazingadventures.client.MiddleGameDialog) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.display.*; import flash.text.*; public class MiddleGameDialog extends Sprite implements Renderable { public var textMc:MovieClip; public var instructionsTf:TextField; public var soundBtn:SoundBtn; public var gameTf:TextField; public var timeLeftTf:TextField; public var musicBtn:MusicBtn; public var middle_dialog_title_:TextField; public var you_found_all_:TextField; public var mini_game_instruction:TextField; public var countDownTf:TextField; public var main:Main;// = null public var countDownSec:int;// = 600 public var endTick:int; public var instructions:String; public var game:String; public var text:String; public var musicBh:ButtonHandler;// = null public var soundBh:ButtonHandler;// = null public function MiddleGameDialog(_arg1:int, _arg2:Boolean=false, _arg3:Main=null){ var endTick = _arg1; var loadingNewPlace = _arg2; var main = _arg3; super(); this.main = main; this.endTick = endTick; instructions = (("••• " + Main.gameDataXml.text.(@id == "instructions")) + " •••"); if (main.game.state == Game.PLACE_START_DIALOG){ game = Main.gameDataXml.text.(@id == "place_title"); text = Main.gameDataXml.text.(@id == "place_instruction"); } else { game = Main.gameDataXml.text.(@id == "spot_title"); text = Main.gameDataXml.text.(@id == "spot_instruction"); }; soundBh = new ButtonHandler(soundBtn); soundBh.setOnOff(main.soundManager.getSoundOn()); musicBh = new ButtonHandler(musicBtn); musicBh.setOnOff(main.soundManager.getMusicOn()); soundBh.btn.addEventListener(MouseEvent.CLICK, main.game.c.toggleSound); musicBh.btn.addEventListener(MouseEvent.CLICK, main.game.c.toggleMusic); } public function nextRelaxGameLodaded():void{ addEventListener(MouseEvent.CLICK, main.startGame); main.renderer.start(this); } public function render(_arg1:int, _arg2:Number):int{ if (instructionsTf){ instructionsTf.text = instructions; }; if (gameTf){ gameTf.text = game; }; if (((textMc) && (textMc.textTf))){ textMc.textTf.text = text; }; var _local3:int = (((endTick - _arg1) / Game.TICKS_PER_SECOND) + 1); if (_local3 != countDownSec){ countDownSec = _local3; timeLeftTf.text = ((((GameC.gameStartsInStr + " ") + countDownSec) + " ") + GameC.secondsStr); }; if ((((_arg1 >= endTick)) && (false))){ main.startGame(); }; return (Renderer.CONTINUE); } public function destroy():void{ soundBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleSound); musicBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleMusic); removeEventListener(MouseEvent.CLICK, main.startGame); } } }//package amazingadventures.client
Section 13
//Numbers (amazingadventures.client.Numbers) package amazingadventures.client { public class Numbers { public static function itoa(_arg1:Number, _arg2:Number):String{ var _local4:Number; var _local3:String = ("" + _arg1); if (_arg2){ _local4 = (_arg2 - 1); while (_local4 > 0) { if (_arg1 < Math.pow(10, _local4)){ _local3 = ("0" + _local3); }; _local4--; }; }; return (_local3); } } }//package amazingadventures.client
Section 14
//ObjC (amazingadventures.client.ObjC) package amazingadventures.client { import amazingadventures.*; import flash.display.*; public class ObjC { private var posx:Array; private var posy:Array; private var posz:Array; private var offx:Array; private var offy:Array; private var rot:Array; private var flp:Array; private var wdt:Array; private var hght:Array; private var images:Array; public var original_image:Image; public var origWidth:Number; public var origHeight:Number; public var left:Image;// = null public var right:Image;// = null public var container:Sprite;// = null public var obj:Obj;// = null public function ObjC(_arg1:Obj, _arg2:XMLList){ posx = []; posy = []; posz = []; offx = []; offy = []; rot = []; flp = []; wdt = []; hght = []; images = []; super(); this.obj = _arg1; origWidth = _arg2.@width; origHeight = _arg2.@height; var _local3:XMLList = _arg2.elements("pos"); var _local4:int; while (_local4 < _local3.length()) { posx.push(parseInt(_local3[_local4].@x)); posy.push(parseInt(_local3[_local4].@y)); posz.push(parseInt(_local3[_local4].@z)); offx.push(parseInt(_local3[_local4].@offsetx)); offy.push(parseInt(_local3[_local4].@offsety)); rot.push(parseInt(_local3[_local4].@rotate)); flp.push(parseInt(_local3[_local4].@flip)); wdt.push(parseInt(_local3[_local4].@width)); hght.push(parseInt(_local3[_local4].@height)); images.push(_local3[_local4].@substitute); _local4++; }; this.original_image = new Image(_arg2.@original, z, rotation, flip); } public function spyInit(_arg1:Sprite):void{ this.container = _arg1; left = new Image(image, z); left.x = x; left.y = y; _arg1.addChild(left); } public function spyCleanUp():void{ if (container.contains(left)){ container.removeChild(left); }; left = null; } public function placeInit():void{ left = new Image(image, z); left.x = x; left.y = y; right = new Image(image, z); right.x = x; right.y = y; } public function spotInit():void{ left = new Image(image, z); left.x = x; left.y = y; left.name = obj.id; right = new Image(image, z); right.x = x; right.y = y; right.name = obj.id; } public function get x():int{ return (posx[obj.substitute]); } public function get y():int{ return (posy[obj.substitute]); } public function get z():int{ return (posz[obj.substitute]); } public function get offsetx():int{ return (offx[obj.substitute]); } public function get offsety():int{ return (offy[obj.substitute]); } public function get rotation():int{ return (rot[obj.substitute]); } public function get flip():Boolean{ return (!((flp[obj.substitute] == 0))); } public function get width():int{ return (wdt[obj.substitute]); } public function get height():int{ return (hght[obj.substitute]); } public function get image():String{ return (images[obj.substitute]); } public function click(_arg1:int, _arg2:int):Boolean{ return (left.testHit(_arg1, _arg2)); } public function hit(_arg1:int, _arg2:int):void{ obj.game.main.addPlayData([Game.THING_CLICKED, obj.nr, _arg1, _arg2]); } } }//package amazingadventures.client
Section 15
//Outro (amazingadventures.client.Outro) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.display.*; import flash.text.*; public class Outro extends MovieClip implements Renderable { public var textMc:MovieClip; public var scoreTf:TextField; public var soundBtn:SoundBtn; public var bestTf:TextField; public var timeLeftTf:TextField; public var musicBtn:MusicBtn; public var registerTf:TextField; public var bestMc:MovieClip; public var gameoverTf:TextField; public var gameover:String; public var score:String; public var scoreLevel1:String; public var scoreLevel2:String; public var unusedHintBonus:String; public var timeBonus:String; public var penalties:String; public var totalScore:String; public var best:String; public var main:Main;// = null public var startTick:int; public var endTick:int; public var countDownSeconds:int;// = -1 public var gameQuitSent:Boolean;// = false public var gameEndsInStr:String; public var scoreAnimations:Array;// = null public var outroFading:Boolean;// = false public var musicBh:ButtonHandler;// = null public var soundBh:ButtonHandler;// = null public var blinkScore1:Boolean;// = false public var blinkScore2:Boolean;// = false public var blinkHint:Boolean;// = false public var blinkTime:Boolean;// = false public var blinkTotal:Boolean;// = false public var blinkTick:int; public var blinkRed:Boolean;// = false public static const TICKS:int = 1260; public static const SHORT_MODE_TICKS:int = 360; public static const MINIMAL_GAME_QUIT_DELAY:int = 120; public function Outro(_arg1:Game){ var score2:int; var bestScore1:int; var bestScore2:int; var bestHint:int; var bestTime:int; var bestTotal:int; var fields:Array; var numfields:Array; var i:*; var bestfields:Array; var bestnumfields:Array; var tick:int; var interval:int; var countDownSec:int; var width:Number; var game = _arg1; super(); this.gotoAndStop(1); this.main = game.main; this.startTick = game.main.gameTimer.currentTick; this.blinkTick = game.main.gameTimer.currentTick; endTick = (startTick + Outro.TICKS); score2 = 0; if ((game.miniGame is PlaceGame)){ score2 = game.placeGame.score; } else { if ((game.miniGame is SpotGame)){ score2 = game.spotGame.score; }; }; gameEndsInStr = Main.gameDataXml.text.(@id == "game_ends_in"); gameover = Main.gameDataXml.text.(@id == "game_over"); score = Main.gameDataXml.text.(@id == "score"); scoreLevel1 = (Main.gameDataXml.text.(@id == "score_level_1") + " ................................................................................"); scoreLevel2 = (Main.gameDataXml.text.(@id == "score_level_2") + " ................................................................................"); unusedHintBonus = (Main.gameDataXml.text.(@id == "unused_hint_bonus") + " ................................................................................"); timeBonus = (Main.gameDataXml.text.(@id == "time_bonus") + " ................................................................................"); penalties = (Main.gameDataXml.text.(@id == "penalties") + " ................................................................................"); totalScore = (Main.gameDataXml.text.(@id == "total_score") + " ................................................................................"); best = Main.gameDataXml.text.(@id == "best_ever"); gameoverTf.text = (("••• " + gameover) + " •••"); scoreTf.text = score; textMc.score1Tf.text = scoreLevel1; textMc.score2Tf.text = scoreLevel2; textMc.hintTf.text = unusedHintBonus; textMc.timeTf.text = timeBonus; textMc.penaltyTf.text = penalties; textMc.totalTf.text = totalScore; bestTf.text = best; bestMc.score1Tf.text = scoreLevel1; bestMc.score2Tf.text = scoreLevel2; bestMc.hintTf.text = unusedHintBonus; bestMc.timeTf.text = timeBonus; bestMc.totalTf.text = totalScore; registerTf.text = Main.gameDataXml.text.(@id == "register"); textMc.score1NumTf.text = game.spyGame.score; textMc.score2NumTf.text = score2; textMc.hintNumTf.text = game.hintScore; textMc.timeNumTf.text = game.timeBonus; textMc.penaltyNumTf.text = -(game.penalties); textMc.totalNumTf.text = game.totalScore; bestScore1 = parseInt(Main.gameDataXml.text.(@id == "best_score1"), 10); bestScore2 = parseInt(Main.gameDataXml.text.(@id == "best_score2"), 10); bestHint = parseInt(Main.gameDataXml.text.(@id == "best_hint"), 10); bestTime = parseInt(Main.gameDataXml.text.(@id == "best_time"), 10); bestTotal = parseInt(Main.gameDataXml.text.(@id == "best_total"), 10); if (bestScore1 < game.spyGame.score){ blinkScore1 = true; bestMc.score1NumTf.text = game.spyGame.score; } else { bestMc.score1NumTf.text = bestScore1; }; if (bestScore2 < score2){ blinkScore2 = true; bestMc.score2NumTf.text = score2; } else { bestMc.score2NumTf.text = bestScore2; }; if (bestHint < game.hintScore){ blinkHint = true; bestMc.hintNumTf.text = game.hintScore; } else { bestMc.hintNumTf.text = bestHint; }; if (bestTime < game.timeBonus){ blinkTime = true; bestMc.timeNumTf.text = game.timeBonus; } else { bestMc.timeNumTf.text = bestTime; }; if (bestTotal < game.totalScore){ blinkTotal = true; bestMc.totalNumTf.text = game.totalScore; } else { bestMc.totalNumTf.text = bestTotal; }; fields = [textMc.score1Tf, textMc.score2Tf, textMc.hintTf, textMc.timeTf, textMc.penaltyTf, textMc.totalTf]; numfields = [textMc.score1NumTf, textMc.score2NumTf, textMc.hintNumTf, textMc.timeNumTf, textMc.penaltyNumTf, textMc.totalNumTf]; i = 0; while (i < fields.length) { width = ((341 - numfields[i].textWidth) - 4); fields[i].width = width; i = (i + 1); }; bestfields = [bestMc.score1Tf, bestMc.score2Tf, bestMc.hintTf, bestMc.timeTf, bestMc.totalTf]; bestnumfields = [bestMc.score1NumTf, bestMc.score2NumTf, bestMc.hintNumTf, bestMc.timeNumTf, bestMc.totalNumTf]; i = 0; while (i < bestfields.length) { width = ((252 - bestnumfields[i].textWidth) - 4); bestfields[i].width = width; i = (i + 1); }; soundBh = new ButtonHandler(soundBtn); soundBh.setOnOff(main.soundManager.getSoundOn()); musicBh = new ButtonHandler(musicBtn); musicBh.setOnOff(main.soundManager.getMusicOn()); soundBh.btn.addEventListener(MouseEvent.CLICK, game.c.toggleSound); musicBh.btn.addEventListener(MouseEvent.CLICK, game.c.toggleMusic); game.main.soundManager.gameEnd(); tick = game.main.gameTimer.currentTick; interval = 7; scoreAnimations = new Array(); scoreAnimations.push(new ScoreAnimation(textMc.score1NumTf, game.spyGame.score, tick, game.main.soundManager)); if (score2 > 0){ tick = (tick + (ScoreAnimation.TICKS + interval)); }; scoreAnimations.push(new ScoreAnimation(textMc.score2NumTf, score2, tick, game.main.soundManager)); if (game.hintScore > 0){ tick = (tick + (ScoreAnimation.TICKS + interval)); }; scoreAnimations.push(new ScoreAnimation(textMc.hintNumTf, game.hintScore, tick, game.main.soundManager, new HintScoreSnd())); if (game.timeBonus > 0){ tick = (tick + (ScoreAnimation.TICKS + interval)); }; scoreAnimations.push(new ScoreAnimation(textMc.timeNumTf, game.timeBonus, tick, game.main.soundManager)); if (game.penalties < 0){ tick = (tick + (ScoreAnimation.TICKS + interval)); }; scoreAnimations.push(new ScoreAnimation(textMc.penaltyNumTf, -(game.penalties), tick, game.main.soundManager)); if (game.totalScore > 0){ tick = (tick + (ScoreAnimation.TICKS + interval)); }; scoreAnimations.push(new ScoreAnimation(textMc.totalNumTf, game.totalScore, tick, game.main.soundManager, new TotalScoreSnd())); countDownSec = ((TICKS / Game.TICKS_PER_SECOND) + 1); timeLeftTf.text = ((((gameEndsInStr + " ") + countDownSeconds) + " ") + GameC.secondsStr); addEventListener(MouseEvent.CLICK, gameQuit); } public function gameQuit(_arg1:MouseEvent):void{ var _local4:ScoreAnimation; if (((main.game.c.shortMode) && ((this.currentFrame == 1)))){ return; }; var _local2:int; while (_local2 < scoreAnimations.length) { _local4 = ScoreAnimation(scoreAnimations[_local2]); main.renderer.stop(_local4); _local4.textField.text = ("" + _local4.score); _local2++; }; var _local3:int = main.gameTimer.currentTick; if (_local3 > (startTick + Outro.MINIMAL_GAME_QUIT_DELAY)){ endTick = (_local3 + Outro.MINIMAL_GAME_QUIT_DELAY); } else { endTick = (startTick + Outro.MINIMAL_GAME_QUIT_DELAY); }; if (!outroFading){ outroFading = true; main.soundManager.outroFadeOut(); }; removeEventListener(MouseEvent.CLICK, gameQuit); } public function destroy():void{ soundBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleSound); musicBh.btn.removeEventListener(MouseEvent.CLICK, main.game.c.toggleMusic); removeEventListener(MouseEvent.CLICK, main.startGame); } public function render(_arg1:int, _arg2:Number):int{ var _local5:*; if (((((main.game.c.shortMode) && ((currentFrame == 1)))) && (((_arg1 - startTick) >= SHORT_MODE_TICKS)))){ this.gotoAndStop(2); }; if (_arg1 >= (endTick - Outro.MINIMAL_GAME_QUIT_DELAY)){ if (!outroFading){ outroFading = true; main.soundManager.outroFadeOut(); }; }; if ((((_arg1 >= endTick)) && (!(gameQuitSent)))){ main.gameQuit(); gameQuitSent = true; timeLeftTf.text = ((((gameEndsInStr + " ") + 0) + " ") + GameC.secondsStr); return (Renderer.STOP); }; var _local3:int = (endTick - _arg1); var _local4:int = ((_local3 / Game.TICKS_PER_SECOND) + 1); if (countDownSeconds != _local4){ countDownSeconds = _local4; if (countDownSeconds >= 0){ timeLeftTf.text = ((((gameEndsInStr + " ") + countDownSeconds) + " ") + GameC.secondsStr); }; }; if ((_arg1 - blinkTick) > (0.35 * Game.TICKS_PER_SECOND)){ blinkTick = _arg1; blinkRed = !(blinkRed); _local5 = (blinkRed) ? 0xFF0000 : 9970027; if (blinkScore1){ bestMc.score1Tf.textColor = _local5; bestMc.score1NumTf.textColor = _local5; }; if (blinkScore2){ bestMc.score2Tf.textColor = _local5; bestMc.score2NumTf.textColor = _local5; }; if (blinkHint){ bestMc.hintTf.textColor = _local5; bestMc.hintNumTf.textColor = _local5; }; if (blinkTime){ bestMc.timeTf.textColor = _local5; bestMc.timeNumTf.textColor = _local5; }; if (blinkTotal){ bestMc.totalTf.textColor = _local5; bestMc.totalNumTf.textColor = _local5; }; }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 16
//PlaceFailAnimation (amazingadventures.client.PlaceFailAnimation) package amazingadventures.client { import util.*; import flash.display.*; import flash.geom.*; public class PlaceFailAnimation implements Renderable { public var resize:ChainResize;// = null public var movement:Movement;// = null public var imageSprite:Sprite;// = null public var placeGameC:PlaceGameC;// = null public function PlaceFailAnimation(_arg1:Sprite, _arg2:PlaceGameC, _arg3:int, _arg4:Point, _arg5:Number){ this.imageSprite = _arg1; this.placeGameC = _arg2; movement = new Movement(_arg1, _arg3, (_arg3 + 25), _arg1.x, _arg1.y, _arg4.x, _arg4.y); resize = new ChainResize(_arg1); resize.addResize(_arg3, _arg1.scaleX, _arg1.scaleY); resize.addResize((_arg3 + 25), _arg5, _arg5); } public function render(_arg1:int, _arg2:Number):int{ if (movement != null){ if (_arg1 >= movement.endTick){ movement = null; } else { resize.update(_arg1, _arg2); movement.update(_arg1, _arg2); }; } else { placeGameC.returnImageSpriteToSlider(imageSprite); return (Renderer.STOP); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 17
//PlaceGameC (amazingadventures.client.PlaceGameC) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; public class PlaceGameC { public var placeGame:PlaceGame;// = null public var leftHalf:GraphicsHalf;// = null public var rightHalf:GraphicsHalf;// = null public var slideBar2:NewSlideBar;// = null public var slideImages:Sprite;// = null public var gameSprite:Sprite;// = null public var animationLayer:Sprite;// = null public var draggedSprite:Sprite;// = null public var draggedSpriteScale:Number;// = 1 public var draggedSpritePoint:Point;// = null public var draggedSpriteDepth:int;// = -1 public var missingSide:int; public function PlaceGameC(_arg1:PlaceGame){ var _local6:Obj; var _local7:Obj; super(); this.placeGame = _arg1; this.slideBar2 = _arg1.game.c.newBar.newSlideBar; this.gameSprite = _arg1.game.c.gameSprite; this.animationLayer = _arg1.game.c.animationLayer; slideImages = new Sprite(); slideBar2.addChild(slideImages); var _local2:Array = new Array(); var _local3:Array = new Array(); var _local4:int; while (_local4 < _arg1.objs.size()) { _local6 = Obj(_arg1.objs.g(_local4)); _local6.c.placeInit(); if (_arg1.leftObjs.indexOf(_local6) == -1){ _local2.push(_local6.c.left); }; if (_arg1.rightObjs.indexOf(_local6) == -1){ _local3.push(_local6.c.right); }; _local4++; }; var _local5:int; while (_local5 < _arg1.excludedObjs.size()) { _local7 = Obj(_arg1.excludedObjs.g(_local5)); if (_arg1.leftObjs.indexOf(_local7) != -1){ makeImageSprite(_local7.c.original_image, _local7.id); }; if (_arg1.rightObjs.indexOf(_local7) != -1){ makeImageSprite(_local7.c.original_image, _local7.id); }; _local5++; }; updateSlideBar(); leftHalf = new GraphicsHalf(_local2, _arg1.sideOfScene); gameSprite.addChild(leftHalf); rightHalf = new GraphicsHalf(_local3, _arg1.sideOfScene); rightHalf.x = 378; gameSprite.addChild(rightHalf); _arg1.game.c.middleBorder.visible = true; _arg1.game.c.middleBorderLeft.visible = true; _arg1.game.c.middleBorderRight.visible = true; _arg1.game.c.middleBorderTop.visible = true; if (_arg1.game.hintsLeft > 0){ _arg1.game.c.hintBh.func = hintClicked; _arg1.game.c.hintBh.active = true; _arg1.game.c.newBar.hintMc.addEventListener(MouseEvent.CLICK, hintClicked); }; _arg1.game.c.updateItemsLeft(_arg1.excludedObjs.size()); _arg1.game.c.newBar.itemsLeftBox.visible = true; _arg1.game.c.updateItemsLeft(_arg1.excludedObjs.size()); _arg1.game.c.newBar.newSlideBar.moveShort.visible = true; } public function updateSlideBar():void{ var _local3:Sprite; var _local1:int; while (_local1 < slideImages.numChildren) { _local3 = Sprite(slideImages.getChildAt(_local1)); _local3.x = (_local1 * 66); _local3.y = 0; _local1++; }; var _local2:int = (PlaceGame.NO_THINGS_TO_PLACE - slideImages.numChildren); slideImages.x = (100 + (_local2 * 32)); slideImages.y = 33; } public function makeImageSprite(_arg1:Image, _arg2:String):void{ _arg1.x = 0; _arg1.y = 0; _arg1.mouseEnabled = true; var _local3:Sprite = new Sprite(); activateDrag(_local3); _local3.name = _arg2; _local3.addChild(_arg1); _arg1.x = -(Math.floor((_local3.width / 2))); _arg1.y = -(Math.floor((_local3.height / 2))); var _local4:GlowFilter = new GlowFilter(0xFFFFFF, 1, 6, 6, 1.49, BitmapFilterQuality.LOW, false, false); _local3.filters = [_local4]; var _local5:Number = 48; var _local6:Number = 1; var _local7:Number = _arg1.width; if (_arg1.height > _arg1.width){ _local7 = _arg1.height; }; if (_local7 > _local5){ _local6 = (_local7 / _local5); _local6 = (1 / _local6); }; _local3.scaleX = _local6; _local3.scaleY = _local6; slideImages.addChild(_local3); } public function activateDrag(_arg1:Sprite):void{ _arg1.addEventListener(MouseEvent.MOUSE_DOWN, imageDrag); } public function deActivateDrag(_arg1:Sprite):void{ _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, imageDrag); } public function imageDrag(_arg1:MouseEvent):void{ var _local2:Sprite = Sprite(_arg1.target.parent); deActivateDrag(_local2); var _local3:String = _local2.name; placeGame.game.main.addPlayData([Game.INPUT_IMAGE_DRAG, _local3]); } public function startImageDrag(_arg1:String):void{ draggedSprite = Sprite(slideImages.getChildByName(_arg1)); draggedSpritePoint = draggedSprite.parent.localToGlobal(new Point(draggedSprite.x, draggedSprite.y)); draggedSpriteDepth = slideImages.getChildIndex(draggedSprite); draggedSpriteScale = draggedSprite.scaleX; draggedSprite.scaleX = 1; draggedSprite.scaleY = 1; animationLayer.addChild(draggedSprite); draggedSprite.startDrag(true); draggedSprite.addEventListener(MouseEvent.MOUSE_DOWN, imageDrop); updateSlideBar(); missingSide = 0; if (placeGame.rightObjs.indexOf(placeGame.draggedObj) != -1){ missingSide = 1; }; } public function imageDrop(_arg1:MouseEvent):void{ var _local5:GraphicsHalf; var _local6:Image; var _local7:Point; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; draggedSprite.removeEventListener(MouseEvent.MOUSE_DOWN, imageDrop); draggedSprite.stopDrag(); var _local2:int; var _local3:int = draggedSprite.x; if (_local3 > 378){ _local2 = 1; _local3 = (_local3 - 378); } else { _local3 = (_local3 + 378); }; var _local4:Boolean; if (_local2 == missingSide){ _local5 = leftHalf; _local6 = placeGame.draggedObj.c.right; if (_local2 == 1){ _local5 = rightHalf; _local6 = placeGame.draggedObj.c.left; }; _local4 = _local6.hitTestPoint(_local3, draggedSprite.y); if (!_local4){ _local7 = _local6.localToGlobal(new Point(0, 0)); _local6.localToGlobal(new Point(0, 0)).x = ((_local7.x > 378)) ? (_local7.x - 378) : (_local7.x + 378); if ((((_local6.width < 15)) && ((_local6.height < 15)))){ _local7.x = (_local7.x + Math.floor((_local6.width / 2))); _local7.y = (_local7.y + Math.floor((_local6.height / 2))); _local4 = draggedSprite.hitTestPoint(_local7.x, _local7.y); } else { _local8 = (draggedSprite.x - (draggedSprite.width / 2)); _local9 = (draggedSprite.y - (draggedSprite.height / 2)); _local10 = ((_local7.x + placeGame.draggedObj.c.offsetx) - _local8); _local11 = ((_local7.y + placeGame.draggedObj.c.offsety) - _local9); _local12 = Math.sqrt(((_local10 * _local10) + (_local11 * _local11))); _local4 = (_local12 <= 24); }; }; }; if (((!(_local4)) && (draggedSprite.getChildAt(0).hitTestObject(placeGame.game.c.newBar)))){ placeGame.game.addPlayData([Game.INPUT_PUT_BACK]); } else { placeGame.game.main.addPlayData([Game.INPUT_IMAGE_DROP, _local4]); }; } public function hintClicked(_arg1:Event=null):void{ placeGame.game.main.addPlayData([Game.INPUT_HINT]); if (placeGame.game.hintsLeft <= 1){ placeGame.game.c.hintBh.setOnOff(false); placeGame.game.c.hintBh.active = false; placeGame.game.c.newBar.hintMc.visible = false; } else { placeGame.game.c.hintBh.setOnOff(true); }; Main.main.soundManager.startSound(new HintSnd(), SoundManager.VOLUME_HINT); } public function giveHint():void{ var _local1:Obj; var _local2:int = (Math.random() * placeGame.excludedObjs.size()); _local1 = Obj(placeGame.excludedObjs.g(_local2)); var _local3:int; if (placeGame.rightObjs.indexOf(_local1) != -1){ _local3 = 1; }; var _local4:HintAnimation = new HintAnimation(placeGame.game.c); _local4.miniGameInit(_local1, _local3, placeGame.sideOfScene, placeGame.game.main.gameTimer.currentTick); placeGame.game.c.hintLayer.addChild(_local4); placeGame.game.main.renderer.start(_local4); placeGame.game.c.updateRelaxHints(); } public function animateSuccess(_arg1:int):void{ var _local2:Image = placeGame.draggedObj.c.left; var _local3:GraphicsHalf = leftHalf; if (missingSide == 1){ _local2 = placeGame.draggedObj.c.right; _local3 = rightHalf; }; animationLayer.removeChild(draggedSprite); _local2.x = placeGame.draggedObj.c.x; _local2.y = placeGame.draggedObj.c.y; if (placeGame.sideOfScene == 1){ _local2.x = (_local2.x - 378); }; GameC.addChildAtByZ(_local2, _local3); var _local4:Point = _local3.localToGlobal(new Point(_local2.x, _local2.y)); _local3.localToGlobal(new Point(_local2.x, _local2.y)).x = (_local4.x + Math.floor((_local2.width / 2))); _local4.y = (_local4.y + Math.floor((_local2.height / 2))); var _local5:SuccessAnimation = new SuccessAnimation(); animationLayer.addChild(_local5); _local5.x = _local4.x; _local5.y = _local4.y; _local5.init(placeGame.game.main.gameTimer.currentTick); placeGame.game.main.renderer.start(_local5); var _local6:ScorePop = new ScorePop(); _local6.x = _local4.x; var _local7:int = (755 - 150); if (_local6.x > _local7){ _local6.x = _local7; }; _local6.y = _local4.y; animationLayer.addChild(_local6); _local6.init(placeGame.game.main.gameTimer.currentTick, _arg1); placeGame.game.main.renderer.start(_local6); placeGame.game.c.updateScoreTf(); placeGame.game.c.updateItemsLeft(placeGame.excludedObjs.size()); Main.main.soundManager.startSound(new FoundSnd(), SoundManager.VOLUME_MINI_GAME_MATCH); } public function animateFailure(_arg1:int, _arg2:int):void{ var _local5:ScorePop; var _local6:int; var _local3:PlaceFailAnimation = new PlaceFailAnimation(draggedSprite, this, _arg1, draggedSpritePoint, draggedSpriteScale); placeGame.game.main.renderer.start(_local3); var _local4:FailAnimation = new FailAnimation(draggedSprite.x, draggedSprite.y, placeGame.game.main.gameTimer.currentTick); animationLayer.addChild(_local4); placeGame.game.main.renderer.start(_local4); if (_arg2 < 0){ _local5 = new ScorePop(); animationLayer.addChild(_local5); _local6 = (755 - 100); if (draggedSprite.x > _local6){ _local5.x = _local6; } else { _local5.x = draggedSprite.x; }; _local5.y = draggedSprite.y; _local5.init(placeGame.game.main.gameTimer.currentTick, _arg2); placeGame.game.main.renderer.start(_local5); }; placeGame.game.c.updateScoreTf(); Main.main.soundManager.startSound(new PenaltySnd(), SoundManager.VOLUME_PENALTY); } public function animatePutBack(_arg1:int):void{ var _local2:PlaceFailAnimation = new PlaceFailAnimation(draggedSprite, this, _arg1, draggedSpritePoint, draggedSpriteScale); placeGame.game.main.renderer.start(_local2); } public function returnImageSpriteToSlider(_arg1):void{ slideImages.addChildAt(_arg1, draggedSpriteDepth); updateSlideBar(); activateDrag(_arg1); } public function cleanUp():void{ var _local1:DisplayObject; while (slideImages.numChildren > 0) { _local1 = slideImages.getChildAt(0); if ((_local1 is Sprite)){ deActivateDrag(Sprite(_local1)); }; slideImages.removeChild(_local1); }; } } }//package amazingadventures.client
Section 18
//ScoreAnimation (amazingadventures.client.ScoreAnimation) package amazingadventures.client { import amazingadventures.*; import util.*; import flash.media.*; import flash.text.*; public class ScoreAnimation implements Renderable { public var textField:TextField;// = null public var score:int;// = -1 public var startTick:int;// = -1 public var started:Boolean;// = false public var scorePerInterval:Number;// = 0 public var soundManager:SoundManager;// = null public var extraSound:Sound;// = null private var lastTick:int; public static const TICKS:int = 30; public static const INTERVAL:int = 1; public function ScoreAnimation(_arg1:TextField, _arg2:int, _arg3:int, _arg4:SoundManager, _arg5:Sound=null){ lastTick = -(ScoreAnimation.INTERVAL); super(); this.textField = _arg1; this.score = _arg2; this.startTick = _arg3; this.soundManager = _arg4; this.extraSound = _arg5; _arg1.text = ""; if (_arg2 > 0){ scorePerInterval = (_arg2 / (ScoreAnimation.TICKS / ScoreAnimation.INTERVAL)); Main.renderer.start(this); } else { _arg1.text = "0"; }; } public function render(_arg1:int, _arg2:Number):int{ var _local3:int; if (((!(started)) && ((_arg1 > startTick)))){ started = true; lastTick = _arg1; soundManager.startSound(new ScoreCountSnd(), SoundManager.VOLUME_OUTRO_SCORE); if (extraSound){ soundManager.startSound(extraSound, (SoundManager.VOLUME_OUTRO_SCORE + 0.2)); }; }; if (((started) && ((_arg1 >= (lastTick + ScoreAnimation.INTERVAL))))){ _local3 = ((lastTick - startTick) / ScoreAnimation.INTERVAL); textField.text = ("" + Math.floor((_local3 * scorePerInterval))); lastTick = _arg1; }; if (_arg1 >= (startTick + ScoreAnimation.TICKS)){ textField.text = ("" + score); return (Renderer.STOP); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 19
//ScorePop (amazingadventures.client.ScorePop) package amazingadventures.client { import util.*; import flash.display.*; import flash.text.*; public class ScorePop extends Sprite implements Renderable { public var textField:TextField; public var movement:Movement;// = null public var fader:Fader;// = null public function ScorePop(){ mouseEnabled = false; textField.mouseEnabled = false; } public function init(_arg1, _arg2:int):void{ var _local3 = ""; if (_arg2 > 0){ textField.text = (("+ " + _arg2) + _local3); } else { textField.text = (("- " + -(_arg2)) + _local3); }; movement = new Movement(this, _arg1, (_arg1 + 120), x, y, x, (y - 100)); fader = new Fader(this, _arg1, (_arg1 + 120), 1, 0); } public function render(_arg1:int, _arg2:Number):int{ if (movement != null){ if (y == movement.endY){ movement = null; } else { movement.update(_arg1, _arg2); fader.update(_arg1, _arg2); }; }; if (movement == null){ return (Renderer.STOP_REMOVE); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 20
//SlideBarAnimation (amazingadventures.client.SlideBarAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class SlideBarAnimation implements Renderable { var spyGameC:SpyGameC; var move:Movement;// = null var slideBar:MovieClip; var startTick:int; var state:int;// = 0 public function SlideBarAnimation(_arg1:int, _arg2:MovieClip, _arg3:int){ this.spyGameC = spyGameC; this.slideBar = _arg2; move = new Movement(_arg2, _arg1, (_arg1 + 30), _arg2.x, _arg2.y, _arg2.x, _arg3); startTick = _arg1; } public function render(_arg1:int, _arg2:Number):int{ var _local3:int; if (move != null){ move.update(_arg1, _arg2); if (_arg1 >= move.endTick){ move = null; }; } else { if (state == 0){ state = 1; move = new Movement(slideBar, _arg1, (_arg1 + 30), slideBar.x, slideBar.y, slideBar.x, 11); _local3 = 1; while (_local3 < slideBar.numChildren) { slideBar.getChildAt(_local3).visible = true; _local3++; }; slideBar.levelNameTf.visible = false; } else { return (Renderer.STOP); }; }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 21
//SoundManager (amazingadventures.client.SoundManager) package amazingadventures.client { import flash.events.*; import util.*; import flash.media.*; import flash.utils.*; public class SoundManager { public const LOOP_DELAY:int = 400; public const OUTRO_DELAY:int = 400; public const OUTRO_FADE_OUT:int = 1400; public var soundOn:Boolean;// = true public var musicOn:Boolean;// = true private var introSound:Sound; private var introSoundChannel:SoundChannel; private var introSoundTransform:SoundTransform; private var levelSound:Sound; private var levelSoundChannel:SoundChannel; private var levelSoundTransform:SoundTransform; private var loopSound:Sound; private var loopSoundChannel:SoundChannel; private var loopSoundTransform:SoundTransform; private var outroSoundTransform:SoundTransform; private var outroSound:Sound; public var outroSoundChannel:SoundChannel; private var timeWarningSound:Sound; private var timeWarningSoundChannel:SoundChannel; private var timeWarningSoundTransform:SoundTransform; private var timer:Timer; public static const STEREO_INTENSITY:Number = 0.7; public static const VOLUME_INTRO:Number = 0.7; public static const VOLUME_LOOP:Number = 0.6; public static const VOLUME_OUTRO:Number = 0.7; public static const VOLUME_CLICK:Number = 0.7; public static const VOLUME_ROLL_OVER:Number = 0.7; public static const VOLUME_HINT:Number = 0.7; public static const VOLUME_FOUND:Number = 0.7; public static const VOLUME_LEVEL_WIN_POINTS:Number = 0.7; public static const VOLUME_MINI_GAME_MATCH:Number = 0.7; public static const VOLUME_MISSION_WIN_PONINTS:Number = 0.7; public static const VOLUME_NOT_FOUND:Number = 0.7; public static const VOLUME_PENALTY:Number = 0.7; public static const VOLUME_TIME_WARNING:Number = 0.7; public static const VOLUME_OUTRO_SCORE:Number = 0.7; public function toggleSound(_arg1:MouseEvent=null):void{ soundOn = !(soundOn); if (!soundOn){ if (timeWarningSoundChannel != null){ timeWarningSoundChannel.soundTransform = new SoundTransform(0); }; } else { if (timeWarningSoundChannel != null){ timeWarningSoundChannel.soundTransform = new SoundTransform(SoundManager.VOLUME_TIME_WARNING); }; }; } public function toggleMusic(_arg1:Event=null):void{ musicOn = !(musicOn); if (musicOn){ startMusic(); } else { stopMusic(); }; } public function stopMusic():void{ if (loopSoundChannel != null){ loopSoundChannel.soundTransform = new SoundTransform(0); }; if (introSoundChannel != null){ introSoundChannel.soundTransform = new SoundTransform(0); }; if (outroSoundChannel != null){ outroSoundChannel.soundTransform = new SoundTransform(0); }; } public function startMusic():void{ if (musicOn){ if (loopSoundChannel != null){ loopSoundChannel.soundTransform = new SoundTransform(SoundManager.VOLUME_LOOP); }; if (introSoundChannel != null){ introSoundChannel.soundTransform = new SoundTransform(SoundManager.VOLUME_INTRO); }; if (outroSoundChannel != null){ outroSoundChannel.soundTransform = new SoundTransform(SoundManager.VOLUME_OUTRO); }; }; } public function startIntroSound(_arg1:Event=null):void{ var _local2:Number = SoundManager.VOLUME_INTRO; if (!musicOn){ _local2 = 0; }; introSoundTransform = new SoundTransform(_local2); introSound = new IntroSnd(); introSoundChannel = introSound.play(0, 0, introSoundTransform); } public function startLevelClearSound(_arg1:Event=null):void{ var _local2:Number = SoundManager.VOLUME_INTRO; if (!musicOn){ _local2 = 0; }; levelSoundTransform = new SoundTransform(_local2); levelSound = new LevelClearSnd(); levelSoundChannel = levelSound.play(0, 0, levelSoundTransform); } public function gameStart(_arg1:Event=null):void{ if (introSoundChannel != null){ new SoundFader(introSoundChannel, LOOP_DELAY); }; timer = new Timer(LOOP_DELAY, 1); timer.addEventListener("timerComplete", startLoopSound); timer.start(); } public function startLoopSound(_arg1:Event=null):void{ var _local2:Number = SoundManager.VOLUME_LOOP; if (!musicOn){ _local2 = 0; }; loopSoundTransform = new SoundTransform(_local2); loopSound = new LoopSnd(); loopSoundChannel = loopSound.play(0, int.MAX_VALUE, loopSoundTransform); } public function gameEnd():void{ if (introSoundChannel != null){ new SoundFader(introSoundChannel, OUTRO_DELAY); }; if (loopSoundChannel != null){ new SoundFader(loopSoundChannel, OUTRO_DELAY); }; if (levelSoundChannel != null){ new SoundFader(levelSoundChannel, OUTRO_DELAY); }; timer = new Timer(OUTRO_DELAY, 1); timer.addEventListener("timerComplete", startOutroSound); timer.start(); } public function startOutroSound(_arg1:Event=null):void{ var _local2:Number = SoundManager.VOLUME_OUTRO; if (!musicOn){ _local2 = 0; }; outroSoundTransform = new SoundTransform(_local2); outroSound = new OutroSnd(); outroSoundChannel = outroSound.play(0, 0, outroSoundTransform); } protected function playSound(_arg1:Sound, _arg2:Number, _arg3:int=0):void{ var _local4:SoundTransform = new SoundTransform(_arg2); var _local5:Sound = _arg1; var _local6:SoundChannel = _local5.play(0, _arg3, _local4); } public function startSound(_arg1:Sound, _arg2:Number, _arg3:int=0):void{ if (soundOn){ playSound(_arg1, _arg2, _arg3); }; } public function startTimeWarning():void{ var _local1:Number = SoundManager.VOLUME_TIME_WARNING; if (!soundOn){ _local1 = 0; }; timeWarningSoundTransform = new SoundTransform(_local1); timeWarningSound = new TimeWarningSnd(); timeWarningSoundChannel = timeWarningSound.play(0, 0, timeWarningSoundTransform); } public function getSoundOn():Boolean{ return (soundOn); } public function getMusicOn():Boolean{ return (musicOn); } public function outroFadeOut():void{ if (outroSoundChannel != null){ new SoundFader(outroSoundChannel, OUTRO_FADE_OUT); }; if (loopSoundChannel != null){ new SoundFader(loopSoundChannel, OUTRO_FADE_OUT); }; } } }//package amazingadventures.client
Section 22
//SpotFoundAnimation (amazingadventures.client.SpotFoundAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class SpotFoundAnimation implements Renderable { var move:Movement;// = null var fade:Fader;// = null var image:Image; var flower:DisplayObject; var startTick:int; var endScale:Number; public function SpotFoundAnimation(_arg1:Image, _arg2:int, _arg3:int, _arg4:int, _arg5:Number, _arg6:DisplayObject){ this.image = _arg1; this.flower = _arg6; move = new Movement(_arg1, _arg2, (_arg2 + 60), _arg1.x, _arg1.y, _arg3, _arg4); fade = new Fader(_arg6, _arg2, (_arg2 + 60), 1, 0); startTick = _arg2; endScale = _arg5; } public function render(_arg1:int, _arg2:Number):int{ var _local3:Number; if (move != null){ move.update(_arg1, _arg2); fade.update(_arg1, _arg2); _local3 = ((1 - endScale) * (((_arg1 + _arg2) - startTick) / 60)); image.scaleX = (1 - _local3); image.scaleY = (1 - _local3); if (_arg1 >= move.endTick){ move = null; fade = null; }; } else { flower.alpha = 0; flower.visible = false; return (Renderer.STOP); }; return (Renderer.CONTINUE); } } }//package amazingadventures.client
Section 23
//SpotGameC (amazingadventures.client.SpotGameC) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import flash.display.*; import flash.geom.*; import flash.filters.*; public class SpotGameC { public var spotGame:SpotGame;// = null public var leftHalf:GraphicsHalf;// = null public var rightHalf:GraphicsHalf;// = null public var gameSprite:Sprite;// = null public var animationLayer:Sprite;// = null public var target:Target;// = null public var imagesToHitLeft:Array;// = null public var imagesToHitRight:Array;// = null public var flowerPos:int;// = 0 var leftImages:Array; var rightImages:Array; public function SpotGameC(_arg1:SpotGame){ var _local2:int; var _local3:Obj; var _local4:Obj; var _local5:Obj; var _local6:MovieClip; super(); this.spotGame = _arg1; this.gameSprite = _arg1.game.c.gameSprite; this.animationLayer = _arg1.game.c.animationLayer; leftImages = new Array(); rightImages = new Array(); _local2 = 0; while (_local2 < _arg1.objs.size()) { _local3 = Obj(_arg1.objs.g(_local2)); _local3.c.spotInit(); if (_arg1.leftExcludedObjs.indexOf(_local3) == -1){ leftImages.push(_local3.c.left); }; if (_arg1.rightExcludedObjs.indexOf(_local3) == -1){ rightImages.push(_local3.c.right); }; _local2++; }; imagesToHitRight = new Array(); _local2 = 0; while (_local2 < _arg1.leftExcludedObjs.size()) { _local4 = Obj(_arg1.leftExcludedObjs.g(_local2)); imagesToHitRight.push(_local4.c.right); _local2++; }; imagesToHitLeft = new Array(); _local2 = 0; while (_local2 < _arg1.rightExcludedObjs.size()) { _local5 = Obj(_arg1.rightExcludedObjs.g(_local2)); imagesToHitLeft.push(_local5.c.left); _local2++; }; leftHalf = new GraphicsHalf(leftImages, _arg1.sideOfScene); gameSprite.addChild(leftHalf); rightHalf = new GraphicsHalf(rightImages, _arg1.sideOfScene); rightHalf.x = 378; gameSprite.addChild(rightHalf); _arg1.game.c.middleBorder.visible = true; _arg1.game.c.middleBorderLeft.visible = true; _arg1.game.c.middleBorderRight.visible = true; _arg1.game.c.middleBorderTop.visible = true; if (_arg1.game.hintsLeft > 0){ _arg1.game.c.hintBh.func = hintClicked; _arg1.game.c.hintBh.active = true; _arg1.game.c.newBar.hintMc.addEventListener(MouseEvent.CLICK, hintClicked); }; _arg1.game.c.newBar.itemsLeftBox.visible = true; _arg1.game.c.updateItemsLeft(_arg1.excludedObjs.size()); _local2 = 0; while (_local2 < _arg1.excludedObjs.size()) { _local6 = new ShadowFlower(); _local6.x = (78 + (_local2 * 66)); _local6.y = 10; _arg1.game.c.newBar.newSlideBar.addChild(_local6); _local2++; }; _arg1.game.c.newBar.newSlideBar.moveShort.visible = true; } public function init():void{ target = new Target(); gameSprite.addChild(target); target.init(); gameSprite.addEventListener(MouseEvent.CLICK, click); } public function click(_arg1:MouseEvent):void{ var _local2:Number; var _local3:Number; var _local4:int; var _local6:Image; if ((((_arg1.stageX > 0)) && ((_arg1.stageX < 756)))){ if (_arg1.stageX > 378){ _local2 = (_arg1.stageX - 378); _local3 = _arg1.stageX; } else { _local2 = _arg1.stageX; _local3 = (_arg1.stageX + 378); }; }; var _local5:Boolean; var _local7:Image; var _local8 = -1; _local4 = (leftImages.length - 1); while (_local4 >= 0) { _local6 = Image(leftImages[_local4]); if (((!((getExcludedObjById(_local6.name) == null))) && (_local6.testHit(_local2, _arg1.stageY)))){ _local7 = _local6; _local8 = parseInt(_local6.name.substr(3)); break; }; _local4--; }; var _local9:Image; var _local10 = -1; _local4 = (rightImages.length - 1); while (_local4 >= 0) { _local6 = Image(rightImages[_local4]); if (((!((getExcludedObjById(_local6.name) == null))) && (_local6.testHit(_local3, _arg1.stageY)))){ _local9 = _local6; _local10 = parseInt(_local6.name.substr(3)); break; }; _local4--; }; _local6 = null; if ((((_local8 > -1)) && ((_local8 > _local10)))){ _local6 = _local7; } else { if (_local10 > -1){ _local6 = _local9; }; }; var _local11 = "background"; if (_local6 != null){ _local11 = _local6.name; }; target.click(spotGame.game.main.gameTimer.currentTick); spotGame.game.main.renderer.start(target); spotGame.game.main.addPlayData([Game.INPUT_SPOT_CLICK, _local11, int(_arg1.stageX), int(_arg1.stageY)]); } public function hintClicked(_arg1:Event=null):void{ spotGame.game.main.addPlayData([Game.INPUT_HINT]); if (spotGame.game.hintsLeft <= 1){ spotGame.game.c.hintBh.setOnOff(false); spotGame.game.c.hintBh.active = false; spotGame.game.c.newBar.hintMc.visible = false; } else { spotGame.game.c.hintBh.setOnOff(true); }; Main.main.soundManager.startSound(new HintSnd(), SoundManager.VOLUME_HINT); } public function giveHint():void{ var _local1:Obj; var _local2:int = (Math.random() * spotGame.excludedObjs.size()); _local1 = Obj(spotGame.excludedObjs.g(_local2)); var _local3:int; if (spotGame.rightExcludedObjs.indexOf(_local1) != -1){ _local3 = 1; }; var _local4:HintAnimation = new HintAnimation(spotGame.game.c); _local4.miniGameInit(_local1, _local3, spotGame.sideOfScene, spotGame.game.main.gameTimer.currentTick); spotGame.game.c.hintLayer.addChild(_local4); spotGame.game.main.renderer.start(_local4); spotGame.game.c.updateRelaxHints(); } public function animateSuccess(_arg1:int, _arg2:Obj, _arg3:int, _arg4:int):void{ var _local10:int; var _local21:GraphicsHalf; var _local22:Image; spotGame.game.c.updateScoreTf(); spotGame.game.c.updateItemsLeft(spotGame.excludedObjs.size()); var _local5:Image = _arg2.c.original_image; if (_arg3 == 1){ _local21 = rightHalf; _local22 = _arg2.c.right; } else { _local21 = leftHalf; _local22 = _arg2.c.left; }; var _local6:GlowFilter = new GlowFilter(0xFFFFFF, 1, 6, 6, 1.49, BitmapFilterQuality.LOW, false, false); _local5.filters = [_local6]; _local5.x = (_local22.x + _arg2.c.offsetx); _local5.y = (_local22.y + _arg2.c.offsety); _local21.removeChild(_local22); var _local7:int = Math.floor((_local5.width / 2)); var _local8:int = Math.floor((_local5.height / 2)); var _local9:SuccessAnimation = new SuccessAnimation(); animationLayer.addChild(_local9); _local9.x = (_local5.x + _local7); _local9.y = (_local5.y + _local8); _local9.init(spotGame.game.main.gameTimer.currentTick); spotGame.game.main.renderer.start(_local9); if (_local5.x > 378){ _local10 = (_local5.x - 378); } else { _local10 = (_local5.x + 378); }; var _local11:SuccessAnimation = new SuccessAnimation(); animationLayer.addChild(_local11); _local11.x = (_local10 + _local7); _local11.y = (_local5.y + _local8); _local11.init(spotGame.game.main.gameTimer.currentTick); spotGame.game.main.renderer.start(_local11); var _local12:Point = _local21.localToGlobal(new Point(_local5.x, _local5.y)); _local5.x = _local12.x; _local5.y = _local12.y; animationLayer.addChild(_local5); var _local13:Number = 48; var _local14:Number = 1; var _local15:Number = _local5.width; if (_local5.height > _local5.width){ _local15 = _local5.height; }; if (_local15 > _local13){ _local14 = (_local15 / _local13); _local14 = (1 / _local14); }; var _local16:Point = spotGame.game.c.newBar.newSlideBar.localToGlobal(new Point((78 + (flowerPos++ * 66)), 10)); spotGame.game.c.newBar.newSlideBar.localToGlobal(new Point((78 + (flowerPos++ * 66)), 10)).x = (_local16.x + ((48 - (_local5.width * _local14)) / 2)); _local16.y = (_local16.y + ((48 - (_local5.height * _local14)) / 2)); var _local17:DisplayObject = spotGame.game.c.newBar.newSlideBar.getChildAt(flowerPos); var _local18:SpotFoundAnimation = new SpotFoundAnimation(_local5, _arg4, _local16.x, _local16.y, _local14, _local17); spotGame.game.main.renderer.start(_local18); var _local19:ScorePop = new ScorePop(); _local19.x = (_local5.x + _local7); var _local20:int = (755 - 150); if (_local19.x > _local20){ _local19.x = _local20; }; _local19.y = (_local5.y + _local8); animationLayer.addChild(_local19); _local19.init(_arg4, _arg1); spotGame.game.main.renderer.start(_local19); Main.main.soundManager.startSound(new FoundSnd(), SoundManager.VOLUME_MINI_GAME_MATCH); } public function animateFailure(_arg1:int, _arg2:int, _arg3:int):void{ var _local5:ScorePop; var _local6:int; spotGame.game.c.updateScoreTf(); var _local4:FailAnimation = new FailAnimation(_arg1, _arg2, spotGame.game.main.gameTimer.currentTick); animationLayer.addChild(_local4); spotGame.game.main.renderer.start(_local4); if (_arg3 < 0){ _local5 = new ScorePop(); animationLayer.addChild(_local5); _local6 = (755 - 100); if (_arg1 > _local6){ _local5.x = _local6; } else { _local5.x = _arg1; }; _local5.y = _arg2; _local5.init(spotGame.game.main.gameTimer.currentTick, _arg3); spotGame.game.main.renderer.start(_local5); }; Main.main.soundManager.startSound(new PenaltySnd(), SoundManager.VOLUME_PENALTY); } public function cleanUp():void{ gameSprite.removeEventListener(MouseEvent.CLICK, click); target.cleanUp(); } public function getExcludedObjById(_arg1:String):Obj{ var _local3:Obj; var _local2:int; while (_local2 < spotGame.excludedObjs.size()) { _local3 = Obj(spotGame.excludedObjs.g(_local2)); if (_arg1 == _local3.id){ return (_local3); }; _local2++; }; return (null); } } }//package amazingadventures.client
Section 24
//SpyGameC (amazingadventures.client.SpyGameC) package amazingadventures.client { import amazingadventures.*; import flash.events.*; import util.*; import flash.display.*; import flash.text.*; import flash.geom.*; public class SpyGameC { public var spyGame:SpyGame;// = null public var background:Image;// = null public var slideBar:NewSlideBar;// = null public var slideBarStartIndex:int;// = 0 public var gameSprite:Sprite;// = null public var animationLayer:Sprite;// = null public function SpyGameC(_arg1:SpyGame){ var spyGame = _arg1; super(); this.spyGame = spyGame; this.gameSprite = spyGame.game.c.gameSprite; this.animationLayer = spyGame.game.c.animationLayer; spyGame.game.c.updateItemsLeft(Game.NO_THINGS_TO_FIND); spyGame.game.c.newBar.scoreMc.scoreTf.text = ("" + 0); spyGame.game.c.newBar.newSlideBar.levelNameTf.text = Main.gameDataXml.@placename; background = new Image("0", -1); background.name = "background"; background.x = 0; background.y = 0; gameSprite.addChild(background); prepareObjs(); prepareTextItems(); spyGame.game.c.hintBh.func = hintClicked; spyGame.game.c.newBar.hintMc.hint1Tf.text = Main.gameDataXml.text.(@id == "hint"); spyGame.game.c.newBar.hintMc.hint2Tf.text = Main.gameDataXml.text.(@id == "hint"); spyGame.game.c.newBar.hintMc.hint2Tf.visible = false; spyGame.game.c.newBar.hintMc.hint2Arrow.visible = false; spyGame.game.c.newBar.hintMc.addEventListener(MouseEvent.CLICK, hintClicked); gameSprite.addEventListener(MouseEvent.CLICK, gameClicked); spyGame.game.c.newBar.newSlideBar.moveShort.visible = false; } public function wait():Boolean{ return ((spyGame.game.main.gameTimer.currentTick < (2.75 * Game.TICKS_PER_SECOND))); } public function gameClicked(_arg1:MouseEvent):void{ var _local5:Obj; if (wait()){ return; }; var _local2 = -1; var _local3:Obj; var _local4:int; while (_local4 < spyGame.thingsToFind.size()) { _local5 = Obj(spyGame.thingsToFind.g(_local4)); if (((!(_local5.found)) && (_local5.c.click(_arg1.stageX, _arg1.stageY)))){ if (_local5.c.z > _local2){ _local2 = _local5.c.z; _local3 = _local5; }; }; _local4++; }; if (_local3 != null){ _local3.c.hit(_arg1.stageX, _arg1.stageY); } else { spyGame.game.main.addPlayData([Game.INPUT_BG_CLICKED, Math.floor(_arg1.stageX), Math.floor(_arg1.stageY)]); }; } public function hintClicked(_arg1:Event=null):void{ if (wait()){ return; }; spyGame.game.main.addPlayData([Game.INPUT_HINT]); if (spyGame.game.hintsLeft <= 1){ spyGame.game.c.hintBh.setOnOff(false); spyGame.game.c.hintBh.active = false; spyGame.game.c.newBar.hintMc.visible = false; } else { spyGame.game.c.hintBh.setOnOff(true); }; Main.main.soundManager.startSound(new HintSnd(), SoundManager.VOLUME_HINT); } public function giveHint():void{ var _local1:Obj; var _local2:Array = new Array(); var _local3:int; while (_local3 < spyGame.thingsToFind.size()) { _local1 = Obj(spyGame.thingsToFind.g(_local3)); if (spyGame.foundThings.indexOf(_local1) == -1){ _local2.push(_local1); }; _local3++; }; var _local4:int = (Math.random() * _local2.length); _local1 = Obj(_local2[_local4]); var _local5:HintAnimation = new HintAnimation(spyGame.game.c); _local5.spyInit(_local1, spyGame.game.main.gameTimer.currentTick); spyGame.game.c.hintLayer.addChild(_local5); spyGame.game.main.renderer.start(_local5); spyGame.game.c.updateRelaxHints(); } public function prepareObjs():void{ var _local3:Obj; var _local1:Stack = spyGame.game.objs; var _local2:int; while (_local2 < _local1.size()) { _local3 = Obj(_local1.g(_local2)); _local3.c.spyInit(gameSprite); _local2++; }; } public function prepareTextItems():void{ var obj:Obj; var objId:String; var str:String; var textItem:TextItem; var textFormat:TextFormat; var row:int; var col:int; slideBar = spyGame.game.c.newBar.newSlideBar; slideBarStartIndex = slideBar.numChildren; var topMargin = 20; var lineHeight = 23; var leftMargin = 75; var colSpacing = 147; var stringsXml:XMLList = Main.gameDataXml.strings; var i:int; while (i < spyGame.thingsToFind.size()) { obj = Obj(spyGame.thingsToFind.g(i)); objId = ((Main.gameDataXml.@fileplacename + "_obj_") + Numbers.itoa(obj.nr, 3)); str = String(stringsXml.text.(@id == objId)); textItem = new TextItem(); textFormat = new TextFormat(); textFormat.letterSpacing = 1; textFormat.size = 13; textItem.textField.defaultTextFormat = textFormat; textItem.textField.text = str; textItem.line.gotoAndStop(0); slideBar.addChild(textItem); while ((((textItem.textField.textWidth > (textItem.textField.width - 10))) && ((int(textFormat.size) > 8)))) { textFormat.size = (int(textFormat.size) - 1); textItem.textField.setTextFormat(textFormat); textItem.textField.y = (textItem.textField.y + 0.5); }; row = 0; col = i; if (i >= 5){ row = 1; col = (i - 5); }; textItem.x = (leftMargin + (col * colSpacing)); textItem.y = (topMargin + (row * lineHeight)); textItem.visible = false; i = (i + 1); }; } public function thingFound(_arg1:Obj, _arg2:int, _arg3:int):void{ var _local4:Image = _arg1.c.original_image; _local4.x = (_arg1.c.left.x + _arg1.c.offsetx); _local4.y = (_arg1.c.left.y + _arg1.c.offsety); gameSprite.removeChild(_arg1.c.left); var _local5:TextItem = TextItem(slideBar.getChildAt((slideBarStartIndex + _arg2))); var _local6:Point = slideBar.localToGlobal(new Point(_local5.x, _local5.y)); var _local7:FoundAnimation = new FoundAnimation(animationLayer, _local4, _local5, _local6.x, _local6.y, spyGame.game.main.gameTimer.currentTick, _arg3); spyGame.game.main.renderer.start(_local7); Main.main.soundManager.startSound(new FoundSnd(), SoundManager.VOLUME_FOUND); spyGame.game.c.updateScoreTf(); spyGame.game.c.updateItemsLeft((spyGame.thingsToFind.size() - spyGame.foundThings.size())); } public function wrongThing(_arg1:int, _arg2:int, _arg3:int):void{ var _local5:ScorePop; var _local6:int; spyGame.game.c.updateScoreTf(); var _local4:FailAnimation = new FailAnimation(_arg1, _arg2, spyGame.game.main.gameTimer.currentTick); animationLayer.addChild(_local4); spyGame.game.main.renderer.start(_local4); if (_arg3 < 0){ _local5 = new ScorePop(); animationLayer.addChild(_local5); _local6 = (755 - 100); if (_arg1 > _local6){ _local5.x = _local6; } else { _local5.x = _arg1; }; _local5.y = _arg2; _local5.init(spyGame.game.main.gameTimer.currentTick, _arg3); spyGame.game.main.renderer.start(_local5); }; Main.main.soundManager.startSound(new PenaltySnd(), SoundManager.VOLUME_PENALTY); } public function removeGraphics():void{ var _local2:ObjC; gameSprite.removeChild(background); var _local1:int; while (_local1 < spyGame.game.objs.size()) { _local2 = Obj(spyGame.game.objs.g(_local1)).c; _local2.spyCleanUp(); _local1++; }; while (slideBar.numChildren > 1) { slideBar.removeChildAt(1); }; slideBar = null; gameSprite = null; animationLayer = null; } public function deActivate():void{ gameSprite.removeEventListener(MouseEvent.CLICK, gameClicked); spyGame.game.c.hintBh.active = false; spyGame.game.c.newBar.hintMc.removeEventListener(MouseEvent.CLICK, hintClicked); } public function checkForShortGameEnd():void{ if (((spyGame.game.c.shortMode) && ((spyGame.foundThings.size() >= 8)))){ spyGame.game.gameEnd(spyGame.game.main.gameTimer.currentTick, Game.SHORT_GAME_END); }; } } }//package amazingadventures.client
Section 25
//SuccessAnimation (amazingadventures.client.SuccessAnimation) package amazingadventures.client { import util.*; import flash.display.*; public class SuccessAnimation extends MovieClip implements Renderable { public var framePlayer:FramePlayer;// = null public function SuccessAnimation(){ var _local2:MovieClip; super(); addFrameScript(30, frame31); mouseEnabled = false; var _local1:int; while (_local1 < this.numChildren) { _local2 = MovieClip(this.getChildAt(_local1)); _local2.mouseEnabled = false; _local1++; }; } public function init(_arg1:int):void{ framePlayer = new FramePlayer(this, _arg1, 120, 0); } public function render(_arg1:int, _arg2:Number):int{ if (framePlayer != null){ if (_arg1 > framePlayer.endTick){ framePlayer = null; } else { framePlayer.update(_arg1, _arg2); }; }; if (framePlayer == null){ return (Renderer.STOP_REMOVE); }; return (Renderer.CONTINUE); } function frame31(){ } } }//package amazingadventures.client
Section 26
//Target (amazingadventures.client.Target) package amazingadventures.client { import flash.events.*; import util.*; import flash.display.*; public class Target extends MovieClip implements Renderable { public var framePlayer:FramePlayer;// = null public function Target(){ this.gotoAndStop(18); } public function init():void{ stage.addEventListener(MouseEvent.MOUSE_MOVE, update); } public function cleanUp():void{ stage.removeEventListener(MouseEvent.MOUSE_MOVE, update); } public function update(_arg1:MouseEvent):void{ var _local3:Number; var _local2:Number = stage.mouseX; if (_local2 > 378){ _local3 = (_local2 - 378); } else { _local3 = (_local2 + 378); }; if (_local3 < 0){ _local3 = 0; } else { if (_local3 > 755){ _local3 = 755; }; }; x = _local3; y = stage.mouseY; _arg1.updateAfterEvent(); } public function click(_arg1:int):void{ var _local2 = 45; framePlayer = new FramePlayer(this, _arg1, _local2, 0); } public function render(_arg1:int, _arg2:Number):int{ if (framePlayer != null){ framePlayer.update(_arg1, _arg2); if (_arg1 >= framePlayer.endTick){ framePlayer = null; }; return (Renderer.CONTINUE); //unresolved jump }; return (Renderer.STOP); } } }//package amazingadventures.client
Section 27
//Game (amazingadventures.Game) package amazingadventures { import flash.events.*; import util.*; import amazingadventures.client.*; public class Game { public var objs:Stack;// = null public var main:Main;// = null public var spyGame:SpyGame;// = null public var placeGame:PlaceGame;// = null public var spotGame:SpotGame;// = null public var miniGame:Object;// = null public var rand:Random;// = null public var countDownTicks:int;// = 0 public var state:int;// = 0 public var c:GameC;// = null private var playData:Stack;// = null public var showDialogTick:int;// = -1 public var startMiniGameTick:int;// = -1 public var showEndDialogTick:int;// = -1 public var penalties:int;// = 0 public var hintScore:int;// = 0 public var timeBonus:int;// = 0 public var totalScore:int;// = 0 public var seed:int;// = -1 public var hintsLeft:int;// = 2 public var endReason;// = -1 public static const NOT_SET:int = -1; public static const NOT_STARTED:int = 0; public static const SPY_GAME:int = 1; public static const PLACE_START_DIALOG:int = 2; public static const PLACE_GAME:int = 3; public static const SPOT_START_DIALOG:int = 4; public static const SPOT_GAME:int = 5; public static const GAME_OVER:int = 6; public static const STATE_STRINGS:Array = ["not started", "spy game", "place start dialog", "place game", "spot start dialog", "spot game", "game over"]; public static const TIME_RAN_OUT:int = 0; public static const USER_CHOSE_EXIT:int = 1; public static const COMPLETED:int = 2; public static const ERROR:int = 3; public static const SHORT_GAME_END:int = 4; public static const RELAX_LAST_MISS:int = 5; public static const RELAX_COMPLETE:int = 6; public static const LOAD_SWF_FAIL:int = 7; public static const END_REASONS:Array = ["timeRanOut", "userChoseExit", "completed", "error", "shortGameEnd", "relaxLastMiss", "relaxComplete", "loadSwfFail"]; public static const INPUT_EXIT:int = 0; public static const FIRST_TICK:int = 1; public static const LAST_TICK:int = 2; public static const CHEAT_TIMER_ALERT:int = 3; public static const THING_CLICKED:int = 4; public static const ERROR_MESSAGE:int = 5; public static const INPUT_HINT:int = 6; public static const INPUT_BG_CLICKED:int = 7; public static const INPUT_START_NEXT:int = 8; public static const INPUT_IMAGE_DRAG:int = 9; public static const INPUT_IMAGE_DROP:int = 10; public static const INPUT_SPOT_CLICK:int = 11; public static const INPUT_PUT_BACK:int = 12; public static const INPUT_TOGGLE_SOUND:int = 13; public static const INPUT_TOGGLE_MUSIC:int = 14; public static const SCORE:int = 15; public static const INPUT_STRINGS:Array = ["exit", "firstTick", "lastTick", "cheatTimerAlert", "thingClicked", "errorMessage", "hint", "bgClicked", "startMini", "startDrag", "dropImage", "spotClick", "putBack", "toggleSound", "toggleMusic", "score"]; public static const TICKS_PER_SECOND:int = 60; public static const COUNTDOWN_SECONDS:int = 360; public static const COUNTDOWN_TICKS:int = 21600; public static const MINIGAME_DIALOG_SECONDS:int = 10; public static const MINIGAME_DIALOG_TICKS:int = 600; public static const NO_THINGS_TO_FIND:int = 10; public static const PLACES:Array = ["machupicchu", "greece", "amazon", "angkorwat", "ayersrock", "barrierreef", "beachhut", "castle", "greatwall", "hawaii", "hermitage", "igauzufalls", "igloo", "london", "morocco", "petra", "port", "rockymnt", "serengeti", "shipwreck", "speakeasy", "statueofliberty", "tajmahal", "temple", "train"]; public static const PRACTICE_PLACES:Array = [1, 7, 10, 13, 24]; public static const DELUXE_PLACES:Array = ["airplane", "archtent", "bar", "bedroom", "boat", "cavepainting", "courtyard", "digs", "excavation", "garden", "goldmask", "market", "mine", "pyramid", "shipwreck", "stable", "temple", "tent", "throne", "tomb", "treasure", "underwater"]; public static const DELUXE_PRACTICE_PLACES:Array = [0, 7, 11, 12, 15]; public static const MAX_TIME_BONUS:int = 10000; public static const UNUSED_HINT:int = 2000; public function Game(_arg1:Main, _arg2:int){ var main = _arg1; var seed = _arg2; super(); this.main = main; this.seed = seed; main.log((("[seed " + seed) + "]")); rand = new Random(seed); var wasted:int = rand.nextInt(Game.PLACES.length); main.log(("place: " + getPlaceName())); countDownTicks = Game.COUNTDOWN_TICKS; c = new GameC(this); var removedObjects:Array = Main.gameDataXml.removed.split(":"); makeObjects(Main.gameDataXml.images, removedObjects); objs.sort(function (_arg1:Obj, _arg2:Obj):Number{ if (_arg1.c.z == _arg2.c.z){ return (0); }; return (((_arg1.c.z)<_arg2.c.z) ? -1 : 1); }); playData = new Stack(); spyGame = new SpyGame(this); } protected function makeObjects(_arg1:XMLList, _arg2:Array):void{ var _local5:String; var _local6:XMLList; objs = new Stack(); var _local3:XMLList = _arg1.elements("obj"); var _local4:int; while (_local4 < _local3.length()) { _local5 = _local3[_local4].@id; if (_arg2.indexOf(_local5) == -1){ _local6 = XMLList(_local3[_local4]); objs.push(new Obj(this, _local6)); }; _local4++; }; } public function tick(_arg1:int):void{ executePlayData(_arg1); update(_arg1); } protected function executePlayData(_arg1:int):void{ var _local2:Array; var _local3:int; var _local4:int; var _local5:String; var _local6:String; var _local7:int; var _local8:Boolean; var _local9:String; while (playData.size() > 0) { _local2 = playData.remove(0); _local3 = int(_local2[0]); _local4 = int(_local2[1]); _local5 = String(Game.INPUT_STRINGS[_local3]); _local6 = ((_local5 + " ") + _local4); _local7 = 2; while (_local7 < _local2.length) { var _temp1 = _local7; _local7 = (_local7 + 1); _local9 = _local2[_temp1]; _local6 = (_local6 + (" " + _local9)); }; main.log((("[" + _local6) + "]")); _local8 = false; if (state == Game.SPY_GAME){ _local8 = spyGame.executeInput(_local2, _local3, _local4, _arg1); } else { if (state == Game.PLACE_GAME){ _local8 = placeGame.executeInput(_local2, _local3, _local4, _arg1); } else { if (state == Game.SPOT_GAME){ _local8 = spotGame.executeInput(_local2, _local3, _local4, _arg1); } else { if ((((state == Game.PLACE_START_DIALOG)) || ((state == Game.SPOT_START_DIALOG)))){ switch (_local3){ case Game.THING_CLICKED: case Game.INPUT_HINT: case Game.INPUT_BG_CLICKED: _local8 = true; break; }; }; }; }; }; if (!_local8){ switch (_local3){ case Game.INPUT_EXIT: inputExit(_arg1); break; case Game.INPUT_START_NEXT: startNext(); break; case Game.LAST_TICK: break; case Game.CHEAT_TIMER_ALERT: break; case Game.FIRST_TICK: break; case Game.INPUT_TOGGLE_MUSIC: break; case Game.INPUT_TOGGLE_SOUND: break; default: main.log(("**** Error in game.tick(). Invalid inputType: " + _local3)); }; if (((!((_local4 == _arg1))) && (!((_local3 == Game.LAST_TICK))))){ main.log(((("**** Warning, bad sync! tickToExecute " + _local4) + " currentTick ") + _arg1)); }; }; }; } protected function update(_arg1:int):void{ countDown(_arg1); if (_arg1 == showDialogTick){ if (c.shortMode){ } else { startMiniGameTick = (_arg1 + Game.MINIGAME_DIALOG_TICKS); if (state == Game.PLACE_START_DIALOG){ c.showExtraGameDialog(); spyGame.cleanUp(); placeGame = new PlaceGame(this); miniGame = placeGame; } else { if (state == Game.SPOT_START_DIALOG){ c.showExtraGameDialog(); spyGame.cleanUp(); spotGame = new SpotGame(this); miniGame = spotGame; }; }; }; } else { if (_arg1 == showEndDialogTick){ main.showOutro(); }; }; if (_arg1 == startMiniGameTick){ startNext(); }; } protected function countDown(_arg1:int):void{ if ((((((state == Game.SPY_GAME)) || ((state == Game.PLACE_GAME)))) || ((state == Game.SPOT_GAME)))){ if (((!((state == Game.SPY_GAME))) || ((_arg1 >= (2.75 * Game.TICKS_PER_SECOND))))){ countDownTicks--; }; }; if (state != Game.GAME_OVER){ if (countDownTicks <= 0){ gameEnd(_arg1, Game.TIME_RAN_OUT); }; if (countDownTicks == (Game.TICKS_PER_SECOND * 6)){ c.timeWarning(true); }; }; } public function startNext():void{ if (state == Game.PLACE_START_DIALOG){ c.startNext(); state = Game.PLACE_GAME; startMiniGameTick = 0; } else { if (state == Game.SPOT_START_DIALOG){ c.startNext(); state = Game.SPOT_GAME; startMiniGameTick = 0; spotGame.c.init(); }; }; } public function relaxWrongObj(_arg1:int):void{ } public function gameEnd(_arg1:int, _arg2:int):void{ var _local6:Number; this.endReason = _arg2; c.deActivate(); var _local3:String = String(Game.END_REASONS[_arg2]); main.log(("gameEnd, endReason: " + _local3)); state = Game.GAME_OVER; var _local4 = 120; if ((((_arg2 == Game.USER_CHOSE_EXIT)) || ((_arg2 == Game.TIME_RAN_OUT)))){ _local4 = 5; }; showEndDialogTick = (main.gameTimer.currentTick + _local4); if (_arg2 == Game.COMPLETED){ hintScore = (Game.UNUSED_HINT * hintsLeft); _local6 = (Number(countDownTicks) / Game.COUNTDOWN_TICKS); timeBonus = Math.floor((Game.MAX_TIME_BONUS * _local6)); }; totalScore = (((spyGame.score + penalties) + hintScore) + timeBonus); main.log(("SpyGame score " + spyGame.score)); if (miniGame != null){ if ((miniGame is PlaceGame)){ totalScore = (totalScore + placeGame.score); main.log(("PlaceGame score " + placeGame.score)); } else { totalScore = (totalScore + spotGame.score); main.log(("spotGame score " + spotGame.score)); }; }; main.log(("hintScore " + hintScore)); main.log(("timeBonus " + timeBonus)); main.log(("penalties " + penalties)); main.log(("totalScore " + totalScore)); var _local5:int; if ((miniGame is PlaceGame)){ _local5 = placeGame.score; } else { if ((miniGame is SpotGame)){ _local5 = spotGame.score; }; }; main.addPlayData([Game.SCORE, spyGame.score, _local5, hintScore, timeBonus, penalties, totalScore, countDownTicks]); main.addPlayData([Game.LAST_TICK, (main.soundManager.soundOn) ? 1 : 0, (main.soundManager.musicOn) ? 1 : 0]); main.gameEnd(totalScore, _arg2); } protected function inputExit(_arg1:int):void{ gameEnd(_arg1, Game.USER_CHOSE_EXIT); } public function start():void{ state = Game.SPY_GAME; c.start(); } public function addPlayData(_arg1:Array):void{ playData.push(_arg1); } public function getPlaceName():String{ return (Main.gameDataXml.@placename); } public function spyGameEnded(_arg1:MouseEvent=null):void{ main.soundManager.startLevelClearSound(); var _local2:int = rand.nextInt(2); if (_local2 == 0){ state = Game.PLACE_START_DIALOG; main.log("mini game: place"); } else { state = Game.SPOT_START_DIALOG; main.log("mini game: spot"); }; var _local3 = 120; if (_arg1 != null){ _local3 = 5; }; showDialogTick = (main.gameTimer.currentTick + _local3); } public function getObj(_arg1:int):Obj{ var _local3:Obj; var _local2:int; while (_local2 < objs.size()) { _local3 = Obj(objs.g(_local2)); if (_local3.nr == _arg1){ return (_local3); }; _local2++; }; return (null); } public function getCurrentScore():int{ var _local1:int = getScoreBeforePenalties(); _local1 = (_local1 + penalties); if (_local1 < 0){ _local1 = 0; }; return (_local1); } public function getScoreBeforePenalties():int{ var _local1:int = spyGame.score; if ((((state == Game.PLACE_GAME)) || ((((state == Game.GAME_OVER)) && ((miniGame is PlaceGame)))))){ _local1 = (_local1 + placeGame.score); } else { if ((((state == Game.SPOT_GAME)) || ((((state == Game.GAME_OVER)) && ((miniGame is SpotGame)))))){ _local1 = (_local1 + spotGame.score); }; }; return (_local1); } public function subtractPenalty(_arg1):int{ var _local2:int = getCurrentScore(); penalties = (penalties + _arg1); var _local3:int = (getCurrentScore() - _local2); var _local4:int = getScoreBeforePenalties(); if ((_local4 + penalties) < 0){ penalties = -(_local4); }; return (_local3); } public function destroy():void{ c.deActivate(); if (placeGame != null){ placeGame.c.cleanUp(); }; if (spotGame != null){ spotGame.c.cleanUp(); }; } } }//package amazingadventures
Section 28
//Main (amazingadventures.Main) package amazingadventures { import flash.events.*; import util.*; import flash.display.*; import amazingadventures.client.*; import flash.net.*; import flash.external.*; public class Main extends Sprite { public var game:Game;// = null public var gameTimer:GameTimer;// = null public var gameLog:String;// = "" public var renderer:Renderer;// = null public var communicator:Communicator;// = null public var intro:Intro;// = null public var outro:Outro;// = null public var middleGameDialog;// = null public var soundManager:SoundManager;// = null public static const DEV_MODE:int = 0; public static const MONEY_GAME:int = 1; public static const GAME_TYPE:int = 1; public static var gameDataXml:XML = null; public static var main:Main = null; public static var renderer:Renderer = null; public function Main(){ Main.main = this; renderer = new Renderer(); Main.renderer = renderer; communicator = new Communicator(); soundManager = new SoundManager(); intro = new Intro(this); addChild(intro); gameTimer = new GameTimer(Game.TICKS_PER_SECOND, null, renderer); addEventListener("enterFrame", gameTimer.advanceTime); if ((Main.GAME_TYPE == Main.DEV_MODE)){ fakeGameData(); } else { getGameData(); }; } protected function getGameData():void{ var _local1:Object = ExternalInterface.call("getGameData"); if (((!((_local1 == null))) && (_local1.success))){ Main.gameDataXml = new XML(_local1.message); gameDataLoaded(); } else { log("Error: Could not load game Data!"); }; } protected function fakeGameData():void{ var myLoader:URLLoader; var xmlLoaded:Function; var loadError:Function; xmlLoaded = function (_arg1:Event):void{ Main.gameDataXml = new XML(myLoader.data); gameDataLoaded(); }; loadError = function (_arg1:Event):void{ trace(("xml load error " + _arg1)); }; myLoader = new URLLoader(); myLoader.addEventListener(Event.COMPLETE, xmlLoaded); myLoader.addEventListener(IOErrorEvent.IO_ERROR, loadError); myLoader.load(new URLRequest("amazingadventures/DevModeGameDataScrapbook.xml")); } public function gameDataLoaded():void{ if (parseInt(Main.gameDataXml.@sound) == 0){ soundManager.toggleSound(); }; if (parseInt(Main.gameDataXml.@music) == 0){ soundManager.toggleMusic(); }; soundManager.startIntroSound(); intro.gameDataReady(); Image.LoadSwf(this, Main.gameDataXml.@graphicspath); } public function prepareRelaxGames():void{ } public function middleGameDialogStarted():void{ game.destroy(); removeChild(game.c); game = null; } public function graphicsLoaded():void{ var _local1:int = Main.gameDataXml.@seed; game = new Game(this, _local1); intro.init(); } public function startGame(_arg1:Event=null):void{ stage.frameRate = 120; game.start(); if ((Main.GAME_TYPE == Main.MONEY_GAME)){ communicator.sendFsCommand("gameStart", ""); }; removeEventListener("enterFrame", gameTimer.advanceTime); gameTimer = new GameTimer(Game.TICKS_PER_SECOND, game, renderer); addEventListener("enterFrame", gameTimer.advanceTime); addPlayData([Game.FIRST_TICK]); } public function addPlayData(_arg1:Array):void{ var _local2:int = (gameTimer.currentTick + 1); _arg1.splice(1, 0, _local2); game.addPlayData(_arg1); if ((Main.GAME_TYPE == Main.MONEY_GAME)){ communicator.sendPlayData(_arg1); }; } public function showMiddleGameDialog():void{ middleGameDialog = new MiddleGameDialog(-1, true, this); addChild(middleGameDialog); } public function showOutro():void{ outro = new Outro(game); addChild(outro); renderer.start(outro); } public function gameEnd(_arg1:int, _arg2:int):void{ if ((Main.GAME_TYPE == Main.MONEY_GAME)){ communicator.sendFsCommand("gameEnd", ("" + _arg1)); }; } public function gameQuit(_arg1:Event=null):void{ if ((Main.GAME_TYPE == Main.MONEY_GAME)){ communicator.sendFsCommand("gameQuit", ""); }; } public function log(_arg1:String):void{ gameLog = (gameLog + (_arg1 + "\n")); } public function loadFail():void{ var _local1:int; gameEnd(_local1, Game.LOAD_SWF_FAIL); } } }//package amazingadventures
Section 29
//Obj (amazingadventures.Obj) package amazingadventures { import amazingadventures.client.*; public class Obj { public var id:String;// = "" public var substitute:int;// = 0 public var nr:int;// = -1 public var spot:int;// = -1 public var place:int;// = -1 public var found:Boolean;// = false public var game:Game;// = null public var c:ObjC;// = null public static const NOT_SET:int = -1; public static const LEFT:int = 0; public static const RIGHT:int = 1; public function Obj(_arg1:Game, _arg2:XMLList){ this.game = _arg1; id = ("obj" + _arg2.@id); nr = parseInt(_arg2.@id); var _local3:int = _arg2.elements("pos").length(); substitute = _arg1.rand.nextInt(_local3); c = new ObjC(this, _arg2); if (mostlyVisible(c.y, c.height, 10, 600)){ if (mostlyVisible(c.x, c.width, 10, 364)){ spot = Obj.LEFT; place = Obj.LEFT; } else { if (mostlyVisible(c.x, c.width, 386, 745)){ spot = Obj.RIGHT; place = Obj.RIGHT; }; }; }; var _local4:Number = (c.origWidth / c.origHeight); var _local5:Number = Math.max(c.origWidth, c.origHeight); if ((((((_local5 > 128)) && ((((_local4 < 0.33)) || ((_local4 > 3)))))) || ((_local5 > 196)))){ place = Obj.NOT_SET; }; } private function mostlyVisible(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ var _local5:Number = Math.max((_arg3 - _arg1), 0); var _local6:Number = Math.max(((_arg1 + _arg2) - _arg4), 0); return ((((_local5 + _local6) / _arg2) < 0.3)); } public function toString():String{ return ((((((((((((((("[" + id) + " ") + nr) + " s:") + spot) + " p:") + place) + " ") + c.image) + " ") + c.x) + " ") + c.y) + "]")); } } }//package amazingadventures
Section 30
//PlaceGame (amazingadventures.PlaceGame) package amazingadventures { import util.*; import amazingadventures.client.*; public class PlaceGame { public var game:Game;// = null public var c:PlaceGameC;// = null public var score:int;// = 0 public var objs:Stack;// = null public var excludedObjs:Stack;// = null public var leftObjs:Stack;// = null public var rightObjs:Stack;// = null public var lastHitTick:int;// = -1 public var sideOfScene:int;// = -1 public var draggedObj:Obj;// = null public static const OBJ_POINTS:int = 1000; public static const WRONG_OBJ:int = -200; public static const NO_THINGS_TO_PLACE:int = 10; public function PlaceGame(_arg1:Game){ var _local5:int; var _local6:Boolean; super(); this.game = _arg1; sideOfScene = _arg1.rand.nextInt(2); _arg1.main.log(("sideOfScene " + sideOfScene)); var _local2:Obj; objs = new Stack(); var _local3:int; while (_local3 < _arg1.objs.size()) { _local2 = Obj(_arg1.objs.g(_local3)); if (_local2.place == sideOfScene){ objs.push(_local2); }; _local3++; }; excludedObjs = new Stack(); leftObjs = new Stack(); rightObjs = new Stack(); var _local4:int; while (_local4 < PlaceGame.NO_THINGS_TO_PLACE) { _local5 = 0; do { _local5 = _arg1.rand.nextInt(objs.size()); _local2 = Obj(objs.g(_local5)); } while (((!((leftObjs.indexOf(_local2) == -1))) || (!((rightObjs.indexOf(_local2) == -1))))); _local6 = (_arg1.rand.nextInt(2) == 1); excludedObjs.push(_local2); if (_local6){ rightObjs.push(_local2); _arg1.main.log(("right " + _local2.nr)); } else { leftObjs.push(_local2); _arg1.main.log(("left " + _local2.nr)); }; _local4++; }; c = new PlaceGameC(this); } public function executeInput(_arg1:Array, _arg2:int, _arg3:int, _arg4:int):Boolean{ var _local5:Boolean; switch (_arg2){ case Game.INPUT_IMAGE_DRAG: startImageDrag(String(_arg1[2])); break; case Game.INPUT_IMAGE_DROP: imageDropped(Boolean(_arg1[2]), _arg4); break; case Game.INPUT_PUT_BACK: putBack(_arg4); break; case Game.INPUT_BG_CLICKED: break; case Game.INPUT_HINT: giveHint(); break; default: _local5 = false; }; return (_local5); } public function startImageDrag(_arg1:String):void{ var _local2:int = parseInt(_arg1.substr(3)); var _local3:Obj = game.getObj(_local2); if (excludedObjs.indexOf(_local3) != -1){ draggedObj = _local3; c.startImageDrag(_arg1); }; } public function imageDropped(_arg1:Boolean, _arg2:int):void{ var _local3:int; var _local4:int; if (_arg1){ score = (score + PlaceGame.OBJ_POINTS); game.main.log("success"); _local3 = excludedObjs.indexOf(draggedObj); excludedObjs.remove(_local3); _local3 = leftObjs.indexOf(draggedObj); if (_local3 != -1){ leftObjs.remove(_local3); }; _local3 = rightObjs.indexOf(draggedObj); if (_local3 != -1){ rightObjs.remove(_local3); }; game.spyGame.logScore(); logScore(); lastHitTick = _arg2; if (excludedObjs.size() == 0){ lastHitTick = -1; game.gameEnd(game.main.gameTimer.currentTick, Game.COMPLETED); game.main.soundManager.startLevelClearSound(); }; c.animateSuccess(PlaceGame.OBJ_POINTS); } else { game.main.log("fail"); _local4 = game.subtractPenalty(SpotGame.WRONG_OBJ); game.spyGame.logScore(); logScore(); c.animateFailure(game.main.gameTimer.currentTick, _local4); }; draggedObj = null; } public function putBack(_arg1:int):void{ c.animatePutBack(_arg1); draggedObj = null; } public function giveHint():void{ if (game.hintsLeft > 0){ game.hintsLeft--; c.giveHint(); }; } public function logScore():void{ game.main.log(("place game score: " + score)); } } }//package amazingadventures
Section 31
//SpotGame (amazingadventures.SpotGame) package amazingadventures { import util.*; import amazingadventures.client.*; public class SpotGame { public var game:Game;// = null public var c:SpotGameC;// = null public var score:int;// = 0 public var lastHitTick:int;// = -1 public var objs:Stack;// = null public var excludedObjs:Stack;// = null public var leftExcludedObjs:Stack;// = null public var rightExcludedObjs:Stack;// = null public var sideOfScene:int;// = -1 public static const OBJ_POINTS:int = 1000; public static const WRONG_OBJ:int = -200; public static const NO_THINGS_TO_FIND:int = 10; public function SpotGame(_arg1:Game){ var _local5:int; var _local6:Boolean; super(); this.game = _arg1; sideOfScene = _arg1.rand.nextInt(2); _arg1.main.log(("sideOfScene " + sideOfScene)); var _local2:Obj; objs = new Stack(); var _local3:int; while (_local3 < _arg1.objs.size()) { _local2 = Obj(_arg1.objs.g(_local3)); if (_local2.spot == sideOfScene){ objs.push(_local2); }; _local3++; }; excludedObjs = new Stack(); leftExcludedObjs = new Stack(); rightExcludedObjs = new Stack(); var _local4:int; while (_local4 < SpotGame.NO_THINGS_TO_FIND) { _local5 = 0; do { _local5 = _arg1.rand.nextInt(objs.size()); _local2 = Obj(objs.g(_local5)); } while (((!((leftExcludedObjs.indexOf(_local2) == -1))) || (!((rightExcludedObjs.indexOf(_local2) == -1))))); _local6 = (_arg1.rand.nextInt(2) == 1); excludedObjs.push(_local2); if (_local6){ rightExcludedObjs.push(_local2); _arg1.main.log(("right missing " + _local2.nr)); } else { leftExcludedObjs.push(_local2); _arg1.main.log(("left missing " + _local2.nr)); }; _local4++; }; c = new SpotGameC(this); } public function executeInput(_arg1:Array, _arg2:int, _arg3:int, _arg4:int):Boolean{ var _local5:Boolean; switch (_arg2){ case Game.INPUT_SPOT_CLICK: spotClick(String(_arg1[2]), int(_arg1[3]), int(_arg1[4]), _arg4); break; case Game.INPUT_BG_CLICKED: break; case Game.INPUT_HINT: giveHint(); break; default: _local5 = false; }; return (_local5); } public function spotClick(_arg1:String, _arg2:int, _arg3:int, _arg4:int):void{ var _local6:Obj; var _local7:int; var _local9:int; var _local10:int; var _local5:Boolean; var _local8 = -1; if (_arg1 != "background"){ _local9 = 0; while (_local9 < excludedObjs.size()) { _local6 = Obj(excludedObjs.g(_local9)); if (_arg1 == _local6.id){ _local5 = true; _local7 = excludedObjs.indexOf(_local6); excludedObjs.remove(_local7); _local7 = leftExcludedObjs.indexOf(_local6); if (_local7 != -1){ _local8 = 1; leftExcludedObjs.remove(_local7); }; _local7 = rightExcludedObjs.indexOf(_local6); if (_local7 != -1){ _local8 = 0; rightExcludedObjs.remove(_local7); }; lastHitTick = _arg4; break; }; _local9++; }; }; if (_local5){ game.main.log("success"); score = (score + SpotGame.OBJ_POINTS); game.spyGame.logScore(); logScore(); c.animateSuccess(SpotGame.OBJ_POINTS, _local6, _local8, _arg4); if (excludedObjs.size() == 0){ lastHitTick = -1; game.gameEnd(game.main.gameTimer.currentTick, Game.COMPLETED); game.main.soundManager.startLevelClearSound(); }; } else { game.main.log("fail"); _local10 = game.subtractPenalty(SpotGame.WRONG_OBJ); game.spyGame.logScore(); logScore(); c.animateFailure(_arg2, _arg3, _local10); }; } public function giveHint():void{ if (game.hintsLeft > 0){ game.hintsLeft--; c.giveHint(); }; } public function logScore():void{ game.main.log(("spot game score: " + score)); } } }//package amazingadventures
Section 32
//SpyGame (amazingadventures.SpyGame) package amazingadventures { import util.*; import amazingadventures.client.*; public class SpyGame { public var thingsToFind:Stack;// = null public var foundThings:Stack;// = null public var game:Game;// = null public var score:int;// = 0 public var lastHitTick:int;// = -1 public var c:SpyGameC;// = null public var completed:Boolean;// = false public static const OBJ_POINTS:int = 1000; public static const WRONG_OBJ:int = -200; public function SpyGame(_arg1:Game){ var _local3:int; var _local4:Obj; super(); this.game = _arg1; thingsToFind = new Stack(); foundThings = new Stack(); _arg1.main.log("thingsToFind:"); var _local2:int; while (_local2 < Game.NO_THINGS_TO_FIND) { _local3 = 0; do { _local3 = _arg1.rand.nextInt(_arg1.objs.size()); _local4 = Obj(_arg1.objs.g(_local3)); } while (thingsToFind.indexOf(_local4) != -1); thingsToFind.push(_local4); _arg1.main.log(("obj " + _local4.nr)); _local2++; }; c = new SpyGameC(this); } public function executeInput(_arg1:Array, _arg2:int, _arg3:int, _arg4:int):Boolean{ var _local5:Boolean; switch (_arg2){ case Game.THING_CLICKED: thingClicked(parseInt(_arg1[2]), int(_arg1[3]), int(_arg1[4]), _arg4); break; case Game.INPUT_BG_CLICKED: bgClicked(int(_arg1[2]), int(_arg1[3])); break; case Game.INPUT_HINT: giveHint(); break; default: _local5 = false; }; return (_local5); } public function thingClicked(_arg1:int, _arg2:int, _arg3:int, _arg4:int):void{ var _local7:Obj; var _local8:int; var _local5:Boolean; var _local6:int; while (_local6 < thingsToFind.size()) { _local7 = Obj(thingsToFind.g(_local6)); if ((((foundThings.indexOf(_local7) == -1)) && ((_arg1 == _local7.nr)))){ game.main.log(("found " + _local7.id)); _local5 = true; foundThings.push(_local7); score = (score + SpyGame.OBJ_POINTS); logScore(); lastHitTick = _arg4; _local7.found = true; c.thingFound(_local7, _local6, SpyGame.OBJ_POINTS); c.checkForShortGameEnd(); if (foundThings.size() >= Game.NO_THINGS_TO_FIND){ completed = true; lastHitTick = -1; game.spyGameEnded(); c.deActivate(); }; break; }; _local6++; }; if (!_local5){ game.main.log(("wrong obj " + _arg1)); _local8 = game.subtractPenalty(SpyGame.WRONG_OBJ); logScore(); c.wrongThing(_arg2, _arg3, _local8); }; } public function bgClicked(_arg1:int, _arg2:int):void{ game.main.log("wrong obj background"); var _local3:int = game.subtractPenalty(SpyGame.WRONG_OBJ); logScore(); c.wrongThing(_arg1, _arg2, _local3); } public function giveHint():void{ if (game.hintsLeft > 0){ game.hintsLeft--; c.giveHint(); }; } public function cleanUp():void{ c.removeGraphics(); thingsToFind = null; foundThings = null; } public function logScore():void{ game.main.log(("spy game score: " + score)); } } }//package amazingadventures
Section 33
//clear_pinkstar_intro_22 (scrapbook_detective_fla.clear_pinkstar_intro_22) package scrapbook_detective_fla { import flash.display.*; public dynamic class clear_pinkstar_intro_22 extends MovieClip { public function clear_pinkstar_intro_22(){ addFrameScript(31, frame32); } function frame32(){ stop(); } } }//package scrapbook_detective_fla
Section 34
//ChainResize (util.ChainResize) package util { import flash.display.*; public class ChainResize { var displayObject:DisplayObject; var points:Array; var from:ResizePoint; var to:ResizePoint; public function ChainResize(_arg1:DisplayObject){ this.displayObject = _arg1; points = new Array(); } public function addResize(_arg1:int, _arg2:Number, _arg3:Number):void{ points.push(new ResizePoint(_arg1, _arg2, _arg3)); } public function update(_arg1:int, _arg2:Number):int{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; if (from == null){ from = shift(); to = shift(); }; if (_arg1 >= to.tick){ if (points.length > 0){ from = to; to = shift(); } else { displayObject.scaleX = to.scaleX; displayObject.scaleY = to.scaleY; return (Renderer.STOP); }; }; if (((!((from == null))) && (!((to == null))))){ _local3 = (to.tick - from.tick); _local4 = (to.scaleX - from.scaleX); _local5 = (to.scaleY - from.scaleY); _local6 = (((_arg1 + _arg2) - from.tick) / _local3); displayObject.scaleX = (from.scaleX + (_local4 * _local6)); displayObject.scaleY = (from.scaleY + (_local5 * _local6)); }; return (Renderer.CONTINUE); } public function shift():ResizePoint{ return (ResizePoint(points.shift())); } } }//package util
Section 35
//Communicator (util.Communicator) package util { import flash.external.*; import flash.system.*; public class Communicator { public function sendPlayData(_arg1:Array):void{ var _local2:String = ((String(_arg1[0]) + ",") + String(_arg1[1])); var _local3:int = _arg1.length; var _local4 = 2; while (_local4 < _local3) { _local2 = (_local2 + (" " + String(_arg1[_local4]))); _local4++; }; _local2 = (_local2 + "=0"); ExternalInterface.call("playData", _local2); } public function sendFsCommand(_arg1:String, _arg2:String):void{ fscommand(_arg1, _arg2); } } }//package util
Section 36
//Fader (util.Fader) package util { import flash.display.*; public class Fader { public var displayObject:DisplayObject; public var startTick:int;// = -1 public var endTick:int;// = -1 public var totalTicks:int;// = -1 public var startAlpha:Number;// = 0 public var endAlpha:Number;// = 0 public var alphaChange:Number;// = 0 public function Fader(_arg1:DisplayObject, _arg2:int, _arg3:int, _arg4:Number, _arg5:Number){ this.displayObject = _arg1; this.startTick = _arg2; this.endTick = _arg3; this.totalTicks = (_arg3 - _arg2); this.startAlpha = _arg4; this.endAlpha = _arg5; this.alphaChange = (_arg5 - _arg4); } public function update(_arg1:int, _arg2:Number):Boolean{ var _local4:Number; var _local3:Boolean; if (_arg1 >= startTick){ if (_arg1 >= endTick){ displayObject.alpha = endAlpha; _local3 = true; } else { _local4 = (((_arg1 + _arg2) - startTick) / totalTicks); displayObject.alpha = (startAlpha + (alphaChange * _local4)); }; }; return (_local3); } } }//package util
Section 37
//FramePlayer (util.FramePlayer) package util { import flash.display.*; public class FramePlayer { public var movieClip:MovieClip; public var startTick:int; public var ticks:int; public var endTick:int; public var remainingRepeats:int; public var forward:Boolean; public function FramePlayer(_arg1:MovieClip, _arg2:int, _arg3:int, _arg4:int, _arg5:Boolean=true){ this.movieClip = _arg1; this.startTick = _arg2; this.ticks = _arg3; this.endTick = (_arg2 + _arg3); this.forward = _arg5; remainingRepeats = _arg4; } public function update(_arg1:int, _arg2:Number):int{ var _local3:int; var _local4:Number; var _local5:int; if (_arg1 >= startTick){ if (_arg1 >= endTick){ if (remainingRepeats-- > 0){ endTick = (_arg1 + ticks); startTick = _arg1; update(_arg1, _arg2); } else { movieClip.gotoAndStop(getFrame(movieClip.totalFrames)); return (Renderer.STOP); }; } else { _local3 = (_arg1 - startTick); _local4 = (_local3 / ticks); _local5 = (1 + (_local4 * movieClip.totalFrames)); movieClip.gotoAndStop(getFrame(_local5)); }; }; return (Renderer.CONTINUE); } protected function getFrame(_arg1:int):int{ if (forward){ return (_arg1); }; return (((movieClip.totalFrames + 1) - _arg1)); } } }//package util
Section 38
//Integer64 (util.Integer64) package util { import util.*; class Integer64 { private var p:Array; private var r:Array; private var s:Array; function Integer64(_arg1){ r = [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]; p = [0, 0, 0, 0, 0]; s = [0, 0, 0]; if (_arg1){ merge(_arg1); }; } public function init(_arg1:Integer64):void{ var _local2:* = 0; while (_local2 < p.length) { p[_local2] = _arg1.p[_local2]; _local2++; }; } public function init32(_arg1:Number):void{ p[0] = (_arg1 & 32767); _arg1 = (_arg1 >>> 15); p[1] = (_arg1 & 32767); _arg1 = (_arg1 >>> 15); p[2] = (_arg1 & 3); p[3] = 0; p[4] = 0; } public function get lsb():Number{ return (((p[0] | (p[1] << 15)) | ((p[2] & 3) << 30))); } public function get msb():Number{ return (((((p[2] >> 2) | ((p[3] << 15) >> 2)) | ((p[4] << (15 * 2)) >> 2)) & 2147483647)); } public function binaryShiftLeft(_arg1:Number):void{ var _local2:* = 0; while (_local2 < _arg1) { shl(); _local2++; }; } public function binaryShiftRight(_arg1:Number):void{ var _local5:*; var _local6:*; var _local2:* = ((_arg1 / 15) >> 0); var _local3:* = (_arg1 - (_local2 * 15)); var _local4:* = (p.length - 1); while (_local4 > 0) { _local5 = 0; while (_local5 < _local2) { p[_local5] = p[(_local5 + 1)]; _local5++; }; var _temp1 = _local4; _local4 = (_local4 - 1); var _local7 = _temp1; p[_local7] = 0; }; if (_local3 > 0){ _local6 = 0; while (_local6 < _local3) { shr(); _local6++; }; }; } public function binaryNot(_arg1:Integer64):void{ p[0] = (p[0] ^ _arg1.p[0]); p[1] = (p[1] ^ _arg1.p[1]); p[2] = (p[2] ^ _arg1.p[2]); p[3] = (p[3] ^ _arg1.p[3]); p[4] = (p[4] ^ _arg1.p[4]); } public function add64(_arg1:Integer64):void{ var _local2:* = 0; var _local3:* = 1; var _local4:* = 0; while ((((_local3 < p.length)) && (!((_arg1.p[_local4] == 0))))) { _local3++; }; _local4 = 0; while (_local4 < _local3) { _local2 = (_local2 + (p[_local4] + _arg1.p[_local4])); p[_local4] = (_local2 & 32767); _local2 = (_local2 >> 15); _local4++; }; } public function add32(_arg1:Number):void{ var _local2:* = 0; var _local3:* = (_arg1 & 32767); _arg1 = (_arg1 >> 15); var _local4:* = (_arg1 & 32767); _arg1 = (_arg1 >> 15); var _local5:* = (_arg1 & 3); _local2 = (_local2 + (p[0] + _local3)); p[0] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (p[1] + _local4)); p[1] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (p[2] + _local5)); p[2] = (_local2 & 32767); } public function mulu32(_arg1:Number):void{ var _local4:*; var _local2:* = 0; s[0] = (_arg1 & 32767); _arg1 = (_arg1 >>> 15); s[1] = (_arg1 & 32767); _arg1 = (_arg1 >>> 15); s[2] = (_arg1 & 3); var _local3:* = 0; while (_local3 < 3) { _local4 = s[_local3]; _local2 = (_local4 * p[0]); r[_local3][0] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[1])); r[_local3][1] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[2])); r[_local3][2] = (_local2 & 3); _local3++; }; _local2 = r[0][0]; p[0] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (r[0][1] + r[1][0])); p[1] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + ((r[0][2] + r[1][1]) + r[2][0])); p[2] = (_local2 & 3); p[3] = 0; p[4] = 0; } public function mul64(_arg1:Integer64):void{ var _local4:*; var _local2:* = 0; var _local3:* = 0; while (_local3 < 5) { _local4 = _arg1.p[_local3]; _local2 = (_local4 * p[0]); r[_local3][0] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[1])); r[_local3][1] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[2])); r[_local3][2] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[3])); r[_local3][3] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (_local4 * p[4])); r[_local3][4] = (_local2 & 32767); _local3++; }; _local2 = r[0][0]; p[0] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (r[0][1] + r[1][0])); p[1] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + ((r[0][2] + r[1][1]) + r[2][0])); p[2] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + (((r[0][3] + r[1][2]) + r[2][1]) + r[3][0])); p[3] = (_local2 & 32767); _local2 = (_local2 >> 15); _local2 = (_local2 + ((((r[0][4] + r[1][3]) + r[2][2]) + r[3][1]) + r[4][0])); p[4] = (_local2 & 7); } public function mul32(_arg1:Number):void{ mul64(new Integer64(_arg1)); } private function merge(_arg1:Number):Number{ var _local2:* = 0; while (_local2 < 3) { p[_local2] = (p[_local2] + (_arg1 & 32767)); _arg1 = (_arg1 >>> 15); _local2++; }; return (_arg1); } private function shl():void{ var _local1:* = 0; var _local2:* = 0; var _local3:* = 0; var _local4:* = p.length; while (_local3 < _local4) { _local1 = ((p[_local3] & 0x4000) >> 14); p[_local3] = (p[_local3] << 1); p[_local3] = ((p[_local3] | _local2) & 32767); _local3++; _local2 = _local1; }; } private function shr():void{ var _local1:* = 0; var _local2:* = 0; var _local3:* = (p.length - 1); while (_local3 >= 0) { _local1 = ((p[_local3] & 1) << 14); p[_local3] = (p[_local3] >> 1); p[_local3] = ((p[_local3] | _local2) & 32767); _local3--; _local2 = _local1; }; } } }//package util
Section 39
//Movement (util.Movement) package util { import flash.display.*; public class Movement { public var displayObject:DisplayObject; public var startTick:int; public var endTick:int; public var totalTicks:int; public var startX:Number; public var startY:Number; public var endX:Number; public var endY:Number; public var distanceX:Number; public var distanceY:Number; public function Movement(_arg1:DisplayObject, _arg2:int, _arg3:int, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number){ this.displayObject = _arg1; this.startTick = _arg2; this.endTick = _arg3; this.totalTicks = (_arg3 - _arg2); this.startX = _arg4; this.startY = _arg5; this.endX = _arg6; this.endY = _arg7; this.distanceX = (_arg6 - _arg4); this.distanceY = (_arg7 - _arg5); } public function update(_arg1:int, _arg2:Number):Boolean{ var _local4:Number; var _local3:Boolean; if (_arg1 >= startTick){ if (_arg1 >= endTick){ displayObject.x = endX; displayObject.y = endY; _local3 = true; } else { _local4 = (((_arg1 + _arg2) - startTick) / totalTicks); displayObject.x = (startX + (distanceX * _local4)); displayObject.y = (startY + (distanceY * _local4)); }; }; return (_local3); } } }//package util
Section 40
//Random (util.Random) package util { import flash.utils.*; public class Random { private var mta:Array; private var lastSeed:Number; private var mti:Number; private static var N:Number = 624; private static var M:Number = 397; private static var MATRIX_A:Number = 2567483615; private static var UPPER_MASK:Number = 2147483648; private static var LOWER_MASK:Number = 2147483647; private static var mag01:Array = [0, 2567483615]; public function Random(_arg1:Number){ mta = new Array(N); mti = (N + 1); if (_arg1){ init_genrand(_arg1); }; } public function set seed(_arg1:Number){ init_genrand(_arg1); } public function get seed():Number{ return (lastSeed); } public function nextInt(_arg1:Number){ return (((genrand_int32() & 2147483647) % _arg1)); } public function nextFloat(){ return ((next(24) / (1 << 24))); } public function nextDouble(){ return ((next(24) / (1 << 24))); } public function next(_arg1:Number){ if (_arg1 < 32){ return ((genrand_int32() & ((1 << _arg1) - 1))); }; return (genrand_int32()); } private function init_genrand(_arg1:Number):void{ _arg1 = int(_arg1); var _local2:* = getTimer(); lastSeed = _arg1; mta[0] = _arg1; var _local3:* = _arg1; var _local4:* = new Integer64(null); var _local5:Number = N; mti = 1; while (mti < _local5) { _local4.init32(((_local3 >>> 30) ^ _local3)); _local4.mulu32(1812433253); _local3 = (mta[mti] = int((_local4.lsb + mti))); mti++; }; var _local6:* = getTimer(); } private function genrand_int32(){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:*; var _local10:*; var _local11:*; var _local1:Number = N; var _local2:Number = 0; if (mti >= _local1){ if (mti == (_local1 + 1)){ init_genrand(5489); }; _local3 = M; _local4 = UPPER_MASK; _local5 = LOWER_MASK; _local6 = mag01; _local7 = getTimer(); _local8 = 0; _local9 = (_local1 - _local3); _local10 = (_local3 - _local1); _local8 = 0; while (_local8 < _local9) { _local2 = ((mta[_local8] & _local4) | (mta[(_local8 + 1)] & _local5)); mta[_local8] = ((mta[(_local8 + _local3)] ^ (_local2 >>> 1)) ^ _local6[(_local2 & 1)]); _local8++; }; _local9 = (_local1 - 1); while (_local8 < _local9) { _local2 = ((mta[_local8] & _local4) | (mta[(_local8 + 1)] & _local5)); mta[_local8] = ((mta[(_local8 + _local10)] ^ (_local2 >>> 1)) ^ _local6[(_local2 & 1)]); _local8++; }; _local2 = ((mta[(_local1 - 1)] & _local4) | (mta[0] & _local5)); mta[(_local1 - 1)] = ((mta[(_local3 - 1)] ^ (_local2 >>> 1)) ^ _local6[(_local2 & 1)]); mti = 0; _local11 = getTimer(); }; _local2 = mta[mti++]; _local2 = (_local2 ^ (_local2 >>> 11)); _local2 = (_local2 ^ ((_local2 << 7) & 2636928640)); _local2 = (_local2 ^ ((_local2 << 15) & 4022730752)); _local2 = (_local2 ^ (_local2 >>> 18)); return (_local2); } } }//package util
Section 41
//ReLoader (util.ReLoader) package util { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; public class ReLoader { public var maxErrorCount:int;// = 3 public var loader:Loader;// = null public var path:String;// = null public var urlRequest:URLRequest;// = null public var listener:Object;// = null private var errorCount:int;// = 0 public function ReLoader(_arg1:Object, _arg2:String){ this.listener = _arg1; this.path = _arg2; urlRequest = new URLRequest(_arg2); } public function load():void{ doLoad(); } private function doLoad(_arg1:Event=null):void{ loader = new Loader(); loader.load(urlRequest); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); } private function completeHandler(_arg1:Event):void{ stopListening(); listener.loadSuccess(this); } private function errorHandler(_arg1:Event):void{ var _local2:Timer; stopListening(); errorCount++; if (errorCount < maxErrorCount){ _local2 = new Timer(100, 1); _local2.start(); _local2.addEventListener(TimerEvent.TIMER_COMPLETE, doLoad); } else { listener.loadFail(this); }; } private function stopListening():void{ loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); } } }//package util
Section 42
//Renderable (util.Renderable) package util { public interface Renderable { function render(_arg1:int, _arg2:Number):int; } }//package util
Section 43
//Renderer (util.Renderer) package util { import flash.display.*; public class Renderer { private var objectsToRender:Array; public static const CONTINUE:int = 0; public static const STOP:int = 1; public static const STOP_HIDE:int = 2; public static const STOP_REMOVE:int = 3; public function Renderer(){ objectsToRender = new Array(); } public function start(_arg1:Renderable):void{ var _local2:int = objectsToRender.indexOf(_arg1, 0); if (_local2 == -1){ objectsToRender.push(_arg1); }; } public function stop(_arg1:Renderable):void{ var _local2:int = objectsToRender.indexOf(_arg1, 0); if (_local2 != -1){ objectsToRender.splice(_local2, 1); }; } public function reset():void{ objectsToRender = new Array(); } public function update(_arg1:int, _arg2:Number):void{ var _local4:Renderable; var _local5:int; var _local3:int = (objectsToRender.length - 1); while (_local3 >= 0) { _local4 = Renderable(objectsToRender[_local3]); _local5 = _local4.render(_arg1, _arg2); if (_local5 != Renderer.CONTINUE){ stop(_local4); if (_local5 == Renderer.STOP_HIDE){ DisplayObject(_local4).visible = false; } else { if (_local5 == Renderer.STOP_REMOVE){ DisplayObject(_local4).parent.removeChild(DisplayObject(_local4)); }; }; }; _local3--; }; } } }//package util
Section 44
//ResizePoint (util.ResizePoint) package util { public class ResizePoint { public var tick:int; public var scaleX:Number; public var scaleY:Number; public function ResizePoint(_arg1:int, _arg2:Number, _arg3:Number){ this.tick = _arg1; this.scaleX = _arg2; this.scaleY = _arg3; } } }//package util
Section 45
//RetryLoader (util.RetryLoader) package util { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class RetryLoader { public var verbose:Boolean;// = false public var maxFails:int;// = 10 public var loader:Loader; public var progress:int; public var lastHttpStatus:int; public var lastError:String; public var failed:Boolean; private var failCount:int; private var url:String; private var retryTimer:Timer; public function RetryLoader(_arg1:String){ progress = 0; failed = false; failCount = 0; lastError = ""; this.url = _arg1; } public function load():void{ if (verbose){ trace(("Loading " + url)); }; var _local1:LoaderContext = new LoaderContext(); _local1.checkPolicyFile = true; _local1.applicationDomain = ApplicationDomain.currentDomain; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatus); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressEvent); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioError); loader.load(new URLRequest(url), _local1); } private function fail(_arg1:String):void{ if (loader == null){ return; }; loader = null; failCount++; if (verbose){ trace(((("fail #" + failCount) + ": ") + _arg1)); }; if (failCount >= maxFails){ failed = true; } else { lastError = _arg1; retryTimer = new Timer(1500, 1); retryTimer.addEventListener(TimerEvent.TIMER_COMPLETE, retry); retryTimer.start(); }; } public function ioError(_arg1:IOErrorEvent):void{ fail(_arg1.text); } public function retry(_arg1:TimerEvent):void{ if (verbose){ trace(("retry: " + _arg1)); }; retryTimer = null; load(); } public function complete(_arg1:Event):void{ if (int((lastHttpStatus / 100)) != 2){ fail(("Bad server reply: " + lastHttpStatus)); return; }; lastError = ("Loaded: " + loader.contentLoaderInfo.bytesTotal); if (verbose){ trace(("complete: " + _arg1)); }; progress = 100; } public function httpStatus(_arg1:HTTPStatusEvent):void{ lastHttpStatus = _arg1.status; if (_arg1.status == 0){ lastHttpStatus = 200; }; } public function progressEvent(_arg1:ProgressEvent):void{ progress = ((_arg1.bytesLoaded * 100) / _arg1.bytesTotal); if (progress > 99){ progress = 99; }; } } }//package util
Section 46
//SoundFader (util.SoundFader) package util { import flash.events.*; import flash.media.*; import flash.utils.*; public class SoundFader { public var soundChannel:SoundChannel; private var millisec:int; private var listener:Object; private var timer:Timer; private var fadeStep:Number;// = 0.03 private var miniStep:Number;// = 0.01 private var nrOfSteps:int; private var extraRepeats:int;// = 5 private var panning:Number; public function SoundFader(_arg1:SoundChannel, _arg2:int, _arg3:Object=null){ this.soundChannel = _arg1; this.millisec = _arg2; this.listener = _arg3; var _local4:Number = _arg1.soundTransform.volume; nrOfSteps = (_local4 / fadeStep); panning = _arg1.soundTransform.pan; var _local5:int = (_arg2 / nrOfSteps); timer = new Timer(_local5, (nrOfSteps + extraRepeats)); timer.addEventListener("timer", fade); timer.addEventListener("timerComplete", destroy); timer.start(); } public function fade(_arg1:TimerEvent):void{ var _local2:Number = soundChannel.soundTransform.volume; if (_local2 > fadeStep){ _local2 = (_local2 - fadeStep); } else { _local2 = (_local2 - miniStep); }; if (_local2 < 0){ _local2 = 0; }; soundChannel.soundTransform = new SoundTransform(_local2, panning); } public function destroy(_arg1:TimerEvent):void{ soundChannel.stop(); if (listener != null){ listener.soundFaderCompleted(this); }; } } }//package util
Section 47
//Stack (util.Stack) package util { public class Stack { protected var array:Array; public function Stack(){ array = new Array(); } public function g(_arg1:int){ if ((((_arg1 < 0)) || ((_arg1 >= array.length)))){ throw (new Error(((("index " + _arg1) + " out of range ") + array.length))); }; return (array[_arg1]); } public function s(_arg1:int, _arg2){ var _local3:*; if ((((_arg1 < 0)) || ((_arg1 >= array.length)))){ throw (new Error(((("index " + _arg1) + " out of range ") + array.length))); }; _local3 = array[_arg1]; array[_arg1] = _arg2; return (_local3); } public function push(_arg1){ array.push(_arg1); return (_arg1); } public function pop(){ return (array.pop()); } public function indexOf(_arg1, _arg2:int=0):int{ return (array.indexOf(_arg1, _arg2)); } public function lastIndexOf(_arg1, _arg2:int=2147483647):int{ return (array.lastIndexOf(_arg1, _arg2)); } public function add(_arg1:int, _arg2):void{ if ((((_arg1 < 0)) || ((_arg1 > array.length)))){ throw (new Error(((("index " + _arg1) + " out of range ") + array.length))); }; array.splice(_arg1, 0, _arg2); } public function remove(_arg1:int){ if ((((_arg1 < 0)) || ((_arg1 >= array.length)))){ throw (new Error(((("index " + _arg1) + " out of range ") + (array.length - 1)))); }; return (array.splice(_arg1, 1)[0]); } public function size():int{ return (array.length); } public function toString():String{ return (array.toString()); } public function getArrayCopy():Array{ var _local1:Array = new Array(); var _local2:int; while (_local2 < size()) { _local1[_local2] = g(_local2); _local2++; }; return (_local1); } public function sort(_arg1:Function):void{ array.sort(_arg1); } } }//package util
Section 48
//TimeDisplay (util.TimeDisplay) package util { import flash.text.*; public class TimeDisplay { protected var digitTextFields:Array; protected var countDownSeconds:int;// = -1 protected var ticksPerSecond:int; public function TimeDisplay(_arg1:Array, _arg2:int){ this.digitTextFields = _arg1; this.ticksPerSecond = _arg2; } public function update(_arg1:int):void{ var _local3:int; var _local4:int; var _local2:int = (_arg1 / ticksPerSecond); if (_local2 != countDownSeconds){ countDownSeconds = _local2; _local3 = (_local2 / 60); _local2 = (_local2 % 60); _local4 = (_local2 % 10); TextField(digitTextFields[0]).text = ("" + _local4); _local4 = (_local2 / 10); TextField(digitTextFields[1]).text = ("" + _local4); if (digitTextFields.length > 2){ _local4 = (_local3 % 10); TextField(digitTextFields[2]).text = ("" + _local4); }; if (digitTextFields.length > 3){ _local4 = (_local3 / 10); TextField(digitTextFields[3]).text = ("" + _local4); }; }; } } }//package util
Section 49
//ButtonClickSnd (ButtonClickSnd) package { import flash.media.*; public dynamic class ButtonClickSnd extends Sound { } }//package
Section 50
//ExitBtn (ExitBtn) package { import flash.display.*; public dynamic class ExitBtn extends MovieClip { } }//package
Section 51
//FoundSnd (FoundSnd) package { import flash.media.*; public dynamic class FoundSnd extends Sound { } }//package
Section 52
//HintBtn (HintBtn) package { import flash.display.*; public dynamic class HintBtn extends MovieClip { } }//package
Section 53
//HintScoreSnd (HintScoreSnd) package { import flash.media.*; public dynamic class HintScoreSnd extends Sound { } }//package
Section 54
//HintSnd (HintSnd) package { import flash.media.*; public dynamic class HintSnd extends Sound { } }//package
Section 55
//IntroSnd (IntroSnd) package { import flash.media.*; public dynamic class IntroSnd extends Sound { } }//package
Section 56
//LevelClearSnd (LevelClearSnd) package { import flash.media.*; public dynamic class LevelClearSnd extends Sound { } }//package
Section 57
//LoopSnd (LoopSnd) package { import flash.media.*; public dynamic class LoopSnd extends Sound { } }//package
Section 58
//MiddleBorder (MiddleBorder) package { import flash.display.*; public dynamic class MiddleBorder extends MovieClip { } }//package
Section 59
//MusicBtn (MusicBtn) package { import flash.display.*; public dynamic class MusicBtn extends MovieClip { } }//package
Section 60
//NewBar (NewBar) package { import flash.display.*; import amazingadventures.client.*; public dynamic class NewBar extends MovieClip { public var itemsLeftBox:MovieClip; public var hintBtn:HintBtn; public var soundBtn:SoundBtn; public var clock:Clock; public var musicBtn:MusicBtn; public var scoreMc:MovieClip; public var hintMc:MovieClip; public var newSlideBar:NewSlideBar; public var exitBtn:ExitBtn; } }//package
Section 61
//NewSlideBar (NewSlideBar) package { import flash.display.*; import flash.text.*; public dynamic class NewSlideBar extends MovieClip { public var levelNameTf:TextField; public var moveLong:MovieClip; public var moveShort:MovieClip; } }//package
Section 62
//OutroSnd (OutroSnd) package { import flash.media.*; public dynamic class OutroSnd extends Sound { } }//package
Section 63
//PenaltySnd (PenaltySnd) package { import flash.media.*; public dynamic class PenaltySnd extends Sound { } }//package
Section 64
//ScoreCountSnd (ScoreCountSnd) package { import flash.media.*; public dynamic class ScoreCountSnd extends Sound { } }//package
Section 65
//ShadowFlower (ShadowFlower) package { import flash.display.*; public dynamic class ShadowFlower extends MovieClip { } }//package
Section 66
//SoundBtn (SoundBtn) package { import flash.display.*; public dynamic class SoundBtn extends MovieClip { } }//package
Section 67
//TextItem (TextItem) package { import flash.display.*; import flash.text.*; public dynamic class TextItem extends MovieClip { public var line:MovieClip; public var textField:TextField; } }//package
Section 68
//TimeWarningSnd (TimeWarningSnd) package { import flash.media.*; public dynamic class TimeWarningSnd extends Sound { } }//package
Section 69
//TotalScoreSnd (TotalScoreSnd) package { import flash.media.*; public dynamic class TotalScoreSnd extends Sound { } }//package

Library Items

Symbol 1 Sound {TotalScoreSnd}
Symbol 2 Sound {TimeWarningSnd}
Symbol 3 Sound {PenaltySnd}
Symbol 4 Sound {HintScoreSnd}
Symbol 5 Sound {LevelClearSnd}
Symbol 6 Sound {HintSnd}
Symbol 7 Sound {FoundSnd}
Symbol 8 Sound {ScoreCountSnd}
Symbol 9 Sound {ButtonClickSnd}
Symbol 10 Sound {OutroSnd}
Symbol 11 Sound {LoopSnd}
Symbol 12 Sound {IntroSnd}
Symbol 13 FontUsed by:14
Symbol 14 EditableTextUses:13Used by:32
Symbol 15 BitmapUsed by:16
Symbol 16 GraphicUses:15Used by:31
Symbol 17 BitmapUsed by:18
Symbol 18 GraphicUses:17Used by:31
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:31
Symbol 21 BitmapUsed by:22
Symbol 22 GraphicUses:21Used by:31
Symbol 23 BitmapUsed by:24
Symbol 24 GraphicUses:23Used by:31
Symbol 25 BitmapUsed by:26
Symbol 26 GraphicUses:25Used by:31
Symbol 27 BitmapUsed by:28
Symbol 28 GraphicUses:27Used by:31
Symbol 29 BitmapUsed by:30
Symbol 30 GraphicUses:29Used by:31
Symbol 31 MovieClipUses:16 18 20 22 24 26 28 30Used by:32
Symbol 32 MovieClip {TextItem}Uses:14 31
Symbol 33 BitmapUsed by:34
Symbol 34 GraphicUses:33Used by:69
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:69
Symbol 37 BitmapUsed by:38
Symbol 38 GraphicUses:37Used by:69
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:39Used by:69
Symbol 41 BitmapUsed by:42
Symbol 42 GraphicUses:41Used by:69
Symbol 43 BitmapUsed by:44
Symbol 44 GraphicUses:43Used by:69
Symbol 45 BitmapUsed by:46
Symbol 46 GraphicUses:45Used by:69
Symbol 47 BitmapUsed by:48
Symbol 48 GraphicUses:47Used by:69
Symbol 49 BitmapUsed by:50
Symbol 50 GraphicUses:49Used by:69
Symbol 51 BitmapUsed by:52
Symbol 52 GraphicUses:51Used by:69
Symbol 53 BitmapUsed by:54
Symbol 54 GraphicUses:53Used by:69
Symbol 55 BitmapUsed by:56
Symbol 56 GraphicUses:55Used by:69
Symbol 57 BitmapUsed by:58
Symbol 58 GraphicUses:57Used by:69
Symbol 59 BitmapUsed by:60
Symbol 60 GraphicUses:59Used by:69
Symbol 61 BitmapUsed by:62
Symbol 62 GraphicUses:61Used by:69
Symbol 63 BitmapUsed by:64
Symbol 64 GraphicUses:63Used by:69
Symbol 65 BitmapUsed by:66
Symbol 66 GraphicUses:65Used by:69
Symbol 67 BitmapUsed by:68
Symbol 68 GraphicUses:67Used by:69
Symbol 69 MovieClip {amazingadventures.client.Target}Uses:34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68
Symbol 70 BitmapUsed by:71
Symbol 71 GraphicUses:70Used by:72
Symbol 72 MovieClip {ShadowFlower}Uses:71
Symbol 73 FontUsed by:74 100 107 108 147 172 174 175 176 177 179 183 188 191 202 209
Symbol 74 EditableTextUses:73Used by:75
Symbol 75 MovieClip {amazingadventures.client.ScorePop}Uses:74
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:139 205 361
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:80
Symbol 80 MovieClipUses:79Used by:139 361
Symbol 81 BitmapUsed by:82
Symbol 82 GraphicUses:81Used by:83
Symbol 83 MovieClipUses:82Used by:139 205 361
Symbol 84 FontUsed by:85 109 110 111 112 113 114 115 116 117 118 119 120 122 123 124 125 126 127 128 129 130 131 132 201 203 279 283 345 357 359
Symbol 85 EditableTextUses:84Used by:139
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:92
Symbol 88 BitmapUsed by:89
Symbol 89 GraphicUses:88Used by:92
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:92
Symbol 92 MovieClip {MusicBtn}Uses:87 89 91Used by:139 190 205 361
Symbol 93 BitmapUsed by:94
Symbol 94 GraphicUses:93Used by:99
Symbol 95 BitmapUsed by:96
Symbol 96 GraphicUses:95Used by:99
Symbol 97 BitmapUsed by:98
Symbol 98 GraphicUses:97Used by:99
Symbol 99 MovieClip {SoundBtn}Uses:94 96 98Used by:139 190 205 361
Symbol 100 EditableTextUses:73Used by:139
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:103
Symbol 103 MovieClipUses:102Used by:139
Symbol 104 BitmapUsed by:105
Symbol 105 GraphicUses:104Used by:106
Symbol 106 MovieClipUses:105Used by:139
Symbol 107 EditableTextUses:73Used by:139
Symbol 108 EditableTextUses:73Used by:139
Symbol 109 EditableTextUses:84Used by:121
Symbol 110 EditableTextUses:84Used by:121
Symbol 111 EditableTextUses:84Used by:121
Symbol 112 EditableTextUses:84Used by:121
Symbol 113 EditableTextUses:84Used by:121
Symbol 114 EditableTextUses:84Used by:121
Symbol 115 EditableTextUses:84Used by:121
Symbol 116 EditableTextUses:84Used by:121
Symbol 117 EditableTextUses:84Used by:121
Symbol 118 EditableTextUses:84Used by:121
Symbol 119 EditableTextUses:84Used by:121
Symbol 120 EditableTextUses:84Used by:121
Symbol 121 MovieClipUses:109 110 111 112 113 114 115 116 117 118 119 120Used by:139
Symbol 122 EditableTextUses:84Used by:139
Symbol 123 EditableTextUses:84Used by:133
Symbol 124 EditableTextUses:84Used by:133
Symbol 125 EditableTextUses:84Used by:133
Symbol 126 EditableTextUses:84Used by:133
Symbol 127 EditableTextUses:84Used by:133
Symbol 128 EditableTextUses:84Used by:133
Symbol 129 EditableTextUses:84Used by:133
Symbol 130 EditableTextUses:84Used by:133
Symbol 131 EditableTextUses:84Used by:133
Symbol 132 EditableTextUses:84Used by:133
Symbol 133 MovieClipUses:123 124 125 126 127 128 129 130 131 132Used by:139
Symbol 134 BitmapUsed by:135
Symbol 135 GraphicUses:134Used by:136
Symbol 136 MovieClipUses:135Used by:139 361
Symbol 137 BitmapUsed by:138
Symbol 138 GraphicUses:137Used by:139 205 231
Symbol 139 MovieClip {amazingadventures.client.Outro}Uses:77 80 83 85 92 99 100 103 106 107 108 121 122 133 136 138
Symbol 140 BitmapUsed by:142 145
Symbol 141 BitmapUsed by:142
Symbol 142 GraphicUses:140 141Used by:143
Symbol 143 MovieClipUses:142Used by:148
Symbol 144 BitmapUsed by:145
Symbol 145 GraphicUses:140 144Used by:146
Symbol 146 MovieClipUses:145Used by:148
Symbol 147 EditableTextUses:73Used by:148
Symbol 148 MovieClip {NewSlideBar}Uses:143 146 147Used by:190
Symbol 149 BitmapUsed by:150
Symbol 150 GraphicUses:149Used by:190
Symbol 151 BitmapUsed by:152
Symbol 152 GraphicUses:151Used by:157
Symbol 153 BitmapUsed by:154
Symbol 154 GraphicUses:153Used by:157
Symbol 155 BitmapUsed by:156
Symbol 156 GraphicUses:155Used by:157
Symbol 157 MovieClip {ExitBtn}Uses:152 154 156Used by:190
Symbol 158 GraphicUsed by:190
Symbol 159 BitmapUsed by:160
Symbol 160 GraphicUses:159Used by:190
Symbol 161 BitmapUsed by:162
Symbol 162 GraphicUses:161Used by:169
Symbol 163 BitmapUsed by:164
Symbol 164 GraphicUses:163Used by:169
Symbol 165 BitmapUsed by:166
Symbol 166 GraphicUses:165Used by:169
Symbol 167 BitmapUsed by:168
Symbol 168 GraphicUses:167Used by:169
Symbol 169 MovieClip {HintBtn}Uses:162 164 166 168Used by:190
Symbol 170 BitmapUsed by:171
Symbol 171 GraphicUses:170Used by:173
Symbol 172 EditableTextUses:73Used by:173
Symbol 173 MovieClipUses:171 172Used by:190
Symbol 174 EditableTextUses:73Used by:178
Symbol 175 EditableTextUses:73Used by:178
Symbol 176 EditableTextUses:73Used by:178
Symbol 177 EditableTextUses:73Used by:178
Symbol 178 MovieClip {amazingadventures.client.Clock}Uses:174 175 176 177Used by:190
Symbol 179 EditableTextUses:73Used by:187
Symbol 180 BitmapUsed by:181
Symbol 181 GraphicUses:180Used by:182
Symbol 182 MovieClipUses:181Used by:187
Symbol 183 EditableTextUses:73Used by:187
Symbol 184 BitmapUsed by:185
Symbol 185 GraphicUses:184Used by:186
Symbol 186 MovieClipUses:185Used by:187
Symbol 187 MovieClipUses:179 182 183 186Used by:190
Symbol 188 EditableTextUses:73Used by:189
Symbol 189 MovieClipUses:188Used by:190
Symbol 190 MovieClip {NewBar}Uses:150 99 92 157 158 148 160 169 173 178 187 189
Symbol 191 EditableTextUses:73Used by:205
Symbol 192 BitmapUsed by:196 272 347
Symbol 193 BitmapUsed by:196 272 347
Symbol 194 BitmapUsed by:196 272 347
Symbol 195 BitmapUsed by:196 272 347
Symbol 196 GraphicUses:192 193 194 195Used by:197
Symbol 197 MovieClipUses:196Used by:205
Symbol 198 BitmapUsed by:199
Symbol 199 GraphicUses:198Used by:200
Symbol 200 MovieClipUses:199Used by:205 361
Symbol 201 EditableTextUses:84Used by:205
Symbol 202 EditableTextUses:73Used by:205
Symbol 203 EditableTextUses:84Used by:204
Symbol 204 MovieClipUses:203Used by:205
Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog}Uses:77 92 99 191 197 200 138 83 201 202 204
Symbol 206 BitmapUsed by:207
Symbol 207 GraphicUses:206Used by:208
Symbol 208 MovieClip {MiddleBorder}Uses:207
Symbol 209 EditableTextUses:73Used by:361
Symbol 210 BitmapUsed by:211
Symbol 211 GraphicUses:210Used by:361
Symbol 212 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 257 259 261 263 267 268
Symbol 213 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 257 259 263 265 267 268
Symbol 214 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 257 259 261 263 265 267 268
Symbol 215 BitmapUsed by:230 235 237 239 241 243 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 216 BitmapUsed by:230 233 235 239 241 243 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 217 BitmapUsed by:230 233 235 237 239 243 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 218 BitmapUsed by:230 233 235 237 239 241 243 245 249 251 253 255 257 259 261 263 265 267 268
Symbol 219 BitmapUsed by:230 233 235 237 239 241 243 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 220 BitmapUsed by:230 233 235 237 239 241 243 245 247 251 253 255 257 259 261 263 265 267 268
Symbol 221 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 257 259 261 265 267 268
Symbol 222 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 257 259 261 263 265 268
Symbol 223 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 259 261 263 265 267 268
Symbol 224 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 255 257 259 261 263 265 267 268
Symbol 225 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 253 255 257 259 261 263 265 267 268
Symbol 226 BitmapUsed by:230 233 235 237 239 241 243 245 247 249 251 253 255 257 261 263 265 267 268
Symbol 227 BitmapUsed by:230 233 237 239 241 243 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 228 BitmapUsed by:230 233 235 237 239 241 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 229 BitmapUsed by:230 233 235 237 241 243 245 247 249 251 253 255 257 259 261 263 265 267 268
Symbol 230 GraphicUses:212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 231 MovieClipUses:138Used by:361
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232 212 213 214 216 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 228 229Used by:361
Symbol 236 BitmapUsed by:237
Symbol 237 GraphicUses:236 212 213 214 215 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 238 BitmapUsed by:239
Symbol 239 GraphicUses:238 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228Used by:361
Symbol 240 BitmapUsed by:241
Symbol 241 GraphicUses:240 212 213 214 215 216 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 242 BitmapUsed by:243
Symbol 243 GraphicUses:242 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 229Used by:361
Symbol 244 BitmapUsed by:245
Symbol 245 GraphicUses:244 212 213 214 215 216 217 218 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 246 BitmapUsed by:247
Symbol 247 GraphicUses:246 212 213 214 215 216 217 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 248 BitmapUsed by:249
Symbol 249 GraphicUses:248 212 213 214 215 216 217 218 219 221 222 223 224 225 226 227 228 229Used by:361
Symbol 250 BitmapUsed by:251
Symbol 251 GraphicUses:250 212 213 214 215 216 217 218 219 220 221 222 223 224 226 227 228 229Used by:361
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252 212 213 214 215 216 217 218 219 220 221 222 223 225 226 227 228 229Used by:361
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254 212 213 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256 212 213 214 215 216 217 218 219 220 221 222 224 225 226 227 228 229Used by:361
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258 212 213 214 215 216 217 218 219 220 221 222 223 224 225 227 228 229Used by:361
Symbol 260 BitmapUsed by:261
Symbol 261 GraphicUses:260 212 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 262 BitmapUsed by:263
Symbol 263 GraphicUses:262 212 213 214 215 216 217 218 219 220 222 223 224 225 226 227 228 229Used by:361
Symbol 264 BitmapUsed by:265
Symbol 265 GraphicUses:264 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229Used by:361
Symbol 266 BitmapUsed by:267
Symbol 267 GraphicUses:266 212 213 214 215 216 217 218 219 220 221 223 224 225 226 227 228 229Used by:361
Symbol 268 GraphicUses:222 212 213 214 215 216 217 218 219 220 221 223 224 225 226 227 228 229Used by:361
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:271
Symbol 271 MovieClipUses:270Used by:361
Symbol 272 GraphicUses:194 195 192 193Used by:273
Symbol 273 MovieClipUses:272Used by:361
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:276
Symbol 276 MovieClipUses:275Used by:361
Symbol 277 BitmapUsed by:278
Symbol 278 GraphicUses:277Used by:361
Symbol 279 EditableTextUses:84Used by:361
Symbol 280 BitmapUsed by:281
Symbol 281 GraphicUses:280Used by:282
Symbol 282 MovieClipUses:281Used by:361
Symbol 283 EditableTextUses:84Used by:284
Symbol 284 MovieClipUses:283Used by:361
Symbol 285 BitmapUsed by:286
Symbol 286 GraphicUses:285Used by:287
Symbol 287 MovieClipUses:286Used by:342
Symbol 288 BitmapUsed by:289
Symbol 289 GraphicUses:288Used by:342 552
Symbol 290 BitmapUsed by:291
Symbol 291 GraphicUses:290Used by:342 552
Symbol 292 BitmapUsed by:293
Symbol 293 GraphicUses:292Used by:342 552
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:294Used by:342 552
Symbol 296 BitmapUsed by:297
Symbol 297 GraphicUses:296Used by:342 552
Symbol 298 BitmapUsed by:299
Symbol 299 GraphicUses:298Used by:342 552
Symbol 300 BitmapUsed by:301
Symbol 301 GraphicUses:300Used by:342 552
Symbol 302 BitmapUsed by:303
Symbol 303 GraphicUses:302Used by:342 552
Symbol 304 BitmapUsed by:305
Symbol 305 GraphicUses:304Used by:342 552
Symbol 306 BitmapUsed by:307
Symbol 307 GraphicUses:306Used by:342 552
Symbol 308 BitmapUsed by:309
Symbol 309 GraphicUses:308Used by:342 552
Symbol 310 BitmapUsed by:311
Symbol 311 GraphicUses:310Used by:342 552
Symbol 312 BitmapUsed by:313
Symbol 313 GraphicUses:312Used by:342 552
Symbol 314 BitmapUsed by:315
Symbol 315 GraphicUses:314Used by:342 552
Symbol 316 BitmapUsed by:317
Symbol 317 GraphicUses:316Used by:342 552
Symbol 318 BitmapUsed by:319
Symbol 319 GraphicUses:318Used by:342 552
Symbol 320 BitmapUsed by:321
Symbol 321 GraphicUses:320Used by:342 552
Symbol 322 BitmapUsed by:323
Symbol 323 GraphicUses:322Used by:342 552
Symbol 324 BitmapUsed by:325
Symbol 325 GraphicUses:324Used by:342 552
Symbol 326 BitmapUsed by:327
Symbol 327 GraphicUses:326Used by:342 552
Symbol 328 BitmapUsed by:329
Symbol 329 GraphicUses:328Used by:342 552
Symbol 330 BitmapUsed by:331
Symbol 331 GraphicUses:330Used by:342 552
Symbol 332 BitmapUsed by:333
Symbol 333 GraphicUses:332Used by:342 552
Symbol 334 BitmapUsed by:335
Symbol 335 GraphicUses:334Used by:342 552
Symbol 336 BitmapUsed by:337
Symbol 337 GraphicUses:336Used by:342 552
Symbol 338 BitmapUsed by:339
Symbol 339 GraphicUses:338Used by:342 552
Symbol 340 BitmapUsed by:341
Symbol 341 GraphicUses:340Used by:342 552
Symbol 342 MovieClip {scrapbook_detective_fla.clear_pinkstar_intro_22}Uses:287 289 291 293 295 297 299 301 303 305 307 309 311 313 315 317 319 321 323 325 327 329 331 333 335 337 339 341Used by:361
Symbol 343 BitmapUsed by:344
Symbol 344 GraphicUses:343Used by:361
Symbol 345 EditableTextUses:84Used by:346
Symbol 346 MovieClipUses:345Used by:361
Symbol 347 GraphicUses:194 195 192 193Used by:348
Symbol 348 MovieClipUses:347Used by:361
Symbol 349 BitmapUsed by:350
Symbol 350 GraphicUses:349Used by:351
Symbol 351 MovieClipUses:350Used by:361
Symbol 352 BitmapUsed by:354
Symbol 353 BitmapUsed by:354
Symbol 354 GraphicUses:352 353Used by:355
Symbol 355 MovieClipUses:354Used by:356
Symbol 356 MovieClipUses:355Used by:361
Symbol 357 EditableTextUses:84Used by:358
Symbol 358 MovieClipUses:357Used by:361
Symbol 359 EditableTextUses:84Used by:360
Symbol 360 MovieClipUses:359Used by:361
Symbol 361 MovieClip {amazingadventures.client.Intro}Uses:77 92 99 209 211 230 136 231 233 235 237 239 241 243 245 247 249 251 253 255 257 259 261 263 265 267 268 271 273 276 278 200 83 279 282 284 342 344 346 348 80 351 356 358 360
Symbol 362 BitmapUsed by:363 404
Symbol 363 GraphicUses:362Used by:476
Symbol 364 BitmapUsed by:365 406
Symbol 365 GraphicUses:364Used by:476
Symbol 366 BitmapUsed by:367 408
Symbol 367 GraphicUses:366Used by:476
Symbol 368 BitmapUsed by:369 410
Symbol 369 GraphicUses:368Used by:476
Symbol 370 BitmapUsed by:371
Symbol 371 GraphicUses:370Used by:372
Symbol 372 MovieClipUses:371Used by:476
Symbol 373 BitmapUsed by:374 412
Symbol 374 GraphicUses:373Used by:476
Symbol 375 BitmapUsed by:376 414
Symbol 376 GraphicUses:375Used by:476
Symbol 377 BitmapUsed by:378 416
Symbol 378 GraphicUses:377Used by:476
Symbol 379 BitmapUsed by:380 418
Symbol 380 GraphicUses:379Used by:476
Symbol 381 BitmapUsed by:382 420
Symbol 382 GraphicUses:381Used by:476
Symbol 383 BitmapUsed by:384 422
Symbol 384 GraphicUses:383Used by:476
Symbol 385 BitmapUsed by:386 424
Symbol 386 GraphicUses:385Used by:476
Symbol 387 BitmapUsed by:388 426
Symbol 388 GraphicUses:387Used by:476
Symbol 389 BitmapUsed by:390 428
Symbol 390 GraphicUses:389Used by:476
Symbol 391 BitmapUsed by:392 430
Symbol 392 GraphicUses:391Used by:476
Symbol 393 BitmapUsed by:394 432
Symbol 394 GraphicUses:393Used by:476
Symbol 395 BitmapUsed by:396 434
Symbol 396 GraphicUses:395Used by:476
Symbol 397 BitmapUsed by:398 436
Symbol 398 GraphicUses:397Used by:476
Symbol 399 BitmapUsed by:400 438
Symbol 400 GraphicUses:399Used by:476
Symbol 401 BitmapUsed by:402 440
Symbol 402 GraphicUses:401Used by:476
Symbol 403 BitmapUsed by:404 442
Symbol 404 GraphicUses:362 403Used by:476
Symbol 405 BitmapUsed by:406 444
Symbol 406 GraphicUses:364 405Used by:476
Symbol 407 BitmapUsed by:408 446
Symbol 408 GraphicUses:366 407Used by:476
Symbol 409 BitmapUsed by:410 448
Symbol 410 GraphicUses:368 409Used by:476
Symbol 411 BitmapUsed by:412 450
Symbol 412 GraphicUses:373 411Used by:476
Symbol 413 BitmapUsed by:414 452
Symbol 414 GraphicUses:375 413Used by:476
Symbol 415 BitmapUsed by:416 454
Symbol 416 GraphicUses:377 415Used by:476
Symbol 417 BitmapUsed by:418 456
Symbol 418 GraphicUses:379 417Used by:476
Symbol 419 BitmapUsed by:420 457
Symbol 420 GraphicUses:381 419Used by:476
Symbol 421 BitmapUsed by:422 458
Symbol 422 GraphicUses:383 421Used by:476
Symbol 423 BitmapUsed by:424 459
Symbol 424 GraphicUses:385 423Used by:476
Symbol 425 BitmapUsed by:426 460
Symbol 426 GraphicUses:387 425Used by:476
Symbol 427 BitmapUsed by:428 461
Symbol 428 GraphicUses:389 427Used by:476
Symbol 429 BitmapUsed by:430 462
Symbol 430 GraphicUses:391 429Used by:476
Symbol 431 BitmapUsed by:432 463
Symbol 432 GraphicUses:393 431Used by:476
Symbol 433 BitmapUsed by:434 464
Symbol 434 GraphicUses:395 433Used by:476
Symbol 435 BitmapUsed by:436 465
Symbol 436 GraphicUses:397 435Used by:476
Symbol 437 BitmapUsed by:438 466
Symbol 438 GraphicUses:399 437Used by:476
Symbol 439 BitmapUsed by:440 467
Symbol 440 GraphicUses:401 439Used by:476
Symbol 441 BitmapUsed by:442 468
Symbol 442 GraphicUses:403 441Used by:476
Symbol 443 BitmapUsed by:444 469
Symbol 444 GraphicUses:405 443Used by:476
Symbol 445 BitmapUsed by:446 470
Symbol 446 GraphicUses:407 445Used by:476
Symbol 447 BitmapUsed by:448 471
Symbol 448 GraphicUses:409 447Used by:476
Symbol 449 BitmapUsed by:450 472
Symbol 450 GraphicUses:411 449Used by:476
Symbol 451 BitmapUsed by:452 473
Symbol 452 GraphicUses:413 451Used by:476
Symbol 453 BitmapUsed by:454 474
Symbol 454 GraphicUses:415 453Used by:476
Symbol 455 BitmapUsed by:456 475
Symbol 456 GraphicUses:417 455Used by:476
Symbol 457 GraphicUses:419Used by:476
Symbol 458 GraphicUses:421Used by:476
Symbol 459 GraphicUses:423Used by:476
Symbol 460 GraphicUses:425Used by:476
Symbol 461 GraphicUses:427Used by:476
Symbol 462 GraphicUses:429Used by:476
Symbol 463 GraphicUses:431Used by:476
Symbol 464 GraphicUses:433Used by:476
Symbol 465 GraphicUses:435Used by:476
Symbol 466 GraphicUses:437Used by:476
Symbol 467 GraphicUses:439Used by:476
Symbol 468 GraphicUses:441Used by:476
Symbol 469 GraphicUses:443Used by:476
Symbol 470 GraphicUses:445Used by:476
Symbol 471 GraphicUses:447Used by:476
Symbol 472 GraphicUses:449Used by:476
Symbol 473 GraphicUses:451Used by:476
Symbol 474 GraphicUses:453Used by:476
Symbol 475 GraphicUses:455Used by:476
Symbol 476 MovieClip {amazingadventures.client.HintAnimation}Uses:363 365 367 369 372 374 376 378 380 382 384 386 388 390 392 394 396 398 400 402 404 406 408 410 412 414 416 418 420 422 424 426 428 430 432 434 436 438 440 442 444 446 448 450 452 454 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475
Symbol 477 BitmapUsed by:478
Symbol 478 GraphicUses:477Used by:548
Symbol 479 BitmapUsed by:480
Symbol 480 GraphicUses:479Used by:548
Symbol 481 BitmapUsed by:483
Symbol 482 BitmapUsed by:483
Symbol 483 GraphicUses:481 482Used by:548
Symbol 484 BitmapUsed by:486
Symbol 485 BitmapUsed by:486
Symbol 486 GraphicUses:484 485Used by:548
Symbol 487 BitmapUsed by:489
Symbol 488 BitmapUsed by:489
Symbol 489 GraphicUses:487 488Used by:548
Symbol 490 BitmapUsed by:492
Symbol 491 BitmapUsed by:492
Symbol 492 GraphicUses:490 491Used by:548
Symbol 493 BitmapUsed by:495
Symbol 494 BitmapUsed by:495
Symbol 495 GraphicUses:493 494Used by:548
Symbol 496 BitmapUsed by:497
Symbol 497 GraphicUses:496Used by:548
Symbol 498 BitmapUsed by:499
Symbol 499 GraphicUses:498Used by:548
Symbol 500 BitmapUsed by:501
Symbol 501 GraphicUses:500Used by:548
Symbol 502 BitmapUsed by:503
Symbol 503 GraphicUses:502Used by:548
Symbol 504 BitmapUsed by:505
Symbol 505 GraphicUses:504Used by:548
Symbol 506 BitmapUsed by:507
Symbol 507 GraphicUses:506Used by:548
Symbol 508 BitmapUsed by:509
Symbol 509 GraphicUses:508Used by:548
Symbol 510 BitmapUsed by:511
Symbol 511 GraphicUses:510Used by:548
Symbol 512 BitmapUsed by:513
Symbol 513 GraphicUses:512Used by:548
Symbol 514 BitmapUsed by:515
Symbol 515 GraphicUses:514Used by:548
Symbol 516 BitmapUsed by:517
Symbol 517 GraphicUses:516Used by:548
Symbol 518 BitmapUsed by:519
Symbol 519 GraphicUses:518Used by:548
Symbol 520 BitmapUsed by:521
Symbol 521 GraphicUses:520Used by:548
Symbol 522 BitmapUsed by:523
Symbol 523 GraphicUses:522Used by:548
Symbol 524 BitmapUsed by:525
Symbol 525 GraphicUses:524Used by:548
Symbol 526 BitmapUsed by:527
Symbol 527 GraphicUses:526Used by:548
Symbol 528 BitmapUsed by:529
Symbol 529 GraphicUses:528Used by:548
Symbol 530 BitmapUsed by:531
Symbol 531 GraphicUses:530Used by:548
Symbol 532 BitmapUsed by:533
Symbol 533 GraphicUses:532Used by:548
Symbol 534 BitmapUsed by:535
Symbol 535 GraphicUses:534Used by:548
Symbol 536 BitmapUsed by:537
Symbol 537 GraphicUses:536Used by:548
Symbol 538 BitmapUsed by:539
Symbol 539 GraphicUses:538Used by:548
Symbol 540 BitmapUsed by:541
Symbol 541 GraphicUses:540Used by:548
Symbol 542 BitmapUsed by:543
Symbol 543 GraphicUses:542Used by:548
Symbol 544 BitmapUsed by:545
Symbol 545 GraphicUses:544Used by:548
Symbol 546 BitmapUsed by:547
Symbol 547 GraphicUses:546Used by:548
Symbol 548 MovieClip {amazingadventures.client.FailAnimation}Uses:478 480 483 486 489 492 495 497 499 501 503 505 507 509 511 513 515 517 519 521 523 525 527 529 531 533 535 537 539 541 543 545 547
Symbol 549 BitmapUsed by:550
Symbol 550 GraphicUses:549Used by:551
Symbol 551 MovieClipUses:550Used by:552
Symbol 552 MovieClip {amazingadventures.client.SuccessAnimation}Uses:551 289 291 293 295 297 299 301 303 305 307 309 311 313 315 317 319 321 323 325 327 329 331 333 335 337 339 341
Symbol 553 BitmapUsed by:554
Symbol 554 GraphicUses:553Used by:559
Symbol 555 BitmapUsed by:556
Symbol 556 GraphicUses:555Used by:559
Symbol 557 BitmapUsed by:558
Symbol 558 GraphicUses:557Used by:559
Symbol 559 MovieClip {amazingadventures.client.ButtonAnimation}Uses:554 556 558

Instance Names

"textField"Symbol 32 MovieClip {TextItem} Frame 1Symbol 14 EditableText
"line"Symbol 32 MovieClip {TextItem} Frame 1Symbol 31 MovieClip
"textField"Symbol 75 MovieClip {amazingadventures.client.ScorePop} Frame 1Symbol 74 EditableText
"score1Tf"Symbol 121 MovieClip Frame 1Symbol 109 EditableText
"score2Tf"Symbol 121 MovieClip Frame 1Symbol 110 EditableText
"hintTf"Symbol 121 MovieClip Frame 1Symbol 111 EditableText
"timeTf"Symbol 121 MovieClip Frame 1Symbol 112 EditableText
"totalTf"Symbol 121 MovieClip Frame 1Symbol 113 EditableText
"score1NumTf"Symbol 121 MovieClip Frame 1Symbol 114 EditableText
"score2NumTf"Symbol 121 MovieClip Frame 1Symbol 115 EditableText
"hintNumTf"Symbol 121 MovieClip Frame 1Symbol 116 EditableText
"timeNumTf"Symbol 121 MovieClip Frame 1Symbol 117 EditableText
"totalNumTf"Symbol 121 MovieClip Frame 1Symbol 118 EditableText
"penaltyTf"Symbol 121 MovieClip Frame 1Symbol 119 EditableText
"penaltyNumTf"Symbol 121 MovieClip Frame 1Symbol 120 EditableText
"score1Tf"Symbol 133 MovieClip Frame 1Symbol 123 EditableText
"score2Tf"Symbol 133 MovieClip Frame 1Symbol 124 EditableText
"hintTf"Symbol 133 MovieClip Frame 1Symbol 125 EditableText
"totalTf"Symbol 133 MovieClip Frame 1Symbol 126 EditableText
"score1NumTf"Symbol 133 MovieClip Frame 1Symbol 127 EditableText
"score2NumTf"Symbol 133 MovieClip Frame 1Symbol 128 EditableText
"hintNumTf"Symbol 133 MovieClip Frame 1Symbol 129 EditableText
"totalNumTf"Symbol 133 MovieClip Frame 1Symbol 130 EditableText
"timeTf"Symbol 133 MovieClip Frame 1Symbol 131 EditableText
"timeNumTf"Symbol 133 MovieClip Frame 1Symbol 132 EditableText
"registerTf"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 85 EditableText
"musicBtn"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 92 MovieClip {MusicBtn}
"soundBtn"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 99 MovieClip {SoundBtn}
"timeLeftTf"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 100 EditableText
"scoreTf"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 107 EditableText
"bestTf"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 108 EditableText
"textMc"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 121 MovieClip
"gameoverTf"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 122 EditableText
"bestMc"Symbol 139 MovieClip {amazingadventures.client.Outro} Frame 1Symbol 133 MovieClip
"moveShort"Symbol 148 MovieClip {NewSlideBar} Frame 1Symbol 143 MovieClip
"moveLong"Symbol 148 MovieClip {NewSlideBar} Frame 1Symbol 146 MovieClip
"levelNameTf"Symbol 148 MovieClip {NewSlideBar} Frame 1Symbol 147 EditableText
"itemsLeftTf"Symbol 173 MovieClip Frame 1Symbol 172 EditableText
"minute1"Symbol 178 MovieClip {amazingadventures.client.Clock} Frame 1Symbol 174 EditableText
"second10"Symbol 178 MovieClip {amazingadventures.client.Clock} Frame 1Symbol 175 EditableText
"second1"Symbol 178 MovieClip {amazingadventures.client.Clock} Frame 1Symbol 176 EditableText
"colon"Symbol 178 MovieClip {amazingadventures.client.Clock} Frame 1Symbol 177 EditableText
"hint1Tf"Symbol 187 MovieClip Frame 1Symbol 179 EditableText
"hint1Arrow"Symbol 187 MovieClip Frame 1Symbol 182 MovieClip
"hint2Tf"Symbol 187 MovieClip Frame 1Symbol 183 EditableText
"hint2Arrow"Symbol 187 MovieClip Frame 1Symbol 186 MovieClip
"scoreTf"Symbol 189 MovieClip Frame 1Symbol 188 EditableText
"soundBtn"Symbol 190 MovieClip {NewBar} Frame 1Symbol 99 MovieClip {SoundBtn}
"musicBtn"Symbol 190 MovieClip {NewBar} Frame 1Symbol 92 MovieClip {MusicBtn}
"exitBtn"Symbol 190 MovieClip {NewBar} Frame 1Symbol 157 MovieClip {ExitBtn}
"newSlideBar"Symbol 190 MovieClip {NewBar} Frame 1Symbol 148 MovieClip {NewSlideBar}
"hintBtn"Symbol 190 MovieClip {NewBar} Frame 1Symbol 169 MovieClip {HintBtn}
"itemsLeftBox"Symbol 190 MovieClip {NewBar} Frame 1Symbol 173 MovieClip
"clock"Symbol 190 MovieClip {NewBar} Frame 1Symbol 178 MovieClip {amazingadventures.client.Clock}
"hintMc"Symbol 190 MovieClip {NewBar} Frame 1Symbol 187 MovieClip
"scoreMc"Symbol 190 MovieClip {NewBar} Frame 1Symbol 189 MovieClip
"textTf"Symbol 204 MovieClip Frame 1Symbol 203 EditableText
"musicBtn"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 92 MovieClip {MusicBtn}
"soundBtn"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 99 MovieClip {SoundBtn}
"timeLeftTf"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 191 EditableText
"textMc"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 197 MovieClip
"instructionsTf"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 201 EditableText
"gameTf"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 202 EditableText
"textMc"Symbol 205 MovieClip {amazingadventures.client.MiddleGameDialog} Frame 1Symbol 204 MovieClip
"instructions1Tf"Symbol 284 MovieClip Frame 1Symbol 283 EditableText
"instructions2Tf"Symbol 346 MovieClip Frame 1Symbol 345 EditableText
"instructions3Tf"Symbol 358 MovieClip Frame 1Symbol 357 EditableText
"instructions4Tf"Symbol 360 MovieClip Frame 1Symbol 359 EditableText
"musicBtn"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 1Symbol 92 MovieClip {MusicBtn}
"soundBtn"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 1Symbol 99 MovieClip {SoundBtn}
"timeLeftTf"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 1Symbol 209 EditableText
"introflower"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 91Symbol 200 MovieClip
"instructionsTf"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 91Symbol 279 EditableText
"instructions1Mc"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 115Symbol 284 MovieClip
"instructions2Mc"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 241Symbol 346 MovieClip
"instructions3Mc"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 415Symbol 358 MovieClip
"instructions4Mc"Symbol 361 MovieClip {amazingadventures.client.Intro} Frame 560Symbol 360 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 11284 bytes "<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmln ..."




https://swfchan.com/54/268283/info.shtml
Created: 15/6 -2026 23:22:20 Last modified: 15/6 -2026 23:22:20 Server time: 16/06 -2026 21:25:30