STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229595 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2595 · P5190 |
A Very Merry Christmas! |
This is the info page for Flash #70983 |
MUNIO |
To Defend... |
1000/1000 |
Start |
Start |
www.retroflashgames.com |
EMP Turret |
Mid-range turret that slows enemies in its blast range, but deals no damage. |
Laser Turret |
Long range tower that deals heavy damage, but has a slow rate of fire. |
Basic Turret |
Basic mid-range turret that rapidly fires on enemies, dealing low damage per hit. |
Inferno Turret |
Mid-range tower that engulfs an area in flame, damaging all units in the area. |
C&C Node |
Non-combat turret that, provides a damage bonus to adjacent turrets. Note: The effects of multiple C&C Nodes do not stack. |
Sonic Turret |
Short-range turret that sends a pulses of sound to damage nearby enemies. |
Next Wave |
Start New Game |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Start at Wave</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Start at Wave</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Start at Wave</font></p> |
Select Starting Wave |
Enter password |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Proceed to game</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Proceed to game</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Proceed to game</font></p> |
Game Over |
Play more great games at: |
Anti-Land +50% vs Land -25% vs Sea Cost: 3 Credits |
Anti-Sea +50% vs Sea -25% vs Air Cost: 3 Credits |
Anti-Air +50% vs Air -25% vs Land Cost: 3 Credits |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Help</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Help</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Help</font></p> |
v1.09 |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Back</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Back</font></p> |
<p align="center"><font face="Arial" size="24" color="#333333" letterSpacing="0.000000" kerning="0">Back</font></p> |
Laser Turret |
The Laser Turret packs the hardest punch of all your turrets and is also capable of delivering this punch over a great distance. It's main weakness is its slow firing rate, caused by the recharge time of its laser capacitors. The Laser Turret is very well suited for dealing with slow enemies that have a great deal of health. It is much weaker against large groups of fast weak enemies. |
Basic Turret |
The Basic Turret is a cheap rapid fire turret that comes at a low price. Individually its bursts do little damage, but after a short time the hits start stacking up significant amounts of damage. Its cheap cost and rapid fire make the Basic Turret very well suited for picking off straglers that manage to get past your main defenses. However in groups Basic Turrets are capable of taking down almost any enemy. |
EMP Turret |
The EMP Turret is a highly specialized turret that does not directly damage your enemies, but instead fires a burst of concentrated EM energy at an area, slowing all enemies in the vicinity for a short duration, thus giving your other turrets more time to finish them off. Due to the limited range of the turret and the relatively short duration of the EMP effect, placement strategy is extremely important while constructing an EMP Turret. |
Inferno Turret |
The Inferno Turret fires explosive rounds at a target area, blasting the entire area with a highly potent shockwave. All enemies caught it its wake will be severely damaged. While its damage and range are not as potent as the Laser Turret, its ability to damage multiple enemies in one shot makes it a devastating element in any defensive array. Using an EMP Turret to slow and group enemies closer together is highly reccomended when using Inferno Turrets. |
C&C Node |
The C&C Node, or Command and Control Node, helps coordinate surrounding turrets more efficiently. When upgraded it has access to more advance sensor data, which it feeds to any turret adjacent to it, increasing their damage significantly. The C&C Node does not attack enemies directly, its only purpose is to increase the effectiveness of other turrets. Note: Only one C&C Effect can be applied to any given turret at a time. If multiple C&C nodes are adjacent, the higest level C&C effect will be applied. |
Sonic Turret |
The Sonic Turret rapid pulses of concentrated sound at nearby enemies, while each pulse only does relatively minor damage, they come so quickly that the effect adds up very fast. The main disadvantage of this tower is its extremely limited range. The sonic pulses loose their potency very rapidly and thus the Sonic Turret is only effective at close range. |
The enemy forces are attacking with all three divisions of their armed forces; their Land Army, their Navy and their Airforce. Our defensive turrets are, in their default setting, equally effective against all types of enemies. But with a small investment they can be optimized against one type of enemy, at the cost of becoming weaker against another type of enemy, while their damage against the third type will remain normal. |
Upgrade Overview |
Any offensive turret can be upgraded for extra effectiveness versus land-based enemies. This will increase the turrets damage against land targets by 50%. While reducing its damage against naval targets by 25%. Damage dealt to aerial units is unaffected. |
Anti-Land |
Any offensive turret can be upgraded for extra effectiveness versus sea-based enemies. This will increase the turrets damage against naval targets by 50%. While reducing its damage against Aerial targets by 25%. Damage dealt to Groundunits is unaffected. |
Anti-Sea |
Any offensive turret can be upgraded for extra effectiveness versus air-based enemies. This will increase the turrets damage against aerial targets by 50%. While reducing its damage against landbased targets by 25%. Damage dealt to naval units is unaffected. |
Anti-Air |
Objective |
Your goal in this game is to prevent any enemy vehicles from reaching the Dome at the end of the road. To do this you much destroy them by building turrets. When you have destroyed all 30 waves of enemies, you will be victorious. For every enemy that reaches the Dome, you will lose one life. When you have lost all 20 of your lives, the game is lost. |
GamePlay |
Turrets are the key to winning the game. To build a turret, click on its button in the top left corner, and click again on the location you want to place it in. Turrets cannot be placed on the path or outside the playing field. Building turrets costs money, which is gained through killing enemies. More powerful enemies are worth more money. You can upgrade an individual turret's damage by selecting it and clicking the Upgrade Damage button. |
Munio Help |
Welcome to the Munio Help Screen. Please click a button on the left side of the screen for more information on a topic. To play more great games like Munio, please click the link below. |
Turrets Types |
Turret Upgrades |
Gameplay |
Overview |
Balance +0% vs All -0% vs All Cost: 3 Credits |
www.retroflashgames.com |
Objective |
Gameplay |
Back To Start |
Credits |
MunioTD@Gmail.com |
Credits |
Programming & Concept - Mark Jansen Graphic Design - Mark Jansen - Chris Kay |
For comments and questions, please contact: |
Victory is yours! |
ActionScript [AS3]
Section 1//Color (fl.motion.Color) package fl.motion { import flash.geom.*; import flash.display.*; public class Color extends ColorTransform { private var _tintMultiplier:Number;// = 0 private var _tintColor:Number;// = 0 public function Color(redMultiplier:Number=1, greenMultiplier:Number=1, blueMultiplier:Number=1, alphaMultiplier:Number=1, redOffset:Number=0, greenOffset:Number=0, blueOffset:Number=0, alphaOffset:Number=0){ _tintColor = 0; _tintMultiplier = 0; super(redMultiplier, greenMultiplier, blueMultiplier, alphaMultiplier, redOffset, greenOffset, blueOffset, alphaOffset); } public function setTint(tintColor:uint, tintMultiplier:Number):void{ var r:uint; var g:uint; var b:uint; this._tintColor = tintColor; this._tintMultiplier = tintMultiplier; this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = (1 - tintMultiplier))); r = ((tintColor >> 16) & 0xFF); g = ((tintColor >> 8) & 0xFF); b = (tintColor & 0xFF); this.redOffset = Math.round((r * tintMultiplier)); this.greenOffset = Math.round((g * tintMultiplier)); this.blueOffset = Math.round((b * tintMultiplier)); } public function set tintColor(value:uint):void{ this.setTint(value, this.tintMultiplier); } public function get brightness():Number{ return ((this.redOffset) ? (1 - this.redMultiplier) : (this.redMultiplier - 1)); } private function deriveTintColor():uint{ var ratio:Number; var r:uint; var g:uint; var b:uint; var colorNum:uint; ratio = (1 / this.tintMultiplier); r = Math.round((this.redOffset * ratio)); g = Math.round((this.greenOffset * ratio)); b = Math.round((this.blueOffset * ratio)); colorNum = (((r << 16) | (g << 8)) | b); return (colorNum); } public function get tintMultiplier():Number{ return (this._tintMultiplier); } public function get tintColor():uint{ return (this._tintColor); } public function set brightness(value:Number):void{ var percent:Number; var offset:Number; if (value > 1){ value = 1; } else { if (value < -1){ value = -1; }; }; percent = (1 - Math.abs(value)); offset = 0; if (value > 0){ offset = (value * 0xFF); }; this.redMultiplier = (this.greenMultiplier = (this.blueMultiplier = percent)); this.redOffset = (this.greenOffset = (this.blueOffset = offset)); } public function set tintMultiplier(value:Number):void{ this.setTint(this.tintColor, value); } private function parseXML(xml:XML=null):Color{ var firstChild:XML; var att:XML; var name:String; var tintColorNumber:uint; if (!xml){ return (this); }; firstChild = xml.elements()[0]; if (!firstChild){ return (this); }; for each (att in firstChild.attributes()) { name = att.localName(); if (name == "tintColor"){ tintColorNumber = (Number(att.toString()) as uint); this.tintColor = tintColorNumber; } else { this[name] = Number(att.toString()); }; }; return (this); } public static function interpolateColor(fromColor:uint, toColor:uint, progress:Number):uint{ var q:Number; var fromA:uint; var fromR:uint; var fromG:uint; var fromB:uint; var toA:uint; var toR:uint; var toG:uint; var toB:uint; var resultA:uint; var resultR:uint; var resultG:uint; var resultB:uint; var resultColor:uint; q = (1 - progress); fromA = ((fromColor >> 24) & 0xFF); fromR = ((fromColor >> 16) & 0xFF); fromG = ((fromColor >> 8) & 0xFF); fromB = (fromColor & 0xFF); toA = ((toColor >> 24) & 0xFF); toR = ((toColor >> 16) & 0xFF); toG = ((toColor >> 8) & 0xFF); toB = (toColor & 0xFF); resultA = ((fromA * q) + (toA * progress)); resultR = ((fromR * q) + (toR * progress)); resultG = ((fromG * q) + (toG * progress)); resultB = ((fromB * q) + (toB * progress)); resultColor = ((((resultA << 24) | (resultR << 16)) | (resultG << 8)) | resultB); return (resultColor); } public static function interpolateTransform(fromColor:ColorTransform, toColor:ColorTransform, progress:Number):ColorTransform{ var q:Number; var resultColor:ColorTransform; q = (1 - progress); resultColor = new ColorTransform(((fromColor.redMultiplier * q) + (toColor.redMultiplier * progress)), ((fromColor.greenMultiplier * q) + (toColor.greenMultiplier * progress)), ((fromColor.blueMultiplier * q) + (toColor.blueMultiplier * progress)), ((fromColor.alphaMultiplier * q) + (toColor.alphaMultiplier * progress)), ((fromColor.redOffset * q) + (toColor.redOffset * progress)), ((fromColor.greenOffset * q) + (toColor.greenOffset * progress)), ((fromColor.blueOffset * q) + (toColor.blueOffset * progress)), ((fromColor.alphaOffset * q) + (toColor.alphaOffset * progress))); return (resultColor); } public static function fromXML(xml:XML):Color{ return (Color(new (Color).parseXML(xml))); } } }//package fl.motionSection 2//BannerLink_mc_151 (Munio_fla.BannerLink_mc_151) package Munio_fla { import flash.events.*; import flash.display.*; import flash.net.*; public dynamic class BannerLink_mc_151 extends MovieClip { public function BannerLink_mc_151(){ super(); addFrameScript(0, frame1); } public function callRetroLink(event:MouseEvent){ var url:String; var request:URLRequest; var event = event; url = "http://www.retroflashgames.com/"; request = new URLRequest(url); navigateToURL(request, "_blank"); //unresolved jump var _slot1 = e; trace("Error occurred!"); } function frame1(){ this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_DOWN, callRetroLink); } } }//package Munio_flaSection 3//MainTimeline (Munio_fla.MainTimeline) package Munio_fla { import flash.display.*; public dynamic class MainTimeline extends MovieClip { public var _mochiads_game_id:String; public function MainTimeline(){ super(); addFrameScript(0, frame1, 1, frame2, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19); } function frame18(){ stop(); } function frame15(){ stop(); } function frame16(){ stop(); } function frame1(){ _mochiads_game_id = "91d639d4d74d3403"; stop(); } function frame19(){ stop(); } function frame17(){ stop(); } function frame2(){ stop(); } } }//package Munio_flaSection 4//Sprite18_236 (Munio_fla.Sprite18_236) package Munio_fla { import flash.events.*; import flash.display.*; import flash.net.*; public dynamic class Sprite18_236 extends MovieClip { public function Sprite18_236(){ super(); addFrameScript(0, frame1); } public function callRetroLink(event:MouseEvent){ var url:String; var request:URLRequest; var event = event; url = "http://www.targetedgames.com/"; request = new URLRequest(url); navigateToURL(request, "_blank"); //unresolved jump var _slot1 = e; trace("Error occurred!"); } function frame1(){ this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_DOWN, callRetroLink); } } }//package Munio_flaSection 5//Sprite21_234 (Munio_fla.Sprite21_234) package Munio_fla { import flash.display.*; public dynamic class Sprite21_234 extends MovieClip { public var GameBy:MovieClip; public var Retro_png:Banner; public var Effects:MovieClip; public function Sprite21_234(){ super(); addFrameScript(119, frame120); } function frame120(){ stop(); } } }//package Munio_flaSection 6//Sprite8_235 (Munio_fla.Sprite8_235) package Munio_fla { import flash.display.*; public dynamic class Sprite8_235 extends MovieClip { public function Sprite8_235(){ super(); addFrameScript(117, frame118); } function frame118(){ stop(); } } }//package Munio_flaSection 7//X_144 (Munio_fla.X_144) package Munio_fla { import flash.display.*; public dynamic class X_144 extends MovieClip { public function X_144(){ super(); addFrameScript(0, frame1, 1, frame2); } function frame1(){ stop(); } function frame2(){ stop(); } } }//package Munio_flaSection 8//AirBtn_mc (AirBtn_mc) package { import flash.display.*; public dynamic class AirBtn_mc extends MovieClip { public function AirBtn_mc(){ super(); } } }//packageSection 9//AirBtnDown_mc (AirBtnDown_mc) package { import flash.display.*; public dynamic class AirBtnDown_mc extends MovieClip { public function AirBtnDown_mc(){ super(); } } }//packageSection 10//AirBtnOver_mc (AirBtnOver_mc) package { import flash.display.*; public dynamic class AirBtnOver_mc extends MovieClip { public function AirBtnOver_mc(){ super(); } } }//packageSection 11//AirHelpHelp_mc (AirHelpHelp_mc) package { import flash.display.*; public dynamic class AirHelpHelp_mc extends MovieClip { public function AirHelpHelp_mc(){ super(); } } }//packageSection 12//AirInfo (AirInfo) package { import flash.display.*; public dynamic class AirInfo extends MovieClip { public function AirInfo(){ super(); } } }//packageSection 13//AuraTurret (AuraTurret) package { import flash.events.*; import flash.display.*; import flash.filters.*; public class AuraTurret extends MovieClip { public var WWLink; private var len; public var Range:int; public var SellPrice:int; public var EEturr;// = 0 public var NNturr;// = 0 private var Direction; public var NWLink; private var i; public var TurretType;// = 5 public var TurrID:int; public var WWturr;// = 0 public var SELink; private var RangeIndicator; private var RangeVisible:Boolean;// = false public var NELink; public var Gridnum; public var BaseDmg; public var SSLink; public var SWLink; public var EELink; public var DamageMultiplierLevel:int;// = 1 public var Selected:Boolean;// = false public var NWturr;// = 0 public var NEturr;// = 0 public var SEturr;// = 0 public var gridDirection; public var NNLink; public var SSturr;// = 0 public var SWturr;// = 0 private var MouseOver:Boolean;// = false public function AuraTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell:int){ MouseOver = false; RangeVisible = false; DamageMultiplierLevel = 1; Selected = false; TurretType = 5; NWLink = new Link_mc(); NNLink = new Link_mc(); NELink = new Link_mc(); EELink = new Link_mc(); SELink = new Link_mc(); SSLink = new Link_mc(); SWLink = new Link_mc(); WWLink = new Link_mc(); NWturr = 0; NNturr = 0; NEturr = 0; EEturr = 0; SEturr = 0; SSturr = 0; SWturr = 0; WWturr = 0; super(); this.addEventListener(Event.ENTER_FRAME, ScanAdjacent); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); BaseDmg = Damage; Range = TurretRange; TurrID = ID; Gridnum = GridLoc; SellPrice = Sell; NWLink.x = -6; NWLink.y = -6; NWLink.rotation = 45; NWLink.visible = false; this.addChild(NWLink); NNLink.y = -8; NNLink.rotation = 90; NNLink.visible = false; this.addChild(NNLink); NELink.y = -6; NELink.x = 6; NELink.rotation = 135; NELink.visible = false; this.addChild(NELink); EELink.x = 8; EELink.rotation = 180; EELink.visible = false; this.addChild(EELink); SELink.x = 6; SELink.y = 6; SELink.rotation = 225; SELink.visible = false; this.addChild(SELink); SSLink.y = 8; SSLink.rotation = 270; SSLink.visible = false; this.addChild(SSLink); SWLink.x = -6; SWLink.y = 6; SWLink.rotation = 315; SWLink.visible = false; this.addChild(SWLink); WWLink.x = -8; WWLink.rotation = 0; WWLink.visible = false; this.addChild(WWLink); } public function ScanAdjacent(event:Event){ var NW:*; var WW:*; var SW:*; var NN:*; var SS:*; var NE:*; var EE:*; var SE:*; NW = (Gridnum - 25); WW = (Gridnum - 24); SW = (Gridnum - 23); NN = (Gridnum - 1); SS = (Gridnum + 1); NE = (Gridnum + 23); EE = (Gridnum + 24); SE = (Gridnum + 25); if (MovieClip(parent).GridArray[NW] != undefined){ if (MovieClip(parent).GridArray[NW].IsBuilt == true){ NWLink.visible = true; gridDirection = 1; LinkAura(NW, gridDirection); } else { NWLink.visible = false; }; }; if (MovieClip(parent).GridArray[WW] != undefined){ if (MovieClip(parent).GridArray[WW].IsBuilt == true){ WWLink.visible = true; gridDirection = 2; LinkAura(WW, gridDirection); } else { WWLink.visible = false; }; }; if (MovieClip(parent).GridArray[SW] != undefined){ if (MovieClip(parent).GridArray[SW].IsBuilt == true){ SWLink.visible = true; gridDirection = 3; LinkAura(SW, gridDirection); } else { SWLink.visible = false; }; }; if (MovieClip(parent).GridArray[NN] != undefined){ if (MovieClip(parent).GridArray[NN].IsBuilt == true){ NNLink.visible = true; gridDirection = 4; LinkAura(NN, gridDirection); } else { NNLink.visible = false; }; }; if (MovieClip(parent).GridArray[SS] != undefined){ if (MovieClip(parent).GridArray[SS].IsBuilt == true){ SSLink.visible = true; gridDirection = 5; LinkAura(SS, gridDirection); } else { SSLink.visible = false; }; }; if (MovieClip(parent).GridArray[NE] != undefined){ if (MovieClip(parent).GridArray[NE].IsBuilt == true){ NELink.visible = true; gridDirection = 6; LinkAura(NE, gridDirection); } else { NELink.visible = false; }; }; if (MovieClip(parent).GridArray[EE] != undefined){ if (MovieClip(parent).GridArray[EE].IsBuilt == true){ EELink.visible = true; gridDirection = 7; LinkAura(EE, gridDirection); } else { EELink.visible = false; }; }; if (MovieClip(parent).GridArray[SE] != undefined){ if (MovieClip(parent).GridArray[SE].IsBuilt == true){ SELink.visible = true; gridDirection = 8; LinkAura(SE, gridDirection); } else { SELink.visible = false; }; }; } public function SellTurret(){ var i:*; if (NWturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == NWturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (NNturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == NNturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (NEturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == NEturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (EEturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == EEturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (SEturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == SEturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (SSturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == SSturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (SWturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == SWturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; if (WWturr != 0){ for (i in MovieClip(parent).TurretArray) { if (MovieClip(parent).TurretArray[i] == WWturr){ MovieClip(parent).TurretArray[i].UnLinkAura(); }; }; }; this.removeEventListener(Event.ENTER_FRAME, ScanAdjacent); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function OnMouseOut(event:MouseEvent){ MovieClip(parent).AuraTurretInfoOff2(); MouseOver = false; if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function LinkAura(AuraGrid, iDirection){ var i:*; i = (MovieClip(parent).TurretArray.length - 1); while (i >= 0) { if (MovieClip(parent).TurretArray[i].Gridnum == AuraGrid){ if (MovieClip(parent).TurretArray[i].TurretType != 5){ SaveTurret(i, iDirection); MovieClip(parent).TurretArray[i].LinkAura(TurrID, DamageMultiplierLevel); }; } else { if ((((MovieClip(parent).GridArray[AuraGrid].BuildType == 1)) || ((MovieClip(parent).GridArray[AuraGrid].BuildType == 4)))){ if (MovieClip(parent).TurretArray[i].TurrID == MovieClip(parent).GridArray[AuraGrid].BuildID){ SaveTurret(i, iDirection); MovieClip(parent).TurretArray[i].LinkAura(TurrID, DamageMultiplierLevel); }; }; }; i--; }; } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 0, this); MovieClip(parent).AuraTurretInfoOff2(); MovieClip(parent).AuraTurretSelected(DamageMultiplierLevel); }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).AuraTurretInfoOn2(true, SellPrice, Range, BaseDmg); }; } public function SaveTurret(i, iDirection){ if (iDirection == 1){ NWturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 2){ NNturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 3){ NEturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 4){ EEturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 5){ SEturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 6){ SSturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 7){ SWturr = MovieClip(parent).TurretArray[i]; } else { if (iDirection == 8){ WWturr = MovieClip(parent).TurretArray[i]; }; }; }; }; }; }; }; }; } } }//packageSection 14//AuraTurretHelp_mc (AuraTurretHelp_mc) package { import flash.display.*; public dynamic class AuraTurretHelp_mc extends MovieClip { public function AuraTurretHelp_mc(){ super(); } } }//packageSection 15//AuraTurretImg (AuraTurretImg) package { import flash.display.*; public dynamic class AuraTurretImg extends MovieClip { public function AuraTurretImg(){ super(); } } }//packageSection 16//AuraTurretInfo (AuraTurretInfo) package { import flash.display.*; public dynamic class AuraTurretInfo extends MovieClip { public function AuraTurretInfo(){ super(); } } }//packageSection 17//BackBtn_mc (BackBtn_mc) package { import flash.display.*; public dynamic class BackBtn_mc extends MovieClip { public function BackBtn_mc(){ super(); } } }//packageSection 18//BackBtnDown_mc (BackBtnDown_mc) package { import flash.display.*; public dynamic class BackBtnDown_mc extends MovieClip { public function BackBtnDown_mc(){ super(); } } }//packageSection 19//BackBtnOver_mc (BackBtnOver_mc) package { import flash.display.*; public dynamic class BackBtnOver_mc extends MovieClip { public function BackBtnOver_mc(){ super(); } } }//packageSection 20//Background_mc (Background_mc) package { import flash.display.*; public dynamic class Background_mc extends MovieClip { public function Background_mc(){ super(); } } }//packageSection 21//BackToStartBtn_mc (BackToStartBtn_mc) package { import flash.display.*; public dynamic class BackToStartBtn_mc extends MovieClip { public function BackToStartBtn_mc(){ super(); } } }//packageSection 22//BackToStartBtnDown_mc (BackToStartBtnDown_mc) package { import flash.display.*; public dynamic class BackToStartBtnDown_mc extends MovieClip { public function BackToStartBtnDown_mc(){ super(); } } }//packageSection 23//BackToStartBtnOver_mc (BackToStartBtnOver_mc) package { import flash.display.*; public dynamic class BackToStartBtnOver_mc extends MovieClip { public function BackToStartBtnOver_mc(){ super(); } } }//packageSection 24//BalanceBtn_mc (BalanceBtn_mc) package { import flash.display.*; public dynamic class BalanceBtn_mc extends MovieClip { public function BalanceBtn_mc(){ super(); } } }//packageSection 25//BalanceBtnDown_mc (BalanceBtnDown_mc) package { import flash.display.*; public dynamic class BalanceBtnDown_mc extends MovieClip { public function BalanceBtnDown_mc(){ super(); } } }//packageSection 26//BalanceBtnOver_mc (BalanceBtnOver_mc) package { import flash.display.*; public dynamic class BalanceBtnOver_mc extends MovieClip { public function BalanceBtnOver_mc(){ super(); } } }//packageSection 27//BalanceInfo (BalanceInfo) package { import flash.display.*; public dynamic class BalanceInfo extends MovieClip { public function BalanceInfo(){ super(); } } }//packageSection 28//Banner (Banner) package { import flash.events.*; import flash.display.*; import flash.net.*; public dynamic class Banner extends MovieClip { public function Banner(){ super(); addFrameScript(0, frame1); } public function callRetroLink(event:MouseEvent){ var url:String; var request:URLRequest; var event = event; url = "http://www.retroflashgames.com/"; request = new URLRequest(url); navigateToURL(request, "_blank"); //unresolved jump var _slot1 = e; trace("Error occurred!"); } function frame1(){ this.buttonMode = true; this.addEventListener(MouseEvent.MOUSE_DOWN, callRetroLink); } } }//packageSection 29//BtnSq (BtnSq) package { import flash.display.*; public dynamic class BtnSq extends MovieClip { public function BtnSq(){ super(); } } }//packageSection 30//BuildBtn1_mc (BuildBtn1_mc) package { import flash.display.*; public dynamic class BuildBtn1_mc extends MovieClip { public function BuildBtn1_mc(){ super(); } } }//packageSection 31//BuildBtn1Down_mc (BuildBtn1Down_mc) package { import flash.display.*; public dynamic class BuildBtn1Down_mc extends MovieClip { public function BuildBtn1Down_mc(){ super(); } } }//packageSection 32//BuildBtn2_mc (BuildBtn2_mc) package { import flash.display.*; public dynamic class BuildBtn2_mc extends MovieClip { public function BuildBtn2_mc(){ super(); } } }//packageSection 33//BuildBtn2Down_mc (BuildBtn2Down_mc) package { import flash.display.*; public dynamic class BuildBtn2Down_mc extends MovieClip { public function BuildBtn2Down_mc(){ super(); } } }//packageSection 34//BuildBtn3_mc (BuildBtn3_mc) package { import flash.display.*; public dynamic class BuildBtn3_mc extends MovieClip { public function BuildBtn3_mc(){ super(); } } }//packageSection 35//BuildBtn3Down_mc (BuildBtn3Down_mc) package { import flash.display.*; public dynamic class BuildBtn3Down_mc extends MovieClip { public function BuildBtn3Down_mc(){ super(); } } }//packageSection 36//BuildBtn4_mc (BuildBtn4_mc) package { import flash.display.*; public dynamic class BuildBtn4_mc extends MovieClip { public function BuildBtn4_mc(){ super(); } } }//packageSection 37//BuildBtn4Down_mc (BuildBtn4Down_mc) package { import flash.display.*; public dynamic class BuildBtn4Down_mc extends MovieClip { public function BuildBtn4Down_mc(){ super(); } } }//packageSection 38//BuildBtn5_mc (BuildBtn5_mc) package { import flash.display.*; public dynamic class BuildBtn5_mc extends MovieClip { public function BuildBtn5_mc(){ super(); } } }//packageSection 39//BuildBtn5Down_mc (BuildBtn5Down_mc) package { import flash.display.*; public dynamic class BuildBtn5Down_mc extends MovieClip { public function BuildBtn5Down_mc(){ super(); } } }//packageSection 40//BuildBtn6_mc (BuildBtn6_mc) package { import flash.display.*; public dynamic class BuildBtn6_mc extends MovieClip { public function BuildBtn6_mc(){ super(); } } }//packageSection 41//BuildBtn6Down_mc (BuildBtn6Down_mc) package { import flash.display.*; public dynamic class BuildBtn6Down_mc extends MovieClip { public function BuildBtn6Down_mc(){ super(); } } }//packageSection 42//BuildBtnRed (BuildBtnRed) package { import flash.display.*; public dynamic class BuildBtnRed extends MovieClip { public function BuildBtnRed(){ super(); } } }//packageSection 43//Bullet_mc (Bullet_mc) package { import fl.motion.*; import flash.events.*; import flash.display.*; public class Bullet_mc extends MovieClip { private var DeathCounter:int; private var BulletSpeed; private var Death:int;// = 7 private var Direction; private var BulletType; private var Damage:Number; private var Target; private var ImpactY; private var TargetID; private var ImpactX; public var BulletElement:int; private var Special1; private var Special2; private var Used:Boolean;// = false private var BulletLifeCounter:int;// = 40 public function Bullet_mc(TurretType, BaseDmg, TargetNR, Speed, MobID, HitX, HitY, Special01, Special02, Element){ var ETint:Color; Used = false; Death = 7; BulletLifeCounter = 40; super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4); BulletType = TurretType; Damage = BaseDmg; Target = TargetNR; BulletSpeed = Speed; TargetID = MobID; BulletElement = Element; ImpactX = HitX; ImpactY = HitY; ETint = new Color(); if (BulletElement == 1){ ETint.setTint(0xFF00, 0.6); this.transform.colorTransform = ETint; } else { if (BulletElement == 2){ ETint.setTint(0xFF, 0.6); this.transform.colorTransform = ETint; } else { if (BulletElement == 3){ ETint.setTint(0xFFFF00, 0.6); this.transform.colorTransform = ETint; }; }; }; if (BulletType == 1){ this.addEventListener(Event.ENTER_FRAME, Bullet1Loop); } else { if (BulletType == 2){ this.addEventListener(Event.ENTER_FRAME, Bullet2Loop); Special1 = Special01; Special2 = Special02; } else { if (BulletType == 3){ this.addEventListener(Event.ENTER_FRAME, Bullet3Loop); Special1 = Special01; Special2 = Special02; } else { if (BulletType == 4){ this.addEventListener(Event.ENTER_FRAME, Bullet4Loop); }; }; }; }; } public function Bullet2Loop(event:Event){ var CritterDistanceX:*; var CritterDistanceY:*; if (MovieClip(parent).Paused == false){ BulletLifeCounter--; if (BulletLifeCounter <= 0){ RemoveBullet(); }; MoveBullet2(); CritterDistanceX = (this.x - ImpactX); CritterDistanceY = (this.y - ImpactY); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (BulletSpeed / 2)){ Bullet2Hit(); }; }; } public function Bullet2Hit(){ MovieClip(parent).ApplySplash(ImpactX, ImpactY, Special1, Special2, BulletElement); RemoveBullet(); } public function Bullet4Loop(event:Event){ var len:*; var i:*; if (MovieClip(parent).Paused == false){ BulletLifeCounter--; if (BulletLifeCounter <= 0){ RemoveBullet(); }; if (Used == true){ DeathCounter++; }; if (DeathCounter == Death){ RemoveBullet(); }; this.scaleX = (this.scaleX + 0.2); this.scaleY = (this.scaleY + 0.2); if (Used == false){ if (MovieClip(parent).CritterArray.length > 0){ if (MovieClip(parent).CritterArray[Target] != null){ if (MovieClip(parent).CritterArray[Target].MobID == TargetID){ MoveBullet4(); len = MovieClip(parent).CritterArray.length; i = (len - 1); while (i >= 0) { if (this.hitTestObject(MovieClip(parent).CritterArray[i])){ if (i == Target){ Bullet4Hit(); } else { Bullet4Collateral(i); }; }; i--; }; } else { RemoveBullet(); }; } else { RemoveBullet(); }; } else { RemoveBullet(); }; }; }; } public function Bullet4Collateral(victim){ MovieClip(parent).CritterArray[victim].HitCritter(Damage, BulletElement); } public function MoveBullet1(){ var CritterDistanceX:*; var CritterDistanceY:*; CritterDistanceX = (this.x - MovieClip(parent).CritterArray[Target].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[Target].y); Direction = Math.atan2(CritterDistanceY, CritterDistanceX); this.x = (this.x - (BulletSpeed * Math.cos(Direction))); this.y = (this.y - (BulletSpeed * Math.sin(Direction))); this.rotation = Math.round(((Direction * 180) / Math.PI)); } public function MoveBullet2(){ var CritterDistanceX:*; var CritterDistanceY:*; CritterDistanceX = (this.x - ImpactX); CritterDistanceY = (this.y - ImpactY); Direction = Math.atan2(CritterDistanceY, CritterDistanceX); this.x = (this.x - (BulletSpeed * Math.cos(Direction))); this.y = (this.y - (BulletSpeed * Math.sin(Direction))); this.rotation = Math.round(((Direction * 180) / Math.PI)); } public function MoveBullet4(){ var CritterDistanceX:*; var CritterDistanceY:*; CritterDistanceX = (this.x - MovieClip(parent).CritterArray[Target].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[Target].y); Direction = Math.atan2(CritterDistanceY, CritterDistanceX); this.x = (this.x - (BulletSpeed * Math.cos(Direction))); this.y = (this.y - (BulletSpeed * Math.sin(Direction))); this.scaleX = (this.scaleX + 0.05); this.rotation = Math.round(((Direction * 180) / Math.PI)); } public function MoveBullet3(){ var CritterDistanceX:*; var CritterDistanceY:*; CritterDistanceX = (this.x - ImpactX); CritterDistanceY = (this.y - ImpactY); Direction = Math.atan2(CritterDistanceY, CritterDistanceX); this.x = (this.x - (BulletSpeed * Math.cos(Direction))); this.y = (this.y - (BulletSpeed * Math.sin(Direction))); this.rotation = Math.round(((Direction * 180) / Math.PI)); } function frame3(){ stop(); } function frame4(){ stop(); } function frame2(){ stop(); } public function Bullet3Hit(){ MovieClip(parent).ApplyFrost(ImpactX, ImpactY, Special1, Special2); RemoveBullet(); } public function Bullet3Loop(event:Event){ var CritterDistanceX:*; var CritterDistanceY:*; if (MovieClip(parent).Paused == false){ BulletLifeCounter--; if (BulletLifeCounter <= 0){ RemoveBullet(); }; MoveBullet3(); CritterDistanceX = (this.x - ImpactX); CritterDistanceY = (this.y - ImpactY); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (BulletSpeed / 2)){ Bullet3Hit(); }; }; } public function Bullet1Loop(event:Event){ if (MovieClip(parent).Paused == false){ BulletLifeCounter--; if (BulletLifeCounter <= 0){ RemoveBullet(); }; if (MovieClip(parent).CritterArray.length > 0){ if (MovieClip(parent).CritterArray[Target] != null){ if (MovieClip(parent).CritterArray[Target].MobID == TargetID){ MoveBullet1(); if (this.hitTestObject(MovieClip(parent).CritterArray[Target])){ Bullet1Hit(); }; } else { RemoveBullet(); }; } else { RemoveBullet(); }; } else { RemoveBullet(); }; }; } function frame1(){ stop(); } public function RemoveBullet(){ if (BulletType == 1){ this.removeEventListener(Event.ENTER_FRAME, Bullet1Loop); } else { if (BulletType == 2){ this.removeEventListener(Event.ENTER_FRAME, Bullet2Loop); } else { if (BulletType == 3){ this.removeEventListener(Event.ENTER_FRAME, Bullet3Loop); } else { if (BulletType == 4){ this.removeEventListener(Event.ENTER_FRAME, Bullet4Loop); }; }; }; }; parent.removeChild(this); } public function Bullet1Hit(){ MovieClip(parent).CritterArray[Target].HitCritter(Damage, BulletElement); RemoveBullet(); } public function Bullet4Hit(){ MovieClip(parent).CritterArray[Target].HitCritter(Damage, BulletElement); Used = true; } } }//packageSection 44//CreditsBtn_mc (CreditsBtn_mc) package { import flash.display.*; public dynamic class CreditsBtn_mc extends MovieClip { public function CreditsBtn_mc(){ super(); } } }//packageSection 45//CreditsBtnDown_mc (CreditsBtnDown_mc) package { import flash.display.*; public dynamic class CreditsBtnDown_mc extends MovieClip { public function CreditsBtnDown_mc(){ super(); } } }//packageSection 46//CreditsBtnOver_mc (CreditsBtnOver_mc) package { import flash.display.*; public dynamic class CreditsBtnOver_mc extends MovieClip { public function CreditsBtnOver_mc(){ super(); } } }//packageSection 47//CreditsFrame_mc (CreditsFrame_mc) package { import flash.display.*; public dynamic class CreditsFrame_mc extends MovieClip { public var EmailBtn:MovieClip; public function CreditsFrame_mc(){ super(); } } }//packageSection 48//DeSelectIcon (DeSelectIcon) package { import flash.display.*; public dynamic class DeSelectIcon extends MovieClip { public function DeSelectIcon(){ super(); } } }//packageSection 49//DeSelectOver (DeSelectOver) package { import flash.display.*; public dynamic class DeSelectOver extends MovieClip { public function DeSelectOver(){ super(); } } }//packageSection 50//ElementBlocker_mc (ElementBlocker_mc) package { import flash.display.*; public dynamic class ElementBlocker_mc extends MovieClip { public function ElementBlocker_mc(){ super(); } } }//packageSection 51//ElementBtn_mc (ElementBtn_mc) package { import flash.display.*; public dynamic class ElementBtn_mc extends MovieClip { public function ElementBtn_mc(){ super(); } } }//packageSection 52//ElementBtnDown_mc (ElementBtnDown_mc) package { import flash.display.*; public dynamic class ElementBtnDown_mc extends MovieClip { public function ElementBtnDown_mc(){ super(); } } }//packageSection 53//ElementBtnOver_mc (ElementBtnOver_mc) package { import flash.display.*; public dynamic class ElementBtnOver_mc extends MovieClip { public function ElementBtnOver_mc(){ super(); } } }//packageSection 54//ElementFrame_mc (ElementFrame_mc) package { import flash.display.*; public dynamic class ElementFrame_mc extends MovieClip { public function ElementFrame_mc(){ super(); } } }//packageSection 55//ElementFrameCorner (ElementFrameCorner) package { import flash.display.*; public dynamic class ElementFrameCorner extends MovieClip { public function ElementFrameCorner(){ super(); } } }//packageSection 56//ElementHelp_mc (ElementHelp_mc) package { import flash.display.*; public dynamic class ElementHelp_mc extends MovieClip { public function ElementHelp_mc(){ super(); } } }//packageSection 57//ElementSelected_mc (ElementSelected_mc) package { import flash.display.*; public dynamic class ElementSelected_mc extends MovieClip { public function ElementSelected_mc(){ super(); } } }//packageSection 58//Explosion_mc (Explosion_mc) package { import flash.display.*; public dynamic class Explosion_mc extends MovieClip { public function Explosion_mc(){ super(); } } }//packageSection 59//FlameTurret (FlameTurret) package { import fl.motion.*; import flash.events.*; import flash.display.*; import flash.utils.*; import flash.filters.*; public class FlameTurret extends MovieClip { private var CritterDistanceX; public var AuraLinkID:int;// = 0 private var len; public var Element:int;// = 0 public var TurretTop; public var Range:int; public var DamageLevel:int;// = 1 public var NetDmg:Number; private var Direction; private var i; public var TurretType;// = 6 public var FiringSpeed:int; public var TurrID:int; public var AuraLinked:Boolean;// = false private var RangeIndicator; private var RangeVisible:Boolean;// = false public var PreAuraDmg:Number; public var Gridnum; public var FiringTimer:Timer; public var BaseDmg; public var DamageMultiplier:Number;// = 0 public var Selected:Boolean;// = false public var filterArray:Array; public var SellPrice:int; private var CritterDistanceY; public var AuraID:int;// = 0 private var FireReady:Boolean;// = false private var MouseOver:Boolean;// = false public function FlameTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell:int){ MouseOver = false; RangeVisible = false; FireReady = false; DamageLevel = 1; Selected = false; AuraLinkID = 0; TurretType = 6; AuraLinked = false; AuraID = 0; DamageMultiplier = 0; filterArray = new Array(); Element = 0; super(); this.addEventListener(Event.ENTER_FRAME, TurretLoop); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); TurretTop = new FlameTurretTop(); addChild(TurretTop); FiringSpeed = Speed; BaseDmg = Damage; PreAuraDmg = BaseDmg; NetDmg = (BaseDmg + ((DamageLevel - 1) * 0.25)); Range = TurretRange; TurrID = ID; Gridnum = GridLoc; SellPrice = Sell; FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); } public function DamageAura(DmgMulti){ var dmgfilter:GlowFilter; if (DamageMultiplier == 0){ dmgfilter = new GlowFilter(MovieClip(parent).DmgAuraColor, 0.7); filterArray.push(dmgfilter); this.TurretTop.filters = filterArray; }; DamageMultiplier = DmgMulti; CalcNewDmg(); } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 0, this); MovieClip(parent).FlameTurretInfoOff2(); MovieClip(parent).FlameTurretSelected(DamageLevel); }; } public function CalcNewDmg(){ if (DamageLevel == 1){ NetDmg = BaseDmg; } else { if (DamageLevel == 2){ NetDmg = (BaseDmg + MovieClip(parent).FlameTurretDamageUpgrade); } else { if (DamageLevel == 3){ NetDmg = (BaseDmg + (3 * MovieClip(parent).FlameTurretDamageUpgrade)); } else { if (DamageLevel == 4){ NetDmg = (BaseDmg + (6 * MovieClip(parent).FlameTurretDamageUpgrade)); } else { if (DamageLevel == 5){ NetDmg = (BaseDmg + (10 * MovieClip(parent).FlameTurretDamageUpgrade)); }; }; }; }; }; NetDmg = (NetDmg * (1 + (DamageMultiplier / 10))); PreAuraDmg = (NetDmg / (1 + (DamageMultiplier / 10))); SellPrice = Math.floor((SellPrice + ((DamageLevel - 1) * 4))); } public function SellTurret(){ this.removeEventListener(Event.ENTER_FRAME, TurretLoop); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function UnLinkAura(){ AuraLinked = false; AuraID = 0; this.filters = new Array(); this.TurretTop.filters = new Array(); DamageMultiplier = 0; CalcNewDmg(); } public function SetElement(newElement:int){ var ElementArray:Array; var Efilter1:GlowFilter; var Efilter2:GlowFilter; var ETint:Color; Element = newElement; ElementArray = new Array(); Efilter1 = new GlowFilter(); Efilter1.alpha = 0.7; Efilter1.inner = true; Efilter1.strength = 2; Efilter1.blurX = 3; Efilter1.blurY = 3; Efilter2 = new GlowFilter(); Efilter2.alpha = 0.7; Efilter2.inner = false; Efilter2.strength = 2; Efilter2.blurX = 3; Efilter2.blurY = 3; ETint = new Color(); if (Element == 0){ Efilter1.color = 0; Efilter1.alpha = 0; Efilter2.color = 0; Efilter2.alpha = 0; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0, 0); this.transform.colorTransform = ETint; } else { if (Element == 1){ Efilter1.color = 0xFF00; Efilter2.color = 0xFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF00, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 2){ Efilter1.color = 0xFF; Efilter2.color = 0xFF; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 3){ Efilter1.color = 0xFFFF00; Efilter2.color = 0xFFFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFFFF00, 0.1); this.transform.colorTransform = ETint; }; }; }; }; } private function SetReady(event:TimerEvent){ FireReady = true; } public function OnMouseOut(event:MouseEvent){ MovieClip(parent).FlameTurretInfoOff2(); MouseOver = false; if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function LinkAura(Auraid, DmgMulti:int){ var filterArray:Array; var gfilter:GlowFilter; if (AuraLinked == false){ AuraLinked = true; AuraID = Auraid; filterArray = new Array(); gfilter = new GlowFilter(MovieClip(parent).AuraLinkedColor, 0.7); filterArray.push(gfilter); this.TurretTop.filters = filterArray; }; if (DamageMultiplier < DmgMulti){ DamageAura(DmgMulti); }; } public function TurretLoop(event:Event){ if (MovieClip(parent).Paused == false){ len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ Direction = Math.atan2(CritterDistanceY, CritterDistanceX); TurretTop.rotation = (Math.round(((Direction * 180) / Math.PI)) - 90); break; }; i++; }; }; if (FireReady == true){ FireTurret(); }; }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).FlameTurretInfoOn2(true, SellPrice, Range, NetDmg, Element); }; } public function FireTurret(){ var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ MovieClip(parent).FireBullet(6, NetDmg, this.x, this.y, i, 0, 0, Element); FiringTimer.reset(); FiringTimer.start(); FireReady = false; break; }; i++; }; }; } } }//packageSection 60//FlameTurretHelp_mc (FlameTurretHelp_mc) package { import flash.display.*; public dynamic class FlameTurretHelp_mc extends MovieClip { public function FlameTurretHelp_mc(){ super(); } } }//packageSection 61//FlameTurretImg (FlameTurretImg) package { import flash.display.*; public dynamic class FlameTurretImg extends MovieClip { public function FlameTurretImg(){ super(); } } }//packageSection 62//FlameTurretInfo (FlameTurretInfo) package { import flash.display.*; public dynamic class FlameTurretInfo extends MovieClip { public function FlameTurretInfo(){ super(); } } }//packageSection 63//FlameTurretTop (FlameTurretTop) package { import flash.display.*; public dynamic class FlameTurretTop extends MovieClip { public function FlameTurretTop(){ super(); addFrameScript(0, frame1); } function frame1(){ this.mouseEnabled = false; } } }//packageSection 64//Frame_mc (Frame_mc) package { import flash.display.*; public dynamic class Frame_mc extends MovieClip { public function Frame_mc(){ super(); } } }//packageSection 65//FrameBase1 (FrameBase1) package { import flash.display.*; public dynamic class FrameBase1 extends MovieClip { public function FrameBase1(){ super(); } } }//packageSection 66//FrameBase2 (FrameBase2) package { import flash.display.*; public dynamic class FrameBase2 extends MovieClip { public function FrameBase2(){ super(); } } }//packageSection 67//FrameInfoPanel (FrameInfoPanel) package { import flash.display.*; public dynamic class FrameInfoPanel extends MovieClip { public function FrameInfoPanel(){ super(); } } }//packageSection 68//Freeze_mc (Freeze_mc) package { import flash.events.*; import flash.display.*; public class Freeze_mc extends MovieClip { const Time:int = 7; private var Counter:int;// = 0 public function Freeze_mc(){ Counter = 0; super(); this.addEventListener(Event.ENTER_FRAME, FreezeLoop); } private function FreezeLoop(event:Event){ if (MovieClip(parent).Paused == false){ Counter++; if (Counter < 10){ this.scaleX = (this.scaleX + 0.2); this.scaleY = (this.scaleY + 0.2); this.alpha = (this.alpha - 0.05); } else { if (Counter == 10){ this.removeEventListener(Event.ENTER_FRAME, FreezeLoop); parent.removeChild(this); }; }; }; } } }//packageSection 69//FrostTurret (FrostTurret) package { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.filters.*; public class FrostTurret extends MovieClip { private var CritterDistanceX; public var AuraLinkID:int;// = 0 private var len; public var TurretTop; private var FreezeRadius:Number;// = 100 public var Range:int; public var SellPrice:int; public var DamageLevel:int;// = 1 private var Direction; private var i; private var FreezeDuration:int;// = 50 public var TurretType;// = 3 public var FiringSpeed:int; public var TurrID:int; public var AuraLinked:Boolean;// = false private var RangeIndicator; private var RangeVisible:Boolean;// = false public var Gridnum; public var FiringTimer:Timer; public var BaseDmg; public var DamageMultiplier:Number;// = 0 public var Selected:Boolean;// = false public var filterArray:Array; private var CritterDistanceY; public var AuraID:int;// = 0 private var FireReady:Boolean;// = false private var MouseOver:Boolean;// = false public function FrostTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell:int){ MouseOver = false; RangeVisible = false; FireReady = false; DamageLevel = 1; FreezeDuration = 50; FreezeRadius = 100; Selected = false; AuraLinkID = 0; TurretType = 3; AuraLinked = false; AuraID = 0; DamageMultiplier = 0; filterArray = new Array(); super(); this.addEventListener(Event.ENTER_FRAME, TurretLoop); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); TurretTop = new FrostTurretTop(); addChild(TurretTop); FiringSpeed = Speed; BaseDmg = Damage; Range = TurretRange; TurrID = ID; Gridnum = GridLoc; SellPrice = Sell; FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 0, this); MovieClip(parent).FrostTurretInfoOff2(); MovieClip(parent).FrostTurretSelected(DamageLevel); }; } public function SellTurret(){ this.removeEventListener(Event.ENTER_FRAME, TurretLoop); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function UnLinkAura(){ AuraLinked = false; AuraID = 0; this.filters = new Array(); this.TurretTop.filters = new Array(); } private function SetReady(event:TimerEvent){ FireReady = true; } public function OnMouseOut(event:MouseEvent){ MovieClip(parent).FrostTurretInfoOff2(); MouseOver = false; if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function LinkAura(Auraid, DmgMulti:int){ var filterArray:Array; var gfilter:GlowFilter; if (AuraLinked == false){ AuraLinked = true; AuraID = Auraid; filterArray = new Array(); gfilter = new GlowFilter(MovieClip(parent).AuraLinkedColor, 0.7); filterArray.push(gfilter); this.filters = filterArray; }; } public function TurretLoop(event:Event){ if (MovieClip(parent).Paused == false){ len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ if (MovieClip(parent).CritterArray[i].Frozen == false){ Direction = Math.atan2(CritterDistanceY, CritterDistanceX); TurretTop.rotation = (Math.round(((Direction * 180) / Math.PI)) - 90); break; }; }; i++; }; }; if (FireReady == true){ FireTurret(); }; }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).FrostTurretInfoOn2(true, SellPrice, Range, BaseDmg); }; } public function FireTurret(){ var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ if (MovieClip(parent).CritterArray[i].Frozen == false){ MovieClip(parent).FireBullet(3, BaseDmg, this.x, this.y, i, FreezeDuration, FreezeRadius, 0); FiringTimer.reset(); FiringTimer.start(); FireReady = false; break; }; }; i++; }; }; } } }//packageSection 70//FrostTurretHelp_mc (FrostTurretHelp_mc) package { import flash.display.*; public dynamic class FrostTurretHelp_mc extends MovieClip { public function FrostTurretHelp_mc(){ super(); } } }//packageSection 71//FrostTurretImg (FrostTurretImg) package { import flash.display.*; public dynamic class FrostTurretImg extends MovieClip { public function FrostTurretImg(){ super(); } } }//packageSection 72//FrostTurretInfo (FrostTurretInfo) package { import flash.display.*; public dynamic class FrostTurretInfo extends MovieClip { public function FrostTurretInfo(){ super(); } } }//packageSection 73//FrostTurretTop (FrostTurretTop) package { import flash.display.*; public dynamic class FrostTurretTop extends MovieClip { public function FrostTurretTop(){ super(); } } }//packageSection 74//Game (Game) package { import flash.events.*; import flash.media.*; import flash.display.*; import flash.utils.*; import flash.text.*; public class Game extends MovieClip { const LargeTurretRange:int = 300; const GridHeight:uint = 24; const SmallTurretDamageUpgrade:Number = 0.5; const AuraTurretFiringSpeed:Number = 0; const FlameTurretCost:int = 12; const LargeTurretDamageUpgradeCost:int = 12; const DmgAuraColor:int = 0xFF0000; const SplashTurretDamage:Number = 1.5; const AuraTurretDamageMulti:int = 10; const FlameTurretFiringSpeed:Number = 40; const AuraTurretRange:int = 65; const FrostTurretRange:int = 200; const FlameTurretRange:int = 125; const SmallTurretDamageUpgradeCost:int = 5; const SmallTurretCost:int = 6; const SplashTurretRange:int = 250; const AuraTurretDamageMultiCost:int = 10; const FrostTurretDamage:Number = 0; const InfoX:Number = 9; const FrostTurretFiringSpeed:Number = 1000; const InfoY:Number = 165; const SmallTurretFiringSpeed:Number = 400; const FlameTurretDamageUpgradeCost:int = 10; const LargeTurretDamageUpgrade:Number = 2.5; const AuraTurretDamage:Number = 0; const LargeTurretFiringSpeed:Number = 1500; const AuraTurretSpeedMulti:Number = 10; const GridWidth:uint = 24; const LargeTurretCost:int = 20; const FlameTurretDamageUpgrade:Number = 0.1; const SplashTurretDamageUpgrade:Number = 1.5; const FrostTurretCost:int = 20; const SplashTurretCost:int = 15; const AuraTurretCost:int = 5; const SmallTurretRange:int = 200; const SmallTurretDamage:Number = 0.5; const FlameTurretDamage:Number = 0.2; const LargeTurretDamage:Number = 3; const AuraLinkedColor:int = 16772744; const SpeedAuraColor:int = 0xFF; const AuraTurretSpeedMultiCost:int = 10; const GridLeftOffset:int = 160; const SplashTurretDamageUpgradeCost:int = 12; const SplashTurretFiringSpeed:Number = 1000; public var CurrSpeedBonus; public var GameStarted:Boolean;// = false public var SeaHelp; private var BuildBtn1Info; public var Buildmode2Cursor; public var BalanceHelp; public var DeSelectBtn:SimpleButton; public var GameOverState:Boolean;// = false private var MobText; public var BuildPanelLabel; private var Path; public var VolumeAdjustment:SoundTransform; public var LandBtn:SimpleButton; public var CurrDamage; public var NextDamage; public var SmallSound:sndSmall; public var NextWaveInfoBtn:SimpleButton; public var UnMuteBtn:SimpleButton; public var WaveCounter:uint; public var SonicPlaying:Boolean;// = false public var PauseBtn:SimpleButton; public var Money:int; public var SpeedBonusUpgradeCost; public var LargeBuildSound:sndLargeBuild; public var Minutes:String;// = "00" public var BuildBtn1:SimpleButton; private var StartCashArray:Array; public var BuildBtn3:SimpleButton; public var BuildBtn4:SimpleButton; public var BuildBtn5:SimpleButton; public var BuildBtn6:SimpleButton; public var BuildBtn2:SimpleButton; public var BuildBtn1Red; public var AirBtn:SimpleButton; public var Buildmode1Cursor; public var ButtonSound:sndButton; public var SeaBtnBlock; public var Channel:SoundChannel; public var Lives:int;// = 20 private var SelectedBtnFormat:TextFormat; public var DamageUpgradeCost; private var Flooded:Boolean;// = false public var UpgradeDamageBtnRed; public var Turret; public var BuildMode:int; private var UnFlooding:Boolean;// = false public var SecondsInt:uint;// = 0 public var Buildmode6Cursor; public var Bullet; public var ElementSwitchCost:int;// = 3 public var TurretUpgradeBtnText; public var BuildBtn2Red; private var Frame; public var Paused:Boolean;// = false private var Background; public var MobSpeed:Number; public var Muted:Boolean;// = false public var MobHealth:Number; public var EMPSound:sndEMP; public var MuteBtn:SimpleButton; public var MobStatArray:Array; public var SplashExplosionSound:sndSplashExplosion; public var SellBtn:SimpleButton; private var BuildBtn6Info; private var MobWaveSize:uint; public var MobSelected:Boolean;// = false public var StopWatchTimer:Timer; public var SirenSound:sndSiren; public var BuildBtn3Red; private var WaveCooldown:uint;// = 125 private var WaterPath; public var UpgradeDamageBtn:SimpleButton; public var Buildmode5Cursor; public var BuildPanelState:int;// = 1 public var SelectedObject; public var BuildBtn4Red; public var MoneyText; public var BuildIDcounter:int;// = 1 public var NextDmgBonus; private var MobDelayCounter:uint;// = 0 public var SelectedDamage; public var BalanceBtn:SimpleButton; public var NextWaveBtn:SimpleButton; private var BuildBtn5Info; public var WaveReady:Boolean;// = false public var CurrDmgBonus; public var TurretUpgradeText; public var BuildBtn5Red; public var Seconds:String;// = "00" public var SonicSound:sndSonic; public var PlayBtn:SimpleButton; public var BalanceBtnBlock; public var MobValue:int; private var Game2Format:TextFormat; private var MobDelay:uint;// = 20 public var HoursInt:uint;// = 0 private var SelectedFormat:TextFormat; private var BuildBtn4Info; public var Buildmode4Cursor; public var GridArray:Array; public var BuildBtn6Red; private var GameFormat3:TextFormat; private var RoadCounter:int;// = -1 public var CritterArray:Array; public var GameLoaded:Boolean;// = false public var StartBtn:SimpleButton; public var LargeSound:sndLarge; public var MinutesInt:uint;// = 0 private var GameFormat:TextFormat; public var BuidmodeRangeCursor; public var LandBtnBlock; public var TurretSellBtnText; public var SelectionType:int; private var MouseInfo:Boolean; public var SplashSound:sndSplash; public var AirBtnBlock; public var Hours:String;// = "00" public var RoadArray:Array; private var MobWaveSizeCounter:uint;// = 0 private var BuildBtn3Info; public var WavesDone:Boolean;// = false public var TurretArray:Array; public var TurretStatsText; public var SelectedRange; private var Flooding:Boolean;// = false public var SelectActive:Boolean;// = false public var Buildmode3Cursor; public var DmgBonusUpgradeCost; public var BuildModeActive:Boolean;// = false public var ElementName:String;// = "Land" public var AirHelp; public var SmallBuildSound:sndSmallBuild; private var BuildBtn2Info; private var NextWaveInfoVisible:Boolean;// = false public var NextSpeedBonus; public var SeaBtn:SimpleButton; private var WaveCooldownCounter:uint;// = 0 public var SelectedElement; public var SelectBracket; public var Critter; public var ElementFrame; public var LandHelp; public var MobID:int;// = 1 public function Game(){ var GridNum:int; var x:uint; var y:uint; var Gridblock:Grid; MobStatArray = new Array([0, 0, 0, 1, "", 1], [10, 3, 4, 1, "Minitanks", 1], [10, 4, 6, 1, "Hovercrafts", 2], [10, 3, 8, 1, "Attack\nGliders", 3], [20, 3, 8, 1, "Mini-Fighters", 3], [10, 4, 12, 2, "MotorCycles", 1], [10, 2, 22, 2, "SpinBots", 3], [15, 3, 27, 2, "Catamaran\nPods", 2], [10, 2, 40, 2, "Cruisers", 2], [5, 5, 40, 4, "Jetboats", 2], [1, 1, 500, 25, "Mothership", 3], [10, 3, 40, 2, "Lunar Rovers", 1], [10, 2, 50, 2, "Crawlers", 1], [15, 2, 60, 2, "Armored\nTrucks", 1], [10, 4, 63, 2, "Trimarans", 2], [5, 2, 95, 7, "Tankers", 2], [15, 4, 60, 3, "Stealth\nShips", 2], [20, 3, 65, 3, "Scout Rovers", 1], [10, 4, 70, 3, "Cruise\nMissiles", 3], [10, 3, 80, 3, "Hovertanks", 1], [1, 1, 750, 50, "Heavy\nMothership", 3], [10, 2, 100, 3, "Desert\nCrawlers", 1], [10, 3, 120, 3, "M2 HoverTanks", 1], [20, 3, 130, 2, "Micro-Fighters", 3], [5, 2, 170, 6, "Rhino Tanks", 1], [10, 4, 175, 4, "Torpedos", 2], [5, 2, 250, 8, "Dreadnoughts", 2], [15, 3, 260, 3, "Star Fighters", 3], [5, 2, 300, 8, "Mammoth Tanks", 1], [10, 3, 300, 4, "Stealth Subs", 2], [1, 1, 2500, 50, "Fleet Command", 2], [10, 2, 420, 4, "Shielded\nTankers", 2], [15, 3, 340, 3, "Dark Stars", 3], [10, 2, 455, 4, "Blimp Bombers", 3], [10, 3, 460, 4, "APC's", 1], [10, 3, 475, 4, "Arctic Subs", 2], [5, 5, 510, 10, "Heavy\nTrimarans", 2], [10, 3, 560, 5, "Hovercrafts", 1], [10, 4, 590, 5, "Stealth\nFighters", 3], [10, 3, 660, 5, "Dragon Tank", 1], [1, 1, 5000, 75, "Fleet\nAdmiral ", 2], [20, 3, 670, 3, "U.A.V.'s", 3], [10, 3, 720, 5, "Hydropods", 2], [10, 4, 750, 5, "CloakVans", 1], [15, 3, 770, 5, "Comet\nFighters", 3], [5, 4, 950, 10, "Jetboats", 2], [10, 3, 1000, 5, "HoverCapsule", 2], [10, 3, 1050, 5, "Cloak\nFighters", 3], [5, 2, 1200, 10, "Thor Tanks", 1], [10, 3, 1250, 5, "Gatling Jeeps", 1], [1, 1, 15000, 100, "Supreme\nMothership", 3]); WaveCounter = (GlobalVars.StartWave - 1); NextWaveInfoVisible = false; MobWaveSize = MobStatArray[WaveCounter][0]; StartCashArray = new Array(30, 40, 50, 70, 95, 105, 125, 140, 160, 170, 185, 205, 225, 0xFF, 275, 310, 340, 380, 400, 420, 450, 480, 520, 550, 590, 630, 675, 715, 755, 805, 845, 890, 930, 970, 1010, 1060, 1110, 1160, 1210, 0x0505, 1345, 1395, 1445, 1490, 1540, 1590, 1640, 1690, 1740, 1745); Lives = 20; Money = StartCashArray[WaveCounter]; ElementSwitchCost = 3; GameLoaded = false; GameStarted = false; GameOverState = false; BuildModeActive = false; Paused = false; MobSelected = false; GridArray = new Array(); TurretArray = new Array(); RoadCounter = -1; Flooded = false; Flooding = false; UnFlooding = false; RoadArray = new Array([554, 555], [530, 531], [506, 507], [482, 483], [458, 459], [434, 435], [410, 411], [386, 387], [388, 412], [389, 413], [364, 365], [340, 341], [316, 317], [292, 293], [268, 269], [244, 245], [220, 221], [196, 197], [172, 173], [171, 195], [170, 194], [146, 147], [122, 123], [98, 99], [74, 75], [50, 51], [52, 76], [53, 77], [54, 78], [55, 79], [56, 80], [57, 81], [104, 105], [128, 129], [152, 153], [176, 177], [200, 201], [224, 225], [248, 249], [272, 273], [296, 297], [320, 321], [344, 345], [368, 369], [392, 393], [416, 417], [440, 441], [464, 465], [488, 489], [0x0200, 513], [490, 0x0202], [491, 515], [492, 516], [493, 517], [494, 518], [495, 519], [496, 520], [497, 521], [498, 522], [499, 523], [500, 524], [501, 525], [502, 526], [477, 478], [453, 454], [429, 430], [405, 406], [381, 382], [357, 358], [333, 334], [309, 310], [285, 286], [261, 262], [237, 238], [213, 214], [189, 190], [165, 166], [141, 142], [117, 118], [93, 94], [69, 70], [68, 92], [67, 91], [66, 90], [65, 89], [64, 88], [112, 113], [136, 137], [160, 161], [184, 185], [208, 209], [232, 233], [0x0100, 0x0101], [280, 281], [304, 305], [282, 306], [329, 330], [353, 354], [377, 378], [401, 402], [425, 426], [400, 424], [399, 423], [398, 422], [397, 421], [397, 421], [396, 420], [372, 373], [348, 349], [324, 325], [300, 301], [276, 277], [252, 253], [228, 229], [204, 205], [180, 181], [156, 157], [132, 133], [108, 109], [84, 85], [60, 61], [36, 37]); Frame = new Frame_mc(); Background = new Background_mc(); Path = new Path_mc(); WaterPath = new WaterPath_mc(); StartBtn = new SimpleButton(new StartBtn_mc(), new StartBtnOver_mc(), new StartBtnDown_mc(), new StartBtn_mc()); NextWaveBtn = new SimpleButton(new NextWaveBtn_mc(), new NextWaveBtnOver_mc(), new NextWaveBtnDown_mc(), new NextWaveBtn_mc()); NextWaveInfoBtn = new SimpleButton(new NextWaveInfoBtn_mc(), new NextWaveInfoBtnOver_mc(), new NextWaveInfoBtnDown_mc(), new NextWaveInfoBtn_mc()); PauseBtn = new SimpleButton(new PauseBtn_mc(), new PauseBtnOver_mc(), new PauseBtnDown_mc(), new PauseBtn_mc()); PlayBtn = new SimpleButton(new PlayBtn_mc(), new PlayBtnOver_mc(), new PlayBtnDown_mc(), new PlayBtn_mc()); MuteBtn = new SimpleButton(new MuteBtn_mc(), new MuteBtnOver_mc(), new MuteBtnDown_mc(), new MuteBtn_mc()); UnMuteBtn = new SimpleButton(new UnMuteBtn_mc(), new UnMuteBtnOver_mc(), new UnMuteBtnDown_mc(), new UnMuteBtn_mc()); BuildPanelLabel = new TextField(); BuildPanelState = 1; BuildBtn1 = new SimpleButton(new BuildBtn1_mc(), new BuildBtn1_mc(), new BuildBtn1Down_mc(), new BuildBtn1_mc()); BuildBtn2 = new SimpleButton(new BuildBtn2_mc(), new BuildBtn2_mc(), new BuildBtn2Down_mc(), new BuildBtn2_mc()); BuildBtn3 = new SimpleButton(new BuildBtn3_mc(), new BuildBtn3_mc(), new BuildBtn3Down_mc(), new BuildBtn3_mc()); BuildBtn4 = new SimpleButton(new BuildBtn4_mc(), new BuildBtn4_mc(), new BuildBtn4Down_mc(), new BuildBtn4_mc()); BuildBtn5 = new SimpleButton(new BuildBtn5_mc(), new BuildBtn5_mc(), new BuildBtn5Down_mc(), new BuildBtn5_mc()); BuildBtn6 = new SimpleButton(new BuildBtn6_mc(), new BuildBtn6_mc(), new BuildBtn6Down_mc(), new BuildBtn6_mc()); BuildBtn1Red = new BuildBtnRed(); BuildBtn2Red = new BuildBtnRed(); BuildBtn3Red = new BuildBtnRed(); BuildBtn4Red = new BuildBtnRed(); BuildBtn5Red = new BuildBtnRed(); BuildBtn6Red = new BuildBtnRed(); UpgradeDamageBtn = new SimpleButton(new UpgradeBtn_mc(), new UpgradeBtn_mc(), new UpgradeBtnDown_mc(), new UpgradeBtn_mc()); DeSelectBtn = new SimpleButton(new DeSelectIcon(), new DeSelectOver(), new DeSelectOver(), new DeSelectIcon()); UpgradeDamageBtnRed = new UpgradeBtnRed_mc(); SellBtn = new SimpleButton(new UpgradeBtn_mc(), new UpgradeBtn_mc(), new UpgradeBtnDown_mc(), new UpgradeBtn_mc()); ElementFrame = new ElementFrame_mc(); SelectedElement = new ElementSelected_mc(); LandBtn = new SimpleButton(new LandBtn_mc(), new LandBtnOver_mc(), new LandBtnDown_mc(), new LandBtn_mc()); SeaBtn = new SimpleButton(new SeaBtn_mc(), new SeaBtnOver_mc(), new SeaBtnDown_mc(), new SeaBtn_mc()); AirBtn = new SimpleButton(new AirBtn_mc(), new AirBtnOver_mc(), new AirBtnDown_mc(), new AirBtn_mc()); BalanceBtn = new SimpleButton(new BalanceBtn_mc(), new BalanceBtnOver_mc(), new BalanceBtnDown_mc(), new BalanceBtn_mc()); LandBtnBlock = new ElementBlocker_mc(); SeaBtnBlock = new ElementBlocker_mc(); AirBtnBlock = new ElementBlocker_mc(); BalanceBtnBlock = new ElementBlocker_mc(); LandHelp = new LandInfo(); SeaHelp = new SeaInfo(); AirHelp = new AirInfo(); BalanceHelp = new BalanceInfo(); BuildBtn1Info = new LargeTurretInfo(); BuildBtn2Info = new SmallTurretInfo(); BuildBtn3Info = new FrostTurretInfo(); BuildBtn4Info = new SplashTurretInfo(); BuildBtn5Info = new AuraTurretInfo(); BuildBtn6Info = new FlameTurretInfo(); Buildmode1Cursor = new LargeTurretImg(); Buildmode2Cursor = new SmallTurretImg(); Buildmode3Cursor = new FrostTurretImg(); Buildmode4Cursor = new SplashTurretImg(); Buildmode5Cursor = new AuraTurretImg(); Buildmode6Cursor = new FlameTurretImg(); BuidmodeRangeCursor = new TurretRange(); TurretStatsText = new TextField(); BuildIDcounter = 1; SelectedFormat = new TextFormat(); TurretUpgradeText = new TextField(); SelectedBtnFormat = new TextFormat(); TurretUpgradeBtnText = new TextField(); TurretSellBtnText = new TextField(); SelectActive = false; GameFormat = new TextFormat(); Game2Format = new TextFormat(); GameFormat3 = new TextFormat(); MoneyText = new TextField(); MobText = new TextField(); MobDelayCounter = 0; MobDelay = 20; MobWaveSizeCounter = 0; WaveCooldownCounter = 0; WaveCooldown = 125; WavesDone = false; WaveReady = false; ElementName = "Land"; CritterArray = new Array(); MobID = 1; Muted = false; VolumeAdjustment = new SoundTransform(); LargeSound = new sndLarge(); SmallSound = new sndSmall(); EMPSound = new sndEMP(); SplashSound = new sndSplash(); SonicSound = new sndSonic(); SonicPlaying = false; SplashExplosionSound = new sndSplashExplosion(); SmallBuildSound = new sndSmallBuild(); LargeBuildSound = new sndLargeBuild(); SirenSound = new sndSiren(); ButtonSound = new sndButton(); SecondsInt = 0; Seconds = "00"; MinutesInt = 0; Minutes = "00"; HoursInt = 0; Hours = "00"; super(); this.addEventListener(Event.ENTER_FRAME, GameLoop); Muted = GlobalVars.Muted; Background.x = 160; Background.y = 0; Background.mouseEnabled = false; addChild(Background); Path.x = 160; Path.y = 0; Path.mouseEnabled = false; addChild(Path); WaterPath.x = Path.x; WaterPath.y = Path.y; WaterPath.mouseEnabled = false; WaterPath.alpha = 0; addChild(WaterPath); GridNum = 0; x = 0; while (x < GridWidth) { y = 0; while (y < GridHeight) { Gridblock = new Grid(GridNum); Gridblock.stop(); Gridblock.x = ((10 + GridLeftOffset) + (x * 20)); Gridblock.y = (10 + (y * 20)); addChild(Gridblock); GridArray.push(Gridblock); GridNum++; y++; }; x++; }; DrawRoad(); BuidmodeRangeCursor.x = -50; BuidmodeRangeCursor.alpha = 0; BuidmodeRangeCursor.mouseEnabled = false; addChild(BuidmodeRangeCursor); Buildmode1Cursor.x = -50; Buildmode1Cursor.alpha = 0; Buildmode1Cursor.mouseEnabled = false; addChild(Buildmode1Cursor); Buildmode2Cursor.x = -50; Buildmode2Cursor.alpha = 0; Buildmode2Cursor.mouseEnabled = false; addChild(Buildmode2Cursor); Buildmode3Cursor.x = -50; Buildmode3Cursor.alpha = 0; Buildmode3Cursor.mouseEnabled = false; addChild(Buildmode3Cursor); Buildmode4Cursor.x = -50; Buildmode4Cursor.alpha = 0; Buildmode4Cursor.mouseEnabled = false; addChild(Buildmode4Cursor); Buildmode5Cursor.x = -50; Buildmode5Cursor.alpha = 0; Buildmode5Cursor.mouseEnabled = false; addChild(Buildmode5Cursor); Buildmode6Cursor.x = -50; Buildmode6Cursor.alpha = 0; Buildmode6Cursor.mouseEnabled = false; addChild(Buildmode6Cursor); Frame.x = 0; Frame.y = 0; Frame.mouseEnabled = false; addChild(Frame); StartBtn.x = 80; StartBtn.y = 450; StartBtn.addEventListener(MouseEvent.CLICK, StartGame); addChild(StartBtn); NextWaveBtn.x = 80; NextWaveBtn.y = 450; NextWaveBtn.visible = false; NextWaveBtn.addEventListener(MouseEvent.CLICK, NextWave); addChild(NextWaveBtn); NextWaveInfoBtn.x = 119; NextWaveInfoBtn.y = 340; NextWaveInfoBtn.visible = true; NextWaveInfoBtn.addEventListener(MouseEvent.MOUSE_DOWN, ShowNextWaveInfo); NextWaveInfoBtn.addEventListener(MouseEvent.MOUSE_UP, ShowCurrentWaveInfo); NextWaveInfoBtn.addEventListener(MouseEvent.MOUSE_OUT, ShowCurrentWaveInfo); addChild(NextWaveInfoBtn); PauseBtn.x = NextWaveInfoBtn.x; PauseBtn.y = (NextWaveInfoBtn.y + NextWaveInfoBtn.height); PauseBtn.addEventListener(MouseEvent.CLICK, PauseGame); addChild(PauseBtn); PlayBtn.x = PauseBtn.x; PlayBtn.y = PauseBtn.y; PlayBtn.visible = false; PlayBtn.addEventListener(MouseEvent.CLICK, UnPauseGame); addChild(PlayBtn); MuteBtn.x = NextWaveInfoBtn.x; MuteBtn.y = (PauseBtn.y + PauseBtn.height); MuteBtn.addEventListener(MouseEvent.CLICK, MuteSound); addChild(MuteBtn); UnMuteBtn.x = MuteBtn.x; UnMuteBtn.y = MuteBtn.y; UnMuteBtn.addEventListener(MouseEvent.CLICK, UnMuteSound); addChild(UnMuteBtn); if (Muted == false){ UnMuteBtn.visible = false; } else { MuteBtn.visible = false; }; BuildBtn1.x = 35; BuildBtn1.y = 88; BuildBtn1.addEventListener(MouseEvent.CLICK, BuildModeLargeTurret); BuildBtn1.addEventListener(MouseEvent.MOUSE_OVER, LargeTurretInfoOn); BuildBtn1.addEventListener(MouseEvent.MOUSE_OUT, LargeTurretInfoOff); addChild(BuildBtn1); BuildBtn2.x = 81; BuildBtn2.y = 88; BuildBtn2.addEventListener(MouseEvent.CLICK, BuildModeSmallTurret); BuildBtn2.addEventListener(MouseEvent.MOUSE_OVER, SmallTurretInfoOn); BuildBtn2.addEventListener(MouseEvent.MOUSE_OUT, SmallTurretInfoOff); addChild(BuildBtn2); BuildBtn3.x = 127; BuildBtn3.y = 88; BuildBtn3.addEventListener(MouseEvent.CLICK, BuildModeFrostTurret); BuildBtn3.addEventListener(MouseEvent.MOUSE_OVER, FrostTurretInfoOn); BuildBtn3.addEventListener(MouseEvent.MOUSE_OUT, FrostTurretInfoOff); addChild(BuildBtn3); BuildBtn4.x = 35; BuildBtn4.y = 134; BuildBtn4.addEventListener(MouseEvent.CLICK, BuildModeSplashTurret); BuildBtn4.addEventListener(MouseEvent.MOUSE_OVER, SplashTurretInfoOn); BuildBtn4.addEventListener(MouseEvent.MOUSE_OUT, SplashTurretInfoOff); addChild(BuildBtn4); BuildBtn5.x = 81; BuildBtn5.y = 134; BuildBtn5.addEventListener(MouseEvent.CLICK, BuildModeAuraTurret); BuildBtn5.addEventListener(MouseEvent.MOUSE_OVER, AuraTurretInfoOn); BuildBtn5.addEventListener(MouseEvent.MOUSE_OUT, AuraTurretInfoOff); addChild(BuildBtn5); BuildBtn6.x = 127; BuildBtn6.y = 134; BuildBtn6.addEventListener(MouseEvent.CLICK, BuildModeFlameTurret); BuildBtn6.addEventListener(MouseEvent.MOUSE_OVER, FlameTurretInfoOn); BuildBtn6.addEventListener(MouseEvent.MOUSE_OUT, FlameTurretInfoOff); addChild(BuildBtn6); BuildBtn1Red.x = BuildBtn1.x; BuildBtn1Red.y = BuildBtn1.y; BuildBtn1Red.visible = false; BuildBtn1Red.addEventListener(MouseEvent.MOUSE_OVER, LargeTurretInfoOn); BuildBtn1Red.addEventListener(MouseEvent.MOUSE_OUT, LargeTurretInfoOff); addChild(BuildBtn1Red); BuildBtn2Red.x = BuildBtn2.x; BuildBtn2Red.y = BuildBtn2.y; BuildBtn2Red.visible = false; BuildBtn2Red.addEventListener(MouseEvent.MOUSE_OVER, SmallTurretInfoOn); BuildBtn2Red.addEventListener(MouseEvent.MOUSE_OUT, SmallTurretInfoOff); addChild(BuildBtn2Red); BuildBtn3Red.x = BuildBtn3.x; BuildBtn3Red.y = BuildBtn3.y; BuildBtn3Red.visible = false; BuildBtn3Red.addEventListener(MouseEvent.MOUSE_OVER, FrostTurretInfoOn); BuildBtn3Red.addEventListener(MouseEvent.MOUSE_OUT, FrostTurretInfoOff); addChild(BuildBtn3Red); BuildBtn4Red.x = BuildBtn4.x; BuildBtn4Red.y = BuildBtn4.y; BuildBtn4Red.visible = false; BuildBtn4Red.addEventListener(MouseEvent.MOUSE_OVER, SplashTurretInfoOn); BuildBtn4Red.addEventListener(MouseEvent.MOUSE_OUT, SplashTurretInfoOff); addChild(BuildBtn4Red); BuildBtn5Red.x = BuildBtn5.x; BuildBtn5Red.y = BuildBtn5.y; BuildBtn5Red.visible = false; BuildBtn5Red.addEventListener(MouseEvent.MOUSE_OVER, AuraTurretInfoOn); BuildBtn5Red.addEventListener(MouseEvent.MOUSE_OUT, AuraTurretInfoOff); addChild(BuildBtn5Red); BuildBtn6Red.x = BuildBtn6.x; BuildBtn6Red.y = BuildBtn6.y; BuildBtn6Red.visible = false; BuildBtn6Red.addEventListener(MouseEvent.MOUSE_OVER, FlameTurretInfoOn); BuildBtn6Red.addEventListener(MouseEvent.MOUSE_OUT, FlameTurretInfoOff); addChild(BuildBtn6Red); GameFormat.font = "Calibri"; GameFormat.size = 18; GameFormat.bold = true; GameFormat.align = "left"; Game2Format.font = "Calibri"; Game2Format.size = 12; Game2Format.bold = true; Game2Format.align = "center"; GameFormat3.font = "Calibri"; GameFormat3.size = 16; GameFormat3.bold = true; GameFormat3.align = "center"; SelectedFormat.font = "Calibri"; SelectedFormat.size = 14; SelectedFormat.bold = true; SelectedFormat.align = "center"; SelectedBtnFormat.font = "Calibri"; SelectedBtnFormat.size = 14; SelectedBtnFormat.bold = false; SelectedBtnFormat.align = "center"; BuildPanelLabel.defaultTextFormat = Game2Format; BuildPanelLabel.x = 5; BuildPanelLabel.y = 337; BuildPanelLabel.height = 105; BuildPanelLabel.width = 105; BuildPanelLabel.textColor = 0xFFFFFF; BuildPanelLabel.selectable = false; BuildPanelLabel.multiline = false; BuildPanelLabel.text = "\nClick Start\nto begin"; Frame.addChild(BuildPanelLabel); TurretStatsText.defaultTextFormat = GameFormat3; TurretStatsText.x = 15; TurretStatsText.y = 220; TurretStatsText.height = 100; TurretStatsText.width = 120; TurretStatsText.textColor = 0x333333; TurretStatsText.selectable = false; TurretStatsText.multiline = false; TurretStatsText.visible = false; Frame.addChild(TurretStatsText); UpgradeDamageBtn.x = 25; UpgradeDamageBtn.y = 187; UpgradeDamageBtn.visible = false; UpgradeDamageBtn.addEventListener(MouseEvent.CLICK, UpgradeDamage); Frame.addChild(UpgradeDamageBtn); ElementFrame.x = 45; ElementFrame.y = 261; ElementFrame.visible = false; Frame.addChild(ElementFrame); SelectedElement.x = ElementFrame.x; SelectedElement.y = ElementFrame.y; SelectedElement.visible = false; Frame.addChild(SelectedElement); LandBtn.x = ElementFrame.x; LandBtn.y = (ElementFrame.y + 20); LandBtn.addEventListener(MouseEvent.CLICK, SetToLand); LandBtn.addEventListener(MouseEvent.MOUSE_OVER, LandHelpOn); LandBtn.addEventListener(MouseEvent.MOUSE_OUT, LandHelpOff); LandBtn.visible = false; Frame.addChild(LandBtn); SeaBtn.x = (ElementFrame.x + 20); SeaBtn.y = (ElementFrame.y - 20); SeaBtn.addEventListener(MouseEvent.CLICK, SetToSea); SeaBtn.addEventListener(MouseEvent.MOUSE_OVER, SeaHelpOn); SeaBtn.addEventListener(MouseEvent.MOUSE_OUT, SeaHelpOff); SeaBtn.visible = false; Frame.addChild(SeaBtn); AirBtn.x = (ElementFrame.x - 20); AirBtn.y = (ElementFrame.y - 20); AirBtn.addEventListener(MouseEvent.CLICK, SetToAir); AirBtn.addEventListener(MouseEvent.MOUSE_OVER, AirHelpOn); AirBtn.addEventListener(MouseEvent.MOUSE_OUT, AirHelpOff); AirBtn.visible = false; Frame.addChild(AirBtn); BalanceBtn.x = ElementFrame.x; BalanceBtn.y = (ElementFrame.y - 5); BalanceBtn.addEventListener(MouseEvent.CLICK, SetToBalance); BalanceBtn.addEventListener(MouseEvent.MOUSE_OVER, BalanceHelpOn); BalanceBtn.addEventListener(MouseEvent.MOUSE_OUT, BalanceHelpOff); BalanceBtn.visible = false; Frame.addChild(BalanceBtn); LandBtnBlock.x = LandBtn.x; LandBtnBlock.y = LandBtn.y; LandBtnBlock.visible = false; LandBtnBlock.addEventListener(MouseEvent.MOUSE_OVER, LandHelpOn); LandBtnBlock.addEventListener(MouseEvent.MOUSE_OUT, LandHelpOff); Frame.addChild(LandBtnBlock); SeaBtnBlock.x = SeaBtn.x; SeaBtnBlock.y = SeaBtn.y; SeaBtnBlock.visible = false; SeaBtnBlock.addEventListener(MouseEvent.MOUSE_OVER, SeaHelpOn); SeaBtnBlock.addEventListener(MouseEvent.MOUSE_OUT, SeaHelpOff); Frame.addChild(SeaBtnBlock); AirBtnBlock.x = AirBtn.x; AirBtnBlock.y = AirBtn.y; AirBtnBlock.visible = false; AirBtnBlock.addEventListener(MouseEvent.MOUSE_OVER, AirHelpOn); AirBtnBlock.addEventListener(MouseEvent.MOUSE_OUT, AirHelpOff); Frame.addChild(AirBtnBlock); BalanceBtnBlock.x = BalanceBtn.x; BalanceBtnBlock.y = BalanceBtn.y; BalanceBtnBlock.visible = false; BalanceBtnBlock.addEventListener(MouseEvent.MOUSE_OVER, BalanceHelpOn); BalanceBtnBlock.addEventListener(MouseEvent.MOUSE_OUT, BalanceHelpOff); Frame.addChild(BalanceBtnBlock); LandHelp.x = 76; LandHelp.y = 235; LandHelp.visible = false; addChild(LandHelp); SeaHelp.x = LandHelp.x; SeaHelp.y = LandHelp.y; SeaHelp.visible = false; addChild(SeaHelp); AirHelp.x = LandHelp.x; AirHelp.y = LandHelp.y; AirHelp.visible = false; addChild(AirHelp); BalanceHelp.x = LandHelp.x; BalanceHelp.y = LandHelp.y; BalanceHelp.visible = false; addChild(BalanceHelp); SellBtn.x = 25; SellBtn.y = 295; SellBtn.height = 24; SellBtn.visible = false; SellBtn.addEventListener(MouseEvent.CLICK, SellTurret); Frame.addChild(SellBtn); TurretUpgradeText.defaultTextFormat = SelectedFormat; TurretUpgradeText.x = 20; TurretUpgradeText.y = 165; TurretUpgradeText.height = 200; TurretUpgradeText.width = 120; TurretUpgradeText.textColor = 0x333333; TurretUpgradeText.selectable = false; TurretUpgradeText.multiline = false; TurretUpgradeText.visible = false; TurretUpgradeText.mouseEnabled = false; Frame.addChild(TurretUpgradeText); TurretUpgradeBtnText.defaultTextFormat = SelectedBtnFormat; TurretUpgradeBtnText.x = 20; TurretUpgradeBtnText.y = 187; TurretUpgradeBtnText.height = 180; TurretUpgradeBtnText.width = 120; TurretUpgradeBtnText.textColor = 0x333333; TurretUpgradeBtnText.selectable = false; TurretUpgradeBtnText.multiline = false; TurretUpgradeBtnText.visible = false; TurretUpgradeBtnText.mouseEnabled = false; Frame.addChild(TurretUpgradeBtnText); DeSelectBtn.x = 135; DeSelectBtn.y = 172; DeSelectBtn.visible = false; DeSelectBtn.addEventListener(MouseEvent.CLICK, DeSelectBtnClick); Frame.addChild(DeSelectBtn); TurretSellBtnText.defaultTextFormat = SelectedBtnFormat; TurretSellBtnText.x = 20; TurretSellBtnText.y = 297; TurretSellBtnText.height = 180; TurretSellBtnText.width = 120; TurretSellBtnText.textColor = 0x333333; TurretSellBtnText.selectable = false; TurretSellBtnText.multiline = false; TurretSellBtnText.visible = false; TurretSellBtnText.mouseEnabled = false; Frame.addChild(TurretSellBtnText); UpgradeDamageBtnRed.x = UpgradeDamageBtn.x; UpgradeDamageBtnRed.y = UpgradeDamageBtn.y; UpgradeDamageBtnRed.visible = false; Frame.addChild(UpgradeDamageBtnRed); BuildBtn1Info.x = InfoX; BuildBtn1Info.y = InfoY; BuildBtn1Info.visible = false; Frame.addChild(BuildBtn1Info); BuildBtn2Info.x = InfoX; BuildBtn2Info.y = InfoY; BuildBtn2Info.visible = false; Frame.addChild(BuildBtn2Info); BuildBtn3Info.x = InfoX; BuildBtn3Info.y = InfoY; BuildBtn3Info.visible = false; Frame.addChild(BuildBtn3Info); BuildBtn4Info.x = InfoX; BuildBtn4Info.y = InfoY; BuildBtn4Info.visible = false; Frame.addChild(BuildBtn4Info); BuildBtn5Info.x = InfoX; BuildBtn5Info.y = InfoY; BuildBtn5Info.visible = false; Frame.addChild(BuildBtn5Info); BuildBtn6Info.x = InfoX; BuildBtn6Info.y = InfoY; BuildBtn6Info.visible = false; Frame.addChild(BuildBtn6Info); MoneyText.defaultTextFormat = GameFormat3; MoneyText.text = ((("Lives: " + Lives) + "\nCredits: ") + Money); MoneyText.x = 10; MoneyText.y = 8; MoneyText.height = 60; MoneyText.width = 95; MoneyText.textColor = 0xFFFFFF; MoneyText.selectable = false; MoneyText.multiline = false; addChild(MoneyText); MobText.defaultTextFormat = Game2Format; MobText.text = ((((((("Enemies Remaining: " + CritterArray.length) + "\nTime Spent: ") + Hours) + ":") + Minutes) + ":") + Seconds); MobText.x = 10; MobText.y = 430; MobText.height = 60; MobText.width = 140; MobText.textColor = 0xFFFFFF; MobText.selectable = false; MobText.multiline = false; MobText.visible = false; addChild(MobText); } public function GameOver(){ var restartwave:*; if (GameOverState == false){ restartwave = (WaveCounter - 1); if (restartwave < 1){ restartwave = 1; }; GlobalVars.GameOverWave = restartwave; GameOverState = true; MovieClip(parent).gotoAndStop("GameLost"); }; } public function DrawLargeTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var i:*; var j:*; var k:*; var l:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; i = (GridArray.length - 1); while (i >= 0) { if (GridArray[i] == TurretGrid){ j = (i + 24); k = (i + 1); l = (i + 25); break; }; i--; }; if ((((((GridArray[j].IsBuilt == false)) && ((GridArray[k].IsBuilt == false)))) && ((GridArray[l].IsBuilt == false)))){ if ((((((GridArray[j].IsRoad == false)) && ((GridArray[k].IsRoad == false)))) && ((GridArray[l].IsRoad == false)))){ GridArray[i].SetBuilt(1, BuildIDcounter); GridArray[j].SetBuilt(1, BuildIDcounter); GridArray[k].SetBuilt(1, BuildIDcounter); GridArray[l].SetBuilt(1, BuildIDcounter); SellValue = Math.floor((LargeTurretCost / 2)); Turret = new LargeTurret(LargeTurretFiringSpeed, LargeTurretDamage, LargeTurretRange, BuildIDcounter, TurrGrid, SellValue); BuildIDcounter++; Turret.x = (TurretX + 10); Turret.y = (TurretY + 10); this.addChild(Turret); PlaySound(LargeBuildSound, 8); TurretArray.push(Turret); UpdateCash(-(LargeTurretCost)); }; }; } public function ApplyFrost(ImpactX, ImpactY, FreezeDuration, FreezeRadius){ var Freeze:*; var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; Freeze = new Freeze_mc(); Freeze.x = ImpactX; Freeze.y = ImpactY; Freeze.scaleX = 0.1; Freeze.scaleY = 0.1; addChild(Freeze); len = CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (ImpactX - CritterArray[i].x); CritterDistanceY = (ImpactY - CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (FreezeRadius / 2)){ CritterArray[i].ApplyFreeze(FreezeDuration); }; i++; }; }; } public function BalanceHelpOff(event:MouseEvent){ BalanceHelp.visible = false; } public function AuraTurretSelected(DamageMultiplierLevel){ SelectActive = true; SelectionType = 5; CurrDmgBonus = (DamageMultiplierLevel * AuraTurretDamageMulti); DeSelectBtn.visible = true; TurretUpgradeText.text = (("Dmg Bonus = " + CurrDmgBonus) + "%"); TurretSellBtnText.visible = true; if (DamageMultiplierLevel <= 4){ NextDmgBonus = (CurrDmgBonus + AuraTurretDamageMulti); DmgBonusUpgradeCost = ((DamageMultiplierLevel + 1) * AuraTurretDamageMultiCost); TurretUpgradeBtnText.text = (((("Upgrade to " + NextDmgBonus) + "%\nfor ") + DmgBonusUpgradeCost) + " credits"); TurretUpgradeBtnText.visible = true; UpgradeDamageBtn.visible = true; if (Money < DmgBonusUpgradeCost){ UpgradeDamageBtnRed.visible = true; } else { if (Money >= DmgBonusUpgradeCost){ UpgradeDamageBtnRed.visible = false; }; }; } else { if (DamageMultiplierLevel >= 5){ TurretUpgradeBtnText.visible = false; UpgradeDamageBtn.visible = false; }; }; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretUpgradeText.visible = true; SellBtn.visible = true; } public function BuildModeFlameTurret(event:MouseEvent){ DeSelectTurret(); PlaySound(ButtonSound, 0); if ((((BuildModeActive == true)) && ((BuildMode == 6)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 6; Buildmode6Cursor.alpha = 1; BuidmodeRangeCursor.width = FlameTurretRange; BuidmodeRangeCursor.height = FlameTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function BuildModeAuraTurret(event:MouseEvent){ DeSelectTurret(); PlaySound(ButtonSound, 0); if ((((BuildModeActive == true)) && ((BuildMode == 5)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 5; Buildmode5Cursor.alpha = 1; BuidmodeRangeCursor.width = AuraTurretRange; BuidmodeRangeCursor.height = AuraTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function SmallTurretInfoOff2(){ MouseInfo = false; BuildBtn2Info.visible = false; TurretStatsText.visible = false; } public function LargeTurretInfoOn2(MouseInfo, Cost, Range, Damage, Element){ var ElementText:String; var Damage2:*; if (Element == 0){ ElementText = "None"; } else { if (Element == 1){ ElementText = "Land"; } else { if (Element == 2){ ElementText = "Sea"; } else { if (Element == 3){ ElementText = "Air"; }; }; }; }; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn1Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nType: ") + ElementText) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function DeSelectCritter(critter){ var i:*; for (i in CritterArray) { if (CritterArray[i].Selected == true){ CritterArray[i].DeSelectMe(); }; }; } public function SplashTurretInfoOn2(MouseInfo, Cost, Range, Damage, Element){ var ElementText:String; var Damage2:*; if (Element == 0){ ElementText = "None"; } else { if (Element == 1){ ElementText = "Land"; } else { if (Element == 2){ ElementText = "Sea"; } else { if (Element == 3){ ElementText = "Air"; }; }; }; }; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn4Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nType: ") + ElementText) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function DeSelectTurret(){ if (SelectActive == true){ TurretUpgradeText.visible = false; TurretUpgradeBtnText.visible = false; TurretSellBtnText.visible = false; UpgradeDamageBtn.visible = false; UpgradeDamageBtnRed.visible = false; DeSelectBtn.visible = false; ElementFrame.visible = false; LandBtn.visible = false; SeaBtn.visible = false; AirBtn.visible = false; BalanceBtn.visible = false; SelectedElement.visible = false; LandBtnBlock.visible = false; SeaBtnBlock.visible = false; AirBtnBlock.visible = false; BalanceBtnBlock.visible = false; SellBtn.visible = false; this.removeChild(SelectBracket); SelectActive = false; SelectedObject.Selected = false; }; } public function SplashTurretInfoOn(event:MouseEvent){ MouseInfo = false; SplashTurretInfoOn2(MouseInfo, SplashTurretCost, SplashTurretRange, SplashTurretDamage, 0); } public function UnPauseGame(event:Event){ PlaySound(ButtonSound, 0); PauseBtn.visible = true; PlayBtn.visible = false; Paused = false; StartStopWatch(); } public function UpgradeDamage(event:MouseEvent){ var ValueInc:*; PlaySound(ButtonSound, 0); if (SelectedObject.TurretType != 5){ SelectedObject.DamageLevel = (SelectedObject.DamageLevel + 1); SelectedObject.CalcNewDmg(); UpdateCash(-(DamageUpgradeCost)); } else { if (SelectedObject.TurretType == 5){ SelectedObject.DamageMultiplierLevel = (SelectedObject.DamageMultiplierLevel + 1); UpdateCash(-(DmgBonusUpgradeCost)); ValueInc = (DmgBonusUpgradeCost / 2); SelectedObject.SellPrice = (SelectedObject.SellPrice + ValueInc); }; }; if (SelectionType == 1){ LargeTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 2){ SmallTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 3){ FrostTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 4){ SplashTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 5){ AuraTurretSelected(SelectedObject.DamageMultiplierLevel); } else { if (SelectionType == 6){ FlameTurretSelected(SelectedObject.DamageLevel); }; }; }; }; }; }; } public function SmallTurretSelected(DamageLevel){ SelectActive = true; SelectionType = 2; CurrDamage = SelectedObject.NetDmg; CurrDamage = (Math.floor((CurrDamage * 100)) / 100); TurretUpgradeText.text = ("Base Damage: " + CurrDamage); TurretUpgradeText.visible = true; DeSelectBtn.visible = true; if (DamageLevel <= 4){ CurrDamage = (Math.floor((CurrDamage * 100)) / 100); NextDamage = (CurrDamage + (DamageLevel * SmallTurretDamageUpgrade)); NextDamage = (Math.floor((NextDamage * 100)) / 100); DamageUpgradeCost = (DamageLevel * SmallTurretDamageUpgradeCost); TurretUpgradeBtnText.text = (((("Upgrade to " + NextDamage) + "\nfor ") + DamageUpgradeCost) + " credits"); TurretUpgradeBtnText.visible = true; UpgradeDamageBtn.visible = true; if (Money < DamageUpgradeCost){ UpgradeDamageBtnRed.visible = true; } else { if (Money >= DamageUpgradeCost){ UpgradeDamageBtnRed.visible = false; }; }; } else { if (DamageLevel >= 5){ TurretUpgradeBtnText.visible = false; UpgradeDamageBtn.visible = false; }; }; if (SelectedObject.Element == 1){ SelectedElement.x = LandBtn.x; SelectedElement.y = LandBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 2){ SelectedElement.x = SeaBtn.x; SelectedElement.y = SeaBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 3){ SelectedElement.x = AirBtn.x; SelectedElement.y = AirBtn.y; SelectedElement.visible = true; }; }; }; ElementFrame.visible = true; LandBtn.visible = true; SeaBtn.visible = true; AirBtn.visible = true; BalanceBtn.visible = true; if (Money < 3){ LandBtnBlock.visible = true; SeaBtnBlock.visible = true; AirBtnBlock.visible = true; BalanceBtnBlock.visible = true; }; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretSellBtnText.visible = true; SellBtn.visible = true; } public function NextWave(event:MouseEvent){ StartStopWatch(); PlaySound(SirenSound, 0); MobWaveSizeCounter = 0; WaveCounter++; if (MobStatArray[WaveCounter][5] == 1){ ElementName = "Land"; UnFlooding = true; } else { if (MobStatArray[WaveCounter][5] == 2){ ElementName = "Sea"; Flooding = true; UnFlooding = false; } else { if (MobStatArray[WaveCounter][5] == 3){ ElementName = "Air"; }; }; }; WaveReady = true; MobText.visible = true; NextWaveBtn.visible = false; BuildPanelLabel.text = ((((((((((("Wave " + WaveCounter) + ": \n") + MobStatArray[WaveCounter][0]) + " ") + MobStatArray[WaveCounter][4]) + "\nHealth: ") + MobStatArray[WaveCounter][2]) + "\nValue: ") + MobStatArray[WaveCounter][3]) + "\nType: ") + ElementName); if (WaveCounter == MobStatArray.length){ WavesDone = true; } else { MobWaveSize = MobStatArray[WaveCounter][0]; }; } public function DeSelectBtnClick(event:MouseEvent){ DeSelectTurret(); } public function SetToSea(event:MouseEvent){ if (SelectedObject.Element != 2){ PlaySound(ButtonSound, 0); SelectedObject.SetElement(2); UpdateCash(-(ElementSwitchCost)); }; SelectedElement.x = SeaBtn.x; SelectedElement.y = SeaBtn.y; SelectedElement.visible = true; } public function DrawAuraTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; SellValue = Math.floor((AuraTurretCost / 2)); Turret = new AuraTurret(AuraTurretFiringSpeed, AuraTurretDamage, AuraTurretRange, BuildIDcounter, TurrGrid, SellValue); Turret.x = TurretX; Turret.y = TurretY; TurretGrid.SetBuilt(5, BuildIDcounter); BuildIDcounter++; this.addChild(Turret); PlaySound(SmallBuildSound, 9); TurretArray.push(Turret); UpdateCash(-(AuraTurretCost)); } public function DrawFrostTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var i:*; var j:*; var k:*; var l:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; i = (GridArray.length - 1); while (i >= 0) { if (GridArray[i] == TurretGrid){ j = (i + 24); k = (i + 1); l = (i + 25); break; }; i--; }; if ((((((GridArray[j].IsBuilt == false)) && ((GridArray[k].IsBuilt == false)))) && ((GridArray[l].IsBuilt == false)))){ if ((((((GridArray[j].IsRoad == false)) && ((GridArray[k].IsRoad == false)))) && ((GridArray[l].IsRoad == false)))){ GridArray[i].SetBuilt(3, BuildIDcounter); GridArray[j].SetBuilt(3, BuildIDcounter); GridArray[k].SetBuilt(3, BuildIDcounter); GridArray[l].SetBuilt(3, BuildIDcounter); SellValue = Math.floor((FrostTurretCost / 2)); Turret = new FrostTurret(FrostTurretFiringSpeed, FrostTurretDamage, FrostTurretRange, BuildIDcounter, TurrGrid, SellValue); BuildIDcounter++; Turret.x = (TurretX + 10); Turret.y = (TurretY + 10); this.addChild(Turret); PlaySound(LargeBuildSound, 8); TurretArray.push(Turret); UpdateCash(-(FrostTurretCost)); }; }; } public function DrawSmallTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; SellValue = Math.floor((SmallTurretCost / 2)); Turret = new SmallTurret(SmallTurretFiringSpeed, SmallTurretDamage, SmallTurretRange, BuildIDcounter, TurrGrid, SellValue); Turret.x = TurretX; Turret.y = TurretY; TurretGrid.SetBuilt(2, BuildIDcounter); BuildIDcounter++; this.addChild(Turret); PlaySound(SmallBuildSound, 9); TurretArray.push(Turret); UpdateCash(-(SmallTurretCost)); } public function FrostTurretInfoOn(event:MouseEvent){ MouseInfo = false; FrostTurretInfoOn2(MouseInfo, FrostTurretCost, FrostTurretRange, FrostTurretDamage); } public function SmallTurretInfoOff(event:MouseEvent){ SmallTurretInfoOff2(); } public function FlameTurretInfoOff2(){ MouseInfo = false; BuildBtn6Info.visible = false; TurretStatsText.visible = false; } public function FlameTurretSelected(DamageLevel){ SelectActive = true; SelectionType = 6; CurrDamage = SelectedObject.NetDmg; CurrDamage = (Math.floor((CurrDamage * 100)) / 100); TurretUpgradeText.text = ("Base Damage: " + CurrDamage); TurretSellBtnText.visible = true; DeSelectBtn.visible = true; if (DamageLevel <= 4){ CurrDamage = (Math.floor((CurrDamage * 100)) / 100); NextDamage = (CurrDamage + (DamageLevel * FlameTurretDamageUpgrade)); NextDamage = (Math.floor((NextDamage * 100)) / 100); DamageUpgradeCost = (DamageLevel * FlameTurretDamageUpgradeCost); TurretUpgradeBtnText.text = (((("Upgrade to " + NextDamage) + "\nfor ") + DamageUpgradeCost) + " credits"); TurretUpgradeBtnText.visible = true; UpgradeDamageBtn.visible = true; if (Money < DamageUpgradeCost){ UpgradeDamageBtnRed.visible = true; } else { if (Money >= DamageUpgradeCost){ UpgradeDamageBtnRed.visible = false; }; }; } else { if (DamageLevel >= 5){ TurretUpgradeBtnText.visible = false; UpgradeDamageBtn.visible = false; }; }; if (SelectedObject.Element == 1){ SelectedElement.x = LandBtn.x; SelectedElement.y = LandBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 2){ SelectedElement.x = SeaBtn.x; SelectedElement.y = SeaBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 3){ SelectedElement.x = AirBtn.x; SelectedElement.y = AirBtn.y; SelectedElement.visible = true; }; }; }; ElementFrame.visible = true; LandBtn.visible = true; SeaBtn.visible = true; AirBtn.visible = true; BalanceBtn.visible = true; if (Money < 3){ LandBtnBlock.visible = true; SeaBtnBlock.visible = true; AirBtnBlock.visible = true; BalanceBtnBlock.visible = true; }; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretUpgradeText.visible = true; SellBtn.visible = true; } public function SetToAir(event:MouseEvent){ if (SelectedObject.Element != 3){ PlaySound(ButtonSound, 0); SelectedObject.SetElement(3); UpdateCash(-(ElementSwitchCost)); }; SelectedElement.x = AirBtn.x; SelectedElement.y = AirBtn.y; SelectedElement.visible = true; } public function AuraTurretInfoOn(event:MouseEvent){ MouseInfo = false; AuraTurretInfoOn2(MouseInfo, AuraTurretCost, AuraTurretRange, AuraTurretDamage); } public function DrawSplashTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var i:*; var j:*; var k:*; var l:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; i = (GridArray.length - 1); while (i >= 0) { if (GridArray[i] == TurretGrid){ j = (i + 24); k = (i + 1); l = (i + 25); break; }; i--; }; if ((((((GridArray[j].IsBuilt == false)) && ((GridArray[k].IsBuilt == false)))) && ((GridArray[l].IsBuilt == false)))){ if ((((((GridArray[j].IsRoad == false)) && ((GridArray[k].IsRoad == false)))) && ((GridArray[l].IsRoad == false)))){ GridArray[i].SetBuilt(4, BuildIDcounter); GridArray[j].SetBuilt(4, BuildIDcounter); GridArray[k].SetBuilt(4, BuildIDcounter); GridArray[l].SetBuilt(4, BuildIDcounter); SellValue = Math.floor((SplashTurretCost / 2)); Turret = new SplashTurret(SplashTurretFiringSpeed, SplashTurretDamage, SplashTurretRange, BuildIDcounter, TurrGrid, SellValue); BuildIDcounter++; Turret.x = (TurretX + 10); Turret.y = (TurretY + 10); this.addChild(Turret); PlaySound(LargeBuildSound, 8); TurretArray.push(Turret); UpdateCash(-(SplashTurretCost)); }; }; } public function GameLoop(event:Event){ var MobElement:*; if (GameLoaded == true){ if (BuildModeActive == true){ if (BuildMode == 1){ Buildmode1Cursor.x = (mouseX + 10); Buildmode1Cursor.y = (mouseY + 10); BuidmodeRangeCursor.x = (mouseX + 10); BuidmodeRangeCursor.y = (mouseY + 10); } else { if (BuildMode == 2){ Buildmode2Cursor.x = mouseX; Buildmode2Cursor.y = mouseY; BuidmodeRangeCursor.x = mouseX; BuidmodeRangeCursor.y = mouseY; } else { if (BuildMode == 3){ Buildmode3Cursor.x = (mouseX + 10); Buildmode3Cursor.y = (mouseY + 10); BuidmodeRangeCursor.x = (mouseX + 10); BuidmodeRangeCursor.y = (mouseY + 10); } else { if (BuildMode == 4){ Buildmode4Cursor.x = (mouseX + 10); Buildmode4Cursor.y = (mouseY + 10); BuidmodeRangeCursor.x = (mouseX + 10); BuidmodeRangeCursor.y = (mouseY + 10); } else { if (BuildMode == 5){ Buildmode5Cursor.x = mouseX; Buildmode5Cursor.y = mouseY; BuidmodeRangeCursor.x = mouseX; BuidmodeRangeCursor.y = mouseY; } else { if (BuildMode == 6){ Buildmode6Cursor.x = mouseX; Buildmode6Cursor.y = mouseY; BuidmodeRangeCursor.x = mouseX; BuidmodeRangeCursor.y = mouseY; }; }; }; }; }; }; }; if (GameStarted == true){ if (Paused == false){ if ((((Flooded == false)) && ((Flooding == true)))){ WaterPath.alpha = (WaterPath.alpha + 0.04); if (WaterPath.alpha >= 1){ Flooded = true; Flooding = false; }; }; if ((((Flooded == true)) && ((UnFlooding == true)))){ WaterPath.alpha = (WaterPath.alpha - 0.04); if (WaterPath.alpha <= 0){ Flooded = false; UnFlooding = false; }; }; if ((((SonicPlaying == true)) && ((Muted == false)))){ if (Channel.position > 800){ SonicPlaying = false; }; }; if (WavesDone == false){ if (WaveReady == true){ if (MobWaveSizeCounter < MobWaveSize){ MobDelayCounter++; } else { if (MobWaveSizeCounter == MobWaveSize){ WaveReady = false; }; }; if (MobDelayCounter == MobDelay){ MobDelayCounter = 0; MobWaveSizeCounter++; MobSpeed = MobStatArray[WaveCounter][1]; MobHealth = MobStatArray[WaveCounter][2]; MobValue = MobStatArray[WaveCounter][3]; MobID++; MobElement = MobStatArray[WaveCounter][5]; Critter = new Mob(MobSpeed, MobHealth, MobValue, MobID, MobElement); Critter.x = 660; Critter.y = 60; Critter.gotoAndPlay(WaveCounter); addChild(Critter); CritterArray.push(Critter); MobText.text = ((((((("Enemies Remaining: " + CritterArray.length) + "\nTime Spent: ") + Hours) + ":") + Minutes) + ":") + Seconds); }; }; }; }; }; }; } public function SetToBalance(event:MouseEvent){ if (SelectedObject.Element != 0){ PlaySound(ButtonSound, 0); SelectedObject.SetElement(0); UpdateCash(-(ElementSwitchCost)); }; SelectedElement.x = BalanceBtn.x; SelectedElement.y = BalanceBtn.y; SelectedElement.visible = true; } public function LandHelpOff(event:MouseEvent){ LandHelp.visible = false; } public function BracketSelection(Xloc, Yloc, Size, It){ SelectedObject = It; if (Size == 0){ SelectBracket = new SmallSelect(); } else { if (Size == 1){ SelectBracket = new LargeSelect(); }; }; SelectBracket.x = Xloc; SelectBracket.y = Yloc; SelectBracket.mouseEnabled = false; addChild(SelectBracket); } public function BuildModeSplashTurret(event:MouseEvent){ DeSelectTurret(); PlaySound(ButtonSound, 0); if ((((BuildModeActive == true)) && ((BuildMode == 4)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 4; Buildmode4Cursor.alpha = 1; BuidmodeRangeCursor.width = SplashTurretRange; BuidmodeRangeCursor.height = SplashTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function SmallTurretInfoOn2(MouseInfo, Cost, Range, Damage, Element){ var ElementText:String; var Damage2:*; if (Element == 0){ ElementText = "None"; } else { if (Element == 1){ ElementText = "Land"; } else { if (Element == 2){ ElementText = "Sea"; } else { if (Element == 3){ ElementText = "Air"; }; }; }; }; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn2Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nType: ") + ElementText) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function SplashTurretInfoOff2(){ BuildBtn4Info.visible = false; TurretStatsText.visible = false; } public function SetToLand(event:MouseEvent){ if (SelectedObject.Element != 1){ PlaySound(ButtonSound, 0); SelectedObject.SetElement(1); UpdateCash(-(ElementSwitchCost)); }; SelectedElement.x = LandBtn.x; SelectedElement.y = LandBtn.y; SelectedElement.visible = true; } public function AirHelpOff(event:MouseEvent){ AirHelp.visible = false; } public function DrawFlameTurret(TurretX:Number, TurretY:Number, TurretGrid){ var TurrGrid:*; var SellValue:int; TurrGrid = TurretGrid.GridNumber; SellValue = Math.floor((FlameTurretCost / 2)); Turret = new FlameTurret(FlameTurretFiringSpeed, FlameTurretDamage, FlameTurretRange, BuildIDcounter, TurrGrid, SellValue); Turret.x = TurretX; Turret.y = TurretY; TurretGrid.SetBuilt(2, BuildIDcounter); BuildIDcounter++; this.addChild(Turret); PlaySound(SmallBuildSound, 9); TurretArray.push(Turret); UpdateCash(-(FlameTurretCost)); } public function AuraTurretInfoOff(event:MouseEvent){ AuraTurretInfoOff2(); } public function SplashTurretSelected(DamageLevel){ SelectActive = true; SelectionType = 4; CurrDamage = SelectedObject.NetDmg; CurrDamage = (Math.floor((CurrDamage * 100)) / 100); TurretUpgradeText.text = ("Base Damage: " + CurrDamage); TurretUpgradeText.visible = true; DeSelectBtn.visible = true; if (DamageLevel <= 4){ NextDamage = (CurrDamage + (DamageLevel * SplashTurretDamageUpgrade)); NextDamage = (Math.floor((NextDamage * 100)) / 100); DamageUpgradeCost = (DamageLevel * SplashTurretDamageUpgradeCost); TurretUpgradeBtnText.text = (((("Upgrade to " + NextDamage) + "\nfor ") + DamageUpgradeCost) + " credits"); TurretUpgradeBtnText.visible = true; UpgradeDamageBtn.visible = true; if (Money < DamageUpgradeCost){ UpgradeDamageBtnRed.visible = true; } else { if (Money >= DamageUpgradeCost){ UpgradeDamageBtnRed.visible = false; }; }; } else { if (DamageLevel >= 5){ TurretUpgradeBtnText.visible = false; UpgradeDamageBtn.visible = false; }; }; if (SelectedObject.Element == 1){ SelectedElement.x = LandBtn.x; SelectedElement.y = LandBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 2){ SelectedElement.x = SeaBtn.x; SelectedElement.y = SeaBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 3){ SelectedElement.x = AirBtn.x; SelectedElement.y = AirBtn.y; SelectedElement.visible = true; }; }; }; ElementFrame.visible = true; LandBtn.visible = true; SeaBtn.visible = true; AirBtn.visible = true; BalanceBtn.visible = true; if (Money < 3){ LandBtnBlock.visible = true; SeaBtnBlock.visible = true; AirBtnBlock.visible = true; BalanceBtnBlock.visible = true; }; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretSellBtnText.visible = true; SellBtn.visible = true; } public function SeaHelpOn(event:MouseEvent){ SeaHelp.visible = true; } public function LoadGame(){ GameLoaded = true; } public function PlaySound(soundObject:Object, SoundType:int){ if (Muted == false){ if (SoundType == 0){ VolumeAdjustment.volume = 0.5; } else { if (SoundType == 1){ VolumeAdjustment.volume = 0.1; } else { if (SoundType == 2){ VolumeAdjustment.volume = 1.3; } else { if (SoundType == 3){ VolumeAdjustment.volume = 0.2; } else { if (SoundType == 4){ VolumeAdjustment.volume = 0.3; } else { if (SoundType == 5){ VolumeAdjustment.volume = 1; } else { if (SoundType == 6){ VolumeAdjustment.volume = 1.3; Channel.addEventListener(Event.SOUND_COMPLETE, onSonicSoundCompleted); } else { if (SoundType == 7){ VolumeAdjustment.volume = 0.3; } else { if (SoundType == 8){ VolumeAdjustment.volume = 0.7; } else { if (SoundType == 9){ VolumeAdjustment.volume = 0.3; } else { if (SoundType == 10){ VolumeAdjustment.volume = 1; }; }; }; }; }; }; }; }; }; }; }; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function MuteSound(event:Event){ Muted = true; GlobalVars.Muted = Muted; MuteBtn.visible = false; UnMuteBtn.visible = true; } public function BuildModeLargeTurret(event:MouseEvent){ PlaySound(ButtonSound, 0); DeSelectTurret(); if ((((BuildModeActive == true)) && ((BuildMode == 1)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 1; Buildmode1Cursor.alpha = 1; BuidmodeRangeCursor.width = LargeTurretRange; BuidmodeRangeCursor.height = LargeTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function FlameTurretInfoOff(event:MouseEvent){ FlameTurretInfoOff2(); } public function FrostTurretInfoOff(event:MouseEvent){ FrostTurretInfoOff2(); } public function EndBuildmode(){ BuildModeActive = false; BuildMode = 0; Buildmode1Cursor.alpha = 0; Buildmode1Cursor.x = -50; Buildmode1Cursor.y = -50; Buildmode2Cursor.alpha = 0; Buildmode2Cursor.x = -50; Buildmode2Cursor.y = -50; Buildmode3Cursor.alpha = 0; Buildmode3Cursor.x = -50; Buildmode3Cursor.y = -50; Buildmode4Cursor.alpha = 0; Buildmode4Cursor.x = -50; Buildmode4Cursor.y = -50; Buildmode5Cursor.alpha = 0; Buildmode5Cursor.x = -50; Buildmode5Cursor.y = -50; Buildmode6Cursor.alpha = 0; Buildmode6Cursor.x = -50; Buildmode6Cursor.y = -50; BuidmodeRangeCursor.alpha = 0; BuidmodeRangeCursor.x = -50; BuidmodeRangeCursor.y = -50; } private function DrawRoad(){ var i:*; var one:*; var two:*; i = 0; while (i < RoadArray.length) { one = RoadArray[i][0]; two = RoadArray[i][1]; GridArray[one].MakeRoad(); GridArray[two].MakeRoad(); i++; }; LoadGame(); } public function SmallTurretInfoOn(event:MouseEvent){ MouseInfo = false; SmallTurretInfoOn2(MouseInfo, SmallTurretCost, SmallTurretRange, SmallTurretDamage, 0); } public function AuraTurretInfoOn2(MouseInfo, Cost, Range, Damage){ var Damage2:*; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn5Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function AirHelpOn(event:MouseEvent){ AirHelp.visible = true; } public function LoopTimer(){ if ((((Paused == false)) && (!((CritterArray.length == 0))))){ StopWatchTimer.reset(); StopWatchTimer.start(); }; } public function PauseGame(event:Event){ PlaySound(ButtonSound, 0); PauseBtn.visible = false; PlayBtn.visible = true; Paused = true; StopWatchTimer.stop(); } public function onSonicSoundCompleted(event:Event){ SonicPlaying = false; } public function removeCritter(critter){ var i:*; for (i in CritterArray) { if (CritterArray[i] == critter){ CritterArray.splice(i, 1); if (CritterArray.length > 0){ MobText.text = ((((((("Enemies Remaining: " + CritterArray.length) + "\nTime Spent: ") + Hours) + ":") + Minutes) + ":") + Seconds); } else { if (CritterArray.length == 0){ MobText.visible = false; NextWaveBtn.visible = true; }; }; break; }; }; if (WaveCounter == (MobStatArray.length - 1)){ if (CritterArray.length == 0){ GameWon(); }; }; } public function LandHelpOn(event:MouseEvent){ LandHelp.visible = true; } public function BalanceHelpOn(event:MouseEvent){ BalanceHelp.visible = true; } public function FlameTurretInfoOn(event:MouseEvent){ MouseInfo = false; FlameTurretInfoOn2(MouseInfo, FlameTurretCost, FlameTurretRange, FlameTurretDamage, 0); } public function FireBullet(TurretType:int, BaseDmg:Number, OriginX:Number, OriginY:Number, TargetNR, Special1, Special2, BulletElement:int){ var BulletSpeed:*; var BulletType:*; var BElement:*; var TargetID:*; var ImpactX:*; var ImpactY:*; var CritterDistanceX:*; var CritterDistanceY:*; var Direction:*; BElement = BulletElement; if (TurretType == 1){ PlaySound(LargeSound, 1); BulletSpeed = 20; BulletType = 1; } else { if (TurretType == 2){ PlaySound(SmallSound, 2); BulletSpeed = 25; BulletType = 1; } else { if (TurretType == 3){ PlaySound(EMPSound, 3); BulletSpeed = 10; BulletType = 3; } else { if (TurretType == 4){ PlaySound(SplashSound, 4); BulletSpeed = 10; BulletType = 2; } else { if (TurretType == 6){ if (SonicPlaying == false){ SonicPlaying = true; PlaySound(SonicSound, 6); }; BulletSpeed = 6; BulletType = 4; }; }; }; }; }; TargetID = CritterArray[TargetNR].MobID; ImpactX = CritterArray[TargetNR].x; ImpactY = CritterArray[TargetNR].y; Bullet = new Bullet_mc(BulletType, BaseDmg, TargetNR, BulletSpeed, TargetID, ImpactX, ImpactY, Special1, Special2, BElement); CritterDistanceX = (OriginX - CritterArray[TargetNR].x); CritterDistanceY = (OriginY - CritterArray[TargetNR].y); Direction = Math.atan2(CritterDistanceY, CritterDistanceX); Bullet.rotation = Math.round(((Direction * 180) / Math.PI)); Bullet.y = OriginY; Bullet.x = OriginX; Bullet.mouseEnabled = false; Bullet.gotoAndStop(TurretType); this.addChild(Bullet); } public function ShowCurrentWaveInfo(event:MouseEvent){ if (NextWaveInfoVisible == true){ NextWaveInfoVisible = false; if (WaveCounter != 0){ BuildPanelLabel.text = ((((((((((("Wave " + WaveCounter) + ": \n") + MobStatArray[WaveCounter][0]) + " ") + MobStatArray[WaveCounter][4]) + "\nHealth: ") + MobStatArray[WaveCounter][2]) + "\nValue: ") + MobStatArray[WaveCounter][3]) + "\nType: ") + ElementName); } else { BuildPanelLabel.text = ((((((((((("Wave " + 1) + ": \n") + MobStatArray[1][0]) + " ") + MobStatArray[1][4]) + "\nHealth: ") + MobStatArray[1][2]) + "\nValue: ") + MobStatArray[1][3]) + "\nType: ") + ElementName); }; }; } public function SellTurret(event:MouseEvent){ var i:*; var j:*; PlaySound(ButtonSound, 0); UpdateCash(SelectedObject.SellPrice); i = (GridArray.length - 1); while (i >= 0) { if (GridArray[i].BuildID == SelectedObject.TurrID){ GridArray[i].IsBuilt = false; GridArray[i].BuildType = 0; GridArray[i].BuildID = 0; }; i--; }; DeSelectTurret(); for (j in TurretArray) { if (TurretArray[j] == SelectedObject){ TurretArray.splice(j, 1); break; }; }; SelectedObject.SellTurret(); } public function UpdateStopWatch(event:TimerEvent){ SecondsInt++; if (SecondsInt == 60){ SecondsInt = 0; MinutesInt++; }; if (MinutesInt == 60){ MinutesInt = 0; HoursInt++; }; if (SecondsInt < 10){ Seconds = ("0" + SecondsInt); } else { Seconds = SecondsInt.toString(); }; if (MinutesInt < 10){ Minutes = ("0" + MinutesInt); } else { Minutes = MinutesInt.toString(); }; if (HoursInt < 10){ Hours = ("0" + HoursInt); } else { Hours = HoursInt.toString(); }; MobText.text = ((((((("Enemies Remaining: " + CritterArray.length) + "\nTime Spent: ") + Hours) + ":") + Minutes) + ":") + Seconds); LoopTimer(); } public function BuildModeFrostTurret(event:MouseEvent){ DeSelectTurret(); PlaySound(ButtonSound, 0); if ((((BuildModeActive == true)) && ((BuildMode == 3)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 3; Buildmode3Cursor.alpha = 1; BuidmodeRangeCursor.width = FrostTurretRange; BuidmodeRangeCursor.height = FrostTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function BuildModeSmallTurret(event:MouseEvent){ DeSelectTurret(); PlaySound(ButtonSound, 0); if ((((BuildModeActive == true)) && ((BuildMode == 2)))){ EndBuildmode(); } else { BuildModeActive = true; BuildMode = 2; Buildmode2Cursor.alpha = 1; BuidmodeRangeCursor.width = SmallTurretRange; BuidmodeRangeCursor.height = SmallTurretRange; BuidmodeRangeCursor.alpha = 0.5; }; } public function ShowNextWaveInfo(event:MouseEvent){ var NextWave:*; var NextWaveElement:String; PlaySound(ButtonSound, 0); NextWaveInfoVisible = true; NextWave = (WaveCounter + 1); if (MobStatArray[NextWave][5] == 1){ NextWaveElement = "Land"; } else { if (MobStatArray[NextWave][5] == 2){ NextWaveElement = "Sea"; } else { if (MobStatArray[NextWave][5] == 3){ NextWaveElement = "Air"; }; }; }; BuildPanelLabel.text = ((((((((((("Next: Wave " + NextWave) + ": \n") + MobStatArray[NextWave][0]) + " ") + MobStatArray[NextWave][4]) + "\nHealth: ") + MobStatArray[NextWave][2]) + "\nValue: ") + MobStatArray[NextWave][3]) + "\nType: ") + NextWaveElement); } public function LargeTurretInfoOn(event:MouseEvent){ MouseInfo = false; LargeTurretInfoOn2(MouseInfo, LargeTurretCost, LargeTurretRange, LargeTurretDamage, 0); } public function GameWon(){ var restartwave:*; restartwave = WaveCounter; GlobalVars.StartWave = restartwave; GlobalVars.TimeSpent = ((((Hours + ":") + Minutes) + ":") + Seconds); MovieClip(parent).gotoAndStop("GameWon"); } public function SeaHelpOff(event:MouseEvent){ SeaHelp.visible = false; } public function FrostTurretInfoOff2(){ BuildBtn3Info.visible = false; TurretStatsText.visible = false; } public function ApplySplash(ImpactX, ImpactY, Damage, SplashRadius, SplashElement:int){ var Splash:*; var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; Splash = new Splash_mc(SplashElement); Splash.x = ImpactX; Splash.y = ImpactY; Splash.scaleX = 0.1; Splash.scaleY = 0.1; addChild(Splash); PlaySound(SplashExplosionSound, 7); len = CritterArray.length; if (len > 0){ i = (len - 1); while (i >= 0) { CritterDistanceX = (ImpactX - CritterArray[i].x); CritterDistanceY = (ImpactY - CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (SplashRadius / 2)){ CritterArray[i].HitCritter(Damage, SplashElement); }; i--; }; }; } public function StartGame(event:MouseEvent){ PlaySound(SirenSound, 0); GameStarted = true; StartBtn.alpha = 0; StartBtn.enabled = false; NextWave(event); StartStopWatch(); } public function FrostTurretInfoOn2(MouseInfo, Cost, Range, Damage){ var Damage2:*; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn3Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function FlameTurretInfoOn2(MouseInfo, Cost, Range, Damage, Element){ var ElementText:String; var Damage2:*; if (Element == 0){ ElementText = "None"; } else { if (Element == 1){ ElementText = "Land"; } else { if (Element == 2){ ElementText = "Sea"; } else { if (Element == 3){ ElementText = "Air"; }; }; }; }; Damage2 = (Math.floor((Damage * 100)) / 100); if (SelectActive == false){ BuildBtn6Info.visible = true; if (MouseInfo == false){ TurretStatsText.text = ((((("Cost: " + Cost) + "\nRange: ") + Range) + "\nDamage: ") + Damage2); TurretStatsText.visible = true; } else { if (MouseInfo == true){ TurretStatsText.text = (((((("Range: " + Range) + "\nDamage: ") + Damage2) + "\nType: ") + ElementText) + "\nClick to Edit"); TurretStatsText.visible = true; }; }; }; } public function FrostTurretSelected(DamageLevel){ SelectActive = true; SelectionType = 3; DeSelectBtn.visible = true; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretSellBtnText.visible = true; SellBtn.visible = true; } public function LargeTurretInfoOff(event:MouseEvent){ LargeTurretInfoOff2(); } public function LargeTurretInfoOff2(){ BuildBtn1Info.visible = false; TurretStatsText.visible = false; } public function SplashTurretInfoOff(event:MouseEvent){ SplashTurretInfoOff2(); } public function LargeTurretSelected(DamageLevel){ SelectActive = true; SelectionType = 1; CurrDamage = SelectedObject.NetDmg; CurrDamage = (Math.floor((CurrDamage * 100)) / 100); TurretUpgradeText.text = ("Base Damage: " + CurrDamage); TurretUpgradeText.visible = true; DeSelectBtn.visible = true; if (DamageLevel <= 4){ NextDamage = (CurrDamage + (DamageLevel * LargeTurretDamageUpgrade)); NextDamage = (Math.floor((NextDamage * 100)) / 100); DamageUpgradeCost = (DamageLevel * LargeTurretDamageUpgradeCost); TurretUpgradeBtnText.text = (((("Upgrade to " + NextDamage) + "\nfor ") + DamageUpgradeCost) + " credits"); TurretUpgradeBtnText.visible = true; UpgradeDamageBtn.visible = true; if (Money < DamageUpgradeCost){ UpgradeDamageBtnRed.visible = true; } else { if (Money >= DamageUpgradeCost){ UpgradeDamageBtnRed.visible = false; }; }; } else { if (DamageLevel >= 5){ TurretUpgradeBtnText.visible = false; UpgradeDamageBtn.visible = false; }; }; if (SelectedObject.Element == 1){ SelectedElement.x = LandBtn.x; SelectedElement.y = LandBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 2){ SelectedElement.x = SeaBtn.x; SelectedElement.y = SeaBtn.y; SelectedElement.visible = true; } else { if (SelectedObject.Element == 3){ SelectedElement.x = AirBtn.x; SelectedElement.y = AirBtn.y; SelectedElement.visible = true; }; }; }; ElementFrame.visible = true; LandBtn.visible = true; SeaBtn.visible = true; AirBtn.visible = true; BalanceBtn.visible = true; if (Money < 3){ LandBtnBlock.visible = true; SeaBtnBlock.visible = true; AirBtnBlock.visible = true; BalanceBtnBlock.visible = true; }; TurretSellBtnText.text = (("Sell for " + SelectedObject.SellPrice) + " credits"); TurretSellBtnText.visible = true; SellBtn.visible = true; } public function UpdateCash(Change:int){ Money = (Money + Change); if (Change < 0){ if (Money < LargeTurretCost){ BuildBtn1Red.visible = true; }; if (Money < SmallTurretCost){ BuildBtn2Red.visible = true; }; if (Money < FrostTurretCost){ BuildBtn3Red.visible = true; }; if (Money < SplashTurretCost){ BuildBtn4Red.visible = true; }; if (Money < AuraTurretCost){ BuildBtn5Red.visible = true; }; if (Money < FlameTurretCost){ BuildBtn6Red.visible = true; }; } else { if (Change > 0){ if (Money >= LargeTurretCost){ BuildBtn1Red.visible = false; }; if (Money >= SmallTurretCost){ BuildBtn2Red.visible = false; }; if (Money >= FrostTurretCost){ BuildBtn3Red.visible = false; }; if (Money >= SplashTurretCost){ BuildBtn4Red.visible = false; }; if (Money >= AuraTurretCost){ BuildBtn5Red.visible = false; }; if (Money >= FlameTurretCost){ BuildBtn6Red.visible = false; }; }; }; if (SelectActive == true){ if (SelectionType == 1){ LargeTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 2){ SmallTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 3){ FrostTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 4){ SplashTurretSelected(SelectedObject.DamageLevel); } else { if (SelectionType == 5){ AuraTurretSelected(SelectedObject.DamageMultiplierLevel); } else { if (SelectionType == 6){ FlameTurretSelected(SelectedObject.DamageLevel); }; }; }; }; }; }; if (Money >= 3){ LandBtnBlock.visible = false; SeaBtnBlock.visible = false; AirBtnBlock.visible = false; BalanceBtnBlock.visible = false; } else { if (Money < 3){ if (((!((SelectionType == 3))) && (!((SelectionType == 5))))){ LandBtnBlock.visible = true; SeaBtnBlock.visible = true; AirBtnBlock.visible = true; BalanceBtnBlock.visible = true; }; }; }; }; MoneyText.text = ((("Lives: " + Lives) + "\nCredits: ") + Money); } public function UnMuteSound(event:Event){ Muted = false; GlobalVars.Muted = Muted; PlaySound(ButtonSound, 0); MuteBtn.visible = true; UnMuteBtn.visible = false; } public function StartStopWatch(){ StopWatchTimer = new Timer(1000, 1); StopWatchTimer.addEventListener(TimerEvent.TIMER_COMPLETE, UpdateStopWatch); StopWatchTimer.start(); } public function AuraTurretInfoOff2(){ MouseInfo = false; BuildBtn5Info.visible = false; TurretStatsText.visible = false; } } }//packageSection 75//GameLost (GameLost) package { import flash.events.*; import flash.media.*; import flash.display.*; import flash.text.*; public class GameLost extends MovieClip { public var Channel:SoundChannel; public var Wave:int; public var VolumeAdjustment:SoundTransform; public var Muted:Boolean;// = false public var Password:TextField; public var BackToStartBtn:SimpleButton; public var ButtonSound:sndButton; public var WavePasswordArray:Array; public function GameLost(){ BackToStartBtn = new SimpleButton(new BackToStartBtn_mc(), new BackToStartBtnOver_mc(), new BackToStartBtnDown_mc(), new BackToStartBtn_mc()); VolumeAdjustment = new SoundTransform(); ButtonSound = new sndButton(); Muted = false; super(); Wave = GlobalVars.GameOverWave; WavePasswordArray = GlobalVars.WavePasswordArray; Muted = GlobalVars.Muted; BackToStartBtn.x = 210; BackToStartBtn.y = 400; BackToStartBtn.addEventListener(MouseEvent.CLICK, GoToStart); addChild(BackToStartBtn); Password.multiline = true; Password.text = ((("Password for wave " + Wave) + " is:\n") + WavePasswordArray[Wave]); } public function PlaySound(soundObject:Object){ if (Muted == false){ VolumeAdjustment.volume = 0.5; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function GoToStart(event:Event){ MovieClip(parent).gotoAndStop("Start"); } } }//packageSection 76//GamePlayBtn_mc (GamePlayBtn_mc) package { import flash.display.*; public dynamic class GamePlayBtn_mc extends MovieClip { public function GamePlayBtn_mc(){ super(); } } }//packageSection 77//GamePlayBtnDown_mc (GamePlayBtnDown_mc) package { import flash.display.*; public dynamic class GamePlayBtnDown_mc extends MovieClip { public function GamePlayBtnDown_mc(){ super(); } } }//packageSection 78//GamePlayBtnOver_mc (GamePlayBtnOver_mc) package { import flash.display.*; public dynamic class GamePlayBtnOver_mc extends MovieClip { public function GamePlayBtnOver_mc(){ super(); } } }//packageSection 79//GamePlayHelp_mc (GamePlayHelp_mc) package { import flash.display.*; public dynamic class GamePlayHelp_mc extends MovieClip { public function GamePlayHelp_mc(){ super(); } } }//packageSection 80//GameWon (GameWon) package { import flash.events.*; import flash.media.*; import flash.display.*; import flash.text.*; public class GameWon extends MovieClip { public var Channel:SoundChannel; public var VolumeAdjustment:SoundTransform; public var Muted:Boolean;// = false public var Password:TextField; public var BackToStartBtn:SimpleButton; public var ButtonSound:sndButton; public var WavePasswordArray:Array; public function GameWon(){ BackToStartBtn = new SimpleButton(new BackToStartBtn_mc(), new BackToStartBtnOver_mc(), new BackToStartBtnDown_mc(), new BackToStartBtn_mc()); VolumeAdjustment = new SoundTransform(); ButtonSound = new sndButton(); Muted = false; super(); WavePasswordArray = GlobalVars.WavePasswordArray; Muted = GlobalVars.Muted; BackToStartBtn.x = 210; BackToStartBtn.y = 400; BackToStartBtn.addEventListener(MouseEvent.CLICK, GoToStart); addChild(BackToStartBtn); Password.multiline = true; Password.text = ((("Time spent defeating enemies: " + GlobalVars.TimeSpent) + "\nPassword for wave 49 is:\n") + WavePasswordArray[49]); } public function PlaySound(soundObject:Object){ if (Muted == false){ VolumeAdjustment.volume = 0.5; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function GoToStart(event:Event){ PlaySound(ButtonSound); MovieClip(parent).gotoAndStop("Start"); } } }//packageSection 81//GlobalVars (GlobalVars) package { import flash.display.*; public class GlobalVars extends MovieClip { public static const WavePasswordArray:Array = new Array("!{}", "fail", "tron", "moonraker", "panzerfist", "hawking", "disco", "gnat", "swoosh", "armageddon", "mars", "caravan", "slowpoke", "delivery", "xwing", "blitzkrieg", "swarm", "explorer", "scorpion", "trantor", "deathstar", "crabcake", "holyhover", "locust", "rhinoceros", "uboat", "rowrow", "starfish", "wooly", "dasboat", "rowyourboat", "exxon", "blackhole", "kirov", "careface", "chill", "charm", "floaty", "blackhawk", "flameon", "ondeck", "raptor", "frog", "ghost", "haley", "gecko", "swift", "shade", "goliath", "stinger", "martian"); public static var TimeSpent:String; public static var Muted:Boolean = false; public static var StartWave:int = 1; public static var GameOverWave:int = 0; public function GlobalVars(){ super(); } } }//packageSection 82//Grid (Grid) package { import flash.events.*; import flash.display.*; public class Grid extends MovieClip { public var IsBuilt:Boolean;// = false public var GridNumber:int; public var IsRoad:Boolean;// = false public var BuildType:int;// = 0 private var MouseDown:Boolean;// = false public var BuildID:int;// = 0 private var MouseOver:Boolean;// = false public function Grid(Num:int){ IsRoad = false; IsBuilt = false; BuildType = 0; BuildID = 0; MouseDown = false; MouseOver = false; super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 10, frame11, 14, frame15); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.MOUSE_UP, OnMouseUp); GridNumber = Num; } public function OnMouseUp(event:MouseEvent){ var i:*; var j:*; var k:*; var l:*; if (MovieClip(parent).GameLoaded == true){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; this.gotoAndStop(1); i = (MovieClip(parent).GridArray.length - 1); while (i >= 0) { if (MovieClip(parent).GridArray[i] == this){ j = (i + 24); k = (i + 1); l = (i + 25); if (MovieClip(parent).GridArray[j] != undefined){ MovieClip(parent).GridArray[j].MultiGridMouseOut(); }; if (MovieClip(parent).GridArray[k] != undefined){ MovieClip(parent).GridArray[k].MultiGridMouseOut(); }; if (MovieClip(parent).GridArray[l] != undefined){ MovieClip(parent).GridArray[l].MultiGridMouseOut(); }; break; }; i--; }; if ((((IsRoad == false)) && ((IsBuilt == false)))){ MouseDown = false; if (MouseOver == true){ if (MovieClip(parent).BuildMode == 1){ MovieClip(parent).DrawLargeTurret(this.x, this.y, this); } else { if (MovieClip(parent).BuildMode == 2){ MovieClip(parent).DrawSmallTurret(this.x, this.y, this); } else { if (MovieClip(parent).BuildMode == 3){ MovieClip(parent).DrawFrostTurret(this.x, this.y, this); } else { if (MovieClip(parent).BuildMode == 4){ MovieClip(parent).DrawSplashTurret(this.x, this.y, this); } else { if (MovieClip(parent).BuildMode == 5){ MovieClip(parent).DrawAuraTurret(this.x, this.y, this); } else { if (MovieClip(parent).BuildMode == 6){ MovieClip(parent).DrawFlameTurret(this.x, this.y, this); }; }; }; }; }; }; MovieClip(parent).EndBuildmode(); } else { if (MouseOver == false){ this.gotoAndStop(1); }; }; }; }; } public function MakeRoad(){ IsRoad = true; this.gotoAndStop(15); } public function SetBuilt(Type, ID){ IsBuilt = true; BuildID = ID; BuildType = Type; this.gotoAndStop(1); } function frame3(){ stop(); } function frame15(){ stop(); } function frame1(){ stop(); } function frame2(){ stop(); } public function OnMouseOut(event:MouseEvent){ var LastRow:Boolean; var i:*; var j:*; var k:*; var l:*; if (MovieClip(parent).GameLoaded == true){ if ((((IsRoad == false)) && ((IsBuilt == false)))){ MouseOver = false; this.gotoAndStop(1); LastRow = false; if (GridNumber > 552){ LastRow = true; }; if ((((((MovieClip(parent).BuildMode == 1)) || ((MovieClip(parent).BuildMode == 3)))) || ((MovieClip(parent).BuildMode == 4)))){ if (LastRow == false){ i = (MovieClip(parent).GridArray.length - 1); while (i >= 0) { if (MovieClip(parent).GridArray[i] == this){ j = (i + 24); k = (i + 1); l = (i + 25); MovieClip(parent).GridArray[j].MultiGridMouseOut(); MovieClip(parent).GridArray[k].MultiGridMouseOut(); MovieClip(parent).GridArray[l].MultiGridMouseOut(); break; }; i--; }; }; }; }; }; } function frame11(){ stop(); } public function MultiGridMouseOut(){ if (MovieClip(parent).GameLoaded == true){ if ((((IsRoad == false)) && ((IsBuilt == false)))){ MouseOver = false; this.gotoAndStop(1); }; }; } public function OnMouseOver(event:MouseEvent){ var LastRow:Boolean; var i:*; var j:*; var k:*; var l:*; if (MovieClip(parent).GameLoaded == true){ if ((((((IsRoad == false)) && ((IsBuilt == false)))) && ((MovieClip(parent).BuildModeActive == true)))){ MouseOver = true; this.gotoAndStop(2); LastRow = false; if (GridNumber > 552){ LastRow = true; }; if (LastRow == false){ if ((((((MovieClip(parent).BuildMode == 1)) || ((MovieClip(parent).BuildMode == 3)))) || ((MovieClip(parent).BuildMode == 4)))){ i = (MovieClip(parent).GridArray.length - 1); while (i >= 0) { if (MovieClip(parent).GridArray[i] == this){ j = (i + 24); k = (i + 1); l = (i + 25); MovieClip(parent).GridArray[j].MultiGridMouseOver(); MovieClip(parent).GridArray[k].MultiGridMouseOver(); MovieClip(parent).GridArray[l].MultiGridMouseOver(); break; }; i--; }; }; } else { if (LastRow == true){ if ((((MovieClip(parent).BuildMode == 1)) || ((MovieClip(parent).BuildMode == 4)))){ this.gotoAndStop(3); }; }; }; }; }; } public function MultiGridMouseOver(){ if (MovieClip(parent).GameLoaded == true){ if ((((IsRoad == false)) && ((IsBuilt == false)))){ MouseOver = true; this.gotoAndStop(2); }; }; } } }//packageSection 83//Health_mc (Health_mc) package { import flash.display.*; public dynamic class Health_mc extends MovieClip { public function Health_mc(){ super(); } } }//packageSection 84//Healthbar_mc (Healthbar_mc) package { import flash.display.*; import flash.text.*; public dynamic class Healthbar_mc extends MovieClip { public var HealthAmount:Health_mc; public var HealthText:TextField; public function Healthbar_mc(){ super(); } } }//packageSection 85//Help (Help) package { import flash.events.*; import flash.media.*; import flash.display.*; import flash.text.*; import flash.net.*; public class Help extends MovieClip { public var Channel:SoundChannel; public var LandBtn:SimpleButton; public var GamePlayBtn:SimpleButton; public var VolumeAdjustment:SoundTransform; public var Muted:Boolean;// = false public var SMenu; public var TurretHelp; public var ObjectiveBtn:SimpleButton; public var BackgroundSymbols; public var LocalData:SharedObject; public var HelpFrame; public var CurrentHelp:int;// = 0 public var BuildBtn1:SimpleButton; public var BuildBtn3:SimpleButton; public var BuildBtn4:SimpleButton; public var BuildBtn5:SimpleButton; public var BuildBtn6:SimpleButton; public var BuildBtn2:SimpleButton; public var BackBtn:SimpleButton; public var AirBtn:SimpleButton; public var SeaBtn:SimpleButton; public var ButtonSound:sndButton; public var ElementBtn:SimpleButton; public function Help(){ BackgroundSymbols = new LargeSymbols(); SMenu = new HelpMenu(); HelpFrame = new HelpFrame_mc(); BackBtn = new SimpleButton(new BackBtn_mc(), new BackBtnOver_mc(), new BackBtnDown_mc(), new BackBtn_mc()); ObjectiveBtn = new SimpleButton(new ObjectiveBtn_mc(), new ObjectiveBtnOver_mc(), new ObjectiveBtnDown_mc(), new ObjectiveBtn_mc()); GamePlayBtn = new SimpleButton(new GamePlayBtn_mc(), new GamePlayBtnOver_mc(), new GamePlayBtnDown_mc(), new GamePlayBtn_mc()); BuildBtn1 = new SimpleButton(new BuildBtn1_mc(), new BuildBtn1_mc(), new BuildBtn1Down_mc(), new BuildBtn1_mc()); BuildBtn2 = new SimpleButton(new BuildBtn2_mc(), new BuildBtn2_mc(), new BuildBtn2Down_mc(), new BuildBtn2_mc()); BuildBtn3 = new SimpleButton(new BuildBtn3_mc(), new BuildBtn3_mc(), new BuildBtn3Down_mc(), new BuildBtn3_mc()); BuildBtn4 = new SimpleButton(new BuildBtn4_mc(), new BuildBtn4_mc(), new BuildBtn4Down_mc(), new BuildBtn4_mc()); BuildBtn5 = new SimpleButton(new BuildBtn5_mc(), new BuildBtn5_mc(), new BuildBtn5Down_mc(), new BuildBtn5_mc()); BuildBtn6 = new SimpleButton(new BuildBtn6_mc(), new BuildBtn6_mc(), new BuildBtn6Down_mc(), new BuildBtn6_mc()); ElementBtn = new SimpleButton(new ElementBtn_mc(), new ElementBtnOver_mc(), new ElementBtnDown_mc(), new ElementBtn_mc()); LandBtn = new SimpleButton(new TypeLandBtn_mc(), new TypeLandBtn_mc(), new TypeLandBtnDown_mc(), new TypeLandBtn_mc()); SeaBtn = new SimpleButton(new TypeSeaBtn_mc(), new TypeSeaBtn_mc(), new TypeSeaBtnDown_mc(), new TypeSeaBtn_mc()); AirBtn = new SimpleButton(new TypeAirBtn_mc(), new TypeAirBtn_mc(), new TypeAirBtnDown_mc(), new TypeAirBtn_mc()); TurretHelp = new TurretHelp_mc(); CurrentHelp = 0; VolumeAdjustment = new SoundTransform(); ButtonSound = new sndButton(); Muted = false; super(); addChild(BackgroundSymbols); SMenu.x = 30; addChild(SMenu); HelpFrame.x = 270; HelpFrame.y = 20; addChild(HelpFrame); TurretHelp.x = HelpFrame.x; TurretHelp.y = HelpFrame.y; TurretHelp.gotoAndStop(13); TurretHelp.stop(); addChild(TurretHelp); ObjectiveBtn.x = 40; ObjectiveBtn.y = 145; ObjectiveBtn.addEventListener(MouseEvent.CLICK, GoToObjectiveHelp); addChild(ObjectiveBtn); GamePlayBtn.x = (ObjectiveBtn.x + ObjectiveBtn.width); GamePlayBtn.y = ObjectiveBtn.y; GamePlayBtn.addEventListener(MouseEvent.CLICK, GoToGamePlayHelp); addChild(GamePlayBtn); BuildBtn1.width = 33; BuildBtn1.height = 33; BuildBtn1.x = 58; BuildBtn1.y = 250; BuildBtn1.addEventListener(MouseEvent.CLICK, GoToLargeTurretHelp); addChild(BuildBtn1); BuildBtn2.width = BuildBtn1.width; BuildBtn2.height = BuildBtn1.height; BuildBtn2.x = (BuildBtn1.x + BuildBtn1.width); BuildBtn2.y = BuildBtn1.y; BuildBtn2.addEventListener(MouseEvent.CLICK, GoToSmallTurretHelp); addChild(BuildBtn2); BuildBtn3.width = BuildBtn1.width; BuildBtn3.height = BuildBtn1.height; BuildBtn3.x = (BuildBtn1.x + (2 * BuildBtn1.width)); BuildBtn3.y = BuildBtn1.y; BuildBtn3.addEventListener(MouseEvent.CLICK, GoToFrostTurretHelp); addChild(BuildBtn3); BuildBtn4.width = BuildBtn1.width; BuildBtn4.height = BuildBtn1.height; BuildBtn4.x = (BuildBtn1.x + (3 * BuildBtn1.width)); BuildBtn4.y = BuildBtn1.y; BuildBtn4.addEventListener(MouseEvent.CLICK, GoToSplashTurretHelp); addChild(BuildBtn4); BuildBtn5.width = BuildBtn1.width; BuildBtn5.height = BuildBtn1.height; BuildBtn5.x = (BuildBtn1.x + (4 * BuildBtn1.width)); BuildBtn5.y = BuildBtn1.y; BuildBtn5.addEventListener(MouseEvent.CLICK, GoToAuraTurretHelp); addChild(BuildBtn5); BuildBtn6.width = BuildBtn1.width; BuildBtn6.height = BuildBtn1.height; BuildBtn6.x = (BuildBtn1.x + (5 * BuildBtn1.width)); BuildBtn6.y = BuildBtn1.y; BuildBtn6.addEventListener(MouseEvent.CLICK, GoToFlameTurretHelp); addChild(BuildBtn6); ElementBtn.x = 40; ElementBtn.y = 325; ElementBtn.addEventListener(MouseEvent.CLICK, GoToElementHelp); addChild(ElementBtn); LandBtn.x = (ElementBtn.x + ElementBtn.width); LandBtn.y = ElementBtn.y; LandBtn.addEventListener(MouseEvent.CLICK, GoToLandHelp); addChild(LandBtn); SeaBtn.x = ((ElementBtn.x + ElementBtn.width) + LandBtn.width); SeaBtn.y = ElementBtn.y; SeaBtn.addEventListener(MouseEvent.CLICK, GoToSeaHelp); addChild(SeaBtn); AirBtn.x = (((ElementBtn.x + ElementBtn.width) + LandBtn.width) + SeaBtn.width); AirBtn.y = ElementBtn.y; AirBtn.addEventListener(MouseEvent.CLICK, GoToAirHelp); addChild(AirBtn); BackBtn.x = 140; BackBtn.y = 450; BackBtn.addEventListener(MouseEvent.CLICK, BackToStart); addChild(BackBtn); } public function GoToElementHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 7){ TurretHelp.gotoAndStop(7); TurretHelp.visible = true; CurrentHelp = 7; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToSeaHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 9){ TurretHelp.gotoAndStop(9); TurretHelp.visible = true; CurrentHelp = 9; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToFrostTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 3){ TurretHelp.gotoAndStop(3); TurretHelp.visible = true; CurrentHelp = 3; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function PlaySound(soundObject:Object){ if (Muted == false){ VolumeAdjustment.volume = 0.5; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function GoToLandHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 8){ TurretHelp.gotoAndStop(8); TurretHelp.visible = true; CurrentHelp = 8; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToObjectiveHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 11){ TurretHelp.gotoAndStop(11); TurretHelp.visible = true; CurrentHelp = 11; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function BackToStart(event:Event){ PlaySound(ButtonSound); MovieClip(parent).gotoAndStop("Start"); } public function GoToAuraTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 5){ TurretHelp.gotoAndStop(5); TurretHelp.visible = true; CurrentHelp = 5; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToAirHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 10){ TurretHelp.gotoAndStop(10); TurretHelp.visible = true; CurrentHelp = 10; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToFlameTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 6){ TurretHelp.gotoAndStop(6); TurretHelp.visible = true; CurrentHelp = 6; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToSmallTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 2){ TurretHelp.gotoAndStop(2); TurretHelp.visible = true; CurrentHelp = 2; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToLargeTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 1){ TurretHelp.gotoAndStop(1); TurretHelp.visible = true; CurrentHelp = 1; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToSplashTurretHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 4){ TurretHelp.gotoAndStop(4); TurretHelp.visible = true; CurrentHelp = 4; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } public function GoToGamePlayHelp(event:Event){ PlaySound(ButtonSound); if (CurrentHelp != 12){ TurretHelp.gotoAndStop(12); TurretHelp.visible = true; CurrentHelp = 12; } else { TurretHelp.visible = false; CurrentHelp = 0; }; } } }//packageSection 86//HelpBtn_mc (HelpBtn_mc) package { import flash.display.*; public dynamic class HelpBtn_mc extends MovieClip { public function HelpBtn_mc(){ super(); } } }//packageSection 87//HelpBtnDown_mc (HelpBtnDown_mc) package { import flash.display.*; public dynamic class HelpBtnDown_mc extends MovieClip { public function HelpBtnDown_mc(){ super(); } } }//packageSection 88//HelpBtnOver_mc (HelpBtnOver_mc) package { import flash.display.*; public dynamic class HelpBtnOver_mc extends MovieClip { public function HelpBtnOver_mc(){ super(); } } }//packageSection 89//HelpFrame_mc (HelpFrame_mc) package { import flash.display.*; public dynamic class HelpFrame_mc extends MovieClip { public function HelpFrame_mc(){ super(); } } }//packageSection 90//HelpMain (HelpMain) package { import flash.display.*; public dynamic class HelpMain extends MovieClip { public function HelpMain(){ super(); } } }//packageSection 91//HelpMenu (HelpMenu) package { import flash.display.*; public dynamic class HelpMenu extends MovieClip { public function HelpMenu(){ super(); } } }//packageSection 92//Intro (Intro) package { import flash.events.*; import flash.display.*; import flash.utils.*; public dynamic class Intro extends MovieClip { public var IntroTimer:Timer; public function Intro(){ super(); addFrameScript(0, frame1, 41, frame42); } function frame1(){ } public function FinishIntro(event:TimerEvent){ MovieClip(root).gotoAndStop("Start"); } function frame42(){ stop(); IntroTimer = new Timer(5000, 1); IntroTimer.addEventListener(TimerEvent.TIMER_COMPLETE, FinishIntro); IntroTimer.start(); } } }//packageSection 93//LandBtn_mc (LandBtn_mc) package { import flash.display.*; public dynamic class LandBtn_mc extends MovieClip { public function LandBtn_mc(){ super(); } } }//packageSection 94//LandBtnDown_mc (LandBtnDown_mc) package { import flash.display.*; public dynamic class LandBtnDown_mc extends MovieClip { public function LandBtnDown_mc(){ super(); } } }//packageSection 95//LandBtnOver_mc (LandBtnOver_mc) package { import flash.display.*; public dynamic class LandBtnOver_mc extends MovieClip { public function LandBtnOver_mc(){ super(); } } }//packageSection 96//LandHelpHelp_mc (LandHelpHelp_mc) package { import flash.display.*; public dynamic class LandHelpHelp_mc extends MovieClip { public function LandHelpHelp_mc(){ super(); } } }//packageSection 97//LandInfo (LandInfo) package { import flash.display.*; public dynamic class LandInfo extends MovieClip { public function LandInfo(){ super(); } } }//packageSection 98//LargeSelect (LargeSelect) package { import flash.display.*; public dynamic class LargeSelect extends MovieClip { public function LargeSelect(){ super(); } } }//packageSection 99//LargeSymbols (LargeSymbols) package { import flash.display.*; public dynamic class LargeSymbols extends MovieClip { public function LargeSymbols(){ super(); } } }//packageSection 100//LargeTurret (LargeTurret) package { import fl.motion.*; import flash.events.*; import flash.display.*; import flash.utils.*; import flash.filters.*; public class LargeTurret extends MovieClip { private var CritterDistanceX; public var AuraLinkID:int;// = 0 private var len; public var Element:int;// = 0 public var TurretTop; public var Range:int; public var DamageLevel:int;// = 1 public var Grid4num; public var NetDmg:Number; private var Direction; private var i; public var TurretType;// = 1 public var FiringSpeed:int; public var TurrID:int; public var AuraLinked:Boolean;// = false private var RangeIndicator; private var RangeVisible:Boolean;// = false public var PreAuraDmg:Number; public var Gridnum; public var FiringTimer:Timer; public var BaseDmg; public var Grid2num; public var DamageMultiplier:Number;// = 0 public var Selected:Boolean;// = false public var filterArray:Array; public var SellPrice:int; public var Grid3num; private var CritterDistanceY; public var AuraID:int;// = 0 private var FireReady:Boolean;// = false private var MouseOver:Boolean;// = false public function LargeTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell){ MouseOver = false; RangeVisible = false; FireReady = false; DamageLevel = 1; Selected = false; AuraLinkID = 0; TurretType = 1; AuraLinked = false; AuraID = 0; DamageMultiplier = 0; filterArray = new Array(); Element = 0; super(); this.addEventListener(Event.ENTER_FRAME, TurretLoop); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); TurretTop = new LargeTurretTop(); addChild(TurretTop); FiringSpeed = Speed; BaseDmg = Damage; PreAuraDmg = BaseDmg; NetDmg = BaseDmg; Range = TurretRange; TurrID = ID; Gridnum = GridLoc; Grid2num = (GridLoc + 24); Grid3num = (GridLoc + 1); Grid4num = (GridLoc + 25); SellPrice = Sell; FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); } public function DamageAura(DmgMulti){ var dmgfilter:GlowFilter; if (DamageMultiplier == 0){ dmgfilter = new GlowFilter(MovieClip(parent).DmgAuraColor, 0.7); filterArray.push(dmgfilter); this.TurretTop.filters = filterArray; }; DamageMultiplier = DmgMulti; CalcNewDmg(); } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 1, this); MovieClip(parent).LargeTurretInfoOff2(); MovieClip(parent).LargeTurretSelected(DamageLevel); }; } public function CalcNewDmg(){ if (DamageLevel == 1){ NetDmg = BaseDmg; } else { if (DamageLevel == 2){ NetDmg = (BaseDmg + MovieClip(parent).LargeTurretDamageUpgrade); } else { if (DamageLevel == 3){ NetDmg = (BaseDmg + (3 * MovieClip(parent).LargeTurretDamageUpgrade)); } else { if (DamageLevel == 4){ NetDmg = (BaseDmg + (6 * MovieClip(parent).LargeTurretDamageUpgrade)); } else { if (DamageLevel == 5){ NetDmg = (BaseDmg + (10 * MovieClip(parent).LargeTurretDamageUpgrade)); }; }; }; }; }; NetDmg = (NetDmg * (1 + (DamageMultiplier / 10))); PreAuraDmg = (NetDmg / (1 + (DamageMultiplier / 10))); SellPrice = (SellPrice + ((DamageLevel - 1) * 5)); } public function SellTurret(){ this.removeEventListener(Event.ENTER_FRAME, TurretLoop); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function UnLinkAura(){ AuraLinked = false; AuraID = 0; filterArray = new Array(); this.filters = new Array(); this.TurretTop.filters = new Array(); DamageMultiplier = 0; CalcNewDmg(); } public function SetElement(newElement:int){ var ElementArray:Array; var Efilter1:GlowFilter; var Efilter2:GlowFilter; var ETint:Color; Element = newElement; ElementArray = new Array(); Efilter1 = new GlowFilter(); Efilter1.alpha = 0.7; Efilter1.inner = true; Efilter1.strength = 2; Efilter1.blurX = 3; Efilter1.blurY = 3; Efilter2 = new GlowFilter(); Efilter2.alpha = 0.7; Efilter2.inner = false; Efilter2.strength = 2; Efilter2.blurX = 3; Efilter2.blurY = 3; ETint = new Color(); if (Element == 0){ Efilter1.color = 0; Efilter1.alpha = 0; Efilter2.color = 0; Efilter2.alpha = 0; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0, 0); this.transform.colorTransform = ETint; } else { if (Element == 1){ Efilter1.color = 0xFF00; Efilter2.color = 0xFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF00, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 2){ Efilter1.color = 0xFF; Efilter2.color = 0xFF; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 3){ Efilter1.color = 0xFFFF00; Efilter2.color = 0xFFFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFFFF00, 0.1); this.transform.colorTransform = ETint; }; }; }; }; } private function SetReady(event:TimerEvent){ FireReady = true; } public function OnMouseOut(event:MouseEvent){ MouseOver = false; MovieClip(parent).LargeTurretInfoOff2(); if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function LinkAura(Auraid, DmgMulti:int){ var filterArray:Array; var gfilter:GlowFilter; if (AuraLinked == false){ AuraLinked = true; AuraID = Auraid; filterArray = new Array(); gfilter = new GlowFilter(MovieClip(parent).AuraLinkedColor, 0.8); filterArray.push(gfilter); this.TurretTop.filters = filterArray; }; if (DamageMultiplier < DmgMulti){ DamageAura(DmgMulti); }; } public function TurretLoop(event:Event){ if (MovieClip(parent).Paused == false){ len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ Direction = Math.atan2(CritterDistanceY, CritterDistanceX); TurretTop.rotation = (Math.round(((Direction * 180) / Math.PI)) - 90); break; }; i++; }; }; if (FireReady == true){ TurretTop.gotoAndPlay("Fire"); FireTurret(); }; }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).LargeTurretInfoOn2(true, SellPrice, Range, NetDmg, Element); }; } public function FireTurret(){ var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ MovieClip(parent).FireBullet(1, NetDmg, this.x, this.y, i, 0, 0, Element); FiringTimer.reset(); FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); FireReady = false; TurretTop.gotoAndPlay("Inert"); break; }; i++; }; }; } } }//packageSection 101//LargeTurretHelp_mc (LargeTurretHelp_mc) package { import flash.display.*; public dynamic class LargeTurretHelp_mc extends MovieClip { public function LargeTurretHelp_mc(){ super(); } } }//packageSection 102//LargeTurretImg (LargeTurretImg) package { import flash.display.*; public dynamic class LargeTurretImg extends MovieClip { public function LargeTurretImg(){ super(); } } }//packageSection 103//LargeTurretInfo (LargeTurretInfo) package { import flash.display.*; public dynamic class LargeTurretInfo extends MovieClip { public function LargeTurretInfo(){ super(); } } }//packageSection 104//LargeTurretTop (LargeTurretTop) package { import flash.display.*; public dynamic class LargeTurretTop extends MovieClip { public function LargeTurretTop(){ super(); addFrameScript(34, frame35); } function frame35(){ stop(); } } }//packageSection 105//Link_mc (Link_mc) package { import flash.display.*; public dynamic class Link_mc extends MovieClip { public function Link_mc(){ super(); } } }//packageSection 106//Loading (Loading) package { import flash.events.*; import flash.display.*; import flash.text.*; public class Loading extends MovieClip { public var LoadingFormat:TextFormat; public var LoadingBar; public var LoadingText; public function Loading(){ LoadingFormat = new TextFormat(); LoadingText = new TextField(); LoadingBar = new LoadingBar_mc(); super(); LoadingFormat.font = "Calibri"; LoadingFormat.size = 30; LoadingFormat.bold = true; LoadingFormat.align = "center"; LoadingText.defaultTextFormat = LoadingFormat; LoadingText.text = "Progress"; LoadingText.x = 160; LoadingText.y = 360; LoadingText.height = 40; LoadingText.width = 300; LoadingText.textColor = 0xFFFFFF; LoadingText.selectable = false; LoadingText.multiline = false; addChild(LoadingText); LoadingBar.x = 130; LoadingBar.y = 410; LoadingBar.scaleX = 0; addChild(LoadingBar); addEventListener(Event.ENTER_FRAME, loadProgress); } public function loadProgress(event:Event){ var movieBytesLoaded:int; var movieBytesTotal:int; var OnePercent:Number; var ProgressPercent:Number; movieBytesLoaded = this.root.loaderInfo.bytesLoaded; movieBytesTotal = this.root.loaderInfo.bytesTotal; OnePercent = (movieBytesTotal / 100); ProgressPercent = Math.floor((movieBytesLoaded / OnePercent)); LoadingText.text = (("Progress: " + ProgressPercent) + "%"); LoadingBar.scaleX = (ProgressPercent / 100); if (movieBytesLoaded >= movieBytesTotal){ removeEventListener(Event.ENTER_FRAME, loadProgress); MovieClip(root).gotoAndStop("Intro"); }; } } }//packageSection 107//LoadingBar_mc (LoadingBar_mc) package { import flash.display.*; public dynamic class LoadingBar_mc extends MovieClip { public function LoadingBar_mc(){ super(); } } }//packageSection 108//Logo (Logo) package { import flash.display.*; public dynamic class Logo extends MovieClip { public function Logo(){ super(); } } }//packageSection 109//MapBackground (MapBackground) package { import flash.display.*; public dynamic class MapBackground extends MovieClip { public function MapBackground(){ super(); } } }//packageSection 110//Mob (Mob) package { import fl.motion.*; import flash.events.*; import flash.media.*; import flash.display.*; import flash.utils.*; import flash.text.*; import flash.filters.*; public class Mob extends MovieClip { public var MobID:int; public var Healthbar; private var Speed:Number; public var Anim:MovieClip; private var CurrentTarget:uint;// = 0 private var Ywaypoints:Array; public var VolumeAdjustment:SoundTransform; public var Health:Number; public var ShownHealth:Number; public var Selected:Boolean;// = false private var MaxHealth:Number; public var ExplodeSound:sndExplosion; public var Frozen:Boolean; public var WaveHealth:int; public var Element:int; public var Channel:SoundChannel; public var Mob06:MovieClip; private var Explosion; private var Xwaypoints:Array; private var Exploding:Boolean;// = false private var FreezeCounter:int;// = -1 private var ExplosionTimer:Timer; public var Value:int; private var FreezeDuration:int; public var waypoint_x; public var waypoint_y; private var ExplosionStarted:Boolean;// = false private var BaseSpeed:Number; public function Mob(MobSpeed:Number, MobHealth:Number, MobValue:int, ID:int, MobElement:int){ CurrentTarget = 0; Exploding = false; waypoint_x = new Array(500, 500, 320, 320, 220, 220, 580, 580, 220, 220, 400, 400, 500, 500, 140); waypoint_y = new Array(60, 100, 100, 60, 60, 180, 180, 440, 440, 340, 340, 360, 360, 260, 260); FreezeCounter = -1; Explosion = new Explosion_mc(); ExplosionStarted = false; Selected = false; VolumeAdjustment = new SoundTransform(); ExplodeSound = new sndExplosion(); super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40, 40, frame41, 41, frame42, 42, frame43, 43, frame44, 44, frame45, 45, frame46, 46, frame47, 47, frame48, 48, frame49, 49, frame50); this.addEventListener(Event.ENTER_FRAME, MoveMob); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); WaveHealth = MobHealth; Speed = MobSpeed; BaseSpeed = MobSpeed; Health = MobHealth; MaxHealth = MobHealth; Value = MobValue; MobID = ID; Element = MobElement; Healthbar = new Healthbar_mc(); Healthbar.mouseEnabled = false; this.addChild(Healthbar); Healthbar.HealthText.text = ""; } public function PlaySound(soundObject:Object){ if (MovieClip(parent).Muted == false){ VolumeAdjustment.volume = 1; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function UpdateExplosion(event:TimerEvent){ Explosion.alpha = (Explosion.alpha + 0.3); Explosion.scaleX = (Explosion.scaleX + 0.3); Explosion.scaleY = (Explosion.scaleY + 0.3); Explosion.rotation = (Math.random() * 360); this.alpha = (this.alpha - 0.2); } function frame10(){ stop(); } function frame14(){ stop(); } function frame16(){ stop(); } function frame15(){ stop(); } function frame18(){ stop(); } function frame2(){ stop(); } function frame3(){ stop(); } function frame4(){ stop(); } function frame5(){ stop(); } function frame6(){ Mob06.addEventListener(Event.ENTER_FRAME, Mob06Loop); stop(); } function frame7(){ stop(); } function frame1(){ stop(); } function frame19(){ stop(); } function frame23(){ stop(); } function frame11(){ stop(); } function frame12(){ stop(); } function frame13(){ stop(); } function frame9(){ stop(); } function frame17(){ stop(); } function frame24(){ stop(); } function frame25(){ stop(); } function frame21(){ stop(); } function frame26(){ stop(); } function frame29(){ stop(); } function frame22(){ stop(); } function frame36(){ stop(); } function frame30(){ stop(); } function frame35(){ stop(); } function frame8(){ stop(); } function frame38(){ stop(); } function frame31(){ stop(); } function frame32(){ stop(); } function frame34(){ stop(); } function frame27(){ stop(); } function frame20(){ stop(); } function frame33(){ stop(); } function frame39(){ stop(); } function frame28(){ stop(); } function frame45(){ stop(); } function frame46(){ stop(); } function frame40(){ stop(); } public function Mob06Loop(event:Event){ Mob06.rotation = (Mob06.rotation + 5); } function frame37(){ stop(); } function frame47(){ stop(); } function frame48(){ stop(); } function frame42(){ stop(); } function frame49(){ stop(); } function frame41(){ stop(); } public function RemoveCritter(Dead){ if (Dead == false){ if ((((((((((MovieClip(parent).WaveCounter == 10)) || ((MovieClip(parent).WaveCounter == 20)))) || ((MovieClip(parent).WaveCounter == 30)))) || ((MovieClip(parent).WaveCounter == 40)))) || ((MovieClip(parent).WaveCounter == 50)))){ MovieClip(parent).Lives = (MovieClip(parent).Lives - 3); } else { MovieClip(parent).Lives = (MovieClip(parent).Lives - 1); }; MovieClip(parent).MoneyText.text = ((("Lives: " + MovieClip(parent).Lives) + "\nCredits: ") + MovieClip(parent).Money); if (MovieClip(parent).Lives <= 0){ MovieClip(parent).GameOver(); }; }; if (MovieClip(parent).WaveCounter == MovieClip(parent).MobStatArray.length){ MovieClip(parent).GameWon(); } else { removeEventListener(Event.ENTER_FRAME, MoveMob); MovieClip(parent).removeCritter(this); parent.removeChild(this); }; } function frame43(){ stop(); } function frame44(){ stop(); } function frame50(){ stop(); } public function RunExplosion(){ Exploding = true; ExplosionTimer = new Timer(10, 5); ExplosionTimer.addEventListener(TimerEvent.TIMER, UpdateExplosion); ExplosionTimer.addEventListener(TimerEvent.TIMER_COMPLETE, FinishExplosion); Explosion.x = 0; Explosion.y = 0; Explosion.alpha = 0.5; Explosion.scaleX = 0.5; Explosion.scaleY = 0.5; this.addChild(Explosion); PlaySound(ExplodeSound); ExplosionTimer.start(); } public function HitCritter(Damage:Number, ElementDmg:int){ var NetDamage:Number; if (Exploding == false){ NetDamage = Damage; if (Element == ElementDmg){ NetDamage = (NetDamage * 1.5); } else { if ((((Element == 1)) && ((ElementDmg == 2)))){ NetDamage = (NetDamage * 0.75); } else { if ((((Element == 2)) && ((ElementDmg == 3)))){ NetDamage = (NetDamage * 0.75); } else { if ((((Element == 3)) && ((ElementDmg == 1)))){ NetDamage = (NetDamage * 0.75); }; }; }; }; Health = (Health - NetDamage); if (Selected == true){ ShownHealth = (Math.round((Health * 10)) / 10); Healthbar.HealthText.text = ((ShownHealth + "/") + WaveHealth); }; if (Health >= 0){ Healthbar.HealthAmount.scaleX = (Healthbar.HealthAmount.scaleX - (NetDamage / MaxHealth)); }; if (Health <= 0.1){ MovieClip(parent).UpdateCash(Value); RemoveCritter(true); }; }; } public function EndFreeze(){ var cTint:Color; Frozen = false; Speed = BaseSpeed; FreezeCounter = -1; cTint = new Color(); cTint.setTint(0, 0); this.transform.colorTransform = cTint; } public function MoveMob(event:Event){ var dist_x:*; var dist_y:*; var angle:*; if (MovieClip(parent).Paused == true){ if (Anim != null){ Anim.stop(); }; } else { if (MovieClip(parent).Paused == false){ if (Anim != null){ Anim.play(); }; if (Frozen == true){ FreezeCounter++; }; if (FreezeCounter == FreezeDuration){ EndFreeze(); }; if (this.x < 200){ if (ExplosionStarted == false){ ExplosionStarted = true; RunExplosion(); }; }; dist_x = (waypoint_x[CurrentTarget] - this.x); dist_y = (waypoint_y[CurrentTarget] - this.y); if ((((Math.abs(dist_x) < Speed)) && ((Math.abs(dist_y) < Speed)))){ this.x = waypoint_x[CurrentTarget]; this.y = waypoint_y[CurrentTarget]; CurrentTarget++; }; angle = Math.atan2(dist_y, dist_x); this.x = (this.x + (Speed * Math.cos(angle))); this.y = (this.y + (Speed * Math.sin(angle))); this.rotation = (((angle / Math.PI) * 180) - 90); Healthbar.rotation = -((((angle / Math.PI) * 180) - 90)); }; }; } public function DeSelectMe(){ Healthbar.HealthText.text = ""; Selected = false; } public function ApplyFreeze(Duration:int){ var cTint:Color; FreezeDuration = Duration; if (Frozen == false){ Frozen = true; Speed = (Speed / 2); cTint = new Color(); cTint.setTint(0xFF, 0.6); this.transform.colorTransform = cTint; } else { if (Frozen == true){ FreezeCounter = 0; }; }; } public function OnMouseOut(event:Event){ if (Selected == false){ Healthbar.HealthText.text = ""; }; } public function FinishExplosion(event:TimerEvent){ RemoveCritter(false); } public function SelectMe(event:Event){ if (MovieClip(parent).MobSelected == true){ MovieClip(parent).DeSelectCritter(this); }; Selected = true; MovieClip(parent).MobSelected = true; } public function OnMouseOver(event:Event){ ShownHealth = (Math.round((Health * 10)) / 10); Healthbar.HealthText.text = ((ShownHealth + "/") + WaveHealth); } } }//packageSection 111//MuteBtn_mc (MuteBtn_mc) package { import flash.display.*; public dynamic class MuteBtn_mc extends MovieClip { public function MuteBtn_mc(){ super(); } } }//packageSection 112//MuteBtnDown_mc (MuteBtnDown_mc) package { import flash.display.*; public dynamic class MuteBtnDown_mc extends MovieClip { public function MuteBtnDown_mc(){ super(); } } }//packageSection 113//MuteBtnOver_mc (MuteBtnOver_mc) package { import flash.display.*; public dynamic class MuteBtnOver_mc extends MovieClip { public function MuteBtnOver_mc(){ super(); } } }//packageSection 114//NextWaveBtn_mc (NextWaveBtn_mc) package { import flash.display.*; public dynamic class NextWaveBtn_mc extends MovieClip { public function NextWaveBtn_mc(){ super(); } } }//packageSection 115//NextWaveBtnDown_mc (NextWaveBtnDown_mc) package { import flash.display.*; public dynamic class NextWaveBtnDown_mc extends MovieClip { public function NextWaveBtnDown_mc(){ super(); } } }//packageSection 116//NextWaveBtnOver_mc (NextWaveBtnOver_mc) package { import flash.display.*; public dynamic class NextWaveBtnOver_mc extends MovieClip { public function NextWaveBtnOver_mc(){ super(); } } }//packageSection 117//NextWaveInfoBtn_mc (NextWaveInfoBtn_mc) package { import flash.display.*; public dynamic class NextWaveInfoBtn_mc extends MovieClip { public function NextWaveInfoBtn_mc(){ super(); } } }//packageSection 118//NextWaveInfoBtnDown_mc (NextWaveInfoBtnDown_mc) package { import flash.display.*; public dynamic class NextWaveInfoBtnDown_mc extends MovieClip { public function NextWaveInfoBtnDown_mc(){ super(); } } }//packageSection 119//NextWaveInfoBtnOver_mc (NextWaveInfoBtnOver_mc) package { import flash.display.*; public dynamic class NextWaveInfoBtnOver_mc extends MovieClip { public function NextWaveInfoBtnOver_mc(){ super(); } } }//packageSection 120//ObjectiveBtn_mc (ObjectiveBtn_mc) package { import flash.display.*; public dynamic class ObjectiveBtn_mc extends MovieClip { public function ObjectiveBtn_mc(){ super(); } } }//packageSection 121//ObjectiveBtnDown_mc (ObjectiveBtnDown_mc) package { import flash.display.*; public dynamic class ObjectiveBtnDown_mc extends MovieClip { public function ObjectiveBtnDown_mc(){ super(); } } }//packageSection 122//ObjectiveBtnOver_mc (ObjectiveBtnOver_mc) package { import flash.display.*; public dynamic class ObjectiveBtnOver_mc extends MovieClip { public function ObjectiveBtnOver_mc(){ super(); } } }//packageSection 123//ObjectiveHelp_mc (ObjectiveHelp_mc) package { import flash.display.*; public dynamic class ObjectiveHelp_mc extends MovieClip { public function ObjectiveHelp_mc(){ super(); } } }//packageSection 124//Path_mc (Path_mc) package { import flash.display.*; public dynamic class Path_mc extends MovieClip { public function Path_mc(){ super(); } } }//packageSection 125//PauseBtn_mc (PauseBtn_mc) package { import flash.display.*; public dynamic class PauseBtn_mc extends MovieClip { public function PauseBtn_mc(){ super(); } } }//packageSection 126//PauseBtnDown_mc (PauseBtnDown_mc) package { import flash.display.*; public dynamic class PauseBtnDown_mc extends MovieClip { public function PauseBtnDown_mc(){ super(); } } }//packageSection 127//PauseBtnOver_mc (PauseBtnOver_mc) package { import flash.display.*; public dynamic class PauseBtnOver_mc extends MovieClip { public function PauseBtnOver_mc(){ super(); } } }//packageSection 128//PlayBtn_mc (PlayBtn_mc) package { import flash.display.*; public dynamic class PlayBtn_mc extends MovieClip { public function PlayBtn_mc(){ super(); } } }//packageSection 129//PlayBtnDown_mc (PlayBtnDown_mc) package { import flash.display.*; public dynamic class PlayBtnDown_mc extends MovieClip { public function PlayBtnDown_mc(){ super(); } } }//packageSection 130//PlayBtnOver_mc (PlayBtnOver_mc) package { import flash.display.*; public dynamic class PlayBtnOver_mc extends MovieClip { public function PlayBtnOver_mc(){ super(); } } }//packageSection 131//ProceedBtn_mc (ProceedBtn_mc) package { import flash.display.*; public dynamic class ProceedBtn_mc extends MovieClip { public function ProceedBtn_mc(){ super(); } } }//packageSection 132//ProceedBtnDown_mc (ProceedBtnDown_mc) package { import flash.display.*; public dynamic class ProceedBtnDown_mc extends MovieClip { public function ProceedBtnDown_mc(){ super(); } } }//packageSection 133//ProceedBtnOver_mc (ProceedBtnOver_mc) package { import flash.display.*; public dynamic class ProceedBtnOver_mc extends MovieClip { public function ProceedBtnOver_mc(){ super(); } } }//packageSection 134//SeaBtn_mc (SeaBtn_mc) package { import flash.display.*; public dynamic class SeaBtn_mc extends MovieClip { public function SeaBtn_mc(){ super(); } } }//packageSection 135//SeaBtnDown_mc (SeaBtnDown_mc) package { import flash.display.*; public dynamic class SeaBtnDown_mc extends MovieClip { public function SeaBtnDown_mc(){ super(); } } }//packageSection 136//SeaBtnOver_mc (SeaBtnOver_mc) package { import flash.display.*; public dynamic class SeaBtnOver_mc extends MovieClip { public function SeaBtnOver_mc(){ super(); } } }//packageSection 137//SeaHelpHelp_mc (SeaHelpHelp_mc) package { import flash.display.*; public dynamic class SeaHelpHelp_mc extends MovieClip { public function SeaHelpHelp_mc(){ super(); } } }//packageSection 138//SeaInfo (SeaInfo) package { import flash.display.*; public dynamic class SeaInfo extends MovieClip { public function SeaInfo(){ super(); } } }//packageSection 139//SmallSelect (SmallSelect) package { import flash.display.*; public dynamic class SmallSelect extends MovieClip { public function SmallSelect(){ super(); } } }//packageSection 140//SmallTurret (SmallTurret) package { import fl.motion.*; import flash.events.*; import flash.display.*; import flash.utils.*; import flash.filters.*; public class SmallTurret extends MovieClip { private var CritterDistanceX; public var AuraLinkID:int;// = 0 private var len; public var Element:int;// = 0 public var TurretTop; public var Range:int; public var DamageLevel:int;// = 1 public var NetDmg:Number; private var Direction; private var i; public var TurretType;// = 2 public var FiringSpeed:int; public var TurrID:int; public var AuraLinked:Boolean;// = false private var RangeIndicator; private var RangeVisible:Boolean;// = false public var PreAuraDmg:Number; public var Gridnum; public var FiringTimer:Timer; public var BaseDmg; public var DamageMultiplier:Number;// = 0 public var Selected:Boolean;// = false public var filterArray:Array; public var SellPrice:int; private var CritterDistanceY; public var AuraID:int;// = 0 private var FireReady:Boolean;// = false private var MouseOver:Boolean;// = false public function SmallTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell:int){ MouseOver = false; RangeVisible = false; FireReady = false; DamageLevel = 1; Selected = false; AuraLinkID = 0; TurretType = 2; AuraLinked = false; AuraID = 0; DamageMultiplier = 0; filterArray = new Array(); Element = 0; super(); this.addEventListener(Event.ENTER_FRAME, TurretLoop); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); TurretTop = new SmallTurretTop(); addChild(TurretTop); FiringSpeed = Speed; BaseDmg = Damage; PreAuraDmg = BaseDmg; NetDmg = (BaseDmg + ((DamageLevel - 1) * 0.25)); Range = TurretRange; TurrID = ID; Gridnum = GridLoc; SellPrice = Sell; FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); } public function DamageAura(DmgMulti){ var dmgfilter:GlowFilter; if (DamageMultiplier == 0){ dmgfilter = new GlowFilter(MovieClip(parent).DmgAuraColor, 0.7); filterArray.push(dmgfilter); this.TurretTop.filters = filterArray; }; DamageMultiplier = DmgMulti; CalcNewDmg(); } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 0, this); MovieClip(parent).SmallTurretInfoOff2(); MovieClip(parent).SmallTurretSelected(DamageLevel); }; } public function CalcNewDmg(){ if (DamageLevel == 1){ NetDmg = BaseDmg; } else { if (DamageLevel == 2){ NetDmg = (BaseDmg + MovieClip(parent).SmallTurretDamageUpgrade); } else { if (DamageLevel == 3){ NetDmg = (BaseDmg + (3 * MovieClip(parent).SmallTurretDamageUpgrade)); } else { if (DamageLevel == 4){ NetDmg = (BaseDmg + (6 * MovieClip(parent).SmallTurretDamageUpgrade)); } else { if (DamageLevel == 5){ NetDmg = (BaseDmg + (10 * MovieClip(parent).SmallTurretDamageUpgrade)); }; }; }; }; }; NetDmg = (NetDmg * (1 + (DamageMultiplier / 10))); PreAuraDmg = (NetDmg / (1 + (DamageMultiplier / 10))); SellPrice = (SellPrice + ((DamageLevel - 1) * 3)); } public function SellTurret(){ this.removeEventListener(Event.ENTER_FRAME, TurretLoop); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function UnLinkAura(){ AuraLinked = false; AuraID = 0; this.filters = new Array(); this.TurretTop.filters = new Array(); DamageMultiplier = 0; CalcNewDmg(); } public function SetElement(newElement:int){ var ElementArray:Array; var Efilter1:GlowFilter; var Efilter2:GlowFilter; var ETint:Color; Element = newElement; ElementArray = new Array(); Efilter1 = new GlowFilter(); Efilter1.alpha = 0.7; Efilter1.inner = true; Efilter1.strength = 2; Efilter1.blurX = 3; Efilter1.blurY = 3; Efilter2 = new GlowFilter(); Efilter2.alpha = 0.7; Efilter2.inner = false; Efilter2.strength = 2; Efilter2.blurX = 3; Efilter2.blurY = 3; ETint = new Color(); if (Element == 0){ Efilter1.color = 0; Efilter1.alpha = 0; Efilter2.color = 0; Efilter2.alpha = 0; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0, 0); this.transform.colorTransform = ETint; } else { if (Element == 1){ Efilter1.color = 0xFF00; Efilter2.color = 0xFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF00, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 2){ Efilter1.color = 0xFF; Efilter2.color = 0xFF; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 3){ Efilter1.color = 0xFFFF00; Efilter2.color = 0xFFFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFFFF00, 0.1); this.transform.colorTransform = ETint; }; }; }; }; } private function SetReady(event:TimerEvent){ FireReady = true; } public function OnMouseOut(event:MouseEvent){ MovieClip(parent).SmallTurretInfoOff2(); MouseOver = false; if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function LinkAura(Auraid, DmgMulti:int){ var filterArray:Array; var gfilter:GlowFilter; if (AuraLinked == false){ AuraLinked = true; AuraID = Auraid; filterArray = new Array(); gfilter = new GlowFilter(MovieClip(parent).AuraLinkedColor, 0.8); filterArray.push(gfilter); this.TurretTop.filters = filterArray; }; if (DamageMultiplier < DmgMulti){ DamageAura(DmgMulti); }; } public function TurretLoop(event:Event){ if (MovieClip(parent).Paused == false){ len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ Direction = Math.atan2(CritterDistanceY, CritterDistanceX); TurretTop.rotation = (Math.round(((Direction * 180) / Math.PI)) - 90); break; }; i++; }; }; if (FireReady == true){ FireTurret(); }; }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).SmallTurretInfoOn2(true, SellPrice, Range, NetDmg, Element); }; } public function FireTurret(){ var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ TurretTop.gotoAndPlay("Fire"); MovieClip(parent).FireBullet(2, NetDmg, this.x, this.y, i, 0, 0, Element); FiringTimer.reset(); FiringTimer.start(); FireReady = false; break; }; i++; }; }; } } }//packageSection 141//SmallTurretHelp_mc (SmallTurretHelp_mc) package { import flash.display.*; public dynamic class SmallTurretHelp_mc extends MovieClip { public function SmallTurretHelp_mc(){ super(); } } }//packageSection 142//SmallTurretImg (SmallTurretImg) package { import flash.display.*; public dynamic class SmallTurretImg extends MovieClip { public function SmallTurretImg(){ super(); } } }//packageSection 143//SmallTurretInfo (SmallTurretInfo) package { import flash.display.*; public dynamic class SmallTurretInfo extends MovieClip { public function SmallTurretInfo(){ super(); } } }//packageSection 144//SmallTurretTop (SmallTurretTop) package { import flash.display.*; public dynamic class SmallTurretTop extends MovieClip { public function SmallTurretTop(){ super(); addFrameScript(0, frame1, 4, frame5); } function frame1(){ stop(); } function frame5(){ gotoAndStop("Inert"); } } }//packageSection 145//sndButton (sndButton) package { import flash.media.*; public dynamic class sndButton extends Sound { public function sndButton(){ super(); } } }//packageSection 146//sndEMP (sndEMP) package { import flash.media.*; public dynamic class sndEMP extends Sound { public function sndEMP(){ super(); } } }//packageSection 147//sndExplosion (sndExplosion) package { import flash.media.*; public dynamic class sndExplosion extends Sound { public function sndExplosion(){ super(); } } }//packageSection 148//sndLarge (sndLarge) package { import flash.media.*; public dynamic class sndLarge extends Sound { public function sndLarge(){ super(); } } }//packageSection 149//sndLargeBuild (sndLargeBuild) package { import flash.media.*; public dynamic class sndLargeBuild extends Sound { public function sndLargeBuild(){ super(); } } }//packageSection 150//sndSiren (sndSiren) package { import flash.media.*; public dynamic class sndSiren extends Sound { public function sndSiren(){ super(); } } }//packageSection 151//sndSmall (sndSmall) package { import flash.media.*; public dynamic class sndSmall extends Sound { public function sndSmall(){ super(); } } }//packageSection 152//sndSmallBuild (sndSmallBuild) package { import flash.media.*; public dynamic class sndSmallBuild extends Sound { public function sndSmallBuild(){ super(); } } }//packageSection 153//sndSonic (sndSonic) package { import flash.media.*; public dynamic class sndSonic extends Sound { public function sndSonic(){ super(); } } }//packageSection 154//sndSplash (sndSplash) package { import flash.media.*; public dynamic class sndSplash extends Sound { public function sndSplash(){ super(); } } }//packageSection 155//sndSplashExplosion (sndSplashExplosion) package { import flash.media.*; public dynamic class sndSplashExplosion extends Sound { public function sndSplashExplosion(){ super(); } } }//packageSection 156//Splash_mc (Splash_mc) package { import fl.motion.*; import flash.events.*; import flash.display.*; public class Splash_mc extends MovieClip { const Time:int = 7; private var Counter:int;// = 0 public function Splash_mc(Element){ var ETint:Color; Counter = 0; super(); ETint = new Color(); if (Element == 1){ ETint.setTint(0xFF00, 0.6); this.transform.colorTransform = ETint; } else { if (Element == 2){ ETint.setTint(0xFF, 0.6); this.transform.colorTransform = ETint; } else { if (Element == 3){ ETint.setTint(0xFFFF00, 0.6); this.transform.colorTransform = ETint; }; }; }; this.addEventListener(Event.ENTER_FRAME, SplashLoop); } private function SplashLoop(event:Event){ if (MovieClip(parent).Paused == false){ Counter++; if (Counter < 10){ this.scaleX = (this.scaleX + 0.2); this.scaleY = (this.scaleY + 0.2); this.alpha = (this.alpha - 0.05); } else { if (Counter == 10){ this.removeEventListener(Event.ENTER_FRAME, SplashLoop); parent.removeChild(this); }; }; }; } } }//packageSection 157//SplashTurret (SplashTurret) package { import fl.motion.*; import flash.events.*; import flash.display.*; import flash.utils.*; import flash.filters.*; public class SplashTurret extends MovieClip { private var SplashRadius:int;// = 75 private var CritterDistanceX; public var AuraLinkID:int;// = 0 private var len; public var Element:int;// = 0 public var TurretTop; public var Range:int; public var DamageLevel:int;// = 1 public var NetDmg:Number; private var Direction; private var i; public var TurretType;// = 4 public var FiringSpeed:int; public var TurrID:int; public var AuraLinked:Boolean;// = false private var RangeIndicator; private var RangeVisible:Boolean;// = false public var PreAuraDmg:Number; public var Gridnum; public var FiringTimer:Timer; public var BaseDmg; public var DamageMultiplier:Number;// = 0 public var Selected:Boolean;// = false public var filterArray:Array; public var SellPrice:int; private var CritterDistanceY; public var AuraID:int;// = 0 private var FireReady:Boolean;// = false private var MouseOver:Boolean;// = false public function SplashTurret(Speed:Number, Damage:Number, TurretRange:int, ID:int, GridLoc, Sell:int){ MouseOver = false; RangeVisible = false; FireReady = false; DamageLevel = 1; SplashRadius = 75; Selected = false; AuraLinkID = 0; TurretType = 4; AuraLinked = false; AuraID = 0; DamageMultiplier = 0; filterArray = new Array(); Element = 0; super(); this.addEventListener(Event.ENTER_FRAME, TurretLoop); this.addEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.addEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.addEventListener(MouseEvent.CLICK, SelectMe); TurretTop = new SplashTurretTop(); addChild(TurretTop); FiringSpeed = Speed; BaseDmg = Damage; PreAuraDmg = BaseDmg; NetDmg = (BaseDmg + (DamageLevel - 1)); Range = TurretRange; TurrID = ID; Gridnum = GridLoc; SellPrice = Sell; FiringTimer = new Timer(FiringSpeed, 1); FiringTimer.addEventListener(TimerEvent.TIMER_COMPLETE, SetReady); FiringTimer.start(); } public function DamageAura(DmgMulti){ var dmgfilter:GlowFilter; if (DamageMultiplier == 0){ dmgfilter = new GlowFilter(MovieClip(parent).DmgAuraColor); filterArray.push(dmgfilter); this.TurretTop.filters = filterArray; }; DamageMultiplier = DmgMulti; CalcNewDmg(); } public function SelectMe(event:MouseEvent){ if ((((Selected == false)) && ((MovieClip(parent).BuildModeActive == false)))){ if (MovieClip(parent).SelectActive == true){ MovieClip(parent).DeSelectTurret(); }; Selected = true; MovieClip(parent).BracketSelection(this.x, this.y, 1, this); MovieClip(parent).SplashTurretInfoOff2(); MovieClip(parent).SplashTurretSelected(DamageLevel); }; } public function SellTurret(){ this.removeEventListener(Event.ENTER_FRAME, TurretLoop); this.removeEventListener(MouseEvent.MOUSE_OVER, OnMouseOver); this.removeEventListener(MouseEvent.MOUSE_OUT, OnMouseOut); this.removeEventListener(MouseEvent.CLICK, SelectMe); MovieClip(parent).removeChild(this); } public function UnLinkAura(){ AuraLinked = false; AuraID = 0; this.filters = new Array(); this.TurretTop.filters = new Array(); DamageMultiplier = 0; CalcNewDmg(); } public function SetElement(newElement:int){ var ElementArray:Array; var Efilter1:GlowFilter; var Efilter2:GlowFilter; var ETint:Color; Element = newElement; ElementArray = new Array(); Efilter1 = new GlowFilter(); Efilter1.alpha = 0.7; Efilter1.inner = true; Efilter1.strength = 2; Efilter1.blurX = 3; Efilter1.blurY = 3; Efilter2 = new GlowFilter(); Efilter2.alpha = 0.7; Efilter2.inner = false; Efilter2.strength = 2; Efilter2.blurX = 3; Efilter2.blurY = 3; ETint = new Color(); if (Element == 0){ Efilter1.color = 0; Efilter1.alpha = 0; Efilter2.color = 0; Efilter2.alpha = 0; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0, 0); this.transform.colorTransform = ETint; } else { if (Element == 1){ Efilter1.color = 0xFF00; Efilter2.color = 0xFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF00, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 2){ Efilter1.color = 0xFF; Efilter2.color = 0xFF; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFF, 0.1); this.transform.colorTransform = ETint; } else { if (Element == 3){ Efilter1.color = 0xFFFF00; Efilter2.color = 0xFFFF00; ElementArray.push(Efilter1); ElementArray.push(Efilter2); this.filters = ElementArray; ETint.setTint(0xFFFF00, 0.1); this.transform.colorTransform = ETint; }; }; }; }; } private function SetReady(event:TimerEvent){ FireReady = true; } public function OnMouseOut(event:MouseEvent){ MovieClip(parent).SplashTurretInfoOff2(); MouseOver = false; if (RangeVisible == true){ MovieClip(parent).removeChild(RangeIndicator); RangeVisible = false; }; } public function CalcNewDmg(){ if (DamageLevel == 1){ NetDmg = BaseDmg; } else { if (DamageLevel == 2){ NetDmg = (BaseDmg + MovieClip(parent).SplashTurretDamageUpgrade); } else { if (DamageLevel == 3){ NetDmg = (BaseDmg + (3 * MovieClip(parent).SplashTurretDamageUpgrade)); } else { if (DamageLevel == 4){ NetDmg = (BaseDmg + (6 * MovieClip(parent).SplashTurretDamageUpgrade)); } else { if (DamageLevel == 5){ NetDmg = (BaseDmg + (10 * MovieClip(parent).SplashTurretDamageUpgrade)); }; }; }; }; }; NetDmg = (NetDmg * (1 + (DamageMultiplier / 10))); PreAuraDmg = (NetDmg / (1 + (DamageMultiplier / 10))); SellPrice = (SellPrice + ((DamageLevel - 1) * 6)); } public function LinkAura(Auraid, DmgMulti:int){ var filterArray:Array; var gfilter:GlowFilter; if (AuraLinked == false){ AuraLinked = true; AuraID = Auraid; filterArray = new Array(); gfilter = new GlowFilter(MovieClip(parent).AuraLinkedColor, 0.7); filterArray.push(gfilter); this.TurretTop.filters = filterArray; }; if (DamageMultiplier < DmgMulti){ DamageAura(DmgMulti); }; } public function TurretLoop(event:Event){ if (MovieClip(parent).Paused == false){ len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ Direction = Math.atan2(CritterDistanceY, CritterDistanceX); TurretTop.rotation = (Math.round(((Direction * 180) / Math.PI)) - 90); break; }; i++; }; }; if (FireReady == true){ FireTurret(); }; }; } public function OnMouseOver(event:MouseEvent){ MouseOver = true; if (RangeVisible == false){ RangeVisible = true; RangeIndicator = new TurretRange(); RangeIndicator.width = Range; RangeIndicator.height = Range; RangeIndicator.x = this.x; RangeIndicator.y = this.y; RangeIndicator.alpha = 0.5; MovieClip(parent).addChild(RangeIndicator); MovieClip(parent).swapChildren(this, RangeIndicator); MovieClip(parent).SplashTurretInfoOn2(true, SellPrice, Range, NetDmg, Element); }; } public function FireTurret(){ var len:*; var i:*; var CritterDistanceX:*; var CritterDistanceY:*; len = MovieClip(parent).CritterArray.length; if (len > 0){ i = 0; while (i < len) { CritterDistanceX = (this.x - MovieClip(parent).CritterArray[i].x); CritterDistanceY = (this.y - MovieClip(parent).CritterArray[i].y); if (Math.sqrt(((CritterDistanceX * CritterDistanceX) + (CritterDistanceY * CritterDistanceY))) < (Range / 2)){ MovieClip(parent).FireBullet(4, NetDmg, this.x, this.y, i, NetDmg, SplashRadius, Element); TurretTop.gotoAndPlay("Fire"); FiringTimer.reset(); FiringTimer.start(); FireReady = false; break; }; i++; }; }; } } }//packageSection 158//SplashTurretHelp_mc (SplashTurretHelp_mc) package { import flash.display.*; public dynamic class SplashTurretHelp_mc extends MovieClip { public function SplashTurretHelp_mc(){ super(); } } }//packageSection 159//SplashTurretImg (SplashTurretImg) package { import flash.display.*; public dynamic class SplashTurretImg extends MovieClip { public function SplashTurretImg(){ super(); } } }//packageSection 160//SplashTurretInfo (SplashTurretInfo) package { import flash.display.*; public dynamic class SplashTurretInfo extends MovieClip { public function SplashTurretInfo(){ super(); } } }//packageSection 161//SplashTurretTop (SplashTurretTop) package { import flash.display.*; public dynamic class SplashTurretTop extends MovieClip { public function SplashTurretTop(){ super(); addFrameScript(0, frame1, 4, frame5); } function frame1(){ stop(); } function frame5(){ gotoAndStop("Inert"); } } }//packageSection 162//Start (Start) package { import flash.events.*; import flash.media.*; import flash.display.*; import flash.text.*; import flash.net.*; public class Start extends MovieClip { const CreditsFrameHeight:int = 440; const WaveSelectFrameHeight:int = 200; const CreditsFrameWidth:int = 350; const CreditsFrameExpandSpeed:int = 30; const WaveSelectFrameWidth:int = 300; const WaveSelectFrameExpandSpeed:int = 30; public var WaveXStartBtn:SimpleButton; public var CurrWaveSelected:int;// = 0 private var CollapsingWaveSelect:Boolean;// = false public var SMenu; private var ExpandingWaveSelect:Boolean;// = false public var VolumeAdjustment:SoundTransform; public var StartGameBtn:SimpleButton; private var PasswordText:String;// = "" private var ExpandingCredits:Boolean;// = false public var BackgroundSymbols; public var ProceedBtnRed; public var WaveSelected:Boolean;// = false public var ButtonSound:sndButton; public var Channel:SoundChannel; public var ProceedBtn:SimpleButton; public var WaveSelectFrame; public var CreditsFrame; public var HelpBtn:SimpleButton; public var Muted:Boolean;// = false public var CreditsBtn:SimpleButton; private var baseText:String;// = "" public var CloseWaveSelectBtn:SimpleButton; private var VerticalExpand:Boolean;// = false private var VerticalCreditsExpand:Boolean;// = false public var WavePasswordArray:Array; private var CollapsingCredits:Boolean;// = false private var CreditsFrameActive:Boolean;// = false private var WaveFrameActive:Boolean;// = false private var HorizontalExpand:Boolean;// = false private var HorizontalCreditsExpand:Boolean;// = false public function Start(){ BackgroundSymbols = new LargeSymbols(); SMenu = new StartMenu(); StartGameBtn = new SimpleButton(new StartGameBtn_mc(), new StartGameBtnOver_mc(), new StartGameBtnDown_mc(), new StartGameBtn_mc()); WaveXStartBtn = new SimpleButton(new WaveXStartBtn_mc(), new WaveXStartBtnOver_mc(), new WaveXStartBtnDown_mc(), new WaveXStartBtn_mc()); HelpBtn = new SimpleButton(new HelpBtn_mc(), new HelpBtnOver_mc(), new HelpBtnDown_mc(), new HelpBtn_mc()); CreditsBtn = new SimpleButton(new CreditsBtn_mc(), new CreditsBtnOver_mc(), new CreditsBtnDown_mc(), new CreditsBtn_mc()); ProceedBtn = new SimpleButton(new ProceedBtn_mc(), new ProceedBtnOver_mc(), new ProceedBtnDown_mc(), new ProceedBtn_mc()); ProceedBtnRed = new BuildBtnRed(); CloseWaveSelectBtn = new SimpleButton(new DeSelectIcon(), new DeSelectOver(), new DeSelectOver(), new DeSelectIcon()); WaveSelectFrame = new WaveSelectFrame_mc(); CreditsFrame = new CreditsFrame_mc(); ExpandingWaveSelect = false; CollapsingWaveSelect = false; HorizontalExpand = false; VerticalExpand = false; WaveFrameActive = false; ExpandingCredits = false; CollapsingCredits = false; HorizontalCreditsExpand = false; VerticalCreditsExpand = false; CreditsFrameActive = false; WaveSelected = false; CurrWaveSelected = 0; baseText = ""; PasswordText = ""; VolumeAdjustment = new SoundTransform(); ButtonSound = new sndButton(); Muted = false; super(); WavePasswordArray = GlobalVars.WavePasswordArray; Muted = GlobalVars.Muted; GlobalVars.StartWave = 1; addChild(BackgroundSymbols); SMenu.x = 30; addChild(SMenu); StartGameBtn.x = 140; StartGameBtn.y = 135; StartGameBtn.addEventListener(MouseEvent.CLICK, StartGame); addChild(StartGameBtn); WaveXStartBtn.x = 140; WaveXStartBtn.y = 175; WaveXStartBtn.addEventListener(MouseEvent.CLICK, SetWaveAndPassword); addChild(WaveXStartBtn); HelpBtn.x = 140; HelpBtn.y = 215; HelpBtn.addEventListener(MouseEvent.CLICK, GoToHelp); addChild(HelpBtn); CreditsBtn.x = 140; CreditsBtn.y = 0xFF; CreditsBtn.addEventListener(MouseEvent.CLICK, GoToCredits); addChild(CreditsBtn); WaveSelectFrame.x = 240; WaveSelectFrame.y = 155; WaveSelectFrame.height = 40; WaveSelectFrame.width = 0; WaveSelectFrame.visible = false; addChild(WaveSelectFrame); WaveSelectFrame.PasswordLabel.selectable = false; WaveSelectFrame.PasswordInput.visible = false; CreditsFrame.x = 240; CreditsFrame.y = 0xFF; CreditsFrame.height = 40; CreditsFrame.width = 0; CreditsFrame.visible = false; CreditsFrame.EmailBtn.buttonMode = true; CreditsFrame.EmailBtn.addEventListener(MouseEvent.CLICK, SendEmail); addChild(CreditsFrame); CloseWaveSelectBtn.width = 25; CloseWaveSelectBtn.height = 25; CloseWaveSelectBtn.x = 268; CloseWaveSelectBtn.y = 12; CloseWaveSelectBtn.tabEnabled = false; CloseWaveSelectBtn.addEventListener(MouseEvent.CLICK, CloseWaveSelect); WaveSelectFrame.addChild(CloseWaveSelectBtn); ProceedBtn.x = 150; ProceedBtn.y = 160; ProceedBtn.addEventListener(MouseEvent.CLICK, StartGame); WaveSelectFrame.addChild(ProceedBtn); ProceedBtnRed.x = ProceedBtn.x; ProceedBtnRed.y = ProceedBtn.y; ProceedBtnRed.width = 200; ProceedBtnRed.height = 40; WaveSelectFrame.addChild(ProceedBtnRed); this.addEventListener(Event.ENTER_FRAME, StartLoop); } public function StartLoop(event:Event){ if (ExpandingWaveSelect == true){ if (CreditsFrameActive == true){ CreditsFrame.height = 40; CreditsFrame.width = 0; HorizontalCreditsExpand = false; CollapsingCredits = false; CreditsFrameActive = false; CreditsFrame.visible = false; }; WaveSelectFrame.visible = true; if (HorizontalExpand == true){ WaveSelectFrame.width = (WaveSelectFrame.width + WaveSelectFrameExpandSpeed); if (WaveSelectFrame.width >= WaveSelectFrameWidth){ WaveSelectFrame.width = WaveSelectFrameWidth; HorizontalExpand = false; VerticalExpand = true; }; }; if (VerticalExpand == true){ WaveSelectFrame.height = (WaveSelectFrame.height + WaveSelectFrameExpandSpeed); if (WaveSelectFrame.height >= WaveSelectFrameHeight){ WaveSelectFrame.height = WaveSelectFrameHeight; VerticalExpand = false; ExpandingWaveSelect = false; WaveFrameActive = true; }; }; } else { if (CollapsingWaveSelect == true){ if (VerticalExpand == true){ WaveSelectFrame.height = (WaveSelectFrame.height - WaveSelectFrameExpandSpeed); if (WaveSelectFrame.height <= 40){ WaveSelectFrame.height = 40; HorizontalExpand = true; VerticalExpand = false; }; }; if (HorizontalExpand == true){ WaveSelectFrame.width = (WaveSelectFrame.width - WaveSelectFrameExpandSpeed); if (WaveSelectFrame.width <= 0){ WaveSelectFrame.width = 0; HorizontalExpand = false; CollapsingWaveSelect = false; WaveFrameActive = false; WaveSelectFrame.visible = false; }; }; }; }; if (WaveFrameActive == true){ baseText = WaveSelectFrame.LvlSelect.text; if (baseText.length > 0){ WaveSelectFrame.PasswordInput.visible = true; } else { WaveSelectFrame.PasswordInput.visible = false; WaveSelectFrame.PasswordInput.text = ""; }; PasswordText = WaveSelectFrame.PasswordInput.text; if (PasswordText == WavePasswordArray[CurrWaveSelected]){ WaveSelectFrame.Check.gotoAndStop(2); ProceedBtnRed.visible = false; } else { WaveSelectFrame.Check.gotoAndStop(1); ProceedBtnRed.visible = true; }; CurrWaveSelected = parseInt(baseText); if (CurrWaveSelected == 0){ WaveSelectFrame.PasswordLabel.text = "Please enter starting wave"; } else { WaveSelectFrame.PasswordLabel.text = (("Enter wave " + CurrWaveSelected) + " password:"); }; }; if (ExpandingCredits == true){ CreditsFrame.visible = true; if (WaveFrameActive == true){ WaveSelectFrame.height = 40; WaveSelectFrame.width = 0; HorizontalExpand = false; CollapsingWaveSelect = false; WaveFrameActive = false; WaveSelectFrame.visible = false; }; if (HorizontalCreditsExpand == true){ CreditsFrame.width = (CreditsFrame.width + CreditsFrameExpandSpeed); if (CreditsFrame.width >= CreditsFrameWidth){ CreditsFrame.width = CreditsFrameWidth; HorizontalCreditsExpand = false; VerticalCreditsExpand = true; }; }; if (VerticalCreditsExpand == true){ CreditsFrame.height = (CreditsFrame.height + CreditsFrameExpandSpeed); if (CreditsFrame.height >= CreditsFrameHeight){ CreditsFrame.height = CreditsFrameHeight; VerticalCreditsExpand = false; ExpandingCredits = false; CreditsFrameActive = true; }; }; } else { if (CollapsingCredits == true){ if (VerticalCreditsExpand == true){ CreditsFrame.height = (CreditsFrame.height - CreditsFrameExpandSpeed); if (CreditsFrame.height <= 40){ CreditsFrame.height = 40; HorizontalCreditsExpand = true; VerticalCreditsExpand = false; }; }; if (HorizontalCreditsExpand == true){ CreditsFrame.width = (CreditsFrame.width - CreditsFrameExpandSpeed); if (CreditsFrame.width <= 21){ CreditsFrame.width = 0; HorizontalCreditsExpand = false; CollapsingCredits = false; CreditsFrameActive = false; CreditsFrame.visible = false; }; }; }; }; } public function PlaySound(soundObject:Object){ if (Muted == false){ VolumeAdjustment.volume = 0.5; Channel = soundObject.play(0, 0, VolumeAdjustment); }; } public function SetWaveAndPassword(event:Event){ PlaySound(ButtonSound); if (WaveFrameActive == false){ ExpandingWaveSelect = true; HorizontalExpand = true; } else { if (WaveFrameActive == true){ CollapsingWaveSelect = true; VerticalExpand = true; }; }; } public function SendEmail(event:Event){ navigateToURL(new URLRequest("mailto:MunioTD@Gmail.com?subject=Feedback")); } public function CloseWaveSelect(event:Event){ CollapsingWaveSelect = true; VerticalExpand = true; } public function StartGame(event:Event){ PlaySound(ButtonSound); if (event.target == ProceedBtn){ if (CurrWaveSelected != 0){ GlobalVars.StartWave = CurrWaveSelected; }; }; MovieClip(parent).gotoAndStop("Game"); } public function GoToCredits(event:Event){ PlaySound(ButtonSound); if (CreditsFrameActive == false){ ExpandingCredits = true; HorizontalCreditsExpand = true; } else { if (CreditsFrameActive == true){ CollapsingCredits = true; VerticalCreditsExpand = true; }; }; } public function GoToHelp(event:Event){ PlaySound(ButtonSound); MovieClip(parent).gotoAndStop("Help"); } } }//packageSection 163//StartBtn_mc (StartBtn_mc) package { import flash.display.*; public dynamic class StartBtn_mc extends MovieClip { public function StartBtn_mc(){ super(); } } }//packageSection 164//StartBtnDown_mc (StartBtnDown_mc) package { import flash.display.*; public dynamic class StartBtnDown_mc extends MovieClip { public function StartBtnDown_mc(){ super(); } } }//packageSection 165//StartBtnOver_mc (StartBtnOver_mc) package { import flash.display.*; public dynamic class StartBtnOver_mc extends MovieClip { public function StartBtnOver_mc(){ super(); } } }//packageSection 166//StartGameBtn_mc (StartGameBtn_mc) package { import flash.display.*; public dynamic class StartGameBtn_mc extends MovieClip { public function StartGameBtn_mc(){ super(); } } }//packageSection 167//StartGameBtnDown_mc (StartGameBtnDown_mc) package { import flash.display.*; public dynamic class StartGameBtnDown_mc extends MovieClip { public function StartGameBtnDown_mc(){ super(); } } }//packageSection 168//StartGameBtnOver_mc (StartGameBtnOver_mc) package { import flash.display.*; public dynamic class StartGameBtnOver_mc extends MovieClip { public function StartGameBtnOver_mc(){ super(); } } }//packageSection 169//StartMenu (StartMenu) package { import flash.display.*; public dynamic class StartMenu extends MovieClip { public function StartMenu(){ super(); } } }//packageSection 170//TurretHelp_mc (TurretHelp_mc) package { import flash.display.*; public dynamic class TurretHelp_mc extends MovieClip { public function TurretHelp_mc(){ super(); } } }//packageSection 171//TurretRange (TurretRange) package { import flash.display.*; public dynamic class TurretRange extends MovieClip { public function TurretRange(){ super(); } } }//packageSection 172//TypeAirBtn_mc (TypeAirBtn_mc) package { import flash.display.*; public dynamic class TypeAirBtn_mc extends MovieClip { public function TypeAirBtn_mc(){ super(); } } }//packageSection 173//TypeAirBtnDown_mc (TypeAirBtnDown_mc) package { import flash.display.*; public dynamic class TypeAirBtnDown_mc extends MovieClip { public function TypeAirBtnDown_mc(){ super(); } } }//packageSection 174//TypeLandBtn_mc (TypeLandBtn_mc) package { import flash.display.*; public dynamic class TypeLandBtn_mc extends MovieClip { public function TypeLandBtn_mc(){ super(); } } }//packageSection 175//TypeLandBtnDown_mc (TypeLandBtnDown_mc) package { import flash.display.*; public dynamic class TypeLandBtnDown_mc extends MovieClip { public function TypeLandBtnDown_mc(){ super(); } } }//packageSection 176//TypeSeaBtn_mc (TypeSeaBtn_mc) package { import flash.display.*; public dynamic class TypeSeaBtn_mc extends MovieClip { public function TypeSeaBtn_mc(){ super(); } } }//packageSection 177//TypeSeaBtnDown_mc (TypeSeaBtnDown_mc) package { import flash.display.*; public dynamic class TypeSeaBtnDown_mc extends MovieClip { public function TypeSeaBtnDown_mc(){ super(); } } }//packageSection 178//UnMuteBtn_mc (UnMuteBtn_mc) package { import flash.display.*; public dynamic class UnMuteBtn_mc extends MovieClip { public function UnMuteBtn_mc(){ super(); } } }//packageSection 179//UnMuteBtnDown_mc (UnMuteBtnDown_mc) package { import flash.display.*; public dynamic class UnMuteBtnDown_mc extends MovieClip { public function UnMuteBtnDown_mc(){ super(); } } }//packageSection 180//UnMuteBtnOver_mc (UnMuteBtnOver_mc) package { import flash.display.*; public dynamic class UnMuteBtnOver_mc extends MovieClip { public function UnMuteBtnOver_mc(){ super(); } } }//packageSection 181//UpgradeBtn_mc (UpgradeBtn_mc) package { import flash.display.*; public dynamic class UpgradeBtn_mc extends MovieClip { public function UpgradeBtn_mc(){ super(); } } }//packageSection 182//UpgradeBtnDown_mc (UpgradeBtnDown_mc) package { import flash.display.*; public dynamic class UpgradeBtnDown_mc extends MovieClip { public function UpgradeBtnDown_mc(){ super(); } } }//packageSection 183//UpgradeBtnRed_mc (UpgradeBtnRed_mc) package { import flash.display.*; public dynamic class UpgradeBtnRed_mc extends MovieClip { public function UpgradeBtnRed_mc(){ super(); } } }//packageSection 184//WaterPath_mc (WaterPath_mc) package { import flash.display.*; public dynamic class WaterPath_mc extends MovieClip { public function WaterPath_mc(){ super(); } } }//packageSection 185//WaveSelectFrame_mc (WaveSelectFrame_mc) package { import flash.display.*; import flash.text.*; public dynamic class WaveSelectFrame_mc extends MovieClip { public var LvlSelect:TextField; public var PasswordInput:TextField; public var Check:MovieClip; public var PasswordLabel:TextField; public function WaveSelectFrame_mc(){ super(); } } }//packageSection 186//WaveXStartBtn_mc (WaveXStartBtn_mc) package { import flash.display.*; public dynamic class WaveXStartBtn_mc extends MovieClip { public function WaveXStartBtn_mc(){ super(); } } }//packageSection 187//WaveXStartBtnDown_mc (WaveXStartBtnDown_mc) package { import flash.display.*; public dynamic class WaveXStartBtnDown_mc extends MovieClip { public function WaveXStartBtnDown_mc(){ super(); } } }//packageSection 188//WaveXStartBtnOver_mc (WaveXStartBtnOver_mc) package { import flash.display.*; public dynamic class WaveXStartBtnOver_mc extends MovieClip { public function WaveXStartBtnOver_mc(){ super(); } } }//package
Library Items
Symbol 1 Graphic | Used by:2 | |
Symbol 2 MovieClip {LoadingBar_mc} | Uses:1 | |
Symbol 3 Bitmap | Used by:4 | |
Symbol 4 Graphic | Uses:3 | Used by:5 |
Symbol 5 MovieClip {Banner} | Uses:4 | Used by:518 |
Symbol 6 Graphic | Used by:7 | |
Symbol 7 MovieClip {ElementFrameCorner} | Uses:6 | Used by:10 13 16 19 27 357 358 359 360 361 362 436 437 438 |
Symbol 8 Graphic | Used by:9 | |
Symbol 9 MovieClip | Uses:8 | Used by:10 437 438 |
Symbol 10 MovieClip {BalanceBtnOver_mc} | Uses:7 9 | Used by:Timeline |
Symbol 11 Graphic | Used by:12 | |
Symbol 12 MovieClip | Uses:11 | Used by:13 27 340 361 362 408 417 446 447 |
Symbol 13 MovieClip {AirBtnOver_mc} | Uses:7 12 | Used by:Timeline |
Symbol 14 Graphic | Used by:15 | |
Symbol 15 MovieClip | Uses:14 | Used by:16 27 340 359 360 408 414 450 451 |
Symbol 16 MovieClip {SeaBtnOver_mc} | Uses:7 15 | Used by:Timeline |
Symbol 17 Graphic | Used by:18 | |
Symbol 18 MovieClip | Uses:17 | Used by:19 27 340 357 358 408 411 448 449 |
Symbol 19 MovieClip {LandBtnOver_mc} | Uses:7 18 | Used by:Timeline |
Symbol 20 MovieClip {GlobalVars} | Used by:Timeline | |
Symbol 21 Graphic | Used by:22 | |
Symbol 22 MovieClip {ElementFrame_mc} | Uses:21 | Used by:27 Timeline |
Symbol 23 Font | Used by:24 | |
Symbol 24 Text | Uses:23 | Used by:27 |
Symbol 25 Font | Used by:26 | |
Symbol 26 Text | Uses:25 | Used by:27 |
Symbol 27 MovieClip {Logo} | Uses:22 7 15 18 12 24 26 | Used by:31 380 431 |
Symbol 28 Graphic | Used by:29 | |
Symbol 29 MovieClip {FrameBase1} | Uses:28 | Used by:30 247 331 380 431 482 486 Timeline |
Symbol 30 MovieClip {HelpFrame_mc} | Uses:29 | Used by:31 348 523 Timeline |
Symbol 31 MovieClip {Loading} | Uses:30 27 | Used by:Timeline |
Symbol 32 Graphic | Used by:33 | |
Symbol 33 MovieClip {BtnSq} | Uses:32 | Used by:36 39 204 205 214 231 238 239 240 241 242 272 273 277 278 283 284 301 302 303 306 307 308 311 312 313 315 316 317 319 321 323 333 335 337 354 355 356 373 375 377 382 384 386 433 434 435 446 447 448 449 450 451 453 454 455 457 458 459 461 462 463 466 467 468 471 472 473 478 479 480 Timeline |
Symbol 34 Graphic | Used by:35 | |
Symbol 35 MovieClip {LargeTurretImg} | Uses:34 | Used by:36 239 390 Timeline |
Symbol 36 MovieClip {BuildBtn1_mc} | Uses:33 35 | Used by:Timeline |
Symbol 37 Graphic | Used by:38 | |
Symbol 38 MovieClip {SmallTurretImg} | Uses:37 | Used by:39 240 393 Timeline |
Symbol 39 MovieClip {BuildBtn2_mc} | Uses:33 38 | Used by:Timeline |
Symbol 40 Graphic | Used by:45 | |
Symbol 41 Graphic | Used by:45 | |
Symbol 42 Graphic | Used by:45 | |
Symbol 43 Graphic | Used by:45 | |
Symbol 44 Graphic | Used by:45 | |
Symbol 45 MovieClip {Bullet_mc} | Uses:40 41 42 43 44 | Used by:Timeline |
Symbol 46 MovieClip {Game} | Used by:Timeline | |
Symbol 47 Graphic | Used by:55 | |
Symbol 48 Graphic | Used by:55 | |
Symbol 49 Graphic | Used by:55 | |
Symbol 50 Graphic | Used by:55 | |
Symbol 51 Graphic | Used by:55 | |
Symbol 52 Graphic | Used by:55 | |
Symbol 53 Graphic | Used by:55 | |
Symbol 54 Graphic | Used by:55 | |
Symbol 55 MovieClip {Grid} | Uses:47 48 49 50 51 52 53 54 | Used by:Timeline |
Symbol 56 Font | Used by:57 253 327 328 329 330 341 342 347 444 521 522 | |
Symbol 57 EditableText | Uses:56 | Used by:60 |
Symbol 58 Graphic | Used by:59 | |
Symbol 59 MovieClip {Health_mc} | Uses:58 | Used by:60 |
Symbol 60 MovieClip {Healthbar_mc} | Uses:57 59 | Used by:Timeline |
Symbol 61 Graphic | Used by:74 | |
Symbol 62 Graphic | Used by:74 | |
Symbol 63 Graphic | Used by:74 | |
Symbol 64 Graphic | Used by:74 | |
Symbol 65 Graphic | Used by:74 | |
Symbol 66 Graphic | Used by:74 | |
Symbol 67 Graphic | Used by:74 | |
Symbol 68 Graphic | Used by:74 | |
Symbol 69 Graphic | Used by:74 | |
Symbol 70 Graphic | Used by:74 | |
Symbol 71 Graphic | Used by:74 | |
Symbol 72 Graphic | Used by:74 | |
Symbol 73 Graphic | Used by:74 | |
Symbol 74 MovieClip | Uses:61 62 63 64 65 66 67 68 69 70 71 72 73 | Used by:184 |
Symbol 75 Graphic | Used by:184 | |
Symbol 76 Graphic | Used by:77 | |
Symbol 77 MovieClip | Uses:76 | Used by:184 |
Symbol 78 Graphic | Used by:79 | |
Symbol 79 MovieClip | Uses:78 | Used by:184 |
Symbol 80 Graphic | Used by:81 | |
Symbol 81 MovieClip | Uses:80 | Used by:184 |
Symbol 82 Graphic | Used by:83 | |
Symbol 83 MovieClip | Uses:82 | Used by:184 |
Symbol 84 Graphic | Used by:85 | |
Symbol 85 MovieClip | Uses:84 | Used by:184 |
Symbol 86 Graphic | Used by:87 | |
Symbol 87 MovieClip | Uses:86 | Used by:184 |
Symbol 88 Graphic | Used by:89 | |
Symbol 89 MovieClip | Uses:88 | Used by:184 |
Symbol 90 Graphic | Used by:91 | |
Symbol 91 MovieClip | Uses:90 | Used by:184 |
Symbol 92 Graphic | Used by:93 | |
Symbol 93 MovieClip | Uses:92 | Used by:184 |
Symbol 94 Graphic | Used by:95 | |
Symbol 95 MovieClip | Uses:94 | Used by:184 |
Symbol 96 Graphic | Used by:100 | |
Symbol 97 Graphic | Used by:100 | |
Symbol 98 Graphic | Used by:100 | |
Symbol 99 Graphic | Used by:100 | |
Symbol 100 MovieClip | Uses:96 97 98 99 | Used by:184 |
Symbol 101 Graphic | Used by:102 | |
Symbol 102 MovieClip | Uses:101 | Used by:184 |
Symbol 103 Graphic | Used by:104 | |
Symbol 104 MovieClip | Uses:103 | Used by:184 |
Symbol 105 Graphic | Used by:106 | |
Symbol 106 MovieClip | Uses:105 | Used by:184 |
Symbol 107 Graphic | Used by:108 | |
Symbol 108 MovieClip | Uses:107 | Used by:184 |
Symbol 109 Graphic | Used by:110 | |
Symbol 110 MovieClip | Uses:109 | Used by:184 |
Symbol 111 Graphic | Used by:112 | |
Symbol 112 MovieClip | Uses:111 | Used by:184 |
Symbol 113 Graphic | Used by:114 | |
Symbol 114 MovieClip | Uses:113 | Used by:184 |
Symbol 115 Graphic | Used by:116 | |
Symbol 116 MovieClip | Uses:115 | Used by:184 |
Symbol 117 Graphic | Used by:121 | |
Symbol 118 Graphic | Used by:121 | |
Symbol 119 Graphic | Used by:121 | |
Symbol 120 Graphic | Used by:121 | |
Symbol 121 MovieClip | Uses:117 118 119 120 | Used by:184 |
Symbol 122 Graphic | Used by:123 | |
Symbol 123 MovieClip | Uses:122 | Used by:184 |
Symbol 124 Graphic | Used by:125 | |
Symbol 125 MovieClip | Uses:124 | Used by:184 |
Symbol 126 Graphic | Used by:127 | |
Symbol 127 MovieClip | Uses:126 | Used by:184 |
Symbol 128 Graphic | Used by:129 | |
Symbol 129 MovieClip | Uses:128 | Used by:184 |
Symbol 130 Graphic | Used by:131 | |
Symbol 131 MovieClip | Uses:130 | Used by:184 |
Symbol 132 Graphic | Used by:133 | |
Symbol 133 MovieClip | Uses:132 | Used by:184 |
Symbol 134 Graphic | Used by:135 | |
Symbol 135 MovieClip | Uses:134 | Used by:184 |
Symbol 136 Graphic | Used by:137 | |
Symbol 137 MovieClip | Uses:136 | Used by:184 |
Symbol 138 Graphic | Used by:139 | |
Symbol 139 MovieClip | Uses:138 | Used by:184 |
Symbol 140 Graphic | Used by:141 | |
Symbol 141 MovieClip | Uses:140 | Used by:184 |
Symbol 142 Graphic | Used by:143 | |
Symbol 143 MovieClip | Uses:142 | Used by:184 |
Symbol 144 Graphic | Used by:145 | |
Symbol 145 MovieClip | Uses:144 | Used by:184 |
Symbol 146 Graphic | Used by:147 | |
Symbol 147 MovieClip | Uses:146 | Used by:184 |
Symbol 148 Graphic | Used by:149 | |
Symbol 149 MovieClip | Uses:148 | Used by:184 |
Symbol 150 Graphic | Used by:151 | |
Symbol 151 MovieClip | Uses:150 | Used by:184 |
Symbol 152 Graphic | Used by:153 | |
Symbol 153 MovieClip | Uses:152 | Used by:184 |
Symbol 154 Graphic | Used by:155 | |
Symbol 155 MovieClip | Uses:154 | Used by:184 |
Symbol 156 Graphic | Used by:161 179 | |
Symbol 157 Graphic | Used by:161 | |
Symbol 158 Graphic | Used by:161 179 | |
Symbol 159 Graphic | Used by:161 179 | |
Symbol 160 Graphic | Used by:161 179 | |
Symbol 161 MovieClip | Uses:156 157 158 159 160 | Used by:184 |
Symbol 162 Graphic | Used by:163 | |
Symbol 163 MovieClip | Uses:162 | Used by:184 |
Symbol 164 Graphic | Used by:165 | |
Symbol 165 MovieClip | Uses:164 | Used by:184 |
Symbol 166 Graphic | Used by:167 | |
Symbol 167 MovieClip | Uses:166 | Used by:184 |
Symbol 168 Graphic | Used by:169 | |
Symbol 169 MovieClip | Uses:168 | Used by:184 |
Symbol 170 Graphic | Used by:171 | |
Symbol 171 MovieClip | Uses:170 | Used by:184 |
Symbol 172 Graphic | Used by:173 | |
Symbol 173 MovieClip | Uses:172 | Used by:184 |
Symbol 174 Graphic | Used by:175 | |
Symbol 175 MovieClip | Uses:174 | Used by:184 |
Symbol 176 Graphic | Used by:177 | |
Symbol 177 MovieClip | Uses:176 | Used by:184 |
Symbol 178 Graphic | Used by:179 | |
Symbol 179 MovieClip | Uses:156 178 158 159 160 | Used by:184 |
Symbol 180 Graphic | Used by:181 | |
Symbol 181 MovieClip | Uses:180 | Used by:184 |
Symbol 182 Graphic | Used by:183 | |
Symbol 183 MovieClip | Uses:182 | Used by:184 |
Symbol 184 MovieClip {Mob} | Uses:74 75 77 79 81 83 85 87 89 91 93 95 100 102 104 106 108 110 112 114 116 121 123 125 127 129 131 133 135 137 139 141 143 145 147 149 151 153 155 161 163 165 167 169 171 173 175 177 179 181 183 | Used by:Timeline |
Symbol 185 Graphic | Used by:186 | |
Symbol 186 MovieClip {LargeTurret} | Uses:185 | Used by:Timeline |
Symbol 187 Graphic | Used by:190 | |
Symbol 188 Graphic | Used by:189 | |
Symbol 189 MovieClip | Uses:188 | Used by:190 |
Symbol 190 MovieClip {LargeTurretTop} | Uses:187 189 | Used by:Timeline |
Symbol 191 Graphic | Used by:192 | |
Symbol 192 MovieClip {SmallTurret} | Uses:191 | Used by:Timeline |
Symbol 193 Graphic | Used by:199 | |
Symbol 194 Graphic | Used by:199 | |
Symbol 195 Graphic | Used by:199 | |
Symbol 196 Graphic | Used by:199 | |
Symbol 197 Graphic | Used by:199 | |
Symbol 198 Graphic | Used by:199 | |
Symbol 199 MovieClip {SmallTurretTop} | Uses:193 194 195 196 197 198 | Used by:Timeline |
Symbol 200 Graphic | Used by:201 | |
Symbol 201 MovieClip {TurretRange} | Uses:200 | Used by:Timeline |
Symbol 202 Font | Used by:203 237 257 260 263 266 288 298 300 314 318 320 322 332 334 336 372 374 376 379 381 383 385 460 477 481 483 484 485 | |
Symbol 203 Text | Uses:202 | Used by:204 205 238 |
Symbol 204 MovieClip {StartBtn_mc} | Uses:33 203 | Used by:Timeline |
Symbol 205 MovieClip {StartBtnDown_mc} | Uses:33 203 | Used by:Timeline |
Symbol 206 Graphic | Used by:207 274 | |
Symbol 207 MovieClip {BuildBtnRed} | Uses:206 | Used by:Timeline |
Symbol 208 Graphic | Used by:209 | |
Symbol 209 MovieClip {FrostTurret} | Uses:208 | Used by:Timeline |
Symbol 210 Graphic | Used by:211 | |
Symbol 211 MovieClip {FrostTurretTop} | Uses:210 | Used by:Timeline |
Symbol 212 Graphic | Used by:213 | |
Symbol 213 MovieClip {FrostTurretImg} | Uses:212 | Used by:214 241 396 Timeline |
Symbol 214 MovieClip {BuildBtn3_mc} | Uses:33 213 | Used by:Timeline |
Symbol 215 Graphic | Used by:216 | |
Symbol 216 MovieClip | Uses:215 | Used by:219 Timeline |
Symbol 217 Graphic | Used by:218 | |
Symbol 218 MovieClip | Uses:217 | Used by:219 Timeline |
Symbol 219 MovieClip {Freeze_mc} | Uses:216 218 | Used by:Timeline |
Symbol 220 Graphic | Used by:221 | |
Symbol 221 MovieClip {SplashTurretImg} | Uses:220 | Used by:231 242 399 Timeline |
Symbol 222 Graphic | Used by:223 | |
Symbol 223 MovieClip {SplashTurret} | Uses:222 | Used by:Timeline |
Symbol 224 Graphic | Used by:230 | |
Symbol 225 Graphic | Used by:230 | |
Symbol 226 Graphic | Used by:230 | |
Symbol 227 Graphic | Used by:230 | |
Symbol 228 Graphic | Used by:230 | |
Symbol 229 Graphic | Used by:230 | |
Symbol 230 MovieClip {SplashTurretTop} | Uses:224 225 226 227 228 229 | Used by:Timeline |
Symbol 231 MovieClip {BuildBtn4_mc} | Uses:33 221 | Used by:Timeline |
Symbol 232 Graphic | Used by:233 | |
Symbol 233 MovieClip | Uses:232 | Used by:236 Timeline |
Symbol 234 Graphic | Used by:235 | |
Symbol 235 MovieClip | Uses:234 | Used by:236 Timeline |
Symbol 236 MovieClip {Splash_mc} | Uses:233 235 | Used by:Timeline |
Symbol 237 Text | Uses:202 | Used by:238 |
Symbol 238 MovieClip {StartBtnOver_mc} | Uses:237 33 203 | Used by:Timeline |
Symbol 239 MovieClip {BuildBtn1Down_mc} | Uses:33 35 | Used by:Timeline |
Symbol 240 MovieClip {BuildBtn2Down_mc} | Uses:33 38 | Used by:Timeline |
Symbol 241 MovieClip {BuildBtn3Down_mc} | Uses:33 213 | Used by:Timeline |
Symbol 242 MovieClip {BuildBtn4Down_mc} | Uses:33 221 | Used by:Timeline |
Symbol 243 Graphic | Used by:244 | |
Symbol 244 MovieClip {FrameBase2} | Uses:243 | Used by:247 Timeline |
Symbol 245 Graphic | Used by:246 | |
Symbol 246 MovieClip {FrameInfoPanel} | Uses:245 | Used by:247 Timeline |
Symbol 247 MovieClip {Frame_mc} | Uses:29 244 246 | Used by:Timeline |
Symbol 248 Bitmap | Used by:249 | |
Symbol 249 Graphic | Uses:248 | Used by:250 |
Symbol 250 MovieClip {Background_mc} | Uses:249 | Used by:339 Timeline |
Symbol 251 Bitmap | Used by:252 | |
Symbol 252 Graphic | Uses:251 | Used by:254 |
Symbol 253 Text | Uses:56 | Used by:254 |
Symbol 254 MovieClip {Path_mc} | Uses:252 253 | Used by:339 Timeline |
Symbol 255 Font | Used by:256 259 262 265 287 297 318 320 322 332 334 336 372 374 376 381 383 385 | |
Symbol 256 Text | Uses:255 | Used by:258 |
Symbol 257 Text | Uses:202 | Used by:258 |
Symbol 258 MovieClip {FrostTurretInfo} | Uses:256 257 | Used by:Timeline |
Symbol 259 Text | Uses:255 | Used by:261 |
Symbol 260 Text | Uses:202 | Used by:261 |
Symbol 261 MovieClip {LargeTurretInfo} | Uses:259 260 | Used by:Timeline |
Symbol 262 Text | Uses:255 | Used by:264 |
Symbol 263 Text | Uses:202 | Used by:264 |
Symbol 264 MovieClip {SmallTurretInfo} | Uses:262 263 | Used by:Timeline |
Symbol 265 Text | Uses:255 | Used by:267 |
Symbol 266 Text | Uses:202 | Used by:267 |
Symbol 267 MovieClip {SplashTurretInfo} | Uses:265 266 | Used by:Timeline |
Symbol 268 Graphic | Used by:269 | |
Symbol 269 MovieClip {SmallSelect} | Uses:268 | Used by:Timeline |
Symbol 270 Graphic | Used by:271 | |
Symbol 271 MovieClip {LargeSelect} | Uses:270 | Used by:Timeline |
Symbol 272 MovieClip {UpgradeBtn_mc} | Uses:33 | Used by:Timeline |
Symbol 273 MovieClip {UpgradeBtnDown_mc} | Uses:33 | Used by:Timeline |
Symbol 274 MovieClip {UpgradeBtnRed_mc} | Uses:206 | Used by:Timeline |
Symbol 275 Graphic | Used by:276 | |
Symbol 276 MovieClip {AuraTurretImg} | Uses:275 | Used by:277 278 402 Timeline |
Symbol 277 MovieClip {BuildBtn5_mc} | Uses:33 276 | Used by:Timeline |
Symbol 278 MovieClip {BuildBtn5Down_mc} | Uses:33 276 | Used by:Timeline |
Symbol 279 Graphic | Used by:282 | |
Symbol 280 Graphic | Used by:281 | |
Symbol 281 MovieClip {FlameTurretTop} | Uses:280 | Used by:282 Timeline |
Symbol 282 MovieClip {FlameTurretImg} | Uses:279 281 | Used by:283 284 405 Timeline |
Symbol 283 MovieClip {BuildBtn6_mc} | Uses:33 282 | Used by:Timeline |
Symbol 284 MovieClip {BuildBtn6Down_mc} | Uses:33 282 | Used by:Timeline |
Symbol 285 Graphic | Used by:286 | |
Symbol 286 MovieClip {AuraTurret} | Uses:285 | Used by:Timeline |
Symbol 287 Text | Uses:255 | Used by:289 |
Symbol 288 Text | Uses:202 | Used by:289 |
Symbol 289 MovieClip {AuraTurretInfo} | Uses:287 288 | Used by:Timeline |
Symbol 290 Graphic | Used by:294 | |
Symbol 291 Graphic | Used by:294 | |
Symbol 292 Graphic | Used by:294 | |
Symbol 293 Graphic | Used by:294 | |
Symbol 294 MovieClip {Link_mc} | Uses:290 291 292 293 | Used by:Timeline |
Symbol 295 Graphic | Used by:296 | |
Symbol 296 MovieClip {FlameTurret} | Uses:295 | Used by:Timeline |
Symbol 297 Text | Uses:255 | Used by:299 |
Symbol 298 Text | Uses:202 | Used by:299 |
Symbol 299 MovieClip {FlameTurretInfo} | Uses:297 298 | Used by:Timeline |
Symbol 300 Text | Uses:202 | Used by:301 302 303 |
Symbol 301 MovieClip {NextWaveBtn_mc} | Uses:33 300 | Used by:Timeline |
Symbol 302 MovieClip {NextWaveBtnDown_mc} | Uses:33 300 | Used by:Timeline |
Symbol 303 MovieClip {NextWaveBtnOver_mc} | Uses:33 300 | Used by:Timeline |
Symbol 304 Graphic | Used by:305 | |
Symbol 305 MovieClip | Uses:304 | Used by:306 307 308 Timeline |
Symbol 306 MovieClip {PauseBtn_mc} | Uses:33 305 | Used by:Timeline |
Symbol 307 MovieClip {PauseBtnDown_mc} | Uses:33 305 | Used by:Timeline |
Symbol 308 MovieClip {PauseBtnOver_mc} | Uses:33 305 | Used by:Timeline |
Symbol 309 Graphic | Used by:310 | |
Symbol 310 MovieClip | Uses:309 | Used by:311 312 313 353 Timeline |
Symbol 311 MovieClip {PlayBtn_mc} | Uses:33 310 | Used by:Timeline |
Symbol 312 MovieClip {PlayBtnDown_mc} | Uses:33 310 | Used by:Timeline |
Symbol 313 MovieClip {PlayBtnOver_mc} | Uses:33 310 | Used by:Timeline |
Symbol 314 Text | Uses:202 | Used by:315 316 317 |
Symbol 315 MovieClip {StartGameBtn_mc} | Uses:33 314 | Used by:Timeline |
Symbol 316 MovieClip {StartGameBtnDown_mc} | Uses:33 314 | Used by:Timeline |
Symbol 317 MovieClip {StartGameBtnOver_mc} | Uses:33 314 | Used by:Timeline |
Symbol 318 EditableText | Uses:202 255 | Used by:319 |
Symbol 319 MovieClip {WaveXStartBtn_mc} | Uses:33 318 | Used by:Timeline |
Symbol 320 EditableText | Uses:202 255 | Used by:321 |
Symbol 321 MovieClip {WaveXStartBtnDown_mc} | Uses:33 320 | Used by:Timeline |
Symbol 322 EditableText | Uses:202 255 | Used by:323 |
Symbol 323 MovieClip {WaveXStartBtnOver_mc} | Uses:33 322 | Used by:Timeline |
Symbol 324 Graphic | Used by:326 | |
Symbol 325 Graphic | Used by:326 | |
Symbol 326 MovieClip {Munio_fla.X_144} | Uses:324 325 | Used by:331 |
Symbol 327 EditableText | Uses:56 | Used by:331 |
Symbol 328 EditableText | Uses:56 | Used by:331 |
Symbol 329 EditableText | Uses:56 | Used by:331 |
Symbol 330 EditableText | Uses:56 | Used by:331 |
Symbol 331 MovieClip {WaveSelectFrame_mc} | Uses:29 326 327 328 329 330 | Used by:Timeline |
Symbol 332 EditableText | Uses:202 255 | Used by:333 |
Symbol 333 MovieClip {ProceedBtn_mc} | Uses:33 332 | Used by:Timeline |
Symbol 334 EditableText | Uses:202 255 | Used by:335 |
Symbol 335 MovieClip {ProceedBtnDown_mc} | Uses:33 334 | Used by:Timeline |
Symbol 336 EditableText | Uses:202 255 | Used by:337 |
Symbol 337 MovieClip {ProceedBtnOver_mc} | Uses:33 336 | Used by:Timeline |
Symbol 338 Graphic | Used by:340 | |
Symbol 339 MovieClip {MapBackground} | Uses:250 254 | Used by:340 |
Symbol 340 MovieClip {LargeSymbols} | Uses:338 339 15 12 18 | Used by:348 523 Timeline |
Symbol 341 Text | Uses:56 | Used by:348 |
Symbol 342 EditableText | Uses:56 | Used by:348 |
Symbol 343 Bitmap | Used by:345 517 | |
Symbol 344 Bitmap | Used by:345 | |
Symbol 345 Graphic | Uses:343 344 | Used by:346 |
Symbol 346 MovieClip {Munio_fla.BannerLink_mc_151} | Uses:345 | Used by:348 380 426 523 |
Symbol 347 Text | Uses:56 | Used by:348 523 |
Symbol 348 MovieClip {GameLost} | Uses:340 30 341 342 346 347 | Used by:Timeline |
Symbol 349 Bitmap | Used by:350 | |
Symbol 350 Graphic | Uses:349 | Used by:351 |
Symbol 351 MovieClip {Explosion_mc} | Uses:350 | Used by:Timeline |
Symbol 352 Graphic | Used by:353 | |
Symbol 353 MovieClip | Uses:352 310 | Used by:354 355 356 |
Symbol 354 MovieClip {NextWaveInfoBtn_mc} | Uses:33 353 | Used by:Timeline |
Symbol 355 MovieClip {NextWaveInfoBtnDown_mc} | Uses:33 353 | Used by:Timeline |
Symbol 356 MovieClip {NextWaveInfoBtnOver_mc} | Uses:33 353 | Used by:Timeline |
Symbol 357 MovieClip {LandBtn_mc} | Uses:7 18 | Used by:Timeline |
Symbol 358 MovieClip {LandBtnDown_mc} | Uses:7 18 | Used by:Timeline |
Symbol 359 MovieClip {SeaBtn_mc} | Uses:7 15 | Used by:Timeline |
Symbol 360 MovieClip {SeaBtnDown_mc} | Uses:7 15 | Used by:Timeline |
Symbol 361 MovieClip {AirBtn_mc} | Uses:7 12 | Used by:Timeline |
Symbol 362 MovieClip {AirBtnDown_mc} | Uses:7 12 | Used by:Timeline |
Symbol 363 Graphic | Used by:364 | |
Symbol 364 MovieClip {ElementSelected_mc} | Uses:363 | Used by:Timeline |
Symbol 365 Font | Used by:366 368 370 440 | |
Symbol 366 Text | Uses:365 | Used by:367 |
Symbol 367 MovieClip {LandInfo} | Uses:366 | Used by:Timeline |
Symbol 368 Text | Uses:365 | Used by:369 |
Symbol 369 MovieClip {SeaInfo} | Uses:368 | Used by:Timeline |
Symbol 370 Text | Uses:365 | Used by:371 |
Symbol 371 MovieClip {AirInfo} | Uses:370 | Used by:Timeline |
Symbol 372 EditableText | Uses:202 255 | Used by:373 |
Symbol 373 MovieClip {HelpBtn_mc} | Uses:33 372 | Used by:Timeline |
Symbol 374 EditableText | Uses:202 255 | Used by:375 |
Symbol 375 MovieClip {HelpBtnDown_mc} | Uses:33 374 | Used by:Timeline |
Symbol 376 EditableText | Uses:202 255 | Used by:377 |
Symbol 377 MovieClip {HelpBtnOver_mc} | Uses:33 376 | Used by:Timeline |
Symbol 378 MovieClip {Help} | Used by:Timeline | |
Symbol 379 Text | Uses:202 | Used by:380 |
Symbol 380 MovieClip {StartMenu} | Uses:29 27 346 379 | Used by:Timeline |
Symbol 381 EditableText | Uses:202 255 | Used by:382 |
Symbol 382 MovieClip {BackBtn_mc} | Uses:33 381 | Used by:Timeline |
Symbol 383 EditableText | Uses:202 255 | Used by:384 |
Symbol 384 MovieClip {BackBtnDown_mc} | Uses:33 383 | Used by:Timeline |
Symbol 385 EditableText | Uses:202 255 | Used by:386 |
Symbol 386 MovieClip {BackBtnOver_mc} | Uses:33 385 | Used by:Timeline |
Symbol 387 Font | Used by:388 389 391 392 394 395 397 398 400 401 403 404 406 407 409 410 412 413 415 416 418 419 421 422 424 425 428 429 430 432 452 456 | |
Symbol 388 Text | Uses:387 | Used by:390 |
Symbol 389 Text | Uses:387 | Used by:390 |
Symbol 390 MovieClip {LargeTurretHelp_mc} | Uses:388 389 35 | Used by:427 |
Symbol 391 Text | Uses:387 | Used by:393 |
Symbol 392 Text | Uses:387 | Used by:393 |
Symbol 393 MovieClip {SmallTurretHelp_mc} | Uses:391 392 38 | Used by:427 |
Symbol 394 Text | Uses:387 | Used by:396 |
Symbol 395 Text | Uses:387 | Used by:396 |
Symbol 396 MovieClip {FrostTurretHelp_mc} | Uses:394 395 213 | Used by:427 |
Symbol 397 Text | Uses:387 | Used by:399 |
Symbol 398 Text | Uses:387 | Used by:399 |
Symbol 399 MovieClip {SplashTurretHelp_mc} | Uses:397 398 221 | Used by:427 |
Symbol 400 Text | Uses:387 | Used by:402 |
Symbol 401 Text | Uses:387 | Used by:402 |
Symbol 402 MovieClip {AuraTurretHelp_mc} | Uses:400 401 276 | Used by:427 |
Symbol 403 Text | Uses:387 | Used by:405 |
Symbol 404 Text | Uses:387 | Used by:405 |
Symbol 405 MovieClip {FlameTurretHelp_mc} | Uses:403 404 282 | Used by:427 |
Symbol 406 Text | Uses:387 | Used by:408 |
Symbol 407 Text | Uses:387 | Used by:408 |
Symbol 408 MovieClip {ElementHelp_mc} | Uses:406 407 18 15 12 | Used by:427 |
Symbol 409 Text | Uses:387 | Used by:411 |
Symbol 410 Text | Uses:387 | Used by:411 |
Symbol 411 MovieClip {LandHelpHelp_mc} | Uses:409 410 18 | Used by:427 |
Symbol 412 Text | Uses:387 | Used by:414 |
Symbol 413 Text | Uses:387 | Used by:414 |
Symbol 414 MovieClip {SeaHelpHelp_mc} | Uses:412 413 15 | Used by:427 |
Symbol 415 Text | Uses:387 | Used by:417 |
Symbol 416 Text | Uses:387 | Used by:417 |
Symbol 417 MovieClip {AirHelpHelp_mc} | Uses:415 416 12 | Used by:427 |
Symbol 418 Text | Uses:387 | Used by:420 |
Symbol 419 Text | Uses:387 | Used by:420 |
Symbol 420 MovieClip {ObjectiveHelp_mc} | Uses:418 419 | Used by:427 |
Symbol 421 Text | Uses:387 | Used by:423 |
Symbol 422 Text | Uses:387 | Used by:423 |
Symbol 423 MovieClip {GamePlayHelp_mc} | Uses:421 422 | Used by:427 |
Symbol 424 Text | Uses:387 | Used by:426 |
Symbol 425 Text | Uses:387 | Used by:426 |
Symbol 426 MovieClip {HelpMain} | Uses:424 425 346 | Used by:427 |
Symbol 427 MovieClip {TurretHelp_mc} | Uses:390 393 396 399 402 405 408 411 414 417 420 423 426 | Used by:Timeline |
Symbol 428 Text | Uses:387 | Used by:431 |
Symbol 429 Text | Uses:387 | Used by:431 |
Symbol 430 Text | Uses:387 | Used by:431 |
Symbol 431 MovieClip {HelpMenu} | Uses:29 27 428 429 430 | Used by:Timeline |
Symbol 432 Text | Uses:387 | Used by:433 434 435 |
Symbol 433 MovieClip {ElementBtn_mc} | Uses:33 432 | Used by:Timeline |
Symbol 434 MovieClip {ElementBtnDown_mc} | Uses:33 432 | Used by:Timeline |
Symbol 435 MovieClip {ElementBtnOver_mc} | Uses:33 432 | Used by:Timeline |
Symbol 436 MovieClip {ElementBlocker_mc} | Uses:7 | Used by:Timeline |
Symbol 437 MovieClip {BalanceBtn_mc} | Uses:7 9 | Used by:Timeline |
Symbol 438 MovieClip {BalanceBtnDown_mc} | Uses:7 9 | Used by:Timeline |
Symbol 439 Font | Used by:440 | |
Symbol 440 Text | Uses:439 365 | Used by:441 |
Symbol 441 MovieClip {BalanceInfo} | Uses:440 | Used by:Timeline |
Symbol 442 Bitmap | Used by:443 | |
Symbol 443 Graphic | Uses:442 | Used by:445 |
Symbol 444 Text | Uses:56 | Used by:445 |
Symbol 445 MovieClip {WaterPath_mc} | Uses:443 444 | Used by:Timeline |
Symbol 446 MovieClip {TypeAirBtn_mc} | Uses:33 12 | Used by:Timeline |
Symbol 447 MovieClip {TypeAirBtnDown_mc} | Uses:33 12 | Used by:Timeline |
Symbol 448 MovieClip {TypeLandBtn_mc} | Uses:33 18 | Used by:Timeline |
Symbol 449 MovieClip {TypeLandBtnDown_mc} | Uses:33 18 | Used by:Timeline |
Symbol 450 MovieClip {TypeSeaBtn_mc} | Uses:33 15 | Used by:Timeline |
Symbol 451 MovieClip {TypeSeaBtnDown_mc} | Uses:33 15 | Used by:Timeline |
Symbol 452 Text | Uses:387 | Used by:453 454 455 |
Symbol 453 MovieClip {ObjectiveBtn_mc} | Uses:33 452 | Used by:Timeline |
Symbol 454 MovieClip {ObjectiveBtnDown_mc} | Uses:33 452 | Used by:Timeline |
Symbol 455 MovieClip {ObjectiveBtnOver_mc} | Uses:33 452 | Used by:Timeline |
Symbol 456 Text | Uses:387 | Used by:457 458 459 |
Symbol 457 MovieClip {GamePlayBtn_mc} | Uses:33 456 | Used by:Timeline |
Symbol 458 MovieClip {GamePlayBtnDown_mc} | Uses:33 456 | Used by:Timeline |
Symbol 459 MovieClip {GamePlayBtnOver_mc} | Uses:33 456 | Used by:Timeline |
Symbol 460 Text | Uses:202 | Used by:461 462 463 |
Symbol 461 MovieClip {BackToStartBtn_mc} | Uses:33 460 | Used by:Timeline |
Symbol 462 MovieClip {BackToStartBtnDown_mc} | Uses:33 460 | Used by:Timeline |
Symbol 463 MovieClip {BackToStartBtnOver_mc} | Uses:33 460 | Used by:Timeline |
Symbol 464 Graphic | Used by:465 | |
Symbol 465 MovieClip | Uses:464 | Used by:466 467 468 Timeline |
Symbol 466 MovieClip {MuteBtn_mc} | Uses:33 465 | Used by:Timeline |
Symbol 467 MovieClip {MuteBtnDown_mc} | Uses:33 465 | Used by:Timeline |
Symbol 468 MovieClip {MuteBtnOver_mc} | Uses:33 465 | Used by:Timeline |
Symbol 469 Graphic | Used by:470 | |
Symbol 470 MovieClip | Uses:469 | Used by:471 472 473 Timeline |
Symbol 471 MovieClip {UnMuteBtn_mc} | Uses:33 470 | Used by:Timeline |
Symbol 472 MovieClip {UnMuteBtnDown_mc} | Uses:33 470 | Used by:Timeline |
Symbol 473 MovieClip {UnMuteBtnOver_mc} | Uses:33 470 | Used by:Timeline |
Symbol 474 Graphic | Used by:475 | |
Symbol 475 MovieClip {DeSelectIcon} | Uses:474 | Used by:476 Timeline |
Symbol 476 MovieClip {DeSelectOver} | Uses:475 | Used by:Timeline |
Symbol 477 Text | Uses:202 | Used by:478 479 480 |
Symbol 478 MovieClip {CreditsBtn_mc} | Uses:33 477 | Used by:Timeline |
Symbol 479 MovieClip {CreditsBtnDown_mc} | Uses:33 477 | Used by:Timeline |
Symbol 480 MovieClip {CreditsBtnOver_mc} | Uses:33 477 | Used by:Timeline |
Symbol 481 Text | Uses:202 | Used by:482 |
Symbol 482 MovieClip | Uses:29 481 | Used by:486 |
Symbol 483 Text | Uses:202 | Used by:486 |
Symbol 484 Text | Uses:202 | Used by:486 |
Symbol 485 Text | Uses:202 | Used by:486 |
Symbol 486 MovieClip {CreditsFrame_mc} | Uses:29 482 483 484 485 | Used by:Timeline |
Symbol 487 Sound {sndLarge} | Used by:Timeline | |
Symbol 488 Sound {sndSmall} | Used by:Timeline | |
Symbol 489 Sound {sndEMP} | Used by:Timeline | |
Symbol 490 Sound {sndSplash} | Used by:Timeline | |
Symbol 491 Sound {sndSonic} | Used by:Timeline | |
Symbol 492 Sound {sndSplashExplosion} | Used by:Timeline | |
Symbol 493 Sound {sndButton} | Used by:Timeline | |
Symbol 494 Sound {sndLargeBuild} | Used by:Timeline | |
Symbol 495 Sound {sndSmallBuild} | Used by:Timeline | |
Symbol 496 Sound {sndSiren} | Used by:Timeline | |
Symbol 497 Sound {sndExplosion} | Used by:Timeline | |
Symbol 498 Graphic | Used by:519 | |
Symbol 499 Graphic | Used by:518 | |
Symbol 500 Graphic | Used by:504 | |
Symbol 501 Graphic | Used by:504 | |
Symbol 502 Graphic | Used by:504 | |
Symbol 503 Graphic | Used by:504 | |
Symbol 504 MovieClip {Munio_fla.Sprite8_235} | Uses:500 501 502 503 | Used by:518 |
Symbol 505 Graphic | Used by:506 | |
Symbol 506 MovieClip {Munio_fla.Sprite18_236} | Uses:505 | Used by:518 |
Symbol 507 Bitmap | Used by:508 | |
Symbol 508 Graphic | Uses:507 | Used by:518 |
Symbol 509 Graphic | Used by:516 | |
Symbol 510 Graphic | Used by:516 | |
Symbol 511 Graphic | Used by:516 | |
Symbol 512 Graphic | Used by:516 | |
Symbol 513 Graphic | Used by:516 | |
Symbol 514 Graphic | Used by:516 | |
Symbol 515 Graphic | Used by:516 | |
Symbol 516 MovieClip | Uses:509 510 511 512 513 514 515 | Used by:518 |
Symbol 517 Graphic | Uses:343 | Used by:518 |
Symbol 518 MovieClip {Munio_fla.Sprite21_234} | Uses:499 504 506 508 516 5 517 | Used by:519 |
Symbol 519 MovieClip {Intro} | Uses:498 518 | Used by:Timeline |
Symbol 520 MovieClip {Start} | Used by:Timeline | |
Symbol 521 Text | Uses:56 | Used by:523 |
Symbol 522 EditableText | Uses:56 | Used by:523 |
Symbol 523 MovieClip {GameWon} | Uses:340 30 521 522 346 347 | Used by:Timeline |
Instance Names
"HealthText" | Symbol 60 MovieClip {Healthbar_mc} Frame 1 | Symbol 57 EditableText |
"HealthAmount" | Symbol 60 MovieClip {Healthbar_mc} Frame 1 | Symbol 59 MovieClip {Health_mc} |
"Anim" | Symbol 184 MovieClip {Mob} Frame 1 | Symbol 74 MovieClip |
"Mob06" | Symbol 184 MovieClip {Mob} Frame 6 | Symbol 85 MovieClip |
"Anim" | Symbol 184 MovieClip {Mob} Frame 12 | Symbol 100 MovieClip |
"Check" | Symbol 331 MovieClip {WaveSelectFrame_mc} Frame 1 | Symbol 326 MovieClip {Munio_fla.X_144} |
"PasswordLabel" | Symbol 331 MovieClip {WaveSelectFrame_mc} Frame 1 | Symbol 328 EditableText |
"LvlSelect" | Symbol 331 MovieClip {WaveSelectFrame_mc} Frame 1 | Symbol 329 EditableText |
"PasswordInput" | Symbol 331 MovieClip {WaveSelectFrame_mc} Frame 1 | Symbol 330 EditableText |
"Password" | Symbol 348 MovieClip {GameLost} Frame 1 | Symbol 342 EditableText |
"EmailBtn" | Symbol 486 MovieClip {CreditsFrame_mc} Frame 1 | Symbol 482 MovieClip |
"Effects" | Symbol 518 MovieClip {Munio_fla.Sprite21_234} Frame 6 | Symbol 504 MovieClip {Munio_fla.Sprite8_235} |
"GameBy" | Symbol 518 MovieClip {Munio_fla.Sprite21_234} Frame 38 | Symbol 516 MovieClip |
"Retro_png" | Symbol 518 MovieClip {Munio_fla.Sprite21_234} Frame 62 | Symbol 5 MovieClip {Banner} |
"Password" | Symbol 523 MovieClip {GameWon} Frame 1 | Symbol 522 EditableText |
Special Tags
FileAttributes (69) | Timeline Frame 1 | Access local files only, Metadata not present, AS3. |
EnableDebugger2 (64) | Timeline Frame 1 | 31 bytes "u.$1$hX$xyiQfC8A/Iqg98arM39IU/." |
Labels
"Loading" | Frame 1 |
"Container" | Frame 2 |
"Intro" | Frame 14 |
"Start" | Frame 15 |
"Help" | Frame 16 |
"Game" | Frame 17 |
"GameWon" | Frame 18 |
"GameLost" | Frame 19 |
"Inactive" | Symbol 55 MovieClip {Grid} Frame 1 |
"MouseOver" | Symbol 55 MovieClip {Grid} Frame 2 |
"Selected" | Symbol 55 MovieClip {Grid} Frame 3 |
"Road" | Symbol 55 MovieClip {Grid} Frame 5 |
"1" | Symbol 184 MovieClip {Mob} Frame 1 |
"2" | Symbol 184 MovieClip {Mob} Frame 2 |
"3" | Symbol 184 MovieClip {Mob} Frame 3 |
"4" | Symbol 184 MovieClip {Mob} Frame 4 |
"5" | Symbol 184 MovieClip {Mob} Frame 5 |
"6" | Symbol 184 MovieClip {Mob} Frame 6 |
"_6" | Symbol 184 MovieClip {Mob} Frame 6 |
"7" | Symbol 184 MovieClip {Mob} Frame 7 |
"8" | Symbol 184 MovieClip {Mob} Frame 8 |
"9" | Symbol 184 MovieClip {Mob} Frame 9 |
"10" | Symbol 184 MovieClip {Mob} Frame 10 |
"11" | Symbol 184 MovieClip {Mob} Frame 11 |
"12" | Symbol 184 MovieClip {Mob} Frame 12 |
"13" | Symbol 184 MovieClip {Mob} Frame 13 |
"14" | Symbol 184 MovieClip {Mob} Frame 14 |
"15" | Symbol 184 MovieClip {Mob} Frame 15 |
"16" | Symbol 184 MovieClip {Mob} Frame 16 |
"17" | Symbol 184 MovieClip {Mob} Frame 17 |
"18" | Symbol 184 MovieClip {Mob} Frame 18 |
"19" | Symbol 184 MovieClip {Mob} Frame 19 |
"20" | Symbol 184 MovieClip {Mob} Frame 20 |
"21" | Symbol 184 MovieClip {Mob} Frame 21 |
"22" | Symbol 184 MovieClip {Mob} Frame 22 |
"23" | Symbol 184 MovieClip {Mob} Frame 23 |
"24" | Symbol 184 MovieClip {Mob} Frame 24 |
"25" | Symbol 184 MovieClip {Mob} Frame 25 |
"26" | Symbol 184 MovieClip {Mob} Frame 26 |
"27" | Symbol 184 MovieClip {Mob} Frame 27 |
"28" | Symbol 184 MovieClip {Mob} Frame 28 |
"29" | Symbol 184 MovieClip {Mob} Frame 29 |
"30" | Symbol 184 MovieClip {Mob} Frame 30 |
"31" | Symbol 184 MovieClip {Mob} Frame 31 |
"32" | Symbol 184 MovieClip {Mob} Frame 32 |
"33" | Symbol 184 MovieClip {Mob} Frame 33 |
"34" | Symbol 184 MovieClip {Mob} Frame 34 |
"35" | Symbol 184 MovieClip {Mob} Frame 35 |
"36" | Symbol 184 MovieClip {Mob} Frame 36 |
"37" | Symbol 184 MovieClip {Mob} Frame 37 |
"38" | Symbol 184 MovieClip {Mob} Frame 38 |
"39" | Symbol 184 MovieClip {Mob} Frame 39 |
"40" | Symbol 184 MovieClip {Mob} Frame 40 |
"41" | Symbol 184 MovieClip {Mob} Frame 41 |
"42" | Symbol 184 MovieClip {Mob} Frame 42 |
"43" | Symbol 184 MovieClip {Mob} Frame 43 |
"44" | Symbol 184 MovieClip {Mob} Frame 44 |
"45" | Symbol 184 MovieClip {Mob} Frame 45 |
"46" | Symbol 184 MovieClip {Mob} Frame 46 |
"47" | Symbol 184 MovieClip {Mob} Frame 47 |
"48" | Symbol 184 MovieClip {Mob} Frame 48 |
"49" | Symbol 184 MovieClip {Mob} Frame 49 |
"50" | Symbol 184 MovieClip {Mob} Frame 50 |
"Intert" | Symbol 190 MovieClip {LargeTurretTop} Frame 1 |
"Fire" | Symbol 190 MovieClip {LargeTurretTop} Frame 2 |
"Inert" | Symbol 199 MovieClip {SmallTurretTop} Frame 1 |
"Fire" | Symbol 199 MovieClip {SmallTurretTop} Frame 2 |
"Inert" | Symbol 230 MovieClip {SplashTurretTop} Frame 1 |
"Fire" | Symbol 230 MovieClip {SplashTurretTop} Frame 2 |
"Inert" | Symbol 281 MovieClip {FlameTurretTop} Frame 1 |
|