Frame 1
if (false) {
}
Frame 4
MochiAd.showPreGameAd({id:"40f3fcaef877ebf9", res:"640x512", background:4680777, color:6749952, outline:6018364, no_bg:false});
Instance of Symbol 263 MovieClip in Frame 5
on (release) {
getURL ("http://www.chrisperonegames.com", _blank);
}
Frame 5
if (false) {
}
Frame 55
var GameSharedObject = SharedObject.getLocal("theplant");
var LevelsCompleted = 1;
var LevelNum = 1;
if (GameSharedObject.data.levelnum != undefined) {
LevelsCompleted = GameSharedObject.data.levelnum;
LevelNum = LevelsCompleted;
}
var GameMode = 0;
var Difficulty = 1;
var bSound = true;
var bHelpText = true;
var bMusic = true;
var LevelType = "Dirt";
_root.GameModeTxt.text = "Levels";
var MenuSound = new Sound();
MenuSound.attachSound("menuclick.wav");
this.onEnterFrame = function () {
if (!bInit) {
Stage.align = "TL";
Stage.scaleMode = "noScale";
fscommand ("allowscale", "false");
fscommand ("showmenu", "false");
_root.kongregateServices.connect();
bInit = true;
delete this.onEnterFrame;
}
};
Instance of Symbol 232 MovieClip [PlantCursor_mc] in Frame 55
onClipEvent (load) {
this.startDrag(true, 0, 0, 640, 512);
Mouse.hide();
}
onClipEvent (mouseMove) {
if ((_root._xmouse > 640) || (_root._xmouse < 0)) {
Mouse.show();
this._visible = false;
} else if ((_root._ymouse > 512) || (_root._ymouse < 0)) {
Mouse.show();
this._visible = false;
} else {
Mouse.hide();
this._visible = true;
}
}
Frame 56
stop();
Frame 57
stop();
Frame 66
stop();
if (_root.GameMode == 0) {
_root.GameModeTxt.text = "Levels";
_root.LevelType = "Dirt";
_root.LevelTxt.text = "Dirt";
_root.LevelTxt._visible = false;
_root.LevelBackground._visible = false;
_root.LLevelButton._visible = false;
_root.RLevelButton._visible = false;
_root.LevelNumTxt._visible = true;
_root.LevelNumBackground._visible = true;
_root.LLevelNumButton._visible = true;
_root.RLevelNumButton._visible = true;
} else {
_root.GameModeTxt.text = "Endless";
_root.LevelTxt._visible = true;
_root.LevelBackground._visible = true;
_root.LLevelButton._visible = true;
_root.RLevelButton._visible = true;
_root.LevelNum = 1;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
_root.LevelNumTxt._visible = false;
_root.LevelNumBackground._visible = false;
_root.LLevelNumButton._visible = false;
_root.RLevelNumButton._visible = false;
}
switch (_root.Difficulty) {
case 0 :
_root.DifficultyTxt.text = "Easy";
break;
case 1 :
_root.DifficultyTxt.text = "Medium";
break;
case 2 :
_root.DifficultyTxt.text = "Hard";
break;
case 3 :
_root.DifficultyTxt.text = "Extreme";
}
_root.LevelTxt.text = _root.LevelType;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
if (_root.bSound == true) {
_root.SoundTxt.text = "Sound On";
} else {
_root.SoundTxt.text = "Sound Off";
}
if (_root.bHelpText == true) {
_root.HelpTextTxt.text = "HelpText On";
} else {
_root.HelpTextTxt.text = "HelpText Off";
}
switch (_quality) {
case "LOW" :
_root.QualityTxt.text = "Quality Low";
break;
case "MEDIUM" :
_root.QualityTxt.text = "Quality Med";
break;
case "HIGH" :
_root.QualityTxt.text = "Quality High";
break;
case "BEST" :
_root.QualityTxt.text = "Quality Best";
}
Frame 76
stop();
_root.gotoAndPlay("Start");
Instance of Symbol 326 MovieClip in Frame 76
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("ShowCredits");
}
Frame 85
stop();
Frame 95
stop();
_root.gotoAndPlay("Start");
Frame 96
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
mb = "__mochibot__";
mbc = "mochibot.com";
g = (_global ? (_global) : (_level0._root));
if (g[mb + swfid]) {
return(g[mb + swfid]);
}
s = System.security;
x = mc._root.getSWFVersion;
fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5)));
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == "localWithFile") {
return(null);
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=7&fv=") + fv) + "&v=") + escape(getVersion())) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : "");
lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv))));
g[mb + "level"] = lv;
if (fv == 5) {
res = "_level" + lv;
if (!eval (res)) {
loadMovieNum (u, lv);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
__com_mochibot__("6f65e74f", this, 10301, true);
function InitGame() {
bGameStarted = true;
MenuC = new as_scripts.MenuClass();
Game = new as_scripts.MainGame(_root.bSound, _root.bHelpText, _root.bMusic, _root.GameSharedObject);
Game.Init(_root.GameMode, _root.Difficulty, _root.LevelType, _root.LevelNum);
}
var MenuC;
var Game;
var bGameStarted = false;
this.onEnterFrame = function () {
if (!bGameStarted) {
InitGame();
} else {
Game.UpdateGame();
}
};
stop();
Frame 97
stop();
Instance of Symbol 232 MovieClip [PlantCursor_mc] in Frame 97
onClipEvent (load) {
this.startDrag(true, 0, 0, Stage.width, Stage.height);
Mouse.hide();
}
Frame 98
stop();
Frame 99
stop();
Instance of Symbol 180 MovieClip [Cloud_mc] in Frame 99
onClipEvent (enterFrame) {
this.gotoAndPlay("Start");
}
Frame 100
stop();
Symbol 11 MovieClip [BrdrShdw] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "shadowColor");
Symbol 13 MovieClip [BrdrFace] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "buttonColor");
Symbol 16 MovieClip [BrdrBlk] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "borderColor");
Symbol 18 MovieClip [BrdrHilght] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "highlightColor");
Symbol 21 MovieClip [Defaults] Frame 1
#initclip 47
Object.registerClass("Defaults", mx.skins.halo.Defaults);
#endinitclip
Symbol 22 MovieClip [UIObjectExtensions] Frame 1
#initclip 48
Object.registerClass("UIObjectExtensions", mx.core.ext.UIObjectExtensions);
#endinitclip
Symbol 23 MovieClip [UIObject] Frame 1
#initclip 49
Object.registerClass("UIObject", mx.core.UIObject);
#endinitclip
stop();
Symbol 26 Button
on (keyPress "<Tab>") {
this.tabHandler();
}
Symbol 27 MovieClip [FocusRect] Frame 1
#initclip 50
Object.registerClass("FocusRect", mx.skins.halo.FocusRect);
#endinitclip
Symbol 28 MovieClip [FocusManager] Frame 1
#initclip 51
Object.registerClass("FocusManager", mx.managers.FocusManager);
#endinitclip
stop();
Symbol 29 MovieClip [UIComponentExtensions] Frame 1
#initclip 52
Object.registerClass("UIComponentExtensions", mx.core.ext.UIComponentExtensions);
#endinitclip
Symbol 30 MovieClip [UIComponent] Frame 1
#initclip 53
Object.registerClass("UIComponent", mx.core.UIComponent);
#endinitclip
stop();
Symbol 31 MovieClip [SimpleButton] Frame 1
#initclip 54
Object.registerClass("SimpleButton", mx.controls.SimpleButton);
#endinitclip
stop();
Symbol 32 MovieClip [Border] Frame 1
#initclip 55
Object.registerClass("Border", mx.skins.Border);
#endinitclip
stop();
Symbol 33 MovieClip [RectBorder] Frame 1
#initclip 56
mx.skins.SkinElement.registerElement(mx.skins.RectBorder.symbolName, Object(mx.skins.RectBorder));
Object.registerClass("RectBorder", mx.skins.halo.RectBorder);
#endinitclip
stop();
Symbol 34 MovieClip [ButtonSkin] Frame 1
#initclip 57
Object.registerClass("ButtonSkin", mx.skins.halo.ButtonSkin);
#endinitclip
Symbol 35 MovieClip [Button] Frame 1
#initclip 58
Object.registerClass("Button", mx.controls.Button);
#endinitclip
stop();
Instance of Symbol 31 MovieClip [SimpleButton] in Symbol 35 MovieClip [Button] Frame 2
//component parameters
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
Symbol 58 MovieClip [Droplet_mc] Frame 20
gotoAndPlay (1);
Symbol 60 MovieClip [Thorn2_mc] Frame 10
stop();
Symbol 63 MovieClip [Leaf2_mc] Frame 10
stop();
Symbol 64 MovieClip [Leaf3_mc] Frame 10
stop();
Symbol 67 MovieClip [SmallPlantBlood_mc] Frame 10
stop();
Symbol 69 MovieClip [Meteor_mc] Frame 32
function GetFreeDepth() {
var _local3 = 0;
var _local2 = 0;
while (_local2 < 100) {
_local3++;
if (_root.MeteorLayer.getInstanceAtDepth(_local3) == undefined) {
return(_local3);
}
_local2++;
}
return(0);
}
stop();
var SpawnDepth = GetFreeDepth();
var TempExpl = _root.MeteorLayer.attachMovie("MeteorExplosion_mc", "MeteorExplosion" + SpawnDepth, SpawnDepth);
TempExpl._x = this._x;
TempExpl._y = this._y;
removeMovieClip(this);
Symbol 71 MovieClip [MeteorExplosion_mc] Frame 15
function GetFreeDepth() {
var _local3 = 0;
var _local2 = 0;
while (_local2 < 100) {
_local3++;
if (_root.MeteorLayer.getInstanceAtDepth(_local3) == undefined) {
return(_local3);
}
_local2++;
}
return(0);
}
stop();
var SpawnDepth = GetFreeDepth();
var TempMeteor = _root.MeteorLayer.attachMovie("Meteorite_mc", "Meteorite" + SpawnDepth, SpawnDepth);
TempMeteor._x = this._x;
TempMeteor._y = this._y;
removeMovieClip(this);
Symbol 75 MovieClip [Thorn3_mc] Frame 10
stop();
Symbol 82 MovieClip [Meteorite_mc] Frame 1
Symbol 82 MovieClip [Meteorite_mc] Frame 15
Symbol 82 MovieClip [Meteorite_mc] Frame 20
_root.Game.SpawnPlant(this._x, this._y);
Symbol 82 MovieClip [Meteorite_mc] Frame 81
stop();
removeMovieClip(this);
Symbol 89 MovieClip [Bulb2_mc] Frame 10
stop();
Symbol 90 MovieClip [Bulb3_mc] Frame 10
stop();
Symbol 106 MovieClip [PoisonEffect_mc] Frame 15
stop();
Symbol 154 MovieClip [Ant1] Frame 1
stop();
Symbol 154 MovieClip [Ant1] Frame 2
play();
Symbol 154 MovieClip [Ant1] Frame 9
Symbol 154 MovieClip [Ant1] Frame 28
gotoAndPlay ("Idle");
Symbol 154 MovieClip [Ant1] Frame 29
play();
Symbol 154 MovieClip [Ant1] Frame 38
gotoAndPlay ("Idle");
Symbol 157 MovieClip [WorkerAnt] Frame 1
stop();
Symbol 159 MovieClip [AntBlood_mc] Frame 8
stop();
Symbol 160 MovieClip [DigestorTest_mc] Frame 1
stop();
Symbol 160 MovieClip [DigestorTest_mc] Frame 2
play();
Symbol 160 MovieClip [DigestorTest_mc] Frame 12
gotoAndPlay ("Idle");
Symbol 160 MovieClip [DigestorTest_mc] Frame 13
play();
Symbol 160 MovieClip [DigestorTest_mc] Frame 31
play();
Symbol 160 MovieClip [DigestorTest_mc] Frame 50
gotoAndPlay ("Chew");
Symbol 160 MovieClip [DigestorTest_mc] Frame 51
play();
Symbol 160 MovieClip [DigestorTest_mc] Frame 59
gotoAndPlay ("Idle");
Symbol 162 MovieClip [Leaf_mc] Frame 1
stop();
Symbol 162 MovieClip [Leaf_mc] Frame 2
play();
Symbol 162 MovieClip [Leaf_mc] Frame 11
play();
Symbol 162 MovieClip [Leaf_mc] Frame 90
if ((Math.random() * 2) >= 1) {
gotoAndPlay ("Waver");
} else {
gotoAndPlay ("Waver2");
}
Symbol 162 MovieClip [Leaf_mc] Frame 91
play();
Symbol 162 MovieClip [Leaf_mc] Frame 170
if ((Math.random() * 2) >= 1) {
gotoAndPlay ("Waver");
} else {
gotoAndPlay ("Waver2");
}
Symbol 165 MovieClip [NutrientsArrow_mc] Frame 11
gotoAndPlay (1);
Symbol 171 MovieClip [Sun_mc] Frame 40
gotoAndPlay (1);
Symbol 180 MovieClip [Cloud_mc] Frame 1
stop();
Symbol 180 MovieClip [Cloud_mc] Frame 2
play();
Symbol 180 MovieClip [Cloud_mc] Frame 16
gotoAndPlay ("Start");
Symbol 182 MovieClip [DroneAnt] Frame 1
stop();
Symbol 187 Button [LeftArrow_btn]
on (release) {
prevFrame();
}
Symbol 188 MovieClip [Digestor_mc] Frame 1
stop();
Symbol 188 MovieClip [Digestor_mc] Frame 2
play();
Symbol 188 MovieClip [Digestor_mc] Frame 12
gotoAndPlay ("Idle");
Symbol 188 MovieClip [Digestor_mc] Frame 13
play();
Symbol 188 MovieClip [Digestor_mc] Frame 21
play();
Symbol 188 MovieClip [Digestor_mc] Frame 31
play();
Symbol 188 MovieClip [Digestor_mc] Frame 50
gotoAndPlay ("Chew");
Symbol 188 MovieClip [Digestor_mc] Frame 51
play();
Symbol 188 MovieClip [Digestor_mc] Frame 59
gotoAndPlay ("Idle");
Symbol 191 MovieClip [PlantBlood_mc] Frame 10
stop();
Symbol 194 MovieClip Frame 1
stop();
Symbol 194 MovieClip Frame 2
play();
Symbol 194 MovieClip Frame 10
gotoAndPlay ("Idle");
Symbol 194 MovieClip Frame 25
gotoAndPlay ("Idle");
Symbol 198 MovieClip [Thorn_mc] Frame 1
stop();
Symbol 198 MovieClip [Thorn_mc] Frame 2
play();
Symbol 198 MovieClip [Thorn_mc] Frame 11
stop();
Symbol 199 MovieClip [Bulb_mc] Frame 1
stop();
Symbol 199 MovieClip [Bulb_mc] Frame 2
play();
Symbol 199 MovieClip [Bulb_mc] Frame 11
stop();
Symbol 203 MovieClip [Stem_mc] Frame 1
stop();
Symbol 203 MovieClip [Stem_mc] Frame 2
play();
Symbol 203 MovieClip [Stem_mc] Frame 71
gotoAndPlay ("Pulse");
Symbol 204 Button [RightArrow_btn]
on (release) {
nextFrame();
}
Symbol 207 MovieClip [TopPlantBlood_mc] Frame 10
stop();
Symbol 209 MovieClip [PlantTop_mc] Frame 1
stop();
Symbol 209 MovieClip [PlantTop_mc] Frame 2
play();
Symbol 209 MovieClip [PlantTop_mc] Frame 46
gotoAndPlay ("Pulse");
Symbol 209 MovieClip [PlantTop_mc] Frame 47
play();
Symbol 209 MovieClip [PlantTop_mc] Frame 101
stop();
Symbol 211 MovieClip [Plant_mc] Frame 1
stop();
Symbol 211 MovieClip [Plant_mc] Frame 2
play();
Symbol 211 MovieClip [Plant_mc] Frame 46
gotoAndPlay ("Pulse");
Symbol 214 MovieClip [Root_mc] Frame 1
stop();
stop();
Symbol 214 MovieClip [Root_mc] Frame 2
play();
play();
Symbol 214 MovieClip [Root_mc] Frame 21
stop();
stop();
Symbol 215 Button [RightArrow_btn]
on (release) {
if (_root.bMusic == true) {
_root.bMusic = false;
_root.MusicTxt.text = "Music Off";
} else if (_root.bMusic == false) {
_root.bMusic = true;
_root.MusicTxt.text = "Music On";
}
}
Symbol 216 Button [LeftArrow_btn]
on (release) {
if (_root.bMusic == true) {
_root.bMusic = false;
_root.MusicTxt.text = "Music Off";
} else if (_root.bMusic == false) {
_root.bMusic = true;
_root.MusicTxt.text = "Music On";
}
}
Symbol 217 Button [RightArrow_btn]
on (release) {
if (_root.LevelNum < _root.LevelsCompleted) {
_root.LevelNum = _root.LevelNum + 1;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
}
}
Symbol 218 Button [LeftArrow_btn]
on (release) {
if (_root.LevelNum > 1) {
_root.LevelNum = _root.LevelNum - 1;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
}
}
Symbol 219 Button [RightArrow_btn]
on (release) {
if (_root.bHelpText == true) {
_root.bHelpText = false;
_root.HelpTextTxt.text = "HelpText Off";
} else if (_root.bHelpText == false) {
_root.bHelpText = true;
_root.HelpTextTxt.text = "HelpText On";
}
}
Symbol 220 Button [LeftArrow_btn]
on (release) {
if (_root.bHelpText == true) {
_root.bHelpText = false;
_root.HelpTextTxt.text = "HelpText Off";
} else if (_root.bHelpText == false) {
_root.bHelpText = true;
_root.HelpTextTxt.text = "HelpText On";
}
}
Symbol 221 Button [LeftArrow_btn]
on (release) {
switch (_quality) {
case "LOW" :
_quality = "BEST";
_root.QualityTxt.text = "Quality Best";
break;
case "MEDIUM" :
_quality = "LOW";
_root.QualityTxt.text = "Quality Low";
break;
case "HIGH" :
_quality = "MEDIUM";
_root.QualityTxt.text = "Quality Med";
break;
case "BEST" :
_quality = "HIGH";
_root.QualityTxt.text = "Quality High";
}
}
Symbol 222 Button [RightArrow_btn]
on (release) {
switch (_quality) {
case "LOW" :
_quality = "MEDIUM";
_root.QualityTxt.text = "Quality Med";
break;
case "MEDIUM" :
_quality = "HIGH";
_root.QualityTxt.text = "Quality High";
break;
case "HIGH" :
_quality = "BEST";
_root.QualityTxt.text = "Quality Best";
break;
case "BEST" :
_quality = "LOW";
_root.QualityTxt.text = "Quality Low";
}
}
Symbol 223 Button [RightArrow_btn]
on (release) {
if (_root.bSound == true) {
_root.bSound = false;
var global_sound = new Sound();
if (!_root.bSound) {
global_sound.setVolume(0);
} else {
global_sound.setVolume(100);
}
_root.SoundTxt.text = "Sound Off";
} else if (_root.bSound == false) {
_root.bSound = true;
var global_sound = new Sound();
if (!_root.bSound) {
global_sound.setVolume(0);
} else {
global_sound.setVolume(100);
}
_root.SoundTxt.text = "Sound On";
}
}
Symbol 224 Button [LeftArrow_btn]
on (release) {
if (_root.bSound == true) {
_root.bSound = false;
var global_sound = new Sound();
if (!_root.bSound) {
global_sound.setVolume(0);
} else {
global_sound.setVolume(100);
}
_root.SoundTxt.text = "Sound Off";
} else if (_root.bSound == false) {
_root.bSound = true;
var global_sound = new Sound();
if (!_root.bSound) {
global_sound.setVolume(0);
} else {
global_sound.setVolume(100);
}
_root.SoundTxt.text = "Sound On";
}
}
Symbol 225 Button [RightArrow_btn]
on (release) {
switch (_root.GameMode) {
case 1 :
_root.GameMode = 0;
_root.GameModeTxt.text = "Levels";
_root.LevelType = "Dirt";
_root.LevelTxt.text = "Dirt";
_root.LevelTxt._visible = false;
_root.LevelBackground._visible = false;
_root.LLevelButton._visible = false;
_root.RLevelButton._visible = false;
_root.LevelNumTxt._visible = true;
_root.LevelNumBackground._visible = true;
_root.LLevelNumButton._visible = true;
_root.RLevelNumButton._visible = true;
break;
case 0 :
_root.GameMode = 1;
_root.GameModeTxt.text = "Endless";
_root.LevelTxt._visible = true;
_root.LevelBackground._visible = true;
_root.LLevelButton._visible = true;
_root.RLevelButton._visible = true;
_root.LevelNum = 1;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
_root.LevelNumTxt._visible = false;
_root.LevelNumBackground._visible = false;
_root.LLevelNumButton._visible = false;
_root.RLevelNumButton._visible = false;
}
}
Symbol 226 Button [LeftArrow_btn]
on (release) {
switch (_root.GameMode) {
case 1 :
_root.GameMode = 0;
_root.GameModeTxt.text = "Levels";
_root.LevelType = "Dirt";
_root.LevelTxt.text = "Dirt";
_root.LevelTxt._visible = false;
_root.LevelBackground._visible = false;
_root.LLevelButton._visible = false;
_root.RLevelButton._visible = false;
_root.LevelNumTxt._visible = true;
_root.LevelNumBackground._visible = true;
_root.LLevelNumButton._visible = true;
_root.RLevelNumButton._visible = true;
break;
case 0 :
_root.GameMode = 1;
_root.GameModeTxt.text = "Endless";
_root.LevelTxt._visible = true;
_root.LevelBackground._visible = true;
_root.LLevelButton._visible = true;
_root.RLevelButton._visible = true;
_root.LevelNum = 1;
_root.LevelNumTxt.text = "Level " + _root.LevelNum;
_root.LevelNumTxt._visible = false;
_root.LevelNumBackground._visible = false;
_root.LLevelNumButton._visible = false;
_root.RLevelNumButton._visible = false;
}
}
Symbol 227 Button [RightArrow_btn]
on (release) {
switch (_root.Difficulty) {
case 0 :
_root.Difficulty = 1;
_root.DifficultyTxt.text = "Medium";
break;
case 1 :
_root.Difficulty = 2;
_root.DifficultyTxt.text = "Hard";
break;
case 2 :
_root.Difficulty = 3;
_root.DifficultyTxt.text = "Extreme";
break;
case 3 :
_root.Difficulty = 0;
_root.DifficultyTxt.text = "Easy";
}
}
Symbol 228 Button [LeftArrow_btn]
on (release) {
switch (_root.Difficulty) {
case 0 :
_root.Difficulty = 3;
_root.DifficultyTxt.text = "Extreme";
break;
case 3 :
_root.Difficulty = 2;
_root.DifficultyTxt.text = "Hard";
break;
case 2 :
_root.Difficulty = 1;
_root.DifficultyTxt.text = "Medium";
break;
case 1 :
_root.Difficulty = 0;
_root.DifficultyTxt.text = "Easy";
}
}
Symbol 229 Button [RightArrow_btn]
on (release) {
switch (_root.LevelType) {
case "Dirt" :
_root.LevelType = "Jungle";
_root.LevelTxt.text = "Jungle";
break;
case "Jungle" :
_root.LevelType = "Desert";
_root.LevelTxt.text = "Desert";
break;
case "Desert" :
_root.LevelType = "Dirt";
_root.LevelTxt.text = "Dirt";
}
}
Symbol 230 Button [LeftArrow_btn]
on (release) {
switch (_root.LevelType) {
case "Dirt" :
_root.LevelType = "Desert";
_root.LevelTxt.text = "Desert";
break;
case "Desert" :
_root.LevelType = "Jungle";
_root.LevelTxt.text = "Jungle";
break;
case "Jungle" :
_root.LevelType = "Dirt";
_root.LevelTxt.text = "Dirt";
}
}
Symbol 232 MovieClip [PlantCursor_mc] Frame 20
gotoAndPlay (1);
Symbol 240 MovieClip Frame 1
_root.stop();
PercentLoaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
if (PercentLoaded != 100) {
bar._xscale = PercentLoaded;
} else {
_root.gotoAndPlay(3);
}
Symbol 240 MovieClip Frame 2
gotoAndPlay (1);
Symbol 385 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.1");
}
static function showPreGameAd(options) {
var _local30 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local30);
var _local20 = options.clip;
var _local26 = 11000;
var _local29 = options.ad_timeout;
delete options.ad_timeout;
var _local23 = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var _local6 = _local20._mochiad;
_local6.onUnload = function () {
options.ad_finished();
};
var _local15 = _getRes(options);
var _local4 = _local15[0];
var _local14 = _local15[1];
_local6._x = _local4 * 0.5;
_local6._y = _local14 * 0.5;
var chk = _local6.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local14 * -0.5;
var _local8 = chk.createEmptyMovieClip("_mochiad_bar", 4);
_local8._x = 10;
_local8._y = _local14 - 20;
var _local25 = options.color;
delete options.color;
var _local21 = options.background;
delete options.background;
var _local27 = options.outline;
delete options.outline;
var _local5 = _local8.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local21);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local8.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local25);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local7 = _local8.createEmptyMovieClip("_outline", 3);
_local7.lineStyle(0, _local27, 100);
_local7.moveTo(0, 0);
_local7.lineTo(_local4 - 20, 0);
_local7.lineTo(_local4 - 20, 10);
_local7.lineTo(0, 10);
_local7.lineTo(0, 0);
chk.ad_msec = _local26;
chk.ad_timeout = _local29;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = _local23;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
_local6.lc.adLoaded = function (width, height) {
};
_local6.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local12 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local10 = (100 * _local8) / _local4;
var _local11 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local2 = Math.min(100, Math.min(_local10 || 0, _local11));
_local2 = Math.max(this.last_pcnt, _local2);
this.last_pcnt = _local2;
_local9._xscale = _local2;
if (!chk.showing) {
var _local7 = _local12.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local5 > chk.ad_timeout) {
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showInterLevelAd(options) {
var _local16 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local16);
var _local10 = options.clip;
var _local13 = 11000;
var _local15 = options.ad_timeout;
delete options.ad_timeout;
var _local12 = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var _local3 = _local10._mochiad;
_local3.onUnload = function () {
options.ad_finished();
};
var _local6 = _getRes(options);
var _local17 = _local6[0];
var _local14 = _local6[1];
_local3._x = _local17 * 0.5;
_local3._y = _local14 * 0.5;
var chk = _local3.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local13;
chk.ad_timeout = _local15;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = _local12;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
_local3.lc.adLoaded = function (width, height) {
};
_local3.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showTimedAd(options) {
showInterLevelAd(options);
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function _loadCommunicator(options) {
var _local26 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local26);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local18 = options.clip;
var _local20 = "_mochiad_com_" + options.id;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local18[_local20]) {
return(_local18[_local20].lc);
}
var _local21 = options.com_server + options.id;
_allowDomains(_local21);
delete options.id;
delete options.com_server;
var _local25 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local25);
var _local11 = _local17.createEmptyMovieClip("_mochiad_com", 1);
for (var _local15 in options) {
_local11[_local15] = options[_local15];
}
var _local6 = new LocalConnection();
var _local16 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local6.mc = _local17;
_local6.name = _local16;
_local6.allowDomain = function (d) {
return(true);
};
_local6.allowInsecureDomain = _local6.allowDomain;
_local6.connect(_local16);
_local17.lc = _local6;
_local11.lc = _local16;
_local6._id = 0;
_local6._queue = [];
_local6.rpcResult = function (cb_arg) {
var _local8 = parseInt(cb_arg);
var _local4 = this._callbacks[_local8];
if (!_local4) {
return(undefined);
}
delete this._callbacks[_local8];
var _local5 = [];
var _local3 = 2;
while (_local3 < _local4.length) {
_local5.push(_local4[_local3]);
_local3++;
}
_local3 = 1;
while (_local3 < arguments.length) {
_local5.push(arguments[_local3]);
_local3++;
}
var _local6 = _local4[1];
var _local7 = _local4[0];
if (_local7 && (typeof(_local6) == "string")) {
_local6 = _local7[_local6];
}
if (_local6) {
_local6.apply(_local7, _local5);
}
};
_local6._didConnect = function (endpoint) {
this._endpoint = endpoint;
var _local4 = this._queue;
delete this._queue;
var _local5 = this.doSend;
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local5.apply(this, _local3);
_local2++;
}
};
_local6.doSend = function (args, cbobj, cbfn) {
if (this._endpoint == null) {
var _local4 = [];
var _local3 = 0;
while (_local3 < arguments.length) {
_local4.push(arguments[_local3]);
_local3++;
}
this._queue.push(_local4);
return(undefined);
}
this._id = this._id + 1;
var _local5 = this._id;
if ((cbfn === undefined) || (cbfn === null)) {
cbfn = cbobj;
}
this._callbacks[_local5] = [cbobj, cbfn];
var _local7 = new LocalConnection();
var _local9 = _local7.send(this._endpoint, "rpc", _local5, args);
};
_local6._callbacks = {};
_local6._callbacks[0] = [_local6, "_didConnect"];
_local11.st = getTimer();
_local11.loadMovie(_local21 + ".swf", "POST");
return(_local6);
}
static function fetchHighScores(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["fetchHighScores", options];
_local1.doSend(["fetchHighScores", options], callbackObj, callbackMethod);
return(true);
}
static function sendHighScore(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["sendHighScore", options];
_local1.doSend(["sendHighScore", options], callbackObj, callbackMethod);
return(true);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local4);
}
}
Symbol 386 MovieClip [__Packages.as_scripts.MenuClass] Frame 0
class as_scripts.MenuClass
{
var MenuClips;
function MenuClass () {
MenuClips = new Array();
}
function DrawHelpText(x, y, linex, liney, fontsize, txtColor, txt, MenuName) {
x = int(x);
y = int(y);
if (_root.MenuLayer[MenuName + "MenuTextHelpClip"] != undefined) {
with (_root.MenuLayer[MenuName + "MenuTextHelpClip"]) {
_x = x;
_y = y;
}
with (_root.MenuLayer[MenuName + "MenuTextHelpClip"][MenuName + "MenuHelpText"]) {
text = txt;
}
with (_root.MenuLayer[MenuName + "MenuTextHelpClip"][MenuName + "MenuHelpText"][MenuName + "MenuHelpLine"]) {
lineStyle(0, 16777215, 100);
_x = TempClip._x;
_y = TempClip._y;
lineTo(HelpObject.X, HelpObject.Y);
}
return(_root.MenuLayer[MenuName + "MenuTextHelpClip"]);
}
var TempClip = _root.MenuLayer.createEmptyMovieClip(MenuName + "MenuTextHelpClip", MenuClips.length);
TempClip._x = x;
TempClip._y = y;
MenuClips.push(TempClip);
TempClip.createTextField(MenuName + "MenuHelpText", MenuClips.length, 0, 0, (txt.length + 1) * 10, 14);
with (TempClip[MenuName + "MenuHelpText"]) {
background = true;
border = true;
backgroundColor = 0;
borderColor = 16777215 /* 0xFFFFFF */;
selectable = false;
myTextFormat = new TextFormat();
myTextFormat.font = "Comic Sans MS";
myTextFormat.size = fontsize;
myTextFormat.color = txtColor;
myTextFormat.align = "center";
setNewTextFormat(myTextFormat);
text = txt;
autoSize = true;
}
MenuClips.push(TempClip[MenuName + "MenuHelpText"]);
_root.MenuLayer.createEmptyMovieClip(MenuName + "MenuHelpLine", MenuClips.length);
with (_root.MenuLayer[MenuName + "MenuHelpLine"]) {
lineStyle(0, 16777215, 100);
_x = TempClip._x;
_y = TempClip._y;
lineTo(HelpObject.X, HelpObject.Y);
}
MenuClips.push(_root.MenuLayer[MenuName + "MenuHelpLine"]);
return(_root.MenuLayer[MenuName + "MenuTextHelpClip"]);
}
function DrawText(x, y, fontsize, txtColor, txt, MenuName) {
x = int(x);
y = int(y);
if (_root.MenuLayer[MenuName + "MenuTextClip"] != undefined) {
with (_root.MenuLayer[MenuName + "MenuTextClip"]) {
_x = x;
_y = y;
}
with (_root.MenuLayer[MenuName + "MenuTextClip"][MenuName + "MenuText"]) {
text = txt;
}
return(_root.MenuLayer[MenuName + "MenuTextClip"]);
}
var TempClip = _root.MenuLayer.createEmptyMovieClip(MenuName + "MenuTextClip", MenuClips.length);
TempClip._x = x;
TempClip._y = y;
MenuClips.push(TempClip);
TempClip.createTextField(MenuName + "MenuText", MenuClips.length, 0, 0, (txt.length + 1) * 10, 14);
with (TempClip[MenuName + "MenuText"]) {
background = true;
border = true;
backgroundColor = 0;
borderColor = 16777215 /* 0xFFFFFF */;
selectable = false;
myTextFormat = new TextFormat();
myTextFormat.font = "Comic Sans MS";
myTextFormat.size = fontsize;
myTextFormat.color = txtColor;
myTextFormat.align = "center";
setNewTextFormat(myTextFormat);
text = txt;
autoSize = true;
}
MenuClips.push(TempClip[MenuName + "MenuText"]);
return(_root.MenuLayer[MenuName + "MenuTextClip"]);
}
function DrawBar(x, y, w, h, txtColor, MenuName) {
x = int(x);
y = int(y);
w = int(w);
h = int(h);
if (w < 1) {
w = 1;
}
if (h < 1) {
h = 1;
}
if (_root.MenuLayer[MenuName + "MenuBar"] != undefined) {
with (_root.MenuLayer[MenuName + "MenuBar"]) {
_x = x;
_y = y;
_width = w;
_height = h;
}
return(_root.MenuLayer[MenuName + "MenuBar"]);
}
_root.MenuLayer.createEmptyMovieClip(MenuName + "MenuBar", MenuClips.length);
with (_root.MenuLayer[MenuName + "MenuBar"]) {
lineStyle(0, 16777215, 100);
beginFill(txtColor, 100);
_x = x;
_y = y;
lineTo(w, 0);
lineTo(w, h);
lineTo(0, h);
lineTo(0, 0);
}
MenuClips.push(_root.MenuLayer[MenuName + "MenuBar"]);
return(_root.MenuLayer[MenuName + "MenuBar"]);
}
function DrawButton(x, y, w, h, txt, Owner, BtnFunction) {
x = int(x);
y = int(y);
w = int(w);
h = int(h);
if (_root.MenuLayer[txt + "Button"] != undefined) {
with (_root.MenuLayer[txt + "Button"]) {
_x = x;
_y = y;
}
return(_root.MenuLayer[txt + "Button"]);
}
var TempClip = _root.MenuLayer.createEmptyMovieClip(txt + "Button", MenuClips.length);
with (_root.MenuLayer[txt + "Button"]) {
lineStyle(2, 0, 100);
beginFill(65280, 100);
moveTo(-w, -h);
lineTo(w, -h);
lineTo(w, h);
lineTo(-w, h);
endFill(-w, -h);
_x = x;
_y = y;
}
_root.MenuLayer[txt + "Button"].onRollOver = function () {
if (this.enabled == true) {
var _local4 = new Color(_root.MenuLayer[txt + "Button"]);
var _local3 = new Object();
_local3 = {ra:"100", rb:"0", ga:"100", gb:"150", ba:"100", bb:"50", aa:"100", ab:"0"};
_local4.setTransform(_local3);
}
};
_root.MenuLayer[txt + "Button"].onRollOut = function () {
if (this.enabled == true) {
var _local4 = new Color(_root.MenuLayer[txt + "Button"]);
var _local3 = new Object();
_local3 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local4.setTransform(_local3);
}
};
_root.MenuLayer[txt + "Button"].onPress = function () {
var _local3 = new Color(_root.MenuLayer[txt + "Button"]);
var _local2 = new Object();
_local2 = {ra:"60", rb:"120", ga:"80", gb:"200", ba:"80", bb:"160", aa:"40", ab:"100"};
_local3.setTransform(_local2);
BtnFunction(Owner);
};
_root.MenuLayer[txt + "Button"].onRelease = function () {
var _local3 = new Color(_root.MenuLayer[txt + "Button"]);
var _local2 = new Object();
_local2 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local3.setTransform(_local2);
};
MenuClips.push(_root.MenuLayer[txt + "Button"]);
TempClip.createTextField(txt + "txtButton", MenuClips.length, -(w - 1), -(h + 2), TempClip._width, TempClip._height);
with (TempClip[txt + "txtButton"]) {
background = false;
border = false;
selectable = false;
myTextFormat = new TextFormat();
myTextFormat.font = "Comic Sans MS";
myTextFormat.size = int((w + h) / 3) + 1;
myTextFormat.color = 0;
myTextFormat.align = "center";
setNewTextFormat(myTextFormat);
text = txt;
autoSize = true;
}
MenuClips.push(TempClip[txt + "txtButton"]);
return(TempClip);
}
function FindMenu(MenuName) {
if (_root.MenuLayer[MenuName] != undefined) {
return(true);
}
return(false);
}
function ClearInfo() {
var _local2 = 0;
while (_local2 < MenuClips.length) {
MenuClips[_local2].removeTextField();
MenuClips[_local2].removeMovieClip();
delete MenuClips[_local2];
_local2++;
}
MenuClips = new Array();
}
}
Symbol 387 MovieClip [__Packages.as_scripts.MainGame] Frame 0
class as_scripts.MainGame
{
var Stage_Width, Stage_Height, bDebug, bShowFPS, bSound, bHelpText, bMusic, GameSharedObject, SelectedObject, bClickedOnTitle, bSpawnedMeteor, bGamePaused, bDisplayGameOptions, bDisplayReloadMenu, bDisplayQuitMenu, FPS, PlantColor, LevelCompleted, GameMode, Difficulty, FPSList, OldTime, GameLevel, LevelNum, GoalPlantSize, InvasionTime, EndPlantSize, Kills, GameCursor, LevelMusic;
function MainGame (bSound, bHelpText, bMusic, GameSharedObject) {
Stage.align = "TL";
Stage.scaleMode = "noScale";
fscommand ("allowscale", "false");
fscommand ("showmenu", "false");
Stage_Width = 640;
Stage_Height = 512;
bDebug = false;
bShowFPS = false;
this.bSound = bSound;
this.bHelpText = bHelpText;
this.bMusic = bMusic;
this.GameSharedObject = GameSharedObject;
}
function Init(GameMode, Difficulty, LevelType, LevelNum) {
var global_sound = new Sound();
global_sound.stop();
var mouseListener = new Object();
var TempOwner = this;
mouseListener.onMouseDown = function () {
if ((TempOwner.bClickedOnTitle == true) && (TempOwner.bSpawnedMeteor == false)) {
if (TempOwner.SpawnStartingMeteor(_root._xmouse, _root._ymouse)) {
delete mouseListener.onMouseDown;
}
}
if ((TempOwner.bClickedOnTitle == false) && (TempOwner.bSpawnedMeteor == false)) {
TempOwner.ClickedOnTitle();
}
};
Mouse.addListener(mouseListener);
_root.createEmptyMovieClip("TileLayer", 2);
_root.createEmptyMovieClip("SoilLayer", 3);
_root.createEmptyMovieClip("PlantLayer", 4);
_root.createEmptyMovieClip("RootLayer", 5);
_root.createEmptyMovieClip("SproutLayer", 6);
_root.createEmptyMovieClip("StemLayer", 7);
_root.createEmptyMovieClip("AntHillBottomLayer", 8);
_root.createEmptyMovieClip("AntInsideLayer", 9);
_root.createEmptyMovieClip("AntHillTopLayer", 10);
_root.createEmptyMovieClip("AntOutsideLayer", 11);
_root.createEmptyMovieClip("PlantTopLayer", 12);
_root.createEmptyMovieClip("LeafLayer", 13);
_root.createEmptyMovieClip("EffectLayer", 14);
_root.createEmptyMovieClip("CloudLayer", 15);
_root.createEmptyMovieClip("SunLayer", 16);
_root.createEmptyMovieClip("MeteorLayer", 17);
_root.createEmptyMovieClip("MenuLayer", 18);
_root.createEmptyMovieClip("CursorLayer", 19);
_root.createEmptyMovieClip("BorderLayer", 20);
SelectedObject = undefined;
bClickedOnTitle = false;
bSpawnedMeteor = false;
bGamePaused = false;
bDisplayGameOptions = false;
bDisplayReloadMenu = false;
bDisplayQuitMenu = false;
FPS = 0;
PlantColor = "Green";
LevelCompleted = 0;
this.GameMode = GameMode;
this.Difficulty = Difficulty;
FPSList = new Array();
OldTime = getTimer();
_root.MenuC.ClearInfo();
if (GameMode <= 0) {
switch ((LevelNum - 1) % 3) {
case 0 :
GameLevel = new as_scripts.Level("Dirt");
break;
case 1 :
GameLevel = new as_scripts.Level("Jungle");
break;
default :
GameLevel = new as_scripts.Level("Desert");
}
this.LevelNum = LevelNum;
} else {
GameLevel = new as_scripts.Level(LevelType);
this.LevelNum = 1;
}
GoalPlantSize = (12 + (Difficulty * 3)) + (Math.floor(LevelNum - 1) * 2);
InvasionTime = 0;
EndPlantSize = 0;
Kills = 0;
as_scripts.Plant.PlantList = new Array(as_scripts.Plant.MaxPlants);
as_scripts.AntHill.AntHillList = new Array(as_scripts.AntHill.MaxAntHills);
as_scripts.Effect.EffectList = new Array(as_scripts.Effect.MaxEffects);
_root.BorderLayer.createEmptyMovieClip("Border", 1);
with (_root.BorderLayer.Border) {
lineStyle(3, 16777215, 100);
_x = 0;
_y = 0;
lineTo(Stage_Width, 0);
lineTo(Stage_Width, Stage_Height);
lineTo(0, Stage_Height);
lineTo(0, 0);
}
GameCursor = new as_scripts.Cursor("PlantCursor_mc");
LevelMusic = new Sound();
LevelMusic.attachSound("theplant2.mp3");
}
function ClearGame() {
var _local3 = new Sound();
var _local4 = _local3.getVolume();
_local3.setVolume(0);
_root.MenuC.ClearInfo();
GameLevel.ClearLevel();
delete GameLevel;
_root.Game.ClearSelectedObject();
as_scripts.Plant.ClearPlants();
as_scripts.AntHill.ClearAntHills();
as_scripts.Effect.ClearEffects();
Mouse.show();
delete GameCursor;
removeMovieClip(_root.TileLayer);
removeMovieClip(_root.SoilLayer);
removeMovieClip(_root.PlantLayer);
removeMovieClip(_root.RootLayer);
removeMovieClip(_root.SproutLayer);
removeMovieClip(_root.StemLayer);
removeMovieClip(_root.PlantTopLayer);
removeMovieClip(_root.AntHillBottomLayer);
removeMovieClip(_root.AntInsideLayer);
removeMovieClip(_root.AntHillTopLayer);
removeMovieClip(_root.AntOutsideLayer);
removeMovieClip(_root.LeafLayer);
removeMovieClip(_root.EffectLayer);
removeMovieClip(_root.CloudLayer);
removeMovieClip(_root.SunLayer);
removeMovieClip(_root.MeteorLayer);
removeMovieClip(_root.MenuLayer);
removeMovieClip(_root.CursorLayer);
removeMovieClip(_root.BorderLayer);
_local3.stop();
_local3.setVolume(_local4);
}
function ClickedOnTitle() {
bClickedOnTitle = true;
GameCursor.SetImageClip("Target_mc");
_root.MenuC.ClearInfo();
}
function SpawnStartingMeteor(StartX, StartY) {
var _local3 = 0;
while (_local3 < as_scripts.AntHill.MaxAntHills) {
if (as_scripts.AntHill.AntHillList[_local3] != undefined) {
if (GameCursor.getImageClip().hitTest(as_scripts.AntHill.AntHillList[_local3].TopImageClip)) {
return(false);
}
}
_local3++;
}
var _local5 = (new as_scripts.Effect(StartX, StartY, undefined, 100, "Meteor_mc")).ImageClip;
if (bSound) {
var _local4 = new Sound(_local5);
_local4.attachSound("meteor.wav");
_local4.start();
}
bSpawnedMeteor = true;
GameCursor.SetImageClip("PlantCursor_mc");
_root.MenuC.ClearInfo();
return(true);
}
function SpawnPlant(StartX, StartY) {
var _local2 = 0;
while (_local2 < as_scripts.Plant.MaxPlants) {
if (as_scripts.Plant.PlantList[_local2] == undefined) {
as_scripts.Plant.PlantList[_local2] = new as_scripts.Plant(StartX, StartY, _local2);
as_scripts.Plant.PlantList[_local2].SetColor("Green");
break;
}
_local2++;
}
if (bMusic) {
LevelMusic.start(0, 999);
}
}
function UpdateGame() {
GameCursor.Update();
if (LevelCompleted >= 1) {
if (LevelCompleted == 1) {
EndLevel(true, EndPlantSize);
} else {
EndLevel(false, EndPlantSize);
}
return(undefined);
}
if (!DrawGameHUD()) {
return(undefined);
}
GameLevel.Update();
as_scripts.Plant.UpdatePlants();
as_scripts.AntHill.UpdateAntHills();
as_scripts.Effect.UpdateEffects();
CheckCollision();
if (SelectedObject != undefined) {
SelectedObject.DisplayInfo();
}
}
static function RetryLevel(Owner) {
var _local3 = Owner.GameLevel.LevelType;
var _local4 = Owner.GoalPlantSize;
if (Owner.EndPlantSize > 0) {
if (Owner.GameMode == 0) {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("PlantSize_Levels_Easy", Owner.EndPlantSize);
break;
case 1 :
_root.kongregateStats.submit("PlantSize_Levels_Medium", Owner.EndPlantSize);
break;
case 2 :
_root.kongregateStats.submit("PlantSize_Levels_Hard", Owner.EndPlantSize);
break;
case 3 :
_root.kongregateStats.submit("PlantSize_Levels_Extreme", Owner.EndPlantSize);
}
} else {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("PlantSize_Endless_Easy", Owner.EndPlantSize);
break;
case 1 :
_root.kongregateStats.submit("PlantSize_Endless_Medium", Owner.EndPlantSize);
break;
case 2 :
_root.kongregateStats.submit("PlantSize_Endless_Hard", Owner.EndPlantSize);
break;
case 3 :
_root.kongregateStats.submit("PlantSize_Endless_Extreme", Owner.EndPlantSize);
}
}
}
if (Owner.Kills > 0) {
if (Owner.GameMode == 0) {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("AntKills_Levels_Easy", Owner.Kills);
break;
case 1 :
_root.kongregateStats.submit("AntKills_Levels_Medium", Owner.Kills);
break;
case 2 :
_root.kongregateStats.submit("AntKills_Levels_Hard", Owner.Kills);
break;
case 3 :
_root.kongregateStats.submit("AntKills_Levels_Extreme", Owner.Kills);
}
} else {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("AntKills_EndLess_Easy", Owner.Kills);
break;
case 1 :
_root.kongregateStats.submit("AntKills_EndLess_Medium", Owner.Kills);
break;
case 2 :
_root.kongregateStats.submit("AntKills_EndLess_Hard", Owner.Kills);
break;
case 3 :
_root.kongregateStats.submit("AntKills_EndLess_Extreme", Owner.Kills);
}
}
}
Owner.ClearGame();
Owner.Init(Owner.GameMode, Owner.Difficulty, _local3, Owner.LevelNum);
}
static function LoadNextLevel(Owner) {
var _local4 = Owner.GameLevel.LevelType;
var _local3 = Owner.LevelNum;
var _local5 = Owner.GoalPlantSize;
switch (Owner.Difficulty) {
case 0 :
_root.kongregateScores.setMode("Easy");
break;
case 1 :
_root.kongregateScores.setMode("Medium");
break;
case 2 :
_root.kongregateScores.setMode("Hard");
break;
case 3 :
_root.kongregateScores.setMode("Extreme");
}
_root.kongregateScores.submit(Owner.LevelNum);
if (Owner.EndPlantSize > 0) {
if (Owner.GameMode == 0) {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("PlantSize_Levels_Easy", Owner.EndPlantSize);
break;
case 1 :
_root.kongregateStats.submit("PlantSize_Levels_Medium", Owner.EndPlantSize);
break;
case 2 :
_root.kongregateStats.submit("PlantSize_Levels_Hard", Owner.EndPlantSize);
break;
case 3 :
_root.kongregateStats.submit("PlantSize_Levels_Extreme", Owner.EndPlantSize);
}
} else {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("PlantSize_Endless_Easy", Owner.EndPlantSize);
break;
case 1 :
_root.kongregateStats.submit("PlantSize_Endless_Medium", Owner.EndPlantSize);
break;
case 2 :
_root.kongregateStats.submit("PlantSize_Endless_Hard", Owner.EndPlantSize);
break;
case 3 :
_root.kongregateStats.submit("PlantSize_Endless_Extreme", Owner.EndPlantSize);
}
}
}
if (Owner.Kills > 0) {
if (Owner.GameMode == 0) {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("AntKills_Levels_Easy", Owner.Kills);
break;
case 1 :
_root.kongregateStats.submit("AntKills_Levels_Medium", Owner.Kills);
break;
case 2 :
_root.kongregateStats.submit("AntKills_Levels_Hard", Owner.Kills);
break;
case 3 :
_root.kongregateStats.submit("AntKills_Levels_Extreme", Owner.Kills);
}
} else {
switch (Owner.Difficulty) {
case 0 :
_root.kongregateStats.submit("AntKills_EndLess_Easy", Owner.Kills);
break;
case 1 :
_root.kongregateStats.submit("AntKills_EndLess_Medium", Owner.Kills);
break;
case 2 :
_root.kongregateStats.submit("AntKills_EndLess_Hard", Owner.Kills);
break;
case 3 :
_root.kongregateStats.submit("AntKills_EndLess_Extreme", Owner.Kills);
}
}
}
if (Owner.GameSharedObject) {
if (Owner.GameSharedObject.data.levelnum == undefined) {
Owner.GameSharedObject.data.levelnum = Math.floor(Owner.LevelNum + 1);
_root.LevelsCompleted = Owner.GameSharedObject.data.levelnum;
_root.LevelNum = _root.LevelsCompleted;
} else if ((Owner.LevelNum + 1) > Owner.GameSharedObject.data.levelnum) {
Owner.GameSharedObject.data.levelnum = Math.floor(Owner.LevelNum + 1);
_root.LevelsCompleted = Owner.GameSharedObject.data.levelnum;
_root.LevelNum = _root.LevelsCompleted;
}
}
Owner.ClearGame();
_local3 = _local3 + 1;
Owner.Init(Owner.GameMode, Owner.Difficulty, _local4, _local3);
}
function EndLevel(bPlayerWon, PlantSize) {
if (bPlayerWon) {
as_scripts.AntHill.ClearAntHills();
if (Math.floor(LevelNum % 4) <= 0) {
_root.MenuC.DrawText((Stage_Width / 2) - 80, Stage_Height / 2, 24, 65280, "Drones Exterminated", "txtLevelColonized");
} else {
_root.MenuC.DrawText((Stage_Width / 2) - 80, Stage_Height / 2, 24, 65280, "Level Colonized", "txtLevelColonized");
}
_root.MenuC.DrawText((Stage_Width / 2) - 80, (Stage_Height / 2) + 40, 9, 16777215, "Plant Size:" + PlantSize, "txtPlantSize");
_root.MenuC.DrawText((Stage_Width / 2) - (16 + (PlantSize * 0.1)), (Stage_Height / 2) + 40, 9, 16777215, "Ants Killed:" + String(Kills), "txtAntsKilled");
_root.MenuC.DrawButton((Stage_Width / 2) + 77, (Stage_Height / 2) + 48, 20, 8, "Next", this, LoadNextLevel);
} else {
_root.MenuC.DrawText((Stage_Width / 2) - 80, Stage_Height / 2, 24, 16711680, "The Plant Has Died", "txtLevelLost");
_root.MenuC.DrawText((Stage_Width / 2) - 80, (Stage_Height / 2) + 40, 9, 16777215, "Plant Size:" + PlantSize, "txtPlantSize");
_root.MenuC.DrawText((Stage_Width / 2) - (16 + (PlantSize * 0.1)), (Stage_Height / 2) + 40, 9, 16777215, "Ants Killed:" + String(Kills), "txtAntsKilled");
_root.MenuC.DrawButton((Stage_Width / 2) + 116, (Stage_Height / 2) + 48, 20, 8, "Retry", this, RetryLevel);
}
}
function GamePaused() {
_root.MenuC.DrawText((Stage_Width / 2) - 70, Stage_Height / 2, 20, 16777215, "Game Paused", "txtGamePaused");
_root.MenuC.DrawButton((Stage_Width / 2) - 10, (Stage_Height / 2) + 44, 20, 8, "Resume", this, PauseGame);
}
function ClearSelectedObject() {
if (SelectedObject != undefined) {
SelectedObject.ClearSelectedObject();
}
SelectedObject = undefined;
_root.MenuC.ClearInfo();
}
function CheckCollision() {
var _local5;
var _local3;
var _local7;
var _local4 = new Array();
var _local6 = new Array();
var _local8;
var _local1;
var _local2;
as_scripts.AntHill.GetAntList(_local6);
_local7 = 0;
while (_local7 < as_scripts.Plant.MaxPlants) {
_local8 = as_scripts.Plant.PlantList[_local7];
if (_local8 != undefined) {
_local8.GetPlantList(_local4);
_local5 = 0;
while (_local5 < _local6.length) {
_local2 = _local6[_local5];
_local2.PlantArray = _local4;
_local3 = 0;
while (_local3 < _local4.length) {
_local1 = _local4[_local3];
if (((_local1.Name == "Stem") && (_local1.SpawnedSprout != undefined)) && (_local1.SpawnedSprout.Name == "Poison")) {
_local1.SpawnedSprout.AntArray = _local6;
}
if (_local2.getCollision().hitTest(_local1.getCollision())) {
_local1.CollidedWithObject(_local2);
_local2.CollidedWithObject(_local1);
}
_local3++;
}
_local5++;
}
}
_local7++;
}
}
function DrawGameHUD() {
if (bShowFPS) {
var _local4 = getTimer();
var _local6 = (_local4 - OldTime) / 1000;
var _local7 = 1 / _local6;
OldTime = _local4;
FPSList.push(Math.round(_local7));
if (FPSList.length >= FPSUpdateRate) {
FPS = 0;
var _local3 = 0;
while (_local3 < FPSList.length) {
FPS = FPS + FPSList[_local3];
_local3++;
}
FPS = FPS / (FPSList.length + 1);
FPSList = new Array();
}
_root.MenuC.DrawText(Stage_Width - 40, Stage_Height - 75, 9, 65280, "FPS:" + Math.round(FPS), "txtFPS");
}
_root.MenuC.DrawButton(Stage_Width - 22, Stage_Height - 49, 20, 6, "Pause", this, PauseGame);
_root.MenuC.DrawButton(Stage_Width - 22, Stage_Height - 36, 20, 6, "Options", this, DisplayGameOptions);
_root.MenuC.DrawButton(Stage_Width - 22, Stage_Height - 23, 20, 6, "Reload", this, DisplayReloadMenu);
_root.MenuC.DrawButton(Stage_Width - 22, Stage_Height - 10, 20, 6, "Quit", this, DisplayQuitMenu);
if (bDisplayQuitMenu) {
DrawQuitMenu();
return(false);
}
if (bDisplayReloadMenu) {
DrawReloadMenu();
return(false);
}
if (bDisplayGameOptions) {
DrawGameMenu();
return(false);
}
if (bGamePaused) {
GamePaused();
return(false);
}
if (!bClickedOnTitle) {
if (GameMode == 0) {
var _local5 = _root.MenuC.DrawBar((Stage_Width / 2) - 65, (Stage_Height / 2) - 65, 160, 116, 0, "StartTxtBackground");
_local5._alpha = 50;
_root.MenuC.DrawText((Stage_Width / 2) - 17, (Stage_Height / 2) - 58, 16, 65280, "Level " + LevelNum, "txtLevelNum");
if (GameLevel.LevelType == "Desert") {
_root.MenuC.DrawText((Stage_Width / 2) - 10, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
} else if (GameLevel.LevelType == "Jungle") {
_root.MenuC.DrawText((Stage_Width / 2) - 8, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
} else {
_root.MenuC.DrawText((Stage_Width / 2) - 5, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
}
if (Math.floor(LevelNum % 4) <= 0) {
_root.MenuC.DrawText((Stage_Width / 2) - 55, Stage_Height / 2, 12, 65280, "Exterminate Drone Ants", "txtGoalPlantSize");
} else {
_root.MenuC.DrawText((Stage_Width / 2) - 40, Stage_Height / 2, 12, 65280, "Goal Plant Size:" + GoalPlantSize, "txtGoalPlantSize");
}
_root.MenuC.DrawText((Stage_Width / 2) - 26, (Stage_Height / 2) + 30, 9, 16777215, "Click to continue", "txtTitleClick");
} else if (GameMode == 1) {
var _local5 = _root.MenuC.DrawBar((Stage_Width / 2) - 65, (Stage_Height / 2) - 65, 160, 116, 0, "StartTxtBackground");
_local5._alpha = 50;
_root.MenuC.DrawText((Stage_Width / 2) - 17, (Stage_Height / 2) - 58, 16, 65280, "Endless", "txtLevelNum");
if (GameLevel.LevelType == "Desert") {
_root.MenuC.DrawText((Stage_Width / 2) - 10, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
} else if (GameLevel.LevelType == "Jungle") {
_root.MenuC.DrawText((Stage_Width / 2) - 8, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
} else {
_root.MenuC.DrawText((Stage_Width / 2) - 5, (Stage_Height / 2) - 25, 12, 65280, GameLevel.LevelType, "txtLevelType");
}
_root.MenuC.DrawText((Stage_Width / 2) - 26, (Stage_Height / 2) + 30, 9, 16777215, "Click to continue", "txtTitleClick");
}
} else {
_root.MenuC.DrawText(114, 5, 12, 16742263, "Ants Killed:" + String(Kills), "txtKills");
if (bHelpText) {
_root.MenuC.DrawText((Stage_Width / 2) - 60, Stage_Height - 20, 9, 16777215, "Turn help text off in the options", "txtHelpText");
if (!bSpawnedMeteor) {
_root.MenuC.DrawText(GameCursor.X, GameCursor.Y - 30, 9, 16777215, "Click where to spawn the plant", "txtHelpTextMeteor");
}
}
}
return(true);
}
function GotoTitle() {
delete _root.onEnterFrame;
_root.gotoAndPlay("Title");
}
static function PauseGame(Owner) {
Owner.bGamePaused = !Owner.bGamePaused;
_root.MenuC.ClearInfo();
}
static function QuitGame(Owner) {
Owner.ClearGame();
Owner.GotoTitle();
}
static function DisplayQuitMenu(Owner) {
Owner.bDisplayQuitMenu = !Owner.bDisplayQuitMenu;
if (Owner.bDisplayGameOptions) {
DisplayGameOptions(Owner);
}
if (Owner.bDisplayReloadMenu) {
DisplayReloadMenu(Owner);
}
_root.MenuC.ClearInfo();
}
static function DisplayReloadMenu(Owner) {
Owner.bDisplayReloadMenu = !Owner.bDisplayReloadMenu;
if (Owner.bDisplayGameOptions) {
DisplayGameOptions(Owner);
}
if (Owner.bDisplayQuitMenu) {
DisplayQuitMenu(Owner);
}
_root.MenuC.ClearInfo();
}
static function DisplayGameOptions(Owner) {
Owner.bDisplayGameOptions = !Owner.bDisplayGameOptions;
if (!Owner.bDisplayGameOptions) {
removeMovieClip(_root.MenuLayer.MusicLeftArrow);
removeMovieClip(_root.MenuLayer.MusicRightArrow);
removeMovieClip(_root.MenuLayer.SoundLeftArrow);
removeMovieClip(_root.MenuLayer.SoundRightArrow);
removeMovieClip(_root.MenuLayer.QualityLeftArrow);
removeMovieClip(_root.MenuLayer.QualityRightArrow);
removeMovieClip(_root.MenuLayer.PlantLeftArrow);
removeMovieClip(_root.MenuLayer.PlantRightArrow);
removeMovieClip(_root.MenuLayer.FPSLeftArrow);
removeMovieClip(_root.MenuLayer.FPSRightArrow);
removeMovieClip(_root.MenuLayer.HelpLeftArrow);
removeMovieClip(_root.MenuLayer.HelpRightArrow);
}
_root.MenuC.ClearInfo();
}
function DrawQuitMenu() {
var _local3 = _root.MenuC.DrawBar((Stage_Width / 2) - 100, (Stage_Height / 2) - 110, 160, 100, 0, "QuitBack");
_local3._alpha = 50;
_root.MenuC.DrawText((Stage_Width / 2) - 87, (Stage_Height / 2) - 99, 20, 16777215, "Quit to menu?", "txtQuitMenu");
_root.MenuC.DrawButton((Stage_Width / 2) - 50, (Stage_Height / 2) - 40, 16, 8, "Yes", this, QuitGame);
_root.MenuC.DrawButton((Stage_Width / 2) + 10, (Stage_Height / 2) - 40, 16, 8, "No", this, DisplayQuitMenu);
}
function DrawReloadMenu() {
var _local3 = _root.MenuC.DrawBar((Stage_Width / 2) - 100, (Stage_Height / 2) - 110, 160, 100, 0, "QuitBack");
_local3._alpha = 50;
_root.MenuC.DrawText((Stage_Width / 2) - 86, (Stage_Height / 2) - 99, 20, 16777215, "Reload Level?", "txtRetryMenu");
_root.MenuC.DrawButton((Stage_Width / 2) - 50, (Stage_Height / 2) - 40, 16, 8, "Yes", this, RetryLevel);
_root.MenuC.DrawButton((Stage_Width / 2) + 10, (Stage_Height / 2) - 40, 16, 8, "No", this, DisplayReloadMenu);
}
function DrawGameMenu() {
var _local3;
var _local4;
var TempOwner = this;
_local3 = _root.MenuC.DrawBar((Stage_Width / 2) - 100, (Stage_Height / 2) - 110, 160, 200, 0, "OptBack");
_local3._alpha = 50;
_root.MenuC.DrawText((Stage_Width / 2) - 60, (Stage_Height / 2) - 99, 20, 16777215, "Options", "txtGameOptions");
_local3 = _root.MenuLayer.attachMovie("LeftArrowInGame_btn", "MusicLeftArrow", 100);
_local3.onPress = function () {
TempOwner.bMusic = !TempOwner.bMusic;
_root.bMusic = TempOwner.bMusic;
if (!TempOwner.bMusic) {
TempOwner.LevelMusic.stop("theplant2.mp3");
} else {
TempOwner.LevelMusic.start(0, 999);
}
};
_local3._x = (Stage_Width / 2) - 60;
_local3._y = (Stage_Height / 2) - 50;
if (bMusic) {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) - 59, 9, 65280, "Music On", "GameMusic");
} else {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) - 59, 9, 65280, "Music Off", "GameMusic");
}
_local3 = _root.MenuLayer.attachMovie("RightArrowInGame_btn", "MusicRightArrow", 101);
_local3.onPress = function () {
TempOwner.bMusic = !TempOwner.bMusic;
_root.bMusic = TempOwner.bMusic;
if (!TempOwner.bMusic) {
TempOwner.LevelMusic.stop("theplant2.mp3");
} else {
TempOwner.LevelMusic.start(0, 999);
}
};
_local3._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_local3._y = (Stage_Height / 2) - 50;
_local3 = _root.MenuLayer.attachMovie("LeftArrowInGame_btn", "SoundLeftArrow", 102);
_local3.onPress = function () {
TempOwner.bSound = !TempOwner.bSound;
_root.bSound = TempOwner.bSound;
var _local2 = new Sound();
if (!TempOwner.bSound) {
_local2.setVolume(0);
} else {
_local2.setVolume(100);
}
};
_local3._x = (Stage_Width / 2) - 60;
_local3._y = (Stage_Height / 2) - 30;
if (bSound) {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) - 39, 9, 65280, "Sound On", "GameSound");
} else {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) - 39, 9, 65280, "Sound Off", "GameSound");
}
_local3 = _root.MenuLayer.attachMovie("RightArrowInGame_btn", "SoundRightArrow", 103);
_local3.onPress = function () {
TempOwner.bSound = !TempOwner.bSound;
_root.bSound = TempOwner.bSound;
var _local2 = new Sound();
if (!TempOwner.bSound) {
_local2.setVolume(0);
} else {
_local2.setVolume(100);
}
};
_local3._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_local3._y = (Stage_Height / 2) - 30;
_root.MenuLayer.attachMovie("LeftArrowInGame_btn", "QualityLeftArrow", 104);
_root.MenuLayer.QualityLeftArrow.onPress = function () {
switch (_quality) {
case "LOW" :
_quality = "BEST";
return;
case "BEST" :
_quality = "HIGH";
return;
case "HIGH" :
_quality = "MEDIUM";
return;
case "MEDIUM" :
_quality = "LOW";
}
};
_root.MenuLayer.QualityLeftArrow._x = (Stage_Width / 2) - 60;
_root.MenuLayer.QualityLeftArrow._y = (Stage_Height / 2) - 10;
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) - 19, 9, 65280, "Quality " + _quality, "GameQuality");
_root.MenuLayer.attachMovie("RightArrowInGame_btn", "QualityRightArrow", 105);
_root.MenuLayer.QualityRightArrow.onPress = function () {
switch (_quality) {
case "LOW" :
_quality = "MEDIUM";
return;
case "MEDIUM" :
_quality = "HIGH";
return;
case "HIGH" :
_quality = "BEST";
return;
case "BEST" :
_quality = "LOW";
}
};
_root.MenuLayer.QualityRightArrow._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_root.MenuLayer.QualityRightArrow._y = (Stage_Height / 2) - 10;
_local3 = _root.MenuLayer.attachMovie("LeftArrowInGame_btn", "PlantLeftArrow", 106);
var TempPlant = as_scripts.Plant.PlantList[0];
_root.MenuLayer.PlantLeftArrow.onPress = function () {
switch (TempOwner.PlantColor) {
case "Green" :
TempOwner.PlantColor = "Black";
break;
case "Black" :
TempOwner.PlantColor = "White";
break;
case "White" :
TempOwner.PlantColor = "Blue";
break;
case "Blue" :
TempOwner.PlantColor = "Red";
break;
case "Red" :
TempOwner.PlantColor = "Green";
}
TempPlant.SetColor(_root.Game.PlantColor);
};
_local3._x = (Stage_Width / 2) - 60;
_local3._y = (Stage_Height / 2) + 10;
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, Stage_Height / 2, 9, 65280, PlantColor + " Plant", "PlantColor");
_local3 = _root.MenuLayer.attachMovie("RightArrowInGame_btn", "PlantRightArrow", 107);
var TempPlant = as_scripts.Plant.PlantList[0];
_local3.onPress = function () {
switch (TempOwner.PlantColor) {
case "Green" :
TempOwner.PlantColor = "Red";
break;
case "Red" :
TempOwner.PlantColor = "Blue";
break;
case "Blue" :
TempOwner.PlantColor = "White";
break;
case "White" :
TempOwner.PlantColor = "Black";
break;
case "Black" :
TempOwner.PlantColor = "Green";
}
TempPlant.SetColor(_root.Game.PlantColor);
};
_local3._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_local3._y = (Stage_Height / 2) + 10;
_local3 = _root.MenuLayer.attachMovie("LeftArrowInGame_btn", "FPSLeftArrow", 108);
_local3.onPress = function () {
TempOwner.bShowFPS = !TempOwner.bShowFPS;
_root.MenuC.ClearInfo();
};
_local3._x = (Stage_Width / 2) - 60;
_local3._y = (Stage_Height / 2) + 30;
if (bShowFPS) {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) + 19, 9, 65280, "FPS On", "GameFPS");
} else {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) + 19, 9, 65280, "FPS Off", "GameFPS");
}
_local3 = _root.MenuLayer.attachMovie("RightArrowInGame_btn", "FPSRightArrow", 109);
_local3.onPress = function () {
TempOwner.bShowFPS = !TempOwner.bShowFPS;
_root.MenuC.ClearInfo();
};
_local3._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_local3._y = (Stage_Height / 2) + 30;
_local3 = _root.MenuLayer.attachMovie("LeftArrowInGame_btn", "HelpLeftArrow", 110);
_local3.onPress = function () {
TempOwner.bHelpText = !TempOwner.bHelpText;
_root.MenuC.ClearInfo();
};
_local3._x = (Stage_Width / 2) - 60;
_local3._y = (Stage_Height / 2) + 50;
if (bHelpText) {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) + 39, 9, 65280, "HelpText On", "GameHelpText");
} else {
_local4 = _root.MenuC.DrawText((Stage_Width / 2) - 50, (Stage_Height / 2) + 39, 9, 65280, "HelpText Off", "GameHelpText");
}
_local3 = _root.MenuLayer.attachMovie("RightArrowInGame_btn", "HelpRightArrow", 111);
_local3.onPress = function () {
TempOwner.bHelpText = !TempOwner.bHelpText;
_root.bHelpText = TempOwner.bHelpText;
_root.MenuC.ClearInfo();
};
_local3._x = (((Stage_Width / 2) - 60) + _local4._width) + 20;
_local3._y = (Stage_Height / 2) + 50;
_root.MenuC.DrawButton((Stage_Width / 2) - 30, (Stage_Height / 2) + 75, 20, 8, "Resume", this, DisplayGameOptions);
}
static function SwitchSound(Owner) {
Owner.bSound = !Owner.bSound;
}
static var GameSpeed = 10;
static var FPSUpdateRate = 10;
static var MaxInvasionTime = 50;
}
Symbol 388 MovieClip [__Packages.as_scripts.Level] Frame 0
class as_scripts.Level
{
var LevelType, TileName, SoilAmount, SoilNutrition, MaxClouds, MaxSpawnCloudTime, CloudTime, SunLight, SpawnCloudTime, TheSun, CloudList, SpawnedClouds, RainSound, bPlayingRainSound, Tile, Soil;
function Level (LevelType) {
this.LevelType = LevelType;
switch (LevelType) {
case "Desert" :
TileName = "DesertTile_mc";
SoilAmount = 4;
SoilNutrition = 220;
MaxClouds = 1;
MaxSpawnCloudTime = 560;
CloudTime = 70;
SunLight = 120;
break;
case "Jungle" :
TileName = "JungleTile_mc";
SoilAmount = 8;
SoilNutrition = 300;
MaxClouds = 3;
MaxSpawnCloudTime = 40;
CloudTime = 30;
SunLight = 30;
break;
default :
TileName = "DirtTile_mc";
SoilAmount = 6;
SoilNutrition = 270;
MaxClouds = 2;
MaxSpawnCloudTime = 420;
CloudTime = 50;
SunLight = 60;
}
SpawnCloudTime = 0;
TheSun = new as_scripts.Sun(_root.Game.Stage_Width / 1.6, _root.Game.Stage_Height / 3);
TheSun.ImageClip._xscale = 100 - ((100 / SunLight) * 12);
TheSun.ImageClip._yscale = 100 - ((100 / SunLight) * 12);
CloudList = new Array(4);
SpawnedClouds = 0;
RainSound = new Sound();
RainSound.attachSound("rain.wav");
bPlayingRainSound = false;
LoadTiles();
LoadSoil();
}
function DrawHelpText() {
if (as_scripts.Plant.PlantList[0] != undefined) {
_root.MenuC.DrawText(TheSun.X, TheSun.Y - (TheSun.ImageClip._height / 2), 9, 16777215, "Drag sun around to grow stems towards it", "txtHelpSun");
} else {
_root.MenuC.DrawText(TheSun.X, TheSun.Y - (TheSun.ImageClip._height / 2), 9, 16777215, "Sun", "txtHelpSun");
}
if (!_root.Game.bSpawnedMeteor) {
var _local3 = 0;
while (_local3 < _root.Game.GameLevel.SoilAmount) {
if (_root.Game.GameLevel.Soil[_local3] > 0) {
var _local4 = _root.MenuC.DrawText(_root.SoilLayer["soil" + _local3]._x - 50, _root.SoilLayer["soil" + _local3]._y, 9, 16777215, "Soil", "txtHelpSoil" + _local3);
}
_local3++;
}
}
}
function CheckCloudCollision(OwnerClip) {
var _local2 = 0;
while (_local2 < MaxClouds) {
if (((CloudList[_local2] != undefined) && (CloudList[_local2].CloudState == 1)) && (OwnerClip.hitTest(CloudList[_local2].ImageClip))) {
return(true);
}
_local2++;
}
return(false);
}
function Update() {
if (_root.Game.bClickedOnTitle && (_root.Game.bHelpText)) {
DrawHelpText();
}
TheSun.Update();
var _local5 = false;
var _local4 = 50;
var _local3 = 0;
while (_local3 < MaxClouds) {
if ((CloudList[_local3] == undefined) && (SpawnedClouds < MaxClouds)) {
if ((SpawnCloudTime >= MaxSpawnCloudTime) && ((Math.random() * 10) <= 0.08)) {
CloudList[_local3] = new as_scripts.Cloud(50 + (Math.random() * (_root.Game.Stage_Height - 50)), 50 + (Math.random() * (_root.Game.Stage_Height - 50)), _local3, CloudTime);
SpawnCloudTime = 0;
} else {
SpawnCloudTime = SpawnCloudTime + (0.3 + ((Math.random() * 10) * 0.02));
}
}
if (CloudList[_local3] != undefined) {
CloudList[_local3].Update();
if (CloudList[_local3].CloudState == 1) {
_local5 = true;
if (_local4 < 100) {
_local4 = _local4 + 25;
}
}
}
_local3++;
}
if (_local5) {
RainSound.setVolume(_local4);
if (!bPlayingRainSound) {
RainSound.start(0, 999);
bPlayingRainSound = true;
}
} else if (bPlayingRainSound) {
RainSound.stop("rain.wav");
bPlayingRainSound = false;
}
}
function ClearLevel() {
TheSun.Die();
var _local2 = 0;
while (_local2 < MaxClouds) {
if (CloudList[_local2] != undefined) {
CloudList[_local2].Die();
}
_local2++;
}
}
function LoadTiles() {
Tile = new Array([0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0]);
var _local5 = 0;
var _local4 = 0;
var _local6 = 0;
_local5 = 0;
while (_local5 < 5) {
_local4 = 0;
while (_local4 < 4) {
var _local3 = _root.TileLayer.attachMovie(TileName, (("tile" + _local5) + "_") + _local4, _local6);
_local3._x = (_local5 * 128) + (_local3._width / 2);
_local3._y = (_local4 * 128) + (_local3._height / 2);
_local3.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
};
_local6++;
_local4++;
}
_local5++;
}
}
function LoadSoil() {
Soil = new Array(MaxSoil);
var _local3 = 0;
var _local5 = 0;
var _local6 = 0;
_local3 = 0;
while (_local3 < SoilAmount) {
Soil[_local3] = int((Math.random() * (SoilNutrition * 0.4)) + SoilNutrition);
var _local4 = _root.SoilLayer.attachMovie("Soil_mc", "soil" + _local3, _local3);
_local4._x = 50 + (Math.random() * (_root.Game.Stage_Width - 100));
_local4._y = 50 + (Math.random() * (_root.Game.Stage_Height - 100));
_local4._xscale = Soil[_local3] * 0.2;
_local4._yscale = Soil[_local3] * 0.2;
_local3++;
}
}
static var MaxSoil = 10;
}
Symbol 389 MovieClip [__Packages.as_scripts.Sun] Frame 0
class as_scripts.Sun
{
var X, Y, ImageClip;
function Sun (StartX, StartY) {
X = StartX;
Y = StartY;
ImageClip = _root.SunLayer.attachMovie("Sun_mc", "Sun", 1);
var _local3 = this;
ImageClip.onPress = function () {
_root.Game.ClearSelectedObject();
this.startDrag(true, 0, 0, _root.Game.Stage_Width, _root.Game.Stage_Height);
};
ImageClip.onRelease = function () {
this.stopDrag();
};
ImageClip.onReleaseOutside = function () {
this.stopDrag();
};
ImageClip.onRollOut = function () {
this.stopDrag();
};
ImageClip._x = X;
ImageClip._y = Y;
}
function Update() {
X = ImageClip._x;
Y = ImageClip._y;
}
function Die() {
removeMovieClip(ImageClip);
}
}
Symbol 390 MovieClip [__Packages.as_scripts.Plant] Frame 0
class as_scripts.Plant
{
static var PlantList;
var Name, SpawnedStems, MaxHealth, Health, MaxNutrients, Nutrients, NutrientTime, MaxWater, Water, WaterUsage, WDroplet, CurStemSpawnTime, EvolutionLevel, PlantSize, X, Y, Index, StemList, PlantSoilIndex, TopImageClip, ImageClip, DefaultColor, SpawnStemSound, NutrientSound, WaterDropletSound;
function Plant (StartX, StartY, Index) {
SpawnedPlants = SpawnedPlants + 1;
Name = "Plant";
SpawnedStems = 0;
MaxHealth = 250;
Health = MaxHealth;
MaxNutrients = 50;
Nutrients = MaxNutrients;
NutrientTime = MaxNutrientTime;
MaxWater = 50;
Water = MaxWater;
WaterUsage = 8;
WDroplet = undefined;
CurStemSpawnTime = 0;
EvolutionLevel = 0;
PlantSize = 0;
X = StartX;
Y = StartY;
this.Index = Index;
PlantSize = PlantSize + 1;
StemList = new Array(MaxStems);
PlantSoilIndex = -1;
LoadImageClip();
LoadSounds();
}
function LoadImageClip() {
var _local3;
_local3 = _root.PlantTopLayer.getNextHighestDepth();
TopImageClip = _root.PlantTopLayer.attachMovie("PlantTop_mc", "PlantTop" + _local3, _local3);
_local3 = _root.PlantLayer.getNextHighestDepth();
ImageClip = _root.PlantLayer.attachMovie("Plant_mc", "Plant" + _local3, _local3);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
var _local4 = new Color(ImageClip);
DefaultColor = _local4.getTransform();
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
TopImageClip.gotoAndPlay("Grow");
TopImageClip._x = X;
TopImageClip._y = Y;
ImageClip.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
CheckForSoil();
}
function LoadSounds() {
SpawnStemSound = new Sound();
SpawnStemSound.attachSound("heartbeat.wav");
NutrientSound = new Sound();
NutrientSound.attachSound("nutrient1.wav");
WaterDropletSound = new Sound();
WaterDropletSound.attachSound("waterdroplet.wav");
}
function CheckForSoil() {
var _local4 = false;
var _local3 = 0;
while (_local3 < _root.Game.GameLevel.SoilAmount) {
if ((_root.Game.GameLevel.Soil[_local3] > 0) && (ImageClip.hitTest(_root.SoilLayer["soil" + _local3]))) {
PlantSoilIndex = _local3;
break;
}
_local3++;
}
}
function GetOwner() {
return(undefined);
}
function GetOwnerPlant() {
return(this);
}
function getImageClip() {
return(ImageClip);
}
function getCollision() {
return(ImageClip.Collision);
}
function getHealth() {
return(Health);
}
function setHealth(Health) {
this.Health = Health;
}
function getX() {
return(X);
}
function getY() {
return(Y);
}
function ClearSelectedObject() {
var _local3 = new Color(ImageClip);
_local3.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
if (Name == "Plant") {
_local3 = new Color(TopImageClip);
_local3.setTransform(DefaultColor);
}
}
function GetMaxWater() {
return(Math.floor(MaxWater));
}
function SetMaxWater(NewMaxWater) {
MaxWater = NewMaxWater;
if (Water > MaxWater) {
Water = MaxWater;
}
}
function GetWater() {
return(Math.floor(Water));
}
function AddWater(WaterAdded) {
Water = Water + WaterAdded;
if (Water > MaxWater) {
Water = MaxWater;
}
}
function UseWater(WaterUsed) {
Water = Water - WaterUsed;
if (Water < 0) {
Water = 0;
}
}
function GetMaxNutrients() {
return(Math.floor(MaxNutrients));
}
function SetMaxNutrients(NewMaxNutrients) {
MaxNutrients = NewMaxNutrients;
if (Nutrients > MaxNutrients) {
Nutrients = MaxNutrients;
}
}
function GetNutrients() {
return(Math.floor(Nutrients));
}
function AddNutrients(AmtNutrients) {
if (Nutrients < MaxNutrients) {
Nutrients = Nutrients + AmtNutrients;
if (Nutrients > MaxNutrients) {
Nutrients = MaxNutrients;
}
}
}
function UseNutrients(AmtNutrients) {
Nutrients = Nutrients - AmtNutrients;
if (Nutrients < 0) {
Nutrients = 0;
}
}
function GetPlantSize() {
return(PlantSize);
}
function AddPlantSize(AmountToAdd) {
PlantSize = PlantSize + AmountToAdd;
}
function RemovePlantSize(AmountToAdd) {
PlantSize = PlantSize - AmountToAdd;
}
function CollidedWithObject(Other) {
}
function TakeDamage(Damage, Instigator) {
Health = Health - Damage;
if (Health <= 0) {
if (Instigator.Enemy == this) {
Instigator.Enemy = undefined;
}
Die();
}
}
function Die() {
var _local4 = new Array();
as_scripts.AntHill.GetAntList(_local4);
var _local3 = 0;
while (_local3 < _local4.length) {
if ((_local4[_local3] != undefined) && (_local4[_local3].Enemy == this)) {
_local4[_local3].Enemy = undefined;
}
_local3++;
}
if (_root.Game.SelectedObject == this) {
_root.Game.ClearSelectedObject();
}
new as_scripts.Effect(X, Y, ImageClip._rotation, 20, "PlantBlood_mc");
removeMovieClip(ImageClip);
if (Name == "Plant") {
removeMovieClip(TopImageClip);
if (this == PlantList[0]) {
_root.Game.LevelCompleted = 2;
}
KillPlant(0);
SpawnedPlants = SpawnedPlants - 1;
PlantList[Index] = undefined;
delete PlantList[Index];
}
}
function KillPlant(StartIndex) {
var _local2 = StartIndex;
while (_local2 < MaxStems) {
if ((StemList[_local2] != this) && (StemList[_local2] != undefined)) {
StemList[_local2].KillPlant(0);
StemList[_local2].Die();
}
_local2++;
}
}
function RemoveStem(StemIndex) {
delete StemList[StemIndex];
StemList[StemIndex] = undefined;
}
static function ClearPlants() {
var _local1 = 0;
while (_local1 < MaxPlants) {
if (PlantList[_local1] != undefined) {
PlantList[_local1].Die();
delete PlantList[_local1];
PlantList[_local1] = undefined;
}
_local1++;
}
}
static function UpdatePlants() {
var _local2 = 0;
while (_local2 < SpawnedPlants) {
if (PlantList[_local2] != undefined) {
if ((_root.Game.GameMode == 0) && (Math.floor(_root.Game.LevelNum % 4) != 0)) {
_root.MenuC.DrawText(5 + (_local2 * 80), 5, 12, 7864183, (("Plant Size:" + PlantList[_local2].GetPlantSize()) + "/") + _root.Game.GoalPlantSize, "txtPlantLength" + _local2);
} else {
_root.MenuC.DrawText(5 + (_local2 * 80), 5, 12, 7864183, "Plant Size:" + PlantList[_local2].GetPlantSize(), "txtPlantLength" + _local2);
}
PlantList[_local2].Update();
if (PlantList[_local2].GetPlantSize() > _root.Game.EndPlantSize) {
_root.Game.EndPlantSize = PlantList[_local2].GetPlantSize();
}
if (((_root.Game.GameMode == 0) && (Math.floor(_root.Game.LevelNum % 4) != 0)) && (PlantList[_local2].GetPlantSize() >= _root.Game.GoalPlantSize)) {
if (_root.Game.InvasionTime < as_scripts.MainGame.MaxInvasionTime) {
if (_root.Game.InvasionTime <= 0) {
PlantList[_local2].TopImageClip.gotoAndPlay("Explode");
}
_root.Game.InvasionTime++;
} else if (_root.Game.InvasionTime >= as_scripts.MainGame.MaxInvasionTime) {
_root.MenuC.ClearInfo();
_root.Game.LevelCompleted = 1;
_root.Game.EndPlantSize = PlantList[_local2].GetPlantSize();
}
}
}
_local2++;
}
}
function Update() {
if (_root.Game.bClickedOnTitle && (_root.Game.bHelpText)) {
}
if (_root.Game.GameMode == 0) {
TopImageClip._xscale = 60 + ((GetPlantSize() / _root.Game.GoalPlantSize) * 70);
TopImageClip._yscale = 60 + ((GetPlantSize() / _root.Game.GoalPlantSize) * 70);
} else {
TopImageClip._xscale = 60 + (GetPlantSize() * 2);
TopImageClip._yscale = 60 + (GetPlantSize() * 2);
}
if ((GetWater() < GetMaxWater()) && (_root.Game.GameLevel.CheckCloudCollision(ImageClip))) {
AddWater(0.4);
} else {
UseWater(WaterUsage * 0.001);
}
if (GetWater() <= 0) {
if (WDroplet == undefined) {
WDroplet = new as_scripts.WaterDroplet(X, Y - 20, 20, "Droplet_mc", this);
WaterDropletSound.start();
}
TakeDamage(0.1, undefined);
} else if ((Health < MaxHealth) && (Math.round(Nutrients) > 0)) {
Health = Health + 0.08;
if (Health > MaxHealth) {
Health = MaxHealth;
}
}
if (CurStemSpawnTime < MaxStemSpawnTime) {
CurStemSpawnTime++;
} else {
SpawnStem();
CurStemSpawnTime = 0;
}
if (NutrientTime >= MaxNutrientTime) {
if ((PlantSoilIndex >= 0) && (_root.Game.GameLevel.Soil[PlantSoilIndex] > 0)) {
var _local4 = int(Math.random() * 3) + 7;
AddNutrients(_local4);
_root.Game.GameLevel.Soil[PlantSoilIndex] = _root.Game.GameLevel.Soil[PlantSoilIndex] - _local4;
_root.SoilLayer["soil" + PlantSoilIndex]._alpha = 100 * Math.min(1, _root.Game.GameLevel.Soil[PlantSoilIndex] / _root.Game.GameLevel.SoilNutrition);
} else {
var _local4 = int(Math.random() * 2) + 3;
AddNutrients(_local4);
}
NutrientTime = 0;
} else {
NutrientTime++;
}
var _local3 = 0;
while (_local3 <= SpawnedStems) {
if ((StemList[_local3] != undefined) && (StemList[_local3] != this)) {
StemList[_local3].Update();
}
_local3++;
}
}
function SetColor(NewColor) {
var _local6 = new Object();
switch (NewColor) {
case "Green" :
_local6 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
break;
case "Red" :
_local6 = {ra:"100", rb:"100", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
break;
case "Blue" :
_local6 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"100", aa:"100", ab:"0"};
break;
case "White" :
_local6 = {ra:"100", rb:"100", ga:"100", gb:"100", ba:"100", bb:"100", aa:"100", ab:"0"};
break;
case "Black" :
_local6 = {ra:"0", rb:"0", ga:"0", gb:"0", ba:"0", bb:"0", aa:"100", ab:"0"};
}
var _local7 = new Color(ImageClip);
_local7.setTransform(_local6);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
if (Name == "Plant") {
_local7 = new Color(TopImageClip);
_local7.setTransform(_local6);
}
DefaultColor = _local6;
if (Name == "Plant") {
var _local4 = new Array();
GetPlantList(_local4);
var _local3 = 0;
while (_local3 < _local4.length) {
if (_local4[_local3].Name != "Plant") {
_local4[_local3].SetColor(NewColor);
if ((_local4[_local3].Name == "Stem") && (_local4[_local3].SpawnedSprout != undefined)) {
_local4[_local3].SpawnedSprout.SetColor(NewColor);
}
}
_local3++;
}
}
}
function DisplayInfo() {
var _local5 = new Color(ImageClip);
var _local6 = new Object();
_local6 = {ra:"60", rb:"120", ga:"80", gb:"200", ba:"80", bb:"160", aa:"40", ab:"100"};
_local5.setTransform(_local6);
_local5 = new Color(TopImageClip);
_local5.setTransform(_local6);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
var _local3 = 0;
var _local4 = 0;
if ((X + 200) >= _root.Game.Stage_Width) {
_local3 = -((X + 200) - _root.Game.Stage_Width);
}
if (Y <= 100) {
_local4 = 100;
}
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 4521796, (Name + " Lvl:") + int(EvolutionLevel + 1), "txtName");
_root.MenuC.DrawText(((X + ImageClip._width) + 47) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 4521796, int(MaxHealth), "txthealth");
_root.MenuC.DrawText(((X + ImageClip._width) + 67) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 16729343, int(MaxNutrients), "txtnutrients");
_root.MenuC.DrawText(((X + ImageClip._width) + 87) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 4474111, int(MaxWater), "txtwater");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 14) + _local4, 100, 6, 13056, "maxhealthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 14) + _local4, 100 * Math.min(1, Health / MaxHealth), 6, 65280, "healthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 22) + _local4, 100, 6, 3342387, "maxnutrientbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 22) + _local4, 100 * Math.min(1, Nutrients / MaxNutrients), 6, 16711935, "nutrientbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 30) + _local4, 100, 6, 51, "maxwaterbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 30) + _local4, 100 * Math.min(1, Water / MaxWater), 6, 255, "waterbar");
if (_root.Game.bHelpText) {
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "The plant, don't let it die", "txtHelpPlant");
_root.MenuC.DrawText(((X + ImageClip._width) + _local3) + 100, (Y - ImageClip._height) + _local4, 9, 65280, "Health", "txtHelpHealth");
_root.MenuC.DrawText(((X + ImageClip._width) + _local3) + 100, ((Y - ImageClip._height) + 16) + _local4, 9, 16711935, "Nutrients", "txtHelpNutrients");
_root.MenuC.DrawText(((X + ImageClip._width) + _local3) + 100, ((Y - ImageClip._height) + 34) + _local4, 9, 255, "Water", "txtHelpWater");
}
if (_root.Game.bDebug) {
_root.MenuC.DrawText((X + ImageClip._width) + _local3, (Y - ImageClip._height) - 20, 9, 65280, "S:" + SpawnedStems, "txtSpawnedStems");
}
}
function GetPlantList(PlantArray) {
PlantArray.push(this);
var _local2 = 0;
while (_local2 < SpawnedStems) {
if (StemList[_local2] != this) {
StemList[_local2].GetPlantList(PlantArray);
}
_local2++;
}
}
function SpawnStem() {
if ((Nutrients < as_scripts.Stem.NutrientCost) || (SpawnedStems >= MaxStems)) {
return(undefined);
}
var _local2 = 0;
while (_local2 < MaxStems) {
if (StemList[_local2] == undefined) {
SpawnStemSound.start();
if (_local2 <= 0) {
StemList[_local2] = new as_scripts.Stem(X, Y, _local2, this, undefined);
} else {
StemList[_local2] = new as_scripts.Stem(StemList[_local2 - 1].X, StemList[_local2 - 1].Y, _local2, this, StemList[_local2 - 1].Angle);
}
Nutrients = Nutrients - as_scripts.Stem.NutrientCost;
return(undefined);
}
_local2++;
}
}
function GetFreeDepth() {
var _local3 = 0;
var _local2 = 0;
while (_local2 < 100) {
_local3++;
if (_root.PlantLayer.getInstanceAtDepth(_local3) == undefined) {
return(_local3);
}
_local2++;
}
return(0);
}
static var MaxPlants = 4;
static var SpawnedPlants = 0;
static var NutrientCost = 500;
static var MaxStems = 10;
static var MaxStemSpawnTime = 30;
static var CostToEvolve = 200;
static var MaxNutrientTime = 60;
}
Symbol 391 MovieClip [__Packages.as_scripts.Sprout] Frame 0
class as_scripts.Sprout
{
var Owner, AntArray, Name, WaterUsage, SproutScale, X, Y, SpawnSound, ImageClip, DefaultColor;
function Sprout (Owner) {
this.Owner = Owner;
AntArray = new Array();
Name = "Sprout";
WaterUsage = 1;
SproutScale = 100 + (Owner.EvolutionLevel * 10);
X = Owner.X;
Y = Owner.Y;
SpawnSound = new Sound();
SpawnSound.attachSound("sproutgrow.wav");
SpawnSound.start();
}
function GetOwner() {
return(Owner);
}
function getImageClip() {
return(ImageClip);
}
function Evolve() {
SproutScale = SproutScale + 20;
SpawnSound.start();
}
function Update() {
if (_root.Game.SelectedObject == Owner) {
DisplayInfo();
}
if (Owner.GetWater() > 0) {
Owner.UseWater((WaterUsage * 0.001) + (Owner.EvolutionLevel * 0.001));
if (ImageClip._xscale < SproutScale) {
ImageClip._xscale = ImageClip._xscale + 0.1;
ImageClip._yscale = ImageClip._yscale + 0.1;
}
}
}
function DisplayInfo() {
var _local3 = new Color(ImageClip);
var _local2 = new Object();
_local2 = {ra:"60", rb:"120", ga:"80", gb:"200", ba:"80", bb:"160", aa:"40", ab:"100"};
_local3.setTransform(_local2);
}
function CollidedWithObject(Other) {
}
function TakeDamage(Damage, Instigator) {
}
function AddNutrients(AmtNutrients, bSpreadNutrients) {
Owner.AddNutrients(AmtNutrients, bSpreadNutrients);
}
function Die() {
new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "PlantBlood_mc");
removeMovieClip(ImageClip);
Owner.RemoveSprout();
}
function Regress() {
Owner.AddNutrients(Math.floor(NutrientCost / 2));
Die();
}
function SetColor(NewColor) {
var _local2 = new Object();
switch (NewColor) {
case "Green" :
_local2 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
break;
case "Red" :
_local2 = {ra:"100", rb:"100", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
break;
case "Blue" :
_local2 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"100", aa:"100", ab:"0"};
break;
case "White" :
_local2 = {ra:"100", rb:"100", ga:"100", gb:"100", ba:"100", bb:"100", aa:"100", ab:"0"};
break;
case "Black" :
_local2 = {ra:"0", rb:"0", ga:"0", gb:"0", ba:"0", bb:"0", aa:"100", ab:"0"};
}
var _local3 = new Color(ImageClip);
_local3.setTransform(_local2);
DefaultColor = _local2;
}
static var NutrientCost = 10;
}
Symbol 392 MovieClip [__Packages.as_scripts.Stem] Frame 0
class as_scripts.Stem extends as_scripts.Plant
{
var Name, MaxHealth, Health, CostToEvolve, WaterUsage, Owner, HelpBlinkTime, bSproutMenuOpened, bEvolveMenuOpened, bBlockedSpawn, DefaultColor, ImageClip, X, Y, Angle, getCollision, SpawnedSprout, Index, EvolutionLevel;
function Stem (StartX, StartY, Index, Owner) {
super(StartX, StartY, Index);
Name = "Stem";
MaxHealth = 100;
Health = MaxHealth;
CostToEvolve = 50;
WaterUsage = 2;
this.Owner = Owner;
this.Owner.AddPlantSize(1);
this.Owner.SpawnedStems = this.Owner.SpawnedStems + 1;
HelpBlinkTime = 0;
bSproutMenuOpened = false;
bEvolveMenuOpened = false;
bBlockedSpawn = false;
DefaultColor = Owner.DefaultColor;
var _local12 = new Color(ImageClip);
_local12.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
var _local8 = X;
var _local7 = Y;
var _local11 = _root.Game.GameLevel.TheSun.X - X;
var _local10 = _root.Game.GameLevel.TheSun.Y - Y;
Angle = Math.atan2(_local10, _local11);
_local8 = _local8 + ((Math.cos(Angle) * SpawnDistance) * 1.4);
_local7 = _local7 + ((Math.sin(Angle) * SpawnDistance) * 1.4);
_local11 = _local8 - X;
_local10 = _local7 - Y;
ImageClip._rotation = (Math.atan2(_local10, _local11) * 180) / Math.PI;
ImageClip._x = _local8;
ImageClip._y = _local7;
ImageClip.gotoAndStop("Idle");
var _local4 = 0;
while (_local4 < as_scripts.AntHill.MaxAntHills) {
if ((as_scripts.AntHill.AntHillList[_local4] != undefined) && (getCollision().hitTest(as_scripts.AntHill.AntHillList[_local4].getCollision()))) {
removeMovieClip(ImageClip);
bBlockedSpawn = true;
return;
}
_local4++;
}
var _local5 = new Array();
GetOwnerPlant().GetPlantList(_local5);
_local4 = 0;
while (_local4 < _local5.length) {
if (_local5[_local4] != undefined) {
if ((((Index <= 0) && (_local5[_local4] != this)) && (_local5[_local4] != Owner)) && (getCollision().hitTest(_local5[_local4].getCollision()))) {
removeMovieClip(ImageClip);
bBlockedSpawn = true;
return;
}
if (((Index > 0) && (_local5[_local4] != this)) && (getCollision().hitTest(_local5[_local4].getCollision()))) {
removeMovieClip(ImageClip);
bBlockedSpawn = true;
return;
}
}
_local4++;
}
_local8 = X + (Math.cos(Angle) * SpawnDistance);
_local7 = Y + (Math.sin(Angle) * SpawnDistance);
_local11 = _local8 - X;
_local10 = _local7 - Y;
ImageClip._rotation = (Math.atan2(_local10, _local11) * 180) / Math.PI;
ImageClip.gotoAndPlay("Grow");
ImageClip._x = _local8;
ImageClip._y = _local7;
X = _local8;
Y = _local7;
}
function LoadImageClip() {
var _local3 = _root.StemLayer.getNextHighestDepth();
ImageClip = _root.StemLayer.attachMovie("Stem_mc", "Stem" + _local3, _local3);
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
if (as_scripts.Stem.HelpIndex == 1) {
_root.MenuC.ClearInfo();
as_scripts.Stem.HelpIndex = 0;
}
_root.Game.SelectedObject = TempOwner;
};
}
function GetOwner() {
return(Owner);
}
function GetOwnerPlant() {
return(Owner.GetOwnerPlant());
}
function GetMaxWater() {
if (Owner != undefined) {
return(Owner.GetMaxWater());
}
return(0);
}
function SetMaxWater(NewMaxWater) {
if (Owner != undefined) {
Owner.SetMaxWater(NewMaxWater);
}
}
function GetWater() {
return(Owner.Water);
}
function AddWater(WaterAdded) {
Owner.AddWater(WaterAdded);
}
function UseWater(WaterUsed) {
Owner.UseWater(WaterUsed);
}
function GetMaxNutrients() {
if (Owner != undefined) {
return(Owner.GetMaxNutrients());
}
return(0);
}
function SetMaxNutrients(NewMaxNutrients) {
if (Owner != undefined) {
Owner.SetMaxNutrients(NewMaxNutrients);
}
}
function GetNutrients() {
if (Owner != undefined) {
return(Owner.GetNutrients());
}
return(0);
}
function AddNutrients(AmtNutrients) {
if (Owner != undefined) {
Owner.AddNutrients(AmtNutrients);
}
}
function UseNutrients(AmtNutrients) {
if (Owner != undefined) {
Owner.UseNutrients(AmtNutrients);
}
}
function GetPlantSize() {
if (Owner.Name == "Plant") {
return(Owner.PlantSize);
}
return(Owner.GetOwner().PlantSize);
}
function AddPlantSize(AmountToAdd) {
if (Owner.Name == "Plant") {
Owner.PlantSize = Owner.PlantSize + AmountToAdd;
} else {
Owner.GetOwner().PlantSize = Owner.GetOwner().PlantSize + AmountToAdd;
}
}
function RemovePlantSize(AmountToAdd) {
if (Owner.Name == "Plant") {
Owner.PlantSize = Owner.PlantSize - AmountToAdd;
} else {
Owner.GetOwner().PlantSize = Owner.GetOwner().PlantSize - AmountToAdd;
}
}
function ClearSelectedObject() {
super.ClearSelectedObject();
bSproutMenuOpened = false;
bEvolveMenuOpened = false;
if (SpawnedSprout != undefined) {
var _local3 = new Color(SpawnedSprout.getImageClip());
_local3.setTransform(SpawnedSprout.DefaultColor);
}
}
function Update() {
if (bBlockedSpawn) {
AddNutrients(NutrientCost);
Owner.RemovePlantSize(1);
Owner.SpawnedStems = Owner.SpawnedStems - 1;
Owner.RemoveStem(Index);
Owner.StemList[Index] = undefined;
return(undefined);
}
if ((_root.Game.bHelpText && (HelpIndex == 1)) && (Index <= 0)) {
var _local3 = _root.MenuC.DrawText((_root.Game.Stage_Width / 2) - 55, _root.Game.Stage_Height - 40, 9, 16777215, "Click a stem to open its menu", "txtHelpStem");
var _local5 = new Color(_local3);
var _local4 = new Object();
if (HelpBlinkTime <= 0) {
_local4 = {ra:"100", rb:"100", ga:"100", gb:"100", ba:"100", bb:"100", aa:"100", ab:"100"};
_local3.enabled = false;
} else if (HelpBlinkTime >= 8) {
_local4 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local3.enabled = true;
}
if (_local3.enabled) {
HelpBlinkTime--;
} else {
HelpBlinkTime++;
}
_local5.setTransform(_local4);
}
if (GetWater() <= 0) {
TakeDamage(0.1, undefined);
} else {
UseWater((WaterUsage * 0.001) + (EvolutionLevel * 0.001));
if ((Health < MaxHealth) && (Math.round(GetNutrients()) > 0)) {
Health = Health + 0.08;
if (Health > MaxHealth) {
Health = MaxHealth;
}
}
}
if (ImageClip._yscale < (100 + (EvolutionLevel * 20))) {
ImageClip._yscale = ImageClip._yscale + 0.1;
}
if (SpawnedSprout != undefined) {
SpawnedSprout.Update();
}
}
function CollidedWithObject(Other) {
if (SpawnedSprout != undefined) {
SpawnedSprout.CollidedWithObject(Other);
}
}
function TakeDamage(Damage, Instigator) {
if (Damage >= 1) {
new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "SmallPlantBlood_mc");
}
Health = Health - Damage;
if (SpawnedSprout != undefined) {
SpawnedSprout.TakeDamage(Damage, Instigator);
}
if (Health <= 0) {
if (Instigator.Enemy == this) {
Instigator.Enemy = undefined;
}
Owner.KillPlant(Index);
}
}
function Die() {
super.Die();
if (SpawnedSprout != undefined) {
SpawnedSprout.Die();
}
Owner.RemovePlantSize(1);
Owner.SpawnedStems = Owner.SpawnedStems - 1;
Owner.RemoveStem(Index);
}
function RemoveSprout() {
if (SpawnedSprout != undefined) {
delete SpawnedSprout;
SpawnedSprout = undefined;
}
}
function DisplayInfo() {
var _local6 = new Color(ImageClip);
var _local5 = new Object();
_local5 = {ra:"60", rb:"120", ga:"80", gb:"200", ba:"80", bb:"160", aa:"40", ab:"100"};
_local6.setTransform(_local5);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
var _local3 = 0;
var _local4 = 0;
if ((X + 150) >= _root.Game.Stage_Width) {
_local3 = -((X + 150) - _root.Game.Stage_Width);
}
if (Y <= 50) {
_local4 = 50;
} else if (Math.abs(Y - _root.Game.Stage_Height) <= 74) {
_local4 = -74;
}
if (_root.Game.bDebug) {
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 65280, (int(X) + ",") + int(Y), "txtCoords");
}
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 4521796, (Name + " Lvl:") + int(EvolutionLevel + 1), "txtName");
_root.MenuC.DrawText(((X + ImageClip._width) + 47) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 4521796, int(MaxHealth), "txthealth");
_root.MenuC.DrawText(((X + ImageClip._width) + 67) + _local3, ((Y - ImageClip._height) - 4) + _local4, 9, 16729343, GetMaxNutrients(), "txtnutrients");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 14) + _local4, 100, 6, 13056, "maxhealthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 14) + _local4, 100 * Math.min(1, Health / MaxHealth), 6, 65280, "healthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 22) + _local4, 100, 6, 3342387, "maxnutrientbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local3, ((Y - ImageClip._height) + 22) + _local4, 100 * Math.min(1, GetNutrients() / GetMaxNutrients()), 6, 16711935, "nutrientbar");
if (_root.Game.bHelpText) {
_root.MenuC.DrawText(((X + ImageClip._width) + _local3) + 100, ((Y - ImageClip._height) + 6) + _local4, 9, 65280, "Health", "txtHelpHealth");
_root.MenuC.DrawText(((X + ImageClip._width) + _local3) + 100, ((Y - ImageClip._height) + 22) + _local4, 9, 16711935, "Nutrients", "txtHelpNutrients");
switch (HelpIndex) {
case 2 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Click on sprout to spawn a sprout", "txtHelpStem");
break;
case 3 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Leaves slowly add nutrients to the plant", "txtHelpStem");
break;
case 4 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Bulbs increase storage of water and nutrients", "txtHelpStem");
break;
case 5 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Thorns damage any attacking ants", "txtHelpStem");
break;
case 6 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Spitters spit toxins at incoming ants", "txtHelpStem");
break;
case 7 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Digestors eat attacking ants", "txtHelpStem");
break;
case 8 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Click on evolve to evolve the stem", "txtHelpStem");
break;
case 9 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Evolve stem increases the stem's level", "txtHelpStem");
break;
case 10 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Evolve root changes the stem into a root", "txtHelpStem");
break;
case 11 :
_root.MenuC.DrawText((X + ImageClip._width) + _local3, ((Y - ImageClip._height) - 20) + _local4, 9, 16777215, "Regress recycles the sprout restoring half the nutrient cost", "txtHelpStem");
}
}
if (SpawnedSprout == undefined) {
if (!bSproutMenuOpened) {
DisplayStemButton(((X + ImageClip._width) + 30) + _local3, ((Y - ImageClip._height) + 38) + _local4, "Sprout", 0, undefined, OpenSproutMenu, 2);
} else {
var _local7 = DisplayStemButton(((X + ImageClip._width) + 30) + _local3, ((Y - ImageClip._height) + 38) + _local4, "Sprout", 0, undefined, OpenSproutMenu, 2);
_local6 = new Color(_local7);
_local5 = new Object();
_local5 = {ra:"20", rb:"80", ga:"100", gb:"140", ba:"100", bb:"100", aa:"100", ab:"100"};
_local6.setTransform(_local5);
}
} else {
DisplayStemButton(((X + ImageClip._width) + 30) + _local3, ((Y - ImageClip._height) + 38) + _local4, "Regress", 0, undefined, Regress, 11);
}
if (!bEvolveMenuOpened) {
DisplayStemButton(((X + ImageClip._width) + 30) + _local3, ((Y - ImageClip._height) + 52) + _local4, "Evolve", 0, undefined, OpenEvolveMenu, 8);
} else {
var _local7 = DisplayStemButton(((X + ImageClip._width) + 30) + _local3, ((Y - ImageClip._height) + 52) + _local4, "Evolve", 0, undefined, OpenEvolveMenu, 8);
_local6 = new Color(_local7);
_local5 = new Object();
_local5 = {ra:"20", rb:"80", ga:"100", gb:"140", ba:"100", bb:"100", aa:"100", ab:"100"};
_local6.setTransform(_local5);
}
if (bSproutMenuOpened) {
DisplaySproutMenu(this, _local3);
}
if (bEvolveMenuOpened) {
DisplayEvolveMenu(this, _local3);
}
}
static function OpenSproutMenu(Owner) {
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = !Owner.bSproutMenuOpened;
Owner.bEvolveMenuOpened = false;
}
static function OpenEvolveMenu(Owner) {
_root.MenuC.ClearInfo();
Owner.bEvolveMenuOpened = !Owner.bEvolveMenuOpened;
Owner.bSproutMenuOpened = false;
}
function DisplayStemButton(X, Y, ButtonName, NutrientCost, CheckObject, BtnFunction, StemHelpIndex) {
if (((((ButtonName == "Leaves") || (ButtonName == "Bulbs")) || (ButtonName == "Thorns")) || (ButtonName == "Spitter")) || (ButtonName == "Digestor")) {
var _local3 = _root.MenuC.DrawButton(X, Y, 24, 8, ButtonName, this, BtnFunction);
} else {
var _local3 = _root.MenuC.DrawButton(X, Y, 22, 8, ButtonName, this, BtnFunction);
}
if (_root.Game.bHelpText) {
_local3.onRollOver = function () {
if (this.enabled == true) {
var _local3 = new Color(this);
var _local2 = new Object();
_local2 = {ra:"100", rb:"0", ga:"100", gb:"150", ba:"100", bb:"50", aa:"100", ab:"0"};
_local3.setTransform(_local2);
}
as_scripts.Stem.HelpIndex = StemHelpIndex;
};
_local3.onRollOut = function () {
if (this.enabled == true) {
var _local3 = new Color(this);
var _local2 = new Object();
_local2 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local3.setTransform(_local2);
}
as_scripts.Stem.HelpIndex = 0;
};
}
if ((_local3.enabled == true) && ((GetNutrients() < NutrientCost) || (CheckObject != undefined))) {
var _local6 = new Color(_local3);
var _local5 = new Object();
_local5 = {ra:"10", rb:"40", ga:"20", gb:"60", ba:"10", bb:"60", aa:"20", ab:"60"};
_local6.setTransform(_local5);
_local3.enabled = false;
} else if ((_local3.enabled == false) && ((GetNutrients() >= NutrientCost) && (CheckObject == undefined))) {
var _local6 = new Color(_local3);
var _local5 = new Object();
_local5 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local6.setTransform(_local5);
_local3.enabled = true;
}
return(_local3);
}
static function DisplaySproutMenu(Owner, OffsetX) {
var _local3 = 0;
if (Owner.Y <= 50) {
_local3 = 50;
} else if (Math.abs(Owner.Y - _root.Game.Stage_Height) <= 74) {
_local3 = -74;
}
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 38) + _local3, "Leaves", as_scripts.Leaf.NutrientCost, Owner.SpawnedSprout, SproutLeaf, 3);
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 52) + _local3, "Bulbs", as_scripts.Bulb.NutrientCost, Owner.SpawnedSprout, SproutBulb, 4);
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 66) + _local3, "Thorns", as_scripts.Thorn.NutrientCost, Owner.SpawnedSprout, SproutThorn, 5);
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 80) + _local3, "Spitter", as_scripts.Poison.NutrientCost, Owner.SpawnedSprout, SproutPoison, 6);
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 94) + _local3, "Digestor", as_scripts.Digestor.NutrientCost, Owner.SpawnedSprout, SproutDigestor, 7);
}
static function DisplayEvolveMenu(Owner, OffsetX) {
var _local3 = 0;
if (Owner.Y <= 50) {
_local3 = 50;
} else if (Math.abs(Owner.Y - _root.Game.Stage_Height) <= 74) {
_local3 = -74;
}
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 38) + _local3, "Stem", Owner.CostToEvolve, undefined, Evolve, 9);
Owner.DisplayStemButton(((Owner.X + Owner.getImageClip()._width) + 73) + OffsetX, ((Owner.Y - Owner.getImageClip()._height) + 52) + _local3, "Root", as_scripts.Root.NutrientCost, Owner.SpawnedSprout, EvolveToRoot, 10);
}
static function Regress(Owner) {
if (Owner.SpawnedSprout != undefined) {
Owner.SpawnedSprout.Regress();
_root.MenuC.ClearInfo();
}
}
static function Evolve(Owner) {
if (Owner.GetNutrients() < Owner.CostToEvolve) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.EvolutionLevel = Owner.EvolutionLevel + 1;
Owner.MaxHealth = Owner.MaxHealth + 50;
if (Owner.EvolutionLevel < 2) {
Owner.CostToEvolve = Owner.CostToEvolve + 25;
} else {
Owner.CostToEvolve = 1000;
}
Owner.UseNutrients(Owner.CostToEvolve);
if (Owner.SpawnedSprout != undefined) {
Owner.SpawnedSprout.Evolve();
}
}
static function EvolveToRoot(Owner) {
if (Owner.GetNutrients() < as_scripts.Root.NutrientCost) {
} else {
_root.MenuC.ClearInfo();
Owner.UseNutrients(as_scripts.Root.NutrientCost);
var _local5 = new as_scripts.Root(Owner.X, Owner.Y, Owner.Index, Owner.GetOwnerPlant());
_local5.getImageClip()._rotation = Owner.getImageClip()._rotation;
if (_root.Game.SelectedObject == Owner) {
_root.Game.ClearSelectedObject();
}
removeMovieClip(Owner.getImageClip());
var _local3 = new Array();
as_scripts.AntHill.GetAntList(_local3);
var _local2 = 0;
while (_local2 < _local3.length) {
if ((_local3[_local2] != undefined) && (_local3[_local2].Enemy == Owner)) {
_local3[_local2].Enemy = undefined;
}
_local2++;
}
if (Owner.SpawnedSprout != undefined) {
Owner.SpawnedSprout.Die();
}
Owner.Owner.StemList[Owner.Index] = _local5;
}
}
static function SproutLeaf(Owner) {
if (Owner.SpawnedSprout != undefined) {
return(undefined);
}
if (Owner.GetNutrients() < as_scripts.Leaf.NutrientCost) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = false;
Owner.UseNutrients(as_scripts.Leaf.NutrientCost);
var _local3 = new as_scripts.Leaf(Owner);
Owner.SpawnedSprout = _local3;
}
static function SproutBulb(Owner) {
if (Owner.SpawnedSprout != undefined) {
return(undefined);
}
if (Owner.GetNutrients() < as_scripts.Bulb.NutrientCost) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = false;
Owner.UseNutrients(as_scripts.Bulb.NutrientCost);
var _local3 = new as_scripts.Bulb(Owner);
Owner.SpawnedSprout = _local3;
}
static function SproutThorn(Owner) {
if (Owner.SpawnedSprout != undefined) {
return(undefined);
}
if (Owner.GetNutrients() < as_scripts.Thorn.NutrientCost) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = false;
Owner.UseNutrients(as_scripts.Thorn.NutrientCost);
var _local3 = new as_scripts.Thorn(Owner);
Owner.SpawnedSprout = _local3;
}
static function SproutPoison(Owner) {
if (Owner.SpawnedSprout != undefined) {
return(undefined);
}
if (Owner.GetNutrients() < as_scripts.Poison.NutrientCost) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = false;
Owner.UseNutrients(as_scripts.Poison.NutrientCost);
var _local3 = new as_scripts.Poison(Owner);
Owner.SpawnedSprout = _local3;
}
static function SproutDigestor(Owner) {
if (Owner.SpawnedSprout != undefined) {
return(undefined);
}
if (Owner.GetNutrients() < as_scripts.Digestor.NutrientCost) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.bSproutMenuOpened = false;
Owner.UseNutrients(as_scripts.Digestor.NutrientCost);
var _local3 = new as_scripts.Digestor(Owner);
Owner.SpawnedSprout = _local3;
}
static var NutrientCost = 5;
static var SpawnDistance = 35;
static var HelpIndex = 1;
}
Symbol 393 MovieClip [__Packages.as_scripts.AntHill] Frame 0
class as_scripts.AntHill
{
static var AntHillList;
var Name, X, Y, AntHillLevel, AntType, AntList, SpawnedAnts, CurSpawnTime, bSpawnWave, bSpawnAnts, TopImageClip, BottomImageClip, bDroneAntHill, StartDelay, MaxAnts, MaxSpawnTime, DefaultColor;
function AntHill (StartX, StartY) {
Name = "AntHill";
X = StartX;
Y = StartY;
AntHillLevel = 0;
AntType = Math.round(Math.random() * 3);
AntList = new Array(10);
SpawnedAnts = 0;
CurSpawnTime = 0;
bSpawnWave = false;
bSpawnAnts = true;
var _local3 = _root.AntHillTopLayer.getNextHighestDepth();
TopImageClip = _root.AntHillTopLayer.attachMovie("AntHillTop_mc", "AntHillTop" + _local3, _local3);
_local3 = _root.AntHillBottomLayer.getNextHighestDepth();
BottomImageClip = _root.AntHillBottomLayer.attachMovie("AntHillBottom_mc", "AntHillBottom" + _local3, _local3);
if (Math.floor(_root.Game.LevelNum % 4) <= 0) {
bDroneAntHill = true;
AntHillLevel = 3;
StartDelay = 600;
MaxAnts = 1;
MaxSpawnTime = 100;
TopImageClip._xscale = 150;
TopImageClip._yscale = 150;
BottomImageClip._xscale = 150;
BottomImageClip._yscale = 150;
} else {
bDroneAntHill = false;
StartDelay = 200;
MaxAnts = Math.min(10, (1 + (_root.Game.Difficulty * 2)) + Math.round(_root.Game.LevelNum / 3));
MaxSpawnTime = (400 / Math.max(1, _root.Game.Difficulty)) + Math.round((Math.random() * 10) * 6);
}
var _local5 = new Color(TopImageClip);
var _local4 = new Object();
switch (AntType) {
case 0 :
_local4 = {ra:"100", rb:"50", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local5.setTransform(_local4);
break;
case 1 :
_local4 = {ra:"100", rb:"0", ga:"100", gb:"50", ba:"100", bb:"0", aa:"100", ab:"0"};
_local5.setTransform(_local4);
break;
}
_local5 = new Color(TopImageClip);
DefaultColor = _local5.getTransform();
var TempOwner = this;
TopImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
TopImageClip._x = X;
TopImageClip._y = Y;
BottomImageClip._x = X;
BottomImageClip._y = Y;
}
function getCollision() {
return(TopImageClip);
}
function ClearSelectedObject() {
var _local2 = new Color(TopImageClip);
_local2.setTransform(DefaultColor);
}
function DisplayInfo() {
var _local4 = new Color(TopImageClip);
var _local3 = new Object();
_local3 = {ra:"60", rb:"244", ga:"80", gb:"60", ba:"80", bb:"40", aa:"20", ab:"100"};
_local4.setTransform(_local3);
_root.MenuC.DrawText(X, Y - 34, 9, 16711680, (Name + " Lvl:") + int(AntHillLevel + 1), "txtName");
if (_root.Game.bDebug) {
_root.MenuC.DrawText(X, Y - 56, 9, 16711680, "MaxAnts:" + MaxAnts, "txtmaxants");
_root.MenuC.DrawBar(X, Y - 14, 50, 6, 13056, "maxantbar");
_root.MenuC.DrawBar(X, Y - 14, 50 * Math.min(1, SpawnedAnts / MaxAnts), 6, 65280, "antbar");
}
}
static function UpdateAntHills() {
if (Math.floor(_root.Game.LevelNum % 4) <= 0) {
var _local3 = Math.min(MaxAntHills, Math.max(1, ((_root.Game.Difficulty + 1) + Math.round(_root.Game.LevelNum / 10)) - 1));
} else {
var _local3 = Math.min(MaxAntHills, (_root.Game.Difficulty + 1) + Math.round(_root.Game.LevelNum / 20));
}
var _local2 = 0;
while (_local2 < _local3) {
if (AntHillList[_local2] != undefined) {
if ((_root.Game.bClickedOnTitle && (_root.Game.bHelpText)) && (!_root.Game.bSpawnedMeteor)) {
_root.MenuC.DrawText(AntHillList[_local2].X, AntHillList[_local2].Y - 20, 9, 16777215, "Anthill", "txtHelpTextAntHill" + _local2);
}
AntHillList[_local2].Update();
} else {
AntHillList[_local2] = new as_scripts.AntHill(50 + (Math.random() * (_root.Game.Stage_Width - 100)), 50 + (Math.random() * (_root.Game.Stage_Height - 100)));
}
_local2++;
}
}
function Update() {
if (!bDroneAntHill) {
if ((Math.random() * 10) <= (AntHillLevel * 0.0005)) {
bSpawnWave = true;
}
if ((AntHillLevel < 1) && (TopImageClip._xscale < 140)) {
TopImageClip._xscale = TopImageClip._xscale + 0.01;
TopImageClip._yscale = TopImageClip._yscale + 0.01;
BottomImageClip._xscale = BottomImageClip._xscale + 0.01;
BottomImageClip._yscale = BottomImageClip._yscale + 0.01;
} else if ((AntHillLevel < 2) && (TopImageClip._xscale < 145)) {
TopImageClip._xscale = TopImageClip._xscale + 0.002;
TopImageClip._yscale = TopImageClip._yscale + 0.002;
BottomImageClip._xscale = BottomImageClip._xscale + 0.002;
BottomImageClip._yscale = BottomImageClip._yscale + 0.002;
} else if ((AntHillLevel < 3) && (TopImageClip._xscale < 150)) {
TopImageClip._xscale = TopImageClip._xscale + 0.001;
TopImageClip._yscale = TopImageClip._yscale + 0.001;
BottomImageClip._xscale = BottomImageClip._xscale + 0.001;
BottomImageClip._yscale = BottomImageClip._yscale + 0.001;
}
if ((TopImageClip._xscale >= 140) && (AntHillLevel < 1)) {
MaxAnts = Math.min(10, MaxAnts + 1);
AntHillLevel = AntHillLevel + 1;
} else if ((TopImageClip._xscale >= 145) && (AntHillLevel < 2)) {
MaxAnts = Math.min(10, MaxAnts + 1);
AntHillLevel = AntHillLevel + 1;
MaxSpawnTime = Math.max(50, MaxSpawnTime - 150);
} else if ((TopImageClip._xscale >= 150) && (AntHillLevel < 3)) {
MaxAnts = Math.min(10, MaxAnts + 1);
AntHillLevel = AntHillLevel + 1;
MaxSpawnTime = Math.max(10, MaxSpawnTime - 150);
}
}
SpawnAnt();
var _local2 = 0;
while (_local2 < MaxAnts) {
if (AntList[_local2] != undefined) {
AntList[_local2].Update();
}
_local2++;
}
}
static function GetAntList(AntArray) {
var _local2 = 0;
while (_local2 < MaxAntHills) {
if (AntHillList[_local2] != undefined) {
var _local1 = 0;
while (_local1 < AntHillList[_local2].MaxAnts) {
if (AntHillList[_local2].AntList[_local1] != undefined) {
AntArray.push(AntHillList[_local2].AntList[_local1]);
}
_local1++;
}
}
_local2++;
}
}
static function ClearAntHills() {
var _local1 = 0;
while (_local1 < MaxAntHills) {
if (AntHillList[_local1] != undefined) {
AntHillList[_local1].ClearAnts();
delete AntHillList[_local1];
AntHillList[_local1] = undefined;
}
_local1++;
}
}
function ClearAnts() {
var _local2 = 0;
while (_local2 < MaxAnts) {
if (AntList[_local2] != undefined) {
AntList[_local2].Die();
}
_local2++;
}
}
function SpawnAnt() {
if (!_root.Game.bSpawnedMeteor) {
return(undefined);
}
if (StartDelay > 0) {
StartDelay = StartDelay - 1;
return(undefined);
}
if ((SpawnedAnts >= MaxAnts) || (!bSpawnAnts)) {
return(undefined);
}
if (CurSpawnTime < MaxSpawnTime) {
CurSpawnTime++;
return(undefined);
}
if (bSpawnWave && (SpawnedAnts > 0)) {
return(undefined);
}
CurSpawnTime = 0;
var _local3 = 0;
while (_local3 < MaxAnts) {
if (AntList[_local3] == undefined) {
if (bDroneAntHill) {
AntList[_local3] = new as_scripts.DroneAnt(X, Y, _local3, this, AntType);
if (AntList[_local3] != undefined) {
bSpawnAnts = false;
}
} else if ((AntHillLevel >= 1) && ((Math.random() * 4) <= 1)) {
AntList[_local3] = new as_scripts.WarriorAnt(X, Y, _local3, this, AntType);
} else if (((_root.Game.GameMode == 1) && (AntHillLevel >= 3)) && ((Math.random() * 16) <= 1)) {
AntList[_local3] = new as_scripts.DroneAnt(X, Y, _local3, this, AntType);
} else {
AntList[_local3] = new as_scripts.Ant(X, Y, _local3, this, AntType);
}
if (!bSpawnWave) {
return(undefined);
}
}
_local3++;
}
if (bSpawnWave) {
bSpawnWave = false;
}
}
function RemoveAnt(RAnt) {
delete AntList[RAnt.Index];
AntList[RAnt.Index] = undefined;
if (bDroneAntHill) {
var _local4 = 0;
while (_local4 < MaxAntHills) {
if (AntHillList[_local4] != undefined) {
var _local3 = 0;
while (_local3 < AntHillList[_local4].MaxAnts) {
if (AntHillList[_local4].AntList[_local3] != undefined) {
return(undefined);
}
_local3++;
}
}
_local4++;
}
_root.Game.LevelCompleted = 1;
}
}
static var MaxAntHills = 6;
}
Symbol 394 MovieClip [__Packages.as_scripts.Ant] Frame 0
class as_scripts.Ant
{
var MaxTurn, Index, Owner, ReachTargetX, ReachTargetY, MaxHealth, Health, Nutrients, Damage, AttackTime, MaxAttackTime, Speed, MaxCrawlTime, CrawlTime, bCollidedX, bCollidedY, bCollidedWithEnemy, bInAntHill, PlantArray, Name, X, Y, OldX, OldY, DirX, DirY, Angle, CurrentState, Enemy, ImageClip, DefaultColor, SpawnSound, AttackSound;
function Ant (StartX, StartY, Index, Owner, AntType) {
Owner.SpawnedAnts = Owner.SpawnedAnts + 1;
MaxTurn = 1.0471975511966;
this.Index = Index;
this.Owner = Owner;
ReachTargetX = Owner.X;
ReachTargetY = Owner.Y;
MaxHealth = 25;
Health = MaxHealth;
Nutrients = 5;
Damage = 5;
AttackTime = 0;
MaxAttackTime = 20;
Speed = 0.7;
MaxCrawlTime = 100;
CrawlTime = MaxCrawlTime;
bCollidedX = false;
bCollidedY = false;
bCollidedWithEnemy = false;
bInAntHill = true;
PlantArray = new Array();
Name = "Ant";
X = StartX;
Y = StartY;
OldX = StartX;
OldY = StartY;
DirX = StartX;
DirY = StartY;
Angle = 0;
CurrentState = "Search";
Enemy = undefined;
LoadImageClip(_root.AntInsideLayer);
var _local5 = new Color(ImageClip);
var _local3 = new Object();
switch (AntType) {
case 0 :
_local3 = {ra:"100", rb:"50", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local5.setTransform(_local3);
break;
case 1 :
_local3 = {ra:"100", rb:"0", ga:"100", gb:"50", ba:"100", bb:"0", aa:"100", ab:"0"};
_local5.setTransform(_local3);
break;
}
_local5 = new Color(ImageClip);
DefaultColor = _local5.getTransform();
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
LoadSounds();
SpawnSound.start();
}
function LoadImageClip(Layer) {
var _local3 = Layer.getNextHighestDepth();
ImageClip = Layer.attachMovie("WorkerAnt", "Ant" + _local3, _local3);
ImageClip._x = X;
ImageClip._y = Y;
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
}
function LoadSounds() {
SpawnSound = new Sound();
SpawnSound.attachSound("ant1.wav");
AttackSound = new Sound();
AttackSound.attachSound("antgib.wav");
}
function ClimbOutAntHill() {
if (!bInAntHill) {
return(undefined);
}
removeMovieClip(ImageClip);
LoadImageClip(_root.AntOutsideLayer);
var _local3 = new Color(ImageClip);
_local3.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
bInAntHill = false;
}
function ClimbInAntHill() {
if (bInAntHill) {
return(undefined);
}
removeMovieClip(ImageClip);
LoadImageClip(_root.AntInsideLayer);
var _local3 = new Color(ImageClip);
_local3.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
bInAntHill = true;
}
function getImageClip() {
return(ImageClip);
}
function getCollision() {
return(ImageClip.Collision);
}
function getHealth() {
return(Health);
}
function setHealth(Health) {
this.Health = Health;
}
function ClearSelectedObject() {
var _local3 = new Color(ImageClip);
_local3.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
}
function DisplayInfo() {
var _local4 = new Color(ImageClip);
var _local3 = new Object();
_local3 = {ra:"60", rb:"244", ga:"80", gb:"60", ba:"80", bb:"40", aa:"20", ab:"100"};
_local4.setTransform(_local3);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
_root.MenuC.DrawText(X, Y - 34, 9, 16711680, Name, "txtName");
if (_root.Game.bDebug) {
if (Enemy != undefined) {
_root.MenuC.DrawText(Enemy.X, Enemy.Y, 11, 16711680, "E", "txtEnemy");
}
_root.MenuC.DrawText(ReachTargetX, ReachTargetY, 11, 65280, "R", "txtReachTarget");
_root.MenuC.DrawText(X, Y - 50, 9, 16711680, "A:" + int(Angle), "txtAngle");
}
_root.MenuC.DrawBar(X, Y - 14, 50, 6, 13056, "maxhealthbar");
_root.MenuC.DrawBar(X, Y - 14, 50 * Math.min(1, Health / MaxHealth), 6, 65280, "healthbar");
}
function Update() {
if (_root.Game.bHelpText && (Index <= 0)) {
_root.MenuC.DrawText(X, Y - 20, 9, 16777215, "Enemy Ant", "txtHelpAnt");
}
switch (CurrentState) {
case "Search" :
Search();
break;
case "Reach" :
Reach();
break;
case "Retreat" :
Retreat();
break;
case "Attack" :
Attack();
}
UpdateMovement();
}
function UpdateMovement() {
if ((Math.abs(X - Owner.X) >= Math.round(Owner.TopImageClip._xscale / 15)) || (Math.abs(Y - Owner.Y) >= Math.round(Owner.TopImageClip._yscale / 15))) {
ClimbOutAntHill();
} else {
ClimbInAntHill();
}
if (bInAntHill && (Health < MaxHealth)) {
Health = Health + 0.5;
if (Health > MaxHealth) {
Health = MaxHealth;
}
}
if (bCollidedX) {
DirX = OldX;
} else {
OldX = X;
}
DirX = DirX + (Math.cos(Angle) * Speed);
if (bCollidedY) {
DirY = OldY;
} else {
OldY = Y;
}
DirY = DirY + (Math.sin(Angle) * Speed);
if ((!bCollidedX) && (!bCollidedY)) {
var _local4 = DirX - X;
var _local3 = DirY - Y;
ImageClip._rotation = (Math.atan2(_local3, _local4) * 180) / Math.PI;
}
bCollidedX = false;
bCollidedY = false;
bCollidedWithEnemy = false;
if (DirX < 0) {
DirX = 0;
} else if (DirX > _root.Game.Stage_Width) {
DirX = _root.Game.Stage_Width;
}
if (DirY < 0) {
DirY = 0;
} else if (DirY > _root.Game.Stage_Height) {
DirY = _root.Game.Stage_Height;
}
X = DirX;
Y = DirY;
ImageClip._x = X;
ImageClip._y = Y;
if (ImageClip.WorkerAnt._currentframe <= 1) {
ImageClip.WorkerAnt.gotoAndPlay("Crawl");
}
}
function Search() {
if (Enemy == undefined) {
if (CrawlTime >= MaxCrawlTime) {
if ((!bCollidedX) && (!bCollidedY)) {
Angle = (Angle - (MaxTurn / 2)) + (Math.random() * MaxTurn);
} else {
var _local4 = Owner.X - DirX;
var _local3 = Owner.Y - DirY;
Angle = Math.atan2(_local3, _local4);
}
CrawlTime = 0;
} else {
CrawlTime++;
}
if (PlantArray.length > 0) {
var _local2 = Math.round(Math.random() * PlantArray.length);
if ((Math.abs(X - PlantArray[_local2].X) + Math.abs(Y - PlantArray[_local2].Y)) <= SightRadius) {
Enemy = PlantArray[_local2];
}
}
}
if (Enemy != undefined) {
CurrentState = "Reach";
}
}
function Reach() {
if (Enemy == undefined) {
CurrentState = "Search";
return(undefined);
}
if (bCollidedWithEnemy) {
CurrentState = "Attack";
return(undefined);
}
if ((ReachTargetX == X) && (ReachTargetY == Y)) {
ReachTargetX = Enemy.X;
ReachTargetY = Enemy.Y;
}
if (CrawlTime >= MaxCrawlTime) {
if ((!bCollidedX) && (!bCollidedY)) {
ReachTargetX = Enemy.X;
ReachTargetY = Enemy.Y;
} else {
var _local3;
if ((Health <= (MaxHealth / 2)) && ((Math.random() * 8) <= 0.1)) {
MaxCrawlTime = 800;
CrawlTime = 0;
CurrentState = "Retreat";
return(undefined);
}
MaxCrawlTime = 50 + Math.min(50, Math.round(Math.random() * (1000 / (1 + (Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y))))));
if ((Math.random() * 3) <= 1) {
_local3 = Math.round(Math.random() * _root.Game.GameLevel.SoilAmount);
ReachTargetX = _root.SoilLayer["soil" + _local3]._x;
ReachTargetY = _root.SoilLayer["soil" + _local3]._y;
} else {
_local3 = Math.round(Math.random() * as_scripts.AntHill.MaxAntHills);
ReachTargetX = as_scripts.AntHill.AntHillList[_local3].X;
ReachTargetY = as_scripts.AntHill.AntHillList[_local3].Y;
}
if (ReachTargetX == undefined) {
ReachTargetX = Owner.X;
}
if (ReachTargetY == undefined) {
ReachTargetY = Owner.Y;
}
}
CrawlTime = 0;
} else {
var _local5 = ReachTargetX - DirX;
var _local4 = ReachTargetY - DirY;
Angle = Math.atan2(_local4, _local5);
CrawlTime++;
}
}
function Retreat() {
if (CrawlTime >= MaxCrawlTime) {
CurrentState = "Search";
CrawlTime = 0;
} else {
var _local3 = Owner.X - DirX;
var _local2 = Owner.Y - DirY;
Angle = Math.atan2(_local2, _local3);
if (bInAntHill && (MaxCrawlTime != 80)) {
MaxCrawlTime = 80;
CrawlTime = 0;
}
CrawlTime++;
}
}
function Attack() {
if (Enemy == undefined) {
CurrentState = "Search";
return(undefined);
}
if ((Health <= (MaxHealth / 2)) && ((Math.random() * 8) <= 0.1)) {
MaxCrawlTime = 800;
CrawlTime = 0;
CurrentState = "Retreat";
return(undefined);
}
var _local3 = Enemy.X - X;
var _local2 = Enemy.Y - Y;
Angle = Math.atan2(_local2, _local3);
if ((ImageClip.WorkerAnt._currentframe == 1) && (AttackTime >= MaxAttackTime)) {
ImageClip.WorkerAnt.gotoAndPlay("Bite");
Enemy.TakeDamage(Damage + (Math.random() * 3), this);
AttackSound.start();
AttackTime = 0;
} else {
AttackTime++;
}
}
function CollidedWithObject(Other) {
var _local3 = false;
bCollidedX = true;
bCollidedY = true;
if (bCollidedWithEnemy || (CurrentState == "Retreat")) {
return(undefined);
}
if (Enemy == Other) {
bCollidedWithEnemy = true;
CurrentState = "Attack";
return(undefined);
}
if (Enemy == undefined) {
Enemy = Other;
CurrentState = "Attack";
} else if (((Enemy != undefined) && (Enemy != Other)) && ((Math.abs(X - Other.X) + Math.abs(Y - Other.Y)) < (Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y)))) {
Enemy = Other;
CurrentState = "Attack";
}
}
function TakeDamage(Damage, Instigator) {
if (Damage >= 1) {
var _local2 = (new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "AntBlood_mc")).ImageClip;
_local2._xscale = 0.9;
_local2._yscale = 0.9;
}
Health = Health - Damage;
if (Health <= 0) {
if (Instigator.Enemy == this) {
Instigator.Enemy = undefined;
}
Die();
}
}
function Die() {
if (_root.Game.SelectedObject == this) {
_root.Game.SelectedObject = undefined;
_root.MenuC.ClearInfo();
}
new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "AntBlood_mc");
removeMovieClip(ImageClip);
Owner.SpawnedAnts = Owner.SpawnedAnts - 1;
_root.Game.Kills++;
Owner.RemoveAnt(this);
}
static var SightRadius = 1000;
static var AttackRange = 20;
}
Symbol 395 MovieClip [__Packages.as_scripts.Effect] Frame 0
class as_scripts.Effect
{
static var EffectList;
var Name, MaxEffectTime, CurEffectTime, X, Y, ImageClip, Index;
function Effect (StartX, StartY, Rotation, EffectTime, EffectName) {
Name = EffectName;
MaxEffectTime = EffectTime;
CurEffectTime = 0;
X = StartX;
Y = StartY;
ImageClip = _root.EffectLayer.attachMovie(EffectName, EffectName + SpawnedEffects, SpawnedEffects);
if (Rotation != undefined) {
ImageClip._rotation = Rotation;
}
ImageClip._x = X;
ImageClip._y = Y;
var _local3 = 0;
while (_local3 < MaxEffects) {
if (EffectList[_local3] == undefined) {
EffectList[_local3] = this;
Index = _local3;
break;
}
_local3++;
}
SpawnedEffects++;
}
function Update() {
if (CurEffectTime >= MaxEffectTime) {
removeMovieClip(ImageClip);
delete EffectList[Index];
EffectList[Index] = undefined;
SpawnedEffects--;
} else {
CurEffectTime++;
}
}
static function UpdateEffects() {
var _local1 = 0;
while (_local1 < MaxEffects) {
if (EffectList[_local1] != undefined) {
EffectList[_local1].Update();
}
_local1++;
}
}
static function ClearEffects() {
var _local1 = 0;
while (_local1 < MaxEffects) {
if (EffectList[_local1] != undefined) {
removeMovieClip(EffectList[_local1].ImageClip);
delete EffectList[EffectList[_local1].Index];
EffectList[EffectList[_local1].Index] = undefined;
SpawnedEffects--;
}
_local1++;
}
}
static var MaxEffects = 50;
static var SpawnedEffects = 0;
}
Symbol 396 MovieClip [__Packages.as_scripts.DroneAnt] Frame 0
class as_scripts.DroneAnt extends as_scripts.Ant
{
var Name, MaxHealth, Health, Nutrients, Damage, DamageTaken, AttackTime, MaxAttackTime, Speed, ImageClip, W, H, X, Y, SpawnSound, Owner, ClimbOutAntHill, ClimbInAntHill, bInAntHill, bCollidedX, DirX, OldX, CurrentState, Angle, bCollidedY, DirY, OldY, bCollidedWithEnemy, Enemy, ReachTargetX, ReachTargetY, MaxCrawlTime, CrawlTime, AttackSound;
function DroneAnt (StartX, StartY, Index, Owner, AntType) {
super(StartX, StartY, Index, Owner, AntType);
Name = "DroneAnt";
MaxHealth = 400 + (_root.Game.LevelNum * 25);
Health = MaxHealth;
Nutrients = 100;
Damage = 20;
DamageTaken = 0;
AttackTime = 0;
MaxAttackTime = 50;
Speed = 1;
ImageClip._xscale = 175;
ImageClip._yscale = 175;
W = ImageClip._width / 2;
H = ImageClip._height / 2;
}
function LoadImageClip(Layer) {
var _local3 = Layer.getNextHighestDepth();
ImageClip = Layer.attachMovie("DroneAnt", "Ant" + _local3, _local3);
ImageClip._x = X;
ImageClip._y = Y;
ImageClip._xscale = 175;
ImageClip._yscale = 175;
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
}
function LoadSounds() {
SpawnSound = new Sound();
SpawnSound.attachSound("ant2.wav");
}
function UpdateMovement() {
if ((Math.abs(X - Owner.X) >= Math.round(Owner.TopImageClip._xscale / 15)) || (Math.abs(Y - Owner.Y) >= Math.round(Owner.TopImageClip._yscale / 15))) {
ClimbOutAntHill();
} else {
ClimbInAntHill();
}
if (bInAntHill && (Health < MaxHealth)) {
Health = Health + 0.5;
if (Health > MaxHealth) {
Health = MaxHealth;
}
}
if (bCollidedX) {
DirX = OldX;
} else {
OldX = X;
}
if (CurrentState != "Attack") {
DirX = DirX + (Math.cos(Angle) * Speed);
if (bCollidedY) {
DirY = OldY;
} else {
OldY = Y;
}
DirY = DirY + (Math.sin(Angle) * Speed);
if ((!bCollidedX) && (!bCollidedY)) {
var _local4 = DirX - X;
var _local3 = DirY - Y;
ImageClip._rotation = (Math.atan2(_local3, _local4) * 180) / Math.PI;
}
}
bCollidedX = false;
bCollidedY = false;
bCollidedWithEnemy = false;
if (DirX < 0) {
DirX = 0;
} else if (DirX > _root.Game.Stage_Width) {
DirX = _root.Game.Stage_Width;
}
if (DirY < 0) {
DirY = 0;
} else if (DirY > _root.Game.Stage_Height) {
DirY = _root.Game.Stage_Height;
}
X = DirX;
Y = DirY;
ImageClip._x = X;
ImageClip._y = Y;
if (ImageClip.WorkerAnt._currentframe <= 1) {
ImageClip.WorkerAnt.gotoAndPlay("Crawl");
}
}
function CollidedWithObject(Other) {
var _local2 = false;
if (bCollidedWithEnemy || (CurrentState == "Retreat")) {
return(undefined);
}
Enemy = Other;
bCollidedWithEnemy = true;
CurrentState = "Attack";
return(undefined);
}
function Reach() {
if (Enemy == undefined) {
CurrentState = "Search";
return(undefined);
}
if (bCollidedWithEnemy) {
CurrentState = "Attack";
return(undefined);
}
if ((ReachTargetX == X) && (ReachTargetY == Y)) {
ReachTargetX = Enemy.X;
ReachTargetY = Enemy.Y;
}
if (CrawlTime >= MaxCrawlTime) {
if ((!bCollidedX) && (!bCollidedY)) {
ReachTargetX = Enemy.X;
ReachTargetY = Enemy.Y;
} else {
var _local3;
if ((DamageTaken >= (MaxHealth / 5)) && ((Math.random() * 8) <= 0.1)) {
MaxCrawlTime = 800;
CrawlTime = 0;
DamageTaken = 0;
CurrentState = "Retreat";
return(undefined);
}
MaxCrawlTime = 50 + Math.min(50, Math.round(Math.random() * (1000 / (1 + (Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y))))));
if ((Math.random() * 3) <= 1) {
_local3 = Math.round(Math.random() * _root.Game.GameLevel.SoilAmount);
ReachTargetX = _root.SoilLayer["soil" + _local3]._x;
ReachTargetY = _root.SoilLayer["soil" + _local3]._y;
} else {
_local3 = Math.round(Math.random() * as_scripts.AntHill.MaxAntHills);
ReachTargetX = as_scripts.AntHill.AntHillList[_local3].X;
ReachTargetY = as_scripts.AntHill.AntHillList[_local3].Y;
}
if (ReachTargetX == undefined) {
ReachTargetX = Owner.X;
}
if (ReachTargetY == undefined) {
ReachTargetY = Owner.Y;
}
}
CrawlTime = 0;
} else {
var _local5 = ReachTargetX - DirX;
var _local4 = ReachTargetY - DirY;
Angle = Math.atan2(_local4, _local5);
CrawlTime++;
}
}
function Attack() {
if (Enemy == undefined) {
CurrentState = "Search";
return(undefined);
}
if ((DamageTaken >= (MaxHealth / 5)) && ((Math.random() * 8) <= 0.1)) {
MaxCrawlTime = 800;
CrawlTime = 0;
DamageTaken = 0;
CurrentState = "Retreat";
return(undefined);
}
var _local3 = Enemy.X - X;
var _local2 = Enemy.Y - Y;
Angle = Math.atan2(_local2, _local3);
if ((ImageClip.WorkerAnt._currentframe == 1) && (AttackTime >= MaxAttackTime)) {
ImageClip.WorkerAnt.gotoAndPlay("Bite");
Enemy.TakeDamage(Damage + (Math.random() * 3), this);
AttackSound.start();
AttackTime = 0;
} else {
AttackTime++;
}
}
function TakeDamage(Damage, Instigator) {
if (Damage >= 1) {
var _local2 = (new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "AntBlood_mc")).ImageClip;
_local2._xscale = 0.9;
_local2._yscale = 0.9;
}
Health = Health - Damage;
DamageTaken = DamageTaken + Damage;
if (Health <= 0) {
if (Instigator.Enemy == this) {
Instigator.Enemy = undefined;
}
Die();
}
}
function Die() {
if (_root.Game.SelectedObject == this) {
_root.Game.SelectedObject = undefined;
_root.MenuC.ClearInfo();
}
var _local3 = new as_scripts.Effect(X, Y, ImageClip._rotation, 10, "AntBlood_mc");
if (_local3) {
_local3.ImageClip._xscale = 200;
_local3.ImageClip._yscale = 200;
}
removeMovieClip(ImageClip);
Owner.SpawnedAnts = Owner.SpawnedAnts - 1;
_root.Game.Kills++;
Owner.RemoveAnt(this);
}
}
Symbol 397 MovieClip [__Packages.as_scripts.WarriorAnt] Frame 0
class as_scripts.WarriorAnt extends as_scripts.Ant
{
var Name, MaxHealth, Health, Nutrients, Damage, AttackTime, MaxAttackTime, Speed, ImageClip, W, H, X, Y, SpawnSound, bCollidedX, bCollidedY, bCollidedWithEnemy, CurrentState, Enemy;
function WarriorAnt (StartX, StartY, Index, Owner, AntType) {
super(StartX, StartY, Index, Owner, AntType);
Name = "WarriorAnt";
MaxHealth = 50;
Health = MaxHealth;
Nutrients = 10;
Damage = 15;
AttackTime = 0;
MaxAttackTime = 30;
Speed = 0.5;
ImageClip._xscale = 150;
ImageClip._yscale = 150;
W = ImageClip._width / 2;
H = ImageClip._height / 2;
}
function LoadImageClip(Layer) {
var _local3 = Layer.getNextHighestDepth();
ImageClip = Layer.attachMovie("WorkerAnt", "Ant" + _local3, _local3);
ImageClip._x = X;
ImageClip._y = Y;
ImageClip._xscale = 150;
ImageClip._yscale = 150;
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
}
function LoadSounds() {
SpawnSound = new Sound();
SpawnSound.attachSound("ant2.wav");
}
function CollidedWithObject(Other) {
var _local3 = false;
bCollidedX = true;
bCollidedY = true;
if (bCollidedWithEnemy || (CurrentState == "Retreat")) {
return(undefined);
}
if (Enemy == Other) {
bCollidedWithEnemy = true;
CurrentState = "Attack";
return(undefined);
}
if (((Enemy != undefined) && (Enemy != Other)) && ((Math.abs(X - Other.X) + Math.abs(Y - Other.Y)) < (Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y)))) {
Enemy = Other;
CurrentState = "Attack";
} else if (Enemy == undefined) {
Enemy = Other;
CurrentState = "Attack";
}
}
}
Symbol 398 MovieClip [__Packages.as_scripts.Leaf] Frame 0
class as_scripts.Leaf extends as_scripts.Sprout
{
var Name, WaterUsage, PhotosynthTime, PhotosynthAmount, ImageClip, DefaultColor, X, Y, Owner;
function Leaf (Owner) {
super(Owner);
Name = "Leaf";
WaterUsage = 4;
PhotosynthTime = 0;
PhotosynthAmount = (_root.Game.GameLevel.SunLight * 0.003) + (Owner.EvolutionLevel * 0.15);
var _local4 = _root.LeafLayer.getNextHighestDepth();
ImageClip = _root.LeafLayer.attachMovie("Leaves_mc", "Leaf" + _local4, _local4);
DefaultColor = Owner.DefaultColor;
var _local7 = new Color(ImageClip);
_local7.setTransform(DefaultColor);
var _local6 = Math.random() * 360;
ImageClip._rotation = Owner.getImageClip()._rotation;
ImageClip.Leaves._rotation = _local6;
ImageClip.Leaves.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
}
function Evolve() {
super.Evolve();
PhotosynthAmount = PhotosynthAmount + 0.15;
}
function Update() {
super.Update();
if (PhotosynthTime >= MaxPhotosynthTime) {
Owner.AddNutrients(PhotosynthAmount);
PhotosynthTime = 0;
} else {
PhotosynthTime++;
}
}
static var NutrientCost = 15;
static var MaxPhotosynthTime = 10;
}
Symbol 399 MovieClip [__Packages.as_scripts.Bulb] Frame 0
class as_scripts.Bulb extends as_scripts.Sprout
{
var Name, WaterUsage, ImageClip, DefaultColor, X, Y, Owner;
function Bulb (Owner) {
super(Owner);
Name = "Bulb";
WaterUsage = 3;
var _local5 = _root.SproutLayer.getNextHighestDepth();
ImageClip = _root.SproutLayer.attachMovie("Bulb_mc", "Bulb" + _local5, _local5);
DefaultColor = Owner.DefaultColor;
var _local6 = new Color(ImageClip);
_local6.setTransform(DefaultColor);
ImageClip._rotation = Owner.getImageClip()._rotation;
ImageClip.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
Owner.SetMaxWater(Owner.GetMaxWater() + (15 + (Owner.EvolutionLevel * 5)));
Owner.SetMaxNutrients(Owner.GetMaxNutrients() + (15 + (Owner.EvolutionLevel * 5)));
}
function Evolve() {
super.Evolve();
Owner.SetMaxWater(Owner.GetMaxWater() + 10);
Owner.SetMaxNutrients(Owner.GetMaxNutrients() + 10);
}
function Die() {
Owner.SetMaxWater(Owner.GetMaxWater() - (15 + (Owner.EvolutionLevel * 10)));
Owner.SetMaxNutrients(Owner.GetMaxNutrients() - (15 + (Owner.EvolutionLevel * 10)));
super.Die();
}
static var NutrientCost = 15;
}
Symbol 400 MovieClip [__Packages.as_scripts.Thorn] Frame 0
class as_scripts.Thorn extends as_scripts.Sprout
{
var Name, WaterUsage, Damage, ImageClip, DefaultColor, X, Y;
function Thorn (Owner) {
super(Owner);
Name = "Thorn";
WaterUsage = 3;
Damage = 5 + (Owner.EvolutionLevel * 1.5);
var _local4 = _root.SproutLayer.getNextHighestDepth();
switch (int(Math.random() * 3)) {
case 0 :
ImageClip = _root.SproutLayer.attachMovie("Thorn_mc", "Thorn" + _local4, _local4);
break;
case 1 :
ImageClip = _root.SproutLayer.attachMovie("Thorn_mc", "Thorn" + _local4, _local4);
break;
default :
ImageClip = _root.SproutLayer.attachMovie("Thorn_mc", "Thorn" + _local4, _local4);
}
DefaultColor = Owner.DefaultColor;
var _local6 = new Color(ImageClip);
_local6.setTransform(DefaultColor);
ImageClip._rotation = Owner.getImageClip()._rotation;
ImageClip.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
}
function Evolve() {
super.Evolve();
Damage = Damage + 1.5;
}
function TakeDamage(Damage, Instigator) {
super.TakeDamage(Damage, Instigator);
if (Instigator.Name != "Thorn") {
Instigator.TakeDamage(Damage, this);
}
}
static var NutrientCost = 20;
}
Symbol 401 MovieClip [__Packages.as_scripts.Poison] Frame 0
class as_scripts.Poison extends as_scripts.Sprout
{
var Name, WaterUsage, Damage, AttackTime, CurAttackTime, AttackDistance, Enemy, ImageClip, DefaultColor, X, Y, AntArray;
function Poison (Owner) {
super(Owner);
Name = "Poison";
WaterUsage = 6;
Damage = 3 + (Owner.EvolutionLevel * 1.5);
AttackTime = 30;
CurAttackTime = 0;
AttackDistance = 125;
Enemy = undefined;
var _local4 = _root.LeafLayer.getNextHighestDepth();
ImageClip = _root.LeafLayer.attachMovie("Poison_mc", "Poison" + _local4, _local4);
DefaultColor = Owner.DefaultColor;
var _local6 = new Color(ImageClip);
_local6.setTransform(DefaultColor);
ImageClip._rotation = Owner.getImageClip()._rotation;
ImageClip.Poison.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
}
function Update() {
super.Update();
if ((Enemy != undefined) && ((Enemy.Health <= 0) || ((Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y)) > AttackDistance))) {
Enemy = undefined;
}
if (Enemy == undefined) {
var _local3 = 0;
while (_local3 < AntArray.length) {
if ((AntArray[_local3] != undefined) && ((AntArray[_local3].Health > 0) && ((Math.abs(X - AntArray[_local3].X) + Math.abs(Y - AntArray[_local3].Y)) <= AttackDistance))) {
Enemy = AntArray[_local3];
break;
}
_local3++;
}
}
if (Enemy != undefined) {
var _local5 = Enemy.X - X;
var _local4 = Enemy.Y - Y;
var _local6 = Math.atan2(_local4, _local5);
ImageClip.Poison._rotation = (((_local6 * 180) / Math.PI) - ImageClip._rotation) - 90;
if (CurAttackTime >= AttackTime) {
if ((Math.abs(X - Enemy.X) + Math.abs(Y - Enemy.Y)) <= AttackDistance) {
Enemy.TakeDamage(Damage, this);
ImageClip.Poison.gotoAndPlay("Shoot");
new as_scripts.Effect(Enemy.X, Enemy.Y, Enemy.ImageClip._rotation, 15, "PoisonEffect_mc");
CurAttackTime = 0;
}
} else {
CurAttackTime++;
}
}
}
function Evolve() {
super.Evolve();
Damage = Damage + 1.5;
}
function TakeDamage(Damage, Instigator) {
super.TakeDamage(Damage, Instigator);
if (Instigator != undefined) {
Enemy = Instigator;
}
}
static var NutrientCost = 35;
}
Symbol 402 MovieClip [__Packages.as_scripts.Digestor] Frame 0
class as_scripts.Digestor extends as_scripts.Sprout
{
var Name, WaterUsage, MaxChewTime, ChewTime, PreyNutrients, bGrabbing, bHasPrey, bSetPreyColor, PreyAntColor, Prey, ImageClip, DefaultColor, X, Y, Owner;
function Digestor (Owner) {
super(Owner);
Name = "Digestor";
WaterUsage = 5;
MaxChewTime = 150 - (Owner.EvolutionLevel * 50);
ChewTime = 0;
PreyNutrients = 0;
bGrabbing = false;
bHasPrey = false;
bSetPreyColor = false;
PreyAntColor = new Object();
PreyNutrients = 0;
Prey = undefined;
var _local4 = _root.LeafLayer.getNextHighestDepth();
ImageClip = _root.LeafLayer.attachMovie("Digestor3_mc", "Digestor3" + _local4, _local4);
DefaultColor = Owner.DefaultColor;
var _local8 = new Color(ImageClip);
_local8.setTransform(DefaultColor);
var _local9 = new Color(ImageClip.PreyAnt);
var _local5 = new Object();
_local5 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local9.setTransform(_local5);
var _local7 = Math.random() * 360;
ImageClip._rotation = Owner.getImageClip()._rotation;
ImageClip.Digestor._rotation = _local7;
ImageClip.Digestor.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
}
function Evolve() {
super.Evolve();
MaxChewTime = MaxChewTime - 50;
}
function CollidedWithObject(Other) {
if ((!bGrabbing) && (!bHasPrey)) {
if ((Other.Name == "Ant") || ((Other.Name == "WarriorAnt") && (Owner.EvolutionLevel >= 2))) {
var _local4 = Other.X - X;
var _local3 = Other.Y - Y;
var _local5 = Math.atan2(_local3, _local4);
Prey = Other;
bGrabbing = true;
ImageClip.Digestor._rotation = (((_local5 * 180) / Math.PI) - ImageClip._rotation) + 90;
ImageClip.Digestor.gotoAndPlay("Grab");
}
}
}
function Update() {
super.Update();
if ((bGrabbing && (!bHasPrey)) && (ImageClip.Digestor._currentframe >= 21)) {
bGrabbing = false;
bHasPrey = true;
bSetPreyColor = false;
new as_scripts.Effect(Prey.X, Prey.Y, Prey.ImageClip._rotation, 10, "AntBlood_mc");
PreyNutrients = Prey.Nutrients;
Prey.TakeDamage(Prey.Health, this);
Prey = undefined;
}
if (bHasPrey) {
if (ChewTime >= MaxChewTime) {
Owner.AddNutrients(PreyNutrients);
ImageClip.Digestor.gotoAndPlay("Open");
ChewTime = 0;
bHasPrey = false;
} else {
ChewTime++;
}
}
}
static var NutrientCost = 40;
}
Symbol 403 MovieClip [__Packages.as_scripts.Root] Frame 0
class as_scripts.Root extends as_scripts.Plant
{
var Name, SpawnedStems, MaxHealth, Health, CurStemSpawnTime, Owner, CostToEvolve, WaterUsage, DefaultColor, ImageClip, StemList, X, Y, CheckForSoil, EvolutionLevel, WDroplet, NutrientTime, PlantSoilIndex, Index;
function Root (StartX, StartY, Index, Owner) {
super(StartX, StartY, Index);
Name = "Root";
SpawnedStems = 0;
MaxHealth = 150;
Health = MaxHealth;
CurStemSpawnTime = 0;
this.Owner = Owner;
this.Owner.AddPlantSize(1);
CostToEvolve = 75;
WaterUsage = 5;
DefaultColor = Owner.DefaultColor;
var _local4 = new Color(ImageClip);
_local4.setTransform(DefaultColor);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
StemList = new Array(MaxStems);
ImageClip.Root.gotoAndPlay("Grow");
ImageClip._x = X;
ImageClip._y = Y;
}
function LoadImageClip() {
var _local3 = _root.RootLayer.getNextHighestDepth();
ImageClip = _root.RootLayer.attachMovie("Root_mc", "Root" + _local3, _local3);
var TempOwner = this;
ImageClip.onPress = function () {
if (_root.Game.SelectedObject != undefined) {
_root.Game.ClearSelectedObject();
}
_root.Game.SelectedObject = TempOwner;
};
ImageClip._x = X;
ImageClip._y = Y;
CheckForSoil();
}
function GetOwner() {
return(Owner);
}
function GetOwnerPlant() {
return(Owner.GetOwnerPlant());
}
function GetMaxWater() {
if (Owner != undefined) {
return(Owner.GetMaxWater());
}
return(0);
}
function SetMaxWater(NewMaxWater) {
if (Owner != undefined) {
Owner.SetMaxWater(NewMaxWater);
}
}
function GetWater() {
return(Owner.Water);
}
function AddWater(WaterAdded) {
Owner.AddWater(WaterAdded);
}
function UseWater(WaterUsed) {
Owner.UseWater(WaterUsed);
}
function GetMaxNutrients() {
if (Owner != undefined) {
return(Owner.GetMaxNutrients());
}
return(0);
}
function SetMaxNutrients(NewMaxNutrients) {
if (Owner != undefined) {
Owner.SetMaxNutrients(NewMaxNutrients);
}
}
function GetNutrients() {
if (Owner != undefined) {
return(Owner.GetNutrients());
}
return(0);
}
function AddNutrients(AmtNutrients) {
if (Owner != undefined) {
Owner.AddNutrients(AmtNutrients);
}
}
function UseNutrients(AmtNutrients) {
if (Owner != undefined) {
Owner.UseNutrients(AmtNutrients);
}
}
function GetPlantSize() {
return(Owner.PlantSize);
}
function AddPlantSize(AmountToAdd) {
Owner.PlantSize = Owner.PlantSize + AmountToAdd;
}
function RemovePlantSize(AmountToAdd) {
Owner.PlantSize = Owner.PlantSize - AmountToAdd;
}
function Update() {
if ((GetWater() < GetMaxWater()) && (_root.Game.GameLevel.CheckCloudCollision(ImageClip))) {
AddWater(0.4);
} else {
UseWater((WaterUsage * 0.001) + (EvolutionLevel * 0.001));
}
if (GetWater() <= 0) {
if (WDroplet == undefined) {
WDroplet = new as_scripts.WaterDroplet(X, Y - 20, 20, "Droplet_mc", this);
}
TakeDamage(0.1, undefined);
} else if ((Health < MaxHealth) && (Math.round(GetNutrients()) > 0)) {
Health = Health + 0.08;
if (Health > MaxHealth) {
Health = MaxHealth;
}
}
if (ImageClip.Root._xscale < (40 + (EvolutionLevel * 10))) {
ImageClip.Root._xscale = ImageClip.Root._xscale + 0.1;
ImageClip.Root._yscale = ImageClip.Root._yscale + 0.1;
}
if (NutrientTime >= MaxNutrientTime) {
if ((PlantSoilIndex >= 0) && (_root.Game.GameLevel.Soil[PlantSoilIndex] > 0)) {
var _local4 = int(Math.random() * 2) + (5 + (EvolutionLevel * 2));
AddNutrients(_local4);
_root.Game.GameLevel.Soil[PlantSoilIndex] = _root.Game.GameLevel.Soil[PlantSoilIndex] - _local4;
_root.SoilLayer["soil" + PlantSoilIndex]._alpha = 100 * Math.min(1, _root.Game.GameLevel.Soil[PlantSoilIndex] / _root.Game.GameLevel.SoilNutrition);
} else {
var _local4 = int(Math.random() * 2) + (2 + (EvolutionLevel * 2));
AddNutrients(_local4);
}
NutrientTime = 0;
} else {
NutrientTime++;
}
if (CurStemSpawnTime < MaxStemSpawnTime) {
CurStemSpawnTime++;
} else {
SpawnStem();
CurStemSpawnTime = 0;
}
var _local3 = 0;
while (_local3 <= SpawnedStems) {
if ((StemList[_local3] != undefined) && (StemList[_local3] != this)) {
StemList[_local3].Update();
}
_local3++;
}
}
function DisplayInfo() {
var _local7 = new Color(ImageClip);
var _local6 = new Object();
_local6 = {ra:"60", rb:"120", ga:"80", gb:"200", ba:"80", bb:"160", aa:"40", ab:"100"};
_local7.setTransform(_local6);
if (_root.Game.bDebug == false) {
ImageClip.Collision._alpha = 0;
}
var _local4 = 0;
var _local3 = 0;
if ((X + 150) >= _root.Game.Stage_Width) {
_local4 = -((X + 150) - _root.Game.Stage_Width);
}
if (Y <= 50) {
_local3 = 50;
} else if (Math.abs(Y - _root.Game.Stage_Height) <= 70) {
_local3 = -70;
}
_root.MenuC.DrawText((X + ImageClip._width) + _local4, ((Y - ImageClip._height) - 4) + _local3, 9, 4521796, (Name + " Lvl:") + int(EvolutionLevel + 1), "txtName");
_root.MenuC.DrawText(((X + ImageClip._width) + 47) + _local4, ((Y - ImageClip._height) - 4) + _local3, 9, 4521796, int(MaxHealth), "txthealth");
_root.MenuC.DrawText(((X + ImageClip._width) + 67) + _local4, ((Y - ImageClip._height) - 4) + _local3, 9, 16729343, int(GetMaxNutrients()), "txtnutrients");
_root.MenuC.DrawText(((X + ImageClip._width) + 87) + _local4, ((Y - ImageClip._height) - 4) + _local3, 9, 4474111, int(GetMaxWater()), "txtwater");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 14) + _local3, 100, 6, 13056, "maxhealthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 14) + _local3, 100 * Math.min(1, Health / MaxHealth), 6, 65280, "healthbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 22) + _local3, 100, 6, 3342387, "maxnutrientbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 22) + _local3, 100 * Math.min(1, GetNutrients() / GetMaxNutrients()), 6, 16711935, "nutrientbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 30) + _local3, 100, 6, 51, "maxwaterbar");
_root.MenuC.DrawBar((X + ImageClip._width) + _local4, ((Y - ImageClip._height) + 30) + _local3, 100 * Math.min(1, GetWater() / GetMaxWater()), 6, 255, "waterbar");
if (_root.Game.bHelpText) {
_root.MenuC.DrawText((X + ImageClip._width) + _local4, ((Y - ImageClip._height) - 20) + _local3, 9, 16777215, "Roots spawn more stems towards the sun", "txtHelpRoot");
_root.MenuC.DrawText(((X + ImageClip._width) + _local4) + 100, (Y - ImageClip._height) + _local3, 9, 65280, "Health", "txtHelpHealth");
_root.MenuC.DrawText(((X + ImageClip._width) + _local4) + 100, ((Y - ImageClip._height) + 16) + _local3, 9, 16711935, "Nutrients", "txtHelpNutrients");
_root.MenuC.DrawText(((X + ImageClip._width) + _local4) + 100, ((Y - ImageClip._height) + 34) + _local3, 9, 255, "Water", "txtHelpWater");
}
var _local5 = _root.MenuC.DrawButton(((X + ImageClip._width) + 26) + _local4, ((Y - ImageClip._height) + 46) + _local3, 22, 8, "Evolve", this, Evolve);
if ((_local5.enabled == true) && ((EvolutionLevel >= 2) || (GetNutrients() < CostToEvolve))) {
_local7 = new Color(_local5);
_local6 = new Object();
_local6 = {ra:"10", rb:"40", ga:"20", gb:"60", ba:"20", bb:"60", aa:"10", ab:"20"};
_local7.setTransform(_local6);
_local5.enabled = false;
} else if ((_local5.enabled == false) && ((EvolutionLevel < 2) && (GetNutrients() >= CostToEvolve))) {
_local7 = new Color(_local5);
_local6 = new Object();
_local6 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_local7.setTransform(_local6);
_local5.enabled = true;
}
if (_root.Game.bDebug) {
_root.MenuC.DrawText(X + ImageClip._width, (Y - ImageClip._height) - 20, 9, 65280, "S:" + SpawnedStems, "txtSpawnedStems");
}
}
static function Evolve(Owner) {
if (Owner.GetNutrients() < Owner.CostToEvolve) {
return(undefined);
}
_root.MenuC.ClearInfo();
Owner.EvolutionLevel = Owner.EvolutionLevel + 1;
Owner.MaxHealth = Owner.MaxHealth + 100;
Owner.CostToEvolve = Owner.CostToEvolve + 50;
Owner.UseNutrients(Owner.CostToEvolve);
}
function TakeDamage(Damage, Instigator) {
Health = Health - Damage;
if (Health <= 0) {
if (Instigator.Enemy == this) {
Instigator.Enemy = undefined;
}
Owner.KillPlant(Index);
}
}
function Die() {
super.Die();
Owner.RemovePlantSize(1);
Owner.SpawnedStems = Owner.SpawnedStems - 1;
Owner.RemoveStem(Index);
}
function SpawnStem() {
if ((GetNutrients() < as_scripts.Stem.NutrientCost) || (SpawnedStems >= MaxStems)) {
return(undefined);
}
var _local2 = 0;
while (_local2 < MaxStems) {
if (StemList[_local2] == undefined) {
if (_local2 <= 0) {
StemList[_local2] = new as_scripts.Stem(X, Y, _local2, this);
} else {
StemList[_local2] = new as_scripts.Stem(StemList[_local2 - 1].X, StemList[_local2 - 1].Y, _local2, this);
}
UseNutrients(as_scripts.Stem.NutrientCost);
return(undefined);
}
_local2++;
}
}
static var NutrientCost = 50;
static var MaxStems = 5;
static var MaxStemSpawnTime = 40;
static var MaxNutrientTime = 100;
}
Symbol 404 MovieClip [__Packages.as_scripts.WaterDroplet] Frame 0
class as_scripts.WaterDroplet extends as_scripts.Effect
{
var Owner, MaxEffectTime, CurEffectTime, ImageClip, Index;
function WaterDroplet (StartX, StartY, EffectTime, EffectName, Owner) {
super(StartX, StartY, undefined, EffectTime, EffectName);
this.Owner = Owner;
}
function Update() {
if (CurEffectTime >= MaxEffectTime) {
if (Owner != undefined) {
Owner.WDroplet = undefined;
}
removeMovieClip(ImageClip);
delete as_scripts.Effect.EffectList[Index];
as_scripts.Effect.EffectList[Index] = undefined;
as_scripts.Effect.SpawnedEffects--;
} else {
CurEffectTime++;
}
}
}
Symbol 405 MovieClip [__Packages.as_scripts.Cloud] Frame 0
class as_scripts.Cloud
{
var X, Y, Index, CloudTime, CloudFormTime, CloudState, ImageClip;
function Cloud (StartX, StartY, Index, CloudTime) {
X = StartX;
Y = StartY;
this.Index = Index;
this.CloudTime = CloudTime;
CloudFormTime = 100;
CloudState = 0;
_root.Game.GameLevel.SpawnedClouds++;
ImageClip = _root.CloudLayer.attachMovie("Cloud_mc", "Cloud" + this.Index, this.Index);
var _local3 = this;
ImageClip.onPress = function () {
_root.Game.ClearSelectedObject();
this.startDrag(true, 0, 0, _root.Game.Stage_Width, _root.Game.Stage_Height);
};
ImageClip.onRelease = function () {
this.stopDrag();
};
ImageClip.onReleaseOutside = function () {
this.stopDrag();
};
ImageClip.onRollOut = function () {
this.stopDrag();
};
ImageClip._alpha = 0;
ImageClip._x = X;
ImageClip._y = Y;
LoadSounds();
}
function LoadSounds() {
}
function Update() {
X = ImageClip._x;
Y = ImageClip._y;
if (_root.Game.bClickedOnTitle && (_root.Game.bHelpText)) {
_root.MenuC.DrawText(X - 40, Y - 20, 9, 16777215, "Drag clouds over plant to replenish water", "txtCloud");
}
switch (CloudState) {
case 0 :
Forming();
break;
case 1 :
Raining();
break;
case 2 :
Dying();
}
}
function Forming() {
if (CloudFormTime > 0) {
CloudFormTime = CloudFormTime - 0.9;
ImageClip._alpha = 100 - CloudFormTime;
} else {
ImageClip.gotoAndPlay("Start");
CloudState = 1;
}
}
function Raining() {
if (CloudTime > 0) {
ImageClip._alpha = Math.min(100, CloudTime * 1.4);
CloudTime = CloudTime - 0.1;
}
if (ImageClip._alpha <= 20) {
ImageClip.gotoAndPlay("Idle");
CloudState = 2;
}
}
function Dying() {
if (CloudTime > 0) {
ImageClip._alpha = Math.min(100, CloudTime * 1.4);
CloudTime = CloudTime - 0.5;
} else {
Die();
}
}
function Die() {
_root.Game.GameLevel.SpawnedClouds--;
_root.Game.GameLevel.CloudList[Index] = undefined;
removeMovieClip(ImageClip);
}
}
Symbol 406 MovieClip [__Packages.as_scripts.Cursor] Frame 0
class as_scripts.Cursor
{
var ImageClip, X, Y;
function Cursor (ImageClipName) {
ImageClip = _root.CursorLayer.attachMovie(ImageClipName, ImageClipName, 1);
}
function SetImageClip(ImageClipName) {
removeMovieClip(ImageClip);
ImageClip = _root.CursorLayer.attachMovie(ImageClipName, ImageClipName, 1);
}
function getImageClip() {
return(ImageClip);
}
function Update() {
X = _root._xmouse;
Y = _root._ymouse;
ImageClip._x = X;
ImageClip._y = Y;
if ((_root._xmouse > _root.Game.Stage_Width) || (_root._xmouse < 0)) {
Mouse.show();
ImageClip._visible = false;
} else if ((_root._ymouse > _root.Game.Stage_Height) || (_root._ymouse < 0)) {
Mouse.show();
ImageClip._visible = false;
} else {
Mouse.hide();
ImageClip._visible = true;
}
}
}
Symbol 4 MovieClip [__Packages.mx.core.UIObject] Frame 0
class mx.core.UIObject extends MovieClip
{
var _width, _height, _x, _y, _parent, _minHeight, _minWidth, _visible, dispatchEvent, _xscale, _yscale, methodTable, onEnterFrame, tfList, __width, __height, moveTo, lineTo, createTextField, attachMovie, buildDepthTable, findNextAvailableDepth, idNames, childrenCreated, _name, createAccessibilityImplementation, _endInit, validateNow, hasOwnProperty, initProperties, stylecache, className, ignoreClassStyleDeclaration, _tf, fontFamily, fontSize, color, marginLeft, marginRight, fontStyle, fontWeight, textAlign, textIndent, textDecoration, embedFonts, styleName, enabled;
function UIObject () {
super();
constructObject();
}
function get width() {
return(_width);
}
function get height() {
return(_height);
}
function get left() {
return(_x);
}
function get x() {
return(_x);
}
function get top() {
return(_y);
}
function get y() {
return(_y);
}
function get right() {
return(_parent.width - (_x + width));
}
function get bottom() {
return(_parent.height - (_y + height));
}
function getMinHeight(Void) {
return(_minHeight);
}
function setMinHeight(h) {
_minHeight = h;
}
function get minHeight() {
return(getMinHeight());
}
function set minHeight(h) {
setMinHeight(h);
//return(minHeight);
}
function getMinWidth(Void) {
return(_minWidth);
}
function setMinWidth(w) {
_minWidth = w;
}
function get minWidth() {
return(getMinWidth());
}
function set minWidth(w) {
setMinWidth(w);
//return(minWidth);
}
function setVisible(x, noEvent) {
if (x != _visible) {
_visible = x;
if (noEvent != true) {
dispatchEvent({type:(x ? "reveal" : "hide")});
}
}
}
function get visible() {
return(_visible);
}
function set visible(x) {
setVisible(x, false);
//return(visible);
}
function get scaleX() {
return(_xscale);
}
function set scaleX(x) {
_xscale = x;
//return(scaleX);
}
function get scaleY() {
return(_yscale);
}
function set scaleY(y) {
_yscale = y;
//return(scaleY);
}
function doLater(obj, fn) {
if (methodTable == undefined) {
methodTable = new Array();
}
methodTable.push({obj:obj, fn:fn});
onEnterFrame = doLaterDispatcher;
}
function doLaterDispatcher(Void) {
delete onEnterFrame;
if (invalidateFlag) {
redraw();
}
var _local3 = methodTable;
methodTable = new Array();
if (_local3.length > 0) {
var _local2;
while (_local2 = _local3.shift() , _local2 != undefined) {
_local2.obj[_local2.fn]();
}
}
}
function cancelAllDoLaters(Void) {
delete onEnterFrame;
methodTable = new Array();
}
function invalidate(Void) {
invalidateFlag = true;
onEnterFrame = doLaterDispatcher;
}
function invalidateStyle(Void) {
invalidate();
}
function redraw(bAlways) {
if (invalidateFlag || (bAlways)) {
invalidateFlag = false;
var _local2;
for (_local2 in tfList) {
tfList[_local2].draw();
}
draw();
dispatchEvent({type:"draw"});
}
}
function draw(Void) {
}
function move(x, y, noEvent) {
var _local3 = _x;
var _local2 = _y;
_x = x;
_y = y;
if (noEvent != true) {
dispatchEvent({type:"move", oldX:_local3, oldY:_local2});
}
}
function setSize(w, h, noEvent) {
var _local2 = __width;
var _local3 = __height;
__width = w;
__height = h;
size();
if (noEvent != true) {
dispatchEvent({type:"resize", oldWidth:_local2, oldHeight:_local3});
}
}
function size(Void) {
_width = __width;
_height = __height;
}
function drawRect(x1, y1, x2, y2) {
moveTo(x1, y1);
lineTo(x2, y1);
lineTo(x2, y2);
lineTo(x1, y2);
lineTo(x1, y1);
}
function createLabel(name, depth, text) {
createTextField(name, depth, 0, 0, 0, 0);
var _local2 = this[name];
_local2._color = textColorList;
_local2._visible = false;
_local2.__text = text;
if (tfList == undefined) {
tfList = new Object();
}
tfList[name] = _local2;
_local2.invalidateStyle();
invalidate();
_local2.styleName = this;
return(_local2);
}
function createObject(linkageName, id, depth, initobj) {
return(attachMovie(linkageName, id, depth, initobj));
}
function createClassObject(className, id, depth, initobj) {
var _local3 = className.symbolName == undefined;
if (_local3) {
Object.registerClass(className.symbolOwner.symbolName, className);
}
var _local4 = createObject(className.symbolOwner.symbolName, id, depth, initobj);
if (_local3) {
Object.registerClass(className.symbolOwner.symbolName, className.symbolOwner);
}
return(_local4);
}
function createEmptyObject(id, depth) {
return(createClassObject(mx.core.UIObject, id, depth));
}
function destroyObject(id) {
var _local2 = this[id];
if (_local2.getDepth() < 0) {
var _local4 = buildDepthTable();
var _local5 = findNextAvailableDepth(0, _local4, "up");
var _local3 = _local5;
_local2.swapDepths(_local3);
}
_local2.removeMovieClip();
delete this[id];
}
function getSkinIDName(tag) {
return(idNames[tag]);
}
function setSkin(tag, linkageName, initObj) {
if (_global.skinRegistry[linkageName] == undefined) {
mx.skins.SkinElement.registerElement(linkageName, mx.skins.SkinElement);
}
return(createObject(linkageName, getSkinIDName(tag), tag, initObj));
}
function createSkin(tag) {
var _local2 = getSkinIDName(tag);
createEmptyObject(_local2, tag);
return(this[_local2]);
}
function createChildren(Void) {
}
function _createChildren(Void) {
createChildren();
childrenCreated = true;
}
function constructObject(Void) {
if (_name == undefined) {
return(undefined);
}
init();
_createChildren();
createAccessibilityImplementation();
_endInit();
if (validateNow) {
redraw(true);
} else {
invalidate();
}
}
function initFromClipParameters(Void) {
var _local4 = false;
var _local2;
for (_local2 in clipParameters) {
if (hasOwnProperty(_local2)) {
_local4 = true;
this["def_" + _local2] = this[_local2];
delete this[_local2];
}
}
if (_local4) {
for (_local2 in clipParameters) {
var _local3 = this["def_" + _local2];
if (_local3 != undefined) {
this[_local2] = _local3;
}
}
}
}
function init(Void) {
__width = _width;
__height = _height;
if (initProperties == undefined) {
initFromClipParameters();
} else {
initProperties();
}
if (_global.cascadingStyles == true) {
stylecache = new Object();
}
}
function getClassStyleDeclaration(Void) {
var _local4 = this;
var _local3 = className;
while (_local3 != undefined) {
if (ignoreClassStyleDeclaration[_local3] == undefined) {
if (_global.styles[_local3] != undefined) {
return(_global.styles[_local3]);
}
}
_local4 = _local4.__proto__;
_local3 = _local4.className;
}
}
function setColor(color) {
}
function __getTextFormat(tf, bAll) {
var _local8 = stylecache.tf;
if (_local8 != undefined) {
var _local3;
for (_local3 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || (mx.styles.StyleManager.TextFormatStyleProps[_local3])) {
if (tf[_local3] == undefined) {
tf[_local3] = _local8[_local3];
}
}
}
return(false);
}
var _local6 = false;
for (var _local3 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || (mx.styles.StyleManager.TextFormatStyleProps[_local3])) {
if (tf[_local3] == undefined) {
var _local5 = _tf[_local3];
if (_local5 != undefined) {
tf[_local3] = _local5;
} else if ((_local3 == "font") && (fontFamily != undefined)) {
tf[_local3] = fontFamily;
} else if ((_local3 == "size") && (fontSize != undefined)) {
tf[_local3] = fontSize;
} else if ((_local3 == "color") && (color != undefined)) {
tf[_local3] = color;
} else if ((_local3 == "leftMargin") && (marginLeft != undefined)) {
tf[_local3] = marginLeft;
} else if ((_local3 == "rightMargin") && (marginRight != undefined)) {
tf[_local3] = marginRight;
} else if ((_local3 == "italic") && (fontStyle != undefined)) {
tf[_local3] = fontStyle == _local3;
} else if ((_local3 == "bold") && (fontWeight != undefined)) {
tf[_local3] = fontWeight == _local3;
} else if ((_local3 == "align") && (textAlign != undefined)) {
tf[_local3] = textAlign;
} else if ((_local3 == "indent") && (textIndent != undefined)) {
tf[_local3] = textIndent;
} else if ((_local3 == "underline") && (textDecoration != undefined)) {
tf[_local3] = textDecoration == _local3;
} else if ((_local3 == "embedFonts") && (embedFonts != undefined)) {
tf[_local3] = embedFonts;
} else {
_local6 = true;
}
}
}
}
if (_local6) {
var _local9 = styleName;
if (_local9 != undefined) {
if (typeof(_local9) != "string") {
_local6 = _local9.__getTextFormat(tf, true, this);
} else if (_global.styles[_local9] != undefined) {
_local6 = _global.styles[_local9].__getTextFormat(tf, true, this);
}
}
}
if (_local6) {
var _local10 = getClassStyleDeclaration();
if (_local10 != undefined) {
_local6 = _local10.__getTextFormat(tf, true, this);
}
}
if (_local6) {
if (_global.cascadingStyles) {
if (_parent != undefined) {
_local6 = _parent.__getTextFormat(tf, false);
}
}
}
if (_local6) {
_local6 = _global.style.__getTextFormat(tf, true, this);
}
return(_local6);
}
function _getTextFormat(Void) {
var _local2 = stylecache.tf;
if (_local2 != undefined) {
return(_local2);
}
_local2 = new TextFormat();
__getTextFormat(_local2, true);
stylecache.tf = _local2;
if (enabled == false) {
var _local3 = getStyle("disabledColor");
_local2.color = _local3;
}
return(_local2);
}
function getStyleName(Void) {
var _local2 = styleName;
if (_local2 != undefined) {
if (typeof(_local2) != "string") {
return(_local2.getStyleName());
}
return(_local2);
}
if (_parent != undefined) {
return(_parent.getStyleName());
}
return(undefined);
}
function getStyle(styleProp) {
var _local3;
_global.getStyleCounter++;
if (this[styleProp] != undefined) {
return(this[styleProp]);
}
var _local6 = styleName;
if (_local6 != undefined) {
if (typeof(_local6) != "string") {
_local3 = _local6.getStyle(styleProp);
} else {
var _local7 = _global.styles[_local6];
_local3 = _local7.getStyle(styleProp);
}
}
if (_local3 != undefined) {
return(_local3);
}
var _local7 = getClassStyleDeclaration();
if (_local7 != undefined) {
_local3 = _local7[styleProp];
}
if (_local3 != undefined) {
return(_local3);
}
if (_global.cascadingStyles) {
if (mx.styles.StyleManager.isInheritingStyle(styleProp) || (mx.styles.StyleManager.isColorStyle(styleProp))) {
var _local5 = stylecache;
if (_local5 != undefined) {
if (_local5[styleProp] != undefined) {
return(_local5[styleProp]);
}
}
if (_parent != undefined) {
_local3 = _parent.getStyle(styleProp);
} else {
_local3 = _global.style[styleProp];
}
if (_local5 != undefined) {
_local5[styleProp] = _local3;
}
return(_local3);
}
}
if (_local3 == undefined) {
_local3 = _global.style[styleProp];
}
return(_local3);
}
static function mergeClipParameters(o, p) {
for (var _local3 in p) {
o[_local3] = p[_local3];
}
return(true);
}
static var symbolName = "UIObject";
static var symbolOwner = mx.core.UIObject;
static var version = "2.0.0.360";
static var textColorList = {color:1, disabledColor:1};
var invalidateFlag = false;
var lineWidth = 1;
var lineColor = 0;
var tabEnabled = false;
var clipParameters = {visible:1, minHeight:1, minWidth:1, maxHeight:1, maxWidth:1, preferredHeight:1, preferredWidth:1};
}
Symbol 5 MovieClip [__Packages.mx.core.UIComponent] Frame 0
class mx.core.UIComponent extends mx.core.UIObject
{
var __width, __height, invalidate, stylecache, removeEventListener, dispatchEvent, drawFocus, addEventListener, _xscale, _yscale, _focusrect, watch, enabled;
function UIComponent () {
super();
}
function get width() {
return(__width);
}
function get height() {
return(__height);
}
function setVisible(x, noEvent) {
super.setVisible(x, noEvent);
}
function enabledChanged(id, oldValue, newValue) {
setEnabled(newValue);
invalidate();
delete stylecache.tf;
return(newValue);
}
function setEnabled(enabled) {
invalidate();
}
function getFocus() {
var selFocus = Selection.getFocus();
return(((selFocus === null) ? null : (eval (selFocus))));
}
function setFocus() {
Selection.setFocus(this);
}
function getFocusManager() {
var _local2 = this;
while (_local2 != undefined) {
if (_local2.focusManager != undefined) {
return(_local2.focusManager);
}
_local2 = _local2._parent;
}
return(undefined);
}
function onKillFocus(newFocus) {
removeEventListener("keyDown", this);
removeEventListener("keyUp", this);
dispatchEvent({type:"focusOut"});
drawFocus(false);
}
function onSetFocus(oldFocus) {
addEventListener("keyDown", this);
addEventListener("keyUp", this);
dispatchEvent({type:"focusIn"});
if (getFocusManager().bDrawFocus != false) {
drawFocus(true);
}
}
function findFocusInChildren(o) {
if (o.focusTextField != undefined) {
return(o.focusTextField);
}
if (o.tabEnabled == true) {
return(o);
}
return(undefined);
}
function findFocusFromObject(o) {
if (o.tabEnabled != true) {
if (o._parent == undefined) {
return(undefined);
}
if (o._parent.tabEnabled == true) {
o = o._parent;
} else if (o._parent.tabChildren) {
o = findFocusInChildren(o._parent);
} else {
o = findFocusFromObject(o._parent);
}
}
return(o);
}
function pressFocus() {
var _local3 = findFocusFromObject(this);
var _local2 = getFocus();
if (_local3 != _local2) {
_local2.drawFocus(false);
if (getFocusManager().bDrawFocus != false) {
_local3.drawFocus(true);
}
}
}
function releaseFocus() {
var _local2 = findFocusFromObject(this);
if (_local2 != getFocus()) {
_local2.setFocus();
}
}
function isParent(o) {
while (o != undefined) {
if (o == this) {
return(true);
}
o = o._parent;
}
return(false);
}
function size() {
}
function init() {
super.init();
_xscale = 100;
_yscale = 100;
_focusrect = _global.useFocusRect == false;
watch("enabled", enabledChanged);
if (enabled == false) {
setEnabled(false);
}
}
function dispatchValueChangedEvent(value) {
dispatchEvent({type:"valueChanged", value:value});
}
static var symbolName = "UIComponent";
static var symbolOwner = mx.core.UIComponent;
static var version = "2.0.0.360";
static var kStretch = 5000;
var focusEnabled = true;
var tabEnabled = true;
var origBorderStyles = {themeColor:16711680};
var clipParameters = {};
static var mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.core.UIComponent.prototype.clipParameters, mx.core.UIObject.prototype.clipParameters);
}
Symbol 6 MovieClip [__Packages.mx.controls.SimpleButton] Frame 0
class mx.controls.SimpleButton extends mx.core.UIComponent
{
static var emphasizedStyleDeclaration;
var preset, boundingBox_mc, useHandCursor, skinName, linkLength, iconName, destroyObject, __width, _width, __height, _height, __emphaticStyleName, styleName, enabled, invalidate, pressFocus, dispatchEvent, autoRepeat, interval, getStyle, releaseFocus, createLabel, invalidateStyle;
function SimpleButton () {
super();
}
function init(Void) {
super.init();
if (preset == undefined) {
boundingBox_mc._visible = false;
boundingBox_mc._width = (boundingBox_mc._height = 0);
}
useHandCursor = false;
}
function createChildren(Void) {
if (preset != undefined) {
var _local2 = this[idNames[preset]];
this[refNames[preset]] = _local2;
skinName = _local2;
if (falseOverSkin.length == 0) {
rolloverSkin = fus;
}
if (falseOverIcon.length == 0) {
rolloverIcon = fui;
}
initializing = false;
} else if (__state == true) {
setStateVar(true);
} else {
if (falseOverSkin.length == 0) {
rolloverSkin = fus;
}
if (falseOverIcon.length == 0) {
rolloverIcon = fui;
}
}
}
function setIcon(tag, linkageName) {
return(setSkin(tag + 8, linkageName));
}
function changeIcon(tag, linkageName) {
linkLength = linkageName.length;
var _local2 = stateNames[tag] + "Icon";
this[_local2] = linkageName;
this[idNames[tag + 8]] = _local2;
setStateVar(getState());
}
function changeSkin(tag, linkageName) {
var _local2 = stateNames[tag] + "Skin";
this[_local2] = linkageName;
this[idNames[tag]] = _local2;
setStateVar(getState());
}
function viewIcon(varName) {
var _local4 = varName + "Icon";
var _local3 = this[_local4];
if (typeof(_local3) == "string") {
var _local5 = _local3;
if (__emphasized) {
if (this[_local3 + "Emphasized"].length > 0) {
_local3 = _local3 + "Emphasized";
}
}
if (this[_local3].length == 0) {
return(undefined);
}
_local3 = setIcon(tagMap[_local5], this[_local3]);
if ((_local3 == undefined) && (_global.isLivePreview)) {
_local3 = setIcon(0, "ButtonIcon");
}
this[_local4] = _local3;
}
iconName._visible = false;
iconName = _local3;
iconName._visible = true;
}
function removeIcons() {
var _local3 = 0;
while (_local3 < 2) {
var _local2 = 8;
while (_local2 < 16) {
destroyObject(idNames[_local2]);
this[stateNames[_local2 - 8] + "Icon"] = "";
_local2++;
}
_local3++;
}
refresh();
}
function setSkin(tag, linkageName, initobj) {
var _local3 = super.setSkin(tag, linkageName, ((initobj != undefined) ? (initobj) : ({styleName:this})));
calcSize(tag, _local3);
return(_local3);
}
function calcSize(Void) {
__width = _width;
__height = _height;
}
function viewSkin(varName, initObj) {
var _local3 = varName + "Skin";
var _local2 = this[_local3];
if (typeof(_local2) == "string") {
var _local4 = _local2;
if (__emphasized) {
if (this[_local2 + "Emphasized"].length > 0) {
_local2 = _local2 + "Emphasized";
}
}
if (this[_local2].length == 0) {
return(undefined);
}
_local2 = setSkin(tagMap[_local4], this[_local2], ((initObj != undefined) ? (initObj) : ({styleName:this})));
this[_local3] = _local2;
}
skinName._visible = false;
skinName = _local2;
skinName._visible = true;
}
function showEmphasized(e) {
if (e && (!__emphatic)) {
if (emphasizedStyleDeclaration != undefined) {
__emphaticStyleName = styleName;
styleName = emphasizedStyleDeclaration;
}
__emphatic = true;
} else {
if (__emphatic) {
styleName = __emphaticStyleName;
}
__emphatic = false;
}
}
function refresh(Void) {
var _local2 = getState();
if (enabled == false) {
viewIcon("disabled");
viewSkin("disabled");
} else {
viewSkin(phase);
viewIcon(phase);
}
setView(phase == "down");
iconName.enabled = enabled;
}
function setView(offset) {
if (iconName == undefined) {
return(undefined);
}
var _local2 = (offset ? (btnOffset) : 0);
iconName._x = ((__width - iconName._width) / 2) + _local2;
iconName._y = ((__height - iconName._height) / 2) + _local2;
}
function setStateVar(state) {
if (state) {
if (trueOverSkin.length == 0) {
rolloverSkin = tus;
} else {
rolloverSkin = trs;
}
if (trueOverIcon.length == 0) {
rolloverIcon = tui;
} else {
rolloverIcon = tri;
}
upSkin = tus;
downSkin = tds;
disabledSkin = dts;
upIcon = tui;
downIcon = tdi;
disabledIcon = dti;
} else {
if (falseOverSkin.length == 0) {
rolloverSkin = fus;
} else {
rolloverSkin = frs;
}
if (falseOverIcon.length == 0) {
rolloverIcon = fui;
} else {
rolloverIcon = fri;
}
upSkin = fus;
downSkin = fds;
disabledSkin = dfs;
upIcon = fui;
downIcon = fdi;
disabledIcon = dfi;
}
__state = state;
}
function setState(state) {
if (state != __state) {
setStateVar(state);
invalidate();
}
}
function size(Void) {
refresh();
}
function draw(Void) {
if (initializing) {
initializing = false;
skinName.visible = true;
iconName.visible = true;
}
size();
}
function getState(Void) {
return(__state);
}
function setToggle(val) {
__toggle = val;
if (__toggle == false) {
setState(false);
}
}
function getToggle(Void) {
return(__toggle);
}
function set toggle(val) {
setToggle(val);
//return(toggle);
}
function get toggle() {
return(getToggle());
}
function set value(val) {
setSelected(val);
//return(value);
}
function get value() {
return(getSelected());
}
function set selected(val) {
setSelected(val);
//return(selected);
}
function get selected() {
return(getSelected());
}
function setSelected(val) {
if (__toggle) {
setState(val);
} else {
setState(__state);
}
}
function getSelected() {
return(__state);
}
function setEnabled(val) {
if (enabled != val) {
super.setEnabled(val);
invalidate();
}
}
function onPress(Void) {
pressFocus();
phase = "down";
refresh();
dispatchEvent({type:"buttonDown"});
if (autoRepeat) {
interval = setInterval(this, "onPressDelay", getStyle("repeatDelay"));
}
}
function onPressDelay(Void) {
dispatchEvent({type:"buttonDown"});
if (autoRepeat) {
clearInterval(interval);
interval = setInterval(this, "onPressRepeat", getStyle("repeatInterval"));
}
}
function onPressRepeat(Void) {
dispatchEvent({type:"buttonDown"});
updateAfterEvent();
}
function onRelease(Void) {
releaseFocus();
phase = "rollover";
if (interval != undefined) {
clearInterval(interval);
delete interval;
}
if (getToggle()) {
setState(!getState());
} else {
refresh();
}
dispatchEvent({type:"click"});
}
function onDragOut(Void) {
phase = "up";
refresh();
dispatchEvent({type:"buttonDragOut"});
}
function onDragOver(Void) {
if (phase != "up") {
onPress();
return(undefined);
}
phase = "down";
refresh();
}
function onReleaseOutside(Void) {
releaseFocus();
phase = "up";
if (interval != undefined) {
clearInterval(interval);
delete interval;
}
}
function onRollOver(Void) {
phase = "rollover";
refresh();
}
function onRollOut(Void) {
phase = "up";
refresh();
}
function getLabel(Void) {
return(fui.text);
}
function setLabel(val) {
if (typeof(fui) == "string") {
createLabel("fui", 8, val);
fui.styleName = this;
} else {
fui.text = val;
}
var _local4 = fui._getTextFormat();
var _local2 = _local4.getTextExtent2(val);
fui._width = _local2.width + 5;
fui._height = _local2.height + 5;
iconName = fui;
setView(__state);
}
function get emphasized() {
return(__emphasized);
}
function set emphasized(val) {
__emphasized = val;
var _local2 = 0;
while (_local2 < 8) {
this[idNames[_local2]] = stateNames[_local2] + "Skin";
if (typeof(this[idNames[_local2 + 8]]) == "movieclip") {
this[idNames[_local2 + 8]] = stateNames[_local2] + "Icon";
}
_local2++;
}
showEmphasized(__emphasized);
setStateVar(__state);
invalidateStyle();
//return(emphasized);
}
function keyDown(e) {
if (e.code == 32) {
onPress();
}
}
function keyUp(e) {
if (e.code == 32) {
onRelease();
}
}
function onKillFocus(newFocus) {
super.onKillFocus();
if (phase != "up") {
phase = "up";
refresh();
}
}
static var symbolName = "SimpleButton";
static var symbolOwner = mx.controls.SimpleButton;
static var version = "2.0.0.360";
var className = "SimpleButton";
var style3dInset = 4;
var btnOffset = 1;
var __toggle = false;
var __state = false;
var __emphasized = false;
var __emphatic = false;
static var falseUp = 0;
static var falseDown = 1;
static var falseOver = 2;
static var falseDisabled = 3;
static var trueUp = 4;
static var trueDown = 5;
static var trueOver = 6;
static var trueDisabled = 7;
var falseUpSkin = "SimpleButtonUp";
var falseDownSkin = "SimpleButtonIn";
var falseOverSkin = "";
var falseDisabledSkin = "SimpleButtonUp";
var trueUpSkin = "SimpleButtonIn";
var trueDownSkin = "";
var trueOverSkin = "";
var trueDisabledSkin = "SimpleButtonIn";
var falseUpIcon = "";
var falseDownIcon = "";
var falseOverIcon = "";
var falseDisabledIcon = "";
var trueUpIcon = "";
var trueDownIcon = "";
var trueOverIcon = "";
var trueDisabledIcon = "";
var phase = "up";
var fui = "falseUpIcon";
var fus = "falseUpSkin";
var fdi = "falseDownIcon";
var fds = "falseDownSkin";
var frs = "falseOverSkin";
var fri = "falseOverIcon";
var dfi = "falseDisabledIcon";
var dfs = "falseDisabledSkin";
var tui = "trueUpIcon";
var tus = "trueUpSkin";
var tdi = "trueDownIcon";
var tds = "trueDownSkin";
var trs = "trueOverSkin";
var tri = "trueOverIcon";
var dts = "trueDisabledSkin";
var dti = "trueDisabledIcon";
var rolloverSkin = mx.controls.SimpleButton.prototype.frs;
var rolloverIcon = mx.controls.SimpleButton.prototype.fri;
var upSkin = mx.controls.SimpleButton.prototype.fus;
var downSkin = mx.controls.SimpleButton.prototype.fds;
var disabledSkin = mx.controls.SimpleButton.prototype.dfs;
var upIcon = mx.controls.SimpleButton.prototype.fui;
var downIcon = mx.controls.SimpleButton.prototype.fdi;
var disabledIcon = mx.controls.SimpleButton.prototype.dfi;
var initializing = true;
var idNames = ["fus", "fds", "frs", "dfs", "tus", "tds", "trs", "dts", "fui", "fdi", "fri", "dfi", "tui", "tdi", "tri", "dti"];
var stateNames = ["falseUp", "falseDown", "falseOver", "falseDisabled", "trueUp", "trueDown", "trueOver", "trueDisabled"];
var refNames = ["upSkin", "downSkin", "rolloverSkin", "disabledSkin"];
var tagMap = {falseUpSkin:0, falseDownSkin:1, falseOverSkin:2, falseDisabledSkin:3, trueUpSkin:4, trueDownSkin:5, trueOverSkin:6, trueDisabledSkin:7, falseUpIcon:0, falseDownIcon:1, falseOverIcon:2, falseDisabledIcon:3, trueUpIcon:4, trueDownIcon:5, trueOverIcon:6, trueDisabledIcon:7};
}
Symbol 7 MovieClip [__Packages.mx.controls.Button] Frame 0
class mx.controls.Button extends mx.controls.SimpleButton
{
var initIcon, getState, enabled, phase, labelPath, idNames, __width, __height, setState, invalidate, iconName, refresh, createLabel, _iconLinkageName, initializing, removeIcons, hitArea_mc, createEmptyObject;
function Button () {
super();
}
function init(Void) {
super.init();
}
function draw() {
super.draw();
if (initIcon != undefined) {
_setIcon(initIcon);
}
delete initIcon;
}
function onRelease(Void) {
super.onRelease();
}
function createChildren(Void) {
super.createChildren();
}
function setSkin(tag, linkageName, initobj) {
return(super.setSkin(tag, linkageName, initobj));
}
function viewSkin(varName) {
var _local3 = (getState() ? "true" : "false");
_local3 = _local3 + (enabled ? (phase) : "disabled");
super.viewSkin(varName, {styleName:this, borderStyle:_local3});
}
function invalidateStyle(c) {
labelPath.invalidateStyle(c);
super.invalidateStyle(c);
}
function setColor(c) {
var _local2 = 0;
while (_local2 < 8) {
this[idNames[_local2]].redraw(true);
_local2++;
}
}
function setEnabled(enable) {
labelPath.enabled = enable;
super.setEnabled(enable);
}
function calcSize(tag, ref) {
if ((__width == undefined) || (__height == undefined)) {
return(undefined);
}
if (tag < 7) {
ref.setSize(__width, __height, true);
}
}
function size(Void) {
setState(getState());
setHitArea(__width, __height);
var _local3 = 0;
while (_local3 < 8) {
var _local4 = idNames[_local3];
if (typeof(this[_local4]) == "movieclip") {
this[_local4].setSize(__width, __height, true);
}
_local3++;
}
super.size();
}
function set labelPlacement(val) {
__labelPlacement = val;
invalidate();
//return(labelPlacement);
}
function get labelPlacement() {
return(__labelPlacement);
}
function getLabelPlacement(Void) {
return(__labelPlacement);
}
function setLabelPlacement(val) {
__labelPlacement = val;
invalidate();
}
function getBtnOffset(Void) {
if (getState()) {
var _local2 = btnOffset;
} else if (phase == "down") {
var _local2 = btnOffset;
} else {
var _local2 = 0;
}
return(_local2);
}
function setView(offset) {
var _local16 = (offset ? (btnOffset) : 0);
var _local12 = getLabelPlacement();
var _local7 = 0;
var _local6 = 0;
var _local9 = 0;
var _local8 = 0;
var _local5 = 0;
var _local4 = 0;
var _local3 = labelPath;
var _local2 = iconName;
var _local15 = _local3.textWidth;
var _local14 = _local3.textHeight;
var _local10 = (__width - borderW) - borderW;
var _local11 = (__height - borderW) - borderW;
_local3._visible = true;
if (_local2 != undefined) {
_local7 = _local2._width;
_local6 = _local2._height;
}
if ((_local12 == "left") || (_local12 == "right")) {
if (_local3 != undefined) {
_local9 = Math.min(_local10 - _local7, _local15 + 5);
_local3._width = _local9;
_local8 = Math.min(_local11, _local14 + 5);
_local3._height = _local8;
}
if (_local12 == "right") {
_local5 = _local7;
if (centerContent) {
_local5 = _local5 + (((_local10 - _local9) - _local7) / 2);
}
_local2._x = _local5 - _local7;
} else {
_local5 = (_local10 - _local9) - _local7;
if (centerContent) {
_local5 = _local5 / 2;
}
_local2._x = _local5 + _local9;
}
_local4 = 0;
_local2._y = _local4;
if (centerContent) {
_local2._y = (_local11 - _local6) / 2;
_local4 = (_local11 - _local8) / 2;
}
if (!centerContent) {
_local2._y = _local2._y + Math.max(0, (_local8 - _local6) / 2);
}
} else {
if (_local3 != undefined) {
_local9 = Math.min(_local10, _local15 + 5);
_local3._width = _local9;
_local8 = Math.min(_local11 - _local6, _local14 + 5);
_local3._height = _local8;
}
_local5 = (_local10 - _local9) / 2;
_local2._x = (_local10 - _local7) / 2;
if (_local12 == "top") {
_local4 = (_local11 - _local8) - _local6;
if (centerContent) {
_local4 = _local4 / 2;
}
_local2._y = _local4 + _local8;
} else {
_local4 = _local6;
if (centerContent) {
_local4 = _local4 + (((_local11 - _local8) - _local6) / 2);
}
_local2._y = _local4 - _local6;
}
}
var _local13 = borderW + _local16;
_local3._x = _local5 + _local13;
_local3._y = _local4 + _local13;
_local2._x = _local2._x + _local13;
_local2._y = _local2._y + _local13;
}
function set label(lbl) {
setLabel(lbl);
//return(label);
}
function setLabel(label) {
if (label == "") {
labelPath.removeTextField();
refresh();
return(undefined);
}
if (labelPath == undefined) {
var _local2 = createLabel("labelPath", 200, label);
_local2._width = _local2.textWidth + 5;
_local2._height = _local2.textHeight + 5;
_local2.visible = false;
} else {
labelPath.text = label;
refresh();
}
}
function getLabel(Void) {
return(labelPath.text);
}
function get label() {
return(labelPath.text);
}
function _getIcon(Void) {
return(_iconLinkageName);
}
function get icon() {
if (initializing) {
return(initIcon);
}
return(_iconLinkageName);
}
function _setIcon(linkage) {
if (initializing) {
if (linkage == "") {
return(undefined);
}
initIcon = linkage;
} else {
if (linkage == "") {
removeIcons();
return(undefined);
}
super.changeIcon(0, linkage);
super.changeIcon(1, linkage);
super.changeIcon(4, linkage);
super.changeIcon(5, linkage);
_iconLinkageName = linkage;
refresh();
}
}
function set icon(linkage) {
_setIcon(linkage);
//return(icon);
}
function setHitArea(w, h) {
if (hitArea_mc == undefined) {
createEmptyObject("hitArea_mc", 100);
}
var _local2 = hitArea_mc;
_local2.clear();
_local2.beginFill(16711680);
_local2.drawRect(0, 0, w, h);
_local2.endFill();
_local2.setVisible(false);
}
static var symbolName = "Button";
static var symbolOwner = mx.controls.Button;
var className = "Button";
static var version = "2.0.0.360";
var btnOffset = 0;
var _color = "buttonColor";
var __label = "default value";
var __labelPlacement = "right";
var falseUpSkin = "ButtonSkin";
var falseDownSkin = "ButtonSkin";
var falseOverSkin = "ButtonSkin";
var falseDisabledSkin = "ButtonSkin";
var trueUpSkin = "ButtonSkin";
var trueDownSkin = "ButtonSkin";
var trueOverSkin = "ButtonSkin";
var trueDisabledSkin = "ButtonSkin";
var falseUpIcon = "";
var falseDownIcon = "";
var falseOverIcon = "";
var falseDisabledIcon = "";
var trueUpIcon = "";
var trueDownIcon = "";
var trueOverIcon = "";
var trueDisabledIcon = "";
var clipParameters = {labelPlacement:1, icon:1, toggle:1, selected:1, label:1};
static var mergedClipParameters = mx.core.UIObject.mergeClipParameters(mx.controls.Button.prototype.clipParameters, mx.controls.SimpleButton.prototype.clipParameters);
var centerContent = true;
var borderW = 1;
}
Symbol 36 MovieClip [__Packages.mx.skins.SkinElement] Frame 0
class mx.skins.SkinElement extends MovieClip
{
var _visible, _x, _y, _width, _height;
function SkinElement () {
super();
}
static function registerElement(name, className) {
Object.registerClass(name, ((className == undefined) ? (mx.skins.SkinElement) : (className)));
_global.skinRegistry[name] = true;
}
function __set__visible(visible) {
_visible = visible;
}
function move(x, y) {
_x = x;
_y = y;
}
function setSize(w, h) {
_width = w;
_height = h;
}
}
Symbol 37 MovieClip [__Packages.mx.styles.CSSTextStyles] Frame 0
class mx.styles.CSSTextStyles
{
function CSSTextStyles () {
}
static function addTextStyles(o, bColor) {
o.addProperty("textAlign", function () {
return(this._tf.align);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.align = x;
});
o.addProperty("fontWeight", function () {
return(((this._tf.bold != undefined) ? ((this._tf.bold ? "bold" : "none")) : undefined));
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.bold = x == "bold";
});
if (bColor) {
o.addProperty("color", function () {
return(this._tf.color);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.color = x;
});
}
o.addProperty("fontFamily", function () {
return(this._tf.font);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.font = x;
});
o.addProperty("textIndent", function () {
return(this._tf.indent);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.indent = x;
});
o.addProperty("fontStyle", function () {
return(((this._tf.italic != undefined) ? ((this._tf.italic ? "italic" : "none")) : undefined));
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.italic = x == "italic";
});
o.addProperty("marginLeft", function () {
return(this._tf.leftMargin);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.leftMargin = x;
});
o.addProperty("marginRight", function () {
return(this._tf.rightMargin);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.rightMargin = x;
});
o.addProperty("fontSize", function () {
return(this._tf.size);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.size = x;
});
o.addProperty("textDecoration", function () {
return(((this._tf.underline != undefined) ? ((this._tf.underline ? "underline" : "none")) : undefined));
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.underline = x == "underline";
});
o.addProperty("embedFonts", function () {
return(this._tf.embedFonts);
}, function (x) {
if (this._tf == undefined) {
this._tf = new TextFormat();
}
this._tf.embedFonts = x;
});
}
}
Symbol 38 MovieClip [__Packages.mx.styles.StyleManager] Frame 0
class mx.styles.StyleManager
{
function StyleManager () {
}
static function registerInheritingStyle(styleName) {
inheritingStyles[styleName] = true;
}
static function isInheritingStyle(styleName) {
return(inheritingStyles[styleName] == true);
}
static function registerColorStyle(styleName) {
colorStyles[styleName] = true;
}
static function isColorStyle(styleName) {
return(colorStyles[styleName] == true);
}
static function registerColorName(colorName, colorValue) {
colorNames[colorName] = colorValue;
}
static function isColorName(colorName) {
return(colorNames[colorName] != undefined);
}
static function getColorName(colorName) {
return(colorNames[colorName]);
}
static var inheritingStyles = {color:true, direction:true, fontFamily:true, fontSize:true, fontStyle:true, fontWeight:true, textAlign:true, textIndent:true};
static var colorStyles = {barColor:true, trackColor:true, borderColor:true, buttonColor:true, color:true, dateHeaderColor:true, dateRollOverColor:true, disabledColor:true, fillColor:true, highlightColor:true, scrollTrackColor:true, selectedDateColor:true, shadowColor:true, strokeColor:true, symbolBackgroundColor:true, symbolBackgroundDisabledColor:true, symbolBackgroundPressedColor:true, symbolColor:true, symbolDisabledColor:true, themeColor:true, todayIndicatorColor:true, shadowCapColor:true, borderCapColor:true, focusColor:true};
static var colorNames = {black:0, white:16777215, red:16711680, green:65280, blue:255, magenta:16711935, yellow:16776960, cyan:65535, haloGreen:8453965, haloBlue:2881013, haloOrange:16761344};
static var TextFormatStyleProps = {font:true, size:true, color:true, leftMargin:false, rightMargin:false, italic:true, bold:true, align:true, indent:true, underline:false, embedFonts:false};
static var TextStyleMap = {textAlign:true, fontWeight:true, color:true, fontFamily:true, textIndent:true, fontStyle:true, lineHeight:true, marginLeft:true, marginRight:true, fontSize:true, textDecoration:true, embedFonts:true};
}
Symbol 39 MovieClip [__Packages.mx.styles.CSSStyleDeclaration] Frame 0
class mx.styles.CSSStyleDeclaration
{
var _tf;
function CSSStyleDeclaration () {
}
function __getTextFormat(tf, bAll) {
var _local5 = false;
if (_tf != undefined) {
var _local2;
for (_local2 in mx.styles.StyleManager.TextFormatStyleProps) {
if (bAll || (mx.styles.StyleManager.TextFormatStyleProps[_local2])) {
if (tf[_local2] == undefined) {
var _local3 = _tf[_local2];
if (_local3 != undefined) {
tf[_local2] = _local3;
} else {
_local5 = true;
}
}
}
}
} else {
_local5 = true;
}
return(_local5);
}
function getStyle(styleProp) {
var _local2 = this[styleProp];
var _local3 = mx.styles.StyleManager.getColorName(_local2);
return(((_local3 == undefined) ? (_local2) : (_local3)));
}
static function classConstruct() {
mx.styles.CSSTextStyles.addTextStyles(mx.styles.CSSStyleDeclaration.prototype, true);
return(true);
}
static var classConstructed = classConstruct();
static var CSSTextStylesDependency = mx.styles.CSSTextStyles;
}
Symbol 40 MovieClip [__Packages.mx.events.EventDispatcher] Frame 0
class mx.events.EventDispatcher
{
function EventDispatcher () {
}
static function _removeEventListener(queue, event, handler) {
if (queue != undefined) {
var _local4 = queue.length;
var _local1;
_local1 = 0;
while (_local1 < _local4) {
var _local2 = queue[_local1];
if (_local2 == handler) {
queue.splice(_local1, 1);
return(undefined);
}
_local1++;
}
}
}
static function initialize(object) {
if (_fEventDispatcher == undefined) {
_fEventDispatcher = new mx.events.EventDispatcher();
}
object.addEventListener = _fEventDispatcher.addEventListener;
object.removeEventListener = _fEventDispatcher.removeEventListener;
object.dispatchEvent = _fEventDispatcher.dispatchEvent;
object.dispatchQueue = _fEventDispatcher.dispatchQueue;
}
function dispatchQueue(queueObj, eventObj) {
var _local7 = "__q_" + eventObj.type;
var _local4 = queueObj[_local7];
if (_local4 != undefined) {
var _local5;
for (_local5 in _local4) {
var _local1 = _local4[_local5];
var _local3 = typeof(_local1);
if ((_local3 == "object") || (_local3 == "movieclip")) {
if (_local1.handleEvent == undefined) {
_local1[eventObj.type](eventObj);
} else {
_local1.handleEvent(eventObj);
}
} else {
_local1.apply(queueObj, [eventObj]);
}
}
}
}
function dispatchEvent(eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + "Handler"](eventObj);
dispatchQueue(this, eventObj);
}
function addEventListener(event, handler) {
var _local3 = "__q_" + event;
if (this[_local3] == undefined) {
this[_local3] = new Array();
}
_global.ASSetPropFlags(this, _local3, 1);
_removeEventListener(this[_local3], event, handler);
this[_local3].push(handler);
}
function removeEventListener(event, handler) {
var _local2 = "__q_" + event;
_removeEventListener(this[_local2], event, handler);
}
static var _fEventDispatcher = undefined;
}
Symbol 41 MovieClip [__Packages.mx.events.UIEventDispatcher] Frame 0
class mx.events.UIEventDispatcher extends mx.events.EventDispatcher
{
var dispatchQueue, owner, __sentLoadEvent, __origAddEventListener;
function UIEventDispatcher () {
super();
}
static function addKeyEvents(obj) {
if (obj.keyHandler == undefined) {
var _local1 = (obj.keyHandler = new Object());
_local1.owner = obj;
_local1.onKeyDown = _fEventDispatcher.onKeyDown;
_local1.onKeyUp = _fEventDispatcher.onKeyUp;
}
Key.addListener(obj.keyHandler);
}
static function removeKeyEvents(obj) {
Key.removeListener(obj.keyHandler);
}
static function addLoadEvents(obj) {
if (obj.onLoad == undefined) {
obj.onLoad = _fEventDispatcher.onLoad;
obj.onUnload = _fEventDispatcher.onUnload;
if (obj.getBytesTotal() == obj.getBytesLoaded()) {
obj.doLater(obj, "onLoad");
}
}
}
static function removeLoadEvents(obj) {
delete obj.onLoad;
delete obj.onUnload;
}
static function initialize(obj) {
if (_fEventDispatcher == undefined) {
_fEventDispatcher = new mx.events.UIEventDispatcher();
}
obj.addEventListener = _fEventDispatcher.__addEventListener;
obj.__origAddEventListener = _fEventDispatcher.addEventListener;
obj.removeEventListener = _fEventDispatcher.removeEventListener;
obj.dispatchEvent = _fEventDispatcher.dispatchEvent;
obj.dispatchQueue = _fEventDispatcher.dispatchQueue;
}
function dispatchEvent(eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + "Handler"](eventObj);
dispatchQueue(mx.events.EventDispatcher, eventObj);
dispatchQueue(this, eventObj);
}
function onKeyDown(Void) {
owner.dispatchEvent({type:"keyDown", code:Key.getCode(), ascii:Key.getAscii(), shiftKey:Key.isDown(16), ctrlKey:Key.isDown(17)});
}
function onKeyUp(Void) {
owner.dispatchEvent({type:"keyUp", code:Key.getCode(), ascii:Key.getAscii(), shiftKey:Key.isDown(16), ctrlKey:Key.isDown(17)});
}
function onLoad(Void) {
if (__sentLoadEvent != true) {
dispatchEvent({type:"load"});
}
__sentLoadEvent = true;
}
function onUnload(Void) {
dispatchEvent({type:"unload"});
}
function __addEventListener(event, handler) {
__origAddEventListener(event, handler);
var _local3 = lowLevelEvents;
for (var _local5 in _local3) {
if (mx.events.UIEventDispatcher[_local5][event] != undefined) {
var _local2 = _local3[_local5][0];
mx.events.UIEventDispatcher[_local2](this);
}
}
}
function removeEventListener(event, handler) {
var _local6 = "__q_" + event;
mx.events.EventDispatcher._removeEventListener(this[_local6], event, handler);
if (this[_local6].length == 0) {
var _local2 = lowLevelEvents;
for (var _local5 in _local2) {
if (mx.events.UIEventDispatcher[_local5][event] != undefined) {
var _local3 = _local2[_local5][1];
mx.events.UIEventDispatcher[_local2[_local5][1]](this);
}
}
}
}
static var keyEvents = {keyDown:1, keyUp:1};
static var loadEvents = {load:1, unload:1};
static var lowLevelEvents = {keyEvents:["addKeyEvents", "removeKeyEvents"], loadEvents:["addLoadEvents", "removeLoadEvents"]};
static var _fEventDispatcher = undefined;
}
Symbol 42 MovieClip [__Packages.mx.skins.ColoredSkinElement] Frame 0
class mx.skins.ColoredSkinElement
{
var getStyle, _color, onEnterFrame;
function ColoredSkinElement () {
}
function setColor(c) {
if (c != undefined) {
var _local2 = new Color(this);
_local2.setRGB(c);
}
}
function draw(Void) {
setColor(getStyle(_color));
onEnterFrame = undefined;
}
function invalidateStyle(Void) {
onEnterFrame = draw;
}
static function setColorStyle(p, colorStyle) {
if (p._color == undefined) {
p._color = colorStyle;
}
p.setColor = mixins.setColor;
p.invalidateStyle = mixins.invalidateStyle;
p.draw = mixins.draw;
p.setColor(p.getStyle(colorStyle));
}
static var mixins = new mx.skins.ColoredSkinElement();
}
Symbol 43 MovieClip [__Packages.mx.core.ext.UIObjectExtensions] Frame 0
class mx.core.ext.UIObjectExtensions
{
function UIObjectExtensions () {
}
static function addGeometry(tf, ui) {
tf.addProperty("width", ui.__get__width, null);
tf.addProperty("height", ui.__get__height, null);
tf.addProperty("left", ui.__get__left, null);
tf.addProperty("x", ui.__get__x, null);
tf.addProperty("top", ui.__get__top, null);
tf.addProperty("y", ui.__get__y, null);
tf.addProperty("right", ui.__get__right, null);
tf.addProperty("bottom", ui.__get__bottom, null);
tf.addProperty("visible", ui.__get__visible, ui.__set__visible);
}
static function Extensions() {
if (bExtended == true) {
return(true);
}
bExtended = true;
var _local4 = mx.core.UIObject.prototype;
var _local8 = mx.skins.SkinElement.prototype;
addGeometry(_local8, _local4);
mx.events.UIEventDispatcher.initialize(_local4);
var _local12 = mx.skins.ColoredSkinElement;
mx.styles.CSSTextStyles.addTextStyles(_local4);
var _local5 = MovieClip.prototype;
_local5.getTopLevel = _local4.getTopLevel;
_local5.createLabel = _local4.createLabel;
_local5.createObject = _local4.createObject;
_local5.createClassObject = _local4.createClassObject;
_local5.createEmptyObject = _local4.createEmptyObject;
_local5.destroyObject = _local4.destroyObject;
_local5.__getTextFormat = _local4.__getTextFormat;
_local5._getTextFormat = _local4._getTextFormat;
_local5.getStyleName = _local4.getStyleName;
_local5.getStyle = _local4.getStyle;
var _local6 = TextField.prototype;
addGeometry(_local6, _local4);
_local6.addProperty("enabled", function () {
return(this.__enabled);
}, function (x) {
this.__enabled = x;
this.invalidateStyle();
});
_local6.move = _local8.move;
_local6.setSize = _local8.setSize;
_local6.invalidateStyle = function () {
this.invalidateFlag = true;
};
_local6.draw = function () {
if (this.invalidateFlag) {
this.invalidateFlag = false;
var _local2 = this._getTextFormat();
this.setTextFormat(_local2);
this.setNewTextFormat(_local2);
this.embedFonts = _local2.embedFonts == true;
if (this.__text != undefined) {
if (this.text == "") {
this.text = this.__text;
}
delete this.__text;
}
this._visible = true;
}
};
_local6.setColor = function (color) {
this.textColor = color;
};
_local6.getStyle = _local5.getStyle;
_local6.__getTextFormat = _local4.__getTextFormat;
_local6.setValue = function (v) {
this.text = v;
};
_local6.getValue = function () {
return(this.text);
};
_local6.addProperty("value", function () {
return(this.getValue());
}, function (v) {
this.setValue(v);
});
_local6._getTextFormat = function () {
var _local2 = this.stylecache.tf;
if (_local2 != undefined) {
return(_local2);
}
_local2 = new TextFormat();
this.__getTextFormat(_local2);
this.stylecache.tf = _local2;
if (this.__enabled == false) {
if (this.enabledColor == undefined) {
var _local4 = this.getTextFormat();
this.enabledColor = _local4.color;
}
var _local3 = this.getStyle("disabledColor");
_local2.color = _local3;
} else if (this.enabledColor != undefined) {
if (_local2.color == undefined) {
_local2.color = this.enabledColor;
}
}
return(_local2);
};
_local6.getPreferredWidth = function () {
this.draw();
return(this.textWidth + 4);
};
_local6.getPreferredHeight = function () {
this.draw();
return(this.textHeight + 4);
};
TextFormat.prototype.getTextExtent2 = function (s) {
var _local3 = _root._getTextExtent;
if (_local3 == undefined) {
_root.createTextField("_getTextExtent", -2, 0, 0, 1000, 100);
_local3 = _root._getTextExtent;
_local3._visible = false;
}
_root._getTextExtent.text = s;
var _local4 = this.align;
this.align = "left";
_root._getTextExtent.setTextFormat(this);
this.align = _local4;
return({width:_local3.textWidth, height:_local3.textHeight});
};
if (_global.style == undefined) {
_global.style = new mx.styles.CSSStyleDeclaration();
_global.cascadingStyles = true;
_global.styles = new Object();
_global.skinRegistry = new Object();
_global.origWidth = Stage.width;
_global.origHeight = Stage.height;
}
_root.addProperty("width", function () {
return(Stage.width);
}, null);
_root.addProperty("height", function () {
return(Stage.height);
}, null);
return(true);
}
static var bExtended = false;
static var UIObjectExtended = Extensions();
static var UIObjectDependency = mx.core.UIObject;
static var SkinElementDependency = mx.skins.SkinElement;
static var CSSTextStylesDependency = mx.styles.CSSTextStyles;
static var UIEventDispatcherDependency = mx.events.UIEventDispatcher;
}
Symbol 44 MovieClip [__Packages.mx.skins.halo.Defaults] Frame 0
class mx.skins.halo.Defaults
{
var beginGradientFill, beginFill, moveTo, lineTo, curveTo, endFill;
function Defaults () {
}
static function setThemeDefaults() {
var _local2 = _global.style;
_local2.themeColor = 8453965 /* 0x80FF4D */;
_local2.disabledColor = 8684164 /* 0x848284 */;
_local2.modalTransparency = 0;
_local2.filled = true;
_local2.stroked = true;
_local2.strokeWidth = 1;
_local2.strokeColor = 0;
_local2.fillColor = 16777215 /* 0xFFFFFF */;
_local2.repeatInterval = 35;
_local2.repeatDelay = 500;
_local2.fontFamily = "_sans";
_local2.fontSize = 12;
_local2.selectionColor = 13500353 /* 0xCDFFC1 */;
_local2.rollOverColor = 14942166 /* 0xE3FFD6 */;
_local2.useRollOver = true;
_local2.backgroundDisabledColor = 14540253 /* 0xDDDDDD */;
_local2.selectionDisabledColor = 14540253 /* 0xDDDDDD */;
_local2.selectionDuration = 200;
_local2.openDuration = 250;
_local2.borderStyle = "inset";
_local2.color = 734012 /* 0x0B333C */;
_local2.textSelectedColor = 24371;
_local2.textRollOverColor = 2831164 /* 0x2B333C */;
_local2.textDisabledColor = 16777215 /* 0xFFFFFF */;
_local2.vGridLines = true;
_local2.hGridLines = false;
_local2.vGridLineColor = 6710886 /* 0x666666 */;
_local2.hGridLineColor = 6710886 /* 0x666666 */;
_local2.headerColor = 15395562 /* 0xEAEAEA */;
_local2.indentation = 17;
_local2.folderOpenIcon = "TreeFolderOpen";
_local2.folderClosedIcon = "TreeFolderClosed";
_local2.defaultLeafIcon = "TreeNodeIcon";
_local2.disclosureOpenIcon = "TreeDisclosureOpen";
_local2.disclosureClosedIcon = "TreeDisclosureClosed";
_local2.popupDuration = 150;
_local2.todayColor = 6710886 /* 0x666666 */;
_local2 = (_global.styles.ScrollSelectList = new mx.styles.CSSStyleDeclaration());
_local2.backgroundColor = 16777215 /* 0xFFFFFF */;
_local2.borderColor = 13290186 /* 0xCACACA */;
_local2.borderStyle = "inset";
_local2 = (_global.styles.ComboBox = new mx.styles.CSSStyleDeclaration());
_local2.borderStyle = "inset";
_local2 = (_global.styles.NumericStepper = new mx.styles.CSSStyleDeclaration());
_local2.textAlign = "center";
_local2 = (_global.styles.RectBorder = new mx.styles.CSSStyleDeclaration());
_local2.borderColor = 14015965 /* 0xD5DDDD */;
_local2.buttonColor = 7305079 /* 0x6F7777 */;
_local2.shadowColor = 15658734 /* 0xEEEEEE */;
_local2.highlightColor = 12897484 /* 0xC4CCCC */;
_local2.shadowCapColor = 14015965 /* 0xD5DDDD */;
_local2.borderCapColor = 9542041 /* 0x919999 */;
var _local4 = new Object();
_local4.borderColor = 16711680 /* 0xFF0000 */;
_local4.buttonColor = 16711680 /* 0xFF0000 */;
_local4.shadowColor = 16711680 /* 0xFF0000 */;
_local4.highlightColor = 16711680 /* 0xFF0000 */;
_local4.shadowCapColor = 16711680 /* 0xFF0000 */;
_local4.borderCapColor = 16711680 /* 0xFF0000 */;
mx.core.UIComponent.prototype.origBorderStyles = _local4;
var _local3;
_local3 = (_global.styles.TextInput = new mx.styles.CSSStyleDeclaration());
_local3.backgroundColor = 16777215 /* 0xFFFFFF */;
_local3.borderStyle = "inset";
_global.styles.TextArea = _global.styles.TextInput;
_local3 = (_global.styles.Window = new mx.styles.CSSStyleDeclaration());
_local3.borderStyle = "default";
_local3 = (_global.styles.windowStyles = new mx.styles.CSSStyleDeclaration());
_local3.fontWeight = "bold";
_local3 = (_global.styles.dataGridStyles = new mx.styles.CSSStyleDeclaration());
_local3.fontWeight = "bold";
_local3 = (_global.styles.Alert = new mx.styles.CSSStyleDeclaration());
_local3.borderStyle = "alert";
_local3 = (_global.styles.ScrollView = new mx.styles.CSSStyleDeclaration());
_local3.borderStyle = "inset";
_local3 = (_global.styles.View = new mx.styles.CSSStyleDeclaration());
_local3.borderStyle = "none";
_local3 = (_global.styles.ProgressBar = new mx.styles.CSSStyleDeclaration());
_local3.color = 11187123 /* 0xAAB3B3 */;
_local3.fontWeight = "bold";
_local3 = (_global.styles.AccordionHeader = new mx.styles.CSSStyleDeclaration());
_local3.fontWeight = "bold";
_local3.fontSize = "11";
_local3 = (_global.styles.Accordion = new mx.styles.CSSStyleDeclaration());
_local3.borderStyle = "solid";
_local3.backgroundColor = 16777215 /* 0xFFFFFF */;
_local3.borderColor = 9081738 /* 0x8A938A */;
_local3.headerHeight = 22;
_local3.marginLeft = (_local3.marginRight = (_local3.marginTop = (_local3.marginBottom = -1)));
_local3.verticalGap = -1;
_local3 = (_global.styles.DateChooser = new mx.styles.CSSStyleDeclaration());
_local3.borderColor = 9542041 /* 0x919999 */;
_local3.headerColor = 16777215 /* 0xFFFFFF */;
_local3 = (_global.styles.CalendarLayout = new mx.styles.CSSStyleDeclaration());
_local3.fontSize = 10;
_local3.textAlign = "right";
_local3.color = 2831164 /* 0x2B333C */;
_local3 = (_global.styles.WeekDayStyle = new mx.styles.CSSStyleDeclaration());
_local3.fontWeight = "bold";
_local3.fontSize = 11;
_local3.textAlign = "center";
_local3.color = 2831164 /* 0x2B333C */;
_local3 = (_global.styles.TodayStyle = new mx.styles.CSSStyleDeclaration());
_local3.color = 16777215 /* 0xFFFFFF */;
_local3 = (_global.styles.HeaderDateText = new mx.styles.CSSStyleDeclaration());
_local3.fontSize = 12;
_local3.fontWeight = "bold";
_local3.textAlign = "center";
}
function drawRoundRect(x, y, w, h, r, c, alpha, rot, gradient, ratios) {
if (typeof(r) == "object") {
var _local18 = r.br;
var _local16 = r.bl;
var _local15 = r.tl;
var _local10 = r.tr;
} else {
var _local10 = r;
var _local15 = _local10;
var _local16 = _local15;
var _local18 = _local16;
}
if (typeof(c) == "object") {
if (typeof(alpha) != "object") {
var _local9 = [alpha, alpha];
} else {
var _local9 = alpha;
}
if (ratios == undefined) {
ratios = [0, 255];
}
var _local14 = h * 0.7;
if (typeof(rot) != "object") {
var _local11 = {matrixType:"box", x:-_local14, y:_local14, w:w * 2, h:h * 4, r:rot * 0.0174532925199433 /* Math.PI/180 */};
} else {
var _local11 = rot;
}
if (gradient == "radial") {
beginGradientFill("radial", c, _local9, ratios, _local11);
} else {
beginGradientFill("linear", c, _local9, ratios, _local11);
}
} else if (c != undefined) {
beginFill(c, alpha);
}
r = _local18;
var _local13 = r - (r * 0.707106781186547);
var _local12 = r - (r * 0.414213562373095);
moveTo(x + w, (y + h) - r);
lineTo(x + w, (y + h) - r);
curveTo(x + w, (y + h) - _local12, (x + w) - _local13, (y + h) - _local13);
curveTo((x + w) - _local12, y + h, (x + w) - r, y + h);
r = _local16;
_local13 = r - (r * 0.707106781186547);
_local12 = r - (r * 0.414213562373095);
lineTo(x + r, y + h);
curveTo(x + _local12, y + h, x + _local13, (y + h) - _local13);
curveTo(x, (y + h) - _local12, x, (y + h) - r);
r = _local15;
_local13 = r - (r * 0.707106781186547);
_local12 = r - (r * 0.414213562373095);
lineTo(x, y + r);
curveTo(x, y + _local12, x + _local13, y + _local13);
curveTo(x + _local12, y, x + r, y);
r = _local10;
_local13 = r - (r * 0.707106781186547);
_local12 = r - (r * 0.414213562373095);
lineTo((x + w) - r, y);
curveTo((x + w) - _local12, y, (x + w) - _local13, y + _local13);
curveTo(x + w, y + _local12, x + w, y + r);
lineTo(x + w, (y + h) - r);
if (c != undefined) {
endFill();
}
}
static function classConstruct() {
mx.core.ext.UIObjectExtensions.Extensions();
setThemeDefaults();
mx.core.UIObject.prototype.drawRoundRect = mx.skins.halo.Defaults.prototype.drawRoundRect;
return(true);
}
static var classConstructed = classConstruct();
static var CSSStyleDeclarationDependency = mx.styles.CSSStyleDeclaration;
static var UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
static var UIObjectDependency = mx.core.UIObject;
}
Symbol 45 MovieClip [__Packages.mx.managers.DepthManager] Frame 0
class mx.managers.DepthManager
{
var _childCounter, createClassObject, createObject, _parent, swapDepths, _topmost, getDepth;
function DepthManager () {
MovieClip.prototype.createClassChildAtDepth = createClassChildAtDepth;
MovieClip.prototype.createChildAtDepth = createChildAtDepth;
MovieClip.prototype.setDepthTo = setDepthTo;
MovieClip.prototype.setDepthAbove = setDepthAbove;
MovieClip.prototype.setDepthBelow = setDepthBelow;
MovieClip.prototype.findNextAvailableDepth = findNextAvailableDepth;
MovieClip.prototype.shuffleDepths = shuffleDepths;
MovieClip.prototype.getDepthByFlag = getDepthByFlag;
MovieClip.prototype.buildDepthTable = buildDepthTable;
}
static function sortFunction(a, b) {
if (a.getDepth() > b.getDepth()) {
return(1);
}
return(-1);
}
static function test(depth) {
if (depth == reservedDepth) {
return(false);
}
return(true);
}
static function createClassObjectAtDepth(className, depthSpace, initObj) {
var _local1;
switch (depthSpace) {
case kCursor :
_local1 = holder.createClassChildAtDepth(className, kTopmost, initObj);
break;
case kTooltip :
_local1 = holder.createClassChildAtDepth(className, kTop, initObj);
break;
}
return(_local1);
}
static function createObjectAtDepth(linkageName, depthSpace, initObj) {
var _local1;
switch (depthSpace) {
case kCursor :
_local1 = holder.createChildAtDepth(linkageName, kTopmost, initObj);
break;
case kTooltip :
_local1 = holder.createChildAtDepth(linkageName, kTop, initObj);
break;
}
return(_local1);
}
function createClassChildAtDepth(className, depthFlag, initObj) {
if (_childCounter == undefined) {
_childCounter = 0;
}
var _local3 = buildDepthTable();
var _local2 = getDepthByFlag(depthFlag, _local3);
var _local6 = "down";
if (depthFlag == kBottom) {
_local6 = "up";
}
var _local5;
if (_local3[_local2] != undefined) {
_local5 = _local2;
_local2 = findNextAvailableDepth(_local2, _local3, _local6);
}
var _local4 = createClassObject(className, "depthChild" + (_childCounter++), _local2, initObj);
if (_local5 != undefined) {
_local3[_local2] = _local4;
shuffleDepths(_local4, _local5, _local3, _local6);
}
if (depthFlag == kTopmost) {
_local4._topmost = true;
}
return(_local4);
}
function createChildAtDepth(linkageName, depthFlag, initObj) {
if (_childCounter == undefined) {
_childCounter = 0;
}
var _local3 = buildDepthTable();
var _local2 = getDepthByFlag(depthFlag, _local3);
var _local6 = "down";
if (depthFlag == kBottom) {
_local6 = "up";
}
var _local5;
if (_local3[_local2] != undefined) {
_local5 = _local2;
_local2 = findNextAvailableDepth(_local2, _local3, _local6);
}
var _local4 = createObject(linkageName, "depthChild" + (_childCounter++), _local2, initObj);
if (_local5 != undefined) {
_local3[_local2] = _local4;
shuffleDepths(_local4, _local5, _local3, _local6);
}
if (depthFlag == kTopmost) {
_local4._topmost = true;
}
return(_local4);
}
function setDepthTo(depthFlag) {
var _local2 = _parent.buildDepthTable();
var _local3 = _parent.getDepthByFlag(depthFlag, _local2);
if (_local2[_local3] != undefined) {
shuffleDepths(this, _local3, _local2, undefined);
} else {
swapDepths(_local3);
}
if (depthFlag == kTopmost) {
_topmost = true;
} else {
delete _topmost;
}
}
function setDepthAbove(targetInstance) {
if (targetInstance._parent != _parent) {
return(undefined);
}
var _local2 = targetInstance.getDepth() + 1;
var _local3 = _parent.buildDepthTable();
if ((_local3[_local2] != undefined) && (getDepth() < _local2)) {
_local2 = _local2 - 1;
}
if (_local2 > highestDepth) {
_local2 = highestDepth;
}
if (_local2 == highestDepth) {
_parent.shuffleDepths(this, _local2, _local3, "down");
} else if (_local3[_local2] != undefined) {
_parent.shuffleDepths(this, _local2, _local3, undefined);
} else {
swapDepths(_local2);
}
}
function setDepthBelow(targetInstance) {
if (targetInstance._parent != _parent) {
return(undefined);
}
var _local6 = targetInstance.getDepth() - 1;
var _local3 = _parent.buildDepthTable();
if ((_local3[_local6] != undefined) && (getDepth() > _local6)) {
_local6 = _local6 + 1;
}
var _local4 = lowestDepth + numberOfAuthortimeLayers;
var _local5;
for (_local5 in _local3) {
var _local2 = _local3[_local5];
if (_local2._parent != undefined) {
_local4 = Math.min(_local4, _local2.getDepth());
}
}
if (_local6 < _local4) {
_local6 = _local4;
}
if (_local6 == _local4) {
_parent.shuffleDepths(this, _local6, _local3, "up");
} else if (_local3[_local6] != undefined) {
_parent.shuffleDepths(this, _local6, _local3, undefined);
} else {
swapDepths(_local6);
}
}
function findNextAvailableDepth(targetDepth, depthTable, direction) {
var _local5 = lowestDepth + numberOfAuthortimeLayers;
if (targetDepth < _local5) {
targetDepth = _local5;
}
if (depthTable[targetDepth] == undefined) {
return(targetDepth);
}
var _local2 = targetDepth;
var _local1 = targetDepth;
if (direction == "down") {
while (depthTable[_local1] != undefined) {
_local1--;
}
return(_local1);
}
while (depthTable[_local2] != undefined) {
_local2++;
}
return(_local2);
}
function shuffleDepths(subject, targetDepth, depthTable, direction) {
var _local9 = lowestDepth + numberOfAuthortimeLayers;
var _local8 = _local9;
var _local5;
for (_local5 in depthTable) {
var _local7 = depthTable[_local5];
if (_local7._parent != undefined) {
_local9 = Math.min(_local9, _local7.getDepth());
}
}
if (direction == undefined) {
if (subject.getDepth() > targetDepth) {
direction = "up";
} else {
direction = "down";
}
}
var _local1 = new Array();
for (_local5 in depthTable) {
var _local7 = depthTable[_local5];
if (_local7._parent != undefined) {
_local1.push(_local7);
}
}
_local1.sort(sortFunction);
if (direction == "up") {
var _local3;
var _local11;
do {
if (_local1.length <= 0) {
break;
}
_local3 = _local1.pop();
} while (_local3 != subject);
do {
if (_local1.length <= 0) {
break;
}
_local11 = subject.getDepth();
_local3 = _local1.pop();
var _local4 = _local3.getDepth();
if (_local11 > (_local4 + 1)) {
if (_local4 >= 0) {
subject.swapDepths(_local4 + 1);
} else if ((_local11 > _local8) && (_local4 < _local8)) {
subject.swapDepths(_local8);
}
}
subject.swapDepths(_local3);
} while (_local4 != targetDepth);
} else if (direction == "down") {
var _local3;
do {
if (_local1.length <= 0) {
break;
}
_local3 = _local1.shift();
} while (_local3 != subject);
do {
if (_local1.length <= 0) {
break;
}
var _local11 = _local3.getDepth();
_local3 = _local1.shift();
var _local4 = _local3.getDepth();
if ((_local11 < (_local4 - 1)) && (_local4 > 0)) {
subject.swapDepths(_local4 - 1);
}
subject.swapDepths(_local3);
} while (_local4 != targetDepth);
}
}
function getDepthByFlag(depthFlag, depthTable) {
var _local2 = 0;
if ((depthFlag == kTop) || (depthFlag == kNotopmost)) {
var _local5 = 0;
var _local7 = false;
var _local8;
for (_local8 in depthTable) {
var _local9 = depthTable[_local8];
var _local3 = typeof(_local9);
if ((_local3 == "movieclip") || ((_local3 == "object") && (_local9.__getTextFormat != undefined))) {
if (_local9.getDepth() <= highestDepth) {
if (!_local9._topmost) {
_local2 = Math.max(_local2, _local9.getDepth());
} else if (!_local7) {
_local5 = _local9.getDepth();
_local7 = true;
} else {
_local5 = Math.min(_local5, _local9.getDepth());
}
}
}
}
_local2 = _local2 + 20;
if (_local7) {
if (_local2 >= _local5) {
_local2 = _local5 - 1;
}
}
} else if (depthFlag == kBottom) {
for (var _local8 in depthTable) {
var _local9 = depthTable[_local8];
var _local3 = typeof(_local9);
if ((_local3 == "movieclip") || ((_local3 == "object") && (_local9.__getTextFormat != undefined))) {
if (_local9.getDepth() <= highestDepth) {
_local2 = Math.min(_local2, _local9.getDepth());
}
}
}
_local2 = _local2 - 20;
} else if (depthFlag == kTopmost) {
for (var _local8 in depthTable) {
var _local9 = depthTable[_local8];
var _local3 = typeof(_local9);
if ((_local3 == "movieclip") || ((_local3 == "object") && (_local9.__getTextFormat != undefined))) {
if (_local9.getDepth() <= highestDepth) {
_local2 = Math.max(_local2, _local9.getDepth());
}
}
}
_local2 = _local2 + 100;
}
if (_local2 >= highestDepth) {
_local2 = highestDepth;
}
var _local6 = lowestDepth + numberOfAuthortimeLayers;
for (var _local9 in depthTable) {
var _local4 = depthTable[_local9];
if (_local4._parent != undefined) {
_local6 = Math.min(_local6, _local4.getDepth());
}
}
if (_local2 <= _local6) {
_local2 = _local6;
}
return(_local2);
}
function buildDepthTable(Void) {
var _local5 = new Array();
var _local4;
for (_local4 in this) {
var _local2 = this[_local4];
var _local3 = typeof(_local2);
if ((_local3 == "movieclip") || ((_local3 == "object") && (_local2.__getTextFormat != undefined))) {
if (_local2._parent == this) {
_local5[_local2.getDepth()] = _local2;
}
}
}
return(_local5);
}
static var reservedDepth = 1048575;
static var highestDepth = 1048574;
static var lowestDepth = -16383;
static var numberOfAuthortimeLayers = 383;
static var kCursor = 101;
static var kTooltip = 102;
static var kTop = 201;
static var kBottom = 202;
static var kTopmost = 203;
static var kNotopmost = 204;
static var holder = _root.createEmptyMovieClip("reserved", reservedDepth);
static var __depthManager = new mx.managers.DepthManager();
}
Symbol 46 MovieClip [__Packages.mx.managers.SystemManager] Frame 0
class mx.managers.SystemManager
{
static var _xAddEventListener, addEventListener, __addEventListener, _xRemoveEventListener, removeEventListener, __removeEventListener, form, __screen, dispatchEvent;
function SystemManager () {
}
static function init(Void) {
if (_initialized == false) {
_initialized = true;
mx.events.EventDispatcher.initialize(mx.managers.SystemManager);
Mouse.addListener(mx.managers.SystemManager);
Stage.addListener(mx.managers.SystemManager);
_xAddEventListener = addEventListener;
addEventListener = __addEventListener;
_xRemoveEventListener = removeEventListener;
removeEventListener = __removeEventListener;
}
}
static function addFocusManager(f) {
form = f;
f.focusManager.activate();
}
static function removeFocusManager(f) {
}
static function onMouseDown(Void) {
var _local1 = form;
_local1.focusManager._onMouseDown();
}
static function onResize(Void) {
var _local7 = Stage.width;
var _local6 = Stage.height;
var _local9 = _global.origWidth;
var _local8 = _global.origHeight;
var _local3 = Stage.align;
var _local5 = (_local9 - _local7) / 2;
var _local4 = (_local8 - _local6) / 2;
if (_local3 == "T") {
_local4 = 0;
} else if (_local3 == "B") {
_local4 = _local8 - _local6;
} else if (_local3 == "L") {
_local5 = 0;
} else if (_local3 == "R") {
_local5 = _local9 - _local7;
} else if (_local3 == "LT") {
_local4 = 0;
_local5 = 0;
} else if (_local3 == "TR") {
_local4 = 0;
_local5 = _local9 - _local7;
} else if (_local3 == "LB") {
_local4 = _local8 - _local6;
_local5 = 0;
} else if (_local3 == "RB") {
_local4 = _local8 - _local6;
_local5 = _local9 - _local7;
}
if (__screen == undefined) {
__screen = new Object();
}
__screen.x = _local5;
__screen.y = _local4;
__screen.width = _local7;
__screen.height = _local6;
_root.focusManager.relocate();
dispatchEvent({type:"resize"});
}
static function get screen() {
init();
if (__screen == undefined) {
onResize();
}
return(__screen);
}
static var _initialized = false;
static var idleFrames = 0;
static var isMouseDown = false;
static var forms = new Array();
}
Symbol 47 MovieClip [__Packages.mx.managers.FocusManager] Frame 0
class mx.managers.FocusManager extends mx.core.UIComponent
{
var __defaultPushButton, defPushButton, form, move, tabEnabled, _width, _height, _x, _y, _alpha, _parent, tabCapture, watch, _visible, lastFocus, doLater, lastSelFocus, cancelAllDoLaters, _searchKey, _lastTarget, _firstNode, _nextIsNext, _nextNode, _lastx, _prevNode, _needPrev, _foundList, _prevObj, _nextObj, _firstObj, _lastObj, _lastNode, lastTabFocus, lastXMouse, lastYMouse, findFocusFromObject;
function FocusManager () {
super();
}
function get defaultPushButton() {
return(__defaultPushButton);
}
function set defaultPushButton(x) {
if (x != __defaultPushButton) {
__defaultPushButton.__set__emphasized(false);
__defaultPushButton = x;
defPushButton = x;
x.__set__emphasized(true);
}
//return(defaultPushButton);
}
function getMaxTabIndex(o) {
var _local3 = 0;
var _local6;
for (_local6 in o) {
var _local2 = o[_local6];
if (_local2._parent == o) {
if (_local2.tabIndex != undefined) {
if (_local2.tabIndex > _local3) {
_local3 = _local2.tabIndex;
}
}
if (_local2.tabChildren == true) {
var _local4 = getMaxTabIndex(_local2);
if (_local4 > _local3) {
_local3 = _local4;
}
}
}
}
return(_local3);
}
function getNextTabIndex(Void) {
return(getMaxTabIndex(form) + 1);
}
function get nextTabIndex() {
return(getNextTabIndex());
}
function relocate(Void) {
var _local2 = mx.managers.SystemManager.__get__screen();
move(_local2.x - 1, _local2.y - 1);
}
function init(Void) {
super.init();
tabEnabled = false;
_width = (_height = 1);
_x = (_y = -1);
_alpha = 0;
_parent.focusManager = this;
_parent.tabChildren = true;
_parent.tabEnabled = false;
form = _parent;
_parent.addEventListener("hide", this);
_parent.addEventListener("reveal", this);
mx.managers.SystemManager.init();
mx.managers.SystemManager.addFocusManager(form);
tabCapture.tabIndex = 0;
watch("enabled", enabledChanged);
Selection.addListener(this);
}
function enabledChanged(id, oldValue, newValue) {
_visible = newValue;
return(newValue);
}
function activate(Void) {
Key.addListener(this);
activated = (_visible = true);
if (lastFocus != undefined) {
bNeedFocus = true;
if (!mx.managers.SystemManager.isMouseDown) {
doLater(this, "restoreFocus");
}
}
}
function deactivate(Void) {
Key.removeListener(this);
activated = (_visible = false);
var _local2 = getSelectionFocus();
var _local3 = getActualFocus(_local2);
if (isOurFocus(_local3)) {
lastSelFocus = _local2;
lastFocus = _local3;
}
cancelAllDoLaters();
}
function isOurFocus(o) {
if (o.focusManager == this) {
return(true);
}
while (o != undefined) {
if (o.focusManager != undefined) {
return(false);
}
if (o._parent == _parent) {
return(true);
}
o = o._parent;
}
return(false);
}
function onSetFocus(o, n) {
if (n == null) {
if (activated) {
bNeedFocus = true;
}
} else {
var _local2 = getFocus();
if (isOurFocus(_local2)) {
bNeedFocus = false;
lastFocus = _local2;
lastSelFocus = n;
}
}
}
function restoreFocus(Void) {
var _local2 = lastSelFocus.hscroll;
if (_local2 != undefined) {
var _local5 = lastSelFocus.scroll;
var _local4 = lastSelFocus.background;
}
lastFocus.setFocus();
var _local3 = Selection;
Selection.setSelection(_local3.lastBeginIndex, _local3.lastEndIndex);
if (_local2 != undefined) {
lastSelFocus.scroll = _local5;
lastSelFocus.hscroll = _local2;
lastSelFocus.background = _local4;
}
}
function onUnload(Void) {
mx.managers.SystemManager.removeFocusManager(form);
}
function setFocus(o) {
if (o == null) {
Selection.setFocus(null);
} else if (o.setFocus == undefined) {
Selection.setFocus(o);
} else {
o.setFocus();
}
}
function getActualFocus(o) {
var _local1 = o._parent;
while (_local1 != undefined) {
if (_local1.focusTextField != undefined) {
while (_local1.focusTextField != undefined) {
o = _local1;
_local1 = _local1._parent;
if (_local1 == undefined) {
return(undefined);
}
if (_local1.focusTextField == undefined) {
return(o);
}
}
}
if (_local1.tabEnabled != true) {
return(o);
}
o = _local1;
_local1 = o._parent;
}
return(undefined);
}
function getSelectionFocus() {
var m = Selection.getFocus();
var o = eval (m);
return(o);
}
function getFocus(Void) {
var _local2 = getSelectionFocus();
return(getActualFocus(_local2));
}
function walkTree(p, index, groupName, dir, lookup, firstChild) {
var _local5 = true;
var _local11;
for (_local11 in p) {
var _local2 = p[_local11];
if ((((_local2._parent == p) && (_local2.enabled != false)) && (_local2._visible != false)) && ((_local2.tabEnabled == true) || ((_local2.tabEnabled != false) && ((((((((_local2.onPress != undefined) || (_local2.onRelease != undefined)) || (_local2.onReleaseOutside != undefined)) || (_local2.onDragOut != undefined)) || (_local2.onDragOver != undefined)) || (_local2.onRollOver != undefined)) || (_local2.onRollOut != undefined)) || (_local2 instanceof TextField))))) {
if (_local2._searchKey == _searchKey) {
continue;
}
_local2._searchKey = _searchKey;
if (_local2 != _lastTarget) {
if (((_local2.groupName != undefined) || (groupName != undefined)) && (_local2.groupName == groupName)) {
continue;
}
if ((_local2 instanceof TextField) && (_local2.selectable == false)) {
continue;
}
if (_local5 || (((_local2.groupName != undefined) && (_local2.groupName == _firstNode.groupName)) && (_local2.selected == true))) {
if (firstChild) {
_firstNode = _local2;
firstChild = false;
}
}
if (_nextIsNext == true) {
if ((((_local2.groupName != undefined) && (_local2.groupName == _nextNode.groupName)) && (_local2.selected == true)) || ((_nextNode == undefined) && ((_local2.groupName == undefined) || ((_local2.groupName != undefined) && (_local2.groupName != groupName))))) {
_nextNode = _local2;
}
}
if ((_local2.groupName == undefined) || (groupName != _local2.groupName)) {
if (((_lastx.groupName != undefined) && (_local2.groupName == _lastx.groupName)) && (_lastx.selected == true)) {
} else {
_lastx = _local2;
}
}
} else {
_prevNode = _lastx;
_needPrev = false;
_nextIsNext = true;
}
if (_local2.tabIndex != undefined) {
if (_local2.tabIndex == index) {
if (_foundList[_local2._name] == undefined) {
if (_needPrev) {
_prevObj = _local2;
_needPrev = false;
}
_nextObj = _local2;
}
}
if (dir && (_local2.tabIndex > index)) {
if (((_nextObj == undefined) || ((_nextObj.tabIndex > _local2.tabIndex) && (((_local2.groupName == undefined) || (_nextObj.groupName == undefined)) || (_local2.groupName != _nextObj.groupName)))) || ((((_nextObj.groupName != undefined) && (_nextObj.groupName == _local2.groupName)) && (_nextObj.selected != true)) && ((_local2.selected == true) || (_nextObj.tabIndex > _local2.tabIndex)))) {
_nextObj = _local2;
}
} else if ((!dir) && (_local2.tabIndex < index)) {
if (((_prevObj == undefined) || ((_prevObj.tabIndex < _local2.tabIndex) && (((_local2.groupName == undefined) || (_prevObj.groupName == undefined)) || (_local2.groupName != _prevObj.groupName)))) || ((((_prevObj.groupName != undefined) && (_prevObj.groupName == _local2.groupName)) && (_prevObj.selected != true)) && ((_local2.selected == true) || (_prevObj.tabIndex < _local2.tabIndex)))) {
_prevObj = _local2;
}
}
if (((_firstObj == undefined) || ((_local2.tabIndex < _firstObj.tabIndex) && (((_local2.groupName == undefined) || (_firstObj.groupName == undefined)) || (_local2.groupName != _firstObj.groupName)))) || ((((_firstObj.groupName != undefined) && (_firstObj.groupName == _local2.groupName)) && (_firstObj.selected != true)) && ((_local2.selected == true) || (_local2.tabIndex < _firstObj.tabIndex)))) {
_firstObj = _local2;
}
if (((_lastObj == undefined) || ((_local2.tabIndex > _lastObj.tabIndex) && (((_local2.groupName == undefined) || (_lastObj.groupName == undefined)) || (_local2.groupName != _lastObj.groupName)))) || ((((_lastObj.groupName != undefined) && (_lastObj.groupName == _local2.groupName)) && (_lastObj.selected != true)) && ((_local2.selected == true) || (_local2.tabIndex > _lastObj.tabIndex)))) {
_lastObj = _local2;
}
}
if (_local2.tabChildren) {
getTabCandidateFromChildren(_local2, index, groupName, dir, _local5 && (firstChild));
}
_local5 = false;
} else if (((_local2._parent == p) && (_local2.tabChildren == true)) && (_local2._visible != false)) {
if (_local2 == _lastTarget) {
if (_local2._searchKey == _searchKey) {
continue;
}
_local2._searchKey = _searchKey;
if (_prevNode == undefined) {
var _local3 = _lastx;
var _local7 = false;
while (_local3 != undefined) {
if (_local3 == _local2) {
_local7 = true;
break;
}
_local3 = _local3._parent;
}
if (_local7 == false) {
_prevNode = _lastx;
}
}
_needPrev = false;
if (_nextNode == undefined) {
_nextIsNext = true;
}
} else if (!((_local2.focusManager != undefined) && (_local2.focusManager._parent == _local2))) {
if (_local2._searchKey == _searchKey) {
continue;
}
_local2._searchKey = _searchKey;
getTabCandidateFromChildren(_local2, index, groupName, dir, _local5 && (firstChild));
}
_local5 = false;
}
}
_lastNode = _lastx;
if (lookup) {
if (p._parent != undefined) {
if (p != _parent) {
if ((_prevNode == undefined) && (dir)) {
_needPrev = true;
} else if ((_nextNode == undefined) && (!dir)) {
_nextIsNext = false;
}
_lastTarget = _lastTarget._parent;
getTabCandidate(p._parent, index, groupName, dir, true);
}
}
}
}
function getTabCandidate(o, index, groupName, dir, firstChild) {
var _local2;
var _local3 = true;
if (o == _parent) {
_local2 = o;
_local3 = false;
} else {
_local2 = o._parent;
if (_local2 == undefined) {
_local2 = o;
_local3 = false;
}
}
walkTree(_local2, index, groupName, dir, _local3, firstChild);
}
function getTabCandidateFromChildren(o, index, groupName, dir, firstChild) {
walkTree(o, index, groupName, dir, false, firstChild);
}
function getFocusManagerFromObject(o) {
while (o != undefined) {
if (o.focusManager != undefined) {
return(o.focusManager);
}
o = o._parent;
}
return(undefined);
}
function tabHandler(Void) {
bDrawFocus = true;
var _local5 = getSelectionFocus();
var _local4 = getActualFocus(_local5);
if (_local4 != _local5) {
_local5 = _local4;
}
if (getFocusManagerFromObject(_local5) != this) {
_local5 == undefined;
}
if (_local5 == undefined) {
_local5 = form;
} else if (_local5.tabIndex != undefined) {
if ((_foundList != undefined) || (_foundList.tabIndex != _local5.tabIndex)) {
_foundList = new Object();
_foundList.tabIndex = _local5.tabIndex;
}
_foundList[_local5._name] = _local5;
}
var _local3 = Key.isDown(16) != true;
_searchKey = getTimer();
_needPrev = true;
_nextIsNext = false;
_lastx = undefined;
_firstNode = undefined;
_lastNode = undefined;
_nextNode = undefined;
_prevNode = undefined;
_firstObj = undefined;
_lastObj = undefined;
_nextObj = undefined;
_prevObj = undefined;
_lastTarget = _local5;
var _local6 = _local5;
getTabCandidate(_local6, ((_local5.tabIndex == undefined) ? 0 : (_local5.tabIndex)), _local5.groupName, _local3, true);
var _local2;
if (_local3) {
if (_nextObj != undefined) {
_local2 = _nextObj;
} else {
_local2 = _firstObj;
}
} else if (_prevObj != undefined) {
_local2 = _prevObj;
} else {
_local2 = _lastObj;
}
if (_local2.tabIndex != _local5.tabIndex) {
_foundList = new Object();
_foundList.tabIndex = _local2.tabIndex;
_foundList[_local2._name] = _local2;
} else {
if (_foundList == undefined) {
_foundList = new Object();
_foundList.tabIndex = _local2.tabIndex;
}
_foundList[_local2._name] = _local2;
}
if (_local2 == undefined) {
if (_local3 == false) {
if (_nextNode != undefined) {
_local2 = _nextNode;
} else {
_local2 = _firstNode;
}
} else if ((_prevNode == undefined) || (_local5 == form)) {
_local2 = _lastNode;
} else {
_local2 = _prevNode;
}
}
if (_local2 == undefined) {
return(undefined);
}
lastTabFocus = _local2;
setFocus(_local2);
if (_local2.emphasized != undefined) {
if (defPushButton != undefined) {
_local5 = defPushButton;
defPushButton = _local2;
_local5.emphasized = false;
_local2.emphasized = true;
}
} else if ((defPushButton != undefined) && (defPushButton != __defaultPushButton)) {
_local5 = defPushButton;
defPushButton = __defaultPushButton;
_local5.emphasized = false;
__defaultPushButton.__set__emphasized(true);
}
}
function onKeyDown(Void) {
mx.managers.SystemManager.idleFrames = 0;
if (defaultPushButtonEnabled) {
if (Key.getCode() == 13) {
if (defaultPushButton != undefined) {
doLater(this, "sendDefaultPushButtonEvent");
}
}
}
}
function sendDefaultPushButtonEvent(Void) {
defPushButton.dispatchEvent({type:"click"});
}
function getMousedComponentFromChildren(x, y, o) {
for (var _local7 in o) {
var _local2 = o[_local7];
if (((_local2._visible && (_local2.enabled)) && (_local2._parent == o)) && (_local2._searchKey != _searchKey)) {
_local2._searchKey = _searchKey;
if (_local2.hitTest(x, y, true)) {
if ((_local2.onPress != undefined) || (_local2.onRelease != undefined)) {
return(_local2);
}
var _local3 = getMousedComponentFromChildren(x, y, _local2);
if (_local3 != undefined) {
return(_local3);
}
return(_local2);
}
}
}
return(undefined);
}
function mouseActivate(Void) {
if (!bNeedFocus) {
return(undefined);
}
_searchKey = getTimer();
var _local2 = getMousedComponentFromChildren(lastXMouse, lastYMouse, form);
if (_local2 instanceof mx.core.UIComponent) {
return(undefined);
}
_local2 = findFocusFromObject(_local2);
if (_local2 == lastFocus) {
return(undefined);
}
if (_local2 == undefined) {
doLater(this, "restoreFocus");
return(undefined);
}
var _local3 = _local2.hscroll;
if (_local3 != undefined) {
var _local6 = _local2.scroll;
var _local5 = _local2.background;
}
setFocus(_local2);
var _local4 = Selection;
Selection.setSelection(_local4.lastBeginIndex, _local4.lastEndIndex);
if (_local3 != undefined) {
_local2.scroll = _local6;
_local2.hscroll = _local3;
_local2.background = _local5;
}
}
function _onMouseDown(Void) {
bDrawFocus = false;
if (lastFocus != undefined) {
lastFocus.drawFocus(false);
}
mx.managers.SystemManager.idleFrames = 0;
var _local3 = Selection;
_local3.lastBeginIndex = Selection.getBeginIndex();
_local3.lastEndIndex = Selection.getEndIndex();
lastXMouse = _root._xmouse;
lastYMouse = _root._ymouse;
}
function onMouseUp(Void) {
if (_visible) {
doLater(this, "mouseActivate");
}
}
function handleEvent(e) {
if (e.type == "reveal") {
mx.managers.SystemManager.activate(form);
} else {
mx.managers.SystemManager.deactivate(form);
}
}
static function enableFocusManagement() {
if (!initialized) {
initialized = true;
Object.registerClass("FocusManager", mx.managers.FocusManager);
if (_root.focusManager == undefined) {
_root.createClassObject(mx.managers.FocusManager, "focusManager", mx.managers.DepthManager.highestDepth--);
}
}
}
static var symbolName = "FocusManager";
static var symbolOwner = mx.managers.FocusManager;
static var version = "2.0.0.360";
var className = "FocusManager";
var bNeedFocus = false;
var bDrawFocus = false;
var defaultPushButtonEnabled = true;
var activated = true;
static var initialized = false;
static var UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
}
Symbol 48 MovieClip [__Packages.mx.skins.halo.FocusRect] Frame 0
class mx.skins.halo.FocusRect extends mx.skins.SkinElement
{
var boundingBox_mc, _xscale, _yscale, clear, beginFill, drawRoundRect, endFill, _visible;
function FocusRect () {
super();
boundingBox_mc._visible = false;
boundingBox_mc._width = (boundingBox_mc._height = 0);
}
function draw(o) {
o.adjustFocusRect();
}
function setSize(w, h, r, a, rectCol) {
_xscale = (_yscale = 100);
clear();
if (typeof(r) == "object") {
r.br = ((r.br > 2) ? (r.br - 2) : 0);
r.bl = ((r.bl > 2) ? (r.bl - 2) : 0);
r.tr = ((r.tr > 2) ? (r.tr - 2) : 0);
r.tl = ((r.tl > 2) ? (r.tl - 2) : 0);
beginFill(rectCol, a * 0.3);
drawRoundRect(0, 0, w, h, r);
drawRoundRect(2, 2, w - 4, h - 4, r);
endFill();
r.br = ((r.br > 1) ? (r.br + 1) : 0);
r.bl = ((r.bl > 1) ? (r.bl + 1) : 0);
r.tr = ((r.tr > 1) ? (r.tr + 1) : 0);
r.tl = ((r.tl > 1) ? (r.tl + 1) : 0);
beginFill(rectCol, a * 0.3);
drawRoundRect(1, 1, w - 2, h - 2, r);
r.br = ((r.br > 1) ? (r.br - 1) : 0);
r.bl = ((r.bl > 1) ? (r.bl - 1) : 0);
r.tr = ((r.tr > 1) ? (r.tr - 1) : 0);
r.tl = ((r.tl > 1) ? (r.tl - 1) : 0);
drawRoundRect(2, 2, w - 4, h - 4, r);
endFill();
} else {
var _local5;
if (r != 0) {
_local5 = r - 2;
} else {
_local5 = 0;
}
beginFill(rectCol, a * 0.3);
drawRoundRect(0, 0, w, h, r);
drawRoundRect(2, 2, w - 4, h - 4, _local5);
endFill();
beginFill(rectCol, a * 0.3);
if (r != 0) {
_local5 = r - 2;
r = r - 1;
} else {
_local5 = 0;
r = 0;
}
drawRoundRect(1, 1, w - 2, h - 2, r);
drawRoundRect(2, 2, w - 4, h - 4, _local5);
endFill();
}
}
function handleEvent(e) {
if (e.type == "unload") {
_visible = true;
} else if (e.type == "resize") {
e.target.adjustFocusRect();
} else if (e.type == "move") {
e.target.adjustFocusRect();
}
}
static function classConstruct() {
mx.core.UIComponent.prototype.drawFocus = function (focused) {
var _local2 = this._parent.focus_mc;
if (!focused) {
_local2._visible = false;
this.removeEventListener("unload", _local2);
this.removeEventListener("move", _local2);
this.removeEventListener("resize", _local2);
} else {
if (_local2 == undefined) {
_local2 = this._parent.createChildAtDepth("FocusRect", mx.managers.DepthManager.kTop);
_local2.tabEnabled = false;
this._parent.focus_mc = _local2;
} else {
_local2._visible = true;
}
_local2.draw(this);
if (_local2.getDepth() < this.getDepth()) {
_local2.setDepthAbove(this);
}
this.addEventListener("unload", _local2);
this.addEventListener("move", _local2);
this.addEventListener("resize", _local2);
}
};
mx.core.UIComponent.prototype.adjustFocusRect = function () {
var _local2 = this.getStyle("themeColor");
if (_local2 == undefined) {
_local2 = 8453965 /* 0x80FF4D */;
}
var _local3 = this._parent.focus_mc;
_local3.setSize(this.width + 4, this.height + 4, 0, 100, _local2);
_local3.move(this.x - 2, this.y - 2);
};
TextField.prototype.drawFocus = mx.core.UIComponent.prototype.drawFocus;
TextField.prototype.adjustFocusRect = mx.core.UIComponent.prototype.adjustFocusRect;
mx.skins.halo.FocusRect.prototype.drawRoundRect = mx.skins.halo.Defaults.prototype.drawRoundRect;
return(true);
}
static var classConstructed = classConstruct();
static var DefaultsDependency = mx.skins.halo.Defaults;
static var UIComponentDependency = mx.core.UIComponent;
}
Symbol 49 MovieClip [__Packages.mx.managers.OverlappedWindows] Frame 0
class mx.managers.OverlappedWindows
{
function OverlappedWindows () {
}
static function checkIdle(Void) {
if (mx.managers.SystemManager.idleFrames > 10) {
mx.managers.SystemManager.dispatchEvent({type:"idle"});
} else {
mx.managers.SystemManager.idleFrames++;
}
}
static function __addEventListener(e, o, l) {
if (e == "idle") {
if (mx.managers.SystemManager.interval == undefined) {
mx.managers.SystemManager.interval = setInterval(mx.managers.SystemManager.checkIdle, 100);
}
}
mx.managers.SystemManager._xAddEventListener(e, o, l);
}
static function __removeEventListener(e, o, l) {
if (e == "idle") {
if (mx.managers.SystemManager._xRemoveEventListener(e, o, l) == 0) {
clearInterval(mx.managers.SystemManager.interval);
}
} else {
mx.managers.SystemManager._xRemoveEventListener(e, o, l);
}
}
static function onMouseDown(Void) {
mx.managers.SystemManager.idleFrames = 0;
mx.managers.SystemManager.isMouseDown = true;
var _local5 = _root;
var _local3;
var _local8 = _root._xmouse;
var _local7 = _root._ymouse;
if (mx.managers.SystemManager.form.modalWindow == undefined) {
if (mx.managers.SystemManager.forms.length > 1) {
var _local6 = mx.managers.SystemManager.forms.length;
var _local4;
_local4 = 0;
while (_local4 < _local6) {
var _local2 = mx.managers.SystemManager.forms[_local4];
if (_local2._visible) {
if (_local2.hitTest(_local8, _local7)) {
if (_local3 == undefined) {
_local3 = _local2.getDepth();
_local5 = _local2;
} else if (_local3 < _local2.getDepth()) {
_local3 = _local2.getDepth();
_local5 = _local2;
}
}
}
_local4++;
}
if (_local5 != mx.managers.SystemManager.form) {
mx.managers.SystemManager.activate(_local5);
}
}
}
var _local9 = mx.managers.SystemManager.form;
_local9.focusManager._onMouseDown();
}
static function onMouseMove(Void) {
mx.managers.SystemManager.idleFrames = 0;
}
static function onMouseUp(Void) {
mx.managers.SystemManager.isMouseDown = false;
mx.managers.SystemManager.idleFrames = 0;
}
static function activate(f) {
if (mx.managers.SystemManager.form != undefined) {
if ((mx.managers.SystemManager.form != f) && (mx.managers.SystemManager.forms.length > 1)) {
var _local1 = mx.managers.SystemManager.form;
_local1.focusManager.deactivate();
}
}
mx.managers.SystemManager.form = f;
f.focusManager.activate();
}
static function deactivate(f) {
if (mx.managers.SystemManager.form != undefined) {
if ((mx.managers.SystemManager.form == f) && (mx.managers.SystemManager.forms.length > 1)) {
var _local5 = mx.managers.SystemManager.form;
_local5.focusManager.deactivate();
var _local3 = mx.managers.SystemManager.forms.length;
var _local1;
var _local2;
_local1 = 0;
while (_local1 < _local3) {
if (mx.managers.SystemManager.forms[_local1] == f) {
_local1 = _local1 + 1;
while (_local1 < _local3) {
if (mx.managers.SystemManager.forms[_local1]._visible == true) {
_local2 = mx.managers.SystemManager.forms[_local1];
}
_local1++;
}
mx.managers.SystemManager.form = _local2;
break;
}
if (mx.managers.SystemManager.forms[_local1]._visible == true) {
_local2 = mx.managers.SystemManager.forms[_local1];
}
_local1++;
}
_local5 = mx.managers.SystemManager.form;
_local5.focusManager.activate();
}
}
}
static function addFocusManager(f) {
mx.managers.SystemManager.forms.push(f);
mx.managers.SystemManager.activate(f);
}
static function removeFocusManager(f) {
var _local3 = mx.managers.SystemManager.forms.length;
var _local1;
_local1 = 0;
while (_local1 < _local3) {
if (mx.managers.SystemManager.forms[_local1] == f) {
if (mx.managers.SystemManager.form == f) {
mx.managers.SystemManager.deactivate(f);
}
mx.managers.SystemManager.forms.splice(_local1, 1);
return(undefined);
}
_local1++;
}
}
static function enableOverlappedWindows() {
if (!initialized) {
initialized = true;
mx.managers.SystemManager.checkIdle = checkIdle;
mx.managers.SystemManager.__addEventListener = __addEventListener;
mx.managers.SystemManager.__removeEventListener = __removeEventListener;
mx.managers.SystemManager.onMouseDown = onMouseDown;
mx.managers.SystemManager.onMouseMove = onMouseMove;
mx.managers.SystemManager.onMouseUp = onMouseUp;
mx.managers.SystemManager.activate = activate;
mx.managers.SystemManager.deactivate = deactivate;
mx.managers.SystemManager.addFocusManager = addFocusManager;
mx.managers.SystemManager.removeFocusManager = removeFocusManager;
}
}
static var initialized = false;
static var SystemManagerDependency = mx.managers.SystemManager;
}
Symbol 50 MovieClip [__Packages.mx.styles.CSSSetStyle] Frame 0
class mx.styles.CSSSetStyle
{
var styleName, stylecache, _color, setColor, invalidateStyle;
function CSSSetStyle () {
}
function _setStyle(styleProp, newValue) {
this[styleProp] = newValue;
if (mx.styles.StyleManager.TextStyleMap[styleProp] != undefined) {
if (styleProp == "color") {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return(undefined);
}
}
}
_level0.changeTextStyleInChildren(styleProp);
return(undefined);
}
if (mx.styles.StyleManager.isColorStyle(styleProp)) {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return(undefined);
}
}
if (styleProp == "themeColor") {
var _local7 = mx.styles.StyleManager.colorNames.haloBlue;
var _local6 = mx.styles.StyleManager.colorNames.haloGreen;
var _local8 = mx.styles.StyleManager.colorNames.haloOrange;
var _local4 = {};
_local4[_local7] = 12188666 /* 0xB9FBFA */;
_local4[_local6] = 13500353 /* 0xCDFFC1 */;
_local4[_local8] = 16766319 /* 0xFFD56F */;
var _local5 = {};
_local5[_local7] = 13958653 /* 0xD4FDFD */;
_local5[_local6] = 14942166 /* 0xE3FFD6 */;
_local5[_local8] = 16772787 /* 0xFFEEB3 */;
var _local9 = _local4[newValue];
var _local10 = _local5[newValue];
if (_local9 == undefined) {
_local9 = newValue;
}
if (_local10 == undefined) {
_local10 = newValue;
}
setStyle("selectionColor", _local9);
setStyle("rollOverColor", _local10);
}
_level0.changeColorStyleInChildren(styleName, styleProp, newValue);
} else {
if ((styleProp == "backgroundColor") && (isNaN(newValue))) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return(undefined);
}
}
_level0.notifyStyleChangeInChildren(styleName, styleProp, newValue);
}
}
function changeTextStyleInChildren(styleProp) {
var _local4 = getTimer();
var _local5;
for (_local5 in this) {
var _local2 = this[_local5];
if (_local2._parent == this) {
if (_local2.searchKey != _local4) {
if (_local2.stylecache != undefined) {
delete _local2.stylecache.tf;
delete _local2.stylecache[styleProp];
}
_local2.invalidateStyle(styleProp);
_local2.changeTextStyleInChildren(styleProp);
_local2.searchKey = _local4;
}
}
}
}
function changeColorStyleInChildren(sheetName, colorStyle, newValue) {
var _local6 = getTimer();
var _local7;
for (_local7 in this) {
var _local2 = this[_local7];
if (_local2._parent == this) {
if (_local2.searchKey != _local6) {
if (((_local2.getStyleName() == sheetName) || (sheetName == undefined)) || (sheetName == "_global")) {
if (_local2.stylecache != undefined) {
delete _local2.stylecache[colorStyle];
}
if (typeof(_local2._color) == "string") {
if (_local2._color == colorStyle) {
var _local4 = _local2.getStyle(colorStyle);
if (colorStyle == "color") {
if (stylecache.tf.color != undefined) {
stylecache.tf.color = _local4;
}
}
_local2.setColor(_local4);
}
} else if (_local2._color[colorStyle] != undefined) {
if (typeof(_local2) != "movieclip") {
_local2._parent.invalidateStyle();
} else {
_local2.invalidateStyle(colorStyle);
}
}
}
_local2.changeColorStyleInChildren(sheetName, colorStyle, newValue);
_local2.searchKey = _local6;
}
}
}
}
function notifyStyleChangeInChildren(sheetName, styleProp, newValue) {
var _local5 = getTimer();
var _local6;
for (_local6 in this) {
var _local2 = this[_local6];
if (_local2._parent == this) {
if (_local2.searchKey != _local5) {
if (((_local2.styleName == sheetName) || ((_local2.styleName != undefined) && (typeof(_local2.styleName) == "movieclip"))) || (sheetName == undefined)) {
if (_local2.stylecache != undefined) {
delete _local2.stylecache[styleProp];
delete _local2.stylecache.tf;
}
delete _local2.enabledColor;
_local2.invalidateStyle(styleProp);
}
_local2.notifyStyleChangeInChildren(sheetName, styleProp, newValue);
_local2.searchKey = _local5;
}
}
}
}
function setStyle(styleProp, newValue) {
if (stylecache != undefined) {
delete stylecache[styleProp];
delete stylecache.tf;
}
this[styleProp] = newValue;
if (mx.styles.StyleManager.isColorStyle(styleProp)) {
if (isNaN(newValue)) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return(undefined);
}
}
if (styleProp == "themeColor") {
var _local10 = mx.styles.StyleManager.colorNames.haloBlue;
var _local9 = mx.styles.StyleManager.colorNames.haloGreen;
var _local11 = mx.styles.StyleManager.colorNames.haloOrange;
var _local6 = {};
_local6[_local10] = 12188666 /* 0xB9FBFA */;
_local6[_local9] = 13500353 /* 0xCDFFC1 */;
_local6[_local11] = 16766319 /* 0xFFD56F */;
var _local7 = {};
_local7[_local10] = 13958653 /* 0xD4FDFD */;
_local7[_local9] = 14942166 /* 0xE3FFD6 */;
_local7[_local11] = 16772787 /* 0xFFEEB3 */;
var _local12 = _local6[newValue];
var _local13 = _local7[newValue];
if (_local12 == undefined) {
_local12 = newValue;
}
if (_local13 == undefined) {
_local13 = newValue;
}
setStyle("selectionColor", _local12);
setStyle("rollOverColor", _local13);
}
if (typeof(_color) == "string") {
if (_color == styleProp) {
if (styleProp == "color") {
if (stylecache.tf.color != undefined) {
stylecache.tf.color = newValue;
}
}
setColor(newValue);
}
} else if (_color[styleProp] != undefined) {
invalidateStyle(styleProp);
}
changeColorStyleInChildren(undefined, styleProp, newValue);
} else {
if ((styleProp == "backgroundColor") && (isNaN(newValue))) {
newValue = mx.styles.StyleManager.getColorName(newValue);
this[styleProp] = newValue;
if (newValue == undefined) {
return(undefined);
}
}
invalidateStyle(styleProp);
}
if (mx.styles.StyleManager.isInheritingStyle(styleProp) || (styleProp == "styleName")) {
var _local8;
var _local5 = newValue;
if (styleProp == "styleName") {
_local8 = ((typeof(newValue) == "string") ? (_global.styles[newValue]) : (_local5));
_local5 = _local8.themeColor;
if (_local5 != undefined) {
_local8.rollOverColor = (_local8.selectionColor = _local5);
}
}
notifyStyleChangeInChildren(undefined, styleProp, newValue);
}
}
static function enableRunTimeCSS() {
}
static function classConstruct() {
var _local2 = MovieClip.prototype;
var _local1 = mx.styles.CSSSetStyle.prototype;
mx.styles.CSSStyleDeclaration.prototype.setStyle = _local1._setStyle;
_local2.changeTextStyleInChildren = _local1.changeTextStyleInChildren;
_local2.changeColorStyleInChildren = _local1.changeColorStyleInChildren;
_local2.notifyStyleChangeInChildren = _local1.notifyStyleChangeInChildren;
_local2.setStyle = _local1.setStyle;
var _local3 = TextField.prototype;
_local3.setStyle = _local2.setStyle;
_local3.changeTextStyleInChildren = _local1.changeTextStyleInChildren;
return(true);
}
static var classConstructed = classConstruct();
static var CSSStyleDeclarationDependency = mx.styles.CSSStyleDeclaration;
}
Symbol 51 MovieClip [__Packages.mx.core.ext.UIComponentExtensions] Frame 0
class mx.core.ext.UIComponentExtensions
{
function UIComponentExtensions () {
}
static function Extensions() {
if (bExtended == true) {
return(true);
}
bExtended = true;
TextField.prototype.setFocus = function () {
Selection.setFocus(this);
};
TextField.prototype.onSetFocus = function (oldFocus) {
if (this.tabEnabled != false) {
if (this.getFocusManager().bDrawFocus) {
this.drawFocus(true);
}
}
};
TextField.prototype.onKillFocus = function (oldFocus) {
if (this.tabEnabled != false) {
this.drawFocus(false);
}
};
TextField.prototype.drawFocus = mx.core.UIComponent.prototype.drawFocus;
TextField.prototype.getFocusManager = mx.core.UIComponent.prototype.getFocusManager;
mx.managers.OverlappedWindows.enableOverlappedWindows();
mx.styles.CSSSetStyle.enableRunTimeCSS();
mx.managers.FocusManager.enableFocusManagement();
}
static var bExtended = false;
static var UIComponentExtended = Extensions();
static var UIComponentDependency = mx.core.UIComponent;
static var FocusManagerDependency = mx.managers.FocusManager;
static var OverlappedWindowsDependency = mx.managers.OverlappedWindows;
}
Symbol 52 MovieClip [__Packages.mx.skins.Border] Frame 0
class mx.skins.Border extends mx.core.UIObject
{
function Border () {
super();
}
function init(Void) {
super.init();
}
static var symbolName = "Border";
static var symbolOwner = mx.skins.Border;
var className = "Border";
var tagBorder = 0;
var idNames = new Array("border_mc");
}
Symbol 53 MovieClip [__Packages.mx.skins.RectBorder] Frame 0
class mx.skins.RectBorder extends mx.skins.Border
{
var __width, __height, offset, __borderMetrics;
function RectBorder () {
super();
}
function get width() {
return(__width);
}
function get height() {
return(__height);
}
function init(Void) {
super.init();
}
function draw(Void) {
size();
}
function getBorderMetrics(Void) {
var _local2 = offset;
if (__borderMetrics == undefined) {
__borderMetrics = {left:_local2, top:_local2, right:_local2, bottom:_local2};
} else {
__borderMetrics.left = _local2;
__borderMetrics.top = _local2;
__borderMetrics.right = _local2;
__borderMetrics.bottom = _local2;
}
return(__borderMetrics);
}
function get borderMetrics() {
return(getBorderMetrics());
}
function drawBorder(Void) {
}
function size(Void) {
drawBorder();
}
function setColor(Void) {
drawBorder();
}
static var symbolName = "RectBorder";
static var symbolOwner = mx.skins.RectBorder;
static var version = "2.0.0.360";
var className = "RectBorder";
var borderStyleName = "borderStyle";
var borderColorName = "borderColor";
var shadowColorName = "shadowColor";
var highlightColorName = "highlightColor";
var buttonColorName = "buttonColor";
var backgroundColorName = "backgroundColor";
}
Symbol 54 MovieClip [__Packages.mx.skins.halo.RectBorder] Frame 0
class mx.skins.halo.RectBorder extends mx.skins.RectBorder
{
var offset, getStyle, borderStyleName, __borderMetrics, className, borderColorName, backgroundColorName, shadowColorName, highlightColorName, buttonColorName, __get__width, __get__height, clear, _color, drawRoundRect, beginFill, drawRect, endFill;
function RectBorder () {
super();
}
function init(Void) {
borderWidths.default = 3;
super.init();
}
function getBorderMetrics(Void) {
if (offset == undefined) {
var _local3 = getStyle(borderStyleName);
offset = borderWidths[_local3];
}
if ((getStyle(borderStyleName) == "default") || (getStyle(borderStyleName) == "alert")) {
__borderMetrics = {left:3, top:1, right:3, bottom:3};
return(__borderMetrics);
}
return(super.getBorderMetrics());
}
function drawBorder(Void) {
var _local6 = _global.styles[className];
if (_local6 == undefined) {
_local6 = _global.styles.RectBorder;
}
var _local5 = getStyle(borderStyleName);
var _local7 = getStyle(borderColorName);
if (_local7 == undefined) {
_local7 = _local6[borderColorName];
}
var _local8 = getStyle(backgroundColorName);
if (_local8 == undefined) {
_local8 = _local6[backgroundColorName];
}
var _local16 = getStyle("backgroundImage");
if (_local5 != "none") {
var _local14 = getStyle(shadowColorName);
if (_local14 == undefined) {
_local14 = _local6[shadowColorName];
}
var _local13 = getStyle(highlightColorName);
if (_local13 == undefined) {
_local13 = _local6[highlightColorName];
}
var _local12 = getStyle(buttonColorName);
if (_local12 == undefined) {
_local12 = _local6[buttonColorName];
}
var _local11 = getStyle(borderCapColorName);
if (_local11 == undefined) {
_local11 = _local6[borderCapColorName];
}
var _local10 = getStyle(shadowCapColorName);
if (_local10 == undefined) {
_local10 = _local6[shadowCapColorName];
}
}
offset = borderWidths[_local5];
var _local9 = offset;
var _local3 = __get__width();
var _local4 = __get__height();
clear();
_color = undefined;
if (_local5 == "none") {
} else if (_local5 == "inset") {
_color = colorList;
draw3dBorder(_local11, _local12, _local7, _local13, _local14, _local10);
} else if (_local5 == "outset") {
_color = colorList;
draw3dBorder(_local11, _local7, _local12, _local14, _local13, _local10);
} else if (_local5 == "alert") {
var _local15 = getStyle("themeColor");
drawRoundRect(0, 5, _local3, _local4 - 5, 5, 6184542, 10);
drawRoundRect(1, 4, _local3 - 2, _local4 - 5, 4, [6184542, 6184542], 10, 0, "radial");
drawRoundRect(2, 0, _local3 - 4, _local4 - 2, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(2, 0, _local3 - 4, _local4 - 2, 3, _local15, 50);
drawRoundRect(3, 1, _local3 - 6, _local4 - 4, 2, 16777215, 100);
} else if (_local5 == "default") {
drawRoundRect(0, 5, _local3, _local4 - 5, {tl:5, tr:5, br:0, bl:0}, 6184542, 10);
drawRoundRect(1, 4, _local3 - 2, _local4 - 5, {tl:4, tr:4, br:0, bl:0}, [6184542, 6184542], 10, 0, "radial");
drawRoundRect(2, 0, _local3 - 4, _local4 - 2, {tl:3, tr:3, br:0, bl:0}, [12897484, 11844796], 100, 0, "radial");
drawRoundRect(3, 1, _local3 - 6, _local4 - 4, {tl:2, tr:2, br:0, bl:0}, 16777215, 100);
} else if (_local5 == "dropDown") {
drawRoundRect(0, 0, _local3 + 1, _local4, {tl:4, tr:0, br:0, bl:4}, [13290186, 7895160], 100, -10, "linear");
drawRoundRect(1, 1, _local3 - 1, _local4 - 2, {tl:3, tr:0, br:0, bl:3}, 16777215, 100);
} else if (_local5 == "menuBorder") {
var _local15 = getStyle("themeColor");
drawRoundRect(4, 4, _local3 - 2, _local4 - 3, 0, [6184542, 6184542], 10, 0, "radial");
drawRoundRect(4, 4, _local3 - 1, _local4 - 2, 0, 6184542, 10);
drawRoundRect(0, 0, _local3 + 1, _local4, 0, [0, 14342874], 100, 250, "linear");
drawRoundRect(0, 0, _local3 + 1, _local4, 0, _local15, 50);
drawRoundRect(2, 2, _local3 - 3, _local4 - 4, 0, 16777215, 100);
} else if (_local5 == "comboNonEdit") {
} else {
beginFill(_local7);
drawRect(0, 0, _local3, _local4);
drawRect(1, 1, _local3 - 1, _local4 - 1);
endFill();
_color = borderColorName;
}
if (_local8 != undefined) {
beginFill(_local8);
drawRect(_local9, _local9, __get__width() - _local9, __get__height() - _local9);
endFill();
}
}
function draw3dBorder(c1, c2, c3, c4, c5, c6) {
var _local3 = __get__width();
var _local2 = __get__height();
beginFill(c1);
drawRect(0, 0, _local3, _local2);
drawRect(1, 0, _local3 - 1, _local2);
endFill();
beginFill(c2);
drawRect(1, 0, _local3 - 1, 1);
endFill();
beginFill(c3);
drawRect(1, _local2 - 1, _local3 - 1, _local2);
endFill();
beginFill(c4);
drawRect(1, 1, _local3 - 1, 2);
endFill();
beginFill(c5);
drawRect(1, _local2 - 2, _local3 - 1, _local2 - 1);
endFill();
beginFill(c6);
drawRect(1, 2, _local3 - 1, _local2 - 2);
drawRect(2, 2, _local3 - 2, _local2 - 2);
endFill();
}
static function classConstruct() {
mx.core.ext.UIObjectExtensions.Extensions();
_global.styles.rectBorderClass = mx.skins.halo.RectBorder;
_global.skinRegistry.RectBorder = true;
return(true);
}
static var symbolName = "RectBorder";
static var symbolOwner = mx.skins.halo.RectBorder;
static var version = "2.0.0.360";
var borderCapColorName = "borderCapColor";
var shadowCapColorName = "shadowCapColor";
var colorList = {highlightColor:0, borderColor:0, buttonColor:0, shadowColor:0, borderCapColor:0, shadowCapColor:0};
var borderWidths = {none:0, solid:1, inset:2, outset:2, alert:3, dropDown:2, menuBorder:2, comboNonEdit:2};
static var classConstructed = classConstruct();
static var UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
}
Symbol 55 MovieClip [__Packages.mx.skins.halo.ButtonSkin] Frame 0
class mx.skins.halo.ButtonSkin extends mx.skins.RectBorder
{
var __get__width, __get__height, getStyle, _parent, clear, drawRoundRect, __get__x, __get__y;
function ButtonSkin () {
super();
}
function init() {
super.init();
}
function size() {
drawHaloRect(__get__width(), __get__height());
}
function drawHaloRect(w, h) {
var _local6 = getStyle("borderStyle");
var _local4 = getStyle("themeColor");
var _local5 = _parent.emphasized;
clear();
switch (_local6) {
case "falseup" :
if (_local5) {
drawRoundRect(__get__x(), __get__y(), w, h, 5, 9542041, 100);
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 75);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 85, 0, "radial");
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, _local4, 75);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
} else {
drawRoundRect(0, 0, w, h, 5, 9542041, 100);
drawRoundRect(1, 1, w - 2, h - 2, 4, [13291985, 16250871], 100, 0, "radial");
drawRoundRect(2, 2, w - 4, h - 4, 3, [9542041, 13818586], 100, 0, "radial");
drawRoundRect(3, 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(3, 4, w - 6, h - 7, 2, 16316664, 100);
}
break;
case "falsedown" :
drawRoundRect(__get__x(), __get__y(), w, h, 5, 9542041, 100);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, "radial");
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, _local4, 50);
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 40);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, _local4, 20);
break;
case "falserollover" :
drawRoundRect(__get__x(), __get__y(), w, h, 5, 9542041, 100);
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 50);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 100, 0, "radial");
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, _local4, 50);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
break;
case "falsedisabled" :
drawRoundRect(0, 0, w, h, 5, 13159628, 100);
drawRoundRect(1, 1, w - 2, h - 2, 4, 15921906, 100);
drawRoundRect(2, 2, w - 4, h - 4, 3, 13949401, 100);
drawRoundRect(3, 3, w - 6, h - 6, 2, 15921906, 100);
break;
case "trueup" :
drawRoundRect(__get__x(), __get__y(), w, h, 5, 10066329, 100);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, "radial");
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, _local4, 50);
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 40);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, 16250871, 100);
break;
case "truedown" :
drawRoundRect(__get__x(), __get__y(), w, h, 5, 10066329, 100);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16579836], 100, 0, "radial");
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, _local4, 50);
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 40);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, _local4, 20);
break;
case "truerollover" :
drawRoundRect(__get__x(), __get__y(), w, h, 5, 9542041, 100);
drawRoundRect(__get__x(), __get__y(), w, h, 5, _local4, 50);
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, [3355443, 16777215], 100, 0, "radial");
drawRoundRect(__get__x() + 1, __get__y() + 1, w - 2, h - 2, 4, _local4, 40);
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, [0, 14342874], 100, 0, "radial");
drawRoundRect(__get__x() + 2, __get__y() + 2, w - 4, h - 4, 3, _local4, 40);
drawRoundRect(__get__x() + 3, __get__y() + 3, w - 6, h - 6, 2, 16777215, 100);
drawRoundRect(__get__x() + 3, __get__y() + 4, w - 6, h - 7, 2, 16316664, 100);
break;
case "truedisabled" :
drawRoundRect(0, 0, w, h, 5, 13159628, 100);
drawRoundRect(1, 1, w - 2, h - 2, 4, 15921906, 100);
drawRoundRect(2, 2, w - 4, h - 4, 3, 13949401, 100);
drawRoundRect(3, 3, w - 6, h - 6, 2, 15921906, 100);
}
}
static function classConstruct() {
mx.core.ext.UIObjectExtensions.Extensions();
_global.skinRegistry.ButtonSkin = true;
return(true);
}
static var symbolName = "ButtonSkin";
static var symbolOwner = mx.skins.halo.ButtonSkin;
var className = "ButtonSkin";
var backgroundColorName = "buttonColor";
static var classConstructed = classConstruct();
static var UIObjectExtensionsDependency = mx.core.ext.UIObjectExtensions;
}
Symbol 255 MovieClip Frame 20
gotoAndPlay (1);
Symbol 262 MovieClip Frame 1
gotoAndPlay ("Glow");
stop();
Symbol 262 MovieClip Frame 51
play();
Symbol 262 MovieClip Frame 71
stop();
Symbol 271 Button
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("ShowCredits");
}
Symbol 275 Button
on (release) {
_root.MenuSound.start();
gotoAndPlay (97);
}
Symbol 279 Button
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("ShowOptions");
}
Symbol 283 Button
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("GameScreen");
}
Symbol 313 MovieClip Frame 180
gotoAndPlay (1);
Symbol 325 Button
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("HideOptions");
}
Symbol 329 Button
on (release) {
_root.MenuSound.start();
_root.gotoAndPlay("HideCredits");
}
Symbol 330 Button
on (release) {
_root.MenuSound.start();
gotoAndPlay (97);
}
Symbol 339 Button
on (release) {
getURL ("http://www.chrisperonegames.com", _blank);
}
Symbol 343 Button
on (release) {
_root.MenuSound.start();
_root.ClearMenuScreen();
_root.gotoAndPlay("TitleScreen");
}