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

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

core-defense.swf

This is the info page for
Flash #123984

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


Text
2Games.com - the latest Online and Multiplayer Games

0%

test

2

0

0

0

Material

Score

GameOver by:

Score:

Hello!

ActionScript [AS3]

Section 1
//AdLoader (CPMStar.AdLoader) package CPMStar { import flash.events.*; import flash.display.*; import flash.net.*; import flash.system.*; public class AdLoader extends Sprite { private var contentspotid:String; private var cpmstarLoader:Loader; public function AdLoader(_arg1:String){ this.contentspotid = _arg1; addEventListener(Event.ADDED, addedHandler); } private function addedHandler(_arg1:Event):void{ var _local2:String; var _local3:DisplayObjectContainer; removeEventListener(Event.ADDED, addedHandler); Security.allowDomain("server.cpmstar.com"); _local2 = "http://server.cpmstar.com/adviewas3.swf"; _local3 = parent; cpmstarLoader = new Loader(); cpmstarLoader.contentLoaderInfo.addEventListener(Event.INIT, dispatchHandler); cpmstarLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, dispatchHandler); cpmstarLoader.load(new URLRequest(((_local2 + "?contentspotid=") + contentspotid))); addChild(cpmstarLoader); } private function dispatchHandler(_arg1:Event):void{ dispatchEvent(_arg1); } } }//package CPMStar
Section 2
//2games_play_latest_text_141 (DefenseV10_fla.2games_play_latest_text_141) package DefenseV10_fla { import flash.display.*; public dynamic class 2games_play_latest_text_141 extends MovieClip { public var text2G:MovieClip; public function 2games_play_latest_text_141(){ addFrameScript(39, frame40); } function frame40(){ stop(); } } }//package DefenseV10_fla
Section 3
//2GamesRo_140 (DefenseV10_fla.2GamesRo_140) package DefenseV10_fla { import flash.display.*; public dynamic class 2GamesRo_140 extends MovieClip { public var logo_ro:gameslogoro; public var play_latest_text:MovieClip; } }//package DefenseV10_fla
Section 4
//assetHolder_1 (DefenseV10_fla.assetHolder_1) package DefenseV10_fla { import flash.display.*; public dynamic class assetHolder_1 extends MovieClip { public function assetHolder_1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 5
//BigExplosion_Shadow_42 (DefenseV10_fla.BigExplosion_Shadow_42) package DefenseV10_fla { import flash.display.*; public dynamic class BigExplosion_Shadow_42 extends MovieClip { public function BigExplosion_Shadow_42(){ addFrameScript(25, frame26); } function frame26(){ stop(); parent.removeChild(this); } } }//package DefenseV10_fla
Section 6
//BoostInt_86 (DefenseV10_fla.BoostInt_86) package DefenseV10_fla { import flash.events.*; import flash.display.*; public dynamic class BoostInt_86 extends MovieClip { public var msg:Event; public function BoostInt_86(){ addFrameScript(119, frame120); } function frame120(){ stop(); msg = new Event("boostfull"); dispatchEvent(msg); } } }//package DefenseV10_fla
Section 7
//bubblxbox_smallLogo_ro_21 (DefenseV10_fla.bubblxbox_smallLogo_ro_21) package DefenseV10_fla { import flash.display.*; public dynamic class bubblxbox_smallLogo_ro_21 extends MovieClip { public function bubblxbox_smallLogo_ro_21(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 8
//CoreInd_43 (DefenseV10_fla.CoreInd_43) package DefenseV10_fla { import flash.display.*; public dynamic class CoreInd_43 extends MovieClip { public function CoreInd_43(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 9
//GameHudBasic_80 (DefenseV10_fla.GameHudBasic_80) package DefenseV10_fla { import flash.display.*; import flash.text.*; public dynamic class GameHudBasic_80 extends MovieClip { public var boostInd:MovieClip; public var playerHPMarker:MovieClip; public var materialNumber:TextField; public var scoreNumber:TextField; public var emy4:MovieClip; public var emy5:MovieClip; public var emy1:MovieClip; public var waveStartButton:StartWaveButton; public var emy2:MovieClip; public var emy3:MovieClip; public var emy6:MovieClip; public var emy8:MovieClip; public var out4:MovieClip; public var emy7:MovieClip; public var out7:MovieClip; public var out3:MovieClip; public var in2:MovieClip; public var in4:MovieClip; public var out8:MovieClip; public var out2:MovieClip; public var in3:MovieClip; public var out6:MovieClip; public var out1:MovieClip; public var out5:MovieClip; public var in1:MovieClip; public var newMute:NewMuteButton; public var coreind:MovieClip; public var slider:MovieClip; public var exitButton:SimpleButton; } }//package DefenseV10_fla
Section 10
//GameHudExitBase_79 (DefenseV10_fla.GameHudExitBase_79) package DefenseV10_fla { import flash.display.*; public dynamic class GameHudExitBase_79 extends MovieClip { public var noButton:SimpleButton; public var closeButton:SimpleButton; public var yesButton:SimpleButton; } }//package DefenseV10_fla
Section 11
//InnerInd_92 (DefenseV10_fla.InnerInd_92) package DefenseV10_fla { import flash.display.*; public dynamic class InnerInd_92 extends MovieClip { public function InnerInd_92(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 12
//NewMuteButtonItems_23 (DefenseV10_fla.NewMuteButtonItems_23) package DefenseV10_fla { import flash.display.*; public dynamic class NewMuteButtonItems_23 extends MovieClip { public var item2:MovieClip; public var item3:MovieClip; public var item1:MovieClip; public function NewMuteButtonItems_23(){ addFrameScript(6, frame7, 11, frame12); } function frame12(){ stop(); } function frame7(){ stop(); } } }//package DefenseV10_fla
Section 13
//OuterInd_94 (DefenseV10_fla.OuterInd_94) package DefenseV10_fla { import flash.display.*; public dynamic class OuterInd_94 extends MovieClip { public function OuterInd_94(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 14
//Player_Body_12 (DefenseV10_fla.Player_Body_12) package DefenseV10_fla { import flash.display.*; public dynamic class Player_Body_12 extends MovieClip { public var rightgun1:MovieClip; public var rightgun2:MovieClip; public var leftEngine:MovieClip; public var gun3:MovieClip; public var leftgun1:MovieClip; public var leftgun2:MovieClip; public var rightEngine:MovieClip; public function Player_Body_12(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package DefenseV10_fla
Section 15
//Player_Boost_16 (DefenseV10_fla.Player_Boost_16) package DefenseV10_fla { import flash.display.*; public dynamic class Player_Boost_16 extends MovieClip { public function Player_Boost_16(){ addFrameScript(6, frame7); } function frame7(){ stop(); } } }//package DefenseV10_fla
Section 16
//Ranger_Turret_34 (DefenseV10_fla.Ranger_Turret_34) package DefenseV10_fla { import flash.display.*; public dynamic class Ranger_Turret_34 extends MovieClip { public var rightGun:MovieClip; public var leftGun:MovieClip; } }//package DefenseV10_fla
Section 17
//Slider_81 (DefenseV10_fla.Slider_81) package DefenseV10_fla { import flash.display.*; public dynamic class Slider_81 extends MovieClip { public var sliderBase:MovieClip; public function Slider_81(){ addFrameScript(9, frame10, 19, frame20); } function frame10(){ stop(); } function frame20(){ stop(); } } }//package DefenseV10_fla
Section 18
//SliderBase_82 (DefenseV10_fla.SliderBase_82) package DefenseV10_fla { import flash.display.*; public dynamic class SliderBase_82 extends MovieClip { public var playerUpdateButton:SimpleButton; public var repairButton:SimpleButton; public var baseUpdateButton:SimpleButton; } }//package DefenseV10_fla
Section 19
//MochiDigits (mochi.MochiDigits) package mochi { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function set value(_arg1:Number):void{ setValue(_arg1); } public function reencode():void{ var _local1:uint; _local1 = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function toString():String{ var _local1:String; _local1 = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function get value():Number{ return (Number(this.toString())); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String; _local3 = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi
Section 20
//MochiScores (mochi.MochiScores) package mochi { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ if (options.clip != null){ if ((options.clip is Sprite)){ MochiServices.setContainer(options.clip); }; delete options.clip; } else { MochiServices.setContainer(); }; MochiServices.stayOnTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local2:Object; var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; _local2 = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (_arg1 != null){ if (_arg1.error != null){ if (_arg1.error == true){ if (onErrorHandler != null){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; }; }; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi
Section 21
//MochiServices (mochi.MochiServices) package mochi { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.geom.*; import flash.net.*; import flash.system.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; private static var _clip:MovieClip; private static var _loader:Loader; private static var _id:String; private static var _listenChannel:LocalConnection; private static var _timer:Timer; private static var _sendChannelName:String; private static var _startTime:Number; private static var _connecting:Boolean = false; public static var onError:Object; private static var _listenChannelName:String = "__ms_"; private static var _servicesURL:String = "http://www.mochiads.com/static/lib/services/services.swf"; public static var netup:Boolean = true; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _sendChannel.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ onError("NotConnected"); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } public static function get connected():Boolean{ return (_connected); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (_clip != null){ if (_clip._queue != null){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local3:Array; var _local4:int; var _local5:Array; var _local6:Array; var _local7:MovieClip; var _local8:LocalConnection; var _local9:String; var _local10:ByteArray; var _local11:ByteArray; var _local12:uint; var _local13:uint; var _local14:Loader; _local3 = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; _local5 = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; _local6 = [0, 64, 0, 0, 0]; _local7 = new MovieClip(); _local8 = new LocalConnection(); _local9 = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().getTime())); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); _local10 = new ByteArray(); _local11 = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); _local12 = ((_local3.length + _local11.length) + 4); _local13 = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } public static function get childClip():Object{ return (_clip); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var vars:Object; var avm1Click:DisplayObject; var s:String; var i:Number; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; vars = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); s = "?"; i = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ var _local2:Rectangle; if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); _local2 = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _listenChannel.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; }; return (_local2); } public static function getVersion():String{ return ("1.43"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); if (_clip.parent != null){ Sprite(_clip.parent).removeChild(_clip); }; } private static function onStatus(_arg1:StatusEvent):void{ switch (_arg1.level){ case "error": _connected = false; _listenChannel.connect(_listenChannelName); break; }; } public static function get id():String{ return (_id); } private static function urlOptions(_arg1:Object):Object{ var _local2:Object; var _local3:String; var _local4:Array; var _local5:Number; var _local6:Array; _local2 = {}; _local3 = _arg1.loaderInfo.parameters.mochiad_options; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function initComChannels():void{ if (!_connected){ _sendChannel.addEventListener(StatusEvent.STATUS, MochiServices.onStatus); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _listenChannel.addEventListener(StatusEvent.STATUS, MochiServices.onStatus); _clip.onReceive = function (_arg1:Object):void{ var cb:String; var cblst:Object; var method:*; var methodName:String; var obj:Object; var pkg = _arg1; cb = pkg.callbackID; cblst = this.client._callbacks[cb]; if (!cblst){ return; }; method = cblst.callbackMethod; methodName = ""; obj = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete this.client._callbacks[cb]; }; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; trace("connected!"); _connecting = false; _connected = true; while (_clip._queue.length > 0) { _sendChannel.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function listen():void{ _listenChannel = new LocalConnection(); _listenChannel.client = _clip; _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; _listenChannel.allowDomain("*", "localhost"); _listenChannel.allowInsecureDomain("*", "localhost"); _listenChannel.connect(_listenChannelName); trace("Waiting for MochiAds services to connect..."); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var clipname:String; var f:Function; var req:URLRequest; var vars:URLVariables; var id = _arg1; var clip = _arg2; clipname = ("_mochiservices_com_" + id); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(clip).servicesURL != undefined){ _servicesURL = urlOptions(clip).servicesURL; }; MochiServices.allowDomains(_servicesURL); _clip = createEmptyMovieClip(clip, clipname, 10336, false); _loader = new Loader(); _timer = new Timer(1000, 0); _startTime = getTimer(); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); f = function (_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor((Math.random() * 99999)))); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); req = new URLRequest(_servicesURL); vars = new URLVariables(); vars.listenLC = _listenChannelName; vars.mochiad_options = clip.loaderInfo.parameters.mochiad_options; req.data = vars; _loader.load(req); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; listen(); return (_clip); } public static function get clip():Object{ return (_container); } public static function bringToTop(_arg1:Event):void{ var e = _arg1; if (MochiServices.clip != null){ if (MochiServices.childClip != null){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; }; } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; if ((clip is DisplayObject)){ if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var mc:MovieClip; var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; mc = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function connectWait(_arg1:TimerEvent):void{ if ((getTimer() - _startTime) > 10000){ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); }; _timer.stop(); }; } } }//package mochi
Section 22
//BigExplode (BigExplode) package { public class BigExplode extends GameObject { } }//package
Section 23
//Boss (Boss) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.geom.*; public class Boss extends Enemy { var pt:Point; var fireAngle;// = 0.261666666666667 var rocketAngle;// = 40 var lightFire:Sound; public var currentRocketNum:int;// = 0 var rocketNumLimits;// = 1 public var turretRocket1:MovieClip; public var turretRocket4:MovieClip; public var turretRocket2:MovieClip; public var turretRocket3:MovieClip; var heavyFire:Sound; public var body:MovieClip; public function Boss(){ rocketNumLimits = 1; currentRocketNum = 0; fireAngle = ((15 * 3.14) / 180); rocketAngle = 40; super(); speed = 1; keepDistance = 250; keepDistanceForCore = 400; fireRate = 4000; HPTable = bossHPTable; heavyFire = new sfx_enemy_heavygun(); lightFire = new sfx_enemy_lightgun(); } override protected function getDamage():Number{ return (bossDamageTable[iCurrentEnemyLevel]); } override protected function playShootSound():void{ heavyFire.play(); lightFire.play(); } override public function getMaterial():int{ return (bossMaterialTable[iCurrentEnemyLevel]); } override protected function onFire(_arg1:TimerEvent):void{ if (fireTarget){ if ((fireTarget is Core)){ if (Tools.distance((root as Main).gameStage._core.x, (root as Main).gameStage._core.y, x, y) < shootRangeForCore){ bossShoot(); if (Main.bHasSound){ playShootSound(); }; }; } else { if ((fireTarget is Player)){ if (Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y) < shootRangeForPlayer){ bossShoot(); if (Main.bHasSound){ playShootSound(); }; }; if (bShootBack){ bShootBack = false; }; }; }; }; } function bossShoot():void{ var _local1:Rocket_Gun3; var _local2:int; var _local3:Bullet; _local2 = 0; while (_local2 < 4) { _local1 = new Rocket_Gun3(); _local1.setRocketLifeTime(Rocket_Gun3.rocketLife); _local1.bType = "Enemy_Bullet"; _local1.bulletDamage = getDamage(); _local1.setOwner(this); pt = new Point(getRocketGun(_local2).x, getRocketGun(_local2).y); pt = this.localToGlobal(pt); _local1.ShootFromTo((pt.x + GameStage._camera.posX), (pt.y + GameStage._camera.posY), (fireDirection + ((((_local2 - 1.5) * rocketAngle) * Math.PI) / 180))); (_local1 as Rocket_Gun3).bGuiding = true; (root as Main).gameStage.gameScene.addChild(_local1); _local2++; }; _local2 = 0; while (_local2 < 3) { _local3 = new Bullet_Enemy(); _local3.bType = "Enemy_Bullet"; _local3.bulletDamage = getDamage(); _local3.ShootFromTo(x, y, (fireDirection + ((_local2 - 1) * fireAngle))); (root as Main).gameStage.gameScene.addChild(_local3); _local2++; }; } override protected function setBodyRotation(_arg1:Number):void{ rotation = _arg1; } override public function getScore():int{ return (1); } function getRocketGun(_arg1:int):MovieClip{ switch (_arg1){ case 0: return (turretRocket1); case 1: return (turretRocket2); case 2: return (turretRocket3); case 3: return (turretRocket4); }; return (this); } override protected function setTurretRotation(_arg1:Number):void{ turretRocket1.rotation = (-(rocketAngle) * 1.5); turretRocket2.rotation = (-(rocketAngle) * 0.5); turretRocket3.rotation = (rocketAngle * 0.5); turretRocket4.rotation = (rocketAngle * 1.5); } } }//package
Section 24
//bubbleboxlogo (bubbleboxlogo) package { import flash.events.*; import flash.display.*; import flash.net.*; public class bubbleboxlogo extends MovieClip { public var logo_ro:MovieClip; public function bubbleboxlogo(){ stop(); addEventListener(MouseEvent.ROLL_OVER, onRollOver); addEventListener(MouseEvent.ROLL_OUT, onRollOut); addEventListener(MouseEvent.CLICK, onClickLogo); } function onClickLogo(_arg1:Event):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.2games.com/clickreg.php?type=gamestats&id=1232&subid=logoatend"); navigateToURL(_local2, "_blank"); } function onRollOut(_arg1:Event):void{ gotoAndStop(1); } function onRollOver(_arg1:Event):void{ gotoAndStop(2); } } }//package
Section 25
//BuildNo (BuildNo) package { import flash.display.*; public dynamic class BuildNo extends MovieClip { } }//package
Section 26
//BuildYes (BuildYes) package { import flash.display.*; public dynamic class BuildYes extends MovieClip { } }//package
Section 27
//Bullet (Bullet) package { import flash.events.*; import flash.media.*; import flash.utils.*; public class Bullet extends GameObject { var bulletDamage:Number;// = 0 var hitSound:Sound; var bulletSpeed:Number;// = 24 var lifeTimer:Timer; var delX:Number; var owner;// = null var delY:Number; public var bType:String;// = "Player_Bullet" var lifeTime:Number;// = 3000 public function Bullet(){ bType = "Player_Bullet"; bulletSpeed = 24; bulletDamage = 0; lifeTime = 3000; owner = null; hitSound = new sfx_bullethit(); super(); setLifeTime(); } protected function setLifeTime():void{ lifeTimer = new Timer(lifeTime, 1); lifeTimer.addEventListener(TimerEvent.TIMER, onLifeOut); lifeTimer.start(); } public function setOwner(_arg1):void{ owner = _arg1; } protected function moveBullet():void{ x = (x + (bulletSpeed * delX)); y = (y + (bulletSpeed * delY)); } public function ShootFromTo(_arg1:Number, _arg2:Number, _arg3:Number):void{ x = _arg1; y = _arg2; delX = Math.cos(_arg3); delY = Math.sin(_arg3); rotation = (((_arg3 * 180) / Math.PI) - 90); } protected function onLifeOut(_arg1:TimerEvent):void{ if (root){ explode(); }; } function explode():void{ var _local1:Explode; _local1 = new Explode(); _local1.x = x; _local1.y = y; (root as Main).gameStage.gameScene.addChild(_local1); (root as Main).gameStage.gameScene.removeChild(this); } override protected function enterFrameHandle(_arg1:Event):void{ var _local2:*; var _local3:*; var _local4:int; _local2 = (root as Main).gameStage.gameScene; moveBullet(); if ((((((((x < 0)) || ((x > Main._sceneWidth)))) || ((y < 0)))) || ((y > Main._sceneHeight)))){ parent.removeChild(this); }; if (root){ if (bType == "Player_Bullet"){ _local4 = 0; while (_local4 < _local2.numChildren) { _local3 = _local2.getChildAt(_local4); if ((_local3 is Enemy)){ if ((_local3 as Enemy).hitTestPoint((x - GameStage._camera.posX), (y - GameStage._camera.posY), true)){ (_local3 as Enemy).damageHP(bulletDamage); if ((owner is Player)){ (_local3 as Enemy).shootBackToPlayer(); }; if (Main.bHasSound){ hitSound.play(); }; explode(); break; }; }; _local4++; }; } else { _local4 = 0; while (_local4 < _local2.numChildren) { _local3 = _local2.getChildAt(_local4); if ((((_local3 is Player)) && ((_local3.visible == true)))){ if ((_local3 as Player).hitTestPoint((x - GameStage._camera.posX), (y - GameStage._camera.posY), true)){ if ((_local3 as Player).bInvulnerable == false){ (_local3 as Player).damageHP(bulletDamage); }; if (Main.bHasSound){ hitSound.play(); }; explode(); break; }; }; if ((_local3 is Wall)){ if ((_local3 as Wall).hitTestPoint((x - GameStage._camera.posX), (y - GameStage._camera.posY), true)){ if ((_local3 as Wall).bTouchable){ (_local3 as Wall).damageHP(bulletDamage); if (Main.bHasSound){ hitSound.play(); }; explode(); break; }; }; }; if ((_local3 is Core)){ if ((_local3 as Core).hitTestPoint((x - GameStage._camera.posX), (y - GameStage._camera.posY), true)){ (_local3 as Core).damageHP(bulletDamage); if (Main.bHasSound){ hitSound.play(); }; explode(); break; }; }; _local4++; }; }; }; } } }//package
Section 28
//Bullet_Enemy (Bullet_Enemy) package { public class Bullet_Enemy extends Bullet { public function Bullet_Enemy(){ lifeTime = 4000; bulletSpeed = 12; } } }//package
Section 29
//Bullet_Gun2 (Bullet_Gun2) package { public class Bullet_Gun2 extends Bullet { } }//package
Section 30
//BulletTurret1 (BulletTurret1) package { public class BulletTurret1 extends Bullet { } }//package
Section 31
//BulletTurret2 (BulletTurret2) package { public class BulletTurret2 extends Bullet { } }//package
Section 32
//BulletTurret3 (BulletTurret3) package { public class BulletTurret3 extends Rocket_Gun3 { } }//package
Section 33
//Camera (Camera) package { public class Camera { public var posX:Number;// = 0 public var posY:Number;// = 0 public var maxOffSetY:Number;// = 0 public var maxOffSetX:Number;// = 0 public var targetPosX:Number;// = 0 public var targetPosY:Number;// = 0 public function Camera(){ posX = 0; posY = 0; targetPosX = 0; targetPosY = 0; maxOffSetX = 0; maxOffSetY = 0; super(); } public function updateCamera(_arg1:GameObject):void{ var _local2:*; var _local3:*; _local2 = (_arg1.mouseX / 2); _local3 = (_arg1.mouseY / 2); if (Math.abs(_local2) > maxOffSetX){ _local2 = (_local2 * (maxOffSetX / Math.abs(_local2))); }; if (Math.abs(_local3) > maxOffSetY){ _local3 = (_local3 * (maxOffSetY / Math.abs(_local3))); }; targetPosX = ((_arg1.x + _local2) - (Main._viewWidth / 2)); targetPosY = ((_arg1.y + _local3) - (Main._viewHeight / 2)); if (targetPosX < 0){ targetPosX = 0; }; if (targetPosY < 0){ targetPosY = 0; }; if (targetPosX > (Main._sceneWidth - Main._viewWidth)){ targetPosX = (Main._sceneWidth - Main._viewWidth); }; if (targetPosY > (Main._sceneHeight - Main._viewHeight)){ targetPosY = (Main._sceneHeight - Main._viewHeight); }; posX = ((posX + targetPosX) / 2); posY = ((posY + targetPosY) / 2); } public function setPosition(_arg1:Number, _arg2:Number):void{ posX = _arg1; posY = _arg2; } public function setOffSet(_arg1:Number, _arg2:Number):void{ maxOffSetX = _arg1; maxOffSetY = _arg2; } } }//package
Section 34
//Core (Core) package { import flash.events.*; import flash.media.*; import flash.utils.*; public class Core extends GameObject implements IHPObject { var hpBar:HPBar; var gameoverTimer:Timer; var destroySound:Sound; var overSound:Sound; var coreHP:Number;// = 500 public static var GAME_OVER:String = "gameover"; public static var collisionDistance = 240; public function Core(){ coreHP = 500; destroySound = new sfx_explosion2(); overSound = new sfx_gameover(); super(); setHP(coreHP); gotoAndStop(1); } public function getDamageLevel():int{ var _local1:Number; _local1 = (hpBar._currentHP / hpBar.fullHP); if (_local1 > 0.75){ gotoAndStop(1); return (1); }; if (_local1 > 0.5){ gotoAndStop(2); return (2); }; if (_local1 > 0.25){ gotoAndStop(3); return (3); }; gotoAndStop(4); return (4); } public function onHPOut(_arg1:Event):void{ gameoverTimer = new Timer(4000, 1); gameoverTimer.addEventListener(TimerEvent.TIMER, onGameOver); gameoverTimer.start(); if (Main.bHasSound){ destroySound.play(); overSound.play(); }; } public function damageHP(_arg1:Number):void{ if (hpBar){ hpBar.takeDamage(_arg1); if (getDamageLevel() > 3){ (root as Main).gameStage.gameText.setText("Core low on health!"); } else { (root as Main).gameStage.gameText.setText("Core under attack!"); }; }; } public function showHP(_arg1:Boolean):void{ if (_arg1 == false){ removeChild(hpBar); }; } function onGameOver(_arg1:TimerEvent):void{ var _local2:Event; Main.loseReason = "Core Down"; _local2 = new Event(GAME_OVER, true); dispatchEvent(_local2); } public function setHP(_arg1:Number):void{ hpBar = new HPBar(); hpBar.setHP(_arg1); hpBar.y = (this.height / 2); addChild(hpBar); hpBar.addEventListener(HPBar.OUT_OF_HP, onHPOut); showHP(false); } } }//package
Section 35
//CoreDefense1 (CoreDefense1) package { import flash.media.*; public dynamic class CoreDefense1 extends Sound { } }//package
Section 36
//DifficultyPage (DifficultyPage) package { import flash.events.*; import flash.display.*; public class DifficultyPage extends MovieClip { public var normalBtn:SimpleButton; public var easyBtn:SimpleButton; public var hardBtn:SimpleButton; public var backButton:SimpleButton; public static var PLAY_GAME_EASY:String = "playgame_easy"; public static var BACK_TUTORIAL:String = "back_tut"; public static var PLAY_GAME_NORMAL:String = "playgame_normal"; public static var PLAY_GAME_HARD:String = "playgame_hard"; public function DifficultyPage(){ easyBtn.addEventListener(MouseEvent.CLICK, onPlay); normalBtn.addEventListener(MouseEvent.CLICK, onPlay); hardBtn.addEventListener(MouseEvent.CLICK, onPlay); backButton.addEventListener(MouseEvent.CLICK, onBack); } function onBack(_arg1:Event):void{ var _local2:Event; _local2 = new Event(BACK_TUTORIAL, true); dispatchEvent(_local2); parent.removeChild(this); } function onPlay(_arg1:MouseEvent):void{ var _local2:Event; if (_arg1.target == easyBtn){ _local2 = new Event(PLAY_GAME_EASY, true); }; if (_arg1.target == normalBtn){ _local2 = new Event(PLAY_GAME_NORMAL, true); }; if (_arg1.target == hardBtn){ _local2 = new Event(PLAY_GAME_HARD, true); }; dispatchEvent(_local2); parent.removeChild(this); } } }//package
Section 37
//Enemy (Enemy) package { import flash.events.*; import flash.media.*; import flash.utils.*; public class Enemy extends GameObject implements IHPObject { const states; var hpBar:HPBar; var keepDistanceForCore:Number;// = 250 var fireRate:Number;// = 1000 var shootRangeForPlayer:Number;// = 750 var speed:Number;// = 3 var bShootBack:Boolean;// = false var bInPosition:Boolean;// = false protected var fireTarget:GameObject;// = null var DamageTable; var iGoForCore:int;// = 1 var keepDistance:Number;// = 150 var angularSpeed:Number;// = 3 var currentState:String;// = "goForCore" var HPTable; var fireTimer:Timer; var explodeSound:Sound; protected var moveTarget:GameObject;// = null var shootRangeForCore:Number;// = 500 protected var iCurrentEnemyLevel:int;// = 0 var MaterialTable; var fireDirection:Number;// = 0 static var bossHPTable = [420, 700, 880, 1060, 1220]; static var scoutDamageTable = [5, 7, 9, 11, 13]; static var rangerMaterialTable = [3, 4, 5, 6, 7]; static var scoutHPTable = [40, 60, 80, 140, 180]; static var rangerDamageTable = [10, 13, 16, 19, 22]; static var scoutMaterialTable = [2, 2, 3, 3, 4]; static var bossMaterialTable = [25, 30, 35, 40, 45]; static var rangerHPTable = [80, 120, 160, 240, 280]; static var bossDamageTable = [10, 12, 14, 16, 18]; static var tankDamageTable = [20, 24, 28, 32, 36]; static var tankHPTable = [120, 200, 280, 400, 480]; static var tankMaterialTable = [5, 7, 9, 11, 14]; public function Enemy(){ states = ["goForCore", "goForPlayer"]; currentState = "goForCore"; speed = 3; keepDistance = 150; keepDistanceForCore = 250; shootRangeForPlayer = 750; shootRangeForCore = 500; fireRate = 1000; fireDirection = 0; angularSpeed = 3; iCurrentEnemyLevel = 0; iGoForCore = 1; bInPosition = false; fireTarget = null; moveTarget = null; bShootBack = false; super(); explodeSound = new sfx_explosion1(); } public function getMaterial():int{ return (0); } protected function selfExplode():void{ var _local1:PickUp; var _local2:BigExplode; _local1 = new PickUp(); _local1.x = x; _local1.y = y; _local1.mymaterial = getMaterial(); (root as Main).gameStage.pickupLayer.addChild(_local1); _local2 = new BigExplode(); _local2.rotation = (Math.random() * 360); _local2.x = x; _local2.y = y; (root as Main).gameStage.gameScene.addChild(_local2); if (Main.bHasSound){ explodeSound.play(); }; } public function shootBackToPlayer():void{ if (!bInPosition){ bShootBack = true; }; } override protected function addedToStageHandle(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandle); fireTimer = new Timer(fireRate); fireTimer.addEventListener(TimerEvent.TIMER, onFire); fireTimer.start(); } protected function checkMoveState():void{ } protected function confirmTarget():void{ var _local1:Number; _local1 = Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y); if (currentState == "goForCore"){ if ((((_local1 < keepDistance)) || (bShootBack))){ fireTarget = (root as Main).gameStage._player; } else { fireTarget = (root as Main).gameStage._core; }; } else { fireTarget = (root as Main).gameStage._player; }; } protected function getDamage():Number{ return (0); } protected function setTurretRotation(_arg1:Number):void{ } override protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); fireTimer.stop(); fireTimer.removeEventListener(TimerEvent.TIMER, onFire); } public function getScore():int{ return (0); } protected function playShootSound():void{ } public function damageHP(_arg1:Number):void{ if (hpBar){ hpBar.takeDamage(_arg1); }; } function goForTarget(_arg1:GameObject):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:*; var _local6:*; var _local7:*; var _local8:Number; var _local9:Number; var _local10:*; moveTarget = _arg1; _local2 = (_arg1.x - x); _local3 = (_arg1.y - y); _local4 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3))); _local2 = (_local2 / _local4); _local3 = (_local3 / _local4); _local5 = Math.atan((_local3 / _local2)); _local6 = ((_local5 / Math.PI) * 180); _local7 = (_local6 + 90); if (_local2 < 0){ _local7 = (_local7 - 180); _local5 = (_local5 - Math.PI); }; setBodyRotation(_local7); _local8 = 0; _local9 = 0; if (currentState == "goForCore"){ _local9 = keepDistanceForCore; } else { _local9 = keepDistance; }; if (speed > (_local4 - _local9)){ _local8 = (_local4 - _local9); if (_local8 < 0){ _local8 = 0; }; } else { _local8 = speed; }; if (_local8 <= 0.5){ bInPosition = true; } else { bInPosition = false; }; x = (x + (_local8 * _local2)); y = (y + (_local8 * _local3)); confirmTarget(); _local2 = (fireTarget.x - x); _local3 = (fireTarget.y - y); fireDirection = Math.atan((_local3 / _local2)); _local6 = ((fireDirection / Math.PI) * 180); _local10 = (_local6 + 90); if (_local2 < 0){ _local10 = (_local10 - 180); fireDirection = (fireDirection - Math.PI); }; setTurretRotation(_local10); } public function showHP(_arg1:Boolean):void{ } protected function setBodyRotation(_arg1:Number):void{ } protected function onFire(_arg1:TimerEvent):void{ var _local2:Bullet; if (fireTarget){ if ((fireTarget is Core)){ if (Tools.distance((root as Main).gameStage._core.x, (root as Main).gameStage._core.y, x, y) < shootRangeForCore){ _local2 = new Bullet_Enemy(); _local2.bType = "Enemy_Bullet"; _local2.bulletDamage = getDamage(); _local2.ShootFromTo(x, y, fireDirection); (root as Main).gameStage.gameScene.addChild(_local2); if (Main.bHasSound){ playShootSound(); }; }; } else { if ((fireTarget is Player)){ if (Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y) < shootRangeForPlayer){ _local2 = new Bullet_Enemy(); _local2.bType = "Enemy_Bullet"; _local2.bulletDamage = getDamage(); _local2.ShootFromTo(x, y, fireDirection); (root as Main).gameStage.gameScene.addChild(_local2); if (Main.bHasSound){ playShootSound(); }; }; if (bShootBack){ bShootBack = false; }; }; }; }; } protected function collisionHandler():void{ var _local1:int; var _local2:*; var _local3:*; var _local4:*; var _local5:Number; _local1 = 0; while (_local1 < (root as Main).gameStage.gameScene.numChildren) { _local2 = (root as Main).gameStage.gameScene.getChildAt(_local1); if ((((_local2 is Enemy)) && (!((_local2 == this))))){ _local5 = Tools.distance(x, y, (_local2 as GameObject).x, (_local2 as GameObject).y); if ((((_local5 < ((this.width + this.height) / 4))) && ((Math.random() > 0.5)))){ _local3 = ((_local2 as GameObject).x - x); _local4 = ((_local2 as GameObject).y - y); x = (x - (_local3 / _local5)); y = (y - (_local4 / _local5)); }; }; if ((_local2 is Core)){ _local5 = Tools.distance(x, y, (_local2 as GameObject).x, (_local2 as GameObject).y); if (_local5 < Core.collisionDistance){ _local3 = ((_local2 as GameObject).x - x); _local4 = ((_local2 as GameObject).y - y); x = (x - ((_local3 / _local5) * (Core.collisionDistance - _local5))); y = (y - ((_local4 / _local5) * (Core.collisionDistance - _local5))); }; }; _local1++; }; } protected function getNearestWallCore():GameObject{ return ((root as Main).gameStage._core); } protected function angularMove():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:*; var _local6:*; if (moveTarget){ _local1 = (moveTarget.x - x); _local2 = (moveTarget.y - y); _local3 = Math.sqrt(((_local1 * _local1) + (_local2 * _local2))); _local1 = (_local1 / _local3); _local2 = (_local2 / _local3); _local4 = (_local3 - Math.sqrt(((_local3 * _local3) - (angularSpeed * angularSpeed)))); x = (x + (_local1 * _local4)); y = (y + (_local2 * _local4)); _local5 = (-1 * _local2); _local6 = _local1; x = (x + (_local5 * angularSpeed)); y = (y + (_local6 * angularSpeed)); }; } public function setBehavior(_arg1:int):void{ if (_arg1 == 0){ currentState = "goForPlayer"; } else { currentState = "goForCore"; }; } public function onHPOut(_arg1:Event):void{ var _local2:*; _local2 = getScore(); (root as Main).gameStage.gameHud.addScore(_local2); selfExplode(); Main.enemyKilled++; (root as Main).gameStage.gameScene.removeChild(this); } public function setHP(_arg1:Number):void{ hpBar = new HPBar(); hpBar.setHP(_arg1); addChild(hpBar); hpBar.addEventListener(HPBar.OUT_OF_HP, onHPOut); } override protected function enterFrameHandle(_arg1:Event):void{ checkMoveState(); switch (currentState){ case "goForCore": goForTarget(getNearestWallCore()); break; case "goForPlayer": goForTarget((root as Main).gameStage._player); break; }; super.enterFrameHandle(_arg1); collisionHandler(); if (bInPosition){ angularMove(); }; } public function setLevel(_arg1:int):void{ iCurrentEnemyLevel = (_arg1 - 1); setHP(HPTable[iCurrentEnemyLevel]); hpBar.y = (this.height / 2); } } }//package
Section 38
//Explode (Explode) package { public class Explode extends GameObject { public function Explode(){ addFrameScript(15, frame16); } function frame16(){ stop(); parent.removeChild(this); } } }//package
Section 39
//FirstSplashScreen (FirstSplashScreen) package { import flash.events.*; import flash.display.*; public class FirstSplashScreen extends MovieClip { var tel:int;// = 0 public static const SPLASH_OVER:String = "splash_over"; public function FirstSplashScreen(){ tel = 0; super(); alpha = 0; addEventListener(Event.ADDED_TO_STAGE, onAdd); addEventListener(Event.REMOVED_FROM_STAGE, onRemove); addEventListener(Event.ENTER_FRAME, onUpdate); } function onRemove(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, onUpdate); } function onAdd(_arg1:Event):void{ } function onUpdate(_arg1:Event):void{ var _local2:Event; if (alpha < 1){ alpha = (alpha + 0.1); } else { tel++; }; if (tel > 120){ alpha = (alpha - 0.15); if (alpha <= 0){ _local2 = new Event(SPLASH_OVER); dispatchEvent(_local2); parent.removeChild(this); }; }; } } }//package
Section 40
//FPSMeter (FPSMeter) package { import flash.display.*; import flash.text.*; public dynamic class FPSMeter extends MovieClip { public var tFPS:TextField; } }//package
Section 41
//GameHud (GameHud) package { import flash.events.*; import flash.display.*; import flash.media.*; public class GameHud extends MovieClip { public const initMaterial:int = 50; var enemyIndicators:Array;// = null public var basic:MovieClip; public var _gameMaterial:int;// = 0 public var repairHud:GameHudRepair; var upSound:Sound; public var _waveStartButton:StartWaveButton; var coreIndicators:MovieClip;// = null var outerIndicators:Array;// = null var boostFullSound:Sound; public var iRepairCost:int;// = 0 var clickSound:Sound; var _newMuteButton:NewMuteButton; public var baseUpdateHud:GameHudBaseUpdate; public var playerUpdateHud:GameHudPlayerUpdate; public var life1:PlayerLife; var downSound:Sound; public var life2:PlayerLife; var innerIndicators:Array;// = null var rolloverSound:Sound; public var gameScore:int;// = 0 public var exitHud:GameHudExit; public function GameHud(){ innerIndicators = null; outerIndicators = null; coreIndicators = null; enemyIndicators = null; clickSound = new sfx_gui_click(); rolloverSound = new sfx_gui_roll(); boostFullSound = new sfx_speedboostready(); iRepairCost = 0; gameScore = 0; _gameMaterial = 0; super(); addFrameScript(0, frame1, 9, frame10, 18, frame19, 28, frame29, 38, frame39, 48, frame49, 58, frame59); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandle); addEventListener(Event.REMOVED_FROM_STAGE, removeFromStageHandle); basic.slider.gotoAndPlay(1); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.CLICK, onPlayerUpdate); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.CLICK, onBaseUpdate); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.CLICK, onRepair); basic.exitButton.addEventListener(MouseEvent.CLICK, onExit); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.newMute.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.waveStartButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.exitButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); basic.newMute.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); basic.waveStartButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); basic.exitButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); upSound = new sfx_gui_upgradeopen(); downSound = new sfx_gui_upgradeclose(); gameMaterial = initMaterial; } function onMouseOver(_arg1:Event):void{ Main.cursor.setMenu(); } public function get gameMaterial():int{ return (_gameMaterial); } function onClosePlayerUpdate(_arg1:MouseEvent):void{ if (currentLabel == "playeron"){ basic.slider.sliderBase.playerUpdateButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.CLICK, onPlayerUpdate); gotoAndPlay("hideplayerupdate"); playDownSound(); playerUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); }; } function onCloseExit(_arg1:MouseEvent):void{ exitHud.gotoAndPlay("rollback"); basic.exitButton.addEventListener(MouseEvent.CLICK, onExit); basic.exitButton.removeEventListener(MouseEvent.CLICK, onCloseExit); exitHud.exitBase.closeButton.removeEventListener(MouseEvent.CLICK, onCloseExit); } protected function addedToStageHandle(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandle); basic.boostInd.addEventListener("boostfull", onBoostFull); _newMuteButton = basic.newMute; _waveStartButton = basic.waveStartButton; drawExtraLife((root as Main).gameStage._player.extraLives); } public function drawExtraLife(_arg1:int):void{ if (_arg1 == 1){ life1.visible = true; life2.visible = false; } else { if (_arg1 == 2){ life1.visible = true; life2.visible = true; } else { life1.visible = false; life2.visible = false; }; }; } function onBaseUpdate(_arg1:MouseEvent):void{ if (playerUpdateHud.visible){ basic.slider.sliderBase.playerUpdateButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.CLICK, onPlayerUpdate); playerUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); }; if (repairHud.visible){ basic.slider.sliderBase.repairButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.CLICK, onRepair); repairHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); }; playerUpdateHud.visible = false; baseUpdateHud.visible = true; repairHud.visible = false; basic.slider.sliderBase.baseUpdateButton.removeEventListener(MouseEvent.CLICK, onBaseUpdate); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.CLICK, onCloseBaseUpdate); gotoAndPlay("showbaseupdate"); playUpSound(); baseUpdateHud.closeButton.addEventListener(MouseEvent.CLICK, onCloseBaseUpdate); } function frame1(){ stop(); } function frame19(){ stop(); } public function addScore(_arg1:int):void{ if (Main.gameDiff == "Normal"){ _arg1 = (_arg1 * 2); }; if (Main.gameDiff == "Hard"){ _arg1 = (_arg1 * 3); }; gameScore = (gameScore + _arg1); basic.scoreNumber.text = String(gameScore); } function onCloseBaseUpdate(_arg1:MouseEvent):void{ if (currentLabel == "baseon"){ basic.slider.sliderBase.baseUpdateButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.CLICK, onBaseUpdate); gotoAndPlay("hidebaseupdate"); playDownSound(); baseUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); }; } function onMouseOut(_arg1:Event):void{ Main.cursor.setCombat(); } function onPlayerUpdate(_arg1:MouseEvent):void{ if (baseUpdateHud.visible){ basic.slider.sliderBase.baseUpdateButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.CLICK, onBaseUpdate); baseUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); }; if (repairHud.visible){ basic.slider.sliderBase.repairButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.CLICK, onRepair); repairHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); }; baseUpdateHud.visible = false; playerUpdateHud.visible = true; repairHud.visible = false; basic.slider.sliderBase.playerUpdateButton.removeEventListener(MouseEvent.CLICK, onPlayerUpdate); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.CLICK, onClosePlayerUpdate); gotoAndPlay("showplayerupdate"); playUpSound(); playerUpdateHud.closeButton.addEventListener(MouseEvent.CLICK, onClosePlayerUpdate); } protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); } function playUpSound():void{ if (Main.bHasSound){ upSound.play(); }; } function onCloseRepair(_arg1:MouseEvent):void{ if (currentLabel == "repairon"){ basic.slider.sliderBase.repairButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.CLICK, onRepair); gotoAndPlay("hiderepair"); playDownSound(); repairHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseRepair); }; } public function set gameMaterial(_arg1:int):void{ _gameMaterial = _arg1; basic.materialNumber.text = String(_gameMaterial); } function frame29(){ stop(); } function onExit(_arg1:MouseEvent):void{ exitHud.gotoAndPlay("rollout"); basic.exitButton.removeEventListener(MouseEvent.CLICK, onExit); basic.exitButton.addEventListener(MouseEvent.CLICK, onCloseExit); exitHud.exitBase.closeButton.addEventListener(MouseEvent.CLICK, onCloseExit); } function frame10(){ stop(); } function onBoostFull(_arg1:Event):void{ (root as Main).gameStage._player.bBoostable = true; if (Main.bHasSound){ boostFullSound.play(); }; } function playDownSound():void{ if (Main.bHasSound){ downSound.play(); }; } function frame49(){ stop(); } function frame39(){ stop(); } function onRepair(_arg1:MouseEvent):void{ var _local2:Number; var _local3:*; var _local4:Wall; var _local5:int; var _local6:*; if (playerUpdateHud.visible){ basic.slider.sliderBase.playerUpdateButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); basic.slider.sliderBase.playerUpdateButton.addEventListener(MouseEvent.CLICK, onPlayerUpdate); playerUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onClosePlayerUpdate); }; if (baseUpdateHud.visible){ basic.slider.sliderBase.baseUpdateButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); basic.slider.sliderBase.baseUpdateButton.addEventListener(MouseEvent.CLICK, onBaseUpdate); baseUpdateHud.closeButton.removeEventListener(MouseEvent.CLICK, onCloseBaseUpdate); }; repairHud.visible = true; playerUpdateHud.visible = false; baseUpdateHud.visible = false; iRepairCost = 0; _local2 = 0; _local6 = (root as Main).gameStage.gameScene; _local5 = 0; while (_local5 < _local6.numChildren) { _local3 = _local6.getChildAt(_local5); if ((_local3 is Wall)){ _local4 = (_local3 as Wall); _local2 = (_local2 + ((GameHudRepair.wallCost[_local4.iWallLevel] * (_local4.hpBar.fullHP - _local4.hpBar.currentHP)) / _local4.hpBar.fullHP)); }; _local5++; }; iRepairCost = int(_local2); repairHud.tRepairCost.text = String(iRepairCost); basic.slider.sliderBase.repairButton.removeEventListener(MouseEvent.CLICK, onRepair); basic.slider.sliderBase.repairButton.addEventListener(MouseEvent.CLICK, onCloseRepair); gotoAndPlay("showrepair"); playUpSound(); repairHud.closeButton.addEventListener(MouseEvent.CLICK, onCloseRepair); } function frame59(){ stop(); } public function addMaterial(_arg1:int):void{ _gameMaterial = (_gameMaterial + _arg1); basic.materialNumber.text = String(_gameMaterial); } protected function enterFrameHandle(_arg1:Event):void{ var _local2:int; var _local3:Array; var _local4:Array; var _local5:Array; var _local6:int; var _local7:*; var _local8:*; var _local9:*; var _local10:Number; var _local11:*; if (innerIndicators == null){ innerIndicators = new Array(4); outerIndicators = new Array(8); enemyIndicators = new Array(8); innerIndicators[0] = basic.in1; innerIndicators[1] = basic.in2; innerIndicators[2] = basic.in3; innerIndicators[3] = basic.in4; outerIndicators[0] = basic.out1; outerIndicators[1] = basic.out2; outerIndicators[2] = basic.out3; outerIndicators[3] = basic.out4; outerIndicators[4] = basic.out5; outerIndicators[5] = basic.out6; outerIndicators[6] = basic.out7; outerIndicators[7] = basic.out8; coreIndicators = basic.coreind; enemyIndicators[0] = basic.emy1; enemyIndicators[1] = basic.emy2; enemyIndicators[2] = basic.emy3; enemyIndicators[3] = basic.emy4; enemyIndicators[4] = basic.emy5; enemyIndicators[5] = basic.emy6; enemyIndicators[6] = basic.emy7; enemyIndicators[7] = basic.emy8; }; _local3 = (root as Main).gameStage._innerWalls; _local4 = (root as Main).gameStage._outerWalls; _local2 = 0; while (_local2 < _local3.length) { innerIndicators[_local2].gotoAndStop(_local3[_local2].getDamageLevel()); _local2++; }; _local2 = 0; while (_local2 < _local4.length) { outerIndicators[_local2].gotoAndStop(_local4[_local2].getDamageLevel()); _local2++; }; coreIndicators.gotoAndStop((root as Main).gameStage._core.getDamageLevel()); _local5 = [0, 0, 0, 0, 0, 0, 0, 0]; _local6 = 0; while (_local6 < (root as Main).gameStage.gameScene.numChildren) { _local7 = (root as Main).gameStage.gameScene.getChildAt(_local6); if ((_local7 is Enemy)){ _local10 = Tools.distance((root as Main).gameStage._core.x, (root as Main).gameStage._core.y, (_local7 as GameObject).x, (_local7 as GameObject).y); _local8 = ((_local7 as GameObject).x - (root as Main).gameStage._core.x); _local9 = ((_local7 as GameObject).y - (root as Main).gameStage._core.y); _local8 = (_local8 / _local10); _local9 = (_local9 / _local10); _local11 = ((Math.atan((_local9 / _local8)) * 180) / Math.PI); if (_local8 < 0){ _local11 = (_local11 + 180); }; _local11 = (_local11 + 90); _local2 = Math.floor((_local11 / (360 / 8))); var _local12 = _local5; var _local13 = _local2; var _local14 = (_local12[_local13] + 1); _local12[_local13] = _local14; }; _local6++; }; _local6 = 0; while (_local6 < _local5.length) { if (_local5[_local6] > 10){ _local5[_local6] = 10; }; _local6++; }; _local2 = 0; while (_local2 < enemyIndicators.length) { enemyIndicators[_local2].alpha = (_local5[_local2] / 4); _local2++; }; } } }//package
Section 42
//GameHudBaseUpdate (GameHudBaseUpdate) package { import flash.events.*; import flash.display.*; import flash.media.*; public class GameHudBaseUpdate extends MovieClip { var mouseFollowerYes:MovieClip;// = null var mouseFollowerNo:MovieClip;// = null var wallHPCost:Array; public var turret3:SimpleButton; public var turret1:SimpleButton; var wallCoverList:Array; var upgradeSound:Sound; public var closeButton:SimpleButton; public var turret2:SimpleButton; var iWeaponLevel;// = 0 public var wall1:SimpleButton; public var wall2:SimpleButton; public var wall3:SimpleButton; public var wallCover2:MovieClip; public var wallCover3:MovieClip; public var wallCover1:MovieClip; var warningSound:Sound; var turretCost:Array; public function GameHudBaseUpdate(){ turretCost = [35, 50, 250]; wallHPCost = [50, 125, 350]; wallCoverList = new Array(3); mouseFollowerYes = null; mouseFollowerNo = null; iWeaponLevel = 0; super(); upgradeSound = new sfx_turretplaced(); turret1.addEventListener(MouseEvent.CLICK, onBuildTurret); turret2.addEventListener(MouseEvent.CLICK, onBuildTurret); turret3.addEventListener(MouseEvent.CLICK, onBuildTurret); wall1.addEventListener(MouseEvent.CLICK, onUpgradeWall); wall2.addEventListener(MouseEvent.CLICK, onUpgradeWall); wall3.addEventListener(MouseEvent.CLICK, onUpgradeWall); wallCoverList[0] = wallCover1; wallCoverList[1] = wallCover2; wallCoverList[2] = wallCover3; removeChild(wallCoverList[0]); warningSound = new sfx_gui_warning1(); turret1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); turret1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); turret2.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); turret2.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); turret3.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); turret3.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); wall1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); wall1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); wall2.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); wall2.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); wall3.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); wall3.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); closeButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); closeButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); } function onMouseOver(_arg1:Event):void{ Main.cursor.setMenu(); } function onMouseOut(_arg1:Event):void{ Main.cursor.setCombat(); } function onBuildTurret(_arg1:Event):void{ var _local2:Boolean; _local2 = false; if (_arg1.target == turret1){ if ((root as Main).gameStage.gameHud.gameMaterial >= turretCost[0]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - turretCost[0]); iWeaponLevel = 1; _local2 = true; }; }; if (_arg1.target == turret2){ if ((root as Main).gameStage.gameHud.gameMaterial >= turretCost[1]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - turretCost[1]); iWeaponLevel = 2; _local2 = true; }; }; if (_arg1.target == turret3){ if ((root as Main).gameStage.gameHud.gameMaterial >= turretCost[2]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - turretCost[2]); iWeaponLevel = 3; _local2 = true; }; }; if (_local2){ stage.addEventListener(MouseEvent.MOUSE_MOVE, buildTurretMouseMove); stage.addEventListener(MouseEvent.MOUSE_DOWN, buildTurretDown); (root as Main).gameStage._player.bCoreMode = true; (root as Main).gameStage.gameHud.onCloseBaseUpdate(null); } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; } function onUpgradeWall(_arg1:Event):void{ var _local2:Boolean; var _local3:*; var _local4:*; var _local5:int; var _local6:*; _local2 = false; _local3 = 0; if (_arg1.target == wall1){ if ((root as Main).gameStage.gameHud.gameMaterial >= wallHPCost[0]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - wallHPCost[0]); addChild(wallCoverList[0]); removeChild(wallCoverList[1]); _local3 = 1; _local2 = true; }; }; if (_arg1.target == wall2){ if ((root as Main).gameStage.gameHud.gameMaterial >= wallHPCost[1]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - wallHPCost[1]); addChild(wallCoverList[1]); removeChild(wallCoverList[2]); _local3 = 2; _local2 = true; }; }; if (_arg1.target == wall3){ if ((root as Main).gameStage.gameHud.gameMaterial >= wallHPCost[2]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - wallHPCost[2]); addChild(wallCoverList[2]); _local3 = 3; _local2 = true; }; }; if (_local2){ _local6 = (root as Main).gameStage.gameScene; _local5 = 0; while (_local5 < _local6.numChildren) { _local4 = _local6.getChildAt(_local5); if ((_local4 is Wall)){ (_local4 as Wall).iWallLevel = _local3; }; _local5++; }; (root as Main).gameStage.gameText.setText1("Walls upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; } function buildTurretDown(_arg1:MouseEvent):void{ var _local2:Pillar; _local2 = getNearAvailablePillar(_arg1.stageX, _arg1.stageY); if (_local2 != null){ switch (iWeaponLevel){ case 1: _local2.upgradeToTurret(); break; case 2: _local2.upgradeToArtillary(); break; case 3: _local2.upgradeToMissile(); break; }; (root as Main).gameStage.gameText.setText1("Turret built!"); if (Main.bHasSound){ upgradeSound.play(); }; }; (root as Main).gameStage._player.bCoreMode = false; (root as Main).gameStage.gameScene.coreMarker.removeChild(mouseFollowerYes); (root as Main).gameStage.gameScene.coreMarker.removeChild(mouseFollowerNo); mouseFollowerYes = null; mouseFollowerNo = null; stage.removeEventListener(MouseEvent.MOUSE_MOVE, buildTurretMouseMove); stage.removeEventListener(MouseEvent.MOUSE_DOWN, buildTurretDown); } function buildTurretMouseMove(_arg1:MouseEvent):void{ if (mouseFollowerYes == null){ mouseFollowerYes = new BuildYes(); mouseFollowerNo = new BuildNo(); (root as Main).gameStage.gameScene.coreMarker.addChild(mouseFollowerYes); (root as Main).gameStage.gameScene.coreMarker.addChild(mouseFollowerNo); }; mouseFollowerYes.x = (root as Main).gameStage.gameScene.coreMarker.mouseX; mouseFollowerYes.y = (root as Main).gameStage.gameScene.coreMarker.mouseY; mouseFollowerNo.x = (root as Main).gameStage.gameScene.coreMarker.mouseX; mouseFollowerNo.y = (root as Main).gameStage.gameScene.coreMarker.mouseY; if (getNearAvailablePillar(_arg1.stageX, _arg1.stageY) != null){ mouseFollowerYes.visible = true; mouseFollowerNo.visible = false; } else { mouseFollowerYes.visible = false; mouseFollowerNo.visible = true; }; } function getNearAvailablePillar(_arg1:Number, _arg2:Number):Pillar{ var _local3:*; var _local4:int; var _local5:*; var _local6:*; var _local7:Pillar; _local5 = (root as Main).gameStage.gameScene; _local7 = null; _local4 = 0; while (_local4 < _local5.numChildren) { _local3 = _local5.getChildAt(_local4); if ((_local3 is Pillar)){ _local6 = Tools.distance((GameStage._camera.posX + _arg1), (GameStage._camera.posY + _arg2), _local3.x, _local3.y); if (_local6 < (((_local3 as Pillar).width + (_local3 as Pillar).height) / 4)){ if ((_local3 as Pillar).item == null){ _local7 = (_local3 as Pillar); break; }; break; }; }; _local4++; }; return (_local7); } } }//package
Section 43
//GameHudExit (GameHudExit) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.text.*; public class GameHudExit extends MovieClip { public var exitBase:MovieClip; public static var GAME_OVER:String = "gameover"; public function GameHudExit(){ addFrameScript(8, frame9, 19, frame20); gotoAndStop("end"); exitBase.yesButton.addEventListener(MouseEvent.CLICK, onConfirm); exitBase.noButton.addEventListener(MouseEvent.CLICK, onConfirm); exitBase.yesButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); exitBase.yesButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); exitBase.noButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); exitBase.noButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); exitBase.closeButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); exitBase.closeButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); } function onMouseOver(_arg1:Event):void{ Main.cursor.setMenu(); } function frame20(){ stop(); } function onMouseOut(_arg1:Event):void{ Main.cursor.setCombat(); } function frame9(){ stop(); } function onConfirm(_arg1:Event):void{ var _local2:Event; if (_arg1.target == exitBase.yesButton){ _local2 = new Event(GAME_OVER, true); dispatchEvent(_local2); }; if (_arg1.target == exitBase.noButton){ (root as Main).gameStage.gameHud.onCloseExit(null); }; } } }//package
Section 44
//GameHudPlayerUpdate (GameHudPlayerUpdate) package { import flash.events.*; import flash.display.*; import flash.media.*; public class GameHudPlayerUpdate extends MovieClip { public var armorBtn2:SimpleButton; public var armorBtn3:SimpleButton; public var armorBtn1:SimpleButton; public var speedBtn1:SimpleButton; public var speedBtn3:SimpleButton; public var speedBtn2:SimpleButton; var gunCost:Array; var upgradeSound:Sound; public var closeButton:SimpleButton; public var speedCover3:MovieClip; public var speedCover1:MovieClip; public var armorCover1:MovieClip; var armorCoverList:Array; public var speedCover2:MovieClip; public var armorCover3:MovieClip; public var armorCover2:MovieClip; var gunCoverList:Array; public var gunBtn1:SimpleButton; public var gunBtn3:SimpleButton; public var gunCover1:MovieClip; public var gunCover2:MovieClip; public var gunBtn2:SimpleButton; var speedCoverList:Array; public var gunCover3:MovieClip; var speedCost:Array; var armorCost:Array; var warningSound:Sound; public function GameHudPlayerUpdate(){ gunCost = [100, 200, 500]; speedCost = [25, 50, 75]; armorCost = [50, 125, 350]; speedCoverList = new Array(3); gunCoverList = new Array(3); armorCoverList = new Array(3); upgradeSound = new sfx_upgradebought(); super(); gunBtn1.addEventListener(MouseEvent.CLICK, onGun); gunBtn2.addEventListener(MouseEvent.CLICK, onGun); gunBtn3.addEventListener(MouseEvent.CLICK, onGun); speedBtn1.addEventListener(MouseEvent.CLICK, onSpeed); speedBtn2.addEventListener(MouseEvent.CLICK, onSpeed); speedBtn3.addEventListener(MouseEvent.CLICK, onSpeed); armorBtn1.addEventListener(MouseEvent.CLICK, onArmor); armorBtn2.addEventListener(MouseEvent.CLICK, onArmor); armorBtn3.addEventListener(MouseEvent.CLICK, onArmor); gunBtn1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); gunBtn1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); gunBtn2.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); gunBtn2.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); gunBtn3.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); gunBtn3.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); speedBtn1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); speedBtn1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); speedBtn2.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); speedBtn2.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); speedBtn3.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); speedBtn3.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); armorBtn1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); armorBtn1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); armorBtn2.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); armorBtn2.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); armorBtn3.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); armorBtn3.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); closeButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); closeButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); gunCoverList[0] = gunCover1; gunCoverList[1] = gunCover2; gunCoverList[2] = gunCover3; speedCoverList[0] = speedCover1; speedCoverList[1] = speedCover2; speedCoverList[2] = speedCover3; armorCoverList[0] = armorCover1; armorCoverList[1] = armorCover2; armorCoverList[2] = armorCover3; removeChild(gunCoverList[0]); removeChild(speedCoverList[0]); removeChild(armorCoverList[0]); warningSound = new sfx_gui_warning1(); } function onMouseOver(_arg1:Event):void{ Main.cursor.setMenu(); } function onSpeed(_arg1:Event):void{ if (_arg1.target == speedBtn1){ if ((root as Main).gameStage.gameHud.gameMaterial >= speedCost[0]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - speedCost[0]); (root as Main).gameStage._player.iSpeedLevel = 1; addChild(speedCoverList[0]); removeChild(speedCoverList[1]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == speedBtn2){ if ((root as Main).gameStage.gameHud.gameMaterial >= speedCost[1]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - speedCost[1]); (root as Main).gameStage._player.iSpeedLevel = 2; addChild(speedCoverList[1]); removeChild(speedCoverList[2]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == speedBtn3){ if ((root as Main).gameStage.gameHud.gameMaterial >= speedCost[2]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - speedCost[2]); (root as Main).gameStage._player.iSpeedLevel = 3; addChild(speedCoverList[2]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; } function onArmor(_arg1:Event):void{ if (_arg1.target == armorBtn1){ if ((root as Main).gameStage.gameHud.gameMaterial >= armorCost[0]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - armorCost[0]); addChild(armorCoverList[0]); removeChild(armorCoverList[1]); (root as Main).gameStage._player.iHPLevel = 1; (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == armorBtn2){ if ((root as Main).gameStage.gameHud.gameMaterial >= armorCost[1]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - armorCost[1]); addChild(armorCoverList[1]); removeChild(armorCoverList[2]); (root as Main).gameStage._player.iHPLevel = 2; (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == armorBtn3){ if ((root as Main).gameStage.gameHud.gameMaterial >= armorCost[2]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - armorCost[2]); addChild(armorCoverList[2]); (root as Main).gameStage._player.iHPLevel = 3; (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; } function onMouseOut(_arg1:Event):void{ Main.cursor.setCombat(); } function onGun(_arg1:Event):void{ if (_arg1.target == gunBtn1){ if ((root as Main).gameStage.gameHud.gameMaterial >= gunCost[0]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - gunCost[0]); (root as Main).gameStage._player.iCurrentGun = 1; addChild(gunCoverList[0]); removeChild(gunCoverList[1]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == gunBtn2){ if ((root as Main).gameStage.gameHud.gameMaterial >= gunCost[1]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - gunCost[1]); (root as Main).gameStage._player.iCurrentGun = 2; addChild(gunCoverList[1]); removeChild(gunCoverList[2]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; if (_arg1.target == gunBtn3){ if ((root as Main).gameStage.gameHud.gameMaterial >= gunCost[2]){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - gunCost[2]); (root as Main).gameStage._player.iCurrentGun = 3; addChild(gunCoverList[2]); (root as Main).gameStage.gameText.setText1("Vehicle upgraded!"); if (Main.bHasSound){ upgradeSound.play(); }; } else { (root as Main).gameStage.gameText.setText1("No enough Materials!"); if (Main.bHasSound){ warningSound.play(); }; }; }; } } }//package
Section 45
//GameHudRepair (GameHudRepair) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.text.*; public class GameHudRepair extends MovieClip { public var noButton:SimpleButton; public var closeButton:SimpleButton; public var tRepairCost:TextField; var warningSound:Sound; public var yesButton:SimpleButton; public static var wallCost = [3, 6, 8, 10]; public function GameHudRepair(){ yesButton.addEventListener(MouseEvent.CLICK, onConfirm); noButton.addEventListener(MouseEvent.CLICK, onConfirm); yesButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); yesButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); noButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); noButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); closeButton.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); closeButton.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); warningSound = new sfx_gui_warning1(); } function onMouseOver(_arg1:Event):void{ Main.cursor.setMenu(); } function onMouseOut(_arg1:Event):void{ Main.cursor.setCombat(); } function onConfirm(_arg1:Event):void{ var _local2:*; var _local3:int; var _local4:*; if ((((_arg1.target == yesButton)) && (((root as Main).gameStage.gameHud.gameMaterial >= (root as Main).gameStage.gameHud.iRepairCost)))){ (root as Main).gameStage.gameHud.gameMaterial = ((root as Main).gameStage.gameHud.gameMaterial - (root as Main).gameStage.gameHud.iRepairCost); _local4 = (root as Main).gameStage.gameScene; _local3 = 0; while (_local3 < _local4.numChildren) { _local2 = _local4.getChildAt(_local3); if ((_local2 is Wall)){ (_local2 as Wall).restoreHP(); }; _local3++; }; (root as Main).gameStage.gameText.setText("Repaired!"); }; (root as Main).gameStage.gameHud.onCloseRepair(null); } } }//package
Section 46
//GameObject (GameObject) package { import flash.events.*; import flash.display.*; public class GameObject extends MovieClip { public function GameObject(){ addEventListener(Event.ADDED_TO_STAGE, addedToStageHandle); addEventListener(Event.REMOVED_FROM_STAGE, removeFromStageHandle); } protected function addedToStageHandle(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandle); } protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); } protected function enterFrameHandle(_arg1:Event):void{ } } }//package
Section 47
//GameOverPage (GameOverPage) package { import flash.events.*; import flash.display.*; import mochi.*; import flash.text.*; import flash.net.*; import flash.ui.*; public class GameOverPage extends MovieClip { public var replayBtn:SimpleButton; public var tKillNum:TextField; public var btnMoreGames:SimpleButton; public var tDifficulty:TextField; public var tMaterialSpent:TextField; public var tLoseReason:TextField; public var btnSubmit:SimpleButton; public var tWave:TextField; public var tScore:TextField; public var logo:bubbleboxlogo; public var tMaterialCollect:TextField; public static var REPLAY_GAME:String = "replaygame"; public function GameOverPage(){ replayBtn.addEventListener(MouseEvent.CLICK, onRestart); btnMoreGames.addEventListener(MouseEvent.CLICK, onClickMoreGames); btnSubmit.addEventListener(MouseEvent.CLICK, onClickSubmit); } function onRestart(_arg1:MouseEvent):void{ var _local2:Event; _local2 = new Event(REPLAY_GAME, true); dispatchEvent(_local2); parent.removeChild(this); } function onClickMoreGames(_arg1:Event):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.2games.com/clickreg.php?type=gamestats&id=1232&subid=moregamesatend"); navigateToURL(_local2, "_blank"); } function onClickSubmit(_arg1:Event):void{ Mouse.show(); MochiScores.showLeaderboard({boardID:"4932d7a5e0bfe946", score:(root as Main).gameStage.gameHud.gameScore, onClose:resetGame}); } function resetGame():void{ Mouse.hide(); } } }//package
Section 48
//GameScene (GameScene) package { import flash.display.*; public class GameScene extends MovieClip { public var scenecollision:MovieClip; public var background:LevelBG; public var ow4:Outer_Wall; public var ow8:Outer_Wall; public var ow6:Outer_Wall; public var ow1:Outer_Wall; public var ow3:Outer_Wall; public var ow7:Outer_Wall; public var ow2:Outer_Wall; public var p11:Pillar; public var core:Core; public var ow5:Outer_Wall; public var p12:Pillar; public var p10:Pillar; public var coreMarker:MovieClip; public var p1:Pillar; public var iw1:Inner_Wall; public var iw3:Inner_Wall; public var p2:Pillar; public var p3:Pillar; public var p5:Pillar; public var iw4:Inner_Wall; public var p7:Pillar; public var p8:Pillar; public var p9:Pillar; public var iw2:Inner_Wall; public var p6:Pillar; public var player:Player; public var p4:Pillar; } }//package
Section 49
//gameslogoro (gameslogoro) package { import flash.events.*; import flash.display.*; import flash.net.*; public class gameslogoro extends MovieClip { public function gameslogoro(){ addFrameScript(0, frame1); addEventListener(MouseEvent.ROLL_OVER, onRollOver); addEventListener(MouseEvent.ROLL_OUT, onRollOut); addEventListener(MouseEvent.CLICK, onClickLogo); } function onClickLogo(_arg1:Event):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.2games.com/clickreg.php?type=gamestats&id=1232&subid=splash"); navigateToURL(_local2, "_blank"); } function frame1(){ stop(); } function onRollOut(_arg1:Event):void{ gotoAndStop(1); } function onRollOver(_arg1:Event):void{ gotoAndStop(2); } } }//package
Section 50
//GameStage (GameStage) package { import flash.events.*; import flash.display.*; import flash.media.*; public class GameStage extends MovieClip { public var _player:Player; public var pickupLayer:Sprite; public var gameText:TextPlayer; var levelController:LevelController; var helperCounter;// = 0 public var _pillars:Array; public var gameHud:GameHud; public var helper:Help; public var gameScene:GameScene; var clearSound:Sound; public var _background:LevelBG; public var _core:Core; public var _outerWalls:Array; public var iEnemyNumber:int;// = 0 public var _innerWalls:Array; public static var _camera:Camera = new Camera(); public function GameStage(){ levelController = new LevelController(); clearSound = new sfx_areaclear(); helperCounter = 0; iEnemyNumber = 0; super(); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandle); addEventListener(Event.REMOVED_FROM_STAGE, removeFromStageHandle); } protected function addedToStageHandle(_arg1:Event):void{ gameScene = new GameScene(); addChild(gameScene); pickupLayer = new Sprite(); gameScene.addChild(pickupLayer); gameHud = new GameHud(); addChild(gameHud); gameText = new TextPlayer(); addChild(gameText); registerGameScene(); addEventListener(Event.ENTER_FRAME, enterFrameHandle); } protected function registerGameScene():void{ _background = gameScene.background; _player = gameScene.player; if (Main.gameDiff == "Easy"){ _player.extraLives = 2; }; if (Main.gameDiff == "Normal"){ _player.extraLives = 1; }; _core = gameScene.core; _outerWalls = new Array(8); _outerWalls[0] = gameScene.ow1; _outerWalls[1] = gameScene.ow2; _outerWalls[2] = gameScene.ow3; _outerWalls[3] = gameScene.ow4; _outerWalls[4] = gameScene.ow5; _outerWalls[5] = gameScene.ow6; _outerWalls[6] = gameScene.ow7; _outerWalls[7] = gameScene.ow8; _innerWalls = new Array(4); _innerWalls[0] = gameScene.iw1; _innerWalls[1] = gameScene.iw2; _innerWalls[2] = gameScene.iw3; _innerWalls[3] = gameScene.iw4; _pillars = new Array(12); _pillars[0] = gameScene.p1; _pillars[1] = gameScene.p2; _pillars[2] = gameScene.p3; _pillars[3] = gameScene.p4; _pillars[4] = gameScene.p5; _pillars[5] = gameScene.p6; _pillars[6] = gameScene.p7; _pillars[7] = gameScene.p8; _pillars[8] = gameScene.p9; _pillars[9] = gameScene.p10; _pillars[10] = gameScene.p11; _pillars[11] = gameScene.p12; _camera.setPosition((_player.x - (Main._viewWidth / 2)), (_player.y - (Main._viewHeight / 2))); _camera.setOffSet((Main._viewWidth / 4), (Main._viewHeight / 4)); levelController._stage = this; helper = new Help(); gameHud.addChild(helper); stage.addEventListener(KeyboardEvent.KEY_DOWN, onNextHelper); stage.addEventListener(MouseEvent.CLICK, onNextHelper); } protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); } public function startFromHelp(_arg1:Event):void{ gameHud._waveStartButton.base.removeEventListener(MouseEvent.CLICK, startFromHelp); stage.removeEventListener(KeyboardEvent.KEY_DOWN, onNextHelper); stage.removeEventListener(MouseEvent.CLICK, onNextHelper); gameHud.removeChild(helper); gameHud._waveStartButton.setActive(false); levelController.startLevel("level.xml"); } function onNextHelper(_arg1:Event):void{ helperCounter++; if (helperCounter <= 5){ helper.gotoAndStop(helperCounter); if (helperCounter == 5){ gameHud._waveStartButton.base.addEventListener(MouseEvent.CLICK, startFromHelp, false, 2); }; }; } protected function enterFrameHandle(_arg1:Event):void{ var _local2:*; var _local3:int; if (_camera){ gameScene.x = -(_camera.posX); gameScene.y = -(_camera.posY); }; iEnemyNumber = 0; _local3 = 0; while (_local3 < gameScene.numChildren) { _local2 = gameScene.getChildAt(_local3); if ((_local2 is Enemy)){ iEnemyNumber++; }; _local3++; }; if ((((iEnemyNumber == 0)) && ((levelController.bIsSpawning == false)))){ if (gameHud.basic.slider.currentLabel == "slider_end"){ _player.restoreHP(); gameHud.basic.slider.gotoAndPlay(1); gameText.setText1("Area clear!"); if (Main.bHasSound){ clearSound.play(); }; }; } else { if (gameHud.basic.slider.currentLabel == "slider_out"){ gameHud.basic.slider.gotoAndPlay((gameHud.basic.slider.currentFrame + 1)); gameHud.onCloseRepair(null); gameHud.onCloseBaseUpdate(null); gameHud.onClosePlayerUpdate(null); }; }; } } }//package
Section 51
//Help (Help) package { import flash.display.*; public class Help extends MovieClip { public function Help(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5); } function frame3(){ stop(); } function frame1(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame2(){ stop(); } } }//package
Section 52
//HPBar (HPBar) package { import flash.events.*; import flash.display.*; public class HPBar extends MovieClip { public var bar:MovieClip; protected var mcBar:MovieClip; public var _currentHP:Number; public var fullHP:Number; public static var OUT_OF_HP:String = "out_of_hp"; public function HPBar(){ mcBar = bar; } function get currentHP():Number{ return (_currentHP); } function set currentHP(_arg1:Number):void{ _currentHP = _arg1; } public function restore():void{ _currentHP = fullHP; mcBar.scaleX = (_currentHP / fullHP); } public function takeDamage(_arg1:Number):void{ var _local2:Event; if (_currentHP > _arg1){ _currentHP = (_currentHP - _arg1); } else { _currentHP = 0; _local2 = new Event(OUT_OF_HP, true); dispatchEvent(_local2); }; mcBar.scaleX = (_currentHP / fullHP); } public function setHP(_arg1:Number):void{ fullHP = _arg1; _currentHP = _arg1; } } }//package
Section 53
//HPBar_Player (HPBar_Player) package { import flash.display.*; public class HPBar_Player extends HPBar { public var playerbar:MovieClip; public function HPBar_Player(){ mcBar = playerbar; } } }//package
Section 54
//IHPObject (IHPObject) package { import flash.events.*; public interface IHPObject { function showHP(_arg1:Boolean):void; function onHPOut(_arg1:Event):void; function damageHP(_arg1:Number):void; function setHP(_arg1:Number):void; } }//package
Section 55
//Inner_Wall (Inner_Wall) package { public class Inner_Wall extends Wall { } }//package
Section 56
//LevelBG (LevelBG) package { import flash.display.*; public dynamic class LevelBG extends MovieClip { public var zoneC:MovieClip; public var zoneA:MovieClip; public var zoneB:MovieClip; public var zoneD:MovieClip; } }//package
Section 57
//LevelController (LevelController) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.utils.*; import flash.net.*; public class LevelController extends MovieClip { var iTotalGroup:int;// = 0 var levelXML:XML; var gameoverTimer:Timer; var levelTimer:Timer; var iTotalRun:int;// = 0 var maxNumLimit:int;// = 12 var levelTimerCount:int; var incomingSound:Sound; var spawnTimer:Timer; var intervalRun:Number; var iCurrentEnemy:int;// = 0 var iCurrentGroup:int;// = 0 var iCurrentLevel:int;// = 0 var iCurrentRun:int;// = 0 var levelTimerTotal:int; var spawningIdx:int; var spawnIdx:int; var interval:Number; var intervalLevel:Number; var spawnList:Array; public var bIsSpawning:Boolean;// = false var iTotalLevel:int;// = 0 var iTotalEnemy:int;// = 0 var myLoader; public var _stage:MovieClip;// = null public static var GAME_OVER:String = "gameover"; public function LevelController(){ levelXML = new XML(); iCurrentLevel = 0; iCurrentRun = 0; iCurrentGroup = 0; iCurrentEnemy = 0; iTotalLevel = 0; iTotalRun = 0; iTotalGroup = 0; iTotalEnemy = 0; maxNumLimit = 12; _stage = null; bIsSpawning = false; super(); incomingSound = new sfx_gui_incoming(); } public function waveStart():void{ levelTimer.start(); } function xmlLoaded(_arg1:Event):void{ levelXML = <LevelData Interval="1000" IntervalForRun="5000" IntervalForLevel="5000"> <!-- Wave1 --> <Level> <Run> <Group Type="Scout" Level="1" Number="1" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="1" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="1" Number="1" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="1"/> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave2 --> <Level> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="1" Number="1" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="1" Number="1" Zone="D" GoForCore="1"/> </Run> </Level> <!-- Wave3 --> <Level> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="1" Number="1" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave4 --> <Level> <Run> <Group Type="Scout" Level="1" Number="2" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="1" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="1" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="1" Number="1" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="1" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="1" Number="4" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave5 --> <Level> <Run> <Group Type="Scout" Level="1" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="3" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="1" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="2" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="1" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="2" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave6 --> <Level> <Run> <Group Type="Scout" Level="1" Number="3" Zone="A" GoForCore="1"/> <Group Type="Scout" Level="2" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="1" Number="1" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="D" GoForCore="1"/> </Run> </Level> <!-- Wave7 --> <Level> <Run> <Group Type="Scout" Level="1" Number="2" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="2" Number="2" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="1" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="2" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="1" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="2" Number="2" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave8 --> <Level> <Run> <Group Type="Ranger" Level="1" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="1" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="1" Number="4" Zone="C" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="2" Number="2" Zone="A" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="2" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="2" Zone="D" GoForCore="1"/> </Run> </Level> <!-- Wave9 --> <Level> <Run> <Group Type="Scout" Level="2" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="2" Number="3" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="2" Number="3" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="2" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="2" Number="3" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="2" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="2" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave10 --> <Level> <Run> <Group Type="Boss" Level="1" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave11 --> <Level> <Run> <Group Type="Scout" Level="2" Number="3" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="2" Number="4" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="2" Number="4" Zone="C" GoForCore="1"/> </Run> </Level> <!-- Wave12 --> <Level> <Run> <Group Type="Ranger" Level="2" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="2" Number="3" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="2" Number="4" Zone="B" GoForCore="1"/> </Run> </Level> <!-- Wave13 --> <Level> <Run> <Group Type="Ranger" Level="2" Number="2" Zone="C" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="2" Number="2" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="3" Number="2" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="3" Number="2" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="3" Number="1" Zone="B" GoForCore="0"/> <Group Type="Tank" Level="2" Number="1" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="3" Number="1" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="3" Number="1" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="3" Number="1" Zone="D" GoForCore="0"/> <Group Type="Scout" Level="3" Number="1" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="2" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="1" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave14 --> <Level> <Run> <Group Type="Scout" Level="2" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="3" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="2" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave15 --> <Level> <Run> <Group Type="Scout" Level="2" Number="3" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="3" Number="4" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="3" Number="4" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave16 --> <Level> <Run> <Group Type="Ranger" Level="2" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="2" Number="4" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="4" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="2" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="3" Number="4" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave17 --> <Level> <Run> <Group Type="Tank" Level="3" Number="1" Zone="A" GoForCore="0"/> <Group Type="Tank" Level="3" Number="1" Zone="B" GoForCore="0"/> <Group Type="Tank" Level="3" Number="1" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="3" Number="2" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="3" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="3" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="1" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave18 --> <Level> <Run> <Group Type="Scout" Level="3" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="3" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="3" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave19 --> <Level> <Run> <Group Type="Scout" Level="3" Number="4" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="3" Number="5" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="3" Number="5" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="5" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="3" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="3" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="3" Number="5" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave20 --> <Level> <Run> <Group Type="Boss" Level="2" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave21 --> <Level> <Run> <Group Type="Tank" Level="3" Number="2" Zone="A" GoForCore="1"/> <Group Type="Tank" Level="3" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="3" Number="2" Zone="B" GoForCore="1"/> <Group Type="Tank" Level="3" Number="2" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="1" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave22 --> <Level> <Run> <Group Type="Scout" Level="3" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="4" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="3" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="4" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave23 --> <Level> <Run> <Group Type="Scout" Level="3" Number="4" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="4" Number="5" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="5" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="3" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="3" Number="5" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="3" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="3" Number="1" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="4" Number="5" Zone="C" GoForCore="1"/> </Run> </Level> <!-- Wave24 --> <Level> <Run> <Group Type="Ranger" Level="3" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="3" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="4" Number="2" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="3" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="4" Number="6" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave25 --> <Level> <Run> <Group Type="Scout" Level="4" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="4" Number="2" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="4" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="1" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave26 --> <Level> <Run> <Group Type="Scout" Level="4" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="4" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="4" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="4" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave27 --> <Level> <Run> <Group Type="Scout" Level="4" Number="4" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="4" Number="4" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="A" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="D" GoForCore="1"/> <Group Type="Ranger" Level="4" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="4" Number="4" Zone="C" GoForCore="1"/> </Run> </Level> <!-- Wave28 --> <Level> <Run> <Group Type="Ranger" Level="4" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="4" Number="4" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="4" Number="4" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave29 --> <Level> <Run> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="5" Number="2" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="2" Zone="A" GoForCore="1"/> <Group Type="Tank" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> </Level> <!-- Wave30 --> <Level> <Run> <Group Type="Boss" Level="3" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave31 --> <Level> <Run> <Group Type="Scout" Level="4" Number="3" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="5" Number="4" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="5" Number="4" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave32 --> <Level> <Run> <Group Type="Ranger" Level="4" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="4" Number="4" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="4" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="4" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="5" Number="4" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave33 --> <Level> <Run> <Group Type="Scout" Level="5" Number="2" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="5" Number="2" Zone="B" GoForCore="0"/> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Scout" Level="5" Number="2" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="1" Zone="B" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave34 --> <Level> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="5" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave35 --> <Level> <Run> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="2" Zone="A" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="5" Number="4" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave36 --> <Level> <Run> <Group Type="Ranger" Level="5" Number="3" Zone="B" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Tank" Level="5" Number="1" Zone="D" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="5" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="4" Zone="C" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="0"/> <Group Type="Scout" Level="5" Number="5" Zone="B" GoForCore="0"/> </Run> </Level> <!-- Wave37 --> <Level> <Run> <Group Type="Scout" Level="5" Number="2" Zone="A" GoForCore="1"/> <Group Type="Scout" Level="5" Number="2" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="1" Zone="A" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="1" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="1" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="1" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="2" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="1" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="5" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="1" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="1"/> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="1"/> <Group Type="Tank" Level="5" Number="1" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave38 --> <Level> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="2" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="5" Number="1" Zone="D" GoForCore="0"/> </Run> </Level> <!-- Wave39 --> <Level> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Ranger" Level="5" Number="2" Zone="A" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="2" Zone="B" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Scout" Level="5" Number="3" Zone="A" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="B" GoForCore="1"/> <Group Type="Scout" Level="5" Number="3" Zone="C" GoForCore="0"/> <Group Type="Ranger" Level="5" Number="2" Zone="D" GoForCore="1"/> </Run> <Run> <Group Type="Tank" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Tank" Level="5" Number="2" Zone="C" GoForCore="0"/> <Group Type="Tank" Level="5" Number="2" Zone="C" GoForCore="1"/> <Group Type="Tank" Level="5" Number="2" Zone="C" GoForCore="0"/> </Run> </Level> <!-- Wave40 --> <Level> <Run> <Group Type="Boss" Level="4" Number="1" Zone="D" GoForCore="0"/> </Run> <Run> <Group Type="Boss" Level="4" Number="1" Zone="A" GoForCore="0"/> </Run> <Run> <Group Type="Boss" Level="4" Number="1" Zone="B" GoForCore="0"/> </Run> <Run> <Group Type="Boss" Level="4" Number="1" Zone="C" GoForCore="0"/> </Run> </Level> </LevelData> ; interval = levelXML.@Interval; intervalRun = levelXML.@IntervalForRun; intervalLevel = levelXML.@IntervalForLevel; levelTimerCount = 0; levelTimerTotal = (intervalLevel / 1000); levelTimer = new Timer(1000, levelTimerTotal); spawnTimer = new Timer(interval); iCurrentLevel = 0; iTotalLevel = levelXML.elements().length(); if (iCurrentLevel < iTotalLevel){ trace([iCurrentLevel, iTotalLevel]); levelTimer.addEventListener(TimerEvent.TIMER, onCountGenerateLevel); levelTimer.start(); (_stage as GameStage).gameText.setText(((((("wave " + (iCurrentLevel + 1)) + "/") + iTotalLevel) + " in ") + levelTimerTotal)); }; } function onFinishSpawn(_arg1:TimerEvent):void{ spawnTimer.stop(); spawningIdx++; spawnEnemy(); } function onFinishLevel():void{ iCurrentLevel++; Main.waveIdx = iCurrentLevel; if (iCurrentLevel < iTotalLevel){ levelTimerCount = 0; levelTimerTotal = (intervalLevel / 1000); levelTimer.reset(); (_stage as GameStage).gameHud._waveStartButton.setActive(true); } else { gameoverTimer = new Timer(4000, 1); gameoverTimer.addEventListener(TimerEvent.TIMER, onGameOver); gameoverTimer.start(); }; } function onGenerateLevel(_arg1:TimerEvent):void{ if (Main.bHasSound){ incomingSound.play(); }; iCurrentRun = 0; iTotalRun = levelXML.Level[iCurrentLevel].elements().length(); levelTimer.stop(); spawnList = new Array(); spawnIdx = 0; iCurrentRun = 0; while (iCurrentRun < iTotalRun) { scanCurrentRun(); iCurrentRun++; }; if (iCurrentLevel < (iTotalLevel - 1)){ }; spawningIdx = 0; spawnTimer.addEventListener(TimerEvent.TIMER, onFinishSpawn); setSpawnStatus(true); spawnEnemy(); } function onCountGenerateLevel(_arg1:TimerEvent):void{ levelTimerCount++; (_stage as GameStage).gameText.setText(((((("wave " + (iCurrentLevel + 1)) + "/") + iTotalLevel) + " in ") + (levelTimerTotal - levelTimerCount))); if (levelTimerCount == levelTimerTotal){ onGenerateLevel(_arg1); }; } function setSpawnStatus(_arg1:Boolean):void{ bIsSpawning = _arg1; if (_arg1){ trace("start spawning"); } else { trace("stop spawning"); }; } function spawnIndiv(_arg1:String, _arg2:int, _arg3:String, _arg4:int):void{ var _local5:Number; var _local6:Number; var _local7:Scout; var _local8:Ranger; var _local9:Tank; var _local10:Boss; if ((_stage as GameStage).iEnemyNumber >= maxNumLimit){ spawningIdx--; return; }; switch (_arg3){ case "A": _local5 = (_stage as GameStage)._background.zoneA.x; _local6 = (_stage as GameStage)._background.zoneA.y; break; case "B": _local5 = (_stage as GameStage)._background.zoneB.x; _local6 = (_stage as GameStage)._background.zoneB.y; break; case "C": _local5 = (_stage as GameStage)._background.zoneC.x; _local6 = (_stage as GameStage)._background.zoneC.y; break; case "D": _local5 = (_stage as GameStage)._background.zoneD.x; _local6 = (_stage as GameStage)._background.zoneD.y; break; }; _local5 = (_local5 + ((Math.random() * 50) - 25)); _local6 = (_local6 + ((Math.random() * 50) - 25)); switch (_arg1){ case "Scout": _local7 = new Scout(); _local7.x = _local5; _local7.y = _local6; _local7.setLevel(_arg2); _local7.setBehavior(_arg4); (_stage as GameStage).gameScene.addChild(_local7); break; case "Ranger": _local8 = new Ranger(); _local8.x = _local5; _local8.y = _local6; _local8.setLevel(_arg2); _local8.setBehavior(_arg4); (_stage as GameStage).gameScene.addChild(_local8); break; case "Tank": _local9 = new Tank(); _local9.x = _local5; _local9.y = _local6; _local9.setLevel(_arg2); _local9.setBehavior(_arg4); (_stage as GameStage).gameScene.addChild(_local9); break; case "Boss": _local10 = new Boss(); _local10.x = _local5; _local10.y = _local6; _local10.setLevel(_arg2); _local10.setBehavior(_arg4); (_stage as GameStage).gameScene.addChild(_local10); break; }; } function scanCurrentRun():void{ iCurrentGroup = 0; iTotalGroup = levelXML.Level[iCurrentLevel].Run[iCurrentRun].elements().length(); iCurrentGroup = 0; while (iCurrentGroup < iTotalGroup) { scanCurrentGroup(); iCurrentGroup++; }; spawnList[(spawnIdx - 1)].waittime = (spawnList[(spawnIdx - 1)].waittime + intervalRun); } public function startLevel(_arg1:String):void{ xmlLoaded(null); } function checkEnemyNumber(_arg1:Event):void{ if ((_stage as GameStage).iEnemyNumber == 0){ removeEventListener(Event.ENTER_FRAME, checkEnemyNumber); onFinishLevel(); }; } function spawnEnemy():void{ if (spawningIdx < spawnList.length){ trace([spawnList[spawningIdx].type, spawnList[spawningIdx].level, spawnList[spawningIdx].area, spawnList[spawningIdx].waittime]); spawnIndiv(spawnList[spawningIdx].type, spawnList[spawningIdx].level, spawnList[spawningIdx].area, spawnList[spawningIdx].goForCore); spawnTimer.delay = spawnList[spawningIdx].waittime; spawnTimer.start(); if (spawningIdx == (spawnList.length - 1)){ setSpawnStatus(false); }; } else { addEventListener(Event.ENTER_FRAME, checkEnemyNumber); }; } function scanCurrentGroup():void{ var _local1:int; var _local2:int; var _local3:String; var _local4:String; var _local5:int; _local1 = levelXML.Level[iCurrentLevel].Run[iCurrentRun].Group[iCurrentGroup].@Number; _local2 = levelXML.Level[iCurrentLevel].Run[iCurrentRun].Group[iCurrentGroup].@Level; _local3 = levelXML.Level[iCurrentLevel].Run[iCurrentRun].Group[iCurrentGroup].@Type; _local4 = levelXML.Level[iCurrentLevel].Run[iCurrentRun].Group[iCurrentGroup].@Zone; _local5 = levelXML.Level[iCurrentLevel].Run[iCurrentRun].Group[iCurrentGroup].@GoForCore; iCurrentEnemy = 0; while (iCurrentEnemy < _local1) { spawnList[spawnIdx] = new Object(); spawnList[spawnIdx].level = _local2; spawnList[spawnIdx].type = _local3; spawnList[spawnIdx].area = _local4; spawnList[spawnIdx].waittime = interval; spawnList[spawnIdx].goForCore = _local5; spawnIdx++; iCurrentEnemy++; }; } function onGameOver(_arg1:TimerEvent):void{ var _local2:Event; _local2 = new Event(GAME_OVER, true); _stage.dispatchEvent(_local2); } } }//package
Section 58
//LoadingBox (LoadingBox) package { import flash.display.*; import CPMStar.*; import flash.text.*; public class LoadingBox extends MovieClip { public var adBox:MovieClip; var CPMStarContentSpotID:String;// = "617QDDE73A46" public var logo:bubbleboxlogo; public var loading_txt:TextField; public function LoadingBox(){ var _local1:DisplayObject; CPMStarContentSpotID = "617QDDE73A46"; super(); addFrameScript(0, frame1); trace("loading box"); _local1 = new AdLoader(CPMStarContentSpotID); adBox.addChild(_local1); } function frame1(){ stop(); } public function update(_arg1:int):void{ loading_txt.text = (String(_arg1) + "%"); } } }//package
Section 59
//Main (Main) package { import flash.events.*; import flash.display.*; import mochi.*; import flash.media.*; import flash.utils.*; import flash.net.*; import flash.ui.*; public class Main extends MovieClip { var bNoLoading:Boolean;// = false public var tutorialPage:TutPage; var bLoaderTimerTriggered:Boolean;// = false public var titleStarted:Boolean;// = false var oldT;// = 0 public var titlePage:TitlePage; var fpsMeter; public var diffPage:DifficultyPage; public var gameStage:GameStage; public var gameoverPage:GameOverPage; public var percentLoaded:int; var newT;// = 0 var startSound:Sound; public var gameState:int;// = 0 var frameRate;// = 0 public var loaderStarted:Boolean;// = false public var loadingBox:LoadingBox; var loaderTimer:Timer; public static const STATE_SYSTEM_LOADER:int = 0; public static const STATE_SYSTEM_TITLE:int = 1; public static var _sceneWidth:Number = 2400; public static var materialSpent:int = 0; public static var _viewHeight:Number = 480; public static var waveIdx:int = 0; public static var _sceneHeight:Number = 1800; public static var bHasSound:Boolean = true; public static var cursor:MovieClip; public static var gameDiff:String = ""; public static var materialTotal:int = 0; public static var enemyKilled:int = 0; public static var backgroundMusic:Sound; public static var _viewWidth:Number = 640; public static var diffFactor:Number = 1; public static var loseReason:String = ""; public static var backgroundMusicChannel:SoundChannel; public function Main(){ var _local1:MovieClip; gameState = STATE_SYSTEM_LOADER; loaderStarted = false; titleStarted = false; bLoaderTimerTriggered = false; bNoLoading = false; startSound = new sfx_gamestart(); oldT = 0; newT = 0; frameRate = 0; super(); addFrameScript(0, frame1, 2, frame3); _local1 = new MovieClip(); addChild(_local1); MochiServices.connect("d33479ea0920fe73", _local1); loaderTimer = new Timer(10000, 1); loaderTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onLoaderTimerComplete); loaderTimer.start(); addEventListener(Event.ENTER_FRAME, runGame); } function onLoaderTimerComplete(_arg1:Event):void{ trace("Loader timer trigger"); loaderTimer.removeEventListener(TimerEvent.TIMER_COMPLETE, onLoaderTimerComplete); bLoaderTimerTriggered = true; if (bNoLoading){ removeChild(loadingBox); loadingBox = null; this.loaderInfo.removeEventListener(Event.INIT, loadingComplete); this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadingProgress); trace("finishPreload 2"); finishPreload(); }; } protected function init():void{ Tools.init(stage); titlePage = new TitlePage(); showTitle(null); tutorialPage = new TutPage(); diffPage = new DifficultyPage(); gameoverPage = new GameOverPage(); addEventListener(TitlePage.PLAY_GAME, startGame); addEventListener(TitlePage.GAME_TUTORIAL, showTutorial); addEventListener(TutPage.PLAY_GAME, startGame); addEventListener(TutPage.BACK_TUTORIAL, showTitle); addEventListener(DifficultyPage.PLAY_GAME_EASY, startGameWithDiff_Easy); addEventListener(DifficultyPage.PLAY_GAME_NORMAL, startGameWithDiff_Normal); addEventListener(DifficultyPage.PLAY_GAME_HARD, startGameWithDiff_Hard); addEventListener(GameOverPage.REPLAY_GAME, showTitle); backgroundMusic = new CoreDefense1(); backgroundMusicChannel = backgroundMusic.play(0, int.MAX_VALUE); fpsMeter = new FPSMeter(); } public function runGame(_arg1:Event):void{ switch (gameState){ case STATE_SYSTEM_LOADER: doLoadScreen(); break; case STATE_SYSTEM_TITLE: doTitleScreen(); break; }; } function siteLock():void{ var _local1:String; var _local2:Number; var _local3:Number; var _local4:String; var _local5:Number; var _local6:Number; _local1 = stage.loaderInfo.url; _local2 = (_local1.indexOf("://") + 3); _local3 = _local1.indexOf("/", _local2); _local4 = _local1.substring(_local2, _local3); _local5 = (_local4.lastIndexOf(".") - 1); _local6 = (_local4.lastIndexOf(".", _local5) + 1); _local4 = _local4.substring(_local6, _local4.length); if (((((!((_local4 == "2games.com"))) && (!((_local4 == "bubblebox.com"))))) && (!((_local4 == "xs4all.nl"))))){ root.visible = false; }; } function moveMouse(_arg1:MouseEvent):void{ cursor.x = (_arg1.stageX + 1); cursor.y = (_arg1.stageY + 1); } function frame3(){ stop(); } protected function showTitle(_arg1:Event):void{ addChildAt(titlePage, 0); } function frame1(){ stop(); } public function doTitleScreen():void{ var _local1:FirstSplashScreen; if (((!(titleStarted)) && ((currentFrame == 3)))){ titleStarted = true; stage.showDefaultContextMenu = false; _local1 = new FirstSplashScreen(); addChild(_local1); _local1.addEventListener(FirstSplashScreen.SPLASH_OVER, onFirstSplashOver); }; } function onSecondSplashOver(_arg1:Event):void{ Mouse.hide(); cursor = new MouseCursor(); addChild(cursor); addEventListener(MouseEvent.MOUSE_MOVE, moveMouse); stage.stageFocusRect = false; init(); addEventListener(Event.ENTER_FRAME, onFPS); } protected function startGame(_arg1:Event):void{ addChildAt(diffPage, 0); } protected function startGameWithDiff(_arg1:Event):void{ gameStage = new GameStage(); addChildAt(gameStage, 0); stage.focus = gameStage; Main.cursor.setCombat(); gameStage.addEventListener(Player.GAME_OVER, onGameOver); loseReason = ""; enemyKilled = 0; materialTotal = 0; materialSpent = 0; if (Main.bHasSound){ startSound.play(); }; } protected function showTutorial(_arg1:Event):void{ addChildAt(tutorialPage, 0); } public function loadingProgress(_arg1:Event):void{ percentLoaded = ((this.loaderInfo.bytesLoaded / this.loaderInfo.bytesTotal) * 100); trace(percentLoaded); loadingBox.update(percentLoaded); } function onFPS(_arg1:Event):void{ newT = getTimer(); frameRate = Math.round((1000 / (newT - oldT))); oldT = newT; } public function loadingComplete(_arg1:Event){ if (bLoaderTimerTriggered){ trace("loadingComplete"); removeChild(loadingBox); loadingBox = null; this.loaderInfo.removeEventListener(Event.INIT, loadingComplete); this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadingProgress); trace("finishPreload 2"); finishPreload(); } else { bNoLoading = true; }; } function onFirstSplashOver(_arg1:Event):void{ var _local2:SecondSplashScreen; _local2 = new SecondSplashScreen(); addChild(_local2); _local2.addEventListener(SecondSplashScreen.SPLASH_OVER, onSecondSplashOver); } protected function startGameWithDiff_Hard(_arg1:Event):void{ diffFactor = 0.5; gameDiff = "Hard"; startGameWithDiff(_arg1); } protected function startGameWithDiff_Normal(_arg1:Event):void{ diffFactor = 0.75; gameDiff = "Normal"; startGameWithDiff(_arg1); } public function doLoadScreen():void{ if (!loaderStarted){ loadingBox = new LoadingBox(); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadingProgress); this.loaderInfo.addEventListener(Event.COMPLETE, loadingComplete); loaderStarted = true; percentLoaded = ((this.loaderInfo.bytesLoaded / this.loaderInfo.bytesTotal) * 100); loadingBox.update(percentLoaded); addChild(loadingBox); if (this.loaderInfo.bytesLoaded == this.loaderInfo.bytesTotal){ bNoLoading = true; }; }; } function resetGame():void{ } protected function onGameOver(_arg1:Event):void{ gameStage.removeEventListener(Player.GAME_OVER, onGameOver); gameoverPage.tLoseReason.selectable = false; gameoverPage.tDifficulty.selectable = false; gameoverPage.tKillNum.selectable = false; gameoverPage.tWave.selectable = false; gameoverPage.tScore.selectable = false; gameoverPage.tMaterialCollect.selectable = false; gameoverPage.tMaterialSpent.selectable = false; gameoverPage.tLoseReason.text = loseReason; gameoverPage.tDifficulty.text = gameDiff; gameoverPage.tKillNum.text = String(enemyKilled); gameoverPage.tWave.text = String(waveIdx); gameoverPage.tScore.text = String(gameStage.gameHud.gameScore); gameoverPage.tMaterialCollect.text = String(materialTotal); gameoverPage.tMaterialSpent.text = String(((materialTotal - gameStage.gameHud.gameMaterial) + gameStage.gameHud.initMaterial)); removeChild(gameStage); addChildAt(gameoverPage, 0); Main.cursor.setMenu(); } protected function startGameWithDiff_Easy(_arg1:Event):void{ diffFactor = 1; gameDiff = "Easy"; startGameWithDiff(_arg1); } public function finishPreload():void{ this.play(); gameState = STATE_SYSTEM_TITLE; } } }//package
Section 60
//MouseCursor (MouseCursor) package { import flash.display.*; public class MouseCursor extends MovieClip { public var bInMenu:Boolean;// = true public function MouseCursor(){ bInMenu = true; super(); addFrameScript(0, frame1, 1, frame2); } function frame1(){ stop(); } function frame2(){ stop(); } public function setMenu():void{ gotoAndStop(1); bInMenu = true; } public function setCombat():void{ gotoAndStop(2); bInMenu = false; } } }//package
Section 61
//NewMuteButton (NewMuteButton) package { import flash.events.*; import flash.display.*; public class NewMuteButton extends MovieClip { public var items:MovieClip; public function NewMuteButton(){ addEventListener(MouseEvent.CLICK, onMouseOver); items.gotoAndStop(1); } function onMouseOver(_arg1:Event):void{ items.gotoAndPlay("comeout"); removeEventListener(MouseEvent.CLICK, onMouseOver); addEventListener(MouseEvent.CLICK, onMouseOut); } function onMouseOut(_arg1:MouseEvent):void{ items.gotoAndPlay("comein"); removeEventListener(MouseEvent.CLICK, onMouseOut); addEventListener(MouseEvent.CLICK, onMouseOver); if (_arg1.target == items.item1){ Main.bHasSound = true; Main.backgroundMusicChannel.stop(); Main.backgroundMusicChannel = Main.backgroundMusic.play(0, int.MAX_VALUE); }; if (_arg1.target == items.item2){ Main.bHasSound = true; Main.backgroundMusicChannel.stop(); }; if (_arg1.target == items.item3){ Main.bHasSound = false; Main.backgroundMusicChannel.stop(); }; stage.focus = (root as Main).gameStage; } } }//package
Section 62
//Outer_Wall (Outer_Wall) package { public class Outer_Wall extends Wall { } }//package
Section 63
//ParticleGen (ParticleGen) package { import flash.events.*; import flash.display.*; import flash.geom.*; public class ParticleGen extends GameObject { var scaleDecrease:Number;// = 0.2 var alphaDecrease:Number;// = 0.1 var refreshCount:int;// = 0 var ptEnd:Point; var particleIdx;// = 0 var refreshRate:int;// = 0 var particleInterval:Number;// = 50 var particleArray:Array; public var maxParticles:Number;// = 5 var ptStart:Point; public var spreadWide:Number;// = 4 public function ParticleGen(){ particleArray = new Array(); maxParticles = 5; particleInterval = 50; alphaDecrease = 0.1; scaleDecrease = 0.2; refreshRate = 0; refreshCount = 0; spreadWide = 4; ptStart = new Point(0, 0); ptEnd = new Point(0, 0); particleIdx = 0; super(); } function addParticle(_arg1:Event){ var _local2:TestParticle; var _local3:TestParticle; if (particleArray.length <= maxParticles){ _local2 = new TestParticle(); _local2.alpha = ((Math.random() * 0.8) + 0.2); _local2.scaleX = (_local2.scaleY = ((Math.random() * 1) + 1)); _local2.xMovement = ((Math.random() * spreadWide) - (spreadWide / 2)); _local2.yMovement = ((Math.random() * 2) + 4); particleArray.push(_local2); ptStart.x = 0; ptStart.y = 0; ptEnd.x = _local2.xMovement; ptEnd.y = _local2.yMovement; ptStart = this.localToGlobal(ptStart); ptEnd = this.localToGlobal(ptEnd); _local2.x = (ptStart.x + GameStage._camera.posX); _local2.y = (ptStart.y + GameStage._camera.posY); _local2.xMovement = (ptEnd.x - ptStart.x); _local2.yMovement = (ptEnd.y - ptStart.y); _local2.addEventListener(Event.ENTER_FRAME, moveParticle); (root as Main).gameStage.gameScene.addChild(_local2); } else { _local3 = particleArray[particleIdx]; _local3.alpha = ((Math.random() * 0.8) + 0.2); _local3.scaleX = (_local3.scaleY = ((Math.random() * 1) + 1)); _local3.xMovement = ((Math.random() * 4) - 2); _local3.yMovement = ((Math.random() * 2) + 4); ptStart.x = 0; ptStart.y = 0; ptEnd.x = _local3.xMovement; ptEnd.y = _local3.yMovement; ptStart = this.localToGlobal(ptStart); ptEnd = this.localToGlobal(ptEnd); _local3.x = (ptStart.x + GameStage._camera.posX); _local3.y = (ptStart.y + GameStage._camera.posY); _local3.xMovement = (ptEnd.x - ptStart.x); _local3.yMovement = (ptEnd.y - ptStart.y); particleIdx++; if (particleIdx == maxParticles){ particleIdx = 0; }; _local3.transform.colorTransform = this.transform.colorTransform; }; } function moveParticle(_arg1:Event){ _arg1.currentTarget.x = (_arg1.currentTarget.x + _arg1.currentTarget.xMovement); _arg1.currentTarget.y = (_arg1.currentTarget.y + _arg1.currentTarget.yMovement); _arg1.currentTarget.alpha = (_arg1.currentTarget.alpha - alphaDecrease); _arg1.currentTarget.scaleX = (_arg1.currentTarget.scaleX - scaleDecrease); _arg1.currentTarget.scaleY = (_arg1.currentTarget.scaleY - scaleDecrease); if (root){ if ((root as Main).gameStage._player.visible == false){ _arg1.currentTarget.visible = false; }; }; } override protected function enterFrameHandle(_arg1:Event):void{ if (refreshCount >= refreshRate){ addParticle(_arg1); refreshCount = 0; }; refreshCount++; } } }//package
Section 64
//PickUp (PickUp) package { import flash.events.*; import flash.display.*; import flash.media.*; public class PickUp extends MovieClip { var checkDistance:Number;// = 80 var bStartFly:Boolean;// = false var pickDistance:Number;// = 30 var picksound:Sound; var flySpeed:Number;// = 10 public var mymaterial:int;// = 0 public function PickUp(){ checkDistance = 80; pickDistance = 30; bStartFly = false; flySpeed = 10; mymaterial = 0; picksound = new sfx_pickup_mat(); super(); addEventListener(Event.ADDED_TO_STAGE, addedToStageHandle); addEventListener(Event.REMOVED_FROM_STAGE, removeFromStageHandle); } protected function addedToStageHandle(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandle); } protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); } protected function enterFrameHandle(_arg1:Event):void{ var _local2:*; var _local3:*; var _local4:*; _local2 = Tools.distance(x, y, (root as Main).gameStage._player.x, (root as Main).gameStage._player.y); if (bStartFly){ _local3 = ((root as Main).gameStage._player.x - x); _local4 = ((root as Main).gameStage._player.y - y); _local3 = (_local3 / _local2); _local4 = (_local4 / _local2); x = (x + (_local3 * flySpeed)); y = (y + (_local4 * flySpeed)); if (_local2 < pickDistance){ (root as Main).gameStage.gameHud.addMaterial(mymaterial); Main.materialTotal = (Main.materialTotal + mymaterial); picksound.play(); parent.removeChild(this); }; } else { if (_local2 < checkDistance){ bStartFly = true; }; }; } } }//package
Section 65
//Pillar (Pillar) package { public class Pillar extends GameObject { var item:Pillar_Item;// = null public function Pillar(){ item = null; super(); } public function upgradeToArtillary():void{ if (item){ } else { item = new Pillar_Artillary(); item.x = x; item.y = y; (root as Main).gameStage.gameScene.addChild(item); }; } public function upgradeToMissile():void{ if (item){ } else { item = new Pillar_Missile(); item.x = x; item.y = y; (root as Main).gameStage.gameScene.addChild(item); }; } public function upgradeToTurret():void{ if (item){ } else { item = new Pillar_Turret(); item.x = x; item.y = y; (root as Main).gameStage.gameScene.addChild(item); }; } } }//package
Section 66
//Pillar_Artillary (Pillar_Artillary) package { import flash.media.*; public class Pillar_Artillary extends Pillar_Item { var midFire:Sound; public function Pillar_Artillary(){ shootRange = 600; shootInterval = 6000; damage = 35; midFire = new sfx_turret_medgun(); } override protected function playShootSound():void{ if (Main.bHasSound){ midFire.play(); }; } override function shootAtEnemy():void{ var _local1:Bullet; _local1 = new BulletTurret2(); _local1.bulletDamage = damage; _local1.ShootFromTo(x, y, directionRad); (root as Main).gameStage.gameScene.addChild(_local1); playShootSound(); } } }//package
Section 67
//Pillar_Item (Pillar_Item) package { import flash.events.*; import flash.utils.*; public class Pillar_Item extends GameObject { var shootInterval:Number;// = 1000 var directionRad:Number;// = 0 var bAmmo:Boolean;// = true var shootTimer:Timer;// = null var shootRange:Number;// = 0 var damage:Number;// = 0 var targetEnemy:Enemy;// = null public function Pillar_Item(){ shootRange = 0; targetEnemy = null; shootTimer = null; shootInterval = 1000; bAmmo = true; damage = 0; directionRad = 0; super(); } function fireEnemy():void{ if (((targetEnemy) && (bAmmo))){ shootAtEnemy(); bAmmo = false; shootTimer.reset(); shootTimer.start(); }; } function shootAtEnemy():void{ var _local1:Bullet; _local1 = new Bullet(); _local1.bulletDamage = damage; _local1.ShootFromTo(x, y, directionRad); (root as Main).gameStage.gameScene.addChild(_local1); playShootSound(); } function onReload(_arg1:TimerEvent):void{ if (bAmmo == false){ bAmmo = true; }; } protected function playShootSound():void{ } function getEnemyInRange():void{ var _local1:*; var _local2:int; var _local3:Number; var _local4:Number; var _local5:int; var _local6:Number; if (targetEnemy == null){ _local4 = 10000; _local5 = -1; _local2 = 0; while (_local2 < (root as Main).gameStage.gameScene.numChildren) { _local1 = (root as Main).gameStage.gameScene.getChildAt(_local2); if ((_local1 is Enemy)){ _local3 = Tools.distance(x, y, (_local1 as Enemy).x, (_local1 as Enemy).y); if (_local3 < _local4){ _local4 = _local3; _local5 = _local2; }; }; _local2++; }; if (((!((_local5 == -1))) && ((_local4 < shootRange)))){ targetEnemy = ((root as Main).gameStage.gameScene.getChildAt(_local5) as Enemy); }; } else { if (targetEnemy.root){ _local6 = Tools.distance(x, y, targetEnemy.x, targetEnemy.y); if (_local6 > shootRange){ targetEnemy = null; }; } else { targetEnemy = null; }; }; } function rotateToEnemy():void{ var _local1:Number; var _local2:Number; var _local3:*; var _local4:*; if (targetEnemy){ _local1 = (targetEnemy.x - x); _local2 = (targetEnemy.y - y); directionRad = Math.atan((_local2 / _local1)); _local3 = ((directionRad / Math.PI) * 180); _local4 = (_local3 - 90); if (_local1 < 0){ _local4 = (_local4 - 180); directionRad = (directionRad - Math.PI); }; rotation = _local4; }; } override protected function enterFrameHandle(_arg1:Event):void{ if (shootTimer == null){ shootTimer = new Timer(shootInterval, 1); shootTimer.addEventListener(TimerEvent.TIMER, onReload); }; getEnemyInRange(); rotateToEnemy(); fireEnemy(); super.enterFrameHandle(_arg1); } } }//package
Section 68
//Pillar_Missile (Pillar_Missile) package { import flash.media.*; public class Pillar_Missile extends Pillar_Item { public var currentRocketNum:int;// = 0 var heavyFire:Sound; var rocketNumLimits;// = 1 public function Pillar_Missile(){ rocketNumLimits = 1; currentRocketNum = 0; super(); shootRange = 440; shootInterval = 1000; damage = 50; heavyFire = new sfx_turret_heavygun(); } override function shootAtEnemy():void{ var _local1:Bullet; if (currentRocketNum < rocketNumLimits){ _local1 = new BulletTurret3(); _local1.bulletDamage = damage; _local1.setOwner(this); _local1.ShootFromTo(x, y, directionRad); (_local1 as Rocket_Gun3).bGuiding = true; (root as Main).gameStage.gameScene.addChild(_local1); if (Main.bHasSound){ heavyFire.play(); }; }; } } }//package
Section 69
//Pillar_Turret (Pillar_Turret) package { import flash.media.*; public class Pillar_Turret extends Pillar_Item { var lightFire:Sound; public function Pillar_Turret(){ lightFire = new sfx_turret_lightgun(); super(); shootRange = 380; shootInterval = 250; damage = 10; } override protected function playShootSound():void{ if (Main.bHasSound){ lightFire.play(); }; } override function shootAtEnemy():void{ var _local1:Bullet; _local1 = new BulletTurret1(); _local1.bulletDamage = damage; _local1.ShootFromTo(x, y, directionRad); (root as Main).gameStage.gameScene.addChild(_local1); playShootSound(); } } }//package
Section 70
//Player (Player) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.utils.*; import flash.geom.*; import flash.ui.*; public class Player extends GameObject implements IHPObject { protected var speedLoss:Number;// = 0.97 var directionRad:Number; var particleGenLeft:ParticleGen; var boostCooldown:Number;// = 4000 var _iHPLevel:int;// = 0 var greenUpgradeSpeed; public var mouseXRelative:Number;// = 0 var redUpgrade; var boostDuration:Number;// = 2000 var blueUpgrade; var lightFire:Sound; var accelerateBoostList:Array; public var bCoreMode:Boolean;// = false private var _iCurrentGun:int;// = 0 var invulCounter:int;// = 0 var upgradeSpeedColor:ColorTransform; public var currentRocketNum:int;// = 0 var overSound:Sound; var midFire:Sound; var upgradeColor:ColorTransform; var rebornTimer:Timer; protected var weaponDamage; var explodeSound:Sound; var redUpgradeSpeed; var rocketNumLimits;// = 1 public var extraLives:int;// = 0 protected var accelerate:Number; var accelerateNormalList:Array; protected var speedX:Number;// = 0 protected var speedY:Number;// = 0 protected var friction:Number;// = 0.1 protected var fireRates; var blueUpgradeSpeed; var _iSpeedLevel:int;// = 0 var bFireActive1:Boolean;// = false var bFireActive2:Boolean;// = false var bFireActive3:Boolean;// = false public var mouseXAbs:Number;// = 0 var boostSound:Sound; var collisionPushDist;// = 10 var bBoostable:Boolean;// = false public var mouseYRelative:Number;// = 0 var gameoverTimer:Timer; var particleGenRight:ParticleGen; var fireTimer1:Timer; var fireTimer3:Timer; var boostTimer:Timer;// = null var fireTimer2:Timer; public var mouseYAbs:Number;// = 0 var greenUpgrade; protected var speedMax:Number; public var body:MovieClip; var heavyFire:Sound; var speedMaxNormalList:Array; var bInvulnerable:Boolean;// = false var speedMaxBoostList:Array; var invulTimer:Timer; var playerHPList:Array; var hpBar:HPBar;// = null public static var GAME_OVER:String = "gameover"; public function Player(){ _iHPLevel = 0; _iSpeedLevel = 0; speedMaxNormalList = [5, 6, 7, 8]; speedMaxBoostList = [9, 10, 11, 12]; accelerateNormalList = [18, 19, 20, 21]; accelerateBoostList = [25, 26, 27, 28]; playerHPList = [100, 180, 260, 320]; rocketNumLimits = 1; currentRocketNum = 0; extraLives = 0; speedX = 0; speedY = 0; speedMax = speedMaxNormalList[0]; accelerate = accelerateNormalList[0]; friction = 0.1; speedLoss = 0.97; _iCurrentGun = 0; fireRates = [400, 400, 1000]; weaponDamage = [8, 8, 35]; boostDuration = 2000; boostCooldown = 4000; collisionPushDist = 10; overSound = new sfx_gameover(); upgradeColor = new ColorTransform(); redUpgrade = [0, 50, 100, 150]; greenUpgrade = [0, 0, 0, 0]; blueUpgrade = [0, 0, 0, 0]; upgradeSpeedColor = new ColorTransform(); redUpgradeSpeed = [0, -100, -150, -200]; greenUpgradeSpeed = [0, -100, -150, -200]; blueUpgradeSpeed = [0, 0, 0, 0]; fireTimer1 = new Timer(fireRates[0]); fireTimer2 = new Timer(fireRates[1]); fireTimer3 = new Timer(fireRates[2]); bFireActive1 = false; bFireActive2 = false; bFireActive3 = false; mouseXAbs = 0; mouseYAbs = 0; mouseXRelative = 0; mouseYRelative = 0; bCoreMode = false; bBoostable = false; boostTimer = null; boostSound = new sfx_speedboost(); hpBar = null; bInvulnerable = false; invulCounter = 0; super(); setFireRate(); lightFire = new sfx_player_lightgun(); midFire = new sfx_player_mediumgun(); heavyFire = new sfx_player_heavygun(); explodeSound = new sfx_explosion1(); } protected function setRotation():void{ var _local1:*; var _local2:*; var _local3:*; _local1 = (mouseXAbs - x); _local2 = (mouseYAbs - y); directionRad = Math.atan((_local2 / _local1)); _local3 = ((directionRad / Math.PI) * 180); body.rotation = (_local3 + 90); if (_local1 < 0){ body.rotation = (body.rotation - 180); directionRad = (directionRad - Math.PI); }; } function shootBullet(_arg1:int):void{ var _local2:Bullet; var _local3:Bullet; var _local4:Point; var _local5:Point; var _local6:Rocket_Gun3; var _local7:Point; if ((((_arg1 == 0)) || ((_arg1 == 1)))){ if (_arg1 == 0){ _local2 = new Bullet(); _local3 = new Bullet(); _local2.setOwner(this); _local3.setOwner(this); _local4 = new Point(body.leftgun1.x, body.leftgun1.y); _local5 = new Point(body.rightgun1.x, body.rightgun1.y); if (Main.bHasSound){ lightFire.play(); }; } else { _local2 = new Bullet_Gun2(); _local3 = new Bullet_Gun2(); _local2.setOwner(this); _local3.setOwner(this); _local4 = new Point(body.leftgun2.x, body.leftgun2.y); _local5 = new Point(body.rightgun2.x, body.rightgun2.y); if (Main.bHasSound){ midFire.play(); }; }; _local4 = this.body.localToGlobal(_local4); _local5 = this.body.localToGlobal(_local5); _local2.bulletDamage = weaponDamage[_arg1]; _local3.bulletDamage = weaponDamage[_arg1]; _local2.ShootFromTo((_local4.x + GameStage._camera.posX), (_local4.y + GameStage._camera.posY), directionRad); (root as Main).gameStage.gameScene.addChild(_local2); _local3.ShootFromTo((_local5.x + GameStage._camera.posX), (_local5.y + GameStage._camera.posY), directionRad); (root as Main).gameStage.gameScene.addChild(_local3); }; if (_arg1 == 2){ if (currentRocketNum < rocketNumLimits){ _local6 = new Rocket_Gun3(); _local7 = new Point(body.gun3.x, body.gun3.y); _local6.setOwner(this); _local7 = this.body.localToGlobal(_local7); _local6.bGuiding = true; _local6.bulletDamage = weaponDamage[_arg1]; _local6.ShootFromTo((_local7.x + GameStage._camera.posX), (_local7.y + GameStage._camera.posY), directionRad); (root as Main).gameStage.gameScene.addChild(_local6); if (Main.bHasSound){ heavyFire.play(); }; }; }; } public function restoreHP():void{ if (hpBar){ hpBar.restore(); }; } override protected function addedToStageHandle(_arg1:Event):void{ addEventListener(Event.ENTER_FRAME, enterFrameHandle); stage.addEventListener(MouseEvent.MOUSE_DOWN, mousedownHandler); stage.addEventListener(MouseEvent.MOUSE_MOVE, mousemoveHandler); stage.addEventListener(MouseEvent.MOUSE_UP, mouseupHandler); stage.addEventListener("keyDown", onSpeedBoost); particleGenLeft = new ParticleGen(); particleGenLeft.x = body.leftEngine.x; particleGenLeft.y = body.leftEngine.y; particleGenLeft.rotation = body.leftEngine.rotation; body.addChild(particleGenLeft); particleGenRight = new ParticleGen(); particleGenRight.x = body.rightEngine.x; particleGenRight.y = body.rightEngine.y; particleGenRight.rotation = body.rightEngine.rotation; body.addChild(particleGenRight); upgradeColor.redOffset = redUpgrade[iHPLevel]; upgradeColor.greenOffset = greenUpgrade[iHPLevel]; upgradeColor.blueOffset = blueUpgrade[iHPLevel]; this.transform.colorTransform = upgradeColor; upgradeSpeedColor.redOffset = redUpgradeSpeed[iSpeedLevel]; upgradeSpeedColor.greenOffset = greenUpgradeSpeed[iSpeedLevel]; upgradeSpeedColor.blueOffset = blueUpgradeSpeed[iSpeedLevel]; particleGenLeft.transform.colorTransform = upgradeColor; particleGenRight.transform.colorTransform = upgradeColor; } public function get iCurrentGun():int{ return (_iCurrentGun); } protected function mousemoveHandler(_arg1:MouseEvent):void{ mouseXRelative = _arg1.stageX; mouseYRelative = _arg1.stageY; mouseXAbs = (_arg1.stageX + GameStage._camera.posX); mouseYAbs = (_arg1.stageY + GameStage._camera.posY); setRotation(); } protected function mousedownHandler(_arg1:MouseEvent):void{ if (Main.cursor.bInMenu){ return; }; switch (iCurrentGun){ case 0: bFireActive1 = true; break; case 1: bFireActive1 = true; bFireActive2 = true; break; case 2: bFireActive1 = true; bFireActive2 = true; bFireActive3 = true; break; case 3: bFireActive1 = true; bFireActive2 = true; bFireActive3 = true; break; }; if (bFireActive1){ if (fireTimer1.running){ } else { shootBullet(0); fireTimer1.start(); }; }; if (bFireActive2){ if (fireTimer2.running){ } else { shootBullet(1); fireTimer2.start(); }; }; if (bFireActive3){ if (fireTimer3.running){ } else { shootBullet(2); fireTimer3.start(); }; }; } public function set iCurrentGun(_arg1:int):void{ this._iCurrentGun = _arg1; if (_iCurrentGun == 3){ doubleFireRate(); rocketNumLimits = 2; }; } public function damageHP(_arg1:Number):void{ if (hpBar){ hpBar.takeDamage(_arg1); }; } function setFireRate():void{ fireTimer1.addEventListener(TimerEvent.TIMER, onFire); fireTimer2.addEventListener(TimerEvent.TIMER, onFire); fireTimer3.addEventListener(TimerEvent.TIMER, onFire); } function onReborn(_arg1:TimerEvent):void{ extraLives--; this.visible = true; bInvulnerable = true; invulCounter = 0; invulTimer = new Timer(100, 30); invulTimer.addEventListener(TimerEvent.TIMER, onInvul); invulTimer.start(); upgradeColor.redOffset = (redUpgrade[iHPLevel] + (3 * 60)); upgradeColor.greenOffset = (greenUpgrade[iHPLevel] + (3 * 60)); upgradeColor.blueOffset = (blueUpgrade[iHPLevel] + (3 * 60)); this.transform.colorTransform = upgradeColor; (root as Main).gameStage.gameHud.drawExtraLife(extraLives); restoreHP(); fireTimer1.addEventListener(TimerEvent.TIMER, onFire); fireTimer2.addEventListener(TimerEvent.TIMER, onFire); fireTimer3.addEventListener(TimerEvent.TIMER, onFire); addEventListener(Event.ENTER_FRAME, enterFrameHandle); stage.addEventListener(MouseEvent.MOUSE_DOWN, mousedownHandler); stage.addEventListener(MouseEvent.MOUSE_MOVE, mousemoveHandler); stage.addEventListener(MouseEvent.MOUSE_UP, mouseupHandler); stage.addEventListener("keyDown", onSpeedBoost); } public function onHPOut(_arg1:Event):void{ if (extraLives == 0){ gameoverTimer = new Timer(4000, 1); gameoverTimer.addEventListener(TimerEvent.TIMER, onGameOver); gameoverTimer.start(); selfExplode(); this.visible = false; fireTimer1.stop(); fireTimer2.stop(); fireTimer3.stop(); fireTimer1.removeEventListener(TimerEvent.TIMER, onFire); fireTimer2.removeEventListener(TimerEvent.TIMER, onFire); fireTimer3.removeEventListener(TimerEvent.TIMER, onFire); removeEventListener(Event.ENTER_FRAME, enterFrameHandle); stage.removeEventListener(MouseEvent.MOUSE_DOWN, mousedownHandler); stage.removeEventListener(MouseEvent.MOUSE_MOVE, mousemoveHandler); stage.removeEventListener(MouseEvent.MOUSE_UP, mouseupHandler); stage.removeEventListener("keyDown", onSpeedBoost); } else { rebornTimer = new Timer(3000, 1); rebornTimer.addEventListener(TimerEvent.TIMER, onReborn); rebornTimer.start(); fireTimer1.stop(); fireTimer2.stop(); fireTimer3.stop(); fireTimer1.removeEventListener(TimerEvent.TIMER, onFire); fireTimer2.removeEventListener(TimerEvent.TIMER, onFire); fireTimer3.removeEventListener(TimerEvent.TIMER, onFire); removeEventListener(Event.ENTER_FRAME, enterFrameHandle); stage.removeEventListener(MouseEvent.MOUSE_DOWN, mousedownHandler); stage.removeEventListener(MouseEvent.MOUSE_MOVE, mousemoveHandler); stage.removeEventListener(MouseEvent.MOUSE_UP, mouseupHandler); stage.removeEventListener("keyDown", onSpeedBoost); selfExplode(); this.visible = false; }; } public function showHP(_arg1:Boolean):void{ if (_arg1 == false){ (root as Main).gameStage.gameHud.basic.playerHPMarker.removeChild(hpBar); }; } public function get iSpeedLevel():int{ return (_iSpeedLevel); } public function get iHPLevel():int{ return (_iHPLevel); } function onSpeedBoost(_arg1:KeyboardEvent):void{ if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.CONTROL)))){ if (bBoostable){ bBoostable = false; (root as Main).gameStage.gameHud.basic.boostInd.gotoAndStop(1); speedBoost(); if (Main.bHasSound){ boostSound.play(); }; }; }; } function onGameOver(_arg1:TimerEvent):void{ var _local2:Event; Main.loseReason = "Player Down"; _local2 = new Event(GAME_OVER, true); dispatchEvent(_local2); } public function setHP(_arg1:Number):void{ if (hpBar){ hpBar.removeEventListener(HPBar.OUT_OF_HP, onHPOut); (root as Main).gameStage.gameHud.basic.removeChild(hpBar); }; hpBar = new HPBar_Player(); hpBar.setHP(_arg1); hpBar.x = (root as Main).gameStage.gameHud.basic.playerHPMarker.x; hpBar.y = (root as Main).gameStage.gameHud.basic.playerHPMarker.y; (root as Main).gameStage.gameHud.basic.addChildAt(hpBar, (root as Main).gameStage.gameHud.basic.getChildIndex((root as Main).gameStage.gameHud.basic.playerHPMarker)); hpBar.addEventListener(HPBar.OUT_OF_HP, onHPOut); } function onFire(_arg1:TimerEvent):void{ if (_arg1.target == fireTimer1){ if (bFireActive1 == false){ fireTimer1.stop(); } else { shootBullet(0); }; }; if (_arg1.target == fireTimer2){ if (bFireActive2 == false){ fireTimer2.stop(); } else { shootBullet(1); }; }; if (_arg1.target == fireTimer3){ if (bFireActive3 == false){ fireTimer3.stop(); } else { shootBullet(2); }; }; } protected function mouseupHandler(_arg1:MouseEvent):void{ bFireActive1 = false; bFireActive2 = false; bFireActive3 = false; } function doubleFireRate():void{ fireTimer1.delay = (fireRates[0] / 1.5); fireTimer2.delay = (fireRates[1] / 1.5); fireTimer3.delay = (fireRates[2] / 1.5); } protected function moveMe():void{ if (((Tools.isDown(68)) || (Tools.isDown(Keyboard.RIGHT)))){ speedX = (speedX + accelerate); if (speedX > speedMax){ speedX = speedMax; }; }; if (((Tools.isDown(65)) || (Tools.isDown(Keyboard.LEFT)))){ speedX = (speedX - accelerate); if (speedX < (-1 * speedMax)){ speedX = (-1 * speedMax); }; }; if (((Tools.isDown(83)) || (Tools.isDown(Keyboard.DOWN)))){ speedY = (speedY + accelerate); if (speedY > speedMax){ speedY = speedMax; }; }; if (((Tools.isDown(87)) || (Tools.isDown(Keyboard.UP)))){ speedY = (speedY - accelerate); if (speedY < (-1 * speedMax)){ speedY = (-1 * speedMax); }; }; if (Tools.isDown(77)){ (root as Main).gameStage.gameHud.addMaterial(10); }; x = (x + speedX); y = (y + speedY); speedX = (speedX * speedLoss); speedY = (speedY * speedLoss); if (Math.abs(speedX) > 0){ if (Math.abs(speedX) < friction){ speedX = 0; } else { speedX = (speedX - ((friction * Math.abs(speedX)) / speedX)); }; }; if (Math.abs(speedY) > 0){ if (Math.abs(speedY) < friction){ speedY = 0; } else { speedY = (speedY - ((friction * Math.abs(speedY)) / speedY)); }; }; } protected function updateCamera():void{ if (bCoreMode){ GameStage._camera.updateCamera((root as Main).gameStage._core); } else { GameStage._camera.updateCamera(this); }; } override protected function removeFromStageHandle(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, enterFrameHandle); stage.removeEventListener(MouseEvent.MOUSE_DOWN, mousedownHandler); stage.removeEventListener(MouseEvent.MOUSE_MOVE, mousemoveHandler); stage.removeEventListener(MouseEvent.MOUSE_UP, mouseupHandler); stage.removeEventListener("keyDown", onSpeedBoost); } function speedBoost():void{ if (boostTimer == null){ boostTimer = new Timer(boostDuration, 1); boostTimer.addEventListener(TimerEvent.TIMER, onBoostOver); boostTimer.start(); } else { boostTimer.reset(); boostTimer.start(); }; body.gotoAndStop(2); speedMax = speedMaxBoostList[_iSpeedLevel]; accelerate = accelerateBoostList[_iSpeedLevel]; } public function set iHPLevel(_arg1:int):void{ this._iHPLevel = _arg1; setHP((playerHPList[_iHPLevel] * Main.diffFactor)); upgradeColor.redOffset = redUpgrade[iHPLevel]; upgradeColor.greenOffset = greenUpgrade[iHPLevel]; upgradeColor.blueOffset = blueUpgrade[iHPLevel]; this.transform.colorTransform = upgradeColor; } function onInvul(_arg1:TimerEvent):void{ invulCounter++; upgradeColor.redOffset = (redUpgrade[iHPLevel] + ((30 - invulCounter) * 6)); upgradeColor.greenOffset = (greenUpgrade[iHPLevel] + ((30 - invulCounter) * 6)); upgradeColor.blueOffset = (blueUpgrade[iHPLevel] + ((30 - invulCounter) * 6)); this.transform.colorTransform = upgradeColor; if (invulCounter == 30){ bInvulnerable = false; }; } public function set iSpeedLevel(_arg1:int):void{ this._iSpeedLevel = _arg1; speedMax = speedMaxNormalList[_iSpeedLevel]; accelerate = accelerateNormalList[_iSpeedLevel]; upgradeSpeedColor.redOffset = redUpgradeSpeed[_iSpeedLevel]; upgradeSpeedColor.greenOffset = greenUpgradeSpeed[_iSpeedLevel]; upgradeSpeedColor.blueOffset = blueUpgradeSpeed[_iSpeedLevel]; particleGenLeft.transform.colorTransform = upgradeSpeedColor; particleGenRight.transform.colorTransform = upgradeSpeedColor; } protected function collisionHandler():void{ var _local1:int; var _local2:*; var _local3:*; var _local4:*; var _local5:Number; _local1 = 0; while (_local1 < (root as Main).gameStage.gameScene.numChildren) { _local2 = (root as Main).gameStage.gameScene.getChildAt(_local1); if ((_local2 is Core)){ _local5 = Tools.distance(x, y, (_local2 as GameObject).x, (_local2 as GameObject).y); if (_local5 < Core.collisionDistance){ _local3 = ((_local2 as GameObject).x - x); _local4 = ((_local2 as GameObject).y - y); x = (x - ((_local3 / _local5) * (Core.collisionDistance - _local5))); y = (y - ((_local4 / _local5) * (Core.collisionDistance - _local5))); }; }; if (_local2.name == "scenecollision"){ _local5 = Tools.distance(x, y, _local2.x, _local2.y); if (_local2.hitTestPoint((x - GameStage._camera.posX), (y - GameStage._camera.posY), true)){ _local3 = (x - (root as Main).gameStage._core.x); _local4 = (y - (root as Main).gameStage._core.y); x = (x - ((_local3 / _local5) * collisionPushDist)); y = (y - ((_local4 / _local5) * collisionPushDist)); }; }; if (x < (0 + (width / 2))){ x = (0 + (width / 2)); }; if (x > (Main._sceneWidth - (width / 2))){ x = (Main._sceneWidth - (width / 2)); }; if (y < (0 + (height / 2))){ y = (0 + (height / 2)); }; if (y > (Main._sceneHeight - (height / 2))){ y = (Main._sceneHeight - (height / 2)); }; _local1++; }; } function onBoostOver(_arg1:Event):void{ (root as Main).gameStage.gameHud.basic.boostInd.gotoAndPlay(1); body.gotoAndStop(1); speedMax = speedMaxNormalList[_iSpeedLevel]; accelerate = accelerateNormalList[_iSpeedLevel]; } function selfExplode():void{ var _local1:BigExplode; _local1 = new BigExplode(); _local1.rotation = (Math.random() * 360); _local1.x = x; _local1.y = y; (root as Main).gameStage.gameScene.addChild(_local1); if (Main.bHasSound){ explodeSound.play(); overSound.play(); }; } override protected function enterFrameHandle(_arg1:Event):void{ moveMe(); updateCamera(); super.enterFrameHandle(_arg1); collisionHandler(); if ((((hpBar == null)) && ((root as Main).gameStage.gameHud.basic))){ setHP((playerHPList[_iHPLevel] * Main.diffFactor)); }; } } }//package
Section 71
//PlayerLife (PlayerLife) package { import flash.display.*; public dynamic class PlayerLife extends MovieClip { } }//package
Section 72
//Ranger (Ranger) package { import flash.events.*; import flash.display.*; import flash.media.*; import flash.geom.*; public class Ranger extends Enemy { var ptLeft:Point; var ptRight:Point; var midFire:Sound; public var turret:MovieClip; public var body:MovieClip; public function Ranger(){ speed = 2; keepDistance = 200; keepDistanceForCore = 350; fireRate = 2000; HPTable = rangerHPTable; midFire = new sfx_enemy_mediumgun(); } override protected function getDamage():Number{ return (rangerDamageTable[iCurrentEnemyLevel]); } override protected function playShootSound():void{ midFire.play(); } override public function getMaterial():int{ return (rangerMaterialTable[iCurrentEnemyLevel]); } override protected function onFire(_arg1:TimerEvent):void{ var _local2:Bullet; var _local3:Bullet; if (fireTarget){ if ((fireTarget is Core)){ if (Tools.distance((root as Main).gameStage._core.x, (root as Main).gameStage._core.y, x, y) < shootRangeForCore){ _local2 = new Bullet_Enemy(); _local3 = new Bullet_Enemy(); _local2.bType = "Enemy_Bullet"; _local3.bType = "Enemy_Bullet"; _local2.bulletDamage = getDamage(); _local3.bulletDamage = getDamage(); ptLeft = new Point(turret.leftGun.x, turret.leftGun.y); ptRight = new Point(turret.rightGun.x, turret.rightGun.y); ptLeft = this.turret.localToGlobal(ptLeft); ptRight = this.turret.localToGlobal(ptRight); _local2.ShootFromTo((ptLeft.x + GameStage._camera.posX), (ptLeft.y + GameStage._camera.posY), fireDirection); (root as Main).gameStage.gameScene.addChild(_local2); _local3.ShootFromTo((ptRight.x + GameStage._camera.posX), (ptRight.y + GameStage._camera.posY), fireDirection); (root as Main).gameStage.gameScene.addChild(_local3); if (Main.bHasSound){ playShootSound(); }; }; } else { if ((fireTarget is Player)){ if (Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y) < shootRangeForPlayer){ _local2 = new Bullet_Enemy(); _local3 = new Bullet_Enemy(); _local2.bType = "Enemy_Bullet"; _local3.bType = "Enemy_Bullet"; _local2.bulletDamage = getDamage(); _local3.bulletDamage = getDamage(); ptLeft = new Point(turret.leftGun.x, turret.leftGun.y); ptRight = new Point(turret.rightGun.x, turret.rightGun.y); ptLeft = this.turret.localToGlobal(ptLeft); ptRight = this.turret.localToGlobal(ptRight); _local2.ShootFromTo((ptLeft.x + GameStage._camera.posX), (ptLeft.y + GameStage._camera.posY), fireDirection); (root as Main).gameStage.gameScene.addChild(_local2); _local3.ShootFromTo((ptRight.x + GameStage._camera.posX), (ptRight.y + GameStage._camera.posY), fireDirection); (root as Main).gameStage.gameScene.addChild(_local3); if (Main.bHasSound){ playShootSound(); }; }; if (bShootBack){ bShootBack = false; }; }; }; }; } override protected function setBodyRotation(_arg1:Number):void{ body.rotation = _arg1; } override public function getScore():int{ return (1); } override protected function setTurretRotation(_arg1:Number):void{ turret.rotation = _arg1; } } }//package
Section 73
//Rocket_Gun3 (Rocket_Gun3) package { import flash.events.*; import flash.display.*; import flash.utils.*; public class Rocket_Gun3 extends Bullet { public var maxGuideAngel:Number;// = 120 public var bGuiding:Boolean;// = false var oldR:Number;// = 0 var oldY:Number;// = 0 var trailRotationArray:Array; var oldX:Number;// = 0 var trailLists:Array; public var bFirstMove:Boolean;// = true public var angularSpeed:Number;// = 0.08 var trailPositionYArray:Array; public var guidingTarget:GameObject;// = null var trailLength:int;// = 3 public var particlePosition:MovieClip; var bNeedRemove;// = false var particleGen:ParticleGen; var trailPositionXArray:Array; public static var rocketLife:Number = 4000; public function Rocket_Gun3(){ trailLength = 3; bGuiding = false; bFirstMove = true; guidingTarget = null; maxGuideAngel = 120; angularSpeed = 0.08; bNeedRemove = false; oldX = 0; oldY = 0; oldR = 0; super(); bulletSpeed = 12; } override protected function addedToStageHandle(_arg1:Event):void{ var _local2:int; var _local3:*; trailLists = new Array(trailLength); trailPositionXArray = new Array(trailLength); trailPositionYArray = new Array(trailLength); trailRotationArray = new Array(trailLength); _local2 = 0; while (_local2 < trailLength) { _local3 = new TrailSample(); parent.addChild(_local3); trailLists[_local2] = _local3; trailPositionXArray[_local2] = 0; trailPositionYArray[_local2] = 0; trailRotationArray[_local2] = 0; _local2++; }; super.addedToStageHandle(_arg1); } override protected function moveBullet():void{ var _local1:*; var _local2:*; var _local3:*; var _local4:*; var _local5:int; var _local6:*; var _local7:*; var _local8:*; var _local9:*; var _local10:*; var _local11:*; var _local12:*; var _local13:*; var _local14:*; var _local15:*; if (bGuiding){ if (bFirstMove){ bFirstMove = false; if (root){ if (bType == "Enemy_Bullet"){ guidingTarget = (root as Main).gameStage._player; return; }; _local3 = (root as Main).gameStage.gameScene; _local9 = 10000; _local10 = -1; _local5 = 0; while (_local5 < _local3.numChildren) { _local4 = _local3.getChildAt(_local5); if ((_local4 is Enemy)){ _local6 = Tools.distance(x, y, (_local4 as Enemy).x, (_local4 as Enemy).y); _local7 = ((_local4 as Enemy).x - x); _local8 = ((_local4 as Enemy).y - y); _local7 = (_local7 / _local6); _local8 = (_local8 / _local6); if (((delX * _local7) + (delY * _local8)) > Math.cos((((maxGuideAngel / 2) * Math.PI) / 180))){ if (_local6 < _local9){ _local9 = _local6; _local10 = _local5; }; }; }; _local5++; }; if (_local10 != -1){ guidingTarget = _local3.getChildAt(_local10); }; }; } else { if (((guidingTarget) && (!((guidingTarget.root == null))))){ _local11 = (guidingTarget.x - x); _local12 = (guidingTarget.y - y); _local13 = Tools.distance(guidingTarget.x, guidingTarget.y, x, y); _local11 = (_local11 / _local13); _local12 = (_local12 / _local13); delX = (delX + (angularSpeed * (_local11 - delX))); delY = (delY + (angularSpeed * (_local12 - delY))); _local14 = Math.sqrt(((delX * delX) + (delY * delY))); delX = (delX / _local14); delY = (delY / _local14); _local15 = ((Math.atan((delY / delX)) * 180) / Math.PI); if (delX < 0){ _local15 = (_local15 - 180); }; rotation = (_local15 - 90); }; }; }; super.moveBullet(); _local1 = (oldX - x); _local2 = (oldY - y); _local5 = 0; while (_local5 < (trailLength - 1)) { trailPositionXArray[(_local5 + 1)] = trailPositionXArray[_local5]; trailPositionYArray[(_local5 + 1)] = trailPositionYArray[_local5]; trailRotationArray[(_local5 + 1)] = trailRotationArray[_local5]; _local5++; }; trailPositionXArray[0] = oldX; trailPositionYArray[0] = oldY; trailRotationArray[0] = oldR; oldX = x; oldY = y; oldR = rotation; _local5 = 0; while (_local5 < trailLength) { trailLists[_local5].x = trailPositionXArray[_local5]; trailLists[_local5].y = trailPositionYArray[_local5]; trailLists[_local5].rotation = trailRotationArray[_local5]; _local5++; }; if (bNeedRemove){ if (root){ parent.removeChild(this); }; }; } override protected function setLifeTime():void{ } override public function setOwner(_arg1):void{ owner = _arg1; if ((((owner is Player)) || ((owner is Pillar_Missile)))){ owner.currentRocketNum++; }; } override protected function removeFromStageHandle(_arg1:Event):void{ var _local2:*; removeEventListener(Event.ENTER_FRAME, enterFrameHandle); _local2 = 0; while (_local2 < trailLength) { parent.removeChild(trailLists[_local2]); _local2++; }; if (owner){ owner.currentRocketNum--; }; } public function setRocketLifeTime(_arg1:Number):void{ lifeTimer = new Timer(_arg1, 1); lifeTimer.addEventListener(TimerEvent.TIMER, onLifeOut); lifeTimer.start(); } } }//package
Section 74
//Scout (Scout) package { import flash.display.*; import flash.media.*; public class Scout extends Enemy { var lightFire:Sound; public var turret:MovieClip; public var body:MovieClip; public function Scout(){ speed = 3; keepDistance = 150; keepDistanceForCore = 300; fireRate = 1000; HPTable = scoutHPTable; lightFire = new sfx_enemy_lightgun(); } override protected function getDamage():Number{ return (scoutDamageTable[iCurrentEnemyLevel]); } override protected function confirmTarget():void{ if (currentState == "goForPlayer"){ fireTarget = (root as Main).gameStage._player; } else { super.confirmTarget(); }; } override protected function playShootSound():void{ lightFire.play(); } override public function getMaterial():int{ return (scoutMaterialTable[iCurrentEnemyLevel]); } override protected function setBodyRotation(_arg1:Number):void{ body.rotation = _arg1; } override public function getScore():int{ return (1); } override protected function checkMoveState():void{ var _local1:Number; _local1 = Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y); if (_local1 < keepDistance){ currentState = "goForPlayer"; }; } override protected function setTurretRotation(_arg1:Number):void{ turret.rotation = _arg1; } } }//package
Section 75
//SecondSplashBase (SecondSplashBase) package { import flash.events.*; import flash.display.*; import flash.net.*; public class SecondSplashBase extends SimpleButton { public function SecondSplashBase(){ addEventListener(MouseEvent.CLICK, onClickLogo); } function onClickLogo(_arg1:Event):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.anothergamestudio.com/"); navigateToURL(_local2, "_blank"); } } }//package
Section 76
//SecondSplashScreen (SecondSplashScreen) package { import flash.events.*; import flash.display.*; public class SecondSplashScreen extends MovieClip { var tel:int;// = 0 public static const SPLASH_OVER:String = "splash_over"; public function SecondSplashScreen(){ tel = 0; super(); alpha = 0; addEventListener(Event.ADDED_TO_STAGE, onAdd); addEventListener(Event.REMOVED_FROM_STAGE, onRemove); addEventListener(Event.ENTER_FRAME, onUpdate); } function onRemove(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, onUpdate); } function onAdd(_arg1:Event):void{ } function onUpdate(_arg1:Event):void{ var _local2:Event; if (alpha < 1){ alpha = (alpha + 0.1); } else { tel++; }; if (tel > 120){ alpha = (alpha - 0.15); if (alpha <= 0){ _local2 = new Event(SPLASH_OVER); dispatchEvent(_local2); parent.removeChild(this); }; }; } } }//package
Section 77
//sfx_areaclear (sfx_areaclear) package { import flash.media.*; public dynamic class sfx_areaclear extends Sound { } }//package
Section 78
//sfx_bullethit (sfx_bullethit) package { import flash.media.*; public dynamic class sfx_bullethit extends Sound { } }//package
Section 79
//sfx_enemy_heavygun (sfx_enemy_heavygun) package { import flash.media.*; public dynamic class sfx_enemy_heavygun extends Sound { } }//package
Section 80
//sfx_enemy_lightgun (sfx_enemy_lightgun) package { import flash.media.*; public dynamic class sfx_enemy_lightgun extends Sound { } }//package
Section 81
//sfx_enemy_mediumgun (sfx_enemy_mediumgun) package { import flash.media.*; public dynamic class sfx_enemy_mediumgun extends Sound { } }//package
Section 82
//sfx_explosion1 (sfx_explosion1) package { import flash.media.*; public dynamic class sfx_explosion1 extends Sound { } }//package
Section 83
//sfx_explosion2 (sfx_explosion2) package { import flash.media.*; public dynamic class sfx_explosion2 extends Sound { } }//package
Section 84
//sfx_gameover (sfx_gameover) package { import flash.media.*; public dynamic class sfx_gameover extends Sound { } }//package
Section 85
//sfx_gamestart (sfx_gamestart) package { import flash.media.*; public dynamic class sfx_gamestart extends Sound { } }//package
Section 86
//sfx_gui_click (sfx_gui_click) package { import flash.media.*; public dynamic class sfx_gui_click extends Sound { } }//package
Section 87
//sfx_gui_incoming (sfx_gui_incoming) package { import flash.media.*; public dynamic class sfx_gui_incoming extends Sound { } }//package
Section 88
//sfx_gui_roll (sfx_gui_roll) package { import flash.media.*; public dynamic class sfx_gui_roll extends Sound { } }//package
Section 89
//sfx_gui_upgradeclose (sfx_gui_upgradeclose) package { import flash.media.*; public dynamic class sfx_gui_upgradeclose extends Sound { } }//package
Section 90
//sfx_gui_upgradeopen (sfx_gui_upgradeopen) package { import flash.media.*; public dynamic class sfx_gui_upgradeopen extends Sound { } }//package
Section 91
//sfx_gui_warning1 (sfx_gui_warning1) package { import flash.media.*; public dynamic class sfx_gui_warning1 extends Sound { } }//package
Section 92
//sfx_pickup_mat (sfx_pickup_mat) package { import flash.media.*; public dynamic class sfx_pickup_mat extends Sound { } }//package
Section 93
//sfx_player_heavygun (sfx_player_heavygun) package { import flash.media.*; public dynamic class sfx_player_heavygun extends Sound { } }//package
Section 94
//sfx_player_lightgun (sfx_player_lightgun) package { import flash.media.*; public dynamic class sfx_player_lightgun extends Sound { } }//package
Section 95
//sfx_player_mediumgun (sfx_player_mediumgun) package { import flash.media.*; public dynamic class sfx_player_mediumgun extends Sound { } }//package
Section 96
//sfx_speedboost (sfx_speedboost) package { import flash.media.*; public dynamic class sfx_speedboost extends Sound { } }//package
Section 97
//sfx_speedboostready (sfx_speedboostready) package { import flash.media.*; public dynamic class sfx_speedboostready extends Sound { } }//package
Section 98
//sfx_turret_heavygun (sfx_turret_heavygun) package { import flash.media.*; public dynamic class sfx_turret_heavygun extends Sound { } }//package
Section 99
//sfx_turret_lightgun (sfx_turret_lightgun) package { import flash.media.*; public dynamic class sfx_turret_lightgun extends Sound { } }//package
Section 100
//sfx_turret_medgun (sfx_turret_medgun) package { import flash.media.*; public dynamic class sfx_turret_medgun extends Sound { } }//package
Section 101
//sfx_turretplaced (sfx_turretplaced) package { import flash.media.*; public dynamic class sfx_turretplaced extends Sound { } }//package
Section 102
//sfx_upgradebought (sfx_upgradebought) package { import flash.media.*; public dynamic class sfx_upgradebought extends Sound { } }//package
Section 103
//StartWaveButton (StartWaveButton) package { import flash.events.*; import flash.display.*; public class StartWaveButton extends MovieClip { public var notActive:MovieClip; public var base:SimpleButton; public function StartWaveButton(){ setActive(true); } public function setActive(_arg1:Boolean):void{ trace(_arg1, "setactive"); if (_arg1 == true){ base.addEventListener(MouseEvent.CLICK, onClick); notActive.visible = false; } else { base.removeEventListener(MouseEvent.CLICK, onClick); notActive.visible = true; }; } function onClick(_arg1:MouseEvent):void{ setActive(false); (root as Main).gameStage.levelController.waveStart(); } } }//package
Section 104
//Tank (Tank) package { import flash.events.*; import flash.display.*; import flash.media.*; public class Tank extends Enemy { public var currentRocketNum:int;// = 0 var rocketNumLimits;// = 1 public var turret:MovieClip; var heavyFire:Sound; public var body:MovieClip; public function Tank(){ rocketNumLimits = 1; currentRocketNum = 0; super(); speed = 1; keepDistance = 250; keepDistanceForCore = 400; fireRate = 4000; HPTable = tankHPTable; heavyFire = new sfx_enemy_heavygun(); } override protected function getDamage():Number{ return (tankDamageTable[iCurrentEnemyLevel]); } override protected function playShootSound():void{ heavyFire.play(); } override public function getMaterial():int{ return (tankMaterialTable[iCurrentEnemyLevel]); } override protected function onFire(_arg1:TimerEvent):void{ var _local2:Rocket_Gun3; var _local3:Rocket_Gun3; if (fireTarget){ if ((fireTarget is Core)){ if (Tools.distance((root as Main).gameStage._core.x, (root as Main).gameStage._core.y, x, y) < shootRangeForCore){ _local2 = new Rocket_Gun3(); _local2.setRocketLifeTime(Rocket_Gun3.rocketLife); _local2.bType = "Enemy_Bullet"; _local2.bulletDamage = getDamage(); _local2.setOwner(this); _local2.ShootFromTo(x, y, fireDirection); (_local2 as Rocket_Gun3).bGuiding = true; (root as Main).gameStage.gameScene.addChild(_local2); if (Main.bHasSound){ playShootSound(); }; }; } else { if ((fireTarget is Player)){ if (Tools.distance((root as Main).gameStage._player.x, (root as Main).gameStage._player.y, x, y) < shootRangeForPlayer){ _local3 = new Rocket_Gun3(); _local3.setRocketLifeTime(Rocket_Gun3.rocketLife); _local3.bType = "Enemy_Bullet"; _local3.bulletDamage = getDamage(); _local3.setOwner(this); _local3.ShootFromTo(x, y, fireDirection); (_local3 as Rocket_Gun3).bGuiding = true; (root as Main).gameStage.gameScene.addChild(_local3); if (Main.bHasSound){ playShootSound(); }; }; if (bShootBack){ bShootBack = false; }; }; }; }; } override protected function setBodyRotation(_arg1:Number):void{ body.rotation = _arg1; } override public function getScore():int{ return (1); } override protected function setTurretRotation(_arg1:Number):void{ turret.rotation = _arg1; } } }//package
Section 105
//TestParticle (TestParticle) package { import flash.display.*; public class TestParticle extends MovieClip { public var yMovement:Number;// = 0 public var xMovement:Number;// = 0 public function TestParticle(){ xMovement = 0; yMovement = 0; super(); } } }//package
Section 106
//TextPlayer (TextPlayer) package { import flash.events.*; import flash.display.*; import flash.text.*; public class TextPlayer extends MovieClip { var textMessage:TextField; var textMessage1:TextField; public var tText1:TextField; var alphaLost;// = 0.03 public var tText:TextField; var alphaLost1;// = 0.01 public function TextPlayer(){ alphaLost = 0.03; alphaLost1 = 0.01; super(); textMessage = tText; textMessage.selectable = false; addEventListener(Event.ENTER_FRAME, onUpdate); textMessage1 = tText1; textMessage1.selectable = false; } public function setText1(_arg1:String):void{ textMessage1.alpha = 1; textMessage1.text = _arg1; } function onUpdate(_arg1:Event):void{ if (textMessage.alpha > alphaLost){ textMessage.alpha = (textMessage.alpha - alphaLost); } else { textMessage.alpha = 0; }; if (textMessage1.alpha > alphaLost1){ textMessage1.alpha = (textMessage1.alpha - alphaLost1); } else { textMessage1.alpha = 0; }; } public function setText(_arg1:String):void{ textMessage.alpha = 1; textMessage.text = _arg1; } } }//package
Section 107
//TitlePage (TitlePage) package { import flash.events.*; import flash.display.*; import flash.net.*; public class TitlePage extends MovieClip { public var playMoreButton:SimpleButton; public var instructionsButton:SimpleButton; public var playButton:SimpleButton; public static var GAME_TUTORIAL:String = "gametutorial_title"; public static var PLAY_GAME:String = "playgame_title"; public function TitlePage(){ playButton.addEventListener(MouseEvent.CLICK, onPlay); instructionsButton.addEventListener(MouseEvent.CLICK, onTut); playMoreButton.addEventListener(MouseEvent.CLICK, onMore); } function onPlay(_arg1:Event):void{ var _local2:Event; _local2 = new Event(PLAY_GAME, true); dispatchEvent(_local2); parent.removeChild(this); } function onTut(_arg1:Event):void{ var _local2:Event; _local2 = new Event(GAME_TUTORIAL, true); dispatchEvent(_local2); parent.removeChild(this); } function onMore(_arg1:Event):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.2games.com/clickreg.php?type=gamestats&id=1232&subid=mainmenu"); navigateToURL(_local2, "_blank"); } } }//package
Section 108
//Tools (Tools) package { import flash.events.*; import flash.display.*; public class Tools { private static var obj:Object; public static function init(_arg1:DisplayObject):void{ obj = new Object(); _arg1.addEventListener("keyDown", keydownHandler); _arg1.addEventListener("keyUp", keyupHandler); } public static function allup():void{ var _local1:String; for (_local1 in obj) { obj[_local1] = false; }; } public static function distance(_arg1:int, _arg2:int, _arg3:int, _arg4:int):Number{ return (Math.sqrt((((_arg4 - _arg2) * (_arg4 - _arg2)) + ((_arg3 - _arg1) * (_arg3 - _arg1))))); } private static function keydownHandler(_arg1:KeyboardEvent):void{ obj[_arg1.keyCode] = true; } public static function isDown(_arg1:uint):Boolean{ return ((obj[_arg1]) ? true : false); } private static function keyupHandler(_arg1:KeyboardEvent):void{ obj[_arg1.keyCode] = false; } } }//package
Section 109
//TrailSample (TrailSample) package { import flash.display.*; public dynamic class TrailSample extends MovieClip { } }//package
Section 110
//TutPage (TutPage) package { import flash.events.*; import flash.display.*; public class TutPage extends MovieClip { public var playButton:SimpleButton; public var backButton:SimpleButton; public static var PLAY_GAME:String = "playgame_tut"; public static var BACK_TUTORIAL:String = "back_tut"; public function TutPage(){ playButton.addEventListener(MouseEvent.CLICK, onPlay); backButton.addEventListener(MouseEvent.CLICK, onBack); } function onBack(_arg1:Event):void{ var _local2:Event; _local2 = new Event(BACK_TUTORIAL, true); dispatchEvent(_local2); parent.removeChild(this); } function onPlay(_arg1:Event):void{ var _local2:Event; _local2 = new Event(PLAY_GAME, true); dispatchEvent(_local2); parent.removeChild(this); } } }//package
Section 111
//Wall (Wall) package { import flash.events.*; import flash.media.*; import flash.geom.*; public class Wall extends GameObject implements IHPObject { var hpBar:HPBar; var _iWallLevel;// = 0 var destroySound:Sound; var redUpgrade; var blueUpgrade; var greenUpgrade; var upgradeColor:ColorTransform; var HPList; public var bTouchable:Boolean;// = true public function Wall(){ _iWallLevel = 0; HPList = [100, 150, 200, 250]; bTouchable = true; destroySound = new sfx_explosion2(); upgradeColor = new ColorTransform(); redUpgrade = [0, 50, 100, 150]; greenUpgrade = [0, 0, 0, 0]; blueUpgrade = [0, 0, 0, 0]; super(); setHP((HPList[_iWallLevel] * Main.diffFactor)); gotoAndStop(1); upgradeColor.redOffset = redUpgrade[iWallLevel]; upgradeColor.greenOffset = greenUpgrade[iWallLevel]; upgradeColor.blueOffset = blueUpgrade[iWallLevel]; this.transform.colorTransform = upgradeColor; } public function getDamageLevel():int{ var _local1:Number; _local1 = (hpBar._currentHP / hpBar.fullHP); if (_local1 > 0.75){ gotoAndStop(1); return (1); }; if (_local1 > 0.5){ gotoAndStop(2); return (2); }; if (_local1 > 0.25){ gotoAndStop(3); return (3); }; gotoAndStop(4); return (4); } public function restoreHP():void{ if (hpBar){ hpBar.restore(); visible = true; bTouchable = true; }; } public function get iWallLevel():int{ return (_iWallLevel); } public function damageHP(_arg1:Number):void{ if (hpBar){ hpBar.takeDamage(_arg1); (root as Main).gameStage.gameText.setText("Base under attack!"); }; } public function showHP(_arg1:Boolean):void{ if (_arg1 == false){ removeChild(hpBar); }; } public function onHPOut(_arg1:Event):void{ visible = false; bTouchable = false; if (Main.bHasSound){ destroySound.play(); }; } public function set iWallLevel(_arg1:int):void{ this._iWallLevel = _arg1; setHP((HPList[_iWallLevel] * Main.diffFactor)); upgradeColor.redOffset = redUpgrade[iWallLevel]; upgradeColor.greenOffset = greenUpgrade[iWallLevel]; upgradeColor.blueOffset = blueUpgrade[iWallLevel]; this.transform.colorTransform = upgradeColor; } public function setHP(_arg1:Number):void{ if (hpBar){ hpBar.removeEventListener(HPBar.OUT_OF_HP, onHPOut); }; hpBar = new HPBar(); hpBar.setHP(_arg1); hpBar.y = (this.height / 2); addChild(hpBar); hpBar.addEventListener(HPBar.OUT_OF_HP, onHPOut); showHP(false); } } }//package

Library Items

Symbol 1 Sound {sfx_upgradebought}
Symbol 2 Sound {sfx_turretplaced}
Symbol 3 Sound {sfx_turret_medgun}
Symbol 4 Sound {sfx_turret_lightgun}
Symbol 5 Sound {sfx_turret_heavygun}
Symbol 6 Sound {sfx_speedboostready}
Symbol 7 Sound {sfx_speedboost}
Symbol 8 Sound {sfx_player_mediumgun}
Symbol 9 Sound {sfx_player_lightgun}
Symbol 10 Sound {sfx_player_heavygun}
Symbol 11 Sound {sfx_pickup_mat}
Symbol 12 Sound {sfx_gui_warning1}
Symbol 13 Sound {sfx_gui_upgradeopen}
Symbol 14 Sound {sfx_gui_upgradeclose}
Symbol 15 Sound {sfx_gui_roll}
Symbol 16 Sound {sfx_gui_incoming}
Symbol 17 Sound {sfx_gui_click}
Symbol 18 Sound {sfx_gamestart}
Symbol 19 Sound {sfx_gameover}
Symbol 20 Sound {sfx_explosion2}
Symbol 21 Sound {sfx_explosion1}
Symbol 22 Sound {sfx_enemy_mediumgun}
Symbol 23 Sound {sfx_enemy_lightgun}
Symbol 24 Sound {sfx_enemy_heavygun}
Symbol 25 Sound {sfx_bullethit}
Symbol 26 Sound {sfx_areaclear}
Symbol 27 Sound {CoreDefense1}
Symbol 28 GraphicUsed by:32 47
Symbol 29 GraphicUsed by:32 47 49
Symbol 30 GraphicUsed by:32 47
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClip {gameslogoro}Uses:28 29 30 31Used by:39
Symbol 33 GraphicUsed by:40
Symbol 34 GraphicUsed by:39
Symbol 35 FontUsed by:36
Symbol 36 TextUses:35Used by:37
Symbol 37 MovieClipUses:36Used by:38
Symbol 38 MovieClip {DefenseV10_fla.2games_play_latest_text_141}Uses:37Used by:39
Symbol 39 MovieClip {DefenseV10_fla.2GamesRo_140}Uses:34 38 32Used by:40
Symbol 40 MovieClip {FirstSplashScreen}Uses:33 39
Symbol 41 GraphicUsed by:45
Symbol 42 BitmapUsed by:43
Symbol 43 GraphicUses:42Used by:44
Symbol 44 Button {SecondSplashBase}Uses:43Used by:45
Symbol 45 MovieClip {SecondSplashScreen}Uses:41 44
Symbol 46 GraphicUsed by:47 49
Symbol 47 MovieClip {DefenseV10_fla.bubblxbox_smallLogo_ro_21}Uses:28 29 30 46Used by:49
Symbol 48 GraphicUsed by:49
Symbol 49 MovieClip {bubbleboxlogo}Uses:47 46 29 48Used by:56 710
Symbol 50 BitmapUsed by:51
Symbol 51 GraphicUses:50Used by:56
Symbol 52 GraphicUsed by:53
Symbol 53 MovieClipUses:52Used by:56
Symbol 54 FontUsed by:55 57 685 686 687 688 689 690 691 692 693
Symbol 55 EditableTextUses:54Used by:56
Symbol 56 MovieClip {LoadingBox}Uses:51 53 49 55Used by:777
Symbol 57 EditableTextUses:54Used by:58
Symbol 58 MovieClip {FPSMeter}Uses:57Used by:777
Symbol 59 BitmapUsed by:60
Symbol 60 GraphicUses:59Used by:62
Symbol 61 MovieClipUsed by:62 294 296 337 601
Symbol 62 MovieClip {LevelBG}Uses:60 61Used by:296
Symbol 63 GraphicUsed by:64
Symbol 64 MovieClipUses:63Used by:296 777
Symbol 65 BitmapUsed by:66
Symbol 66 GraphicUses:65Used by:73
Symbol 67 BitmapUsed by:68
Symbol 68 GraphicUses:67Used by:73
Symbol 69 BitmapUsed by:70
Symbol 70 GraphicUses:69Used by:73
Symbol 71 BitmapUsed by:72
Symbol 72 GraphicUses:71Used by:73
Symbol 73 MovieClip {Core}Uses:66 68 70 72Used by:296 777
Symbol 74 BitmapUsed by:75
Symbol 75 GraphicUses:74Used by:82
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:82
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:82
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:82
Symbol 82 MovieClip {Outer_Wall}Uses:75 77 79 81Used by:296 777
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:91
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:91
Symbol 87 BitmapUsed by:88
Symbol 88 GraphicUses:87Used by:91
Symbol 89 BitmapUsed by:90
Symbol 90 GraphicUses:89Used by:91
Symbol 91 MovieClip {Inner_Wall}Uses:84 86 88 90Used by:296 777
Symbol 92 BitmapUsed by:93
Symbol 93 GraphicUses:92Used by:94
Symbol 94 MovieClip {Pillar}Uses:93Used by:296 777
Symbol 95 GraphicUsed by:294
Symbol 96 BitmapUsed by:99 158 177
Symbol 97 BitmapUsed by:99 160 181
Symbol 98 BitmapUsed by:99 165 180
Symbol 99 GraphicUses:96 97 98Used by:196
Symbol 100 BitmapUsed by:103 160 178
Symbol 101 BitmapUsed by:103 162 182
Symbol 102 BitmapUsed by:103 166 181
Symbol 103 GraphicUses:100 101 102Used by:196
Symbol 104 BitmapUsed by:107 162 179
Symbol 105 BitmapUsed by:107 164 183
Symbol 106 BitmapUsed by:107 167 182
Symbol 107 GraphicUses:104 105 106Used by:196
Symbol 108 BitmapUsed by:111 164 180
Symbol 109 BitmapUsed by:111 165 184
Symbol 110 BitmapUsed by:111 168 183
Symbol 111 GraphicUses:108 109 110Used by:196
Symbol 112 BitmapUsed by:115 165 181
Symbol 113 BitmapUsed by:115 166 185
Symbol 114 BitmapUsed by:115 169 184
Symbol 115 GraphicUses:112 113 114Used by:196
Symbol 116 BitmapUsed by:119 166 182
Symbol 117 BitmapUsed by:119 167 186
Symbol 118 BitmapUsed by:119 170 185
Symbol 119 GraphicUses:116 117 118Used by:196
Symbol 120 BitmapUsed by:123 167 183
Symbol 121 BitmapUsed by:123 168 187
Symbol 122 BitmapUsed by:123 171 186
Symbol 123 GraphicUses:120 121 122Used by:196
Symbol 124 BitmapUsed by:127 168 184
Symbol 125 BitmapUsed by:127 169 188
Symbol 126 BitmapUsed by:127 172 187
Symbol 127 GraphicUses:124 125 126Used by:196
Symbol 128 BitmapUsed by:131 169 185
Symbol 129 BitmapUsed by:131 170 189
Symbol 130 BitmapUsed by:131 173 188
Symbol 131 GraphicUses:128 129 130Used by:196
Symbol 132 BitmapUsed by:135 170 186
Symbol 133 BitmapUsed by:135 171 190
Symbol 134 BitmapUsed by:135 174 189
Symbol 135 GraphicUses:132 133 134Used by:196
Symbol 136 BitmapUsed by:139 171 187
Symbol 137 BitmapUsed by:139 172 191
Symbol 138 BitmapUsed by:139 175 190
Symbol 139 GraphicUses:136 137 138Used by:196
Symbol 140 BitmapUsed by:143 172 188
Symbol 141 BitmapUsed by:143 173 192
Symbol 142 BitmapUsed by:143 176 191
Symbol 143 GraphicUses:140 141 142Used by:196
Symbol 144 BitmapUsed by:147 173 189
Symbol 145 BitmapUsed by:147 174 193
Symbol 146 BitmapUsed by:147 177 192
Symbol 147 GraphicUses:144 145 146Used by:196
Symbol 148 BitmapUsed by:151 174 190
Symbol 149 BitmapUsed by:151 175 194
Symbol 150 BitmapUsed by:151 178 193
Symbol 151 GraphicUses:148 149 150Used by:196
Symbol 152 BitmapUsed by:155 175 191
Symbol 153 BitmapUsed by:155 176 195
Symbol 154 BitmapUsed by:155 179 194
Symbol 155 GraphicUses:152 153 154Used by:196
Symbol 156 BitmapUsed by:158 176 192
Symbol 157 BitmapUsed by:158 180 195
Symbol 158 GraphicUses:156 96 157Used by:196
Symbol 159 BitmapUsed by:160 177 193
Symbol 160 GraphicUses:159 100 97Used by:196
Symbol 161 BitmapUsed by:162 178 194
Symbol 162 GraphicUses:161 104 101Used by:196
Symbol 163 BitmapUsed by:164 179 195
Symbol 164 GraphicUses:163 108 105Used by:196
Symbol 165 GraphicUses:98 112 109Used by:196
Symbol 166 GraphicUses:102 116 113Used by:196
Symbol 167 GraphicUses:106 120 117Used by:196
Symbol 168 GraphicUses:110 124 121Used by:196
Symbol 169 GraphicUses:114 128 125Used by:196
Symbol 170 GraphicUses:118 132 129Used by:196
Symbol 171 GraphicUses:122 136 133Used by:196
Symbol 172 GraphicUses:126 140 137Used by:196
Symbol 173 GraphicUses:130 144 141Used by:196
Symbol 174 GraphicUses:134 148 145Used by:196
Symbol 175 GraphicUses:138 152 149Used by:196
Symbol 176 GraphicUses:142 156 153Used by:196
Symbol 177 GraphicUses:146 159 96Used by:196
Symbol 178 GraphicUses:150 161 100Used by:196
Symbol 179 GraphicUses:154 163 104Used by:196
Symbol 180 GraphicUses:157 98 108Used by:196
Symbol 181 GraphicUses:97 102 112Used by:196
Symbol 182 GraphicUses:101 106 116Used by:196
Symbol 183 GraphicUses:105 110 120Used by:196
Symbol 184 GraphicUses:109 114 124Used by:196
Symbol 185 GraphicUses:113 118 128Used by:196
Symbol 186 GraphicUses:117 122 132Used by:196
Symbol 187 GraphicUses:121 126 136Used by:196
Symbol 188 GraphicUses:125 130 140Used by:196
Symbol 189 GraphicUses:129 134 144Used by:196
Symbol 190 GraphicUses:133 138 148Used by:196
Symbol 191 GraphicUses:137 142 152Used by:196
Symbol 192 GraphicUses:141 146 156Used by:196
Symbol 193 GraphicUses:145 150 159Used by:196
Symbol 194 GraphicUses:149 154 161Used by:196
Symbol 195 GraphicUses:153 157 163Used by:196
Symbol 196 MovieClipUses:99 103 107 111 115 119 123 127 131 135 139 143 147 151 155 158 160 162 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195Used by:294 351 777
Symbol 197 BitmapUsed by:198
Symbol 198 GraphicUses:197Used by:277
Symbol 199 BitmapUsed by:200
Symbol 200 GraphicUses:199Used by:277
Symbol 201 BitmapUsed by:202
Symbol 202 GraphicUses:201Used by:277
Symbol 203 BitmapUsed by:204
Symbol 204 GraphicUses:203Used by:277
Symbol 205 BitmapUsed by:206
Symbol 206 GraphicUses:205Used by:277
Symbol 207 BitmapUsed by:208
Symbol 208 GraphicUses:207Used by:277
Symbol 209 BitmapUsed by:210
Symbol 210 GraphicUses:209Used by:277
Symbol 211 BitmapUsed by:212
Symbol 212 GraphicUses:211Used by:277
Symbol 213 BitmapUsed by:214
Symbol 214 GraphicUses:213Used by:277
Symbol 215 BitmapUsed by:216
Symbol 216 GraphicUses:215Used by:277
Symbol 217 BitmapUsed by:218
Symbol 218 GraphicUses:217Used by:277
Symbol 219 BitmapUsed by:220
Symbol 220 GraphicUses:219Used by:277
Symbol 221 BitmapUsed by:222
Symbol 222 GraphicUses:221Used by:277
Symbol 223 BitmapUsed by:224
Symbol 224 GraphicUses:223Used by:277
Symbol 225 BitmapUsed by:226
Symbol 226 GraphicUses:225Used by:277
Symbol 227 BitmapUsed by:228
Symbol 228 GraphicUses:227Used by:277
Symbol 229 BitmapUsed by:230
Symbol 230 GraphicUses:229Used by:277
Symbol 231 BitmapUsed by:232
Symbol 232 GraphicUses:231Used by:277
Symbol 233 BitmapUsed by:234
Symbol 234 GraphicUses:233Used by:277
Symbol 235 BitmapUsed by:236
Symbol 236 GraphicUses:235Used by:277
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:277
Symbol 239 BitmapUsed by:240
Symbol 240 GraphicUses:239Used by:277
Symbol 241 BitmapUsed by:242
Symbol 242 GraphicUses:241Used by:277
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:277
Symbol 245 BitmapUsed by:246
Symbol 246 GraphicUses:245Used by:277
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:277
Symbol 249 BitmapUsed by:250
Symbol 250 GraphicUses:249Used by:277
Symbol 251 BitmapUsed by:252
Symbol 252 GraphicUses:251Used by:277
Symbol 253 BitmapUsed by:254
Symbol 254 GraphicUses:253Used by:277
Symbol 255 BitmapUsed by:256
Symbol 256 GraphicUses:255Used by:277
Symbol 257 BitmapUsed by:258
Symbol 258 GraphicUses:257Used by:277
Symbol 259 BitmapUsed by:260
Symbol 260 GraphicUses:259Used by:277
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:277
Symbol 263 BitmapUsed by:264
Symbol 264 GraphicUses:263Used by:277
Symbol 265 BitmapUsed by:266
Symbol 266 GraphicUses:265Used by:277
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:277
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:277
Symbol 271 BitmapUsed by:272
Symbol 272 GraphicUses:271Used by:277
Symbol 273 BitmapUsed by:274
Symbol 274 GraphicUses:273Used by:277
Symbol 275 BitmapUsed by:276
Symbol 276 GraphicUses:275Used by:277
Symbol 277 MovieClipUses:198 200 202 204 206 208 210 212 214 216 218 220 222 224 226 228 230 232 234 236 238 240 242 244 246 248 250 252 254 256 258 260 262 264 266 268 270 272 274 276Used by:294
Symbol 278 MovieClipUsed by:294 682
Symbol 279 BitmapUsed by:280
Symbol 280 GraphicUses:279Used by:293
Symbol 281 BitmapUsed by:282
Symbol 282 GraphicUses:281Used by:293
Symbol 283 BitmapUsed by:284
Symbol 284 GraphicUses:283Used by:293
Symbol 285 BitmapUsed by:286
Symbol 286 GraphicUses:285Used by:293
Symbol 287 BitmapUsed by:288
Symbol 288 GraphicUses:287Used by:293
Symbol 289 BitmapUsed by:290
Symbol 290 GraphicUses:289Used by:293
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:293
Symbol 293 MovieClip {DefenseV10_fla.Player_Boost_16}Uses:280 282 284 286 288 290 292Used by:294
Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12}Uses:95 196 277 278 61 293Used by:295
Symbol 295 MovieClip {Player}Uses:294Used by:296 777
Symbol 296 MovieClip {GameScene}Uses:62 64 73 82 91 94 295 61Used by:777
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:307
Symbol 299 BitmapUsed by:300
Symbol 300 GraphicUses:299Used by:307
Symbol 301 BitmapUsed by:302
Symbol 302 GraphicUses:301Used by:307
Symbol 303 BitmapUsed by:304
Symbol 304 GraphicUses:303Used by:307
Symbol 305 BitmapUsed by:306
Symbol 306 GraphicUses:305Used by:307
Symbol 307 MovieClip {Help}Uses:298 300 302 304 306Used by:777
Symbol 308 BitmapUsed by:309
Symbol 309 GraphicUses:308Used by:310
Symbol 310 MovieClipUses:309Used by:319
Symbol 311 FontUsed by:312
Symbol 312 TextUses:311Used by:315
Symbol 313 BitmapUsed by:314
Symbol 314 GraphicUses:313Used by:315
Symbol 315 MovieClipUses:312 314Used by:319
Symbol 316 BitmapUsed by:317
Symbol 317 GraphicUses:316Used by:318
Symbol 318 MovieClipUses:317Used by:319
Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23}Uses:310 315 318Used by:320
Symbol 320 MovieClip {NewMuteButton}Uses:319Used by:601 777
Symbol 321 BitmapUsed by:322
Symbol 322 GraphicUses:321Used by:323
Symbol 323 MovieClip {PlayerLife}Uses:322Used by:604 777
Symbol 324 BitmapUsed by:325
Symbol 325 GraphicUses:324Used by:326
Symbol 326 MovieClip {TrailSample}Uses:325Used by:777
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:329
Symbol 329 MovieClipUses:328Used by:333
Symbol 330 BitmapUsed by:331
Symbol 331 GraphicUses:330Used by:332 349
Symbol 332 MovieClipUses:331Used by:333
Symbol 333 MovieClip {Boss}Uses:329 332Used by:777
Symbol 334 BitmapUsed by:335
Symbol 335 GraphicUses:334Used by:336
Symbol 336 MovieClipUses:335Used by:338
Symbol 337 MovieClip {DefenseV10_fla.Ranger_Turret_34}Uses:61Used by:338
Symbol 338 MovieClip {Ranger}Uses:336 337Used by:777
Symbol 339 BitmapUsed by:340
Symbol 340 GraphicUses:339Used by:341
Symbol 341 MovieClipUses:340Used by:345
Symbol 342 BitmapUsed by:343
Symbol 343 GraphicUses:342Used by:344
Symbol 344 MovieClipUses:343Used by:345
Symbol 345 MovieClip {Scout}Uses:341 344Used by:777
Symbol 346 BitmapUsed by:347
Symbol 347 GraphicUses:346Used by:348
Symbol 348 MovieClipUses:347Used by:350
Symbol 349 MovieClipUses:331Used by:350
Symbol 350 MovieClip {Tank}Uses:348 349Used by:777
Symbol 351 MovieClip {TestParticle}Uses:196Used by:777
Symbol 352 BitmapUsed by:353
Symbol 353 GraphicUses:352Used by:404
Symbol 354 BitmapUsed by:355
Symbol 355 GraphicUses:354Used by:404
Symbol 356 BitmapUsed by:357
Symbol 357 GraphicUses:356Used by:404
Symbol 358 BitmapUsed by:359
Symbol 359 GraphicUses:358Used by:404
Symbol 360 BitmapUsed by:361
Symbol 361 GraphicUses:360Used by:404
Symbol 362 BitmapUsed by:363
Symbol 363 GraphicUses:362Used by:404
Symbol 364 BitmapUsed by:365
Symbol 365 GraphicUses:364Used by:404
Symbol 366 BitmapUsed by:367
Symbol 367 GraphicUses:366Used by:404
Symbol 368 BitmapUsed by:369
Symbol 369 GraphicUses:368Used by:404
Symbol 370 BitmapUsed by:371
Symbol 371 GraphicUses:370Used by:404
Symbol 372 BitmapUsed by:373
Symbol 373 GraphicUses:372Used by:404
Symbol 374 BitmapUsed by:375
Symbol 375 GraphicUses:374Used by:404
Symbol 376 BitmapUsed by:377
Symbol 377 GraphicUses:376Used by:404
Symbol 378 BitmapUsed by:379
Symbol 379 GraphicUses:378Used by:404
Symbol 380 BitmapUsed by:381
Symbol 381 GraphicUses:380Used by:404
Symbol 382 BitmapUsed by:383
Symbol 383 GraphicUses:382Used by:404
Symbol 384 BitmapUsed by:385
Symbol 385 GraphicUses:384Used by:404
Symbol 386 BitmapUsed by:387
Symbol 387 GraphicUses:386Used by:404
Symbol 388 BitmapUsed by:389
Symbol 389 GraphicUses:388Used by:404
Symbol 390 BitmapUsed by:391
Symbol 391 GraphicUses:390Used by:404
Symbol 392 BitmapUsed by:393
Symbol 393 GraphicUses:392Used by:404
Symbol 394 BitmapUsed by:395
Symbol 395 GraphicUses:394Used by:404
Symbol 396 BitmapUsed by:397
Symbol 397 GraphicUses:396Used by:404
Symbol 398 BitmapUsed by:399
Symbol 399 GraphicUses:398Used by:404
Symbol 400 BitmapUsed by:401
Symbol 401 GraphicUses:400Used by:404
Symbol 402 BitmapUsed by:403
Symbol 403 GraphicUses:402Used by:404
Symbol 404 MovieClip {DefenseV10_fla.BigExplosion_Shadow_42}Uses:353 355 357 359 361 363 365 367 369 371 373 375 377 379 381 383 385 387 389 391 393 395 397 399 401 403Used by:608 777
Symbol 405 BitmapUsed by:406
Symbol 406 GraphicUses:405Used by:407
Symbol 407 MovieClipUses:406Used by:408
Symbol 408 MovieClip {DefenseV10_fla.CoreInd_43}Uses:407Used by:601 777
Symbol 409 BitmapUsed by:410
Symbol 410 GraphicUses:409Used by:411
Symbol 411 MovieClipUses:410Used by:412
Symbol 412 MovieClipUses:411Used by:601 777
Symbol 413 BitmapUsed by:414
Symbol 414 GraphicUses:413Used by:496
Symbol 415 BitmapUsed by:416
Symbol 416 GraphicUses:415Used by:420
Symbol 417 BitmapUsed by:418
Symbol 418 GraphicUses:417Used by:420
Symbol 419 GraphicUsed by:420 425 430 435 440 445 450 455 460 503 508 513 550 555 560 581
Symbol 420 ButtonUses:416 418 419Used by:496
Symbol 421 BitmapUsed by:422
Symbol 422 GraphicUses:421Used by:425
Symbol 423 BitmapUsed by:424
Symbol 424 GraphicUses:423Used by:425
Symbol 425 ButtonUses:422 424 419Used by:496
Symbol 426 BitmapUsed by:427
Symbol 427 GraphicUses:426Used by:430
Symbol 428 BitmapUsed by:429
Symbol 429 GraphicUses:428Used by:430
Symbol 430 ButtonUses:427 429 419Used by:496
Symbol 431 BitmapUsed by:432
Symbol 432 GraphicUses:431Used by:435
Symbol 433 BitmapUsed by:434
Symbol 434 GraphicUses:433Used by:435
Symbol 435 ButtonUses:432 434 419Used by:496
Symbol 436 BitmapUsed by:437
Symbol 437 GraphicUses:436Used by:440
Symbol 438 BitmapUsed by:439
Symbol 439 GraphicUses:438Used by:440
Symbol 440 ButtonUses:437 439 419Used by:496
Symbol 441 BitmapUsed by:442
Symbol 442 GraphicUses:441Used by:445
Symbol 443 BitmapUsed by:444
Symbol 444 GraphicUses:443Used by:445
Symbol 445 ButtonUses:442 444 419Used by:496
Symbol 446 BitmapUsed by:447
Symbol 447 GraphicUses:446Used by:450
Symbol 448 BitmapUsed by:449
Symbol 449 GraphicUses:448Used by:450
Symbol 450 ButtonUses:447 449 419Used by:496 523
Symbol 451 BitmapUsed by:452
Symbol 452 GraphicUses:451Used by:455
Symbol 453 BitmapUsed by:454
Symbol 454 GraphicUses:453Used by:455
Symbol 455 ButtonUses:452 454 419Used by:496 523
Symbol 456 BitmapUsed by:457
Symbol 457 GraphicUses:456Used by:460
Symbol 458 BitmapUsed by:459
Symbol 459 GraphicUses:458Used by:460
Symbol 460 ButtonUses:457 459 419Used by:496 523
Symbol 461 BitmapUsed by:463
Symbol 462 BitmapUsed by:463
Symbol 463 GraphicUses:461 462Used by:468
Symbol 464 BitmapUsed by:466
Symbol 465 BitmapUsed by:466
Symbol 466 GraphicUses:464 465Used by:468
Symbol 467 GraphicUsed by:468
Symbol 468 ButtonUses:463 466 467Used by:496 523 539 542
Symbol 469 BitmapUsed by:470
Symbol 470 GraphicUses:469Used by:471
Symbol 471 MovieClipUses:470Used by:496
Symbol 472 BitmapUsed by:473
Symbol 473 GraphicUses:472Used by:474
Symbol 474 MovieClipUses:473Used by:496
Symbol 475 BitmapUsed by:476
Symbol 476 GraphicUses:475Used by:477
Symbol 477 MovieClipUses:476Used by:496
Symbol 478 BitmapUsed by:479
Symbol 479 GraphicUses:478Used by:480
Symbol 480 MovieClipUses:479Used by:496
Symbol 481 BitmapUsed by:482
Symbol 482 GraphicUses:481Used by:483
Symbol 483 MovieClipUses:482Used by:496
Symbol 484 BitmapUsed by:485
Symbol 485 GraphicUses:484Used by:486
Symbol 486 MovieClipUses:485Used by:496
Symbol 487 BitmapUsed by:488
Symbol 488 GraphicUses:487Used by:489
Symbol 489 MovieClipUses:488Used by:496
Symbol 490 BitmapUsed by:491
Symbol 491 GraphicUses:490Used by:492
Symbol 492 MovieClipUses:491Used by:496
Symbol 493 BitmapUsed by:494
Symbol 494 GraphicUses:493Used by:495
Symbol 495 MovieClipUses:494Used by:496
Symbol 496 MovieClip {GameHudPlayerUpdate}Uses:414 420 425 430 435 440 445 450 455 460 468 471 474 477 480 483 486 489 492 495Used by:604
Symbol 497 BitmapUsed by:498
Symbol 498 GraphicUses:497Used by:523
Symbol 499 BitmapUsed by:500
Symbol 500 GraphicUses:499Used by:503
Symbol 501 BitmapUsed by:502
Symbol 502 GraphicUses:501Used by:503
Symbol 503 ButtonUses:500 502 419Used by:523
Symbol 504 BitmapUsed by:505
Symbol 505 GraphicUses:504Used by:508
Symbol 506 BitmapUsed by:507
Symbol 507 GraphicUses:506Used by:508
Symbol 508 ButtonUses:505 507 419Used by:523
Symbol 509 BitmapUsed by:510
Symbol 510 GraphicUses:509Used by:513
Symbol 511 BitmapUsed by:512
Symbol 512 GraphicUses:511Used by:513
Symbol 513 ButtonUses:510 512 419Used by:523
Symbol 514 BitmapUsed by:515
Symbol 515 GraphicUses:514Used by:516
Symbol 516 MovieClipUses:515Used by:523
Symbol 517 BitmapUsed by:518
Symbol 518 GraphicUses:517Used by:519
Symbol 519 MovieClipUses:518Used by:523
Symbol 520 BitmapUsed by:521
Symbol 521 GraphicUses:520Used by:522
Symbol 522 MovieClipUses:521Used by:523
Symbol 523 MovieClip {GameHudBaseUpdate}Uses:498 468 503 508 513 450 455 460 516 519 522Used by:604
Symbol 524 BitmapUsed by:525
Symbol 525 GraphicUses:524Used by:539
Symbol 526 BitmapUsed by:527
Symbol 527 GraphicUses:526Used by:531
Symbol 528 BitmapUsed by:529
Symbol 529 GraphicUses:528Used by:531
Symbol 530 GraphicUsed by:531 536
Symbol 531 ButtonUses:527 529 530Used by:539 542
Symbol 532 BitmapUsed by:533
Symbol 533 GraphicUses:532Used by:536
Symbol 534 BitmapUsed by:535
Symbol 535 GraphicUses:534Used by:536
Symbol 536 ButtonUses:533 535 530Used by:539 542
Symbol 537 FontUsed by:538 583
Symbol 538 EditableTextUses:537Used by:539
Symbol 539 MovieClip {GameHudRepair}Uses:525 468 531 536 538Used by:604
Symbol 540 BitmapUsed by:541
Symbol 541 GraphicUses:540Used by:542
Symbol 542 MovieClip {DefenseV10_fla.GameHudExitBase_79}Uses:541 468 531 536Used by:543
Symbol 543 MovieClip {GameHudExit}Uses:542Used by:604
Symbol 544 BitmapUsed by:545
Symbol 545 GraphicUses:544Used by:561
Symbol 546 BitmapUsed by:547
Symbol 547 GraphicUses:546Used by:550
Symbol 548 BitmapUsed by:549
Symbol 549 GraphicUses:548Used by:550
Symbol 550 ButtonUses:547 549 419Used by:561
Symbol 551 BitmapUsed by:552
Symbol 552 GraphicUses:551Used by:555
Symbol 553 BitmapUsed by:554
Symbol 554 GraphicUses:553Used by:555
Symbol 555 ButtonUses:552 554 419Used by:561
Symbol 556 BitmapUsed by:557
Symbol 557 GraphicUses:556Used by:560
Symbol 558 BitmapUsed by:559
Symbol 559 GraphicUses:558Used by:560
Symbol 560 ButtonUses:557 559 419Used by:561
Symbol 561 MovieClip {DefenseV10_fla.SliderBase_82}Uses:545 550 555 560Used by:562 777
Symbol 562 MovieClip {DefenseV10_fla.Slider_81}Uses:561Used by:601
Symbol 563 BitmapUsed by:565
Symbol 564 BitmapUsed by:565
Symbol 565 GraphicUses:563 564Used by:601
Symbol 566 GraphicUsed by:567
Symbol 567 MovieClipUses:566Used by:568
Symbol 568 MovieClip {DefenseV10_fla.BoostInt_86}Uses:567Used by:601
Symbol 569 BitmapUsed by:573
Symbol 570 BitmapUsed by:573
Symbol 571 BitmapUsed by:573
Symbol 572 BitmapUsed by:573
Symbol 573 GraphicUses:569 570 571 572Used by:601
Symbol 574 FontUsed by:575 576 582
Symbol 575 EditableTextUses:574Used by:601
Symbol 576 EditableTextUses:574Used by:601
Symbol 577 BitmapUsed by:578
Symbol 578 GraphicUses:577Used by:581
Symbol 579 BitmapUsed by:580
Symbol 580 GraphicUses:579Used by:581
Symbol 581 ButtonUses:578 580 419Used by:601
Symbol 582 TextUses:574Used by:601
Symbol 583 TextUses:537Used by:601
Symbol 584 BitmapUsed by:586 588
Symbol 585 BitmapUsed by:586 588 590
Symbol 586 GraphicUses:584 585Used by:589
Symbol 587 BitmapUsed by:588
Symbol 588 GraphicUses:587 584 585Used by:589
Symbol 589 ButtonUses:586 588Used by:592
Symbol 590 GraphicUses:585Used by:591
Symbol 591 MovieClipUses:590Used by:592
Symbol 592 MovieClip {StartWaveButton}Uses:589 591Used by:601 777
Symbol 593 BitmapUsed by:594
Symbol 594 GraphicUses:593Used by:595
Symbol 595 MovieClipUses:594Used by:596
Symbol 596 MovieClip {DefenseV10_fla.InnerInd_92}Uses:595Used by:601
Symbol 597 BitmapUsed by:598
Symbol 598 GraphicUses:597Used by:599
Symbol 599 MovieClipUses:598Used by:600
Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}Uses:599Used by:601
Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80}Uses:562 565 61 568 573 575 576 581 582 583 320 592 412 596 600 408Used by:604
Symbol 602 GraphicUsed by:603
Symbol 603 MovieClipUses:602Used by:604 777
Symbol 604 MovieClip {GameHud}Uses:496 523 539 543 601 603 323Used by:777
Symbol 605 BitmapUsed by:606
Symbol 606 GraphicUses:605Used by:607
Symbol 607 MovieClipUses:606Used by:777
Symbol 608 MovieClip {BigExplode}Uses:404Used by:777
Symbol 609 BitmapUsed by:610
Symbol 610 GraphicUses:609Used by:611
Symbol 611 MovieClip {BuildNo}Uses:610Used by:777
Symbol 612 BitmapUsed by:613
Symbol 613 GraphicUses:612Used by:614
Symbol 614 MovieClip {BuildYes}Uses:613Used by:777
Symbol 615 BitmapUsed by:616
Symbol 616 GraphicUses:615Used by:617
Symbol 617 MovieClipUses:616Used by:618
Symbol 618 MovieClip {Bullet}Uses:617Used by:777
Symbol 619 BitmapUsed by:620
Symbol 620 GraphicUses:619Used by:621
Symbol 621 MovieClipUses:620Used by:622
Symbol 622 MovieClip {Bullet_Enemy}Uses:621Used by:777
Symbol 623 BitmapUsed by:624
Symbol 624 GraphicUses:623Used by:625
Symbol 625 MovieClip {Bullet_Gun2}Uses:624Used by:777
Symbol 626 BitmapUsed by:627
Symbol 627 GraphicUses:626Used by:628
Symbol 628 MovieClip {BulletTurret1}Uses:627Used by:777
Symbol 629 BitmapUsed by:630
Symbol 630 GraphicUses:629Used by:631
Symbol 631 MovieClip {BulletTurret2}Uses:630Used by:777
Symbol 632 BitmapUsed by:633
Symbol 633 GraphicUses:632Used by:634
Symbol 634 MovieClip {BulletTurret3}Uses:633Used by:777
Symbol 635 BitmapUsed by:636
Symbol 636 GraphicUses:635Used by:667
Symbol 637 BitmapUsed by:638
Symbol 638 GraphicUses:637Used by:667
Symbol 639 BitmapUsed by:640
Symbol 640 GraphicUses:639Used by:667
Symbol 641 BitmapUsed by:642
Symbol 642 GraphicUses:641Used by:667
Symbol 643 BitmapUsed by:644
Symbol 644 GraphicUses:643Used by:667
Symbol 645 BitmapUsed by:646
Symbol 646 GraphicUses:645Used by:667
Symbol 647 BitmapUsed by:648
Symbol 648 GraphicUses:647Used by:667
Symbol 649 BitmapUsed by:650
Symbol 650 GraphicUses:649Used by:667
Symbol 651 BitmapUsed by:652
Symbol 652 GraphicUses:651Used by:667
Symbol 653 BitmapUsed by:654
Symbol 654 GraphicUses:653Used by:667
Symbol 655 BitmapUsed by:656
Symbol 656 GraphicUses:655Used by:667
Symbol 657 BitmapUsed by:658
Symbol 658 GraphicUses:657Used by:667
Symbol 659 BitmapUsed by:660
Symbol 660 GraphicUses:659Used by:667
Symbol 661 BitmapUsed by:662
Symbol 662 GraphicUses:661Used by:667
Symbol 663 BitmapUsed by:664
Symbol 664 GraphicUses:663Used by:667
Symbol 665 BitmapUsed by:666
Symbol 666 GraphicUses:665Used by:667
Symbol 667 MovieClip {Explode}Uses:636 638 640 642 644 646 648 650 652 654 656 658 660 662 664 666Used by:777
Symbol 668 GraphicUsed by:671
Symbol 669 GraphicUsed by:670
Symbol 670 MovieClipUses:669Used by:671
Symbol 671 MovieClip {HPBar}Uses:668 670Used by:777
Symbol 672 GraphicUsed by:673
Symbol 673 MovieClipUses:672Used by:674 777
Symbol 674 MovieClip {HPBar_Player}Uses:673Used by:777
Symbol 675 BitmapUsed by:676
Symbol 676 GraphicUses:675Used by:679
Symbol 677 BitmapUsed by:678
Symbol 678 GraphicUses:677Used by:679
Symbol 679 MovieClip {MouseCursor}Uses:676 678Used by:777
Symbol 680 BitmapUsed by:681
Symbol 681 GraphicUses:680Used by:682
Symbol 682 MovieClip {Rocket_Gun3}Uses:681 278Used by:777
Symbol 683 BitmapUsed by:684
Symbol 684 GraphicUses:683Used by:710
Symbol 685 TextUses:54Used by:710
Symbol 686 EditableTextUses:54Used by:710
Symbol 687 EditableTextUses:54Used by:710
Symbol 688 EditableTextUses:54Used by:710
Symbol 689 EditableTextUses:54Used by:710
Symbol 690 EditableTextUses:54Used by:710
Symbol 691 EditableTextUses:54Used by:710
Symbol 692 EditableTextUses:54Used by:710
Symbol 693 TextUses:54Used by:710
Symbol 694 BitmapUsed by:695
Symbol 695 GraphicUses:694Used by:699
Symbol 696 BitmapUsed by:697
Symbol 697 GraphicUses:696Used by:699
Symbol 698 GraphicUsed by:699
Symbol 699 ButtonUses:695 697 698Used by:710
Symbol 700 BitmapUsed by:701
Symbol 701 GraphicUses:700Used by:704
Symbol 702 BitmapUsed by:703
Symbol 703 GraphicUses:702Used by:704
Symbol 704 ButtonUses:701 703Used by:710
Symbol 705 BitmapUsed by:706
Symbol 706 GraphicUses:705Used by:709
Symbol 707 BitmapUsed by:708
Symbol 708 GraphicUses:707Used by:709
Symbol 709 ButtonUses:706 708Used by:710
Symbol 710 MovieClip {GameOverPage}Uses:684 685 686 687 688 689 690 691 692 693 699 49 704 709Used by:777
Symbol 711 BitmapUsed by:712
Symbol 712 GraphicUses:711Used by:721
Symbol 713 BitmapUsed by:714 757
Symbol 714 GraphicUses:713Used by:715
Symbol 715 ButtonUses:714Used by:721
Symbol 716 BitmapUsed by:717
Symbol 717 GraphicUses:716Used by:720
Symbol 718 BitmapUsed by:719
Symbol 719 GraphicUses:718Used by:720
Symbol 720 ButtonUses:717 719Used by:721
Symbol 721 MovieClip {TutPage}Uses:712 715 720Used by:777
Symbol 722 BitmapUsed by:723
Symbol 723 GraphicUses:722Used by:739
Symbol 724 BitmapUsed by:725
Symbol 725 GraphicUses:724Used by:728
Symbol 726 BitmapUsed by:727
Symbol 727 GraphicUses:726Used by:728
Symbol 728 ButtonUses:725 727Used by:739
Symbol 729 BitmapUsed by:730
Symbol 730 GraphicUses:729Used by:733
Symbol 731 BitmapUsed by:732
Symbol 732 GraphicUses:731Used by:733
Symbol 733 ButtonUses:730 732Used by:739
Symbol 734 BitmapUsed by:735
Symbol 735 GraphicUses:734Used by:738
Symbol 736 BitmapUsed by:737
Symbol 737 GraphicUses:736Used by:738
Symbol 738 ButtonUses:735 737Used by:739
Symbol 739 MovieClip {TitlePage}Uses:723 728 733 738Used by:777
Symbol 740 BitmapUsed by:741
Symbol 741 GraphicUses:740Used by:759
Symbol 742 BitmapUsed by:743
Symbol 743 GraphicUses:742Used by:746
Symbol 744 BitmapUsed by:745
Symbol 745 GraphicUses:744Used by:746
Symbol 746 ButtonUses:743 745Used by:759
Symbol 747 BitmapUsed by:748
Symbol 748 GraphicUses:747Used by:751
Symbol 749 BitmapUsed by:750
Symbol 750 GraphicUses:749Used by:751
Symbol 751 ButtonUses:748 750Used by:759
Symbol 752 BitmapUsed by:753
Symbol 753 GraphicUses:752Used by:756
Symbol 754 BitmapUsed by:755
Symbol 755 GraphicUses:754Used by:756
Symbol 756 ButtonUses:753 755Used by:759
Symbol 757 GraphicUses:713Used by:758
Symbol 758 ButtonUses:757Used by:759
Symbol 759 MovieClip {DifficultyPage}Uses:741 746 751 756 758Used by:777
Symbol 760 FontUsed by:761 762
Symbol 761 EditableTextUses:760Used by:763
Symbol 762 EditableTextUses:760Used by:763
Symbol 763 MovieClip {TextPlayer}Uses:761 762Used by:777
Symbol 764 BitmapUsed by:765
Symbol 765 GraphicUses:764Used by:766
Symbol 766 MovieClip {PickUp}Uses:765Used by:777
Symbol 767 BitmapUsed by:768
Symbol 768 GraphicUses:767Used by:769
Symbol 769 MovieClip {Pillar_Artillary}Uses:768Used by:777
Symbol 770 BitmapUsed by:771
Symbol 771 GraphicUses:770Used by:772
Symbol 772 MovieClip {Pillar_Missile}Uses:771Used by:777
Symbol 773 BitmapUsed by:774
Symbol 774 GraphicUses:773Used by:775
Symbol 775 MovieClip {Pillar_Turret}Uses:774Used by:777
Symbol 776 SoundUsed by:777
Symbol 777 MovieClip {DefenseV10_fla.assetHolder_1}Uses:58 296 307 56 320 323 326 333 338 345 350 196 295 351 404 408 412 604 607 608 611 614 618 622 625 628 631 634 667 671 673 674 679 682 710 721 739 759 763 561 603 592 766 64 73 91 82 94 769 772 775 776Used by:Timeline

Instance Names

"text2G"Symbol 38 MovieClip {DefenseV10_fla.2games_play_latest_text_141} Frame 1Symbol 37 MovieClip
"play_latest_text"Symbol 39 MovieClip {DefenseV10_fla.2GamesRo_140} Frame 1Symbol 38 MovieClip {DefenseV10_fla.2games_play_latest_text_141}
"logo_ro"Symbol 39 MovieClip {DefenseV10_fla.2GamesRo_140} Frame 1Symbol 32 MovieClip {gameslogoro}
"logo_ro"Symbol 49 MovieClip {bubbleboxlogo} Frame 1Symbol 47 MovieClip {DefenseV10_fla.bubblxbox_smallLogo_ro_21}
"adBox"Symbol 56 MovieClip {LoadingBox} Frame 1Symbol 53 MovieClip
"logo"Symbol 56 MovieClip {LoadingBox} Frame 1Symbol 49 MovieClip {bubbleboxlogo}
"loading_txt"Symbol 56 MovieClip {LoadingBox} Frame 1Symbol 55 EditableText
"tFPS"Symbol 58 MovieClip {FPSMeter} Frame 1Symbol 57 EditableText
"zoneA"Symbol 62 MovieClip {LevelBG} Frame 1Symbol 61 MovieClip
"zoneB"Symbol 62 MovieClip {LevelBG} Frame 1Symbol 61 MovieClip
"zoneC"Symbol 62 MovieClip {LevelBG} Frame 1Symbol 61 MovieClip
"zoneD"Symbol 62 MovieClip {LevelBG} Frame 1Symbol 61 MovieClip
"rightEngine"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 278 MovieClip
"leftEngine"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 278 MovieClip
"gun3"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 61 MovieClip
"rightgun1"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 61 MovieClip
"leftgun1"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 61 MovieClip
"leftgun2"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 61 MovieClip
"rightgun2"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 1Symbol 61 MovieClip
"rightgun2"Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12} Frame 2Symbol 61 MovieClip
"body"Symbol 295 MovieClip {Player} Frame 1Symbol 294 MovieClip {DefenseV10_fla.Player_Body_12}
"background"Symbol 296 MovieClip {GameScene} Frame 1Symbol 62 MovieClip {LevelBG}
"scenecollision"Symbol 296 MovieClip {GameScene} Frame 1Symbol 64 MovieClip
"core"Symbol 296 MovieClip {GameScene} Frame 1Symbol 73 MovieClip {Core}
"ow5"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow6"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow3"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow4"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow2"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow1"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow8"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"ow7"Symbol 296 MovieClip {GameScene} Frame 1Symbol 82 MovieClip {Outer_Wall}
"iw4"Symbol 296 MovieClip {GameScene} Frame 1Symbol 91 MovieClip {Inner_Wall}
"iw2"Symbol 296 MovieClip {GameScene} Frame 1Symbol 91 MovieClip {Inner_Wall}
"iw3"Symbol 296 MovieClip {GameScene} Frame 1Symbol 91 MovieClip {Inner_Wall}
"iw1"Symbol 296 MovieClip {GameScene} Frame 1Symbol 91 MovieClip {Inner_Wall}
"p3"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p6"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p5"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p4"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p7"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p8"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p1"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p2"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p10"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p11"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p12"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"p9"Symbol 296 MovieClip {GameScene} Frame 1Symbol 94 MovieClip {Pillar}
"player"Symbol 296 MovieClip {GameScene} Frame 1Symbol 295 MovieClip {Player}
"coreMarker"Symbol 296 MovieClip {GameScene} Frame 1Symbol 61 MovieClip
"item3"Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23} Frame 1Symbol 310 MovieClip
"item2"Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23} Frame 1Symbol 315 MovieClip
"item1"Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23} Frame 1Symbol 318 MovieClip
"items"Symbol 320 MovieClip {NewMuteButton} Frame 1Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23}
"body"Symbol 333 MovieClip {Boss} Frame 1Symbol 329 MovieClip
"turretRocket1"Symbol 333 MovieClip {Boss} Frame 1Symbol 332 MovieClip
"turretRocket2"Symbol 333 MovieClip {Boss} Frame 1Symbol 332 MovieClip
"turretRocket3"Symbol 333 MovieClip {Boss} Frame 1Symbol 332 MovieClip
"turretRocket4"Symbol 333 MovieClip {Boss} Frame 1Symbol 332 MovieClip
"rightGun"Symbol 337 MovieClip {DefenseV10_fla.Ranger_Turret_34} Frame 1Symbol 61 MovieClip
"leftGun"Symbol 337 MovieClip {DefenseV10_fla.Ranger_Turret_34} Frame 1Symbol 61 MovieClip
"body"Symbol 338 MovieClip {Ranger} Frame 1Symbol 336 MovieClip
"turret"Symbol 338 MovieClip {Ranger} Frame 1Symbol 337 MovieClip {DefenseV10_fla.Ranger_Turret_34}
"body"Symbol 345 MovieClip {Scout} Frame 1Symbol 341 MovieClip
"turret"Symbol 345 MovieClip {Scout} Frame 1Symbol 344 MovieClip
"body"Symbol 350 MovieClip {Tank} Frame 1Symbol 348 MovieClip
"turret"Symbol 350 MovieClip {Tank} Frame 1Symbol 349 MovieClip
"gunBtn1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 420 Button
"gunBtn2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 425 Button
"gunBtn3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 430 Button
"speedBtn1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 435 Button
"speedBtn2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 440 Button
"speedBtn3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 445 Button
"armorBtn1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 450 Button
"armorBtn2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 455 Button
"armorBtn3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 460 Button
"closeButton"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 468 Button
"speedCover1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 471 MovieClip
"speedCover2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 474 MovieClip
"speedCover3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 477 MovieClip
"gunCover1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 480 MovieClip
"gunCover2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 483 MovieClip
"gunCover3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 486 MovieClip
"armorCover1"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 489 MovieClip
"armorCover2"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 492 MovieClip
"armorCover3"Symbol 496 MovieClip {GameHudPlayerUpdate} Frame 1Symbol 495 MovieClip
"closeButton"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 468 Button
"turret1"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 503 Button
"turret2"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 508 Button
"turret3"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 513 Button
"wall1"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 450 Button
"wall2"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 455 Button
"wall3"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 460 Button
"wallCover1"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 516 MovieClip
"wallCover2"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 519 MovieClip
"wallCover3"Symbol 523 MovieClip {GameHudBaseUpdate} Frame 1Symbol 522 MovieClip
"closeButton"Symbol 539 MovieClip {GameHudRepair} Frame 1Symbol 468 Button
"yesButton"Symbol 539 MovieClip {GameHudRepair} Frame 1Symbol 531 Button
"noButton"Symbol 539 MovieClip {GameHudRepair} Frame 1Symbol 536 Button
"tRepairCost"Symbol 539 MovieClip {GameHudRepair} Frame 1Symbol 538 EditableText
"closeButton"Symbol 542 MovieClip {DefenseV10_fla.GameHudExitBase_79} Frame 1Symbol 468 Button
"yesButton"Symbol 542 MovieClip {DefenseV10_fla.GameHudExitBase_79} Frame 1Symbol 531 Button
"noButton"Symbol 542 MovieClip {DefenseV10_fla.GameHudExitBase_79} Frame 1Symbol 536 Button
"exitBase"Symbol 543 MovieClip {GameHudExit} Frame 1Symbol 542 MovieClip {DefenseV10_fla.GameHudExitBase_79}
"playerUpdateButton"Symbol 561 MovieClip {DefenseV10_fla.SliderBase_82} Frame 1Symbol 550 Button
"repairButton"Symbol 561 MovieClip {DefenseV10_fla.SliderBase_82} Frame 1Symbol 555 Button
"baseUpdateButton"Symbol 561 MovieClip {DefenseV10_fla.SliderBase_82} Frame 1Symbol 560 Button
"sliderBase"Symbol 562 MovieClip {DefenseV10_fla.Slider_81} Frame 1Symbol 561 MovieClip {DefenseV10_fla.SliderBase_82}
"base"Symbol 592 MovieClip {StartWaveButton} Frame 1Symbol 589 Button
"notActive"Symbol 592 MovieClip {StartWaveButton} Frame 1Symbol 591 MovieClip
"slider"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 562 MovieClip {DefenseV10_fla.Slider_81}
"playerHPMarker"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 61 MovieClip
"boostInd"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 568 MovieClip {DefenseV10_fla.BoostInt_86}
"materialNumber"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 575 EditableText
"scoreNumber"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 576 EditableText
"exitButton"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 581 Button
"newMute"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 320 MovieClip {NewMuteButton}
"waveStartButton"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 592 MovieClip {StartWaveButton}
"emy1"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy2"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy3"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy4"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy5"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy6"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy7"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"emy8"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 412 MovieClip
"in3"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 596 MovieClip {DefenseV10_fla.InnerInd_92}
"in4"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 596 MovieClip {DefenseV10_fla.InnerInd_92}
"in1"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 596 MovieClip {DefenseV10_fla.InnerInd_92}
"in2"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 596 MovieClip {DefenseV10_fla.InnerInd_92}
"out5"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out6"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out7"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out8"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out1"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out2"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out3"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"out4"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 600 MovieClip {DefenseV10_fla.OuterInd_94}
"coreind"Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80} Frame 1Symbol 408 MovieClip {DefenseV10_fla.CoreInd_43}
"playerUpdateHud"Symbol 604 MovieClip {GameHud} Frame 1Symbol 496 MovieClip {GameHudPlayerUpdate}
"baseUpdateHud"Symbol 604 MovieClip {GameHud} Frame 1Symbol 523 MovieClip {GameHudBaseUpdate}
"repairHud"Symbol 604 MovieClip {GameHud} Frame 1Symbol 539 MovieClip {GameHudRepair}
"exitHud"Symbol 604 MovieClip {GameHud} Frame 1Symbol 543 MovieClip {GameHudExit}
"basic"Symbol 604 MovieClip {GameHud} Frame 1Symbol 601 MovieClip {DefenseV10_fla.GameHudBasic_80}
"life1"Symbol 604 MovieClip {GameHud} Frame 1Symbol 323 MovieClip {PlayerLife}
"life2"Symbol 604 MovieClip {GameHud} Frame 1Symbol 323 MovieClip {PlayerLife}
"bar"Symbol 671 MovieClip {HPBar} Frame 1Symbol 670 MovieClip
"playerbar"Symbol 674 MovieClip {HPBar_Player} Frame 1Symbol 673 MovieClip
"particlePosition"Symbol 682 MovieClip {Rocket_Gun3} Frame 1Symbol 278 MovieClip
"tLoseReason"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 686 EditableText
"tKillNum"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 687 EditableText
"tWave"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 688 EditableText
"tScore"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 689 EditableText
"tMaterialCollect"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 690 EditableText
"tMaterialSpent"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 691 EditableText
"tDifficulty"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 692 EditableText
"replayBtn"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 699 Button
"logo"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 49 MovieClip {bubbleboxlogo}
"btnSubmit"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 704 Button
"btnMoreGames"Symbol 710 MovieClip {GameOverPage} Frame 1Symbol 709 Button
"backButton"Symbol 721 MovieClip {TutPage} Frame 1Symbol 715 Button
"playButton"Symbol 721 MovieClip {TutPage} Frame 1Symbol 720 Button
"instructionsButton"Symbol 739 MovieClip {TitlePage} Frame 1Symbol 728 Button
"playButton"Symbol 739 MovieClip {TitlePage} Frame 1Symbol 733 Button
"playMoreButton"Symbol 739 MovieClip {TitlePage} Frame 1Symbol 738 Button
"easyBtn"Symbol 759 MovieClip {DifficultyPage} Frame 1Symbol 746 Button
"normalBtn"Symbol 759 MovieClip {DifficultyPage} Frame 1Symbol 751 Button
"hardBtn"Symbol 759 MovieClip {DifficultyPage} Frame 1Symbol 756 Button
"backButton"Symbol 759 MovieClip {DifficultyPage} Frame 1Symbol 758 Button
"tText"Symbol 763 MovieClip {TextPlayer} Frame 1Symbol 761 EditableText
"tText1"Symbol 763 MovieClip {TextPlayer} Frame 1Symbol 762 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Tag 0x0FF (255)Timeline Frame 11 bytes " "

Labels

"comeout"Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23} Frame 1
"comein"Symbol 319 MovieClip {DefenseV10_fla.NewMuteButtonItems_23} Frame 7
"rollout"Symbol 543 MovieClip {GameHudExit} Frame 1
"rollback"Symbol 543 MovieClip {GameHudExit} Frame 10
"end"Symbol 543 MovieClip {GameHudExit} Frame 20
"slider_out"Symbol 562 MovieClip {DefenseV10_fla.Slider_81} Frame 10
"slider_end"Symbol 562 MovieClip {DefenseV10_fla.Slider_81} Frame 20
"showplayerupdate"Symbol 604 MovieClip {GameHud} Frame 2
"playeron"Symbol 604 MovieClip {GameHud} Frame 10
"hideplayerupdate"Symbol 604 MovieClip {GameHud} Frame 11
"showbaseupdate"Symbol 604 MovieClip {GameHud} Frame 20
"baseon"Symbol 604 MovieClip {GameHud} Frame 29
"hidebaseupdate"Symbol 604 MovieClip {GameHud} Frame 30
"showrepair"Symbol 604 MovieClip {GameHud} Frame 40
"repairon"Symbol 604 MovieClip {GameHud} Frame 49
"hiderepair"Symbol 604 MovieClip {GameHud} Frame 50




http://swfchan.com/25/123984/info.shtml
Created: 2/3 -2019 04:38:54 Last modified: 2/3 -2019 04:38:54 Server time: 02/05 -2024 22:00:13