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

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/76634365?noj=FRM76634365-29DC" width="1" height="1"></div>

8bit Little Killer - explode yourself and all the surrounding attackers.swf

This is the info page for
Flash #89760

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


Text
LOADING...

SOUND_INIT

combo bonus

+1000

chain bonus

ONLINE

SCORE: 3242344233

3

KILL THEM ALL!

STAGE PROGRESS:

menu

menu

menu

LONGEST CHAIN: 14!

cvxcvcvxcvxc

USE ARROWS
OR WASD
TO MOVE

USE SPACE
TO EXPLODE
ENEMIES

COLLECT THIS
BONUSES

LEVEL COMPLETED

DIRECT BONUS:

123565656

EXTRA BONUS:

123565656

COMBO BONUS:

123565656

BOSS BONUS:

123565656

TOTAL:

123565656

PRESS ANY KEY TO CONTINUE...

PRESS ANY KEY TO CONTINUE...

PRESS ANY KEY TO CONTINUE...

LONGEST COMBO BONUS:

123565656

PAUSE MENU

CONTINUE

CONTINUE

EXIT

EXIT

8BIT lITTLE kILLER

NEW GAME

NEW GAME

HI-SCORES

HI-SCORES

SHOW HELP

SHOW HELP

MORE GAMES

MORE GAMES

COPYRIGHT (C) 2009 ANEGMETEX SOFTWARE

YOU SCORE IS:

HI-SCORES (EASY)

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

[UNKNOWN]

0000000

HELP

USE THE ARROWS
KEYS OR WASD TO
MOVE.

PRESS SPACEBAR
NEXT TO THE ENEMIES
TO EXPLODE 'EM.

AFTER SPAWNING YOU
HAVE AN IMMORTAL
AURA. MAKE IT TO A
SAFE PLACE BEFORE
IT DISAPPEARS.

CHAIN EXPLOSIONS
GIVE YOU MORE
POINTS.

GET EXTRA LIFE.

GIVES MORE ENEMIES TO KILL
AND POINTS TO COLLECT.

GET EXTRA POINTS, THE
MORE YOU COLLECT THE
HIGHER THE BONUS.

BONUSES:

RESTART LEVEL ?

YES

YES

NO

NO

CHOOSE DIFFICULT:

EASY MODE

EASY MODE

NORMAL MODE

NORMAL MODE

BACK

BACK

<p align="center"><font face="Unsteady Oversteer" size="30" color="#00ff00" letterSpacing="0.000000" kerning="0">OKAY, YOU WIN!</font></p><p align="center"></p><p align="center"><font face="Unsteady Oversteer" size="25" color="#00ff00" letterSpacing="0.000000" kerning="0">NOW YOU CAN GET MORE SCORES </font></p><p align="center"><font face="Unsteady Oversteer" size="25" color="#00ff00" letterSpacing="0.000000" kerning="0">IN <font color="#ccff00">FREE PLAY MODE</font>.</font></p>

YOU SCORE IS:

GAME OVER!

YOUR RECORD WAS SUBMITTED ON PLAYEDONLINE.COM


ActionScript [AS3]

Section 1
//GameProgress_53 (game_fla.GameProgress_53) package game_fla { import flash.display.*; public dynamic class GameProgress_53 extends MovieClip { public function GameProgress_53(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package game_fla
Section 2
//gamoverSponsor_86 (game_fla.gamoverSponsor_86) package game_fla { import flash.display.*; import flash.text.*; public dynamic class gamoverSponsor_86 extends MovieClip { public var txt:TextField; } }//package game_fla
Section 3
//keybMove_57 (game_fla.keybMove_57) package game_fla { import flash.display.*; import flash.events.*; import flash.utils.*; public dynamic class keybMove_57 extends MovieClip { public var timerLogo1:Timer; public var timerLogo2:Timer; public var timerLogo5:Timer; public var timerLogo4:Timer; public var timerLogo3:Timer; public function keybMove_57(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5); } public function timerLogo5_Timer(_arg1:TimerEvent):void{ play(); } public function timerLogo1_Timer(_arg1:TimerEvent):void{ play(); } public function timerLogo2_Timer(_arg1:TimerEvent):void{ play(); } function frame3(){ stop(); timerLogo3 = new Timer(1000, 1); timerLogo3.start(); timerLogo3.addEventListener(TimerEvent.TIMER, timerLogo3_Timer); } function frame1(){ stop(); timerLogo1 = new Timer(1000, 1); timerLogo1.start(); timerLogo1.addEventListener(TimerEvent.TIMER, timerLogo1_Timer); } function frame4(){ stop(); timerLogo4 = new Timer(1000, 1); timerLogo4.start(); timerLogo4.addEventListener(TimerEvent.TIMER, timerLogo4_Timer); } function frame2(){ stop(); timerLogo2 = new Timer(1000, 1); timerLogo2.start(); timerLogo2.addEventListener(TimerEvent.TIMER, timerLogo2_Timer); } function frame5(){ stop(); timerLogo5 = new Timer(1000, 1); timerLogo5.start(); timerLogo5.addEventListener(TimerEvent.TIMER, timerLogo5_Timer); } public function timerLogo3_Timer(_arg1:TimerEvent):void{ play(); } public function timerLogo4_Timer(_arg1:TimerEvent):void{ play(); } } }//package game_fla
Section 4
//keybSpace_58 (game_fla.keybSpace_58) package game_fla { import flash.display.*; import flash.events.*; import flash.utils.*; public dynamic class keybSpace_58 extends MovieClip { public var timerLogo11:Timer; public var timerLogo12:Timer; public function keybSpace_58(){ addFrameScript(0, frame1, 1, frame2); } public function timerLogo12_Timer(_arg1:TimerEvent):void{ play(); } function frame1(){ stop(); timerLogo11 = new Timer(1000, 1); timerLogo11.start(); timerLogo11.addEventListener(TimerEvent.TIMER, timerLogo11_Timer); } function frame2(){ stop(); timerLogo12 = new Timer(1000, 1); timerLogo12.start(); timerLogo12.addEventListener(TimerEvent.TIMER, timerLogo12_Timer); } public function timerLogo11_Timer(_arg1:TimerEvent):void{ play(); } } }//package game_fla
Section 5
//MainTimeline (game_fla.MainTimeline) package game_fla { import main.*; import flash.display.*; import flash.events.*; import mochi.as3.*; import flash.utils.*; import flash.net.*; import flash.media.*; public dynamic class MainTimeline extends MovieClip { public var soundSwitch:MovieClip; public var timerLogoFade:Timer; public var sponsorSplash:MovieClip; public var bFader:blackFader; public var bg:background; public var aura:aura; public var preloader:preloader; public var thisgame:game; public var timerLogo:Timer; public var sponsorLogo:MovieClip; public function MainTimeline(){ addFrameScript(0, frame1, 1, frame2, 2, frame3); } public function soundSwitch_Click(_arg1:MouseEvent):void{ var _local2:SoundTransform; if (soundSwitch.currentFrame == 1){ soundSwitch.gotoAndStop(2); thisgame.game_snd.vol = 0; _local2 = new SoundTransform(); _local2.volume = 0; thisgame.soundChannel.soundTransform = _local2; } else { soundSwitch.gotoAndStop(1); thisgame.game_snd.vol = 0.9; _local2 = new SoundTransform(); _local2.volume = 1; thisgame.soundChannel.soundTransform = _local2; }; } public function timerLogoFade_Timer(_arg1:TimerEvent):void{ bFader.start(); } function frame1(){ stage.quality = "medium"; stop(); sponsorLogo.buttonMode = true; sponsorLogo.addEventListener(MouseEvent.CLICK, sponsorLogoClick_Click); MochiAd.showPreGameAd({clip:root, id:"051d4ea116430275", res:"550x400", background:0, color:285194, outline:6352386, no_bg:true, no_progress_bar:true}); } function frame3(){ soundSwitch.buttonMode = true; soundSwitch.addEventListener(MouseEvent.CLICK, soundSwitch_Click); stop(); } function frame2(){ stop(); timerLogo = new Timer(9000, 1); timerLogo.start(); timerLogo.addEventListener(TimerEvent.TIMER, timerLogo_Timer); bFader.visible = false; timerLogoFade = new Timer(8000, 1); timerLogoFade.start(); timerLogoFade.addEventListener(TimerEvent.TIMER, timerLogoFade_Timer); sponsorSplash.buttonMode = true; sponsorSplash.addEventListener(MouseEvent.CLICK, sponsorSplash_Click); } public function timerLogo_Timer(_arg1:TimerEvent):void{ play(); } public function sponsorLogoClick_Click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://playedonline.com?campaign=8bit&utm_campaign=8bit&utm_medium=in_game&utm_source=8bit"), "_blank"); } public function sponsorSplash_Click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://playedonline.com?campaign=8bit&utm_campaign=8bit&utm_medium=in_game&utm_source=8bit"), "_blank"); } } }//package game_fla
Section 6
//pressAnyKey_60 (game_fla.pressAnyKey_60) package game_fla { import flash.display.*; import flash.text.*; public dynamic class pressAnyKey_60 extends MovieClip { public var thanksPlay:TextField; } }//package game_fla
Section 7
//progressbar_5 (game_fla.progressbar_5) package game_fla { import flash.display.*; public dynamic class progressbar_5 extends MovieClip { public function progressbar_5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package game_fla
Section 8
//sound_init_10 (game_fla.sound_init_10) package game_fla { import flash.display.*; public dynamic class sound_init_10 extends MovieClip { public function sound_init_10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package game_fla
Section 9
//SoundSwitch_87 (game_fla.SoundSwitch_87) package game_fla { import flash.display.*; public dynamic class SoundSwitch_87 extends MovieClip { public function SoundSwitch_87(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package game_fla
Section 10
//sprite19_41 (game_fla.sprite19_41) package game_fla { import flash.display.*; public dynamic class sprite19_41 extends MovieClip { public function sprite19_41(){ addFrameScript(129, frame130); } function frame130(){ stop(); } } }//package game_fla
Section 11
//aura (main.aura) package main { public dynamic class aura extends statObject { override public function toString():String{ return ("aura"); } } }//package main
Section 12
//background (main.background) package main { import flash.display.*; import flash.events.*; public class background extends MovieClip { const StarNumber:Number = 250; const SCR_H:Number = 400; const SCR_W:Number = 550; var starArray:Array; public function background(){ addFrameScript(0, frame1); starArray = new Array(); generate(); addEventListener(Event.ENTER_FRAME, Update); } function Random(_arg1:Number=NaN, _arg2:Number=NaN):Number{ if (isNaN(_arg1)){ throw (new Error("low must be defined")); }; if (isNaN(_arg2)){ throw (new Error("high must be defined")); }; return ((Math.round((Math.random() * (_arg2 - _arg1))) + _arg1)); } function Distance(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:Number; var _local6:Number; _local5 = (_arg3 - _arg1); _local6 = (_arg4 - _arg2); return (Math.sqrt(((_local5 * _local5) + (_local6 * _local6)))); } public function RemapVal(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ return ((_arg4 + (((_arg5 - _arg4) * (_arg1 - _arg2)) / (_arg3 - _arg2)))); } function frame1(){ stop(); } public function generate():void{ var _local1:Number; var _local2:Star; _local1 = 0; while (_local1 < StarNumber) { _local2 = new Star(); placeOnStarfield(_local2); starArray.push(_local2); addChild(_local2); _local1++; }; } public function placeOnStarfield(_arg1:Star):void{ _arg1.cx = Random((-(SCR_W) / 3), (SCR_W / 3)); _arg1.cy = Random((-(SCR_H) / 3), (SCR_H / 3)); _arg1.genx = _arg1.cx; _arg1.geny = _arg1.cy; _arg1.speed = Random(3, 12); _arg1.gotoAndStop(Random(1, 10)); _arg1.scaleX = (_arg1.scaleY = (1 + (0.05 * Random(1, 12)))); } public function Update(_arg1:Event):void{ var _local2:Star; var _local3:Number; for each (_local2 in starArray) { _local2.cx = (_local2.cx * (1 + (0.003 * _local2.speed))); _local2.cy = (_local2.cy * (1 + (0.003 * _local2.speed))); _local2.x = (_local2.cx + (SCR_W / 2)); _local2.y = (_local2.cy + (SCR_H / 2)); _local3 = Distance(_local2.x, _local2.y, (_local2.genx + (SCR_W / 2)), (_local2.geny + (SCR_H / 2))); _local2.alpha = RemapVal(_local3, 0, (SCR_H / 2), 0, 1); if ((((((((_local2.x < 0)) || ((_local2.y < 0)))) || ((_local2.x > SCR_W)))) || ((_local2.y > SCR_H)))){ placeOnStarfield(_local2); }; }; } } }//package main
Section 13
//baseObject (main.baseObject) package main { import flash.display.*; import flash.events.*; import flash.utils.*; public dynamic class baseObject extends MovieClip { public var isImmortal:Boolean;// = false public var timerImmortal:Timer; public var VIPNotCollision:Boolean;// = false public var LifeBar:Number;// = 0 public var removeAlphaEffect:Number;// = 0.1 public var radius:Number; public var removed:Boolean;// = false public var AlwaysOnScreen:Boolean;// = false public var readyToRemove:Boolean;// = false public var LifeBarMax:Number;// = 1 public var NoBonus:Boolean;// = false public var VIP:Boolean;// = false public var useLifeBar:Boolean;// = false public function baseObject(){ removed = false; readyToRemove = false; VIPNotCollision = false; removeAlphaEffect = 0.1; VIP = false; NoBonus = false; AlwaysOnScreen = false; isImmortal = false; useLifeBar = false; LifeBar = 0; LifeBarMax = 1; super(); radius = Math.floor(((width + height) / 4)); timerImmortal = new Timer(2000, 1); timerImmortal.stop(); timerImmortal.addEventListener(TimerEvent.TIMER, timerImmortal_Timer); } function Random(_arg1:Number=NaN, _arg2:Number=NaN):Number{ if (isNaN(_arg1)){ throw (new Error("low must be defined")); }; if (isNaN(_arg2)){ throw (new Error("high must be defined")); }; return ((Math.round((Math.random() * (_arg2 - _arg1))) + _arg1)); } public function distance(_arg1:baseObject):Number{ return (Math.sqrt(distance2(_arg1))); } public function getImmortal():void{ isImmortal = true; timerImmortal.start(); } public function CheckCollision(_arg1:baseObject):Boolean{ var _local2:Number; var _local3:Number; _local2 = distance2(_arg1); _local3 = (radius + _arg1.radius); return ((_local2 < (_local3 * _local3))); } public function timerImmortal_Timer(_arg1:TimerEvent):void{ isImmortal = false; timerImmortal.stop(); } override public function toString():String{ return ("baseObject"); } public function startRemove():void{ removed = true; } public function updateRemoveEffect():void{ if (alpha < removeAlphaEffect){ readyToRemove = true; alpha = 0; } else { alpha = (alpha - removeAlphaEffect); }; } public function recalcRadius():void{ radius = Math.floor(((width + height) / 4)); } public function distance2(_arg1:baseObject):Number{ var _local2:Number; var _local3:Number; _local2 = (x - _arg1.x); _local3 = (y - _arg1.y); return (((_local2 * _local2) + (_local3 * _local3))); } } }//package main
Section 14
//blackFader (main.blackFader) package main { public dynamic class blackFader extends menuFader { } }//package main
Section 15
//bonusBrown (main.bonusBrown) package main { public dynamic class bonusBrown extends dynObject { public function bonusBrown(){ notTargetRotate = true; rot = 4; removeAlphaEffect = 0.1; } override public function toString():String{ return ("bonus"); } override public function subType():String{ return ("bonusBrown"); } } }//package main
Section 16
//bonusGreen (main.bonusGreen) package main { public dynamic class bonusGreen extends dynObject { public function bonusGreen(){ notTargetRotate = true; rot = 4; removeAlphaEffect = 0.1; } override public function toString():String{ return ("bonus"); } override public function subType():String{ return ("bonusGreen"); } } }//package main
Section 17
//bonusPink (main.bonusPink) package main { public dynamic class bonusPink extends dynObject { public function bonusPink(){ notTargetRotate = true; rot = 4; removeAlphaEffect = 0.1; } override public function toString():String{ return ("bonus"); } override public function subType():String{ return ("bonusPink"); } } }//package main
Section 18
//bossDeath (main.bossDeath) package main { import flash.geom.*; public dynamic class bossDeath extends turret { public function bossDeath(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); addFrameScript(0, frame1); rotateSpeed = 4; VelocitySpd = 4; angleTargeting = 360; AlwaysOnScreen = true; notTargetRotate = false; zoomEffect = 0.01; points = new Object(); points["part1"] = new Point(-14.5, 36.5); points["part2"] = new Point(11, 32.3); points["part3"] = new Point(-3.8, 32.3); points["part4"] = new Point(3.8, 25.5); points["part5"] = new Point(-10.8, 25.5); points["part6"] = new Point(-18, 18); points["part7"] = new Point(-3.8, 17.8); points["part8"] = new Point(10.5, 18); points["shoot_pnt1"] = new Point(-3.8, 17.8); points["shoot_pnt2"] = new Point(-7.5, -2.1); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; maxShootSeria = 6; curShootSeria = 0; timeShoot = 90; timeReload = 2000; LifeBarMax = 9; LifeBar = 0; useLifeBar = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossDeath"); } } }//package main
Section 19
//bossDeathPart (main.bossDeathPart) package main { public dynamic class bossDeathPart extends proj { } }//package main
Section 20
//bossDevastator (main.bossDevastator) package main { import flash.geom.*; public dynamic class bossDevastator extends turret { public function bossDevastator(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); addFrameScript(0, frame1); rotateSpeed = 4; VelocitySpd = 5; angleTargeting = 45; AlwaysOnScreen = true; zoomEffect = 0.01; points = new Object(); points["part1"] = new Point(-22.6, -9.2); points["part2"] = new Point(17.9, -22.7); points["part3"] = new Point(-39.6, -32.1); points["part4"] = new Point(17.9, -32.1); points["part5"] = new Point(-9, -23.2); points["shoot_pnt1"] = new Point(-36.1, -41.2); points["shoot_pnt2"] = new Point(20.6, -41.2); points["shoot_pnt3"] = new Point(-7.8, -31.7); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; maxShootSeria = 10; curShootSeria = 0; timeShoot = 40; timeReload = 4000; LifeBarMax = 6; LifeBar = 0; useLifeBar = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossDevastator"); } } }//package main
Section 21
//bossDevastatorPart1 (main.bossDevastatorPart1) package main { public dynamic class bossDevastatorPart1 extends proj { } }//package main
Section 22
//bossDevastatorPart2 (main.bossDevastatorPart2) package main { public dynamic class bossDevastatorPart2 extends proj { } }//package main
Section 23
//bossDevastatorPart3 (main.bossDevastatorPart3) package main { public dynamic class bossDevastatorPart3 extends proj { } }//package main
Section 24
//bossDevastatorPart4 (main.bossDevastatorPart4) package main { public dynamic class bossDevastatorPart4 extends proj { } }//package main
Section 25
//bossFighter (main.bossFighter) package main { import flash.geom.*; public dynamic class bossFighter extends turret { public function bossFighter(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); addFrameScript(0, frame1); notTargetRotate = true; rot = 4; rotateSpeed = 2; VelocitySpd = 2; angleTargeting = 360; AlwaysOnScreen = true; zoomEffect = 0.01; points = new Object(); points["part1"] = new Point(-30.8, 0.1); points["part2"] = new Point(15.9, 26.3); points["part3"] = new Point(16.1, -25.6); points["shoot_pnt1"] = new Point(-30.8, 0.1); points["shoot_pnt2"] = new Point(15.9, 26.3); points["shoot_pnt3"] = new Point(16.1, -25.6); points["shoot_pnt4"] = new Point(0, 0); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; maxShootSeria = 6; curShootSeria = 0; timeShoot = 80; timeReload = 1200; LifeBarMax = 4; LifeBar = 0; useLifeBar = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossFighter"); } } }//package main
Section 26
//bossFighterTurret (main.bossFighterTurret) package main { import flash.geom.*; public dynamic class bossFighterTurret extends turret { public function bossFighterTurret(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); addFrameScript(0, frame1); rotateSpeed = 7; angleTargeting = 45; maxShootSeria = 5; curShootSeria = 0; timeShoot = 100; timeReload = 2000; points = new Object(); points["part1"] = new Point(-15.2, -9.3); points["part2"] = new Point(11.3, -9.3); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; LifeBarMax = 2; LifeBar = 0; useLifeBar = true; VIPNotCollision = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossFighterTurret"); } } }//package main
Section 27
//bossFighterTurretPart (main.bossFighterTurretPart) package main { public dynamic class bossFighterTurretPart extends proj { } }//package main
Section 28
//bossProgressor (main.bossProgressor) package main { import flash.geom.*; public dynamic class bossProgressor extends turret { public function bossProgressor(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); addFrameScript(0, frame1); rotateSpeed = 2; VelocitySpd = 2; angleTargeting = 35; AlwaysOnScreen = true; zoomEffect = 0.01; points = new Object(); points["part1"] = new Point(-52.6, -33.5); points["part2"] = new Point(31.9, -34.2); points["part3"] = new Point(-16.9, 20.4); points["part4"] = new Point(-13.6, -85); points["part5"] = new Point(-38.6, -59.3); points["shoot_pnt1"] = new Point(-9, -99); points["shoot_pnt2"] = new Point(-37.3, -72.3); points["shoot_pnt3"] = new Point(17.2, -72.3); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; maxShootSeria = 6; curShootSeria = 0; timeShoot = 80; timeReload = 2500; LifeBarMax = 6; LifeBar = 0; useLifeBar = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossProgressor"); } } }//package main
Section 29
//bossProgressorPart1 (main.bossProgressorPart1) package main { public dynamic class bossProgressorPart1 extends proj { } }//package main
Section 30
//bossProgressorPart2 (main.bossProgressorPart2) package main { public dynamic class bossProgressorPart2 extends proj { } }//package main
Section 31
//bossProgressorPart3 (main.bossProgressorPart3) package main { public dynamic class bossProgressorPart3 extends proj { } }//package main
Section 32
//bossProgressorPart4 (main.bossProgressorPart4) package main { public dynamic class bossProgressorPart4 extends proj { } }//package main
Section 33
//bossProgressorPart5 (main.bossProgressorPart5) package main { public dynamic class bossProgressorPart5 extends proj { } }//package main
Section 34
//bossSeeder (main.bossSeeder) package main { import flash.events.*; import flash.utils.*; import flash.geom.*; public dynamic class bossSeeder extends turret { public var timerSeed:Timer; public var seeding:Boolean;// = false public function bossSeeder(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; seeding = false; super(); addFrameScript(0, frame1); rotateSpeed = 4; VelocitySpd = 4; angleTargeting = 360; AlwaysOnScreen = true; notTargetRotate = false; zoomEffect = 0.01; points = new Object(); points["part1"] = new Point(-25.8, 3); points["part2"] = new Point(11.8, -15.2); points["part3"] = new Point(11.8, 2.8); points["part4"] = new Point(-25.8, 21.6); points["part5"] = new Point(11.8, 21.3); points["part6"] = new Point(-25.8, -14.9); points["shoot_pnt1"] = new Point(-25.8, 3); points["shoot_pnt2"] = new Point(11.8, -15.2); points["shoot_pnt3"] = new Point(11.8, 2.8); points["shoot_pnt4"] = new Point(-25.8, 21.6); points["shoot_pnt5"] = new Point(11.8, 21.3); points["shoot_pnt6"] = new Point(-25.8, -14.9); points["shoot_pnt7"] = new Point(0, -44.7); FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; maxShootSeria = 3; curShootSeria = 0; timeShoot = 90; timeReload = 2000; LifeBarMax = 7; LifeBar = 0; useLifeBar = true; timerSeed = new Timer(5000); timerSeed.stop(); timerSeed.addEventListener(TimerEvent.TIMER, timerSeed_Timer); } function frame1(){ stop(); } override public function behaviorType():String{ return ("bossSeeder"); } public function timerSeed_Timer(_arg1:TimerEvent):void{ seeding = true; } } }//package main
Section 35
//bossSeederPart (main.bossSeederPart) package main { public dynamic class bossSeederPart extends proj { } }//package main
Section 36
//ColorMatrix (main.ColorMatrix) package main { import flash.filters.*; public class ColorMatrix { public var matrix:Array; private var preHue:ColorMatrix; private var postHue:ColorMatrix; private var hueInitialized:Boolean; private static const ONETHIRD:Number = 0.333333333333333; private static const LUMA_G:Number = 0.71516; private static const LUMA_B:Number = 0.072169; private static const LUMA_R2:Number = 0.3086; private static const LUMA_G2:Number = 0.6094; private static const LUMA_R:Number = 0.212671; private static const LUMA_B2:Number = 0.082; private static const RAD:Number = (Math.PI / 180); private static const IDENTITY:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]; public static const COLOR_DEFICIENCY_TYPES:Array = ["Protanopia", "Protanomaly", "Deuteranopia", "Deuteranomaly", "Tritanopia", "Tritanomaly", "Achromatopsia", "Achromatomaly"]; public function ColorMatrix(_arg1:Object=null){ if ((_arg1 is ColorMatrix)){ matrix = _arg1.matrix.concat(); } else { if ((_arg1 is Array)){ matrix = _arg1.concat(); } else { reset(); }; }; } public function adjustBrightness(_arg1:Number, _arg2:Number=NaN, _arg3:Number=NaN):void{ if (isNaN(_arg2)){ _arg2 = _arg1; }; if (isNaN(_arg3)){ _arg3 = _arg1; }; concat([1, 0, 0, 0, _arg1, 0, 1, 0, 0, _arg2, 0, 0, 1, 0, _arg3, 0, 0, 0, 1, 0]); } public function averageRGB2Alpha():void{ concat([0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, ONETHIRD, ONETHIRD, ONETHIRD, 0, 0]); } public function luminance2Alpha():void{ concat([0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, LUMA_R, LUMA_G, LUMA_B, 0, 0]); } public function rotateRed(_arg1:Number):void{ rotateColor(_arg1, 2, 1); } public function adjustAlphaContrast(_arg1:Number):void{ _arg1 = (_arg1 + 1); concat([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, _arg1, (128 * (1 - _arg1))]); } public function adjustSaturation(_arg1:Number):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; _local2 = (1 - _arg1); _local3 = (_local2 * LUMA_R); _local4 = (_local2 * LUMA_G); _local5 = (_local2 * LUMA_B); concat([(_local3 + _arg1), _local4, _local5, 0, 0, _local3, (_local4 + _arg1), _local5, 0, 0, _local3, _local4, (_local5 + _arg1), 0, 0, 0, 0, 0, 1, 0]); } public function blend(_arg1:ColorMatrix, _arg2:Number):void{ var _local3:Number; var _local4:int; _local3 = (1 - _arg2); _local4 = 0; while (_local4 < 20) { matrix[_local4] = ((_local3 * Number(matrix[_local4])) + (_arg2 * Number(_arg1.matrix[_local4]))); _local4++; }; } public function setChannels(_arg1:int=1, _arg2:int=2, _arg3:int=4, _arg4:int=8):void{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local5 = (((((((_arg1 & 1) == 1)) ? 1 : ((0 + ((_arg1 & 2) == 2))) ? 1 : 0 + ((_arg1 & 4) == 4))) ? 1 : 0 + ((_arg1 & 8) == 8))) ? 1 : 0; if (_local5 > 0){ _local5 = (1 / _local5); }; _local6 = (((((((_arg2 & 1) == 1)) ? 1 : ((0 + ((_arg2 & 2) == 2))) ? 1 : 0 + ((_arg2 & 4) == 4))) ? 1 : 0 + ((_arg2 & 8) == 8))) ? 1 : 0; if (_local6 > 0){ _local6 = (1 / _local6); }; _local7 = (((((((_arg3 & 1) == 1)) ? 1 : ((0 + ((_arg3 & 2) == 2))) ? 1 : 0 + ((_arg3 & 4) == 4))) ? 1 : 0 + ((_arg3 & 8) == 8))) ? 1 : 0; if (_local7 > 0){ _local7 = (1 / _local7); }; _local8 = (((((((_arg4 & 1) == 1)) ? 1 : ((0 + ((_arg4 & 2) == 2))) ? 1 : 0 + ((_arg4 & 4) == 4))) ? 1 : 0 + ((_arg4 & 8) == 8))) ? 1 : 0; if (_local8 > 0){ _local8 = (1 / _local8); }; concat([(((_arg1 & 1) == 1)) ? _local5 : 0, (((_arg1 & 2) == 2)) ? _local5 : 0, (((_arg1 & 4) == 4)) ? _local5 : 0, (((_arg1 & 8) == 8)) ? _local5 : 0, 0, (((_arg2 & 1) == 1)) ? _local6 : 0, (((_arg2 & 2) == 2)) ? _local6 : 0, (((_arg2 & 4) == 4)) ? _local6 : 0, (((_arg2 & 8) == 8)) ? _local6 : 0, 0, (((_arg3 & 1) == 1)) ? _local7 : 0, (((_arg3 & 2) == 2)) ? _local7 : 0, (((_arg3 & 4) == 4)) ? _local7 : 0, (((_arg3 & 8) == 8)) ? _local7 : 0, 0, (((_arg4 & 1) == 1)) ? _local8 : 0, (((_arg4 & 2) == 2)) ? _local8 : 0, (((_arg4 & 4) == 4)) ? _local8 : 0, (((_arg4 & 8) == 8)) ? _local8 : 0, 0]); } public function randomize(_arg1:Number=1):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:Number; _local2 = (1 - _arg1); _local3 = (_local2 + (_arg1 * (Math.random() - Math.random()))); _local4 = (_arg1 * (Math.random() - Math.random())); _local5 = (_arg1 * (Math.random() - Math.random())); _local6 = ((_arg1 * 0xFF) * (Math.random() - Math.random())); _local7 = (_arg1 * (Math.random() - Math.random())); _local8 = (_local2 + (_arg1 * (Math.random() - Math.random()))); _local9 = (_arg1 * (Math.random() - Math.random())); _local10 = ((_arg1 * 0xFF) * (Math.random() - Math.random())); _local11 = (_arg1 * (Math.random() - Math.random())); _local12 = (_arg1 * (Math.random() - Math.random())); _local13 = (_local2 + (_arg1 * (Math.random() - Math.random()))); _local14 = ((_arg1 * 0xFF) * (Math.random() - Math.random())); concat([_local3, _local4, _local5, 0, _local6, _local7, _local8, _local9, 0, _local10, _local11, _local12, _local13, 0, _local14, 0, 0, 0, 1, 0]); } public function concat(_arg1:Array):void{ var _local2:Array; var _local3:int; var _local4:int; var _local5:int; _local2 = []; _local3 = 0; _local5 = 0; while (_local5 < 4) { _local4 = 0; while (_local4 < 5) { _local2[int((_local3 + _local4))] = (((((Number(_arg1[_local3]) * Number(matrix[_local4])) + (Number(_arg1[int((_local3 + 1))]) * Number(matrix[int((_local4 + 5))]))) + (Number(_arg1[int((_local3 + 2))]) * Number(matrix[int((_local4 + 10))]))) + (Number(_arg1[int((_local3 + 3))]) * Number(matrix[int((_local4 + 15))]))) + ((_local4 == 4)) ? Number(_arg1[int((_local3 + 4))]) : 0); _local4++; }; _local3 = (_local3 + 5); _local5++; }; matrix = _local2; } public function invert():void{ concat([-1, 0, 0, 0, 0xFF, 0, -1, 0, 0, 0xFF, 0, 0, -1, 0, 0xFF, 0, 0, 0, 1, 0]); } private function rotateColor(_arg1:Number, _arg2:int, _arg3:int):void{ var _local4:Array; _arg1 = (_arg1 * RAD); _local4 = IDENTITY.concat(); _local4[(_arg2 + (_arg2 * 5))] = (_local4[(_arg3 + (_arg3 * 5))] = Math.cos(_arg1)); _local4[(_arg3 + (_arg2 * 5))] = Math.sin(_arg1); _local4[(_arg2 + (_arg3 * 5))] = -(Math.sin(_arg1)); concat(_local4); } public function colorize(_arg1:int, _arg2:Number=1):void{ var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; _local3 = (((_arg1 >> 16) & 0xFF) / 0xFF); _local4 = (((_arg1 >> 8) & 0xFF) / 0xFF); _local5 = ((_arg1 & 0xFF) / 0xFF); _local6 = (1 - _arg2); concat([(_local6 + ((_arg2 * _local3) * LUMA_R)), ((_arg2 * _local3) * LUMA_G), ((_arg2 * _local3) * LUMA_B), 0, 0, ((_arg2 * _local4) * LUMA_R), (_local6 + ((_arg2 * _local4) * LUMA_G)), ((_arg2 * _local4) * LUMA_B), 0, 0, ((_arg2 * _local5) * LUMA_R), ((_arg2 * _local5) * LUMA_G), (_local6 + ((_arg2 * _local5) * LUMA_B)), 0, 0, 0, 0, 0, 1, 0]); } public function rgb2Alpha(_arg1:Number, _arg2:Number, _arg3:Number):void{ concat([0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, 0, 0, 0, 0, 0xFF, _arg1, _arg2, _arg3, 0, 0]); } public function get filter():ColorMatrixFilter{ return (new ColorMatrixFilter(matrix)); } public function shearBlue(_arg1:Number, _arg2:Number):void{ shearColor(2, 0, _arg1, 1, _arg2); } public function setAlpha(_arg1:Number):void{ concat([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, _arg1, 0]); } public function rotateHue(_arg1:Number):void{ initHue(); concat(preHue.matrix); rotateBlue(_arg1); concat(postHue.matrix); } public function reset():void{ matrix = IDENTITY.concat(); } private function initHue():void{ var _local1:Number; var _local2:Array; var _local3:Number; var _local4:Number; _local1 = 39.182655; if (!hueInitialized){ hueInitialized = true; preHue = new ColorMatrix(); preHue.rotateRed(45); preHue.rotateGreen(-(_local1)); _local2 = [LUMA_R2, LUMA_G2, LUMA_B2, 1]; preHue.transformVector(_local2); _local3 = (_local2[0] / _local2[2]); _local4 = (_local2[1] / _local2[2]); preHue.shearBlue(_local3, _local4); postHue = new ColorMatrix(); postHue.shearBlue(-(_local3), -(_local4)); postHue.rotateGreen(_local1); postHue.rotateRed(-45); }; } public function shearGreen(_arg1:Number, _arg2:Number):void{ shearColor(1, 0, _arg1, 2, _arg2); } public function shearRed(_arg1:Number, _arg2:Number):void{ shearColor(0, 1, _arg1, 2, _arg2); } public function clone():ColorMatrix{ return (new ColorMatrix(matrix)); } public function applyMatrix(_arg1:uint):uint{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:int; var _local7:int; var _local8:int; var _local9:int; _local2 = ((_arg1 >>> 24) & 0xFF); _local3 = ((_arg1 >>> 16) & 0xFF); _local4 = ((_arg1 >>> 8) & 0xFF); _local5 = (_arg1 & 0xFF); _local6 = (((((0.5 + (_local3 * matrix[0])) + (_local4 * matrix[1])) + (_local5 * matrix[2])) + (_local2 * matrix[3])) + matrix[4]); _local7 = (((((0.5 + (_local3 * matrix[5])) + (_local4 * matrix[6])) + (_local5 * matrix[7])) + (_local2 * matrix[8])) + matrix[9]); _local8 = (((((0.5 + (_local3 * matrix[10])) + (_local4 * matrix[11])) + (_local5 * matrix[12])) + (_local2 * matrix[13])) + matrix[14]); _local9 = (((((0.5 + (_local3 * matrix[15])) + (_local4 * matrix[16])) + (_local5 * matrix[17])) + (_local2 * matrix[18])) + matrix[19]); if (_local9 < 0){ _local9 = 0; }; if (_local9 > 0xFF){ _local9 = 0xFF; }; if (_local6 < 0){ _local6 = 0; }; if (_local6 > 0xFF){ _local6 = 0xFF; }; if (_local7 < 0){ _local7 = 0; }; if (_local7 > 0xFF){ _local7 = 0xFF; }; if (_local8 < 0){ _local8 = 0; }; if (_local8 > 0xFF){ _local8 = 0xFF; }; return (((((_local9 << 24) | (_local6 << 16)) | (_local7 << 8)) | _local8)); } public function invertAlpha():void{ concat([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -1, 0xFF]); } public function adjustHue(_arg1:Number):void{ var _local2:Number; var _local3:Number; _arg1 = (_arg1 * RAD); _local2 = Math.cos(_arg1); _local3 = Math.sin(_arg1); concat([((LUMA_R + (_local2 * (1 - LUMA_R))) + (_local3 * -(LUMA_R))), ((LUMA_G + (_local2 * -(LUMA_G))) + (_local3 * -(LUMA_G))), ((LUMA_B + (_local2 * -(LUMA_B))) + (_local3 * (1 - LUMA_B))), 0, 0, ((LUMA_R + (_local2 * -(LUMA_R))) + (_local3 * 0.143)), ((LUMA_G + (_local2 * (1 - LUMA_G))) + (_local3 * 0.14)), ((LUMA_B + (_local2 * -(LUMA_B))) + (_local3 * -0.283)), 0, 0, ((LUMA_R + (_local2 * -(LUMA_R))) + (_local3 * -((1 - LUMA_R)))), ((LUMA_G + (_local2 * -(LUMA_G))) + (_local3 * LUMA_G)), ((LUMA_B + (_local2 * (1 - LUMA_B))) + (_local3 * LUMA_B)), 0, 0, 0, 0, 0, 1, 0]); } public function threshold(_arg1:Number, _arg2:Number=0x0100):void{ concat([(LUMA_R * _arg2), (LUMA_G * _arg2), (LUMA_B * _arg2), 0, (-(_arg2) * _arg1), (LUMA_R * _arg2), (LUMA_G * _arg2), (LUMA_B * _arg2), 0, (-(_arg2) * _arg1), (LUMA_R * _arg2), (LUMA_G * _arg2), (LUMA_B * _arg2), 0, (-(_arg2) * _arg1), 0, 0, 0, 1, 0]); } public function average(_arg1:Number=0.333333333333333, _arg2:Number=0.333333333333333, _arg3:Number=0.333333333333333):void{ concat([_arg1, _arg2, _arg3, 0, 0, _arg1, _arg2, _arg3, 0, 0, _arg1, _arg2, _arg3, 0, 0, 0, 0, 0, 1, 0]); } public function rotateBlue(_arg1:Number):void{ rotateColor(_arg1, 1, 0); } public function rotateGreen(_arg1:Number):void{ rotateColor(_arg1, 0, 2); } public function adjustContrast(_arg1:Number, _arg2:Number=NaN, _arg3:Number=NaN):void{ if (isNaN(_arg2)){ _arg2 = _arg1; }; if (isNaN(_arg3)){ _arg3 = _arg1; }; _arg1 = (_arg1 + 1); _arg2 = (_arg2 + 1); _arg3 = (_arg3 + 1); concat([_arg1, 0, 0, 0, (128 * (1 - _arg1)), 0, _arg2, 0, 0, (128 * (1 - _arg2)), 0, 0, _arg3, 0, (128 * (1 - _arg3)), 0, 0, 0, 1, 0]); } public function transformVector(_arg1:Array):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; if (_arg1.length != 4){ return; }; _local2 = (((((_arg1[0] * matrix[0]) + (_arg1[1] * matrix[1])) + (_arg1[2] * matrix[2])) + (_arg1[3] * matrix[3])) + matrix[4]); _local3 = (((((_arg1[0] * matrix[5]) + (_arg1[1] * matrix[6])) + (_arg1[2] * matrix[7])) + (_arg1[3] * matrix[8])) + matrix[9]); _local4 = (((((_arg1[0] * matrix[10]) + (_arg1[1] * matrix[11])) + (_arg1[2] * matrix[12])) + (_arg1[3] * matrix[13])) + matrix[14]); _local5 = (((((_arg1[0] * matrix[15]) + (_arg1[1] * matrix[16])) + (_arg1[2] * matrix[17])) + (_arg1[3] * matrix[18])) + matrix[19]); _arg1[0] = _local2; _arg1[1] = _local3; _arg1[2] = _local4; _arg1[3] = _local5; } public function setMultiplicators(_arg1:Number=1, _arg2:Number=1, _arg3:Number=1, _arg4:Number=1):void{ var _local5:Array; _local5 = new Array(_arg1, 0, 0, 0, 0, 0, _arg2, 0, 0, 0, 0, 0, _arg3, 0, 0, 0, 0, 0, _arg4, 0); concat(_local5); } public function desaturate():void{ concat([LUMA_R, LUMA_G, LUMA_B, 0, 0, LUMA_R, LUMA_G, LUMA_B, 0, 0, LUMA_R, LUMA_G, LUMA_B, 0, 0, 0, 0, 0, 1, 0]); } public function thresholdAlpha(_arg1:Number, _arg2:Number=0x0100):void{ concat([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, _arg2, (-(_arg2) * _arg1)]); } private function shearColor(_arg1:int, _arg2:int, _arg3:Number, _arg4:int, _arg5:Number):void{ var _local6:Array; _local6 = IDENTITY.concat(); _local6[(_arg2 + (_arg1 * 5))] = _arg3; _local6[(_arg4 + (_arg1 * 5))] = _arg5; concat(_local6); } public function clearChannels(_arg1:Boolean=false, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Boolean=false):void{ if (_arg1){ matrix[0] = (matrix[1] = (matrix[2] = (matrix[3] = (matrix[4] = 0)))); }; if (_arg2){ matrix[5] = (matrix[6] = (matrix[7] = (matrix[8] = (matrix[9] = 0)))); }; if (_arg3){ matrix[10] = (matrix[11] = (matrix[12] = (matrix[13] = (matrix[14] = 0)))); }; if (_arg4){ matrix[15] = (matrix[16] = (matrix[17] = (matrix[18] = (matrix[19] = 0)))); }; } public function applyColorDeficiency(_arg1:String):void{ switch (_arg1){ case "Protanopia": concat([0.567, 0.433, 0, 0, 0, 0.558, 0.442, 0, 0, 0, 0, 0.242, 0.758, 0, 0, 0, 0, 0, 1, 0]); break; case "Protanomaly": concat([0.817, 0.183, 0, 0, 0, 0.333, 0.667, 0, 0, 0, 0, 0.125, 0.875, 0, 0, 0, 0, 0, 1, 0]); break; case "Deuteranopia": concat([0.625, 0.375, 0, 0, 0, 0.7, 0.3, 0, 0, 0, 0, 0.3, 0.7, 0, 0, 0, 0, 0, 1, 0]); break; case "Deuteranomaly": concat([0.8, 0.2, 0, 0, 0, 0.258, 0.742, 0, 0, 0, 0, 0.142, 0.858, 0, 0, 0, 0, 0, 1, 0]); break; case "Tritanopia": concat([0.95, 0.05, 0, 0, 0, 0, 0.433, 0.567, 0, 0, 0, 0.475, 0.525, 0, 0, 0, 0, 0, 1, 0]); break; case "Tritanomaly": concat([0.967, 0.033, 0, 0, 0, 0, 0.733, 0.267, 0, 0, 0, 0.183, 0.817, 0, 0, 0, 0, 0, 1, 0]); break; case "Achromatopsia": concat([0.299, 0.587, 0.114, 0, 0, 0.299, 0.587, 0.114, 0, 0, 0.299, 0.587, 0.114, 0, 0, 0, 0, 0, 1, 0]); break; case "Achromatomaly": concat([0.618, 0.32, 0.062, 0, 0, 0.163, 0.775, 0.062, 0, 0, 0.163, 0.32, 0.516, 0, 0, 0, 0, 0, 1, 0]); break; }; } } }//package main
Section 37
//dynObject (main.dynObject) package main { import flash.geom.*; public dynamic class dynObject extends baseObject { const MAX_SPEED:Number = 4; const MIN_SPEED:Number = 1; const DROP_RADIUS:Number = 100; public var RotTarget:Vector; public var CurPathPoint:Number;// = 1 public var zoomedIn:Boolean;// = false public var explodeSize:Number;// = 85 public var notTargetRotate:Boolean;// = false public var zoomedFinal:Number; var points:Object; public var Velocity:Vector; public var FlyByPath:Boolean;// = false public var CurPoint:Point; public var zoomEffect:Number;// = 0.08 public var VelocitySpd:Number;// = 3 public var hunted:Boolean;// = false public var MaxPathPoint:Number;// = 0 public var rotateSpeed:Number;// = 10 public var zoomed:Boolean;// = false public var rot:Number; public var alphaEffectMaxScale:Number;// = 1 public function dynObject(){ explodeSize = 85; alphaEffectMaxScale = 1; VelocitySpd = 3; zoomed = false; zoomedIn = false; notTargetRotate = false; zoomEffect = 0.08; rotateSpeed = 10; hunted = false; FlyByPath = false; CurPathPoint = 1; MaxPathPoint = 0; super(); Velocity = new Vector(); RotTarget = new Vector(); CurPoint = new Point(); rot = 0; } public function setRotTarget(_arg1:Number, _arg2:Number):void{ RotTarget.x = _arg1; RotTarget.y = _arg2; } public function getPointGlobal(_arg1:String):Point{ return (points[_arg1]); } public function updateZoom():Boolean{ if (zoomedIn){ scaleX = (scaleX + zoomEffect); scaleY = (scaleY + zoomEffect); recalcRadius(); if ((((scaleX >= zoomedFinal)) || ((scaleY >= zoomedFinal)))){ scaleX = zoomedFinal; scaleY = zoomedFinal; recalcRadius(); zoomed = false; return (true); }; } else { scaleX = (scaleX - zoomEffect); scaleY = (scaleY - zoomEffect); recalcRadius(); if ((((scaleX <= zoomedFinal)) || ((scaleY <= zoomedFinal)))){ scaleX = zoomedFinal; scaleY = zoomedFinal; recalcRadius(); zoomed = false; return (true); }; }; return (false); } override public function toString():String{ return ("dynObject"); } public function setRotToVelocity():void{ setRotTarget(((Velocity.x * 6) + x), ((Velocity.y * 6) + y)); } public function behaviorType():String{ return ("none"); } public function mulVelocity(_arg1:Number){ Velocity.mulScalar(_arg1); } public function update():void{ rotate(); move(); } public function drop(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:Number; x = (_arg1 + ((Math.random() - 0.5) * DROP_RADIUS)); y = (_arg2 + ((Math.random() - 0.5) * DROP_RADIUS)); Velocity.setMembers((_arg3 - x), (_arg4 - y)); _local5 = (MIN_SPEED + ((MAX_SPEED - MIN_SPEED) * Math.random())); Velocity.mulScalar((_local5 / Velocity.magnitude())); } public function startZoom(_arg1:Boolean, _arg2:Number, _arg3:Number){ zoomed = true; zoomedIn = _arg1; scaleX = _arg2; scaleY = _arg2; zoomedFinal = _arg3; } public function rotate():void{ var _local1:Vector; var _local2:Number; var _local3:Number; rotation = (rotation + rot); if (!notTargetRotate){ _local1 = new Vector((RotTarget.x - x), (RotTarget.y - y)); _local2 = ((_local1.getDirection() - rotation) + 90); if (_local2 > 180){ _local2 = (_local2 - 360); } else { if (_local2 < -180){ _local2 = (_local2 + 360); }; }; if (Math.abs(_local2) > 0){ _local3 = rotateSpeed; rotation = (rotation + ((Math.abs(_local2) > _local3)) ? ((_local2 > 0)) ? _local3 : -(_local3) : _local2); }; }; } public function setVelocity(_arg1:Number, _arg2:Number, _arg3:Number){ Velocity.setMembers(_arg1, _arg2); Velocity.mulScalar((_arg3 / Velocity.magnitude())); } public function subType():String{ return ("none"); } public function move():void{ x = (x + Velocity.x); y = (y + Velocity.y); } public function getPoint(_arg1:String):Point{ return (localToGlobal(points[_arg1])); } } }//package main
Section 38
//enemyHunter (main.enemyHunter) package main { public dynamic class enemyHunter extends dynObject { public function enemyHunter(){ hunted = true; } override public function toString():String{ return ("enemy"); } } }//package main
Section 39
//enemyMiner (main.enemyMiner) package main { public dynamic class enemyMiner extends turret { public function enemyMiner(){ maxShootSeria = 20; curShootSeria = 0; timeShoot = 160; timeReload = 4000; forceRotToVelocity = true; alphaEffectMaxScale = 0.5; } override public function toString():String{ return ("enemy"); } override public function behaviorType():String{ return ("enemyMiner"); } } }//package main
Section 40
//enemySaw (main.enemySaw) package main { import flash.geom.*; public dynamic class enemySaw extends dynObject { public function enemySaw(){ var _local1:Number; var _local2:Boolean; var _local3:Boolean; super(); notTargetRotate = true; rot = 25; alphaEffectMaxScale = 0.8; FlyByPath = true; CurPathPoint = 1; MaxPathPoint = 30; points = new Object(); _local1 = 1; while (_local1 <= MaxPathPoint) { _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); points[("path" + _local1)] = new Point((_local2) ? Random(0, 150) : Random(350, 450), (_local3) ? Random(0, 150) : Random(300, 400)); _local1++; }; zoomEffect = 0.01; VelocitySpd = 12; } override public function toString():String{ return ("enemy"); } } }//package main
Section 41
//enemySwirl (main.enemySwirl) package main { import flash.geom.*; public dynamic class enemySwirl extends turret { public function enemySwirl(){ addFrameScript(0, frame1); notTargetRotate = true; rot = 4; zoomEffect = 0.01; VIPNotCollision = true; points = new Object(); points["part1"] = new Point(-88.8, -16.1); points["part2"] = new Point(88.8, 16.1); points["part3"] = new Point(16.1, -87.7); points["part4"] = new Point(-16.1, 87.7); points["shoot_pnt1"] = new Point((-88.8 - 20), -16.1); points["shoot_pnt2"] = new Point((88.8 + 20), 16.1); points["shoot_pnt3"] = new Point(16.1, (-87.7 - 20)); points["shoot_pnt4"] = new Point(-16.1, (87.7 + 20)); maxShootSeria = 4; curShootSeria = 0; timeShoot = 80; timeReload = 2000; dontTargeting = true; alphaEffectMaxScale = 0.5; LifeBarMax = 4; LifeBar = 0; useLifeBar = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("enemySwirl"); } } }//package main
Section 42
//enemySwirlPart (main.enemySwirlPart) package main { public dynamic class enemySwirlPart extends proj { } }//package main
Section 43
//enemyWeak (main.enemyWeak) package main { public dynamic class enemyWeak extends dynObject { override public function toString():String{ return ("enemy"); } } }//package main
Section 44
//enemyWeakGreen (main.enemyWeakGreen) package main { public dynamic class enemyWeakGreen extends dynObject { override public function toString():String{ return ("enemy"); } override public function subType():String{ return ("enemyWeakGreen"); } } }//package main
Section 45
//enemyWeakPink (main.enemyWeakPink) package main { public dynamic class enemyWeakPink extends dynObject { override public function toString():String{ return ("enemy"); } override public function subType():String{ return ("enemyWeakPink"); } } }//package main
Section 46
//explode (main.explode) package main { public dynamic class explode extends dynObject { var chainCount:Number; var maxSize:Number; public function explode(){ chainCount = 0; maxSize = 0; } override public function toString():String{ return ("explode"); } public function updateExp():Boolean{ if (width < maxSize){ scaleX = (scaleX + 0.2); scaleY = (scaleY + 0.2); recalcRadius(); return (false); }; return (true); } public function updateExpDecr():Boolean{ if (width > 0){ scaleX = (scaleX - 0.2); scaleY = (scaleY - 0.2); recalcRadius(); return (false); }; return (true); } public function blast(_arg1:Number, _arg2:Number){ chainCount = (_arg1 + 1); maxSize = _arg2; } } }//package main
Section 47
//game (main.game) package main { import flash.filters.*; import flash.display.*; import flash.events.*; import flash.utils.*; import flash.geom.*; import flash.net.*; import flash.media.*; import flash.text.*; import fl.motion.*; public class game extends MovieClip { const SCR_RAD:Number; const SCR_H:Number = 400; const SCR_W:Number = 550; const COUPLE_OFFSET:Number = 18; public var menuDiff:menuDiff; public var press_space;// = false var greenBonusLevel:Number;// = 1 var paramPinkStartRespawnTime:Number;// = 12000 public var press_up;// = false var paramEnemyStepSpeed:Number;// = 1 var LevelSubStage:Number;// = 0 var timerFreePlay:Timer; public var menuFreeplay:menuFreePlay; var inGameHlpLev:Number;// = 0 var paramNoEnemyGreen:Boolean;// = false var totalBonusCnt:Number;// = 0 var curDeath:Number;// = 0 var isExpSound:Boolean;// = true public var bg:background; var timerMiner:Timer; var SubStageFinalTime:Number;// = 0 var curBossBonus:Number;// = 0 public var playerObj:player; public var playedAPI:MovieClip; public var menuScores:menuScores; public var menuGameOver:menuGameOver; var curExtraBonus:Number;// = 0 var timerExpSoundDelay:Timer; public var pauseMenu:pauseMenu; var curChainBonus:Number;// = 0 var timerSaw:Timer; public var textLevInfo:TextField; var SubStageCurTime:Number;// = 0 public var ingame:Boolean;// = false var maxStageLifeCount:Number;// = 0 public var press_left;// = false var paramCoupleMinRespawnTime:Number;// = 500 var timerTurret:Timer; var paramMaxEnemySpeed:Number;// = 7 public var mainMenu:menuiMain; var SubStageTime:Boolean;// = true var easyMode:Boolean;// = false var MIN_DROP:Number; public var gl:MovieClip; var paramStartEnemyMinSpeed:Number;// = 2 var MAX_DROP:Number; public var press_down;// = false public var press_right;// = false var timerRestart:Timer; var timerHunter:Timer; public var soundChannel:SoundChannel; var lastScoreAnimStage:Number;// = 0 var timerTurretHeavy:Timer; var dynObjArray:Array; var paramCoupleStepRespawnTime:Number;// = 200 var SubStageTimer:Timer; public var menuHelp:menuHelp; var paramCoupleStartRespawnTime:Number;// = 2000 public var playerActive:Boolean;// = true public var gameProgressBar:MovieClip; var curDirectBonus:Number;// = 0 var SubStageKillVIP:Boolean;// = false var curLenBonus:Number;// = 0 var timerEnemyPink:Timer; public var textScore:TextField; var paramStartEnemyMaxSpeed:Number;// = 5 var totalDeath:Number;// = 0 public var levEndScreen:levcompScreen; public var lifeIcon:player; var paramNoEnemyPink:Boolean;// = false var player_life:Number; public var game_snd:sounds; var timerProjSoundDelay:Timer; var timerCouple:Timer; public var gamepaused:Boolean;// = false public var buttPauseMenu:SimpleButton; var isProjSound:Boolean;// = true public var longChain:longChain; var timerHunter2:Timer; public var menuRestart:menuFader; public var gameMessage:gameMessage; var paramEnemyCurMaxSpeed:Number;// = 5 var player_combo_kill:Number;// = 0 var player_score:Number;// = 0 var inGameHlp:Boolean;// = false public var hlp1:inGameHlp; public var textLife:TextField; public var hlp2:inGameHlp; public var hlp3:inGameHlp; var timerEndLevel:Timer; public var playerAura:aura; var LevelStage:Number;// = 0 var SubStageVIPCount:Number;// = 0 public var game_mus:Object; public function game(){ var _local1:dynObject; var _local2:Number; var _local3:SoundTransform; var _local4:String; var _local5:URLRequest; var _local6:Loader; SCR_RAD = (Math.floor(((SCR_W + SCR_H) / 4)) * 1.5); lastScoreAnimStage = 0; inGameHlp = false; inGameHlpLev = 0; easyMode = false; press_left = false; press_right = false; press_up = false; press_down = false; press_space = false; gamepaused = false; ingame = false; isExpSound = true; isProjSound = true; playerActive = true; player_score = 0; player_combo_kill = 0; curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; totalDeath = 0; totalBonusCnt = 0; greenBonusLevel = 1; paramCoupleStartRespawnTime = 2000; paramCoupleMinRespawnTime = 500; paramCoupleStepRespawnTime = 200; paramPinkStartRespawnTime = 12000; paramStartEnemyMinSpeed = 2; paramStartEnemyMaxSpeed = 5; paramEnemyCurMaxSpeed = 5; paramEnemyStepSpeed = 1; paramMaxEnemySpeed = 7; paramNoEnemyGreen = false; paramNoEnemyPink = false; LevelStage = 0; LevelSubStage = 0; SubStageTime = true; SubStageCurTime = 0; SubStageFinalTime = 0; SubStageKillVIP = false; SubStageVIPCount = 0; maxStageLifeCount = 0; super(); addFrameScript(0, frame1); if (mainGlobal.isPlayedonline){ _local4 = "http://www.playedonline.com/playedAPI.swf"; _local5 = new URLRequest(_local4); _local6 = new Loader(); _local6.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); _local6.load(_local5); }; dynObjArray = new Array(); game_snd = new sounds(); game_snd.init(SCR_W, SCR_H); soundChannel = new SoundChannel(); game_mus = new Object(); game_mus["music1"] = new music1(); game_mus["music2"] = new music2(); game_mus["snd_boss_beat1"] = new snd_boss_beat1(); game_mus["snd_boss_beat2"] = new snd_boss_beat2(); game_mus["snd_boss_beat3"] = new snd_boss_beat3(); _local3 = new SoundTransform(); _local3.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local3); dropPlayer((SCR_W / 2), (SCR_H / 2)); gameMessage.addMessage(""); levEndScreen.visible = false; pauseMenu.visible = false; menuScores.visible = false; menuHelp.visible = false; menuRestart.visible = false; menuDiff.visible = false; menuFreeplay.visible = false; menuGameOver.visible = false; longChain.visible = false; player_score = 0; player_life = 3; hlp1.gotoAndStop(1); hlp2.gotoAndStop(2); hlp3.gotoAndStop(3); addEventListener(Event.ENTER_FRAME, Update); addEventListener(MouseEvent.MOUSE_MOVE, MouseMove); addEventListener(MouseEvent.MOUSE_DOWN, MouseDown); parent.stage.addEventListener(KeyboardEvent.KEY_DOWN, key_down); parent.stage.addEventListener(KeyboardEvent.KEY_UP, key_up); timerExpSoundDelay = new Timer(50, 1); timerExpSoundDelay.addEventListener(TimerEvent.TIMER, timerExpSoundDelay_Timer); timerProjSoundDelay = new Timer(50, 1); timerProjSoundDelay.addEventListener(TimerEvent.TIMER, timerProjSoundDelay_Timer); timerEndLevel = new Timer(4000, 1); timerEndLevel.stop(); timerEndLevel.addEventListener(TimerEvent.TIMER, timerEndLevel_Timer); timerRestart = new Timer(3000, 1); timerRestart.stop(); timerRestart.addEventListener(TimerEvent.TIMER, timerRestart_Timer); timerCouple = new Timer(paramCoupleStartRespawnTime); timerCouple.start(); timerCouple.addEventListener(TimerEvent.TIMER, timerCouple_Timer); timerEnemyPink = new Timer(paramPinkStartRespawnTime); timerEnemyPink.start(); timerEnemyPink.addEventListener(TimerEvent.TIMER, timerEnemyPink_Timer); SubStageTimer = new Timer(1000); SubStageTimer.addEventListener(TimerEvent.TIMER, SubStage_Timer); timerTurret = new Timer(9000); timerTurret.stop(); timerTurret.addEventListener(TimerEvent.TIMER, timerTurret_Timer); timerTurretHeavy = new Timer(14000); timerTurretHeavy.stop(); timerTurretHeavy.addEventListener(TimerEvent.TIMER, timerTurretHeavy_Timer); timerHunter = new Timer(8000); timerHunter.stop(); timerHunter.addEventListener(TimerEvent.TIMER, timerHunter_Timer); timerHunter2 = new Timer(4000); timerHunter2.stop(); timerHunter2.addEventListener(TimerEvent.TIMER, timerHunter_Timer); timerMiner = new Timer(9000); timerMiner.stop(); timerMiner.addEventListener(TimerEvent.TIMER, timerMiner_Timer); timerSaw = new Timer(11000); timerSaw.stop(); timerSaw.addEventListener(TimerEvent.TIMER, timerSaw_Timer); timerFreePlay = new Timer(8000); timerFreePlay.stop(); timerFreePlay.addEventListener(TimerEvent.TIMER, timerFreePlay_Timer); } public function MouseMove(_arg1:MouseEvent):void{ } public function buttRestartNo_Click(_arg1:MouseEvent):void{ inGameHlp = false; ingame = false; menuRestart.startFadeOut(); mainMenu.start(); PlaySnd("snd_Menu2", playerObj); } function Distance(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:Number; var _local6:Number; _local5 = (_arg3 - _arg1); _local6 = (_arg4 - _arg2); return (Math.sqrt(((_local5 * _local5) + (_local6 * _local6)))); } public function dropBossFighter(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; _local3 = new bossFighter(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local4.push(new GlowFilter(0xFF00, 1, 15, 15, 1, 2)); _local3.filters = _local4; _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function loadComplete(_arg1:Event):void{ var _local2:String; playedAPI = MovieClip(_arg1.target.content); _local2 = LoaderInfo(this.root.loaderInfo).parameters.sessionID; playedAPI.init(597306, _local2, "6c4a613a616d45322039313232597065"); } public function RemapVal(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ return ((_arg4 + (((_arg5 - _arg4) * (_arg1 - _arg2)) / (_arg3 - _arg2)))); } public function key_up(_arg1:KeyboardEvent){ if (_arg1.keyCode == 32){ press_space = false; }; if ((((_arg1.keyCode == 37)) || ((_arg1.keyCode == 65)))){ press_left = false; }; if ((((_arg1.keyCode == 38)) || ((_arg1.keyCode == 87)))){ press_up = false; }; if ((((_arg1.keyCode == 39)) || ((_arg1.keyCode == 68)))){ press_right = false; }; if ((((_arg1.keyCode == 40)) || ((_arg1.keyCode == 83)))){ press_down = false; }; } public function buttBack_Click(_arg1:MouseEvent):void{ menuDiff.startFadeOut(); mainMenu.start(); PlaySnd("snd_Menu2", playerObj); } public function dropEnemySwirlX2(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; var _local5:ColorMatrix; _local3 = new enemySwirl(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local5 = new ColorMatrix(); _local5.adjustHue(180); _local3.timeReload = 2500; _local4.push(new ColorMatrixFilter(_local5.matrix)); _local3.filters = _local4; _local3.startZoom(true, 0, 0.5); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function buttPauseMenu_Click(_arg1:MouseEvent):void{ if (player_life < 0){ return; }; this.gamepaused = !(this.gamepaused); PlaySnd("snd_Menu2", playerObj); if (gamepaused){ pauseMenu.visible = true; hideGui(); } else { pauseMenu.visible = false; showGui(); }; } public function dropEnemySwirlX1(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; var _local5:ColorMatrix; _local3 = new enemySwirl(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local5 = new ColorMatrix(); _local5.adjustHue(180); _local5.adjustBrightness(-50); _local4.push(new ColorMatrixFilter(_local5.matrix)); _local3.filters = _local4; _local3.NoBonus = true; _local3.timeReload = 2500; _local3.startZoom(true, 0, 0.5); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function timerFreePlay_Timer(_arg1:TimerEvent):void{ var _local2:int; var _local3:int; var _local4:Number; var _local5:Number; var _local6:dynObject; var _local7:Boolean; var _local8:Boolean; _local2 = Math.round(Random(1, 3)); if (_local2 == 1){ _local3 = Math.round(Random(0, 5)); if (_local3 == 0){ timerTurret_Timer(_arg1); } else { if (_local3 == 1){ timerTurretHeavy_Timer(_arg1); } else { if (_local3 == 2){ timerSaw_Timer(_arg1); } else { if (_local3 == 3){ timerMiner_Timer(_arg1); } else { if (_local3 >= 4){ timerHunter_Timer(_arg1); }; }; }; }; }; timerFreePlay.stop(); timerFreePlay.delay = Math.round(Random(100, 4000)); timerFreePlay.start(); } else { if (_local2 == 2){ _local3 = Math.round(Random(0, 2)); if (_local3 == 0){ dropEnemySwirl(Random(100, 450), Random(100, 300)); } else { if (_local3 == 1){ _local4 = Random(100, 450); _local5 = Random(100, 300); _local6 = dropEnemySwirlX1(_local4, _local5); _local6 = dropEnemySwirlX2(_local4, _local5); _local6.rotation = -45; _local6.rot = -(_local6.rot); } else { if (_local3 >= 2){ _local7 = Boolean(Random(0, 1)); _local8 = Boolean(Random(0, 1)); _local6 = dropBossFighterTurret((_local7) ? Random(-100, 0) : Random(550, 650), (_local8) ? Random(-100, 0) : Random(450, 550)); _local7 = Boolean(Random(0, 1)); _local8 = Boolean(Random(0, 1)); _local6 = dropBossFighterTurret((_local7) ? Random(-100, 0) : Random(550, 650), (_local8) ? Random(-100, 0) : Random(450, 550)); _local7 = Boolean(Random(0, 1)); _local8 = Boolean(Random(0, 1)); _local6 = dropBossFighterTurret((_local7) ? Random(-100, 0) : Random(550, 650), (_local8) ? Random(-100, 0) : Random(450, 550)); }; }; }; timerFreePlay.stop(); timerFreePlay.delay = Math.round(Random(4000, 12000)); timerFreePlay.start(); } else { if (_local2 >= 3){ _local3 = Math.round(Random(0, 3)); if (_local3 == 0){ dropBossProgressor(Random(100, 450), Random(100, 300)); } else { if (_local3 == 1){ dropBossSeeder(Random(100, 450), Random(100, 300)); } else { if (_local3 == 2){ dropBossFighter(Random(100, 450), Random(100, 300)); } else { if (_local3 >= 3){ dropBossDevastator(Random(100, 450), Random(100, 300)); }; }; }; }; timerFreePlay.stop(); timerFreePlay.delay = Math.round(Random(12000, 18000)); timerFreePlay.start(); }; }; }; } public function dropBonus(_arg1:Number, _arg2:dynObject):void{ var _local3:dynObject; var _local4:Array; if (_arg1 == 1){ _local3 = new bonusGreen(); } else { if (_arg1 == 2){ _local3 = new bonusPink(); } else { if (_arg1 == 3){ _local3 = new bonusBrown(); }; }; }; _local3.x = _arg2.x; _local3.y = _arg2.y; if (_arg2.Velocity.magnitude() < 0.1){ _local3.Velocity = new Vector(Random(-1, 1), Random(-1, 1)); } else { _local3.Velocity = _arg2.Velocity; _local3.Velocity.mulScalar(0.5); }; _local3.width = 15; _local3.height = 15; _local3.recalcRadius(); _local4 = new Array(); if (_arg1 == 2){ _local4.push(new GlowFilter(13382655, 1, 15, 15, 1.7, 1)); } else { if (_arg1 == 1){ _local4.push(new GlowFilter(0x339900, 1, 15, 15, 1.7, 1)); } else { if (_arg1 == 3){ _local4.push(new GlowFilter(0xFF6600, 1, 15, 15, 1.7, 1)); }; }; }; _local3.filters = _local4; gl.addChild(_local3); dynObjArray.push(_local3); } public function hideGui():void{ lifeIcon.visible = false; textScore.visible = false; textLife.visible = false; gameProgressBar.visible = false; gameMessage.visible = false; buttPauseMenu.visible = false; textLevInfo.visible = false; } public function restartLevel(_arg1:Number, _arg2:Number=1){ showGui(); playerActive = true; playerObj.visible = true; playerAura.visible = true; startStage(_arg1, _arg2, true); PlaySnd("snd_drop", playerObj); removeAllObjs(); ingame = true; player_score = 0; curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; totalDeath = 0; totalBonusCnt = 0; player_life = (easyMode) ? 5 : 3; timerFreePlay.stop(); } public function dropPlayer(_arg1:Number, _arg2:Number):void{ var _local3:Array; playerAura = new aura(); playerAura.x = 99999; playerAura.y = 99999; gl.addChild(playerAura); playerObj = new player(); playerObj.x = _arg1; playerObj.y = _arg2; playerObj.startZoom(false, 5, 1); _local3 = new Array(); _local3.push(new GlowFilter(0xFF00, 1, 15, 15, 1, 3)); playerObj.filters = _local3; gl.addChild(playerObj); } public function timerEnemyPink_Timer(_arg1:TimerEvent):void{ var _local2:Number; var _local3:Number; var _local4:Vector; var _local5:Vector; var _local6:Number; if (gamepaused){ return; }; if (paramNoEnemyPink){ return; }; _local4 = new Vector(); _local5 = new Vector(); _local2 = 0; _local3 = -(SCR_RAD); _local6 = (((360 * (Math.random() - 0.5)) / 180) * Math.PI); _local4.x = (_local4.x + ((_local2 * Math.cos(_local6)) - (_local3 * Math.sin(_local6)))); _local4.y = (_local4.y + ((_local2 * Math.sin(_local6)) + (_local3 * Math.cos(_local6)))); _local5.x = (_local5.x + ((_local2 * Math.cos((Math.PI + _local6))) - (_local3 * Math.sin((Math.PI + _local6))))); _local5.y = (_local5.y + ((_local2 * Math.sin((Math.PI + _local6))) + (_local3 * Math.cos((Math.PI + _local6))))); dropPink((_local4.x + (SCR_W / 2)), (_local4.y + (SCR_H / 2)), (_local5.x + (SCR_W / 2)), (_local5.y + (SCR_H / 2)), Random(paramStartEnemyMinSpeed, paramStartEnemyMaxSpeed)); } public function buttContinue_Click(_arg1:MouseEvent):void{ this.gamepaused = false; pauseMenu.visible = false; showGui(); PlaySnd("snd_Menu2", playerObj); } public function dropTurret(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; _local3 = new turretLite(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 24; _local3.height = 24; _local3.recalcRadius(); _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function sponsorLogoClick_Click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://playedonline.com?campaign=8bit&utm_campaign=8bit&utm_medium=in_game&utm_source=8bit"), "_blank"); } public function removeAllObjs():void{ var _local1:dynObject; var _local2:Boolean; while (1) { _local2 = false; for each (_local1 in dynObjArray) { removeObject(_local1); _local2 = true; }; if (!_local2){ break; }; }; } public function MouseDown(_arg1:MouseEvent):void{ menuEvents(); } public function dropMiner(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local6:dynObject; var _local7:Number; var _local8:Number; var _local9:Vector; _local9 = new Vector((_arg3 - _arg1), (_arg4 - _arg2)); _local8 = (_local9.getDirectionRad() + (Math.PI / 2)); if (_local8 > Math.PI){ _local8 = (_local8 - (Math.PI * 2)); } else { if (_local8 < -(Math.PI)){ _local8 = (_local8 + (Math.PI * 2)); }; }; _local6 = new enemyMiner(); _local6.x = _arg1; _local6.y = _arg2; _local6.scaleX = _local6.alphaEffectMaxScale; _local6.scaleY = _local6.alphaEffectMaxScale; _local6.recalcRadius(); _local6.recalcRadius(); _local6.setRotTarget(_arg3, _arg4); _local6.setVelocity(_local9.x, _local9.y, _arg5); _local6.prepareTimers(); _local6.startZoom(true, 0, _local6.alphaEffectMaxScale); gl.addChild(_local6); dynObjArray.push(_local6); } public function missPlayer2():void{ timerCouple.delay = paramCoupleStartRespawnTime; timerEnemyPink.delay = paramPinkStartRespawnTime; paramEnemyCurMaxSpeed = paramStartEnemyMaxSpeed; } public function key_down(_arg1:KeyboardEvent){ if (inGameHlp){ if ((((inGameHlpLev == 1)) && ((((_arg1.keyCode >= 37)) && ((_arg1.keyCode <= 40)))))){ inGameHlpLev++; hlp2.x = 396; hlp2.y = 36; hlp1.startFadeOut(); hlp2.start(); }; } else { hideHlp(); }; menuEvents(); if (_arg1.keyCode == 32){ if (inGameHlp){ if (inGameHlpLev == 2){ inGameHlpLev++; hlp3.x = 396; hlp3.y = 36; hlp2.startFadeOut(); hlp3.start(); }; } else { hideHlp(); }; press_space = true; }; if ((((_arg1.keyCode == 37)) || ((_arg1.keyCode == 65)))){ press_left = true; }; if ((((_arg1.keyCode == 38)) || ((_arg1.keyCode == 87)))){ press_up = true; }; if ((((_arg1.keyCode == 39)) || ((_arg1.keyCode == 68)))){ press_right = true; }; if ((((_arg1.keyCode == 40)) || ((_arg1.keyCode == 83)))){ press_down = true; }; if ((((_arg1.keyCode == 27)) && ((player_life >= 0)))){ gamepaused = !(gamepaused); if (gamepaused){ pauseMenu.visible = true; hideGui(); } else { pauseMenu.visible = false; showGui(); }; }; } public function SubStage_Timer(_arg1:TimerEvent):void{ if (gamepaused){ return; }; if (playerActive){ SubStageCurTime++; }; } public function Update(_arg1:Event):void{ var _local2:dynObject; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Point; var _local7:Point; var _local8:Point; var _local9:Point; var _local10:Number; var _local11:Number; var _local12:dynObject; var _local13:Array; var _local14:ColorMatrix; var _local15:Vector; var _local16:Point; var _local17:Point; var _local18:dynObject; var _local19:dynObject; var _local20:Number; var _local21:Point; var _local22:dynObject; var _local23:dynObject; var _local24:Number; var _local25:Vector; if (gamepaused){ return; }; if (timerFreePlay.running){ textLevInfo.text = (((("Free play" + "\nbonuses: ") + totalBonusCnt) + "\nmax combo: ") + curLenBonus); } else { textLevInfo.text = ((((("level: " + LevelStage) + "\nbonuses: ") + totalBonusCnt) + "\nmax combo: ") + curLenBonus); }; if (player_life > 15){ player_life = 15; }; textScore.text = ("SCORE: " + player_score); textLife.text = ("" + player_life); gameMessage.update(); if (lastScoreAnimStage < levEndScreen.animstage){ if (levEndScreen.animstage < 6){ PlaySnd("snd_score", playerObj); }; lastScoreAnimStage = levEndScreen.animstage; }; levEndScreen.update(); if ((((player_life < 0)) && (textLife.visible))){ PlaySnd("snd_gameover", playerObj); gameMessage.addMessage("GAME OVER!"); inGameHlp = false; endLevel(); soundChannel.stop(); timerRestart.start(); }; for each (_local2 in dynObjArray) { if (LevelStage == 1){ paramCoupleMinRespawnTime = 750; } else { paramCoupleMinRespawnTime = 500; }; if (_local2.removed){ if (_local2.readyToRemove){ removeObject(_local2); } else { _local2.updateRemoveEffect(); }; if (_local2.toString() == "explode"){ _local2.updateExpDecr(); }; } else { _local4 = (_local2.x - (SCR_W / 2)); _local5 = (_local2.y - (SCR_H / 2)); if (Math.sqrt(((_local4 * _local4) + (_local5 * _local5))) > (SCR_RAD * 2)){ removeObject(_local2); continue; }; }; }; _local3 = 0; for each (_local2 in dynObjArray) { if (_local2.VIP){ _local3 = (_local3 + (_local2.LifeBarMax - _local2.LifeBar)); }; }; if (SubStageKillVIP){ if (_local3 == 0){ startStage(LevelStage, LevelSubStage, false); }; gameProgressBar.gotoAndStop(Math.round(RemapVal(_local3, 0, maxStageLifeCount, 100, 0))); } else { if (SubStageTime){ if (SubStageCurTime >= SubStageFinalTime){ startStage(LevelStage, LevelSubStage, false); }; gameProgressBar.gotoAndStop(Math.round(RemapVal(SubStageCurTime, 0, SubStageFinalTime, 0, 100))); }; }; for each (_local2 in dynObjArray) { if (_local2.removed){ } else { if (_local2.zoomed){ _local2.updateZoom(); }; if (((!((_local2.toString() == "bonus"))) && (((!((_local2.subType() == "turret"))) || (_local2.forceRotToVelocity))))){ _local2.setRotToVelocity(); }; _local2.update(); if ((((_local2.toString() == "enemy")) && ((_local2.subType() == "turret")))){ _local2.updateTurret(); if (((playerActive) && (!(_local2.zoomed)))){ if (!_local2.forceRotToVelocity){ _local2.setRotTarget(playerObj.x, playerObj.y); }; if (_local2.isReadyToFire()){ if (_local2.behaviorType() == "turretHeavy"){ _local8 = new Point(); _local8 = new Point(); if (_local2.currentFrame == 1){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt1"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 4); _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 4); }; if (_local2.currentFrame == 2){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 4); }; if (_local2.currentFrame == 3){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt1"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 4); }; } else { if (_local2.behaviorType() == "enemySwirl"){ _local8 = new Point(); if (_local2.currentFrame < 2){ _local6 = _local2.getPoint("shoot_pnt1"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame < 3){ _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame < 4){ _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame < 5){ _local6 = _local2.getPoint("shoot_pnt4"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; } else { if (_local2.behaviorType() == "bossProgressor"){ _local8 = new Point(); if (_local2.currentFrame <= 4){ _local6 = _local2.getPoint("shoot_pnt1"); _local9 = new Point((_local6.x - _local2.x), (_local6.y - _local2.y)); _local10 = ((-45 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((-22.5 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((0 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((22.5 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((45 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); } else { if (_local2.currentFrame == 5){ _local7 = _local2.getPoint("shoot_pnt1"); _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 8); _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 8); } else { if (_local2.currentFrame == 6){ _local7 = _local2.getPoint("shoot_pnt1"); _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 8); }; }; }; } else { if (_local2.behaviorType() == "bossSeeder"){ _local8 = new Point(); _local8 = new Point(); _local2.maxShootSeria = (_local2.LifeBar + 5); _local11 = _local2.currentFrame; while (_local11 <= _local2.LifeBarMax) { _local6 = _local2.getPoint(("shoot_pnt" + _local11)); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local11++; }; } else { if (_local2.behaviorType() == "enemyMiner"){ _local12 = dropProj(_local2.x, _local2.y, _local2.RotTarget.x, _local2.RotTarget.y, 0); _local12.timerRemove.start(); _local13 = new Array(); _local14 = new ColorMatrix(); _local14.adjustHue(-30); _local13.push(new ColorMatrixFilter(_local14.matrix)); _local12.filters = _local13; } else { if (_local2.behaviorType() == "bossFighter"){ _local8 = new Point(); if (_local2.currentFrame < 2){ _local6 = _local2.getPoint("shoot_pnt1"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame < 3){ _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame < 4){ _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; if (_local2.currentFrame == 4){ _local6 = _local2.getPoint("shoot_pnt4"); _local8 = new Point((((_local6.x - _local2.x) * 2) + _local6.x), (((_local6.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 3); }; } else { if (_local2.behaviorType() == "bossDevastator"){ _local8 = new Point(); if (_local2.currentFrame <= 3){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt1"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 10); _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 10); _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 10); } else { if (_local2.currentFrame == 4){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt2"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 10); _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 10); } else { if (_local2.currentFrame >= 5){ _local7 = _local2.getPoint("shoot_pnt3"); _local6 = _local2.getPoint("shoot_pnt3"); _local8 = new Point((((_local7.x - _local2.x) * 2) + _local6.x), (((_local7.y - _local2.y) * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 8); }; }; }; } else { if (_local2.behaviorType() == "bossDeath"){ _local8 = new Point(); if (_local2.currentFrame > 7){ _local2.timeReload = 1200; _local2.maxShootSeria = _local2.currentFrame; }; if (_local2.currentFrame <= 5){ _local6 = _local2.getPoint("shoot_pnt1"); _local9 = new Point((-(_local6.x) + _local2.x), (-(_local6.y) + _local2.y)); _local10 = ((-45 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((-22.5 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((0 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((22.5 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local10 = ((45 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); } else { _local11 = 0; while (_local11 <= 360) { _local6 = _local2.getPoint("shoot_pnt1"); _local9 = new Point((_local6.x - _local2.x), (_local6.y - _local2.y)); _local10 = ((_local11 * Math.PI) / 180); _local8.x = ((_local9.x * Math.cos(_local10)) - (_local9.y * Math.sin(_local10))); _local8.y = ((_local9.x * Math.sin(_local10)) + (_local9.y * Math.cos(_local10))); _local8 = new Point(((_local8.x * 2) + _local6.x), ((_local8.y * 2) + _local6.y)); dropProj(_local6.x, _local6.y, _local8.x, _local8.y, 5); _local11 = (_local11 + 22.5); }; }; } else { if (_local2.behaviorType() == "bossFighterTurret"){ dropProj(_local2.x, _local2.y, _local2.RotTarget.x, _local2.RotTarget.y, 6); } else { dropProj(_local2.x, _local2.y, _local2.RotTarget.x, _local2.RotTarget.y, 3); }; }; }; }; }; }; }; }; }; }; }; }; if (_local2.hunted){ if (((playerActive) && (!(_local2.zoomed)))){ _local2.setRotTarget(playerObj.x, playerObj.y); _local15 = new Vector((_local2.RotTarget.x - _local2.x), (_local2.RotTarget.y - _local2.y)); _local2.setVelocity(_local15.x, _local15.y, 4); }; }; if (_local2.FlyByPath){ if (!_local2.zoomed){ _local16 = _local2.getPointGlobal(("path" + _local2.CurPathPoint)); _local17 = new Point((_local16.x - _local2.x), (_local16.y - _local2.y)); _local2.setVelocity(_local17.x, _local17.y, _local2.VelocitySpd); if (Distance(_local2.x, _local2.y, _local16.x, _local16.y) <= _local2.radius){ _local2.CurPathPoint++; if (_local2.CurPathPoint > _local2.MaxPathPoint){ _local2.CurPathPoint = 1; }; }; }; }; if (_local2.AlwaysOnScreen){ if (_local2.x < 0){ _local2.x = 0; }; if (_local2.x > SCR_W){ _local2.x = SCR_W; }; if (_local2.y < 0){ _local2.y = 0; }; if (_local2.y > SCR_H){ _local2.y = SCR_H; }; }; if (_local2.toString() == "explode"){ if (_local2.updateExp()){ _local2.startRemove(); continue; }; for each (_local18 in dynObjArray) { if (_local18.removed == false){ if ((((((_local18.toString() == "enemy")) && (!(_local18.zoomed)))) && (!(_local18.isImmortal)))){ if (_local2.CheckCollision(_local18)){ if (_local18.behaviorType() == "bossFighterTurret"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + 1)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new bossFighterTurretPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); _local21 = _local18.getPoint(("part" + 2)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new bossFighterTurretPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "turretHeavy"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + Random(1, 2))); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + (_local18.currentFrame - 1))); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); if (_local18.LifeBar == 1){ _local20 = 0; } else { if (_local18.LifeBar == 2){ _local20 = 180; } else { if (_local18.LifeBar == 3){ _local20 = 90; }; }; }; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new turretHeavyPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "enemySwirl"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); if (_local18.LifeBar == 1){ _local20 = 0; } else { if (_local18.LifeBar == 2){ _local20 = 180; } else { if (_local18.LifeBar == 3){ _local20 = 90; }; }; }; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new enemySwirlPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.scaleX = 0.5; _local19.scaleY = 0.5; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); _local19.filters = _local18.filters; gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "bossProgressor"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); _local20 = 0; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); if (_local18.LifeBar == 1){ _local19 = new bossProgressorPart1(); } else { if (_local18.LifeBar == 2){ _local19 = new bossProgressorPart2(); } else { if (_local18.LifeBar == 3){ _local19 = new bossProgressorPart3(); } else { if (_local18.LifeBar == 4){ _local19 = new bossProgressorPart4(); } else { if (_local18.LifeBar == 5){ _local19 = new bossProgressorPart5(); }; }; }; }; }; _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "bossSeeder"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); _local20 = 0; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new bossSeederPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "bossFighter"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); if (_local18.LifeBar == 1){ _local20 = 0; } else { if (_local18.LifeBar == 2){ _local20 = -45; } else { if (_local18.LifeBar == 3){ _local20 = 45; }; }; }; _local22 = dropBossFighterTurret(_local21.x, _local21.y); _local22.rotation = _local20; _local22.getImmortal(); _local22.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local22.LifeBarMax); dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); continue; }; } else { if (_local18.behaviorType() == "bossDevastator"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); _local20 = 0; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); if (_local18.LifeBar == 1){ _local19 = new bossDevastatorPart1(); } else { if (_local18.LifeBar == 2){ _local19 = new bossDevastatorPart1(); } else { if (_local18.LifeBar == 3){ _local19 = new bossDevastatorPart2(); } else { if (_local18.LifeBar == 4){ _local19 = new bossDevastatorPart3(); } else { if (_local18.LifeBar == 5){ _local19 = new bossDevastatorPart4(); }; }; }; }; }; _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; } else { if (_local18.behaviorType() == "bossDeath"){ if (_local18.LifeBar < (_local18.LifeBarMax - 1)){ _local18.LifeBar++; _local18.gotoAndStop((_local18.LifeBar + 1)); _local18.recalcRadius(); _local18.getImmortal(); _local21 = _local18.getPoint(("part" + _local18.LifeBar)); _local8 = new Point((((_local21.x - _local18.x) * 2) + _local21.x), (((_local21.y - _local18.y) * 2) + _local21.y)); _local15 = new Vector((_local8.x - _local21.x), (_local8.y - _local21.y)); _local20 = 0; dropExplode(_local21.x, _local21.y, _local2.chainCount, _local2.explodeSize); _local19 = new bossDeathPart(); _local19.x = _local21.x; _local19.y = _local21.y; _local19.recalcRadius(); _local19.rotation = (_local18.rotation + _local20); _local19.rot = Random(-4, 4); _local19.setVelocity(_local15.x, _local15.y, 3); gl.addChild(_local19); dynObjArray.push(_local19); continue; }; }; }; }; }; }; }; }; }; dropExplode(_local18.x, _local18.y, _local2.chainCount, _local2.explodeSize); _local18.startRemove(); if (_local18.subType() == "enemyWeakGreen"){ dropBonus(1, _local18); player_score = (player_score + 2); curDirectBonus = (curDirectBonus + 2); } else { if (_local18.subType() == "enemyWeakPink"){ dropBonus(2, _local18); player_score = (player_score + 5); curDirectBonus = (curDirectBonus + 5); } else { if ((((_local18.behaviorType() == "turretLite")) || ((_local18.behaviorType() == "turretHeavy")))){ player_score = (player_score + 500); curDirectBonus = (curDirectBonus + 500); } else { if (_local18.behaviorType() == "bossProgressor"){ dropBonus(3, _local18); player_score = (player_score + 10000); curBossBonus = (curBossBonus + 10000); } else { if (_local18.behaviorType() == "bossSeeder"){ dropBonus(3, _local18); player_score = (player_score + 15000); curBossBonus = (curBossBonus + 15000); } else { if (_local18.behaviorType() == "bossFighter"){ dropBonus(3, _local18); player_score = (player_score + 25000); curBossBonus = (curBossBonus + 25000); } else { if (_local18.behaviorType() == "bossDevastator"){ dropBonus(3, _local18); player_score = (player_score + 15000); curBossBonus = (curBossBonus + 15000); } else { if (_local18.behaviorType() == "bossDeath"){ dropBonus(3, _local18); player_score = (player_score + 35000); curBossBonus = (curBossBonus + 35000); } else { if (_local18.behaviorType() == "enemySwirl"){ if (!_local18.NoBonus){ dropBonus(3, _local18); }; player_score = (player_score + 1000); curDirectBonus = (curDirectBonus + 1000); } else { player_score = (player_score + 1); curDirectBonus = (curDirectBonus + 1); }; }; }; }; }; }; }; }; }; if (player_combo_kill > 0){ if ((player_combo_kill % 5) == 0){ _local23 = new gameText(); _local23.x = _local18.x; _local23.y = _local18.y; _local23.setToChainBonus((player_combo_kill * 50)); player_score = (player_score + (player_combo_kill * 50)); curChainBonus = (curChainBonus + (player_combo_kill * 50)); _local23.startRemove(); gl.addChild(_local23); dynObjArray.push(_local23); PlaySnd("snd_chain", playerObj); }; }; }; }; }; }; }; if (playerActive){ if (((!(playerObj.zoomed)) || ((_local2.toString() == "bonus")))){ if (!playerObj.zoomed){ if ((((((_local2.toString() == "enemy")) || ((_local2.toString() == "proj")))) && (!(_local2.zoomed)))){ if (_local2.CheckCollision(playerObj)){ _local23 = new gameText(); _local23.x = playerObj.x; _local23.y = playerObj.y; _local23.setToMiss(); _local23.startRemove(); gl.addChild(_local23); dynObjArray.push(_local23); playerObj.startZoom(false, 5, 1); playerObj.x = (SCR_W / 2); playerObj.y = ((3 * SCR_H) / 5); PlaySnd("snd_death", playerObj); player_life--; curDeath++; totalDeath++; missPlayer(); }; }; }; playerObj.recalcRadius(); if (_local2.toString() == "bonus"){ if (_local2.CheckCollision(playerObj)){ _local2.startRemove(); totalBonusCnt++; if ((totalBonusCnt % 100) == 0){ if (mainGlobal.isPlayedonline){ _local24 = ((((curDirectBonus + curExtraBonus) + curChainBonus) + (curLenBonus * 1000)) + curBossBonus); if (easyMode){ playedAPI.submit_stat(("easy_score_level" + LevelStage), _local24, "max"); } else { playedAPI.submit_stat(("norm_score_level" + LevelStage), _local24, "max"); }; }; }; if (inGameHlp){ if (inGameHlpLev == 3){ hlp1.y = -999999; hlp2.y = -999999; inGameHlpLev++; hlp3.startFadeOut(); }; } else { hideHlp(); }; if (_local2.subType() == "bonusPink"){ Quiken(); PlaySnd("snd_bonus1", playerObj); }; if (_local2.subType() == "bonusGreen"){ greenBonusLevel = (greenBonusLevel + 1); player_score = (player_score + (greenBonusLevel * 20)); curExtraBonus = (curExtraBonus + (greenBonusLevel * 20)); _local23 = new gameText(); _local23.x = _local2.x; _local23.y = _local2.y; _local23.setToGreenBonus((greenBonusLevel * 20)); _local23.startRemove(); gl.addChild(_local23); dynObjArray.push(_local23); if ((greenBonusLevel % (easyMode) ? 15 : 25) == 0){ _local23 = new gameText(); _local23.x = _local2.x; _local23.y = (_local2.y - 25); _local23.setToExtraLife(); _local23.startRemove(); gl.addChild(_local23); dynObjArray.push(_local23); PlaySnd("snd_bonus3", playerObj); player_life++; } else { PlaySnd("snd_bonus2", playerObj); }; }; if (_local2.subType() == "bonusBrown"){ _local23 = new gameText(); _local23.x = _local2.x; _local23.y = _local2.y; _local23.setToExtraLife(); _local23.startRemove(); gl.addChild(_local23); dynObjArray.push(_local23); PlaySnd("snd_bonus3", playerObj); player_life++; }; }; }; playerObj.radius = 5; }; }; }; }; if (playerActive){ _local25 = new Vector(0, 0); if (press_left){ _local25.x = (_local25.x - 1); }; if (press_right){ _local25.x = (_local25.x + 1); }; if (press_up){ _local25.y = (_local25.y - 1); }; if (press_down){ _local25.y = (_local25.y + 1); }; _local25 = _local25.getUnitVector(); _local25.mulScalar(6.5); playerObj.Velocity.addVector(_local25); if (((press_space) && (!(playerObj.zoomed)))){ press_space = false; dropExplode(playerObj.x, playerObj.y, 0, (easyMode) ? 130 : 100); playerObj.startZoom(false, 5, 1); playerObj.x = (SCR_W / 2); playerObj.y = ((3 * SCR_H) / 5); PlaySnd("snd_drop", playerObj); player_combo_kill = 0; }; playerObj.mulVelocity(0.6); playerObj.update(); playerObj.radius = 5; if (playerObj.zoomed){ playerObj.alpha = RemapVal(playerObj.scaleX, 5, 3, 0, 1); playerAura.x = playerObj.x; playerAura.y = playerObj.y; playerAura.scaleX = playerObj.scaleX; playerAura.scaleY = playerObj.scaleY; playerAura.alpha = playerObj.alpha; if (playerObj.updateZoom()){ playerAura.x = 9999; playerAura.y = 9999; }; }; if (playerObj.x < 0){ playerObj.x = 0; }; if (playerObj.x > SCR_W){ playerObj.x = SCR_W; }; if (playerObj.y < 0){ playerObj.y = 0; }; if (playerObj.y > SCR_H){ playerObj.y = SCR_H; }; }; } public function stopAllTimers(){ timerTurret.stop(); timerTurretHeavy.stop(); timerHunter.stop(); timerHunter2.stop(); timerMiner.stop(); timerSaw.stop(); timerFreePlay.stop(); } public function timerMiner_Timer(_arg1:TimerEvent):void{ var _local2:Number; var _local3:Number; var _local4:Vector; var _local5:Vector; var _local6:Number; if (gamepaused){ return; }; _local4 = new Vector(); _local5 = new Vector(); _local2 = 0; _local3 = -(SCR_RAD); _local6 = (((360 * (Math.random() - 0.5)) / 180) * Math.PI); _local4.x = (_local4.x + ((_local2 * Math.cos(_local6)) - (_local3 * Math.sin(_local6)))); _local4.y = (_local4.y + ((_local2 * Math.sin(_local6)) + (_local3 * Math.cos(_local6)))); _local5.x = (_local5.x + ((_local2 * Math.cos((Math.PI + _local6))) - (_local3 * Math.sin((Math.PI + _local6))))); _local5.y = (_local5.y + ((_local2 * Math.sin((Math.PI + _local6))) + (_local3 * Math.cos((Math.PI + _local6))))); dropMiner((_local4.x + (SCR_W / 2)), (_local4.y + (SCR_H / 2)), (_local5.x + (SCR_W / 2)), (_local5.y + (SCR_H / 2)), 5); } public function dropBossProgressor(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; _local3 = new bossProgressor(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local4.push(new GlowFilter(0xFF0000, 1, 15, 15, 1, 2)); _local3.filters = _local4; _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function dropBossFighterTurret(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; _local3 = new bossFighterTurret(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 24; _local3.height = 24; _local3.recalcRadius(); _local3.startZoom(true, 1, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function dropExplode(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:dynObject; _local5 = new explode(); _local5.x = _arg1; _local5.y = _arg2; _local5.width = 15; _local5.height = 15; _local5.recalcRadius(); _local5.blast(_arg3, _arg4); player_combo_kill++; if (player_combo_kill > 1){ if (player_combo_kill > curLenBonus){ extendLongestChain(player_combo_kill); }; }; if (isExpSound){ PlaySnd(("snd_exp" + Random(1, 3)), _local5); isExpSound = false; timerExpSoundDelay.delay = 50; timerExpSoundDelay.start(); }; gl.addChild(_local5); dynObjArray.push(_local5); } public function buttRestartYes_Click(_arg1:MouseEvent):void{ inGameHlp = false; menuRestart.startFadeOut(); restartLevel(LevelStage); PlaySnd("snd_Menu2", playerObj); } public function missPlayer():void{ greenBonusLevel = 1; timerCouple.delay = paramCoupleStartRespawnTime; timerEnemyPink.delay = paramPinkStartRespawnTime; paramEnemyCurMaxSpeed = paramStartEnemyMaxSpeed; } public function dropBossSeeder(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; _local3 = new bossSeeder(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local4.push(new GlowFilter(0xFF, 1, 15, 15, 1, 2)); _local3.filters = _local4; _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function dropProj(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):dynObject{ var _local6:dynObject; var _local7:Number; var _local8:Number; var _local9:Vector; _local9 = new Vector((_arg3 - _arg1), (_arg4 - _arg2)); _local8 = (_local9.getDirectionRad() + (Math.PI / 2)); if (_local8 > Math.PI){ _local8 = (_local8 - (Math.PI * 2)); } else { if (_local8 < -(Math.PI)){ _local8 = (_local8 + (Math.PI * 2)); }; }; _local6 = new projLite(); _local6.x = _arg1; _local6.y = _arg2; _local6.width = 18; _local6.height = 18; _local6.recalcRadius(); _local6.setVelocity(_local9.x, _local9.y, _arg5); gl.addChild(_local6); dynObjArray.push(_local6); if (isProjSound){ PlaySnd("snd_proj1", playerObj); isProjSound = false; timerProjSoundDelay.start(); }; return (_local6); } public function showGui():void{ lifeIcon.visible = true; textScore.visible = true; textLife.visible = true; gameProgressBar.visible = true; gameMessage.visible = true; buttPauseMenu.visible = true; textLevInfo.visible = true; } function frame1(){ menuDiff.buttBack.addEventListener(MouseEvent.CLICK, buttBack_Click); menuDiff.buttEasy.addEventListener(MouseEvent.CLICK, buttEasy_Click); menuDiff.buttNorm.addEventListener(MouseEvent.CLICK, buttNorm_Click); menuRestart.buttYes.addEventListener(MouseEvent.CLICK, buttRestartYes_Click); menuRestart.buttNo.addEventListener(MouseEvent.CLICK, buttRestartNo_Click); stop(); hideGui(); playerActive = false; playerObj.visible = false; startStage(0, 0, true); mainMenu.buttNewGame.addEventListener(MouseEvent.CLICK, buttNewGame_Click); mainMenu.buttScores.addEventListener(MouseEvent.CLICK, buttScores_Click); mainMenu.buttHelp.addEventListener(MouseEvent.CLICK, buttHelp_Click); mainMenu.buttMoreGames.addEventListener(MouseEvent.CLICK, buttMoreGames_Click); mainMenu.sponsorLogo.buttonMode = true; mainMenu.sponsorLogo.addEventListener(MouseEvent.CLICK, sponsorLogoClick_Click); mainMenu.myLnk.buttonMode = true; mainMenu.myLnk.useHandCursor = true; mainMenu.myLnk.mouseChildren = false; mainMenu.myLnk.addEventListener(MouseEvent.CLICK, myLink_Click); pauseMenu.buttContinue.addEventListener(MouseEvent.CLICK, buttContinue_Click); pauseMenu.buttExit.addEventListener(MouseEvent.CLICK, buttExit_Click); buttPauseMenu.addEventListener(MouseEvent.CLICK, buttPauseMenu_Click); } function Random(_arg1:Number=NaN, _arg2:Number=NaN):Number{ if (isNaN(_arg1)){ throw (new Error("low must be defined")); }; if (isNaN(_arg2)){ throw (new Error("high must be defined")); }; return ((Math.round((Math.random() * (_arg2 - _arg1))) + _arg1)); } public function removeObject(_arg1:dynObject):void{ var _local2:Number; _local2 = 0; while (_local2 < dynObjArray.length) { if (dynObjArray[_local2] == _arg1){ dynObjArray.splice(_local2, 1); break; }; _local2++; }; gl.removeChild(_arg1); } public function dropEnemySwirl(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; _local3 = new enemySwirl(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local3.startZoom(true, 0, 0.5); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function dropPink(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local6:dynObject; var _local7:Number; var _local8:Number; var _local9:Vector; _local9 = new Vector((_arg3 - _arg1), (_arg4 - _arg2)); _local8 = (_local9.getDirectionRad() + (Math.PI / 2)); if (_local8 > Math.PI){ _local8 = (_local8 - (Math.PI * 2)); } else { if (_local8 < -(Math.PI)){ _local8 = (_local8 + (Math.PI * 2)); }; }; _local6 = new enemyWeakPink(); _local6.x = _arg1; _local6.y = _arg2; _local6.width = 24; _local6.height = 24; _local6.recalcRadius(); _local6.setRotTarget(_arg3, _arg4); _local6.setVelocity(_local9.x, _local9.y, _arg5); gl.addChild(_local6); dynObjArray.push(_local6); } public function buttMoreGames_Click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://playedonline.com?campaign=8bit&utm_campaign=8bit&utm_medium=in_game&utm_source=8bit"), "_blank"); PlaySnd("snd_Menu2", playerObj); } public function buttNewGame_Click(_arg1:MouseEvent):void{ mainMenu.startFadeOut(); menuDiff.start(); PlaySnd("snd_Menu2", playerObj); } public function menuEvents():void{ var _local1:SoundTransform; if (levEndScreen.visible){ if (levEndScreen.animstage >= 6){ if (LevelStage == 5){ menuFreeplay.start(); levEndScreen.visible = false; } else { showGui(); playerActive = true; playerObj.visible = true; playerAura.visible = true; startStage((LevelStage + 1), 1, true); PlaySnd("snd_drop", playerObj); removeAllObjs(); levEndScreen.visible = false; }; }; } else { if (pauseMenu.visible){ } else { if (menuFreeplay.visible){ menuFreeplay.startFadeOut(); soundChannel.stop(); _local1 = new SoundTransform(); _local1.volume = 1; soundChannel = game_mus["music2"].play(0, 99999, _local1); timerFreePlay.start(); showGui(); playerActive = true; playerObj.visible = true; playerAura.visible = true; startStage((LevelStage + 1), 1, true); PlaySnd("snd_drop", playerObj); removeAllObjs(); } else { if (((menuGameOver.visible) && ((menuGameOver.alpha > 0.9)))){ if ((((LevelStage == 5)) && ((LevelSubStage == 9)))){ mainMenu.start(); menuGameOver.startFadeOut(); soundChannel.stop(); _local1 = new SoundTransform(); _local1.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local1); } else { menuRestart.start(); menuGameOver.startFadeOut(); }; } else { if (((menuScores.visible) && (!(menuScores.loading)))){ if (ingame){ if (!menuScores.isGetHiScore){ if (menuScores.closedInGame){ if ((((LevelStage == 5)) && ((LevelSubStage == 9)))){ mainMenu.start(); menuScores.startFadeOut(); soundChannel.stop(); _local1 = new SoundTransform(); _local1.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local1); } else { menuRestart.start(); menuScores.startFadeOut(); }; } else { menuScores.closedInGame = true; }; }; } else { if (menuScores.easyScore){ menuScores.easyScore = false; menuScores.loadScores(menuScores.easyScore); menuScores.refreshList(); menuScores.setTitle(); } else { mainMenu.start(); menuScores.startFadeOut(); }; }; } else { if (menuHelp.visible){ if (ingame){ } else { menuHelp.startFadeOut(); mainMenu.start(); }; }; }; }; }; }; }; } public function buttHelp_Click(_arg1:MouseEvent):void{ menuHelp.start(); mainMenu.startFadeOut(); PlaySnd("snd_Menu2", playerObj); } public function buttEasy_Click(_arg1:MouseEvent):void{ inGameHlp = true; inGameHlpLev = 0; menuDiff.startFadeOut(); easyMode = true; restartLevel(1); PlaySnd("snd_Menu2", playerObj); } public function MouseLeave(_arg1:FocusEvent){ press_space = false; press_left = false; press_up = false; press_right = false; press_down = false; } public function dropEnemySaw(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; _local3 = new enemySaw(); _local3.x = _arg1; _local3.y = _arg2; _local3.recalcRadius(); _local3.startZoom(true, 0, _local3.alphaEffectMaxScale); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function PlaySnd(_arg1:String, _arg2:Sprite):void{ var _local3:Point; _local3 = _arg2.localToGlobal(new Point(0, 0)); game_snd.Play2DSnd(_arg1, (_local3.x - playerObj.x), (_local3.y - playerObj.y)); } public function endLevel(){ timerEndLevel.stop(); textLife.visible = false; stopAllTimers(); playerActive = false; playerObj.visible = false; playerAura.visible = false; playerObj.startZoom(false, 5, 1); playerObj.x = (SCR_W / 2); playerObj.y = ((3 * SCR_H) / 5); missPlayer(); timerFreePlay.stop(); } public function buttExit_Click(_arg1:MouseEvent):void{ inGameHlp = false; hideHlp(); pauseMenu.startFadeOut(); mainMenu.start(); ingame = false; gamepaused = false; endLevel(); PlaySnd("snd_Menu2", playerObj); } public function dropHunter(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local6:dynObject; var _local7:Number; var _local8:Number; var _local9:Vector; _local9 = new Vector((_arg3 - _arg1), (_arg4 - _arg2)); _local8 = (_local9.getDirectionRad() + (Math.PI / 2)); if (_local8 > Math.PI){ _local8 = (_local8 - (Math.PI * 2)); } else { if (_local8 < -(Math.PI)){ _local8 = (_local8 + (Math.PI * 2)); }; }; _local6 = new enemyHunter(); _local6.x = _arg1; _local6.y = _arg2; _local6.width = 28; _local6.height = 28; _local6.recalcRadius(); _local6.setRotTarget(_arg3, _arg4); _local6.setVelocity(_local9.x, _local9.y, _arg5); gl.addChild(_local6); dynObjArray.push(_local6); } public function buttScores_Click(_arg1:MouseEvent):void{ menuScores.start(); mainMenu.startFadeOut(); menuScores.initShowOnly(); PlaySnd("snd_Menu2", playerObj); } public function timerTurret_Timer(_arg1:TimerEvent):void{ var _local2:dynObject; if (gamepaused){ return; }; _local2 = dropTurret(Random(0, 550), Random(0, 400)); while (isCollideVIP(_local2)) { _local2.x = Random(_local2.radius, (550 - _local2.radius)); _local2.y = Random(_local2.radius, (400 - _local2.radius)); }; } public function dropTurretHeavy(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; _local3 = new turretHeavy(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 24; _local3.height = 24; _local3.recalcRadius(); _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function timerProjSoundDelay_Timer(_arg1:TimerEvent):void{ isProjSound = true; } public function hideHlp():void{ hlp1.y = -999999; hlp2.y = -999999; hlp3.y = -999999; } public function dropBossDevastator(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; _local3 = new bossDevastator(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local4.push(new GlowFilter(0xFFFF00, 1, 15, 15, 1, 2)); _local3.filters = _local4; _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function timerHunter_Timer(_arg1:TimerEvent):void{ var _local2:Boolean; var _local3:Boolean; if (gamepaused){ return; }; _local2 = Boolean(Random(0, 1)); _local3 = Boolean(Random(0, 1)); dropHunter((_local2) ? Random(-100, 0) : Random(550, 650), (_local3) ? Random(-100, 0) : Random(450, 550), Random(0, 550), Random(0, 400), 4); } public function Quiken():void{ if (timerCouple.delay >= paramCoupleMinRespawnTime){ if ((timerCouple.delay - paramCoupleStepRespawnTime) < paramCoupleMinRespawnTime){ timerCouple.delay = paramCoupleMinRespawnTime; } else { timerCouple.delay = (timerCouple.delay - paramCoupleStepRespawnTime); }; }; if (paramEnemyCurMaxSpeed < paramMaxEnemySpeed){ paramEnemyCurMaxSpeed = (paramEnemyCurMaxSpeed + paramEnemyStepSpeed); if (paramEnemyCurMaxSpeed > paramMaxEnemySpeed){ paramEnemyCurMaxSpeed = paramMaxEnemySpeed; }; }; } public function buttNorm_Click(_arg1:MouseEvent):void{ inGameHlp = true; inGameHlpLev = 0; menuDiff.startFadeOut(); easyMode = false; restartLevel(1); PlaySnd("snd_Menu2", playerObj); } public function timerEndLevel_Timer(_arg1:TimerEvent):void{ var _local2:Number; hideGui(); player_score = (player_score + (curLenBonus * 1000)); _local2 = ((((curDirectBonus + curExtraBonus) + curChainBonus) + (curLenBonus * 1000)) + curBossBonus); if (mainGlobal.isPlayedonline){ if (easyMode){ playedAPI.submit_stat(("easy_score_level" + LevelStage), _local2, "max"); playedAPI.submit_stat(("easy_spawns_count_level" + LevelStage), curDeath, "min"); } else { playedAPI.submit_stat(("norm_score_level" + LevelStage), _local2, "max"); playedAPI.submit_stat(("norm_spawns_count_level" + LevelStage), curDeath, "min"); }; }; levEndScreen.start(curDirectBonus, curExtraBonus, curChainBonus, (curLenBonus * 1000), curBossBonus, _local2); playerActive = false; playerObj.visible = false; playerAura.visible = false; } public function extendLongestChain(_arg1:int){ curLenBonus = _arg1; if (mainGlobal.isPlayedonline){ if (easyMode){ playedAPI.submit_stat("easy_longest_combo", curLenBonus, "max"); } else { playedAPI.submit_stat("norm_longest_combo", curLenBonus, "max"); }; }; longChain.txt.text = (("LONGEST COMBO: " + _arg1) + "!"); longChain.fadingSpeed = 0.01; longChain.startFadeOut(); } public function timerExpSoundDelay_Timer(_arg1:TimerEvent):void{ isExpSound = true; } public function myLink_Click(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.anegmetex.com"), "_blank"); } public function dropCouple(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var _local7:dynObject; var _local8:Number; var _local9:Number; var _local10:Vector; var _local11:Number; var _local12:Number; _local10 = new Vector((_arg3 - _arg1), (_arg4 - _arg2)); _local9 = (_local10.getDirectionRad() + (Math.PI / 2)); if (_local9 > Math.PI){ _local9 = (_local9 - (Math.PI * 2)); } else { if (_local9 < -(Math.PI)){ _local9 = (_local9 + (Math.PI * 2)); }; }; if (paramNoEnemyGreen){ _local7 = new enemyWeak(); } else { _local7 = new enemyWeakGreen(); }; _local7.x = _arg1; _local7.y = _arg2; _local7.width = 24; _local7.height = 24; _local7.recalcRadius(); _local7.setRotTarget(_arg3, _arg4); _local7.setVelocity(_local10.x, _local10.y, _arg6); gl.addChild(_local7); dynObjArray.push(_local7); _local8 = 0; while (_local8 < _arg5) { _local7 = new enemyWeak(); _local11 = (-(COUPLE_OFFSET) * (_local8 + 1)); _local12 = (COUPLE_OFFSET * (_local8 + 1)); _local7.x = _arg1; _local7.y = _arg2; _local7.setVelocity(_local10.x, _local10.y, _arg6); _local7.x = (_local7.x + ((_local11 * Math.cos(_local9)) - (_local12 * Math.sin(_local9)))); _local7.y = (_local7.y + ((_local11 * Math.sin(_local9)) + (_local12 * Math.cos(_local9)))); _local7.width = 24; _local7.height = 24; _local7.recalcRadius(); gl.addChild(_local7); dynObjArray.push(_local7); _local8++; }; _local8 = 0; while (_local8 < _arg5) { _local7 = new enemyWeak(); _local11 = (COUPLE_OFFSET * (_local8 + 1)); _local12 = (COUPLE_OFFSET * (_local8 + 1)); _local7.x = _arg1; _local7.y = _arg2; _local7.setVelocity(_local10.x, _local10.y, _arg6); _local7.x = (_local7.x + ((_local11 * Math.cos(_local9)) - (_local12 * Math.sin(_local9)))); _local7.y = (_local7.y + ((_local11 * Math.sin(_local9)) + (_local12 * Math.cos(_local9)))); _local7.width = 24; _local7.height = 24; _local7.recalcRadius(); gl.addChild(_local7); dynObjArray.push(_local7); _local8++; }; } public function dropBossDeath(_arg1:Number, _arg2:Number):dynObject{ var _local3:dynObject; var _local4:Array; _local3 = new bossDeath(); _local3.x = _arg1; _local3.y = _arg2; _local3.width = 75; _local3.height = 75; _local3.recalcRadius(); _local4 = new Array(); _local4.push(new GlowFilter(0xFFFFFF, 1, 15, 15, 1, 2)); _local3.filters = _local4; _local3.startZoom(true, 0, 1); _local3.prepareTimers(); gl.addChild(_local3); dynObjArray.push(_local3); return (_local3); } public function startStage(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ var _local4:Boolean; var _local5:dynObject; var _local6:dynObject; var _local7:SoundTransform; var _local8:Boolean; var _local9:Boolean; _local4 = _arg3; if ((((_arg1 == 0)) && ((_arg2 == 0)))){ SubStageTime = false; SubStageKillVIP = false; LevelStage = _arg1; LevelSubStage = _arg2; }; if ((((_arg1 == 1)) && ((_arg2 == 1)))){ if (_local4){ if (inGameHlp){ if (inGameHlpLev == 0){ hlp2.y = -999999; hlp3.y = -999999; inGameHlpLev++; hlp1.x = 396; hlp1.y = 36; hlp1.start(); }; } else { hideHlp(); }; paramNoEnemyGreen = false; paramNoEnemyPink = false; curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; bg.gotoAndStop(1); gameMessage.addMessage("KILL'EM ALL!"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 40; SubStageTimer.start(); soundChannel.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local7); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; }; }; if ((((_arg1 == 1)) && ((_arg2 == 2)))){ if (_local4){ gameMessage.addMessage("DESTROY TURRETS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 6; maxStageLifeCount = 0; _local5 = dropTurret(Random(0, 550), Random(0, 400)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(Random(0, 550), Random(0, 400)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(Random(0, 550), Random(0, 400)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(Random(0, 550), Random(0, 400)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(Random(0, 550), Random(0, 400)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 1)) && ((_arg2 == 3)))){ if (_local4){ gameMessage.addMessage("COOLDOWN..."); missPlayer2(); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 45; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 1)) && ((_arg2 == 4)))){ if (_local4){ gameMessage.addMessage("DESTROY TOWER"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 1)) && ((_arg2 == 5)))){ if (_local4){ gameMessage.addMessage("GET A SCORES"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 45; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 1)) && ((_arg2 == 6)))){ if (_local4){ gameMessage.addMessage("DESTROY TWO TOWERS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 2; maxStageLifeCount = 0; _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 1)) && ((_arg2 == 7)))){ if (_local4){ gameMessage.addMessage("PREPARE FOR BOSS..."); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 45; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 1)) && ((_arg2 == 8)))){ if (_local4){ gameMessage.addMessage("KILL RX99 'pROGRESSOR'!"); PlaySnd("snd_alarm", playerObj); soundChannel.stop(); paramNoEnemyGreen = true; paramNoEnemyPink = true; missPlayer2(); timerCouple.delay = 1400; _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["snd_boss_beat3"].play(0, 99999, _local7); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropBossProgressor(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); lastScoreAnimStage = 0; timerEndLevel.start(); LevelStage = _arg1; LevelSubStage = _arg2; }; if ((((_arg1 == 2)) && ((_arg2 == 1)))){ if (_local4){ bg.gotoAndStop(2); paramNoEnemyGreen = false; paramNoEnemyPink = false; soundChannel.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["music2"].play(0, 99999, _local7); curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; gameMessage.addMessage("KILL'EM ALL!"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerTurret.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 2)) && ((_arg2 == 2)))){ if (_local4){ gameMessage.addMessage("DESTROY HEAVY TURRETS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 6; timerTurret.stop(); maxStageLifeCount = 0; _local5 = dropTurretHeavy(100, 350); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurretHeavy(450, 350); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurretHeavy(275, 50); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 2)) && ((_arg2 == 3)))){ if (_local4){ gameMessage.addMessage("COOLDOWN..."); missPlayer2(); timerTurret.start(); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 2)) && ((_arg2 == 4)))){ if (_local4){ gameMessage.addMessage("DESTROY X-TOWER"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; timerTurret.stop(); maxStageLifeCount = 0; _local5 = dropEnemySwirlX1((SCR_W / 2), (SCR_H / 2)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); maxStageLifeCount = 0; _local5 = dropEnemySwirlX2((SCR_W / 2), (SCR_H / 2)); _local5.VIP = true; _local5.rotation = -45; _local5.rot = -(_local5.rot); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 2)) && ((_arg2 == 5)))){ if (_local4){ gameMessage.addMessage("GET A SCORES"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerTurretHeavy.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 2)) && ((_arg2 == 6)))){ if (_local4){ gameMessage.addMessage("DESTROY TWO X-TOWERS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 2; timerTurret.stop(); timerTurretHeavy.stop(); maxStageLifeCount = 0; _local5 = dropEnemySwirlX1(183, 200); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); maxStageLifeCount = 0; _local5 = dropEnemySwirlX2(183, 200); _local5.VIP = true; _local5.rotation = -45; _local5.rot = -(_local5.rot); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); maxStageLifeCount = 0; _local5 = dropEnemySwirlX1(366, 200); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); maxStageLifeCount = 0; _local5 = dropEnemySwirlX2(366, 200); _local5.VIP = true; _local5.rotation = -45; _local5.rot = -(_local5.rot); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 2)) && ((_arg2 == 7)))){ if (_local4){ gameMessage.addMessage("PREPARE FOR BOSS..."); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 2)) && ((_arg2 == 8)))){ if (_local4){ gameMessage.addMessage("KILL MT5 'sEEDER'!"); PlaySnd("snd_alarm", playerObj); soundChannel.stop(); paramNoEnemyGreen = true; paramNoEnemyPink = true; missPlayer2(); timerCouple.delay = 1400; _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["snd_boss_beat2"].play(0, 99999, _local7); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropBossSeeder(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); lastScoreAnimStage = 0; timerEndLevel.start(); LevelStage = _arg1; LevelSubStage = _arg2; }; if ((((_arg1 == 3)) && ((_arg2 == 1)))){ if (_local4){ bg.gotoAndStop(3); paramNoEnemyGreen = false; paramNoEnemyPink = false; soundChannel.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local7); curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; gameMessage.addMessage("KILL'EM ALL!"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerHunter.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 3)) && ((_arg2 == 2)))){ if (_local4){ gameMessage.addMessage("DESTROY TURRETS AND SAWS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 6; timerTurret.stop(); timerHunter.stop(); maxStageLifeCount = 0; _local5 = dropTurretHeavy(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropTurretHeavy(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropEnemySaw(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropEnemySaw(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropEnemySaw(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 3)) && ((_arg2 == 3)))){ if (_local4){ gameMessage.addMessage("COOLDOWN..."); missPlayer2(); timerHunter.start(); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 3)) && ((_arg2 == 4)))){ if (_local4){ gameMessage.addMessage("DESTROY THREE BLASTERS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; timerHunter.stop(); _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 3)) && ((_arg2 == 5)))){ if (_local4){ gameMessage.addMessage("GET A SCORES"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerTurret.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 3)) && ((_arg2 == 6)))){ if (_local4){ gameMessage.addMessage("DESTROY THREE TOWERS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 2; timerTurret.stop(); timerTurretHeavy.stop(); maxStageLifeCount = 0; _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropEnemySwirl(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 3)) && ((_arg2 == 7)))){ if (_local4){ gameMessage.addMessage("PREPARE FOR BOSS..."); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 3)) && ((_arg2 == 8)))){ if (_local4){ gameMessage.addMessage("KILL LSS45-X 'fIGHTER'!"); PlaySnd("snd_alarm", playerObj); soundChannel.stop(); paramNoEnemyGreen = true; paramNoEnemyPink = true; missPlayer2(); timerCouple.delay = 1400; timerHunter.start(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["snd_boss_beat1"].play(0, 99999, _local7); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropBossFighter(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; timerHunter.stop(); PlaySnd("snd_levcompl", playerObj); lastScoreAnimStage = 0; timerEndLevel.start(); LevelStage = _arg1; LevelSubStage = _arg2; }; if ((((_arg1 == 4)) && ((_arg2 == 1)))){ if (_local4){ bg.gotoAndStop(4); paramNoEnemyGreen = false; paramNoEnemyPink = false; soundChannel.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["music2"].play(0, 99999, _local7); curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; gameMessage.addMessage("KILL'EM ALL!"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerMiner.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 4)) && ((_arg2 == 2)))){ if (_local4){ gameMessage.addMessage("DESTROY TURRETS AND TOWER"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 6; timerTurret.stop(); timerMiner.stop(); maxStageLifeCount = 0; _local5 = dropTurretHeavy(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropTurretHeavy(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropTurretHeavy(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local5 = dropEnemySwirl(Random(0, 550), Random(0, 400)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 4)) && ((_arg2 == 3)))){ if (_local4){ gameMessage.addMessage("COOLDOWN..."); missPlayer2(); timerHunter.start(); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 4)) && ((_arg2 == 4)))){ if (_local4){ gameMessage.addMessage("DESTROY TURETS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; timerHunter.stop(); _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; _local8 = Boolean(Random(0, 1)); _local9 = Boolean(Random(0, 1)); _local5 = dropBossFighterTurret((_local8) ? Random(-100, 0) : Random(550, 650), (_local9) ? Random(-100, 0) : Random(450, 550)); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(50, 50); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(275, 50); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(500, 50); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(50, 350); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(275, 350); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropTurret(500, 350); _local5.VIP = true; LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 4)) && ((_arg2 == 5)))){ if (_local4){ gameMessage.addMessage("GET A SCORES"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerTurretHeavy.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 4)) && ((_arg2 == 6)))){ if (_local4){ gameMessage.addMessage("DESTROY THREE TOWERS-X"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 2; timerTurretHeavy.stop(); maxStageLifeCount = 0; _local5 = dropEnemySwirlX1(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local6 = dropEnemySwirlX2((SCR_W / 2), (SCR_H / 2)); _local6.rotation = -45; _local6.rot = -(_local5.rot); _local6.x = _local5.x; _local6.y = _local5.y; maxStageLifeCount = (maxStageLifeCount + _local6.LifeBarMax); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropEnemySwirlX1(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local6 = dropEnemySwirlX2((SCR_W / 2), (SCR_H / 2)); _local6.rotation = -45; _local6.rot = -(_local5.rot); _local6.x = _local5.x; _local6.y = _local5.y; maxStageLifeCount = (maxStageLifeCount + _local6.LifeBarMax); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); _local5 = dropEnemySwirlX1(Random(100, 450), Random(100, 300)); _local5.VIP = true; while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; _local6 = dropEnemySwirlX2((SCR_W / 2), (SCR_H / 2)); _local6.rotation = -45; _local6.rot = -(_local5.rot); _local6.x = _local5.x; _local6.y = _local5.y; maxStageLifeCount = (maxStageLifeCount + _local6.LifeBarMax); maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; }; if ((((_arg1 == 4)) && ((_arg2 == 7)))){ if (_local4){ gameMessage.addMessage("PREPARE FOR BOSS..."); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerMiner.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 4)) && ((_arg2 == 8)))){ if (_local4){ gameMessage.addMessage("KILL GH9-2K 'tWINS'!"); PlaySnd("snd_alarm", playerObj); soundChannel.stop(); paramNoEnemyGreen = true; paramNoEnemyPink = true; missPlayer2(); timerCouple.delay = 1400; timerMiner.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["snd_boss_beat3"].play(0, 99999, _local7); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropBossDevastator(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); maxStageLifeCount = 0; _local5 = dropBossDevastator(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); while (isCollideVIP(_local5)) { _local5.x = Random(_local5.radius, (550 - _local5.radius)); _local5.y = Random(_local5.radius, (400 - _local5.radius)); }; LevelStage = _arg1; LevelSubStage = _arg2; return; } else { _arg2++; _local4 = true; timerHunter.stop(); PlaySnd("snd_levcompl", playerObj); lastScoreAnimStage = 0; timerEndLevel.start(); LevelStage = _arg1; LevelSubStage = _arg2; }; }; if ((((_arg1 == 5)) && ((_arg2 == 1)))){ if (_local4){ bg.gotoAndStop(5); paramNoEnemyGreen = false; paramNoEnemyPink = false; soundChannel.stop(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["music1"].play(0, 99999, _local7); curDirectBonus = 0; curExtraBonus = 0; curChainBonus = 0; curBossBonus = 0; curLenBonus = 0; curDeath = 0; gameMessage.addMessage("KILL'EM ALL!"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerSaw.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 5)) && ((_arg2 == 2)))){ if (_local4){ gameMessage.addMessage("KILL FIRST BOSS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; timerSaw.stop(); timerMiner.stop(); PlaySnd("snd_alarm", playerObj); maxStageLifeCount = 0; _local5 = dropBossProgressor(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 5)) && ((_arg2 == 3)))){ if (_local4){ gameMessage.addMessage("COOLDOWN..."); missPlayer2(); timerHunter.start(); timerTurret.start(); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 5)) && ((_arg2 == 4)))){ if (_local4){ gameMessage.addMessage("KILL SECOND BOSS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; timerHunter.stop(); timerTurret.stop(); PlaySnd("snd_alarm", playerObj); maxStageLifeCount = 0; _local5 = dropBossSeeder(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 5)) && ((_arg2 == 5)))){ if (_local4){ gameMessage.addMessage("GET A SCORES"); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerTurretHeavy.start(); timerSaw.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 5)) && ((_arg2 == 6)))){ if (_local4){ gameMessage.addMessage("KILL THIRD BOSS"); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 2; timerTurretHeavy.stop(); timerSaw.stop(); PlaySnd("snd_alarm", playerObj); maxStageLifeCount = 0; _local5 = dropBossFighter(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; PlaySnd("snd_levcompl", playerObj); }; if ((((_arg1 == 5)) && ((_arg2 == 7)))){ if (_local4){ gameMessage.addMessage("PREPARE FOR BOSS..."); SubStageTime = true; SubStageKillVIP = false; SubStageCurTime = 0; SubStageFinalTime = 60; SubStageTimer.start(); timerMiner.start(); LevelStage = _arg1; LevelSubStage = _arg2; return; }; _arg2++; _local4 = true; }; if ((((_arg1 == 5)) && ((_arg2 == 8)))){ if (_local4){ gameMessage.addMessage("KILL ZX1000 'dEATH'!"); PlaySnd("snd_alarm", playerObj); soundChannel.stop(); paramNoEnemyGreen = true; paramNoEnemyPink = true; missPlayer2(); timerCouple.delay = 1400; timerMiner.stop(); timerHunter2.start(); _local7 = new SoundTransform(); _local7.volume = 1; soundChannel = game_mus["snd_boss_beat2"].play(0, 99999, _local7); SubStageTimer.stop(); SubStageTime = false; SubStageKillVIP = true; SubStageVIPCount = 1; maxStageLifeCount = 0; _local5 = dropBossDeath(Random(100, 450), Random(100, 300)); _local5.VIP = true; maxStageLifeCount = (maxStageLifeCount + _local5.LifeBarMax); LevelStage = _arg1; LevelSubStage = _arg2; return; }; timerHunter2.stop(); _arg2++; _local4 = true; timerHunter.stop(); PlaySnd("snd_levcompl", playerObj); lastScoreAnimStage = 0; timerEndLevel.start(); LevelStage = _arg1; LevelSubStage = _arg2; }; if ((((_arg1 == 5)) && ((_arg2 == 9)))){ SubStageTime = true; SubStageKillVIP = false; SubStageTimer.stop(); }; } public function timerRestart_Timer(_arg1:TimerEvent):void{ if (gamepaused){ return; }; hideGui(); menuGameOver.start(); menuGameOver.init(easyMode, player_score, totalDeath, totalBonusCnt); } public function timerCouple_Timer(_arg1:TimerEvent):void{ var _local2:Number; var _local3:Number; var _local4:Vector; var _local5:Vector; var _local6:Number; if (gamepaused){ return; }; _local4 = new Vector(); _local5 = new Vector(); _local2 = 0; _local3 = -(SCR_RAD); _local6 = (((360 * (Math.random() - 0.5)) / 180) * Math.PI); _local4.x = (_local4.x + ((_local2 * Math.cos(_local6)) - (_local3 * Math.sin(_local6)))); _local4.y = (_local4.y + ((_local2 * Math.sin(_local6)) + (_local3 * Math.cos(_local6)))); _local5.x = (_local5.x + ((_local2 * Math.cos((Math.PI + _local6))) - (_local3 * Math.sin((Math.PI + _local6))))); _local5.y = (_local5.y + ((_local2 * Math.sin((Math.PI + _local6))) + (_local3 * Math.cos((Math.PI + _local6))))); dropCouple((_local4.x + (SCR_W / 2)), (_local4.y + (SCR_H / 2)), (_local5.x + (SCR_W / 2)), (_local5.y + (SCR_H / 2)), Random(2, 5), Random(paramStartEnemyMinSpeed, paramEnemyCurMaxSpeed)); } public function timerSaw_Timer(_arg1:TimerEvent):void{ var _local2:dynObject; if (gamepaused){ return; }; _local2 = dropEnemySaw(Random(0, 550), Random(0, 400)); while (isCollideVIP(_local2)) { _local2.x = Random(_local2.radius, (550 - _local2.radius)); _local2.y = Random(_local2.radius, (400 - _local2.radius)); }; } public function isCollideVIP(_arg1:dynObject):Boolean{ var _local2:Number; var _local3:dynObject; for each (_local3 in dynObjArray) { if (((((!((_local3 == _arg1))) && (_local3.VIPNotCollision))) && (_local3.CheckCollision(_arg1)))){ return (true); }; }; return (false); } public function timerTurretHeavy_Timer(_arg1:TimerEvent):void{ var _local2:dynObject; if (gamepaused){ return; }; _local2 = dropTurretHeavy(Random(0, 550), Random(0, 400)); while (isCollideVIP(_local2)) { _local2.x = Random(_local2.radius, (550 - _local2.radius)); _local2.y = Random(_local2.radius, (400 - _local2.radius)); }; } } }//package main
Section 48
//gameMessage (main.gameMessage) package main { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.text.*; public dynamic class gameMessage extends MovieClip { public var alphaOut:Boolean;// = false public var txt:TextField; public var alphaOutSpd:Number; public var alphaInSpd:Number; public var timerTextDelay:Timer; public var alphaDelay:Boolean;// = false public function gameMessage(){ alphaOut = false; alphaDelay = false; super(); alphaOutSpd = 0.001; alphaInSpd = 0.1; txt.alpha = 0; timerTextDelay = new Timer(3000, 1); timerTextDelay.stop(); timerTextDelay.addEventListener(TimerEvent.TIMER, timerTextDelay_Timer); } public function timerTextDelay_Timer(_arg1:TimerEvent):void{ alphaDelay = false; alphaOut = true; } public function addMessage(_arg1:String):void{ txt.text = _arg1; alphaDelay = false; alphaOut = false; txt.alpha = 0; timerTextDelay.stop(); } public function update():void{ if (alphaDelay){ return; }; if (alphaOut){ if ((txt.alpha - alphaOutSpd) <= 0){ alphaDelay = true; txt.alpha = 0; } else { txt.alpha = (txt.alpha - alphaInSpd); }; } else { if ((txt.alpha + alphaInSpd) >= 1){ alphaDelay = true; txt.alpha = 1; timerTextDelay.start(); } else { txt.alpha = (txt.alpha + alphaInSpd); }; }; } } }//package main
Section 49
//gameText (main.gameText) package main { import flash.text.*; public dynamic class gameText extends dynObject { public var textTop:TextField; public var textMiss:TextField; public var textBottom:TextField; public function gameText(){ removeAlphaEffect = 0.02; } public function setToChainBonus(_arg1:Number):void{ if ((((_arg1 >= 50)) && ((_arg1 <= 200)))){ }; if ((((_arg1 >= 200)) && ((_arg1 <= 450)))){ }; textMiss.text = ""; textTop.text = "combo bonus"; textBottom.text = ("+" + _arg1); } override public function toString():String{ return ("gameText"); } public function setToMiss():void{ textMiss.text = "Miss!"; textTop.text = ""; textBottom.text = ""; } public function setToExtraLife():void{ textMiss.text = ""; textTop.text = "EXTRA LIFE!"; textBottom.text = ""; } public function setToGreenBonus(_arg1:Number):void{ textMiss.text = ""; textTop.text = "extra bonus"; textBottom.text = ("+" + _arg1); } } }//package main
Section 50
//inGameHlp (main.inGameHlp) package main { public dynamic class inGameHlp extends menuFader { public function inGameHlp(){ addFrameScript(0, frame1, 1, frame2, 2, frame3); } function frame3(){ stop(); } function frame1(){ stop(); } function frame2(){ stop(); } } }//package main
Section 51
//levcompScreen (main.levcompScreen) package main { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.text.*; public dynamic class levcompScreen extends MovieClip { public var numChainBonus:TextField; public var numExtraBonus:TextField; public var txtBossBonus:TextField; public var txtDirectBonus:TextField; public var txtLenChainBonus:TextField; public var numDirectBonus:TextField; public var numTotalBonus:TextField; public var txtChainBonus:TextField; public var txtExtraBonus:TextField; public var thanksPlay:MovieClip; var animstage:Number; public var numBossBonus:TextField; public var txtTotalBonus:TextField; public var numLenChainBonus:TextField; var timerAnim:Timer; public function levcompScreen(){ timerAnim = new Timer(3000); timerAnim.stop(); timerAnim.addEventListener(TimerEvent.TIMER, timerAnim_Timer); } public function start(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ numDirectBonus.text = ("" + _arg1); numExtraBonus.text = ("" + _arg2); numChainBonus.text = ("" + _arg3); numLenChainBonus.text = ("" + _arg4); numBossBonus.text = ("" + _arg5); numTotalBonus.text = ("" + _arg6); txtDirectBonus.visible = false; numDirectBonus.visible = false; txtExtraBonus.visible = false; numExtraBonus.visible = false; txtChainBonus.visible = false; numChainBonus.visible = false; txtLenChainBonus.visible = false; numLenChainBonus.visible = false; txtBossBonus.visible = false; numBossBonus.visible = false; txtTotalBonus.visible = false; numTotalBonus.visible = false; thanksPlay.visible = false; alpha = 0; visible = true; animstage = 0; timerAnim.start(); timerAnim.delay = 1000; } public function timerAnim_Timer(_arg1:TimerEvent):void{ if (alpha >= 1){ animstage++; }; } public function update():Boolean{ if (visible){ if (alpha >= 1){ alpha = 1; if (animstage == 1){ txtDirectBonus.visible = true; numDirectBonus.visible = true; } else { if (animstage == 2){ txtExtraBonus.visible = true; numExtraBonus.visible = true; } else { if (animstage == 3){ txtChainBonus.visible = true; numChainBonus.visible = true; } else { if (animstage == 4){ txtLenChainBonus.visible = true; numLenChainBonus.visible = true; } else { if (animstage == 5){ txtBossBonus.visible = true; numBossBonus.visible = true; } else { if (animstage == 6){ txtTotalBonus.visible = true; numTotalBonus.visible = true; } else { if (animstage > 6){ timerAnim.stop(); thanksPlay.visible = true; return (true); }; }; }; }; }; }; }; } else { alpha = (alpha + 0.05); }; }; return (false); } } }//package main
Section 52
//longChain (main.longChain) package main { public dynamic class longChain extends menuFader { } }//package main
Section 53
//mainGlobal (main.mainGlobal) package main { public dynamic class mainGlobal { public static var isPlayedonline:Boolean = false; } }//package main
Section 54
//menuDiff (main.menuDiff) package main { public dynamic class menuDiff extends menuFader { } }//package main
Section 55
//menuFader (main.menuFader) package main { import flash.display.*; import flash.events.*; public dynamic class menuFader extends MovieClip { public var buttNo:SimpleButton; var fadingout:Boolean;// = false var fadingSpeed:Number;// = 0.1 public var buttYes:SimpleButton; public function menuFader(){ fadingout = false; fadingSpeed = 0.1; super(); fadingout = false; addEventListener(Event.ENTER_FRAME, update); } public function start():void{ alpha = 0; visible = true; fadingout = false; } public function startFadeOut():void{ alpha = 1; visible = true; fadingout = true; } public function update(_arg1:Event):void{ if (visible){ if (fadingout){ if (alpha <= 0){ alpha = 0; visible = false; fadingout = false; } else { alpha = (alpha - fadingSpeed); }; } else { if (alpha >= 1){ alpha = 1; } else { alpha = (alpha + fadingSpeed); }; }; }; } } }//package main
Section 56
//menuFreePlay (main.menuFreePlay) package main { public dynamic class menuFreePlay extends menuFader { } }//package main
Section 57
//menuGameOver (main.menuGameOver) package main { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.text.*; import flash.system.*; public dynamic class menuGameOver extends menuFader { public var infotxt:MovieClip; public var thanksPlay:MovieClip; public var txtTotalBonus:TextField; public function menuGameOver(){ addFrameScript(0, frame1); } public function init(_arg1:Boolean, _arg2:Number, _arg3:Number, _arg4:Number){ txtTotalBonus.text = ("YOU SCORE IS: " + _arg2); if (mainGlobal.isPlayedonline){ if (_arg1){ game(parent).playedAPI.submit_stat("easy_total_score", _arg2, "max"); game(parent).playedAPI.submit_stat("easy_total_spawns_count", _arg3, "min"); game(parent).playedAPI.submit_stat("easy_bonus_count", _arg4, "max"); } else { game(parent).playedAPI.submit_stat("norm_total_score", _arg2, "max"); game(parent).playedAPI.submit_stat("norm_total_spawns_count", _arg3, "min"); game(parent).playedAPI.submit_stat("norm_bonus_count", _arg4, "max"); }; infotxt.txt.text = "YOUR SCORE WAS SUBMITTED ON PLAYEDONLINE.COM"; } else { infotxt.txt.text = "PLAY ON PLAYEDONLINE.COM TO SUBMIT YOUR SCORES"; }; } function frame1(){ infotxt.buttonMode = true; infotxt.useHandCursor = true; infotxt.mouseChildren = false; infotxt.addEventListener(MouseEvent.CLICK, sponsorSiteClick_Click); } public function sponsorSiteClick_Click(_arg1:MouseEvent):void{ if (infotxt.txt.text != "YOUR RECORD WAS SUBMITTED ON PLAYEDONLINE.COM"){ navigateToURL(new URLRequest("http://www.playedonline.com/game/597306/8bit-little-killer.html"), "_blank"); } else { navigateToURL(new URLRequest("http://playedonline.com?campaign=8bit&utm_campaign=8bit&utm_medium=in_game&utm_source=8bit"), "_blank"); }; } } }//package main
Section 58
//menuHelp (main.menuHelp) package main { public dynamic class menuHelp extends menuFader { } }//package main
Section 59
//menuiMain (main.menuiMain) package main { public dynamic class menuiMain extends menuFader { } }//package main
Section 60
//menuScores (main.menuScores) package main { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.net.*; import flash.text.*; import flash.system.*; public dynamic class menuScores extends menuFader { var showOnly:Boolean;// = false var curscore:Number;// = 0 public var txtScore1:TextField; public var txtScore3:TextField; public var txtScore5:TextField; public var txtScore6:TextField; public var txtName1:TextField; public var txtName2:TextField; public var txtName6:TextField; public var txtName7:TextField; public var txtScore9:TextField; public var txtName3:TextField; public var txtName4:TextField; public var txtScore7:TextField; public var txtScore4:TextField; public var txtName8:TextField; var elemScores:Object; var playersScores:Array; public var txtName9:TextField; public var txtScore8:TextField; public var txtScore2:TextField; var isGetHiScore:Boolean;// = false public var txtName5:TextField; public var txtName10:TextField; var playersNames:Array; public var scoreTitle:TextField; public var rectScore:MovieClip; var elemPlayers:Object; public var txtDirectBonus:TextField; var loading:Boolean;// = false var closedInGame:Boolean;// = false public var thanksPlay:MovieClip; public var txtScore10:TextField; var easyScore:Boolean;// = true var openInGame:Boolean;// = false var editPos:int;// = -5 public function menuScores(){ var _local1:int; isGetHiScore = false; editPos = -5; showOnly = false; loading = false; easyScore = true; closedInGame = false; openInGame = false; curscore = 0; super(); elemPlayers = new Object(); elemScores = new Object(); elemPlayers["txtName1"] = txtName1; elemPlayers["txtName2"] = txtName2; elemPlayers["txtName3"] = txtName3; elemPlayers["txtName4"] = txtName4; elemPlayers["txtName5"] = txtName5; elemPlayers["txtName6"] = txtName6; elemPlayers["txtName7"] = txtName7; elemPlayers["txtName8"] = txtName8; elemPlayers["txtName9"] = txtName9; elemPlayers["txtName10"] = txtName10; elemScores["txtScore1"] = txtScore1; elemScores["txtScore2"] = txtScore2; elemScores["txtScore3"] = txtScore3; elemScores["txtScore4"] = txtScore4; elemScores["txtScore5"] = txtScore5; elemScores["txtScore6"] = txtScore6; elemScores["txtScore7"] = txtScore7; elemScores["txtScore8"] = txtScore8; elemScores["txtScore9"] = txtScore9; elemScores["txtScore10"] = txtScore10; playersNames = new Array(); playersScores = new Array(); addEventListener(Event.ENTER_FRAME, updateScore); parent.stage.addEventListener(KeyboardEvent.KEY_DOWN, key_down); _local1 = 0; while (_local1 < 10) { playersNames.push(("Player" + _local1)); playersScores.push("0"); _local1++; }; } public function refreshList(){ var _local1:int; _local1 = 0; while (_local1 < 10) { elemPlayers[("txtName" + (_local1 + 1))].text = playersNames[_local1].toUpperCase(); elemScores[("txtScore" + (_local1 + 1))].text = playersScores[_local1].toUpperCase(); _local1++; }; } function ioErrorServer(_arg1:Event):void{ var _local2:int; loading = false; _local2 = 0; _local2 = 0; while (_local2 < 10) { playersNames[_local2] = ""; playersScores[_local2] = ""; _local2++; }; txtDirectBonus.text = "SORRY, CAN'T CONNECT TO SERVER!"; thanksPlay.visible = true; } public function key_down(_arg1:KeyboardEvent){ var _local2:URLVariables; var _local3:URLRequest; var _local4:URLLoader; if (isGetHiScore){ if (_arg1.keyCode == 13){ isGetHiScore = false; elemPlayers[("txtName" + (editPos + 1))].type = TextFieldType.DYNAMIC; elemPlayers[("txtName" + (editPos + 1))].selectable = false; thanksPlay.visible = true; closedInGame = false; if (elemPlayers[("txtName" + (editPos + 1))].text.length > 0){ playersNames[editPos] = elemPlayers[("txtName" + (editPos + 1))].text; playersNames.splice(10, 1); playersScores.splice(10, 1); _local2 = new URLVariables(); _local2.type = "addScore"; _local2.diff = int(easyScore); _local2.name = playersNames[editPos]; _local2.score = playersScores[editPos]; _local3 = new URLRequest(); _local3.url = "http://anegmetex.com/flash/8BLK_score.php"; _local3.data = _local2; _local4 = new URLLoader(); _local4.load(_local3); _local4.addEventListener(IOErrorEvent.IO_ERROR, ioErrorServer); } else { playersNames.splice(editPos, 1); playersScores.splice(editPos, 1); rectScore.y = -999999; }; editPos = -1; refreshList(); }; }; } public function loadScores(_arg1:Boolean){ var _local2:URLVariables; var _local3:URLRequest; var _local4:URLLoader; playersNames[0] = "LOADING..."; playersNames[1] = "LOADING..."; playersNames[2] = "LOADING..."; playersNames[3] = "LOADING..."; playersNames[4] = "LOADING..."; playersNames[5] = "LOADING..."; playersNames[6] = "LOADING..."; playersNames[7] = "LOADING..."; playersNames[8] = "LOADING..."; playersNames[9] = "LOADING..."; playersScores[0] = ""; playersScores[1] = ""; playersScores[2] = ""; playersScores[3] = ""; playersScores[4] = ""; playersScores[5] = ""; playersScores[6] = ""; playersScores[7] = ""; playersScores[8] = ""; playersScores[9] = ""; refreshList(); loading = true; _local2 = new URLVariables(); _local2.type = "getScore"; _local2.diff = int(_arg1); _local3 = new URLRequest(); _local3.url = "http://anegmetex.com/flash/8BLK_score.php"; _local3.data = _local2; _local4 = new URLLoader(); _local4.load(_local3); _local4.addEventListener(Event.COMPLETE, completeLoading); _local4.addEventListener(IOErrorEvent.IO_ERROR, ioErrorServer); } public function init(_arg1:Boolean, _arg2:Number){ easyScore = _arg1; editPos = -1; setTitle(); loadScores(easyScore); thanksPlay.visible = false; curscore = _arg2; rectScore.y = -999999; openInGame = true; } public function setTitle(){ if (easyScore){ scoreTitle.text = "HI-SCORES (EASY)"; } else { scoreTitle.text = "HI-SCORES (NORMAL)"; }; } public function updateScore(_arg1:Event):void{ if (isGetHiScore){ if (stage.focus != elemPlayers[("txtName" + (editPos + 1))]){ stage.focus = elemPlayers[("txtName" + (editPos + 1))]; }; elemPlayers[("txtName" + (editPos + 1))].text = elemPlayers[("txtName" + (editPos + 1))].text.toUpperCase(); }; } public function initShowOnly(){ showOnly = true; easyScore = true; setTitle(); loadScores(easyScore); refreshList(); txtDirectBonus.text = ""; thanksPlay.visible = true; rectScore.y = -999999; closedInGame = false; openInGame = false; } function completeLoading(_arg1:Event):void{ var _local2:XML; var _local3:XMLList; var _local4:int; var _local5:XML; loading = false; _local2 = XML(_arg1.target.data); _local3 = _local2.scoreboard.Name; _local4 = 0; for each (_local5 in _local3) { playersNames[_local4] = _local5; _local4++; }; _local3 = _local2.scoreboard.Score; _local4 = 0; for each (_local5 in _local3) { playersScores[_local4] = _local5; _local4++; }; refreshList(); if (openInGame){ _local4 = 0; while (_local4 < 10) { if (int(playersScores[_local4]) < curscore){ editPos = _local4; break; }; _local4++; }; if (editPos < 0){ isGetHiScore = false; } else { isGetHiScore = true; }; if (isGetHiScore){ txtDirectBonus.text = "YOU GET A HIGH SCORE!"; playersNames.splice(editPos, 0, ""); playersScores.splice(editPos, 0, String(curscore)); rectScore.y = elemPlayers[("txtName" + (editPos + 1))].y; } else { txtDirectBonus.text = ("YOU SCORE IS: " + String(curscore)); rectScore.y = -999999; thanksPlay.visible = true; closedInGame = true; }; refreshList(); if (isGetHiScore){ elemPlayers[("txtName" + (editPos + 1))].type = TextFieldType.INPUT; elemPlayers[("txtName" + (editPos + 1))].selectable = true; elemPlayers[("txtName" + (editPos + 1))].maxChars = 13; }; }; } } }//package main
Section 61
//pauseMenu (main.pauseMenu) package main { public dynamic class pauseMenu extends menuFader { } }//package main
Section 62
//player (main.player) package main { public dynamic class player extends dynObject { public function player(){ explodeSize = 100; } override public function toString():String{ return ("player"); } } }//package main
Section 63
//preloader (main.preloader) package main { import flash.display.*; import flash.events.*; import flash.text.*; public dynamic class preloader extends MovieClip { public var txt:TextField; public var progressBar:MovieClip; public function preloader(){ addFrameScript(0, frame1); mainGlobal.isPlayedonline = isUrl(["playedonline.com", "www.playedonline.com"]); addEventListener(Event.ENTER_FRAME, Update); } function frame1(){ stop(); } public function isUrl(_arg1:Array):Boolean{ var _local2:String; var _local3:Number; var _local4:Number; var _local5:String; var _local6:Number; var _local7:Number; var _local8:int; _local2 = stage.loaderInfo.loaderURL; _local3 = (_local2.indexOf("://") + 3); _local4 = _local2.indexOf("/", _local3); _local5 = _local2.substring(_local3, _local4); _local6 = (_local5.lastIndexOf(".") - 1); _local7 = (_local5.lastIndexOf(".", _local6) + 1); _local5 = _local5.substring(_local7, _local5.length); _local8 = 0; while (_local8 < _arg1.length) { if (_local5 == _arg1[_local8]){ return (true); }; _local8++; }; return (false); } public function Update(_arg1:Event):void{ var _local2:Number; var _local3:Number; var _local4:String; var _local5:Number; _local2 = stage.loaderInfo.bytesLoaded; _local3 = stage.loaderInfo.bytesTotal; _local4 = ""; _local5 = 0; if (_local3 > 0){ _local5 = Math.floor(((_local2 / _local3) * 100)); _local4 = (((((_local5 + "% (") + Math.round((_local2 / 0x0400))) + "KB / ") + Math.round((_local3 / 0x0400))) + "KB)"); }; this.txt.text = ("LOADING... " + _local4); this.progressBar.gotoAndStop((_local5 + 1)); if ((((_local2 == _local3)) || ((_local3 == 0)))){ removeEventListener(Event.ENTER_FRAME, Update); if ((parent is MovieClip)){ }; }; } } }//package main
Section 64
//proj (main.proj) package main { import flash.events.*; import flash.utils.*; public dynamic class proj extends dynObject { public var timerRemove:Timer; public function proj(){ notTargetRotate = true; timerRemove = new Timer(4000, 1); timerRemove.stop(); timerRemove.addEventListener(TimerEvent.TIMER, timerRemove_Timer); } override public function toString():String{ return ("proj"); } public function timerRemove_Timer(_arg1:TimerEvent):void{ timerRemove.stop(); startRemove(); } } }//package main
Section 65
//projLite (main.projLite) package main { public dynamic class projLite extends proj { } }//package main
Section 66
//sounds (main.sounds) package main { import flash.media.*; public dynamic class sounds { var snd:Object; var stageRadius:Number; public var vol:Number;// = 0.9 public function sounds(){ vol = 0.9; super(); } public function Play2DSnd(_arg1:String, _arg2:Number, _arg3:Number):void{ var _local4:SoundTransform; var _local5:Vector; _local5 = new Vector(_arg2, _arg3); _local4 = new SoundTransform(); _local4.volume = (vol / (1 + (_local5.magnitude2() / stageRadius))); snd[_arg1].play(0, 0, _local4); } public function init(_arg1:Number, _arg2:Number){ snd = new Object(); snd["snd_bonus1"] = new snd_bonus1(); snd["snd_bonus2"] = new snd_bonus2(); snd["snd_bonus3"] = new snd_bonus3(); snd["snd_death"] = new snd_death(); snd["snd_exp1"] = new snd_exp1(); snd["snd_exp2"] = new snd_exp2(); snd["snd_exp3"] = new snd_exp3(); snd["snd_Menu1"] = new snd_Menu1(); snd["snd_Menu2"] = new snd_Menu2(); snd["snd_drop"] = new snd_drop(); snd["snd_chain"] = new snd_chain(); snd["snd_gameover"] = new snd_gameover(); snd["snd_levcompl"] = new snd_levcompl(); snd["snd_proj1"] = new snd_proj1(); snd["snd_alarm"] = new snd_alarm(); snd["snd_score"] = new snd_score(); stageRadius = Math.pow(((_arg1 + _arg2) / 4), 2); } } }//package main
Section 67
//Star (main.Star) package main { import flash.display.*; public dynamic class Star extends MovieClip { public var geny:Number; public var speed:Number; public var cx:Number; public var cy:Number; public var genx:Number; } }//package main
Section 68
//statObject (main.statObject) package main { public dynamic class statObject extends baseObject { } }//package main
Section 69
//turret (main.turret) package main { import flash.events.*; import flash.utils.*; public dynamic class turret extends dynObject { public var dontTargeting:Boolean;// = false public var reloadingOneShoot:Boolean;// = false var oneProjReloadTimer:Timer; public var forceRotToVelocity:Boolean;// = false public var timeReload:Number; public var curShootSeria:Number; public var angleTargeting:Number;// = 10 var reloadTimer:Timer; public var maxShootSeria:Number; public var timeShoot:Number; public var reloading:Boolean;// = false public function turret(){ dontTargeting = false; angleTargeting = 10; reloading = false; reloadingOneShoot = false; forceRotToVelocity = false; super(); zoomEffect = 0.01; } public function RemapVal(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ return ((_arg4 + (((_arg5 - _arg4) * (_arg1 - _arg2)) / (_arg3 - _arg2)))); } override public function toString():String{ return ("enemy"); } public function isTargeting():Boolean{ var _local1:Vector; var _local2:Number; _local1 = new Vector((RotTarget.x - x), (RotTarget.y - y)); _local2 = ((_local1.getDirection() - rotation) + 90); if (_local2 > 180){ _local2 = (_local2 - 360); } else { if (_local2 < -180){ _local2 = (_local2 + 360); }; }; return ((Math.abs(_local2) <= angleTargeting)); } public function reload_Timer(_arg1:TimerEvent):void{ curShootSeria = 0; reloading = false; } public function updateTurret():void{ alpha = RemapVal(scaleX, 0, alphaEffectMaxScale, 0, 1); } public function isReadyToFire():Boolean{ if (((((((isTargeting()) || (dontTargeting))) && (!(reloading)))) && (!(reloadingOneShoot)))){ reloadingOneShoot = true; curShootSeria++; oneProjReloadTimer.start(); return (true); }; return (false); } public function oneProjReload_Timer(_arg1:TimerEvent):void{ reloadingOneShoot = false; if (curShootSeria >= maxShootSeria){ reloadTimer.start(); reloading = true; }; } override public function subType():String{ return ("turret"); } public function prepareTimers():void{ oneProjReloadTimer = new Timer(timeShoot, 1); oneProjReloadTimer.addEventListener(TimerEvent.TIMER, oneProjReload_Timer); reloadTimer = new Timer(timeReload, 1); reloadTimer.addEventListener(TimerEvent.TIMER, reload_Timer); } } }//package main
Section 70
//turretHeavy (main.turretHeavy) package main { import flash.geom.*; public dynamic class turretHeavy extends turret { public function turretHeavy(){ addFrameScript(0, frame1); rotateSpeed = 4; angleTargeting = 35; maxShootSeria = 3; curShootSeria = 0; timeShoot = 100; timeReload = 3000; points = new Object(); points["part1"] = new Point(-18.6, -1.3); points["part2"] = new Point(17.7, -1.6); points["shoot_pnt1"] = new Point(-19.4, -27); points["shoot_pnt2"] = new Point(16.6, -27); points["shoot_pnt3"] = new Point(0, -30); LifeBarMax = 2; LifeBar = 0; useLifeBar = true; VIPNotCollision = true; } function frame1(){ stop(); } override public function behaviorType():String{ return ("turretHeavy"); } } }//package main
Section 71
//turretHeavyPart (main.turretHeavyPart) package main { public dynamic class turretHeavyPart extends proj { } }//package main
Section 72
//turretLite (main.turretLite) package main { public dynamic class turretLite extends turret { public function turretLite(){ rotateSpeed = 2; maxShootSeria = 1; curShootSeria = 0; timeShoot = 40; timeReload = 2000; LifeBarMax = 1; LifeBar = 0; useLifeBar = true; VIPNotCollision = true; } override public function behaviorType():String{ return ("turretLite"); } } }//package main
Section 73
//Vector (main.Vector) package main { public class Vector { var y:Number; var x:Number; public function Vector(_arg1:Number=0, _arg2:Number=0){ x = _arg1; y = _arg2; } function magnitude2():Number{ return (((x * x) + (y * y))); } function subVector(_arg1:Vector):void{ x = (x - _arg1.x); y = (y - _arg1.y); } function addVector(_arg1:Vector):void{ x = (x + _arg1.x); y = (y + _arg1.y); } function mulScalar(_arg1:Number):void{ x = (x * _arg1); y = (y * _arg1); } function getMulScalar(_arg1:Number):Vector{ return (new Vector((x * _arg1), (y * _arg1))); } function getDirection():Number{ return (((Math.atan2(y, x) / Math.PI) * 180)); } function vectorProjectionOnto(_arg1:Vector):Vector{ var _local2:Vector; _local2 = _arg1.getUnitVector(); _local2.mulScalar(scalarProjectionOnto(_arg1)); return (_local2); } function getUnitVector():Vector{ var _local1:Number; var _local2:Vector; _local1 = magnitude(); _local2 = new Vector(x, y); if (_local1){ _local2.x = (_local2.x / _local1); _local2.y = (_local2.y / _local1); }; return (_local2); } function setMembers(_arg1:Number, _arg2:Number):void{ x = _arg1; y = _arg2; } function copyVector(_arg1:Vector):void{ x = _arg1.x; y = _arg1.y; } function getDirectionRad():Number{ return (Math.atan2(y, x)); } function scalarProjectionOnto(_arg1:Vector):Number{ return ((((x * _arg1.x) + (y * _arg1.y)) / _arg1.magnitude())); } function magnitude():Number{ return (Math.sqrt(((x * x) + (y * y)))); } } }//package main
Section 74
//MochiAd (mochi.as3.MochiAd) package mochi.as3 { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showClickAwayAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_timeout:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var sendHostProgress:Boolean; var options = _arg1; DEFAULTS = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{ }, ad_finished:function ():void{ }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_timeout = options.ad_timeout; delete options.ad_timeout; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; sendHostProgress = false; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; _local3 = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (this.root == null){ _local3 = true; }; if (_local3){ delete this.onEnterFrame; }; }; doOnEnterFrame(chk); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType == "application"){ return (_local2); }; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (_arg1.origFrameRate != undefined){ _arg1.stage.frameRate = _arg1.origFrameRate; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad._containerLCName != undefined){ _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"}); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (_local2 > chk.ad_msec){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; if (_local3.clip == undefined){ throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite.")); }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; if (_local3.id == "test"){ trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); }; return (_local3); } public static function _cleanup(_arg1:Object):void{ var idx:Number; var k:String; var lc:LocalConnection; var f:Function; var mc = _arg1; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ try { lc.client = null; lc.close(); } catch(e:Error) { }; }; setTimeout(f, 0); }; idx = DisplayObjectContainer(mc).numChildren; while (idx > 0) { idx = (idx - 1); DisplayObjectContainer(mc).removeChildAt(idx); }; for (k in mc) { delete mc[k]; }; } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!(clip is DisplayObject)){ trace("Warning: Object passed as container clip not a descendant of the DisplayObject type"); return (null); }; if (MovieClip(clip).stage == null){ trace("Warning: Container clip for ad is not attached to the stage"); return (null); }; if (!MochiAd._isNetworkAvailable()){ return (null); }; try { if (clip._mochiad_loaded){ return (null); }; } catch(e:Error) { throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; } else { trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal"); }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; mc.lcName = name; lv.lc = name; lv.st = getTimer(); loader = new Loader(); g = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest(((server + ".swf?cacheBust=") + new Date().getTime())); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ trace("[MochiAds] Blocked URL"); }); if (!options.skip){ loader.load(req); }; mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return (undefined); }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; if (typeof(_arg1[_local4[_local5]]) == "function"){ return (_arg1[_local4[_local5]].apply(_arg1, _arg3)); }; return (undefined); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function adShowing(_arg1:Object):void{ _arg1.origFrameRate = _arg1.stage.frameRate; _arg1.stage.frameRate = 30; } public static function getValue(_arg1:Object, _arg2:String):Object{ var _local3:Array; var _local4:Number; _local3 = _arg2.split("."); _local4 = 0; while (_local4 < (_local3.length - 1)) { if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){ return (undefined); }; _arg1 = _arg1[_local3[_local4]]; _local4++; }; return (_arg1[_local3[_local4]]); } public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{ var _local4:Object; var _local5:Object; switch (_arg3.id){ case "setValue": MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value); break; case "getValue": _local4 = MochiAd.getValue(_arg1, _arg3.objectName); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4); break; case "runMethod": _local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5); break; default: trace(("[mochiads rpc] unknown rpc id: " + _arg3.id)); }; } public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return; }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; _arg1[_local4[_local5]] = _arg3; } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_w:Number; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var progress:Number; var f:Function; var sendHostProgress:Boolean; var fn:Function; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }, ad_progress:function (_arg1:Number):void{ }, progress_override:function (_arg1:Object):Number{ return (NaN); }, bar_offset:0}; options = MochiAd._parseOptions(options, DEFAULTS); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){ options.ad_started(); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); return; }; clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; if (options.skip){ ad_timeout = 0; }; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; MochiAd._cleanup(mc); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = (10 + options.bar_offset); bar.y = (h - 20); }; bar_w = ((w - bar.x) - 10); bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo(bar_w, 0); backing.lineTo(bar_w, 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo(bar_w, 0); inside.lineTo(bar_w, 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo(bar_w, 0); outline.lineTo(bar_w, 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; progress = Math.min(1, options.progress_override(clip)); f = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; if (!isNaN(progress)){ complete = (progress == 1); } else { if (clip.loaderInfo.bytesLoaded == clip.loaderInfo.bytesTotal){ complete = true; } else { if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; mc.rpcTestFn = function (_arg1:String):Object{ trace(("[MOCHIAD rpcTestFn] " + _arg1)); return (_arg1); }; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; sendHostProgress = false; mc.sendHostLoadProgress = function (_arg1:String):void{ sendHostProgress = true; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Object; var _local11:Number; var _local12:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; _local7 = Math.min(1, options.progress_override(_local1)); if (_local7 == 1){ complete = true; }; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; _local8 = ((100 * _local6) / _local5); if (!isNaN(_local7)){ _local8 = (100 * _local7); }; _local9 = ((100 * _local3) / chk.ad_msec); _local10 = this._mochiad_bar._inside; _local11 = Math.min(100, Math.min(((_local8) || (0)), _local9)); _local11 = Math.max(this.last_pcnt, _local11); this.last_pcnt = _local11; _local10.scaleX = (_local11 * 0.01); options.ad_progress(_local11); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local8}); if (_local8 >= 100){ sendHostProgress = false; }; }; if (!chk.showing){ _local12 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local12 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((_local3 > chk.ad_timeout)) && ((_local8 == 100)))){ options.ad_failed(); _local4 = true; }; }; }; if (_local3 > chk.ad_msec){ _local4 = true; }; if (((complete) && (_local4))){ if (unloaded){ MochiAd.unload(_local1); } else { if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); MochiAd.showPreGameAd(_arg1); } public static function showTimedAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); MochiAd.showInterLevelAd(_arg1); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package mochi.as3
Section 75
//MochiCoins (mochi.as3.MochiCoins) package mochi.as3 { public class MochiCoins { public static const STORE_HIDE:String = "StoreHide"; public static const NO_USER:String = "NoUser"; public static const IO_ERROR:String = "IOError"; public static const ITEM_NEW:String = "ItemNew"; public static const ITEM_OWNED:String = "ItemOwned"; public static const STORE_ITEMS:String = "StoreItems"; public static const ERROR:String = "Error"; public static const STORE_SHOW:String = "StoreShow"; public static var _inventory:MochiInventory; public static function triggerEvent(_arg1:String, _arg2:Object):void{ MochiSocial.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ MochiSocial.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ MochiSocial.addEventListener(_arg1, _arg2); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function get inventory():MochiInventory{ return (_inventory); } public static function showStore(_arg1:Object=null):void{ MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:_arg1}, null, null); } public static function showItem(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:_arg1}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showVideo(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:_arg1}, null, null); } MochiSocial.addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _inventory = new MochiInventory(); }); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _inventory = null; }); } }//package mochi.as3
Section 76
//MochiDigits (mochi.as3.MochiDigits) package mochi.as3 { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function set value(_arg1:Number):void{ setValue(_arg1); } public function reencode():void{ var _local1:uint; _local1 = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function toString():String{ var _local1:String; _local1 = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function get value():Number{ return (Number(this.toString())); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String; _local3 = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi.as3
Section 77
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher) package mochi.as3 { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ eventTable = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ return; }; for (_local3 in eventTable[_arg1]) { var _local6 = eventTable[_arg1]; _local6[_local3](_arg2); }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ eventTable[_arg1] = []; return; }; for (_local3 in eventTable[_arg1]) { if (eventTable[_arg1][_local3] != _arg2){ } else { eventTable[_arg1].splice(Number(_local3), 1); }; }; } public function addEventListener(_arg1:String, _arg2:Function):void{ removeEventListener(_arg1, _arg2); eventTable[_arg1].push(_arg2); } } }//package mochi.as3
Section 78
//MochiEvents (mochi.as3.MochiEvents) package mochi.as3 { import flash.display.*; public class MochiEvents { public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL"; public static const FORMAT_LONG:String = "LongForm"; public static const ALIGN_BOTTOM:String = "ALIGN_B"; public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived"; public static const FORMAT_SHORT:String = "ShortForm"; public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR"; public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR"; public static const ALIGN_TOP:String = "ALIGN_T"; public static const ALIGN_LEFT:String = "ALIGN_L"; public static const ALIGN_RIGHT:String = "ALIGN_R"; public static const ALIGN_TOP_LEFT:String = "ALIGN_TL"; public static const ALIGN_CENTER:String = "ALIGN_C"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var gameStart:Number; private static var levelStart:Number; public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function startSession(_arg1:String):void{ MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{ var _local3:Object; var _local4:Object; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; _local3.clip = _arg1; MochiServices.send("events_setNotifications", _local3, null, null); } public static function endGame():void{ var _local1:Number; _local1 = (new Date().time - gameStart); trigger("end_game", {time:_local1}); } public static function startGame():void{ gameStart = new Date().time; trigger("start_game"); } public static function trigger(_arg1:String, _arg2:Object=null):void{ if (_arg2 == null){ _arg2 = {}; } else { if (_arg2["kind"] != undefined){ trace("WARNING: optional arguments package contains key 'id', it will be overwritten"); _arg2["kind"] = _arg1; }; }; MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function startLevel():void{ levelStart = new Date().time; trigger("start_level"); } public static function endLevel():void{ var _local1:Number; _local1 = (new Date().time - levelStart); trigger("end_level", {time:_local1}); } } }//package mochi.as3
Section 79
//MochiInventory (mochi.as3.MochiInventory) package mochi.as3 { import flash.events.*; import flash.utils.*; public dynamic class MochiInventory extends Proxy { private var _timer:Timer; private var _names:Array; private var _consumableProperties:Object; private var _syncID:Number; private var _storeSync:Object; private var _outstandingID:Number; private var _syncPending:Boolean; public static const READY:String = "InvReady"; public static const ERROR:String = "Error"; public static const IO_ERROR:String = "IoError"; private static const KEY_SALT:String = " syncMaint"; public static const WRITTEN:String = "InvWritten"; public static const NOT_READY:String = "InvNotReady"; public static const VALUE_ERROR:String = "InvValueError"; private static const CONSUMER_KEY:String = "MochiConsumables"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public function MochiInventory():void{ MochiCoins.addEventListener(MochiCoins.ITEM_OWNED, itemOwned); MochiCoins.addEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.addEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, loggedOut); _storeSync = new Object(); _syncPending = false; _outstandingID = 0; _syncID = 0; _timer = new Timer(1000); _timer.addEventListener(TimerEvent.TIMER, sync); _timer.start(); if (MochiSocial.loggedIn){ loggedIn(); } else { loggedOut(); }; } private function newItems(_arg1:Object):void{ if (!this[(_arg1.id + KEY_SALT)]){ this[(_arg1.id + KEY_SALT)] = 0; }; if (!this[_arg1.id]){ this[_arg1.id] = 0; }; this[(_arg1.id + KEY_SALT)] = (this[(_arg1.id + KEY_SALT)] + _arg1.count); this[_arg1.id] = (this[_arg1.id] + _arg1.count); if (_arg1.privateProperties.consumable){ if (!this[_arg1.privateProperties.tag]){ this[_arg1.privateProperties.tag] = 0; }; this[_arg1.privateProperties.tag] = (this[_arg1.privateProperties.tag] + (_arg1.privateProperties.inc * _arg1.count)); }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (-1); }; if (_consumableProperties[_arg1]){ return (MochiDigits(_consumableProperties[_arg1]).value); }; return (undefined); } public function release():void{ MochiCoins.removeEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.removeEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.removeEventListener(MochiSocial.LOGGED_OUT, loggedOut); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (false); }; if (_consumableProperties[_arg1] == undefined){ return (false); }; return (true); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ return (((_arg1)>=_names.length) ? 0 : (_arg1 + 1)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:MochiDigits; if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return; }; if (!(_arg2 is Number)){ triggerEvent(ERROR, {type:VALUE_ERROR, error:"Invalid type", arg:_arg2}); return; }; if (_consumableProperties[_arg1]){ _local3 = MochiDigits(_consumableProperties[_arg1]); if (_local3.value == _arg2){ return; }; _local3.value = _arg2; } else { _names.push(_arg1); _consumableProperties[_arg1] = new MochiDigits(_arg2); }; _syncID++; } private function sync(_arg1:Event=null):void{ var _local2:Object; var _local3:String; if (((_syncPending) || ((_syncID == _outstandingID)))){ return; }; _outstandingID = _syncID; _local2 = {}; for (_local3 in _consumableProperties) { _local2[_local3] = MochiDigits(_consumableProperties[_local3]).value; }; MochiUserData.put(CONSUMER_KEY, _local2, putConsumableBag); _syncPending = true; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return (_names[(_arg1 - 1)]); } private function loggedIn(_arg1:Object=null):void{ MochiUserData.get(CONSUMER_KEY, getConsumableBag); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function deleteProperty(_arg1):Boolean{ if (!_consumableProperties[_arg1]){ return (false); }; _names.splice(_names.indexOf(_arg1), 1); delete _consumableProperties[_arg1]; return (true); } private function itemOwned(_arg1:Object):void{ _storeSync[_arg1.id] = {properties:_arg1.properties, count:_arg1.count}; } private function putConsumableBag(_arg1:MochiUserData):void{ _syncPending = false; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); _outstandingID = -1; }; triggerEvent(WRITTEN, {}); } private function getConsumableBag(_arg1:MochiUserData):void{ var _local2:String; var _local3:Number; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); return; }; _consumableProperties = {}; _names = new Array(); if (_arg1.data){ for (_local2 in _arg1.data) { _names.push(_local2); _consumableProperties[_local2] = new MochiDigits(_arg1.data[_local2]); }; }; for (_local2 in _storeSync) { _local3 = _storeSync[_local2].count; if (_consumableProperties[(_local2 + KEY_SALT)]){ _local3 = (_local3 - _consumableProperties[_local2]); }; if (_local3 == 0){ } else { newItems({id:_local2, count:_local3, properties:_storeSync[_local2].properties}); }; }; triggerEvent(READY, {}); } private function loggedOut(_arg1:Object=null):void{ _consumableProperties = null; } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } } }//package mochi.as3
Section 80
//MochiServices (mochi.as3.MochiServices) package mochi.as3 { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.geom.*; import flash.net.*; import flash.system.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; private static var _preserved:Object; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; public static var servicesSync:MochiSync = new MochiSync(); private static var _clip:MovieClip; private static var _id:String; private static var _services:String = "services.swf"; private static var _servURL:String = "http://www.mochiads.com/static/lib/services/"; public static var widget:Boolean = false; private static var _timer:Timer; private static var _sendChannelName:String; private static var _loader:Loader; private static var _connecting:Boolean = false; private static var _mochiLocalConnection:MovieClip; private static var _listenChannelName:String = "__ms_"; public static var onError:Object; public static var netup:Boolean = true; private static var _mochiLC:String = "MochiLC.swf"; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(_arg1:Object):void{ var cb:String; var cblst:Object; var method:*; var methodName:String; var obj:Object; var pkg = _arg1; cb = pkg.callbackID; cblst = _clip._callbacks[cb]; if (!cblst){ return; }; method = cblst.callbackMethod; methodName = ""; obj = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete _clip._callbacks[cb]; } public static function get childClip():Object{ return (_clip); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1)); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local3:Array; var _local4:int; var _local5:Array; var _local6:Array; var _local7:MovieClip; var _local8:LocalConnection; var _local9:String; var _local10:ByteArray; var _local11:ByteArray; var _local12:uint; var _local13:uint; var _local14:Loader; _local3 = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; _local5 = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; _local6 = [0, 64, 0, 0, 0]; _local7 = new MovieClip(); _local8 = new LocalConnection(); _local9 = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); _local10 = new ByteArray(); _local11 = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); _local12 = ((_local3.length + _local11.length) + 4); _local13 = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var vars:Object; var avm1Click:DisplayObject; var s:String; var i:Number; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; vars = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); s = "?"; i = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ var _local2:Rectangle; if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); _local2 = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function warnID(_arg1:String, _arg2:Boolean):void{ var _local3:Number; _arg1 = _arg1.toLowerCase(); if (_arg1.length != 16){ trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (_arg1 == "1e113c7239048b3f"){ if (_arg2){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (_arg1 == "84993a1de4031cd8"){ if (_arg2){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; _local3 = 0; while (_local3 < _arg1.length) { switch (_arg1.charAt(_local3)){ case "0": case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "a": case "b": case "c": case "d": case "e": case "f": break; default: trace(("WARNING: Board ID contains illegal characters: " + _arg1)); return; }; _local3++; }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _mochiLocalConnection.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(_local2); Security.allowInsecureDomain(_local2); }; }; return (_local2); } public static function getVersion():String{ return ("3.7 as3"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (((_clip) && (_clip._queue))){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(_arg1:Object):void{ var _local2:String; var _local3:String; _local2 = _arg1.target; _local3 = _arg1.event; switch (_local2){ case "events": MochiEvents.triggerEvent(_arg1.event, _arg1.args); break; case "coins": MochiCoins.triggerEvent(_arg1.event, _arg1.args); break; case "sync": servicesSync.triggerEvent(_arg1.event, _arg1.args); break; }; } private static function urlOptions(_arg1:Object):Object{ var _local2:Object; var _local3:String; var _local4:Array; var _local5:Number; var _local6:Array; _local2 = {}; if (_arg1.stage){ _local3 = _arg1.stage.loaderInfo.parameters.mochiad_options; } else { _local3 = _arg1.loaderInfo.parameters.mochiad_options; }; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function loadError(_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); } private static function initComChannels():void{ if (!_connected){ trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _clip.onReceive = onReceive; _clip.onEvent = onEvent; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; while (_clip._queue.length > 0) { _mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function loadLCBridge(_arg1:Object):void{ var loader:Loader; var mochiLCURL:String; var req:URLRequest; var complete:Function; var clip = _arg1; loader = new Loader(); mochiLCURL = (_servURL + _mochiLC); req = new URLRequest(mochiLCURL); complete = function (_arg1:Object):void{ _mochiLocalConnection = MovieClip(loader.content); listen(); }; loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); loader.load(req); clip.addChild(loader); } private static function listen():void{ _mochiLocalConnection.connect(_listenChannelName); _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function get clip():Object{ return (_container); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var _local3:String; var _local4:String; var _local5:URLRequest; var _local6:URLVariables; _local3 = ("_mochiservices_com_" + _arg1); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(_arg2).servURL){ _servURL = urlOptions(_arg2).servURL; }; _local4 = (_servURL + _services); if (urlOptions(_arg2).servicesURL){ _local4 = urlOptions(_arg2).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(_local4); _clip = createEmptyMovieClip(_arg2, _local3, 10336, false); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); _local5 = new URLRequest(_local4); _local6 = new URLVariables(); _local6.listenLC = _listenChannelName; _local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options; _local6.api_version = getVersion(); if (widget){ _local6.widget = true; }; _local5.data = _local6; _loader.load(_local5); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; _timer = new Timer(10000, 1); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); return (_clip); } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; warnID(id, false); if ((clip is DisplayObject)){ if (clip.stage == null){ trace("MochiServices connect requires the containing clip be attached to the stage"); }; if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var mc:MovieClip; var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; mc = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function bringToTop(_arg1:Event=null):void{ var e = _arg1; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; } public static function connectWait(_arg1:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); }; } } }//package mochi.as3
Section 81
//MochiSocial (mochi.as3.MochiSocial) package mochi.as3 { public class MochiSocial { public static const LOGGED_IN:String = "LoggedIn"; public static const PROFILE_HIDE:String = "ProfileHide"; public static const NO_USER:String = "NoUser"; public static const PROPERTIES_SIZE:String = "PropertiesSize"; public static const IO_ERROR:String = "IOError"; public static const PROPERTIES_SAVED:String = "PropertySaved"; public static const WIDGET_LOADED:String = "WidgetLoaded"; public static const USER_INFO:String = "UserInfo"; public static const ERROR:String = "Error"; public static const LOGIN_SHOW:String = "LoginShow"; public static const LOGGED_OUT:String = "LoggedOut"; public static const PROFILE_SHOW:String = "ProfileShow"; public static const LOGIN_SHOWN:String = "LoginShown"; public static const LOGIN_HIDE:String = "LoginHide"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static var _user_info:Object = null; public static function getVersion():String{ return (MochiServices.getVersion()); } public static function saveUserProperties(_arg1:Object):void{ MochiServices.send("coins_saveUserProperties", _arg1); } public static function get loggedIn():Boolean{ return (!((_user_info == null))); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function getUserInfo():void{ MochiServices.send("coins_getUserInfo"); } public static function showLoginWidget(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showLoginWidget", {options:_arg1}); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function requestLogin():void{ MochiServices.send("coins_requestLogin"); } public static function getAPIURL():String{ if (!_user_info){ return (null); }; return (_user_info.api_url); } public static function hideLoginWidget():void{ MochiServices.send("coins_hideLoginWidget"); } public static function getAPIToken():String{ if (!_user_info){ return (null); }; return (_user_info.api_token); } MochiSocial.addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _user_info = _arg1; }); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _user_info = null; }); } }//package mochi.as3
Section 82
//MochiSync (mochi.as3.MochiSync) package mochi.as3 { import flash.utils.*; public dynamic class MochiSync extends Proxy { private var _syncContainer:Object; public static var SYNC_PROPERTY:String = "UpdateProperty"; public static var SYNC_REQUEST:String = "SyncRequest"; public function MochiSync():void{ _syncContainer = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ switch (_arg1){ case SYNC_REQUEST: MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY: _syncContainer[_arg2.name] = _arg2.value; break; }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ return (_syncContainer[_arg1]); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:String; if (_syncContainer[_arg1] == _arg2){ return; }; _local3 = _arg1.toString(); _syncContainer[_local3] = _arg2; MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2}); } } }//package mochi.as3
Section 83
//MochiUserData (mochi.as3.MochiUserData) package mochi.as3 { import flash.events.*; import flash.utils.*; import flash.net.*; public class MochiUserData extends EventDispatcher { public var callback:Function;// = null public var error:Event;// = null public var key:String;// = null public var operation:String;// = null public var data;// = null public var _loader:URLLoader; public function MochiUserData(_arg1:String="", _arg2:Function=null){ key = null; data = null; error = null; operation = null; callback = null; super(); this.key = _arg1; this.callback = _arg2; } public function securityErrorHandler(_arg1:SecurityErrorEvent):void{ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + _arg1.toString()))); } public function putEvent(_arg1):void{ request("put", serialize(_arg1)); } public function request(_arg1:String, _arg2:ByteArray):void{ var api_url:String; var api_token:String; var args:URLVariables; var req:URLRequest; var _operation = _arg1; var _data = _arg2; operation = _operation; api_url = MochiSocial.getAPIURL(); api_token = MochiSocial.getAPIToken(); if ((((api_url == null)) || ((api_token == null)))){ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, "not logged in")); return; }; _loader = new URLLoader(); args = new URLVariables(); args.op = _operation; args.key = key; req = new URLRequest((((MochiSocial.getAPIURL() + "/") + "MochiUserData?") + args.toString())); req.method = URLRequestMethod.POST; req.contentType = "application/x-mochi-userdata"; req.requestHeaders = [new URLRequestHeader("x-mochi-services-version", MochiServices.getVersion()), new URLRequestHeader("x-mochi-api-token", api_token)]; req.data = _data; _loader.dataFormat = URLLoaderDataFormat.BINARY; _loader.addEventListener(Event.COMPLETE, completeHandler); _loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); try { _loader.load(req); } catch(e:SecurityError) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + e.toString()))); }; } public function completeHandler(_arg1:Event):void{ var event = _arg1; try { if (_loader.data.length){ data = deserialize(_loader.data); } else { data = null; }; } catch(e:Error) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("deserialize error: " + e.toString()))); return; }; if (callback != null){ performCallback(); } else { dispatchEvent(event); }; close(); } public function performCallback():void{ try { callback(this); } catch(e:Error) { trace(("[MochiUserData] exception during callback: " + e)); }; } public function serialize(_arg1):ByteArray{ var _local2:ByteArray; _local2 = new ByteArray(); _local2.objectEncoding = ObjectEncoding.AMF3; _local2.writeObject(_arg1); _local2.compress(); return (_local2); } public function errorHandler(_arg1:IOErrorEvent):void{ data = null; error = _arg1; if (callback != null){ performCallback(); } else { dispatchEvent(_arg1); }; close(); } public function getEvent():void{ request("get", serialize(null)); } override public function toString():String{ return ((((((((("[MochiUserData operation=" + operation) + " key=\"") + key) + "\" data=") + data) + " error=\"") + error) + "\"]")); } public function close():void{ if (_loader){ _loader.removeEventListener(Event.COMPLETE, completeHandler); _loader.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); _loader.close(); _loader = null; }; error = null; callback = null; } public function deserialize(_arg1:ByteArray){ _arg1.objectEncoding = ObjectEncoding.AMF3; _arg1.uncompress(); return (_arg1.readObject()); } public static function get(_arg1:String, _arg2:Function):void{ var _local3:MochiUserData; _local3 = new MochiUserData(_arg1, _arg2); _local3.getEvent(); } public static function put(_arg1:String, _arg2, _arg3:Function):void{ var _local4:MochiUserData; _local4 = new MochiUserData(_arg1, _arg3); _local4.putEvent(_arg2); } } }//package mochi.as3
Section 84
//music1 (music1) package { import flash.media.*; public dynamic class music1 extends Sound { } }//package
Section 85
//music2 (music2) package { import flash.media.*; public dynamic class music2 extends Sound { } }//package
Section 86
//snd_alarm (snd_alarm) package { import flash.media.*; public dynamic class snd_alarm extends Sound { } }//package
Section 87
//snd_bonus1 (snd_bonus1) package { import flash.media.*; public dynamic class snd_bonus1 extends Sound { } }//package
Section 88
//snd_bonus2 (snd_bonus2) package { import flash.media.*; public dynamic class snd_bonus2 extends Sound { } }//package
Section 89
//snd_bonus3 (snd_bonus3) package { import flash.media.*; public dynamic class snd_bonus3 extends Sound { } }//package
Section 90
//snd_boss_beat1 (snd_boss_beat1) package { import flash.media.*; public dynamic class snd_boss_beat1 extends Sound { } }//package
Section 91
//snd_boss_beat2 (snd_boss_beat2) package { import flash.media.*; public dynamic class snd_boss_beat2 extends Sound { } }//package
Section 92
//snd_boss_beat3 (snd_boss_beat3) package { import flash.media.*; public dynamic class snd_boss_beat3 extends Sound { } }//package
Section 93
//snd_chain (snd_chain) package { import flash.media.*; public dynamic class snd_chain extends Sound { } }//package
Section 94
//snd_death (snd_death) package { import flash.media.*; public dynamic class snd_death extends Sound { } }//package
Section 95
//snd_drop (snd_drop) package { import flash.media.*; public dynamic class snd_drop extends Sound { } }//package
Section 96
//snd_exp1 (snd_exp1) package { import flash.media.*; public dynamic class snd_exp1 extends Sound { } }//package
Section 97
//snd_exp2 (snd_exp2) package { import flash.media.*; public dynamic class snd_exp2 extends Sound { } }//package
Section 98
//snd_exp3 (snd_exp3) package { import flash.media.*; public dynamic class snd_exp3 extends Sound { } }//package
Section 99
//snd_gameover (snd_gameover) package { import flash.media.*; public dynamic class snd_gameover extends Sound { } }//package
Section 100
//snd_levcompl (snd_levcompl) package { import flash.media.*; public dynamic class snd_levcompl extends Sound { } }//package
Section 101
//snd_Menu1 (snd_Menu1) package { import flash.media.*; public dynamic class snd_Menu1 extends Sound { } }//package
Section 102
//snd_Menu2 (snd_Menu2) package { import flash.media.*; public dynamic class snd_Menu2 extends Sound { } }//package
Section 103
//snd_proj1 (snd_proj1) package { import flash.media.*; public dynamic class snd_proj1 extends Sound { } }//package
Section 104
//snd_score (snd_score) package { import flash.media.*; public dynamic class snd_score extends Sound { } }//package

Library Items

Symbol 1 FontUsed by:2 47 208 209 222 223 224 227 242 243 247 250 251 252 253 254 255 256 257 258 259 260 261 262 263 265 266 269 270 271 273 274 278 279 280 282 283 285 286 288 289 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 321 322 335 336 337 338 339 340 341 344 345 346 348 349 353 354 355 357 358 360 361 364 366 367 368
Symbol 2 EditableTextUses:1Used by:7
Symbol 3 GraphicUsed by:6
Symbol 4 ShapeTweeningUsed by:6
Symbol 5 GraphicUsed by:6
Symbol 6 MovieClip {game_fla.progressbar_5}Uses:3 4 5Used by:7
Symbol 7 MovieClip {main.preloader}Uses:2 6Used by:Timeline
Symbol 8 BitmapUsed by:9
Symbol 9 GraphicUses:8Used by:27
Symbol 10 BitmapUsed by:11
Symbol 11 GraphicUses:10Used by:27
Symbol 12 BitmapUsed by:13
Symbol 13 GraphicUses:12Used by:27
Symbol 14 BitmapUsed by:15
Symbol 15 GraphicUses:14Used by:27
Symbol 16 BitmapUsed by:17
Symbol 17 GraphicUses:16Used by:27
Symbol 18 GraphicUsed by:26
Symbol 19 GraphicUsed by:26
Symbol 20 GraphicUsed by:26
Symbol 21 GraphicUsed by:26
Symbol 22 GraphicUsed by:26
Symbol 23 GraphicUsed by:26
Symbol 24 GraphicUsed by:26
Symbol 25 GraphicUsed by:26
Symbol 26 MovieClip {main.Star}Uses:18 19 20 21 22 23 24 25Used by:27  Timeline
Symbol 27 MovieClip {main.background}Uses:9 11 13 15 17 26Used by:371  Timeline
Symbol 28 BitmapUsed by:29
Symbol 29 GraphicUses:28Used by:30
Symbol 30 MovieClipUses:29Used by:294  Timeline
Symbol 31 GraphicUsed by:36
Symbol 32 GraphicUsed by:36
Symbol 33 GraphicUsed by:36
Symbol 34 GraphicUsed by:36
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClip {main.enemyWeakGreen}Uses:31 32 33 34 35Used by:Timeline
Symbol 37 GraphicUsed by:42
Symbol 38 GraphicUsed by:42
Symbol 39 GraphicUsed by:42
Symbol 40 GraphicUsed by:42
Symbol 41 GraphicUsed by:42
Symbol 42 MovieClip {main.enemyWeak}Uses:37 38 39 40 41Used by:Timeline
Symbol 43 GraphicUsed by:44
Symbol 44 MovieClip {main.explode}Uses:43Used by:Timeline
Symbol 45 GraphicUsed by:46
Symbol 46 MovieClip {main.aura}Uses:45Used by:Timeline
Symbol 47 TextUses:1Used by:69
Symbol 48 Sound {snd_bonus1}Used by:69
Symbol 49 Sound {snd_bonus2}Used by:69
Symbol 50 Sound {snd_bonus3}Used by:69
Symbol 51 Sound {snd_boss_beat1}Used by:69
Symbol 52 Sound {snd_boss_beat2}Used by:69
Symbol 53 Sound {snd_boss_beat3}Used by:69
Symbol 54 Sound {snd_death}Used by:69
Symbol 55 Sound {snd_exp1}Used by:69
Symbol 56 Sound {snd_exp2}Used by:69
Symbol 57 Sound {snd_exp3}Used by:69
Symbol 58 Sound {snd_Menu1}Used by:69
Symbol 59 Sound {snd_Menu2}Used by:69
Symbol 60 Sound {snd_drop}Used by:69
Symbol 61 Sound {snd_chain}Used by:69
Symbol 62 Sound {music1}Used by:69
Symbol 63 Sound {music2}Used by:69
Symbol 64 Sound {snd_gameover}Used by:69
Symbol 65 Sound {snd_levcompl}Used by:69
Symbol 66 Sound {snd_proj1}Used by:69
Symbol 67 Sound {snd_alarm}Used by:69
Symbol 68 Sound {snd_score}Used by:69
Symbol 69 MovieClip {game_fla.sound_init_10}Uses:47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68Used by:Timeline
Symbol 70 FontUsed by:71 72 73
Symbol 71 EditableTextUses:70Used by:74
Symbol 72 EditableTextUses:70Used by:74
Symbol 73 EditableTextUses:70Used by:74
Symbol 74 MovieClip {main.gameText}Uses:71 72 73Used by:Timeline
Symbol 75 GraphicUsed by:80
Symbol 76 GraphicUsed by:80
Symbol 77 GraphicUsed by:80
Symbol 78 GraphicUsed by:80
Symbol 79 GraphicUsed by:80
Symbol 80 MovieClip {main.enemyWeakPink}Uses:75 76 77 78 79Used by:Timeline
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClip {main.bonusPink}Uses:81Used by:248 342  Timeline
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClip {main.bonusGreen}Uses:83Used by:248 342  Timeline
Symbol 85 GraphicUsed by:86
Symbol 86 MovieClip {main.turretLite}Uses:85Used by:Timeline
Symbol 87 GraphicUsed by:90
Symbol 88 ShapeTweeningUsed by:90
Symbol 89 ShapeTweeningUsed by:90
Symbol 90 MovieClip {main.projLite}Uses:87 88 89Used by:Timeline
Symbol 91 GraphicUsed by:92
Symbol 92 MovieClip {main.bossProgressorPart1}Uses:91Used by:107  Timeline
Symbol 93 GraphicUsed by:94
Symbol 94 MovieClip {main.bossProgressorPart2}Uses:93Used by:107  Timeline
Symbol 95 GraphicUsed by:107
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClip {main.bossProgressorPart3}Uses:96Used by:107  Timeline
Symbol 98 GraphicUsed by:99
Symbol 99 MovieClip {main.bossProgressorPart4}Uses:98Used by:107  Timeline
Symbol 100 GraphicUsed by:101
Symbol 101 MovieClip {main.bossProgressorPart5}Uses:100Used by:107  Timeline
Symbol 102 GraphicUsed by:107
Symbol 103 GraphicUsed by:107
Symbol 104 GraphicUsed by:107
Symbol 105 GraphicUsed by:107
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClip {main.bossProgressor}Uses:92 94 95 97 99 101 102 103 104 105 106Used by:Timeline
Symbol 108 GraphicUsed by:115
Symbol 109 GraphicUsed by:110
Symbol 110 MovieClip {main.enemySwirlPart}Uses:109Used by:115  Timeline
Symbol 111 GraphicUsed by:115
Symbol 112 GraphicUsed by:115
Symbol 113 GraphicUsed by:115
Symbol 114 GraphicUsed by:115
Symbol 115 MovieClip {main.enemySwirl}Uses:108 110 111 112 113 114Used by:Timeline
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClip {main.bonusBrown}Uses:116Used by:248 342  Timeline
Symbol 118 GraphicUsed by:127
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClip {main.bossSeederPart}Uses:119Used by:127  Timeline
Symbol 121 GraphicUsed by:127
Symbol 122 GraphicUsed by:127
Symbol 123 GraphicUsed by:127
Symbol 124 GraphicUsed by:127
Symbol 125 GraphicUsed by:127
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClip {main.bossSeeder}Uses:118 120 121 122 123 124 125 126Used by:Timeline
Symbol 128 GraphicUsed by:133
Symbol 129 GraphicUsed by:130
Symbol 130 MovieClip {main.turretHeavyPart}Uses:129Used by:133  Timeline
Symbol 131 GraphicUsed by:133
Symbol 132 GraphicUsed by:133
Symbol 133 MovieClip {main.turretHeavy}Uses:128 130 131 132Used by:Timeline
Symbol 134 GraphicUsed by:135
Symbol 135 MovieClip {main.enemySaw}Uses:134Used by:Timeline
Symbol 136 GraphicUsed by:139
Symbol 137 GraphicUsed by:139
Symbol 138 GraphicUsed by:139
Symbol 139 MovieClip {main.enemyMiner}Uses:136 137 138Used by:Timeline
Symbol 140 GraphicUsed by:147
Symbol 141 GraphicUsed by:143
Symbol 142 GraphicUsed by:143
Symbol 143 MovieClip {main.bossFighterTurret}Uses:141 142Used by:147  Timeline
Symbol 144 GraphicUsed by:147
Symbol 145 GraphicUsed by:147
Symbol 146 GraphicUsed by:147
Symbol 147 MovieClip {main.bossFighter}Uses:140 143 144 145 146Used by:Timeline
Symbol 148 GraphicUsed by:149
Symbol 149 MovieClip {main.bossFighterTurretPart}Uses:148Used by:Timeline
Symbol 150 GraphicUsed by:160
Symbol 151 GraphicUsed by:152
Symbol 152 MovieClip {main.bossDevastatorPart1}Uses:151Used by:160  Timeline
Symbol 153 GraphicUsed by:160
Symbol 154 GraphicUsed by:160
Symbol 155 GraphicUsed by:160
Symbol 156 GraphicUsed by:160
Symbol 157 GraphicUsed by:158
Symbol 158 MovieClip {main.bossDevastatorPart4}Uses:157Used by:160  Timeline
Symbol 159 GraphicUsed by:160
Symbol 160 MovieClip {main.bossDevastator}Uses:150 152 153 154 155 156 158 159Used by:Timeline
Symbol 161 GraphicUsed by:162
Symbol 162 MovieClip {main.bossDevastatorPart2}Uses:161Used by:Timeline
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClip {main.bossDevastatorPart3}Uses:163Used by:Timeline
Symbol 165 GraphicUsed by:Timeline
Symbol 166 GraphicUsed by:167
Symbol 167 MovieClipUses:166Used by:184
Symbol 168 GraphicUsed by:184
Symbol 169 GraphicUsed by:170
Symbol 170 MovieClipUses:169Used by:184
Symbol 171 GraphicUsed by:184
Symbol 172 FontUsed by:173
Symbol 173 TextUses:172Used by:184
Symbol 174 GraphicUsed by:184
Symbol 175 GraphicUsed by:176
Symbol 176 MovieClipUses:175Used by:184
Symbol 177 GraphicUsed by:184
Symbol 178 GraphicUsed by:184
Symbol 179 GraphicUsed by:184
Symbol 180 GraphicUsed by:184
Symbol 181 GraphicUsed by:184
Symbol 182 GraphicUsed by:184
Symbol 183 GraphicUsed by:184
Symbol 184 MovieClip {game_fla.sprite19_41}Uses:167 168 170 171 173 174 176 177 178 179 180 181 182 183Used by:185
Symbol 185 MovieClipUses:184Used by:Timeline
Symbol 186 GraphicUsed by:190
Symbol 187 GraphicUsed by:190
Symbol 188 GraphicUsed by:190
Symbol 189 GraphicUsed by:190
Symbol 190 MovieClip {main.enemyHunter}Uses:186 187 188 189Used by:Timeline
Symbol 191 GraphicUsed by:202
Symbol 192 GraphicUsed by:193 272 275 281 284 287 290 347 350 356 359 362
Symbol 193 MovieClip {main.bossDeathPart}Uses:192Used by:202  Timeline
Symbol 194 GraphicUsed by:202
Symbol 195 GraphicUsed by:202
Symbol 196 GraphicUsed by:202
Symbol 197 GraphicUsed by:202
Symbol 198 GraphicUsed by:202
Symbol 199 GraphicUsed by:202
Symbol 200 GraphicUsed by:202
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClip {main.bossDeath}Uses:191 193 194 195 196 197 198 199 200 201Used by:Timeline
Symbol 203 GraphicUsed by:204
Symbol 204 MovieClip {main.blackFader}Uses:203Used by:Timeline
Symbol 205 SoundUsed by:Timeline
Symbol 206 GraphicUsed by:207
Symbol 207 MovieClipUses:206Used by:371
Symbol 208 EditableTextUses:1Used by:371
Symbol 209 EditableTextUses:1Used by:371
Symbol 210 GraphicUsed by:213
Symbol 211 GraphicUsed by:213
Symbol 212 GraphicUsed by:213
Symbol 213 MovieClip {main.player}Uses:210 211 212Used by:294 371
Symbol 214 FontUsed by:215
Symbol 215 EditableTextUses:214Used by:216
Symbol 216 MovieClip {main.gameMessage}Uses:215Used by:371
Symbol 217 ShapeTweeningUsed by:221
Symbol 218 FontUsed by:219
Symbol 219 EditableTextUses:218Used by:221
Symbol 220 GraphicUsed by:221
Symbol 221 MovieClip {game_fla.GameProgress_53}Uses:217 219 220Used by:371
Symbol 222 EditableTextUses:1Used by:226
Symbol 223 EditableTextUses:1Used by:226
Symbol 224 EditableTextUses:1Used by:226
Symbol 225 GraphicUsed by:226
Symbol 226 ButtonUses:222 223 224 225Used by:371
Symbol 227 EditableTextUses:1Used by:228
Symbol 228 MovieClip {main.longChain}Uses:227Used by:371
Symbol 229 FontUsed by:230
Symbol 230 EditableTextUses:229Used by:371
Symbol 231 GraphicUsed by:248
Symbol 232 BitmapUsed by:236 237 238 239 240
Symbol 233 BitmapUsed by:236 237 238 239 240
Symbol 234 BitmapUsed by:236 237 238 239 240
Symbol 235 BitmapUsed by:236 237 238 239 240
Symbol 236 GraphicUses:232 233 234 235Used by:241
Symbol 237 GraphicUses:232 233 234 235Used by:241
Symbol 238 GraphicUses:232 233 234 235Used by:241
Symbol 239 GraphicUses:232 233 234 235Used by:241
Symbol 240 GraphicUses:232 233 234 235Used by:241
Symbol 241 MovieClip {game_fla.keybMove_57}Uses:236 237 238 239 240Used by:248 342
Symbol 242 TextUses:1Used by:248
Symbol 243 TextUses:1Used by:248
Symbol 244 BitmapUsed by:245
Symbol 245 GraphicUses:244Used by:246
Symbol 246 MovieClip {game_fla.keybSpace_58}Uses:245Used by:248 342
Symbol 247 TextUses:1Used by:248
Symbol 248 MovieClip {main.inGameHlp}Uses:231 241 242 243 246 247 84 117 82Used by:371
Symbol 249 GraphicUsed by:267
Symbol 250 TextUses:1Used by:267
Symbol 251 EditableTextUses:1Used by:267
Symbol 252 EditableTextUses:1Used by:267
Symbol 253 EditableTextUses:1Used by:267
Symbol 254 EditableTextUses:1Used by:267
Symbol 255 EditableTextUses:1Used by:267
Symbol 256 EditableTextUses:1Used by:267
Symbol 257 EditableTextUses:1Used by:267
Symbol 258 EditableTextUses:1Used by:267
Symbol 259 EditableTextUses:1Used by:267
Symbol 260 EditableTextUses:1Used by:267
Symbol 261 EditableTextUses:1Used by:264
Symbol 262 EditableTextUses:1Used by:264
Symbol 263 EditableTextUses:1Used by:264
Symbol 264 MovieClip {game_fla.pressAnyKey_60}Uses:261 262 263Used by:267 320 342 365 370
Symbol 265 EditableTextUses:1Used by:267
Symbol 266 EditableTextUses:1Used by:267
Symbol 267 MovieClip {main.levcompScreen}Uses:249 250 251 252 253 254 255 256 257 258 259 260 264 265 266Used by:371
Symbol 268 GraphicUsed by:276
Symbol 269 TextUses:1Used by:276
Symbol 270 TextUses:1Used by:272
Symbol 271 TextUses:1Used by:272
Symbol 272 ButtonUses:270 271 192Used by:276
Symbol 273 TextUses:1Used by:275
Symbol 274 TextUses:1Used by:275
Symbol 275 ButtonUses:273 274 192Used by:276
Symbol 276 MovieClip {main.pauseMenu}Uses:268 269 272 275Used by:371
Symbol 277 GraphicUsed by:294
Symbol 278 TextUses:1Used by:294
Symbol 279 TextUses:1Used by:281
Symbol 280 TextUses:1Used by:281
Symbol 281 ButtonUses:279 280 192Used by:294
Symbol 282 TextUses:1Used by:284
Symbol 283 TextUses:1Used by:284
Symbol 284 ButtonUses:282 283 192Used by:294
Symbol 285 TextUses:1Used by:287
Symbol 286 TextUses:1Used by:287
Symbol 287 ButtonUses:285 286 192Used by:294
Symbol 288 TextUses:1Used by:290
Symbol 289 TextUses:1Used by:290
Symbol 290 ButtonUses:288 289 192Used by:294
Symbol 291 FontUsed by:292 364
Symbol 292 EditableTextUses:291Used by:293
Symbol 293 MovieClipUses:292Used by:294
Symbol 294 MovieClip {main.menuiMain}Uses:277 278 281 213 284 287 290 30 293Used by:371
Symbol 295 GraphicUsed by:320 342 365 370
Symbol 296 GraphicUsed by:297
Symbol 297 MovieClipUses:296Used by:320
Symbol 298 EditableTextUses:1Used by:320
Symbol 299 EditableTextUses:1Used by:320
Symbol 300 EditableTextUses:1Used by:320
Symbol 301 EditableTextUses:1Used by:320
Symbol 302 EditableTextUses:1Used by:320
Symbol 303 EditableTextUses:1Used by:320
Symbol 304 EditableTextUses:1Used by:320
Symbol 305 EditableTextUses:1Used by:320
Symbol 306 EditableTextUses:1Used by:320
Symbol 307 EditableTextUses:1Used by:320
Symbol 308 EditableTextUses:1Used by:320
Symbol 309 EditableTextUses:1Used by:320
Symbol 310 EditableTextUses:1Used by:320
Symbol 311 EditableTextUses:1Used by:320
Symbol 312 EditableTextUses:1Used by:320
Symbol 313 EditableTextUses:1Used by:320
Symbol 314 EditableTextUses:1Used by:320
Symbol 315 EditableTextUses:1Used by:320
Symbol 316 EditableTextUses:1Used by:320
Symbol 317 EditableTextUses:1Used by:320
Symbol 318 EditableTextUses:1Used by:320
Symbol 319 EditableTextUses:1Used by:320
Symbol 320 MovieClip {main.menuScores}Uses:295 297 298 299 300 301 264 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319Used by:371
Symbol 321 TextUses:1Used by:342
Symbol 322 TextUses:1Used by:342
Symbol 323 BitmapUsed by:324
Symbol 324 GraphicUses:323Used by:325
Symbol 325 MovieClipUses:324Used by:342
Symbol 326 BitmapUsed by:327
Symbol 327 GraphicUses:326Used by:328
Symbol 328 MovieClipUses:327Used by:342
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:331
Symbol 331 MovieClipUses:330Used by:342
Symbol 332 BitmapUsed by:333
Symbol 333 GraphicUses:332Used by:334
Symbol 334 MovieClipUses:333Used by:342
Symbol 335 TextUses:1Used by:342
Symbol 336 TextUses:1Used by:342
Symbol 337 TextUses:1Used by:342
Symbol 338 TextUses:1Used by:342
Symbol 339 TextUses:1Used by:342
Symbol 340 TextUses:1Used by:342
Symbol 341 TextUses:1Used by:342
Symbol 342 MovieClip {main.menuHelp}Uses:295 321 264 322 325 328 331 334 241 246 335 336 337 84 117 82 338 339 340 341Used by:371
Symbol 343 GraphicUsed by:351
Symbol 344 TextUses:1Used by:351
Symbol 345 TextUses:1Used by:347
Symbol 346 TextUses:1Used by:347
Symbol 347 ButtonUses:345 346 192Used by:351
Symbol 348 TextUses:1Used by:350
Symbol 349 TextUses:1Used by:350
Symbol 350 ButtonUses:348 349 192Used by:351
Symbol 351 MovieClip {main.menuFader}Uses:343 344 347 350Used by:371
Symbol 352 GraphicUsed by:363
Symbol 353 TextUses:1Used by:363
Symbol 354 TextUses:1Used by:356
Symbol 355 TextUses:1Used by:356
Symbol 356 ButtonUses:354 355 192Used by:363
Symbol 357 TextUses:1Used by:359
Symbol 358 TextUses:1Used by:359
Symbol 359 ButtonUses:357 358 192Used by:363
Symbol 360 TextUses:1Used by:362
Symbol 361 TextUses:1Used by:362
Symbol 362 ButtonUses:360 361 192Used by:363
Symbol 363 MovieClip {main.menuDiff}Uses:352 353 356 359 362Used by:371
Symbol 364 EditableTextUses:1 291Used by:365
Symbol 365 MovieClip {main.menuFreePlay}Uses:295 364 264Used by:371
Symbol 366 EditableTextUses:1Used by:370
Symbol 367 TextUses:1Used by:370
Symbol 368 EditableTextUses:1Used by:369
Symbol 369 MovieClip {game_fla.gamoverSponsor_86}Uses:368Used by:370
Symbol 370 MovieClip {main.menuGameOver}Uses:295 366 367 264 369Used by:371
Symbol 371 MovieClip {main.game}Uses:27 207 208 209 213 216 221 226 228 230 248 267 276 294 320 342 351 363 365 370Used by:Timeline
Symbol 372 FontUsed by:373 375
Symbol 373 TextUses:372Used by:377
Symbol 374 GraphicUsed by:377
Symbol 375 TextUses:372Used by:377
Symbol 376 GraphicUsed by:377
Symbol 377 MovieClip {game_fla.SoundSwitch_87}Uses:373 374 375 376Used by:Timeline

Instance Names

"bg"Frame 1Symbol 27 MovieClip {main.background}
"sponsorLogo"Frame 1Symbol 30 MovieClip
"preloader"Frame 1Symbol 7 MovieClip {main.preloader}
"aura"Frame 2Symbol 46 MovieClip {main.aura}
"sponsorSplash"Frame 2Symbol 185 MovieClip
"bFader"Frame 2Symbol 204 MovieClip {main.blackFader}
"thisgame"Frame 3Symbol 371 MovieClip {main.game}
"soundSwitch"Frame 3Symbol 377 MovieClip {game_fla.SoundSwitch_87}
"txt"Symbol 7 MovieClip {main.preloader} Frame 1Symbol 2 EditableText
"progressBar"Symbol 7 MovieClip {main.preloader} Frame 1Symbol 6 MovieClip {game_fla.progressbar_5}
"textTop"Symbol 74 MovieClip {main.gameText} Frame 1Symbol 71 EditableText
"textBottom"Symbol 74 MovieClip {main.gameText} Frame 1Symbol 72 EditableText
"textMiss"Symbol 74 MovieClip {main.gameText} Frame 1Symbol 73 EditableText
"txt"Symbol 216 MovieClip {main.gameMessage} Frame 1Symbol 215 EditableText
"txt"Symbol 228 MovieClip {main.longChain} Frame 1Symbol 227 EditableText
"thanksPlay"Symbol 264 MovieClip {game_fla.pressAnyKey_60} Frame 1Symbol 261 EditableText
"thanksPlay"Symbol 264 MovieClip {game_fla.pressAnyKey_60} Frame 25Symbol 262 EditableText
"thanksPlay"Symbol 264 MovieClip {game_fla.pressAnyKey_60} Frame 50Symbol 263 EditableText
"txtDirectBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 251 EditableText
"numDirectBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 252 EditableText
"txtExtraBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 253 EditableText
"numExtraBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 254 EditableText
"txtChainBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 255 EditableText
"numChainBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 256 EditableText
"txtBossBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 257 EditableText
"numBossBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 258 EditableText
"txtTotalBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 259 EditableText
"numTotalBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 260 EditableText
"thanksPlay"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 264 MovieClip {game_fla.pressAnyKey_60}
"txtLenChainBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 265 EditableText
"numLenChainBonus"Symbol 267 MovieClip {main.levcompScreen} Frame 1Symbol 266 EditableText
"buttContinue"Symbol 276 MovieClip {main.pauseMenu} Frame 1Symbol 272 Button
"buttExit"Symbol 276 MovieClip {main.pauseMenu} Frame 1Symbol 275 Button
"buttNewGame"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 281 Button
"buttScores"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 284 Button
"buttHelp"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 287 Button
"buttMoreGames"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 290 Button
"sponsorLogo"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 30 MovieClip
"myLnk"Symbol 294 MovieClip {main.menuiMain} Frame 1Symbol 293 MovieClip
"rectScore"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 297 MovieClip
"txtDirectBonus"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 298 EditableText
"scoreTitle"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 299 EditableText
"txtName1"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 300 EditableText
"txtScore1"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 301 EditableText
"thanksPlay"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 264 MovieClip {game_fla.pressAnyKey_60}
"txtName2"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 302 EditableText
"txtScore2"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 303 EditableText
"txtName3"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 304 EditableText
"txtScore3"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 305 EditableText
"txtName4"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 306 EditableText
"txtScore4"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 307 EditableText
"txtName5"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 308 EditableText
"txtScore5"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 309 EditableText
"txtName6"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 310 EditableText
"txtScore6"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 311 EditableText
"txtName7"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 312 EditableText
"txtScore7"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 313 EditableText
"txtName8"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 314 EditableText
"txtScore8"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 315 EditableText
"txtName9"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 316 EditableText
"txtScore9"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 317 EditableText
"txtName10"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 318 EditableText
"txtScore10"Symbol 320 MovieClip {main.menuScores} Frame 1Symbol 319 EditableText
"thanksPlay"Symbol 342 MovieClip {main.menuHelp} Frame 1Symbol 264 MovieClip {game_fla.pressAnyKey_60}
"buttYes"Symbol 351 MovieClip {main.menuFader} Frame 1Symbol 347 Button
"buttNo"Symbol 351 MovieClip {main.menuFader} Frame 1Symbol 350 Button
"buttEasy"Symbol 363 MovieClip {main.menuDiff} Frame 1Symbol 356 Button
"buttNorm"Symbol 363 MovieClip {main.menuDiff} Frame 1Symbol 359 Button
"buttBack"Symbol 363 MovieClip {main.menuDiff} Frame 1Symbol 362 Button
"thanksPlay"Symbol 365 MovieClip {main.menuFreePlay} Frame 1Symbol 264 MovieClip {game_fla.pressAnyKey_60}
"txt"Symbol 369 MovieClip {game_fla.gamoverSponsor_86} Frame 1Symbol 368 EditableText
"txtTotalBonus"Symbol 370 MovieClip {main.menuGameOver} Frame 1Symbol 366 EditableText
"thanksPlay"Symbol 370 MovieClip {main.menuGameOver} Frame 1Symbol 264 MovieClip {game_fla.pressAnyKey_60}
"infotxt"Symbol 370 MovieClip {main.menuGameOver} Frame 1Symbol 369 MovieClip {game_fla.gamoverSponsor_86}
"bg"Symbol 371 MovieClip {main.game} Frame 1Symbol 27 MovieClip {main.background}
"gl"Symbol 371 MovieClip {main.game} Frame 1Symbol 207 MovieClip
"textScore"Symbol 371 MovieClip {main.game} Frame 1Symbol 208 EditableText
"textLife"Symbol 371 MovieClip {main.game} Frame 1Symbol 209 EditableText
"lifeIcon"Symbol 371 MovieClip {main.game} Frame 1Symbol 213 MovieClip {main.player}
"gameMessage"Symbol 371 MovieClip {main.game} Frame 1Symbol 216 MovieClip {main.gameMessage}
"gameProgressBar"Symbol 371 MovieClip {main.game} Frame 1Symbol 221 MovieClip {game_fla.GameProgress_53}
"buttPauseMenu"Symbol 371 MovieClip {main.game} Frame 1Symbol 226 Button
"longChain"Symbol 371 MovieClip {main.game} Frame 1Symbol 228 MovieClip {main.longChain}
"textLevInfo"Symbol 371 MovieClip {main.game} Frame 1Symbol 230 EditableText
"hlp1"Symbol 371 MovieClip {main.game} Frame 1Symbol 248 MovieClip {main.inGameHlp}
"hlp2"Symbol 371 MovieClip {main.game} Frame 1Symbol 248 MovieClip {main.inGameHlp}
"hlp3"Symbol 371 MovieClip {main.game} Frame 1Symbol 248 MovieClip {main.inGameHlp}
"levEndScreen"Symbol 371 MovieClip {main.game} Frame 1Symbol 267 MovieClip {main.levcompScreen}
"pauseMenu"Symbol 371 MovieClip {main.game} Frame 1Symbol 276 MovieClip {main.pauseMenu}
"mainMenu"Symbol 371 MovieClip {main.game} Frame 1Symbol 294 MovieClip {main.menuiMain}
"menuScores"Symbol 371 MovieClip {main.game} Frame 1Symbol 320 MovieClip {main.menuScores}
"menuHelp"Symbol 371 MovieClip {main.game} Frame 1Symbol 342 MovieClip {main.menuHelp}
"menuRestart"Symbol 371 MovieClip {main.game} Frame 1Symbol 351 MovieClip {main.menuFader}
"menuDiff"Symbol 371 MovieClip {main.game} Frame 1Symbol 363 MovieClip {main.menuDiff}
"menuFreeplay"Symbol 371 MovieClip {main.game} Frame 1Symbol 365 MovieClip {main.menuFreePlay}
"menuGameOver"Symbol 371 MovieClip {main.game} Frame 1Symbol 370 MovieClip {main.menuGameOver}

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata not present, AS3.
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 256, ScriptTimeout: 25 seconds




http://swfchan.com/18/89760/info.shtml
Created: 28/3 -2019 19:34:26 Last modified: 28/3 -2019 19:34:26 Server time: 29/04 -2024 14:04:11