STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229595 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2595 · P5190 |
A Very Merry Christmas! |
This is the info page for Flash #47521 |
testasdasdasdasdasdsadsadasdasasd |
Developed by lazybanana.com |
1000 1 1 1 |
1000 |
The apple is not big enough to be picked, wait until it becomes red |
12 |
9999 |
Score: |
99999 |
0 |
Lvl: |
exit |
Esc - Pause |
BOSS LEVvVEL !!! |
Do you want to play the tutorial ? |
Yes |
No |
The objective of this game is to defend your apples from the worms. You can do this by building turrets. Click the Handgun Turret icon on the bottom panel, then click anywhere on the field to place it. Press "Esc" to cancel. |
Next |
Close |
When the apple becomes red, you can pick it and earn money by clicking on it. Over time the apple will grow bigger, bigger apples give you more money when you pick them. You can also plant additional apple trees to increase revenue. |
To upgrade your turrets, click one of your turrets in the field. Then click one of the available upgrade icons in the bottom panel. Click any empty area on the field to deselect the turret. |
Worms will come and steal your apples. When an apple tree's apple is stolen, it will die. If all your trees die, you'll lose the game. Click a worm to target it using all the closest turrets. |
Enter your name |
00000 |
Exit |
<p align="center"><font face="chalkie" size="40" color="#ffffff" letterSpacing="12.000000" kerning="0"><b>1/1</b></font></p> |
You start with one apple tree in the yard. Over time the apple will grow from a raw apple into a large ripe apple. |
Click on a ripe apple to get some money. The larger the apple the more money you will get. |
Worms will approach from every direction to steal your apples. Defend your apples by building turrets. |
Each turret has a unique ability. Find the best combination to defend your apples. |
Click a turret icon at the bottom left then click anywhere on the field to place it. Press ESC to cancel. |
Click the turret icon |
Then click anywhere on the field to build it |
When a worm takes an apple out the yard, the apple tree will die. If there are no apple trees left, you lose the game. |
You can target a certain worm by clicking on it. When a worm is targeted, the closest turrets will all attack it. |
You can plant additional apple trees to produce more apples. More apples means more money. |
You must pay to plant each additional apple tree and it becomes more expensive every time you plant another tree. |
To upgrade one of your turrets to a better turret, simply click the turret, then click the upgrade you want in the bottom left of the screen. |
Finish |
Game Paused |
resume |
main menu |
main menu |
CREDITS |
Project Manager : Herry Yohanes Programmer : Ficky Irwanto Graphic Designer : Ronny Hardyanto Sherly Gunawan |
lazybanana.com |
A Production |
LAZYBANANA.COM |
Toggle Music (M) |
<p align="center"><font face="Arial" size="29" color="#ff0000" letterSpacing="0.000000" kerning="0"><a href="http://www.bigfuntown.com"><b>This game is site-locked, please play it at <sbr />bigfuntown.com</b></a></font></p> |
Dear Potential Sponsors |
Depending on the sponsor, The High Scores system can be customized according to the sponsor's specifications or we can use LazyBanana.com own High Scores system. It's up to you :-) |
ActionScript [AS3]
Section 1//Antrax_97 (apple_defender_fla.Antrax_97) package apple_defender_fla { import flash.display.*; public dynamic class Antrax_97 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 2//beggar_26 (apple_defender_fla.beggar_26) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class beggar_26 extends MovieClip { public function beggar_26(){ addFrameScript(36, frame37, 73, frame74); } function frame74(){ this.parent.afterAttack(); stop(); } function frame37(){ gotoAndPlay(1); } } }//package apple_defender_flaSection 3//bladegun_138 (apple_defender_fla.bladegun_138) package apple_defender_fla { import flash.display.*; public dynamic class bladegun_138 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 4//blizzard_135 (apple_defender_fla.blizzard_135) package apple_defender_fla { import flash.display.*; public dynamic class blizzard_135 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 5//boss_28 (apple_defender_fla.boss_28) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class boss_28 extends MovieClip { public function boss_28(){ addFrameScript(30, frame31, 67, frame68); } function frame31(){ gotoAndPlay(1); } function frame68(){ this.parent.afterAttack(); stop(); } } }//package apple_defender_flaSection 6//BossTextAnim_19 (apple_defender_fla.BossTextAnim_19) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class BossTextAnim_19 extends MovieClip { public var t:String; public var mText:TextField; public function BossTextAnim_19(){ addFrameScript(0, frame1, 1, frame2, 30, frame31); } function frame1(){ t = "Boss Level !!!"; } function frame2(){ mText.text = t; } function frame31(){ gotoAndPlay(2); } } }//package apple_defender_flaSection 7//Btnhandgun_36 (apple_defender_fla.Btnhandgun_36) package apple_defender_fla { import flash.display.*; public dynamic class Btnhandgun_36 extends MovieClip { public var mA:MovieClip; } }//package apple_defender_flaSection 8//Btnrepair1_56 (apple_defender_fla.Btnrepair1_56) package apple_defender_fla { import flash.display.*; public dynamic class Btnrepair1_56 extends MovieClip { public var mA:MovieClip; } }//package apple_defender_flaSection 9//catapult_109 (apple_defender_fla.catapult_109) package apple_defender_fla { import flash.display.*; public dynamic class catapult_109 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 10//ChainLightning_100 (apple_defender_fla.ChainLightning_100) package apple_defender_fla { import flash.display.*; public dynamic class ChainLightning_100 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 11//ClusterBomb_129 (apple_defender_fla.ClusterBomb_129) package apple_defender_fla { import flash.display.*; public dynamic class ClusterBomb_129 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 12//CutLaser_82 (apple_defender_fla.CutLaser_82) package apple_defender_fla { import flash.display.*; public dynamic class CutLaser_82 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 13//FireballLauncher_155 (apple_defender_fla.FireballLauncher_155) package apple_defender_fla { import flash.display.*; public dynamic class FireballLauncher_155 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 14//FireCatapult_79 (apple_defender_fla.FireCatapult_79) package apple_defender_fla { import flash.display.*; public dynamic class FireCatapult_79 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 15//flame_165 (apple_defender_fla.flame_165) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class flame_165 extends MovieClip { public function flame_165(){ addFrameScript(29, frame30); } function frame30(){ stop(); } } }//package apple_defender_flaSection 16//flamethrower_76 (apple_defender_fla.flamethrower_76) package apple_defender_fla { import flash.display.*; public dynamic class flamethrower_76 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 17//FrozeTurret_118 (apple_defender_fla.FrozeTurret_118) package apple_defender_fla { import flash.display.*; public dynamic class FrozeTurret_118 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 18//gatling_47 (apple_defender_fla.gatling_47) package apple_defender_fla { import flash.display.*; public dynamic class gatling_47 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 19//GrenadeLauncher_72 (apple_defender_fla.GrenadeLauncher_72) package apple_defender_fla { import flash.display.*; public dynamic class GrenadeLauncher_72 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 20//Grow_53 (apple_defender_fla.Grow_53) package apple_defender_fla { import flash.display.*; public dynamic class Grow_53 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 21//handgun_37 (apple_defender_fla.handgun_37) package apple_defender_fla { import flash.display.*; public dynamic class handgun_37 extends MovieClip { public var mGerak:MovieClip; public var mDasar:MovieClip; } }//package apple_defender_flaSection 22//ice_178 (apple_defender_fla.ice_178) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class ice_178 extends MovieClip { public function ice_178(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package apple_defender_flaSection 23//knight_27 (apple_defender_fla.knight_27) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class knight_27 extends MovieClip { public function knight_27(){ addFrameScript(36, frame37, 67, frame68); } function frame37(){ gotoAndPlay(1); } function frame68(){ this.parent.afterAttack(); stop(); } } }//package apple_defender_flaSection 24//longrangemissile_94 (apple_defender_fla.longrangemissile_94) package apple_defender_fla { import flash.display.*; public dynamic class longrangemissile_94 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 25//MachineGun_44 (apple_defender_fla.MachineGun_44) package apple_defender_fla { import flash.display.*; public dynamic class MachineGun_44 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 26//MassiveCatapult_112 (apple_defender_fla.MassiveCatapult_112) package apple_defender_fla { import flash.display.*; public dynamic class MassiveCatapult_112 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 27//MusicBtn_199 (apple_defender_fla.MusicBtn_199) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class MusicBtn_199 extends MovieClip { public function MusicBtn_199(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package apple_defender_flaSection 28//OptionBarPopUp_202 (apple_defender_fla.OptionBarPopUp_202) package apple_defender_fla { import flash.display.*; import flash.text.*; public dynamic class OptionBarPopUp_202 extends MovieClip { public var mText:TextField; } }//package apple_defender_flaSection 29//poison_151 (apple_defender_fla.poison_151) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class poison_151 extends MovieClip { public var r:int; public function poison_151(){ addFrameScript(39, frame40); } function frame40(){ x = ((-(width) / 2) + ((Math.random() * parent.width) / 2)); y = ((-(height) / 2) + ((Math.random() * parent.height) / 2)); r = ((Math.random() * totalFrames) / 2); gotoAndPlay(r); } } }//package apple_defender_flaSection 30//poison_171 (apple_defender_fla.poison_171) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class poison_171 extends MovieClip { public function poison_171(){ addFrameScript(29, frame30); } function frame30(){ stop(); } } }//package apple_defender_flaSection 31//QualityBtn_200 (apple_defender_fla.QualityBtn_200) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class QualityBtn_200 extends MovieClip { public function QualityBtn_200(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package apple_defender_flaSection 32//Repair_57 (apple_defender_fla.Repair_57) package apple_defender_fla { import flash.display.*; public dynamic class Repair_57 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 33//rocketlauncher_88 (apple_defender_fla.rocketlauncher_88) package apple_defender_fla { import flash.display.*; public dynamic class rocketlauncher_88 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 34//rocketshogun_103 (apple_defender_fla.rocketshogun_103) package apple_defender_fla { import flash.display.*; public dynamic class rocketshogun_103 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 35//SFXBtn_201 (apple_defender_fla.SFXBtn_201) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class SFXBtn_201 extends MovieClip { public function SFXBtn_201(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); } function frame3(){ stop(); } function frame1(){ stop(); } function frame4(){ stop(); } function frame2(){ stop(); } } }//package apple_defender_flaSection 36//Shotgun_106 (apple_defender_fla.Shotgun_106) package apple_defender_fla { import flash.display.*; public dynamic class Shotgun_106 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 37//smg_41 (apple_defender_fla.smg_41) package apple_defender_fla { import flash.display.*; public dynamic class smg_41 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 38//Sniper_50 (apple_defender_fla.Sniper_50) package apple_defender_fla { import flash.display.*; public dynamic class Sniper_50 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 39//Snow_177 (apple_defender_fla.Snow_177) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class Snow_177 extends MovieClip { public function Snow_177(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package apple_defender_flaSection 40//snowlauncher_132 (apple_defender_fla.snowlauncher_132) package apple_defender_fla { import flash.display.*; public dynamic class snowlauncher_132 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 41//snrgun_141 (apple_defender_fla.snrgun_141) package apple_defender_fla { import flash.display.*; public dynamic class snrgun_141 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 42//SplitShuriken_115 (apple_defender_fla.SplitShuriken_115) package apple_defender_fla { import flash.display.*; public dynamic class SplitShuriken_115 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 43//StatusBar_16 (apple_defender_fla.StatusBar_16) package apple_defender_fla { import flash.display.*; import flash.text.*; public dynamic class StatusBar_16 extends MovieClip { public var mScore:TextField; public var mLevels:TextField; public var mMoney:TextField; public var mTrees:TextField; } }//package apple_defender_flaSection 44//SuperGrowth_55 (apple_defender_fla.SuperGrowth_55) package apple_defender_fla { import flash.display.*; public dynamic class SuperGrowth_55 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 45//tomahawklauncher_91 (apple_defender_fla.tomahawklauncher_91) package apple_defender_fla { import flash.display.*; public dynamic class tomahawklauncher_91 extends MovieClip { public var mGerak:MovieClip; } }//package apple_defender_flaSection 46//TutDialog_20 (apple_defender_fla.TutDialog_20) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class TutDialog_20 extends MovieClip { public var b2:SimpleButton; public var b1:SimpleButton; public function TutDialog_20(){ addFrameScript(0, frame1, 6, frame7, 12, frame13, 18, frame19, 24, frame25); } public function Goto5(_arg1:MouseEvent){ gotoAndStop("page5"); } public function Goto3(_arg1:MouseEvent){ gotoAndStop("page3"); } public function Goto4(_arg1:MouseEvent){ gotoAndStop("page4"); } function frame7(){ b1.addEventListener(MouseEvent.MOUSE_UP, NoTut, false, 0, true); b2.addEventListener(MouseEvent.MOUSE_UP, Goto3, false, 0, true); CGame.GetInstance().ProcessTut(2); } function frame1(){ stop(); b1.addEventListener(MouseEvent.MOUSE_UP, YesTut, false, 0, true); b2.addEventListener(MouseEvent.MOUSE_UP, NoTut, false, 0, true); } function frame19(){ b1.addEventListener(MouseEvent.MOUSE_UP, NoTut, false, 0, true); b2.addEventListener(MouseEvent.MOUSE_UP, Goto5, false, 0, true); CGame.GetInstance().ProcessTut(4); } function frame25(){ b1.addEventListener(MouseEvent.MOUSE_UP, NoTut, false, 0, true); CGame.GetInstance().ProcessTut(5); } function frame13(){ b1.addEventListener(MouseEvent.MOUSE_UP, NoTut, false, 0, true); b2.addEventListener(MouseEvent.MOUSE_UP, Goto4, false, 0, true); CGame.GetInstance().ProcessTut(3); } public function NoTut(_arg1:MouseEvent){ CGame.GetInstance().NoTut(); } public function YesTut(_arg1:MouseEvent){ CGame.GetInstance().YesTut(); gotoAndStop("page2"); } } }//package apple_defender_flaSection 47//woodwall_144 (apple_defender_fla.woodwall_144) package apple_defender_fla { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class woodwall_144 extends MovieClip { public function woodwall_144(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package apple_defender_flaSection 48//AuxFunctions (caurina.transitions.AuxFunctions) package caurina.transitions { public class AuxFunctions { public static function concatObjects(... _args):Object{ var _local2:Object; var _local3:Object; var _local4:int; var _local5:String; _local2 = {}; _local4 = 0; while (_local4 < _args.length) { _local3 = _args[_local4]; for (_local5 in _local3) { if (_local3[_local5] == null){ delete _local2[_local5]; } else { _local2[_local5] = _local3[_local5]; }; }; _local4++; }; return (_local2); } public static function numberToG(_arg1:Number):Number{ return (((_arg1 & 0xFF00) >> 8)); } public static function numberToR(_arg1:Number):Number{ return (((_arg1 & 0xFF0000) >> 16)); } public static function isInArray(_arg1:String, _arg2:Array):Boolean{ var _local3:uint; var _local4:uint; _local3 = _arg2.length; _local4 = 0; while (_local4 < _local3) { if (_arg2[_local4] == _arg1){ return (true); }; _local4++; }; return (false); } public static function getObjectLength(_arg1:Object):uint{ var _local2:uint; var _local3:String; _local2 = 0; for (_local3 in _arg1) { _local2++; }; return (_local2); } public static function numberToB(_arg1:Number):Number{ return ((_arg1 & 0xFF)); } } }//package caurina.transitionsSection 49//Equations (caurina.transitions.Equations) package caurina.transitions { public class Equations { public function Equations(){ trace("Equations is a static class and should not be instantiated."); } public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); if (_arg1 < (1 / 2.75)){ return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2)); }; if (_arg1 < (2 / 2.75)){ _arg1 = (_arg1 - (1.5 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2)); }; if (_arg1 < (2.5 / 2.75)){ _arg1 = (_arg1 - (2.25 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2)); }; _arg1 = (_arg1 - (2.625 / 2.75)); return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2)); } public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; var _local7:Number; var _local8:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 == 2){ return ((_arg2 + _arg3)); }; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period; _local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; if (_arg1 < 1){ --_arg1; return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); }; --_arg1; return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2)); } public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2)); }; --_arg1; return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2)); } public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2)); }; return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2)); } public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2)); }; _arg1 = (_arg1 - 2); _local6 = (_local6 * 1.525); return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2)); } public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((_arg3 * _arg1) / _arg4) + _arg2)); } public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2)); } public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2)); } public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot; _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2)); } public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function init():void{ Tweener.registerTransition("easenone", easeNone); Tweener.registerTransition("linear", easeNone); Tweener.registerTransition("easeinquad", easeInQuad); Tweener.registerTransition("easeoutquad", easeOutQuad); Tweener.registerTransition("easeinoutquad", easeInOutQuad); Tweener.registerTransition("easeoutinquad", easeOutInQuad); Tweener.registerTransition("easeincubic", easeInCubic); Tweener.registerTransition("easeoutcubic", easeOutCubic); Tweener.registerTransition("easeinoutcubic", easeInOutCubic); Tweener.registerTransition("easeoutincubic", easeOutInCubic); Tweener.registerTransition("easeinquart", easeInQuart); Tweener.registerTransition("easeoutquart", easeOutQuart); Tweener.registerTransition("easeinoutquart", easeInOutQuart); Tweener.registerTransition("easeoutinquart", easeOutInQuart); Tweener.registerTransition("easeinquint", easeInQuint); Tweener.registerTransition("easeoutquint", easeOutQuint); Tweener.registerTransition("easeinoutquint", easeInOutQuint); Tweener.registerTransition("easeoutinquint", easeOutInQuint); Tweener.registerTransition("easeinsine", easeInSine); Tweener.registerTransition("easeoutsine", easeOutSine); Tweener.registerTransition("easeinoutsine", easeInOutSine); Tweener.registerTransition("easeoutinsine", easeOutInSine); Tweener.registerTransition("easeincirc", easeInCirc); Tweener.registerTransition("easeoutcirc", easeOutCirc); Tweener.registerTransition("easeinoutcirc", easeInOutCirc); Tweener.registerTransition("easeoutincirc", easeOutInCirc); Tweener.registerTransition("easeinexpo", easeInExpo); Tweener.registerTransition("easeoutexpo", easeOutExpo); Tweener.registerTransition("easeinoutexpo", easeInOutExpo); Tweener.registerTransition("easeoutinexpo", easeOutInExpo); Tweener.registerTransition("easeinelastic", easeInElastic); Tweener.registerTransition("easeoutelastic", easeOutElastic); Tweener.registerTransition("easeinoutelastic", easeInOutElastic); Tweener.registerTransition("easeoutinelastic", easeOutInElastic); Tweener.registerTransition("easeinback", easeInBack); Tweener.registerTransition("easeoutback", easeOutBack); Tweener.registerTransition("easeinoutback", easeInOutBack); Tweener.registerTransition("easeoutinback", easeOutInBack); Tweener.registerTransition("easeinbounce", easeInBounce); Tweener.registerTransition("easeoutbounce", easeOutBounce); Tweener.registerTransition("easeinoutbounce", easeInOutBounce); Tweener.registerTransition("easeoutinbounce", easeOutInBounce); } public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2)); } public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001))); } public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); } public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2)); } public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((_arg3 * _arg1) * _arg1) + _arg2)); } public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2)); } public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2)); } public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2)); } public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2)); } public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; var _local7:Number; var _local8:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; _local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; --_arg1; return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2)); } public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2)); } public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2)); } public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2)); }; _arg1 = (_arg1 - 2); return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2)); } public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = (_arg1 / _arg4); return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2)); } public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 == 0){ return (_arg2); }; if (_arg1 == _arg4){ return ((_arg2 + _arg3)); }; _arg1 = (_arg1 / (_arg4 / 2)); if (_arg1 < 1){ return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005))); }; --_arg1; return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2)); } public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ var _local6:Number; var _local7:Number; var _local8:Number; if (_arg1 == 0){ return (_arg2); }; _arg1 = (_arg1 / _arg4); if (_arg1 == 1){ return ((_arg2 + _arg3)); }; _local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period; _local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude; if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){ _local8 = _arg3; _local7 = (_local6 / 4); } else { _local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8))); }; return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2)); } public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ _arg1 = ((_arg1 / _arg4) - 1); return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2)); } public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{ if (_arg1 < (_arg4 / 2)){ return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5)); }; return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5)); } } }//package caurina.transitionsSection 50//PropertyInfoObj (caurina.transitions.PropertyInfoObj) package caurina.transitions { public class PropertyInfoObj { public var originalValueComplete:Object; public var modifierParameters:Array; public var isSpecialProperty:Boolean; public var hasModifier:Boolean; public var valueComplete:Number; public var extra:Object; public var valueStart:Number; public var modifierFunction:Function; public var arrayIndex:Number; public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){ valueStart = _arg1; valueComplete = _arg2; originalValueComplete = _arg3; arrayIndex = _arg4; extra = _arg5; isSpecialProperty = _arg6; hasModifier = Boolean(_arg7); modifierFunction = _arg7; modifierParameters = _arg8; } public function toString():String{ var _local1:String; _local1 = "\n[PropertyInfoObj "; _local1 = (_local1 + ("valueStart:" + String(valueStart))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("valueComplete:" + String(valueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("arrayIndex:" + String(arrayIndex))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("extra:" + String(extra))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("hasModifier:" + String(hasModifier))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierFunction:" + String(modifierFunction))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("modifierParameters:" + String(modifierParameters))); _local1 = (_local1 + "]\n"); return (_local1); } public function clone():PropertyInfoObj{ var _local1:PropertyInfoObj; _local1 = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters); return (_local1); } } }//package caurina.transitionsSection 51//SpecialProperty (caurina.transitions.SpecialProperty) package caurina.transitions { public class SpecialProperty { public var parameters:Array; public var preProcess:Function; public var setValue:Function; public var getValue:Function; public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){ getValue = _arg1; setValue = _arg2; parameters = _arg3; preProcess = _arg4; } public function toString():String{ var _local1:String; _local1 = ""; _local1 = (_local1 + "[SpecialProperty "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("setValue:" + String(setValue))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("preProcess:" + String(preProcess))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 52//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier) package caurina.transitions { public class SpecialPropertyModifier { public var getValue:Function; public var modifyValues:Function; public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){ modifyValues = _arg1; getValue = _arg2; } public function toString():String{ var _local1:String; _local1 = ""; _local1 = (_local1 + "[SpecialPropertyModifier "); _local1 = (_local1 + ("modifyValues:" + String(modifyValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("getValue:" + String(getValue))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 53//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter) package caurina.transitions { public class SpecialPropertySplitter { public var parameters:Array; public var splitValues:Function; public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){ splitValues = _arg1; parameters = _arg2; } public function toString():String{ var _local1:String; _local1 = ""; _local1 = (_local1 + "[SpecialPropertySplitter "); _local1 = (_local1 + ("splitValues:" + String(splitValues))); _local1 = (_local1 + ", "); _local1 = (_local1 + ("parameters:" + String(parameters))); _local1 = (_local1 + "]"); return (_local1); } } }//package caurina.transitionsSection 54//Tweener (caurina.transitions.Tweener) package caurina.transitions { import flash.events.*; import flash.display.*; import flash.utils.*; public class Tweener { private static var _timeScale:Number = 1; private static var _currentTimeFrame:Number; private static var _specialPropertySplitterList:Object; private static var _engineExists:Boolean = false; private static var _specialPropertyModifierList:Object; private static var _currentTime:Number; private static var _tweenList:Array; private static var _specialPropertyList:Object; private static var _transitionList:Object; private static var _inited:Boolean = false; private static var __tweener_controller__:MovieClip; public function Tweener(){ trace("Tweener is a static class and should not be instantiated."); } public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{ var _local4:SpecialPropertyModifier; if (!_inited){ init(); }; _local4 = new SpecialPropertyModifier(_arg2, _arg3); _specialPropertyModifierList[_arg1] = _local4; } public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{ var _local6:SpecialProperty; if (!_inited){ init(); }; _local6 = new SpecialProperty(_arg2, _arg3, _arg4, _arg5); _specialPropertyList[_arg1] = _local6; } public static function init(... _args):void{ _inited = true; _transitionList = new Object(); Equations.init(); _specialPropertyList = new Object(); _specialPropertyModifierList = new Object(); _specialPropertySplitterList = new Object(); } private static function updateTweens():Boolean{ var _local1:int; if (_tweenList.length == 0){ return (false); }; _local1 = 0; while (_local1 < _tweenList.length) { if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){ if (!updateTweenByIndex(_local1)){ removeTweenByIndex(_local1); }; if (_tweenList[_local1] == null){ removeTweenByIndex(_local1, true); _local1--; }; }; _local1++; }; return (true); } public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Array; var _local5:Object; var _local6:Number; var _local7:Number; var _local8:Function; var _local9:TweenListObj; var _local10:Number; var _local11:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local4 = _arg1.concat(); } else { _local4 = [_arg1]; }; _local5 = _arg2; if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; _local6 = (isNaN(_local5.time)) ? 0 : _local5.time; _local7 = (isNaN(_local5.delay)) ? 0 : _local5.delay; if (typeof(_local5.transition) == "string"){ _local11 = _local5.transition.toLowerCase(); _local8 = _transitionList[_local11]; } else { _local8 = _local5.transition; }; if (!Boolean(_local8)){ _local8 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local4.length) { if (_local5.useFrames == true){ _local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams); } else { _local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams); }; _local9.properties = null; _local9.onStart = _local5.onStart; _local9.onUpdate = _local5.onUpdate; _local9.onComplete = _local5.onComplete; _local9.onOverwrite = _local5.onOverwrite; _local9.onStartParams = _local5.onStartParams; _local9.onUpdateParams = _local5.onUpdateParams; _local9.onCompleteParams = _local5.onCompleteParams; _local9.onOverwriteParams = _local5.onOverwriteParams; _local9.onStartScope = _local5.onStartScope; _local9.onUpdateScope = _local5.onUpdateScope; _local9.onCompleteScope = _local5.onCompleteScope; _local9.onOverwriteScope = _local5.onOverwriteScope; _local9.onErrorScope = _local5.onErrorScope; _local9.isCaller = true; _local9.count = _local5.count; _local9.waitFrames = _local5.waitFrames; _tweenList.push(_local9); if ((((_local6 == 0)) && ((_local7 == 0)))){ _local10 = (_tweenList.length - 1); updateTweenByIndex(_local10); removeTweenByIndex(_local10); }; _local3++; }; return (true); } public static function pauseAllTweens():Boolean{ var _local1:Boolean; var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local1 = false; _local2 = 0; while (_local2 < _tweenList.length) { pauseTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function removeTweens(_arg1:Object, ... _args):Boolean{ var _local3:Array; var _local4:uint; _local3 = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(removeTweenByIndex, _arg1, _local3)); } public static function splitTweens(_arg1:Number, _arg2:Array):uint{ var _local3:TweenListObj; var _local4:TweenListObj; var _local5:uint; var _local6:String; var _local7:Boolean; _local3 = _tweenList[_arg1]; _local4 = _local3.clone(false); _local5 = 0; while (_local5 < _arg2.length) { _local6 = _arg2[_local5]; if (Boolean(_local3.properties[_local6])){ _local3.properties[_local6] = undefined; delete _local3.properties[_local6]; }; _local5++; }; for (_local6 in _local4.properties) { _local7 = false; _local5 = 0; while (_local5 < _arg2.length) { if (_arg2[_local5] == _local6){ _local7 = true; break; }; _local5++; }; if (!_local7){ _local4.properties[_local6] = undefined; delete _local4.properties[_local6]; }; }; _tweenList.push(_local4); return ((_tweenList.length - 1)); } public static function updateFrame():void{ _currentTimeFrame++; } public static function resumeTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj; var _local3:Number; _local2 = _tweenList[_arg1]; if ((((_local2 == null)) || (!(_local2.isPaused)))){ return (false); }; _local3 = getCurrentTweeningTime(_local2); _local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused)); _local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused)); _local2.timePaused = undefined; _local2.isPaused = false; return (true); } public static function getVersion():String{ return ("AS3 1.31.71"); } public static function onEnterFrame(_arg1:Event):void{ var _local2:Boolean; updateTime(); updateFrame(); _local2 = false; _local2 = updateTweens(); if (!_local2){ stopEngine(); }; } public static function updateTime():void{ _currentTime = getTimer(); } private static function updateTweenByIndex(_arg1:Number):Boolean{ var tTweening:TweenListObj; var isOver:Boolean; var mustUpdate:Boolean; var nv:Number; var t:Number; var b:Number; var c:Number; var d:Number; var pName:String; var eventScope:Object; var tScope:Object; var cTime:Number; var tProperty:Object; var pv:Number; var i = _arg1; tTweening = _tweenList[i]; if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){ return (false); }; isOver = false; cTime = getCurrentTweeningTime(tTweening); if (cTime >= tTweening.timeStart){ tScope = tTweening.scope; if (tTweening.isCaller){ do { t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1)); b = tTweening.timeStart; c = (tTweening.timeComplete - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d); } while (!(cTime >= nv)); } else { mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates))); if (cTime >= tTweening.timeComplete){ isOver = true; mustUpdate = true; }; if (!tTweening.hasStarted){ if (Boolean(tTweening.onStart)){ eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope; try { tTweening.onStart.apply(eventScope, tTweening.onStartParams); } catch(e:Error) { handleError(tTweening, e, "onStart"); }; }; for (pName in tTweening.properties) { if (tTweening.properties[pName].isSpecialProperty){ if (Boolean(_specialPropertyList[pName].preProcess)){ tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra); }; pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { pv = tScope[pName]; }; tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv; }; mustUpdate = true; tTweening.hasStarted = true; }; if (mustUpdate){ for (pName in tTweening.properties) { tProperty = tTweening.properties[pName]; if (isOver){ nv = tProperty.valueComplete; } else { if (tProperty.hasModifier){ t = (cTime - tTweening.timeStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams); nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters); } else { t = (cTime - tTweening.timeStart); b = tProperty.valueStart; c = (tProperty.valueComplete - tProperty.valueStart); d = (tTweening.timeComplete - tTweening.timeStart); nv = tTweening.transition(t, b, c, d, tTweening.transitionParams); }; }; if (tTweening.rounded){ nv = Math.round(nv); }; if (tProperty.isSpecialProperty){ _specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra); } else { tScope[pName] = nv; }; }; tTweening.updatesSkipped = 0; if (Boolean(tTweening.onUpdate)){ eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope; try { tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams); } catch(e:Error) { handleError(tTweening, e, "onUpdate"); }; }; } else { tTweening.updatesSkipped++; }; }; if (((isOver) && (Boolean(tTweening.onComplete)))){ eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope; try { tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams); } catch(e:Error) { handleError(tTweening, e, "onComplete"); }; }; return (!(isOver)); }; return (true); } public static function setTimeScale(_arg1:Number):void{ var _local2:Number; var _local3:Number; if (isNaN(_arg1)){ _arg1 = 1; }; if (_arg1 < 1E-5){ _arg1 = 1E-5; }; if (_arg1 != _timeScale){ if (_tweenList != null){ _local2 = 0; while (_local2 < _tweenList.length) { _local3 = getCurrentTweeningTime(_tweenList[_local2]); _tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1)); _tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1)); if (_tweenList[_local2].timePaused != undefined){ _tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1)); }; _local2++; }; }; _timeScale = _arg1; }; } public static function resumeAllTweens():Boolean{ var _local1:Boolean; var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local1 = false; _local2 = 0; while (_local2 < _tweenList.length) { resumeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{ var eventScope:Object; var pTweening = _arg1; var pError = _arg2; var pCallBackName = _arg3; if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){ eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope; try { pTweening.onError.apply(eventScope, [pTweening.scope, pError]); } catch(metaError:Error) { printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace())); }; } else { if (!Boolean(pTweening.onError)){ printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace())); }; }; } private static function startEngine():void{ _engineExists = true; _tweenList = new Array(); __tweener_controller__ = new MovieClip(); __tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); _currentTimeFrame = 0; updateTime(); } public static function removeAllTweens():Boolean{ var _local1:Boolean; var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local1 = false; _local2 = 0; while (_local2 < _tweenList.length) { removeTweenByIndex(_local2); _local1 = true; _local2++; }; return (_local1); } public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{ var _local3:Number; var _local4:Number; var _local5:String; var _local6:Array; var _local7:Object; var _local8:Number; var _local9:Number; var _local10:Array; var _local11:Object; var _local12:Object; var _local13:Function; var _local14:Object; var _local15:TweenListObj; var _local16:Number; var _local17:Array; var _local18:Array; var _local19:Array; var _local20:String; if (!Boolean(_arg1)){ return (false); }; if ((_arg1 is Array)){ _local6 = _arg1.concat(); } else { _local6 = [_arg1]; }; _local7 = TweenListObj.makePropertiesChain(_arg2); if (!_inited){ init(); }; if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){ startEngine(); }; _local8 = (isNaN(_local7.time)) ? 0 : _local7.time; _local9 = (isNaN(_local7.delay)) ? 0 : _local7.delay; _local10 = new Array(); _local11 = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true}; _local12 = new Object(); for (_local5 in _local7) { if (!_local11[_local5]){ if (_specialPropertySplitterList[_local5]){ _local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters); _local3 = 0; while (_local3 < _local17.length) { if (_specialPropertySplitterList[_local17[_local3].name]){ _local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters); _local4 = 0; while (_local4 < _local18.length) { _local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false}; _local4++; }; } else { _local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false}; }; _local3++; }; } else { if (_specialPropertyModifierList[_local5] != undefined){ _local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]); _local3 = 0; while (_local3 < _local19.length) { _local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue}; _local3++; }; } else { _local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]}; }; }; }; }; for (_local5 in _local10) { if (_specialPropertyList[_local5] != undefined){ _local10[_local5].isSpecialProperty = true; } else { if (_local6[0][_local5] == undefined){ printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property.")); }; }; }; for (_local5 in _local12) { if (_local10[_local5] != undefined){ _local10[_local5].modifierParameters = _local12[_local5].modifierParameters; _local10[_local5].modifierFunction = _local12[_local5].modifierFunction; }; }; if (typeof(_local7.transition) == "string"){ _local20 = _local7.transition.toLowerCase(); _local13 = _transitionList[_local20]; } else { _local13 = _local7.transition; }; if (!Boolean(_local13)){ _local13 = _transitionList["easeoutexpo"]; }; _local3 = 0; while (_local3 < _local6.length) { _local14 = new Object(); for (_local5 in _local10) { _local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters); }; if (_local7.useFrames == true){ _local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams); } else { _local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams); }; _local15.properties = _local14; _local15.onStart = _local7.onStart; _local15.onUpdate = _local7.onUpdate; _local15.onComplete = _local7.onComplete; _local15.onOverwrite = _local7.onOverwrite; _local15.onError = _local7.onError; _local15.onStartParams = _local7.onStartParams; _local15.onUpdateParams = _local7.onUpdateParams; _local15.onCompleteParams = _local7.onCompleteParams; _local15.onOverwriteParams = _local7.onOverwriteParams; _local15.onStartScope = _local7.onStartScope; _local15.onUpdateScope = _local7.onUpdateScope; _local15.onCompleteScope = _local7.onCompleteScope; _local15.onOverwriteScope = _local7.onOverwriteScope; _local15.onErrorScope = _local7.onErrorScope; _local15.rounded = _local7.rounded; _local15.skipUpdates = _local7.skipUpdates; removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete); _tweenList.push(_local15); if ((((_local8 == 0)) && ((_local9 == 0)))){ _local16 = (_tweenList.length - 1); updateTweenByIndex(_local16); removeTweenByIndex(_local16); }; _local3++; }; return (true); } public static function registerTransition(_arg1:String, _arg2:Function):void{ if (!_inited){ init(); }; _transitionList[_arg1] = _arg2; } public static function printError(_arg1:String):void{ trace(("## [Tweener] Error: " + _arg1)); } private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{ var _local4:Boolean; var _local5:uint; var _local6:Array; var _local7:uint; var _local8:uint; var _local9:uint; _local4 = false; if (!Boolean(_tweenList)){ return (false); }; _local5 = 0; while (_local5 < _tweenList.length) { if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){ if (_arg3.length == 0){ _arg1(_local5); _local4 = true; } else { _local6 = new Array(); _local7 = 0; while (_local7 < _arg3.length) { if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){ _local6.push(_arg3[_local7]); }; _local7++; }; if (_local6.length > 0){ _local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties); if (_local8 == _local6.length){ _arg1(_local5); _local4 = true; } else { _local9 = splitTweens(_local5, _local6); _arg1(_local9); _local4 = true; }; }; }; }; _local5++; }; return (_local4); } public static function getTweens(_arg1:Object):Array{ var _local2:uint; var _local3:String; var _local4:Array; if (!Boolean(_tweenList)){ return ([]); }; _local4 = new Array(); _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ for (_local3 in _tweenList[_local2].properties) { _local4.push(_local3); }; }; _local2++; }; return (_local4); } public static function isTweening(_arg1:Object):Boolean{ var _local2:uint; if (!Boolean(_tweenList)){ return (false); }; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ return (true); }; _local2++; }; return (false); } public static function pauseTweenByIndex(_arg1:Number):Boolean{ var _local2:TweenListObj; _local2 = _tweenList[_arg1]; if ((((_local2 == null)) || (_local2.isPaused))){ return (false); }; _local2.timePaused = getCurrentTweeningTime(_local2); _local2.isPaused = true; return (true); } public static function getCurrentTweeningTime(_arg1:Object):Number{ return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime); } public static function getTweenCount(_arg1:Object):Number{ var _local2:uint; var _local3:Number; if (!Boolean(_tweenList)){ return (0); }; _local3 = 0; _local2 = 0; while (_local2 < _tweenList.length) { if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){ _local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties)); }; _local2++; }; return (_local3); } private static function stopEngine():void{ _engineExists = false; _tweenList = null; _currentTime = 0; _currentTimeFrame = 0; __tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame); __tweener_controller__ = null; } public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{ var removed:Boolean; var removedLocally:Boolean; var i:uint; var tl:uint; var pName:String; var eventScope:Object; var p_scope = _arg1; var p_properties = _arg2; var p_timeStart = _arg3; var p_timeComplete = _arg4; removed = false; tl = _tweenList.length; i = 0; while (i < tl) { if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){ if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){ removedLocally = false; for (pName in _tweenList[i].properties) { if (Boolean(p_properties[pName])){ if (Boolean(_tweenList[i].onOverwrite)){ eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope; try { _tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams); } catch(e:Error) { handleError(_tweenList[i], e, "onOverwrite"); }; }; _tweenList[i].properties[pName] = undefined; delete _tweenList[i].properties[pName]; removedLocally = true; removed = true; }; }; if (removedLocally){ if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){ removeTweenByIndex(i); }; }; }; }; i = (i + 1); }; return (removed); } public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{ var _local4:SpecialPropertySplitter; if (!_inited){ init(); }; _local4 = new SpecialPropertySplitter(_arg2, _arg3); _specialPropertySplitterList[_arg1] = _local4; } public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{ _tweenList[_arg1] = null; if (_arg2){ _tweenList.splice(_arg1, 1); }; return (true); } public static function resumeTweens(_arg1:Object, ... _args):Boolean{ var _local3:Array; var _local4:uint; _local3 = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(resumeTweenByIndex, _arg1, _local3)); } public static function pauseTweens(_arg1:Object, ... _args):Boolean{ var _local3:Array; var _local4:uint; _local3 = new Array(); _local4 = 0; while (_local4 < _args.length) { if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){ _local3.push(_args[_local4]); }; _local4++; }; return (affectTweens(pauseTweenByIndex, _arg1, _local3)); } } }//package caurina.transitionsSection 55//TweenListObj (caurina.transitions.TweenListObj) package caurina.transitions { public class TweenListObj { public var onUpdate:Function; public var useFrames:Boolean; public var hasStarted:Boolean; public var onOverwriteParams:Array; public var timeStart:Number; public var count:Number; public var timeComplete:Number; public var onStartParams:Array; public var onUpdateScope:Object; public var rounded:Boolean; public var onUpdateParams:Array; public var properties:Object; public var onComplete:Function; public var transitionParams:Object; public var updatesSkipped:Number; public var onStart:Function; public var onOverwriteScope:Object; public var skipUpdates:Number; public var onStartScope:Object; public var scope:Object; public var transition:Function; public var timePaused:Number; public var onCompleteParams:Array; public var timesCalled:Number; public var isCaller:Boolean; public var onError:Function; public var onErrorScope:Object; public var onOverwrite:Function; public var isPaused:Boolean; public var waitFrames:Boolean; public var onCompleteScope:Object; public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){ scope = _arg1; timeStart = _arg2; timeComplete = _arg3; useFrames = _arg4; transition = _arg5; transitionParams = _arg6; properties = new Object(); isPaused = false; timePaused = undefined; isCaller = false; updatesSkipped = 0; timesCalled = 0; skipUpdates = 0; hasStarted = false; } public function clone(_arg1:Boolean):TweenListObj{ var _local2:TweenListObj; var _local3:String; _local2 = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams); _local2.properties = new Array(); for (_local3 in properties) { _local2.properties[_local3] = properties[_local3].clone(); }; _local2.skipUpdates = skipUpdates; _local2.updatesSkipped = updatesSkipped; if (!_arg1){ _local2.onStart = onStart; _local2.onUpdate = onUpdate; _local2.onComplete = onComplete; _local2.onOverwrite = onOverwrite; _local2.onError = onError; _local2.onStartParams = onStartParams; _local2.onUpdateParams = onUpdateParams; _local2.onCompleteParams = onCompleteParams; _local2.onOverwriteParams = onOverwriteParams; _local2.onStartScope = onStartScope; _local2.onUpdateScope = onUpdateScope; _local2.onCompleteScope = onCompleteScope; _local2.onOverwriteScope = onOverwriteScope; _local2.onErrorScope = onErrorScope; }; _local2.rounded = rounded; _local2.isPaused = isPaused; _local2.timePaused = timePaused; _local2.isCaller = isCaller; _local2.count = count; _local2.timesCalled = timesCalled; _local2.waitFrames = waitFrames; _local2.hasStarted = hasStarted; return (_local2); } public function toString():String{ var _local1:String; var _local2:Boolean; var _local3:String; _local1 = "\n[TweenListObj "; _local1 = (_local1 + ("scope:" + String(scope))); _local1 = (_local1 + ", properties:"); _local2 = true; for (_local3 in properties) { if (!_local2){ _local1 = (_local1 + ","); }; _local1 = (_local1 + ("[name:" + properties[_local3].name)); _local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart)); _local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete)); _local1 = (_local1 + "]"); _local2 = false; }; _local1 = (_local1 + (", timeStart:" + String(timeStart))); _local1 = (_local1 + (", timeComplete:" + String(timeComplete))); _local1 = (_local1 + (", useFrames:" + String(useFrames))); _local1 = (_local1 + (", transition:" + String(transition))); _local1 = (_local1 + (", transitionParams:" + String(transitionParams))); if (skipUpdates){ _local1 = (_local1 + (", skipUpdates:" + String(skipUpdates))); }; if (updatesSkipped){ _local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped))); }; if (Boolean(onStart)){ _local1 = (_local1 + (", onStart:" + String(onStart))); }; if (Boolean(onUpdate)){ _local1 = (_local1 + (", onUpdate:" + String(onUpdate))); }; if (Boolean(onComplete)){ _local1 = (_local1 + (", onComplete:" + String(onComplete))); }; if (Boolean(onOverwrite)){ _local1 = (_local1 + (", onOverwrite:" + String(onOverwrite))); }; if (Boolean(onError)){ _local1 = (_local1 + (", onError:" + String(onError))); }; if (onStartParams){ _local1 = (_local1 + (", onStartParams:" + String(onStartParams))); }; if (onUpdateParams){ _local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams))); }; if (onCompleteParams){ _local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams))); }; if (onOverwriteParams){ _local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams))); }; if (onStartScope){ _local1 = (_local1 + (", onStartScope:" + String(onStartScope))); }; if (onUpdateScope){ _local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope))); }; if (onCompleteScope){ _local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope))); }; if (onOverwriteScope){ _local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope))); }; if (onErrorScope){ _local1 = (_local1 + (", onErrorScope:" + String(onErrorScope))); }; if (rounded){ _local1 = (_local1 + (", rounded:" + String(rounded))); }; if (isPaused){ _local1 = (_local1 + (", isPaused:" + String(isPaused))); }; if (timePaused){ _local1 = (_local1 + (", timePaused:" + String(timePaused))); }; if (isCaller){ _local1 = (_local1 + (", isCaller:" + String(isCaller))); }; if (count){ _local1 = (_local1 + (", count:" + String(count))); }; if (timesCalled){ _local1 = (_local1 + (", timesCalled:" + String(timesCalled))); }; if (waitFrames){ _local1 = (_local1 + (", waitFrames:" + String(waitFrames))); }; if (hasStarted){ _local1 = (_local1 + (", hasStarted:" + String(hasStarted))); }; _local1 = (_local1 + "]\n"); return (_local1); } public static function makePropertiesChain(_arg1:Object):Object{ var _local2:Object; var _local3:Object; var _local4:Object; var _local5:Object; var _local6:Number; var _local7:Number; var _local8:Number; _local2 = _arg1.base; if (_local2){ _local3 = {}; if ((_local2 is Array)){ _local4 = []; _local8 = 0; while (_local8 < _local2.length) { _local4.push(_local2[_local8]); _local8++; }; } else { _local4 = [_local2]; }; _local4.push(_arg1); _local6 = _local4.length; _local7 = 0; while (_local7 < _local6) { if (_local4[_local7]["base"]){ _local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]); } else { _local5 = _local4[_local7]; }; _local3 = AuxFunctions.concatObjects(_local3, _local5); _local7++; }; if (_local3["base"]){ delete _local3["base"]; }; return (_local3); //unresolved jump }; return (_arg1); } } }//package caurina.transitionsSection 56//MemoryCrypto (com.electrotank.util.MemoryCrypto) package com.electrotank.util { import com.meychi.ascrypt3.*; public class MemoryCrypto { private static var crypto:TEA = null; private static var INCREMENT:int = 0; private static var initialized:Boolean = false; public static var key:String = null; private static var MULTIPLY:int = 2; private static var DECREMENT:int = 1; private static var dataHolder:Object = null; private static var DIVIDE:int = 3; public static function incrementValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, INCREMENT)); } public static function getValue(_arg1:String):Number{ var _local2:Number; initIfNeeded(); _local2 = 0; if (!isValueSet(_arg1)){ setValue(_arg1, _local2); } else { _local2 = new Number(crypto.decrypt(dataHolder[_arg1], key)); }; return (_local2); } private static function processValue(_arg1:String, _arg2:Number, _arg3:int):Number{ var _local4:Number; initIfNeeded(); _local4 = getValue(_arg1); switch (_arg3){ case INCREMENT: _local4 = (_local4 + _arg2); break; case DECREMENT: _local4 = (_local4 - _arg2); break; case MULTIPLY: _local4 = (_local4 * _arg2); break; case DIVIDE: _local4 = (_local4 / _arg2); break; }; setValue(_arg1, _local4); return (_local4); } public static function reset():void{ initialized = false; initIfNeeded(); } public static function decrementValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, DECREMENT)); } private static function initIfNeeded():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:String; if (!initialized){ _local1 = Math.random(); _local2 = new String(_local1); _local2 = _local2.substr(2, (_local2.length - 2)); _local3 = Math.random(); _local4 = new String(_local3); _local4 = _local4.substr(2, (_local4.length - 2)); key = (_local2 + _local4); crypto = new TEA(); dataHolder = new Object(); initialized = true; }; } public static function multiplyValue(_arg1:String, _arg2:Number):Number{ return (processValue(_arg1, _arg2, MULTIPLY)); } public static function setValue(_arg1:String, _arg2:Number):Number{ initIfNeeded(); dataHolder[_arg1] = crypto.encrypt(_arg2.toString(), key); return (_arg2); } public static function divideValue(_arg1:String, _arg2:Number):Number{ if (_arg2 == 0){ throw (new Error("Amount can't be zero when dividing!")); }; return (processValue(_arg1, _arg2, DIVIDE)); } public static function isValueSet(_arg1:String):Boolean{ var _local2:Boolean; initIfNeeded(); _local2 = false; if (dataHolder[_arg1] != null){ _local2 = true; }; return (_local2); } } }//package com.electrotank.utilSection 57//TEA (com.meychi.ascrypt3.TEA) package com.meychi.ascrypt3 { public class TEA { public function encrypt(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:Array; 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; _local3 = charsToLongs(strToChars(_arg1)); _local4 = charsToLongs(strToChars(_arg2)); _local5 = _local3.length; if (_local5 == 0){ return (""); }; if (_local5 == 1){ var _temp1 = _local5; _local5 = (_local5 + 1); var _local14 = _temp1; _local3[_local14] = 0; }; _local6 = _local3[(_local5 - 1)]; _local7 = _local3[0]; _local8 = 2654435769; _local11 = Math.floor((6 + (52 / _local5))); _local12 = 0; while (_local11-- > 0) { _local12 = (_local12 + _local8); _local10 = ((_local12 >>> 2) & 3); _local13 = 0; while (_local13 < (_local5 - 1)) { _local7 = _local3[(_local13 + 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[_local13] = (_local3[_local13] + _local9)); _local13++; }; _local7 = _local3[0]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[(_local5 - 1)] = (_local3[(_local5 - 1)] + _local9)); }; return (charsToHex(longsToChars(_local3))); } public function decrypt(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:Array; 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; _local3 = charsToLongs(hexToChars(_arg1)); _local4 = charsToLongs(strToChars(_arg2)); _local5 = _local3.length; if (_local5 == 0){ return (""); }; _local6 = _local3[(_local5 - 1)]; _local7 = _local3[0]; _local8 = 2654435769; _local11 = Math.floor((6 + (52 / _local5))); _local12 = (_local11 * _local8); while (_local12 != 0) { _local10 = ((_local12 >>> 2) & 3); _local13 = (_local5 - 1); while (_local13 > 0) { _local6 = _local3[(_local13 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[_local13] = (_local3[_local13] - _local9)); _local13--; }; _local6 = _local3[(_local5 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[0] = (_local3[0] - _local9)); _local12 = (_local12 - _local8); }; return (charsToStr(longsToChars(_local3))); } private static function strToChars(_arg1:String):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = 0; while (_local3 < _arg1.length) { _local2.push(_arg1.charCodeAt(_local3)); _local3++; }; return (_local2); } private static function charsToHex(_arg1:Array):String{ var _local2:String; var _local3:Array; var _local4:Number; _local2 = new String(""); _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); _local4 = 0; while (_local4 < _arg1.length) { _local2 = (_local2 + (_local3[(_arg1[_local4] >> 4)] + _local3[(_arg1[_local4] & 15)])); _local4++; }; return (_local2); } private static function hexToChars(_arg1:String):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = ((_arg1.substr(0, 2))=="0x") ? 2 : 0; while (_local3 < _arg1.length) { _local2.push(parseInt(_arg1.substr(_local3, 2), 16)); _local3 = (_local3 + 2); }; return (_local2); } private static function charsToStr(_arg1:Array):String{ var _local2:String; var _local3:Number; _local2 = new String(""); _local3 = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(_arg1[_local3])); _local3++; }; return (_local2); } private static function longsToChars(_arg1:Array):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = 0; while (_local3 < _arg1.length) { _local2.push((_arg1[_local3] & 0xFF), ((_arg1[_local3] >>> 8) & 0xFF), ((_arg1[_local3] >>> 16) & 0xFF), ((_arg1[_local3] >>> 24) & 0xFF)); _local3++; }; return (_local2); } private static function charsToLongs(_arg1:Array):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(Math.ceil((_arg1.length / 4))); _local3 = 0; while (_local3 < _local2.length) { _local2[_local3] = (((_arg1[(_local3 * 4)] + (_arg1[((_local3 * 4) + 1)] << 8)) + (_arg1[((_local3 * 4) + 2)] << 16)) + (_arg1[((_local3 * 4) + 3)] << 24)); _local3++; }; return (_local2); } } }//package com.meychi.ascrypt3Section 58//ColDetection (com.troy.collision.ColDetection) package com.troy.collision { import flash.geom.*; import flash.display.*; public class ColDetection { public static function getCollisionRect(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:DisplayObjectContainer, _arg4:Boolean=false, _arg5:Number=0):Rectangle{ var _local6:Rectangle; var _local7:Rectangle; var _local8:Rectangle; var _local9:BitmapData; var _local10:BitmapData; var _local11:uint; var _local12:Rectangle; var _local13:int; _local6 = _arg1.getBounds(_arg3); _local7 = _arg2.getBounds(_arg3); _local8 = _local6.intersection(_local7); if (_local8.size.length > 0){ if (_arg4){ _local8.width = Math.ceil(_local8.width); _local8.height = Math.ceil(_local8.height); _local9 = getAlphaMap(_arg1, _local8, BitmapDataChannel.RED, _arg3); _local10 = getAlphaMap(_arg2, _local8, BitmapDataChannel.GREEN, _arg3); _local9.draw(_local10, null, null, BlendMode.LIGHTEN); if (_arg5 <= 0){ _local11 = 65792; } else { if (_arg5 > 1){ _arg5 = 1; }; _local13 = Math.round((_arg5 * 0xFF)); _local11 = (((_local13 << 16) | (_local13 << 8)) | 0); }; _local12 = _local9.getColorBoundsRect(_local11, _local11); _local9.getColorBoundsRect(_local11, _local11).x = (_local12.x + _local8.x); _local12.y = (_local12.y + _local8.y); return (_local12); } else { return (_local8); }; //unresolved jump }; return (null); } public static function isColliding(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:DisplayObjectContainer, _arg4:Boolean=false, _arg5:Number=0):Boolean{ var _local6:Rectangle; _local6 = getCollisionRect(_arg1, _arg2, _arg3, _arg4, _arg5); if (((!((_local6 == null))) && ((_local6.size.length > 0)))){ return (true); }; return (false); } public static function getCollisionPoint(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:DisplayObjectContainer, _arg4:Boolean=false, _arg5:Number=0):Point{ var _local6:Rectangle; var _local7:Number; var _local8:Number; _local6 = getCollisionRect(_arg1, _arg2, _arg3, _arg4, _arg5); if (((!((_local6 == null))) && ((_local6.size.length > 0)))){ _local7 = ((_local6.left + _local6.right) / 2); _local8 = ((_local6.top + _local6.bottom) / 2); return (new Point(_local7, _local8)); }; return (null); } private static function getAlphaMap(_arg1:DisplayObject, _arg2:Rectangle, _arg3:uint, _arg4:DisplayObjectContainer):BitmapData{ var _local5:Matrix; var _local6:Matrix; var _local7:BitmapData; var _local8:BitmapData; _local5 = _arg4.transform.concatenatedMatrix.clone(); _local5.invert(); _local6 = _arg1.transform.concatenatedMatrix.clone(); _local6.concat(_local5); _local6.translate(-(_arg2.x), -(_arg2.y)); _local7 = new BitmapData(_arg2.width, _arg2.height, true, 0); _local7.draw(_arg1, _local6); _local8 = new BitmapData(_arg2.width, _arg2.height, false, 0); _local8.copyChannel(_local7, _local7.rect, new Point(0, 0), BitmapDataChannel.ALPHA, _arg3); return (_local8); } } }//package com.troy.collisionSection 59//PM_PRNG (de.polygonal.math.PM_PRNG) package de.polygonal.math { public class PM_PRNG { public static var seed:uint = now.getTime(); public static var now:Date = new Date(); public function PM_PRNG(){ var _local1:Date; super(); _local1 = new Date(); } public static function nextDoubleRange(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + ((_arg2 - _arg1) * nextDouble()))); } public static function nextDouble():Number{ return ((gen() / 2147483647)); } private static function gen():uint{ return ((seed = ((seed * 16807) % 2147483647))); } public static function nextIntRange(_arg1:Number, _arg2:Number):uint{ _arg1 = (_arg1 - 0.4999); _arg2 = (_arg2 + 0.4999); return (Math.round((_arg1 + ((_arg2 - _arg1) * nextDouble())))); } public static function nextInt():uint{ return (gen()); } } }//package de.polygonal.mathSection 60//BGM (BGM) package { import flash.media.*; public dynamic class BGM extends Sound { } }//packageSection 61//BloodSplat (BloodSplat) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class BloodSplat extends MovieClip { public function BloodSplat(){ addFrameScript(23, frame24); } function frame24(){ stop(); } } }//packageSection 62//Bullets (Bullets) package { import flash.display.*; public dynamic class Bullets extends MovieClip { public var bullet2:MovieClip; public var bullet3:MovieClip; public var bullet0:MovieClip; public var bullet1:MovieClip; public var bullet9:MovieClip; public var bullet7:MovieClip; public var bullet8:MovieClip; public var bullet4:MovieClip; public var bullet10:MovieClip; public var bullet15:MovieClip; public var bullet16:MovieClip; public var bullet11:MovieClip; public var bullet14:MovieClip; public var bullet6:MovieClip; public var bullet19:MovieClip; public var bullet13:MovieClip; public var bullet5:MovieClip; public var bullet12:MovieClip; public var bullet21:MovieClip; public var bullet22:MovieClip; public var bullet23:MovieClip; public var bullet25:MovieClip; public var bullet24:MovieClip; } }//packageSection 63//Buttons (Buttons) package { import flash.display.*; public dynamic class Buttons extends MovieClip { public var shotgun:MovieClip; public var grow:MovieClip; public var catapult:MovieClip; public var snowlauncher:MovieClip; public var bladegun:MovieClip; public var poisonfence:MovieClip; public var wavedrum:MovieClip; public var repair1:MovieClip; public var repair2:MovieClip; public var firecatapult:MovieClip; public var boxingfence:MovieClip; public var repair3:MovieClip; public var snrgun:MovieClip; public var handgun:MovieClip; public var rocketlauncher:MovieClip; public var icedrum:MovieClip; public var rocketshotgun:MovieClip; public var spikewall:MovieClip; public var firedrum:MovieClip; public var grenadelauncher:MovieClip; public var sniper:MovieClip; public var tomahawklauncher:MovieClip; public var supergrowth:MovieClip; public var blizzard:MovieClip; public var splitshuriken:MovieClip; public var chainlightning:MovieClip; public var anthrax:MovieClip; public var electricfence:MovieClip; public var smg:MovieClip; public var massivecatapult:MovieClip; public var titaniumwall:MovieClip; public var flamethrower:MovieClip; public var brickwall:MovieClip; public var machinegun:MovieClip; public var nucleardrum:MovieClip; public var clusterbomb:MovieClip; public var meteor:MovieClip; public var electricshock:MovieClip; public var longrangemissile:MovieClip; public var cutlaser:MovieClip; public var fireballlauncher:MovieClip; public var pohon:MovieClip; public var gatling:MovieClip; public var woodwall:MovieClip; public var steelspikefence:MovieClip; public var frozeturret:MovieClip; } }//packageSection 64//CApel (CApel) package { import flash.events.*; import flash.geom.*; import flash.display.*; public class CApel extends MovieClip { public var mApel:MovieClip; public var mScore:int; public var mGrowRate:Number; public var mRipeCounter:int; public var mMoney:int; public var mOwner:MovieClip; public var mGrowCounter:int; public static var YoungApple:ColorTransform; public static var RIPE_COUNTER = 600; public static var RipeApple:ColorTransform; public function CApel(_arg1:MovieClip){ var _local2:PohonApel; super(); YoungApple = new ColorTransform(0, 2, 2, 1, 0, 50, 0, 0); RipeApple = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0); mRipeCounter = RIPE_COUNTER; mGrowRate = Data.DApel.growrate; mGrowCounter = Data.DApel.growcounter; mScore = Data.DApel.score; mMoney = Data.DApel.money; _local2 = new PohonApel(); mApel = _local2.getChildByName("apel"); addChild(mApel); mApel.scaleX = 0.6; mApel.scaleY = 0.6; mApel.x = 0; mApel.y = 0; mOwner = _arg1; transform.colorTransform = YoungApple; } public function changeOwner(_arg1:MovieClip){ if (this.parent){ this.parent.removeChild(this); _arg1.addChild(this); x = 0; y = 0; }; } public function AddDispatcher(_arg1:String="update"):void{ Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); } public function grow(_arg1:Number){ if (mRipeCounter >= 0){ mRipeCounter = (mRipeCounter - (_arg1 * 1500)); } else { mApel.scaleX = (mApel.scaleX + _arg1); mApel.scaleY = (mApel.scaleY + _arg1); if (mApel.scaleX > 1){ mApel.scaleX = 1; mApel.scaleY = 1; }; }; } public function isRipe2():Boolean{ if (CGame.GetInstance().mLevel > 0){ return ((mRipeCounter <= 320)); }; return ((mRipeCounter <= -99999)); } private function onMouseUp(_arg1:MouseEvent):void{ var _local2:int; if ((((parent is CPohon)) && (isRipe()))){ _local2 = ((mApel.scaleX * mApel.scaleX) * 70); CGame.GetInstance().IncreaseMoney(_local2); CGame.GetInstance().IncreaseScore(_local2); mApel.scaleX = 0.6; mApel.scaleY = 0.6; CGame.GetInstance().mCount = (CGame.GetInstance().mCount + ((mApel.scaleX * mApel.scaleX) * 70)); mRipeCounter = RIPE_COUNTER; CGame.GetInstance().munculTulisan(("+" + _local2), parent.x, parent.y, true); } else { if ((((parent is CPohon)) && (!(isRipe())))){ CGame.GetInstance().mPanel.mMessage.text = "The apple is not big enough to be picked, wait until it becomes red"; CGame.GetInstance().mTimer.start(); }; }; } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); } public function isRipe():Boolean{ return ((mRipeCounter <= 0)); } public function ResetRipeApple(){ mApel.scaleX = 0.6; mApel.scaleY = 0.6; CGame.GetInstance().mCount = (CGame.GetInstance().mCount + ((mApel.scaleX * mApel.scaleX) * 70)); mRipeCounter = RIPE_COUNTER; } private function Update(_arg1:Event):void{ if ((parent is CPohon)){ mRipeCounter--; if (mRipeCounter <= 0){ if (mGrowCounter > 0){ mGrowCounter--; }; if ((((mApel.scaleX < 1)) && ((mGrowCounter == 0)))){ mApel.scaleX = (mApel.scaleX + mGrowRate); mApel.scaleY = (mApel.scaleY + mGrowRate); mGrowCounter = 20; if (mApel.scaleX > 1){ mApel.scaleX = 1; mApel.scaleY = 1; }; }; }; }; if (isRipe()){ transform.colorTransform = RipeApple; } else { transform.colorTransform = YoungApple; }; } } }//packageSection 65//CArrow (CArrow) package { import flash.display.*; public dynamic class CArrow extends MovieClip { } }//packageSection 66//CBannedWin (CBannedWin) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class CBannedWin extends MovieClip { public function CBannedWin(){ addFrameScript(0, frame1); } function frame1(){ } } }//packageSection 67//CBullet (CBullet) package { import flash.events.*; import caurina.transitions.*; import flash.geom.*; import flash.display.*; import com.troy.collision.*; public class CBullet extends MovieClip { public var mType:int; public var mRadius:Number; public var mDmg:Number; public var mKill:Boolean; public var mTarget:Object; public var mCtr:int; public var mOwner:Object; public var mIcon:MovieClip; public var mDist:Number; public var mAlphaSpeed:Number; public var mSpeed:Number; public var mDx:Number; public var mDy:Number; public function CBullet(_arg1:int, _arg2:Object){ var _local3:MovieClip; super(); mType = _arg1; mDmg = Data.DBullet[mType].dmg; mSpeed = Data.DBullet[mType].speed; mKill = Data.DBullet[mType].kill; mRadius = Data.DBullet[mType].radius; mTarget = null; mOwner = _arg2; _local3 = new Bullets(); mIcon = _local3.getChildByName(("bullet" + mType)); mIcon.x = 0; mIcon.y = 0; mIcon.alpha = 1; addChild(mIcon); mouseEnabled = false; mIcon.mouseEnabled = false; if (mType == Data.BULLET_GRENADE){ mRadius = Data.DBullet[mType].radius; }; if (mType == Data.BULLET_LASER){ scaleX = 0.5; }; if ((((((mType == Data.BULLET_LIGHTNINGBALL)) || ((mType == Data.BULLET_ICEDROP)))) || ((mType == Data.BULLET_THORN)))){ mCtr = Data.DBullet[mType].ctr; }; } private function Update(_arg1:Event){ move(); checkHit(); } public function AddDispatcher(_arg1:String="update"):void{ if (mType == Data.BULLET_ICEDROP){ mIcon.nextFrame(); }; Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); } public function seek(){ var _local1:Number; var _local2:Number; var _local3:Number; if (mTarget){ _local1 = Global.AngleOfTwoDots(mTarget.x, mTarget.y, x, y); _local1 = Global.RadToDeg(_local1); _local2 = rotation; while (_local2 < 0) { _local2 = (_local2 + 360); }; if (_local2 > 180){ _local2 = (-180 + (_local2 % 180)); }; if (mType == Data.BULLET_LIGHTNINGBALL){ rotation = _local1; }; _local3 = (_local1 - _local2); if (Math.abs(_local3) > 180){ _local3 = (-(_local3) % 180); }; if (Math.abs(_local3) > 3){ if (_local3 > 0){ rotation = (rotation + Data.DBullet[mType].rotatespeed); } else { rotation = (rotation - Data.DBullet[mType].rotatespeed); }; }; } else { findTarget(); }; } public function checkHit(){ var _local1:int; var _local2:Number; if (((!(mOwner)) || (!(mOwner.parent)))){ KillMe(); return; }; if (mType == Data.BULLET_GRENADE){ return; }; if ((((mType == Data.BULLET_LIGHTNINGBALL)) && (mTarget))){ if (ColDetection.isColliding(this.mIcon, mTarget.mIcon, CGame.GetInstance(), true)){ mTarget.increaseHP(-(mDmg)); mTarget.setStatus(CEnemy.PARALYSED, 0.5, 5); findTarget(); mCtr--; if (mCtr <= 0){ KillMe(); }; }; return; }; if ((((((mType == Data.BULLET_THORN)) || ((mType == Data.BULLET_ICEDROP)))) || ((mType == Data.BULLET_BLADEFAN)))){ if (CGame.GetInstance().mWorms){ _local1 = 0; while (_local1 < CGame.GetInstance().mWorms.length) { _local2 = Global.Distance(x, y, CGame.GetInstance().mWorms[_local1].x, CGame.GetInstance().mWorms[_local1].y); if (_local2 <= (CGame.GetInstance().mWorms[_local1].width / 2)){ if (mType == Data.BULLET_ICEDROP){ CGame.GetInstance().mWorms[_local1].setStatus(CEnemy.FREEZED, 0.5, 2); }; CGame.GetInstance().mWorms[_local1].increaseHP(-(mDmg)); if (mKill){ KillMe(); }; break; }; _local1++; }; }; return; }; if (mType == Data.BULLET_GROWTH){ if (CGame.GetInstance().mTrees){ _local1 = 0; while (_local1 < CGame.GetInstance().mTrees.length) { _local2 = Global.Distance(x, y, CGame.GetInstance().mTrees[_local1].x, CGame.GetInstance().mTrees[_local1].y); if (_local2 <= (width / 2)){ CGame.GetInstance().mTrees[_local1].increaseGrow(mDmg); }; _local1++; }; }; return; }; if (mType == Data.BULLET_REPAIR){ if (CGame.GetInstance().mTurrets){ _local1 = 0; while (_local1 < CGame.GetInstance().mTurrets.length) { _local2 = Global.Distance(x, y, CGame.GetInstance().mTurrets[_local1].x, CGame.GetInstance().mTurrets[_local1].y); if (_local2 <= (width / 2)){ CGame.GetInstance().mTurrets[_local1].increaseHP(mDmg); }; _local1++; }; }; return; }; if (mType == Data.BULLET_STONE){ if (mTarget){ if ((((scaleX < 0.2)) && ((Global.Distance(x, y, mTarget.x, mTarget.y) <= (mDist / 2))))){ Explode("smoke"); }; }; return; }; if (Global.Distance(x, y, mOwner.x, mOwner.y) > mOwner.mRadius){ KillMe(); return; }; if ((((((((x < 10)) || ((y < 10)))) || ((x > (Global.STAGE_WIDTH - 10))))) || ((y > (Global.STAGE_HEIGHT - 10))))){ KillMe(); return; }; if (CGame.GetInstance().mWorms){ _local1 = 0; while (_local1 < CGame.GetInstance().mWorms.length) { if (CGame.GetInstance().mWorms[_local1]){ if (ColDetection.isColliding(this.mIcon, CGame.GetInstance().mWorms[_local1].mIcon, CGame.GetInstance(), true)){ CGame.GetInstance().mWorms[_local1].increaseHP(-(mDmg)); if ((((mType == Data.BULLET_LIGHTNING)) && (CGame.GetInstance().mWorms[_local1]))){ CGame.GetInstance().mWorms[_local1].setStatus(CEnemy.PARALYSED, 0.5, 3); }; if ((((mType == Data.BULLET_POISON)) && (CGame.GetInstance().mWorms[_local1]))){ CGame.GetInstance().mWorms[_local1].setStatus(CEnemy.POISONED, 1, 5); }; if ((((mType == Data.BULLET_FROZEN)) && (CGame.GetInstance().mWorms[_local1]))){ CGame.GetInstance().mWorms[_local1].setStatus(CEnemy.FREEZED, 0.5, 3); }; if ((((mType == Data.BULLET_SNOW)) && (CGame.GetInstance().mWorms[_local1]))){ CGame.GetInstance().mWorms[_local1].setStatus(CEnemy.FREEZED, 0.5, 3); }; if (mKill){ if ((((((mType == Data.BULLET_ROCKET)) || ((mType == Data.BULLET_MISSILE1)))) || ((mType == Data.BULLET_MISSILE2)))){ Explode(); } else { KillMe(); }; break; }; }; }; _local1++; }; }; if ((((((mType == Data.BULLET_FLAME)) || ((mType == Data.BULLET_POISON)))) || ((mType == Data.BULLET_FROZEN)))){ if (mIcon.currentFrame == mIcon.totalFrames){ KillMe(); }; }; } public function findTarget(){ var _local1:int; var _local2:int; var _local3:int; var _local4:Number; _local1 = int.MAX_VALUE; _local2 = -1; _local3 = 0; while (_local3 < CGame.GetInstance().mWorms.length) { _local4 = Global.Distance(x, y, CGame.GetInstance().mWorms[_local3].x, CGame.GetInstance().mWorms[_local3].y); if ((((((_local4 <= mRadius)) && (!((CGame.GetInstance().mWorms[_local3] == mTarget))))) && ((_local4 < _local1)))){ _local2 = _local3; _local1 = _local4; }; _local3++; }; if (_local2 > -1){ if (mType == Data.BULLET_STONE){ mTarget = new Point(CGame.GetInstance().mWorms[_local2].x, CGame.GetInstance().mWorms[_local2].y); mDist = Global.Distance(x, y, mTarget.x, mTarget.y); mSpeed = ((mDist / mRadius) * Data.DBullet[mType].speed); } else { mTarget = CGame.GetInstance().mWorms[_local2]; }; } else { mTarget = null; }; if (((!(mTarget)) && ((mType == Data.BULLET_LIGHTNINGBALL)))){ KillMe(); }; } public function KillMe(){ if (this){ RemoveDispatcher(); if (parent){ parent.removeChild(this); }; }; } public function Explode(_arg1:String="ledakan"){ var _local2:MovieClip; var _local3:int; var _local4:Number; _local2 = new Particles().getChildByName(_arg1); _local2.x = x; _local2.y = y; _local2.width = 0; _local2.height = 0; _local2.mouseEnabled = false; CGame.GetInstance().addChildAt(_local2, CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree)); Tweener.addTween(_local2, {width:Data.DBullet[mType].aoe, height:Data.DBullet[mType].aoe, alpha:0.7, time:1.5, onComplete:CGame.GetInstance().removeChild, onCompleteParams:[_local2]}); if (CGame.GetInstance().mWorms){ _local3 = 0; while (_local3 < CGame.GetInstance().mWorms.length) { _local4 = Global.Distance(x, y, CGame.GetInstance().mWorms[_local3].x, CGame.GetInstance().mWorms[_local3].y); if (_local4 <= Data.DBullet[mType].aoe){ CGame.GetInstance().mWorms[_local3].increaseHP(-(mDmg)); }; _local3++; }; }; KillMe(); } public function calculateDxDy(){ mDx = (Math.cos(Global.DegToRad(rotation)) * mSpeed); mDy = (Math.sin(Global.DegToRad(rotation)) * mSpeed); } public function move(){ var _local1:Number; var _local2:Number; if (mTarget){ if (((!((mType == Data.BULLET_STONE))) && (!((mType == Data.BULLET_BLADEFAN))))){ if (!mTarget.parent){ mTarget = null; } else { if (mTarget.mHP <= 0){ mTarget = null; }; }; }; }; if (mType == Data.BULLET_GRENADE){ return; }; if ((((mType == Data.BULLET_ICEDROP)) || ((mType == Data.BULLET_THORN)))){ mCtr--; if (mCtr <= 0){ KillMe(); }; }; if ((((((((((((((mType == Data.BULLET_HANDGUN)) || ((mType == Data.BULLET_FIREBALL)))) || ((mType == Data.BULLET_FLAME)))) || ((mType == Data.BULLET_POISON)))) || ((mType == Data.BULLET_FROZEN)))) || ((mType == Data.BULLET_NEEDLE)))) || ((mType == Data.BULLET_SNOW)))){ x = (x + mDx); y = (y + mDy); } else { if (mType == Data.BULLET_METEOR){ y = (y + mSpeed); scaleX = (scaleX - 0.02); scaleY = (scaleY - 0.02); if (scaleX <= 0){ KillMe(); }; } else { if (mType == Data.BULLET_LIGHTNING){ if (mIcon.currentFrame == mIcon.totalFrames){ KillMe(); }; } else { if (mType == Data.BULLET_LASER){ x = (x + mDx); y = (y + mDy); scaleX = (((scaleX * width) + (mSpeed * 10)) / width); } else { if ((((((((mType == Data.BULLET_ROCKET)) || ((mType == Data.BULLET_MISSILE1)))) || ((mType == Data.BULLET_MISSILE2)))) || ((mType == Data.BULLET_LIGHTNINGBALL)))){ x = (x + mDx); y = (y + mDy); if ((((((mType == Data.BULLET_MISSILE1)) || ((mType == Data.BULLET_MISSILE2)))) || ((mType == Data.BULLET_LIGHTNINGBALL)))){ seek(); }; mSpeed = (mSpeed + Data.DBullet[mType].acc); calculateDxDy(); } else { if (mType == Data.BULLET_STONE){ x = (x + mDx); y = (y + mDy); if (mTarget){ _local2 = ((Global.Distance(x, y, mTarget.x, mTarget.y) / mDist) * 90); _local2 = Global.DegToRad(_local2); } else { _local2 = 0; }; _local1 = Math.sin(_local2); scaleX = _local1; scaleY = scaleX; calculateDxDy(); } else { if (mType == Data.BULLET_SHURIKEN){ x = (x + mDx); y = (y + mDy); rotation = (rotation + Data.DBullet[mType].rotatespeed); } else { if (mType == Data.BULLET_BLADEFAN){ rotation = (rotation + (Data.DBullet[mType].rotatespeed * 3)); mTarget.angle = (mTarget.angle + Data.DBullet[mType].rotatespeed); x = (mTarget.x + (mRadius * Math.cos(Global.DegToRad(mTarget.angle)))); y = (mTarget.y + ((mRadius / 2) * Math.sin(Global.DegToRad(mTarget.angle)))); mTarget.counter--; if (mTarget.counter < 100){ alpha = (mTarget.counter / 100); }; if (mTarget.counter <= 0){ KillMe(); }; }; }; }; }; }; }; }; }; } } }//packageSection 68//CDialogCongrats (CDialogCongrats) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class CDialogCongrats extends MovieClip { public var mScore:TextField; public var mMenu:SimpleButton; public var mName:TextField; public var mSubmit:SimpleButton; public function CDialogCongrats(){ addFrameScript(0, frame1); } public function onDialogUp(_arg1:MouseEvent){ Main.GetInstance().mState = Main.STATE_PAUSED; } public function onMenuUp(_arg1:MouseEvent){ this.parent.removeChild(this); Main.GetInstance().KillGameWin(); } public function onNameUp(_arg1:MouseEvent){ if (mName.text == "Enter your name"){ mName.text = ""; }; mName.setSelection(0, mName.text.length); Main.GetInstance().mState = Main.STATE_GAME_OVER; } function frame1(){ mScore.text = CGame.GetInstance().mStatusBar.mScore.text; if (Main.GetInstance().game){ if (Main.GetInstance().game.UseHighScores()){ mSubmit.addEventListener(MouseEvent.MOUSE_UP, onSubmitUp, false, 0, true); } else { mName.parent.removeChild(mName); mSubmit.parent.removeChild(mSubmit); }; }; addEventListener(MouseEvent.MOUSE_DOWN, onDialogUp, false, 0, true); mName.addEventListener(MouseEvent.MOUSE_UP, onNameUp, false, 0, true); if (!mMenu.hasEventListener(MouseEvent.MOUSE_UP)){ mMenu.addEventListener(MouseEvent.MOUSE_UP, onMenuUp, false, 0, true); }; } public function onSubmitUp(_arg1:MouseEvent){ var _local2:String; trace("submit"); this.parent.removeChild(this); Main.GetInstance().KillGameWin(); _local2 = (((mScore.text + " (") + (CGame.GetInstance().mLevel - 1)) + ")"); trace(_local2); Main.GetInstance().game.SubmitHighScore("", mName.text, _local2); } } }//packageSection 69//CDialogPause (CDialogPause) package { import flash.events.*; import caurina.transitions.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class CDialogPause extends MovieClip { public var mResume:SimpleButton; public var mMenu:SimpleButton; public var mMessage:TextField; public function CDialogPause(){ addFrameScript(0, frame1); } public function onMenuUp(_arg1:MouseEvent){ this.parent.removeChild(this); Main.GetInstance().KillGameWin(); } function frame1(){ if (!mMenu.hasEventListener(MouseEvent.MOUSE_UP)){ mMenu.addEventListener(MouseEvent.MOUSE_UP, onMenuUp, false, 0, true); }; if (!mResume.hasEventListener(MouseEvent.MOUSE_UP)){ mResume.addEventListener(MouseEvent.MOUSE_UP, onResumeUp, false, 0, true); }; } public function onResumeUp(_arg1:MouseEvent){ this.parent.removeChild(this); Main.GetInstance().mState = Main.STATE_GAME; Tweener.resumeAllTweens(); Main.GetInstance().stage.focus = Main.GetInstance(); } } }//packageSection 70//CEnemy (CEnemy) package { import flash.events.*; import flash.geom.*; import flash.display.*; import com.troy.collision.*; import de.polygonal.math.*; public class CEnemy extends MovieClip { public var mFrame:Array; public var mDifficulty:Object; public var mScore:Number; public var mStatCount:int; public var mHP:Number; public var mMovement:int; public var mRandomCounter:int; public var mStatCounter:int; public var mType:int; public var mRadius:int; public var mDmg:Number; public var mMoney:Number; public var mTarget:Object; public var mDirection:int; public var mIcon:MovieClip; public var mHPBar:MovieClip; public var mSeekCounter:int; public var mStatus:int; public var mTempTarget:Object; public var mSpeed:Number; public var mStatDmg:Number; public var mDx:Number; public var mDy:Number; public var mMaxHP:int; public static const ATTACK = 1; public static const FREEZED = 3; public static const MOVE = 0; public static const LEFT = 1; public static const PARALYSED = 2; public static const POISONED = 1; public static const NORMAL = 0; public static const STAT_COUNTER = 40; public static const RIGHT = -1; public static var ColorGreen:ColorTransform; public static var ColorRed:ColorTransform; public static var ColorYellow:ColorTransform; public static var ColorNormal:ColorTransform; public static var ColorBlue:ColorTransform; public function CEnemy(_arg1:int, _arg2:Object="HIGHARMOR"){ var _local3:Enemies; var _local4:int; var _local5:String; super(); ColorYellow = new ColorTransform(1.5, 1.5, 0.7, 1, 0, 0, 0, 0); ColorRed = new ColorTransform(2, 1, 1, 1, 0, 0, 0, 0); ColorGreen = new ColorTransform(0.7, 1.5, 0.7, 1, 0, 0, 0, 0); ColorNormal = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0); ColorBlue = new ColorTransform(1, 1, 1, 1, 0, 0, 0xFF, 0); mType = _arg1; _local3 = new Enemies(); mIcon = _local3.getChildByName(("enemy" + mType)); mIcon.x = 0; mIcon.y = 0; addChild(mIcon); mFrame = new Array(); mFrame.push(Data.DEnemy[mType].move); mFrame.push(Data.DEnemy[mType].attack); mSpeed = Data.DEnemy[mType].speed; mDmg = Data.DEnemy[mType].dmg; mHP = Data.DEnemy[mType].hp; mMaxHP = Data.DEnemy[mType].hp; mRadius = Data.DEnemy[mType].radius; mScore = Data.DEnemy[mType].score; mMoney = Data.DEnemy[mType].money; mDirection = LEFT; mMovement = MOVE; mSeekCounter = 0; findTarget(); mHPBar = new HPBar(); mHPBar.stop(); addChild(mHPBar); mHPBar.x = 0; mHPBar.y = (-(mIcon.height) / 2); mHPBar.scaleX = (mIcon.width / mHPBar.width); mHPBar.scaleY = (5 / mHPBar.height); mHPBar.gotoAndStop(((mHP / mMaxHP) * 100)); mHPBar.alpha = 0; mStatus = NORMAL; mStatCounter = STAT_COUNTER; mStatDmg = 0; for (_local4 in _arg2) { mDifficulty = Data.DDifficulty[_arg2[_local4]]; for (_local5 in mDifficulty) { this[_local5] = (this[_local5] * mDifficulty[_local5]); }; }; } private function onMouseOver(_arg1:MouseEvent):void{ } private function Update(_arg1:Event){ var _local2:Number; var _local3:Number; if (mHP <= 0){ increaseHP(-10); }; if (mRandomCounter > 0){ mRandomCounter--; } else { findRandomTarget(); }; if (mStatCounter > 0){ mStatCounter--; }; if (mStatus == PARALYSED){ if ((mStatCounter % 2) == 0){ mIcon.stop(); } else { mIcon.play(); }; }; if (mStatCounter == 0){ if (mStatus == POISONED){ increaseHP(-(mStatDmg)); }; mStatCount--; if (mStatCount <= 0){ setStatus(NORMAL); }; mStatCounter = STAT_COUNTER; }; checkTarget(); if (mMovement == MOVE){ if (!haveApple()){ if (mTarget != null){ _local2 = Global.Distance(x, y, mTarget.x, mTarget.y); if ((mTarget is CPohon)){ if (!mTarget.haveRipeApple()){ mSeekCounter = 0; findTarget(); }; }; if (_local2 > mRadius){ mSeekCounter = 0; findTarget(); }; if (mTarget){ _local3 = Global.AngleOfTwoDots(mTarget.x, mTarget.y, x, y); calculateDxDy(_local3); }; } else { findTarget(); }; } else { if (haveApple()){ ChangeDirection(LEFT); calculateDxDy(Global.DegToRad(-180)); }; }; move(); }; } public function AddDispatcher(_arg1:String="update"):void{ Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, onMouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, onMouseOut, false, 0, true); } public function setStatus(_arg1:int, _arg2:Number=0, _arg3:int=0){ if (mStatus == _arg1){ return; }; mStatus = _arg1; if (_arg1 == POISONED){ mStatDmg = _arg2; mStatCount = _arg3; mIcon.transform.colorTransform = ColorGreen; } else { if (_arg1 == NORMAL){ mStatCounter = -1; mStatDmg = 0; mStatCount = 0; mSpeed = Data.DEnemy[mType].speed; mIcon.play(); mIcon.transform.colorTransform = ColorNormal; } else { if (_arg1 == PARALYSED){ mSpeed = (Data.DEnemy[mType].speed * _arg2); mStatCount = _arg3; mIcon.transform.colorTransform = ColorYellow; } else { if (_arg1 == FREEZED){ mSpeed = (Data.DEnemy[mType].speed * _arg2); mIcon.transform.colorTransform = ColorBlue; mStatCount = _arg3; }; }; }; }; calculateDxDy(rotation); } public function Kill(){ stop(); mTarget = null; RemoveDispatcher(); if (this.parent){ this.parent.killWorm(this); }; } public function afterAttack(){ if (mTarget){ if ((mTarget is CTurret)){ if (mTarget.mType == Data.WALL_SPIKE){ increaseHP(-(mTarget.mDmg)); } else { if (mTarget.mType == Data.FENCE_POISON){ setStatus(POISONED, mTarget.mDmg, 5); } else { if (mTarget.mType == Data.FENCE_ELECTRIC){ setStatus(PARALYSED, mTarget.mDmg, 5); }; }; }; if (mTarget){ mTarget.increaseHP(-(mDmg)); if (mTarget.mHP <= 0){ mTarget = null; }; }; }; }; ChangeMovement(MOVE); } private function onMouseUp(_arg1:MouseEvent):void{ CGame.GetInstance().setActiveUnit(this); } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver, false); removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut, false); } private function onMouseOut(_arg1:MouseEvent):void{ } public function ChangeMovement(_arg1:int){ mIcon.gotoAndPlay(mFrame[_arg1]); mMovement = _arg1; } public function ChangeDirection(_arg1:int){ mDirection = _arg1; mIcon.scaleX = (mDirection * Math.abs(mIcon.scaleX)); } public function Hit(){ } public function findRandomTarget(){ var _local1:Number; if ((((mTarget == null)) && (!((mTempTarget == null))))){ mTarget = mTempTarget; mRandomCounter = PM_PRNG.nextIntRange(120, 200); mSeekCounter = mRandomCounter; return; }; mTarget = null; _local1 = Global.AngleOfTwoDots(PM_PRNG.nextIntRange(100, (Global.STAGE_WIDTH - 100)), PM_PRNG.nextIntRange(100, (Global.STAGE_HEIGHT - 100)), x, y); calculateDxDy(_local1); if (mRandomCounter <= 0){ mRandomCounter = PM_PRNG.nextIntRange(40, 80); }; } public function findTarget(){ var _local1:Number; var _local2:int; var _local3:Number; var _local4:int; if (mSeekCounter <= 0){ _local1 = PM_PRNG.nextDouble(); mTarget = null; mTempTarget = null; mSeekCounter = PM_PRNG.nextIntRange(120, 200); _local2 = 0; while (_local2 < CGame.GetInstance().mTurrets.length) { if ((((CGame.GetInstance().mTurrets[_local2].mType >= Data.WALL_WOOD)) && ((CGame.GetInstance().mTurrets[_local2].mType <= Data.FENCE_STEELSPIKE)))){ _local3 = Global.Distance(x, y, CGame.GetInstance().mTurrets[_local2].x, CGame.GetInstance().mTurrets[_local2].y); if (_local3 < mRadius){ mTarget = CGame.GetInstance().mTurrets[_local2]; mTempTarget = CGame.GetInstance().mTurrets[_local2]; mRandomCounter = PM_PRNG.nextIntRange(120, 200); mSeekCounter = mRandomCounter; return; }; }; _local2++; }; if (_local1 <= Data.DEnemy[mType].appleprob){ _local4 = CGame.GetInstance().mTrees.length; if (_local4 > 0){ do { _local2 = (PM_PRNG.nextDouble() * CGame.GetInstance().mTrees.length); _local3 = Global.Distance(x, y, CGame.GetInstance().mTrees[_local2].x, CGame.GetInstance().mTrees[_local2].y); if (((CGame.GetInstance().mTrees[_local2].haveRipeApple()) && ((_local3 <= mRadius)))){ mTarget = CGame.GetInstance().mTrees[_local2]; mTempTarget = CGame.GetInstance().mTrees[_local2]; return; }; --_local4; } while (_local4 != 0); }; }; if (_local1 <= Data.DEnemy[mType].attprob){ _local4 = CGame.GetInstance().mTurrets.length; if (_local4 > 0){ do { _local2 = (PM_PRNG.nextDouble() * CGame.GetInstance().mTurrets.length); _local3 = Global.Distance(x, y, CGame.GetInstance().mTurrets[_local2].x, CGame.GetInstance().mTurrets[_local2].y); if (_local3 <= mRadius){ mTarget = CGame.GetInstance().mTurrets[_local2]; mTempTarget = CGame.GetInstance().mTurrets[_local2]; return; }; --_local4; } while (_local4 != 0); }; }; findRandomTarget(); }; } public function checkTarget(){ var _local1:int; if (mTarget){ if ((mTarget is CPohon)){ _local1 = CGame.GetInstance().mTrees.indexOf(mTarget); if (_local1 == -1){ mTarget = null; }; } else { if ((mTarget is CTurret)){ _local1 = CGame.GetInstance().mTurrets.indexOf(mTarget); if (_local1 == -1){ mTarget = null; }; }; }; }; } public function increaseHP(_arg1:Number){ mHP = (mHP + _arg1); mHPBar.gotoAndStop(int(((Math.round(mHP) / mMaxHP) * 100))); if (mHP < mMaxHP){ mHPBar.alpha = 1; }; if (mHP <= 0){ if (haveApple()){ CGame.GetInstance().pindahApel(getChildAt(2)); }; CGame.GetInstance().munculTulisan(("+" + mMoney), x, y); CGame.GetInstance().IncreaseScore(mScore); CGame.GetInstance().IncreaseMoney(mMoney); Kill(); }; } public function calculateDxDy(_arg1:Number){ mDx = (Math.cos(_arg1) * mSpeed); mDy = (Math.sin(_arg1) * mSpeed); if ((((mDx < 0)) && (!((mDirection == LEFT))))){ ChangeDirection(LEFT); } else { if ((((mDx > 0)) && (!((mDirection == RIGHT))))){ ChangeDirection(RIGHT); }; }; } public function move(){ var _local1:MovieClip; if (mSeekCounter > 0){ mSeekCounter--; }; x = (x + mDx); y = (y + mDy); if ((((x <= (-(width) / 2))) && (haveApple()))){ if (this.getChildAt(2).mOwner){ Main.GetInstance().mOptionBar.PlaySFX("loser", 2); this.getChildAt(2).mOwner.Kill(); this.getChildAt(2).mOwner = null; }; Kill(); return; }; if (mTarget != null){ if ((mTarget is CPohon)){ if (mTarget.haveRipeApple()){ if (ColDetection.isColliding(this, mTarget.getChildAt(1), CGame.GetInstance(), true)){ mTarget.getApple().changeOwner(this); transform.colorTransform = ColorRed; _local1 = new CArrow(); _local1.x = 0; _local1.y = -30; addChild(_local1); Main.GetInstance().mOptionBar.PlaySFX("laugh", 1.5); if (mDirection == RIGHT){ ChangeDirection(LEFT); }; if (mType == Data.WORM_BOSS){ mSpeed = (mSpeed * 2); }; calculateDxDy(Global.DegToRad(180)); }; }; } else { if ((mTarget is CTurret)){ if (ColDetection.isColliding(this, mTarget.mIcon, CGame.GetInstance(), true)){ ChangeMovement(ATTACK); }; }; }; }; if ((((((((x < 20)) || ((x > (Global.STAGE_WIDTH - 20))))) || ((y < 20)))) || ((y > (Global.STAGE_HEIGHT - 20))))){ if (!haveApple()){ mSeekCounter = 0; findTarget(); }; }; } public function haveApple():Boolean{ if (numChildren >= 3){ if ((getChildAt(2) is CApel)){ return (true); }; }; return (false); } } }//packageSection 71//CGame (CGame) package { import flash.events.*; import caurina.transitions.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import com.troy.collision.*; import com.electrotank.util.*; import flash.text.*; import flash.utils.*; public class CGame extends MovieClip { public var mBuildCommand:String; public var mLayerWorm:MovieClip; public var mTrees:Array; public var mCrosshair:MovieClip; public var mBossTextCounter:int; public var mBuildList:Array; public var mBuilding:MovieClip; public var mBuildDown:Boolean; public var mTurrets:Array; public var mSFXFlag:Boolean; public var mIndex:Array; public var mRefreshCounter:int; public var mNextLevel:int; public var mRadar:MovieClip; public var mLayerTree:MovieClip; public var mCount:int;// = 0 public var mDialogCongrats:MovieClip; public var mStatusBar:MovieClip; public var mTimer:Timer; public var mTutFlag:int;// = 0 public var mLayerTurret:MovieClip; public var mSFXChannel:SoundChannel; public var mLevel:int; public var mApples:Array; public var mWorms:Array; public var mBuildCost:int; private var mSO:SharedObject; public var mPanel:CMainPanel; public var mBuildOK:Boolean; public var mRefresh:int; public var mTutWin:MovieClip; public var mWaveManager:CWaveManager; public var mBossText:MovieClip; public var mActiveUnit:Object; static var UnableColor:ColorTransform; private static var CGameGlobal:CGame; static var EnableColor:ColorTransform; public function CGame(_arg1:Boolean=true){ var _local2:CPohon; var _local3:CApel; mTutFlag = 0; mSO = SharedObject.getLocal("AppleDefender_LB"); mTimer = new Timer(500, 15); mCount = 0; super(); mBossText.visible = false; mBossText.stop(); mTutFlag = 1; mCount = 0; CGameGlobal = this; EnableColor = new ColorTransform(1, 1, 1, 0.7, 0, 0, 0, 0); UnableColor = new ColorTransform(2, 0.5, 0.5, 0.7, 0, 0, 0, 0); mRefresh = 1; mRefreshCounter = mRefresh; mRadar.alpha = 0; mRadar.mouseEnabled = false; mTrees = new Array(); mApples = new Array(); mWorms = new Array(); mTurrets = new Array(); mLevel = 0; loadLevel((mLevel % Data.DWave.length)); _local2 = new CPohon(); _local2.x = Data.DWave[0].level.pohon.x; _local2.y = Data.DWave[0].level.pohon.y; _local2.AddDispatcher(); addChildAt(_local2, getChildIndex(mLayerTree)); mTrees.push(_local2); _local3 = new CApel(_local2); _local3.x = 0; _local3.y = 0; _local2.addChild(_local3); mApples.push(_local3); mCrosshair.alpha = 0; setActiveUnit(this); InitStatusBar(); mSFXFlag = false; mTutWin.stop(); if (!_arg1){ if (mTutWin.parent){ mTutWin.parent.removeChild(mTutWin); mTutWin = null; }; mTutFlag = 0; _local3.AddDispatcher(); mWaveManager.AddDispatcher(); loadLevel(mLevel); setPanel(mBuildList, "build", this); } else { mSO.data.tutFlag9 = true; mSO.flush(); }; } public function AddDispatcher():void{ Main.GetInstance().addEventListener("update", Update, false, 0, true); addEventListener(MouseEvent.MOUSE_MOVE, onMouseMove, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown, false, 0, true); mTimer.addEventListener(TimerEvent.TIMER, mPanel.blink, false, 0, true); mTimer.addEventListener(TimerEvent.TIMER_COMPLETE, mPanel.setMessageAlpha, false, 0, true); } private function RemoveBloodSplat(_arg1:MovieClip):void{ if (_arg1){ if (_arg1.parent){ _arg1.parent.removeChild(_arg1); }; _arg1.stop(); _arg1 = null; }; } function munculTulisan(_arg1:String, _arg2:int, _arg3:int, _arg4:Boolean=false, _arg5:int=0, _arg6:Number=1, _arg7:Number=2){ var _local8:TextField; var _local9:TextFormat; _local8 = new TextField(); _local9 = new TextFormat(); _local8.defaultTextFormat = mPanel.mMessage.getTextFormat(); _local8.textColor = 0x3300; _local8.embedFonts = true; _local8.text = _arg1; _local8.x = _arg2; _local8.y = _arg3; _local8.scaleX = 0; _local8.scaleY = 0; _local8.mouseEnabled = false; addChildAt(_local8, (this.numChildren - 1)); if (_arg4){ Tweener.addTween(_local8, {time:2, x:_arg2, y:(_arg3 - 50), scaleX:1, scaleY:1}); Tweener.addTween(_local8, {time:3, alpha:0.9, onComplete:removeChild, onCompleteParams:[_local8]}); } else { Tweener.addTween(_local8, {time:_arg6, x:_arg2, y:((_arg3 - 20) - _arg5), scaleX:1, scaleY:1}); Tweener.addTween(_local8, {time:_arg7, alpha:0.9, onComplete:removeChild, onCompleteParams:[_local8]}); }; } function pindahApel(_arg1:CApel){ var _local2:Number; _arg1.x = _arg1.parent.x; _arg1.y = _arg1.parent.y; _arg1.parent.removeChild(_arg1); addChild(_arg1); _local2 = (Global.Distance(_arg1.x, _arg1.y, _arg1.mOwner.x, _arg1.mOwner.y) / 120); Tweener.addTween(_arg1, {time:_local2, transition:"easeout", x:_arg1.mOwner.x, y:_arg1.mOwner.y, onComplete:_arg1.changeOwner, onCompleteParams:[_arg1.mOwner]}); } public function killTree(_arg1:CPohon){ var _local2:int; _local2 = mTrees.indexOf(_arg1); if (_local2 > -1){ if (_arg1 == mActiveUnit){ setActiveUnit(this); }; if (_arg1.haveApple()){ killApple(_arg1.getApple()); }; _arg1.RemoveDispatcher(); _arg1.parent.removeChild(_arg1); mTrees[_local2] = null; mTrees.splice(_local2, 1); IncreaseTree(-1); Data.DTree.count = mTrees.length; Data.DTree.cost = (((Data.DTree.count * Data.DTree.count) + Math.pow(3, Data.DTree.count)) + 60); }; } function cancelBuild(){ if (mBuilding){ removeChild(mBuilding); mBuilding = null; mBuildOK = false; mBuildDown = false; }; } public function killWaveManager(){ if (mWaveManager){ mWaveManager.RemoveDispatcher(); mWaveManager = null; }; } private function onComplete(_arg1:Event):void{ mSFXFlag = false; mSFXChannel.removeEventListener(Event.SOUND_COMPLETE, onComplete, false); } public function loadLevel(_arg1:int){ if (mTutFlag == 0){ mWaveManager = new CWaveManager(_arg1); mWaveManager.AddDispatcher(); mNextLevel = Data.DWave[_arg1].level.nextlevel; if (mBuildList){ mBuildList.splice(0, mBuildList.length); mBuildList = null; }; mBuildList = new Array(); mBuildList.push("handgun"); mBuildList.push("repair1"); mBuildList.push("pohon"); } else { mWaveManager = new CWaveManager(_arg1); mNextLevel = Data.DWave[_arg1].level.nextlevel; if (mBuildList){ mBuildList.splice(0, mBuildList.length); mBuildList = null; }; mBuildList = new Array(); mBuildList.push("handgun"); }; trace(("level : " + CGame.GetInstance().mLevel)); if ((((CGame.GetInstance().mLevel > 49)) || (((((CGame.GetInstance().mLevel % 10) == 0)) && ((CGame.GetInstance().mLevel > 0)))))){ if (CGame.GetInstance().mLevel > 49){ if (CGame.GetInstance().mLevel == 50){ mBossText.t = "Giant Gippsland!"; } else { if (CGame.GetInstance().mLevel > 50){ mBossText.t = "All your apple are belong to us"; }; }; }; mBossText.visible = true; mBossText.play(); mBossTextCounter = 200; } else { mBossText.stop(); mBossText.visible = false; }; InitStatusBar(); } function build(_arg1:Object, _arg2:String, _arg3:Object, _arg4:int, _arg5:int){ if (mBuilding){ cancelBuild(); }; mBuildCommand = _arg2; if (_arg1 == "pohon"){ mBuildCost = Data.DTree.cost; } else { mBuildCost = Data.DTurret[Data.DTUpgrade[_arg1]].cost; }; if (MemoryCrypto.getValue(Main.GetInstance().mHeroData.money) >= mBuildCost){ if (mBuildCommand == "build"){ if (_arg1 == "pohon"){ mBuilding = new CPohon(); } else { mBuilding = new CTurret(Data.DTUpgrade[_arg1]); }; mBuilding.alpha = 0.7; mBuilding.x = _arg4; mBuilding.y = _arg5; addChild(mBuilding); mBuildOK = false; mBuildDown = false; } else { if (mBuildCommand == "upgrade"){ _arg3.upgrade(_arg1); IncreaseMoney(-(mBuildCost)); }; }; } else { mPanel.mMessage.text = "Not Enough Money"; CGame.GetInstance().mTimer.start(); }; } private function isFinish():void{ if (mNextLevel > 0){ mNextLevel--; }; if (mTrees.length <= 0){ trace("gameover"); Main.GetInstance().mState = Main.STATE_PAUSED; mDialogCongrats = new CDialogCongrats(); addChild(mDialogCongrats); return; }; if ((((mWorms.length <= 0)) && ((mWaveManager == null)))){ nextlevel(); return; }; if (mNextLevel <= 0){ nextlevel(); }; } public function nextlevel():void{ Main.GetInstance().mOptionBar.PlaySFX("trumpet"); Data.DWave[(mLevel % Data.DWave.length)].level.diff = (Data.DWave[(mLevel % Data.DWave.length)].level.diff + 1); Data.DWave[(mLevel % Data.DWave.length)].level.nextlevel = (Data.DWave[(mLevel % Data.DWave.length)].level.nextlevel + int(((mLevel / 5) * 40))); mLevel = (mLevel + 1); loadLevel((mLevel % Data.DWave.length)); } public function RemoveDispatcher(){ Main.GetInstance().removeEventListener("update", Update); removeEventListener(MouseEvent.MOUSE_MOVE, onMouseMove, false); removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDown, false); } public function NoTut(){ var _local1:int; var _local2:CPohon; var _local3:int; var _local4:CEnemy; var _local5:CTurret; if (mTutWin.parent){ mTutWin.parent.removeChild(mTutWin); }; if (mTutFlag < 3){ mApples[0].AddDispatcher(); mBuildList.push("repair1"); mBuildList.push("pohon"); }; if (mTutFlag < 5){ mWaveManager.AddDispatcher(); }; _local1 = 1; while (_local1 < mTrees.length) { _local2 = mTrees[_local1]; _local3 = mTrees.indexOf(_local2); if (_local3 > -1){ if (_local2 == mActiveUnit){ setActiveUnit(this); }; if (_local2.haveApple()){ killApple(_local2.getApple()); }; _local2.RemoveDispatcher(); _local2.parent.removeChild(_local2); mTrees[_local3] = null; IncreaseTree(-1); Data.DTree.count = mTrees.length; }; _local1++; }; mTrees.splice(1, (mTrees.length - 1)); _local1 = 0; while (_local1 < mWorms.length) { _local4 = mWorms[_local1]; _local3 = mWorms.indexOf(_local4); if (_local3 > -1){ if (_local4 == mActiveUnit){ setActiveUnit(this); }; if (_local4.haveApple()){ killApple(_local4.getChildAt(2)); }; _local4.RemoveDispatcher(); _local4.parent.removeChild(_local4); _local4 = null; mWorms[_local3] = null; }; _local1++; }; mWorms.splice(0, mWorms.length); _local1 = 0; while (_local1 < mTurrets.length) { _local5 = mTurrets[_local1]; _local3 = mTurrets.indexOf(_local5); if (_local3 > -1){ if (_local5 == mActiveUnit){ setActiveUnit(this); }; _local5.RemoveDispatcher(); mTurrets[_local3].RemoveDispatcher(); removeChild(mTurrets[_local3]); mTurrets[_local3] = null; _local5 = null; }; _local1++; }; mTurrets.splice(0, mTurrets.length); if (mTutFlag <= 1){ mLevel = 0; } else { mLevel = -1; }; MemoryCrypto.setValue(Main.GetInstance().mHeroData.money, Data.DHeroDefault.money); MemoryCrypto.setValue(Main.GetInstance().mHeroData.score, 0); IncreaseMoney(0); IncreaseScore(0); mTrees[0].ResetRipeAppel(); setPanel(mBuildList, "build", this); mTutFlag = 0; } public function IncreaseWorms(_arg1:int){ } public function killApple(_arg1:CApel){ var _local2:int; _local2 = mApples.indexOf(_arg1); if (_local2 > -1){ _arg1.RemoveDispatcher(); _arg1.parent.removeChild(_arg1); mApples[_local2] = null; mApples.splice(_local2, 1); }; } public function setPanel(_arg1:Array, _arg2:String, _arg3:Object, _arg4:Boolean=true){ var _local5:int; if (_arg4){ mPanel.removeAllIcon(); }; _local5 = 0; while (_local5 < _arg1.length) { mPanel.addIcon(_arg1[_local5], _arg2, _arg3); _local5++; }; } public function PlayBloodSplat(_arg1:int, _arg2:int){ var _local3:MovieClip; _local3 = new BloodSplat(); _local3.alpha = 0; _local3.x = _arg1; _local3.y = _arg2; _local3.scaleX = 0.5; _local3.scaleY = 0.5; addChildAt(_local3, 1); _local3.play(); Tweener.addTween(_local3, {time:0.8, alpha:1, scaleX:1.5, scaleY:1.5}); Tweener.addTween(_local3, {time:3.5, delay:0.8, alpha:0.9}); Tweener.addTween(_local3, {time:0.8, delay:4.4, alpha:0, onComplete:RemoveBloodSplat, onCompleteParams:[_local3]}); } public function setHoverData(_arg1:Object){ if (_arg1){ if (_arg1 == "pohon"){ mPanel.setHoverData(("Apple Tree\nCost: " + Data.DTree.cost)); } else { mPanel.setHoverData(Data.DHoverData[_arg1]); }; } else { mPanel.setHoverData(""); }; } public function changeTurret(_arg1:CTurret, _arg2:int){ var _local3:int; var _local4:int; _local3 = mTurrets.indexOf(_arg1); if (_local3 > -1){ removeChild(mTurrets[_local3]); mTurrets[_local3].RemoveDispatcher(); mTurrets[_local3] = null; mTurrets[_local3] = new CTurret(_arg2); mTurrets[_local3].x = _arg1.x; mTurrets[_local3].y = _arg1.y; mTurrets[_local3].mIcon.gotoAndStop(_arg1.mIcon.currentFrame); mTurrets[_local3].AddDispatcher(); _arg1 = null; addChildAt(mTurrets[_local3], getChildIndex(mLayerTurret)); CGame.GetInstance().setActiveUnit(mTurrets[_local3]); mTurrets.sortOn("y"); _local4 = 0; while (_local4 < (mTurrets.length - 1)) { if (mTurrets[_local4]){ if (mTurrets[_local4].parent){ mTurrets[_local4].parent.setChildIndex(mTurrets[_local4], (_local4 + 1)); }; }; _local4++; }; }; } private function Update(_arg1:Event){ var _local2:int; if (mBossTextCounter > 0){ mBossTextCounter--; if (mBossTextCounter == 0){ mBossText.visible = false; mBossText.stop(); }; }; if (mRefreshCounter > 0){ mRefreshCounter--; }; if (mRefreshCounter == 0){ refreshActiveData(); mRefreshCounter = mRefresh; }; if ((mActiveUnit is CEnemy)){ mCrosshair.x = mActiveUnit.x; mCrosshair.y = mActiveUnit.y; }; mIndex = mWorms; mIndex.sortOn("y"); _local2 = 0; while (_local2 < mIndex.length) { if (mIndex[_local2]){ if (mIndex[_local2].parent){ mIndex[_local2].parent.setChildIndex(mIndex[_local2], (_local2 + getChildIndex(mLayerWorm))); }; }; _local2++; }; if (mTutFlag <= 0){ isFinish(); }; } private function onMouseMove(_arg1:MouseEvent):void{ var _local2:int; if (mBuilding){ mBuilding.x = _arg1.stageX; mBuilding.y = _arg1.stageY; mBuilding.transform.colorTransform = EnableColor; mBuildOK = true; if (_arg1.stageY >= mPanel.y){ mBuilding.transform.colorTransform = UnableColor; mBuildOK = false; return; }; if (ColDetection.isColliding(mBuilding, mPanel, this, true)){ mBuilding.transform.colorTransform = UnableColor; mBuildOK = false; return; }; _local2 = 0; while (_local2 < mWorms.length) { if (ColDetection.isColliding(mBuilding, mWorms[_local2].mIcon, this, true)){ mBuilding.transform.colorTransform = UnableColor; mBuildOK = false; return; }; _local2++; }; _local2 = 0; while (_local2 < mTrees.length) { if (ColDetection.isColliding(mBuilding, mTrees[_local2].mPohon, this, true)){ mBuilding.transform.colorTransform = UnableColor; mBuildOK = false; return; }; _local2++; }; _local2 = 0; while (_local2 < mTurrets.length) { if (ColDetection.isColliding(mBuilding, mTurrets[_local2].mIcon, this, true)){ mBuilding.transform.colorTransform = UnableColor; mBuildOK = false; return; }; _local2++; }; }; } public function refreshActiveData(){ var _local1:String; if ((mActiveUnit is CGame)){ mPanel.setPanelData(""); } else { if ((mActiveUnit is CTurret)){ _local1 = ((((((((Data.DTurret[mActiveUnit.mType].name + "\nHP: ") + Math.round(mActiveUnit.mHP)) + "/") + mActiveUnit.mMaxHP) + "\nDamage: ") + mActiveUnit.mDmg) + "\nROF: ") + (100 - mActiveUnit.mROF)); mPanel.setPanelData(_local1); } else { if ((mActiveUnit is CEnemy)){ _local1 = ((((("HP: " + int(mActiveUnit.mHP)) + "/") + mActiveUnit.mMaxHP) + "\nDamage: ") + mActiveUnit.mDmg); mPanel.setPanelData(_local1); } else { if ((mActiveUnit is CPohon)){ _local1 = ""; if (mActiveUnit.haveApple()){ _local1 = ((((("Apple:" + int((mActiveUnit.getApple().mApel.scaleX * 100))) + "%") + "\nGrow Rate:") + int(((mActiveUnit.getApple().mGrowRate * 4000) / Data.DApel.growcounter))) + "%/sec"); mPanel.setPanelData(_local1); } else { mPanel.setPanelData("Dying"); }; }; }; }; }; } public function IncreaseTree(_arg1:int){ mStatusBar.mTrees.text = (int(mStatusBar.mTrees.text) + _arg1); } private function onMouseUp(_arg1:MouseEvent):void{ var _local2:CPohon; var _local3:CApel; var _local4:CTurret; var _local5:int; if (((((mBuilding) && (mBuildOK))) && (mBuildDown))){ if ((mBuilding is CPohon)){ _local2 = new CPohon(); _local2.x = _arg1.stageX; _local2.y = _arg1.stageY; _local2.AddDispatcher(); addChildAt(_local2, getChildIndex(mLayerTree)); mTrees.push(_local2); Data.DTree.count = mTrees.length; Data.DTree.cost = (((Data.DTree.count * Data.DTree.count) + Math.pow(3, Data.DTree.count)) + 60); _local3 = new CApel(_local2); _local3.x = 0; _local3.y = 0; _local3.AddDispatcher(); _local2.addChild(_local3); mApples.push(_local3); IncreaseTree(1); cancelBuild(); IncreaseMoney(-(mBuildCost)); } else { if ((mBuilding is CTurret)){ _local4 = new CTurret(mBuilding.mType); _local4.x = _arg1.stageX; _local4.y = _arg1.stageY; _local4.mIcon.gotoAndStop(mBuilding.mIcon.currentFrame); _local4.AddDispatcher(); addChildAt(_local4, getChildIndex(mLayerTurret)); mTurrets.push(_local4); mTurrets.sortOn("y"); _local5 = 0; while (_local5 < (mTurrets.length - 1)) { if (mTurrets[_local5]){ if (mTurrets[_local5].parent){ mTurrets[_local5].parent.setChildIndex(mTurrets[_local5], (_local5 + 1)); }; }; _local5++; }; setActiveUnit(_local4); cancelBuild(); IncreaseMoney(-(mBuildCost)); }; }; } else { if (_arg1.target == this){ if (_arg1.stageY < mPanel.y){ setActiveUnit(this); }; }; }; } public function IncreaseScore(_arg1:int){ MemoryCrypto.incrementValue(Main.GetInstance().mHeroData.score, _arg1); mStatusBar.mScore.text = MemoryCrypto.getValue(Main.GetInstance().mHeroData.score); } public function ProcessTut(_arg1:int){ mTutFlag = _arg1; if (_arg1 == 3){ mApples[0].AddDispatcher(); mApples[0].mRipeCounter = 70; mBuildList.push("repair1"); mBuildList.push("pohon"); setPanel(mBuildList, "build", this); } else { if (_arg1 == 5){ mWaveManager.AddDispatcher(); }; }; } public function InitStatusBar(){ mStatusBar.mScore.text = MemoryCrypto.getValue(Main.GetInstance().mHeroData.score); mStatusBar.mMoney.text = MemoryCrypto.getValue(Main.GetInstance().mHeroData.money); mStatusBar.mTrees.text = mTrees.length; mStatusBar.mLevels.text = mLevel; } public function addEnemy(_arg1:CEnemy){ addChildAt(_arg1, getChildIndex(mLayerWorm)); mWorms.push(_arg1); } public function Kill(){ while (mTrees.length > 0) { killTree(mTrees[0]); }; while (mWorms.length > 0) { killWorm(mWorms[0]); }; while (mApples.length > 0) { killApple(mApples[0]); }; while (mTurrets.length > 0) { killTurret(mTurrets[0]); }; killWaveManager(); Tweener.removeAllTweens(); RemoveDispatcher(); } public function killWorm(_arg1:CEnemy){ var _local2:int; _local2 = mWorms.indexOf(_arg1); if (_local2 > -1){ if (_arg1 == mActiveUnit){ setActiveUnit(this); }; _arg1.RemoveDispatcher(); _arg1.parent.removeChild(_arg1); _arg1 = null; mWorms[_local2] = null; mWorms.splice(_local2, 1); }; } public function IncreaseMoney(_arg1:int){ MemoryCrypto.incrementValue(Main.GetInstance().mHeroData.money, _arg1); mStatusBar.mMoney.text = MemoryCrypto.getValue(Main.GetInstance().mHeroData.money); } public function setActiveUnit(_arg1:Object){ if (mActiveUnit != _arg1){ mRadar.alpha = 0; mCrosshair.alpha = 0; mActiveUnit = _arg1; if ((mActiveUnit is CGame)){ setPanel(mBuildList, "build", this); } else { if ((mActiveUnit is CTurret)){ setRadar(mRadar, mActiveUnit.x, mActiveUnit.y, mActiveUnit.mRadius); setPanel(Data.DTUpgradeList[mActiveUnit.mType], "upgrade", mActiveUnit); } else { if ((mActiveUnit is CEnemy)){ setRadar(mCrosshair, mActiveUnit.x, mActiveUnit.y, 20, 1); mPanel.removeAllIcon(); setPanel(mBuildList, "build", this, false); } else { if ((mActiveUnit is CPohon)){ mPanel.removeAllIcon(); setPanel(mBuildList, "build", this, false); }; }; }; }; refreshActiveData(); }; } private function onMouseDown(_arg1:MouseEvent):void{ if (((mBuilding) && (!(mBuildDown)))){ mBuildDown = true; }; } public function YesTut(){ mTutFlag = 1; } public function setRadar(_arg1:Object, _arg2:int, _arg3:int, _arg4:int, _arg5:Number=0.3){ _arg1.alpha = _arg5; _arg1.x = _arg2; _arg1.y = _arg3; _arg1.width = (2 * _arg4); _arg1.height = (2 * _arg4); } public function killTurret(_arg1:CTurret){ var _local2:int; _local2 = mTurrets.indexOf(_arg1); if (_local2 > -1){ if (_arg1 == mActiveUnit){ setActiveUnit(this); }; _arg1.RemoveDispatcher(); mTurrets[_local2].RemoveDispatcher(); removeChild(mTurrets[_local2]); mTurrets[_local2] = null; _arg1 = null; mTurrets.splice(_local2, 1); }; } public static function GetInstance():CGame{ return (CGameGlobal); } } }//packageSection 72//CHSNote (CHSNote) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class CHSNote extends MovieClip { public var mExit_btn:SimpleButton; public function CHSNote(){ addFrameScript(0, frame1); } public function onExitUp(_arg1:MouseEvent):void{ this.parent.removeChild(this); } function frame1(){ stop(); if (!this.mExit_btn.hasEventListener(MouseEvent.MOUSE_UP)){ this.mExit_btn.addEventListener(MouseEvent.MOUSE_UP, onExitUp, false, 0, true); }; } } }//packageSection 73//CMainMenu (CMainMenu) package { import flash.events.*; import flash.display.*; import flash.text.*; public class CMainMenu extends MovieClip { public var mGoreVerTxt:MovieClip; public var mHS:SimpleButton; public var mLBLink:SimpleButton; public var mMore:SimpleButton; public var mCredits:SimpleButton; public var mGore:SimpleButton; public var mNewGame:SimpleButton; public var mNormal:SimpleButton; public var mError:TextField; public var mHowToPlay:SimpleButton; public function CMainMenu(){ var _local1:Sprite; super(); addFrameScript(0, frame1); trace("init Main Menu"); if (Main.GetInstance().game.UseLogo()){ _local1 = Main.GetInstance().game.GetLogo(242, 92); _local1.x = 384; _local1.y = 397; this.addChild(_local1); }; if (Main.GetInstance().game.UseHighScores()){ mHS.addEventListener(MouseEvent.MOUSE_UP, ShowHS, false, 0, true); } else { mHS.parent.removeChild(mHS); }; } public function AddDispatcher():void{ mNewGame.addEventListener(MouseEvent.MOUSE_UP, ShowGame, false, 0, true); mHowToPlay.addEventListener(MouseEvent.MOUSE_UP, HTP, false, 0, true); mMore.addEventListener(MouseEvent.MOUSE_UP, OpenURL, false, 0, true); mCredits.addEventListener(MouseEvent.MOUSE_UP, ShowCredit, false, 0, true); if (mNormal){ mNormal.addEventListener(MouseEvent.MOUSE_UP, ShowNormalVersion, false, 0, true); mGoreVerTxt.visible = true; }; if (mGore){ mGoreVerTxt.visible = false; mGore.addEventListener(MouseEvent.MOUSE_UP, ShowGoreVersion, false, 0, true); }; } public function RemoveDispatcher(){ } private function ShowCredit(_arg1:MouseEvent):void{ Main.GetInstance().mOptionBar.visible = false; addChild(new Credits()); } function frame1(){ mLBLink.addEventListener(MouseEvent.CLICK, OpenLBSite); } private function OpenURL(_arg1:MouseEvent):void{ Main.GetInstance().game.MoreGames(); } private function ShowGame(_arg1:MouseEvent){ Main.GetInstance().InitGame(); } public function OpenLBSite(_arg1:MouseEvent){ Global.openWindow(); } private function ShowNormalVersion(_arg1:MouseEvent):void{ Global.openWindow("http://www.bigfuntown.com/AppleDefender.html", "_self"); } private function ShowGoreVersion(_arg1:MouseEvent):void{ mError.text = (mError.text + Global.openWindow("http://www.bigfuntown.com/AppleDefenderGore.html", "_blank")); } public function HTP(_arg1:MouseEvent){ Main.GetInstance().ShowHowToPlay(); } private function ShowHS(_arg1:MouseEvent):void{ Main.GetInstance().game.HighScores(); } } }//packageSection 74//CMainPanel (CMainPanel) package { import flash.events.*; import flash.display.*; import flash.text.*; public class CMainPanel extends MovieClip { public var ket1:TextField; public var ket2:TextField; public var ket2Container:MovieClip; public var mIcons:Array; public var mMessage:TextField; public function CMainPanel(){ mIcons = new Array(); mouseEnabled = false; ket1.mouseEnabled = false; ket2.mouseEnabled = false; ket2Container.mouseEnabled = false; ket2.alpha = 0; ket2Container.alpha = 0; mMessage.alpha = 0; } public function setMessageAlpha(_arg1:TimerEvent, _arg2:Number=0){ mMessage.alpha = _arg2; CGame.GetInstance().mTimer.stop(); CGame.GetInstance().mTimer.reset(); } public function blink(_arg1:TimerEvent){ trace("blink"); if ((CGame.GetInstance().mTimer.currentCount % 3) == 0){ mMessage.alpha = 0; } else { mMessage.alpha = 1; }; } public function a(_arg1:MouseEvent){ CGame.GetInstance().build(_arg1.currentTarget.type, _arg1.currentTarget.command, _arg1.currentTarget.owner, _arg1.stageX, _arg1.stageY); } public function removeAllIcon(){ while (mIcons.length > 0) { CGame.GetInstance().removeChild(mIcons[0]); mIcons[0] = null; mIcons.splice(0, 1); }; } public function setPanelData(_arg1:Object){ ket1.text = _arg1; } public function addIcon(_arg1:String, _arg2:String, _arg3:Object){ var btn:MovieClip; var i:MovieClip; var n:int; var type = _arg1; var command = _arg2; var owner = _arg3; btn = new Buttons(); i = btn.getChildByName(type); i.stop(); i.x = (((mIcons.length * 50) + 40) + x); i.y = (25 + y); i.command = command; i.owner = owner; i.type = type; n = mIcons.length; i.addEventListener(MouseEvent.MOUSE_DOWN, a, false, 0, true); i.addEventListener(MouseEvent.MOUSE_OVER, function (_arg1:MouseEvent){ CGame.GetInstance().setHoverData(type); _arg1.currentTarget.nextFrame(); }); i.addEventListener(MouseEvent.MOUSE_OUT, function (_arg1:MouseEvent){ CGame.GetInstance().setHoverData(null); _arg1.currentTarget.gotoAndStop(0); }); CGame.GetInstance().addChild(i); mIcons.push(i); } public function setHoverData(_arg1:Object){ if (_arg1 == ""){ ket2Container.alpha = 0; ket2.alpha = 0; } else { ket2.alpha = 1; ket2Container.alpha = 0.6; ket2.text = _arg1; }; } } }//packageSection 75//COptionBar (COptionBar) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.utils.*; public class COptionBar extends MovieClip { public var mSFX:MovieClip; private var mSfxChannel:SoundChannel; private var mBgm:Sound; private var mPopUpTimer:Timer; private var mBgmFlag:Boolean; public var mPopUp:MovieClip; private var mSfxFlag:Boolean;// = true private var mBgmChannel:SoundChannel; public var mMusic:MovieClip; public var mQuality:MovieClip; private var mBgmVol:Number;// = 1 public static var Global:COptionBar; public function COptionBar(_arg1:int=0, _arg2:int=0, _arg3:String=null, _arg4:Number=1){ var _local5:Class; mSfxFlag = true; mBgmVol = 1; mPopUpTimer = new Timer(2500, 1); super(); Global = this; mBgmVol = _arg4; this.x = _arg1; this.y = _arg2; _local5 = (getDefinitionByName(_arg3) as Class); mBgm = new (_local5); mPopUp.mouseEnabled = false; mMusic.buttonMode = true; mMusic.useHandCursor = true; mSFX.buttonMode = true; mSFX.useHandCursor = true; mQuality.buttonMode = true; mQuality.useHandCursor = true; mMusic.addEventListener(MouseEvent.MOUSE_OVER, MusicOver, false, 0, true); mMusic.addEventListener(MouseEvent.MOUSE_OUT, MusicOut, false, 0, true); mMusic.addEventListener(MouseEvent.MOUSE_UP, ToggleMusic, false, 0, true); mSFX.addEventListener(MouseEvent.MOUSE_OVER, SFXOver, false, 0, true); mSFX.addEventListener(MouseEvent.MOUSE_OUT, SFXOut, false, 0, true); mSFX.addEventListener(MouseEvent.MOUSE_UP, ToggleSFX, false, 0, true); mQuality.addEventListener(MouseEvent.MOUSE_OVER, QualityOver, false, 0, true); mQuality.addEventListener(MouseEvent.MOUSE_OUT, QualityOut, false, 0, true); mQuality.addEventListener(MouseEvent.MOUSE_UP, ToggleQuality, false, 0, true); mPopUpTimer.addEventListener(TimerEvent.TIMER, KillPopUp, false, 0, true); if (((mBgm) && (!((Main.GetInstance().mState == Main.STATE_PRELOADER))))){ StartBGM(); }; MusicOut(null); SFXOut(null); } private function MusicOut(_arg1:MouseEvent):void{ if (!mBgmFlag){ mMusic.gotoAndStop(2); } else { mMusic.gotoAndStop(1); }; HidePopUp(); } public function ToggleQuality(_arg1:MouseEvent=null):void{ switch (Main.GetInstance().stage.quality){ case "LOW": Main.GetInstance().stage.quality = StageQuality.MEDIUM; break; case "MEDIUM": Main.GetInstance().stage.quality = StageQuality.HIGH; break; case "HIGH": Main.GetInstance().stage.quality = StageQuality.BEST; break; case "BEST": Main.GetInstance().stage.quality = StageQuality.LOW; break; }; if (_arg1){ ShowPopUp((("Quality: " + Main.GetInstance().stage.quality) + " (B)"), false); } else { ShowPopUp((("Quality: " + Main.GetInstance().stage.quality) + " (B)"), true); }; } public function ChangeBGM(_arg1:Sound){ if (!_arg1){ return; }; mBgm = _arg1; StartBGM(); } public function ToggleMusic(_arg1:MouseEvent=null):void{ if (Main.GetInstance().mState == Main.STATE_PRELOADER){ return; }; if (((mBgmFlag) && (mBgmChannel))){ mBgmFlag = false; mBgmChannel.stop(); } else { StartBGM(); }; if (_arg1 != null){ MusicOver(null); } else { MusicOut(null); }; } private function StartBGM(){ var _local1:SoundTransform; if (!mBgm){ return; }; mBgmFlag = true; _local1 = new SoundTransform(mBgmVol, 0); mBgmChannel = mBgm.play(0, 999, _local1); MusicOut(null); } public function ToggleSFX(_arg1:MouseEvent=null):void{ if (Main.GetInstance().mState == Main.STATE_PRELOADER){ return; }; if (mSfxFlag){ mSfxFlag = false; } else { mSfxFlag = true; }; if (_arg1 != null){ SFXOver(null); } else { SFXOut(null); }; } private function QualityOver(_arg1:MouseEvent):void{ mQuality.gotoAndStop(2); ShowPopUp((("Quality: " + Main.GetInstance().stage.quality) + " (B)")); } private function HidePopUp(){ mPopUp.alpha = 0; } public function PlaySFX(_arg1:String, _arg2:Number=1){ var _local3:Class; var _local4:Sound; var _local5:SoundTransform; if (!mSfxFlag){ return; }; _local3 = (getDefinitionByName(_arg1) as Class); _local4 = new (_local3); _local5 = new SoundTransform(_arg2, 0); mSfxChannel = _local4.play(0, 1, _local5); } private function MusicOver(_arg1:MouseEvent):void{ if (!mBgmFlag){ mMusic.gotoAndStop(4); } else { mMusic.gotoAndStop(3); }; ShowPopUp("Toggle Music (M)"); } private function SFXOut(_arg1:MouseEvent):void{ if (!mSfxFlag){ mSFX.gotoAndStop(2); } else { mSFX.gotoAndStop(1); }; HidePopUp(); } private function ShowPopUp(_arg1:String, _arg2:Boolean=false){ if ((this.y - 50) <= 0){ mPopUp.y = 40; } else { mPopUp.y = -30; }; mPopUp.alpha = 1; mPopUp.mText.text = _arg1; if (_arg2){ trace("timer on"); mPopUpTimer.start(); }; } private function SFXOver(_arg1:MouseEvent):void{ if (!mSfxFlag){ mSFX.gotoAndStop(4); } else { mSFX.gotoAndStop(3); }; ShowPopUp("Toggle SFX (N)"); } public function ChangeBGMVol(_arg1:Number){ mBgmVol = _arg1; mBgmChannel.soundTransform = new SoundTransform(mBgmVol, 0); } private function KillPopUp(_arg1:TimerEvent):void{ trace("KILL POP UP"); mPopUp.alpha = 0; mPopUpTimer.reset(); } private function QualityOut(_arg1:MouseEvent):void{ mQuality.gotoAndStop(1); HidePopUp(); } } }//packageSection 76//CPohon (CPohon) package { import flash.events.*; import flash.display.*; public class CPohon extends MovieClip { public var mPohon:MovieClip; public function CPohon(){ var _local1:PohonApel; super(); _local1 = new PohonApel(); mPohon = _local1.getChildByName("pohon"); addChild(mPohon); mPohon.x = 0; mPohon.y = 0; } public function AddDispatcher(_arg1:String="update"):void{ Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); } public function ResetRipeAppel(){ if (haveApple()){ getApple().ResetRipeApple(); }; } private function onMouseUp(_arg1:MouseEvent):void{ if (CGame.GetInstance().mTutFlag <= 0){ CGame.GetInstance().setActiveUnit(this); }; } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); } public function increaseGrow(_arg1:Number){ if (haveApple()){ getApple().grow(_arg1); }; } public function getApple():CApel{ return (getChildAt(1)); } public function Kill(){ this.parent.killTree(this); } public function haveRipeApple():Boolean{ if (haveApple()){ return (getApple().isRipe2()); }; } public function haveApple():Boolean{ return ((numChildren == 2)); } private function Update(_arg1:Event):void{ } } }//packageSection 77//Credits (Credits) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class Credits extends MovieClip { public var mLink2:SimpleButton; public var mLink:SimpleButton; public var mExit_btn:SimpleButton; public function Credits(){ addFrameScript(0, frame1); } public function gotoLBSite(_arg1:MouseEvent):void{ Global.openWindow(); } public function onExitUp(_arg1:MouseEvent):void{ this.parent.removeChild(this); Main.GetInstance().mOptionBar.visible = true; } function frame1(){ stop(); if (!this.mExit_btn.hasEventListener(MouseEvent.MOUSE_UP)){ this.mExit_btn.addEventListener(MouseEvent.MOUSE_UP, onExitUp, false, 0, true); }; if (!this.mLink.hasEventListener(MouseEvent.MOUSE_UP)){ this.mLink.addEventListener(MouseEvent.MOUSE_UP, gotoLBSite, false, 0, true); }; if (!this.mLink2.hasEventListener(MouseEvent.MOUSE_UP)){ this.mLink2.addEventListener(MouseEvent.MOUSE_UP, gotoLBSite, false, 0, true); }; } } }//packageSection 78//CTurret (CTurret) package { import flash.events.*; import caurina.transitions.*; import flash.geom.*; import flash.display.*; import de.polygonal.math.*; public class CTurret extends MovieClip { public var mRotateSpeed:Number; public var mROF:int; public var mHP:Number; public var mType:int; public var mRadius:int; public var mDmg:Number; public var mROFCounter:int; public var mAngle:Number; public var mTarget:Object; public var mIcon:MovieClip; public var mHPBar:MovieClip; public var mBulletType:int; public var mBomCT:int; public var mMaxHP:int; public function CTurret(_arg1:int){ var _local2:MovieClip; super(); mType = _arg1; _local2 = new Turrets(); mIcon = _local2.getChildByName(("turret" + mType)); mIcon.x = 0; mIcon.y = 0; mIcon.stop(); addChild(mIcon); mDmg = Data.DTurret[mType].dmg; mMaxHP = Data.DTurret[mType].hp; mHP = Data.DTurret[mType].hp; mRotateSpeed = Data.DTurret[mType].rotatespeed; mRadius = Data.DTurret[mType].radius; mROF = Data.DTurret[mType].rof; mROFCounter = 0; mBulletType = Data.DTurret[mType].bullettype; mHPBar = new HPBar(); mHPBar.stop(); addChild(mHPBar); mHPBar.x = 0; mHPBar.y = (-(mIcon.height) / 2); mHPBar.scaleX = (mIcon.width / mHPBar.width); mHPBar.scaleY = (5 / mHPBar.height); mHPBar.gotoAndStop(((mHP / mMaxHP) * 100)); mHPBar.alpha = 0; mTarget = null; mAngle = -90; if ((((((((mType == Data.DRUM_NUCLEAR)) || ((mType == Data.DRUM_ICE)))) || ((mType == Data.DRUM_WAVE)))) || ((mType == Data.DRUM_FIRE)))){ mBomCT = 200; } else { mBomCT = -1; }; } private function onMouseOver(_arg1:MouseEvent):void{ } public function AddDispatcher(_arg1:String="update"):void{ Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); addEventListener(MouseEvent.MOUSE_OVER, onMouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, onMouseOut, false, 0, true); } public function upgrade(_arg1:String="smg"){ CGame.GetInstance().changeTurret(this, Data.DTUpgrade[_arg1]); } private function onMouseUp(_arg1:MouseEvent):void{ mHPBar.alpha = 1; CGame.GetInstance().setActiveUnit(this); } public function Fire(){ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:CBullet; var _local6:Number; var _local7:int; var _local8:int; var _local9:int; var _local10:CBullet; if ((((((((((mBulletType == Data.BULLET_NONE)) || ((mType == Data.DRUM_NUCLEAR)))) || ((mType == Data.DRUM_ICE)))) || ((mType == Data.DRUM_WAVE)))) || ((mType == Data.DRUM_FIRE)))){ return; }; if (mType == Data.TURRET_CLUSTERBOMB){ _local3 = ((Math.cos(Global.DegToRad(mAngle)) * mRadius) * PM_PRNG.nextDoubleRange(0.3, 1)); _local4 = ((Math.sin(Global.DegToRad(mAngle)) * mRadius) * PM_PRNG.nextDoubleRange(0.3, 1)); _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.mDmg = mDmg; _local5.rotation = mAngle; CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); Tweener.addTween(_local5, {transition:"easeout", x:(x + _local3), y:(y + _local4), time:2, onComplete:_local5.AddDispatcher}); mROFCounter = mROF; return; }; if (mType == Data.TURRET_BLIZZARD){ _local6 = PM_PRNG.nextIntRange(0, 360); _local3 = (x + ((Math.cos(Global.DegToRad(_local6)) * mRadius) * PM_PRNG.nextDoubleRange(0.2, 1))); _local4 = (y + ((Math.sin(Global.DegToRad(_local6)) * mRadius) * PM_PRNG.nextDoubleRange(0.2, 1))); _local5 = new CBullet(mBulletType, this); _local5.x = (_local3 + PM_PRNG.nextIntRange(-15, 15)); _local5.y = (_local4 - PM_PRNG.nextIntRange(25, 50)); _local5.mDmg = mDmg; _local5.mRadius = mRadius; _local5.rotation = mAngle; CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); Tweener.addTween(_local5, {transition:"easein", x:_local3, y:_local4, time:2, onComplete:_local5.AddDispatcher}); mROFCounter = mROF; return; }; if (mType == Data.TURRET_BLADEGUN){ _local6 = 0; _local3 = (x + (Math.cos(Global.DegToRad(_local6)) * mRadius)); _local4 = (y + ((Math.sin(Global.DegToRad(_local6)) * mRadius) / 2)); _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.mDmg = mDmg; _local5.mRadius = mRadius; _local5.rotation = 0; _local5.mTarget = new Object(); _local5.mTarget.x = x; _local5.mTarget.y = y; _local5.mTarget.angle = _local6; _local5.mTarget.counter = Data.DBullet[mBulletType].counter; CGame.GetInstance().addChild(_local5); Tweener.addTween(_local5, {rotation:180, transition:"linear", x:_local3, y:_local4, time:0.3, onComplete:_local5.AddDispatcher}); mROFCounter = mROF; return; }; if ((((mBulletType == Data.BULLET_LIGHTNING)) || ((mBulletType == Data.BULLET_METEOR)))){ _local7 = PM_PRNG.nextIntRange(2, 4); _local8 = 0; while (_local8 < _local7) { _local5 = new CBullet(mBulletType, this); _local9 = PM_PRNG.nextIntRange(30, mRadius); _local3 = (Math.cos((Global.DegToRad(((_local8 * 360) / _local7)) + PM_PRNG.nextIntRange(0, 10))) * _local9); _local4 = (Math.sin((Global.DegToRad(((_local8 * 360) / _local7)) + PM_PRNG.nextIntRange(0, 10))) * _local9); _local5.x = (x + _local3); _local5.y = ((y - (_local5.mIcon.width / 2)) + _local4); _local5.mDmg = mDmg; _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); mROFCounter = mROF; _local8++; }; return; }; if (mBulletType == Data.BULLET_GRENADE){ _local3 = ((Math.cos(Global.DegToRad(mAngle)) * mRadius) * PM_PRNG.nextDoubleRange(0.3, 1)); _local4 = ((Math.sin(Global.DegToRad(mAngle)) * mRadius) * PM_PRNG.nextDoubleRange(0.3, 1)); _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.mDmg = mDmg; _local5.rotation = mAngle; _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); Tweener.addTween(_local5, {transition:"easeoutbounce", x:(x + _local3), y:(y + _local4), time:2, onComplete:_local5.Explode}); mROFCounter = mROF; return; }; if ((((mBulletType == Data.BULLET_GROWTH)) || ((mBulletType == Data.BULLET_REPAIR)))){ _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.mDmg = mDmg; _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); Tweener.addTween(_local5, {transition:"easeoutquad", width:(mRadius * 2), height:(mRadius * 2), alpha:0, time:3, onComplete:_local5.KillMe}); mROFCounter = mROF; Main.GetInstance().mOptionBar.PlaySFX(Data.DTurret[mType].sfx); return; }; if ((((((mType == Data.TURRET_FIRECATAPULT)) || ((mType == Data.TURRET_TOMAHAWKLAUNCHER)))) || ((mType == Data.TURRET_SNRGUN)))){ _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.mDmg = mDmg; _local5.rotation = mAngle; _local5.calculateDxDy(); _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, (CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree) + 1)); mROFCounter = mROF; return; }; if (mType == Data.TURRET_SPLITSHURIKEN){ _local8 = 0; while (_local8 <= 7) { _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.rotation = (_local8 * 45); _local5.mDmg = mDmg; _local5.calculateDxDy(); _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, CGame.GetInstance().getChildIndex(this)); _local8++; }; mROFCounter = mROF; return; }; _local1 = Global.AngleOfTwoDots(mTarget.x, mTarget.y, x, y); _local1 = Global.RadToDeg(_local1); mAngle = (mAngle % 360); if (mAngle < 0){ mAngle = (mAngle + 360); }; _local1 = (_local1 % 360); if (_local1 < 0){ _local1 = (_local1 + 360); }; _local2 = (mAngle - _local1); if (Math.abs(_local2) < 10){ if (mType == Data.TURRET_MACHINEGUN){ _local3 = (Math.cos(Global.DegToRad((mAngle + 30))) * 30); _local4 = (Math.sin(Global.DegToRad((mAngle + 30))) * 30); _local5 = new CBullet(mBulletType, this); _local5.x = (x + _local3); _local5.y = (y + _local4); _local5.rotation = mAngle; _local5.mDmg = mDmg; _local5.calculateDxDy(); _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, CGame.GetInstance().getChildIndex(this)); _local3 = (Math.cos(Global.DegToRad((mAngle - 30))) * 30); _local4 = (Math.sin(Global.DegToRad((mAngle - 30))) * 30); _local10 = new CBullet(mBulletType, this); _local10.x = (x + _local3); _local10.y = (y + _local4); _local10.rotation = mAngle; _local10.mDmg = mDmg; _local10.calculateDxDy(); _local10.AddDispatcher(); CGame.GetInstance().addChildAt(_local10, CGame.GetInstance().getChildIndex(this)); } else { if ((((mType == Data.TURRET_ROCKETSHOTGUN)) || ((mType == Data.TURRET_SHOTGUN)))){ _local8 = -1; while (_local8 <= 1) { _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; _local5.rotation = (mAngle + (_local8 * PM_PRNG.nextIntRange(5, 15))); _local5.mDmg = mDmg; _local5.calculateDxDy(); _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, CGame.GetInstance().getChildIndex(this)); _local8++; }; } else { _local5 = new CBullet(mBulletType, this); _local5.x = x; _local5.y = y; if ((((mType == Data.TURRET_ROCKETLAUNCHER)) || ((mType == Data.TURRET_CHAINLIGHTNING)))){ _local5.mTarget = mTarget; }; if (mBulletType == Data.BULLET_STONE){ _local5.mTarget = new Point(mTarget.x, mTarget.y); _local5.mDist = Global.Distance(_local5.x, _local5.y, mTarget.x, mTarget.y); _local5.mSpeed = ((_local5.mDist / 500) * Data.DBullet[_local5.mType].speed); }; _local5.rotation = mAngle; _local5.mDmg = mDmg; _local5.calculateDxDy(); _local5.AddDispatcher(); CGame.GetInstance().addChildAt(_local5, CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTurret)); }; }; if (Data.DTurret[mType].sfx){ Main.GetInstance().mOptionBar.PlaySFX(Data.DTurret[mType].sfx); }; }; mROFCounter = mROF; } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver, false); removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut, false); } private function onMouseOut(_arg1:MouseEvent):void{ if (mHP == mMaxHP){ mHPBar.alpha = 0; }; } public function findTarget(){ var _local1:int; var _local2:Number; mTarget = null; _local1 = 0; while (_local1 < CGame.GetInstance().mWorms.length) { _local2 = Global.Distance(x, y, CGame.GetInstance().mWorms[_local1].x, CGame.GetInstance().mWorms[_local1].y); if (_local2 <= mRadius){ mTarget = CGame.GetInstance().mWorms[_local1]; return; }; _local1++; }; } public function Kill(){ var _local1:Array; var _local2:int; var _local3:MovieClip; var _local4:Number; var _local5:Number; var _local6:int; var _local7:Number; var _local8:Number; if ((((((((mType == Data.DRUM_NUCLEAR)) || ((mType == Data.DRUM_ICE)))) || ((mType == Data.DRUM_WAVE)))) || ((mType == Data.DRUM_FIRE)))){ _local1 = new Array(0, 90, 180, 270); if (mType == Data.DRUM_WAVE){ _local2 = 0; while (_local2 < 4) { _local3 = new Bullets().getChildByName(("bullet" + mBulletType)); _local3.x = x; _local3.y = y; _local3.rotation = (_local1[_local2] + 90); _local3.mouseEnabled = false; _local4 = (x + (Math.cos(Global.DegToRad(_local1[_local2])) * mRadius)); _local5 = (y + (Math.sin(Global.DegToRad(_local1[_local2])) * mRadius)); CGame.GetInstance().addChildAt(_local3, CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree)); Tweener.addTween(_local3, {transition:"linear", x:_local4, y:_local5, alpha:0, time:0.5, onComplete:CGame.GetInstance().removeChild, onCompleteParams:[_local3]}); _local2++; }; } else { _local2 = 0; while (_local2 < 10) { if (mType == Data.DRUM_NUCLEAR){ _local3 = new Particles().getChildByName("ledakan"); } else { if (mType == Data.DRUM_ICE){ _local3 = new Bullets().getChildByName(("bullet" + Data.BULLET_FROZEN)); } else { if (mType == Data.DRUM_FIRE){ _local3 = new Bullets().getChildByName(("bullet" + Data.BULLET_METEOR)); }; }; }; _local6 = PM_PRNG.nextIntRange(0, 2); _local7 = PM_PRNG.nextDoubleRange(0.3, 1); _local3.x = x; _local3.y = y; _local4 = PM_PRNG.nextIntRange((x - width), (x + width)); _local5 = PM_PRNG.nextIntRange((y - height), (y + height)); _local3.width = 0; _local3.height = 0; _local3.mouseEnabled = false; CGame.GetInstance().addChildAt(_local3, CGame.GetInstance().getChildIndex(CGame.GetInstance().mLayerTree)); Tweener.addTween(_local3, {transition:"easein", x:_local4, y:_local5, width:(Data.DBullet[mBulletType].aoe * _local7), height:(Data.DBullet[mBulletType].aoe * _local7), alpha:0, time:(1 + _local6), onComplete:CGame.GetInstance().removeChild, onCompleteParams:[_local3]}); _local2++; }; }; if (CGame.GetInstance().mWorms){ _local2 = 0; while (_local2 < CGame.GetInstance().mWorms.length) { _local8 = Global.Distance(x, y, CGame.GetInstance().mWorms[_local2].x, CGame.GetInstance().mWorms[_local2].y); if (_local8 <= mRadius){ if (mType == Data.DRUM_ICE){ CGame.GetInstance().mWorms[_local2].setStatus(CEnemy.FREEZED, 0.3, 5); }; CGame.GetInstance().mWorms[_local2].increaseHP(-(mDmg)); }; _local2++; }; }; }; CGame.GetInstance().killTurret(this); } public function increaseHP(_arg1:Number){ mHP = (mHP + _arg1); if (mHP > mMaxHP){ mHP = mMaxHP; }; if (mHP < mMaxHP){ mHPBar.alpha = 1; }; mHPBar.gotoAndStop(int(((Math.round(mHP) / mMaxHP) * 100))); if (mHP <= 0){ Kill(); }; } private function Update(_arg1:Event){ var _local2:Number; var _local3:Number; var _local4:Number; if (mBomCT > 0){ mBomCT--; if ((mBomCT % 40) == 0){ CGame.GetInstance().munculTulisan(Math.floor((mBomCT / 40)), this.x, (this.y - 20), false, 30, 1, 1.3); }; } else { if (mBomCT == 0){ Kill(); mBomCT--; }; }; if ((CGame.GetInstance().mActiveUnit is CEnemy)){ if (Global.Distance(x, y, CGame.GetInstance().mActiveUnit.x, CGame.GetInstance().mActiveUnit.y) <= mRadius){ mTarget = CGame.GetInstance().mActiveUnit; }; }; if ((((((((((mBulletType == Data.BULLET_NONE)) || ((mType == Data.DRUM_NUCLEAR)))) || ((mType == Data.DRUM_ICE)))) || ((mType == Data.DRUM_WAVE)))) || ((mType == Data.DRUM_FIRE)))){ return; }; if ((((((((((((((((mBulletType == Data.BULLET_GROWTH)) || ((mBulletType == Data.BULLET_REPAIR)))) || ((mBulletType == Data.BULLET_LIGHTNING)))) || ((mBulletType == Data.BULLET_METEOR)))) || ((mType == Data.TURRET_TOMAHAWKLAUNCHER)))) || ((mType == Data.TURRET_BLIZZARD)))) || ((mType == Data.TURRET_BLADEGUN)))) || ((mType == Data.TURRET_SPLITSHURIKEN)))){ if (mROFCounter > 0){ mROFCounter--; }; if (mROFCounter == 0){ Fire(); }; return; }; if ((((((((mType == Data.TURRET_GRENADELAUNCHER)) || ((mType == Data.TURRET_FIRECATAPULT)))) || ((mType == Data.TURRET_CLUSTERBOMB)))) || ((mType == Data.TURRET_SNRGUN)))){ mIcon.mGerak.rotation = (mIcon.mGerak.rotation + mRotateSpeed); mAngle = (mAngle + mRotateSpeed); if (mROFCounter > 0){ mROFCounter--; }; if (mROFCounter == 0){ Fire(); }; return; }; if (mTarget == null){ if (mIcon.mGerak.rotation > 0){ mIcon.mGerak.rotation = (mIcon.mGerak.rotation - mRotateSpeed); mAngle = (mAngle - mRotateSpeed); }; if (mIcon.mGerak.rotation < 0){ mIcon.mGerak.rotation = (mIcon.mGerak.rotation + mRotateSpeed); mAngle = (mAngle + mRotateSpeed); }; findTarget(); } else { if (mTarget.parent){ _local2 = Global.Distance(x, y, mTarget.x, mTarget.y); if (_local2 <= mRadius){ if (mROFCounter > 0){ mROFCounter--; }; if (mROFCounter == 0){ Fire(); }; _local3 = Global.AngleOfTwoDots(mTarget.x, mTarget.y, x, y); _local3 = Global.RadToDeg(_local3); mAngle = (mIcon.mGerak.rotation + 90); while (mAngle < 0) { mAngle = (mAngle + 360); }; if (mAngle > 180){ mAngle = (-180 + (mAngle % 180)); }; _local4 = (_local3 - mAngle); if (Math.abs(_local4) > 5){ if (Math.abs(_local4) > 180){ _local4 = (-(_local4) % 180); }; if (Math.abs(_local4) < mRotateSpeed){ if (_local4 > 0){ mIcon.mGerak.rotation = (mIcon.mGerak.rotation + mRotateSpeed); mAngle = (mAngle + Math.abs(_local4)); } else { mIcon.mGerak.rotation = (mIcon.mGerak.rotation - mRotateSpeed); mAngle = (mAngle - Math.abs(_local4)); }; } else { if (_local4 > 0){ mIcon.mGerak.rotation = (mIcon.mGerak.rotation + mRotateSpeed); mAngle = (mAngle + mRotateSpeed); } else { mIcon.mGerak.rotation = (mIcon.mGerak.rotation - mRotateSpeed); mAngle = (mAngle - mRotateSpeed); }; }; }; } else { mTarget = null; }; } else { mTarget = null; }; }; } } }//packageSection 79//CWaveManager (CWaveManager) package { import flash.events.*; import de.polygonal.math.*; public class CWaveManager { public var mCount:int; public var mDifficulty:Number; public var mType:int; public var mWaveData:Array; public var mDiff:int; public var mCurWave:int; public var mDelay:int; public function CWaveManager(_arg1:int){ mWaveData = Data.DWave[_arg1].enemy; mDiff = Data.DWave[_arg1].level.diff; mCurWave = -1; next(); } public function RemoveDispatcher(_arg1:String="update"){ Main.GetInstance().removeEventListener(_arg1, Update); } private function Update(_arg1:Event){ if (mDelay > 0){ mDelay--; }; if (mDelay <= 0){ SpawnEnemy(); }; } public function AddDispatcher(_arg1:String="update"):void{ Main.GetInstance().addEventListener(_arg1, Update, false, 0, true); } public function SpawnEnemy(){ var _local1:CEnemy; var _local2:int; _local1 = new CEnemy(PM_PRNG.nextIntRange(0, mType), mWaveData[mCurWave].difficulty); do { _local1.x = PM_PRNG.nextIntRange(0, Global.STAGE_WIDTH); _local1.y = PM_PRNG.nextIntRange(0, Global.STAGE_HEIGHT); } while ((((((((_local1.x > 0)) && ((_local1.x < Global.STAGE_WIDTH)))) && ((_local1.y > 0)))) && ((_local1.y < Global.STAGE_HEIGHT)))); _local1.AddDispatcher(); if (CGame.GetInstance().mLevel <= 5){ _local2 = 2; } else { if (CGame.GetInstance().mLevel <= 15){ _local2 = 5; } else { if (CGame.GetInstance().mLevel <= 25){ _local2 = 8; } else { if (CGame.GetInstance().mLevel <= 35){ _local2 = 10; } else { if (CGame.GetInstance().mLevel <= 45){ _local2 = 20; } else { if (CGame.GetInstance().mLevel <= 55){ _local2 = 24; } else { if (CGame.GetInstance().mLevel <= 65){ _local2 = 40; } else { _local2 = 100; }; }; }; }; }; }; }; _local1.mHP = (_local1.mHP + (_local1.mHP + (mDiff * _local2))); _local1.mMaxHP = (_local1.mMaxHP + (_local1.mMaxHP + (mDiff * _local2))); _local1.mMoney = (int((mDiff / 5)) + PM_PRNG.nextIntRange(1, 2)); _local1.mScore = (_local1.mMoney * 5); _local1.mDmg = (_local1.mDmg * (1 + (0.2 * CGame.GetInstance().mLevel))).toPrecision(3); if ((((CGame.GetInstance().mLevel > 49)) || (((((CGame.GetInstance().mLevel % 10) == 0)) && ((CGame.GetInstance().mLevel > 0)))))){ _local1.mMaxHP = (_local1.mMaxHP * 2); _local1.mHP = (_local1.mHP * 2); _local1.mDmg = (_local1.mDmg * 2); _local1.mIcon.scaleX = 1.5; _local1.mIcon.scaleY = 1.5; _local1.mMoney = (_local1.mMoney * 2); }; if (CGame.GetInstance().mLevel > 49){ _local1.mMaxHP = 1000000; _local1.mHP = 1000000; }; CGame.GetInstance().addEnemy(_local1); mCount--; mDelay = mWaveData[mCurWave].delay; if (mCount == 0){ next(); }; } public function next(){ if (mCurWave < (mWaveData.length - 1)){ mCurWave++; mType = int((CGame.GetInstance().mLevel / 20)); if (mType > Data.WORM_BOSS){ mType = Data.WORM_BOSS; }; mDelay = mWaveData[mCurWave].delay; mCount = mWaveData[mCurWave].count; if (CGame.GetInstance().mLevel > 49){ mCount = (mCount * 2); }; mDifficulty = mWaveData[mCurWave].difficulty; } else { Kill(); }; } public function Kill(){ CGame.GetInstance().killWaveManager(); } public function getTotalEnemies():int{ var _local1:int; var _local2:int; _local1 = 0; _local2 = 0; while (_local2 < mWaveData.length) { _local1 = (_local1 + (mWaveData[_local2].count + mDiff)); _local2++; }; return (_local1); } } }//packageSection 80//Data (Data) package { public class Data { public static const TURRET_HANDGUN = 0; public static const TURRET_GROW = 5; public static const WALL_TITANIUM = 12; public static const TURRET_MASSIVECATAPULT = 33; public static const FENCE_STEELSPIKE = 17; public static const WALL_WOOD = 10; public static const TURRET_SUPERGROWTH = 6; public static const WORM_BOSS = 2; public static const BULLET_HANDGUN = 0; public static const BULLET_WAVE = 19; public static const TURRET_SNIPER = 4; public static const TURRET_SNOWLAUNCHER = 41; public static const FENCE_BOXING = 14; public static const DRUM_NUCLEAR = 36; public static const DRUM_FIRE = 39; public static const WALL_SPIKE = 11; public static const BULLET_LIGHTNINGBALL = 13; public static const TURRET_LONGRANGEMISSILE = 27; public static const TURRET_CUTLASER = 23; public static const WORM_KNIGHT = 1; public static const TURRET_FIRECATAPULT = 22; public static const TURRET_FIREBALLLAUNCHER = 20; public static const TURRET_MACHINEGUN = 2; public static const BULLET_LASER = 7; public static const DRUM_ICE = 37; public static const BULLET_FIRE = 20; public static const BULLET_NONE = -1; public static const TURRET_CHAINLIGHTNING = 29; public static const TURRET_SMG = 1; public static const TURRET_GATLING = 3; public static const BULLET_REPAIR = 2; public static const TURRET_TOMAHAWKLAUNCHER = 26; public static const WALL_BRICK = 13; public static const TURRET_FLAMETHROWER = 21; public static const BULLET_NEEDLE = 25; public static const TURRET_ELECTRICSHOCK = 18; public static const BULLET_FROZEN = 16; public static const TURRET_GRENADELAUNCHER = 19; public static const WORM_BEGGAR = 0; public static const TURRET_ROCKETSHOTGUN = 30; public static const TURRET_CATAPULT = 32; public static const BULLET_METEOR = 8; public static const TURRET_BLIZZARD = 42; public static const FENCE_ELECTRIC = 15; public static const BULLET_MISSILE1 = 10; public static const BULLET_THORN = 21; public static const BULLET_FLAME = 6; public static const TURRET_SHOTGUN = 31; public static const TURRET_SNRGUN = 44; public static const BULLET_SHURIKEN = 15; public static const BULLET_ICEDROP = 23; public static const BULLET_SNOW = 22; public static const BULLET_MISSILE2 = 11; public static const TURRET_ROCKETLAUNCHER = 25; public static const TURRET_BLADEGUN = 43; public static const BULLET_BLADEFAN = 24; public static const BULLET_GROWTH = 1; public static const TURRET_CLUSTERBOMB = 40; public static const BULLET_ICE = 18; public static const BULLET_ROCKET = 9; public static const BULLET_LIGHTNING = 3; public static const TURRET_ANTHRAX = 28; public static const BULLET_STONE = 14; public static const TURRET_FROZEN = 35; public static const BULLET_FIREBALL = 5; public static const TURRET_METEOR = 24; public static const BULLET_NUCLEAR = 17; public static const BULLET_POISON = 12; public static const TURRET_SPLITSHURIKEN = 34; public static const BULLET_GRENADE = 4; public static const DRUM_WAVE = 38; public static const TURRET_REPAIR1 = 7; public static const FENCE_POISON = 16; public static const TURRET_REPAIR3 = 9; public static const TURRET_REPAIR2 = 8; public static var DHeroDefault:Object = {money:250, score:0, level:0}; public static var DDifficulty:Object = {NORMAL:{}, FAST:{mSpeed:1.5}, STRONG:{mHP:2, mMaxHP:2}, WEAK:{mHP:0.5, mMaxHP:0.5}, INVISIBLE:{alpha:0.2}, POWERFULL:{mDmg:2, mHP:2, mMaxHP:2}, INVINCIBLE:{mDmg:2, mHP:2, mMaxHP:2, mScore:2, mMoney:2}, RICH:{mMoney:2}, POOR:{mMoney:0.5}}; public static var DHoverData:Object = {pohon:("Apple Tree\nCost: " + DTree.cost), handgun:((((("Handgun\nCost:" + DTurret[TURRET_HANDGUN].cost) + "\nDamage:") + DTurret[TURRET_HANDGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_HANDGUN].rof)), smg:((((("Semi Machine Gun\nCost:" + DTurret[TURRET_SMG].cost) + "\nDamage:") + DTurret[TURRET_SMG].dmg) + "\nROF:") + (100 - DTurret[TURRET_SMG].rof)), machinegun:((((("Machinegun\nCost:" + DTurret[TURRET_MACHINEGUN].cost) + "\nDamage:") + DTurret[TURRET_MACHINEGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_MACHINEGUN].rof)), gatling:((((("Gatling\nCost:" + DTurret[TURRET_GATLING].cost) + "\nDamage:") + DTurret[TURRET_GATLING].dmg) + "\nROF:") + (100 - DTurret[TURRET_GATLING].rof)), sniper:((((("Sniper\nCost:" + DTurret[TURRET_SNIPER].cost) + "\nDamage:") + DTurret[TURRET_SNIPER].dmg) + "\nROF:") + (100 - DTurret[TURRET_SNIPER].rof)), grow:((((("Grow Tower\nCost:" + DTurret[TURRET_GROW].cost) + "\nGrowth:") + (DTurret[TURRET_GROW].dmg * 1000)) + "\nROF:") + (100 - DTurret[TURRET_GROW].rof)), supergrowth:((((("Super Grow Tower\nCost:" + DTurret[TURRET_SUPERGROWTH].cost) + "\nGrowth:") + (DTurret[TURRET_SUPERGROWTH].dmg * 1000)) + "\nROF:") + (100 - DTurret[TURRET_SUPERGROWTH].rof)), repair1:((((("Repair Tower1\nCost:" + DTurret[TURRET_REPAIR1].cost) + "\nRepair:") + (DTurret[TURRET_REPAIR1].dmg * 100)) + "\nROF:") + (100 - DTurret[TURRET_REPAIR1].rof)), repair2:((((("Repair Tower2\nCost:" + DTurret[TURRET_REPAIR2].cost) + "\nRepair:") + (DTurret[TURRET_REPAIR2].dmg * 100)) + "\nROF:") + (100 - DTurret[TURRET_REPAIR2].rof)), repair3:((((("Repair Tower3\nCost:" + DTurret[TURRET_REPAIR3].cost) + "\nRepair:") + (DTurret[TURRET_REPAIR3].dmg * 100)) + "\nROF:") + (100 - DTurret[TURRET_REPAIR3].rof)), woodwall:((("Wood Wall\nCost:" + DTurret[WALL_WOOD].cost) + "\nHP:") + DTurret[WALL_WOOD].hp), spikewall:((((("Spike Wall\nCost:" + DTurret[WALL_SPIKE].cost) + "\nHP:") + DTurret[WALL_SPIKE].hp) + "\nDamage:") + DTurret[WALL_SPIKE].dmg), titaniumwall:((("Titanium Wall\nCost:" + DTurret[WALL_TITANIUM].cost) + "\nHP:") + DTurret[WALL_TITANIUM].hp), brickwall:((("Brick Wall \nCost:" + DTurret[WALL_BRICK].cost) + "\nHP:") + DTurret[WALL_BRICK].hp), boxingfence:((("Boxing Fence\nCost:" + DTurret[FENCE_BOXING].cost) + "\nHP:") + DTurret[FENCE_BOXING].hp), electricfence:((((("Electric Fence\nCost:" + DTurret[FENCE_ELECTRIC].cost) + "\nHP:") + DTurret[FENCE_ELECTRIC].hp) + "\nDamaeg:") + DTurret[FENCE_ELECTRIC].dmg), poisonfence:((("Poison Fence\nCost:" + DTurret[FENCE_POISON].cost) + "\nHP:") + DTurret[FENCE_POISON].hp), steelspikefence:((((("Stell Spike Fence\nCost:" + DTurret[FENCE_STEELSPIKE].cost) + "\nHP:") + DTurret[FENCE_STEELSPIKE].hp) + "\nDamage:") + DTurret[FENCE_STEELSPIKE].dmg), electricshock:((((("Electric Shock\nCost:" + DTurret[TURRET_ELECTRICSHOCK].cost) + "\nDamage:") + DTurret[TURRET_ELECTRICSHOCK].dmg) + "\nROF:") + (100 - DTurret[TURRET_ELECTRICSHOCK].rof)), grenadelauncher:((((("Grenade Launcher\nCost:" + DTurret[TURRET_GRENADELAUNCHER].cost) + "\nDamage:") + DTurret[TURRET_GRENADELAUNCHER].dmg) + "\nROF:") + (100 - DTurret[TURRET_GRENADELAUNCHER].rof)), fireballlauncher:((((("Fireball Launcher\nCost:" + DTurret[TURRET_FIREBALLLAUNCHER].cost) + "\nDamage:") + DTurret[TURRET_FIREBALLLAUNCHER].dmg) + "\nROF:") + (100 - DTurret[TURRET_FIREBALLLAUNCHER].rof)), flamethrower:((((("Flame Thrower\nCost:" + DTurret[TURRET_FLAMETHROWER].cost) + "\nDamage:") + DTurret[TURRET_FLAMETHROWER].dmg) + "\nROF:") + (100 - DTurret[TURRET_FLAMETHROWER].rof)), firecatapult:((((("Fire Catapult\nCost:" + DTurret[TURRET_FIRECATAPULT].cost) + "\nDamage:") + DTurret[TURRET_FIRECATAPULT].dmg) + "\nROF") + (100 - DTurret[TURRET_FIRECATAPULT].rof)), cutlaser:((((("Laser\nCost:" + DTurret[TURRET_CUTLASER].cost) + "\nDamage:") + DTurret[TURRET_CUTLASER].dmg) + "\nROF:") + (100 - DTurret[TURRET_CUTLASER].rof)), meteor:((((("Meteor Rain\nCost:" + DTurret[TURRET_METEOR].cost) + "\nDamage:") + DTurret[TURRET_METEOR].dmg) + "\nROF:") + (100 - DTurret[TURRET_METEOR].rof)), rocketlauncher:((((("Rocket Launcher\nCost:" + DTurret[TURRET_ROCKETLAUNCHER].cost) + "\nDamage:") + DTurret[TURRET_ROCKETLAUNCHER].dmg) + "\nROF:") + (100 - DTurret[TURRET_ROCKETLAUNCHER].rof)), tomahawklauncher:((((("Tomahawk Launcher\nCost:" + DTurret[TURRET_TOMAHAWKLAUNCHER].cost) + "\nDamage:") + DTurret[TURRET_TOMAHAWKLAUNCHER].dmg) + "\nROF:") + (100 - DTurret[TURRET_TOMAHAWKLAUNCHER].rof)), longrangemissile:((((("Longrange Missile\nCost:" + DTurret[TURRET_LONGRANGEMISSILE].cost) + "\nDamage:") + DTurret[TURRET_LONGRANGEMISSILE].dmg) + "\nROF:") + (100 - DTurret[TURRET_LONGRANGEMISSILE].rof)), anthrax:((((("Poison Gas\nCost:" + DTurret[TURRET_ANTHRAX].cost) + "\nDamage:") + DTurret[TURRET_ANTHRAX].dmg) + "\nROF:") + (100 - DTurret[TURRET_ANTHRAX].rof)), chainlightning:((((("Chain Lightning\nCost:" + DTurret[TURRET_CHAINLIGHTNING].cost) + "\nDamage:") + DTurret[TURRET_CHAINLIGHTNING].dmg) + "\nROF:") + (100 - DTurret[TURRET_CHAINLIGHTNING].rof)), rocketshotgun:((((("Rocket Shotgun\nCost:" + DTurret[TURRET_ROCKETSHOTGUN].cost) + "\nDamage:") + DTurret[TURRET_ROCKETSHOTGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_ROCKETSHOTGUN].rof)), shotgun:((((("Shotgun\nCost:" + DTurret[TURRET_SHOTGUN].cost) + "\nDamage:") + DTurret[TURRET_SHOTGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_SHOTGUN].rof)), catapult:((((("Catapult\nCost:" + DTurret[TURRET_CATAPULT].cost) + "\nDamage:") + DTurret[TURRET_CATAPULT].dmg) + "\nROF:") + (100 - DTurret[TURRET_CATAPULT].rof)), massivecatapult:((((("Massive Catapult\nCost:" + DTurret[TURRET_MASSIVECATAPULT].cost) + "\nDamage:") + DTurret[TURRET_MASSIVECATAPULT].dmg) + "\nROF:") + (100 - DTurret[TURRET_MASSIVECATAPULT].rof)), splitshuriken:((((("Spilit Shuriken\nCost:" + DTurret[TURRET_SPLITSHURIKEN].cost) + "\nDamage:") + DTurret[TURRET_SPLITSHURIKEN].dmg) + "\nROF:") + (100 - DTurret[TURRET_SPLITSHURIKEN].rof)), frozeturret:((((("Froze Tower\nCost:" + DTurret[TURRET_FROZEN].cost) + "\nDamage:") + DTurret[TURRET_FROZEN].dmg) + "\nROF:") + (100 - DTurret[TURRET_FROZEN].rof)), nucleardrum:((((("Nuclear Drum\nCost:" + DTurret[DRUM_NUCLEAR].cost) + "\nDamage:") + DTurret[DRUM_NUCLEAR].dmg) + "\nROF:") + (100 - DTurret[DRUM_NUCLEAR].rof)), icedrum:((((("Ice Drum\nCost:" + DTurret[DRUM_ICE].cost) + "\nDamage:") + DTurret[DRUM_ICE].dmg) + "\nROF:") + (100 - DTurret[DRUM_ICE].rof)), wavedrum:((((("Wave Drum\nCost:" + DTurret[DRUM_WAVE].cost) + "\nDamage:") + DTurret[DRUM_WAVE].dmg) + "\nROF:") + (100 - DTurret[DRUM_WAVE].rof)), firedrum:((((("Fire Drum\nCost:" + DTurret[DRUM_FIRE].cost) + "\nDamage:") + DTurret[DRUM_FIRE].dmg) + "\nROF:") + (100 - DTurret[DRUM_FIRE].rof)), clusterbomb:((((("Thorn Launcher\nCost:" + DTurret[TURRET_CLUSTERBOMB].cost) + "\nDamage:") + DTurret[TURRET_CLUSTERBOMB].dmg) + "\nROF:") + (100 - DTurret[TURRET_CLUSTERBOMB].rof)), snowlauncher:((((("Snow launcher\nCost:" + DTurret[TURRET_SNOWLAUNCHER].cost) + "\nDamage:") + DTurret[TURRET_SNOWLAUNCHER].dmg) + "\nROF:") + (100 - DTurret[TURRET_SNOWLAUNCHER].rof)), blizzard:((((("Blizzard\nCost:" + DTurret[TURRET_BLIZZARD].cost) + "\nDamage:") + DTurret[TURRET_BLIZZARD].dmg) + "\nROF:") + (100 - DTurret[TURRET_BLIZZARD].rof)), bladegun:((((("Bladegun\nCost:" + DTurret[TURRET_BLADEGUN].cost) + "\nDamage:") + DTurret[TURRET_BLADEGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_BLADEGUN].rof)), snrgun:((((("Thorngun\nCost:" + DTurret[TURRET_SNRGUN].cost) + "\nDamage:") + DTurret[TURRET_SNRGUN].dmg) + "\nROF:") + (100 - DTurret[TURRET_SNRGUN].rof))}; public static var DTUpgradeList:Array = new Array(new Array("smg", "sniper", "snowlauncher", "catapult", "anthrax", "rocketlauncher"), new Array("machinegun", "shotgun"), new Array("gatling", "grenadelauncher"), new Array(), new Array("cutlaser"), new Array("supergrowth"), new Array(), new Array("grow", "repair2"), new Array("repair3"), new Array(), new Array("brickwall", "spikewall", "titaniumwall", "boxingfence"), new Array(), new Array(), new Array(), new Array("steelspikefence", "electricfence", "poisonfence"), new Array(), new Array(), new Array(), new Array(), new Array(), new Array(), new Array(), new Array("flamethrower", "fireballlauncher", "meteor"), new Array(), new Array(), new Array("tomahawklauncher", "longrangemissile"), new Array(), new Array(), new Array(), new Array(), new Array(), new Array("splitshuriken", "rocketshotgun"), new Array("firecatapult", "massivecatapult", "snrgun", "frozeturret"), new Array(), new Array(), new Array(), new Array("icedrum", "wavedrum", "firedrum"), new Array(), new Array(), new Array(), new Array("electricshock", "blizzard", "bladegun"), new Array("nucleardrum", "chainlightning", "clusterbomb"), new Array(), new Array(), new Array()); public static var DTurret:Array = new Array({name:"Handgun", dmg:1, hp:10, rotatespeed:10, radius:150, rof:30, bullettype:BULLET_HANDGUN, cost:50, sfx:"gunfire"}, {name:"SMG", dmg:2, hp:15, rotatespeed:10, radius:150, rof:20, bullettype:BULLET_HANDGUN, cost:65, sfx:"gunfire"}, {name:"Machinegun", dmg:3, hp:20, rotatespeed:10, radius:200, rof:10, bullettype:BULLET_HANDGUN, cost:120, sfx:"gunfire"}, {name:"Gatling", dmg:5, hp:20, rotatespeed:10, radius:200, rof:5, bullettype:BULLET_HANDGUN, cost:150, sfx:"gunfire"}, {name:"Sniper", dmg:5, hp:20, rotatespeed:10, radius:300, rof:40, bullettype:BULLET_HANDGUN, cost:60, sfx:"gunfire"}, {name:"Grow", dmg:0.0003, hp:50, rotatespeed:0, radius:100, rof:160, bullettype:BULLET_GROWTH, cost:100, sfx:"raygun"}, {name:"Super Growth", dmg:0.0006, hp:50, rotatespeed:0, radius:110, rof:120, bullettype:BULLET_GROWTH, cost:200, sfx:"raygun"}, {name:"Repair Basic", dmg:0.01, hp:10, rotatespeed:0, radius:100, rof:200, bullettype:BULLET_REPAIR, cost:100, sfx:"raygun"}, {name:"Repair Advance", dmg:0.015, hp:15, rotatespeed:0, radius:110, rof:180, bullettype:BULLET_REPAIR, cost:125, sfx:"raygun"}, {name:"Repair Expert", dmg:0.02, hp:20, rotatespeed:0, radius:125, rof:160, bullettype:BULLET_REPAIR, cost:150, sfx:"raygun"}, {name:"Wood Wall", dmg:0, hp:20, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:20}, {name:"Spike Wall", dmg:1, hp:30, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:50}, {name:"Titanium Wall", dmg:0, hp:50, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:70}, {name:"Brick Wall", dmg:0, hp:40, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:30}, {name:"Boxing Fence", dmg:0, hp:30, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:40}, {name:"Electric Fence", dmg:0.5, hp:20, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:50}, {name:"Poison Fence", dmg:1, hp:30, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:50}, {name:"SteelSpike Fence", dmg:1, hp:40, rotatespeed:0, radius:0, rof:0, bullettype:BULLET_NONE, cost:50}, {name:"Electric Shock", dmg:1, hp:20, rotatespeed:0, radius:100, rof:40, bullettype:BULLET_LIGHTNING, cost:100}, {name:"Grenade Launcher", dmg:5, hp:20, rotatespeed:2, radius:150, rof:20, bullettype:BULLET_GRENADE, cost:100}, {name:"Fireball Launcher", dmg:4, hp:20, rotatespeed:2, radius:200, rof:20, bullettype:BULLET_FIREBALL, cost:120}, {name:"Flame Thrower", dmg:0.2, hp:20, rotatespeed:10, radius:80, rof:2, bullettype:BULLET_FLAME, cost:130}, {name:"Fire Catapult", dmg:1, hp:20, rotatespeed:10, radius:200, rof:10, bullettype:BULLET_FIREBALL, cost:100}, {name:"Cut Laser", dmg:1, hp:20, rotatespeed:10, radius:100, rof:10, bullettype:BULLET_LASER, cost:120, sfx:"laser"}, {name:"Meteor Rain", dmg:0.5, hp:20, rotatespeed:3, radius:50, rof:40, bullettype:BULLET_METEOR, cost:200}, {name:"Rocket Launcher", dmg:5, hp:20, rotatespeed:10, radius:200, rof:30, bullettype:BULLET_MISSILE1, cost:100, sfx:"rocket"}, {name:"Tomahawk Launcher", dmg:10, hp:20, rotatespeed:3, radius:300, rof:40, bullettype:BULLET_MISSILE2, cost:200, sfx:"rocket"}, {name:"Long Range Missile", dmg:10, hp:20, rotatespeed:10, radius:500, rof:40, bullettype:BULLET_ROCKET, cost:170, sfx:"rocket"}, {name:"Anthrax", dmg:0.1, hp:20, rotatespeed:10, radius:100, rof:10, bullettype:BULLET_POISON, cost:90}, {name:"Chain Lightning", dmg:5, hp:20, rotatespeed:10, radius:300, rof:40, bullettype:BULLET_LIGHTNINGBALL, cost:150}, {name:"Rocket Shotgun", dmg:5, hp:20, rotatespeed:10, radius:200, rof:40, bullettype:BULLET_ROCKET, cost:150, sfx:"rocket"}, {name:"Shotgun", dmg:3, hp:20, rotatespeed:10, radius:200, rof:40, bullettype:BULLET_HANDGUN, cost:90}, {name:"Catapult", dmg:2, hp:20, rotatespeed:10, radius:400, rof:80, bullettype:BULLET_STONE, cost:40}, {name:"Massive Catapult", dmg:5, hp:20, rotatespeed:10, radius:400, rof:30, bullettype:BULLET_STONE, cost:100}, {name:"Split Shuriken", dmg:3, hp:20, rotatespeed:10, radius:200, rof:40, bullettype:BULLET_SHURIKEN, cost:120}, {name:"Froze Turret", dmg:0, hp:20, rotatespeed:10, radius:100, rof:60, bullettype:BULLET_FROZEN, cost:100}, {name:"Nuclear Drum", dmg:100, hp:5, rotatespeed:0, radius:150, rof:0, bullettype:BULLET_NUCLEAR, cost:50}, {name:"Ice Drum", dmg:50, hp:5, rotatespeed:0, radius:150, rof:0, bullettype:BULLET_ICE, cost:50}, {name:"Wave Drum", dmg:150, hp:5, rotatespeed:0, radius:150, rof:0, bullettype:BULLET_WAVE, cost:50}, {name:"Fire Drum", dmg:100, hp:5, rotatespeed:0, radius:150, rof:0, bullettype:BULLET_FIRE, cost:50}, {name:"Cluster Bomb", dmg:4, hp:30, rotatespeed:10, radius:200, rof:10, bullettype:BULLET_THORN, cost:100}, {name:"Snow Launcher", dmg:3, hp:20, rotatespeed:7, radius:70, rof:40, bullettype:BULLET_SNOW, cost:100}, {name:"Blizzard", dmg:2, hp:20, rotatespeed:10, radius:200, rof:10, bullettype:BULLET_ICEDROP, cost:100}, {name:"Bladegun", dmg:0.4, hp:20, rotatespeed:1, radius:70, rof:100, bullettype:BULLET_BLADEFAN, cost:100}, {name:"Snrgun", dmg:10, hp:30, rotatespeed:3, radius:200, rof:10, bullettype:BULLET_NEEDLE, cost:100}); public static var DTree:Object = {cost:60, count:5}; public static var DWave:Array = new Array({level:{name:"Normal", pohon:{x:400, y:100}, diff:0, nextlevel:800}, enemy:new Array({type:WORM_BEGGAR, count:7, delay:30, difficulty:["NORMAL"], x:0, y:200})}); public static var DBullet:Array = new Array({dmg:1, speed:8, kill:true}, {dmg:1, speed:6, kill:false, radius:200}, {dmg:1, speed:6, kill:false, radius:200}, {dmg:1, speed:6, kill:false, radius:200}, {dmg:1, speed:6, kill:false, radius:50, aoe:50}, {dmg:1, speed:6, kill:false, radius:50}, {dmg:1, speed:2, kill:false, radius:50}, {dmg:1, speed:20, kill:false, radius:50}, {dmg:1, speed:1, kill:false, radius:50}, {dmg:1, speed:5, kill:true, radius:50, acc:1, aoe:50}, {dmg:1, speed:1, kill:true, radius:1000, acc:0.5, rotatespeed:5, aoe:100}, {dmg:1, speed:1, kill:true, radius:1000, acc:0.2, rotatespeed:5, aoe:50}, {dmg:1, speed:2, kill:false, radius:50}, {dmg:1, speed:5, kill:true, radius:100, ctr:3, rotatespeed:5, acc:0}, {dmg:1, speed:10, kill:true, aoe:50, radius:1000, acc:0.2, rotatespeed:5}, {dmg:1, speed:3, kill:true, rotatespeed:10}, {dmg:1, speed:5, kill:false, radius:50}, {dmg:1, speed:5, kill:false, radius:50, aoe:70}, {dmg:1, speed:5, kill:false, radius:50, aoe:70}, {dmg:1, speed:5, kill:false, radius:50, aoe:70}, {dmg:1, speed:5, kill:false, radius:50, aoe:70}, {dmg:1, speed:0, kill:true, radius:50, ctr:200}, {dmg:1, speed:5, kill:true, radius:50}, {dmg:1, speed:0, kill:true, radius:50, ctr:200}, {dmg:1, speed:0, kill:false, radius:50, rotatespeed:5, counter:200}, {dmg:1, speed:10, kill:true}); public static var DTUpgrade:Object = {handgun:TURRET_HANDGUN, smg:TURRET_SMG, machinegun:TURRET_MACHINEGUN, gatling:TURRET_GATLING, sniper:TURRET_SNIPER, grow:TURRET_GROW, supergrowth:TURRET_SUPERGROWTH, repair1:TURRET_REPAIR1, repair2:TURRET_REPAIR2, repair3:TURRET_REPAIR3, woodwall:WALL_WOOD, titaniumwall:WALL_TITANIUM, spikewall:WALL_SPIKE, brickwall:WALL_BRICK, boxingfence:FENCE_BOXING, electricfence:FENCE_ELECTRIC, poisonfence:FENCE_POISON, steelspikefence:FENCE_STEELSPIKE, electricshock:TURRET_ELECTRICSHOCK, grenadelauncher:TURRET_GRENADELAUNCHER, fireballlauncher:TURRET_FIREBALLLAUNCHER, flamethrower:TURRET_FLAMETHROWER, firecatapult:TURRET_FIRECATAPULT, cutlaser:TURRET_CUTLASER, meteor:TURRET_METEOR, rocketlauncher:TURRET_ROCKETLAUNCHER, tomahawklauncher:TURRET_TOMAHAWKLAUNCHER, longrangemissile:TURRET_LONGRANGEMISSILE, anthrax:TURRET_ANTHRAX, chainlightning:TURRET_CHAINLIGHTNING, rocketshotgun:TURRET_ROCKETSHOTGUN, shotgun:TURRET_SHOTGUN, catapult:TURRET_CATAPULT, massivecatapult:TURRET_MASSIVECATAPULT, splitshuriken:TURRET_SPLITSHURIKEN, frozeturret:TURRET_FROZEN, nucleardrum:DRUM_NUCLEAR, icedrum:DRUM_ICE, wavedrum:DRUM_WAVE, firedrum:DRUM_FIRE, clusterbomb:TURRET_CLUSTERBOMB, snowlauncher:TURRET_SNOWLAUNCHER, blizzard:TURRET_BLIZZARD, bladegun:TURRET_BLADEGUN, snrgun:TURRET_SNRGUN}; public static var DApel:Object = {growrate:0.01, growcounter:10, score:100, money:10}; public static var DEnemy:Array = new Array({move:1, attack:38, dmg:1, hp:1, speed:1.2, radius:500, score:50, money:10, attprob:0.1, appleprob:0.8}, {move:1, attack:38, dmg:1, hp:25, speed:1.2, radius:700, score:70, money:15, attprob:0.5, appleprob:0.2}, {move:1, attack:32, dmg:1, hp:50, speed:1, radius:1000, score:100, money:30, attprob:0.5, appleprob:1}); } }//packageSection 81//Enemies (Enemies) package { import flash.display.*; public dynamic class Enemies extends MovieClip { public var enemy0:MovieClip; public var enemy1:MovieClip; public var enemy2:MovieClip; } }//packageSection 82//Global (Global) package { import flash.net.*; import flash.external.*; public class Global { protected static const WINDOW_OPEN_FUNCTION:String = "window.open"; public static var STAGE_WIDTH = 600; public static var STAGE_HEIGHT = 450; public static function AngleOfTwoLines(_arg1:Object, _arg2:Object):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; _local3 = _arg1.x1; _local4 = _arg1.y1; _local5 = _arg1.x2; _local6 = _arg1.y2; _local7 = _arg2.x1; _local8 = _arg2.y1; _local9 = _arg2.x2; _local10 = _arg2.y2; _local11 = Global.Slope(_local3, _local4, _local5, _local6); _local12 = Global.Slope(_local7, _local8, _local9, _local10); return (Math.atan(((_local12 - _local11) / (1 + (_local11 * _local12))))); } public static function Slope(_arg1, _arg2, _arg3, _arg4):Number{ var _local5:Number; var _local6:Number; _local5 = (_arg1 - _arg3); _local6 = (_arg2 - _arg4); return ((_local6 / _local5)); } public static function AngleOfTwoDots(_arg1, _arg2, _arg3, _arg4):Number{ var _local5:Number; var _local6:Number; _local5 = (_arg1 - _arg3); _local6 = (_arg2 - _arg4); return (Math.atan2(_local6, _local5)); } public static function DegToRad(_arg1:Number):Number{ return (((_arg1 / 180) * Math.PI)); } public static function Distance(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (Math.sqrt((Math.pow((_arg3 - _arg1), 2) + Math.pow((_arg4 - _arg2), 2)))); } public static function RadToDeg(_arg1:Number):Number{ return (((_arg1 * 180) / Math.PI)); } public static function pythagoras(_arg1:Number, _arg2:Number):Number{ return (Math.sqrt((Math.pow(_arg1, 2) + Math.pow(_arg2, 2)))); } public static function openWindow(_arg1:String="http://www.lazybanana.com", _arg2:String="_blank", _arg3:String=""):String{ var _loc_4:URLRequest; var _loc_5:String; var ok:Boolean; var opened:Boolean; var msg:String; var url = _arg1; var target = _arg2; var param3 = _arg3; ok = true; opened = false; _loc_4 = new URLRequest(url); msg = "Start the openWindow func ...\n"; if (!ExternalInterface.available){ try { opened = false; navigateToURL(_loc_4, target); msg = (msg + "flag a - 1"); } catch(err:SecurityError) { navigateToURL(_loc_4, "_blank"); opened = true; msg = (msg + "flag a - 2"); } finally { opened = true; }; msg = (msg + "external interface not available\n"); } else { try { _loc_5 = String(ExternalInterface.call("function() {return navigator.userAgent;}")).toLowerCase(); msg = (msg + "Trying extenal interface sandbox security\n"); msg = (msg + "flag b - 1"); opened = false; } catch(err:SecurityError) { msg = (msg + (err.message + "\n")); ok = false; try { opened = false; navigateToURL(_loc_4, target); msg = (msg + "flag b - 2"); } catch(err:SecurityError) { opened = true; msg = (msg + "flag b - 3"); navigateToURL(_loc_4, "_blank"); } finally { opened = true; }; } catch(err:Error) { } finally { opened = false; }; if (((ok) && (!(opened)))){ msg = (msg + "External interface available, continuing ...\n"); if (((!((_loc_5.indexOf("firefox") == -1))) || (((!((_loc_5.indexOf("msie") == -1))) && ((uint(_loc_5.substr((_loc_5.indexOf("msie") + 5), 3)) >= 7)))))){ try { ExternalInterface.call("window.open", _loc_4.url, target); opened = false; msg = (msg + "flag c - 1"); msg = (msg + "Trying window.open JS ...\n"); } catch(err:SecurityError) { msg = (msg + (err.message + "\n")); trace(("e : " + err.message)); if (!opened){ try { opened = false; navigateToURL(_loc_4, target); msg = (msg + "flag d - 1"); } catch(err:SecurityError) { opened = true; navigateToURL(_loc_4, "_blank"); msg = (msg + "flag d - 2"); } finally { opened = true; }; }; } catch(err:Error) { msg = (msg + (err.message + "\n")); if (!opened){ try { opened = false; navigateToURL(_loc_4, target); msg = (msg + "flag e - 1"); } catch(err:SecurityError) { opened = true; navigateToURL(_loc_4, "_blank"); msg = (msg + "flag e - 2"); } finally { opened = true; }; }; } finally { opened = true; }; } else { if (!opened){ msg = (msg + "Open with navigateToURL\n"); try { opened = false; navigateToURL(_loc_4, target); msg = (msg + "flag f - 1"); } catch(err:SecurityError) { navigateToURL(_loc_4, "_blank"); msg = (msg + "flag f - 2"); } finally { opened = true; }; }; }; }; }; return (msg); } public static function getFormatedString(_arg1:String, _arg2:Array, _arg3:String="%"):String{ var _local4:String; for (_local4 in _arg2) { _arg1 = _arg1.replace((_arg3 + _local4), _arg2[_local4]); trace(_local4, _arg2[_local4]); }; return (_arg1); } } }//packageSection 83//GSFlashGameAPI (GSFlashGameAPI) package { import flash.events.*; import flash.display.*; import flash.net.*; import flash.system.*; public class GSFlashGameAPI { private var container; private var logoLoaded:Boolean;// = false private var loader:URLLoader; private var dataFailed:Boolean;// = false private var logo:Loader; private var logoUrl:String; private var mainStage; private var logoFailed:Boolean;// = false private var dataLoaded:Boolean;// = false private var splashClip:MovieClip; private var showHighScoreUrl:String; private var moreGamesUrl:String; private var splash:Loader; private var submitHighScoreUrl:String; private var splashFinished:Boolean;// = false private var gamename; private static const defaultMoreGamesUrl:String = "http://www.bigfuntown.com"; private static const dataUrl:String = "http://gameapi.gamescore.com/flash/gamedata?referer=[referer]&host=[host]"; private static const splashUrl:String = "http://gameapi.gamescore.com/flash/splash.swf?referer=[referer]&host=[host]"; public function GSFlashGameAPI(_arg1, _arg2){ splashFinished = false; dataLoaded = false; dataFailed = false; logoLoaded = false; logoFailed = false; super(); this.container = _arg1; this.mainStage = this.container.stage; this.gamename = _arg2; Security.allowDomain("gamescore.com"); Security.allowDomain("www.gamescore.com"); Security.allowDomain("gameapi.gamescore.com"); Security.allowInsecureDomain("gamescore.com"); Security.allowInsecureDomain("www.gamescore.com"); Security.allowInsecureDomain("gameapi.gamescore.com"); this.loadData(); this.loadSplash(); } public function HighScores(){ if (!this.dataLoaded){ return; }; navigateToURL(new URLRequest(this.showHighScoreUrl.replace("[gamename]", this.gamename)), "_blank"); } private function baseHex(_arg1:int){ switch (_arg1){ case 15: return ("f"); case 14: return ("e"); case 13: return ("d"); case 12: return ("c"); case 11: return ("b"); case 10: return ("a"); default: return (("" + _arg1)); }; } public function GetLogo(_arg1, _arg2){ var _local3:Sprite; var _local4:*; if (!this.logoLoaded){ return; }; _local3 = new Sprite(); _local3.addChild(this.logo); _local3.height = ((_arg1 / this.logo.width) * this.logo.height); _local3.width = _arg1; if (_arg2 < _local3.height){ _local3.width = ((_arg2 / _local3.height) * _local3.width); _local3.height = _arg2; }; _local3.x = ((_arg1 / 2) - (_local3.width / 2)); _local3.y = ((_arg2 / 2) - (_local3.height / 2)); _local4 = new Sprite(); _local4.addChild(_local3); return (_local4); } private function splashSuccess(_arg1){ this.splashClip = (this.splash.content as MovieClip); this.splash.addEventListener(Event.ENTER_FRAME, displaySplash); } private function logoClick(_arg1){ this.MoreGames(); } private function endSplash(){ this.mainStage.removeChild(this.splash); this.splashFinished = true; } private function splashFail(_arg1){ this.endSplash(); } private function toHex(_arg1:String){ var _local2:*; var _local3:*; var _local4:*; _local2 = new Array(); _local3 = 0; while (_local3 < _arg1.length) { _local4 = this.lookupHex(_arg1.charCodeAt(_local3)); _local2[((_local3 * 4) + 0)] = _local4.charAt(0); _local2[((_local3 * 4) + 1)] = _local4.charAt(1); _local2[((_local3 * 4) + 2)] = _local4.charAt(2); _local2[((_local3 * 4) + 3)] = _local4.charAt(3); _local3++; }; return (_local2.join("")); } public function UseHighScores(){ return (this.dataLoaded); } public function Loaded(){ return (((((this.splashFinished) && (((this.dataLoaded) || (this.dataFailed))))) && (((((this.logoLoaded) || (this.logoFailed))) || (this.dataFailed))))); } private function loadData(){ this.loader = new URLLoader(); this.loader.dataFormat = URLLoaderDataFormat.TEXT; this.loader.addEventListener(Event.COMPLETE, downloadSuccess); this.loader.addEventListener(IOErrorEvent.IO_ERROR, downloadFail); this.loader.load(new URLRequest(GSFlashGameAPI.dataUrl.replace("[referer]", this.gamename).replace("[host]", encodeURI(this.container.loaderInfo.loaderURL)))); } private function loadLogo(){ this.logo = new Loader(); this.logo.contentLoaderInfo.addEventListener(Event.COMPLETE, logoSuccess); this.logo.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, logoFail); this.logo.load(new URLRequest(this.logoUrl)); } public function UseLogo(){ return (this.logoLoaded); } private function dubEncrypt(_arg1:String, _arg2:String){ var _local3:*; _local3 = this.encrypt(_arg1, _arg2); _local3 = this.encrypt(this.reverse(_local3), this.reverse(_arg2)); return (this.toHex(_local3)); } public function SubmitHighScore(_arg1, _arg2, _arg3){ var _local4:*; var _local5:int; var _local6:*; var _local7:*; var _local8:*; if (!this.dataLoaded){ return; }; _local4 = this.gamename.replace("|", ""); _arg1 = _arg1.replace("|", ""); _arg2 = _arg2.replace("|", ""); _arg3 = ("" + _arg3).replace("|", ""); _local5 = (Math.random() * 1000000); _local6 = this.submitHighScoreUrl.replace("[gamename]", this.gamename); _local7 = new URLRequest(_local6); _local8 = new URLVariables(); _local8.scoreData = this.dubEncrypt(((((((((_local4 + "|") + _arg1) + "|") + _arg2) + "|") + _arg3) + "|") + _local5), "~d&j#9sK@8;dnHio3?Fp}h9#BDfvn#"); _local7.data = _local8; _local7.method = URLRequestMethod.POST; navigateToURL(_local7, "_blank"); } private function lookupHex(_arg1:int){ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _local2 = (_arg1 / 0x1000); _arg1 = (_arg1 % 0x1000); _local3 = (_arg1 / 0x0100); _arg1 = (_arg1 % 0x0100); _local4 = (_arg1 / 16); _arg1 = (_arg1 % 16); _local5 = _arg1; return ((((this.baseHex(_local2) + this.baseHex(_local3)) + this.baseHex(_local4)) + this.baseHex(_local5))); } private function downloadFail(_arg1){ this.dataFailed = true; } private function displaySplash(_arg1){ if (splashClip.Finished == false){ return; }; this.splash.removeEventListener(Event.ENTER_FRAME, displaySplash); this.endSplash(); } public function MoreGames(){ if (!this.dataLoaded){ navigateToURL(new URLRequest(GSFlashGameAPI.defaultMoreGamesUrl), "_blank"); return; }; navigateToURL(new URLRequest(this.moreGamesUrl.replace("[referer]", this.gamename)), "_blank"); } private function logoSuccess(_arg1){ this.logo.addEventListener(MouseEvent.CLICK, logoClick); this.logoLoaded = true; } private function downloadSuccess(_arg1){ var _local2:Array; var _local3:*; var _local4:Array; _local2 = this.loader.data.split("\n"); _local3 = 0; while (_local3 < _local2.length) { _local4 = _local2[_local3].split("|||"); switch (_local4[0]){ case "MoreGames": this.moreGamesUrl = _local4[1]; break; case "SubmitHighScore": this.submitHighScoreUrl = _local4[1]; break; case "ShowHighScores": this.showHighScoreUrl = _local4[1]; break; case "Logo": this.logoUrl = _local4[1]; this.loadLogo(); break; }; _local3++; }; this.dataLoaded = true; } private function reverse(_arg1){ return (_arg1.split("").reverse().join("")); } private function encrypt(_arg1:String, _arg2:String){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:*; _local3 = new Array(); _local3[0] = _arg1.charCodeAt(0); _local4 = 1; while (_local4 < _arg1.length) { _local7 = _arg1.charCodeAt(_local4); _local8 = (((_local3[(_local4 - 1)] + _arg2.charCodeAt((_local4 % _arg2.length))) + _arg2.charCodeAt((_local3[(_local4 - 1)] % _arg2.length))) % 65536); _local3[_local4] = (_local7 ^ _local8); _local4++; }; _local5 = new Array(); _local6 = 0; while (_local6 < _local3.length) { _local5[_local6] = String.fromCharCode(_local3[_local6]); _local6++; }; return (_local5.join("")); } private function logoFail(_arg1){ this.logoFailed = true; } private function loadSplash(){ this.splash = new Loader(); this.splash.contentLoaderInfo.addEventListener(Event.COMPLETE, splashSuccess); this.splash.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, splashFail); this.mainStage.addChild(this.splash); this.splash.load(new URLRequest(GSFlashGameAPI.splashUrl.replace("[referer]", this.gamename).replace("[host]", encodeURI(this.container.loaderInfo.loaderURL)))); } } }//packageSection 84//gunfire (gunfire) package { import flash.media.*; public dynamic class gunfire extends Sound { } }//packageSection 85//HowToPlay (HowToPlay) package { import flash.events.*; import flash.geom.*; import flash.display.*; import flash.media.*; import flash.net.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.system.*; import flash.external.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; public dynamic class HowToPlay extends MovieClip { public var mExit_btn:SimpleButton; public var mFinish:SimpleButton; public var mNext_btn:SimpleButton; public var mCount:TextField; public var mPrev_btn:SimpleButton; public function HowToPlay(){ addFrameScript(0, frame1, 5, frame6); } public function onExitUp(_arg1:MouseEvent):void{ Main.GetInstance().mOptionBar.visible = true; Main.GetInstance().KillHowToPlay(); } function frame6(){ this.mFinish.addEventListener(MouseEvent.MOUSE_UP, onExitUp, false, 0, true); } function frame1(){ stop(); Main.GetInstance().mOptionBar.visible = false; if (!this.mExit_btn.hasEventListener(MouseEvent.MOUSE_UP)){ this.mExit_btn.addEventListener(MouseEvent.MOUSE_UP, onExitUp, false, 0, true); }; if (!this.mPrev_btn.hasEventListener(MouseEvent.MOUSE_UP)){ this.mPrev_btn.addEventListener(MouseEvent.MOUSE_UP, onPrevUp, false, 0, true); }; if (!this.mNext_btn.hasEventListener(MouseEvent.MOUSE_UP)){ this.mNext_btn.addEventListener(MouseEvent.MOUSE_UP, onNextUp, false, 0, true); }; if (!this.hasEventListener(Event.ENTER_FRAME)){ this.addEventListener(Event.ENTER_FRAME, OnEnterFrame, false, 0, true); }; } public function onNextUp(_arg1:MouseEvent):void{ if (this.currentFrame < this.totalFrames){ this.nextFrame(); }; } public function OnEnterFrame(_arg1:Event){ if (this.currentFrame == 1){ mPrev_btn.visible = false; } else { mPrev_btn.visible = true; }; if (this.currentFrame == this.totalFrames){ mNext_btn.visible = false; } else { mNext_btn.visible = true; }; mCount.text = ((this.currentFrame + "/") + this.totalFrames); } public function onPrevUp(_arg1:MouseEvent):void{ if (this.currentFrame > 1){ gotoAndStop((this.currentFrame - 1)); }; } } }//packageSection 86//HPBar (HPBar) package { import flash.display.*; public dynamic class HPBar extends MovieClip { } }//packageSection 87//laser (laser) package { import flash.media.*; public dynamic class laser extends Sound { } }//packageSection 88//laugh (laugh) package { import flash.media.*; public dynamic class laugh extends Sound { } }//packageSection 89//loser (loser) package { import flash.media.*; public dynamic class loser extends Sound { } }//packageSection 90//Main (Main) package { import flash.events.*; import caurina.transitions.*; import flash.display.*; import flash.media.*; import flash.net.*; import com.electrotank.util.*; import flash.ui.*; import flash.system.*; import flash.external.*; public class Main extends MovieClip { private var mContextMenu:ContextMenu; private var mSfx:SoundChannel; public var mBgmStartFlag:Boolean;// = false private var mBgm:SoundChannel; public var mState:int; public var mBgmFlag:Boolean;// = true public var mSapiWindow:MovieClip; public var mMainMenu:CMainMenu; private var mGameWin:CGame; public var mHeroData:Object; public var mSfxFlag:Boolean;// = true public var mOptionBar:COptionBar; public var mPreloader:MovieClip; public var gameInitialized;// = false public var mInitOnceFlag:Boolean;// = false public var mHowToPlay:MovieClip; public var mBannedWin:CBannedWin; public var game:GSFlashGameAPI; protected static const WINDOW_OPEN_FUNCTION:String = "window.open"; public static var STATE_GAME = 1; public static var MainGlobal:Main; public static var STATE_GAME_OVER = 4; public static var STATE_MAIN_MENU = 2; public static var STATE_PAUSED = 3; public function Main(){ mBgmFlag = true; mSfxFlag = true; mBgmStartFlag = false; gameInitialized = false; mInitOnceFlag = false; super(); addFrameScript(0, frame1, 7, frame8, 8, frame9, 15, frame16); stop(); trace("init main 1"); MainGlobal = this; game = new GSFlashGameAPI(this, "Apple Defender"); mState = STATE_MAIN_MENU; mContextMenu = new ContextMenu(); mContextMenu.hideBuiltInItems(); stage.addEventListener(Event.ADDED, OnAddedToStage, false, 0, true); stage.addEventListener(FocusEvent.FOCUS_IN, OnKeyFocusChange, false, 0, true); mContextMenu.addEventListener(ContextMenuEvent.MENU_SELECT, menuSelectHandler, false, 0, true); this.contextMenu = mContextMenu; this.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp, false, 0, true); this.stop(); if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, OnEnterFrame); }; this.addEventListener(Event.ENTER_FRAME, OnEnterFrame, false, 0, true); } public function ToggleQuality():void{ switch (stage.quality){ case "LOW": stage.quality = StageQuality.MEDIUM; break; case "MEDIUM": stage.quality = StageQuality.HIGH; break; case "HIGH": stage.quality = StageQuality.BEST; break; case "BEST": stage.quality = StageQuality.LOW; break; }; } private function ShowMainMenu():void{ KillMainMenu(); mMainMenu = new CMainMenu(); mMainMenu.AddDispatcher(); this.stage.addChild(mMainMenu); } public function ShowHSNote(_arg1:MouseEvent=null):void{ mMainMenu.addChild(new CHSNote()); } public function ShowHowToPlay(){ KillHowToPlay(); mHowToPlay = new HowToPlay(); this.stage.addChild(mHowToPlay); } public function InitHeroData(_arg1:Boolean=true){ if (_arg1){ mHeroData = new Object(); mHeroData.money = "money"; mHeroData.score = "score"; mHeroData.level = "level"; MemoryCrypto.setValue(mHeroData.money, Data.DHeroDefault.money); MemoryCrypto.setValue(mHeroData.score, Data.DHeroDefault.score); MemoryCrypto.setValue(mHeroData.level, Data.DHeroDefault.level); }; } public function ToggleMusic(){ var _local1:Sound; var _local2:SoundTransform; if (!mBgmStartFlag){ return; }; if (mBgmFlag){ mBgmFlag = false; mBgm.stop(); } else { mBgmFlag = true; _local1 = new BGM(); _local2 = new SoundTransform(0.5, 0); mBgm = _local1.play(0, 999, _local2); }; } public function KillGameWin(_arg1:Boolean=true){ if (mGameWin){ if (((mGameWin.parent) && (_arg1))){ mGameWin.Kill(); mGameWin.parent.removeChild(mGameWin); }; mGameWin = null; }; if (mGameWin != null){ trace("WARNING ### mGameWin Not null after Kill process"); }; } function frame16(){ InitOnce(); } public function kuda(){ trace("kuda"); stop(); gotoAndStop("mainMenu"); stop(); } public function InitGame(){ ResetData(); InitHeroData(); ShowGameWin(); mGameWin.AddDispatcher(); mState = STATE_GAME; if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, OnEnterFrame); }; this.addEventListener(Event.ENTER_FRAME, OnEnterFrame, false, 0, true); this.dispatchEvent(new Event("update")); } function frame1(){ stop(); } private function isDomainNOTAllowed(_arg1:Array):Boolean{ var _local2:LocalConnection; var _local3:String; var _local4:Number; _local2 = new LocalConnection(); _local3 = _local2.domain; trace(("Domain : " + _local3)); _local4 = 0; while (_local4 < _arg1.length) { if (_local3 == _arg1[_local4]){ return (true); }; _local4++; }; _local4 = 0; while (_local4 < _arg1.length) { if (_local3.substr(-((_arg1[_local4].length + 1))) == ("." + _arg1[_local4])){ return (true); }; _local4++; }; return (false); } private function isPlayerAllowed(_arg1:Array):Boolean{ var _local2:String; var _local3:Number; _local2 = Capabilities.playerType; trace(("PlayerType : " + _local2)); _local3 = 0; while (_local3 < _arg1.length) { if (_local2 == _arg1[_local3]){ return (true); }; _local3++; }; return (false); } function frame8(){ trace("frame 8"); } function frame9(){ trace("asset"); stop(); } private function isDomainAllowed(_arg1:Array):Boolean{ var _local2:LocalConnection; var _local3:String; var _local4:Number; _local2 = new LocalConnection(); _local3 = _local2.domain; trace(("Domain : " + _local3)); _local4 = 0; while (_local4 < _arg1.length) { if (_local3 == _arg1[_local4]){ return (true); }; _local4++; }; _local4 = 0; while (_local4 < _arg1.length) { if (_local3.substr(-((_arg1[_local4].length + 1))) == ("." + _arg1[_local4])){ return (true); }; _local4++; }; return (false); } private function ResetData():void{ var _local1:int; _local1 = 0; _local1 = 0; while (_local1 < Data.DWave.length) { Data.DWave[_local1].level.diff = 0; Data.DWave[_local1].level.nextlevel = 800; _local1++; }; Data.DTree.count = 1; Data.DTree.cost = 66; } private function menuSelectHandler(_arg1:ContextMenuEvent){ } private function OnKeyFocusChange(_arg1:FocusEvent):void{ stage.focus = this.stage; } public function ShowGameWin(_arg1:Boolean=true){ KillGameWin(); mGameWin = new CGame(_arg1); this.stage.addChild(mGameWin); } private function InitMenu(){ ShowMainMenu(); mBgmStartFlag = true; mState = STATE_MAIN_MENU; } public function ToggleSFX(){ if (!mBgmStartFlag){ return; }; if (mSfxFlag){ mSfxFlag = false; } else { mSfxFlag = true; }; } private function KillMainMenu(_arg1:Boolean=true):void{ if (mMainMenu){ if (((mMainMenu.parent) && (_arg1))){ mGameWin.parent.removeChild(mMainMenu); }; mMainMenu = null; }; if (mMainMenu != null){ trace("WARNING ### mMainMenu Not null after Kill process"); }; } private function onKeyUp(_arg1:KeyboardEvent):void{ var _local2:MovieClip; var _local3:int; var _local4:Array; if (mState != STATE_GAME_OVER){ switch (_arg1.keyCode){ case 77: if (mOptionBar){ mOptionBar.ToggleMusic(); }; break; case 78: if (mOptionBar){ mOptionBar.ToggleSFX(); }; break; case 66: if (mOptionBar){ mOptionBar.ToggleQuality(); }; break; }; } else { if (mState == STATE_GAME_OVER){ if (_arg1.keyCode == 13){ if (((mGameWin) && (mGameWin["mDialogCongrats"]))){ mGameWin["mDialogCongrats"].onSubmitUp(null); }; }; }; }; if (_arg1.keyCode == 65){ if (CGame.GetInstance().mBuilding){ if ((CGame.GetInstance().mBuilding is CTurret)){ if ((((CGame.GetInstance().mBuilding.mType == Data.WALL_WOOD)) || ((CGame.GetInstance().mBuilding.mType == Data.FENCE_BOXING)))){ CGame.GetInstance().mBuilding.mIcon.gotoAndStop((((CGame.GetInstance().mBuilding.mIcon.currentFrame + 1) % 3) + 1)); }; }; }; CGame.GetInstance().nextlevel(); } else { if (_arg1.keyCode == 27){ if (mState == STATE_GAME){ if (CGame.GetInstance().mBuilding){ CGame.GetInstance().cancelBuild(); } else { mState = STATE_PAUSED; Tweener.pauseAllTweens(); _local2 = new CDialogPause(); this.stage.addChild(_local2); }; }; } else { if ((_arg1.keyCode - 48) < 10){ _local3 = (_arg1.keyCode - 48); if ((CGame.GetInstance().mActiveUnit is CTurret)){ _local4 = Data.DTUpgradeList[CGame.GetInstance().mActiveUnit.mType]; if ((((_local3 <= _local4.length)) && ((_local3 > 0)))){ CGame.GetInstance().build(_local4[(_local3 - 1)], "upgrade", CGame.GetInstance().mActiveUnit, CGame.GetInstance().mouseX, CGame.GetInstance().mouseY); }; } else { if ((CGame.GetInstance().mActiveUnit is CGame)){ _local4 = CGame.GetInstance().mBuildList; if ((((_local3 <= _local4.length)) && ((_local3 > 0)))){ CGame.GetInstance().build(_local4[(_local3 - 1)], "build", CGame.GetInstance(), CGame.GetInstance().mouseX, CGame.GetInstance().mouseY); }; }; }; }; }; }; } private function OnAddedToStage(_arg1:Event):void{ if (mOptionBar){ mOptionBar.parent.setChildIndex(mOptionBar, (mOptionBar.parent.numChildren - 1)); }; } public function CheckDomain(){ var _local1:Array; var _local2:Array; _local1 = new Array("www.bigfuntown.com", "bigfuntown.com"); _local2 = new Array("ActiveX", "PlugIn", "StandAlone", "External"); trace("keple"); if (!isDomainAllowed(_local1)){ trace("BANNED DOMAIN !!!"); } else { trace("Allowed DOMAIN !!!"); }; } private function InitOnce(){ mInitOnceFlag = true; trace("initOnce a"); InitMenu(); trace("initonce b"); CheckDomain(); mOptionBar = new COptionBar(11, 11, "BGM"); stage.addChild(mOptionBar); if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, OnEnterFrame); }; this.addEventListener(Event.ENTER_FRAME, OnEnterFrame, false, 0, true); trace("initOnce c"); } public function OnEnterFrame(_arg1:Event){ if (((!(gameInitialized)) && (game.Loaded()))){ gameInitialized = true; mState = STATE_MAIN_MENU; }; if (gameInitialized){ switch (mState){ case STATE_MAIN_MENU: if (!mInitOnceFlag){ if (currentFrame != 16){ gotoAndStop(16); if (currentFrame == 16){ mInitOnceFlag = true; }; } else { mInitOnceFlag = true; }; }; break; case STATE_GAME: RunStateGame(); break; case STATE_PAUSED: this.dispatchEvent(new Event("pause")); break; default: break; }; }; } public function KillHowToPlay(_arg1:Boolean=true):void{ if (mHowToPlay){ if (((mHowToPlay) && (_arg1))){ mHowToPlay.parent.removeChild(mHowToPlay); }; mHowToPlay = null; }; if (mHowToPlay != null){ trace("WARNING ## mHowToPlay Not null after Kill process"); }; } private function RunStateGame(){ this.dispatchEvent(new Event("update")); } public static function GetInstance():Main{ return (MainGlobal); } public static function openWindow(_arg1:String="http://www.lazybanana.com", _arg2:String="_blank", _arg3:String=""):void{ var _local4:URLRequest; var _local5:String; _local4 = new URLRequest(_arg1); _arg2 = "_blank"; if (!ExternalInterface.available){ navigateToURL(_local4, _arg2); } else { _local5 = String(ExternalInterface.call("function() {return navigator.userAgent;}")).toLowerCase(); if (((!((_local5.indexOf("firefox") == -1))) || (((!((_local5.indexOf("msie") == -1))) && ((uint(_local5.substr((_local5.indexOf("msie") + 5), 3)) >= 7)))))){ ExternalInterface.call("window.open", _local4.url, _arg2); } else { navigateToURL(_local4, _arg2); }; }; } } }//packageSection 91//Particles (Particles) package { import flash.display.*; public dynamic class Particles extends MovieClip { public var poison:MovieClip; public var ledakan:MovieClip; public var smoke:MovieClip; public var petir:MovieClip; } }//packageSection 92//PohonApel (PohonApel) package { import flash.display.*; public dynamic class PohonApel extends MovieClip { public var apel:MovieClip; public var pohon:MovieClip; } }//packageSection 93//raygun (raygun) package { import flash.media.*; public dynamic class raygun extends Sound { } }//packageSection 94//rocket (rocket) package { import flash.media.*; public dynamic class rocket extends Sound { } }//packageSection 95//trumpet (trumpet) package { import flash.media.*; public dynamic class trumpet extends Sound { } }//packageSection 96//Turrets (Turrets) package { import flash.display.*; public dynamic class Turrets extends MovieClip { public var turret11:MovieClip; public var turret13:MovieClip; public var turret14:MovieClip; public var turret15:MovieClip; public var turret16:MovieClip; public var turret18:MovieClip; public var turret10:MovieClip; public var turret12:MovieClip; public var turret17:MovieClip; public var turret20:MovieClip; public var turret21:MovieClip; public var turret22:MovieClip; public var turret23:MovieClip; public var turret24:MovieClip; public var turret25:MovieClip; public var turret27:MovieClip; public var turret28:MovieClip; public var turret19:MovieClip; public var turret26:MovieClip; public var turret29:MovieClip; public var turret2:MovieClip; public var turret3:MovieClip; public var turret4:MovieClip; public var turret5:MovieClip; public var turret0:MovieClip; public var turret1:MovieClip; public var turret9:MovieClip; public var turret30:MovieClip; public var turret31:MovieClip; public var turret32:MovieClip; public var turret33:MovieClip; public var turret35:MovieClip; public var turret36:MovieClip; public var turret37:MovieClip; public var turret38:MovieClip; public var turret39:MovieClip; public var turret8:MovieClip; public var turret34:MovieClip; public var turret7:MovieClip; public var turret41:MovieClip; public var turret42:MovieClip; public var turret43:MovieClip; public var turret44:MovieClip; public var turret40:MovieClip; public var turret6:MovieClip; } }//package
Library Items
Symbol 1 Bitmap | Used by:2 | |
Symbol 2 Graphic | Uses:1 | Used by:9 |
Symbol 3 Bitmap | Used by:4 | |
Symbol 4 Graphic | Uses:3 | Used by:9 |
Symbol 5 Bitmap | Used by:6 | |
Symbol 6 Graphic | Uses:5 | Used by:9 |
Symbol 7 Bitmap | Used by:8 | |
Symbol 8 Graphic | Uses:7 | Used by:9 |
Symbol 9 MovieClip {BloodSplat} | Uses:2 4 6 8 | |
Symbol 10 Bitmap | Used by:11 | |
Symbol 11 Graphic | Uses:10 | Used by:50 |
Symbol 12 Bitmap | Used by:13 | |
Symbol 13 Graphic | Uses:12 | Used by:16 |
Symbol 14 Bitmap | Used by:15 | |
Symbol 15 Graphic | Uses:14 | Used by:16 |
Symbol 16 Button | Uses:13 15 | Used by:50 |
Symbol 17 Bitmap | Used by:18 | |
Symbol 18 Graphic | Uses:17 | Used by:21 |
Symbol 19 Bitmap | Used by:20 | |
Symbol 20 Graphic | Uses:19 | Used by:21 |
Symbol 21 Button | Uses:18 20 | Used by:50 |
Symbol 22 Bitmap | Used by:23 | |
Symbol 23 Graphic | Uses:22 | Used by:26 |
Symbol 24 Bitmap | Used by:25 | |
Symbol 25 Graphic | Uses:24 | Used by:26 |
Symbol 26 Button | Uses:23 25 | Used by:50 |
Symbol 27 Bitmap | Used by:28 | |
Symbol 28 Graphic | Uses:27 | Used by:31 |
Symbol 29 Bitmap | Used by:30 | |
Symbol 30 Graphic | Uses:29 | Used by:31 |
Symbol 31 Button | Uses:28 30 | Used by:50 |
Symbol 32 Bitmap | Used by:33 | |
Symbol 33 Graphic | Uses:32 | Used by:36 |
Symbol 34 Bitmap | Used by:35 | |
Symbol 35 Graphic | Uses:34 | Used by:36 |
Symbol 36 Button | Uses:33 35 | Used by:50 |
Symbol 37 Bitmap | Used by:38 | |
Symbol 38 Graphic | Uses:37 | Used by:41 |
Symbol 39 Bitmap | Used by:40 | |
Symbol 40 Graphic | Uses:39 | Used by:41 |
Symbol 41 Button | Uses:38 40 | Used by:50 |
Symbol 42 Bitmap | Used by:43 | |
Symbol 43 Graphic | Uses:42 | Used by:44 |
Symbol 44 MovieClip | Uses:43 | Used by:50 |
Symbol 45 Font | Used by:46 87 623 624 676 680 | |
Symbol 46 EditableText | Uses:45 | Used by:50 |
Symbol 47 Font | Used by:48 | |
Symbol 48 Text | Uses:47 | Used by:49 |
Symbol 49 Button | Uses:48 | Used by:50 |
Symbol 50 MovieClip {CMainMenu} | Uses:11 16 21 26 31 36 41 44 46 49 | Used by:690 |
Symbol 51 Bitmap | Used by:52 621 632 | |
Symbol 52 Graphic | Uses:51 | Used by:109 |
Symbol 53 Graphic | Used by:54 | |
Symbol 54 MovieClip | Uses:53 | Used by:109 637 |
Symbol 55 Graphic | Used by:56 | |
Symbol 56 MovieClip | Uses:55 | Used by:109 190 191 200 208 216 224 232 235 236 240 243 244 248 252 255 258 261 264 267 270 273 276 279 286 289 297 304 312 320 327 333 340 347 355 363 371 378 385 393 401 405 409 413 417 424 431 438 445 453 |
Symbol 57 Graphic | Used by:109 | |
Symbol 58 Bitmap | Used by:59 61 | |
Symbol 59 Graphic | Uses:58 | Used by:60 93 95 99 101 |
Symbol 60 MovieClip | Uses:59 | Used by:66 93 95 99 101 637 |
Symbol 61 Graphic | Uses:58 | Used by:66 |
Symbol 62 Font | Used by:63 64 65 589 590 | |
Symbol 63 EditableText | Uses:62 | Used by:66 |
Symbol 64 EditableText | Uses:62 | Used by:66 |
Symbol 65 EditableText | Uses:62 | Used by:66 |
Symbol 66 MovieClip {CMainPanel} | Uses:60 61 63 64 65 | Used by:109 |
Symbol 67 Bitmap | Used by:68 182 | |
Symbol 68 Graphic | Uses:67 | Used by:78 |
Symbol 69 Font | Used by:70 71 72 73 74 77 | |
Symbol 70 EditableText | Uses:69 | Used by:78 |
Symbol 71 EditableText | Uses:69 | Used by:78 |
Symbol 72 Text | Uses:69 | Used by:78 |
Symbol 73 EditableText | Uses:69 | Used by:78 |
Symbol 74 EditableText | Uses:69 | Used by:78 |
Symbol 75 Bitmap | Used by:76 | |
Symbol 76 Graphic | Uses:75 | Used by:78 |
Symbol 77 Text | Uses:69 | Used by:78 |
Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} | Uses:68 70 71 72 73 74 76 77 | Used by:109 |
Symbol 79 Bitmap | Used by:80 | |
Symbol 80 Graphic | Uses:79 | Used by:81 |
Symbol 81 MovieClip | Uses:80 | Used by:82 |
Symbol 82 MovieClip | Uses:81 | Used by:109 637 |
Symbol 83 Font | Used by:84 608 613 615 616 618 620 622 626 627 629 630 631 635 645 646 652 654 | |
Symbol 84 Text | Uses:83 | Used by:109 |
Symbol 85 Font | Used by:86 | |
Symbol 86 Text | Uses:85 | Used by:109 |
Symbol 87 EditableText | Uses:45 | Used by:88 |
Symbol 88 MovieClip {apple_defender_fla.BossTextAnim_19} | Uses:87 | Used by:109 |
Symbol 89 Graphic | Used by:108 | |
Symbol 90 Font | Used by:91 92 94 97 98 100 103 105 107 669 676 | |
Symbol 91 Text | Uses:90 | Used by:108 |
Symbol 92 EditableText | Uses:90 | Used by:93 |
Symbol 93 Button | Uses:60 92 59 | Used by:108 |
Symbol 94 EditableText | Uses:90 | Used by:95 |
Symbol 95 Button | Uses:60 94 59 | Used by:108 |
Symbol 96 Graphic | Used by:108 | |
Symbol 97 Text | Uses:90 | Used by:108 |
Symbol 98 EditableText | Uses:90 | Used by:99 |
Symbol 99 Button | Uses:60 98 59 | Used by:108 |
Symbol 100 EditableText | Uses:90 | Used by:101 |
Symbol 101 Button | Uses:60 100 59 | Used by:108 |
Symbol 102 Graphic | Used by:108 | |
Symbol 103 Text | Uses:90 | Used by:108 |
Symbol 104 Graphic | Used by:108 | |
Symbol 105 Text | Uses:90 | Used by:108 |
Symbol 106 Graphic | Used by:108 | |
Symbol 107 Text | Uses:90 | Used by:108 |
Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} | Uses:89 91 93 95 96 97 99 101 102 103 104 105 106 107 | Used by:109 |
Symbol 109 MovieClip {CGame} | Uses:52 54 56 57 66 78 82 84 86 88 108 | Used by:690 |
Symbol 110 Bitmap | Used by:111 | |
Symbol 111 Graphic | Uses:110 | Used by:134 |
Symbol 112 Bitmap | Used by:113 | |
Symbol 113 Graphic | Uses:112 | Used by:134 |
Symbol 114 Bitmap | Used by:115 | |
Symbol 115 Graphic | Uses:114 | Used by:134 |
Symbol 116 Bitmap | Used by:117 | |
Symbol 117 Graphic | Uses:116 | Used by:134 |
Symbol 118 Bitmap | Used by:119 | |
Symbol 119 Graphic | Uses:118 | Used by:134 |
Symbol 120 Bitmap | Used by:121 | |
Symbol 121 Graphic | Uses:120 | Used by:134 |
Symbol 122 Bitmap | Used by:123 | |
Symbol 123 Graphic | Uses:122 | Used by:134 |
Symbol 124 Bitmap | Used by:125 | |
Symbol 125 Graphic | Uses:124 | Used by:134 |
Symbol 126 Bitmap | Used by:127 | |
Symbol 127 Graphic | Uses:126 | Used by:134 |
Symbol 128 Bitmap | Used by:129 | |
Symbol 129 Graphic | Uses:128 | Used by:134 |
Symbol 130 Bitmap | Used by:131 | |
Symbol 131 Graphic | Uses:130 | Used by:134 |
Symbol 132 Bitmap | Used by:133 | |
Symbol 133 Graphic | Uses:132 | Used by:134 |
Symbol 134 MovieClip {apple_defender_fla.beggar_26} | Uses:111 113 115 117 119 121 123 125 127 129 131 133 | Used by:181 637 |
Symbol 135 Bitmap | Used by:136 | |
Symbol 136 Graphic | Uses:135 | Used by:157 |
Symbol 137 Bitmap | Used by:138 | |
Symbol 138 Graphic | Uses:137 | Used by:157 |
Symbol 139 Bitmap | Used by:140 | |
Symbol 140 Graphic | Uses:139 | Used by:157 |
Symbol 141 Bitmap | Used by:142 | |
Symbol 142 Graphic | Uses:141 | Used by:157 |
Symbol 143 Bitmap | Used by:144 | |
Symbol 144 Graphic | Uses:143 | Used by:157 |
Symbol 145 Bitmap | Used by:146 | |
Symbol 146 Graphic | Uses:145 | Used by:157 |
Symbol 147 Bitmap | Used by:148 | |
Symbol 148 Graphic | Uses:147 | Used by:157 |
Symbol 149 Bitmap | Used by:150 | |
Symbol 150 Graphic | Uses:149 | Used by:157 |
Symbol 151 Bitmap | Used by:152 | |
Symbol 152 Graphic | Uses:151 | Used by:157 |
Symbol 153 Bitmap | Used by:154 | |
Symbol 154 Graphic | Uses:153 | Used by:157 |
Symbol 155 Bitmap | Used by:156 | |
Symbol 156 Graphic | Uses:155 | Used by:157 |
Symbol 157 MovieClip {apple_defender_fla.knight_27} | Uses:136 138 140 142 144 146 148 150 152 154 156 | Used by:181 |
Symbol 158 Bitmap | Used by:159 | |
Symbol 159 Graphic | Uses:158 | Used by:180 |
Symbol 160 Bitmap | Used by:161 | |
Symbol 161 Graphic | Uses:160 | Used by:180 |
Symbol 162 Bitmap | Used by:163 | |
Symbol 163 Graphic | Uses:162 | Used by:180 |
Symbol 164 Bitmap | Used by:165 | |
Symbol 165 Graphic | Uses:164 | Used by:180 |
Symbol 166 Bitmap | Used by:167 | |
Symbol 167 Graphic | Uses:166 | Used by:180 |
Symbol 168 Bitmap | Used by:169 | |
Symbol 169 Graphic | Uses:168 | Used by:180 |
Symbol 170 Bitmap | Used by:171 | |
Symbol 171 Graphic | Uses:170 | Used by:180 |
Symbol 172 Bitmap | Used by:173 | |
Symbol 173 Graphic | Uses:172 | Used by:180 |
Symbol 174 Bitmap | Used by:175 | |
Symbol 175 Graphic | Uses:174 | Used by:180 |
Symbol 176 Bitmap | Used by:177 | |
Symbol 177 Graphic | Uses:176 | Used by:180 |
Symbol 178 Bitmap | Used by:179 | |
Symbol 179 Graphic | Uses:178 | Used by:180 |
Symbol 180 MovieClip {apple_defender_fla.boss_28} | Uses:159 161 163 165 167 169 171 173 175 177 179 | Used by:181 |
Symbol 181 MovieClip {Enemies} | Uses:134 157 180 | Used by:690 |
Symbol 182 Graphic | Uses:67 | Used by:183 191 |
Symbol 183 MovieClip | Uses:182 | Used by:187 637 |
Symbol 184 Bitmap | Used by:185 617 619 628 | |
Symbol 185 Graphic | Uses:184 | Used by:186 |
Symbol 186 MovieClip | Uses:185 | Used by:187 637 |
Symbol 187 MovieClip {PohonApel} | Uses:183 186 | Used by:637 690 |
Symbol 188 Graphic | Used by:189 | |
Symbol 189 MovieClip | Uses:188 | Used by:190 239 637 644 656 681 |
Symbol 190 MovieClip {HPBar} | Uses:189 56 | Used by:690 |
Symbol 191 MovieClip | Uses:182 56 | Used by:454 |
Symbol 192 Bitmap | Used by:193 | |
Symbol 193 Graphic | Uses:192 | Used by:194 |
Symbol 194 MovieClip | Uses:193 | Used by:199 |
Symbol 195 Bitmap | Used by:197 | |
Symbol 196 Bitmap | Used by:197 | |
Symbol 197 Graphic | Uses:195 196 | Used by:198 |
Symbol 198 MovieClip | Uses:197 | Used by:199 |
Symbol 199 MovieClip {apple_defender_fla.handgun_37} | Uses:194 198 | Used by:200 495 637 |
Symbol 200 MovieClip {apple_defender_fla.Btnhandgun_36} | Uses:199 56 | Used by:454 |
Symbol 201 Bitmap | Used by:202 | |
Symbol 202 Graphic | Uses:201 | Used by:207 |
Symbol 203 Bitmap | Used by:205 | |
Symbol 204 Bitmap | Used by:205 | |
Symbol 205 Graphic | Uses:203 204 | Used by:206 |
Symbol 206 MovieClip | Uses:205 | Used by:207 |
Symbol 207 MovieClip {apple_defender_fla.smg_41} | Uses:202 206 | Used by:208 495 637 |
Symbol 208 MovieClip | Uses:207 56 | Used by:454 |
Symbol 209 Bitmap | Used by:210 | |
Symbol 210 Graphic | Uses:209 | Used by:215 |
Symbol 211 Bitmap | Used by:213 | |
Symbol 212 Bitmap | Used by:213 | |
Symbol 213 Graphic | Uses:211 212 | Used by:214 |
Symbol 214 MovieClip | Uses:213 | Used by:215 |
Symbol 215 MovieClip {apple_defender_fla.MachineGun_44} | Uses:210 214 | Used by:216 495 637 |
Symbol 216 MovieClip | Uses:215 56 | Used by:454 |
Symbol 217 Bitmap | Used by:218 | |
Symbol 218 Graphic | Uses:217 | Used by:223 |
Symbol 219 Bitmap | Used by:221 | |
Symbol 220 Bitmap | Used by:221 | |
Symbol 221 Graphic | Uses:219 220 | Used by:222 |
Symbol 222 MovieClip | Uses:221 | Used by:223 |
Symbol 223 MovieClip {apple_defender_fla.gatling_47} | Uses:218 222 | Used by:224 495 637 |
Symbol 224 MovieClip | Uses:223 56 | Used by:454 |
Symbol 225 Bitmap | Used by:226 | |
Symbol 226 Graphic | Uses:225 | Used by:231 |
Symbol 227 Bitmap | Used by:229 | |
Symbol 228 Bitmap | Used by:229 | |
Symbol 229 Graphic | Uses:227 228 | Used by:230 |
Symbol 230 MovieClip | Uses:229 | Used by:231 |
Symbol 231 MovieClip {apple_defender_fla.Sniper_50} | Uses:226 230 | Used by:232 495 |
Symbol 232 MovieClip | Uses:231 56 | Used by:454 |
Symbol 233 Bitmap | Used by:234 | |
Symbol 234 Graphic | Uses:233 | Used by:235 |
Symbol 235 MovieClip {apple_defender_fla.Grow_53} | Uses:234 56 | Used by:236 495 |
Symbol 236 MovieClip | Uses:235 56 | Used by:454 |
Symbol 237 Bitmap | Used by:238 | |
Symbol 238 Graphic | Uses:237 | Used by:239 |
Symbol 239 MovieClip {apple_defender_fla.SuperGrowth_55} | Uses:238 189 | Used by:240 495 |
Symbol 240 MovieClip | Uses:239 56 | Used by:454 |
Symbol 241 Bitmap | Used by:242 | |
Symbol 242 Graphic | Uses:241 | Used by:243 |
Symbol 243 MovieClip {apple_defender_fla.Repair_57} | Uses:242 56 | Used by:244 495 |
Symbol 244 MovieClip {apple_defender_fla.Btnrepair1_56} | Uses:243 56 | Used by:454 |
Symbol 245 Bitmap | Used by:246 | |
Symbol 246 Graphic | Uses:245 | Used by:247 |
Symbol 247 MovieClip | Uses:246 | Used by:248 495 |
Symbol 248 MovieClip | Uses:247 56 | Used by:454 |
Symbol 249 Bitmap | Used by:250 | |
Symbol 250 Graphic | Uses:249 | Used by:251 |
Symbol 251 MovieClip | Uses:250 | Used by:252 495 |
Symbol 252 MovieClip | Uses:251 56 | Used by:454 |
Symbol 253 Bitmap | Used by:254 | |
Symbol 254 Graphic | Uses:253 | Used by:255 457 |
Symbol 255 MovieClip | Uses:254 56 | Used by:454 |
Symbol 256 Bitmap | Used by:257 | |
Symbol 257 Graphic | Uses:256 | Used by:258 460 |
Symbol 258 MovieClip | Uses:257 56 | Used by:454 |
Symbol 259 Bitmap | Used by:260 | |
Symbol 260 Graphic | Uses:259 | Used by:261 463 |
Symbol 261 MovieClip | Uses:260 56 | Used by:454 |
Symbol 262 Bitmap | Used by:263 464 | |
Symbol 263 Graphic | Uses:262 | Used by:264 |
Symbol 264 MovieClip | Uses:263 56 | Used by:454 |
Symbol 265 Bitmap | Used by:266 468 | |
Symbol 266 Graphic | Uses:265 | Used by:267 |
Symbol 267 MovieClip | Uses:266 56 | Used by:454 |
Symbol 268 Bitmap | Used by:269 472 | |
Symbol 269 Graphic | Uses:268 | Used by:270 |
Symbol 270 MovieClip | Uses:269 56 | Used by:454 |
Symbol 271 Bitmap | Used by:272 476 | |
Symbol 272 Graphic | Uses:271 | Used by:273 |
Symbol 273 MovieClip | Uses:272 56 | Used by:454 |
Symbol 274 Bitmap | Used by:275 484 | |
Symbol 275 Graphic | Uses:274 | Used by:276 |
Symbol 276 MovieClip | Uses:275 56 | Used by:454 |
Symbol 277 Bitmap | Used by:278 488 | |
Symbol 278 Graphic | Uses:277 | Used by:279 |
Symbol 279 MovieClip | Uses:278 56 | Used by:454 |
Symbol 280 Bitmap | Used by:281 | |
Symbol 281 Graphic | Uses:280 | Used by:285 |
Symbol 282 Bitmap | Used by:283 | |
Symbol 283 Graphic | Uses:282 | Used by:284 |
Symbol 284 MovieClip | Uses:283 | Used by:285 |
Symbol 285 MovieClip {apple_defender_fla.GrenadeLauncher_72} | Uses:281 284 | Used by:286 495 637 |
Symbol 286 MovieClip | Uses:285 56 | Used by:454 |
Symbol 287 Bitmap | Used by:288 492 | |
Symbol 288 Graphic | Uses:287 | Used by:289 |
Symbol 289 MovieClip | Uses:288 56 | Used by:454 |
Symbol 290 Bitmap | Used by:291 | |
Symbol 291 Graphic | Uses:290 | Used by:296 |
Symbol 292 Bitmap | Used by:294 | |
Symbol 293 Bitmap | Used by:294 | |
Symbol 294 Graphic | Uses:292 293 | Used by:295 |
Symbol 295 MovieClip | Uses:294 | Used by:296 |
Symbol 296 MovieClip {apple_defender_fla.flamethrower_76} | Uses:291 295 | Used by:297 495 |
Symbol 297 MovieClip | Uses:296 56 | Used by:454 |
Symbol 298 Bitmap | Used by:299 | |
Symbol 299 Graphic | Uses:298 | Used by:303 |
Symbol 300 Bitmap | Used by:301 | |
Symbol 301 Graphic | Uses:300 | Used by:302 |
Symbol 302 MovieClip | Uses:301 | Used by:303 |
Symbol 303 MovieClip {apple_defender_fla.FireCatapult_79} | Uses:299 302 | Used by:304 495 |
Symbol 304 MovieClip | Uses:303 56 | Used by:454 |
Symbol 305 Bitmap | Used by:306 | |
Symbol 306 Graphic | Uses:305 | Used by:311 |
Symbol 307 Bitmap | Used by:309 | |
Symbol 308 Bitmap | Used by:309 | |
Symbol 309 Graphic | Uses:307 308 | Used by:310 |
Symbol 310 MovieClip | Uses:309 | Used by:311 |
Symbol 311 MovieClip {apple_defender_fla.CutLaser_82} | Uses:306 310 | Used by:312 495 |
Symbol 312 MovieClip | Uses:311 56 | Used by:454 |
Symbol 313 Bitmap | Used by:314 | |
Symbol 314 Graphic | Uses:313 | Used by:319 |
Symbol 315 Bitmap | Used by:317 | |
Symbol 316 Bitmap | Used by:317 | |
Symbol 317 Graphic | Uses:315 316 | Used by:318 |
Symbol 318 MovieClip | Uses:317 | Used by:319 |
Symbol 319 MovieClip | Uses:314 318 | Used by:320 495 |
Symbol 320 MovieClip | Uses:319 56 | Used by:454 |
Symbol 321 Bitmap | Used by:322 | |
Symbol 322 Graphic | Uses:321 | Used by:326 |
Symbol 323 Bitmap | Used by:324 | |
Symbol 324 Graphic | Uses:323 | Used by:325 |
Symbol 325 MovieClip | Uses:324 | Used by:326 |
Symbol 326 MovieClip {apple_defender_fla.rocketlauncher_88} | Uses:322 325 | Used by:327 495 |
Symbol 327 MovieClip | Uses:326 56 | Used by:454 |
Symbol 328 Bitmap | Used by:330 | |
Symbol 329 Bitmap | Used by:330 | |
Symbol 330 Graphic | Uses:328 329 | Used by:331 |
Symbol 331 MovieClip | Uses:330 | Used by:332 |
Symbol 332 MovieClip {apple_defender_fla.tomahawklauncher_91} | Uses:331 | Used by:333 495 |
Symbol 333 MovieClip | Uses:332 56 | Used by:454 |
Symbol 334 Bitmap | Used by:335 | |
Symbol 335 Graphic | Uses:334 | Used by:339 |
Symbol 336 Bitmap | Used by:337 | |
Symbol 337 Graphic | Uses:336 | Used by:338 |
Symbol 338 MovieClip | Uses:337 | Used by:339 |
Symbol 339 MovieClip {apple_defender_fla.longrangemissile_94} | Uses:335 338 | Used by:340 495 637 |
Symbol 340 MovieClip | Uses:339 56 | Used by:454 |
Symbol 341 Bitmap | Used by:342 | |
Symbol 342 Graphic | Uses:341 | Used by:346 |
Symbol 343 Bitmap | Used by:344 | |
Symbol 344 Graphic | Uses:343 | Used by:345 |
Symbol 345 MovieClip | Uses:344 | Used by:346 |
Symbol 346 MovieClip {apple_defender_fla.Antrax_97} | Uses:342 345 | Used by:347 495 |
Symbol 347 MovieClip | Uses:346 56 | Used by:454 |
Symbol 348 Bitmap | Used by:349 | |
Symbol 349 Graphic | Uses:348 | Used by:354 |
Symbol 350 Bitmap | Used by:352 | |
Symbol 351 Bitmap | Used by:352 | |
Symbol 352 Graphic | Uses:350 351 | Used by:353 |
Symbol 353 MovieClip | Uses:352 | Used by:354 |
Symbol 354 MovieClip {apple_defender_fla.ChainLightning_100} | Uses:349 353 | Used by:355 495 |
Symbol 355 MovieClip | Uses:354 56 | Used by:454 |
Symbol 356 Bitmap | Used by:357 | |
Symbol 357 Graphic | Uses:356 | Used by:362 |
Symbol 358 Bitmap | Used by:360 | |
Symbol 359 Bitmap | Used by:360 | |
Symbol 360 Graphic | Uses:358 359 | Used by:361 |
Symbol 361 MovieClip | Uses:360 | Used by:362 |
Symbol 362 MovieClip {apple_defender_fla.rocketshogun_103} | Uses:357 361 | Used by:363 495 |
Symbol 363 MovieClip | Uses:362 56 | Used by:454 |
Symbol 364 Bitmap | Used by:365 | |
Symbol 365 Graphic | Uses:364 | Used by:370 |
Symbol 366 Bitmap | Used by:368 | |
Symbol 367 Bitmap | Used by:368 | |
Symbol 368 Graphic | Uses:366 367 | Used by:369 |
Symbol 369 MovieClip | Uses:368 | Used by:370 |
Symbol 370 MovieClip {apple_defender_fla.Shotgun_106} | Uses:365 369 | Used by:371 495 |
Symbol 371 MovieClip | Uses:370 56 | Used by:454 |
Symbol 372 Bitmap | Used by:373 | |
Symbol 373 Graphic | Uses:372 | Used by:377 |
Symbol 374 Bitmap | Used by:375 | |
Symbol 375 Graphic | Uses:374 | Used by:376 |
Symbol 376 MovieClip | Uses:375 | Used by:377 |
Symbol 377 MovieClip {apple_defender_fla.catapult_109} | Uses:373 376 | Used by:378 495 |
Symbol 378 MovieClip | Uses:377 56 | Used by:454 |
Symbol 379 Bitmap | Used by:380 | |
Symbol 380 Graphic | Uses:379 | Used by:384 |
Symbol 381 Bitmap | Used by:382 | |
Symbol 382 Graphic | Uses:381 | Used by:383 |
Symbol 383 MovieClip | Uses:382 | Used by:384 |
Symbol 384 MovieClip {apple_defender_fla.MassiveCatapult_112} | Uses:380 383 | Used by:385 495 |
Symbol 385 MovieClip | Uses:384 56 | Used by:454 |
Symbol 386 Bitmap | Used by:387 | |
Symbol 387 Graphic | Uses:386 | Used by:392 |
Symbol 388 Bitmap | Used by:390 | |
Symbol 389 Bitmap | Used by:390 | |
Symbol 390 Graphic | Uses:388 389 | Used by:391 |
Symbol 391 MovieClip | Uses:390 | Used by:392 |
Symbol 392 MovieClip {apple_defender_fla.SplitShuriken_115} | Uses:387 391 | Used by:393 495 |
Symbol 393 MovieClip | Uses:392 56 | Used by:454 |
Symbol 394 Bitmap | Used by:396 | |
Symbol 395 Bitmap | Used by:396 | |
Symbol 396 Graphic | Uses:394 395 | Used by:400 |
Symbol 397 Bitmap | Used by:398 | |
Symbol 398 Graphic | Uses:397 | Used by:399 |
Symbol 399 MovieClip | Uses:398 | Used by:400 |
Symbol 400 MovieClip {apple_defender_fla.FrozeTurret_118} | Uses:396 399 | Used by:401 495 |
Symbol 401 MovieClip | Uses:400 56 | Used by:454 |
Symbol 402 Bitmap | Used by:403 | |
Symbol 403 Graphic | Uses:402 | Used by:404 |
Symbol 404 MovieClip | Uses:403 | Used by:405 495 |
Symbol 405 MovieClip | Uses:404 56 | Used by:454 |
Symbol 406 Bitmap | Used by:407 | |
Symbol 407 Graphic | Uses:406 | Used by:408 |
Symbol 408 MovieClip | Uses:407 | Used by:409 495 |
Symbol 409 MovieClip | Uses:408 56 | Used by:454 |
Symbol 410 Bitmap | Used by:411 | |
Symbol 411 Graphic | Uses:410 | Used by:412 |
Symbol 412 MovieClip | Uses:411 | Used by:413 495 |
Symbol 413 MovieClip | Uses:412 56 | Used by:454 |
Symbol 414 Bitmap | Used by:415 | |
Symbol 415 Graphic | Uses:414 | Used by:416 |
Symbol 416 MovieClip | Uses:415 | Used by:417 495 |
Symbol 417 MovieClip | Uses:416 56 | Used by:454 |
Symbol 418 Bitmap | Used by:419 | |
Symbol 419 Graphic | Uses:418 | Used by:423 |
Symbol 420 Bitmap | Used by:421 | |
Symbol 421 Graphic | Uses:420 | Used by:422 |
Symbol 422 MovieClip | Uses:421 | Used by:423 |
Symbol 423 MovieClip {apple_defender_fla.ClusterBomb_129} | Uses:419 422 | Used by:424 495 |
Symbol 424 MovieClip | Uses:423 56 | Used by:454 |
Symbol 425 Bitmap | Used by:426 | |
Symbol 426 Graphic | Uses:425 | Used by:430 |
Symbol 427 Bitmap | Used by:428 | |
Symbol 428 Graphic | Uses:427 | Used by:429 |
Symbol 429 MovieClip | Uses:428 | Used by:430 |
Symbol 430 MovieClip {apple_defender_fla.snowlauncher_132} | Uses:426 429 | Used by:431 495 |
Symbol 431 MovieClip | Uses:430 56 | Used by:454 |
Symbol 432 Bitmap | Used by:435 | |
Symbol 433 Bitmap | Used by:435 | |
Symbol 434 Bitmap | Used by:435 | |
Symbol 435 Graphic | Uses:432 433 434 | Used by:436 |
Symbol 436 MovieClip | Uses:435 | Used by:437 |
Symbol 437 MovieClip {apple_defender_fla.blizzard_135} | Uses:436 | Used by:438 495 |
Symbol 438 MovieClip | Uses:437 56 | Used by:454 |
Symbol 439 Bitmap | Used by:442 | |
Symbol 440 Bitmap | Used by:442 | |
Symbol 441 Bitmap | Used by:442 | |
Symbol 442 Graphic | Uses:439 440 441 | Used by:443 |
Symbol 443 MovieClip | Uses:442 | Used by:444 |
Symbol 444 MovieClip {apple_defender_fla.bladegun_138} | Uses:443 | Used by:445 495 |
Symbol 445 MovieClip | Uses:444 56 | Used by:454 |
Symbol 446 Bitmap | Used by:447 | |
Symbol 447 Graphic | Uses:446 | Used by:452 |
Symbol 448 Bitmap | Used by:450 | |
Symbol 449 Bitmap | Used by:450 | |
Symbol 450 Graphic | Uses:448 449 | Used by:451 |
Symbol 451 MovieClip | Uses:450 | Used by:452 |
Symbol 452 MovieClip {apple_defender_fla.snrgun_141} | Uses:447 451 | Used by:453 495 |
Symbol 453 MovieClip | Uses:452 56 | Used by:454 |
Symbol 454 MovieClip {Buttons} | Uses:191 200 208 216 224 232 236 240 244 248 252 255 258 261 264 267 270 273 276 279 286 289 297 304 312 320 327 333 340 347 355 363 371 378 385 393 401 405 409 413 417 424 431 438 445 453 | Used by:690 |
Symbol 455 Bitmap | Used by:456 | |
Symbol 456 Graphic | Uses:455 | Used by:457 |
Symbol 457 MovieClip {apple_defender_fla.woodwall_144} | Uses:254 456 | Used by:495 |
Symbol 458 Bitmap | Used by:459 | |
Symbol 459 Graphic | Uses:458 | Used by:460 |
Symbol 460 MovieClip | Uses:257 459 | Used by:495 |
Symbol 461 Bitmap | Used by:462 | |
Symbol 462 Graphic | Uses:461 | Used by:463 |
Symbol 463 MovieClip | Uses:260 462 | Used by:495 |
Symbol 464 Graphic | Uses:262 | Used by:467 |
Symbol 465 Bitmap | Used by:466 | |
Symbol 466 Graphic | Uses:465 | Used by:467 |
Symbol 467 MovieClip | Uses:464 466 | Used by:495 |
Symbol 468 Graphic | Uses:265 | Used by:471 |
Symbol 469 Bitmap | Used by:470 | |
Symbol 470 Graphic | Uses:469 | Used by:471 |
Symbol 471 MovieClip | Uses:468 470 | Used by:495 |
Symbol 472 Graphic | Uses:268 | Used by:475 |
Symbol 473 Bitmap | Used by:474 | |
Symbol 474 Graphic | Uses:473 | Used by:475 |
Symbol 475 MovieClip | Uses:472 474 | Used by:495 |
Symbol 476 Graphic | Uses:271 | Used by:483 |
Symbol 477 Bitmap | Used by:478 | |
Symbol 478 Graphic | Uses:477 | Used by:479 |
Symbol 479 MovieClip | Uses:478 | Used by:480 537 |
Symbol 480 MovieClip {apple_defender_fla.poison_151} | Uses:479 | Used by:483 586 |
Symbol 481 Bitmap | Used by:482 | |
Symbol 482 Graphic | Uses:481 | Used by:483 |
Symbol 483 MovieClip | Uses:476 480 482 | Used by:495 |
Symbol 484 Graphic | Uses:274 | Used by:487 |
Symbol 485 Bitmap | Used by:486 | |
Symbol 486 Graphic | Uses:485 | Used by:487 |
Symbol 487 MovieClip | Uses:484 486 | Used by:495 |
Symbol 488 Graphic | Uses:277 | Used by:489 |
Symbol 489 MovieClip | Uses:488 | Used by:495 |
Symbol 490 Bitmap | Used by:491 | |
Symbol 491 Graphic | Uses:490 | Used by:494 |
Symbol 492 Graphic | Uses:287 | Used by:493 |
Symbol 493 MovieClip | Uses:492 | Used by:494 |
Symbol 494 MovieClip {apple_defender_fla.FireballLauncher_155} | Uses:491 493 | Used by:495 |
Symbol 495 MovieClip {Turrets} | Uses:199 207 231 223 215 235 239 243 247 251 457 460 463 467 471 475 483 487 489 285 494 296 303 311 319 326 332 339 346 354 362 370 377 384 392 400 404 408 412 416 423 430 437 444 452 | Used by:690 |
Symbol 496 Bitmap | Used by:497 | |
Symbol 497 Graphic | Uses:496 | Used by:498 |
Symbol 498 MovieClip | Uses:497 | Used by:571 |
Symbol 499 Graphic | Used by:500 | |
Symbol 500 MovieClip | Uses:499 | Used by:571 |
Symbol 501 Graphic | Used by:502 | |
Symbol 502 MovieClip | Uses:501 | Used by:571 |
Symbol 503 Bitmap | Used by:504 | |
Symbol 504 Graphic | Uses:503 | Used by:509 |
Symbol 505 Bitmap | Used by:506 | |
Symbol 506 Graphic | Uses:505 | Used by:509 |
Symbol 507 Bitmap | Used by:508 | |
Symbol 508 Graphic | Uses:507 | Used by:509 |
Symbol 509 MovieClip | Uses:504 506 508 | Used by:571 586 |
Symbol 510 Bitmap | Used by:511 | |
Symbol 511 Graphic | Uses:510 | Used by:512 |
Symbol 512 MovieClip | Uses:511 | Used by:513 |
Symbol 513 MovieClip | Uses:512 | Used by:571 |
Symbol 514 Bitmap | Used by:515 | |
Symbol 515 Graphic | Uses:514 | Used by:518 |
Symbol 516 Bitmap | Used by:517 | |
Symbol 517 Graphic | Uses:516 | Used by:518 |
Symbol 518 MovieClip | Uses:515 517 | Used by:519 571 |
Symbol 519 MovieClip {apple_defender_fla.flame_165} | Uses:518 | Used by:571 |
Symbol 520 Bitmap | Used by:521 | |
Symbol 521 Graphic | Uses:520 | Used by:522 |
Symbol 522 MovieClip | Uses:521 | Used by:571 |
Symbol 523 Bitmap | Used by:524 | |
Symbol 524 Graphic | Uses:523 | Used by:527 |
Symbol 525 Bitmap | Used by:526 | |
Symbol 526 Graphic | Uses:525 | Used by:527 |
Symbol 527 MovieClip | Uses:524 526 | Used by:571 |
Symbol 528 Bitmap | Used by:529 | |
Symbol 529 Graphic | Uses:528 | Used by:530 |
Symbol 530 MovieClip | Uses:529 | Used by:571 |
Symbol 531 Bitmap | Used by:532 | |
Symbol 532 Graphic | Uses:531 | Used by:533 |
Symbol 533 MovieClip | Uses:532 | Used by:571 |
Symbol 534 Bitmap | Used by:535 | |
Symbol 535 Graphic | Uses:534 | Used by:536 |
Symbol 536 MovieClip | Uses:535 | Used by:571 |
Symbol 537 MovieClip {apple_defender_fla.poison_171} | Uses:479 | Used by:571 |
Symbol 538 Bitmap | Used by:539 | |
Symbol 539 Graphic | Uses:538 | Used by:542 |
Symbol 540 Bitmap | Used by:541 | |
Symbol 541 Graphic | Uses:540 | Used by:542 |
Symbol 542 MovieClip | Uses:539 541 | Used by:571 |
Symbol 543 Bitmap | Used by:544 | |
Symbol 544 Graphic | Uses:543 | Used by:545 |
Symbol 545 MovieClip | Uses:544 | Used by:571 |
Symbol 546 Bitmap | Used by:547 | |
Symbol 547 Graphic | Uses:546 | Used by:548 |
Symbol 548 MovieClip | Uses:547 | Used by:571 |
Symbol 549 Bitmap | Used by:550 | |
Symbol 550 Graphic | Uses:549 | Used by:551 |
Symbol 551 MovieClip | Uses:550 | Used by:571 |
Symbol 552 Bitmap | Used by:553 | |
Symbol 553 Graphic | Uses:552 | Used by:554 |
Symbol 554 MovieClip | Uses:553 | Used by:571 |
Symbol 555 Bitmap | Used by:556 | |
Symbol 556 Graphic | Uses:555 | Used by:559 |
Symbol 557 Bitmap | Used by:558 | |
Symbol 558 Graphic | Uses:557 | Used by:559 |
Symbol 559 MovieClip {apple_defender_fla.Snow_177} | Uses:556 558 | Used by:571 |
Symbol 560 Bitmap | Used by:561 | |
Symbol 561 Graphic | Uses:560 | Used by:564 |
Symbol 562 Bitmap | Used by:563 | |
Symbol 563 Graphic | Uses:562 | Used by:564 |
Symbol 564 MovieClip {apple_defender_fla.ice_178} | Uses:561 563 | Used by:571 |
Symbol 565 Bitmap | Used by:566 | |
Symbol 566 Graphic | Uses:565 | Used by:567 |
Symbol 567 MovieClip | Uses:566 | Used by:571 |
Symbol 568 Bitmap | Used by:569 | |
Symbol 569 Graphic | Uses:568 | Used by:570 |
Symbol 570 MovieClip | Uses:569 | Used by:571 |
Symbol 571 MovieClip {Bullets} | Uses:498 500 502 509 513 518 519 522 527 530 533 536 537 542 545 548 551 554 559 564 567 570 | Used by:690 |
Symbol 572 Bitmap | Used by:573 | |
Symbol 573 Graphic | Uses:572 | Used by:582 |
Symbol 574 Bitmap | Used by:575 | |
Symbol 575 Graphic | Uses:574 | Used by:582 |
Symbol 576 Bitmap | Used by:577 | |
Symbol 577 Graphic | Uses:576 | Used by:582 |
Symbol 578 Bitmap | Used by:579 | |
Symbol 579 Graphic | Uses:578 | Used by:582 |
Symbol 580 Bitmap | Used by:581 | |
Symbol 581 Graphic | Uses:580 | Used by:582 |
Symbol 582 MovieClip | Uses:573 575 577 579 581 | Used by:586 |
Symbol 583 Bitmap | Used by:584 | |
Symbol 584 Graphic | Uses:583 | Used by:585 |
Symbol 585 MovieClip | Uses:584 | Used by:586 |
Symbol 586 MovieClip {Particles} | Uses:480 509 582 585 | Used by:690 |
Symbol 587 Bitmap | Used by:588 | |
Symbol 588 Graphic | Uses:587 | Used by:597 |
Symbol 589 EditableText | Uses:62 | Used by:597 |
Symbol 590 EditableText | Uses:62 | Used by:597 |
Symbol 591 Bitmap | Used by:592 | |
Symbol 592 Graphic | Uses:591 | Used by:593 |
Symbol 593 Button | Uses:592 | Used by:597 |
Symbol 594 Bitmap | Used by:595 | |
Symbol 595 Graphic | Uses:594 | Used by:596 |
Symbol 596 Button | Uses:595 | Used by:597 |
Symbol 597 MovieClip {CDialogCongrats} | Uses:588 589 590 593 596 | Used by:690 |
Symbol 598 Graphic | Used by:604 607 611 636 | |
Symbol 599 Graphic | Used by:604 607 611 636 | |
Symbol 600 Graphic | Used by:604 607 611 636 | |
Symbol 601 Graphic | Used by:604 | |
Symbol 602 Graphic | Used by:604 | |
Symbol 603 Graphic | Used by:604 607 611 636 | |
Symbol 604 Button | Uses:598 599 600 601 602 603 | Used by:637 |
Symbol 605 Graphic | Used by:607 | |
Symbol 606 Graphic | Used by:607 | |
Symbol 607 Button | Uses:598 599 600 605 606 603 | Used by:637 |
Symbol 608 Text | Uses:83 | Used by:611 |
Symbol 609 Graphic | Used by:611 636 | |
Symbol 610 Graphic | Used by:611 636 | |
Symbol 611 Button | Uses:598 599 608 600 609 610 603 | Used by:637 656 681 |
Symbol 612 Font | Used by:613 638 639 641 642 | |
Symbol 613 EditableText | Uses:83 612 | Used by:637 |
Symbol 614 Graphic | Used by:637 | |
Symbol 615 Text | Uses:83 | Used by:637 |
Symbol 616 Text | Uses:83 | Used by:637 |
Symbol 617 Graphic | Uses:184 | Used by:637 |
Symbol 618 Text | Uses:83 | Used by:637 |
Symbol 619 Graphic | Uses:184 | Used by:637 |
Symbol 620 Text | Uses:83 | Used by:637 |
Symbol 621 Graphic | Uses:51 | Used by:637 |
Symbol 622 Text | Uses:83 | Used by:637 |
Symbol 623 Text | Uses:45 | Used by:637 |
Symbol 624 Text | Uses:45 | Used by:637 |
Symbol 625 Graphic | Used by:637 | |
Symbol 626 Text | Uses:83 | Used by:637 |
Symbol 627 Text | Uses:83 | Used by:637 |
Symbol 628 Graphic | Uses:184 | Used by:637 |
Symbol 629 Text | Uses:83 | Used by:637 |
Symbol 630 Text | Uses:83 | Used by:637 |
Symbol 631 Text | Uses:83 | Used by:637 |
Symbol 632 Graphic | Uses:51 | Used by:637 |
Symbol 633 Graphic | Used by:637 | |
Symbol 634 Graphic | Used by:636 | |
Symbol 635 Text | Uses:83 | Used by:636 |
Symbol 636 Button | Uses:634 598 599 635 600 609 610 603 | Used by:637 |
Symbol 637 MovieClip {HowToPlay} | Uses:189 604 607 611 613 614 615 616 183 617 186 618 134 619 620 199 339 621 60 622 285 223 623 624 625 626 627 628 82 629 187 630 631 632 207 215 54 633 636 | Used by:690 |
Symbol 638 EditableText | Uses:612 | Used by:644 |
Symbol 639 Text | Uses:612 | Used by:640 |
Symbol 640 Button | Uses:639 | Used by:644 |
Symbol 641 Text | Uses:612 | Used by:643 |
Symbol 642 Text | Uses:612 | Used by:643 |
Symbol 643 Button | Uses:641 642 | Used by:644 |
Symbol 644 MovieClip {CDialogPause} | Uses:189 638 640 643 | Used by:690 |
Symbol 645 Text | Uses:83 | Used by:656 |
Symbol 646 Text | Uses:83 | Used by:656 |
Symbol 647 Bitmap | Used by:648 | |
Symbol 648 Graphic | Uses:647 | Used by:651 |
Symbol 649 Font | Used by:650 | |
Symbol 650 Text | Uses:649 | Used by:651 |
Symbol 651 Button | Uses:648 650 | Used by:656 |
Symbol 652 Text | Uses:83 | Used by:656 |
Symbol 653 Graphic | Used by:655 | |
Symbol 654 Text | Uses:83 | Used by:655 |
Symbol 655 Button | Uses:653 654 | Used by:656 |
Symbol 656 MovieClip {Credits} | Uses:189 611 645 646 651 652 655 | Used by:690 |
Symbol 657 Bitmap | Used by:658 | |
Symbol 658 Graphic | Uses:657 | Used by:661 |
Symbol 659 Graphic | Used by:661 667 | |
Symbol 660 Graphic | Used by:661 664 667 | |
Symbol 661 MovieClip {apple_defender_fla.MusicBtn_199} | Uses:658 659 660 | Used by:671 |
Symbol 662 Bitmap | Used by:663 | |
Symbol 663 Graphic | Uses:662 | Used by:664 |
Symbol 664 MovieClip {apple_defender_fla.QualityBtn_200} | Uses:663 660 | Used by:671 |
Symbol 665 Bitmap | Used by:666 | |
Symbol 666 Graphic | Uses:665 | Used by:667 |
Symbol 667 MovieClip {apple_defender_fla.SFXBtn_201} | Uses:666 659 660 | Used by:671 |
Symbol 668 Graphic | Used by:670 | |
Symbol 669 EditableText | Uses:90 | Used by:670 |
Symbol 670 MovieClip {apple_defender_fla.OptionBarPopUp_202} | Uses:668 669 | Used by:671 |
Symbol 671 MovieClip {COptionBar} | Uses:661 664 667 670 | Used by:690 |
Symbol 672 Graphic | Used by:673 | |
Symbol 673 MovieClip | Uses:672 | Used by:674 |
Symbol 674 MovieClip {CArrow} | Uses:673 | Used by:690 |
Symbol 675 Graphic | Used by:677 | |
Symbol 676 EditableText | Uses:45 90 | Used by:677 |
Symbol 677 MovieClip {CBannedWin} | Uses:675 676 | Used by:690 |
Symbol 678 Font | Used by:679 | |
Symbol 679 Text | Uses:678 | Used by:681 |
Symbol 680 Text | Uses:45 | Used by:681 |
Symbol 681 MovieClip {CHSNote} | Uses:189 611 679 680 | Used by:690 |
Symbol 682 Sound {BGM} | Used by:690 | |
Symbol 683 Sound {gunfire} | Used by:690 | |
Symbol 684 Sound {laugh} | Used by:690 | |
Symbol 685 Sound {loser} | Used by:690 | |
Symbol 686 Sound {laser} | Used by:690 | |
Symbol 687 Sound {trumpet} | Used by:690 | |
Symbol 688 Sound {raygun} | Used by:690 | |
Symbol 689 Sound {rocket} | Used by:690 | |
Symbol 690 MovieClip | Uses:50 109 181 187 190 454 495 571 586 597 637 644 656 671 674 677 681 682 683 684 685 686 687 688 689 | Used by:Timeline |
Instance Names
"mHowToPlay" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 16 Button |
"mNewGame" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 21 Button |
"mMore" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 26 Button |
"mCredits" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 31 Button |
"mHS" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 36 Button |
"mGore" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 41 Button |
"mGoreVerTxt" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 44 MovieClip |
"mError" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 46 EditableText |
"mLBLink" | Symbol 50 MovieClip {CMainMenu} Frame 1 | Symbol 49 Button |
"ket2Container" | Symbol 66 MovieClip {CMainPanel} Frame 1 | Symbol 60 MovieClip |
"ket1" | Symbol 66 MovieClip {CMainPanel} Frame 1 | Symbol 63 EditableText |
"ket2" | Symbol 66 MovieClip {CMainPanel} Frame 1 | Symbol 64 EditableText |
"mMessage" | Symbol 66 MovieClip {CMainPanel} Frame 1 | Symbol 65 EditableText |
"mTrees" | Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} Frame 1 | Symbol 70 EditableText |
"mMoney" | Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} Frame 1 | Symbol 71 EditableText |
"mScore" | Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} Frame 1 | Symbol 73 EditableText |
"mLevels" | Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} Frame 1 | Symbol 74 EditableText |
"mText" | Symbol 88 MovieClip {apple_defender_fla.BossTextAnim_19} Frame 2 | Symbol 87 EditableText |
"b1" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 1 | Symbol 93 Button |
"b2" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 1 | Symbol 95 Button |
"b2" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 7 | Symbol 99 Button |
"b1" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 7 | Symbol 101 Button |
"b1" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 19 | Symbol 101 Button |
"mRadar" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 54 MovieClip |
"mLayerTree" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 56 MovieClip |
"mLayerTurret" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 56 MovieClip |
"mLayerWorm" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 56 MovieClip |
"mPanel" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 66 MovieClip {CMainPanel} |
"mStatusBar" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 78 MovieClip {apple_defender_fla.StatusBar_16} |
"mCrosshair" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 82 MovieClip |
"mBossText" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 88 MovieClip {apple_defender_fla.BossTextAnim_19} |
"mTutWin" | Symbol 109 MovieClip {CGame} Frame 1 | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} |
"enemy0" | Symbol 181 MovieClip {Enemies} Frame 1 | Symbol 134 MovieClip {apple_defender_fla.beggar_26} |
"enemy1" | Symbol 181 MovieClip {Enemies} Frame 1 | Symbol 157 MovieClip {apple_defender_fla.knight_27} |
"enemy2" | Symbol 181 MovieClip {Enemies} Frame 1 | Symbol 180 MovieClip {apple_defender_fla.boss_28} |
"pohon" | Symbol 187 MovieClip {PohonApel} Frame 1 | Symbol 183 MovieClip |
"apel" | Symbol 187 MovieClip {PohonApel} Frame 1 | Symbol 186 MovieClip |
"mDasar" | Symbol 199 MovieClip {apple_defender_fla.handgun_37} Frame 1 | Symbol 194 MovieClip |
"mGerak" | Symbol 199 MovieClip {apple_defender_fla.handgun_37} Frame 1 | Symbol 198 MovieClip |
"mA" | Symbol 200 MovieClip {apple_defender_fla.Btnhandgun_36} Frame 1 | Symbol 199 MovieClip {apple_defender_fla.handgun_37} |
"mGerak" | Symbol 207 MovieClip {apple_defender_fla.smg_41} Frame 1 | Symbol 206 MovieClip |
"mGerak" | Symbol 215 MovieClip {apple_defender_fla.MachineGun_44} Frame 1 | Symbol 214 MovieClip |
"mGerak" | Symbol 223 MovieClip {apple_defender_fla.gatling_47} Frame 1 | Symbol 222 MovieClip |
"mGerak" | Symbol 231 MovieClip {apple_defender_fla.Sniper_50} Frame 1 | Symbol 230 MovieClip |
"mGerak" | Symbol 235 MovieClip {apple_defender_fla.Grow_53} Frame 1 | Symbol 56 MovieClip |
"mGerak" | Symbol 239 MovieClip {apple_defender_fla.SuperGrowth_55} Frame 1 | Symbol 189 MovieClip |
"mGerak" | Symbol 243 MovieClip {apple_defender_fla.Repair_57} Frame 1 | Symbol 56 MovieClip |
"mA" | Symbol 244 MovieClip {apple_defender_fla.Btnrepair1_56} Frame 1 | Symbol 243 MovieClip {apple_defender_fla.Repair_57} |
"mGerak" | Symbol 285 MovieClip {apple_defender_fla.GrenadeLauncher_72} Frame 1 | Symbol 284 MovieClip |
"mGerak" | Symbol 296 MovieClip {apple_defender_fla.flamethrower_76} Frame 1 | Symbol 295 MovieClip |
"mGerak" | Symbol 303 MovieClip {apple_defender_fla.FireCatapult_79} Frame 1 | Symbol 302 MovieClip |
"mGerak" | Symbol 311 MovieClip {apple_defender_fla.CutLaser_82} Frame 1 | Symbol 310 MovieClip |
"mGerak" | Symbol 326 MovieClip {apple_defender_fla.rocketlauncher_88} Frame 1 | Symbol 325 MovieClip |
"mGerak" | Symbol 332 MovieClip {apple_defender_fla.tomahawklauncher_91} Frame 1 | Symbol 331 MovieClip |
"mGerak" | Symbol 339 MovieClip {apple_defender_fla.longrangemissile_94} Frame 1 | Symbol 338 MovieClip |
"mGerak" | Symbol 346 MovieClip {apple_defender_fla.Antrax_97} Frame 1 | Symbol 345 MovieClip |
"mGerak" | Symbol 354 MovieClip {apple_defender_fla.ChainLightning_100} Frame 1 | Symbol 353 MovieClip |
"mGerak" | Symbol 362 MovieClip {apple_defender_fla.rocketshogun_103} Frame 1 | Symbol 361 MovieClip |
"mGerak" | Symbol 370 MovieClip {apple_defender_fla.Shotgun_106} Frame 1 | Symbol 369 MovieClip |
"mGerak" | Symbol 377 MovieClip {apple_defender_fla.catapult_109} Frame 1 | Symbol 376 MovieClip |
"mGerak" | Symbol 384 MovieClip {apple_defender_fla.MassiveCatapult_112} Frame 1 | Symbol 383 MovieClip |
"mGerak" | Symbol 392 MovieClip {apple_defender_fla.SplitShuriken_115} Frame 1 | Symbol 391 MovieClip |
"mGerak" | Symbol 400 MovieClip {apple_defender_fla.FrozeTurret_118} Frame 1 | Symbol 399 MovieClip |
"mGerak" | Symbol 423 MovieClip {apple_defender_fla.ClusterBomb_129} Frame 1 | Symbol 422 MovieClip |
"mGerak" | Symbol 430 MovieClip {apple_defender_fla.snowlauncher_132} Frame 1 | Symbol 429 MovieClip |
"mGerak" | Symbol 437 MovieClip {apple_defender_fla.blizzard_135} Frame 1 | Symbol 436 MovieClip |
"mGerak" | Symbol 444 MovieClip {apple_defender_fla.bladegun_138} Frame 1 | Symbol 443 MovieClip |
"mGerak" | Symbol 452 MovieClip {apple_defender_fla.snrgun_141} Frame 1 | Symbol 451 MovieClip |
"pohon" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 191 MovieClip |
"handgun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 200 MovieClip {apple_defender_fla.Btnhandgun_36} |
"smg" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 208 MovieClip |
"sniper" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 216 MovieClip |
"gatling" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 224 MovieClip |
"machinegun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 232 MovieClip |
"grow" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 236 MovieClip |
"supergrowth" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 240 MovieClip |
"repair1" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 244 MovieClip {apple_defender_fla.Btnrepair1_56} |
"repair2" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 248 MovieClip |
"repair3" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 252 MovieClip |
"woodwall" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 255 MovieClip |
"spikewall" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 258 MovieClip |
"titaniumwall" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 261 MovieClip |
"brickwall" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 264 MovieClip |
"boxingfence" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 267 MovieClip |
"electricfence" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 270 MovieClip |
"poisonfence" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 273 MovieClip |
"steelspikefence" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 276 MovieClip |
"electricshock" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 279 MovieClip |
"grenadelauncher" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 286 MovieClip |
"fireballlauncher" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 289 MovieClip |
"flamethrower" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 297 MovieClip |
"firecatapult" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 304 MovieClip |
"cutlaser" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 312 MovieClip |
"meteor" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 320 MovieClip |
"rocketlauncher" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 327 MovieClip |
"tomahawklauncher" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 333 MovieClip |
"longrangemissile" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 340 MovieClip |
"anthrax" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 347 MovieClip |
"chainlightning" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 355 MovieClip |
"rocketshotgun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 363 MovieClip |
"shotgun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 371 MovieClip |
"catapult" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 378 MovieClip |
"massivecatapult" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 385 MovieClip |
"splitshuriken" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 393 MovieClip |
"frozeturret" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 401 MovieClip |
"nucleardrum" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 405 MovieClip |
"icedrum" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 409 MovieClip |
"wavedrum" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 413 MovieClip |
"firedrum" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 417 MovieClip |
"clusterbomb" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 424 MovieClip |
"snowlauncher" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 431 MovieClip |
"blizzard" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 438 MovieClip |
"bladegun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 445 MovieClip |
"snrgun" | Symbol 454 MovieClip {Buttons} Frame 1 | Symbol 453 MovieClip |
"mGerak" | Symbol 494 MovieClip {apple_defender_fla.FireballLauncher_155} Frame 1 | Symbol 493 MovieClip |
"turret0" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 199 MovieClip {apple_defender_fla.handgun_37} |
"turret1" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 207 MovieClip {apple_defender_fla.smg_41} |
"turret2" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 231 MovieClip {apple_defender_fla.Sniper_50} |
"turret3" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 223 MovieClip {apple_defender_fla.gatling_47} |
"turret4" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 215 MovieClip {apple_defender_fla.MachineGun_44} |
"turret5" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 235 MovieClip {apple_defender_fla.Grow_53} |
"turret6" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 239 MovieClip {apple_defender_fla.SuperGrowth_55} |
"turret7" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 243 MovieClip {apple_defender_fla.Repair_57} |
"turret8" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 247 MovieClip |
"turret9" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 251 MovieClip |
"turret10" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 457 MovieClip {apple_defender_fla.woodwall_144} |
"turret11" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 460 MovieClip |
"turret12" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 463 MovieClip |
"turret13" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 467 MovieClip |
"turret14" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 471 MovieClip |
"turret15" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 475 MovieClip |
"turret16" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 483 MovieClip |
"turret17" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 487 MovieClip |
"turret18" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 489 MovieClip |
"turret19" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 285 MovieClip {apple_defender_fla.GrenadeLauncher_72} |
"turret20" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 494 MovieClip {apple_defender_fla.FireballLauncher_155} |
"turret21" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 296 MovieClip {apple_defender_fla.flamethrower_76} |
"turret22" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 303 MovieClip {apple_defender_fla.FireCatapult_79} |
"turret23" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 311 MovieClip {apple_defender_fla.CutLaser_82} |
"turret24" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 319 MovieClip |
"turret25" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 326 MovieClip {apple_defender_fla.rocketlauncher_88} |
"turret26" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 332 MovieClip {apple_defender_fla.tomahawklauncher_91} |
"turret27" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 339 MovieClip {apple_defender_fla.longrangemissile_94} |
"turret28" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 346 MovieClip {apple_defender_fla.Antrax_97} |
"turret29" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 354 MovieClip {apple_defender_fla.ChainLightning_100} |
"turret30" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 362 MovieClip {apple_defender_fla.rocketshogun_103} |
"turret31" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 370 MovieClip {apple_defender_fla.Shotgun_106} |
"turret32" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 377 MovieClip {apple_defender_fla.catapult_109} |
"turret33" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 384 MovieClip {apple_defender_fla.MassiveCatapult_112} |
"turret34" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 392 MovieClip {apple_defender_fla.SplitShuriken_115} |
"turret35" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 400 MovieClip {apple_defender_fla.FrozeTurret_118} |
"turret36" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 404 MovieClip |
"turret37" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 408 MovieClip |
"turret38" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 412 MovieClip |
"turret39" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 416 MovieClip |
"turret40" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 423 MovieClip {apple_defender_fla.ClusterBomb_129} |
"turret41" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 430 MovieClip {apple_defender_fla.snowlauncher_132} |
"turret42" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 437 MovieClip {apple_defender_fla.blizzard_135} |
"turret43" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 444 MovieClip {apple_defender_fla.bladegun_138} |
"turret44" | Symbol 495 MovieClip {Turrets} Frame 1 | Symbol 452 MovieClip {apple_defender_fla.snrgun_141} |
"bullet0" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 498 MovieClip |
"bullet1" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 500 MovieClip |
"bullet2" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 502 MovieClip |
"bullet3" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 509 MovieClip |
"bullet4" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 513 MovieClip |
"bullet5" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 518 MovieClip |
"bullet6" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 519 MovieClip {apple_defender_fla.flame_165} |
"bullet7" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 522 MovieClip |
"bullet8" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 527 MovieClip |
"bullet9" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 530 MovieClip |
"bullet10" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 533 MovieClip |
"bullet11" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 536 MovieClip |
"bullet12" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 537 MovieClip {apple_defender_fla.poison_171} |
"bullet13" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 542 MovieClip |
"bullet14" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 545 MovieClip |
"bullet15" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 548 MovieClip |
"bullet16" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 537 MovieClip {apple_defender_fla.poison_171} |
"bullet19" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 551 MovieClip |
"bullet21" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 554 MovieClip |
"bullet22" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 559 MovieClip {apple_defender_fla.Snow_177} |
"bullet23" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 564 MovieClip {apple_defender_fla.ice_178} |
"bullet24" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 567 MovieClip |
"bullet25" | Symbol 571 MovieClip {Bullets} Frame 1 | Symbol 570 MovieClip |
"poison" | Symbol 586 MovieClip {Particles} Frame 1 | Symbol 480 MovieClip {apple_defender_fla.poison_151} |
"petir" | Symbol 586 MovieClip {Particles} Frame 1 | Symbol 509 MovieClip |
"ledakan" | Symbol 586 MovieClip {Particles} Frame 1 | Symbol 582 MovieClip |
"smoke" | Symbol 586 MovieClip {Particles} Frame 1 | Symbol 585 MovieClip |
"mName" | Symbol 597 MovieClip {CDialogCongrats} Frame 1 | Symbol 589 EditableText |
"mScore" | Symbol 597 MovieClip {CDialogCongrats} Frame 1 | Symbol 590 EditableText |
"mMenu" | Symbol 597 MovieClip {CDialogCongrats} Frame 1 | Symbol 593 Button |
"mSubmit" | Symbol 597 MovieClip {CDialogCongrats} Frame 1 | Symbol 596 Button |
"mPrev_btn" | Symbol 637 MovieClip {HowToPlay} Frame 1 | Symbol 604 Button |
"mNext_btn" | Symbol 637 MovieClip {HowToPlay} Frame 1 | Symbol 607 Button |
"mExit_btn" | Symbol 637 MovieClip {HowToPlay} Frame 1 | Symbol 611 Button |
"mCount" | Symbol 637 MovieClip {HowToPlay} Frame 1 | Symbol 613 EditableText |
"mFinish" | Symbol 637 MovieClip {HowToPlay} Frame 6 | Symbol 636 Button |
"mMessage" | Symbol 644 MovieClip {CDialogPause} Frame 1 | Symbol 638 EditableText |
"mResume" | Symbol 644 MovieClip {CDialogPause} Frame 1 | Symbol 640 Button |
"mMenu" | Symbol 644 MovieClip {CDialogPause} Frame 1 | Symbol 643 Button |
"mExit_btn" | Symbol 656 MovieClip {Credits} Frame 1 | Symbol 611 Button |
"mLink" | Symbol 656 MovieClip {Credits} Frame 1 | Symbol 651 Button |
"mLink2" | Symbol 656 MovieClip {Credits} Frame 1 | Symbol 655 Button |
"mText" | Symbol 670 MovieClip {apple_defender_fla.OptionBarPopUp_202} Frame 1 | Symbol 669 EditableText |
"mMusic" | Symbol 671 MovieClip {COptionBar} Frame 1 | Symbol 661 MovieClip {apple_defender_fla.MusicBtn_199} |
"mQuality" | Symbol 671 MovieClip {COptionBar} Frame 1 | Symbol 664 MovieClip {apple_defender_fla.QualityBtn_200} |
"mSFX" | Symbol 671 MovieClip {COptionBar} Frame 1 | Symbol 667 MovieClip {apple_defender_fla.SFXBtn_201} |
"mPopUp" | Symbol 671 MovieClip {COptionBar} Frame 1 | Symbol 670 MovieClip {apple_defender_fla.OptionBarPopUp_202} |
"mExit_btn" | Symbol 681 MovieClip {CHSNote} Frame 1 | Symbol 611 Button |
Special Tags
FileAttributes (69) | Timeline Frame 1 | Access network only, Metadata not present, AS3. |
Labels
"Preload" | Frame 1 |
"Asset" | Frame 9 |
"mainMenu" | Frame 16 |
"page1" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 1 |
"page2" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 7 |
"page3" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 13 |
"page4" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 19 |
"page5" | Symbol 108 MovieClip {apple_defender_fla.TutDialog_20} Frame 25 |
"jalan" | Symbol 134 MovieClip {apple_defender_fla.beggar_26} Frame 1 |
"tinju" | Symbol 134 MovieClip {apple_defender_fla.beggar_26} Frame 38 |
"Jalan" | Symbol 157 MovieClip {apple_defender_fla.knight_27} Frame 1 |
"ayuh pedang" | Symbol 157 MovieClip {apple_defender_fla.knight_27} Frame 38 |
"Jalan" | Symbol 180 MovieClip {apple_defender_fla.boss_28} Frame 1 |
"ayuh pedang" | Symbol 180 MovieClip {apple_defender_fla.boss_28} Frame 32 |
|