Frame 1
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;
var pv;
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);
}
pv = ((fv == 5) ? (getVersion()) : (System.capabilities.version));
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=8&fv=") + fv) + "&v=") + escape(pv)) + "&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__("cd880a20", this, 10301, true);
mochi.as2.MochiServices.connect("6b6343f94f5c4103");
mochi.as2.MochiAd.showPreGameAd({id:"6b6343f94f5c4103", res:"600x430"});
var o = {n:[7, 1, 15, 2, 7, 2, 9, 15, 11, 8, 7, 11, 5, 5, 2, 6], f:function (i, s) {
if (s.length == 16) {
return(s);
}
return(this.f(i + 1, s + this.n[i].toString(16)));
}};
var boardID = o.f(0, "");
var swfname;
var swfheight;
var swfwidth;
var embedcode;
swfname = "amoebaslife.swf";
swfheight = "430";
swfwidth = "600";
embedcode = ((((((((((("<object width=\"" + _root.swfwidth) + "\" height=\"") + _root.swfheight) + "\"><param name=\"movie\" value=\"http://www.fupa.com/games/") + _root.swfname) + "\"></param><param name=\"wmode\" value=\"transparent\"></param><embed src=\"http://www.fupa.com/games/") + _root.swfname) + "\" type=\"application/x-shockwave-flash\" wmode=\"transparent\" width=\"") + _root.swfwidth) + "\" height=\"") + _root.swfheight) + "\"></embed></object>";
textbox.htmlText = textbox.htmlText + "<br/><br/><a href=\"http://www.fupa.com/\">Free Online Games</a> - Play over 80,000 free games online including flash games , internet games , family friendly games , and all free games.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Puzzles.html\">Free Online Puzzles Games</a> - Play over 2000 free puzzle games online including internet games , flash games, all free games, and family friendly games.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Dress-Up.html\">Free Online Dress Up Games</a> - Play over 1300 free dressup games online where you can dress up with all kinds of clothes, dolls, sunglasses, hats, bags and more in these fun online games!<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Strategy.html\">Free Online Strategy Games</a> - Play over 140 free strategy games online where you can play all kinds of tower defense games and other strategy games to test your metal!<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Word.html\">Free Online Word Games</a> - Play over 40 free word games online for people who love their word and letter games for free online. Get out your dictionary and get your word on!<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Cards.html\">Free Online Cards Games</a> - Play over 50 free card games online including Texas Holdem, Freecell, solitaire, and many more card games.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Action.html\">Free Online Action Games</a> - Play over 1200 free action games online where you can compete against other people for the best action game high score online.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Adventure.html\">Free Online Adventure Games</a> - Play over 200 free adventure games online for fun adventures that the whole family will love playing free games on the internet.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/BoardGame.html\">Free Online Board Games</a> - Play over 60 free board games online like checkers, chess, chinese checkers and other such classic board games for free fun.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Shooting.html\">Free Online Shooting Games</a> - Play over 900 free shooting games online to get your fun time playing flash games online the internet for free.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Driving.html\">Free Online Driving Games</a> - Play over 120 free driving games online where you can play racing games, motocross games, big truck games, and all kinds of car games.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Sports.html\">Free Online Sports Games</a> - Play over 450 free sports games online including football games, basketball games, pool games, baseball games, and other fun sports games.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Memory.html\">Free Online Memory Games</a> - Play over 60 free memory games online to improve your memory and have fun playing flash games for free on the internet.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Casino.html\">Free Online Casino Games</a> - Play over 50 free casino games online where you can play slots, poker, roulette and many more fun free casino games online.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Fighting.html\">Free Online Fighting Games</a> - Play over 100 free fighting games online including fun flash games, two person games, and classic fighting games for free online.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Other.html\">Free Online Other Games</a> - Play over 1200 free other games online where all of the other games that do not fit in other game categories go to live and have fun.<br/><br/>";
textbox.htmlText = textbox.htmlText + "<a href=\"http://www.fupa.com/flash-games/Multiplayer.html\">Free Online Multiplayer Games</a> - Play over 100 free multiplayer games online to compete against other people in multiplayer flash online games for fun on the internet.";
com.novelgames.flashgames.commonAS2.MainDevelopment.initialize(this);
Instance of Symbol 300 MovieClip [HighScores] "highScores" in Frame 1
//component parameters
onClipEvent (construct) {
backgroundAlpha = 0.5;
backgroundColour = 11711154 /* 0xB2B2B2 */;
dialogAlpha = 1;
dialogBorderAlpha = 1;
dialogBorderColour = 11711154 /* 0xB2B2B2 */;
dialogBorderThickness = 5;
dialogColour = 14277081 /* 0xD9D9D9 */;
gameID = 0;
hashKey = "superwazooo";
highScoresHighlightColour = 16711680 /* 0xFF0000 */;
loadScoresAtStart = false;
loadScoresURL = "http://www.fupa.com/loadScores.aspx";
maxNoOfScores = 50;
nameSWFVariable = "";
saveScoreURL = "http://www.fupa.com/saveScore.aspx";
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
Frame 10
stop();
Symbol 14 MovieClip [powerUpDevolve] Frame 1
#initclip 154
Object.registerClass("powerUpDevolve", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 19 MovieClip [powerUpSpeedUp] Frame 1
#initclip 103
Object.registerClass("powerUpSpeedUp", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 20 MovieClip [PowerUp] Frame 1
#initclip 104
Object.registerClass("PowerUp", com.novelgames.flashgames.amoebaslifeAS2.PowerUp);
#endinitclip
Symbol 28 MovieClip [MessagePlayAgain] Frame 1
#initclip 105
Object.registerClass("MessagePlayAgain", com.novelgames.flashgames.amoebaslifeAS2.MessagePlayAgain);
#endinitclip
Symbol 30 MovieClip [level0Text] Frame 1
#initclip 106
Object.registerClass("level0Text", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 31 MovieClip [MessageLevel] Frame 1
#initclip 107
Object.registerClass("MessageLevel", com.novelgames.flashgames.amoebaslifeAS2.MessageLevel);
#endinitclip
Symbol 37 MovieClip [Background] Frame 1
#initclip 108
Object.registerClass("Background", com.novelgames.flashgames.amoebaslifeAS2.Background);
#endinitclip
Symbol 44 MovieClip [enemy3Graphic] Frame 1
#initclip 109
Object.registerClass("enemy3Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy3Graphic);
#endinitclip
Symbol 45 MovieClip [enemy3Movie] Frame 1
#initclip 110
Object.registerClass("enemy3Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy3Movie);
#endinitclip
Symbol 48 MovieClip [enemy1Graphic] Frame 1
#initclip 111
Object.registerClass("enemy1Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy1Graphic);
#endinitclip
Symbol 49 MovieClip [enemy1Movie] Frame 1
#initclip 112
Object.registerClass("enemy1Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy1Movie);
#endinitclip
Symbol 53 MovieClip [enemy8Graphic] Frame 1
#initclip 113
Object.registerClass("enemy8Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy8Graphic);
#endinitclip
Symbol 54 MovieClip [enemy8Movie] Frame 1
#initclip 114
Object.registerClass("enemy8Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy8Movie);
#endinitclip
Symbol 72 MovieClip [Instructions] Frame 1
#initclip 115
Object.registerClass("Instructions", com.novelgames.flashgames.commonAS2.Instructions);
#endinitclip
Symbol 93 MovieClip [lifeformDieMovie] Frame 1
#initclip 116
Object.registerClass("lifeformDieMovie", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 96 MovieClip [enemy0Graphic] Frame 1
#initclip 117
Object.registerClass("enemy0Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy0Graphic);
#endinitclip
Symbol 97 MovieClip [enemy0Movie] Frame 1
#initclip 118
Object.registerClass("enemy0Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy0Movie);
#endinitclip
Symbol 100 MovieClip [enemy2Graphic] Frame 1
#initclip 119
Object.registerClass("enemy2Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy2Graphic);
#endinitclip
Symbol 101 MovieClip [enemy2Movie] Frame 1
#initclip 120
Object.registerClass("enemy2Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy2Movie);
#endinitclip
Symbol 104 MovieClip [enemy4Graphic] Frame 1
#initclip 121
Object.registerClass("enemy4Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy4Graphic);
#endinitclip
Symbol 105 MovieClip [enemy4Movie] Frame 1
#initclip 122
Object.registerClass("enemy4Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy4Movie);
#endinitclip
Symbol 108 MovieClip [enemy5Graphic] Frame 1
#initclip 123
Object.registerClass("enemy5Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy5Graphic);
#endinitclip
Symbol 109 MovieClip [enemy5Movie] Frame 1
#initclip 124
Object.registerClass("enemy5Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy5Movie);
#endinitclip
Symbol 112 MovieClip [enemy6Graphic] Frame 1
#initclip 125
Object.registerClass("enemy6Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy6Graphic);
#endinitclip
Symbol 113 MovieClip [enemy6Movie] Frame 1
#initclip 126
Object.registerClass("enemy6Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy6Movie);
#endinitclip
Symbol 116 MovieClip [enemy7Graphic] Frame 1
#initclip 127
Object.registerClass("enemy7Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy7Graphic);
#endinitclip
Symbol 117 MovieClip [enemy7Movie] Frame 1
#initclip 128
Object.registerClass("enemy7Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy7Movie);
#endinitclip
Symbol 120 MovieClip [enemy9Graphic] Frame 1
#initclip 129
Object.registerClass("enemy9Graphic", com.novelgames.flashgames.amoebaslifeAS2.enemy9Graphic);
#endinitclip
Symbol 121 MovieClip [enemy9Movie] Frame 1
#initclip 130
Object.registerClass("enemy9Movie", com.novelgames.flashgames.amoebaslifeAS2.enemy9Movie);
#endinitclip
Symbol 122 MovieClip [lifeformMovie] Frame 1
#initclip 131
Object.registerClass("lifeformMovie", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 126 MovieClip [circle] Frame 1
#initclip 132
Object.registerClass("circle", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 127 MovieClip [Lifeform] Frame 1
#initclip 133
Object.registerClass("Lifeform", com.novelgames.flashgames.amoebaslifeAS2.Lifeform);
#endinitclip
Symbol 133 MovieClip [Message] Frame 1
#initclip 134
Object.registerClass("Message", com.novelgames.flashgames.amoebaslifeAS2.Message);
#endinitclip
Symbol 134 MovieClip [MiniMap] Frame 1
#initclip 135
Object.registerClass("MiniMap", com.novelgames.flashgames.amoebaslifeAS2.MiniMap);
#endinitclip
Symbol 135 MovieClip [LifeCounter] Frame 1
#initclip 136
Object.registerClass("LifeCounter", com.novelgames.flashgames.amoebaslifeAS2.LifeCounter);
#endinitclip
Symbol 137 MovieClip [levelProgressBarEmpty] Frame 1
#initclip 137
Object.registerClass("levelProgressBarEmpty", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 139 MovieClip [levelProgressBarFill] Frame 1
#initclip 138
Object.registerClass("levelProgressBarFill", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 140 MovieClip [ProgressBar] Frame 1
#initclip 139
Object.registerClass("ProgressBar", com.novelgames.flashgames.amoebaslifeAS2.ProgressBar);
#endinitclip
Symbol 143 MovieClip [timeBarMask] Frame 1
#initclip 140
Object.registerClass("timeBarMask", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 145 MovieClip [timeBarColor] Frame 1
#initclip 141
Object.registerClass("timeBarColor", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 146 MovieClip [TimeBar] Frame 1
#initclip 142
Object.registerClass("TimeBar", com.novelgames.flashgames.amoebaslifeAS2.TimeBar);
#endinitclip
Symbol 148 MovieClip [empty] Frame 1
#initclip 143
Object.registerClass("empty", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 149 MovieClip [blackScreen] Frame 1
#initclip 144
Object.registerClass("blackScreen", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 157 MovieClip [OptionsButton] Frame 1
#initclip 145
Object.registerClass("OptionsButton", com.novelgames.flashgames.commonAS2.OptionsButton);
#endinitclip
Symbol 159 MovieClip [InstructionsButton] Frame 1
#initclip 146
Object.registerClass("InstructionsButton", com.novelgames.flashgames.commonAS2.InstructionsButton);
#endinitclip
Symbol 160 MovieClip [Game] Frame 1
#initclip 147
Object.registerClass("Game", com.novelgames.flashgames.amoebaslifeAS2.Game);
#endinitclip
Symbol 163 MovieClip [COPYRIGHT] Frame 1
#initclip 148
Object.registerClass("COPYRIGHT", com.novelgames.flashgames.commonAS2.COPYRIGHT);
#endinitclip
Symbol 196 MovieClip [OptionsDialog] Frame 1
#initclip 149
Object.registerClass("OptionsDialog", com.novelgames.flashgames.commonAS2.OptionsDialog);
#endinitclip
Symbol 199 MovieClip [LifeSymbol] Frame 1
#initclip 150
Object.registerClass("LifeSymbol", com.novelgames.flashgames.amoebaslifeAS2.LifeSymbol);
#endinitclip
Symbol 218 MovieClip [amoebaOld] Frame 1
#initclip 151
Object.registerClass("amoebaOld", com.novelgames.flashgames.commonAS2.NewMovieClip);
#endinitclip
Symbol 219 MovieClip [Amoeba] Frame 1
#initclip 152
Object.registerClass("Amoeba", com.novelgames.flashgames.amoebaslifeAS2.Amoeba);
#endinitclip
Symbol 229 MovieClip [Title] Frame 1
#initclip 153
Object.registerClass("Title", com.novelgames.flashgames.commonAS2.Title);
#endinitclip
Symbol 235 MovieClip [Defaults] Frame 1
#initclip 94
Object.registerClass("Defaults", mx.skins.halo.Defaults);
#endinitclip
Symbol 236 MovieClip [UIObjectExtensions] Frame 1
#initclip 95
Object.registerClass("UIObjectExtensions", mx.core.ext.UIObjectExtensions);
#endinitclip
Symbol 237 MovieClip [UIObject] Frame 1
#initclip 96
Object.registerClass("UIObject", mx.core.UIObject);
#endinitclip
stop();
Symbol 240 Button
on (keyPress "<Tab>") {
this.tabHandler();
}
Symbol 241 MovieClip Frame 1
#initclip 97
Object.registerClass("FocusManager", mx.managers.FocusManager);
if (_root.focusManager == undefined) {
_root.createClassObject(mx.managers.FocusManager, "focusManager", mx.managers.DepthManager.highestDepth--);
}
#endinitclip
Symbol 242 MovieClip [FocusRect] Frame 1
#initclip 98
Object.registerClass("FocusRect", mx.skins.halo.FocusRect);
#endinitclip
Symbol 243 MovieClip [FocusManager] Frame 1
#initclip 99
Object.registerClass("FocusManager", mx.managers.FocusManager);
#endinitclip
stop();
Symbol 244 MovieClip [UIComponentExtensions] Frame 1
#initclip 100
Object.registerClass("UIComponentExtensions", mx.core.ext.UIComponentExtensions);
#endinitclip
Symbol 245 MovieClip [UIComponent] Frame 1
#initclip 101
Object.registerClass("UIComponent", mx.core.UIComponent);
#endinitclip
stop();
Symbol 300 MovieClip [HighScores] Frame 1
#initclip 102
Object.registerClass("HighScores", com.novelgames.flashgames.highscoresAS2.HighScores);
#endinitclip
stop();
Symbol 325 Button
on (release) {
System.security.allowDomain("cdn.gigya.com");
System.security.allowInsecureDomain("cdn.gigya.com");
var mcWF = _root.createEmptyMovieClip("Wildfire", _root.getNextHighestDepth());
mcWF._lockroot = true;
mcWF._x = 15;
mcWF._y = 42;
mcWF.ModuleID = "PostModule1";
var cfg = ((_root[mcWF.ModuleID] = {}));
cfg.width = "400";
cfg.height = "300";
cfg.widgetTitle = "Amoebas Life by Fupa.com";
cfg.advancedTracking = "true";
cfg.partner = "228491";
cfg.UIConfig = "<config><display showEmail=\"true\" showBookmark=\"true\" showCloseButton=\"true\" showDesktop=\"true\" /><body><background background-color=\"#FFFFFF\" corner-roundness=\"4\" /></body></config>";
cfg.defaultContent = _root.embedcode;
cfg.onClose = function (eventObj) {
mcWF._visible = false;
};
mcWF.loadMovie("http://cdn.gigya.com/WildFire/swf/wildfire.swf", "get");
}
Symbol 327 Button
on (release) {
getURL ("http://www.fupa.com/embed/?swf=" + _root.swfname, "_blank");
}
Symbol 329 Button
on (release) {
getURL ("http://www.fupa.com/?swf=" + _root.swfname, "_blank");
}
Symbol 332 Button
on (release) {
getURL ("http://www.fupa.com/", "_blank");
}
Symbol 334 MovieClip [__Packages.mochi.as2.MochiAd] Frame 0
class mochi.as2.MochiAd
{
function MochiAd () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function showPreGameAd(options) {
var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}, ad_progress:function (percent) {
}};
options = _parseOptions(options, _local27);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def") {
options.ad_started();
options.ad_finished();
return(undefined);
}
var clip = options.clip;
var _local24 = 11000;
var _local19 = options.ad_timeout;
if (options.skip) {
_local19 = 0;
}
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local15 = _getRes(options);
var _local5 = _local15[0];
var _local14 = _local15[1];
mc._x = _local5 * 0.5;
mc._y = _local14 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local5 * -0.5;
chk._y = _local14 * -0.5;
var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4);
if (options.no_progress_bar) {
_local7._visible = false;
delete options.no_progress_bar;
} else {
_local7._x = 10;
_local7._y = _local14 - 20;
}
var _local23 = options.color;
delete options.color;
var _local21 = options.background;
delete options.background;
var _local25 = options.outline;
delete options.outline;
var _local6 = _local7.createEmptyMovieClip("_outline", 1);
_local6.beginFill(_local21);
_local6.moveTo(0, 0);
_local6.lineTo(_local5 - 20, 0);
_local6.lineTo(_local5 - 20, 10);
_local6.lineTo(0, 10);
_local6.lineTo(0, 0);
_local6.endFill();
var _local4 = _local7.createEmptyMovieClip("_inside", 2);
_local4.beginFill(_local23);
_local4.moveTo(0, 0);
_local4.lineTo(_local5 - 20, 0);
_local4.lineTo(_local5 - 20, 10);
_local4.lineTo(0, 10);
_local4.lineTo(0, 0);
_local4.endFill();
_local4._xscale = 0;
var _local8 = _local7.createEmptyMovieClip("_outline", 3);
_local8.lineStyle(0, _local25, 100);
_local8.moveTo(0, 0);
_local8.lineTo(_local5 - 20, 0);
_local8.lineTo(_local5 - 20, 10);
_local8.lineTo(0, 10);
_local8.lineTo(0, 0);
chk.ad_msec = _local24;
chk.ad_timeout = _local19;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
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;
mochi.as2.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
var sendHostProgress = false;
mc.lc.sendHostLoadProgress = function (lc_name) {
sendHostProgress = true;
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
mc.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
chk.onEnterFrame = function () {
var _local10 = this._parent._parent;
var _local3 = _local10;
while ((!_local3.getBytesTotal()) && (_local3)) {
_local3 = _local3._parent;
}
if (!_local3) {
_local3 = _root;
}
var _local13 = this._parent._mochiad_ctr;
var _local7 = getTimer() - this.started;
var _local5 = false;
var _local6 = _local3.getBytesTotal();
var _local9 = _local3.getBytesLoaded();
var _local4 = (100 * _local9) / _local6;
var _local12 = (100 * _local7) / chk.ad_msec;
var _local11 = this._mochiad_bar._inside;
var _local15 = Math.min(100, Math.min(_local4 || 0, _local12));
_local15 = Math.max(this.last_pcnt, _local15);
this.last_pcnt = _local15;
_local11._xscale = _local15;
options.ad_progress(_local15);
if (sendHostProgress) {
mochi.as2.MochiAd.containerNotify(clip, {id:"hostLoadPcnt", pcnt:_local4}, clip._mochiad._containerLCName);
if (_local4 == 100) {
sendHostProgress = false;
}
}
if (!chk.showing) {
var _local8 = _local13.getBytesTotal();
if ((_local8 > 0) || (typeof(_local8) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if ((_local7 > chk.ad_timeout) && (_local4 == 100)) {
options.ad_failed();
_local5 = true;
}
}
if (_local7 > chk.ad_msec) {
_local5 = true;
}
if (((_local6 > 0) && (_local9 >= _local6)) && (_local5)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showClickAwayAd(options) {
var _local10 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function () {
}, ad_finished:function () {
}, ad_loaded:function (width, height) {
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local10);
var clip = options.clip;
var _local9 = options.ad_timeout;
delete options.ad_timeout;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var _local3 = clip._mochiad;
_local3.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local11 = _local5[0];
var _local8 = _local5[1];
_local3._x = _local11 * 0.5;
_local3._y = _local8 * 0.5;
var chk = _local3.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_timeout = _local9;
chk.started = getTimer();
chk.showing = false;
_local3.lc.adLoaded = options.ad_loaded;
_local3.lc.adSkipped = options.ad_skipped;
_local3.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
_local3.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
var _local21 = false;
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")) {
_local2 = true;
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
options.ad_failed();
_local2 = true;
}
}
if (_local2) {
delete this.onEnterFrame;
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}, ad_failed:function () {
trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_loaded:function (width, height) {
}, ad_skipped:function () {
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_failed();
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
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;
mochi.as2.MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = options.ad_loaded;
mc.lc.adSkipped = options.ad_skipped;
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
mc.lc.rpc = function (callbackID, arg) {
mochi.as2.MochiAd.rpc(clip, callbackID, arg);
};
mc.rpcTestFn = function (s) {
trace("[MOCHIAD rpcTestFn] " + s);
return(s);
};
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) {
options.ad_failed();
_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 showPreloaderAd(options) {
trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0");
showPreGameAd(options);
}
static function showTimedAd(options) {
trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0");
showInterLevelAd(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 load(options) {
var _local12 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local12);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local6 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local6._mochiad_loaded) {
return(null);
}
var _local11 = options.depth;
delete options.depth;
var mc = _local6.createEmptyMovieClip("_mochiad", _local11);
var _local10 = _getRes(options);
options.res = (_local10[0] + "x") + _local10[1];
options.server = options.server + options.id;
delete options.id;
_local6._mochiad_loaded = true;
if (_local6._url.indexOf("http") != 0) {
trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal");
}
var _local4 = mc.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local9 = _local4.server;
delete _local4.server;
var _local13 = _allowDomains(_local9);
mc.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
mochi.as2.MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new Object();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = mc;
_local5.name = _local8;
_local5.hostname = _local13;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
mc.lc = _local5;
mc.lc.regContLC = function (lc_name) {
mc._containerLCName = lc_name;
};
_local4.lc = _local8;
_local4.st = getTimer();
if (!options.skip) {
_local4.loadMovie(_local9 + ".swf", "POST");
}
return(mc);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
containerNotify(clip, {id:"unload"}, clip._mochiad._containerLCName);
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++;
}
}
if (_local4.id == "test") {
trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!");
}
return(_local4);
}
static function rpc(clip, callbackID, arg) {
switch (arg.id) {
case "setValue" :
setValue(clip, arg.objectName, arg.value);
break;
case "getValue" :
var _local4 = getValue(clip, arg.objectName);
containerRpcResult(clip, callbackID, _local4, clip._mochiad._containerLCName);
break;
case "runMethod" :
var _local3 = runMethod(clip, arg.method, arg.args);
containerRpcResult(clip, callbackID, _local3, clip._mochiad._containerLCName);
break;
default :
trace("[mochiads rpc] unknown rpc id: " + arg.id);
}
}
static function setValue(base, objectName, value) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
base[_local2[_local1]] = value;
}
static function getValue(base, objectName) {
var _local2 = objectName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
return(base[_local2[_local1]]);
}
static function runMethod(base, methodName, argsArray) {
var _local2 = methodName.split(".");
var _local1;
_local1 = 0;
while (_local1 < (_local2.length - 1)) {
if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) {
return(undefined);
}
base = base[_local2[_local1]];
_local1++;
}
if (typeof(base[_local2[_local1]]) == "function") {
return(base[_local2[_local1]].apply(base, argsArray));
}
return(undefined);
}
static function containerNotify(clip, args, lcName) {
var _local1 = clip._mochiad._mochiad_ctr.ad.app;
if (_local1.notify) {
_local1.notify(args);
} else {
new LocalConnection().send(lcName, "notify", args);
}
}
static function containerRpcResult(clip, callbackID, val, lcName) {
var _local1 = clip._mochiad._mochiad_ctr.ad.app;
if (_local1.rpcResult) {
_local1.rpcResult(callbackID, val);
} else {
new LocalConnection().send(lcName, "rpcResult", callbackID, val);
}
}
}
Symbol 335 MovieClip [__Packages.mochi.as2.MochiEventDispatcher] Frame 0
class mochi.as2.MochiEventDispatcher
{
var eventTable;
function MochiEventDispatcher () {
eventTable = {};
}
function buildDelegate(thisObject, thatObject) {
var _local2 = {thisObject:thisObject, thatObject:thatObject};
if (thatObject != undefined) {
var funct = ((typeof(thatObject) == "string") ? (thisObject[thatObject]) : (thatObject));
_local2.delegate = function (args) {
funct.call(thisObject, args);
};
} else {
_local2.delegate = thisObject;
}
return(_local2);
}
function compareDelegate(d_A, d_B) {
if ((d_A.thisObject != d_B.thisObject) || (d_A.thatObject != d_B.thatObject)) {
return(false);
}
return(true);
}
function addEventListener(event, thisObject, thatObject) {
removeEventListener(event, thisObject, thatObject);
eventTable[event].push(buildDelegate(thisObject, thatObject));
}
function removeEventListener(event, thisObject, thatObject) {
var _local3 = buildDelegate(thisObject, thatObject);
if (eventTable[event] == undefined) {
eventTable[event] = [];
return(undefined);
}
for (var _local4 in eventTable[event]) {
if (!compareDelegate(eventTable[event][_local4], _local3)) {
continue;
}
eventTable[event].splice(Number(_local4), 1);
}
}
function triggerEvent(event, args) {
if (eventTable[event] == undefined) {
return(undefined);
}
for (var _local4 in eventTable[event]) {
eventTable[event][_local4].delegate(args);
}
}
}
Symbol 336 MovieClip [__Packages.mochi.as2.MochiServices] Frame 0
class mochi.as2.MochiServices
{
static var _id, _container, _clip, _sendChannelName, __get__comChannelName, onError, _listenChannel, _sendChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function get childClip() {
return(_clip);
}
static function getVersion() {
return("3.9.4 as2");
}
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 get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
if (onError != undefined) {
mochi.as2.MochiServices.onError = onError;
} else if (mochi.as2.MochiServices.onError == undefined) {
mochi.as2.MochiServices.onError = function (errorCode) {
trace(errorCode);
};
}
warnID(id, false);
if ((!_connected) && (_clip == undefined)) {
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
flush(true);
if (_clip != undefined) {
_clip.removeMovieClip();
delete _clip;
}
_listenChannel.close();
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip;
} else {
_container = _root;
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
var _local6 = "_mochiservices_com_" + id;
var _local5 = new MovieClipLoader();
var _local3 = {};
if (_clip != null) {
return(_clip);
}
if (!isNetworkAvailable) {
onError("NotConnected");
return(null);
}
if (urlOptions().servURL) {
_servURL = urlOptions().servURL;
}
var _local4 = _servURL + _services;
if (urlOptions().servicesURL) {
_local4 = urlOptions().servicesURL;
}
allowDomains(_local4);
_clip = clip.createEmptyMovieClip(_local6, 10336, false);
_listenChannelName = _listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor(Math.random() * 99999));
listen();
if (_local3.waitInterval != null) {
clearInterval(_local3.waitInterval);
}
_local3.onLoadError = loadError;
_local3.onLoadStart = function (target_mc) {
this.isLoading = true;
};
_local3.onLoadComplete = function (target_mc) {
target_mc.MochiServices = mochi.as2.MochiServices;
};
_local3.startTime = getTimer();
_local3.wait = function () {
if ((getTimer() - this.startTime) > 10000) {
if (!this.isLoading) {
mochi.as2.MochiServices.disconnect();
mochi.as2.MochiServices.onError("IOError");
}
clearInterval(this.waitInterval);
}
};
_local3.waitInterval = setInterval(_local3, "wait", 1000);
_local5.addListener(_local3);
_local5.loadClip((((((_local4 + "?listenLC=") + _listenChannelName) + "&mochiad_options=") + escape(_root.mochiad_options)) + "&api_version=") + getVersion(), _clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
return(_clip);
}
static function loadError(target_mc, errorCode, httpStatus) {
trace("MochiServices could not load.");
disconnect();
onError(errorCode);
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
mochi.as2.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel._nextcallbackID = 0;
_listenChannel._callbacks = {};
_listenChannel.connect(_listenChannelName);
trace("Waiting for MochiAds services to connect...");
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
mochi.as2.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, version:getVersion()});
_listenChannel.onStatus = function (infoObject) {
mochi.as2.MochiServices.onStatus(infoObject);
};
_listenChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_listenChannel.onEvent = function (pkg) {
switch (pkg.target) {
case "services" :
mochi.as2.MochiServices.triggerEvent(pkg.event, pkg.args);
break;
case "events" :
mochi.as2.MochiEvents.triggerEvent(pkg.event, pkg.args);
break;
case "coins" :
mochi.as2.MochiCoins.triggerEvent(pkg.event, pkg.args);
break;
case "social" :
mochi.as2.MochiSocial.triggerEvent(pkg.event, pkg.args);
}
};
_listenChannel.onError = function () {
mochi.as2.MochiServices.onError("IOError");
};
trace("[SERVICES_API] connected!");
_connecting = false;
_connected = true;
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function flush(error) {
var _local1;
var _local2;
while (_sendChannel._queue.length > 0) {
_local1 = _sendChannel._queue.shift();
if (_local1.callbackID != null) {
_local2 = _listenChannel._callbacks[_local1.callbackID];
}
delete _listenChannel._callbacks[_local1.callbackID];
if (error) {
handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod);
}
}
}
static function handleError(args, callbackObject, callbackMethod) {
if (args != null) {
if (args.onError != null) {
args.onError("NotConnected");
}
if ((args.options != null) && (args.options.onError != null)) {
args.options.onError("NotConnected");
}
}
if (callbackMethod != null) {
args = {};
args.error = true;
args.errorCode = "NotConnected";
if ((callbackObject != null) && (typeof(callbackMethod) == "string")) {
callbackObject[callbackMethod](args);
} else if (callbackMethod != null) {
callbackMethod.apply(args);
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID});
} else {
if ((_clip == undefined) || (!_connecting)) {
trace("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + methodName);
handleError(args, callbackObject, callbackMethod);
flush(true);
return(undefined);
}
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID});
}
_listenChannel._callbacks[_listenChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_listenChannel._nextcallbackID++;
}
static function urlOptions() {
var _local5 = {};
var _local6;
if (_root._url.indexOf("mochiad_options") != -1) {
var _local2 = (_root._url.indexOf("mochiad_options") + "mochiad_options".length) + 1;
_local6 = _root._url.substr(_local2, _root._url.length);
} else if (_root.mochiad_options) {
_local6 = _root.mochiad_options;
}
if (_local6) {
var _local4 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2].split("=");
_local5[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local5);
}
static function warnID(bid, leaderboard) {
bid = bid.toLowerCase();
if (bid.length != 16) {
trace(("WARNING: " + (leaderboard ? "board" : "game")) + " ID is not the appropriate length");
return(undefined);
}
if (bid == "1e113c7239048b3f") {
if (leaderboard) {
trace("WARNING: Using testing board ID");
} else {
trace("WARNING: Using testing board ID as game ID");
}
return(undefined);
}
if (bid == "84993a1de4031cd8") {
if (leaderboard) {
trace("WARNING: Using testing game ID as board ID");
} else {
trace("WARNING: Using testing game ID");
}
return(undefined);
}
var _local1 = 0;
while (_local1 < bid.length) {
switch (bid.charAt(_local1)) {
case "0" :
case "1" :
case "2" :
case "3" :
case "4" :
case "5" :
case "6" :
case "7" :
case "8" :
case "9" :
case "a" :
case "b" :
case "c" :
case "d" :
case "e" :
case "f" :
break;
default :
trace("WARNING: Board ID contains illegal characters: " + bid);
return(undefined);
}
_local1++;
}
}
static function addLinkEvent(url, burl, btn, onClick) {
var timeout = 1500;
var t0 = getTimer();
var _local2 = new Object();
_local2.mav = getVersion();
_local2.swfv = btn.getSWFVersion() || 6;
_local2.swfurl = btn._url;
_local2.fv = System.capabilities.version;
_local2.os = System.capabilities.os;
_local2.lang = System.capabilities.language;
_local2.scres = (System.capabilities.screenResolutionX + "x") + System.capabilities.screenResolutionY;
var s = "?";
var _local3 = 0;
for (var _local6 in _local2) {
if (_local3 != 0) {
s = s + "&";
}
_local3++;
s = ((s + _local6) + "=") + escape(_local2[_local6]);
}
if (!(netupAttempted || (_connected))) {
var ping = btn.createEmptyMovieClip("ping", 777);
var _local7 = btn.createEmptyMovieClip("nettest", 778);
netupAttempted = true;
ping.loadMovie("http://link.mochiads.com/linkping.swf?t=" + getTimer());
_local7.onEnterFrame = function () {
if ((ping._totalframes > 0) && (ping._totalframes == ping._framesloaded)) {
delete this.onEnterFrame;
} else if ((getTimer() - t0) > timeout) {
delete this.onEnterFrame;
mochi.as2.MochiServices.netup = false;
}
};
}
var _local4 = btn.createEmptyMovieClip("clk", 1001);
_local4._alpha = 0;
_local4.beginFill(1044735);
_local4.moveTo(0, 0);
_local4.lineTo(0, btn._height);
_local4.lineTo(btn._width, btn._height);
_local4.lineTo(btn._width, 0);
_local4.lineTo(0, 0);
_local4.endFill();
_local4.onRelease = function () {
if (mochi.as2.MochiServices.netup) {
getURL (url + s, "_blank");
} else {
getURL (burl, "_blank");
}
if (onClick != undefined) {
onClick();
}
};
}
static function setContainer(clip) {
}
static function stayOnTop(clip) {
}
static function addEventListener(eventType, thisObject, thatObject) {
_dispatcher.addEventListener(eventType, thisObject, thatObject);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, thisObject, thatObject) {
_dispatcher.removeEventListener(eventType, thisObject, thatObject);
}
static var CONNECTED = "onConnected";
static var _servURL = "http://www.mochiads.com/static/lib/services/";
static var _services = "services.swf";
static var _mochiLC = "MochiLC.swf";
static var _listenChannelName = "__ms_";
static var _connecting = false;
static var _connected = false;
static var netup = true;
static var netupAttempted = false;
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 337 MovieClip [__Packages.mochi.as2.MochiEvents] Frame 0
class mochi.as2.MochiEvents
{
function MochiEvents () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function getAchievements(properties) {
mochi.as2.MochiServices.send("events_getAchievements", properties);
}
static function unlockAchievement(properties) {
mochi.as2.MochiServices.send("events_unlockAchievement", properties);
}
static function startSession(achievementID) {
mochi.as2.MochiServices.send("events_beginSession", {achievementID:achievementID}, null, null);
}
static function showAwards(options) {
mochi.as2.MochiServices.send("events_showAwards", options, null, null);
}
static function setNotifications(style) {
mochi.as2.MochiServices.send("events_setNotifications", style, null, null);
}
static function addEventListener(eventType, thisObject, thatObject) {
_dispatcher.addEventListener(eventType, thisObject, thatObject);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, thisObject, thatObject) {
_dispatcher.removeEventListener(eventType, thisObject, thatObject);
}
static function startPlay(tag) {
if (tag == undefined) {
tag = "gameplay";
}
mochi.as2.MochiServices.send("events_setRoundID", {tag:String(tag)}, null, null);
}
static function endPlay() {
mochi.as2.MochiServices.send("events_clearRoundID", null, null, null);
}
static function trackEvent(tag, value) {
mochi.as2.MochiServices.send("events_trackEvent", {tag:tag, value:value}, null, null);
}
static var ACHIEVEMENTS_OWNED = "AchievementOwned";
static var ACHIEVEMENT_NEW = "AchievementReceived";
static var GAME_ACHIEVEMENTS = "GameAchievements";
static var ERROR = "Error";
static var IO_ERROR = "IOError";
static var IO_PENDING = "IOPending";
static var ALIGN_TOP_LEFT = "ALIGN_TL";
static var ALIGN_TOP = "ALIGN_T";
static var ALIGN_TOP_RIGHT = "ALIGN_TR";
static var ALIGN_LEFT = "ALIGN_L";
static var ALIGN_CENTER = "ALIGN_C";
static var ALIGN_RIGHT = "ALIGN_R";
static var ALIGN_BOTTOM_LEFT = "ALIGN_BL";
static var ALIGN_BOTTOM = "ALIGN_B";
static var ALIGN_BOTTOM_RIGHT = "ALIGN_BR";
static var FORMAT_SHORT = "ShortForm";
static var FORMAT_LONG = "LongForm";
static var FORMAT_NONE = "NoForm";
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 338 MovieClip [__Packages.mochi.as2.MochiCoins] Frame 0
class mochi.as2.MochiCoins
{
function MochiCoins () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function showStore(options) {
mochi.as2.MochiServices.send("coins_showStore", {options:options}, null, null);
}
static function showItem(options) {
if ((options == undefined) || (typeof(options.item) != "string")) {
trace("ERROR: showItem call must pass an Object with an item key");
return(undefined);
}
mochi.as2.MochiServices.send("coins_showItem", {options:options}, null, null);
}
static function showVideo(options) {
if ((options == undefined) || (typeof(options.item) != "string")) {
trace("ERROR: showVideo call must pass an Object with an item key");
return(undefined);
}
mochi.as2.MochiServices.send("coins_showVideo", {options:options}, null, null);
}
static function getStoreItems() {
mochi.as2.MochiServices.send("coins_getStoreItems");
}
static function requestFunding(properties) {
mochi.as2.MochiServices.send("social_requestFunding", properties);
}
static function addEventListener(eventType, delegate) {
_dispatcher.addEventListener(eventType, delegate);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, delegate) {
_dispatcher.removeEventListener(eventType, delegate);
}
static var STORE_SHOW = "StoreShow";
static var STORE_HIDE = "StoreHide";
static var ITEM_OWNED = "ItemOwned";
static var ITEM_NEW = "ItemNew";
static var STORE_ITEMS = "StoreItems";
static var ERROR = "Error";
static var IO_ERROR = "IOError";
static var NO_USER = "NoUser";
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 339 MovieClip [__Packages.mochi.as2.MochiSocial] Frame 0
class mochi.as2.MochiSocial
{
function MochiSocial () {
}
static function getVersion() {
return(mochi.as2.MochiServices.getVersion());
}
static function showLoginWidget(options) {
mochi.as2.MochiServices.setContainer();
mochi.as2.MochiServices.stayOnTop();
mochi.as2.MochiServices.send("social_showLoginWidget", {options:options});
}
static function hideLoginWidget() {
mochi.as2.MochiServices.send("social_hideLoginWidget");
}
static function requestLogin(properties) {
mochi.as2.MochiServices.send("social_requestLogin", properties);
}
static function getFriendsList(properties) {
mochi.as2.MochiServices.send("social_getFriendsList", properties);
}
static function showProfile(options) {
mochi.as2.MochiServices.setContainer();
mochi.as2.MochiServices.stayOnTop();
mochi.as2.MochiServices.send("social_showProfile", options);
}
static function postToStream(properties) {
mochi.as2.MochiServices.send("social_postToStream", properties);
}
static function inviteFriends(properties) {
mochi.as2.MochiServices.send("social_inviteFriends", properties);
}
static function requestFan(properties) {
mochi.as2.MochiServices.send("social_requestFan", properties);
}
static function saveUserProperties(properties) {
mochi.as2.MochiServices.send("social_saveUserProperties", properties);
}
static function addEventListener(eventType, delegate) {
_dispatcher.addEventListener(eventType, delegate);
}
static function triggerEvent(eventType, args) {
_dispatcher.triggerEvent(eventType, args);
}
static function removeEventListener(eventType, delegate) {
_dispatcher.removeEventListener(eventType, delegate);
}
static var LOGGED_IN = "LoggedIn";
static var LOGGED_OUT = "LoggedOut";
static var LOGIN_SHOW = "LoginShow";
static var LOGIN_HIDE = "LoginHide";
static var LOGIN_SHOWN = "LoginShown";
static var PROFILE_SHOW = "ProfileShow";
static var PROFILE_HIDE = "ProfileHide";
static var PROPERTIES_SAVED = "PropertySaved";
static var WIDGET_LOADED = "WidgetLoaded";
static var FRIEND_LIST = "FriendsList";
static var PROFILE_DATA = "ProfileData";
static var GAMEPLAY_DATA = "GameplayData";
static var ACTION_CANCELED = "onCancel";
static var ACTION_COMPLETE = "onComplete";
static var USER_INFO = "UserInfo";
static var ERROR = "Error";
static var IO_ERROR = "IOError";
static var NO_USER = "NoUser";
static var PROPERTIES_SIZE = "PropertiesSize";
static var _dispatcher = new mochi.as2.MochiEventDispatcher();
}
Symbol 340 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.MainDevelopment] Frame 0
class com.novelgames.flashgames.commonAS2.MainDevelopment extends MovieClip
{
var _lockroot, _focusrect, onEnterFrame, title, attachMovie, getNextHighestDepth, titleDepth, titleX, titleY, instructions, musicGame, game, optionsDialog, getURL, stop, buttonSoundOver, buttonSoundClick, _visible, _url;
function MainDevelopment () {
super();
}
static function initialize(movieClip) {
movieClip.__proto__ = com.novelgames.flashgames.commonAS2.MainDevelopment.prototype;
movieClip.init();
}
function init() {
com.novelgames.flashgames.commonAS2.TimerFactory.__get__globalTimerFactory().stopAllTimers();
showCopyright();
_lockroot = true;
_focusrect = false;
if (!checkSiteLock()) {
return(undefined);
}
onEnterFrame = checkTitle;
checkTitle();
}
function gotoTitlePage() {
removePage();
title = com.novelgames.flashgames.commonAS2.Title(attachMovie("Title", "title", getNextHighestDepth()));
title.swapDepths(titleDepth);
title._x = titleX;
title._y = titleY;
}
function gotoInstructionsPage() {
removePage();
instructions = com.novelgames.flashgames.commonAS2.Instructions(attachMovie("Instructions", "instructions", getNextHighestDepth()));
instructions.swapDepths(titleDepth);
instructions.initialize();
instructions._x = titleX;
instructions._y = titleY;
}
function gotoGamePage() {
com.novelgames.flashgames.commonAS2.TimerFactory.__get__globalTimerFactory().stopAllTimers();
removePage();
musicGame = new com.novelgames.flashgames.commonAS2.NewMusic(this, "musicGame");
musicGame.start(0, 2147483647);
game = attachMovie("Game", "game", getNextHighestDepth());
game.swapDepths(titleDepth);
game._x = titleX;
game._y = titleY;
}
function showInstructionsFromGame() {
game.pause();
game._visible = false;
instructions = com.novelgames.flashgames.commonAS2.Instructions(attachMovie("Instructions", "instructions", getNextHighestDepth()));
instructions.swapDepths(titleDepth);
instructions.initialize(true);
instructions._x = titleX;
instructions._y = titleY;
}
function hideInstructionsFromGame() {
instructions.swapDepths(game.getDepth());
instructions.removeMovieClip();
instructions = null;
game._visible = true;
game.unpause();
}
function showOptions() {
game.pause();
optionsDialog = com.novelgames.flashgames.commonAS2.OptionsDialog(attachMovie("OptionsDialog", "optionsDialog", getNextHighestDepth()));
optionsDialog.swapDepths(titleDepth + 1);
optionsDialog._x = titleX;
optionsDialog._y = titleY;
}
function hideOptions() {
game.unpause();
optionsDialog.swapDepths(getNextHighestDepth());
optionsDialog.removeMovieClip();
optionsDialog = null;
}
function startGameMusic() {
stopGameMusic();
musicGame = new com.novelgames.flashgames.commonAS2.NewMusic(this, "musicGame");
musicGame.start(0, 2147483647);
}
function stopGameMusic() {
if (musicGame) {
musicGame.stop();
musicGame = null;
}
}
function showHighScores() {
mochi.as2.MochiScores.showLeaderboard({boardID:_root.boardID, onClose:function () {
}});
}
function showEnterHighScore(score, customShareText, customSharePicturePNG, customSharePictureURL, customExtra) {
mochi.as2.MochiScores.showLeaderboard({boardID:_root.boardID, score:score, onClose:function () {
}});
}
function gameEnded(result, customShareText, customSharePicturePNG, customSharePictureURL, customExtra) {
var _local4 = new Array();
var _local2;
for (_local2 in result) {
_local4.push((_local2 + ": ") + result[_local2]);
}
trace(("gameEnded({" + _local4.join(", ")) + "})");
showEnterHighScore(result.score, customShareText, customSharePicturePNG, customSharePictureURL, customExtra);
}
function gotoMoreGamesURL() {
getURL("http://www.fupa.com/", "_blank");
}
function checkTitle() {
if (!title) {
return(undefined);
}
titleX = title._x;
titleY = title._y;
onEnterFrame = null;
stop();
titleDepth = title.getDepth();
buttonSoundOver = new com.novelgames.flashgames.commonAS2.NewSound(this, "ButtonSoundOver");
buttonSoundClick = new com.novelgames.flashgames.commonAS2.NewSound(this, "ButtonSoundClick");
}
function removePage() {
if (title) {
title.swapDepths(getNextHighestDepth());
title.removeMovieClip();
title = null;
}
if (instructions) {
instructions.swapDepths(getNextHighestDepth());
instructions.removeMovieClip();
instructions = null;
}
if (game) {
game.swapDepths(getNextHighestDepth());
game.removeMovieClip();
game = null;
}
if (musicGame) {
musicGame.stop();
musicGame = null;
}
}
function showCopyright() {
}
function checkSiteLock() {
var _local2 = [];
if (checkSiteLockWebsites(_local2)) {
return(true);
}
stop();
_visible = false;
return(false);
}
function checkSiteLockWebsites(siteLockWebsites) {
var _local3;
var _local2;
var _local5;
if (siteLockWebsites.length == 0) {
return(true);
}
_local3 = getSWFHost();
if (_local3 == null) {
return(false);
}
if (!getHostMatchesWebsites(_local3, siteLockWebsites)) {
return(false);
}
_local2 = getHTMLHost();
if (_local2 == null) {
return(true);
}
if (!getHostMatchesWebsites(_local2, siteLockWebsites)) {
return(false);
}
return(true);
}
function getSWFHost() {
if (_url == null) {
return(null);
}
return(getHostFromURL(_url));
}
function getHTMLHost() {
var _local2;
_local2 = String(flash.external.ExternalInterface.call("function() { return document.location.href; }"));
if (_local2 == null) {
return(null);
}
return(getHostFromURL(_local2));
}
function getHostFromURL(url) {
var _local1;
var _local5;
var _local3;
var _local4;
_local1 = url.indexOf("://");
if (_local1 == -1) {
return(null);
}
_local1 = _local1 + 3;
_local3 = url.indexOf("/", _local1);
if (_local3 == -1) {
_local3 = url.length;
}
_local4 = url.indexOf(":", _local1);
if (_local4 == -1) {
_local4 = url.length;
}
_local5 = Math.min(_local3, _local4);
return(url.substr(_local1, _local5 - _local1));
}
function getHostMatchesWebsites(host, websites) {
var _local3;
var _local2;
var _local4;
if ((host == null) || (websites == null)) {
return(false);
}
host = host.toLowerCase();
_local4 = 0;
while (_local4 < websites.length) {
_local3 = websites[_local4].toLowerCase();
if (host == _local3) {
return(true);
}
if (_local3.charAt(0) == "*") {
_local2 = _local3.substr(1);
if (("." + host) == _local2) {
return(true);
}
if ((host.length >= _local2.length) && (host.substr(host.length - _local2.length) == _local2)) {
return(true);
}
}
_local4++;
}
return(false);
}
}
Symbol 341 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Title] Frame 0
class com.novelgames.flashgames.commonAS2.Title extends MovieClip
{
var startButton, highScoresButton, moreGamesButton, _parent;
function Title () {
super();
startButton.onRollOver = function () {
this._parent.startButtonOvered();
};
startButton.onRelease = function () {
this._parent.startButtonClicked();
};
highScoresButton.onRollOver = function () {
this._parent.highScoresButtonOvered();
};
highScoresButton.onRelease = function () {
this._parent.highScoresButtonClicked();
};
moreGamesButton.onRollOver = function () {
this._parent.moreGamesButtonOvered();
};
moreGamesButton.onRelease = function () {
this._parent.moreGamesButtonClicked();
};
}
function startButtonOvered() {
if (_parent.buttonSoundOver) {
_parent.buttonSoundOver.start();
}
}
function startButtonClicked() {
if (_parent.buttonSoundClick) {
_parent.buttonSoundClick.start();
}
_parent.gotoInstructionsPage();
}
function highScoresButtonOvered() {
if (_parent.buttonSoundOver) {
_parent.buttonSoundOver.start();
}
}
function highScoresButtonClicked() {
if (_parent.buttonSoundClick) {
_parent.buttonSoundClick.start();
}
_parent.showHighScores();
}
function moreGamesButtonOvered() {
if (_parent.buttonSoundOver) {
_parent.buttonSoundOver.start();
}
}
function moreGamesButtonClicked() {
if (_parent.buttonSoundClick) {
_parent.buttonSoundClick.start();
}
_parent.gotoMoreGamesURL();
}
}
Symbol 342 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Instructions] Frame 0
class com.novelgames.flashgames.commonAS2.Instructions extends MovieClip
{
var startButton, stop, nextPageButton, _totalframes, _currentframe, previousPageButton, shownFromGame, _parent, nextFrame, prevFrame;
function Instructions () {
super();
startButton.onRollOver = function () {
this._parent.startButtonOvered();
};
startButton.onRelease = function () {
this._parent.startButtonClicked();
};
stop();
if (nextPageButton) {
nextPageButton.onRelease = function () {
this._parent.nextPageButtonClicked();
};
nextPageButton._visible = _currentframe != _totalframes;
}
if (previousPageButton) {
previousPageButton.onRelease = function () {
this._parent.previousPageButtonClicked();
};
previousPageButton._visible = _currentframe != 1;
}
}
function initialize(shownFromGame) {
if (shownFromGame == undefined) {
shownFromGame = false;
}
this.shownFromGame = shownFromGame;
}
function startButtonOvered() {
if (_parent.buttonSoundOver) {
_parent.buttonSoundOver.start();
}
}
function startButtonClicked() {
if (_parent.buttonSoundClick) {
_parent.buttonSoundClick.start();
}
if (!shownFromGame) {
_parent.gotoGamePage();
} else {
_parent.hideInstructionsFromGame();
}
}
function nextPageButtonClicked() {
nextFrame();
nextPageButton._visible = _currentframe != _totalframes;
previousPageButton._visible = _currentframe != 1;
}
function previousPageButtonClicked() {
prevFrame();
nextPageButton._visible = _currentframe != _totalframes;
previousPageButton._visible = _currentframe != 1;
}
}
Symbol 343 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewMovieClip] Frame 0
class com.novelgames.flashgames.commonAS2.NewMovieClip extends MovieClip
{
static var draggingMovieClip, draggingMovieClipLockCenter, draggingMovieClipBounds, draggingMovieClipMouseX, draggingMovieClipMouseY;
var _parent, _x, _y, _rotation, _visible, _alpha, _width, _height, _xscale, _yscale, _xmouse, _ymouse, _totalframes, _currentframe, _name, __mask, useHandCursor, __numChildren, getInstanceAtDepth, getNextHighestDepth, onRelease, onRollOver, onRollOut, onPress, onReleaseOutside, onMouseMove, onEnterFrame, getURL, createMovieCount, attachMovie, createEmptyMovieClip;
function NewMovieClip () {
super();
}
function get parent() {
return(_parent);
}
function set x(x) {
_x = x;
//return(this.x);
}
function get x() {
return(_x);
}
function set y(y) {
_y = y;
//return(this.y);
}
function get y() {
return(_y);
}
function set rotation(rotation) {
_rotation = rotation;
//return(this.rotation);
}
function get rotation() {
return(_rotation);
}
function set visible(visible) {
_visible = visible;
//return(this.visible);
}
function get visible() {
return(_visible);
}
function set alpha(alpha) {
_alpha = alpha * 100;
//return(this.alpha);
}
function get alpha() {
return(_alpha / 100);
}
function get width() {
return(_width);
}
function set width(width) {
_width = width;
//return(this.width);
}
function get height() {
return(_height);
}
function set height(height) {
_height = height;
//return(this.height);
}
function set scaleX(scaleX) {
_xscale = scaleX * 100;
//return(this.scaleX);
}
function get scaleX() {
return(_xscale / 100);
}
function set scaleY(scaleY) {
_yscale = scaleY * 100;
//return(this.scaleY);
}
function get scaleY() {
return(_yscale / 100);
}
function set mouseX(mouseX) {
_xmouse = mouseX;
//return(this.mouseX);
}
function get mouseX() {
return(_xmouse);
}
function set mouseY(mouseY) {
_ymouse = mouseY;
//return(this.mouseY);
}
function get mouseY() {
return(_ymouse);
}
function get totalFrames() {
return(_totalframes);
}
function get currentFrame() {
return(_currentframe);
}
function get name() {
return(_name);
}
function set mask(mask) {
__mask = mask;
super.setMask(mask);
//return(this.mask);
}
function get mask() {
return(__mask);
}
function set buttonMode(buttonMode) {
useHandCursor = buttonMode;
//return(this.buttonMode);
}
function get buttonMode() {
return(useHandCursor);
}
function set mouseEnabled(mouseEnabled) {
__mouseEnabled = mouseEnabled;
//return(this.mouseEnabled);
}
function get mouseEnabled() {
return(__mouseEnabled);
}
function set mouseChildren(mouseChildren) {
__mouseChildren = mouseChildren;
//return(this.mouseChildren);
}
function get mouseChildren() {
return(__mouseChildren);
}
function get stage() {
return(com.novelgames.flashgames.commonAS2.NewStage.getNewStage());
}
function set numChildren(numChildren) {
__numChildren = numChildren;
//return(this.numChildren);
}
function get numChildren() {
if (__numChildren == undefined) {
__numChildren = 0;
}
return(__numChildren);
}
function get graphics() {
return(this);
}
function startDrag(lockCenter, bounds) {
draggingMovieClip = this;
draggingMovieClipLockCenter = lockCenter;
draggingMovieClipBounds = bounds;
draggingMovieClipMouseX = _xmouse;
draggingMovieClipMouseY = _ymouse;
if (lockCenter == undefined) {
super.startDrag();
} else if (bounds == undefined) {
super.startDrag(lockCenter);
} else {
super.startDrag(lockCenter, bounds.left, bounds.top, bounds.right, bounds.bottom);
}
}
function stopDrag() {
draggingMovieClip = null;
super.stopDrag();
}
function lineStyle(thickness, colour, alpha) {
if (alpha == undefined) {
alpha = 1;
}
super.lineStyle(thickness, colour, alpha * 100);
}
function beginFill(colour, alpha) {
if (alpha == undefined) {
alpha = 1;
}
super.beginFill(colour, alpha * 100);
}
function getBounds(target) {
var _local2 = super.getBounds(target);
return(new flash.geom.Rectangle(_local2.xMin, _local2.yMin, _local2.xMax - _local2.xMin, _local2.yMax - _local2.yMin));
}
function localToGlobal(point) {
var _local2 = new flash.geom.Point(point.x, point.y);
super.localToGlobal(_local2);
return(_local2);
}
function globalToLocal(point) {
var _local2 = new flash.geom.Point(point.x, point.y);
super.globalToLocal(_local2);
return(_local2);
}
function hitTestPoint(x, y, shapeFlag) {
if (shapeFlag == undefined) {
return(super.hitTest(x, y));
}
return(super.hitTest(x, y, shapeFlag));
}
function hitTestObject(obj) {
return(super.hitTest(obj));
}
function addChild(movieClip) {
if (movieClip.addedToParent) {
return(undefined);
}
if (movieClip._parent != this) {
trace("wrong addChild: " + [this, movieClip]);
}
if (movieClip == null) {
return(undefined);
}
addChildAt(movieClip, numChildren);
}
function addChildAt(movieClip, index) {
if (movieClip.addedToParent) {
return(undefined);
}
if (movieClip._parent != this) {
trace("wrong addChildAt: " + [this, movieClip]);
}
if (movieClip == null) {
return(undefined);
}
movieClip.addedToParent = true;
numChildren = ((numChildren+1));
setChildIndex(movieClip, index);
}
function removeChild(movieClip) {
if (!movieClip.addedToParent) {
return(undefined);
}
removeChildAt(movieClip.getDepth());
}
function removeChildAt(index) {
var _local5 = getInstanceAtDepth(index);
var _local3;
var _local2;
if (!_local5.addedToParent) {
return(undefined);
}
_local5.removeMovieClip();
_local3 = getNextHighestDepth();
_local2 = index + 1;
while (_local2 < _local3) {
getInstanceAtDepth(_local2).swapDepths(_local2 - 1);
_local2++;
}
numChildren = ((numChildren-1));
}
function setChildIndex(child, index) {
var _local3 = child.getDepth();
var _local2;
var _local1;
if (_local3 == index) {
return(undefined);
}
_local2 = ((_local3 < index) ? 1 : -1);
_local1 = _local3;
while (_local1 != index) {
child.swapDepths(_local1 + _local2);
_local1 = _local1 + _local2;
}
}
function getChildIndex(child) {
return(child.getDepth());
}
function getChildAt(index) {
return(com.novelgames.flashgames.commonAS2.NewMovieClip(getInstanceAtDepth(index)));
}
function addEventListener(type, listenerObject, listenerFunctionName) {
switch (type) {
case com.novelgames.flashgames.commonAS2.MouseEvent.CLICK :
onRelease = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OVER :
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_OVER :
onRollOver = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OUT :
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_OUT :
onRollOut = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_DOWN :
onPress = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_UP :
onRelease = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
onReleaseOutside = onRelease;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_MOVE :
onMouseMove = function () {
if (!this.checkReceiveMouse()) {
return(undefined);
}
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.Event.ENTER_FRAME :
onEnterFrame = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
}
}
function checkReceiveMouse() {
var _local2;
if (!mouseEnabled) {
return(false);
}
_local2 = _parent;
while (_local2 != null) {
if ((_local2.__proto__ == com.novelgames.flashgames.commonAS2.NewMovieClip.prototype) || (com.novelgames.flashgames.commonAS2.NewMovieClip.prototype.isPrototypeOf(_local2.__proto__))) {
if (!_local2.mouseChildren) {
return(false);
}
}
_local2 = _local2._parent;
}
return(true);
}
function removeEventListener(type) {
switch (type) {
case com.novelgames.flashgames.commonAS2.MouseEvent.CLICK :
delete onRelease;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OVER :
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_OVER :
delete onRollOver;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OUT :
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_OUT :
delete onRollOut;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_DOWN :
delete onPress;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_UP :
delete onRelease;
delete onReleaseOutside;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_MOVE :
delete onMouseMove;
break;
case com.novelgames.flashgames.commonAS2.Event.ENTER_FRAME :
delete onEnterFrame;
}
}
function navigateToURL(urlRequest, window) {
getURL(urlRequest.url, window);
}
function createMovie(name) {
var _local4 = getNextHighestDepth();
var _local2;
if (createMovieCount == undefined) {
createMovieCount = 0;
}
if (name) {
_local2 = attachMovie(name, (name + "_") + createMovieCount, _local4);
} else {
_local2 = createEmptyMovieClip((name + "_") + createMovieCount, _local4);
_local2.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
}
_local2.addedToParent = false;
createMovieCount++;
return(_local2);
}
function createSound(name) {
return(new com.novelgames.flashgames.commonAS2.NewSound(this, name));
}
var __mouseEnabled = true;
var __mouseChildren = true;
}
Symbol 344 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewStage] Frame 0
class com.novelgames.flashgames.commonAS2.NewStage
{
var addedListener, onKeyDown, onKeyUp;
function NewStage () {
addedListener = false;
onKeyDown = null;
onKeyUp = null;
}
static function getNewStage() {
if (newStage == null) {
newStage = new com.novelgames.flashgames.commonAS2.NewStage();
}
return(newStage);
}
function get stageWidth() {
return(Stage.width);
}
function get stageHeight() {
return(Stage.height);
}
function set focus(object) {
Selection.setFocus(object);
//return(focus);
}
function get focus() {
return(Selection.getFocus());
}
function addEventListener(type, listenerObject, listenerFunctionName) {
if (!addedListener) {
Key.addListener(this);
addedListener = true;
}
switch (type) {
case com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_DOWN :
onKeyDown = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.KeyboardEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_UP :
onKeyUp = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.KeyboardEvent(this));
};
}
}
function removeEventListener(type) {
switch (type) {
case com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_DOWN :
delete onKeyDown;
break;
case com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_UP :
delete onKeyUp;
}
}
function disableKeyListeners() {
if (!addedListener) {
return(undefined);
}
Key.removeListener(this);
}
function enableKeyListeners() {
if (!addedListener) {
return(undefined);
}
Key.addListener(this);
}
static var newStage = null;
}
Symbol 345 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.KeyboardEvent] Frame 0
class com.novelgames.flashgames.commonAS2.KeyboardEvent
{
function KeyboardEvent () {
}
function get charCode() {
return(Key.getAscii());
}
function get keyCode() {
return(Key.getCode());
}
function updateAfterEvent() {
_global.updateAfterEvent();
}
static var KEY_DOWN = "keyDown";
static var KEY_UP = "keyUp";
}
Symbol 346 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.MouseEvent] Frame 0
class com.novelgames.flashgames.commonAS2.MouseEvent
{
var target, currentTarget;
function MouseEvent (target) {
this.target = target;
currentTarget = target;
}
function updateAfterEvent() {
_global.updateAfterEvent();
}
static var CLICK = "click";
static var DOUBLE_CLICK = "doubleClick";
static var MOUSE_DOWN = "mouseDown";
static var MOUSE_MOVE = "mouseMove";
static var MOUSE_OUT = "mouseOut";
static var MOUSE_OVER = "mouseOver";
static var MOUSE_UP = "mouseUp";
static var MOUSE_WHEEL = "mouseWheel";
static var ROLL_OUT = "rollOut";
static var ROLL_OVER = "rollOver";
}
Symbol 347 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Event] Frame 0
class com.novelgames.flashgames.commonAS2.Event
{
function Event () {
}
static var ENTER_FRAME = "enterFrame";
}
Symbol 348 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.URLRequest] Frame 0
class com.novelgames.flashgames.commonAS2.URLRequest
{
var url;
function URLRequest (url) {
this.url = url;
}
}
Symbol 349 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewSound] Frame 0
class com.novelgames.flashgames.commonAS2.NewSound extends Sound
{
var attachSound, start;
function NewSound (target, symbolName) {
super(getTarget());
super.setVolume(volume * 100);
attachSound(symbolName);
}
static function loadVolume() {
var _local1 = SharedObject.getLocal("gameOptions", "/");
if (isNaN(_local1.data.soundVolume)) {
_local1.data.soundVolume = 1;
}
return(_local1.data.soundVolume);
}
static function saveVolume() {
var _local1 = SharedObject.getLocal("gameOptions", "/");
_local1.data.soundVolume = volume;
}
static function setVolume(volume) {
com.novelgames.flashgames.commonAS2.NewSound.volume = volume;
new Sound(getTarget()).setVolume(volume * 100);
}
static function getTarget() {
if (_root.soundsHolder) {
return(_root.soundsHolder);
}
_root.createEmptyMovieClip("soundsHolder", _root.getNextHighestDepth());
return(_root.soundsHolder);
}
function play(startTime, loops) {
if (loops == undefined) {
if (startTime == undefined) {
start();
} else {
start(startTime);
}
} else {
start(startTime, loops);
}
return(new com.novelgames.flashgames.commonAS2.SoundChannel(this));
}
static var volume = loadVolume();
}
Symbol 350 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.SoundChannel] Frame 0
class com.novelgames.flashgames.commonAS2.SoundChannel
{
var sound;
function SoundChannel (sound) {
this.sound = sound;
}
function stop() {
sound.stop();
}
}
Symbol 351 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.OptionsDialog] Frame 0
class com.novelgames.flashgames.commonAS2.OptionsDialog extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var soundOnX, sound, soundOnY, soundOffX, soundOffY, musicOnX, music, musicOnY, musicOffX, musicOffY, soundSlider, musicSlider, okButton, onMouseMove, __get__parent, separator1, fullScreen, separator0;
function OptionsDialog () {
super();
onAddedToStage();
}
function onAddedToStage() {
var optionsDialog = this;
soundOnX = sound.onSlider._x;
soundOnY = sound.onSlider._y;
soundOffX = sound.offSlider._x;
soundOffY = sound.offSlider._y;
musicOnX = music.onSlider._x;
musicOnY = music.onSlider._y;
musicOffX = music.offSlider._x;
musicOffY = music.offSlider._y;
sound.offSlider._visible = false;
soundSlider = sound.onSlider;
music.offSlider._visible = false;
musicSlider = music.onSlider;
updateSoundSlider(com.novelgames.flashgames.commonAS2.NewSound.volume);
updateMusicSlider(com.novelgames.flashgames.commonAS2.NewMusic.volume);
soundSlider.onPress = function () {
optionsDialog.onSoundSliderMouseDown();
};
soundSlider.useHandCursor = true;
musicSlider.onPress = function () {
optionsDialog.onMusicSliderMouseDown();
};
musicSlider.useHandCursor = true;
okButton.onRelease = function () {
optionsDialog.okButtonClicked();
};
updateFullScreenButtons();
}
function updateSoundSlider(volume) {
soundSlider._x = (soundOnX * volume) + (soundOffX * (1 - volume));
soundSlider._y = (soundOnY * volume) + (soundOffY * (1 - volume));
}
function updateMusicSlider(volume) {
musicSlider._x = (musicOnX * volume) + (musicOffX * (1 - volume));
musicSlider._y = (musicOnY * volume) + (musicOffY * (1 - volume));
}
function onSoundSliderMouseDown() {
var optionsDialog = this;
soundSlider.onPress = null;
onMouseMove = function () {
optionsDialog.onSoundSliderMouseMove();
};
soundSlider.onRelease = function () {
optionsDialog.onSoundSliderMouseUp();
};
soundSlider.onReleaseOutside = function () {
optionsDialog.onSoundSliderMouseUp();
};
}
function onSoundSliderMouseMove() {
var _local2;
updateAfterEvent();
_local2 = (sound._xmouse - soundOffX) / (soundOnX - soundOffX);
if (_local2 < 0) {
_local2 = 0;
}
if (_local2 > 1) {
_local2 = 1;
}
updateSoundSlider(_local2);
com.novelgames.flashgames.commonAS2.NewSound.setVolume(_local2);
}
function onSoundSliderMouseUp() {
var optionsDialog = this;
onMouseMove = null;
soundSlider.onRelease = null;
soundSlider.onReleaseOutside = null;
soundSlider.onPress = function () {
optionsDialog.onSoundSliderMouseDown();
};
}
function onMusicSliderMouseDown() {
var optionsDialog = this;
musicSlider.onPress = null;
onMouseMove = function () {
optionsDialog.onMusicSliderMouseMove();
};
musicSlider.onRelease = function () {
optionsDialog.onMusicSliderMouseUp();
};
musicSlider.onReleaseOutside = function () {
optionsDialog.onMusicSliderMouseUp();
};
}
function onMusicSliderMouseMove() {
var _local2;
updateAfterEvent();
_local2 = (music._xmouse - musicOffX) / (soundOnX - musicOffX);
if (_local2 < 0) {
_local2 = 0;
}
if (_local2 > 1) {
_local2 = 1;
}
updateMusicSlider(_local2);
com.novelgames.flashgames.commonAS2.NewMusic.setVolume(_local2);
}
function onMusicSliderMouseUp() {
var optionsDialog = this;
onMouseMove = null;
musicSlider.onRelease = null;
musicSlider.onReleaseOutside = null;
musicSlider.onPress = function () {
optionsDialog.onMusicSliderMouseDown();
};
}
function okButtonClicked() {
com.novelgames.flashgames.commonAS2.NewSound.saveVolume();
com.novelgames.flashgames.commonAS2.NewMusic.saveVolume();
Object(__get__parent()).hideOptions();
}
function updateFullScreenButtons() {
var _local2 = (fullScreen._y + (fullScreen._height / 2)) - separator1._y;
fullScreen.onButton.stop();
fullScreen.offButton.stop();
fullScreen._visible = false;
separator1._visible = false;
sound._y = sound._y + (_local2 / 2);
music._y = music._y + (_local2 / 2);
separator0._y = separator0._y + (_local2 / 2);
}
}
Symbol 352 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewMusic] Frame 0
class com.novelgames.flashgames.commonAS2.NewMusic extends Sound
{
var attachSound, start;
function NewMusic (target, symbolName) {
super(getTarget());
super.setVolume(volume * 100);
attachSound(symbolName);
}
static function loadVolume() {
var _local1 = SharedObject.getLocal("gameOptions", "/");
if (isNaN(_local1.data.musicVolume)) {
_local1.data.musicVolume = 1;
}
return(_local1.data.musicVolume);
}
static function saveVolume() {
var _local1 = SharedObject.getLocal("gameOptions", "/");
_local1.data.musicVolume = volume;
}
static function setVolume(volume) {
com.novelgames.flashgames.commonAS2.NewMusic.volume = volume;
new Sound(getTarget()).setVolume(volume * 100);
}
static function getTarget() {
if (_root.musicsHolder) {
return(_root.musicsHolder);
}
_root.createEmptyMovieClip("musicsHolder", _root.getNextHighestDepth());
return(_root.musicsHolder);
}
function play(startTime, loops) {
if (loops == undefined) {
if (startTime == undefined) {
start();
} else {
start(startTime);
}
} else {
start(startTime, loops);
}
return(new com.novelgames.flashgames.commonAS2.SoundChannel(this));
}
static var volume = loadVolume();
}
Symbol 353 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.TimerFactory] Frame 0
class com.novelgames.flashgames.commonAS2.TimerFactory
{
var parent, __speed, __realSpeed, lastSpeedChangeAdjustedTime, lastSpeedChangeRealTime, children, timers;
function TimerFactory () {
parent = null;
__speed = 1;
__realSpeed = 1;
lastSpeedChangeAdjustedTime = getTimer();
lastSpeedChangeRealTime = lastSpeedChangeAdjustedTime;
children = new Array();
timers = new Array();
}
static function get globalTimerFactory() {
return(__globalTimerFactory);
}
function createTimerFactory() {
var _local2 = new com.novelgames.flashgames.commonAS2.TimerFactory();
_local2.parent = this;
_local2.lastSpeedChangeAdjustedTime = getTime();
_local2.updateRealSpeed();
children.push(_local2);
return(_local2);
}
function createTimer(delay, repeatCount) {
if (repeatCount == undefined) {
repeatCount = 0;
}
return(new com.novelgames.flashgames.commonAS2.NewTimer(delay, repeatCount, this));
}
function addTimer(timer) {
timers.push(timer);
}
function getTime() {
return(lastSpeedChangeAdjustedTime + (realSpeed * (getTimer() - lastSpeedChangeRealTime)));
}
function pause() {
speed = (0);
}
function unpause() {
speed = (1);
}
function set speed(speed) {
if (speed < 0) {
speed = 0;
}
__speed = speed;
updateRealSpeed();
//return(this.speed);
}
function get speed() {
return(__speed);
}
function get realSpeed() {
return(__realSpeed);
}
function updateRealSpeed() {
var _local2;
if (__realSpeed == (getParentSpeed() * speed)) {
return(undefined);
}
lastSpeedChangeAdjustedTime = getTime();
lastSpeedChangeRealTime = getTimer();
__realSpeed = getParentSpeed() * speed;
_local2 = 0;
while (_local2 < timers.length) {
timers[_local2].speedUpdated();
_local2++;
}
_local2 = 0;
while (_local2 < children.length) {
children[_local2].updateRealSpeed();
_local2++;
}
}
function stopAllTimers() {
var _local2;
_local2 = 0;
while (_local2 < children.length) {
children[_local2].stopAllTimers();
_local2++;
}
_local2 = 0;
while (_local2 < timers.length) {
timers[_local2].stop();
_local2++;
}
}
function getParentSpeed() {
if (parent) {
return(parent.__get__speed());
}
return(1);
}
static var __globalTimerFactory = new com.novelgames.flashgames.commonAS2.TimerFactory();
}
Symbol 354 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Timer] Frame 0
interface com.novelgames.flashgames.commonAS2.Timer
{
}
Symbol 355 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewTimer] Frame 0
class com.novelgames.flashgames.commonAS2.NewTimer implements com.novelgames.flashgames.commonAS2.Timer
{
var delay, repeatCount, currentCount, originalDelay, currentDelay, timerFactory, isRunning, listenerObject, listenerFunctionName, adjustedLastEventTime, intervalID;
function NewTimer (delay, repeatCount, timerFactory) {
if (repeatCount == undefined) {
repeatCount = 0;
}
if (timerFactory == undefined) {
timerFactory = null;
}
if (timerFactory == null) {
timerFactory = com.novelgames.flashgames.commonAS2.TimerFactory.globalTimerFactory;
}
this.delay = ((timerFactory.__get__realSpeed() == 0) ? 2147483647 : (delay / timerFactory.__get__realSpeed()));
this.repeatCount = repeatCount;
currentCount = 0;
originalDelay = delay;
currentDelay = originalDelay;
timerFactory.addTimer(this);
this.timerFactory = timerFactory;
isRunning = false;
}
static function getTimer() {
return(com.novelgames.flashgames.commonAS2.TimerFactory.__get__globalTimerFactory().getTime());
}
static function pause() {
com.novelgames.flashgames.commonAS2.TimerFactory.__get__globalTimerFactory().pause();
}
static function unpause() {
com.novelgames.flashgames.commonAS2.TimerFactory.__get__globalTimerFactory().unpause();
}
function addEventListener(type, listenerObject, listenerFunctionName) {
this.listenerObject = listenerObject;
this.listenerFunctionName = listenerFunctionName;
}
function removeEventListener(type) {
listenerObject = null;
listenerFunctionName = null;
}
function start() {
isRunning = true;
adjustedLastEventTime = timerFactory.getTime();
if (timerFactory.__get__realSpeed() == 0) {
return(undefined);
}
intervalID = setInterval(this, "timerEventListener", delay);
}
function stop() {
clearInterval(intervalID);
isRunning = false;
}
function speedUpdated() {
var _local2;
if (listenerObject == null) {
return(undefined);
}
if (!isRunning) {
return(undefined);
}
clearInterval(intervalID);
_local2 = timerFactory.getTime();
currentDelay = originalDelay - (_local2 - adjustedLastEventTime);
if (currentDelay <= 0) {
currentDelay = originalDelay;
}
if (timerFactory.__get__realSpeed() == 0) {
return(undefined);
}
delay = currentDelay / timerFactory.__get__realSpeed();
intervalID = setInterval(this, "timerEventListener", delay);
}
function timerEventListener() {
currentCount++;
adjustedLastEventTime = timerFactory.getTime();
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.TimerEvent());
if (!isRunning) {
return(undefined);
}
if ((repeatCount != 0) && (currentCount >= repeatCount)) {
clearInterval(intervalID);
isRunning = false;
return(undefined);
}
if (currentDelay != originalDelay) {
clearInterval(intervalID);
currentDelay = originalDelay;
delay = currentDelay / timerFactory.__get__realSpeed();
intervalID = setInterval(this, "timerEventListener", delay);
}
}
}
Symbol 356 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.TimerEvent] Frame 0
class com.novelgames.flashgames.commonAS2.TimerEvent
{
function TimerEvent () {
}
function updateAfterEvent() {
_global.updateAfterEvent();
}
static var TIMER = "timer";
}
Symbol 357 MovieClip [__Packages.mochi.as2.MochiScores] Frame 0
class mochi.as2.MochiScores
{
static var boardID, onClose, onError;
function MochiScores () {
}
static function setBoardID(boardID) {
mochi.as2.MochiServices.warnID(boardID, true);
mochi.as2.MochiScores.boardID = boardID;
mochi.as2.MochiServices.send("scores_setBoardID", {boardID:boardID});
}
static function showLeaderboard(options) {
options.clip = mochi.as2.MochiServices.clip;
if ((options.clip != mochi.as2.MochiServices.__get__clip()) || (mochi.as2.MochiServices.__get__childClip()._target == undefined)) {
mochi.as2.MochiServices.disconnect();
trace("WARNING! This application is attempting to connect to MochiServices inside a showLeaderboard call!");
trace("make sure MochiServices.connect is called as early in the application runtime as possible.");
mochi.as2.MochiServices.connect(mochi.as2.MochiServices.__get__id(), options.clip);
}
delete options.clip;
if (options.name != null) {
if (typeof(options.name) == "object") {
if (options.name.text != undefined) {
options.name = options.name.text;
}
}
}
if (options.score != null) {
if (options.score instanceof TextField) {
if (options.score.text != undefined) {
options.score = options.score.text;
}
} else if (options.score instanceof mochi.as2.MochiDigits) {
options.score = options.score.value;
}
var _local1 = Number(options.score);
if (isNaN(_local1)) {
trace(("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'");
} else if ((_local1 == Number.NEGATIVE_INFINITY) || (_local1 == Number.POSITIVE_INFINITY)) {
trace(("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite");
} else {
if (Math.floor(_local1) != _local1) {
trace(("WARNING: Submitted score '" + options.score) + "' will be truncated");
}
options.score = _local1;
}
}
if (options.onDisplay != null) {
options.onDisplay();
} else {
mochi.as2.MochiServices.__get__clip().stop();
}
if (options.onClose != null) {
onClose = options.onClose;
} else {
onClose = function () {
mochi.as2.MochiServices.__get__clip().play();
};
}
if (options.onError != null) {
onError = options.onError;
} else {
onError = onClose;
}
if (options.boardID == null) {
if (boardID != null) {
options.boardID = boardID;
}
}
mochi.as2.MochiServices.warnID(options.boardID, true);
trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal");
mochi.as2.MochiServices.send("scores_showLeaderboard", {options:options}, null, doClose);
}
static function closeLeaderboard() {
mochi.as2.MochiServices.send("scores_closeLeaderboard");
}
static function getPlayerInfo(callbackObj, callbackMethod) {
mochi.as2.MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod);
}
static function submit(score, name, callbackObj, callbackMethod) {
score = Number(score);
if (isNaN(score)) {
trace(("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is 'Not a Number'");
} else if ((score == Number.NEGATIVE_INFINITY) || (score == Number.POSITIVE_INFINITY)) {
trace(("ERROR: Submitted score '" + String(score)) + "' will be rejected, score is an infinite");
} else {
if (Math.floor(score) != score) {
trace(("WARNING: Submitted score '" + String(score)) + "' will be truncated");
}
score = Number(score);
}
mochi.as2.MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod);
}
static function requestList(callbackObj, callbackMethod) {
mochi.as2.MochiServices.send("scores_requestList", null, callbackObj, callbackMethod);
}
static function scoresArrayToObjects(scores) {
var _local5 = {};
var _local1;
var _local4;
var _local2;
var _local6;
for (var _local8 in scores) {
if (typeof(scores[_local8]) == "object") {
if ((scores[_local8].cols != null) && (scores[_local8].rows != null)) {
_local5[_local8] = [];
_local2 = scores[_local8];
_local4 = 0;
while (_local4 < _local2.rows.length) {
_local6 = {};
_local1 = 0;
while (_local1 < _local2.cols.length) {
_local6[_local2.cols[_local1]] = _local2.rows[_local4][_local1];
_local1++;
}
_local5[_local8].push(_local6);
_local4++;
}
} else {
_local5[_local8] = {};
for (var _local7 in scores[_local8]) {
_local5[_local8][_local7] = scores[_local8][_local7];
}
}
} else {
_local5[_local8] = scores[_local8];
}
}
return(_local5);
}
static function doClose(args) {
if (args.error == true) {
if (args.errorCode == undefined) {
args.errorCode = "IOError";
}
onError.apply(null, [args.errorCode]);
} else {
onClose.apply();
}
}
}
Symbol 358 MovieClip [__Packages.mochi.as2.MochiDigits] Frame 0
class mochi.as2.MochiDigits
{
var Encoder, Fragment, Sibling;
function MochiDigits (digit, index) {
Encoder = 0;
setValue(digit, index);
}
function get value() {
return(Number(toString()));
}
function set value(v) {
setValue(v);
//return(value);
}
function addValue(v) {
value = value + v;
}
function setValue(digit, index) {
var _local3 = digit.toString();
if ((index == undefined) || (isNaN(index))) {
index = 0;
}
Fragment = _local3.charCodeAt(index++) ^ Encoder;
if (index < _local3.length) {
Sibling = new mochi.as2.MochiDigits(digit, index);
} else {
Sibling = null;
}
reencode();
}
function reencode() {
var _local2 = int(2147483647 * Math.random());
Fragment = Fragment ^ (_local2 ^ Encoder);
Encoder = _local2;
}
function toString() {
var _local2 = String.fromCharCode(Fragment ^ Encoder);
return(((Sibling != null) ? (_local2.concat(Sibling.toString())) : (_local2)));
}
}
Symbol 359 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Config] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Config
{
function Config () {
}
static var NOOFLIVES = 5;
static var SCORE_PERCONSUME = 100;
static var SCORE_LEVELCLEAR = 1000;
static var WORLD_WIDTH = 3000;
static var WORLD_HEIGHT = 2000;
static var LEVEL_PREDATORCOUNT_RANGE = [10, 30];
static var LEVEL_PREDATORSIZE_RANGE = [1.3, 2];
static var LEVEL_PREYCOUNT_RANGE = [30, 15];
static var LEVEL_PREYSIZE_RANGE = [0.7, 0.3];
static var LEVEL_ACTIVEDISTANCE_RANGE = [50, 100];
static var LEVEL_DEACTIVEDISTANCE_RANGE = [70, 140];
static var LEVEL_WANDERSPEEDFACTOR_RANGE = [0.4, 0.6];
static var LEVEL_PERSUESPEEDFACTOR_RANGE = [0.3, 0.6];
static var LEVEL_EVADESPEEDFACTOR_RANGE = [0.6, 0.8];
static var LEVEL_ACCELERATION_RANGE = [100, 200];
static var LEVEL_DECELERATION_RANGE = [100, 100];
static var LEVEL_SPEEDUPCOUNT_RANGE = [5, 2];
static var LEVEL_DEVOLVECOUNT_RANGE = [2, 5];
static var LEVEL_MAXIMUMDIFFICULTY = 10;
static var LEVEL_TRANSITIONDURATION = 3500;
static var AMOEBA_ACCELERATION = 400;
static var AMOEBA_DECELERATION = 200;
static var AMOEBA_MAXSPEED = 150;
static var AMOEBA_CONSUMEFACTOR = 0.2;
static var AMOEBA_CONSUMEDURATION = 750;
static var AMOEBA_GROWDURATION = 300;
static var AMOEBA_SHRINKDURATION = 600;
static var AMOEBA_PERISHDURATION = 1500;
static var AMOEBA_INVINCIBLEDURATION = 3000;
static var AMOEBA_ROTATESPEED = 360;
static var AMOEBA_MOUTHYOFFSET = 12;
static var AMOEBA_XRANGE = [200, 400];
static var AMOEBA_YRANGE = [133, 267];
static var POWERUP_SPEEDUP_FACTOR = 1.5;
static var POWERUP_SPEEDUP_DURATION = 7000;
static var POWERUP_DEVOLVE_FACTOR = 0.3;
static var POWERUP_RADIUS = 15;
static var POWERUP_FADEOUT_DURATION = 500;
static var LIFEFORM_TYPE = 10;
static var LIFEFORM_BASERADIUS = 40;
static var LIFEFORM_RENDERDISTANCE = 600;
static var LIFEFORM_PERISHFADEOUTDURATION = 750;
static var LIFEFORM_PERISHMOVEDURATION = 350;
static var LIFEFORM_TRANSITIONFADEOUTDURATION = 1000;
static var LIFEFORM_BACKGROUNDSCALE = 1.5;
static var LIFEFORM_BACKGROUNDALPHA = 0.1;
static var LIFEFORM_BACKGROUNDSPEEDFACTOR = 0.2;
static var BLACKTRANSITION_DURATION = 500;
static var LIFECOUNTER_SEPARATION = 5;
static var LIFECOUNTER_WIDTH = 160;
static var GAMESTAGE_WIDTH = 600;
static var GAMESTAGE_HEIGHT = 400;
static var MESSAGE_LEVEL_DURATION = 1500;
static var MESSAGE_DELAY_PLAYAGAIN = 2000;
}
Symbol 360 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.GameObject] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.GameObject extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
function GameObject () {
super();
}
function getWrappedDistanceX(positionX0, positionX1) {
var _local2 = positionX0 - positionX1;
if (Math.abs(_local2) < HALFWORLDWIDTH) {
return(_local2);
}
if (_local2 >= 0) {
return(_local2 - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH);
}
return(_local2 + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH);
}
function getWrappedDistanceY(positionY0, positionY1) {
var _local2 = positionY0 - positionY1;
if (Math.abs(_local2) < HALFWORLDHEIGHT) {
return(_local2);
}
if (_local2 >= 0) {
return(_local2 - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT);
}
return(_local2 + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT);
}
var HALFWORLDWIDTH = com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH / 2;
var HALFWORLDHEIGHT = com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT / 2;
}
Symbol 361 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.PowerUp] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.PowerUp extends com.novelgames.flashgames.amoebaslifeAS2.GameObject
{
var speedUpMovie, devolveMovie, __set__visible, type, positionX, positionY, amoeba, level, isActive, state, gotoAndStop, depth, scaleX, __set__scaleY, __set__alpha, timeSinceStart, startAlpha, alpha, startScale, endScale, endAlpha, startDepth, endDepth, duration, __get__totalFrames, __set__scaleX, getWrappedDistanceX, getWrappedDistanceY, __set__x, __set__y;
function PowerUp () {
super();
speedUpMovie.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
devolveMovie.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
__set__visible(false);
}
function initialize(type, positionX, positionY, levelInfos, isActive, amoeba) {
this.type = type;
this.positionX = positionX;
this.positionY = positionY;
this.amoeba = amoeba;
level = levelInfos.level;
this.isActive = isActive;
state = STATE_FADEIN;
gotoAndStop(1);
speedUpMovie.__set__visible(false);
devolveMovie.__set__visible(false);
switch (type) {
case TYPE_SPEEDUP :
speedUpMovie.__set__visible(true);
break;
case TYPE_DEVOLVE :
devolveMovie.__set__visible(true);
}
depth = 0;
if (!isActive) {
scaleX = scaleX * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
__set__scaleY(scaleX);
__set__alpha(com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA);
depth = 1;
}
}
function startPickUp() {
state = STATE_PICKUP;
timeSinceStart = 0;
}
function startTransition(nextLevel) {
if (state == STATE_PICKUP) {
return(undefined);
}
startAlpha = alpha;
startScale = scaleX;
if (level > nextLevel) {
state = STATE_TRANSITION;
isActive = false;
startScale = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
endScale = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
startAlpha = 0;
endAlpha = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA;
startDepth = 2;
endDepth = 1;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
} else if (level == nextLevel) {
state = STATE_TRANSITION;
isActive = true;
endScale = 1;
endAlpha = 1;
startDepth = 1;
endDepth = 0;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
} else {
state = STATE_TRANSITION;
isActive = false;
endScale = 1 / com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
endAlpha = 0;
startDepth = 0;
endDepth = -1;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_TRANSITIONFADEOUTDURATION;
}
timeSinceStart = 0;
}
function update(time, deltaTime) {
var _local2;
var _local3;
var _local4;
var _local5;
switch (state) {
case STATE_FADEIN :
timeSinceStart = timeSinceStart + deltaTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_FADEOUT_DURATION;
if (_local2 >= 1) {
gotoAndStop(1);
state = STATE_NORMAL;
break;
}
gotoAndStop(1 + Math.round((1 - _local2) * (__get__totalFrames() - 1)));
break;
case STATE_NORMAL :
break;
case STATE_PICKUP :
timeSinceStart = timeSinceStart + deltaTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_FADEOUT_DURATION;
if (_local2 >= 1) {
gotoAndStop(__get__totalFrames());
return(true);
}
gotoAndStop(1 + Math.round(_local2 * (__get__totalFrames() - 1)));
break;
case STATE_TRANSITION :
timeSinceStart = timeSinceStart + deltaTime;
_local2 = timeSinceStart / duration;
if (_local2 >= 1) {
depth = endDepth;
__set__scaleX(endScale);
__set__scaleY(scaleX);
__set__alpha(endAlpha);
if (depth == -1) {
return(true);
}
state = STATE_NORMAL;
} else {
depth = startDepth + (_local2 * (endDepth - startDepth));
__set__scaleX(startScale + (_local2 * (endScale - startScale)));
__set__scaleY(scaleX);
__set__alpha(startAlpha + (_local2 * (endAlpha - startAlpha)));
}
}
_local3 = getWrappedDistanceX(positionX, amoeba.positionX);
_local4 = getWrappedDistanceY(positionY, amoeba.positionY);
_local5 = Math.sqrt((_local3 * _local3) + (_local4 * _local4));
if (_local5 <= com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_RENDERDISTANCE) {
__set__visible(true);
} else {
__set__visible(false);
}
updateDisplay(_local3, _local4);
return(false);
}
function updateDisplay(xDistance, yDistance) {
var _local2 = Math.pow(com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE, depth);
__set__x(amoeba.__get__x() + (_local2 * xDistance));
__set__y(amoeba.__get__y() + (_local2 * yDistance));
__set__alpha(1 - (Math.abs(depth) * (1 - com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA)));
}
static var TYPE_SPEEDUP = 0;
static var TYPE_DEVOLVE = 1;
static var STATE_FADEIN = 0;
static var STATE_NORMAL = 1;
static var STATE_PICKUP = 2;
static var STATE_TRANSITION = 3;
}
Symbol 362 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Amoeba] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Amoeba extends com.novelgames.flashgames.amoebaslifeAS2.GameObject
{
var circle, amoeba, state, size, __get__scaleX, accelerationX, accelerationY, speedX, speedY, positionX, positionY, deltaX, deltaY, speed, isSpeedUp, speedMultiplier, __set__scaleX, __set__scaleY, scaleX, __set__alpha, startScale, endScale, timeSinceStart, __get__parent, __set__rotation, rotation, timeSinceSpeedUp, isInvincible, timeSinceInvincible, x, y, __get__x, __set__x, __get__y, __set__y, gotoAndPlay, gotoAndStop;
function Amoeba () {
super();
circle.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
amoeba.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
}
function initialize() {
state = STATE_NORMAL;
startInvicible();
showNormal();
size = 1;
circle.gotoAndStop("self");
circle.__set__width(((2 * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BASERADIUS) * size) / __get__scaleX());
circle.__set__height(circle.width);
accelerationX = 0;
accelerationY = 0;
speedX = 0;
speedY = 0;
positionX = Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
positionY = Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
deltaX = 0;
deltaY = 0;
speed = 0;
isSpeedUp = false;
speedMultiplier = 1;
}
function reborn() {
state = STATE_NORMAL;
startInvicible();
accelerationX = 0;
accelerationY = 0;
speedX = 0;
speedY = 0;
speed = 0;
positionX = Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
positionY = Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
__set__scaleX(size);
__set__scaleY(scaleX);
__set__alpha(1);
isSpeedUp = false;
speedMultiplier = 1;
}
function setMovement(xMagnitude, yMagnitude) {
accelerationX = (xMagnitude * speedMultiplier) * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_ACCELERATION;
accelerationY = (yMagnitude * speedMultiplier) * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_ACCELERATION;
}
function startConsume(lifeformSize) {
state = STATE_CONSUME;
startScale = scaleX;
size = size + (lifeformSize * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_CONSUMEFACTOR);
if (size < 1) {
size = 1;
}
endScale = size;
timeSinceStart = 0;
showConsume();
}
function startGrow() {
state = STATE_GROW;
timeSinceStart = 0;
showGrow();
}
function startShrink(shrinkValue) {
state = STATE_SHRINK;
startScale = scaleX;
size = size - shrinkValue;
if (size < 1) {
size = 1;
}
endScale = size;
timeSinceStart = 0;
showShrink();
}
function startPerish() {
if (state == STATE_PERISH) {
return(undefined);
}
state = STATE_PERISH;
timeSinceStart = 0;
startScale = scaleX;
showDie();
}
function startTransition() {
state = STATE_TRANSITION;
timeSinceStart = 0;
startScale = scaleX;
accelerationX = 0;
accelerationY = 0;
speedX = 0;
speedY = 0;
speed = 0;
size = 1;
}
function update(currentTime, timeSinceLastTime) {
var _local2;
switch (state) {
case STATE_NORMAL :
break;
case STATE_CONSUME :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_CONSUMEDURATION;
if (_local2 >= 1) {
state = STATE_GROW;
startGrow();
amoeba.consumeMovie.gotoAndStop(amoeba.consumeMovie.totalFrames);
break;
}
amoeba.consumeMovie.gotoAndStop(1 + Math.floor(_local2 * amoeba.consumeMovie.totalFrames));
break;
case STATE_GROW :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_GROWDURATION;
if (_local2 >= 1) {
state = STATE_NORMAL;
showNormal();
amoeba.growMovie.gotoAndStop(amoeba.growMovie.totalFrames);
__set__scaleX(endScale);
__set__scaleY(scaleX);
if (Object(__get__parent().parent).levelProgress >= 1) {
Object(__get__parent().parent).levelProgress = 0;
Object(__get__parent().parent).levelUp();
}
} else {
amoeba.growMovie.gotoAndStop(1 + Math.floor(_local2 * amoeba.growMovie.totalFrames));
__set__scaleX(startScale + ((endScale - startScale) * _local2));
__set__scaleY(scaleX);
break;
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_SHRINKDURATION;
if (_local2 >= 1) {
state = STATE_NORMAL;
showNormal();
amoeba.shrinkMovie.gotoAndStop(amoeba.shrinkMovie.totalFrames);
__set__scaleX(endScale);
__set__scaleY(scaleX);
} else {
amoeba.shrinkMovie.gotoAndStop(1 + Math.floor(_local2 * amoeba.shrinkMovie.totalFrames));
__set__scaleX(startScale + ((endScale - startScale) * _local2));
__set__scaleY(scaleX);
break;
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_PERISHDURATION;
if (_local2 >= 1) {
state == STATE_NORMAL;
showNormal();
__set__rotation(0);
return(true);
}
__set__scaleX(startScale * (1 - _local2));
__set__scaleY(scaleX);
__set__alpha(1 - _local2);
rotation = rotation + ((timeSinceLastTime / 1000) * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_ROTATESPEED);
return(false);
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
if (_local2 >= 1) {
__set__scaleX(1);
__set__scaleY(scaleX);
size = 1;
state = STATE_NORMAL;
} else {
__set__scaleX(1 + ((startScale - 1) * (1 - _local2)));
__set__scaleY(scaleX);
}
}
}
case STATE_SHRINK :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_SHRINKDURATION;
if (_local2 >= 1) {
state = STATE_NORMAL;
showNormal();
amoeba.shrinkMovie.gotoAndStop(amoeba.shrinkMovie.totalFrames);
__set__scaleX(endScale);
__set__scaleY(scaleX);
} else {
amoeba.shrinkMovie.gotoAndStop(1 + Math.floor(_local2 * amoeba.shrinkMovie.totalFrames));
__set__scaleX(startScale + ((endScale - startScale) * _local2));
__set__scaleY(scaleX);
break;
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_PERISHDURATION;
if (_local2 >= 1) {
state == STATE_NORMAL;
showNormal();
__set__rotation(0);
return(true);
}
__set__scaleX(startScale * (1 - _local2));
__set__scaleY(scaleX);
__set__alpha(1 - _local2);
rotation = rotation + ((timeSinceLastTime / 1000) * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_ROTATESPEED);
return(false);
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
if (_local2 >= 1) {
__set__scaleX(1);
__set__scaleY(scaleX);
size = 1;
state = STATE_NORMAL;
} else {
__set__scaleX(1 + ((startScale - 1) * (1 - _local2)));
__set__scaleY(scaleX);
}
}
case STATE_PERISH :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_PERISHDURATION;
if (_local2 >= 1) {
state == STATE_NORMAL;
showNormal();
__set__rotation(0);
return(true);
}
__set__scaleX(startScale * (1 - _local2));
__set__scaleY(scaleX);
__set__alpha(1 - _local2);
rotation = rotation + ((timeSinceLastTime / 1000) * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_ROTATESPEED);
return(false);
case STATE_TRANSITION :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
if (_local2 >= 1) {
__set__scaleX(1);
__set__scaleY(scaleX);
size = 1;
state = STATE_NORMAL;
} else {
__set__scaleX(1 + ((startScale - 1) * (1 - _local2)));
__set__scaleY(scaleX);
}
}
if (isSpeedUp) {
timeSinceSpeedUp = timeSinceSpeedUp + timeSinceLastTime;
if (timeSinceSpeedUp >= com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_SPEEDUP_DURATION) {
endSpeedUp();
}
}
if (isInvincible) {
timeSinceInvincible = timeSinceInvincible + timeSinceLastTime;
if (timeSinceInvincible >= com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_INVINCIBLEDURATION) {
endInvincible();
}
}
updateSpeed(timeSinceLastTime);
updatePosition(timeSinceLastTime);
updateDisplay();
return(false);
}
function updateSpeed(timeSinceLastTime) {
var _local2;
var _local3;
speedX = speedX + (((speedMultiplier * accelerationX) * timeSinceLastTime) / 1000);
speedY = speedY + (((speedMultiplier * accelerationY) * timeSinceLastTime) / 1000);
_local2 = Math.sqrt((speedX * speedX) + (speedY * speedY));
_local3 = (((speedMultiplier * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_DECELERATION) * timeSinceLastTime) / 1000) / _local2;
_local2 = _local2 - (((speedMultiplier * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_DECELERATION) * timeSinceLastTime) / 1000);
if (_local2 < 0) {
speedX = 0;
speedY = 0;
} else if (_local2 > (speedMultiplier * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED)) {
speedX = speedX * ((speedMultiplier * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED) / _local2);
speedY = speedY * ((speedMultiplier * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED) / _local2);
} else {
speedX = speedX * (1 - _local3);
speedY = speedY * (1 - _local3);
}
}
function updatePosition(timeSinceLastTime) {
deltaX = (speedX * timeSinceLastTime) / 1000;
deltaY = (speedY * timeSinceLastTime) / 1000;
positionX = positionX + deltaX;
positionY = positionY + deltaY;
if (positionX < 0) {
positionX = positionX + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
} else if (positionX > com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH) {
positionX = positionX - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
}
if (positionY < 0) {
positionY = positionY + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
} else if (positionY > com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT) {
positionY = positionY - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
}
}
function updateDisplay() {
x = x + deltaX;
y = y + deltaY;
if (__get__x() < com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_XRANGE[0]) {
__set__x(com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_XRANGE[0]);
} else if (__get__x() > com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_XRANGE[1]) {
__set__x(com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_XRANGE[1]);
}
if (__get__y() < com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_YRANGE[0]) {
__set__y(com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_YRANGE[0]);
} else if (__get__y() > com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_YRANGE[1]) {
__set__y(com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_YRANGE[1]);
}
}
function startSpeedUp() {
isSpeedUp = true;
speedMultiplier = com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_SPEEDUP_FACTOR;
timeSinceSpeedUp = 0;
}
function endSpeedUp() {
isSpeedUp = false;
speedMultiplier = 1;
}
function startInvicible() {
isInvincible = true;
timeSinceInvincible = 0;
gotoAndPlay(1);
}
function endInvincible() {
isInvincible = false;
gotoAndStop(1);
}
function hideEveryThing() {
amoeba.normalMovie._visible = false;
amoeba.consumeMovie._visible = false;
amoeba.growMovie._visible = false;
amoeba.shrinkMovie._visible = false;
amoeba.dieMovie._visible = false;
}
function showNormal() {
hideEveryThing();
amoeba.normalMovie._visible = true;
}
function showConsume() {
hideEveryThing();
amoeba.consumeMovie._visible = true;
amoeba.consumeMovie.gotoAndPlay(1);
}
function showGrow() {
hideEveryThing();
amoeba.growMovie._visible = true;
amoeba.growMovie.gotoAndPlay(1);
}
function showShrink() {
hideEveryThing();
amoeba.shrinkMovie._visible = true;
amoeba.shrinkMovie.gotoAndPlay(1);
}
function showDie() {
hideEveryThing();
amoeba.dieMovie._visible = true;
}
static var STATE_NORMAL = 0;
static var STATE_CONSUME = 1;
static var STATE_GROW = 2;
static var STATE_PERISH = 3;
static var STATE_TRANSITION = 4;
static var STATE_SHRINK = 5;
}
Symbol 363 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.MessagePlayAgain] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.MessagePlayAgain extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var playAgainButton, homeButton;
function MessagePlayAgain () {
super();
playAgainButton.__proto__ = com.novelgames.flashgames.commonAS2.NewButton.prototype;
homeButton.__proto__ = com.novelgames.flashgames.commonAS2.NewButton.prototype;
}
}
Symbol 364 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewButton] Frame 0
class com.novelgames.flashgames.commonAS2.NewButton extends Button
{
var _parent, _x, _y, _xmouse, _ymouse, _visible, _alpha, _name, onRelease, onRollOver, onRollOut, onPress, onReleaseOutside;
function NewButton () {
super();
}
function get parent() {
return(_parent);
}
function set x(x) {
_x = x;
//return(this.x);
}
function get x() {
return(_x);
}
function set y(y) {
_y = y;
//return(this.y);
}
function get y() {
return(_y);
}
function set mouseX(mouseX) {
_xmouse = mouseX;
//return(this.mouseX);
}
function get mouseX() {
return(_xmouse);
}
function set mouseY(mouseY) {
_ymouse = mouseY;
//return(this.mouseY);
}
function get mouseY() {
return(_ymouse);
}
function set visible(visible) {
_visible = visible;
//return(this.visible);
}
function get visible() {
return(_visible);
}
function set alpha(alpha) {
_alpha = alpha * 100;
//return(this.alpha);
}
function get alpha() {
return(_alpha / 100);
}
function get name() {
return(_name);
}
function addEventListener(type, listenerObject, listenerFunctionName) {
switch (type) {
case com.novelgames.flashgames.commonAS2.MouseEvent.CLICK :
onRelease = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OVER :
onRollOver = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OUT :
onRollOut = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_DOWN :
onPress = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_UP :
onRelease = function () {
listenerObject[listenerFunctionName](new com.novelgames.flashgames.commonAS2.MouseEvent(this));
};
onReleaseOutside = onRelease;
}
}
function removeEventListener(type) {
switch (type) {
case com.novelgames.flashgames.commonAS2.MouseEvent.CLICK :
delete onRelease;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OVER :
delete onRollOver;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.ROLL_OUT :
delete onRollOut;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_DOWN :
delete onPress;
break;
case com.novelgames.flashgames.commonAS2.MouseEvent.MOUSE_UP :
delete onRelease;
delete onReleaseOutside;
}
}
}
Symbol 365 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.MessageLevel] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.MessageLevel extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var levelMovie;
function MessageLevel () {
super();
levelMovie.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
}
}
Symbol 366 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Background] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Background extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var depth, __set__visible, startScale, endScale, startAlpha, endAlpha, timeSinceStart, __set__scaleX, __set__scaleY, scaleX, __set__alpha;
function Background () {
super();
}
function initialize(depth) {
this.depth = depth;
if (depth == -1) {
__set__visible(false);
}
}
function startTransition() {
__set__visible(true);
if (depth == -1) {
depth = 0;
startScale = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
endScale = 1;
startAlpha = 0;
endAlpha = 1;
} else if (depth == 0) {
depth = -1;
startScale = 1;
endScale = 1 / com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
startAlpha = 1;
endAlpha = 0;
}
timeSinceStart = 0;
}
function update(currentTime, timeSinceLastTime) {
var _local2;
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
if (_local2 >= 1) {
if (depth == -1) {
__set__visible(false);
}
__set__scaleX(endScale);
__set__scaleY(scaleX);
__set__alpha(endAlpha);
return(true);
}
__set__scaleX(startScale + (_local2 * (endScale - startScale)));
__set__scaleY(scaleX);
__set__alpha(startAlpha + (_local2 * (endAlpha - startAlpha)));
return(false);
}
}
Symbol 367 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var gotoAndPlay, __get__totalFrames;
function DesyncMovie () {
super();
gotoAndPlay(1 + Math.floor(Math.random() * __get__totalFrames()));
}
function initialize() {
gotoAndPlay(1 + Math.floor(Math.random() * __get__totalFrames()));
}
}
Symbol 368 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy3Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy3Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy3Graphic () {
super();
}
}
Symbol 369 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy3Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy3Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy3Movie () {
super();
}
}
Symbol 370 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy1Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy1Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy1Graphic () {
super();
}
}
Symbol 371 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy1Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy1Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy1Movie () {
super();
}
}
Symbol 372 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy8Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy8Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy8Graphic () {
super();
}
}
Symbol 373 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy8Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy8Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy8Movie () {
super();
}
}
Symbol 374 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy0Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy0Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy0Graphic () {
super();
}
}
Symbol 375 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy0Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy0Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy0Movie () {
super();
}
}
Symbol 376 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy2Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy2Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy2Graphic () {
super();
}
}
Symbol 377 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy2Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy2Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy2Movie () {
super();
}
}
Symbol 378 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy4Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy4Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy4Graphic () {
super();
}
}
Symbol 379 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy4Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy4Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy4Movie () {
super();
}
}
Symbol 380 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy5Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy5Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy5Graphic () {
super();
}
}
Symbol 381 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy5Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy5Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy5Movie () {
super();
}
}
Symbol 382 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy6Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy6Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy6Graphic () {
super();
}
}
Symbol 383 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy6Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy6Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy6Movie () {
super();
}
}
Symbol 384 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy7Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy7Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy7Graphic () {
super();
}
}
Symbol 385 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy7Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy7Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy7Movie () {
super();
}
}
Symbol 386 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy9Graphic] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy9Graphic extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy9Graphic () {
super();
}
}
Symbol 387 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.enemy9Movie] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.enemy9Movie extends com.novelgames.flashgames.amoebaslifeAS2.DesyncMovie
{
function enemy9Movie () {
super();
}
}
Symbol 388 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Lifeform] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Lifeform extends com.novelgames.flashgames.amoebaslifeAS2.GameObject
{
var circle, normalMovie, dieMovie, type, __set__visible, positionX, positionY, level, isActive, speed, acceleration, deceleration, wanderSpeed, pursueSpeed, evadeSpeed, activeDistance, deactiveDistance, speedX, speedY, state, size, __set__scaleX, __set__scaleY, scaleX, __get__scaleX, depth, __set__alpha, amoeba, startX, x, startY, y, timeSinceStart, startScale, endScale, startAlpha, alpha, endAlpha, startDepth, endDepth, duration, __set__x, __set__y, getWrappedDistanceX, getWrappedDistanceY, __get__x, __get__y;
function Lifeform () {
super();
circle.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
normalMovie.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
dieMovie.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
type = Math.floor(Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_TYPE);
normalMovie.gotoAndStop(1 + type);
dieMovie.gotoAndStop(1 + type);
dieMovie.__set__visible(false);
__set__visible(false);
}
function initialize(positionX, positionY, levelInfos, isPredator, isActive, amoeba) {
var _local3;
this.positionX = positionX;
this.positionY = positionY;
level = levelInfos.level;
this.isActive = isActive;
speed = 0;
acceleration = 0;
deceleration = 0;
wanderSpeed = (Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED) * levelInfos.wanderSpeedFactor;
pursueSpeed = com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED * levelInfos.pursueSpeedFactor;
evadeSpeed = com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MAXSPEED * levelInfos.evadeSpeedFactor;
activeDistance = levelInfos.activeDistance;
deactiveDistance = levelInfos.deactiveDistance;
acceleration = levelInfos.acceleration;
deceleration = levelInfos.deceleration;
speed = wanderSpeed;
_local3 = (Math.random() * Math.PI) * 2;
speedX = speed * Math.cos(_local3);
speedY = speed * Math.sin(_local3);
state = STATE_WANDER;
if (isPredator) {
size = 1 + (Math.random() * levelInfos.predatorSize);
} else {
size = 1 - (Math.random() * (1 - levelInfos.preySize));
}
__set__scaleX(size);
__set__scaleY(scaleX);
circle.__set__width(((2 * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BASERADIUS) * size) / __get__scaleX());
circle.__set__height(circle.width);
depth = 0;
if (!isActive) {
scaleX = scaleX * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
__set__scaleY(scaleX);
__set__alpha(com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA);
circle.__set__visible(false);
speed = speed * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSPEEDFACTOR;
depth = 1;
}
this.amoeba = amoeba;
}
function startWander() {
if (state == STATE_WANDER) {
return(undefined);
}
state = STATE_WANDER;
}
function startPursue() {
if (state == STATE_PURSUE) {
return(undefined);
}
state = STATE_PURSUE;
}
function startEvade() {
if (state == STATE_EVADE) {
return(undefined);
}
state = STATE_EVADE;
}
function startPerish() {
if (state == STATE_PERISH) {
return(undefined);
}
state = STATE_PERISH;
normalMovie.__set__visible(false);
dieMovie.__set__visible(true);
circle.__set__visible(false);
speedX = 0;
speedY = 0;
startX = x;
startY = y;
timeSinceStart = 0;
startScale = scaleX;
endScale = 0;
startAlpha = alpha;
endAlpha = 0;
}
function startTransition(nextLevel) {
if (state == STATE_PERISH) {
return(undefined);
}
state = STATE_TRANSITION;
speedX = 0;
speedY = 0;
startAlpha = alpha;
startScale = scaleX;
circle.__set__visible(false);
if (level > nextLevel) {
isActive = false;
startScale = (size * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE) * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
endScale = size * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
startAlpha = 0;
endAlpha = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA;
startDepth = 2;
endDepth = 1;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
} else if (level == nextLevel) {
isActive = true;
endScale = size;
endAlpha = 1;
startDepth = 1;
endDepth = 0;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
} else {
isActive = false;
endScale = (size * 1) / com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE;
endAlpha = 0;
startDepth = 0;
endDepth = -1;
duration = com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_TRANSITIONFADEOUTDURATION;
}
timeSinceStart = 0;
}
function update(currentTime, timeSinceLastTime) {
var _local2;
var _local3;
var _local5;
var _local6;
var _local8;
var _local7;
if (size > amoeba.size) {
circle.gotoAndStop("predator");
} else {
circle.gotoAndStop("prey");
}
switch (state) {
case STATE_WANDER :
updateSpeed(timeSinceLastTime);
break;
case STATE_PURSUE :
updateSpeed(timeSinceLastTime);
break;
case STATE_EVADE :
updateSpeed(timeSinceLastTime);
break;
case STATE_PERISH :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_PERISHFADEOUTDURATION;
_local3 = timeSinceStart / com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_PERISHMOVEDURATION;
if (_local3 > 1) {
_local3 = 1;
}
if (_local2 >= 1) {
return(true);
}
__set__x(startX + (_local3 * (amoeba.__get__x() - startX)));
__set__y(startY + (_local3 * ((amoeba.__get__y() + (com.novelgames.flashgames.amoebaslifeAS2.Config.AMOEBA_MOUTHYOFFSET * amoeba.size)) - startY)));
__set__scaleX(startScale + (_local2 * (endScale - startScale)));
__set__scaleY(scaleX);
return(false);
case STATE_TRANSITION :
timeSinceStart = timeSinceStart + timeSinceLastTime;
_local2 = timeSinceStart / duration;
if (_local2 >= 1) {
depth = endDepth;
__set__scaleX(endScale);
__set__scaleY(scaleX);
__set__alpha(endAlpha);
if (depth == 0) {
circle.__set__visible(true);
} else if (depth == -1) {
return(true);
}
speed = wanderSpeed;
_local7 = (Math.random() * Math.PI) * 2;
speedX = speed * Math.cos(_local7);
speedY = speed * Math.sin(_local7);
state = STATE_WANDER;
} else {
depth = startDepth + (_local2 * (endDepth - startDepth));
__set__scaleX(startScale + (_local2 * (endScale - startScale)));
__set__scaleY(scaleX);
__set__alpha(startAlpha + (_local2 * (endAlpha - startAlpha)));
}
}
_local5 = getWrappedDistanceX(positionX, amoeba.positionX);
_local6 = getWrappedDistanceY(positionY, amoeba.positionY);
_local8 = Math.sqrt((_local5 * _local5) + (_local6 * _local6));
if (_local8 <= com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_RENDERDISTANCE) {
__set__visible(true);
} else {
__set__visible(false);
}
updatePosition(timeSinceLastTime);
updateDisplay(_local5, _local6);
return(false);
}
function updateSpeed(timeSinceLastTime) {
var _local9;
var _local4;
var _local3;
var _local7;
var _local5;
var _local2;
var _local8;
_local4 = __get__x() - amoeba.__get__x();
_local3 = __get__y() - amoeba.__get__y();
_local7 = Math.sqrt((_local4 * _local4) + (_local3 * _local3));
_local5 = Math.atan2(_local3, _local4);
switch (state) {
case STATE_WANDER :
_local2 = wanderSpeed;
if (!isActive) {
_local2 = _local2 * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSPEEDFACTOR;
}
_local5 = Math.atan2(speedY, speedX);
break;
case STATE_PURSUE :
_local2 = pursueSpeed;
_local4 = amoeba.__get__x() - __get__x();
_local3 = amoeba.__get__y() - __get__y();
_local5 = Math.atan2(_local3, _local4);
break;
case STATE_EVADE :
_local2 = evadeSpeed;
_local4 = __get__x() - amoeba.__get__x();
_local3 = __get__y() - amoeba.__get__y();
_local5 = Math.atan2(_local3, _local4);
}
if (speed > _local2) {
if ((speed - ((deceleration * timeSinceLastTime) / 1000)) < _local2) {
speed = _local2;
} else {
speed = speed - ((deceleration * timeSinceLastTime) / 1000);
}
} else if (speed < _local2) {
if ((speed + ((acceleration * timeSinceLastTime) / 1000)) > _local2) {
speed = _local2;
} else {
speed = speed + ((acceleration * timeSinceLastTime) / 1000);
}
}
speedX = speed * Math.cos(_local5);
speedY = speed * Math.sin(_local5);
}
function updatePosition(timeSinceLastTime) {
positionX = positionX + ((speedX * timeSinceLastTime) / 1000);
positionY = positionY + ((speedY * timeSinceLastTime) / 1000);
if (positionX < 0) {
positionX = positionX + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
} else if (positionX > com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH) {
positionX = positionX - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH;
}
if (positionY < 0) {
positionY = positionY + com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
} else if (positionY > com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT) {
positionY = positionY - com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT;
}
}
function updateDisplay(xDistance, yDistance) {
var _local2 = Math.pow(com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDSCALE, depth);
__set__x(amoeba.__get__x() + (_local2 * xDistance));
__set__y(amoeba.__get__y() + (_local2 * yDistance));
__set__alpha(1 - (Math.abs(depth) * (1 - com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BACKGROUNDALPHA)));
}
static var STATE_WANDER = 1;
static var STATE_PURSUE = 2;
static var STATE_EVADE = 3;
static var STATE_PERISH = 4;
static var STATE_TRANSITION = 5;
static var STATE_TRANSITION_NEXTLEVEL = 6;
static var STATE_TRANSITION_THISLEVEL = 7;
static var STATE_TRANSITION_LASTLEVEL = 8;
}
Symbol 389 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Message] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Message extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var gotoAndStop, messageLevel, removeChild, createMovie, addChild, timer, messagePlayAgain, __get__parent;
function Message () {
super();
}
function hide() {
gotoAndStop("hide");
if (messageLevel) {
removeChild(messageLevel);
messageLevel = null;
}
}
function showLevel(level) {
var _local2;
hide();
gotoAndStop("level");
_local2 = createMovie("MessageLevel");
messageLevel = _local2;
messageLevel.levelMovie.levelText.text = com.novelgames.flashgames.commonAS2.Util.substituteText(messageLevel.levelMovie.levelText.text, "LEVELTEXT", level.toString());
addChild(messageLevel);
timer = new com.novelgames.flashgames.commonAS2.NewTimer(com.novelgames.flashgames.amoebaslifeAS2.Config.MESSAGE_LEVEL_DURATION, 1);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "endShowLevel");
timer.start();
}
function endShowLevel(event) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
hide();
}
function showLevelClear() {
gotoAndStop("levelClear");
}
function showGameOver() {
gotoAndStop("gameOver");
}
function showPlayAgain() {
var _local2;
_local2 = createMovie("MessagePlayAgain");
messagePlayAgain = _local2;
messagePlayAgain.playAgainButton.addEventListener(com.novelgames.flashgames.commonAS2.MouseEvent.CLICK, this, "onClickPlayAgainButton");
messagePlayAgain.homeButton.addEventListener(com.novelgames.flashgames.commonAS2.MouseEvent.CLICK, this, "onClickHomeButton");
addChild(messagePlayAgain);
}
function onClickPlayAgainButton(event) {
Object(__get__parent().parent).gotoGamePage();
}
function onClickHomeButton(event) {
Object(__get__parent().parent).gotoTitlePage();
}
}
Symbol 390 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Util] Frame 0
class com.novelgames.flashgames.commonAS2.Util
{
function Util () {
}
static function generateIndexes(count) {
var _local2 = new Array();
var _local1;
_local1 = 0;
while (_local1 < count) {
_local2[_local1] = _local1;
_local1++;
}
return(_local2);
}
static function shuffleArray(theArray) {
var _local2;
var _local3;
var _local4;
_local2 = 0;
while (_local2 < theArray.length) {
_local3 = Math.floor(Math.random() * theArray.length);
_local4 = theArray[_local2];
theArray[_local2] = theArray[_local3];
theArray[_local3] = _local4;
_local2++;
}
}
static function getArrayRandomItem(theArray) {
return(theArray[Math.floor(Math.random() * theArray.length)]);
}
static function substituteText(text, key, value) {
return(text.split(("#[" + key) + "]").join(value));
}
}
Symbol 391 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.MiniMap] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.MiniMap extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var __set__visible;
function MiniMap () {
super();
}
function initialize() {
}
function update(amoeba, lifeformsArray) {
}
function drawCircle(x, y, size, colour) {
}
function show() {
__set__visible(true);
}
function hide() {
__set__visible(false);
}
}
Symbol 392 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.LifeCounter] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.LifeCounter extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var maximumWidth, amoebasArray, removeChild, createMovie, addChild;
function LifeCounter () {
super();
}
function LiveCounter() {
}
function initialize(maximumWidth) {
this.maximumWidth = maximumWidth;
amoebasArray = [];
}
function setLife(lifeCount) {
var _local2;
var _local3;
var _local4;
while (amoebasArray.length > 0) {
removeChild(MovieClip(amoebasArray.pop()));
}
_local3 = 0;
while (_local3 < lifeCount) {
_local4 = createMovie("LifeSymbol");
_local2 = _local4;
amoebasArray.push(_local2);
addChild(_local2);
_local3++;
}
updateDisplay();
}
function updateDisplay() {
var _local4;
var _local3;
var _local2;
if (amoebasArray.length == 0) {
return(undefined);
}
_local4 = amoebasArray[0].width;
if (((amoebasArray.length * _local4) + ((amoebasArray.length - 1) * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFECOUNTER_SEPARATION)) <= maximumWidth) {
_local3 = _local4 + com.novelgames.flashgames.amoebaslifeAS2.Config.LIFECOUNTER_SEPARATION;
} else {
_local3 = (maximumWidth - _local4) / (amoebasArray.length - 1);
}
_local2 = 0;
while (_local2 < amoebasArray.length) {
amoebasArray[_local2].x = _local2 * _local3;
_local2++;
}
}
}
Symbol 393 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.LifeSymbol] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.LifeSymbol extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
function LifeSymbol () {
super();
}
}
Symbol 394 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.ProgressBar] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.ProgressBar extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var fill, empty, length;
function ProgressBar () {
super();
fill.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
empty.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
length = empty.width;
}
function initialize() {
updateDisplay(0);
}
function updateDisplay(progress) {
if (progress > 1) {
progress = 1;
} else if (progress < 0) {
progress = 0;
}
fill.__set__width(length * progress);
}
}
Symbol 395 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.TimeBar] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.TimeBar extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var theMask, colourBg, duration, __set__visible, isShown, timeSinceStart;
function TimeBar () {
super();
theMask.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
colourBg.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
}
function initialize(duration) {
this.duration = duration;
hide();
}
function startShow() {
__set__visible(true);
isShown = true;
timeSinceStart = 0;
theMask.__set__x(colourBg.width);
}
function update(time, deltaTime) {
var _local2;
if (!isShown) {
return(undefined);
}
timeSinceStart = timeSinceStart + deltaTime;
_local2 = timeSinceStart / duration;
if (_local2 >= 1) {
hide();
return(undefined);
}
theMask.__set__x((1 - _local2) * colourBg.__get__width());
}
function hide() {
__set__visible(false);
isShown = false;
}
}
Symbol 396 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.OptionsButton] Frame 0
class com.novelgames.flashgames.commonAS2.OptionsButton extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var onRelease;
function OptionsButton () {
super();
onRelease = function () {
this._parent._parent.showOptions();
};
}
}
Symbol 397 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.InstructionsButton] Frame 0
class com.novelgames.flashgames.commonAS2.InstructionsButton extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var onRelease;
function InstructionsButton () {
super();
onRelease = function () {
this._parent._parent.showInstructionsFromGame();
};
}
}
Symbol 398 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.CommonGame] Frame 0
class com.novelgames.flashgames.commonAS2.CommonGame extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var onPress, useHandCursor, mouseHidden;
function CommonGame () {
super();
}
static function get gameStage() {
return(com.novelgames.flashgames.commonAS2.NewStage.getNewStage());
}
function pause() {
var _local2;
com.novelgames.flashgames.commonAS2.NewTimer.pause();
gameStage.disableKeyListeners();
onPress = function () {
};
useHandCursor = false;
if (mouseHidden) {
Mouse.show();
}
if (com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip != null) {
_local2 = com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip;
_local2.stopDrag();
com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip = _local2;
}
}
function unpause() {
com.novelgames.flashgames.commonAS2.NewTimer.unpause();
gameStage.__set__focus(gameStage);
gameStage.enableKeyListeners();
delete onPress;
if (mouseHidden) {
Mouse.hide();
}
if (com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip != null) {
com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._x = com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._x + (com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._xmouse - com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClipMouseX);
com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._y = com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._y + (com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip._ymouse - com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClipMouseY);
com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClip.startDrag(com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClipLockCenter, com.novelgames.flashgames.commonAS2.NewMovieClip.draggingMovieClipBounds);
}
}
function hideMouse() {
mouseHidden = true;
Mouse.hide();
}
function showMouse() {
mouseHidden = false;
Mouse.show();
}
}
Symbol 399 MovieClip [__Packages.com.novelgames.flashgames.amoebaslifeAS2.Game] Frame 0
class com.novelgames.flashgames.amoebaslifeAS2.Game extends com.novelgames.flashgames.commonAS2.CommonGame
{
var optionsButton, instructionsButton, message, progressBar, lifeCounter, scoreText, levelText, miniMap, blackScreen, timeBar, powerUpsHolder, lifeformsHolder, background1, background0, __level, __score, __life, __levelProgress, lifeformsArray, powerUpsArray, isShowMiniMap, levelInfos, soundConsume, createSound, soundSpeedUp, soundDevolve, soundLoseLife, soundLevelUp, soundGameOver, backgroundsArray, amoeba, nextLevelInfos, upPressed, downPressed, leftPressed, rightPressed, isDead, startTime, lastTime, timer, swapChildren, __get__parent;
function Game () {
super();
optionsButton.__proto__ = com.novelgames.flashgames.commonAS2.OptionsButton.prototype;
instructionsButton.__proto__ = com.novelgames.flashgames.commonAS2.InstructionsButton.prototype;
message.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.Message.prototype;
progressBar.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.ProgressBar.prototype;
lifeCounter.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.LifeCounter.prototype;
scoreText.__proto__ = com.novelgames.flashgames.commonAS2.NewTextField.prototype;
levelText.__proto__ = com.novelgames.flashgames.commonAS2.NewTextField.prototype;
miniMap.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.MiniMap.prototype;
blackScreen.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
timeBar.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.TimeBar.prototype;
powerUpsHolder.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
lifeformsHolder.__proto__ = com.novelgames.flashgames.commonAS2.NewMovieClip.prototype;
background1.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.Background.prototype;
background0.__proto__ = com.novelgames.flashgames.amoebaslifeAS2.Background.prototype;
}
function get level() {
if (__level == null) {
__level = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
return(__level.__get__value());
}
function set level(level) {
if (__level == null) {
__level = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
__level.__set__value(level);
levelText.text = __level.__get__value().toString();
//return(this.level);
}
function get score() {
if (__score == null) {
__score = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
return(__score.__get__value());
}
function set score(score) {
if (__score == null) {
__score = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
__score.__set__value(score);
scoreText.text = __score.__get__value().toString();
//return(this.score);
}
function get life() {
if (__life == null) {
__life = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
return(__life.__get__value());
}
function set life(life) {
if (__life == null) {
__life = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
if (life < 0) {
life = 0;
}
__life.__set__value(life);
lifeCounter.setLife(life);
//return(this.life);
}
function get levelProgress() {
if (__levelProgress == null) {
__levelProgress = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
return(__levelProgress.__get__value());
}
function set levelProgress(levelProgress) {
if (__levelProgress == null) {
__levelProgress = new com.novelgames.flashgames.commonAS2.ObfuscatedNumber();
}
if (levelProgress < 0) {
levelProgress = 0;
} else if (levelProgress > 1) {
levelProgress = 1;
}
__levelProgress.__set__value(levelProgress);
progressBar.updateDisplay(levelProgress);
//return(this.levelProgress);
}
function onLoad() {
initialize();
}
function initialize() {
score = (0);
level = (1);
lifeformsArray = [];
powerUpsArray = [];
message.hide();
initializeBackground();
initializeAmoeba();
lifeCounter.initialize(com.novelgames.flashgames.amoebaslifeAS2.Config.LIFECOUNTER_WIDTH);
life = (com.novelgames.flashgames.amoebaslifeAS2.Config.NOOFLIVES);
isShowMiniMap = false;
miniMap.initialize();
miniMap.hide();
timeBar.initialize(com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_SPEEDUP_DURATION);
blackScreen.__set__visible(false);
initializeLevel(level);
levelInfos = getLevelInfos(level);
addLifeForms(levelInfos, level);
addPowerUps(levelInfos, level);
message.showLevel(level);
soundConsume = createSound("SoundConsume");
soundSpeedUp = createSound("SoundSpeedUp");
soundDevolve = createSound("SoundDevolve");
soundLoseLife = createSound("SoundLoseLife");
soundLevelUp = createSound("SoundLevelUp");
soundGameOver = createSound("SoundGameOver");
startPlay();
}
function initializeBackground() {
var _local2;
backgroundsArray = [];
_local2 = 0;
while (_local2 < 2) {
backgroundsArray.push(this["background" + _local2]);
backgroundsArray[_local2].initialize(_local2 - 1);
_local2++;
}
}
function initializeAmoeba() {
var _local2;
_local2 = lifeformsHolder.createMovie("Amoeba");
amoeba = _local2;
amoeba.initialize();
amoeba.__set__x(com.novelgames.flashgames.amoebaslifeAS2.Config.GAMESTAGE_WIDTH / 2);
amoeba.__set__y(com.novelgames.flashgames.amoebaslifeAS2.Config.GAMESTAGE_HEIGHT / 2);
lifeformsHolder.addChild(amoeba);
}
function initializeLevel(level) {
levelProgress = (0);
levelInfos = getLevelInfos(level);
nextLevelInfos = getLevelInfos(level + 1);
addLifeForms(nextLevelInfos, level);
addPowerUps(nextLevelInfos, level);
}
function getLevelInfos(level) {
var _local2 = {};
var _local1 = (level - 1) / (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_MAXIMUMDIFFICULTY - 1);
if (_local1 > 1) {
_local1 = 1;
}
_local2.level = level;
_local2.predatorCount = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORCOUNT_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORCOUNT_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORCOUNT_RANGE[0]));
_local2.preyCount = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYCOUNT_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYCOUNT_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYCOUNT_RANGE[0]));
_local2.predatorSize = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORSIZE_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORSIZE_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREDATORSIZE_RANGE[0]));
_local2.preySize = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYSIZE_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYSIZE_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PREYSIZE_RANGE[0]));
_local2.activateDistance = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACTIVEDISTANCE_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACTIVEDISTANCE_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACTIVEDISTANCE_RANGE[0]));
_local2.deactivateDistance = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEACTIVEDISTANCE_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEACTIVEDISTANCE_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEACTIVEDISTANCE_RANGE[0]));
_local2.wanderSpeedFactor = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_WANDERSPEEDFACTOR_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_WANDERSPEEDFACTOR_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_WANDERSPEEDFACTOR_RANGE[0]));
_local2.pursueSpeedFactor = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PERSUESPEEDFACTOR_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PERSUESPEEDFACTOR_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_PERSUESPEEDFACTOR_RANGE[0]));
_local2.evadeSpeedFactor = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_EVADESPEEDFACTOR_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_EVADESPEEDFACTOR_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_EVADESPEEDFACTOR_RANGE[0]));
_local2.acceleration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACCELERATION_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACCELERATION_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_ACCELERATION_RANGE[0]));
_local2.deceleration = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DECELERATION_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DECELERATION_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DECELERATION_RANGE[0]));
_local2.speedUp = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_SPEEDUPCOUNT_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_SPEEDUPCOUNT_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_SPEEDUPCOUNT_RANGE[0]));
_local2.devolve = com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEVOLVECOUNT_RANGE[0] + (_local1 * (com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEVOLVECOUNT_RANGE[1] - com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_DEVOLVECOUNT_RANGE[0]));
return(_local2);
}
function addLifeForms(levelInfos, currentLevel) {
var _local2;
var _local6 = levelInfos.level == currentLevel;
var _local3;
var _local4;
_local3 = 0;
while (_local3 < levelInfos.predatorCount) {
_local4 = lifeformsHolder.createMovie("Lifeform");
_local2 = _local4;
_local2.initialize(Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT, levelInfos, true, _local6, amoeba);
lifeformsHolder.addChild(_local2);
lifeformsArray.push(_local2);
_local3++;
}
_local3 = 0;
while (_local3 < levelInfos.preyCount) {
_local4 = lifeformsHolder.createMovie("Lifeform");
_local2 = _local4;
_local2.initialize(Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT, levelInfos, false, _local6, amoeba);
lifeformsHolder.addChild(_local2);
lifeformsArray.push(_local2);
_local3++;
}
}
function addPowerUps(levelInfos, currentLevel) {
var _local2;
var _local6 = levelInfos.level == currentLevel;
var _local3;
var _local4;
_local3 = 0;
while (_local3 < levelInfos.speedUp) {
_local4 = powerUpsHolder.createMovie("PowerUp");
_local2 = _local4;
_local2.initialize(com.novelgames.flashgames.amoebaslifeAS2.PowerUp.TYPE_SPEEDUP, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT, levelInfos, _local6, amoeba);
powerUpsHolder.addChild(_local2);
powerUpsArray.push(_local2);
_local3++;
}
_local3 = 0;
while (_local3 < levelInfos.speedUp) {
_local4 = powerUpsHolder.createMovie("PowerUp");
_local2 = _local4;
_local2.initialize(com.novelgames.flashgames.amoebaslifeAS2.PowerUp.TYPE_DEVOLVE, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_WIDTH, Math.random() * com.novelgames.flashgames.amoebaslifeAS2.Config.WORLD_HEIGHT, levelInfos, _local6, amoeba);
powerUpsHolder.addChild(_local2);
powerUpsArray.push(_local2);
_local3++;
}
}
function startPlay() {
com.novelgames.flashgames.commonAS2.CommonGame.__get__gameStage().__set__focus(com.novelgames.flashgames.commonAS2.CommonGame.gameStage);
upPressed = false;
downPressed = false;
leftPressed = false;
rightPressed = false;
amoeba.startInvicible();
isDead = false;
startTime = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
lastTime = startTime;
timer = new com.novelgames.flashgames.commonAS2.NewTimer(1, 0);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "onPlayTime");
timer.start();
setControl();
}
function setControl() {
com.novelgames.flashgames.commonAS2.CommonGame.__get__gameStage().addEventListener(com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_DOWN, this, "onKeyDownGame");
com.novelgames.flashgames.commonAS2.CommonGame.__get__gameStage().addEventListener(com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_UP, this, "onKeyUpGame");
}
function unsetControl() {
com.novelgames.flashgames.commonAS2.CommonGame.__get__gameStage().removeEventListener(com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_DOWN);
com.novelgames.flashgames.commonAS2.CommonGame.__get__gameStage().removeEventListener(com.novelgames.flashgames.commonAS2.KeyboardEvent.KEY_UP);
}
function onKeyDownGame(event) {
switch (event.__get__keyCode()) {
case com.novelgames.flashgames.commonAS2.Keyboard.UP :
upPressed = true;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.DOWN :
downPressed = true;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.LEFT :
leftPressed = true;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.RIGHT :
rightPressed = true;
}
resolveMoveDirection();
}
function onKeyUpGame(event) {
switch (event.__get__keyCode()) {
case com.novelgames.flashgames.commonAS2.Keyboard.UP :
upPressed = false;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.DOWN :
downPressed = false;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.LEFT :
leftPressed = false;
break;
case com.novelgames.flashgames.commonAS2.Keyboard.RIGHT :
rightPressed = false;
}
resolveMoveDirection();
}
function resolveMoveDirection() {
var _local2 = 0;
var _local3 = 0;
var _local4;
if (upPressed) {
_local3--;
}
if (downPressed) {
_local3++;
}
if (leftPressed) {
_local2--;
}
if (rightPressed) {
_local2++;
}
_local4 = Math.sqrt((_local2 * _local2) + (_local3 * _local3));
if (_local4 != 0) {
_local2 = _local2 / _local4;
_local3 = _local3 / _local4;
}
amoeba.setMovement(_local2, _local3);
}
function onPlayTime(event) {
var _local2 = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
var _local3 = _local2 - lastTime;
var _local5;
if (isShowMiniMap) {
miniMap.show();
miniMap.update(amoeba, lifeformsArray);
} else {
miniMap.hide();
}
timeBar.update(_local2, _local3);
updateAmoeba(_local2, _local3);
updateLifeforms(_local2, _local3);
updatePowerUps(_local2, _local3);
if (isDead) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
unsetControl();
if (life > 0) {
startBlack();
} else {
miniMap.hide();
showGameOver();
}
return(undefined);
}
checkCollision();
lastTime = _local2;
if (event) {
event.updateAfterEvent();
}
}
function updateAmoeba(time, deltaTime) {
if (amoeba.update(time, deltaTime)) {
life = ((life-1));
timeBar.hide();
isDead = true;
}
}
function startBlack() {
blackScreen.__set__visible(true);
blackScreen.__set__alpha(0);
startTime = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
lastTime = startTime;
timer = new com.novelgames.flashgames.commonAS2.NewTimer(1, 0);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "onBlackTime");
timer.start();
}
function onBlackTime(event) {
var _local2 = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
var _local3 = (_local2 - startTime) / com.novelgames.flashgames.amoebaslifeAS2.Config.BLACKTRANSITION_DURATION;
if (_local3 > 1) {
_local3 = 1;
}
blackScreen.__set__alpha(_local3);
if (_local3 == 1) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
amoeba.reborn();
updateAmoeba(_local2, 1);
updateLifeforms(_local2, 0);
updatePowerUps(_local2, 0);
startTime = _local2;
lastTime = startTime;
timer = new com.novelgames.flashgames.commonAS2.NewTimer(1, 0);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "onUnblackTime");
timer.start();
return(undefined);
}
lastTime = _local2;
}
function onUnblackTime(event) {
var _local3 = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
var _local2 = (_local3 - startTime) / com.novelgames.flashgames.amoebaslifeAS2.Config.BLACKTRANSITION_DURATION;
if (_local2 > 1) {
_local2 = 1;
}
blackScreen.__set__alpha(1 - _local2);
if (_local2 == 1) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
blackScreen.__set__visible(false);
startPlay();
return(undefined);
}
lastTime = _local3;
}
function updateLifeforms(time, deltaTime) {
var _local3;
var _local2;
_local2 = 0;
while (_local2 < lifeformsArray.length) {
_local3 = com.novelgames.flashgames.amoebaslifeAS2.Lifeform(lifeformsArray[_local2]);
if (_local3.update(time, deltaTime)) {
lifeformsHolder.removeChild(_local3);
lifeformsArray.splice(_local2, 1);
_local2--;
}
_local2++;
}
}
function updatePowerUps(time, deltaTime) {
var _local3;
var _local2;
_local2 = 0;
while (_local2 < powerUpsArray.length) {
_local3 = com.novelgames.flashgames.amoebaslifeAS2.PowerUp(powerUpsArray[_local2]);
if (_local3.update(time, deltaTime)) {
powerUpsHolder.removeChild(_local3);
powerUpsArray.splice(_local2, 1);
_local2--;
}
_local2++;
}
}
function checkCollision() {
var _local2;
var _local3;
var _local8;
var _local7;
var _local6;
var _local5;
var _local4;
_local4 = 0;
while (_local4 < lifeformsArray.length) {
_local2 = com.novelgames.flashgames.amoebaslifeAS2.Lifeform(lifeformsArray[_local4]);
if (_local2.state == com.novelgames.flashgames.amoebaslifeAS2.Lifeform.STATE_PERISH) {
} else if (_local2.state == com.novelgames.flashgames.amoebaslifeAS2.Lifeform.STATE_TRANSITION) {
} else if (_local2.level != level) {
} else {
_local8 = (amoeba.size + _local2.size) * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BASERADIUS;
_local7 = _local2.__get__x() - amoeba.__get__x();
_local6 = _local2.__get__y() - amoeba.__get__y();
_local5 = Math.sqrt((_local7 * _local7) + (_local6 * _local6)) - _local8;
if (amoeba.state == com.novelgames.flashgames.amoebaslifeAS2.Amoeba.STATE_PERISH) {
_local2.startWander();
} else if (_local5 <= 0) {
if (_local2.size > amoeba.size) {
if (!amoeba.isInvincible) {
soundLoseLife.play();
amoeba.startPerish();
}
} else {
consumeLifeform(_local2);
}
} else if (_local5 <= levelInfos.activateDistance) {
if (_local2.size > amoeba.size) {
if (!amoeba.isInvincible) {
_local2.startPursue();
}
} else {
_local2.startEvade();
}
} else if (_local5 >= levelInfos.deactivateDistance) {
_local2.startWander();
}
}
_local4++;
}
_local4 = 0;
while (_local4 < powerUpsArray.length) {
_local3 = com.novelgames.flashgames.amoebaslifeAS2.PowerUp(powerUpsArray[_local4]);
if (_local3.level != level) {
} else if (_local3.state != com.novelgames.flashgames.amoebaslifeAS2.PowerUp.STATE_NORMAL) {
} else {
_local8 = (amoeba.size * com.novelgames.flashgames.amoebaslifeAS2.Config.LIFEFORM_BASERADIUS) + com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_RADIUS;
_local7 = _local3.__get__x() - amoeba.__get__x();
_local6 = _local3.__get__y() - amoeba.__get__y();
_local5 = Math.sqrt((_local7 * _local7) + (_local6 * _local6)) - _local8;
if (_local5 <= 0) {
switch (_local3.type) {
case com.novelgames.flashgames.amoebaslifeAS2.PowerUp.TYPE_SPEEDUP :
soundSpeedUp.play();
_local3.startPickUp();
amoeba.startSpeedUp();
timeBar.startShow();
break;
case com.novelgames.flashgames.amoebaslifeAS2.PowerUp.TYPE_DEVOLVE :
if (amoeba.isInvincible) {
} else {
soundDevolve.play();
_local3.startPickUp();
amoeba.startShrink(com.novelgames.flashgames.amoebaslifeAS2.Config.POWERUP_DEVOLVE_FACTOR);
levelProgress = (amoeba.size - 1);
}
}
}
}
_local4++;
}
}
function consumeLifeform(lifeform) {
soundConsume.play();
score = score + com.novelgames.flashgames.amoebaslifeAS2.Config.SCORE_PERCONSUME;
lifeform.startPerish();
amoeba.startConsume(lifeform.size);
levelProgress = (amoeba.size - 1);
}
function levelUp() {
var _local2;
soundLevelUp.play();
score = score + com.novelgames.flashgames.amoebaslifeAS2.Config.SCORE_LEVELCLEAR;
level = ((level+1));
initializeLevel(level);
amoeba.startTransition();
_local2 = 0;
while (_local2 < lifeformsArray.length) {
lifeformsArray[_local2].startTransition(level);
_local2++;
}
_local2 = 0;
while (_local2 < powerUpsArray.length) {
powerUpsArray[_local2].startTransition(level);
_local2++;
}
_local2 = 0;
while (_local2 < backgroundsArray.length) {
backgroundsArray[_local2].startTransition();
_local2++;
}
message.showLevelClear();
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
unsetControl();
startTime = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
lastTime = startTime;
timer = new com.novelgames.flashgames.commonAS2.NewTimer(1, 0);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "onLevelUpTime");
timer.start();
}
function onLevelUpTime(event) {
var _local2 = com.novelgames.flashgames.commonAS2.NewTimer.getTimer();
var _local3 = _local2 - lastTime;
var _local4 = (_local2 - startTime) / com.novelgames.flashgames.amoebaslifeAS2.Config.LEVEL_TRANSITIONDURATION;
if (_local4 > 1) {
_local4 = 1;
}
updateAmoeba(_local2, _local3);
updateLifeforms(_local2, _local3);
updatePowerUps(_local2, _local3);
updateBackground(_local2, _local3);
if (_local4 == 1) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
swapChildren(backgroundsArray[0], backgroundsArray[1]);
startPlay();
message.showLevel(level);
return(undefined);
}
lastTime = _local2;
}
function updateBackground(time, deltaTime) {
var _local2;
_local2 = 0;
while (_local2 < backgroundsArray.length) {
backgroundsArray[_local2].update(time, deltaTime);
_local2++;
}
}
function showGameOver() {
Object(__get__parent()).stopGameMusic();
soundGameOver.play();
message.showGameOver();
timer = new com.novelgames.flashgames.commonAS2.NewTimer(com.novelgames.flashgames.amoebaslifeAS2.Config.MESSAGE_DELAY_PLAYAGAIN, 1);
timer.addEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER, this, "showPlayAgain");
timer.start();
}
function showPlayAgain(event) {
timer.stop();
timer.removeEventListener(com.novelgames.flashgames.commonAS2.TimerEvent.TIMER);
message.showPlayAgain();
reportResults();
}
function reportResults() {
var _local2;
_local2 = {score:score, level:level};
Object(__get__parent()).gameEnded(_local2);
}
}
Symbol 400 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.NewTextField] Frame 0
class com.novelgames.flashgames.commonAS2.NewTextField extends TextField
{
var _x, _y, _rotation, _visible, _alpha, _width, _height, scroll, maxscroll;
function NewTextField () {
super();
}
function set x(x) {
_x = x;
//return(this.x);
}
function get x() {
return(_x);
}
function set y(y) {
_y = y;
//return(this.y);
}
function get y() {
return(_y);
}
function set rotation(rotation) {
_rotation = rotation;
//return(this.rotation);
}
function get rotation() {
return(_rotation);
}
function set visible(visible) {
_visible = visible;
//return(this.visible);
}
function get visible() {
return(_visible);
}
function set alpha(alpha) {
_alpha = alpha * 100;
//return(this.alpha);
}
function get alpha() {
return(_alpha / 100);
}
function get width() {
return(_width);
}
function set width(width) {
_width = width;
//return(this.width);
}
function get height() {
return(_height);
}
function set height(height) {
_height = height;
//return(this.height);
}
function set scrollV(scrollV) {
scroll = scrollV;
//return(this.scrollV);
}
function get scrollV() {
return(scroll);
}
function set maxScrollV(maxScrollV) {
maxscroll = maxScrollV;
//return(this.maxScrollV);
}
function get maxScrollV() {
return(maxscroll);
}
function setTextFormat(textFormat, beginIndex, endIndex) {
if ((beginIndex == undefined) || (endIndex == undefined)) {
super.setTextFormat(textFormat);
} else {
super.setTextFormat(beginIndex, endIndex, textFormat);
}
}
}
Symbol 401 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.ObfuscatedNumber] Frame 0
class com.novelgames.flashgames.commonAS2.ObfuscatedNumber
{
var values;
function ObfuscatedNumber () {
value = (0);
}
function set value(theValue) {
var _local5 = 2 + Math.floor(Math.random() * 9);
var _local4 = theValue;
var _local2;
var _local3;
values = new Array();
_local3 = 0;
while (_local3 < (_local5 - 1)) {
_local2 = (-10000 + theValue) + Math.floor(Math.random() * 20000);
_local4 = _local4 - _local2;
values.push(_local2);
_local3++;
}
values.push(_local4);
//return(value);
}
function get value() {
var _local3 = 0;
var _local2;
_local2 = 0;
while (_local2 < values.length) {
_local3 = _local3 + values[_local2];
_local2++;
}
return(_local3);
}
function toString() {
return(value.toString());
}
}
Symbol 402 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.Keyboard] Frame 0
class com.novelgames.flashgames.commonAS2.Keyboard
{
function Keyboard () {
}
static var LEFT = 37;
static var RIGHT = 39;
static var UP = 38;
static var DOWN = 40;
static var SPACE = 32;
static var BACKSPACE = 8;
static var SHIFT = 16;
static var ENTER = 13;
static var DELETE = 46;
static var NUMPAD_DECIMAL = 110;
static var NUMPAD_ENTER = 13;
}
Symbol 403 MovieClip [__Packages.com.novelgames.flashgames.commonAS2.COPYRIGHT] Frame 0
class com.novelgames.flashgames.commonAS2.COPYRIGHT extends com.novelgames.flashgames.commonAS2.NewMovieClip
{
var text;
function COPYRIGHT () {
super();
trace(text.text);
}
}
Symbol 230 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 _local3 = __width;
var _local2 = __height;
__width = w;
__height = h;
size();
if (noEvent != true) {
dispatchEvent({type:"resize", oldWidth:_local3, oldHeight:_local2});
}
}
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 = mx.core.UIObject(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.2.127";
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 231 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.2.127";
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 232 MovieClip [__Packages.com.novelgames.flashgames.highscoresAS2.HighScores] Frame 0
class com.novelgames.flashgames.highscoresAS2.HighScores extends mx.core.UIComponent
{
var loadingHighScores, showLoadingMessage, shouldEnterPlayerName, records, _visible, __loadScoresAtStart, finishedLoadingScoresAction, page, createObject, __get__width, __get__height, invalidate, __gameID, __loadScoresURL, __saveScoreURL, __dialogColour, __dialogAlpha, __dialogBorderThickness, __dialogBorderColour, __dialogBorderAlpha, __backgroundColour, __backgroundAlpha, __maxNoOfScores, __hashKey, __nameSWFVariable, __highScoresHighlightColour, score, destroyObject, playerName, scoreRange, globalToLocal, scrollDirection, scrollStartTime, scrollStartY, scrollIntervalID, highScoresHighlightIndex;
function HighScores () {
super();
}
function init() {
super.init();
loadingHighScores = false;
showLoadingMessage = false;
shouldEnterPlayerName = true;
records = null;
_visible = false;
if (__loadScoresAtStart) {
finishedLoadingScoresAction = hide;
loadScores();
}
}
function createChildren() {
page = createObject("highScoresTextPage", "page", 0);
page.highScoresModuleText._x = __get__width() / 2;
page.highScoresModuleText._y = __get__height() / 2;
size();
}
function draw() {
super.draw();
page.highScoresModuleText._x = __get__width() / 2;
page.highScoresModuleText._y = __get__height() / 2;
drawBackground();
}
function size() {
super.size();
invalidate();
}
function set gameID(id) {
__gameID = Number(id);
//return(gameID);
}
function get gameID() {
return(__gameID);
}
function set loadScoresURL(url) {
__loadScoresURL = url;
//return(loadScoresURL);
}
function get loadScoresURL() {
return(__loadScoresURL);
}
function set saveScoreURL(url) {
__saveScoreURL = url;
//return(saveScoreURL);
}
function get saveScoreURL() {
return(__saveScoreURL);
}
function set loadScoresAtStart(load) {
__loadScoresAtStart = load;
//return(loadScoresAtStart);
}
function get loadScoresAtStart() {
return(__loadScoresAtStart);
}
function set dialogColour(colour) {
__dialogColour = colour;
//return(dialogColour);
}
function get dialogColour() {
return(__dialogColour);
}
function set dialogAlpha(alpha) {
__dialogAlpha = alpha;
//return(dialogAlpha);
}
function get dialogAlpha() {
return(__dialogAlpha);
}
function set dialogBorderThickness(thickness) {
__dialogBorderThickness = thickness;
//return(dialogBorderThickness);
}
function get dialogBorderThickness() {
return(__dialogBorderThickness);
}
function set dialogBorderColour(colour) {
__dialogBorderColour = colour;
//return(dialogBorderColour);
}
function get dialogBorderColour() {
return(__dialogBorderColour);
}
function set dialogBorderAlpha(alpha) {
__dialogBorderAlpha = alpha;
//return(dialogBorderAlpha);
}
function get dialogBorderAlpha() {
return(__dialogBorderAlpha);
}
function set backgroundColour(colour) {
__backgroundColour = Number(colour);
//return(backgroundColour);
}
function get backgroundColour() {
return(__backgroundColour);
}
function set backgroundAlpha(alpha) {
__backgroundAlpha = Number(alpha);
//return(backgroundAlpha);
}
function get backgroundAlpha() {
return(__backgroundAlpha);
}
function set maxNoOfScores(no) {
__maxNoOfScores = Number(no);
//return(maxNoOfScores);
}
function get maxNoOfScores() {
return(__maxNoOfScores);
}
function set hashKey(hashKey) {
__hashKey = hashKey;
//return(this.hashKey);
}
function get hashKey() {
return(__hashKey);
}
function set nameSWFVariable(nameSWFVariable) {
__nameSWFVariable = nameSWFVariable;
//return(this.nameSWFVariable);
}
function get nameSWFVariable() {
return(__nameSWFVariable);
}
function set highScoresHighlightColour(colour) {
__highScoresHighlightColour = colour;
//return(highScoresHighlightColour);
}
function get highScoresHighlightColour() {
return(__highScoresHighlightColour);
}
function showHighScores() {
showLoadingMessage = true;
finishedLoadingScoresAction = showHighScores;
showHighScoresTable(-1);
}
function showEnterHighScore(score) {
var _local4;
var _local3;
this.score = score;
if (page) {
destroyObject("page");
}
page = createObject("highScoresEnterPage", "page", 0);
page.scoreText.text = score.toString();
page.nameText.text = ((playerName != undefined) ? (playerName) : "");
drawBackground();
_local4 = (((((((page.yourScoreText._height + com.novelgames.flashgames.highscoresAS2.Config.ENTER_LABELFIELDSPACING) + page.scoreText._height) + com.novelgames.flashgames.highscoresAS2.Config.ENTER_SECTIONSPACING) + page.enterText._height) + com.novelgames.flashgames.highscoresAS2.Config.ENTER_LABELFIELDSPACING) + page.nameText._height) + com.novelgames.flashgames.highscoresAS2.Config.ENTER_SECTIONSPACING) + page.okButton._height;
_local3 = (__get__height() - _local4) / 2;
page.yourScoreText._x = __get__width() / 2;
page.yourScoreText._y = _local3 + (page.yourScoreText._height / 2);
_local3 = _local3 + (page.yourScoreText._height + com.novelgames.flashgames.highscoresAS2.Config.ENTER_LABELFIELDSPACING);
page.scoreText.autoSize = "center";
page.scoreText._x = (__get__width() - page.scoreText._width) / 2;
page.scoreText._y = _local3;
_local3 = _local3 + (page.scoreText._height + com.novelgames.flashgames.highscoresAS2.Config.ENTER_SECTIONSPACING);
page.enterText._x = __get__width() / 2;
page.enterText._y = _local3 + (page.enterText._height / 2);
_local3 = _local3 + (page.enterText._height + com.novelgames.flashgames.highscoresAS2.Config.ENTER_LABELFIELDSPACING);
page.nameText._width = __get__width() - (com.novelgames.flashgames.highscoresAS2.Config.ENTER_NAMEFIELDORDER * 2);
page.nameText._x = (__get__width() - page.nameText._width) / 2;
page.nameText._y = _local3;
_local3 = _local3 + (page.nameText._height + com.novelgames.flashgames.highscoresAS2.Config.ENTER_SECTIONSPACING);
page.okButton._x = (__get__width() - com.novelgames.flashgames.highscoresAS2.Config.ENTER_BUTTONSSPACING) / 2;
page.okButton._y = _local3 + (page.okButton._height / 2);
page.cancelButton._x = (__get__width() + com.novelgames.flashgames.highscoresAS2.Config.ENTER_BUTTONSSPACING) / 2;
page.cancelButton._y = _local3 + (page.cancelButton._height / 2);
page.okButton.onRelease = function () {
this._parent._parent.finishedEnterName();
};
page.cancelButton.onRelease = function () {
this._parent._parent.hide();
};
_visible = true;
if (__nameSWFVariable != "") {
shouldEnterPlayerName = false;
playerName = _root[__nameSWFVariable];
if (playerName == null) {
playerName = "";
}
}
if (!shouldEnterPlayerName) {
saveScore();
}
}
function hide() {
showLoadingMessage = false;
if (page) {
destroyObject("page");
}
page = null;
_visible = false;
}
function loadScores() {
var highScores = this;
var _local2 = new XML();
loadingHighScores = true;
_local2.ignoreWhite = true;
_local2.onLoad = function (success) {
highScores.finishedLoadingScores(this.firstChild, success);
};
_local2.load((__loadScoresURL + ((__loadScoresURL.indexOf("?") == -1) ? "?id=" : "&id=")) + __gameID);
if (showLoadingMessage) {
showLoadingHighScores();
}
}
function setPlayerName(playerName) {
this.playerName = playerName;
shouldEnterPlayerName = false;
}
function showHighScoresTable(highlightIndex) {
if (loadingHighScores) {
showLoadingHighScores();
return(undefined);
}
if (records == null) {
loadScores();
return(undefined);
}
if (page) {
destroyObject("page");
}
page = createObject("highScoresTablePage", "page", 0);
drawBackground();
setTitleText();
drawRecords(highlightIndex);
setArrowButtons();
page.okButton._x = __get__width() / 2;
page.okButton._y = __get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_BUTTONFROMBOTTOM;
page.okButton.onRelease = function () {
this._parent._parent.hide();
};
_visible = true;
}
function finishedLoadingScores(rootNode, success) {
var _local2;
loadingHighScores = false;
showLoadingMessage = false;
if (!success) {
if (showLoadingMessage) {
showLoadHighScoresFailed();
}
return(undefined);
}
parseScoreRange(rootNode.attributes.scoreRange);
records = new Array();
_local2 = rootNode.firstChild;
while (_local2) {
if (_local2.nodeName != "RECORD") {
} else {
records.push(new com.novelgames.flashgames.highscoresAS2.Record(_local2.attributes.name, Number(_local2.attributes.score)));
if (records.length >= __maxNoOfScores) {
break;
}
}
_local2 = _local2.nextSibling;
}
finishedLoadingScoresAction();
}
function showLoadingHighScores() {
if (page) {
destroyObject("page");
}
page = createObject("highScoresLoadingPage", "page", 0);
drawBackground();
page.loadingHighScoresText._x = __get__width() / 2;
page.loadingHighScoresText._y = __get__height() / 2;
_visible = true;
}
function showLoadHighScoresFailed() {
if (page) {
destroyObject("page");
}
page = createObject("highScoresLoadFailedPage", "page", 0);
drawBackground();
page.loadHighScoresFailedText._x = __get__width() / 2;
page.loadHighScoresFailedText._y = (__get__height() / 2) - (com.novelgames.flashgames.highscoresAS2.Config.FAILED_TEXTBUTTONSPACING / 2);
page.okButton._x = __get__width() / 2;
page.okButton._y = (__get__height() / 2) + (com.novelgames.flashgames.highscoresAS2.Config.FAILED_TEXTBUTTONSPACING / 2);
page.okButton.onRelease = function () {
this._parent._parent.hide();
};
_visible = true;
}
function showSavingScore() {
if (page) {
destroyObject("page");
}
page = createObject("highScoresSavingPage", "page", 0);
drawBackground();
page.savingScoreText._x = __get__width() / 2;
page.savingScoreText._y = __get__height() / 2;
_visible = true;
}
function showSaveScoreFailed() {
if (page) {
destroyObject("page");
}
page = createObject("highScoresSaveFailedPage", "page", 0);
drawBackground();
page.saveScoreFailedText._x = __get__width() / 2;
page.saveScoreFailedText._y = (__get__height() / 2) - (com.novelgames.flashgames.highscoresAS2.Config.FAILED_TEXTBUTTONSPACING / 2);
page.okButton._x = __get__width() / 2;
page.okButton._y = (__get__height() / 2) + (com.novelgames.flashgames.highscoresAS2.Config.FAILED_TEXTBUTTONSPACING / 2);
page.okButton.onRelease = function () {
this._parent._parent.hide();
};
_visible = true;
}
function parseScoreRange(rangeText) {
switch (rangeText) {
case "eternity" :
scoreRange = SCORERANGE_ETERNITY;
break;
case "pastDay" :
scoreRange = SCORERANGE_PASTDAY;
break;
case "pastWeek" :
scoreRange = SCORERANGE_PASTWEEK;
break;
case "pastMonth" :
scoreRange = SCORERANGE_PASTMONTH;
break;
case "pastYear" :
scoreRange = SCORERANGE_PASTYEAR;
break;
case "thisDay" :
scoreRange = SCORERANGE_THISDAY;
break;
case "thisWeek" :
scoreRange = SCORERANGE_THISWEEK;
break;
case "thisMonth" :
scoreRange = SCORERANGE_THISMONTH;
break;
case "thisYear" :
scoreRange = SCORERANGE_THISYEAR;
}
}
function drawBackground() {
var _local2 = {x:0, y:0};
var _local3 = {x:Stage.width, y:Stage.height};
globalToLocal(_local2);
globalToLocal(_local3);
page.backgroundHolder.clear();
page.backgroundHolder.beginFill(__backgroundColour, __backgroundAlpha * 100);
page.backgroundHolder.moveTo(_local2.x, _local2.y);
page.backgroundHolder.lineTo(_local3.x, _local2.y);
page.backgroundHolder.lineTo(_local3.x, _local3.y);
page.backgroundHolder.lineTo(_local2.x, _local3.y);
page.backgroundHolder.lineTo(_local2.x, _local2.y);
page.backgroundHolder.endFill();
page.backgroundHolder.lineStyle(__dialogBorderThickness, __dialogBorderColour, __dialogBorderAlpha * 100);
page.backgroundHolder.beginFill(__dialogColour, __dialogAlpha * 100);
page.backgroundHolder.moveTo(0, 0);
page.backgroundHolder.lineTo(__get__width(), 0);
page.backgroundHolder.lineTo(__get__width(), __get__height());
page.backgroundHolder.lineTo(0, __get__height());
page.backgroundHolder.lineTo(0, 0);
page.backgroundHolder.endFill();
page.backgroundHolder.onPress = function () {
};
page.backgroundHolder.useHandCursor = false;
}
function setTitleText() {
switch (scoreRange) {
case SCORERANGE_ETERNITY :
page.titleText.gotoAndStop("eternity");
break;
case SCORERANGE_PASTDAY :
page.titleText.gotoAndStop("pastDay");
break;
case SCORERANGE_PASTWEEK :
page.titleText.gotoAndStop("pastWeek");
break;
case SCORERANGE_PASTMONTH :
page.titleText.gotoAndStop("pastMonth");
break;
case SCORERANGE_PASTYEAR :
page.titleText.gotoAndStop("pastYear");
break;
case SCORERANGE_THISDAY :
page.titleText.gotoAndStop("thisDay");
break;
case SCORERANGE_THISWEEK :
page.titleText.gotoAndStop("thisWeek");
break;
case SCORERANGE_THISMONTH :
page.titleText.gotoAndStop("thisMonth");
break;
case SCORERANGE_THISYEAR :
page.titleText.gotoAndStop("thisYear");
}
page.titleText._x = __get__width() / 2;
page.titleText._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_TITLEY;
}
function drawRecords(highlightIndex) {
var _local5 = new Array();
var _local6 = new Array();
var _local4 = new Array();
var _local7 = 0;
var _local10 = 0;
var _local8;
var _local9;
var _local3;
var _local2;
_local2 = 0;
while (_local2 < __maxNoOfScores) {
if (_local2 < records.length) {
_local8 = records[_local2].name;
_local9 = records[_local2].score;
} else {
_local8 = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_NONEDISPLAY;
_local9 = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_NONEDISPLAY;
}
_local3 = page.ranksHolder.seedText.duplicateMovieClip("textText" + _local2, _local2);
_local3.textText.autoSize = "left";
_local3.textText.text = _local2 + 1;
if (_local3._width > _local7) {
_local7 = _local3._width;
}
_local5.push(_local3);
_local3 = page.namesHolder.seedText.duplicateMovieClip("textText" + _local2, _local2);
_local3.textText.autoSize = "left";
_local3.textText.text = _local8;
_local6.push(_local3);
_local3 = page.scoresHolder.seedText.duplicateMovieClip("textText" + _local2, _local2);
_local3.textText.autoSize = "left";
_local3.textText.text = _local9;
if (_local3._width > _local10) {
_local10 = _local3._width;
}
_local4.push(_local3);
_local2++;
}
_local2 = 0;
while (_local2 < __maxNoOfScores) {
_local5[_local2]._x = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT;
_local5[_local2]._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP + (_local2 * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING);
_local6[_local2]._x = (com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT + _local7) + com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_COLUMNSPACING;
_local6[_local2]._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP + (_local2 * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING);
_local4[_local2]._x = (__get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMRIGHT) - _local4[_local2]._width;
_local4[_local2]._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP + (_local2 * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING);
_local2++;
}
page.ranksMask._x = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT;
page.ranksMask._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.ranksMask._width = (((__get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMRIGHT) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT) - _local10) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_COLUMNSPACING;
page.ranksMask._height = (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.namesMask._x = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT;
page.namesMask._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.namesMask._width = (((__get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMRIGHT) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMLEFT) - _local10) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_COLUMNSPACING;
page.namesMask._height = (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.scoresMask._x = (__get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMRIGHT) - _local10;
page.scoresMask._y = com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.scoresMask._width = _local10;
page.scoresMask._height = (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
page.ranksHolder.setMask(page.ranksMask);
page.namesHolder.setMask(page.namesMask);
page.scoresHolder.setMask(page.scoresMask);
if (highlightIndex != -1) {
if (highlightIndex < _local5.length) {
_local5[highlightIndex].textText.textColor = __highScoresHighlightColour;
_local6[highlightIndex].textText.textColor = __highScoresHighlightColour;
_local4[highlightIndex].textText.textColor = __highScoresHighlightColour;
}
scrollToIndex(highlightIndex);
}
}
function setArrowButtons() {
if (page.ranksHolder._height > page.namesMask._height) {
page.upArrowButton._x = __get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_UPARROW_FROMRIGHT;
page.upArrowButton._y = __get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_UPARROW_FROMBOTTOM;
page.downArrowButton._x = __get__width() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_DOWNARROW_FROMRIGHT;
page.downArrowButton._y = __get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_DOWNARROW_FROMBOTTOM;
page.upArrowButton.onPress = function () {
this._parent._parent.startScroll(com.novelgames.flashgames.highscoresAS2.HighScores.SCROLL_UP);
};
page.downArrowButton.onPress = function () {
this._parent._parent.startScroll(com.novelgames.flashgames.highscoresAS2.HighScores.SCROLL_DOWN);
};
page.upArrowButton.onRelease = function () {
this._parent._parent.stopScroll();
};
page.upArrowButton.onReleaseOutside = page.upArrowButton.onRelease;
page.downArrowButton.onRelease = page.upArrowButton.onRelease;
page.downArrowButton.onReleaseOutside = page.upArrowButton.onRelease;
if (page.ranksHolder.y >= 0) {
page.upArrowButton._visible = false;
}
if (((page.ranksHolder.y + com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP) + (__maxNoOfScores * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING)) <= (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM)) {
page.downArrowButton._visible = false;
}
} else {
page.upArrowButton._visible = false;
page.downArrowButton._visible = false;
}
}
function startScroll(direction) {
scrollDirection = direction;
scrollStartTime = getTimer();
scrollStartY = page.ranksHolder._y;
clearInterval(scrollIntervalID);
scrollIntervalID = setInterval(this, "performScroll", 1);
}
function stopScroll() {
clearInterval(scrollIntervalID);
}
function performScroll() {
var _local2;
if (scrollDirection == SCROLL_DOWN) {
_local2 = scrollStartY - (((getTimer() - scrollStartTime) * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_SCROLLSPEED) / 1000);
if (((_local2 + com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP) + (__maxNoOfScores * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING)) <= (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM)) {
_local2 = ((__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - (__maxNoOfScores * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING)) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
stopScroll();
page.downArrowButton._visible = false;
}
page.ranksHolder._y = _local2;
page.namesHolder._y = _local2;
page.scoresHolder._y = _local2;
page.upArrowButton._visible = true;
} else {
_local2 = scrollStartY + (((getTimer() - scrollStartTime) * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_SCROLLSPEED) / 1000);
if (_local2 >= 0) {
_local2 = 0;
stopScroll();
page.upArrowButton._visible = false;
}
page.ranksHolder._y = _local2;
page.namesHolder._y = _local2;
page.scoresHolder._y = _local2;
page.downArrowButton._visible = true;
}
}
function scrollToIndex(index) {
var _local2 = ((-index) * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING) + ((((__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING) / 2);
if (_local2 > 0) {
_local2 = 0;
} else if (((_local2 + com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP) + (__maxNoOfScores * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING)) <= (__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM)) {
_local2 = ((__get__height() - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMBOTTOM) - (__maxNoOfScores * com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_ROWSPACING)) - com.novelgames.flashgames.highscoresAS2.Config.HIGHSCORES_LIST_FROMTOP;
}
page.ranksHolder.y = _local2;
page.namesHolder.y = _local2;
page.scoresHolder.y = _local2;
}
function finishedEnterName() {
playerName = page.nameText.text;
saveScore();
}
function saveScore() {
var highScores = this;
var _local3 = new LoadVars();
var _local2;
if (records == null) {
finishedLoadingScoresAction = saveScore;
showLoadingMessage = true;
loadScores();
return(undefined);
}
_local2 = 0;
while (_local2 < records.length) {
if (records[_local2].score <= score) {
break;
}
_local2++;
}
highScoresHighlightIndex = _local2;
records.splice(_local2, 0, new com.novelgames.flashgames.highscoresAS2.Record(playerName, score));
records.splice(__maxNoOfScores);
_local3.id = __gameID;
_local3.name = playerName;
_local3.score = score;
_local3.hash = com.novelgames.flashgames.highscoresAS2.MD5.md5(((("" + __gameID) + playerName) + score) + hashKey);
_local3.onLoad = function (success) {
highScores.finishedSavingScore(this, success);
};
_local3.sendAndLoad(__saveScoreURL, _local3, "POST");
showSavingScore();
}
function finishedSavingScore(loadVars, success) {
if ((!success) || (loadVars.success != "true")) {
showSaveScoreFailed();
return(undefined);
}
showHighScoresWithHighlight();
}
function showHighScoresWithHighlight() {
showLoadingMessage = true;
finishedLoadingScoresAction = showHighScoresWithHighlight;
showHighScoresTable(highScoresHighlightIndex);
}
static var symbolName = "HighScores";
static var symbolOwner = com.novelgames.flashgames.highscoresAS2.HighScores;
var className = "HighScores";
static var SCORERANGE_ETERNITY = 1;
static var SCORERANGE_PASTDAY = 2;
static var SCORERANGE_PASTWEEK = 3;
static var SCORERANGE_PASTMONTH = 4;
static var SCORERANGE_PASTYEAR = 5;
static var SCORERANGE_THISDAY = 6;
static var SCORERANGE_THISWEEK = 7;
static var SCORERANGE_THISMONTH = 8;
static var SCORERANGE_THISYEAR = 9;
static var SCROLL_UP = 1;
static var SCROLL_DOWN = 2;
}
Symbol 301 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 302 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 303 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 304 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 305 MovieClip [__Packages.com.novelgames.flashgames.highscoresAS2.Config] Frame 0
class com.novelgames.flashgames.highscoresAS2.Config
{
function Config () {
}
static var HIGHSCORES_TITLEY = 20;
static var HIGHSCORES_LIST_FROMLEFT = 10;
static var HIGHSCORES_LIST_FROMTOP = 50;
static var HIGHSCORES_LIST_FROMRIGHT = 10;
static var HIGHSCORES_LIST_FROMBOTTOM = 50;
static var HIGHSCORES_LIST_ROWSPACING = 15;
static var HIGHSCORES_LIST_COLUMNSPACING = 10;
static var HIGHSCORES_LIST_BUTTONFROMBOTTOM = 20;
static var HIGHSCORES_UPARROW_FROMRIGHT = 34;
static var HIGHSCORES_UPARROW_FROMBOTTOM = 40;
static var HIGHSCORES_DOWNARROW_FROMRIGHT = 18;
static var HIGHSCORES_DOWNARROW_FROMBOTTOM = 40;
static var HIGHSCORES_SCROLLSPEED = 100;
static var HIGHSCORES_NONEDISPLAY = "-";
static var HIGHSCORES_HIGHLIGHTCOLOUR = 16711680;
static var ENTER_LABELFIELDSPACING = 5;
static var ENTER_SECTIONSPACING = 30;
static var ENTER_NAMEFIELDORDER = 20;
static var ENTER_BUTTONSSPACING = 70;
static var FAILED_TEXTBUTTONSPACING = 50;
}
Symbol 306 MovieClip [__Packages.com.novelgames.flashgames.highscoresAS2.Record] Frame 0
class com.novelgames.flashgames.highscoresAS2.Record
{
var name, score;
function Record (name, score) {
this.name = name;
this.score = score;
}
}
Symbol 307 MovieClip [__Packages.com.novelgames.flashgames.highscoresAS2.MD5] Frame 0
class com.novelgames.flashgames.highscoresAS2.MD5
{
function MD5 () {
}
static function md5(message) {
var _local19;
var _local17;
var _local1;
var _local4;
var _local7;
_local19 = [7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21];
_local17 = new Array(64);
_local1 = 0;
while (_local1 < 64) {
_local17[_local1] = Math.floor(Math.abs(Math.sin(_local1 + 1)) * 4294967296);
_local1++;
}
var _local16 = 1732584193 /* 0x67452301 */;
var _local15 = 4023233417;
var _local14 = 2562383102;
var _local13 = 271733878 /* 0x10325476 */;
var _local21 = message.length * 8;
var _local6 = new Array(message.length);
_local1 = 0;
while (_local1 < message.length) {
_local6[_local1] = message.charCodeAt(_local1);
_local1++;
}
_local6.push(128);
while (((_local6.length * 8) % 512) != 448) {
_local6.push(0);
}
_local6.push(_local21 & 255);
_local6.push((_local21 >> 8) & 255);
_local6.push((_local21 >> 16) & 255);
_local6.push((_local21 >> 24) & 255);
_local6.push(0);
_local6.push(0);
_local6.push(0);
_local6.push(0);
var _local20 = (_local6.length * 8) / 512;
_local7 = 0;
while (_local7 < _local20) {
var _local11 = new Array(16);
_local4 = 0;
while (_local4 < 16) {
_local11[_local4] = (((_local6[((_local7 * 64) + (_local4 * 4)) + 3] << 24) | (_local6[((_local7 * 64) + (_local4 * 4)) + 2] << 16)) | (_local6[((_local7 * 64) + (_local4 * 4)) + 1] << 8)) | _local6[(_local7 * 64) + (_local4 * 4)];
_local4++;
}
var _local10 = _local16;
var _local2 = _local15;
var _local5 = _local14;
var _local3 = _local13;
var _local9;
var _local8;
var _local12;
_local1 = 0;
while (_local1 < 64) {
if (_local1 < 16) {
_local9 = (_local2 & _local5) | ((~_local2) & _local3);
_local8 = _local1;
} else if (_local1 < 32) {
_local9 = (_local3 & _local2) | ((~_local3) & _local5);
_local8 = ((5 * _local1) + 1) % 16;
} else if (_local1 < 48) {
_local9 = (_local2 ^ _local5) ^ _local3;
_local8 = ((3 * _local1) + 5) % 16;
} else {
_local9 = _local5 ^ (_local2 | (~_local3));
_local8 = (7 * _local1) % 16;
}
_local12 = _local3;
_local3 = _local5;
_local5 = _local2;
_local2 = _local2 + leftRotate(((_local10 + _local9) + _local17[_local1]) + _local11[_local8], _local19[_local1]);
_local10 = _local12;
_local1++;
}
_local16 = _local16 + _local10;
_local15 = _local15 + _local2;
_local14 = _local14 + _local5;
_local13 = _local13 + _local3;
_local7++;
}
return(((hexToString(_local16) + hexToString(_local15)) + hexToString(_local14)) + hexToString(_local13));
}
static function leftRotate(x, c) {
var _local2 = (1 << c) - 1;
return((x << c) | ((x >> (32 - c)) & _local2));
}
static function hexToString(hex) {
return(((hexByteToString(hex & 255) + hexByteToString((hex >> 8) & 255)) + hexByteToString((hex >> 16) & 255)) + hexByteToString((hex >> 24) & 255));
}
static function hexByteToString(byte) {
var _local1 = byte.toString(16);
while (_local1.length < 2) {
_local1 = "0" + _local1;
}
return(_local1);
}
}
Symbol 308 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.handleEvent(eventObj);
}
if (_local1[eventObj.type] != undefined) {
if (exceptions[eventObj.type] == undefined) {
_local1[eventObj.type](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;
static var exceptions = {move:1, draw:1, load:1};
}
Symbol 309 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 310 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 311 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 _local6 = mx.core.UIObject.prototype;
var _local9 = mx.skins.SkinElement.prototype;
addGeometry(_local9, _local6);
mx.events.UIEventDispatcher.initialize(_local6);
var _local13 = mx.skins.ColoredSkinElement;
mx.styles.CSSTextStyles.addTextStyles(_local6);
var _local5 = MovieClip.prototype;
_local5.getTopLevel = _local6.getTopLevel;
_local5.createLabel = _local6.createLabel;
_local5.createObject = _local6.createObject;
_local5.createClassObject = _local6.createClassObject;
_local5.createEmptyObject = _local6.createEmptyObject;
_local5.destroyObject = _local6.destroyObject;
_global.ASSetPropFlags(_local5, "getTopLevel", 1);
_global.ASSetPropFlags(_local5, "createLabel", 1);
_global.ASSetPropFlags(_local5, "createObject", 1);
_global.ASSetPropFlags(_local5, "createClassObject", 1);
_global.ASSetPropFlags(_local5, "createEmptyObject", 1);
_global.ASSetPropFlags(_local5, "destroyObject", 1);
_local5.__getTextFormat = _local6.__getTextFormat;
_local5._getTextFormat = _local6._getTextFormat;
_local5.getStyleName = _local6.getStyleName;
_local5.getStyle = _local6.getStyle;
_global.ASSetPropFlags(_local5, "__getTextFormat", 1);
_global.ASSetPropFlags(_local5, "_getTextFormat", 1);
_global.ASSetPropFlags(_local5, "getStyleName", 1);
_global.ASSetPropFlags(_local5, "getStyle", 1);
var _local7 = TextField.prototype;
addGeometry(_local7, _local6);
_local7.addProperty("enabled", function () {
return(this.__enabled);
}, function (x) {
this.__enabled = x;
this.invalidateStyle();
});
_local7.move = _local9.move;
_local7.setSize = _local9.setSize;
_local7.invalidateStyle = function () {
this.invalidateFlag = true;
};
_local7.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;
}
};
_local7.setColor = function (color) {
this.textColor = color;
};
_local7.getStyle = _local5.getStyle;
_local7.__getTextFormat = _local6.__getTextFormat;
_local7.setValue = function (v) {
this.text = v;
};
_local7.getValue = function () {
return(this.text);
};
_local7.addProperty("value", function () {
return(this.getValue());
}, function (v) {
this.setValue(v);
});
_local7._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);
};
_local7.getPreferredWidth = function () {
this.draw();
return(this.textWidth + 4);
};
_local7.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();
if (_global._origWidth == undefined) {
_global.origWidth = Stage.width;
_global.origHeight = Stage.height;
}
}
var _local4 = _root;
while (_local4._parent != undefined) {
_local4 = _local4._parent;
}
_local4.addProperty("width", function () {
return(Stage.width);
}, null);
_local4.addProperty("height", function () {
return(Stage.height);
}, null);
_global.ASSetPropFlags(_local4, "width", 1);
_global.ASSetPropFlags(_local4, "height", 1);
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 312 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 313 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;
_global.ASSetPropFlags(MovieClip.prototype, "createClassChildAtDepth", 1);
_global.ASSetPropFlags(MovieClip.prototype, "createChildAtDepth", 1);
_global.ASSetPropFlags(MovieClip.prototype, "setDepthTo", 1);
_global.ASSetPropFlags(MovieClip.prototype, "setDepthAbove", 1);
_global.ASSetPropFlags(MovieClip.prototype, "setDepthBelow", 1);
_global.ASSetPropFlags(MovieClip.prototype, "findNextAvailableDepth", 1);
_global.ASSetPropFlags(MovieClip.prototype, "shuffleDepths", 1);
_global.ASSetPropFlags(MovieClip.prototype, "getDepthByFlag", 1);
_global.ASSetPropFlags(MovieClip.prototype, "buildDepthTable", 1);
}
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 _local5 = "down";
if (depthFlag == kBottom) {
_local5 = "up";
}
var _local6;
if (_local3[_local2] != undefined) {
_local6 = _local2;
_local2 = findNextAvailableDepth(_local2, _local3, _local5);
}
var _local4 = createClassObject(className, "depthChild" + (_childCounter++), _local2, initObj);
if (_local6 != undefined) {
_local3[_local2] = _local4;
shuffleDepths(_local4, _local6, _local3, _local5);
}
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 _local5 = "down";
if (depthFlag == kBottom) {
_local5 = "up";
}
var _local6;
if (_local3[_local2] != undefined) {
_local6 = _local2;
_local2 = findNextAvailableDepth(_local2, _local3, _local5);
}
var _local4 = createObject(linkageName, "depthChild" + (_childCounter++), _local2, initObj);
if (_local6 != undefined) {
_local3[_local2] = _local4;
shuffleDepths(_local4, _local6, _local3, _local5);
}
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(MovieClip(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 _local1 = targetDepth;
var _local2 = targetDepth;
if (direction == "down") {
while (depthTable[_local2] != undefined) {
_local2--;
}
return(_local2);
}
while (depthTable[_local1] != undefined) {
_local1++;
}
return(_local1);
}
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 314 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((initializing ? (val) : (__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.2.127";
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 315 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 316 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, lastMouse, _visible, lastFocus, doLater, lastSelFocus, cancelAllDoLaters, _searchKey, _lastTarget, _firstNode, _nextIsNext, _nextNode, _lastx, _prevNode, _needPrev, _foundList, _prevObj, _nextObj, _firstObj, _lastObj, _lastNode, lastTabFocus, 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);
lastMouse = new Object();
_global.ASSetPropFlags(_parent, "focusManager", 1);
_global.ASSetPropFlags(_parent, "tabChildren", 1);
_global.ASSetPropFlags(_parent, "tabEnabled", 1);
}
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 = mx.controls.SimpleButton(_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(lastMouse.x, lastMouse.y, 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();
lastMouse.x = _root._xmouse;
lastMouse.y = _root._ymouse;
_root.localToGlobal(lastMouse);
}
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.2.127";
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 317 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 318 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 319 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 _local3 = mx.styles.CSSSetStyle.prototype;
mx.styles.CSSStyleDeclaration.prototype.setStyle = _local3._setStyle;
_local2.changeTextStyleInChildren = _local3.changeTextStyleInChildren;
_local2.changeColorStyleInChildren = _local3.changeColorStyleInChildren;
_local2.notifyStyleChangeInChildren = _local3.notifyStyleChangeInChildren;
_local2.setStyle = _local3.setStyle;
_global.ASSetPropFlags(_local2, "changeTextStyleInChildren", 1);
_global.ASSetPropFlags(_local2, "changeColorStyleInChildren", 1);
_global.ASSetPropFlags(_local2, "notifyStyleChangeInChildren", 1);
_global.ASSetPropFlags(_local2, "setStyle", 1);
var _local4 = TextField.prototype;
_local4.setStyle = _local2.setStyle;
_local4.changeTextStyleInChildren = _local3.changeTextStyleInChildren;
return(true);
}
static var classConstructed = classConstruct();
static var CSSStyleDeclarationDependency = mx.styles.CSSStyleDeclaration;
}
Symbol 320 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;
}