Frame 1
_root.bStandalon = true;
fscommand ("showmenu", "false");
Stage.scaleMode = "noScale";
_root.gameID_str = "1287";
_root.main_link = "http://www.2DPlay.com/index.php?gameid=" + gameID_str;
_root.scores_link = ("http://www.2Dplay.com/highscores.php?gameid=" + gameID_str) + "&hiscore=";
_root.viewscores_link = "http://www.2dplay.com/showscores.php?gameid=" + gameID_str;
Frame 2
stop();
Frame 3
function hex_md5(s) {
return(binl2hex(core_md5(str2binl(s), s.length * chrsz)));
}
function b64_md5(s) {
return(binl2b64(core_md5(str2binl(s), s.length * chrsz)));
}
function str_md5(s) {
return(binl2str(core_md5(str2binl(s), s.length * chrsz)));
}
function hex_hmac_md5(key, data) {
return(binl2hex(core_hmac_md5(key, data)));
}
function b64_hmac_md5(key, data) {
return(binl2b64(core_hmac_md5(key, data)));
}
function str_hmac_md5(key, data) {
return(binl2str(core_hmac_md5(key, data)));
}
function md5_vm_test() {
return(hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72");
}
function core_md5(x, len) {
x[len >> 5] = x[len >> 5] | (128 << (len % 32));
x[(((len + 64) >>> 9) << 4) + 14] = len;
var _local4 = 1732584193 /* 0x67452301 */;
var _local3 = -271733879;
var _local2 = -1732584194;
var _local1 = 271733878 /* 0x10325476 */;
var _local5 = 0;
while (_local5 < x.length) {
var _local10 = _local4;
var _local9 = _local3;
var _local8 = _local2;
var _local7 = _local1;
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 0], 7, -680876936);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 1], 12, -389564586);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 2], 17, 606105819);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 3], 22, -1044525330);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 4], 7, -176418897);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 5], 12, 1200080426);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 6], 17, -1473231341);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 7], 22, -45705983);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 8], 7, 1770035416);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 9], 12, -1958414417);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 10], 17, -42063);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 11], 22, -1990404162);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 12], 7, 1804603682);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 13], 12, -40341101);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 14], 17, -1502002290);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 15], 22, 1236535329);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 1], 5, -165796510);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 6], 9, -1069501632);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 11], 14, 643717713);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 0], 20, -373897302);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 5], 5, -701558691);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 10], 9, 38016083);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 15], 14, -660478335);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 4], 20, -405537848);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 9], 5, 568446438);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 14], 9, -1019803690);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 3], 14, -187363961);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 8], 20, 1163531501);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 13], 5, -1444681467);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 2], 9, -51403784);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 7], 14, 1735328473);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 12], 20, -1926607734);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 5], 4, -378558);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 8], 11, -2022574463);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 11], 16, 1839030562);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 14], 23, -35309556);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 1], 4, -1530992060);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 4], 11, 1272893353);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 7], 16, -155497632);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 10], 23, -1094730640);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 13], 4, 681279174);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 0], 11, -358537222);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 3], 16, -722521979);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 6], 23, 76029189);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 9], 4, -640364487);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 12], 11, -421815835);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 15], 16, 530742520);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 2], 23, -995338651);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 0], 6, -198630844);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 7], 10, 1126891415);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 14], 15, -1416354905);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 5], 21, -57434055);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 12], 6, 1700485571);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 3], 10, -1894986606);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 10], 15, -1051523);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 1], 21, -2054922799);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 8], 6, 1873313359);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 15], 10, -30611744);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 6], 15, -1560198380);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 13], 21, 1309151649);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 4], 6, -145523070);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 11], 10, -1120210379);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 2], 15, 718787259);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 9], 21, -343485551);
_local4 = safe_add(_local4, _local10);
_local3 = safe_add(_local3, _local9);
_local2 = safe_add(_local2, _local8);
_local1 = safe_add(_local1, _local7);
_local5 = _local5 + 16;
}
return(Array(_local4, _local3, _local2, _local1));
}
function md5_cmn(q, a, b, x, s, t) {
return(safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b));
}
function md5_ff(a, b, c, d, x, s, t) {
return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t));
}
function md5_gg(a, b, c, d, x, s, t) {
return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t));
}
function md5_hh(a, b, c, d, x, s, t) {
return(md5_cmn((b ^ c) ^ d, a, b, x, s, t));
}
function md5_ii(a, b, c, d, x, s, t) {
return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t));
}
function core_hmac_md5(key, data) {
var _local2 = str2binl(key);
if (_local2.length > 16) {
_local2 = core_md5(_local2, key.length * chrsz);
}
var _local3 = Array(16);
var _local4 = Array(16);
var _local1 = 0;
while (_local1 < 16) {
_local3[_local1] = _local2[_local1] ^ 909522486;
_local4[_local1] = _local2[_local1] ^ 1549556828;
_local1++;
}
var _local5 = core_md5(_local3.concat(str2binl(data)), 512 + (data.length * chrsz));
return(core_md5(_local4.concat(_local5), 640));
}
function safe_add(x, y) {
var _local1 = (x & 65535) + (y & 65535);
var _local2 = ((x >> 16) + (y >> 16)) + (_local1 >> 16);
return((_local2 << 16) | (_local1 & 65535));
}
function bit_rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
function str2binl(str) {
var _local3 = Array();
var _local4 = (1 << chrsz) - 1;
var _local1 = 0;
while (_local1 < (str.length * chrsz)) {
_local3[_local1 >> 5] = _local3[_local1 >> 5] | ((str.charCodeAt(_local1 / chrsz) & _local4) << (_local1 % 32));
_local1 = _local1 + chrsz;
}
return(_local3);
}
function binl2str(bin) {
var _local3 = "";
var _local4 = (1 << chrsz) - 1;
var _local1 = 0;
while (_local1 < (bin.length * 32)) {
_local3 = _local3 + String.fromCharCode((bin[_local1 >> 5] >>> (_local1 % 32)) & _local4);
_local1 = _local1 + chrsz;
}
return(_local3);
}
function binl2hex(binarray) {
var _local3 = (hexcase ? "0123456789ABCDEF" : "0123456789abcdef");
var _local4 = "";
var _local1 = 0;
while (_local1 < (binarray.length * 4)) {
_local4 = _local4 + (_local3.charAt((binarray[_local1 >> 2] >> (((_local1 % 4) * 8) + 4)) & 15) + _local3.charAt((binarray[_local1 >> 2] >> ((_local1 % 4) * 8)) & 15));
_local1++;
}
return(_local4);
}
function binl2b64(binarray) {
var _local6 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var _local4 = "";
var _local2 = 0;
while (_local2 < (binarray.length * 4)) {
var _local5 = ((((binarray[_local2 >> 2] >> (8 * (_local2 % 4))) & 255) << 16) | (((binarray[(_local2 + 1) >> 2] >> (8 * ((_local2 + 1) % 4))) & 255) << 8)) | ((binarray[(_local2 + 2) >> 2] >> (8 * ((_local2 + 2) % 4))) & 255);
var _local1 = 0;
while (_local1 < 4) {
if (((_local2 * 8) + (_local1 * 6)) > (binarray.length * 32)) {
_local4 = _local4 + b64pad;
} else {
_local4 = _local4 + _local6.charAt((_local5 >> (6 * (3 - _local1))) & 63);
}
_local1++;
}
_local2 = _local2 + 3;
}
return(_local4);
}
var hexcase = 0;
var b64pad = "";
var chrsz = 8;
submitScore_btn.onRelease = function () {
var _local2 = _root.hex_md5(((("gameid=" + _root.gameID_str) + "&hiscore=") + _root.total_score) + "2DPlay.com/");
getURL (String(((_root.scores_link + _root.total_score) + "&hash=") + _local2), "_blank");
};
viewScores_btn.onRelease = function () {
getURL (_root.viewscores_link, "_blank");
};
Frame 4
function callFrame(frame, sValueName, value) {
this[sValueName] = value;
call(frame);
}
rainbow.core.Game.getInstance(this);
Frame 5
gdp.core.process.ProcessManager.getInstance().run();
Frame 6
gotoAndPlay(_currentframe - 1);
Frame 10
msn.Zone.getInstance().sessionStart();
Frame 20
msn.Zone.getInstance().gameStart();
Frame 29
msn.Zone.getInstance().gameContinue(this.GameContinueData);
Frame 40
msn.Zone.getInstance().muteOn();
Frame 47
msn.Zone.getInstance().muteOff();
Frame 54
msn.Zone.getInstance().pauseOn();
Frame 62
msn.Zone.getInstance().pauseOff();
Frame 70
msn.Zone.getInstance().gameMenu();
Frame 79
msn.Zone.getInstance().customReturn(this.CustomData);
Symbol 59 MovieClip Frame 1
stop();
Symbol 59 MovieClip Frame 225
stop();
_parent.next();
Symbol 59 MovieClip Frame 377
stop();
_parent.next();
Symbol 59 MovieClip Frame 525
stop();
_parent.next();
Symbol 59 MovieClip Frame 555
gotoAndPlay ("loop");
Symbol 64 MovieClip Frame 1
stop();
Symbol 64 MovieClip Frame 225
stop();
_parent.next();
Symbol 64 MovieClip Frame 370
stop();
_parent.next();
Symbol 64 MovieClip Frame 515
stop();
_parent.next();
Symbol 64 MovieClip Frame 540
gotoAndPlay ("loop");
Symbol 73 MovieClip [hitBox] Frame 1
#initclip 151
Object.registerClass("hitBox", rainbow.ui.SimpleButton);
#endinitclip
Symbol 74 MovieClip [HowToPlay] Frame 1
#initclip 130
Object.registerClass("HowToPlay", rainbow.panels.HowToPlay);
#endinitclip
Instance of Symbol 73 MovieClip [hitBox] "btnStart" in Symbol 74 MovieClip [HowToPlay] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_htp_start;
}
Symbol 83 MovieClip [download] Frame 1
#initclip 131
Object.registerClass("download", rainbow.panels.Download);
#endinitclip
Instance of Symbol 73 MovieClip [hitBox] "btnStart" in Symbol 83 MovieClip [download] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_download_play;
}
Instance of Symbol 73 MovieClip [hitBox] "btnDownload" in Symbol 83 MovieClip [download] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_download_download;
}
Symbol 103 MovieClip [background] Frame 1
#initclip 132
Object.registerClass("background", rainbow.web.Background);
#endinitclip
Symbol 107 MovieClip [circleLinkA] Frame 1
#initclip 133
Object.registerClass("circleLinkA", rainbow.web.Link);
#endinitclip
Symbol 109 MovieClip [circleLinkB] Frame 1
#initclip 134
Object.registerClass("circleLinkB", rainbow.web.Link);
#endinitclip
Symbol 111 MovieClip [circleLinkC] Frame 1
#initclip 135
Object.registerClass("circleLinkC", rainbow.web.Link);
#endinitclip
Symbol 113 MovieClip [circleLinkD] Frame 1
#initclip 136
Object.registerClass("circleLinkD", rainbow.web.Link);
#endinitclip
Symbol 115 MovieClip [circleLinkE] Frame 1
#initclip 137
Object.registerClass("circleLinkE", rainbow.web.Link);
#endinitclip
Symbol 117 MovieClip [shortLink] Frame 1
#initclip 138
Object.registerClass("shortLink", rainbow.web.Link);
#endinitclip
Symbol 119 MovieClip [hole] Frame 1
#initclip 139
Object.registerClass("hole", rainbow.web.Hole);
#endinitclip
Symbol 134 MovieClip Frame 1
stop();
Symbol 138 MovieClip [menuBtn] Frame 1
#initclip 140
Object.registerClass("menuBtn", rainbow.ui.SimpleButton);
#endinitclip
Symbol 144 MovieClip [menuButton] Frame 1
#initclip 141
Object.registerClass("menuButton", rainbow.ui.MenuButton);
#endinitclip
Instance of Symbol 144 MovieClip [menuButton] "btnReturnToGame" in Symbol 149 MovieClip [web_menu] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_web_main_return_to_game;
}
Instance of Symbol 144 MovieClip [menuButton] "btnStartNew" in Symbol 149 MovieClip [web_menu] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_web_main_start_new;
}
Instance of Symbol 144 MovieClip [menuButton] "btnDownload" in Symbol 149 MovieClip [web_menu] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_web_main_download;
}
Instance of Symbol 144 MovieClip [menuButton] "btnSoundOnOff" in Symbol 149 MovieClip [web_menu] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_web_main_sound_on_off;
}
Symbol 156 MovieClip [miniWindow] Frame 1
stop();
Symbol 157 MovieClip [web] Frame 1
#initclip 142
Object.registerClass("web", rainbow.web.Web);
#endinitclip
Instance of Symbol 138 MovieClip [menuBtn] "mcMenuBtn" in Symbol 157 MovieClip [web] Frame 1
onClipEvent (load) {
tfLabel = tf_web_menu;
}
Symbol 159 MovieClip [circleLinkF] Frame 1
#initclip 143
Object.registerClass("circleLinkF", rainbow.web.Link);
#endinitclip
Symbol 187 MovieClip [item] Frame 1
#initclip 144
Object.registerClass("item", rainbow.map.Item);
#endinitclip
Symbol 190 MovieClip [point] Frame 1
#initclip 145
Object.registerClass("point", rainbow.map.Point);
#endinitclip
stop();
Symbol 193 MovieClip [map] Frame 1
#initclip 146
Object.registerClass("map", rainbow.map.Map);
#endinitclip
Instance of Symbol 73 MovieClip [hitBox] "btnStart" in Symbol 193 MovieClip [map] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_map_start;
}
Instance of Symbol 73 MovieClip [hitBox] "btnDownload" in Symbol 193 MovieClip [map] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_map_download;
}
Symbol 194 MovieClip [BitmapTextField] Frame 1
#initclip 147
Object.registerClass("BitmapTextField", rainbow.helpers.BitmapTextField);
#endinitclip
Symbol 197 MovieClip [BitmapSymbol] Frame 1
#initclip 148
Object.registerClass("BitmapSymbol", rainbow.helpers.BitmapSymbol);
#endinitclip
Symbol 203 MovieClip [bead] Frame 1
#initclip 149
Object.registerClass("bead", rainbow.web.Bead);
#endinitclip
Symbol 219 MovieClip [hints] Frame 1
#initclip 150
Object.registerClass("hints", rainbow.panels.Hints);
#endinitclip
Instance of Symbol 73 MovieClip [hitBox] "btnStart" in Symbol 219 MovieClip [hints] Frame 1
onClipEvent (load) {
tfLabel = _parent.tf_hint_go;
}
Symbol 315 MovieClip [__Packages.gdp.core.base.BaseInterface] Frame 0
interface gdp.core.base.BaseInterface
{
}
Symbol 316 MovieClip [__Packages.gdp.env.events.EventListenerSource] Frame 0
interface gdp.env.events.EventListenerSource extends gdp.core.base.BaseInterface
{
}
Symbol 317 MovieClip [__Packages.gdp.core.base.BaseMovieClip] Frame 0
class gdp.core.base.BaseMovieClip extends MovieClip implements gdp.env.events.EventListenerSource
{
var _yscale, _xscale, _alpha, _height, _width, _name, sClassName, sPackageName, sClassNameWithPackage;
function BaseMovieClip () {
super();
}
function init() {
return(this);
}
function description() {
var _local2 = {_name:_name, _width:_width, _height:_height, _alpha:_alpha, _xscale:_xscale, _yscale:_yscale};
return("BaseMovieClip " + gdp.utils.ObjectUtil.classToString(_local2, true));
}
function toString() {
return(description());
}
function getClass() {
return(Object(this).__constructor__);
}
function getClassName(bRenew) {
if ((sClassName == undefined) || (bRenew)) {
sClassName = gdp.utils.ClassUtil.getClassName(getClass());
}
return(sClassName);
}
function getPackageName(bRenew) {
if ((sPackageName == undefined) || (bRenew)) {
sPackageName = gdp.utils.ClassUtil.getClassPackage(getClass());
}
return(sPackageName);
}
function getClassNameWithPackage(bRenew) {
if ((sClassNameWithPackage == undefined) || (bRenew)) {
sClassNameWithPackage = (getPackageName(bRenew) + ".") + getClassName(bRenew);
}
return(sClassNameWithPackage);
}
function isEqual(anObject) {
return(this == anObject);
}
function createEmptyMovieClip(sName, nDepth, oParams) {
var _local3 = super.createEmptyMovieClip(sName, nDepth);
for (var _local4 in oParams) {
_local3[_local4] = oParams[_local4];
}
return(_local3);
}
function addListener(listener) {
}
function removeListener(listener) {
}
}
Symbol 318 MovieClip [__Packages.gdp.utils.ObjectUtil] Frame 0
class gdp.utils.ObjectUtil
{
function ObjectUtil () {
}
static function initClasses() {
var _local2 = 0;
while (_local2 < arguments.length) {
if (arguments[_local2] == undefined) {
trace(("Class not found [" + _local2) + "]");
}
_local2++;
}
}
static function classToString(oClass, bNotWrap) {
if (oClass == undefined) {
return("{}");
}
var _local4 = ((!bNotWrap) ? newline : "");
var _local2 = getPrimitivesOnly(oClass);
var _local1 = 0;
while (_local1 < _local2.length) {
var _local3 = ((_local1 == 0) ? "{" : ", ") + ((!bNotWrap) ? "\n\t" : "");
if (_local2[_local1].data instanceof String) {
_local4 = _local4 + ((((_local3 + _local2[_local1].sName) + ":\"") + _local2[_local1].data) + "\"");
} else if (_local2[_local1].data instanceof Array) {
_local4 = _local4 + ((((_local3 + _local2[_local1].sName) + ":[") + _local2[_local1].data) + "]");
} else {
_local4 = _local4 + (((_local3 + _local2[_local1].sName) + ":") + _local2[_local1].data);
}
_local1++;
}
_local4 = _local4 + ((_local4 == "") ? "{}" : (((!bNotWrap) ? "\n}" : "}")));
return(_local4);
}
static function clone(value) {
if (value.clone instanceof Function) {
return(value.clone());
}
var _local2 = new Object();
for (var _local3 in value) {
if (typeof(value[_local3]) == "object") {
_local2[_local3] = copy(value[_local3]);
} else {
_local2[_local3] = value[_local3];
}
}
return(_local2);
}
static function copy(value) {
return(clone(value));
}
static function mergeObjects(oParent, oChild, ow) {
var _local3;
var _local4;
for (var _local6 in oChild) {
_local3 = oParent[_local6] != undefined;
if (typeof(oChild[_local6].toString()) == "object") {
if (!_local3) {
oParent[_local6] = oChild[_local6];
}
_local4 = oParent[_local6];
_local4 = _local4.mergeObjects(oChild[_local6], ow);
} else {
if (!_local3) {
oParent[_local6] = oChild[_local6];
}
if (_local3 && (ow)) {
oParent[_local6] = oChild[_local6];
}
}
}
}
static function getPrimitivesOnly(oObject, aWithout) {
var _local3 = new Array();
for (var _local7 in oObject) {
if (gdp.utils.ArrayUtil.contains(aWithout, _local7)) {
continue;
}
var _local2 = {sName:_local7, data:oObject[_local7]};
switch (typeof(oObject[_local7])) {
case "string" :
case "boolean" :
case "number" :
_local3.push(_local2);
break;
case "object" :
if (oObject[_local7] instanceof Array) {
_local3.push(_local2);
} else {
if (oObject[_local7].toString() == "[object]") {
break;
}
_local3.push({sName:_local7, data:oObject[_local7].toString(true)});
}
}
}
return(_local3);
}
static function toXML(oData) {
var _local2 = "";
for (var _local3 in oData) {
if (typeof(oData[_local3]) == "object") {
_local2 = _local2 + (((((("<" + _local3) + ">") + toXML(oData[_local3])) + "</") + _local3) + ">");
} else if ((typeof(oData[_local3]) == "number") || (typeof(oData[_local3]) == "string")) {
_local2 = _local2 + (((((("<" + _local3) + ">") + oData[_local3]) + "</") + _local3) + ">");
} else if (oData[_local3] == undefined) {
_local2 = _local2 + (((("<" + _local3) + "></") + _local3) + ">");
}
}
return(new XML(_local2));
}
static function fromXML(xml) {
return(gdp.utils.XMLUtil.toObject(xml));
}
static function findNameOfObject(oWhat, oWhere, bWithPackage, sCurrentPackage) {
_global.ASSetPropFlags(oWhere, null, 0, true);
_global.ASSetPropFlags(oWhere, ["__proto__", "prototype", "__constructor__", "constructor"], 7, true);
sCurrentPackage = sCurrentPackage || "";
for (var _local7 in oWhere) {
if (typeof(oWhere[_local7]) == "object") {
var _local3 = findNameOfObject(oWhat, oWhere[_local7], bWithPackage, (sCurrentPackage + _local7) + ".");
if (_local3 != null) {
return(_local3);
}
}
if (oWhere[_local7] === oWhat) {
return((bWithPackage ? (sCurrentPackage + _local7) : (_local7)));
}
}
_global.ASSetPropFlags(oWhere, null, 1, true);
return(null);
}
static function typesMatch(object, type) {
if (type === Object) {
return(true);
}
if (isPrimitiveType(object)) {
var _local2 = typeof(object);
if (((type === String) || (gdp.utils.ClassUtil.isSubClassOf(type, String))) && (_local2 == TYPE_STRING)) {
return(true);
}
if (((type === Boolean) || (gdp.utils.ClassUtil.isSubClassOf(type, Boolean))) && (_local2 == TYPE_BOOLEAN)) {
return(true);
}
if (((type === Number) || (gdp.utils.ClassUtil.isSubClassOf(type, Number))) && (_local2 == TYPE_NUMBER)) {
return(true);
}
return(false);
}
return(isInstanceOf(object, type));
}
static function isPrimitiveType(object) {
var _local1 = typeof(object);
return(((_local1 == TYPE_STRING) || (_local1 == TYPE_NUMBER)) || (_local1 == TYPE_BOOLEAN));
}
static function isTypeOf(object, type) {
return(typeof(object) == type);
}
static function isInstanceOf(object, type) {
if (type === Object) {
return(true);
}
return(object instanceof type);
}
static function isExplicitInstanceOf(object, clazz) {
if (clazz == String) {
return(typeof(object) == TYPE_STRING);
}
if (clazz == Number) {
return(typeof(object) == TYPE_NUMBER);
}
if (clazz == Boolean) {
return(typeof(object) == TYPE_BOOLEAN);
}
return((object instanceof clazz) && (!(object.__proto__ instanceof clazz)));
}
static function equals(valueA, valueB) {
if (Boolean(Number(isPrimitiveType(valueA)) ^ Number(isPrimitiveType(valueB)))) {
return(false);
}
if ((isPrimitiveType(valueA) && (isPrimitiveType(valueB))) && (valueA != valueB)) {
return(false);
}
if (!((valueA.isEqual != null) ^ (valueB.isEqual != null))) {
return(false);
}
if (((valueA.isEqual != null) && (valueB.isEqual != null)) && (!valueA.isEqual(valueB))) {
return(false);
}
if (valueA != valueB) {
return(false);
}
return(true);
}
static var TYPE_STRING = "string";
static var TYPE_NUMBER = "number";
static var TYPE_OBJECT = "object";
static var TYPE_BOOLEAN = "boolean";
static var TYPE_MOVIECLIP = "movieclip";
static var TYPE_FUNCTION = "function";
static var TYPE_UNDEFINED = "undefined";
static var TYPE_NULL = "null";
}
Symbol 319 MovieClip [__Packages.gdp.utils.ArrayUtil] Frame 0
class gdp.utils.ArrayUtil
{
function ArrayUtil () {
}
static function fillArray(nSize, value) {
var _local2 = new Array();
var _local1 = 0;
while (_local1 < nSize) {
_local2.push(value);
_local1++;
}
return(_local2);
}
static function getRandElem(aArray, nSt, nEnd) {
var _local1 = aArray.slice(nSt | 0, nEnd | aArray.length);
return(_local1[random(_local1.length)]);
}
static function getActualNumbers(aValues, nMinNumber, nMaxNumber) {
var _local6 = aValues.length;
var _local5 = aValues[0];
var _local7 = aValues[_local6 - 1];
if ((_local5 == nMinNumber) && (_local7 == nMaxNumber)) {
return(aValues);
}
var _local4 = new Array();
var _local2;
var _local1 = 0;
while (_local1 < _local6) {
_local2 = (aValues[_local1] - _local5) + nMinNumber;
_local4.push((_local2 / _local7) * nMaxNumber);
_local1++;
}
return(_local4);
}
static function contains(aArray, object) {
var _local1 = 0;
while (_local1 < aArray.length) {
if (aArray[_local1] === object) {
return(true);
}
_local1++;
}
return(false);
}
static function find(aArray, object) {
var _local1 = 0;
while (_local1 < aArray.length) {
if (aArray[_local1] === object) {
return(_local1);
}
_local1++;
}
return(-1);
}
static function allItemsToNumber(aArray) {
var _local3 = new Array();
var _local1 = 0;
while (_local1 < aArray.length) {
_local3.push(Number(aArray[_local1]));
_local1++;
}
return(_local3);
}
static function trim(aArray) {
return(leftTrim(rightTrim(aArray)));
}
static function leftTrim(aArray) {
return(leftTrimForValues(aArray, [null, undefined]));
}
static function rightTrim(aArray) {
return(rightTrimForValues(aArray, [null, undefined]));
}
static function leftTrimForValues(aArray, aValues) {
var _local3 = aArray.concat();
var _local2 = 0;
while (_local2 < _local3.length) {
var _local1 = 0;
while (_local1 < aValues.length) {
if (_local3[_local2] == aValues[_local1]) {
_local3.splice(_local2, 1);
} else {
return(_local3);
}
_local1++;
}
_local2--;
_local2++;
}
return(_local3);
}
static function rightTrimForValues(aArray, aValues) {
var _local3 = aArray.concat();
var _local2 = _local3.length - 1;
while (_local2 >= 0) {
var _local1 = 0;
while (_local1 < aValues.length) {
if (_local3[_local2] == aValues[_local1]) {
_local3.splice(_local2, 1);
} else {
return(_local3);
}
_local1++;
}
_local2--;
}
return(_local3);
}
static function merge() {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < arguments.length) {
_local3 = _local3.concat(arguments[_local2]);
_local2++;
}
return(_local3);
}
static function removeDuplicate(aArray) {
var _local1 = 0;
while (_local1 < aArray.length) {
var _local3 = find(aArray, aArray[_local1]);
if ((_local3 != -1) && (_local3 != _local1)) {
aArray.splice(_local1--, 1);
}
_local1++;
}
return(aArray);
}
static function equals(aA, aB) {
var _local1 = 0;
while (_local1 < aA.length) {
if (!gdp.utils.ObjectUtil.equals(aA[_local1], aB[_local1])) {
return(false);
}
_local1++;
}
return(true);
}
}
Symbol 320 MovieClip [__Packages.gdp.core.base.BaseClass] Frame 0
class gdp.core.base.BaseClass implements gdp.env.events.EventListenerSource
{
var sClassName, sPackageName, sClassNameWithPackage;
function BaseClass () {
delete sClassName;
delete sPackageName;
delete sClassNameWithPackage;
nClassId++;
if (com.kelvinluck.util.LogWrapper.getLog() == undefined) {
initLogger();
}
}
function initLogger() {
com.kelvinluck.util.LogWrapper.getInstance().init(getClassName());
com.kelvinluck.util.LogWrapper.getInstance().addConsolePublisher();
com.kelvinluck.util.LogWrapper.logCallingFile = false;
}
function description() {
return(getClassNameWithPackage(true));
}
function toString() {
return(description.apply(this, arguments));
}
function getClass() {
return(Object(this).__constructor__);
}
function getClassName(bRenew) {
if ((sClassName == undefined) || (bRenew)) {
sClassName = gdp.utils.ClassUtil.getClassName(getClass());
}
return(sClassName);
}
function getPackageName(bRenew) {
if ((sPackageName == undefined) || (bRenew)) {
sPackageName = gdp.utils.ClassUtil.getClassPackage(getClass());
}
return(sPackageName);
}
function getClassNameWithPackage(bRenew) {
if ((sClassNameWithPackage == undefined) || (bRenew)) {
sClassNameWithPackage = (getPackageName(bRenew) + ".") + getClassName(bRenew);
}
return(sClassNameWithPackage);
}
function isEqual(anObject) {
return(this == anObject);
}
function memberWiseClone() {
var _local2 = new Object();
var _local4 = getClass();
_local2.__proto__ = _local4.prototype;
_local2.__constructor__ = _local4;
_local4.apply(_local2);
for (var _local3 in this) {
_local2[_local3] = this[_local3];
}
return(gdp.core.base.BaseClass(_local2));
}
function addListener(listener) {
}
function removeListener(listener) {
}
static var bCompiledByMTASC = false;
static var nClassId = 0;
}
Symbol 321 MovieClip [__Packages.com.kelvinluck.util.LogWrapper] Frame 0
class com.kelvinluck.util.LogWrapper
{
static var _instance;
var _log;
function LogWrapper () {
}
static function mtascTrace(message, level, className, fileName, lineNumber) {
var _local1;
switch (level) {
case FATAL :
_local1 = "fatal";
break;
case ERROR :
_local1 = "error";
break;
case WARN :
_local1 = "warn";
break;
case INFO :
_local1 = "info";
break;
case DEBUG :
_local1 = "debug";
break;
default :
lineNumber = Number(fileName);
fileName = className;
className = String(level);
_local1 = "debug";
}
if (logCallingFile) {
getLog()[_local1](((((className + " [") + fileName) + ":") + lineNumber) + "]");
}
getLog()[_local1](message);
}
function init(logId) {
_log = new LuminicBox.Log.Logger(logId);
}
function addConsolePublisher() {
_log.addPublisher(new LuminicBox.Log.ConsolePublisher());
}
function addTracePublisher() {
_log.addPublisher(new LuminicBox.Log.TracePublisher());
}
static function getInstance() {
if (_instance == undefined) {
_instance = new com.kelvinluck.util.LogWrapper();
}
return(_instance);
}
static function getLog() {
return(getInstance()._log);
}
function toString() {
return("[Object - com.kelvinluck.util.LogWrapper]");
}
static var logCallingFile = true;
static var DEBUG = 2;
static var INFO = 4;
static var WARN = 8;
static var ERROR = 16;
static var FATAL = 32;
}
Symbol 322 MovieClip [__Packages.LuminicBox.Log.Logger] Frame 0
class LuminicBox.Log.Logger
{
var _loggerId, _level, _publishers;
function Logger (logId) {
_loggerId = logId;
_level = LuminicBox.Log.Level.LOG;
_publishers = new Object();
_instances[logId] = log;
}
static function getLogger(logId, maxDepth) {
if (logId.length > 0) {
var _local1 = _instances[logId];
if (_local1 == undefined) {
_local1 = new LuminicBox.Log.Logger(logId);
var _local2 = new LuminicBox.Log.TracePublisher();
var _local4 = new LuminicBox.Log.ConsolePublisher();
if (maxDepth == undefined) {
maxDepth = 3;
}
_local2.__set__maxDepth(maxDepth);
_local4.__set__maxDepth(maxDepth);
_local1.addPublisher(_local2);
_local1.addPublisher(_local4);
}
return(_local1);
}
return(null);
}
function log(argument) {
publish(argument, LuminicBox.Log.Level.LOG);
}
function debug(argument) {
publish(argument, LuminicBox.Log.Level.DEBUG);
}
function info(argument) {
publish(argument, LuminicBox.Log.Level.INFO);
}
function warn(argument) {
publish(argument, LuminicBox.Log.Level.WARN);
}
function error(argument) {
publish(argument, LuminicBox.Log.Level.ERROR);
}
function fatal(argument) {
publish(argument, LuminicBox.Log.Level.FATAL);
}
function getId() {
return(_loggerId);
}
function setLevel(level) {
_level = level;
}
function getLevel() {
return(_level);
}
function addPublisher(publisher) {
if (!_publishers[publisher.toString()]) {
_publishers[publisher.toString()] = publisher;
}
}
function removePublisher(publisher) {
delete _publishers[publisher.toString()];
}
function getPublishers() {
return(_publishers);
}
function toString() {
return("[object LuminicBox.Log.Logger]");
}
function publish(argument, level) {
if (level.getValue() >= _level.getValue()) {
var _local2 = new LuminicBox.Log.LogEvent(_loggerId, argument, level);
for (var _local3 in _publishers) {
LuminicBox.Log.IPublisher(_publishers[_local3]).publish(_local2);
}
}
}
static var _instances = new Object();
}
Symbol 323 MovieClip [__Packages.LuminicBox.Log.IPublisher] Frame 0
interface LuminicBox.Log.IPublisher
{
}
Symbol 324 MovieClip [__Packages.LuminicBox.Log.LogEvent] Frame 0
class LuminicBox.Log.LogEvent
{
var loggerId, argument, level, time;
function LogEvent (loggerId, argument, level) {
this.loggerId = loggerId;
this.argument = argument;
this.level = level;
time = new Date();
}
static function serialize(logEvent) {
var _local1 = new Object();
_local1.loggerId = logEvent.loggerId;
_local1.time = logEvent.time;
_local1.levelName = logEvent.level.getName();
_local1.argument = logEvent.argument;
return(_local1);
}
static function deserialize(o) {
var _local3 = LuminicBox.Log.Level["" + o.levelName];
var _local1 = new LuminicBox.Log.LogEvent(o.loggerId, o.argument, _local3);
_local1.time = o.time;
return(_local1);
}
function toString() {
return("[object LuminicBox.Log.LogEvent]");
}
}
Symbol 325 MovieClip [__Packages.LuminicBox.Log.Level] Frame 0
class LuminicBox.Log.Level
{
var _name, _value;
function Level (name, value) {
_name = name;
_value = value;
}
function getName() {
return(_name);
}
function getValue() {
return(_value);
}
function toString() {
return(("[object LuminicBox.Log.Level." + getName()) + "]");
}
static var ALL = new LuminicBox.Log.Level("ALL", 1);
static var LOG = new LuminicBox.Log.Level("LOG", 1);
static var DEBUG = new LuminicBox.Log.Level("DEBUG", 2);
static var INFO = new LuminicBox.Log.Level("INFO", 4);
static var WARN = new LuminicBox.Log.Level("WARN", 8);
static var ERROR = new LuminicBox.Log.Level("ERROR", 16);
static var FATAL = new LuminicBox.Log.Level("FATAL", 32);
static var NONE = new LuminicBox.Log.Level("NONE", 1024);
}
Symbol 326 MovieClip [__Packages.LuminicBox.Log.TracePublisher] Frame 0
class LuminicBox.Log.TracePublisher implements LuminicBox.Log.IPublisher
{
var _maxDepth, inProgress;
function TracePublisher () {
maxDepth = (4);
}
function set maxDepth(value) {
_maxDepth = ((_maxDepth > 255) ? 255 : (value));
//return(maxDepth);
}
function get maxDepth() {
return(_maxDepth);
}
function publish(e) {
inProgress = new Array();
var _local4 = e.argument;
var _local2 = ("*" + e.level.getName()) + "*";
if (e.loggerId) {
_local2 = _local2 + (":" + e.loggerId);
}
_local2 = _local2 + ":";
_local2 = _local2 + analyzeObj(_local4, 1);
trace(_local2);
}
function toString() {
return("LuminicBox.Log.TracePublisher");
}
function analyzeObj(o, depth) {
var _local6 = "";
var _local5 = typeof(o);
if (_local5 == "string") {
_local6 = _local6 + (("\"" + o) + "\"");
} else if ((_local5 == "boolean") || (_local5 == "number")) {
_local6 = _local6 + o;
} else if ((_local5 == "undefined") || (_local5 == "null")) {
_local6 = _local6 + (("(" + _local5) + ")");
} else {
var _local8 = false;
var _local9 = true;
if (o instanceof Array) {
_local5 = "array";
_local8 = false;
} else if (o instanceof Button) {
_local5 = "button";
_local8 = true;
} else if (o instanceof Date) {
_local5 = "date";
_local9 = false;
_local8 = true;
} else if (o instanceof Color) {
_local5 = "color";
_local9 = false;
_local8 = true;
o = o.getRGB().toString(16);
} else if (o instanceof MovieClip) {
_local5 = "movieclip";
_local8 = true;
} else if (o instanceof XML) {
_local5 = "xml";
_local9 = false;
_local8 = true;
} else if (o instanceof XMLNode) {
_local5 = "xmlnode";
_local9 = false;
_local8 = true;
} else if (o instanceof Sound) {
_local5 = "sound";
} else if (o instanceof TextField) {
_local5 = "textfield";
_local8 = true;
} else if (o instanceof Function) {
_local5 = "function";
_local9 = false;
}
_local6 = _local6 + "(";
if (_local8) {
_local6 = _local6 + ((_local5 + " ") + o);
} else if (_local5 == "object") {
_local6 = _local6 + o;
} else if (_local5 == "array") {
_local6 = _local6 + ((_local5 + ":") + o.length);
} else {
_local6 = _local6 + _local5;
}
_local6 = _local6 + ")";
var _local3 = 0;
while (_local3 < inProgress.length) {
if (inProgress[_local3] == o) {
return(_local6 + ": **cross-reference**");
}
_local3++;
}
inProgress.push(o);
if (_local9 && (depth <= _maxDepth)) {
var _local7 = "";
if (_local5 == "array") {
_local3 = 0;
while (_local3 < o.length) {
_local7 = _local7 + ((((newline + gdp.utils.StringUtil.multiply("\t", depth + 1)) + _local3) + ":") + analyzeObj(o[_local3], depth + 1));
_local3++;
}
} else {
for (var _local10 in o) {
_local7 = _local7 + ((((newline + gdp.utils.StringUtil.multiply("\t", depth + 1)) + _local10) + ":") + analyzeObj(o[_local10], depth + 1));
}
}
if (_local7.length > 0) {
_local6 = _local6 + ((((" {" + _local7) + newline) + gdp.utils.StringUtil.multiply("\t", depth)) + "}");
}
}
inProgress.pop();
}
return(_local6);
}
}
Symbol 327 MovieClip [__Packages.gdp.utils.StringUtil] Frame 0
class gdp.utils.StringUtil
{
function StringUtil () {
}
static function addCharsToRight(sString, sChars, nCount) {
var _local1 = 0;
while (_local1 < nCount) {
sString = sString + sChars;
_local1++;
}
return(sString);
}
static function addCharsToLeft(sString, sChars, nCount) {
var _local1 = 0;
while (_local1 < nCount) {
sString = sChars + sString;
_local1++;
}
return(sString);
}
static function isNumber(sString) {
return(((Number(sString) == sString) ? true : false));
}
static function replace(sString, sWhat, sTo) {
return(new String(sString.split(sWhat).join(sTo)));
}
static function replaceAll(sString, sWhat, sTo) {
sString = new String(sString.split(sWhat).join(sTo));
if (sString.indexOf(sWhat) != -1) {
return(replaceAll(sString, sWhat, sTo));
}
return(sString);
}
static function trim(sString) {
return(leftTrim(rightTrim(sString)));
}
static function leftTrim(sString) {
return(leftTrimForChars(sString, "\n\t\n "));
}
static function rightTrim(sString) {
return(rightTrimForChars(sString, "\n\t\n "));
}
static function leftTrimForChars(sString, sChars) {
var _local1 = 0;
var _local3 = sString.length;
while ((_local1 < _local3) && (sChars.indexOf(sString.charAt(_local1)) >= 0)) {
_local1++;
}
return(new String(((_local1 > 0) ? (sString.substr(_local1, _local3)) : (sString))));
}
static function rightTrimForChars(sString, sChars) {
var _local2 = 0;
var _local1 = sString.length - 1;
while ((_local2 < _local1) && (sChars.indexOf(sString.charAt(_local1)) >= 0)) {
_local1--;
}
return(new String(((_local1 >= 0) ? (sString.substr(_local2, _local1 + 1)) : (sString))));
}
static function checkEmail(sEmail) {
if (sEmail.length < 6) {
return(false);
}
if ((sEmail.split("@").length > 2) || (sEmail.indexOf("@") < 0)) {
return(false);
}
if (sEmail.lastIndexOf("@") > sEmail.lastIndexOf(".")) {
return(false);
}
if (sEmail.lastIndexOf(".") > (sEmail.length - 3)) {
return(false);
}
if (sEmail.lastIndexOf(".") <= (sEmail.lastIndexOf("@") + 1)) {
return(false);
}
return(true);
}
static function assureLength(sString, nLength) {
if ((nLength < 0) || ((!nLength) && (!(nLength === 0)))) {
return(sString.length >= nLength);
}
}
static function contains(sString, sChars) {
if (((sChars == null) || (sString == null)) || (sChars.length > sString.length)) {
return(false);
}
if (sString.indexOf(sChars) >= 0) {
return(true);
}
return(false);
}
static function startsWith(sString, sSearchString) {
if (sString.indexOf(sSearchString) == 0) {
return(true);
}
return(false);
}
static function endsWith(sString, sSearchString) {
if (sString.lastIndexOf(sSearchString) == (sString.length - sSearchString.length)) {
return(true);
}
return(false);
}
static function addSpaceIndent(sString, nSize) {
if (sString == null) {
sString = "";
}
if (nSize < 0) {
return(new String(""));
}
var _local1 = multiply(" ", nSize);
return(_local1 + replace(sString, newline, newline + _local1));
}
static function multiply(sString, nFactor) {
var _local2 = "";
var _local1 = nFactor;
while (_local1 > 0) {
_local2 = _local2 + sString;
_local1--;
}
return(_local2);
}
static function ucFirst(sString) {
return(new String(sString.charAt(0).toUpperCase() + sString.substr(1)));
}
static function ucWords(sString) {
var _local2 = sString.split(" ");
var _local3 = _local2.length;
var _local1 = 0;
while (_local1 < _local3) {
_local2[_local1] = ucFirst(_local2[_local1]);
_local1++;
}
return(new String(_local2.join(" ")));
}
static function firstChar(sString) {
return(new String(sString.charAt(0)));
}
static function lastChar(sString) {
return(new String(sString.charAt(sString.length - 1)));
}
static function toBoolean(value) {
if ((value == "1") || (value == "true")) {
return(true);
}
return(false);
}
static function toNumber(value) {
var _local3 = parseInt(value);
var _local2 = parseFloat(value);
if (value == _local3) {
return(_local3);
}
if (value == _local2) {
return(_local2);
}
return(Number.NaN);
}
static function toArray(sString, sDelimeters, bTrim, bIgnoreEmpty) {
var _local7 = new Array();
var _local5 = sDelimeters.split("");
var _local6 = -1;
var _local3 = 0;
while (_local3 <= sString.length) {
var _local2 = 0;
while (_local2 < _local5.length) {
if ((sString.substr(_local3, 1) == _local5[_local2]) || ((_local2 == (_local5.length - 1)) && (_local3 == sString.length))) {
var _local1 = sString.slice(_local6 + 1, _local3);
if (bTrim) {
_local1 = trim(_local1);
}
if (!(bIgnoreEmpty && (_local1.length == 0))) {
_local7.push(_local1);
}
_local6 = _local3;
break;
}
_local2++;
}
_local3++;
}
return(_local7);
}
static function toTypedArray(sString, sDelimeters, fType, bTrim, bIgnoreEmpty) {
var _local2 = toArray(sString, sDelimeters, bTrim, bIgnoreEmpty);
var _local1 = 0;
while (_local1 < _local2.length) {
_local2[_local1] = fType(_local2[_local1]);
_local1++;
}
return(_local2);
}
}
Symbol 328 MovieClip [__Packages.LuminicBox.Log.ConsolePublisher] Frame 0
class LuminicBox.Log.ConsolePublisher implements LuminicBox.Log.IPublisher
{
var _maxDepth, _inProgressObjs, _inProgressSerial;
function ConsolePublisher () {
maxDepth = (4);
}
function set maxDepth(value) {
_maxDepth = ((_maxDepth > 255) ? 255 : (value));
//return(maxDepth);
}
function get maxDepth() {
return(_maxDepth);
}
function set showFunctions(value) {
_showFunctions = value;
//return(showFunctions);
}
function get showFunctions() {
return(_showFunctions);
}
function publish(e) {
_inProgressObjs = new Array();
_inProgressSerial = new Array();
var _local2 = LuminicBox.Log.LogEvent.serialize(e);
_local2.argument = serializeObj(_local2.argument, 1);
_local2.version = _version;
var _local3 = new LocalConnection();
_local3.send("_luminicbox_log_console", "log", _local2);
}
function toString() {
return("LuminicBox.Log.ConsolePublisher");
}
function serializeObj(o, depth) {
var _local15 = new Object();
var _local2 = getType(o);
_local15.type = _local2.name;
if (!_local2.inspectable) {
_local15.value = o;
} else if (_local2.stringify) {
_local15.value = o.toString();
} else {
var _local9 = new Array();
_local15.value = _local9;
if ((((_local2.name == "movieclip") || (_local2.name == "button")) || (_local2.name == "object")) || (_local2.name == "textfield")) {
_local15.id = "" + o;
}
var _local3 = 0;
while (_local3 < _inProgressObjs.length) {
if (_inProgressObjs[_local3] == o) {
var _local5 = _inProgressSerial[_local3];
var _local8 = {value:_local5.value, type:_local5.type, crossRef:true};
if (_local5.id) {
_local8.id = _local5.id;
}
return(_local8);
}
_local3++;
}
_inProgressObjs.push(o);
_inProgressSerial.push(_local15);
if (depth <= _maxDepth) {
if (_local2.properties) {
var _local14 = new Object();
_local3 = 0;
while (_local3 < _local2.properties.length) {
_local14[_local2.properties[_local3]] = o[_local2.properties[_local3]];
_local3++;
}
_local14 = serializeObj(_local14, _maxDepth);
_local14.type = "properties";
_local9.push({property:"$properties", value:_local14});
}
if (o instanceof Array) {
var _local6 = 0;
while (_local6 < o.length) {
_local9.push({property:_local6, value:serializeObj(o[_local6], depth + 1)});
_local6++;
}
} else {
for (var _local16 in o) {
if (!((o[_local16] instanceof Function) && (!_showFunctions))) {
var _local7 = true;
if (_local2.properties) {
_local3 = 0;
while (_local3 < _local2.properties.length) {
if (_local16 == _local2.properties[_local3]) {
_local7 = false;
}
_local3++;
}
}
if (_local7) {
_local9.push({property:_local16, value:serializeObj(o[_local16], depth + 1)});
}
}
}
}
} else {
_local15.reachLimit = true;
}
_inProgressObjs.pop();
_inProgressSerial.pop();
}
return(_local15);
}
function getType(o) {
var _local3 = typeof(o);
var _local1 = new Object();
_local1.inspectable = true;
_local1.name = _local3;
if (((((_local3 == "string") || (_local3 == "boolean")) || (_local3 == "number")) || (_local3 == "undefined")) || (_local3 == "null")) {
_local1.inspectable = false;
} else if (o instanceof Date) {
_local1.inspectable = false;
_local1.name = "date";
} else if (o instanceof Array) {
_local1.name = "array";
} else if (o instanceof Button) {
_local1.name = "button";
_local1.properties = LuminicBox.Log.PropertyInspector.buttonProperties;
} else if (o instanceof MovieClip) {
_local1.name = "movieclip";
_local1.properties = LuminicBox.Log.PropertyInspector.movieClipProperties;
} else if (o instanceof XML) {
_local1.name = "xml";
_local1.stringify = true;
} else if (o instanceof XMLNode) {
_local1.name = "xmlnode";
_local1.stringify = true;
} else if (o instanceof Color) {
_local1.name = "color";
} else if (o instanceof Sound) {
_local1.name = "sound";
_local1.properties = LuminicBox.Log.PropertyInspector.soundProperties;
} else if (o instanceof TextField) {
_local1.name = "textfield";
_local1.properties = LuminicBox.Log.PropertyInspector.textFieldProperties;
}
return(_local1);
}
var _version = 0.15;
var _showFunctions = false;
}
Symbol 329 MovieClip [__Packages.LuminicBox.Log.PropertyInspector] Frame 0
class LuminicBox.Log.PropertyInspector
{
function PropertyInspector () {
}
static var movieClipProperties = new Array("_alpha", "_currentframe", "_droptarget", "enabled", "focusEnabled", "_focusrect", "_framesloaded", "_height", "hitArea", "_lockroot", "menu", "_name", "_parent", "_quality", "_rotation", "_soundbuftime", "tabChildren", "tabEnabled", "tabIndex", "_target", "_totalframes", "trackAsMenu", "_url", "useHandCursor", "_visible", "_width", "_x", "_xmouse", "_xscale", "_y", "_ymouse", "_yscale");
static var buttonProperties = new Array("_alpha", "enabled", "_focusrect", "_height", "_quality", "menu", "_name", "_parent", "_quality", "_rotation", "_soundbuftime", "tabEnabled", "tabIndex", "_target", "trackAsMenu", "_url", "useHandCursor", "_visible", "_width", "_x", "_xmouse", "_xscale", "_y", "_ymouse", "_yscale");
static var soundProperties = new Array("duration", "id3", "position");
static var textFieldProperties = new Array("_alpha", "autoSize", "background", "backgroundColor", "border", "borderColor", "bottomScroll", "condenseWhite", "embedFonts", "_height", "hscroll", "html", "htmlText", "length", "maxChars", "maxhscroll", "maxscroll", "menu", "mouseWheelEnabled", "multiline", "_name", "_parent", "password", "_quality", "restrict", "_rotation", "scroll", "selectable", "styleSheet", "tabEnabled", "tabIndex", "_target", "text", "textColor", "textHeight", "textWidth", "type", "_url", "variable", "_visible", "_width", "wordWrap", "_x", "_xmouse", "_xscale", "_y", "_ymouse", "_yscale");
}
Symbol 330 MovieClip [__Packages.gdp.utils.ClassUtil] Frame 0
class gdp.utils.ClassUtil extends gdp.core.base.BaseClass
{
function ClassUtil () {
super();
}
static function getClassByName(sClassName) {
return(eval (String(sClassName)));
}
static function getClassName(oClass) {
return(gdp.utils.ObjectUtil.findNameOfObject(oClass, _global, false));
}
static function getClassPackage(oClass) {
var _local2 = gdp.utils.ObjectUtil.findNameOfObject(oClass, _global, true);
return(_local2.substring(0, _local2.lastIndexOf(".")));
}
static function getClassNameWithPackage(oClass) {
return(gdp.utils.ObjectUtil.findNameOfObject(oClass, _global, true));
}
static function isSubClassOf(subClass, superClass) {
var _local1 = subClass.prototype;
while (!(_local1 === undefined)) {
_local1 = _local1.__proto__;
if (_local1 === superClass.prototype) {
return(true);
}
}
return(false);
}
static function isImplementationOf(clazz, interfaze) {
var _local2 = clazz.prototype;
if (isSubClassOf(clazz, interfaze)) {
return(false);
}
return(createCleanInstance(clazz) instanceof interfaze);
}
static function createCleanInstance(clazz) {
var _local1 = new Object();
_local1.__proto__ = clazz.prototype;
_local1.__constructor__ = clazz;
return(_local1);
}
static function createInstance(clazz, args) {
if (!clazz) {
return(null);
}
var _local1 = new Object();
_local1.__proto__ = clazz.prototype;
_local1.__constructor__ = clazz;
clazz.apply(_local1, args);
return(_local1);
}
}
Symbol 331 MovieClip [__Packages.gdp.utils.XMLUtil] Frame 0
class gdp.utils.XMLUtil extends gdp.core.base.BaseClass
{
function XMLUtil () {
super();
}
static function isHasAttributes(node) {
for (var _local2 in node.attributes) {
return(true);
}
return(false);
}
static function toObject(node, oRes) {
if (oRes == undefined) {
oRes = new Object();
}
node.ignoreWhite = true;
var _local3 = node.childNodes.length - 1;
while (_local3 >= 0) {
var _local1 = node.childNodes[_local3];
if (_local1.childNodes[0].nodeValue == undefined) {
var _local4 = new Object();
if (isHasAttributes(_local1)) {
_local4.attributes = gdp.utils.ObjectUtil.copy(_local1.attributes);
}
toObject(_local1, _local4);
oRes[_local1.nodeName] = _local4;
} else if (_local1.hasChildNodes()) {
if ((_local1.nodeName == node.childNodes[_local3 - 1].nodeName) || (oRes[_local1.nodeName] instanceof Array)) {
if (!(oRes[_local1.nodeName] instanceof Array)) {
oRes[_local1.nodeName] = new Array();
}
oRes[_local1.nodeName].unshift(_local1.firstChild.nodeValue);
} else {
oRes[_local1.nodeName] = _local1.firstChild.nodeValue;
}
}
_local3--;
}
return(oRes);
}
function description() {
return("XMLUtil");
}
}
Symbol 332 MovieClip [__Packages.rainbow.ui.Panel] Frame 0
class rainbow.ui.Panel extends gdp.core.base.BaseMovieClip
{
var swapDepths, _parent, _visible;
function Panel () {
super();
rainbow.lang.Localization.getInstance().applyLang(this);
}
static function create(mcParent, sLinkName, oParams) {
trace(("rainbow.ui.Panel.create(" + [arguments]) + ")");
return(rainbow.ui.Panel(mcParent.attachMovie(sLinkName, "mc" + sLinkName, mcParent.getNextHighestDepth(), oParams)));
}
function show(Void) {
swapDepths(_parent.getNextHighestDepth());
_visible = true;
}
function hide(Void) {
_visible = false;
}
}
Symbol 333 MovieClip [__Packages.rainbow.lang.Localization] Frame 0
class rainbow.lang.Localization extends gdp.core.base.BaseClass
{
static var instance;
function Localization () {
super();
oStrings = new Object();
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.lang.Localization();
}
return(instance);
}
function setStrings(oStrings) {
this.oStrings = oStrings;
}
function setStringsAt(oStringsAt) {
for (var _local3 in oStringsAt) {
oStrings[_local3] = oStringsAt[_local3];
}
}
function getString(sStringId) {
return(oStrings[sStringId]);
}
function applyLang(mcTarget) {
for (var _local5 in mcTarget) {
if (mcTarget[_local5] instanceof TextField) {
var _local3 = mcTarget[_local5];
var _local4 = getString(_local3._name);
if ((_local4 != null) && (_local3 != null)) {
_local3.text = _local4;
}
} else if (typeof(mcTarget[_local5]) == "movieclip") {
applyLang(mcTarget[_local5]);
}
}
}
var oStrings = null;
}
Symbol 334 MovieClip [__Packages.rainbow.panels.HowToPlay] Frame 0
class rainbow.panels.HowToPlay extends rainbow.ui.Panel
{
static var instance;
var removeMovieClip;
function HowToPlay () {
super();
mcWindow1._alpha = 20;
mcWindow2._alpha = 20;
btnStart.onRelease = gdp.utils.Delegate.create(this, onReleaseStart);
next();
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.panels.HowToPlay();
}
return(instance);
}
function next(Void) {
if (mcCurrentWindow != null) {
var _local2 = new gdp.effects.fade.FadeOut(mcCurrentWindow, 100, 50, 5);
_local2.onEnd = gdp.utils.Delegate.create(this, onFadeOutEnd);
_local2.run();
} else {
onFadeOutEnd();
}
}
function onFadeInEnd(Void) {
mcCurrentWindow.play();
}
function onFadeOutEnd(Void) {
mcCurrentWindow = ((mcCurrentWindow == mcWindow1) ? (mcWindow2) : (mcWindow1));
var _local2 = new gdp.effects.fade.FadeIn(mcCurrentWindow, 50, 100, 5);
_local2.onEnd = gdp.utils.Delegate.create(this, onFadeInEnd);
_local2.run();
}
function onReleaseStart(Void) {
onStartRelease();
removeMovieClip();
}
var mcWindow1 = null;
var mcWindow2 = null;
var btnStart = null;
var mcCurrentWindow = null;
var onStartRelease = null;
}
Symbol 335 MovieClip [__Packages.rainbow.ui.SimpleButton] Frame 0
class rainbow.ui.SimpleButton extends gdp.core.base.BaseMovieClip
{
function SimpleButton () {
super();
}
function onRollOut(Void) {
var _local2 = new TextFormat();
_local2.color = 16777215 /* 0xFFFFFF */;
tfLabel.setTextFormat(_local2);
}
function onRollOver(Void) {
var _local2 = new TextFormat();
_local2.color = 16574721 /* 0xFCE901 */;
tfLabel.setTextFormat(_local2);
}
var tfLabel = null;
}
Symbol 336 MovieClip [__Packages.gdp.utils.Delegate] Frame 0
class gdp.utils.Delegate extends gdp.core.base.BaseClass
{
var func;
function Delegate (f) {
super();
func = f;
}
static function create(oClass, fFunc, aArgs, bMerge) {
var _local3 = function () {
var _local5 = arguments.callee.target;
var _local4 = arguments.callee.func;
var _local6 = arguments.callee.bMerge;
var _local3;
if (_local6) {
_local3 = arguments;
var _local2 = 0;
while (_local2 < arguments.callee.aArgs.length) {
_local3.push(arguments.callee.aArgs[_local2]);
_local2++;
}
} else {
_local3 = ((arguments.length > 0) ? arguments : (arguments.callee.aArgs));
}
_local4.___nCount = arguments.callee.nCount;
return(_local4.apply(_local5, _local3));
};
_local3.type = "Delegate";
_local3.target = oClass;
_local3.func = fFunc;
_local3.nCount = ++nCount;
if (_local3.func.___aInnerValues == undefined) {
_local3.func.___aInnerValues = new Array();
}
_local3.func.___aInnerValues[nCount] = new Object();
_local3.aArgs = aArgs;
_local3.bMerge = bMerge;
return(_local3);
}
static function set(sValueName, value) {
return((arguments.caller.___aInnerValues[arguments.caller.___nCount][sValueName] = value));
}
static function setTo(fFunction, sValueName, value) {
return((fFunction.___aInnerValues[fFunction.___nCount][sValueName] = value));
}
static function get(sValueName) {
return(arguments.caller.___aInnerValues[arguments.caller.___nCount][sValueName]);
}
static function equal(fFunctionA, fFunctionB) {
if (isDelegate(fFunctionA) && (isDelegate(fFunctionB))) {
return((fFunctionA.func == fFunctionB.func) && (fFunctionA.target == fFunctionB.target));
}
if ((!isDelegate(fFunctionA)) && (!isDelegate(fFunctionB))) {
return(fFunctionA.func == fFunctionB.func);
}
return(false);
}
static function isDelegate(fFunction) {
return(fFunction.type == "Delegate");
}
static function clone(fDelegate) {
if ((fDelegate.target != undefined) && (fDelegate.func != undefined)) {
return(create(fDelegate.target, fDelegate.func, fDelegate.aArgs, fDelegate.bMerge));
}
return(fDelegate);
}
static function toString(fDelegate) {
if (isDelegate(fDelegate)) {
var _local3 = ((fDelegate.target.getClassNameWithPackage == null) ? (gdp.env.reflect.ReflectUtil.getTypeName(fDelegate.target)) : (fDelegate.target.getClassNameWithPackage(true)));
var _local2 = gdp.env.reflect.ReflectUtil.getMethodName(fDelegate.func, fDelegate.target);
var _local4 = fDelegate.aArgs.toString();
return(((((("Delegate {class:" + _local3) + ", method:") + _local2) + ", arguments:") + _local4) + "}");
}
return("[Function]");
}
function createDelegate(obj) {
return(create(obj, func));
}
static var nCount = 0;
}
Symbol 337 MovieClip [__Packages.gdp.env.reflect.ReflectUtil] Frame 0
class gdp.env.reflect.ReflectUtil extends gdp.core.base.BaseClass
{
function ReflectUtil (Void) {
super();
}
static function getUnusedMemberName(object) {
var _local1 = 10000;
var _local3 = MEMBER_PREFIX + "_";
var _local2 = MEMBER_PREFIX + "-";
while (_local1-- , _local1 - -1) {
if (object[_local3 + _local1] === undefined) {
return(_local3 + _local1);
}
if (object[_local2 + _local1] === undefined) {
return(_local2 + _local1);
}
}
return(null);
}
static function getTypeAndMethodInfo(object, method) {
if ((object === null) || (object === undefined)) {
return(null);
}
if (typeof(object) == "function") {
return(getTypeAndMethodInfoByType(object, method));
}
return(getTypeAndMethodInfoByInstance(object, method));
}
static function getTypeAndMethodInfoByType(type, method) {
if ((type === null) || (type === undefined)) {
return(null);
}
if (method.valueOf() == type.valueOf()) {
return([false, getTypeNameForType(type), CONSTRUCTOR]);
}
var _local2 = getMethodNameByObject(method, type);
if ((!(_local2 === null)) && (!(_local2 === undefined))) {
return([true, getTypeNameForType(type), _local2]);
}
return(getTypeAndMethodInfoByPrototype(type.prototype, method));
}
static function getTypeAndMethodInfoByInstance(instance, method) {
if ((instance === null) || (instance === undefined)) {
return(null);
}
if (instance.__constructor__) {
if (instance.__constructor__.prototype == instance.__proto__) {
return(getTypeAndMethodInfoByType(instance.__constructor__, method));
}
}
if (instance.constructor) {
if (instance.constructor.prototype == instance.__proto__) {
return(getTypeAndMethodInfoByType(instance.constructor, method));
}
}
return(getTypeAndMethodInfoByPrototype(instance.__proto__, method));
}
static function getTypeAndMethodInfoByPrototype(p, m) {
if ((p === null) || (p === undefined)) {
return(null);
}
var _local6 = p;
_global.ASSetPropFlags(_global, null, 0, true);
var _local4;
while (p) {
if (p.constructor.valueOf() == m.valueOf()) {
_local4 = CONSTRUCTOR;
} else {
_local4 = getMethodNameByObject(m, p);
}
if (_local4 != null) {
var _local3 = new Array();
_local3[0] = false;
_local3[1] = getTypeNameByPrototype(p, _global, "", [_global]);
_local3[2] = _local4;
return(_local3);
}
p = p.__proto__;
}
return([null, getTypeNameByPrototype(_local6, _global, "", [_global]), null]);
}
static function getTypeName(object) {
if ((object === null) || (object === undefined)) {
return(null);
}
if (typeof(object) == "function") {
return(getTypeNameForType(object));
}
return(getTypeNameForInstance(object));
}
static function getTypeNameForInstance(instance) {
if ((instance === null) || (instance === undefined)) {
return(null);
}
_global.ASSetPropFlags(_global, null, 0, true);
return(getTypeNameByPrototype(instance.__proto__, _global, "", [_global]));
}
static function getTypeNameForType(type) {
if ((type === null) || (type === undefined)) {
return(null);
}
_global.ASSetPropFlags(_global, null, 0, true);
return(getTypeNameByPrototype(type.prototype, _global, "", [_global]));
}
static function getTypeNameByPrototype(c, p, n, a) {
var y = c.__as2lib__typeName;
if ((y != null) && (y != c.__proto__.__as2lib__typeName)) {
return(y);
}
if (n == null) {
n = "";
}
var s = _global.ASSetPropFlags;
for (var r in p) {
try {
if (((!eval ("_global." + r.split("_").join("."))) || (r.indexOf("_") < 0)) && (p[r].prototype === c)) {
var x = (n + r);
c.__as2lib__typeName = x;
s(c, "__as2lib__typeName", 1, true);
return(x);
}
if (p[r].__constructor__.valueOf() == Object) {
var f = false;
var i = 0;
while (i < a.length) {
if (a[i].valueOf() == p[r].valueOf()) {
f = true;
}
i++;
}
if (!f) {
a.push(p[r]);
r = getTypeNameByPrototype(c, p[r], (n + r) + ".", a);
if (r) {
return(r);
}
}
} else if (typeof(p[r]) == "function") {
p[r].prototype.__as2lib__typeName = n + r;
s(p[r].prototype, "__as2lib__typeName", 1, true);
}
} catch(e) {
}
}
return(null);
}
static function getMethodName(method, object) {
if (((!method) || (object === null)) || (object === undefined)) {
return(null);
}
if (typeof(object) == "function") {
return(getMethodNameByType(method, object));
}
return(getMethodNameByInstance(method, object));
}
static function getMethodNameByInstance(method, instance) {
if (((!method) || (instance === null)) || (instance === undefined)) {
return(null);
}
if (instance.__constructor__) {
if (instance.__constructor__.prototype == instance.__proto__) {
return(getMethodNameByType(method, instance.__constructor__));
}
}
if (instance.constructor) {
if (instance.constructor.prototype == instance.__proto__) {
return(getMethodNameByType(method, instance.constructor));
}
}
return(getMethodNameByPrototype(method, instance.__proto__));
}
static function getMethodNameByType(method, type) {
if ((!method) || (!type)) {
return(null);
}
var _local1 = getMethodNameByPrototype(method, type.prototype);
if (_local1 != null) {
return(_local1);
}
return(getMethodNameByObject(method, type));
}
static function getMethodNameByPrototype(m, p) {
if ((((m === null) || (m === undefined)) || (p === null)) || (p === undefined)) {
return(null);
}
while (p) {
var _local2 = getMethodNameByObject(m, p);
if (_local2 != null) {
return(_local2);
}
p = p.__proto__;
}
return(null);
}
static function getMethodNameByObject(m, o) {
var _local6 = m.__as2lib__methodName;
if (_local6 != null) {
return(_local6);
}
var _local5 = _global.ASSetPropFlags;
_local5(o, null, 0, true);
_local5(o, ["__proto__", "prototype", "__constructor__", "constructor"], 7, true);
for (var _local4 in o) {
try {
if (o[_local4].valueOf() == m.valueOf()) {
m.__as2lib__methodName = _local4;
return(_local4);
}
if (typeof(o[_local4]) == "function") {
o[_local4].__as2lib__methodName = _local4;
}
} catch(e) {
}
}
_local5(o, null, 1, true);
return(null);
}
static function isMethodStatic(methodName, object) {
if (((!methodName) || (object === null)) || (object === undefined)) {
return(false);
}
if (typeof(object) == "function") {
return(isMethodStaticByType(methodName, object));
}
return(isMethodStaticByInstance(methodName, object));
}
static function isMethodStaticByInstance(methodName, instance) {
if (((!methodName) || (instance === null)) || (instance === undefined)) {
return(false);
}
return(isMethodStaticByType(methodName, (instance.__constructor__ ? (instance.__constructor) : (instance.constructor))));
}
static function isMethodStaticByType(methodName, type) {
if ((!methodName) || (!type)) {
return(false);
}
try {
if (type[methodName]) {
return(true);
}
} catch(e) {
}
return(false);
}
static function isConstructor(constructor, object) {
if ((((constructor === null) || (constructor === undefined)) || (object === null)) || (object === undefined)) {
return(false);
}
if (typeof(object) == "function") {
return(isConstructorByType(constructor, object));
}
return(isConstructorByInstance(constructor, object));
}
static function isConstructorByInstance(method, instance) {
if (((!method) || (instance === null)) || (instance === undefined)) {
return(false);
}
return(isConstructorByType(method, (instance.__constructor__ ? (instance.__constructor__) : (instance.constructor))));
}
static function isConstructorByType(method, type) {
if ((((method === null) || (method === undefined)) || (type === null)) || (type === undefined)) {
return(false);
}
return(method.valueOf() == type.valueOf());
}
static function getVariableNames(instance) {
var _local3 = new Array();
var _local5 = _global.ASSetPropFlags;
_local5(instance, null, 0, true);
_local5(instance, ["__proto__", "prototype", "__constructor__", "constructor"], 7, true);
for (var _local4 in instance) {
try {
if (typeof(instance[_local4]) != "function") {
_local3.push(_local4);
}
} catch(e) {
}
}
_local5(instance, null, 1, true);
return(_local3);
}
static function getTypeByName(path) {
var result = eval ("_global." + path);
if (!result) {
result = eval ("_global." + path.split(".").join("_"));
}
return(result);
}
static var CONSTRUCTOR = "new";
static var UNKNOWN = "[unknown]";
static var MEMBER_PREFIX = "__as2lib__member";
}
Symbol 338 MovieClip [__Packages.gdp.effects.fade.FadeOut] Frame 0
class gdp.effects.fade.FadeOut extends gdp.core.base.BaseClass
{
function FadeOut (mcObject, nAlphaStart, nAlphaEnd, nSpeed) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.mcObject = mcObject;
this.nAlphaStart = nAlphaStart;
this.nAlphaEnd = nAlphaEnd;
this.nSpeed = nSpeed;
}
function psFadeout(Void) {
if (mcObject == null) {
return(0);
}
if (Math.abs(int(mcObject._alpha - nAlphaEnd)) <= Math.abs(nSpeed)) {
end();
return(0);
}
mcObject._alpha = mcObject._alpha - nSpeed;
}
function end(Void) {
mcObject._alpha = nAlphaEnd;
eventManager.dispatch("onEnd", mcObject);
onEnd();
}
function run(Void) {
mcObject._alpha = nAlphaStart;
var _local2 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psFadeout));
gdp.core.process.ProcessManager.getInstance().addProcess(_local2);
}
var mcObject = null;
var nAlphaStart = null;
var nAlphaEnd = null;
var nSpeed = null;
var eventManager = null;
var onEnd = null;
}
Symbol 339 MovieClip [__Packages.gdp.env.events.EventManager] Frame 0
class gdp.env.events.EventManager extends AsBroadcaster
{
static var oLastClass;
var oClass;
function EventManager (oObj) {
super();
oClass = oObj;
AsBroadcaster.initialize(oClass);
}
function dispatch(sEventName) {
oLastClass = oClass;
oClass.broadcastMessage.apply(oClass, arguments);
}
function getListeners() {
return(oClass._listeners);
}
static function getTarget() {
return(oLastClass);
}
}
Symbol 340 MovieClip [__Packages.gdp.core.process.Process] Frame 0
class gdp.core.process.Process extends gdp.core.base.BaseClass
{
var fFunc, aArgs, nPriority, nId, bReadOnly;
function Process (fFunc, aArgs, nPriority) {
super();
setFunction(fFunc);
setArguments(((aArgs == null) ? ([]) : (aArgs)));
setPriority(nPriority | -1);
}
function run(Void) {
return(Number(fFunc.apply(null, aArgs)));
}
function setFunction(fFunc) {
this.fFunc = fFunc;
gdp.utils.Delegate.setTo(fFunc, "process", this);
}
function getFunction(Void) {
return(fFunc);
}
function setArguments(aArgs) {
this.aArgs = aArgs;
}
function getArguments(Void) {
return(aArgs);
}
function setPriority(nPriority) {
this.nPriority = nPriority;
}
function getPriority(Void) {
return(nPriority);
}
function getId(Void) {
return(nId);
}
function setReadOnly(bReadOnly) {
this.bReadOnly = bReadOnly;
}
function isReadOnly(Void) {
return(bReadOnly);
}
function isValid(Void) {
if ((fFunc == null) || (typeof(fFunc) != "function")) {
return(false);
}
return(true);
}
function isEqual(process) {
if (((!gdp.utils.Delegate.equal(process.getFunction(), fFunc)) || ((!process.getId()) != nId)) || (!checkArguments(process))) {
return(false);
}
return(true);
}
function checkArguments(process) {
var _local3 = process.getArguments();
var _local4 = aArgs;
if (_local3.length != _local4.length) {
return(false);
}
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2] != _local4[_local2]) {
return(false);
}
_local2++;
}
return(true);
}
function description(Void) {
var _local2 = {func:gdp.utils.Delegate.toString(fFunc), args:aArgs, id:nId};
return("Process " + gdp.utils.ObjectUtil.classToString(_local2, true));
}
}
Symbol 341 MovieClip [__Packages.gdp.core.process.ProcessManager] Frame 0
class gdp.core.process.ProcessManager extends gdp.core.base.BaseClass
{
static var instance;
function ProcessManager () {
super();
aProcessesList = new Array();
}
static function getInstance() {
if (instance == null) {
instance = new gdp.core.process.ProcessManager();
}
return(instance);
}
function run(Void) {
if (aProcessesList.length == 0) {
return(undefined);
}
var _local2 = 0;
while (_local2 < aProcessesList.length) {
var _local3 = aProcessesList[_local2];
var _local4 = _local3.run();
if ((_local4 == PROCESS_KILL) || (!_local3.isValid())) {
aProcessesList.splice(_local2--, 1);
} else if (_local4 == PROCESS_HOLD) {
return(undefined);
}
_local2++;
}
}
function addProcess(process) {
if (process.isValid()) {
process.nId = nNextFreeId++;
aProcessesList.push(process);
return(process.nId);
}
return(-1);
}
function getProcess(nId) {
var _local2 = 0;
while (_local2 < aProcessesList.length) {
if (aProcessesList[_local2].getId() == nId) {
return(aProcessesList[_local2]);
}
_local2++;
}
}
function killProcess(value) {
if (typeof(value) == "number") {
return(killProcessById(value));
}
if (value instanceof gdp.core.process.Process) {
return(killProcessByProcess(value));
}
return(false);
}
function killProcessById(nId) {
var _local2 = 0;
while (_local2 < aProcessesList.length) {
if (aProcessesList[_local2].getId() == nId) {
aProcessesList.splice(_local2--, 1);
return(true);
}
_local2++;
}
return(false);
}
function killProcessByProcess(process) {
return(killProcessById(process.getId()));
}
function isHas(process) {
var _local2 = 0;
while (_local2 < aProcessesList.length) {
if (aProcessesList[_local2].isEqual(process)) {
return(true);
}
_local2++;
}
return(false);
}
static var PROCESS_KILL = 0;
static var PROCESS_HOLD = -1;
var aProcessesList = null;
var nNextFreeId = 0;
}
Symbol 342 MovieClip [__Packages.gdp.effects.fade.FadeIn] Frame 0
class gdp.effects.fade.FadeIn extends gdp.core.base.BaseClass
{
function FadeIn (mcObject, nAlphaStart, nAlphaEnd, nSpeed) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.mcObject = mcObject;
this.nAlphaStart = nAlphaStart;
this.nAlphaEnd = nAlphaEnd;
this.nSpeed = nSpeed;
}
function psFadein(Void) {
if (mcObject == null) {
return(0);
}
if (Math.abs(int(mcObject._alpha - nAlphaEnd)) <= Math.abs(nSpeed)) {
end();
return(0);
}
mcObject._alpha = mcObject._alpha + nSpeed;
}
function end(Void) {
mcObject._alpha = nAlphaEnd;
eventManager.dispatch("onEnd", mcObject);
onEnd();
}
function run(Void) {
mcObject._alpha = nAlphaStart;
var _local2 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psFadein));
gdp.core.process.ProcessManager.getInstance().addProcess(_local2);
}
var mcObject = null;
var nAlphaStart = null;
var nAlphaEnd = null;
var nSpeed = null;
var eventManager = null;
var onEnd = null;
}
Symbol 343 MovieClip [__Packages.rainbow.panels.Download] Frame 0
class rainbow.panels.Download extends rainbow.ui.Panel
{
static var instance;
var hide;
function Download () {
super();
instance = this;
eventManager = new gdp.env.events.EventManager(this);
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_init));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
}
static function getInstance() {
return(instance);
}
function ps_init(Void) {
btnStart.onRelease = gdp.utils.Delegate.create(this, onReleaseStart);
btnDownload.onRelease = gdp.utils.Delegate.create(this, onReleaseDownload);
eventManager.dispatch("onInit", this);
return(0);
}
function onReleaseStart(Void) {
hide();
onStartRelease();
}
function onReleaseDownload(Void) {
onDownloadRelease();
}
var eventManager = null;
var btnStart = null;
var btnDownload = null;
var onStartRelease = null;
var onDownloadRelease = null;
}
Symbol 344 MovieClip [__Packages.rainbow.web.Background] Frame 0
class rainbow.web.Background extends gdp.core.base.BaseMovieClip
{
static var instance;
function Background () {
super();
instance = this;
eventManager = new gdp.env.events.EventManager(this);
init();
}
static function getInstance() {
return(instance);
}
function reset(Void) {
init();
}
function init(Void) {
var _local2 = 1;
while (_local2 < 6) {
this["item" + _local2]._visible = false;
_local2++;
}
}
function showItem(nItem) {
var _local2 = 1;
while (_local2 < nItem) {
this["item" + _local2]._visible = true;
_local2++;
}
var _local4 = new gdp.effects.fade.FadeIn(this["item" + nItem], 0, 100, 2);
_local4.onEnd = gdp.utils.Delegate.create(eventManager, eventManager.dispatch, ["onShowItemComplete"]);
_local4.run();
this["item" + nItem]._visible = true;
}
var eventManager = null;
}
Symbol 345 MovieClip [__Packages.rainbow.web.Link] Frame 0
class rainbow.web.Link extends gdp.core.base.BaseMovieClip
{
var holeB, holeA, _visible;
function Link () {
super();
if (aColorsList == null) {
aColorsList = new Array();
aColorsList.push(gdp.draw.DrawColor.red.valueOf());
aColorsList.push(gdp.draw.DrawColor.orange.valueOf());
aColorsList.push(gdp.draw.DrawColor.yellow.valueOf());
aColorsList.push(gdp.draw.DrawColor.green.valueOf());
aColorsList.push(gdp.draw.DrawColor.lightblue.valueOf());
aColorsList.push(gdp.draw.DrawColor.darkblue.valueOf());
aColorsList.push(gdp.draw.DrawColor.purple.valueOf());
}
color = new Color(this);
}
function update(Void) {
if (((holeA.getBead().getBallColor() == holeB.getBead().getBallColor()) && (holeA.getCircleNumber() == holeB.getCircleNumber())) && (holeA.getBead().getBallColor() != null)) {
setColorRGB(holeA.getBead().getBallColor());
} else {
resetColor();
}
}
function isCircle(Void) {
if ((holeA.getCircleNumber() - holeB.getCircleNumber()) == 0) {
return(true);
}
return(false);
}
function isLine(Void) {
if ((holeA.getLineNumber() - holeB.getLineNumber()) == 0) {
return(true);
}
return(false);
}
function setHoleA(holeA) {
this.holeA = holeA;
update();
}
function getHoleA(Void) {
return(holeA);
}
function setHoleB(holeB) {
this.holeB = holeB;
update();
}
function getHoleB(Void) {
return(holeB);
}
function resetColor(Void) {
color.setTransform(gdp.draw.DrawColor.defaultTransform);
}
function setColorRGB(nColorValue) {
color.setRGB(aColorsList[nColorValue]);
}
function disable(Void) {
if (holeA.isDisabled() && (holeB.isDisabled())) {
_visible = false;
}
holeA.removeSibilingHole(holeB);
holeB.removeSibilingHole(holeA);
}
function enable(Void) {
_visible = true;
}
static var aColorsList = null;
var color = null;
}
Symbol 346 MovieClip [__Packages.rainbow.web.Hole] Frame 0
class rainbow.web.Hole extends gdp.core.base.BaseMovieClip
{
var _name, _visible;
function Hole () {
super();
cleanUp();
}
function setBead(bead, bNotUpdateLinks, bSaveDroppedBead) {
this.bead = bead;
if (!bSaveDroppedBead) {
beadDropped = null;
}
if (bNotUpdateLinks) {
return(undefined);
}
var _local4 = getLinksCircle();
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local3.update();
_local2++;
}
}
function getBead(Void) {
return(bead);
}
function hasBead(Void) {
return((bead != null) && (bead._name != null));
}
function setDroppedBead(beadDropped) {
this.beadDropped = beadDropped;
}
function getDroppedBead(Void) {
return(beadDropped);
}
function hasDroppedBead(Void) {
return(beadDropped != null);
}
function isFree(Void) {
return(((!hasDroppedBead()) && (!hasBead())) && (!isDisabled()));
}
function cleanUp(Void) {
aSibilingsHoles = new Array();
aLinks = new Array();
nLine = Number(_name.substr(5, 1));
nCircle = Number(_name.substr(4, 1));
}
function getId(Void) {
return((nCircle + "") + nLine);
}
function getLineNumber(Void) {
return(nLine);
}
function getCircleNumber(Void) {
return(nCircle);
}
function getDownHole(Void) {
var _local2 = rainbow.managers.WebManager.getInstance().getHole(nCircle + 1, nLine);
if (gdp.utils.ArrayUtil.find(aSibilingsHoles, _local2) == -1) {
return(null);
}
return(_local2);
}
function getUpHole(Void) {
if ((nCircle == 1) && (nLine == 0)) {
return(null);
}
var _local2 = rainbow.managers.WebManager.getInstance().getHole(nCircle - 1, nLine);
if (gdp.utils.ArrayUtil.find(aSibilingsHoles, _local2) == -1) {
return(null);
}
return(_local2);
}
function getLeftHole(Void) {
if (nLine == (rainbow.web.Web.nLines - 1)) {
return(rainbow.managers.WebManager.getInstance().getHole(nCircle, 0));
}
var _local2 = rainbow.managers.WebManager.getInstance().getHole(nCircle, nLine + 1);
if (gdp.utils.ArrayUtil.find(aSibilingsHoles, _local2) == -1) {
return(null);
}
return(_local2);
}
function getRightHole(Void) {
if (nLine == 0) {
return(rainbow.managers.WebManager.getInstance().getHole(nCircle, rainbow.web.Web.nLines - 1));
}
var _local2 = rainbow.managers.WebManager.getInstance().getHole(nCircle, nLine - 1);
if (gdp.utils.ArrayUtil.find(aSibilingsHoles, _local2) == -1) {
return(null);
}
return(_local2);
}
function getSibilingsHoles(Void) {
return(aSibilingsHoles);
}
function getSibilingsHolesOnLine(Void) {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < aSibilingsHoles.length) {
if (aSibilingsHoles[_local2].getLineNumber() == getLineNumber()) {
_local3.push(aSibilingsHoles[_local2]);
}
_local2++;
}
return(_local3);
}
function getSibilingsHolesOnCircle(Void) {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < aSibilingsHoles.length) {
if (aSibilingsHoles[_local2].getCircleNumber() == getCircleNumber()) {
_local3.push(aSibilingsHoles[_local2]);
}
_local2++;
}
return(_local3);
}
function setSibilingsHoles(aHoles) {
aSibilingsHoles = aHoles;
}
function addSibilingHole(hole) {
if (gdp.utils.ArrayUtil.contains(aSibilingsHoles, hole)) {
return(undefined);
}
aSibilingsHoles.push(hole);
}
function removeSibilingHole(hole) {
aSibilingsHoles.splice(gdp.utils.ArrayUtil.find(aSibilingsHoles, hole), 1);
}
function getLinks(Void) {
return(aLinks);
}
function getLinksCircle(Void) {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < aLinks.length) {
if (aLinks[_local2].isCircle()) {
_local3.push(aLinks[_local2]);
}
_local2++;
}
return(_local3);
}
function getLinksLine(Void) {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < aLinks.length) {
if (aLinks[_local2].isLine()) {
_local3.push(aLinks[_local2]);
}
_local2++;
}
return(_local3);
}
function setLinks(aLinks) {
this.aLinks = aLinks;
}
function addLink(link) {
if (gdp.utils.ArrayUtil.contains(aLinks, link)) {
return(undefined);
}
aLinks.push(link);
link.enable();
}
function removeLink(link) {
aLinks.splice(gdp.utils.ArrayUtil.find(aLinks, link), 1);
}
function disable(Void) {
bDisable = true;
_visible = false;
var _local2 = 0;
while (_local2 < aSibilingsHoles.length) {
rainbow.web.Hole(aSibilingsHoles[_local2]).removeSibilingHole(this);
_local2++;
}
aSibilingsHoles = new Array();
aLinks = new Array();
}
function enable(Void) {
bDisable = false;
_visible = true;
}
function isDisabled(Void) {
return(bDisable);
}
function description(Void) {
var _local2 = {nCircle:nCircle, line:nLine, isDisabel:bDisable};
return("Hole " + gdp.utils.ObjectUtil.classToString(_local2, true));
}
var aSibilingsHoles = null;
var aLinks = null;
var nLine = null;
var nCircle = null;
var bead = null;
var beadDropped = null;
var bDisable = false;
}
Symbol 347 MovieClip [__Packages.rainbow.web.Bead] Frame 0
class rainbow.web.Bead extends gdp.core.base.BaseMovieClip
{
var useHandCursor, tfName, attachMovie, getNextHighestDepth, tfLetter, _x, _y, _visible, _alpha, removeMovieClip, _name;
function Bead () {
super();
beadsManager = rainbow.managers.BeadsManager.getInstance();
useHandCursor = false;
tfName._visible = false;
}
function draw(Void) {
mcItem.removeMovieClip();
mcItemBlick.removeMovieClip();
bmpTfLetter.removeMovieClip();
mcItem = attachMovie("item" + nBallColor, "mcItem", getNextHighestDepth(), {_x:-20, _y:-20});
if (sLetter == null) {
tfLetter._visible = false;
} else {
tfLetter.text = sLetter.toUpperCase();
bmpTfLetter = rainbow.helpers.BitmapTextField.createFromTextField(tfLetter, rainbow.managers.FontManager.getInstance().getFont("font_ball"));
bmpTfLetter._x = (-bmpTfLetter.getWidth()) / 2;
bmpTfLetter._y = ((-bmpTfLetter.getHeight()) / 2) - 3;
}
mcItemBlick = attachMovie("itemBlick", "mcItemBlick", getNextHighestDepth(), {_visible:0, _x:-20, _y:-20});
mcItemBlick.stop();
}
function setBallColor(nBallColor) {
this.nBallColor = nBallColor;
}
function getBallColor(Void) {
return(nBallColor);
}
function setLetter(sLetter) {
this.sLetter = sLetter;
}
function getLetter(Void) {
return(sLetter);
}
function hasLetter(Void) {
return(sLetter != null);
}
function setHole(hole, bNotUpdateLinks) {
this.hole = hole;
_x = hole._x;
_y = hole._y;
hole.setBead(this, bNotUpdateLinks);
}
function getHole(Void) {
return(hole);
}
function moveToHole(holeEnd) {
trace(("rainbow.web.Bead.moveToHole(" + [arguments]) + ")");
beadsManager.moveBeadToHole(this, holeEnd);
}
function getDownBead(Void) {
return(getHole().getDownHole().getBead());
}
function getUpBead(Void) {
return(getHole().getUpHole().getBead());
}
function getLeftBead(Void) {
return(getHole().getLeftHole().getBead());
}
function getRightBead(Void) {
return(getHole().getRightHole().getBead());
}
function getSibilingsBeads(Void) {
var _local4 = new Array();
var _local3 = hole.getSibilingsHoles();
var _local2 = 0;
while (_local2 < _local3.length) {
_local4.push(rainbow.web.Hole(_local3[_local2]).getBead());
_local2++;
}
return(_local4);
}
function getSibilingsBeadsOnLine(Void) {
var _local4 = new Array();
var _local3 = hole.getSibilingsHolesOnLine();
var _local2 = 0;
while (_local2 < _local3.length) {
_local4.push(_local3[_local2].getBead());
_local2++;
}
return(_local4);
}
function getSibilingsBeadsOnCircle(Void) {
var _local4 = new Array();
var _local3 = hole.getSibilingsHolesOnCircle();
var _local2 = 0;
while (_local2 < _local3.length) {
_local4.push(_local3[_local2].getBead());
_local2++;
}
return(_local4);
}
function select(Void) {
rainbow.core.Sound.getInstance().play("glare");
mcItemBlick.gotoAndPlay(1);
mcItemBlick._visible = true;
}
function unselect(Void) {
mcItemBlick.stop();
mcItemBlick._visible = false;
}
function show(Void) {
_visible = true;
}
function hide(Void) {
_visible = false;
}
function equal(bead) {
if ((bead.getBallColor() == getBallColor()) && (bead.getBallColor() != null)) {
return(true);
}
return(false);
}
function remove(Void) {
bRemoved = true;
hole.setBead(null);
var _local2 = new gdp.effects.fade.FadeOut(this, _alpha, 0, 10);
_local2.onEnd = gdp.utils.Delegate.create(this, onFadeOutEnd);
_local2.run();
}
function isRemoved(Void) {
return(bRemoved);
}
function onFadeOutEnd(Void) {
removeMovieClip();
}
function onRelease(Void) {
if (beadsManager.getSelectedBead() == this) {
beadsManager.unselectBead();
} else {
beadsManager.selectBead(this);
}
}
function description() {
var _local2 = {name:_name, color:nBallColor, letter:sLetter, line:getHole().getLineNumber(), cirlce:getHole().getCircleNumber()};
return("Bead " + gdp.utils.ObjectUtil.classToString(_local2, true));
}
static var RED_COLOR = 0;
static var ORANGE_COLOR = 1;
static var YELLOW_COLOR = 2;
static var GREEN_COLOR = 3;
static var LIGHTBLUE_COLOR = 4;
static var DARKBLUE_COLOR = 5;
static var PURPLE_COLOR = 6;
var beadsManager = null;
var mcItem = null;
var mcItemBlick = null;
var bmpTfLetter = null;
var hole = null;
var nBallColor = null;
var sLetter = null;
var bRemoved = false;
var onMoveEnd = null;
}
Symbol 348 MovieClip [__Packages.rainbow.managers.BeadsManager] Frame 0
class rainbow.managers.BeadsManager extends gdp.core.base.BaseClass
{
static var instance;
var aCombosHoles, aLettersHoles, aExplosionsHoles, nExplosions, nCombos;
function BeadsManager () {
super();
eventManager = new gdp.env.events.EventManager(this);
webManager = rainbow.managers.WebManager.getInstance();
aCombosHoles = new Array();
aLettersHoles = new Array();
aBeadsForCheck = new Array();
aExplosionsHoles = new Array();
nBeadsForCheck = 0;
nExplosions = 0;
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.managers.BeadsManager();
}
return(instance);
}
function ps_timer(Void) {
showAnyHint();
}
function checkEqualBeads(beadA, beadB, bNotSwap, bNotDrop) {
trace(("rainbow.managers.BeadsManager.checkEqualBeads(" + [arguments]) + ")");
var _local10 = beadA.getHole();
var _local9 = beadB.getHole();
var _local4 = removeEqualBeads(beadA);
var _local3 = removeEqualBeads(beadB);
showLetter();
showExplosions();
if ((_local3 != null) && ((_local4.length > 3) || (_local3.length > 3))) {
showComboSize();
}
if ((_local4.length > 0) || (_local3.length > 0)) {
var _local6 = gdp.utils.ArrayUtil.removeDuplicate(gdp.utils.ArrayUtil.merge(_local4, _local3));
rainbow.core.Sound.getInstance().play("complete");
if (!bNotDrop) {
var _local5 = new rainbow.web.BeadDropper(_local6);
_local5.onComplete = gdp.utils.Delegate.create(this, addBeadsToCheckList);
_local5.run();
}
return(_local6);
}
if (!bNotSwap) {
swapBeads(beadA, beadB, true);
return([]);
}
return(null);
}
function addBeadsToCheckList(aBeads) {
trace(("rainbow.managers.BeadsManager.addBeadsToCheckList(" + [nBeadsForCheck]) + ")");
aBeadsForCheck.push(aBeads);
nBeadsForCheck = 0;
if (nBeadsForCheck == 0) {
var _local5 = aBeadsForCheck.concat();
aBeadsForCheck = new Array();
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = checkEqualBeadsByArray(_local5[_local2]);
if (_local3.length > 0) {
_local4 = _local4.concat(_local3);
}
_local2++;
}
if (_local4.length > 0) {
showCombo(_local4);
var _local6 = new rainbow.web.BeadDropper(_local4);
_local6.onComplete = gdp.utils.Delegate.create(this, addBeadsToCheckList);
_local6.run();
}
}
}
function checkEqualBeadsByArray(aBeads) {
var _local6 = true;
var _local4 = new Array();
var _local2 = 0;
while (_local2 < aBeads.length) {
var _local3 = checkEqualBeads(aBeads[_local2], null, true, true);
if (_local3.length > 0) {
_local6 = false;
_local4 = _local4.concat(_local3);
}
_local2++;
}
showExplosions();
showComboSize();
if (_local6) {
onCheckEqualBeadsComplete();
}
return(_local4);
}
function removeEqualBeads(bead) {
if (bead == null) {
return([]);
}
var _local3 = findBeadsArrayOnLine(bead);
var _local4 = findBeadsArrayOnCircle(bead);
var _local2 = new Array();
if (_local3.length > 2) {
_local2 = _local2.concat(removeBeads(_local3));
}
if (_local4.length > 2) {
_local2 = _local2.concat(removeBeads(_local4));
}
if (_local2.length > 0) {
aCombosHoles.push(_local2);
addExplosion(_local2);
}
return(_local2);
}
function removeBeads(aBeads) {
trace(("rainbow.managers.BeadsManager.removeBeads(" + [arguments]) + ")");
var _local7 = 0;
var _local8 = 0;
var _local6 = new Array();
var _local4 = 0;
while (_local4 < aBeads.length) {
var _local3 = aBeads[_local4];
_local6.push(_local3.getHole());
if (_local3.hasLetter() && (!_local3.isRemoved())) {
_local8++;
aLettersHoles.push(_local3.getHole());
webManager.flyLetter(_local3, _local3.getLetter());
}
_local7++;
_local3.remove();
_local4++;
}
if (_local7 != 0) {
bBeadsRemoved = true;
var _local9 = ((_local7 - 2) * rainbow.managers.PlayerManager.SCORE_FOR_BEADS) + (_local8 * rainbow.managers.PlayerManager.SCORE_FOR_LETTER);
webManager.flyScore(_local6, _local9);
rainbow.managers.PlayerManager.getInstance().addLevelScore(_local9);
rainbow.managers.PlayerManager.getInstance().setLetterCount(rainbow.managers.PlayerManager.getInstance().getLetterCount() - _local8);
}
return(_local6);
}
function findBeadsArrayOnLine(bead, aBeads) {
aBeads = ((aBeads == undefined) ? (new Array(bead)) : (aBeads));
var _local5 = bead.getSibilingsBeadsOnLine();
var _local3 = 0;
while (_local3 < _local5.length) {
var _local2 = _local5[_local3];
if (_local2.equal(bead) && (!gdp.utils.ArrayUtil.contains(aBeads, _local2))) {
aBeads.push(_local2);
aBeads = findBeadsArrayOnLine(_local2, aBeads);
}
_local3++;
}
aBeads.sort(sortBeads);
return(aBeads);
}
function findBeadsArrayOnCircle(bead, aBeads) {
aBeads = ((aBeads == undefined) ? (new Array(bead)) : (aBeads));
var _local6 = bead.getHole();
var _local8 = bead.getSibilingsBeadsOnCircle();
var _local4 = 0;
while (_local4 < _local8.length) {
var _local2 = _local8[_local4];
var _local3 = _local2.getHole();
if (_local2.equal(bead) && (!gdp.utils.ArrayUtil.contains(aBeads, _local2))) {
var _local7 = ((Math.abs(_local3.getLineNumber() - _local6.getLineNumber()) == 1) || ((_local3.getLineNumber() == 7) && (_local6.getLineNumber() == 0))) || ((_local3.getLineNumber() == 0) && (_local6.getLineNumber() == 7));
if (((_local3.getCircleNumber() == 1) && (_local6.getCircleNumber() == 1)) && (!_local7)) {
} else {
aBeads.push(_local2);
aBeads = findBeadsArrayOnCircle(_local2, aBeads);
}
}
_local4++;
}
aBeads.sort(sortBeads);
return(aBeads);
}
function findAnyHint(Void) {
var _local4 = getBeads();
_local4.sort(Array.UNIQUESORT);
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = findHint(_local4[_local2]);
if (_local3 != null) {
return(_local3);
}
_local2++;
}
}
function findHint(bead) {
trace(("rainbow.managers.BeadsManager.findHint(" + [arguments]) + ")");
var _local3 = findHintDouble(bead);
if (_local3 != null) {
return(_local3);
}
var _local4 = findHintBetween(bead);
if (_local4 != null) {
return(_local4);
}
}
function findHintDouble(bead) {
trace(("rainbow.managers.BeadsManager.findHintTypeA(" + [arguments]) + ")");
var _local14 = findBeadsArrayOnLine(bead);
var _local12 = findBeadsArrayOnCircle(bead);
var _local22 = new Array();
trace("Equals on circle = " + _local12.length);
if (_local14.length == 2) {
trace("Finding on line...");
var _local13 = _local14[0];
var _local3 = _local13.getUpBead();
var _local19 = _local3.getSibilingsBeads();
var _local5 = findEqualBeadsOnArray(_local13, _local19);
trace(("Up... (" + _local13.toString()) + ")");
trace(("VeryUp... (" + _local3.toString()) + ")");
if (((_local5.length > 0) && (!gdp.utils.ArrayUtil.contains(_local5, bead))) && (!_local3.equal(_local5[0]))) {
return([_local3, _local5[0]]);
}
var _local15 = _local14[1];
var _local9 = _local15.getDownBead();
var _local20 = _local9.getSibilingsBeads();
var _local10 = findEqualBeadsOnArray(_local15, _local20);
trace(("Down... (" + _local15.toString()) + ")");
trace(("VeryDown... (" + _local9.toString()) + ")");
if (((_local10.length > 0) && (!gdp.utils.ArrayUtil.contains(_local10, bead))) && (!_local9.equal(_local10[0]))) {
return([_local9, _local10[0]]);
}
}
if (_local12.length == 2) {
trace("Finding on circle...");
var _local17 = _local12[0];
var _local6 = _local17.getRightBead();
var _local21 = _local6.getSibilingsBeads();
var _local7 = findEqualBeadsOnArray(_local17, _local21);
trace(("Right... (" + _local17.toString()) + ")");
trace(("VeryRight... (" + _local6.toString()) + ")");
if (((_local7.length > 0) && (!gdp.utils.ArrayUtil.contains(_local7, bead))) && (!_local6.equal(_local7[0]))) {
return([_local6, _local7[0]]);
}
var _local16 = _local12[1];
var _local8 = _local16.getLeftBead();
var _local18 = _local8.getSibilingsBeads();
var _local4 = findEqualBeadsOnArray(_local16, _local18);
trace(("Left... (" + _local16.toString()) + ")");
trace(("VeryLeft... (" + _local8.toString()) + ")");
if (((_local4.length > 0) && (!gdp.utils.ArrayUtil.contains(_local4, bead))) && (!_local8.equal(_local4[0]))) {
return([_local8, _local4[0]]);
}
}
}
function findHintBetween(bead) {
trace(("rainbow.managers.BeadsManager.findHintBetween(" + [arguments]) + ")");
var _local4 = bead.getUpBead().getLeftBead();
var _local6 = bead.getUpBead().getRightBead();
var _local5 = bead.getDownBead().getLeftBead();
var _local3 = bead.getDownBead().getRightBead();
if (_local4.equal(bead) && (_local6.equal(bead))) {
return([bead, bead.getUpBead()]);
}
if (_local6.equal(bead) && (_local3.equal(bead))) {
return([bead, bead.getRightBead()]);
}
if (_local3.equal(bead) && (_local5.equal(bead))) {
return([bead, bead.getDownBead()]);
}
if (_local5.equal(bead) && (_local4.equal(bead))) {
return([bead, bead.getLeftBead()]);
}
}
function findEqualBeadsOnArray(bead, aBeads) {
var _local5 = new Array();
var _local2 = 0;
while (_local2 < aBeads.length) {
if (aBeads[_local2].equal(bead) && (aBeads[_local2] != bead)) {
_local5.push(aBeads[_local2]);
}
_local2++;
}
_local5.sort(sortBeads);
return(_local5);
}
function sortBeads(beadA, beadB) {
var _local1 = beadA.getHole().getLineNumber();
var _local2 = beadA.getHole().getCircleNumber();
var _local6 = beadB.getHole().getLineNumber();
var _local3 = beadB.getHole().getCircleNumber();
var _local5 = _local1 > _local6;
var _local4 = _local2 > _local3;
if (_local4) {
return(1);
}
if (_local5) {
return(1);
}
return(-1);
}
function selectBead(bead) {
rainbow.web.Web.getInstance().nLastTimeClick = gdp.core.time.FrameTimer.getInstance().getTime();
if (bead == beadSeletion) {
unselectBead();
return(undefined);
}
if (gdp.utils.ArrayUtil.contains(beadSeletion.getHole().getSibilingsHoles(), bead.getHole())) {
bBeadsRemoved = false;
resetCombos();
swapBeads(beadSeletion, bead);
rainbow.web.Web.getInstance().disableClick();
unselectBead();
} else {
beadSeletion.unselect();
beadSeletion = bead;
beadSeletion.select();
}
}
function unselectBead(Void) {
beadSeletion.unselect();
beadSeletion = null;
}
function getSelectedBead(Void) {
return(beadSeletion);
}
function swapBeads(beadA, beadB, bNotCheck, bHint) {
trace(("rainbow.managers.BeadsManager.swapBeads(" + [arguments]) + ")");
rainbow.core.Sound.getInstance().play("swap" + (random(3) + 1));
var _local5 = beadA.getHole();
var _local4 = beadB.getHole();
var _local3 = new gdp.utils.Executor(true);
_local3.addTask(gdp.utils.Delegate.create(this, moveBeadToHoleWithStart), [beadA, _local5, _local4], true, "onMoveEnd", [beadA]);
_local3.addTask(gdp.utils.Delegate.create(this, moveBeadToHoleWithStart), [beadB, _local4, _local5], true, "onMoveEnd", [beadB]);
_local3.onComplete = gdp.utils.Delegate.create(this, swapEnd, [beadA, beadB, bNotCheck, bHint]);
_local3.start();
}
function swapEnd(beadA, beadB, bNotCheck, bHint) {
var _local2;
if (!bNotCheck) {
_local2 = checkEqualBeads(beadA, beadB) == null;
}
if (bHint) {
swapBeads(beadA, beadB, true);
} else if (_local2 || (bNotCheck)) {
onCheckEqualBeadsComplete();
}
}
function onCheckEqualBeadsComplete(Void) {
if (bBeadsRemoved) {
nStepNumber++;
}
rainbow.web.Web.getInstance().enableClick();
rainbow.core.Game.getInstance().checkWinLose();
if (nStepNumber == 1) {
webManager.showHintB();
} else if (getBeadsLetter().length == 1) {
webManager.showHintC();
}
}
function moveBeadToHole(bead, holeEnd, nDelay) {
moveBeadToHoleWithStart(bead, bead.getHole(), holeEnd, nDelay);
}
function moveBeadToHoleWithStart(bead, holeStart, holeEnd, nDelay) {
holeStart.setBead(null, false, true);
holeEnd.setBead(null);
holeEnd.setDroppedBead(bead);
bead.enabled = false;
var _local5 = new gdp.effects.tween.Tween(bead, new gdp.math.helpers.Point(holeStart._x, holeStart._y), new gdp.math.helpers.Point(holeEnd._x, holeEnd._y), 5);
var _local2 = new gdp.utils.Executor();
if (nDelay != null) {
_local2.addDelay(nDelay);
}
_local2.addTask(gdp.utils.Delegate.create(bead, bead.show));
_local2.addTask(gdp.utils.Delegate.create(_local5, _local5.run), [], true, "onEnd");
_local2.addTask(gdp.utils.Delegate.create(this, onEndMoveBead, [bead, holeStart, holeEnd]));
_local2.start();
}
function onEndMoveBead(bead, holeStart, holeEnd) {
bead.setHole(holeEnd);
bead.enabled = true;
bead.onMoveEnd(bead);
eventManager.dispatch("onMoveEnd", bead);
}
function getBeadsOnLine(nLine) {
var _local4 = new Array();
var _local3 = webManager.getHolesByLine(nLine);
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2].hasBead()) {
_local4.push(_local3[_local2].getBead());
}
_local2++;
}
return(_local4);
}
function getBeads(Void) {
var _local4 = new Array();
var _local3 = webManager.getHoles();
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2].hasBead()) {
_local4.push(_local3[_local2].getBead());
}
_local2++;
}
return(_local4);
}
function getBeadsLetter(Void) {
var _local4 = new Array();
var _local3 = webManager.getHoles();
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2].hasBead() && (_local3[_local2].getBead().hasLetter())) {
_local4.push(_local3[_local2].getBead());
}
_local2++;
}
return(_local4);
}
function showAll(Void) {
var _local3 = getBeads();
var _local2 = 0;
while (_local2 < _local3.length) {
_local3[_local2]._visible = true;
_local2++;
}
}
function hideAll(Void) {
var _local3 = getBeads();
var _local2 = 0;
while (_local2 < _local3.length) {
_local3[_local2]._visible = false;
_local2++;
}
}
function removeAllBeads(Void) {
var _local3 = getBeads();
var _local2 = 0;
while (_local2 < _local3.length) {
_local3[_local2].removeMovieClip();
_local2++;
}
}
function resetCombos(Void) {
nCombos = 1;
}
function showCombo(aFreeHoles) {
nCombos++;
if (nCombos > 1) {
webManager.flyCombo(aFreeHoles, "Combo x" + nCombos, 6737151, "comboX", 0);
}
}
function showComboSize(Void) {
if (aCombosHoles.length == 0) {
return(undefined);
}
var _local3 = 0;
var _local4;
var _local2 = 0;
while (_local2 < aCombosHoles.length) {
if (aCombosHoles[_local2].length > _local3) {
_local3 = aCombosHoles[_local2].length;
_local4 = aCombosHoles[_local2];
}
_local2++;
}
if (_local3 > 3) {
var _local5 = aCombosSizesName[((_local3 < 6) ? (_local3 - 4) : 1)];
webManager.flyCombo(_local4, _local5, 6750207, "comboSize", 30);
}
aCombosHoles = new Array();
}
function showLetter(aHoles) {
if (aLettersHoles.length > 1) {
webManager.flyCombo(aLettersHoles, "Letters x" + aLettersHoles.length, 16737996, "comboLetter", 60);
}
aLettersHoles = new Array();
}
function addExplosion(aFreeHoles) {
nExplosions++;
var _local2 = 0;
while (_local2 < aFreeHoles.length) {
if (aFreeHoles[_local2] != null) {
aExplosionsHoles.push(aFreeHoles[_local2]);
}
_local2++;
}
aExplosionsHoles = gdp.utils.ArrayUtil.removeDuplicate(aExplosionsHoles);
}
function showExplosions(Void) {
nExplosions = ((nExplosions > 6) ? 6 : (nExplosions));
if (nExplosions > 1) {
webManager.flyCombo(aExplosionsHoles, aExplosionsName[nExplosions - 2], gdp.draw.DrawColor.yellow.valueOf(), "comboExp", -30);
}
aExplosionsHoles = new Array();
nExplosions = 0;
}
function showAnyHint(Void) {
if (!rainbow.web.Web.getInstance().clickIsEnabled()) {
return(undefined);
}
rainbow.web.Web.getInstance().disableClick();
var _local4 = getBeads();
_local4.sort(Array.UNIQUESORT);
var _local3 = 0;
while (_local3 < _local4.length) {
var _local2 = findHint(_local4[_local3]);
if (_local2 != null) {
swapBeads(_local2[0], _local2[1], true, true);
break;
}
_local3++;
}
}
var eventManager = null;
var webManager = null;
var beadSeletion = null;
var bBotRun = false;
var nBeadsForCheck = null;
var aBeadsForCheck = null;
var aCombosSizesName = ["PERFECT", "GRAND"];
var aExplosionsName = ["Double", "Triple", "Quintuple", "Sextuple", "Multiple"];
var bBeadsRemoved = false;
var nStepNumber = 0;
}
Symbol 349 MovieClip [__Packages.rainbow.managers.WebManager] Frame 0
class rainbow.managers.WebManager extends gdp.core.base.BaseClass
{
static var instance;
function WebManager () {
super();
web = rainbow.web.Web.getInstance();
aHintsShowed = [false, false, false, false];
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.managers.WebManager();
}
return(instance);
}
function getZeroHole(Void) {
return(getHole(0, 0));
}
function getHole(nCircle, nLine) {
return(getHoleById((String(nCircle) + "") + String(((nLine == 8) ? 0 : (nLine)))));
}
function getHoleById(sId) {
return(web.getElements()["hole" + sId]);
}
function getHoleByName(sName) {
return(web.getElements()[sName]);
}
function getHoles(Void) {
var _local3 = web.getHoles();
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (!_local3[_local2].isDisabled()) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getHolesByLine(nLine) {
var _local3 = getHoles();
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2].getLineNumber() == nLine) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getHolesByCircle(nCircle) {
var _local3 = getHoles();
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (_local3[_local2].getCircleNumber() == nCircle) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getFreeHoles(Void) {
var _local3 = getHoles();
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (!_local3[_local2].isFree()) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getFreeHolesByLine(nLine) {
var _local3 = getHolesByLine(nLine);
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (!_local3[_local2].isFree()) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getFreeHolesByCircle(nCircle) {
var _local3 = getHolesByCircle(nCircle);
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
if (!_local3[_local2].isFree()) {
_local4.push(_local3[_local2]);
}
_local2++;
}
return(_local4);
}
function getLinkByHoles(holeA, holeB) {
return(getLinkByName((("link" + holeA.getId()) + "_") + holeB.getId()));
}
function getLinkByName(sName) {
return(web.getElements()[sName]);
}
function flyLetter(bead, sLetter) {
rainbow.core.Sound.getInstance().play("digit-fly");
var _local10 = bead.getHole();
var _local9 = web.attachMovie("letter", "letter_" + random(1000000), web.getNextHighestDepth());
_local9.tfLetter.text = sLetter.toUpperCase();
rainbow.helpers.BitmapTextField.createFromTextField(_local9.tfLetter, rainbow.managers.FontManager.getInstance().getFont("font_ball"));
var _local7;
var _local4;
var _local3 = web.getBitmapTextFieldNormal().getSymbols();
var _local2 = 0;
while (_local2 < _local3.length) {
if ((!_local3[_local2]._visible) && (_local3[_local2].getScanCode() == sLetter.charCodeAt(0))) {
_local4 = _local3[_local2];
_local7 = {x:_local4._x, y:_local4._y};
break;
}
_local2++;
}
web.getBitmapTextFieldNormal().localToGlobal(_local7);
var _local13 = new gdp.math.helpers.Point(_local10._x + web.getElements()._x, _local10._y + web.getElements()._y);
var _local12 = new gdp.math.helpers.Point(_local7.x, _local7.y);
var _local11 = new gdp.effects.tween.Tween(_local9, _local13, _local12, 10);
_local11.onEnd = gdp.utils.Delegate.create(this, onEndFlyLetter, [_local9, sLetter]);
_local11.run();
}
function onEndFlyLetter(mcLetter, sLetter) {
rainbow.core.Sound.getInstance().play("digit");
mcLetter.removeMovieClip();
web.getBitmapTextFieldUncover().hideSymbols(sLetter);
web.getBitmapTextFieldNormal().showSymbol(sLetter);
}
function flyScore(aHoles, nScore) {
trace(("rainbow.managers.WebManager.flyScore(" + [arguments]) + ")");
var _local7 = 0;
var _local6 = 0;
var _local3 = 0;
while (_local3 < aHoles.length) {
var _local4 = aHoles[_local3];
_local7 = _local7 + _local4._x;
_local6 = _local6 + _local4._y;
_local3++;
}
_local7 = _local7 / aHoles.length;
_local6 = _local6 / aHoles.length;
var _local8 = web.attachMovie("score", "score_" + random(1000000), web.getNextHighestDepth());
_local8.score.tfScore.text = nScore;
var _local10 = rainbow.helpers.BitmapTextField.createFromTextField(_local8.score.tfScore, rainbow.managers.FontManager.getInstance().getFont("font_ball"));
var _local9 = new gdp.math.helpers.Point((_local7 + web.getElements()._x) - (_local10.getWidth() / 2), (_local6 + web.getElements()._y) - (_local10.getHeight() / 2));
var _local13 = new gdp.math.helpers.Point(_local9.nX, _local9.nY - rainbow.managers.PlayerManager.SYMBOLS_SCORE_MAX_HEIGHT_FLY);
var _local11 = new gdp.effects.tween.Tween(_local8, _local9, _local13, rainbow.managers.PlayerManager.SYMBOLS_SCORE_SPEED);
_local11.onEnd = gdp.utils.Delegate.create(this, onEndFlyScore, [_local8]);
if (rainbow.managers.PlayerManager.SYMBOLS_SCORE_FADE) {
var _local12 = new gdp.effects.fade.FadeOut(_local8, 100, 0, 1);
_local12.run();
}
_local11.run();
}
function onEndFlyScore(mcScore) {
mcScore.removeMovieClip();
}
function flyCombo(aHoles, sString, nColor, sMcName, nAddY) {
var _local6 = 0;
var _local5 = 0;
var _local2 = 0;
while (_local2 < aHoles.length) {
var _local3 = aHoles[_local2];
_local6 = _local6 + _local3._x;
_local5 = _local5 + _local3._y;
_local2++;
}
_local6 = _local6 / aHoles.length;
_local5 = _local5 / aHoles.length;
if (nAddY != 0) {
_local5 = _local5 + nAddY;
}
trace([_local6, _local5]);
if (sMcName != null) {
web[sMcName].removeMovieClip();
}
var _local7 = web.attachMovie("combo", ((sMcName == null) ? ("combo" + random(1000000)) : (sMcName)), web.getNextHighestDepth());
_local7.combo.tfLabel.text = sString;
var _local12 = new Color(_local7);
_local12.setRGB(nColor);
var _local8 = new gdp.math.helpers.Point(_local6 + web.getElements()._x, _local5 + web.getElements()._y);
var _local13 = new gdp.math.helpers.Point(_local8.nX, _local8.nY - rainbow.managers.PlayerManager.SYMBOLS_COMBO_MAX_HEIGHT_FLY);
var _local9 = new gdp.effects.tween.Tween(_local7, _local8, _local13, rainbow.managers.PlayerManager.SYMBOLS_COMBO_SPEED);
_local9.onEnd = gdp.utils.Delegate.create(this, onEndFlyScore, [_local7]);
if (rainbow.managers.PlayerManager.SYMBOLS_COMBO_FADE) {
var _local11 = new gdp.effects.fade.FadeOut(_local7, 100, 0, 1);
_local11.run();
}
_local9.run();
}
function onEndFlyCombo(mcCombo) {
mcCombo.removeMovieClip();
}
function showHintA(Void) {
if (aHintsShowed[0] == true) {
return(undefined);
}
aHintsShowed[0] = true;
var _local3 = rainbow.managers.BeadsManager.getInstance().findAnyHint();
var _local2 = rainbow.panels.Hints.getInstance();
positioningHint(_local3);
_local2.disableGo();
_local2.show(1);
_local2.onStartRelease = gdp.utils.Delegate.create(this, onReleaseGo, [_local3]);
blinkBeads(_local3);
}
function showHintB(Void) {
if (aHintsShowed[1] == true) {
return(undefined);
}
aHintsShowed[1] = true;
var _local3 = rainbow.managers.BeadsManager.getInstance().getBeadsLetter();
var _local2 = rainbow.panels.Hints.getInstance();
positioningHint(_local3);
_local2.disableGo();
_local2.show(2);
_local2.onStartRelease = gdp.utils.Delegate.create(this, onReleaseGo, [_local3]);
blinkBeads(_local3);
}
function showHintC(Void) {
if (aHintsShowed[2] == true) {
return(undefined);
}
aHintsShowed[2] = true;
var _local3 = rainbow.managers.BeadsManager.getInstance().getBeadsLetter();
var _local2 = rainbow.panels.Hints.getInstance();
positioningHint(_local3);
_local2.disableGo();
_local2.show(3);
_local2.onStartRelease = gdp.utils.Delegate.create(this, onReleaseGo, [_local3]);
blinkBeads(_local3);
}
function showHintD(aLinks) {
if (aHintsShowed[3] == true) {
return(undefined);
}
aHintsShowed[3] = true;
var _local4 = new Array();
var _local2 = 0;
while (_local2 < aLinks.length) {
_local4.push(rainbow.web.Link(aLinks[_local2]).getHoleA().getBead());
_local4.push(rainbow.web.Link(aLinks[_local2]).getHoleB().getBead());
_local2++;
}
var _local5 = rainbow.panels.Hints.getInstance();
positioningHint(_local4);
_local5.disableGo();
_local5.show(4);
_local5.onStartRelease = gdp.utils.Delegate.create(this, onReleaseGo, [_local4]);
blinkBeads([]);
}
function blinkBeads(aBeads) {
var _local4 = rainbow.panels.Hints.getInstance();
var _local1 = 0;
while (_local1 < aBeads.length) {
aBeads[_local1].select();
_local1++;
}
var _local3 = new gdp.utils.Executor();
_local3.addDelay(1500);
_local3.onComplete = gdp.utils.Delegate.create(_local4, _local4.enableGo);
_local3.run();
}
function positioningHint(aBeads) {
var _local12 = 194;
var _local11 = 148;
var _local10 = new gdp.math.helpers.Rect(20, 20, 490, 370);
var _local5 = _local10.maxX();
var _local7 = _local10.minX();
var _local6 = _local10.maxY();
var _local8 = _local10.minY();
var _local3 = 0;
while (_local3 < aBeads.length) {
var _local2 = aBeads[_local3];
_local7 = Math.max(_local2.getHole()._x, _local7);
_local5 = Math.min(_local2.getHole()._x, _local5);
_local8 = Math.max(_local2.getHole()._y, _local8);
_local6 = Math.min(_local2.getHole()._y, _local6);
_local3++;
}
var _local4 = (new gdp.math.helpers.Rect(_local5, _local6, _local7 - _local5, _local8 - _local6)).localToGlobal(aBeads[0].getHole()._parent).globalToLocal(web);
var _local13;
if (_local10.containsRect(new gdp.math.helpers.Rect(_local4.minX(), _local4.minY() + _local11, _local12, _local11))) {
_local13 = new gdp.math.helpers.Point(_local4.minX(), _local4.minY() + _local11);
} else if (_local10.containsRect(new gdp.math.helpers.Rect(_local4.maxX(), _local4.minY(), _local12, _local11))) {
_local13 = new gdp.math.helpers.Point(_local4.maxX(), _local4.minY());
} else if (_local10.containsRect(new gdp.math.helpers.Rect(_local4.minX(), _local4.maxY(), _local12, _local11))) {
_local13 = new gdp.math.helpers.Point(_local4.minX(), _local4.maxY());
} else if (_local10.containsRect(new gdp.math.helpers.Rect(_local4.minX() - _local12, _local4.minY(), _local12, _local11))) {
_local13 = new gdp.math.helpers.Point(_local4.minX() - _local12, _local4.minY());
}
var _local14 = rainbow.panels.Hints.getInstance();
_local14._x = _local13.nX;
_local14._y = _local13.nY;
}
function onReleaseGo(aBeads) {
var _local1 = 0;
while (_local1 < aBeads.length) {
aBeads[_local1].unselect();
_local1++;
}
}
var web = null;
var aHintsShowed = null;
}
Symbol 350 MovieClip [__Packages.rainbow.web.Web] Frame 0
class rainbow.web.Web extends rainbow.ui.Panel
{
static var instance;
var _visible, attachMovie, getNextHighestDepth;
function Web () {
super();
instance = this;
var _local4 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_init));
gdp.core.process.ProcessManager.getInstance().addProcess(_local4);
eventManager = new gdp.env.events.EventManager(this);
webManager = rainbow.managers.WebManager.getInstance();
beadsManager = rainbow.managers.BeadsManager.getInstance();
playerManager = rainbow.managers.PlayerManager.getInstance();
var _local3 = new Object();
_local3.onChange = gdp.utils.Delegate.create(this, onScoreChange);
_local3.onComplete = gdp.utils.Delegate.create(this, onScoreChange);
counterScore = new rainbow.helpers.Counter(0, 0, 50);
counterScore.addListener(_local3);
_visible = false;
}
static function getInstance() {
return(instance);
}
function reset(Void) {
}
function ps_init(Void) {
createBitmapTextField();
createHints();
initHole();
initLinks();
initTimer();
initMenu();
eventManager.dispatch("onInit", this);
_visible = true;
mcMiniWindow._visible = false;
mcNextBtn._visible = false;
mcNextBtn.onRelease = gdp.utils.Delegate.create(this, onReleaseNext);
return(0);
}
function createBitmapTextField(Void) {
bmpTfPhraseUncover = rainbow.helpers.BitmapTextField.createFromTextField(tfPhrase, rainbow.managers.FontManager.getInstance().getFont("font_uncover"));
bmpTfPhraseNormal = rainbow.helpers.BitmapTextField.createFromTextField(tfPhrase, rainbow.managers.FontManager.getInstance().getFont("font_text"));
bmpTfPhraseUncover.setWidth(120);
bmpTfPhraseNormal.setWidth(120);
}
function createHints(Void) {
mcHints = rainbow.panels.Hints(rainbow.ui.Panel.create(this, "hints", {_visible:false}));
mcHints.hide();
}
function initHole(Void) {
trace(("rainbow.web.Web.initHole(" + [arguments]) + ")");
var _local5 = mcElements.hole00;
_local5.disable();
_local5._visible = true;
aHoles = new Array();
aHoles.push(_local5);
var _local4 = 1;
while (_local4 <= nCircles) {
var _local3 = 0;
while (_local3 < nLines) {
_local5 = mcElements[(("hole" + _local4) + "") + _local3];
aHoles.push(_local5);
_local3++;
}
_local4++;
}
}
function initLinks(Void) {
trace(("rainbow.web.Web.initLinks(" + [arguments]) + ")");
var _local7 = 0;
while (_local7 < aHoles.length) {
aHoles[_local7].cleanUp();
_local7++;
}
_local7 = 0;
while (_local7 < aLinks.length) {
var _local4 = aLinks[_local7];
var _local6 = webManager.getHole(_local4.getCircleHoleA(), _local4.getLineHoleA());
var _local5 = webManager.getHole(_local4.getCircleHoleB(), _local4.getLineHoleB());
var _local3 = webManager.getLinkByName(_local4.getLinkName());
_local6.addSibilingHole(_local5);
_local5.addSibilingHole(_local6);
_local6.addLink(_local3);
_local5.addLink(_local3);
_local3.setHoleA(_local6);
_local3.setHoleB(_local5);
_local3.enable();
_local7++;
}
}
function getElements(Void) {
return(mcElements);
}
function getLinks(Void) {
return(aLinks);
}
function getHoles(Void) {
return(aHoles);
}
function getBitmapTextFieldUncover(Void) {
return(bmpTfPhraseUncover);
}
function getBitmapTextFieldNormal(Void) {
return(bmpTfPhraseNormal);
}
function setLevel(level) {
trace(("rainbow.web.Web.setLevel(" + [arguments]) + ")");
if (level == null) {
return(undefined);
}
beadsManager.removeAllBeads();
initLinks();
initTextFields();
initLevel();
setTimer();
counterScore.setStart(Number(tfScore.text));
mcMenuBtn._visible = true;
mcNextBtn._visible = false;
mcScoreTimeBonus._visible = false;
mcElements._alpha = 100;
rainbow.core.Sound.getInstance().play("fill");
enableClick();
}
function initTextFields(Void) {
trace(("rainbow.web.Web.initTextFields(" + [arguments]) + ")");
var _local3 = rainbow.levels.LevelsManager.getInstance().getCurrentLevel();
sPhrase = gdp.utils.ArrayUtil.getRandElem(_local3.getPhrases());
tfPhrase.text = sPhrase;
aPhraseLetter = gdp.utils.StringUtil.replaceAll(sPhrase, " ", "").split("");
playerManager.setLetterCount(aPhraseLetter.length);
bmpTfPhraseNormal.setText(sPhrase);
bmpTfPhraseUncover.setText(sPhrase);
bmpTfPhraseNormal.hideAllSymbols();
tfLevel.text = _local3.getNumberString();
tfLives.text = playerManager.getLives().toString();
tfScore.text = String(playerManager.getLevelScore());
}
function initLevel(Void) {
trace(("rainbow.web.Web.initLevel(" + [arguments]) + ")");
var _local9 = rainbow.levels.LevelsManager.getInstance().getCurrentLevel();
aLinkDisabled = new Array();
var _local11 = new rainbow.web.BeadCreator();
_local11.onComplete = gdp.utils.Delegate.create(this, onBeadCreated);
var _local6 = 1;
while (_local6 < aHoles.length) {
var _local3 = aHoles[_local6];
_local3.enable();
_local6++;
}
var _local13 = _local9.getBrokenHolesDef();
_local6 = 0;
while (_local6 < _local13.length) {
var _local5 = _local13[_local6];
var _local3 = webManager.getHoleByName(_local5.getName());
_local3.disable();
_local6++;
}
var _local14 = _local9.getBrokenLinksDef();
_local6 = 0;
while (_local6 < _local14.length) {
var _local10 = _local14[_local6];
var _local4 = webManager.getLinkByName(_local10.getLinkName());
if (_local4 == null) {
} else {
if ((!_local4.getHoleA().isDisabled()) && (!_local4.getHoleB().isDisabled())) {
aLinkDisabled.push(_local4);
}
_local4.disable();
}
_local6++;
}
var _local15 = rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getBallColors();
var _local12 = _local9.getHolesDef();
_local6 = 0;
while (_local6 < _local12.length) {
var _local5 = _local12[_local6];
var _local3 = webManager.getHoleByName(_local5.getName());
var _local7 = null;
if ((_local5.getBallType() == LETTER_TYPE) || (((_local5.getBallType() == RANDOM_TYPE) && (random(2))) && (aPhraseLetter.length > 0))) {
_local7 = aPhraseLetter.splice(random(aPhraseLetter.length), 1)[0];
}
var _local8;
if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 7) {
_local8 = (((nCircles - _local3.getCircleNumber()) - 1) * 250) + (_local3.getLineNumber() * 500);
} else if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 8) {
_local8 = (((nCircles - _local3.getCircleNumber()) - 1) * 350) + (_local3.getLineNumber() * 80);
}
_local11.addBead(_local3, _local15[_local5.getBallColor()] | -1, _local7, _local8);
_local6++;
}
_local6 = 0;
while (_local6 < aHoles.length) {
var _local3 = aHoles[_local6];
if (_local3.hasBead() || (_local3.isDisabled())) {
} else {
var _local7 = null;
if (((_local9.getDefaultBallType() == LETTER_TYPE) || (_local9.getDefaultBallType() == RANDOM_TYPE)) && (aPhraseLetter.length > 0)) {
_local7 = aPhraseLetter.splice(random(aPhraseLetter.length), 1)[0];
}
if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 7) {
var _local8 = (((nCircles - _local3.getCircleNumber()) - 1) * 250) + (_local3.getLineNumber() * 500);
} else if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 8) {
var _local8 = (((nCircles - _local3.getCircleNumber()) - 1) * 350) + (_local3.getLineNumber() * 80);
}
_local11.addBead(_local3, _local9.getDefaultBallColor(), _local7, _local8);
}
_local6++;
}
_local11.run();
}
function onBeadCreated(Void) {
enableClick();
if (rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getNumber() == 1) {
webManager.showHintA();
return(undefined);
}
if (aLinkDisabled.length == 0) {
return(undefined);
}
if (rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getNumber() == 3) {
webManager.showHintD(aLinkDisabled);
}
var _local2 = 0;
while (_local2 < aLinkDisabled.length) {
var _local3 = new gdp.utils.Executor();
var _local5 = new gdp.effects.fade.Blink(aLinkDisabled[_local2], 100, 0, 10, 2);
var _local4 = new gdp.effects.fade.FadeOut(aLinkDisabled[_local2], 100, 0, 3);
_local3.addTask(gdp.utils.Delegate.create(_local5, _local5.run), [], true, "onEnd");
_local3.addTask(gdp.utils.Delegate.create(_local4, _local4.run), [], true, "onEnd");
_local3.onComplete = gdp.utils.Delegate.create(this, onHideLink, [aLinkDisabled[_local2]]);
_local3.start();
_local2++;
}
}
function onHideLink(link) {
link._visible = false;
link._alpha = 100;
}
function setScore(nScore) {
counterScore.setEnd(nScore);
counterScore.run();
}
function onScoreChange(nScore) {
trace(("rainbow.web.Web.onScoreChange(" + [arguments]) + ")");
tfScore.text = nScore.toString();
}
function initTimer() {
trace(("rainbow.web.Web.initTimer(" + [arguments]) + ")");
mcProgressBar = mcTimer.mcProgressBar;
timer = playerManager.getTimer();
timer.reset();
var _local3 = new Object();
_local3.onChange = gdp.utils.Delegate.create(this, onTimerChange);
_local3.onComplete = gdp.utils.Delegate.create(this, onTimerComplete);
timer.addListener(_local3);
}
function resetTimer(Void) {
timer.reset();
timer.stop();
mcProgressBar.gotoAndStop(100);
}
function setTimer(Void) {
trace(("rainbow.web.Web.setTimer(" + [timer]) + ")");
timer.reset();
timer.setDelay(rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getTime() * 1000);
timer.run();
}
function onTimerChange(nPercent) {
if ((nLastTimeClick != null) && ((nLastTimeClick + (rainbow.managers.PlayerManager.TIME4HINT * 1000)) < gdp.core.time.FrameTimer.getInstance().getTime())) {
nLastTimeClick = gdp.core.time.FrameTimer.getInstance().getTime();
beadsManager.showAnyHint();
}
mcProgressBar.gotoAndStop(int(nPercent));
}
function onTimerComplete(Void) {
trace(("rainbow.web.Web.onTimerComplete(" + [arguments]) + ")");
rainbow.core.Game.getInstance().checkWinLose();
}
function initMenu(Void) {
mcMenuBtn.onRelease = gdp.utils.Delegate.create(this, onReleaseMenuBtn);
mcMenu._visible = false;
mcMenu.btnReturnToGame.onRelease = gdp.utils.Delegate.create(this, onReleaseReturnToGame);
mcMenu.btnStartNew.onRelease = gdp.utils.Delegate.create(this, onReleaseStartNew);
mcMenu.btnDownload.onRelease = gdp.utils.Delegate.create(this, onReleseDownload);
mcMenu.btnSoundOnOff.onRelease = gdp.utils.Delegate.create(this, onReleaseSoundOnOff);
}
function onReleaseMenuBtn(Void) {
showMenu();
}
function onReleaseReturnToGame() {
hideMenu();
}
function onReleaseStartNew(Void) {
onReleaseReturnToGame();
rainbow.core.Game.getInstance().restartGame();
}
function onReleseDownload(Void) {
onReleaseReturnToGame();
rainbow.core.Game.getInstance().openDownloadURL();
}
function onReleaseSoundOnOff(Void) {
var _local2 = rainbow.core.Sound.getInstance();
_local2.setMute(!_local2.getMute());
setSoundButton(_local2.getMute());
onReleaseReturnToGame();
if (_local2.getMute()) {
msn.Zone.getInstance().muteOn();
} else {
msn.Zone.getInstance().muteOff();
}
}
function showMenu(Void) {
if (mcMenu._visible) {
return(undefined);
}
rainbow.core.Sound.getInstance().play("click");
timer.setPause(true);
rainbow.core.Sound.getInstance().disable();
mcMenuBtn._visible = (mcElements._visible = false);
mcMenu._visible = true;
}
function hideMenu(Void) {
rainbow.core.Sound.getInstance().enable();
timer.setPause(false);
mcMenuBtn._visible = (mcElements._visible = true);
mcMenu._visible = false;
}
function setSoundButton(bMute) {
var _local3 = mcMenu.tf_web_main_sound_on_off;
var _local2 = new TextFormat();
if (bMute) {
mcMenu.btnSoundOnOff.nUpColor = (_local2.color = 13421772);
} else {
mcMenu.btnSoundOnOff.nUpColor = (_local2.color = 16574721);
}
_local3.setTextFormat(_local2);
}
function onReleaseNext(Void) {
rainbow.core.Game.getInstance().nextLevelPlay();
}
function showLevelComplete(Void) {
disableClick();
mcMiniWindow._visible = true;
mcMiniWindow.gotoAndStop(1);
}
function showTimeIsOut(Void) {
disableClick();
mcMiniWindow._visible = true;
mcMiniWindow.gotoAndStop(2);
}
function showTimeBonus(Void) {
disableClick();
mcMiniWindow._visible = true;
mcMiniWindow.gotoAndStop(3);
var _local2 = int((timer.getRestTime() / 1000) * rainbow.managers.PlayerManager.TIME2SCORE);
playerManager.addLevelScore(_local2);
playerManager.addTotalScore(playerManager.getLevelScore());
rainbow.core.Sound.getInstance().play("count", 3);
var _local4 = new rainbow.helpers.Counter(0, _local2, rainbow.managers.PlayerManager.TIME2SCORE * 5);
var _local3 = new Object();
_local3.onChange = gdp.utils.Delegate.create(this, timeBonusChange, [(100 - timer.getPercent()) / _local2], true);
_local3.onComplete = gdp.utils.Delegate.create(this, timeBonusComplete, [_local2]);
_local4.addListener(_local3);
_local4.run();
}
function timeBonusChange(nValue, nRation) {
mcProgressBar.gotoAndStop(int(nRation * nValue));
mcMiniWindow.tfScore.text = nValue;
}
function timeBonusComplete(nValue, nTimeBonus) {
resetTimer();
mcMiniWindow.tfScore.text = nValue;
eventManager.dispatch("onTimeBonusComplete");
}
function hidePopup(Void) {
mcMiniWindow._visible = false;
}
function fadeOutWebElements(Void) {
var _local2 = new gdp.effects.fade.FadeOut(mcElements, 100, 0, 5);
_local2.onEnd = gdp.utils.Delegate.create(eventManager, eventManager.dispatch, ["onFadeOutWebElementsComplete"]);
_local2.run();
mcNextBtn._visible = true;
mcMenuBtn._visible = false;
}
function disableClick(Void) {
trace(("rainbow.web.Web.disableClick(" + [arguments]) + ")");
if (mcClickDisabler != undefined) {
mcClickDisabler.removeMovieClip();
}
mcClickDisabler = attachMovie("rect", "mcClickDisabler", getNextHighestDepth());
mcClickDisabler._width = Stage.width;
mcClickDisabler._height = Stage.height;
mcClickDisabler._alpha = 0;
mcClickDisabler.onRelease = null;
mcClickDisabler.useHandCursor = false;
}
function enableClick(Void) {
trace(("rainbow.web.Web.enableClick(" + [arguments]) + ")");
mcClickDisabler.removeMovieClip();
}
function clickIsEnabled(Void) {
return(mcClickDisabler._name == undefined);
}
static var LETTER_TYPE = "W";
static var COLOR_TYPE = "C";
static var RANDOM_TYPE = "R";
static var nLines = null;
static var nCircles = null;
static var aLinks = null;
var mcHints = null;
var mcElements = null;
var mcScoreTimeBonus = null;
var mcTimer = null;
var mcProgressBar = null;
var mcMenuBtn = null;
var mcMenu = null;
var mcClickDisabler = null;
var mcMiniWindow = null;
var mcNextBtn = null;
var mcBackground = null;
var sPhrase = null;
var bmpTfPhraseUncover = null;
var bmpTfPhraseNormal = null;
var aPhraseLetter = null;
var tfPhrase = null;
var tfScore = null;
var tfLevel = null;
var tfLives = null;
var eventManager = null;
var webManager = null;
var beadsManager = null;
var playerManager = null;
var aHoles = null;
var aLinkDisabled = null;
var counterScore = null;
var timer = null;
var nLastTimeClick = null;
var bDisabledSound = false;
}
Symbol 351 MovieClip [__Packages.rainbow.panels.Hints] Frame 0
class rainbow.panels.Hints extends rainbow.ui.Panel
{
static var instance;
function Hints () {
super();
instance = this;
eventManager = new gdp.env.events.EventManager(this);
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_init));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
hideAll();
}
static function getInstance() {
return(instance);
}
function show(nHintId) {
rainbow.web.Web.getInstance().nLastTimeClick = null;
rainbow.web.Web.getInstance().disableClick();
super.show();
hideAll();
this["tf_hint_" + nHintId]._visible = true;
}
function hide(Void) {
super.hide();
rainbow.web.Web.getInstance().nLastTimeClick = gdp.core.time.FrameTimer.getInstance().getTime();
rainbow.web.Web.getInstance().enableClick();
}
function enableGo(Void) {
btnStart._visible = true;
btnStart.tfLabel._visible = true;
}
function disableGo(Void) {
btnStart._visible = false;
btnStart.tfLabel._visible = false;
}
function hideAll(Void) {
tf_hint_1._visible = (tf_hint_2._visible = (tf_hint_3._visible = (tf_hint_4._visible = false)));
}
function ps_init(Void) {
btnStart.onRelease = gdp.utils.Delegate.create(this, onReleaseStart);
eventManager.dispatch("onInit", this);
return(0);
}
function onReleaseStart(Void) {
hide();
onStartRelease();
}
var eventManager = null;
var btnStart = null;
var tf_hint_1 = null;
var tf_hint_2 = null;
var tf_hint_3 = null;
var tf_hint_4 = null;
var onStartRelease = null;
}
Symbol 352 MovieClip [__Packages.gdp.core.time.FrameTimer] Frame 0
class gdp.core.time.FrameTimer extends gdp.core.base.BaseClass
{
static var instance;
function FrameTimer () {
super();
nFramesCount = 0;
nFps = 0;
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, addFrame));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
}
static function getInstance() {
if (instance == null) {
instance = new gdp.core.time.FrameTimer();
}
return(instance);
}
function addFrame(Void) {
nFramesCount++;
}
function setFps(nFps) {
this.nFps = nFps;
}
function getFps(Void) {
return(nFps);
}
function getTime(Void) {
return(int((nFramesCount / nFps) * 1000));
}
function getFrames(Void) {
return(nFramesCount);
}
function frameToMilliseconds(nFrame) {
return(int((nFrame / nFps) * 1000));
}
function millisecondsToFrame(nMs) {
return(Math.round((nMs * nFps) / 1000));
}
var nFps = null;
var nFramesCount = null;
}
Symbol 353 MovieClip [__Packages.gdp.core.base.Image] Frame 0
class gdp.core.base.Image extends gdp.core.base.BaseMovieClip
{
function Image () {
super();
}
static function create(mcParent, sName, nDepth) {
var _local1 = mcParent.attachMovie("Image", ((sName == null) ? ("Image" + (nImageCount++)) : (sName)), nDepth || (mcParent.getNextHighestDepth()));
return(_local1);
}
static var nImageCount = 0;
var cacheAsBitmap = true;
}
Symbol 354 MovieClip [__Packages.rainbow.helpers.BitmapTextField] Frame 0
class rainbow.helpers.BitmapTextField extends gdp.core.base.Image
{
var cacheAsBitmap;
function BitmapTextField () {
super();
cacheAsBitmap = true;
}
static function createFromTextField(tf, font) {
var _local1 = rainbow.helpers.BitmapTextField(tf._parent.attachMovie("BitmapTextField", (tf._name + "_Bitmap") + random(1000000), tf._parent.getNextHighestDepth(), {_x:tf._x, _y:tf._y}));
_local1.textField = tf;
_local1.font = font;
_local1.create();
return(_local1);
}
function create(Void) {
textField._visible = false;
buildText();
}
function buildText(Void) {
removeAllSymbols();
addSymbols();
positioning();
}
function positioning() {
var _local6;
var _local5;
var _local7;
var _local4;
var _local9 = 0;
var _local8 = 0;
var _local3 = 0;
while (_local3 < aSymbols.length) {
_local6 = aSymbols[_local3 - 1];
_local5 = aSymbols[_local3];
_local7 = _local5.getRect().szSize.nWidth;
_local4 = _local5.getRect().szSize.nHeight;
var _local2;
if (!hasSize) {
_local2 = new gdp.math.helpers.Point((_local6._x | 0) + (_local6.getRect().width() | 0), 0);
if (nWidth < (_local7 + _local2.nX)) {
nWidth = _local7 + _local2.nX;
}
if (nHeight < (_local4 + _local2.nY)) {
nHeight = _local4 + _local2.nY;
}
} else if ((_local8 + _local7) > nWidth) {
_local9++;
_local8 = 0;
_local2 = new gdp.math.helpers.Point(0, _local9 * _local4);
} else {
_local2 = new gdp.math.helpers.Point((_local6._x | 0) + (_local6.getRect().width() | 0), _local9 * _local4);
_local8 = _local2.nX + _local7;
}
_local5._x = _local2.nX;
_local5._y = _local2.nY;
_local3++;
}
}
function addSymbols(Void) {
var _local2 = 0;
while (_local2 < textField.text.length) {
var _local3 = rainbow.helpers.BitmapSymbol.create(this, textField.text.charCodeAt(_local2));
aSymbols.push(_local3);
_local2++;
}
}
function removeAllSymbols(Void) {
var _local2 = 0;
while (_local2 < aSymbols.length) {
aSymbols[_local2].removeMovieClip();
_local2++;
}
aSymbols = new Array();
}
function getSymbols(Void) {
return(aSymbols);
}
function setText(sText) {
sLastText = (textField.text = sText);
buildText();
}
function getText(Void) {
return(textField.text);
}
function getWidth(Void) {
return(nWidth);
}
function setWidth(nWidth) {
this.nWidth = nWidth;
hasSize = true;
buildText();
}
function getHeight(Void) {
return(nHeight);
}
function getTextField() {
return(textField);
}
function getFont(Void) {
return(font);
}
function hideSymbols(sLetter) {
var _local2 = 0;
while (_local2 < aSymbols.length) {
if ((aSymbols[_local2].getScanCode() == sLetter.charCodeAt(0)) && (aSymbols[_local2]._visible)) {
aSymbols[_local2]._visible = false;
return(undefined);
}
_local2++;
}
}
function showSymbol(sLetter) {
var _local2 = 0;
while (_local2 < aSymbols.length) {
if ((aSymbols[_local2].getScanCode() == sLetter.charCodeAt(0)) && (!aSymbols[_local2]._visible)) {
aSymbols[_local2]._visible = true;
return(undefined);
}
_local2++;
}
}
function hideAllSymbols(Void) {
var _local2 = 0;
while (_local2 < aSymbols.length) {
aSymbols[_local2]._visible = false;
_local2++;
}
}
function showAllSymbols(Void) {
var _local2 = 0;
while (_local2 < aSymbols.length) {
aSymbols[_local2]._visible = true;
_local2++;
}
}
var textField = null;
var sLastText = null;
var font = null;
var nWidth = 0;
var nHeight = 0;
var hasSize = false;
var aSymbols = null;
}
Symbol 355 MovieClip [__Packages.rainbow.helpers.BitmapFont] Frame 0
class rainbow.helpers.BitmapFont extends gdp.core.base.BaseClass
{
function BitmapFont () {
super();
}
function setName(sName) {
this.sName = sName;
}
function getName() {
return(sName);
}
function setSymbols(oSymbols) {
this.oSymbols = oSymbols;
}
function getSymbols() {
return(oSymbols);
}
function getSymbol(nScanCode) {
return(oSymbols[nScanCode]);
}
var sLinkId = null;
var sName = null;
var oSymbols = null;
}
Symbol 356 MovieClip [__Packages.rainbow.parser.BitmapSymbolDef] Frame 0
class rainbow.parser.BitmapSymbolDef extends gdp.core.base.BaseClass
{
function BitmapSymbolDef (oSymbol) {
super();
nScanCode = Number(oSymbol.scancode);
sName = oSymbol.name;
rect = new gdp.math.helpers.Rect(parseInt(oSymbol.left, 10), parseInt(oSymbol.top, 10), parseInt(oSymbol.width, 10), parseInt(oSymbol.height, 10));
}
function getScanCode() {
return(nScanCode);
}
function getName() {
return(sName);
}
function getRect() {
var _local2 = rect.clone();
_local2.ptnOrigin.nX = _local2.ptnOrigin.nX * nScale;
_local2.ptnOrigin.nY = _local2.ptnOrigin.nY * nScale;
_local2.szSize.nWidth = _local2.szSize.nWidth * nScale;
_local2.szSize.nHeight = _local2.szSize.nHeight * nScale;
return(_local2);
}
function setScale(nScale) {
this.nScale = nScale;
}
function getScale() {
return(nScale);
}
function description(Void) {
var _local2 = {scancode:nScanCode, name:sName, rect:rect};
return("BitmapSymbolDef" + gdp.utils.ObjectUtil.classToString(_local2, true));
}
var nScanCode = null;
var sName = null;
var rect = null;
var nScale = 1;
}
Symbol 357 MovieClip [__Packages.gdp.math.helpers.Rect] Frame 0
class gdp.math.helpers.Rect extends gdp.core.base.BaseClass
{
var ptnOrigin, szSize;
function Rect (nX, nY, nWidth, nHeight) {
super();
ptnOrigin = new gdp.math.helpers.Point(nX, nY);
szSize = new gdp.math.helpers.Size(nWidth, nHeight);
}
static function movieClipToRect(mc) {
return(new gdp.math.helpers.Rect(mc._x, mc._y, mc._width, mc._height));
}
static function withOriginSize(ptnOrigin, szSize) {
return(new gdp.math.helpers.Rect(ptnOrigin.nX, ptnOrigin.nY, szSize.nWidth, szSize.nHeight));
}
function clone() {
return(withOriginSize(ptnOrigin, szSize));
}
function description() {
return(((("Rect (ptnOrigin:" + ptnOrigin.description()) + ",szSize:") + szSize.description()) + ")");
}
function isEqual(other) {
return((((ptnOrigin.nX == other.ptnOrigin.nX) && (ptnOrigin.nY == other.ptnOrigin.nY)) && (szSize.nWidth == other.szSize.nWidth)) && (szSize.nHeight == other.szSize.nHeight));
}
function midX() {
return(ptnOrigin.nX + (szSize.nWidth / 2));
}
function midY() {
return(ptnOrigin.nY + (szSize.nHeight / 2));
}
function minX() {
return(ptnOrigin.nX);
}
function minY() {
return(ptnOrigin.nY);
}
function maxX() {
return(ptnOrigin.nX + szSize.nWidth);
}
function maxY() {
return(ptnOrigin.nY + szSize.nHeight);
}
function width() {
return(szSize.nWidth);
}
function height() {
return(szSize.nHeight);
}
function insetRect(dx, dy) {
return(new gdp.math.helpers.Rect(ptnOrigin.nX + dx, ptnOrigin.nY + dy, szSize.nWidth - (2 * dx), szSize.nHeight - (2 * dy)));
}
function offsetRect(dx, dy) {
return(new gdp.math.helpers.Rect(ptnOrigin.nX + dx, ptnOrigin.nY + dy, szSize.nWidth, szSize.nHeight));
}
function isEmptyRect() {
return((szSize.nWidth == 0) && (szSize.nHeight == 0));
}
function intersectionRect(rect) {
var _local2 = new gdp.math.helpers.Rect(0, 0, 0, 0);
_local2.ptnOrigin.nX = Math.max(minX(), rect.minX());
_local2.ptnOrigin.nY = Math.max(minY(), rect.minY());
_local2.szSize.nWidth = Math.min(maxX(), rect.maxX()) - _local2.minX();
_local2.szSize.nHeight = Math.min(maxY(), rect.maxY()) - _local2.minY();
return((_local2.isEmptyRect() ? (ZeroRect) : (_local2)));
}
function unionRect(rect) {
var _local2 = new gdp.math.helpers.Rect(0, 0, 0, 0);
_local2.ptnOrigin.nX = Math.min(minX(), rect.minX());
_local2.ptnOrigin.nY = Math.min(minY(), rect.minY());
_local2.szSize.nWidth = Math.max(maxX(), rect.maxX()) - _local2.minX();
_local2.szSize.nHeight = Math.max(maxY(), rect.maxY()) - _local2.minY();
return((_local2.isEmptyRect() ? (ZeroRect) : (_local2)));
}
function pointInRect(point) {
if (((point.nX > ptnOrigin.nX) && (point.nX < (ptnOrigin.nX + szSize.nWidth))) && ((point.nY > ptnOrigin.nY) && (point.nY < (ptnOrigin.nY + szSize.nHeight)))) {
return(true);
}
return(false);
}
function containsRect(rect) {
trace(("gdp.math.helpers.Rect.containsRect(" + [arguments]) + ")");
return((((minX() < rect.minX()) && (minY() < rect.minY())) && (maxX() > rect.maxX())) && (maxY() > rect.maxY()));
}
function intersectRect(rect) {
return(intersectionRect(rect).isEmptyRect());
}
function localToGlobal(mcLocal) {
var _local2 = {x:ptnOrigin.nX, y:ptnOrigin.nY};
mcLocal.localToGlobal(_local2);
var _local3 = new gdp.math.helpers.Rect(_local2.x, _local2.y, width(), height());
return(_local3);
}
function globalToLocal(mcLocal) {
var _local2 = {x:ptnOrigin.nX, y:ptnOrigin.nY};
mcLocal.globalToLocal(_local2);
var _local3 = new gdp.math.helpers.Rect(_local2.x, _local2.y, width(), height());
return(_local3);
}
static var ZeroRect = new gdp.math.helpers.Rect(0, 0, 0, 0);
}
Symbol 358 MovieClip [__Packages.gdp.math.helpers.Size] Frame 0
class gdp.math.helpers.Size extends gdp.core.base.BaseClass
{
var nWidth, nHeight;
function Size (nWidth, nHeight) {
super();
this.nWidth = nWidth;
this.nHeight = nHeight;
}
function clone() {
return(new gdp.math.helpers.Size(nWidth, nHeight));
}
function description() {
return(((("Size (nWidth:" + nWidth) + ", nHeight:") + nHeight) + ")");
}
function isEqual(other) {
return((nWidth == other.nWidth) && (nHeight == other.nHeight));
}
static var ZeroSize = new gdp.math.helpers.Size(0, 0);
}
Symbol 359 MovieClip [__Packages.gdp.math.helpers.Point] Frame 0
class gdp.math.helpers.Point extends gdp.core.base.BaseClass
{
var nX, nY;
function Point (nX, nY) {
super();
this.nX = nX;
this.nY = nY;
}
function clone() {
return(new gdp.math.helpers.Point(nX, nY));
}
function isEqual(other) {
return((nX == other.nX) && (nY == other.nY));
}
function description() {
return(((("Point (nX:" + nX) + ", nY:") + nY) + ")");
}
static function sum(point1, point2) {
return(new gdp.math.helpers.Point(point2.nX + point1.nX, point2.nY + point1.nY));
}
static function subtract(point1, point2) {
return(new gdp.math.helpers.Point(point2.nX - point1.nX, point2.nY - point1.nY));
}
static var ZeroPoint = new gdp.math.helpers.Point(0, 0);
}
Symbol 360 MovieClip [__Packages.rainbow.helpers.BitmapSymbol] Frame 0
class rainbow.helpers.BitmapSymbol extends gdp.core.base.Image
{
var attachMovie, getNextHighestDepth, mcMask;
function BitmapSymbol () {
super();
}
static function create(bmpTextField, nScanCode) {
var _local2 = bmpTextField.getFont().getSymbol(nScanCode);
if (_local2 == undefined) {
return(null);
}
var _local5 = _local2.getName();
var _local4 = _local2.getRect();
var _local1 = rainbow.helpers.BitmapSymbol(bmpTextField.attachMovie("BitmapSymbol", "symbol" + (nCount++), bmpTextField.getNextHighestDepth()));
_local1.sysDef = _local2;
_local1.nScanCode = nScanCode;
_local1.font = bmpTextField.getFont();
_local1.rect = _local4;
_local1.build();
return(_local1);
}
function build(Void) {
mcSymbols = attachMovie(font.getName(), "symbols", getNextHighestDepth(), {_x:-rect.ptnOrigin.nX, _y:-rect.ptnOrigin.nY});
mcMask._width = rect.width();
mcMask._height = rect.height();
mcSymbols.setMask(mcMask);
}
function getRect(Void) {
return(rect);
}
function getFont(Void) {
return(font);
}
function getScanCode(Void) {
return(nScanCode);
}
static var nCount = 0;
var mcSymbols = null;
var nScanCode = null;
var sysDef = null;
var font = null;
var rect = null;
}
Symbol 361 MovieClip [__Packages.rainbow.managers.PlayerManager] Frame 0
class rainbow.managers.PlayerManager extends gdp.core.base.BaseClass
{
static var instance;
function PlayerManager () {
super();
reset();
timer = new rainbow.helpers.Timer();
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.managers.PlayerManager();
}
return(instance);
}
function reset(Void) {
nLives = LIVES;
nLevelScore = (nTotalScore = (nLettersCount = 0));
timer.reset();
}
function setLives(nLives) {
this.nLives = nLives;
}
function getLives(Void) {
return(nLives);
}
function addLevelScore(nScore) {
setLevelScore(getLevelScore() + nScore);
}
function setLevelScore(nScore) {
trace(("rainbow.managers.PlayerManager.setLevelScore(" + [arguments]) + ")");
nLevelScore = nScore;
rainbow.web.Web.getInstance().setScore(nLevelScore);
msn.Zone.getInstance().scoreBroadcast(nLevelScore, int((gdp.utils.SystemUtil.getSystemTimer() - rainbow.core.Game.getInstance().getStartGameTime()) / 1000));
}
function getLevelScore(Void) {
return(nLevelScore);
}
function addTotalScore(nScore) {
setTotalScore(getTotalScore() + nScore);
}
function setTotalScore(nScore) {
nTotalScore = nScore;
}
function getTotalScore(Void) {
return(nTotalScore);
}
function setLetterCount(nLettersCount) {
this.nLettersCount = nLettersCount;
}
function getLetterCount(Void) {
return(nLettersCount);
}
function getTimer(Void) {
return(timer);
}
static var SCORE_FOR_BEADS = 0;
static var SCORE_FOR_LETTER = 0;
static var LIVES = 0;
static var TIME2SCORE = 0;
static var TIME4HINT = 0;
static var SYMBOLS_SCORE_SPEED = 2;
static var SYMBOLS_SCORE_FADE = false;
static var SYMBOLS_SCORE_MAX_HEIGHT_FLY = 100;
static var SYMBOLS_COMBO_SPEED = 2;
static var SYMBOLS_COMBO_FADE = false;
static var SYMBOLS_COMBO_MAX_HEIGHT_FLY = 100;
var nLevelScore = 0;
var nTotalScore = 0;
var nLives = 0;
var nLettersCount = 0;
var timer = null;
}
Symbol 362 MovieClip [__Packages.rainbow.helpers.Timer] Frame 0
class rainbow.helpers.Timer extends gdp.core.base.BaseClass
{
function Timer () {
super();
eventManager = new gdp.env.events.EventManager(this);
psTimer = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_timer));
}
function setDelay(nDelay) {
trace(("rainbow.helpers.Timer.setDelay(" + [arguments]) + ")");
this.nDelay = nDelay;
}
function getDelay(Void) {
return(nDelay);
}
function setPause(bPause) {
if (this.bPause == bPause) {
return(undefined);
}
this.bPause = bPause;
if (bPause) {
nPauseTime = gdp.core.time.FrameTimer.getInstance().getTime();
} else {
nStTime = nStTime + (gdp.core.time.FrameTimer.getInstance().getTime() - nPauseTime);
}
}
function getPause(Void) {
return(bPause);
}
function getRestTime(Void) {
return((nStTime + nDelay) - gdp.core.time.FrameTimer.getInstance().getTime());
}
function getPercent(Void) {
var _local2 = gdp.core.time.FrameTimer.getInstance().getTime() - nStTime;
return((_local2 * 100) / nDelay);
}
function run(Void) {
nStTime = gdp.core.time.FrameTimer.getInstance().getTime();
if (!gdp.core.process.ProcessManager.getInstance().isHas(psTimer)) {
gdp.core.process.ProcessManager.getInstance().addProcess(psTimer);
}
}
function reset(Void) {
nStTime = 0;
nDelay = 0;
bPause = false;
bStop = false;
gdp.core.process.ProcessManager.getInstance().killProcess(psTimer);
}
function stop(Void) {
bStop = true;
}
function isStopped(Void) {
return(!gdp.core.process.ProcessManager.getInstance().isHas(psTimer));
}
function ps_timer(Void) {
if (bStop) {
return(0);
}
if (bPause) {
return(-1);
}
if (gdp.core.time.FrameTimer.getInstance().getTime() >= (nStTime + nDelay)) {
eventManager.dispatch("onChange", 100);
eventManager.dispatch("onComplete");
return(0);
}
eventManager.dispatch("onChange", getPercent());
}
var eventManager = null;
var nDelay = 0;
var nStTime = 0;
var nPauseTime = 0;
var bPause = false;
var bStop = false;
var psTimer = null;
}
Symbol 363 MovieClip [__Packages.msn.Zone] Frame 0
class msn.Zone
{
static var instance;
var bEmulation, onSessionStart, onGameStart, onGameContinue, onGameMenu, onGameMute, onGamePause, onCustomReturn;
function Zone () {
trace(("msn.Zone.Zone(" + [arguments]) + ")");
}
static function getInstance() {
if (instance == null) {
instance = new msn.Zone();
}
return(instance);
}
function setEmulation(bEmulation) {
this.bEmulation = bEmulation;
}
function isEmulation(Void) {
return(bEmulation);
}
function customEvent(data) {
trace(("msn.Zone.customEvent(" + [arguments]) + ")");
if (bEmulation) {
return(customReturn());
}
fscommand ("CustomEvent", gdp.utils.ObjectUtil.toXML({gamedata:data}));
}
function gameBreak(nValue) {
trace(("msn.Zone.gameBreak(" + [arguments]) + ")");
if (bEmulation) {
return(gameContinue());
}
fscommand ("GameBreak", gdp.utils.ObjectUtil.toXML({data:{breakpoint:nValue}}));
}
function gameEnd(data) {
trace(("msn.Zone.gameEnd(" + [arguments]) + ")");
if (bEmulation) {
return(gameStart());
}
fscommand ("GameEnd", gdp.utils.ObjectUtil.toXML({gamedata:data}));
}
function gameError(sErrorType) {
trace(("msn.Zone.gameError(" + [arguments]) + ")");
if (bEmulation) {
return(undefined);
}
fscommand ("GameError", sErrorType);
}
function gameReady() {
trace(("msn.Zone.gameReady(" + [arguments]) + ")");
if (bEmulation) {
return(gameStart());
}
fscommand ("GameReady", "<data><mode></mode><difficulty></difficulty><startlevel></startlevel></data>");
}
function loadBroadcast(nValue) {
trace(("msn.Zone.loadBroadcast(" + [arguments]) + ")");
if (bEmulation) {
return(undefined);
}
fscommand ("LoadBroadcast", gdp.utils.ObjectUtil.toXML({data:{percentcomplete:nValue}}));
}
function scoreBroadcast(nScore, nTime) {
trace(("msn.Zone.scoreBroadcast(" + [arguments]) + ")");
if (bEmulation) {
return(undefined);
}
fscommand ("ScoreBroadcast", gdp.utils.ObjectUtil.toXML({game:{score:nScore, time:nTime}}));
}
function scoreSubmit(nScore, nTime) {
trace(("msn.Zone.scoreSubmit(" + [arguments]) + ")");
if (bEmulation) {
return(undefined);
}
trace(gdp.utils.ObjectUtil.toXML({game:{score:nScore, time:nTime}}));
fscommand ("ScoreSubmit", gdp.utils.ObjectUtil.toXML({game:{score:nScore, time:nTime}}));
}
function sessionReady() {
trace(("msn.Zone.sessionReady(" + [arguments]) + ")");
if (bEmulation) {
return(sessionStart());
}
fscommand ("SessionReady", "<data></data>");
}
function sessionStart() {
trace(("msn.Zone.sessionStart(" + [arguments]) + ")");
onSessionStart();
}
function gameStart() {
trace(("msn.Zone.gameStart(" + [arguments]) + ")");
onGameStart();
}
function gameContinue(sData) {
trace(("msn.Zone.gameContinue(" + [arguments]) + ")");
onGameContinue(parseData(sData));
}
function gameMenu() {
trace(("msn.Zone.gameMenu(" + [arguments]) + ")");
onGameMenu();
}
function muteOn() {
trace(("msn.Zone.muteOn(" + [arguments]) + ")");
onGameMute(true);
}
function muteOff() {
trace(("msn.Zone.muteOff(" + [arguments]) + ")");
onGameMute(false);
}
function pauseOn() {
trace(("msn.Zone.pauseOn(" + [arguments]) + ")");
onGamePause(true);
}
function pauseOff() {
trace(("msn.Zone.pauseOff(" + [arguments]) + ")");
onGamePause(false);
}
function customReturn(sData) {
trace(("msn.Zone.customReturn(" + [arguments]) + ")");
onCustomReturn(parseData(sData));
}
function parseData(sData) {
return(gdp.utils.XMLUtil.toObject(new XML(sData)));
}
}
Symbol 364 MovieClip [__Packages.gdp.utils.SystemUtil] Frame 0
class gdp.utils.SystemUtil extends gdp.core.base.BaseClass
{
function SystemUtil () {
super();
}
static function getFlashPlayerVersion() {
return(System.capabilities.version);
}
static function getFlashPlayerVersionFromObject(Void) {
var _local3 = getFlashPlayerVersion();
var _local1 = _local3.split(" ");
var _local2 = _local1[0];
_local1 = gdp.utils.StringUtil.toTypedArray(_local1[1], ",", gdp.utils.Delegate.create(gdp.utils.StringUtil, gdp.utils.StringUtil.toNumber));
return({platform:_local2, major:_local1[0], minor:_local1[1], build:_local1[2], revision:_local1[3]});
}
static function getFlashPlayerVersionPlatform() {
return(getFlashPlayerVersionFromObject().platform);
}
static function getFlashPlayerVersionMajor() {
return(getFlashPlayerVersionFromObject().major);
}
static function getFlashPlayerVersionMinor() {
return(getFlashPlayerVersionFromObject().minor);
}
static function getFlashPlayerVersionBuild() {
return(getFlashPlayerVersionFromObject().build);
}
static function getFlashPlayerVersionRevision() {
return(getFlashPlayerVersionFromObject().revision);
}
static function getSystemTimer(Void) {
return(getTimer());
}
}
Symbol 365 MovieClip [__Packages.rainbow.core.Game] Frame 0
class rainbow.core.Game extends gdp.core.base.BaseClass
{
static var instance, DOWNLOAD_FULL_VERSION_URL, DOWNLOAD_FULL_VERSION_TARGET;
function Game (mcTarget) {
super();
var _local3 = gdp.core.time.FrameTimer.getInstance().setFps(31);
this.mcTarget = mcTarget;
loadConfig();
rainbow.lang.Localization.getInstance();
initCheates();
}
static function getInstance(mcTarget) {
if (instance == null) {
instance = new rainbow.core.Game(mcTarget);
}
return(instance);
}
function initCheates(Void) {
fscommand ("trapallkeys", true);
var _local2 = new gdp.input.keyboard.KeyListener("ctrl+1");
_local2.onRelease = gdp.utils.Delegate.create(this, levelWin);
var _local4 = new gdp.input.keyboard.KeyListener("ctrl+2");
_local4.onRelease = gdp.utils.Delegate.create(this, levelLose);
var _local3 = new gdp.input.keyboard.KeyListener("ctrl+3");
_local3.onRelease = gdp.utils.Delegate.create(this, gameEnd);
gdp.input.keyboard.KeyboardDeviceManager.getInstance().addKeyListener(_local2);
gdp.input.keyboard.KeyboardDeviceManager.getInstance().addKeyListener(_local4);
gdp.input.keyboard.KeyboardDeviceManager.getInstance().addKeyListener(_local3);
}
function loadConfig(Void) {
gdp.config.XMLParser.addModule(rainbow.parser.XML2Level);
gdp.config.XMLParser.addModule(rainbow.parser.XML2Links);
gdp.config.XMLParser.addModule(rainbow.parser.XML2Font);
var _local3;
gdp.config.ConfigLoader.bDebug = true;
if (_root.bStandalon) {
_local3 = new gdp.config.ConfigLoader(sConfigURL, gdp.utils.Delegate.create(this, onConfigLoad), true);
_local3.loadFromString((rainbow.core.StandalonConfig.xmlConfigA + rainbow.core.StandalonConfig.xmlConfigB) + rainbow.core.StandalonConfig.xmlConfigC);
} else {
_local3 = new gdp.config.ConfigLoader(sConfigURL, gdp.utils.Delegate.create(this, onConfigLoad));
}
}
function onConfigLoad(bSuccess) {
if (!bSuccess) {
return(undefined);
}
initZone();
}
function initZone() {
var _local3 = rainbow.core.Sound.getInstance();
var _local2 = msn.Zone.getInstance();
_local2.onSessionStart = gdp.utils.Delegate.create(this, onZoneSessionStart);
_local2.onGameStart = gdp.utils.Delegate.create(this, restartGame);
_local2.onGameMute = gdp.utils.Delegate.create(this, onMute);
_local2.sessionReady();
}
function onZoneSessionStart(Void) {
msn.Zone.getInstance().gameReady();
rainbow.core.Preloader.getInstance().hide();
}
function onMute(sMute) {
var _local1 = gdp.utils.StringUtil.toBoolean(sMute);
rainbow.core.Sound.getInstance().setMute(_local1);
rainbow.web.Web.getInstance().setSoundButton(_local1);
}
function onGameMenu(Void) {
rainbow.web.Web.getInstance().showMenu();
}
function onGamePause(bPause) {
if (bPause) {
rainbow.web.Web.getInstance().showMenu();
} else {
rainbow.web.Web.getInstance().hideMenu();
}
}
function getStartGameTime(Void) {
return(nGameStart);
}
function showPregame(Void) {
if (panelPregame == null) {
panelPregame = rainbow.ui.Panel.create(mcTarget, "pregame");
} else {
panelPregame.show();
}
}
function showDownload(Void) {
trace(("rainbow.core.Game.showDownload(" + [arguments]) + ")");
if (panelDownload == null) {
var _local3 = new Object();
_local3.onInit = gdp.utils.Delegate.create(this, onDownloadInit);
panelDownload = rainbow.panels.Download(rainbow.ui.Panel.create(mcTarget, "download"));
panelDownload.addListener(_local3);
} else {
panelDownload.show();
}
onDownloadInit(panelDownload);
}
function onDownloadInit(download) {
var _local2 = rainbow.map.Map.getInstance();
download.onDownloadRelease = gdp.utils.Delegate.create(this, openDownloadURL);
download.onStartRelease = gdp.utils.Delegate.create(this, nextLevelPlayEnd);
}
function showMap(Void) {
if (panelMap == null) {
panelMap = rainbow.map.Map(rainbow.ui.Panel.create(mcTarget, "map"));
} else {
panelMap.show();
}
}
function showWeb(Void) {
if (panelWeb == null) {
var _local2 = new Object();
_local2.onInit = gdp.utils.Delegate.create(this, onWebInit);
panelWeb = rainbow.web.Web(rainbow.ui.Panel.create(mcTarget, "web"));
panelWeb.addListener(_local2);
} else {
panelWeb.show();
}
}
function onWebInit(web) {
trace(("rainbow.core.Game.onWebInit(" + [arguments]) + ")");
var _local3 = rainbow.levels.LevelsManager.getInstance().getLevel(1);
rainbow.levels.LevelsManager.getInstance().setCurrentLevel(_local3);
runLevel();
}
function showHowToPlay(Void) {
trace(("rainbow.core.Game.showHowToPlay(" + [arguments]) + ")");
panelHTP = rainbow.panels.HowToPlay(rainbow.ui.Panel.create(mcTarget, "howToPlay"));
panelHTP.onStartRelease = gdp.utils.Delegate.create(this, runLevelEnd);
bHTPShowed = true;
}
function restartGame(Void) {
nGameStart = getTimer();
if (!bGameStarted) {
bGameStarted = true;
showMap();
return(undefined);
}
rainbow.managers.PlayerManager.getInstance().reset();
rainbow.web.Web.getInstance().hide();
rainbow.web.Background.getInstance().reset();
rainbow.map.Map.getInstance().show();
rainbow.map.Map.getInstance().setLevel(1);
var _local2 = rainbow.levels.LevelsManager.getInstance().getLevel(1);
rainbow.levels.LevelsManager.getInstance().setCurrentLevel(_local2);
}
function runLevel(Void) {
trace(("rainbow.core.Game.runLevel(" + [arguments]) + ")");
if (rainbow.levels.LevelsManager.getInstance().getCurrentLevel() == null) {
return(undefined);
}
if (!bHTPShowed) {
rainbow.web.Web.getInstance().hide();
showHowToPlay();
} else {
rainbow.web.Web.getInstance().disableClick();
runLevelEnd();
}
}
function runLevelEnd(Void) {
trace(("rainbow.core.Game.runLevelEnd(" + [arguments]) + ")");
showWeb();
rainbow.web.Web.getInstance().setLevel(rainbow.levels.LevelsManager.getInstance().getCurrentLevel());
msn.Zone.getInstance().onGameMenu = gdp.utils.Delegate.create(this, onGameMenu);
msn.Zone.getInstance().onGamePause = gdp.utils.Delegate.create(this, onGamePause);
}
function nextLevelPlay(Void) {
trace(("rainbow.core.Game.nextLevelPlay(" + [arguments]) + ")");
var _local4 = rainbow.levels.LevelsManager.getInstance();
var _local3 = _local4.getCurrentLevel().getNumber() + 1;
rainbow.web.Web.getInstance().hide();
if (((_local3 % 2) == 0) || (_local3 > _local4.getLevelsNumber())) {
showDownload();
} else {
nextLevelPlayEnd();
}
}
function nextLevelPlayEnd(Void) {
var _local2 = rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getNumber() + 1;
var _local4 = rainbow.levels.LevelsManager.getInstance();
if (_local2 > _local4.getLevelsNumber()) {
gameEnd();
return(undefined);
}
var _local3 = rainbow.levels.LevelsManager.getInstance().getLevel(_local2);
rainbow.map.Map.getInstance().show();
rainbow.map.Map.getInstance().setLevel(_local2);
rainbow.levels.LevelsManager.getInstance().setCurrentLevel(_local3);
}
function checkWinLose(Void) {
trace(("rainbow.core.Game.checkWinLose(" + [arguments]) + ")");
if (rainbow.managers.PlayerManager.getInstance().getLetterCount() <= 0) {
levelWin();
} else if (rainbow.managers.PlayerManager.getInstance().getLives() < 1) {
gameEnd();
} else if (rainbow.managers.PlayerManager.getInstance().getTimer().getRestTime() <= 0) {
levelLose();
}
}
function gameEnd(Void) {
msn.Zone.getInstance().scoreSubmit(rainbow.managers.PlayerManager.getInstance().getLevelScore(), int((gdp.utils.SystemUtil.getSystemTimer() - getInstance().getStartGameTime()) / 1000));
msn.Zone.getInstance().gameEnd();
}
function levelWin(Void) {
trace(("rainbow.core.Game.levelWin(" + [arguments]) + ")");
rainbow.core.Sound.getInstance().play("complete-level");
var _local2 = rainbow.web.Web.getInstance();
var _local5 = rainbow.web.Background.getInstance();
var _local6 = rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getNumber();
rainbow.managers.PlayerManager.getInstance().getTimer().stop();
var _local4 = new gdp.utils.Executor();
_local4.addTask(gdp.utils.Delegate.create(_local2, _local2.showLevelComplete));
_local4.addDelay(2000);
_local4.addTask(gdp.utils.Delegate.create(msn.Zone.getInstance(), msn.Zone.getInstance().gameBreak, [msn.Zone.getInstance().gameBreak]));
var _local3 = new gdp.utils.Executor();
_local3.addTask(gdp.utils.Delegate.create(_local2, _local2.showTimeBonus), [], true, "onTimeBonusComplete");
_local3.addDelay(1000);
_local3.addTask(gdp.utils.Delegate.create(_local2, _local2.hidePopup));
_local3.addTask(gdp.utils.Delegate.create(_local2, _local2.fadeOutWebElements), [], true, "onFadeOutWebElementsComplete");
_local3.addTask(gdp.utils.Delegate.create(_local5, _local5.showItem, [_local6]), [], true, "onShowItemComplete");
_local3.addTask(gdp.utils.Delegate.create(_local2, _local2.enableClick));
msn.Zone.getInstance().onGameMenu = null;
msn.Zone.getInstance().onGamePause = null;
msn.Zone.getInstance().onGameContinue = gdp.utils.Delegate.create(_local3, _local3.run);
_local4.start();
}
function levelLose(Void) {
trace(("rainbow.core.Game.levelLose(" + [arguments]) + ")");
rainbow.managers.PlayerManager.getInstance().setLives(rainbow.managers.PlayerManager.getInstance().getLives() - 1);
if (rainbow.managers.PlayerManager.getInstance().getLives() < 0) {
checkWinLose();
return(undefined);
}
var _local3 = rainbow.web.Web.getInstance();
var _local4 = new gdp.utils.Executor();
_local4.addTask(gdp.utils.Delegate.create(_local3, _local3.showTimeIsOut));
_local4.addDelay(2000);
_local4.addTask(gdp.utils.Delegate.create(_local3, _local3.hidePopup));
_local4.addTask(gdp.utils.Delegate.create(_local3, _local3.enableClick));
_local4.addTask(gdp.utils.Delegate.create(this, runLevel));
_local4.start();
msn.Zone.getInstance().onGameMenu = null;
msn.Zone.getInstance().onGamePause = null;
}
function openDownloadURL(Void) {
if (!msn.Zone.getInstance().isEmulation()) {
msn.Zone.getInstance().customEvent("CustomEvent");
} else {
_root.getURL(DOWNLOAD_FULL_VERSION_URL, DOWNLOAD_FULL_VERSION_TARGET);
}
}
static function main(mcTarget) {
registerClasses();
_global.bCompiledByMTASC = true;
var _local2 = getInstance(mcTarget);
}
static function registerClasses() {
Object.registerClass("menuButton", rainbow.ui.MenuButton);
Object.registerClass("hitBox", rainbow.ui.SimpleButton);
Object.registerClass("Panel", rainbow.ui.Panel);
Object.registerClass("Pregame", rainbow.panels.Pregame);
Object.registerClass("Map", rainbow.map.Map);
Object.registerClass("Item", rainbow.map.Item);
Object.registerClass("Point", rainbow.map.Point);
Object.registerClass("BitmapTextField", rainbow.helpers.BitmapTextField);
Object.registerClass("Download", rainbow.panels.Download);
Object.registerClass("Hints", rainbow.panels.Hints);
Object.registerClass("Web", rainbow.web.Web);
Object.registerClass("Background", rainbow.web.Background);
Object.registerClass("bead", rainbow.web.Bead);
Object.registerClass("shortLink", rainbow.web.Link);
Object.registerClass("circleLinkA", rainbow.web.Link);
Object.registerClass("circleLinkB", rainbow.web.Link);
Object.registerClass("circleLinkC", rainbow.web.Link);
Object.registerClass("circleLinkD", rainbow.web.Link);
Object.registerClass("circleLinkE", rainbow.web.Link);
Object.registerClass("circleLinkF", rainbow.web.Link);
Object.registerClass("hole", rainbow.web.Hole);
Object.registerClass("howToPlay", rainbow.panels.HowToPlay);
}
var sConfigURL = "./xml/config.xml";
var mcTarget = null;
var bGameStarted = false;
var panelPregame = null;
var panelDownload = null;
var panelMap = null;
var panelWeb = null;
var panelHTP = null;
var bHTPShowed = null;
var nGameStart = null;
}
Symbol 366 MovieClip [__Packages.rainbow.map.Map] Frame 0
class rainbow.map.Map extends rainbow.ui.Panel
{
static var instance;
var hide;
function Map () {
super();
instance = this;
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_init));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
}
static function getInstance() {
return(instance);
}
function ps_init(Void) {
initItems();
initPoints();
initButtons();
setLevel(1);
return(0);
}
function initItems(Void) {
trace(("rainbow.map.Map.initItems(" + [arguments]) + ")");
items = new Array();
var _local3 = 1;
while (_local3 <= 12) {
items.push(this["item" + _local3]);
_local3++;
}
}
function initPoints(Void) {
trace(("rainbow.map.Map.initPoints(" + [arguments]) + ")");
points = new Array();
var _local3 = 1;
while (_local3 <= 30) {
points.push(this["point" + _local3]);
_local3++;
}
}
function initButtons(Void) {
var _local2 = rainbow.core.Game.getInstance();
btnStart.onRelease = gdp.utils.Delegate.create(this, onReleaseStart);
btnDownload.onRelease = gdp.utils.Delegate.create(_local2, _local2.openDownloadURL);
btnRules.onRelease = gdp.utils.Delegate.create(_local2, _local2.showHowToPlay);
}
function setLevel(nLevel) {
trace(("rainbow.map.Map.setLevel(" + [arguments]) + ")");
nLevel--;
setItem(Math.floor(nLevel / 5));
setPoint(nLevel);
}
function setItem(nId) {
var _local2 = 0;
while (_local2 < items.length) {
if (_local2 < nId) {
items[_local2].open();
} else {
items[_local2].close();
}
_local2++;
}
}
function setPoint(nId) {
var _local2 = 0;
while (_local2 < points.length) {
var _local3 = points[_local2];
if (_local2 < nId) {
_local3.select();
} else if (_local2 == nId) {
moveFlag(_local3);
} else {
_local3.unselect();
}
_local2++;
}
}
function moveFlag(point) {
var _local2 = new gdp.effects.tween.Tween(mcFlag, new gdp.math.helpers.Point(mcFlag._x, mcFlag._y), new gdp.math.helpers.Point(point._x, point._y), 1);
_local2.run();
}
function onReleaseStart(Void) {
rainbow.core.Game.getInstance().showWeb();
rainbow.core.Game.getInstance().runLevel();
var _local2 = new gdp.utils.Executor();
_local2.addDelay(1000);
_local2.addTask(gdp.utils.Delegate.create(this, hide));
_local2.start();
}
var btnStart = null;
var btnDownload = null;
var btnRules = null;
var mcFlag = null;
var items = null;
var points = null;
}
Symbol 367 MovieClip [__Packages.rainbow.map.Point] Frame 0
class rainbow.map.Point extends gdp.core.base.BaseMovieClip
{
var gotoAndStop;
function Point () {
super();
unselect();
}
function select(Void) {
(gotoAndStop(2));// not popped
}
function unselect(Void) {
(gotoAndStop(1));// not popped
}
var mcFlag = null;
}
Symbol 368 MovieClip [__Packages.gdp.effects.tween.Tween] Frame 0
class gdp.effects.tween.Tween extends gdp.core.base.BaseClass
{
function Tween (mcObject, pntStart, pntEnd, nSpeed, nAcc) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.mcObject = mcObject;
this.pntStart = pntStart;
this.pntEnd = pntEnd;
this.nSpeed = nSpeed;
this.nAcc = ((nAcc == null) ? 1 : (nAcc));
pntLocation = pntStart.clone();
init();
}
function init(Void) {
var _local4 = pntEnd.nX - pntStart.nX;
var _local3 = pntEnd.nY - pntStart.nY;
var _local2 = Math.sqrt((_local4 * _local4) + (_local3 * _local3));
var _local5 = _local2 / Math.floor(_local2 / nSpeed);
var _local7 = (_local4 / _local2) * _local5;
var _local6 = (_local3 / _local2) * _local5;
pntVelocity = new gdp.math.helpers.Point(_local7, _local6);
}
function psTween(Void) {
if (mcObject == null) {
return(0);
}
if ((Math.abs(pntLocation.nX - pntEnd.nX) <= Math.abs(pntVelocity.nX)) && (Math.abs(pntLocation.nY - pntEnd.nY) <= Math.abs(pntVelocity.nY))) {
return(end());
}
mcObject._x = (pntLocation.nX = pntLocation.nX + pntVelocity.nX);
mcObject._y = (pntLocation.nY = pntLocation.nY + pntVelocity.nY);
pntVelocity.nX = pntVelocity.nX * nAcc;
pntVelocity.nY = pntVelocity.nY * nAcc;
}
function end(Void) {
mcObject._x = pntEnd.nX;
mcObject._y = pntEnd.nY;
eventManager.dispatch("onEnd");
onEnd();
return(0);
}
function run(Void) {
mcObject._x = pntStart.nX;
mcObject._y = pntStart.nY;
var _local2 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psTween));
gdp.core.process.ProcessManager.getInstance().addProcess(_local2);
}
var mcObject = null;
var pntStart = null;
var pntEnd = null;
var pntVelocity = null;
var pntLocation = null;
var nSpeed = null;
var nAcc = null;
var eventManager = null;
var onEnd = null;
}
Symbol 369 MovieClip [__Packages.gdp.utils.Executor] Frame 0
class gdp.utils.Executor extends gdp.core.base.BaseClass
{
static var currentExecutor;
var parentExecutor;
function Executor (bSyn, bInverse) {
super();
nId = nCount++;
this.bSyn = bSyn;
this.bInverse = bInverse;
aTasks = new Array();
}
function description() {
return(("[Executor " + nId) + "]");
}
function ps_wait(nStDelay, nDelayLength) {
if (gdp.core.time.FrameTimer.getInstance().getTime() > (nStDelay + nDelayLength)) {
start();
return(0);
}
}
function addTask(fTask, aArgs, bWaitCallback, sEvent, aArgsEventEqual) {
var _local2 = {func:fTask, args:aArgs, bWaitCallback:bWaitCallback, oTargetForListen:fTask.target, sEvent:sEvent, aArgsEvents:aArgsEventEqual};
if (bInverse) {
aTasks.unshift(_local2);
} else {
aTasks.push(_local2);
}
}
function addDelay(nMs) {
if (nMs > 0) {
addTask(gdp.utils.Delegate.create(this, wait), [nMs], true);
}
}
function wait(nMs) {
var _local2 = gdp.core.time.FrameTimer.getInstance().getTime();
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, ps_wait, [_local2, nMs]));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
}
function start() {
if (aTasks.length == 0) {
return(endExecutor());
}
if (parentExecutor == undefined) {
parentExecutor = currentExecutor;
}
currentExecutor = this;
if (bSyn) {
var _local2 = 0;
while (_local2 < aTasks.length) {
var _local3 = aTasks.splice(_local2--, 1)[0];
if (((_local3.sEvent != null) && (_local3.oTargetForListen != null)) && (_local3.bWaitCallback)) {
setEventListener(_local3.oTargetForListen, _local3.sEvent, _local3.aArgsEvents);
}
var _local4 = _local3.func.apply(null, _local3.args);
nTasksCount++;
if (!_local3.bWaitCallback) {
taskCallback();
}
_local2++;
}
} else {
var _local3 = aTasks.splice(0, 1)[0];
if (((_local3.sEvent != null) && (_local3.oTargetForListen != null)) && (_local3.bWaitCallback)) {
setEventListener(_local3.oTargetForListen, _local3.sEvent, _local3.aArgsEvents);
}
var _local4 = _local3.func.apply(null, _local3.args);
if (!_local3.bWaitCallback) {
taskCallback();
}
}
return(0);
}
function run(Void) {
start();
}
function setEventListener(oTargetForListen, sEvent, aArgsEvents) {
var _local2 = new Object();
_local2[sEvent] = gdp.utils.Delegate.create(this, onListenEvent, [aArgsEvents, _local2], true);
oTargetForListen.addListener(_local2);
}
function onListenEvent() {
var _local4 = arguments[arguments.length - 2];
var _local5 = arguments[arguments.length - 1];
if ((arguments.length > 2) && (_local4 != null)) {
var _local3 = 0;
while (_local3 < _local4.length) {
if (_local4[_local3] != arguments[_local3]) {
return(undefined);
}
_local3++;
}
}
gdp.env.events.EventManager.getTarget().removeListener(_local5);
taskCallback();
}
function breaking() {
aTasks = new Array();
nTasksCount = 0;
onBreak();
}
function taskCallback() {
if (nTasksCount < 0) {
return(undefined);
}
if (bSyn) {
nTasksCount--;
if (nTasksCount == 0) {
return(endExecutor());
}
} else {
if (aTasks.length == 0) {
return(endExecutor());
}
start();
}
}
function endExecutor() {
currentExecutor = parentExecutor;
return(onComplete());
}
static function endTask(executor) {
if (executor == null) {
currentExecutor.taskCallback();
} else {
executor.taskCallback();
}
}
static function breakExecutor() {
currentExecutor.breaking();
}
static var nCount = 0;
var nId = null;
var aTasks = null;
var nTasksCount = 0;
var bInverse = false;
var bSyn = false;
var onComplete = null;
var onBreak = null;
}
Symbol 370 MovieClip [__Packages.gdp.input.keyboard.KeyCombination] Frame 0
class gdp.input.keyboard.KeyCombination extends gdp.core.base.BaseClass
{
function KeyCombination (sKeys) {
super();
setKeysCombination(sKeys);
nId = nCount++;
}
function isEqual(combination) {
if (gdp.utils.ArrayUtil.equals(aKeys, combination.aKeys) && (nType == combination.nType)) {
return(true);
}
return(false);
}
function isEqualByCodesKeys(aCodesKeys) {
if (aCodesKeys.length != aKeys.length) {
return(false);
}
var _local2 = 0;
while (_local2 < aCodesKeys.length) {
if (!gdp.utils.ArrayUtil.contains(aKeys, aCodesKeys[_local2])) {
return(false);
}
_local2++;
}
return(true);
}
function getId(Void) {
return(nId);
}
function setKeysCombination(sKeys) {
sKeysComb = sKeys;
aKeys = getKeyCombination(sKeys);
}
function getKeysCombination(Void) {
return(sKeysComb);
}
function getCodesKeys(Void) {
return(aKeys);
}
function getKeyCombination(sComb) {
sComb = sComb.toUpperCase();
var _local5 = gdp.utils.StringUtil.toArray(sComb, "+", true);
var _local6 = new Array();
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2];
var _local4 = checkKeyName(_local3);
if (_local4 == undefined) {
trace("You enter wrong key " + _local3);
return(null);
}
_local6.push(_local4);
_local2++;
}
_local6 = _local6.sort();
return(_local6);
}
function checkKeyName(sKeyName) {
var keyCode = -1;
if (typeof(eval (sKeyName)) == "number") {
return(eval (sKeyName));
}
if (sKeyName.length > 1) {
keyCode = ((oExchangeString[sKeyName] == undefined) ? (Key[sKeyName]) : (oExchangeString[sKeyName]));
} else {
keyCode = sKeyName.charCodeAt(0);
}
return(keyCode);
}
static var nCount = 0;
static var oExchangeString = {CTRL:17, ALT:18, ESC:27, PAGEUP:33, PAGEDOWN:34, DELETE:46, TILDE:192};
var nId = null;
var sKeysComb = null;
var aKeys = null;
var nType = null;
}
Symbol 371 MovieClip [__Packages.gdp.input.keyboard.KeyListener] Frame 0
class gdp.input.keyboard.KeyListener extends gdp.input.keyboard.KeyCombination
{
function KeyListener (sKeys) {
super(sKeys);
}
function setPressed(bPressed) {
this.bPressed = bPressed;
}
function isPressed(Void) {
return(bPressed);
}
function setReleased(bReleased) {
this.bReleased = bReleased;
}
function isReleased(Void) {
return(bReleased);
}
var onPress = null;
var onRelease = null;
var bPressed = false;
var bReleased = false;
}
Symbol 372 MovieClip [__Packages.gdp.input.keyboard.KeyboardDeviceManager] Frame 0
class gdp.input.keyboard.KeyboardDeviceManager extends gdp.core.base.BaseClass
{
static var instance;
function KeyboardDeviceManager () {
super();
aKeyListeners = new Array();
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psCatchKeys));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
Key.addListener(this);
}
static function getInstance() {
if (instance == null) {
instance = new gdp.input.keyboard.KeyboardDeviceManager();
}
return(instance);
}
function psCatchKeys() {
var _local5 = getAllPressedKeys();
var _local3 = 0;
while (_local3 < aKeyListeners.length) {
var _local2 = aKeyListeners[_local3];
var _local4 = _local2.getCodesKeys();
if (_local5.length != _local4.length) {
if (_local2.isPressed()) {
_local2.setPressed(false);
_local2.setReleased(true);
_local2.onRelease();
}
} else if (_local2.isEqualByCodesKeys(_local5) && (!_local2.isPressed())) {
_local2.setPressed(true);
_local2.setReleased(false);
_local2.onPress();
return(undefined);
}
_local3++;
}
}
function getAllPressedKeys(Void) {
var _local2 = new Array();
var _local1 = 3;
while (_local1 < 140) {
if (Key.isDown(_local1)) {
_local2.push(_local1);
}
_local1++;
}
return(_local2);
}
function sortKeyListeners(keyListenerA, keyListenerB) {
if (keyListenerA.getCodesKeys().length == keyListenerB.getCodesKeys().length) {
return(0);
}
if (keyListenerA.getCodesKeys().length > keyListenerB.getCodesKeys().length) {
return(1);
}
if (keyListenerA.getCodesKeys().length < keyListenerB.getCodesKeys().length) {
return(-1);
}
}
function addKeyListener(keyListener) {
aKeyListeners.push(keyListener);
aKeyListeners = aKeyListeners.sort(sortKeyListeners, Array.DESCENDING);
trace(aKeyListeners);
return(keyListener.getId());
}
function removeKeyListener(value) {
if (value instanceof gdp.input.keyboard.KeyListener) {
return(removeKeyListenerByKeyListener(value));
}
if (typeof(value) == "number") {
return(removeKeyListenerById(value));
}
}
function removeKeyListenerByKeyListener(keyListener) {
var _local2 = 0;
while (_local2 < aKeyListeners.length) {
if (aKeyListeners[_local2] == keyListener) {
aKeyListeners.splice(_local2, 1);
return(true);
}
_local2++;
}
return(false);
}
function removeKeyListenerById(nId) {
for (var _local3 in aKeyListeners) {
if (gdp.input.keyboard.KeyListener(aKeyListeners[_local3]).getId() == nId) {
aKeyListeners.splice(nId, 1);
return(true);
}
}
return(false);
}
static var KILL = 0;
var aKeyListeners = null;
}
Symbol 373 MovieClip [__Packages.gdp.config.XMLParser] Frame 0
class gdp.config.XMLParser extends gdp.core.base.BaseClass
{
static var aModules;
var xmlString;
function XMLParser (xmlString, bCheckTypeOfFirstChild) {
super();
toInfo(("gdp.config.XMLParser.XMLParser(" + [arguments]) + ")");
if (bCheckTypeOfFirstChild && (xmlString.firstChild != null)) {
if (xmlString.firstChild.nodeType == 3) {
this.xmlString = xmlString;
} else if (xmlString.firstChild.nodeType == 1) {
this.xmlString = xmlString.firstChild;
}
} else {
this.xmlString = xmlString;
}
if (!aModules) {
initModules();
}
}
static function addModule(oModuleClass, nPriority) {
if (aModules == undefined) {
initModules();
}
if (nPriority == undefined) {
aModules.push(oModuleClass);
} else {
aModules.splice(nPriority, 0, oModuleClass);
}
}
static function initModules() {
aModules = new Array();
addModule(gdp.config.modules.XMLImport);
addModule(gdp.config.modules.XML2Beans);
addModule(gdp.config.modules.XML2Class);
addModule(gdp.config.modules.XML2TypedData);
addModule(gdp.config.modules.XML2Array);
addModule(gdp.config.modules.XML2Object);
}
static function setDebug(bValue) {
bDebug = bValue;
}
static function getDebug() {
return(bDebug);
}
function toInfo(sMsg) {
if (getDebug()) {
trace(sMsg);
}
}
function run() {
return(matches(xmlString));
}
function matches(xmlCurrentNode) {
var _local2 = 0;
while (_local2 < aModules.length) {
if (aModules[_local2].match(xmlCurrentNode)) {
var _local3 = new aModules[_local2](xmlCurrentNode, this);
return(_local3.convert());
}
_local2++;
}
return(null);
}
static var bDebug = false;
}
Symbol 374 MovieClip [__Packages.gdp.config.modules.AbstractModule] Frame 0
class gdp.config.modules.AbstractModule extends gdp.core.base.BaseClass
{
var xmlNode, parser;
function AbstractModule (xmlNode, parser) {
super();
if (!xmlNode) {
throw new gdp.env.except.IllegalArgumentException("Undefined xmlNode", this, arguments);
}
this.xmlNode = xmlNode;
this.parser = parser;
}
static function match(xmlNode) {
throw new gdp.env.except.AbstractOperationException("match() is abstract and has to be implemented.", null, arguments);
return(null);
}
function convert() {
throw new gdp.env.except.AbstractOperationException("convert() is abstract and has to be implemented.", this, arguments);
return(null);
}
function toInfo(sMsg) {
parser.toInfo(sMsg);
}
}
Symbol 375 MovieClip [__Packages.gdp.env.except.AbstractThrowable] Frame 0
class gdp.env.except.AbstractThrowable extends Error
{
static var sClassName, sPackageName, sClassNameWithPackage;
var message, thrower, aArgs, name;
function AbstractThrowable (message, thrower, aArgs) {
super();
this.message = message;
this.thrower = thrower;
this.aArgs = aArgs;
name = getClassName();
if (com.kelvinluck.util.LogWrapper.getLog() != null) {
trace(toString());
}
}
function getMessage() {
return(message);
}
function getThrowerName() {
if (thrower instanceof gdp.core.base.BaseClass) {
return(thrower.getClassName());
}
return(gdp.utils.ClassUtil.getClassName(thrower));
}
function getThrowerNameWithPackage() {
if (thrower instanceof gdp.core.base.BaseClass) {
return(thrower.getClassNameWithPackage());
}
return(gdp.utils.ClassUtil.getClassNameWithPackage(thrower));
}
function getArguments() {
return(aArgs);
}
function getClass() {
return(Object(this).__constructor__);
}
function getClassName() {
if (sClassName == undefined) {
sClassName = gdp.utils.ClassUtil.getClassName(getClass());
}
return(sClassName);
}
function getPackageName() {
if (sPackageName == undefined) {
sPackageName = gdp.utils.ClassUtil.getClassPackage(getClass());
}
return(sPackageName);
}
function getClassNameWithPackage() {
if (sClassNameWithPackage == undefined) {
sClassNameWithPackage = (getPackageName() + ".") + getClassName();
}
return(sClassNameWithPackage);
}
function toString() {
return((((("[" + getClassName()) + " in ") + getThrowerName()) + "] :: ") + getMessage());
}
}
Symbol 376 MovieClip [__Packages.gdp.env.except.Throwable] Frame 0
interface gdp.env.except.Throwable
{
}
Symbol 377 MovieClip [__Packages.gdp.env.except.FatalException] Frame 0
class gdp.env.except.FatalException extends gdp.env.except.AbstractThrowable implements gdp.env.except.Throwable
{
function FatalException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 378 MovieClip [__Packages.gdp.env.except.IllegalArgumentException] Frame 0
class gdp.env.except.IllegalArgumentException extends gdp.env.except.FatalException
{
var aArgs;
function IllegalArgumentException (message, thrower, args) {
super(message, thrower, aArgs);
}
}
Symbol 379 MovieClip [__Packages.gdp.env.except.AbstractOperationException] Frame 0
class gdp.env.except.AbstractOperationException extends gdp.env.except.FatalException
{
function AbstractOperationException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 380 MovieClip [__Packages.gdp.config.modules.XMLImport] Frame 0
class gdp.config.modules.XMLImport extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XMLImport (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == IMPORT_NODE);
}
function convert(Void) {
toInfo(("gdp.config.modules.XMLImport.convert(" + [xmlNode]) + ")");
var _local2 = new gdp.config.ConfigLoader(xmlNode.attributes[RESOURCE_ATTRIBUTE], null, true);
return(_local2);
}
static var IMPORT_NODE = "import";
static var RESOURCE_ATTRIBUTE = "resource";
}
Symbol 381 MovieClip [__Packages.gdp.config.ConfigLoader] Frame 0
class gdp.config.ConfigLoader extends gdp.core.base.BaseClass
{
var sConfigFile, xml, fCallback;
function ConfigLoader (sConfigFile, fCallback, bNotAutoLoad) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.sConfigFile = sConfigFile;
xml = new XML();
xml.onLoad = gdp.utils.Delegate.create(this, onXMLLoad);
xml.ignoreWhite = true;
gdp.config.XMLParser.setDebug(bDebug);
if (!bNotAutoLoad) {
load();
}
this.fCallback = fCallback;
}
function load() {
xml.load(sConfigFile);
}
function loadFromString(sXmlConfig) {
xml = new XML();
xml.ignoreWhite = true;
xml.parseXML(sXmlConfig);
trace(xml);
onXMLLoad(true);
}
function psParse() {
if (bParserWait) {
return(null);
}
if (xmlCurrentNode == null) {
xmlCurrentNode = xml.firstChild.firstChild;
} else {
xmlCurrentNode = xmlCurrentNode.nextSibling;
}
if (xmlCurrentNode == null) {
eventManager.dispatch("onLoad", true);
fCallback(true);
return(0);
}
var _local3 = new gdp.config.XMLParser(xmlCurrentNode);
var _local2 = _local3.run();
if (_local2 instanceof gdp.config.ConfigLoader) {
waitLoadImportFile(gdp.config.ConfigLoader(_local2));
}
}
function onXMLLoad(bSuccess) {
if (!bSuccess) {
throw new gdp.env.except.FileNotFoundException(("File [" + sConfigFile) + "] is not found", this, arguments);
}
var _local3 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psParse));
gdp.core.process.ProcessManager.getInstance().addProcess(_local3);
}
function waitLoadImportFile(configLoader) {
oListenerOtherConfigLoader = new Object();
oListenerOtherConfigLoader.onLoad = gdp.utils.Delegate.create(this, onLoadOtherConfine);
configLoader.addListener(oListenerOtherConfigLoader);
configLoader.load();
bParserWait = true;
}
function onLoadOtherConfine(Void) {
var _local2 = gdp.env.events.EventManager.getTarget();
_local2.removeListener(oListenerOtherConfigLoader);
bParserWait = false;
}
static var bDebug = false;
var eventManager = null;
var xmlCurrentNode = null;
var bParserWait = false;
var oListenerOtherConfigLoader = null;
}
Symbol 382 MovieClip [__Packages.gdp.env.except.FileNotFoundException] Frame 0
class gdp.env.except.FileNotFoundException extends gdp.env.except.FatalException
{
function FileNotFoundException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 383 MovieClip [__Packages.gdp.config.modules.XML2Beans] Frame 0
class gdp.config.modules.XML2Beans extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Beans (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return((xmlNode.nodeName == BEANS_NODE) || (xmlNode.nodeName == REF_ATTRIBUTE));
}
function convert() {
toInfo(("gdp.config.modules.XML2Beans.convert(" + [xmlNode.nodeName]) + ")");
switch (xmlNode.nodeName) {
case BEANS_NODE :
gdp.beans.BeansFactoryCollection.addFactory(parseBeanDefinitions(xmlNode), xmlNode.attributes[NAME_ATTRIBUTE]);
break;
case REF_ELEMENT :
return(parseBeanReference(xmlNode));
}
}
function parseBeanDefinitions(xmlRoot) {
var _local5 = new gdp.beans.factory.BeanFactory();
var _local4;
var _local2 = 0;
while (_local2 < xmlRoot.childNodes.length) {
if (xmlRoot.childNodes[_local2].nodeName == BEAN_ELEMENT) {
_local4 = parseBeanDefinitionElement(xmlRoot.childNodes[_local2]);
_local5.addBean(_local4);
}
_local2++;
}
return(_local5);
}
function parseBeanDefinitionElement(xmlElement) {
var _local4 = xmlElement.attributes[ID_ATTRIBUTE];
var _local15 = xmlElement.attributes[NAME_ATTRIBUTE];
var _local6 = xmlElement.attributes[CLASS_ATTRIBUTE];
var _local8 = xmlElement.attributes[PARENT_ATTRIBUTE];
var _local14 = xmlElement.attributes[MOVIECLIP_ATTRIBUTE];
var _local9 = gdp.utils.StringUtil.toBoolean(xmlElement.attributes[SINGLETON_ATTRIBUTE]);
var _local10 = gdp.utils.StringUtil.toBoolean(xmlElement.attributes[LAZY_INIT_ATTRIBUTE]);
var _local11 = xmlElement.attributes[PARENT_ATTRIBUTE];
var _local12 = xmlElement.attributes[FACTORY_METHOD_ATTRIBUTE];
var _local13 = xmlElement.attributes[DESTROY_METHOD_ATTRIBUTE];
var _local7 = parseConstructorArgElements(xmlElement, _local4);
var _local5 = parsePropertyElements(xmlElement, _local4);
var _local3;
if (_local6 != null) {
_local3 = new gdp.beans.factory.support.RootBean(_local4, _local6, _local7, _local5);
_local3.setLazyInit(_local10);
} else if (_local8 != null) {
_local3 = new gdp.beans.factory.support.ChildBean(_local4, _local8, _local7, _local5);
}
_local3.setSingleton(_local9);
return(_local3);
}
function parseConstructorArgElements(xmlElement, sBeanName) {
var _local5 = new gdp.beans.factory.support.ConstructorArgumentValues(xmlElement.childNodes.length);
var _local2 = 0;
while (_local2 < xmlElement.childNodes.length) {
var _local1 = xmlElement.childNodes[_local2];
if (_local1.nodeName == CONSTRUCTOR_ARG_ELEMENT) {
var _local3 = new gdp.config.XMLParser(_local1.firstChild, true);
_local5.addArgument(_local1.attributes[INDEX_ATTRIBUTE], _local3.run());
}
_local2++;
}
return(_local5);
}
function parsePropertyElements(xmlElement, sBeanName) {
var _local5 = new gdp.utils.Properties();
var _local2 = 0;
while (_local2 < xmlElement.childNodes.length) {
var _local1 = xmlElement.childNodes[_local2];
if (_local1.nodeName == PROPERTY_ELEMENT) {
var _local3 = new gdp.config.XMLParser(_local1.firstChild, true);
_local5.setProperty(_local1.attributes[NAME_ATTRIBUTE], _local3.run());
}
_local2++;
}
return(_local5);
}
function parseBeanReference(xmlElement) {
if (xmlElement.firstChild.nodeType == 3) {
return(new gdp.beans.factory.support.ReferenceBean(xmlElement.firstChild.toString()));
}
return(new gdp.beans.factory.support.ReferenceBean(xmlElement.attributes[BEAN_REF_ATTRIBUTE]));
}
static var BEAN_NAME_DELIMITERS = ",; ";
static var BEANS_NODE = "beans";
static var NAME_ATTRIBUTE = "name";
static var BEAN_ELEMENT = "bean";
static var ID_ATTRIBUTE = "id";
static var PARENT_ATTRIBUTE = "parent";
static var CLASS_ATTRIBUTE = "class";
static var MOVIECLIP_ATTRIBUTE = "movieclip";
static var ABSTRACT_ATTRIBUTE = "abstract";
static var SINGLETON_ATTRIBUTE = "singleton";
static var LAZY_INIT_ATTRIBUTE = "lazy-init";
static var AUTOWIRE_ATTRIBUTE = "autowire";
static var DEPENDENCY_CHECK_ATTRIBUTE = "dependency-check";
static var DEPENDS_ON_ATTRIBUTE = "depends-on";
static var INIT_METHOD_ATTRIBUTE = "init-method";
static var DESTROY_METHOD_ATTRIBUTE = "destroy-method";
static var FACTORY_METHOD_ATTRIBUTE = "factory-method";
static var FACTORY_BEAN_ATTRIBUTE = "factory-bean";
static var CONSTRUCTOR_ARG_ELEMENT = "constructor-arg";
static var INDEX_ATTRIBUTE = "index";
static var TYPE_ATTRIBUTE = "type";
static var PROPERTY_ELEMENT = "property";
static var MOVIECLIP_PROPERTY_ELEMENT = "mc-property";
static var REF_ATTRIBUTE = "ref";
static var VALUE_ATTRIBUTE = "value";
static var LOOKUP_METHOD_ELEMENT = "lookup-method";
static var REF_ELEMENT = "ref";
static var IDREF_ELEMENT = "idref";
static var BEAN_REF_ATTRIBUTE = "bean";
static var LOCAL_REF_ATTRIBUTE = "local";
static var PARENT_REF_ATTRIBUTE = "parent";
}
Symbol 384 MovieClip [__Packages.gdp.beans.BeansFactoryCollection] Frame 0
class gdp.beans.BeansFactoryCollection
{
function BeansFactoryCollection () {
}
static function addFactory(beansFactory, sName) {
oMap[sName] = beansFactory;
}
static function getFactoriesMap() {
return(oMap);
}
static function getFactory(sName) {
return(oMap[sName]);
}
static var oMap = new Object();
}
Symbol 385 MovieClip [__Packages.gdp.beans.factory.FactoryBean] Frame 0
interface gdp.beans.factory.FactoryBean
{
}
Symbol 386 MovieClip [__Packages.gdp.beans.factory.BeanDefinition] Frame 0
interface gdp.beans.factory.BeanDefinition
{
}
Symbol 387 MovieClip [__Packages.gdp.utils.Properties] Frame 0
class gdp.utils.Properties extends gdp.core.base.BaseClass
{
var oProps;
function Properties (propOther) {
super();
if (propOther == null) {
oProps = new Object();
} else {
oProps = propOther.clone();
}
}
function isEmpty() {
return(nCountProps == 0);
}
function clone() {
var _local2 = new gdp.utils.Properties();
for (var _local3 in oProps) {
_local2.setProperty(_local3, oProps[_local3]);
}
return(_local2);
}
function mergeProperties(propOther) {
for (var _local3 in propOther.oProps) {
setProperty(_local3, propOther.oProps[_local3]);
}
}
function setProperty(sKey, value) {
if ((sKey != undefined) && (value != undefined)) {
oProps[sKey] = value;
nCountProps++;
}
}
function getProperty(sKey) {
return(oProps[sKey]);
}
function getMethodName(sKey) {
return(SETTER_PREFIX + gdp.utils.StringUtil.ucFirst(sKey));
}
function getMethodsNames() {
var _local2 = new Array();
for (var _local3 in oProps) {
_local2.push(getMethodName(_local3));
}
return(_local2);
}
function setPropertyForClass(sKey, oClass) {
oClass[getMethodName(sKey)](oProps[sKey]);
}
function setAllPropertiesForClass(oClass) {
for (var _local3 in oProps) {
setPropertyForClass(_local3, oClass);
}
}
function description() {
var _local2 = new gdp.data.holder.map.HashMap(oProps);
return(_local2.toString());
}
static var SETTER_PREFIX = "set";
var nCountProps = 0;
}
Symbol 388 MovieClip [__Packages.gdp.data.holder.map.AbstractMap] Frame 0
class gdp.data.holder.map.AbstractMap extends gdp.core.base.BaseClass
{
var put;
function AbstractMap () {
super();
}
function populate(source) {
if (source) {
for (var _local3 in source) {
put(_local3, source[_local3]);
}
}
}
function description() {
var _local5 = gdp.data.holder.Map(this);
var _local3 = "{";
var _local4 = new gdp.data.holder.array.ArrayIterator(_local5.getValues());
var _local2 = new gdp.data.holder.array.ArrayIterator(_local5.getKeys());
while (_local2.hasNext()) {
_local3 = _local3 + ((_local2.next().toString() + "=") + _local4.next().toString());
if (_local2.hasNext()) {
_local3 = _local3 + ", ";
}
}
_local3 = _local3 + "}";
return(_local3);
}
}
Symbol 389 MovieClip [__Packages.gdp.data.holder.Map] Frame 0
interface gdp.data.holder.Map extends gdp.core.base.BaseInterface
{
}
Symbol 390 MovieClip [__Packages.gdp.data.holder.Iterator] Frame 0
interface gdp.data.holder.Iterator
{
}
Symbol 391 MovieClip [__Packages.gdp.data.holder.array.ArrayIterator] Frame 0
class gdp.data.holder.array.ArrayIterator extends gdp.core.base.BaseClass implements gdp.data.holder.Iterator
{
var t, i, __proto__;
function ArrayIterator (target) {
super();
if (!target) {
throw new gdp.env.except.IllegalArgumentException(("Argument 'target' [" + target) + "] must not be 'null' nor 'undefined'.", this, arguments);
}
t = target;
i = -1;
var t = target;
var g = -1;
var p = gdp.data.holder.array.ArrayIterator.prototype;
var s = this;
if ((__proto__ == p) && (t.length > 25)) {
var y = function () {
if (g < (t.length - 1)) {
arguments.callee = p.next;
throw new gdp.data.holder.NoSuchElementException("There is no more element.", this, arguments);
}
return(t[++g]);
};
var x = function () {
s.next = y;
return(t[++g]);
};
var z = function () {
s.next = y;
arguments.callee = p.next;
throw new gdp.data.holder.NoSuchElementException("There is no more element.", this, arguments);
};
next = y;
hasNext = function () {
if (g < (t.length - 1)) {
s.next = x;
return(true);
}
s.next = z;
return(false);
};
remove = function () {
if (g < 0) {
arguments.callee = p.remove;
throw new gdp.env.except.IllegalStateException("You tried to remove an element before calling the 'next' method. There is thus no element selected to remove.", this, arguments);
}
t.splice(g--, 1);
};
}
}
function hasNext() {
return(i < (t.length - 1));
}
function next() {
if (!hasNext()) {
throw new gdp.data.holder.NoSuchElementException("There is no more element.", this, arguments);
}
return(t[++i]);
}
function remove() {
if (i < 0) {
throw new gdp.env.except.IllegalStateException("You tried to remove an element before calling the 'next' method. There is thus no element selected to remove.", this, arguments);
}
t.splice(i--, 1);
}
}
Symbol 392 MovieClip [__Packages.gdp.env.except.Exception] Frame 0
class gdp.env.except.Exception extends gdp.env.except.AbstractThrowable implements gdp.env.except.Throwable
{
var aArgs;
function Exception (message, thrower, args) {
super(message, thrower, aArgs);
}
}
Symbol 393 MovieClip [__Packages.gdp.data.holder.DataHolderException] Frame 0
class gdp.data.holder.DataHolderException extends gdp.env.except.Exception
{
function DataHolderException (message, thrower, args) {
super(message, thrower, args);
}
}
Symbol 394 MovieClip [__Packages.gdp.data.holder.NoSuchElementException] Frame 0
class gdp.data.holder.NoSuchElementException extends gdp.data.holder.DataHolderException
{
function NoSuchElementException (message, thrower, args) {
super(message, thrower, args);
}
}
Symbol 395 MovieClip [__Packages.gdp.env.except.IllegalStateException] Frame 0
class gdp.env.except.IllegalStateException extends gdp.env.except.FatalException
{
function IllegalStateException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 396 MovieClip [__Packages.gdp.data.holder.map.HashMap] Frame 0
class gdp.data.holder.map.HashMap extends gdp.data.holder.map.AbstractMap implements gdp.data.holder.Map
{
var keys, values, populate;
function HashMap (source) {
super();
keys = new Array();
values = new Array();
populate(source);
}
function containsKey(key) {
return(findKey(key) > -1);
}
function containsValue(value) {
return(findValue(value) > -1);
}
function getKeys() {
return(keys.slice());
}
function getValues() {
return(values.slice());
}
function get(key) {
return(values[findKey(key)]);
}
function put(key, value) {
var _local3;
var _local2 = findKey(key);
if (_local2 < 0) {
keys.push(key);
values.push(value);
} else {
_local3 = values[_local2];
values[_local2] = value;
}
return(_local3);
}
function putAll(map) {
var _local4 = map.getValues();
var _local3 = map.getKeys();
var _local5 = _local3.length;
var _local2 = 0;
while (_local2 < _local5) {
put(_local3[_local2], _local4[_local2]);
_local2 = _local2 - -1;
}
}
function clear() {
keys = new Array();
values = new Array();
}
function remove(key) {
var _local2 = findKey(key);
if (_local2 > -1) {
var _local3 = values[_local2];
values.splice(_local2, 1);
keys.splice(_local2, 1);
return(_local3);
}
return(undefined);
}
function iterator() {
return(new gdp.data.holder.map.ValueMapIterator(this));
}
function valueIterator() {
return(iterator());
}
function keyIterator() {
return(new gdp.data.holder.map.KeyMapIterator(this));
}
function size() {
return(keys.length);
}
function isEmpty() {
return(size() < 1);
}
function findValue(value) {
var _local2 = values.length;
_local2--;
while ((!(values[_local2] === value)) && (_local2 > -1)) {
}
return(_local2);
}
function findKey(key) {
var _local2 = keys.length;
_local2--;
while ((!(keys[_local2] === key)) && (_local2 > -1)) {
}
return(_local2);
}
static var __proto__ = gdp.data.holder.map.AbstractMap;
}
Symbol 397 MovieClip [__Packages.gdp.data.holder.map.ValueMapIterator] Frame 0
class gdp.data.holder.map.ValueMapIterator extends gdp.core.base.BaseClass implements gdp.data.holder.Iterator
{
var target, iterator, key;
function ValueMapIterator (target) {
super();
if (!target) {
throw new gdp.env.except.IllegalArgumentException(("The passed-in target map '" + target) + "' is not allowed to be null or undefined.", this, arguments);
}
this.target = target;
iterator = new gdp.data.holder.array.ArrayIterator(target.getKeys());
}
function hasNext() {
return(iterator.hasNext());
}
function next() {
key = iterator.next();
return(target.get(key));
}
function remove() {
iterator.remove();
target.remove(key);
}
}
Symbol 398 MovieClip [__Packages.gdp.data.holder.map.KeyMapIterator] Frame 0
class gdp.data.holder.map.KeyMapIterator extends gdp.core.base.BaseClass implements gdp.data.holder.Iterator
{
var target, iterator, key;
function KeyMapIterator (target) {
super();
if (!target) {
throw new gdp.env.except.IllegalArgumentException(("The passed-in target map '" + target) + "' is not allowed to be null or undefined.", this, arguments);
}
this.target = target;
iterator = new gdp.data.holder.array.ArrayIterator(target.getKeys());
}
function hasNext() {
return(iterator.hasNext());
}
function next() {
key = iterator.next();
return(key);
}
function remove() {
iterator.remove();
target.remove(key);
}
}
Symbol 399 MovieClip [__Packages.gdp.beans.factory.support.ConstructorArgumentValues] Frame 0
class gdp.beans.factory.support.ConstructorArgumentValues extends gdp.core.base.BaseClass
{
var aArgs;
function ConstructorArgumentValues (nArgsCount) {
super();
aArgs = new Array(nArgsCount);
}
function clone() {
var _local2 = new gdp.beans.factory.support.ConstructorArgumentValues(aArgs.length);
_local2.aArgs = aArgs.concat();
return(_local2);
}
function size() {
return(getArgumentsForApply().length);
}
function isEmpty() {
return(getArgumentsForApply().length == 0);
}
function addArgument(nIndex, value) {
aArgs.splice(((nIndex == null) ? (nArgsCount++) : (nIndex)), 1, value);
}
function getArgument(nIndex) {
return(getArgumentsForApply()[nIndex]);
}
function getArgumentsForApply() {
return(gdp.utils.ArrayUtil.rightTrim(aArgs));
}
function description() {
return(("[" + getArgumentsForApply().toString()) + "]");
}
var nArgsCount = 0;
}
Symbol 400 MovieClip [__Packages.gdp.beans.factory.support.AbstractBean] Frame 0
class gdp.beans.factory.support.AbstractBean extends gdp.core.base.BaseClass implements gdp.beans.factory.BeanDefinition
{
var sBeanName, sBeanClassName, oBeanClass, propertiesValues, constuctorArgs, sInitMethodName, sFactoryMethodName, sDestroyMethodName;
function AbstractBean (sName, constArgs, propValues) {
super();
setBeanName(sName);
setConstructorArgumentValues(constArgs.clone());
setPropertyValues(propValues.clone());
}
function getBeanName() {
return(sBeanName);
}
function setBeanName(sValue) {
sBeanName = sValue;
}
function setBeanClassName(sClassName) {
sBeanClassName = sClassName;
oBeanClass = gdp.utils.ClassUtil.getClassByName(sBeanClassName);
if (oBeanClass == undefined) {
throw new gdp.config.IllegalNameOfObjectException(((("Illegal name of class [" + sBeanClassName) + "] in bean [") + getBeanName()) + "]", this, arguments);
}
}
function getBeanClassName() {
return(sBeanClassName);
}
function hasBeanClass() {
return(gdp.utils.ClassUtil.isSubClassOf(oBeanClass, gdp.core.base.BaseClass));
}
function getBeanClass() {
if (!hasBeanClass()) {
throw new gdp.env.except.IllegalStateException(("Bean definition does not carry a resolved bean class [" + getBeanClassName()) + "]", this, arguments);
}
return(oBeanClass);
}
function setSingleton(bValue) {
bSingleton = bValue;
}
function isSingleton() {
return(bSingleton);
}
function setLazyInit(bValue) {
bLazyInit = bValue;
}
function isLazyInit() {
return(bLazyInit);
}
function setPropertyValues(propValues) {
propertiesValues = propValues;
}
function getPropertyValues() {
return(propertiesValues);
}
function setConstructorArgumentValues(constArgs) {
constuctorArgs = constArgs;
}
function getConstructorArgumentValues() {
return(constuctorArgs);
}
function setInitMethod(sValue) {
sInitMethodName = sValue;
}
function getInitMethod() {
return(sInitMethodName);
}
function setFactoryMethod(sValue) {
sFactoryMethodName = sValue;
}
function getFactoryMethod() {
return(sFactoryMethodName);
}
function setDestroyMethod(sValue) {
sDestroyMethodName = sValue;
}
function getDestroyMethod() {
return(sDestroyMethodName);
}
var bSingleton = true;
var bLazyInit = false;
}
Symbol 401 MovieClip [__Packages.gdp.config.IllegalNameOfObjectException] Frame 0
class gdp.config.IllegalNameOfObjectException extends gdp.env.except.FatalException
{
function IllegalNameOfObjectException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 402 MovieClip [__Packages.gdp.beans.factory.support.AbstractBeanFactory] Frame 0
class gdp.beans.factory.support.AbstractBeanFactory extends gdp.core.base.BaseClass implements gdp.beans.factory.FactoryBean
{
var oBeans, oAliasesMaps, oSingletonCache;
function AbstractBeanFactory () {
super();
oBeans = new Object();
oAliasesMaps = new Object();
oSingletonCache = new Object();
}
function addBean(bean) {
if (!(bean instanceof gdp.beans.factory.support.AbstractBean)) {
throw new gdp.beans.IsNotBeanException("Try add info BeanFactory object not extended form AbstractBean", this, arguments);
}
oBeans[bean.getBeanName()] = bean;
}
function getObjectFromBean(sName) {
if (isSingleton(sName) && (oSingletonCache[sName] != null)) {
return(oSingletonCache[sName]);
}
var _local7;
var _local6 = getBean(sName);
if (_local6 instanceof gdp.beans.factory.support.RootBean) {
_local7 = beanBuild(_local6);
} else if (_local6 instanceof gdp.beans.factory.support.ChildBean) {
var _local4 = getAliasMap(sName);
var _local3 = gdp.beans.factory.support.RootBean(getBean(String(_local4.pop())));
var _local2 = _local4.length - 1;
while (_local2 >= 0) {
_local3 = mergeBeans(_local3, gdp.beans.factory.support.ChildBean(getBean(_local4[_local2])));
_local2--;
}
_local7 = beanBuild(_local3);
}
if (isSingleton(sName) && (oSingletonCache[sName] == null)) {
oSingletonCache[sName] = _local7;
}
return(_local7);
}
function getBean(sName) {
if (oBeans[sName] == undefined) {
throw new gdp.beans.BeanNotFoundException(("Bean [" + sName) + "] not found in BeanFactory", this, arguments);
}
return(oBeans[sName]);
}
function containsBeans() {
for (var _local2 in oBeans) {
if (oBeans[_local2] != undefined) {
return(true);
}
}
return(false);
}
function isSingleton(sName) {
return(getBean(sName).isSingleton());
}
function getAliasMap(sBeanName) {
if (oAliasesMaps[sBeanName] != null) {
return(oAliasesMaps[sBeanName]);
}
var _local5 = new Array();
var _local6 = getBean(sBeanName);
if (_local6 instanceof gdp.beans.factory.support.RootBean) {
return([sBeanName]);
}
if (_local6 instanceof gdp.beans.factory.support.ChildBean) {
var _local4 = gdp.beans.factory.support.ChildBean(_local6);
var _local3 = getBean(_local4.getParentName());
_local5.push(_local4.getBeanName());
while ((!(_local3 instanceof gdp.beans.factory.support.RootBean)) && (_local3 != undefined)) {
_local4 = gdp.beans.factory.support.ChildBean(_local3);
_local3 = getBean(_local4.getParentName());
if (gdp.utils.ArrayUtil.contains(_local5, _local4.getBeanName())) {
throw new gdp.beans.factory.xml.IllegalParentExeption((((("Name [" + _local3.getParentName()) + "] of the parent bean") + " in the bean [") + _local3.getBeanName()) + "] is not correct.", this, arguments);
}
_local5.push(_local4.getBeanName());
}
_local5.push(_local3.getBeanName());
}
return((oAliasesMaps[sBeanName] = _local5));
}
function beanBuild(bean) {
var _local3 = bean.getConstructorArgumentValues();
var _local2 = 0;
while (_local2 < _local3.size()) {
if (_local3.getArgument(_local2) instanceof gdp.beans.factory.support.ReferenceBean) {
_local3.addArgument(_local2, getObjectFromBean(_local3.getArgument(_local2).getBeanName()));
}
_local2++;
}
var _local5 = gdp.utils.ClassUtil.createInstance(bean.getBeanClass(), bean.getConstructorArgumentValues().getArgumentsForApply());
bean.getPropertyValues().setAllPropertiesForClass(_local5);
return(_local5);
}
function mergeBeans(rootBean, childBean) {
var _local2 = rootBean.clone();
if (!childBean.getConstructorArgumentValues().isEmpty()) {
_local2.setConstructorArgumentValues(childBean.getConstructorArgumentValues());
}
if (!childBean.getPropertyValues().isEmpty()) {
_local2.getPropertyValues().mergeProperties(childBean.getPropertyValues());
}
if (childBean.isSingleton()) {
_local2.setSingleton(childBean.isSingleton());
}
if (childBean.isLazyInit()) {
_local2.setLazyInit(childBean.isLazyInit());
}
if (childBean.getInitMethod() != null) {
_local2.setInitMethod(childBean.getInitMethod());
}
if (childBean.getFactoryMethod() != null) {
_local2.setFactoryMethod(childBean.getFactoryMethod());
}
if (childBean.getDestroyMethod() != null) {
_local2.setDestroyMethod(childBean.getDestroyMethod());
}
return(_local2);
}
}
Symbol 403 MovieClip [__Packages.gdp.beans.BeansException] Frame 0
class gdp.beans.BeansException extends gdp.env.except.FatalException
{
function BeansException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 404 MovieClip [__Packages.gdp.beans.IsNotBeanException] Frame 0
class gdp.beans.IsNotBeanException extends gdp.beans.BeansException
{
function IsNotBeanException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 405 MovieClip [__Packages.gdp.beans.factory.support.RootBean] Frame 0
class gdp.beans.factory.support.RootBean extends gdp.beans.factory.support.AbstractBean
{
var setBeanClassName, getBeanName, getBeanClassName, getConstructorArgumentValues, getPropertyValues, isSingleton, isLazyInit, getInitMethod, getFactoryMethod, getDestroyMethod, propertiesValues, constuctorArgs, sBeanClassName, bLazyInit, bSingleton, sBeanName;
function RootBean (sBeanName, sClassName, constArgs, propValues) {
super(sBeanName, constArgs, propValues);
setBeanClassName(sClassName);
}
function clone() {
var _local2 = new gdp.beans.factory.support.RootBean(getBeanName(), getBeanClassName(), getConstructorArgumentValues(), getPropertyValues());
_local2.setSingleton(isSingleton());
_local2.setLazyInit(isLazyInit());
_local2.setInitMethod(getInitMethod());
_local2.setFactoryMethod(getFactoryMethod());
_local2.setDestroyMethod(getDestroyMethod());
return(_local2);
}
function description() {
var _local2 = {beanName:sBeanName, singleton:bSingleton, lazyinit:bLazyInit, beanClassName:sBeanClassName, constuctorArguments:constuctorArgs.toString(), propertiesValues:propertiesValues.toString()};
return("Bean Root" + gdp.utils.ObjectUtil.classToString(_local2));
}
}
Symbol 406 MovieClip [__Packages.gdp.beans.factory.support.ChildBean] Frame 0
class gdp.beans.factory.support.ChildBean extends gdp.beans.factory.support.AbstractBean
{
var sParentName, getBeanName, getConstructorArgumentValues, getPropertyValues, isSingleton, isLazyInit, getInitMethod, getFactoryMethod, getDestroyMethod, propertiesValues, constuctorArgs, bSingleton, sBeanName;
function ChildBean (sBeanName, sParentName, constArgs, propValues) {
super(sBeanName, constArgs, propValues);
this.sParentName = sParentName;
}
function clone() {
var _local2 = new gdp.beans.factory.support.ChildBean(getBeanName(), getParentName(), getConstructorArgumentValues(), getPropertyValues());
_local2.setSingleton(isSingleton());
_local2.setLazyInit(isLazyInit());
_local2.setInitMethod(getInitMethod());
_local2.setFactoryMethod(getFactoryMethod());
_local2.setDestroyMethod(getDestroyMethod());
return(_local2);
}
function getParentName() {
return(sParentName);
}
function description() {
var _local2 = {beanName:sBeanName, parentName:sParentName, singleton:bSingleton, constuctorArguments:constuctorArgs.toString(), propertiesValues:propertiesValues.toString()};
return("Bean Child" + gdp.utils.ObjectUtil.classToString(_local2));
}
}
Symbol 407 MovieClip [__Packages.gdp.beans.BeanNotFoundException] Frame 0
class gdp.beans.BeanNotFoundException extends gdp.beans.BeansException
{
function BeanNotFoundException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 408 MovieClip [__Packages.gdp.beans.factory.xml.IllegalParentExeption] Frame 0
class gdp.beans.factory.xml.IllegalParentExeption extends gdp.beans.BeansException
{
function IllegalParentExeption (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 409 MovieClip [__Packages.gdp.beans.factory.support.ReferenceBean] Frame 0
class gdp.beans.factory.support.ReferenceBean extends gdp.core.base.BaseClass
{
var sBeanName;
function ReferenceBean (sBeanName) {
super();
this.sBeanName = sBeanName;
}
function getBeanName() {
return(sBeanName);
}
function description() {
var _local2 = {beanName:sBeanName};
return("Bean Reference " + gdp.utils.ObjectUtil.classToString(_local2, true));
}
}
Symbol 410 MovieClip [__Packages.gdp.beans.factory.BeanFactory] Frame 0
class gdp.beans.factory.BeanFactory extends gdp.beans.factory.support.AbstractBeanFactory
{
var oBeans;
function BeanFactory () {
super();
}
function description() {
var _local2 = new Array();
for (var _local3 in oBeans) {
_local2.push(_local3);
}
var _local4 = {beans:_local2};
return("BeanFactory" + gdp.utils.ObjectUtil.classToString(_local4));
}
}
Symbol 411 MovieClip [__Packages.gdp.config.modules.XML2Class] Frame 0
class gdp.config.modules.XML2Class extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Class (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == CLASS_NODE);
}
function convert() {
toInfo(("gdp.config.modules.XML2Class.convert(" + [xmlNode.nodeName]) + ")");
var _local3 = xmlNode.attributes[NAME_ATTRIBUTE];
var _local5 = gdp.utils.StringUtil.toBoolean(xmlNode.attributes[SINGLETON_ATTRIBUTE]);
var _local6;
var _local4 = gdp.utils.ClassUtil.getClassByName(_local3);
if (_local4 == undefined) {
throw new gdp.config.IllegalNameOfObjectException(("Illegal name of class [" + _local3) + "]", this, arguments);
}
if (_local5) {
if (gdp.env.reflect.ReflectUtil.isMethodStatic("getInstance", _local4)) {
_local6 = _local4.getInstance();
} else {
throw new gdp.env.except.IllegalStateException(("Function getInstance() is not defined in class [" + _local3) + "].", this, arguments);
}
}
var _local8 = parseClassVariables(xmlNode);
var _local7 = parseClassProperties(xmlNode);
setClassVariables(_local8, _local3, _local6, _local4, _local5);
setClassProperties(_local7, _local3, _local6, _local4, _local5);
}
function parseClassVariables(xmlElement) {
var _local5 = new Object();
var _local2 = 0;
while (_local2 < xmlElement.childNodes.length) {
var _local1 = xmlElement.childNodes[_local2];
if (_local1.nodeName == STATIC_VARIABLE_ELEMENT) {
var _local3 = new gdp.config.XMLParser(_local1, true);
_local5[_local1.attributes[NAME_ATTRIBUTE]] = _local3.run();
}
_local2++;
}
return(_local5);
}
function setClassVariables(oVars, sClassName, oInstance, oClass, bSinglenot) {
for (var _local10 in oVars) {
var _local4 = gdp.env.reflect.ReflectUtil.getTypeName(oVars[_local10]);
var _local6 = gdp.env.reflect.ReflectUtil.getTypeName(oClass[_local10]);
var _local7 = gdp.env.reflect.ReflectUtil.getTypeNameForInstance(oInstance);
if ((_local4 == _local6) || (oClass[_local10] == undefined)) {
oClass[_local10] = oVars[_local10];
} else {
throw new gdp.config.modules.type.IllegalTypeException((((((((("In config type of set value '" + oVars[_local10]) + "' is '") + _local4) + "' ") + "and type variable '") + _local10) + "' in class [") + sClassName) + "] discrepancy.", this, arguments);
}
}
}
function parseClassProperties(xmlElement) {
var _local6 = new gdp.utils.Properties();
var _local2 = 0;
while (_local2 < xmlElement.childNodes.length) {
var _local1 = xmlElement.childNodes[_local2];
if (_local1.nodeName == PROPERTY_ELEMENT) {
var _local5 = _local1.attributes[NAME_ATTRIBUTE];
var _local3 = new gdp.config.XMLParser(_local1.firstChild, true);
_local6.setProperty(_local1.attributes[NAME_ATTRIBUTE], _local3.run());
}
_local2++;
}
return(_local6);
}
function setClassProperties(propValues, sClassName, oInstance, oClass, bSinglenot) {
var _local5 = propValues.getMethodsNames();
var _local4 = 0;
while (_local4 < _local5.length) {
var _local3 = _local5[_local4];
if (bSinglenot && (oInstance[_local3] == undefined)) {
throw new gdp.env.except.IllegalStateException(((("Function " + _local3) + "() is not defined in class [") + sClassName) + "].", this, arguments);
} else if ((!bSinglenot) && (!gdp.env.reflect.ReflectUtil.isMethodStatic(_local3, oClass))) {
throw new gdp.env.except.IllegalStateException(((("Static function " + _local3) + "() is not defined in class [") + sClassName) + "].", this, arguments);
}
_local4++;
}
propValues.setAllPropertiesForClass((bSinglenot ? (oInstance) : (oClass)));
}
static var CLASS_NODE = "class";
static var NAME_ATTRIBUTE = "name";
static var SINGLETON_ATTRIBUTE = "singleton";
static var STATIC_VARIABLE_ELEMENT = "static-variable";
static var PROPERTY_ELEMENT = "property";
static var VALUE_ATTRIBUTE = "value";
}
Symbol 412 MovieClip [__Packages.gdp.config.modules.type.IllegalTypeException] Frame 0
class gdp.config.modules.type.IllegalTypeException extends gdp.env.except.FatalException
{
function IllegalTypeException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 413 MovieClip [__Packages.gdp.config.modules.XML2TypedData] Frame 0
class gdp.config.modules.XML2TypedData extends gdp.config.modules.AbstractModule
{
static var oModulesTypes;
var toInfo, xmlNode, parser;
function XML2TypedData (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(((xmlNode.firstChild.nodeType == 3) && (xmlNode.attributes.type == undefined)) || (xmlNode.attributes.type != undefined));
}
static function addType(sTypeName, oClass) {
if (oModulesTypes == undefined) {
initModules();
}
oModulesTypes[sTypeName] = oClass;
}
static function initModules() {
oModulesTypes = new Object();
addType("boolean", gdp.config.modules.type.BooleanType);
addType("number", gdp.config.modules.type.NumberType);
addType("array", gdp.config.modules.type.ArrayType);
addType("matrix", gdp.config.modules.type.MatrixType);
}
function convert() {
toInfo(("gdp.config.modules.XML2TypedData.convert(" + [xmlNode.nodeName]) + ")");
if (oModulesTypes == undefined) {
initModules();
}
var _local4;
var _local5;
var _local3 = xmlNode.attributes.type;
if (_local3 == "String") {
_local4 = xmlNode.firstChild.toString();
} else if (_local3 == undefined) {
_local4 = convertPrimitiveType(xmlNode.firstChild.nodeValue);
} else {
_local5 = oModulesTypes[_local3.toLowerCase()];
if (_local5 == undefined) {
throw new gdp.config.modules.type.IllegalTypeException(("Illegal name of type [" + _local3) + "]", this, arguments);
}
_local4 = gdp.utils.ClassUtil.createInstance(_local5, [xmlNode, parser]).getValue();
}
return(_local4);
}
function convertPrimitiveType(sText) {
if (sText.indexOf(":") == 1) {
var _local2 = sText.charAt(0).toLowerCase();
sText = sText.substring(1);
switch (_local2) {
case "b" :
return(gdp.utils.StringUtil.toBoolean(sText));
case "n" :
return(Number(sText));
return(sText);
}
}
return(sText);
}
}
Symbol 414 MovieClip [__Packages.gdp.config.modules.type.AbstractType] Frame 0
class gdp.config.modules.type.AbstractType extends gdp.core.base.BaseClass
{
var xmlNode, parser, value;
function AbstractType (xmlNode, parser) {
super();
this.xmlNode = xmlNode;
this.parser = parser;
value = convert();
}
function getValue() {
return(value);
}
function convert() {
throw new gdp.env.except.AbstractOperationException("convert() is abstract and has to be implemented.", this, arguments);
return(null);
}
function toInfo(sMsg) {
parser.toInfo(sMsg);
}
}
Symbol 415 MovieClip [__Packages.gdp.config.modules.type.BooleanType] Frame 0
class gdp.config.modules.type.BooleanType extends gdp.config.modules.type.AbstractType
{
var toInfo, xmlNode;
function BooleanType (xmlNode, parser) {
super(xmlNode, parser);
}
function convert() {
toInfo(("gdp.config.modules.type.BooleanType.convert(" + [xmlNode]) + ")");
return(gdp.utils.StringUtil.toBoolean(xmlNode.firstChild.nodeValue));
}
}
Symbol 416 MovieClip [__Packages.gdp.config.modules.type.NumberType] Frame 0
class gdp.config.modules.type.NumberType extends gdp.config.modules.type.AbstractType
{
var toInfo, xmlNode;
function NumberType (xmlNode, parser) {
super(xmlNode, parser);
}
function convert() {
toInfo(("gdp.config.modules.type.NumberType.convert(" + [xmlNode]) + ")");
return(Number(xmlNode.firstChild.nodeValue));
}
}
Symbol 417 MovieClip [__Packages.gdp.config.modules.type.ArrayType] Frame 0
class gdp.config.modules.type.ArrayType extends gdp.config.modules.type.AbstractType
{
var toInfo, xmlNode, parser;
function ArrayType (xmlNode, parser) {
super(xmlNode, parser);
}
function convert() {
toInfo(("gdp.config.modules.type.ArrayType.convert(" + [xmlNode]) + ")");
var _local7 = xmlNode.attributes.itemType;
var _local8 = xmlNode.attributes.separator || ",";
var _local3 = xmlNode.firstChild.nodeValue.split(_local8);
if (_local7 != undefined) {
var _local2 = 0;
while (_local2 < _local3.length) {
var _local5 = new XML(((("<value type=\"" + _local7) + "\">") + _local3[_local2]) + "</value>");
var _local6 = new Object();
var _local4 = new gdp.config.modules.XML2TypedData(_local5.firstChild, parser);
_local3[_local2] = _local4.convert();
_local2++;
}
}
return(_local3);
}
}
Symbol 418 MovieClip [__Packages.gdp.config.modules.type.MatrixType] Frame 0
class gdp.config.modules.type.MatrixType extends gdp.config.modules.type.AbstractType
{
var toInfo, xmlNode;
function MatrixType (xmlNode, parser) {
super(xmlNode, parser);
}
function convert() {
toInfo(("gdp.config.modules.type.MatrixType.convert(" + [xmlNode]) + ")");
var _local7 = xmlNode.attributes.itemType;
var _local8 = xmlNode.attributes.rowSeparator || "|";
var _local6 = xmlNode.attributes.colSeparator || ",";
var _local3 = xmlNode.firstChild.nodeValue.split(_local8);
var _local2 = 0;
while (_local2 < _local3.length) {
var _local4 = new XML(((((("<value type='Array' itemType='" + _local7) + "' separator='") + _local6) + "'>") + _local3[_local2]) + "</value>");
var _local5 = new gdp.config.modules.type.ArrayType(_local4.firstChild);
_local3[_local2] = _local5.getValue();
_local2++;
}
return(_local3);
}
}
Symbol 419 MovieClip [__Packages.gdp.config.modules.XML2Array] Frame 0
class gdp.config.modules.XML2Array extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Array (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == ARRAY_NODE);
}
function convert() {
toInfo(("gdp.config.modules.XML2Array.convert(" + [xmlNode.nodeName]) + ")");
var _local5 = new Array();
var _local8;
var _local4 = 0;
while (_local4 < xmlNode.childNodes.length) {
var _local7 = xmlNode.childNodes[_local4];
var _local6 = _local7.attributes[ID_ATTRIBUTE];
if (_local7.nodeName == ITEM_ELEMENT) {
_local8 = new gdp.config.XMLParser(_local7, true);
var _local3 = _local5.length;
while (_local3 < (_local6 | _local4)) {
_local5[_local3] = undefined;
_local3++;
}
_local5.splice(_local6 | _local4, 0, _local8.run());
} else {
throw new gdp.config.IllegalFormatOfXmlDataException(("Using of the element '" + xmlNode.childNodes[_local4].nodeName) + "' is incorrect. You can use only element 'item' in node 'array'", this, arguments);
}
_local4++;
}
return(_local5);
}
static var ARRAY_NODE = "array";
static var ITEM_ELEMENT = "item";
static var ID_ATTRIBUTE = "id";
}
Symbol 420 MovieClip [__Packages.gdp.config.IllegalFormatOfXmlDataException] Frame 0
class gdp.config.IllegalFormatOfXmlDataException extends gdp.env.except.FatalException
{
function IllegalFormatOfXmlDataException (message, thrower, aArgs) {
super(message, thrower, aArgs);
}
}
Symbol 421 MovieClip [__Packages.gdp.config.modules.XML2Object] Frame 0
class gdp.config.modules.XML2Object extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Object (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == OBJECT_NODE);
}
function convert() {
toInfo(("gdp.config.modules.XML2Object.convert(" + [xmlNode.nodeName]) + ")");
var _local6 = new Object();
var _local3 = 0;
while (_local3 < xmlNode.childNodes.length) {
var _local4 = xmlNode.childNodes[_local3];
if (_local4.nodeName == FIELD_ELEMENT) {
var _local5 = new gdp.config.XMLParser(_local4, true);
_local6[_local4.attributes[NAME_ATTRIBUTE]] = _local5.run();
} else {
throw new gdp.config.IllegalFormatOfXmlDataException(("Using of the element '" + xmlNode.childNodes[_local3].nodeName) + "' is incorrect. You can use only element 'field' in node 'object'", this, arguments);
}
_local3++;
}
return(_local6);
}
static var OBJECT_NODE = "object";
static var FIELD_ELEMENT = "field";
static var NAME_ATTRIBUTE = "name";
}
Symbol 422 MovieClip [__Packages.rainbow.parser.XML2Level] Frame 0
class rainbow.parser.XML2Level extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Level (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == LEVELS_NODE);
}
function convert(Void) {
toInfo(("rainbow.parser.XML2Level.convert(" + [xmlNode.nodeName]) + ")");
var _local2 = 0;
while (_local2 < xmlNode.childNodes.length) {
rainbow.levels.LevelsManager.getInstance().setLevel(parseLevel(xmlNode.childNodes[_local2]));
_local2++;
}
}
function parseLevel(xmlNodeLevel) {
var _local3 = new rainbow.levels.Level();
_local3.setName(xmlNodeLevel.attributes[NAME_ATTRIBUTE]);
_local3.setNumber(parseInt(xmlNodeLevel.attributes[LEVEL_ATTRIBUTE], 10));
_local3.setWebLevels(parseInt(xmlNodeLevel.attributes[WEB_LEVELS_ATTRIBUTE], 10));
_local3.setTime(parseInt(xmlNodeLevel.attributes[TIME_ATTRIBUTE], 10));
_local3.setBallColors(gdp.utils.StringUtil.toTypedArray(xmlNodeLevel.attributes[BALLCOLORS_ATTRIBUTE], ",", Number));
_local3.setBrokenHolesDef(parseBrokenHoles(xmlNodeLevel.attributes[BROKEN_HOLES_ATTRIBUTE]));
var _local4 = 0;
while (_local4 < xmlNodeLevel.childNodes.length) {
var _local2 = xmlNodeLevel.childNodes[_local4];
switch (xmlNodeLevel.childNodes[_local4].nodeName) {
case PHRASES_ELEMENT :
_local3.setPhrases(parsePharases(_local2));
break;
case BROKEN_LINKS_ELEMENT :
_local3.setBrokenLinksDef(parseBrokenLinks(_local2));
break;
case HOLES_DEF_ELEMENT :
_local3.setDefaultBallColor(Number(_local2.attributes[BALLCOLOR_DEFAULT_ATTRIBUTE]));
_local3.setDefaultBallType(_local2.attributes[BALLTYPE_DEFAULT_ATTRIBUTE]);
_local3.setHolesDef(parseHolesDef(_local2));
}
_local4++;
}
return(_local3);
}
function parsePharases(xmlNodePhrases) {
var _local3 = new Array();
var _local1 = 0;
while (_local1 < xmlNodePhrases.childNodes.length) {
_local3.push(xmlNodePhrases.childNodes[_local1].firstChild.nodeValue);
_local1++;
}
return(_local3);
}
function parseBrokenHoles(sBrokenHoles) {
var _local2 = sBrokenHoles.split(",");
var _local1 = 0;
while (_local1 < _local2.length) {
_local2[_local1] = new rainbow.levels.HoleDef({name:_local2[_local1]});
_local1++;
}
return(_local2);
}
function parseBrokenLinks(xmlNodeBrokenLinks) {
var _local1 = new rainbow.parser.XML2Links(xmlNodeBrokenLinks);
return(_local1.convert());
}
function parseHolesDef(xmlNodeHolesDef) {
var _local3 = new Array();
var _local1 = 0;
while (_local1 < xmlNodeHolesDef.childNodes.length) {
_local3.push(new rainbow.levels.HoleDef(xmlNodeHolesDef.childNodes[_local1].attributes));
_local1++;
}
return(_local3);
}
static var LEVELS_NODE = "levels";
static var NAME_ATTRIBUTE = "name";
static var LEVEL_ATTRIBUTE = "level";
static var WEB_LEVELS_ATTRIBUTE = "web_levels";
static var TIME_ATTRIBUTE = "time";
static var BALLCOLORS_ATTRIBUTE = "ballcolors";
static var BROKEN_HOLES_ATTRIBUTE = "broken_holes";
static var PHRASES_ELEMENT = "phrases";
static var BROKEN_LINKS_ELEMENT = "broken_links";
static var LINK_ELEMENT = "link";
static var HOLES_DEF_ELEMENT = "holes_def";
static var BALLCOLOR_DEFAULT_ATTRIBUTE = "ballcolor_default";
static var BALLTYPE_DEFAULT_ATTRIBUTE = "balltype_default";
static var HOLE_DEF_ELEMENT = "hole_def";
static var BALLCOLOR_ATTRIBUTE = "ballcolor";
static var BALLTYPE_ATTRIBUTE = "balltype";
}
Symbol 423 MovieClip [__Packages.rainbow.levels.LevelsManager] Frame 0
class rainbow.levels.LevelsManager extends gdp.core.base.BaseClass
{
static var instance;
function LevelsManager () {
super();
oLevels = new Object();
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.levels.LevelsManager();
}
return(instance);
}
function getLevel(nId) {
return(oLevels[nId]);
}
function setLevel(level) {
oLevels[level.getNumber()] = level;
}
function setCurrentLevel(levelCurrent) {
trace(("rainbow.levels.LevelsManager.setCurrentLevel(" + [arguments]) + ")");
this.levelCurrent = levelCurrent;
}
function getCurrentLevel(Void) {
return(levelCurrent);
}
function getLevelsNumber(Void) {
var _local2 = 0;
for (var _local3 in oLevels) {
if (oLevels[_local3] instanceof rainbow.levels.Level) {
_local2++;
}
}
return(_local2);
}
var oLevels = null;
var levelCurrent = null;
}
Symbol 424 MovieClip [__Packages.rainbow.levels.Level] Frame 0
class rainbow.levels.Level extends gdp.core.base.BaseClass
{
function Level () {
super();
aBallColors = new Array();
aBrokenHoles = new Array();
}
function setName(sName) {
this.sName = sName;
}
function getName(Void) {
return(sName);
}
function getNumberString(Void) {
var _local2 = int(nNumber / 6);
return(((_local2 + 1).toString() + " - ") + (nNumber - (_local2 * 5)).toString());
}
function setNumber(nNumber) {
this.nNumber = nNumber;
}
function getNumber(Void) {
return(nNumber);
}
function setWebLevels(nWebLevels) {
this.nWebLevels = nWebLevels;
}
function getWebLevels(Void) {
return(nWebLevels);
}
function setTime(nTime) {
this.nTime = nTime;
}
function getTime(Void) {
return(nTime);
}
function setBallColors(aBallColors) {
this.aBallColors = aBallColors;
}
function getBallColors(Void) {
return(aBallColors);
}
function setBrokenHolesDef(aBrokenHoles) {
this.aBrokenHoles = aBrokenHoles;
}
function getBrokenHolesDef(Void) {
return(aBrokenHoles);
}
function setPhrases(aPhrases) {
this.aPhrases = aPhrases;
}
function getPhrases(Void) {
return(aPhrases);
}
function setBrokenLinksDef(aBrokenLinks) {
this.aBrokenLinks = aBrokenLinks;
}
function getBrokenLinksDef(Void) {
return(aBrokenLinks);
}
function setDefaultBallColor(nDefaultBallColor) {
this.nDefaultBallColor = nDefaultBallColor;
}
function getDefaultBallColor(Void) {
return(nDefaultBallColor);
}
function setDefaultBallType(nDefaultBallType) {
this.nDefaultBallType = nDefaultBallType;
}
function getDefaultBallType(Void) {
return(nDefaultBallType);
}
function setHolesDef(aHolesDef) {
this.aHolesDef = aHolesDef;
}
function getHolesDef(Void) {
return(aHolesDef);
}
function description(Void) {
var _local2 = {name:sName, number:nNumber, webLevel:nWebLevels, time:nTime, ballColors:aBallColors, brokenHoles:aBrokenHoles, brokenLinks:aBrokenLinks, holesDef:aHolesDef};
return("Level" + gdp.utils.ObjectUtil.classToString(_local2));
}
var sName = null;
var nNumber = null;
var nWebLevels = null;
var nTime = null;
var aBallColors = null;
var aBrokenHoles = null;
var aPhrases = null;
var aBrokenLinks = null;
var aHolesDef = null;
var nDefaultBallColor = null;
var nDefaultBallType = null;
}
Symbol 425 MovieClip [__Packages.rainbow.levels.HoleDef] Frame 0
class rainbow.levels.HoleDef extends gdp.core.base.BaseClass
{
function HoleDef (oHoleDef) {
super();
nLine = Number(oHoleDef.name.substr(5, 1));
nCircle = Number(oHoleDef.name.substr(4, 1));
setName(oHoleDef.name);
setBallType(oHoleDef.balltype);
setBallColor(Number(oHoleDef.ballcolor));
}
function getId(Void) {
return((nCircle + "") + nLine);
}
function getLineNumber(Void) {
return(nLine);
}
function getCircleNumber(Void) {
return(nCircle);
}
function setName(sName) {
this.sName = sName;
}
function getName(Void) {
return(sName);
}
function setBallType(sBallType) {
this.sBallType = sBallType;
}
function getBallType(Void) {
return(sBallType);
}
function setBallColor(nBallColor) {
this.nBallColor = nBallColor;
}
function getBallColor(Void) {
return(nBallColor);
}
function description(Void) {
return(((((("HoleDef (name:" + sName) + ", balltype:") + sBallType) + ", ballcolor:") + nBallColor) + ")");
}
var sName = null;
var sBallType = null;
var nBallColor = null;
var nLine = null;
var nCircle = null;
}
Symbol 426 MovieClip [__Packages.rainbow.parser.XML2Links] Frame 0
class rainbow.parser.XML2Links extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Links (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == LINKS_NODE);
}
function convert(Void) {
toInfo(("rainbow.helpers.XML2Links.convert(" + [xmlNode.nodeName]) + ")");
var _local3 = new Array();
var _local2 = 0;
while (_local2 < xmlNode.childNodes.length) {
_local3.push(new rainbow.levels.LinkDef(xmlNode.childNodes[_local2].attributes));
_local2++;
}
return(_local3);
}
static var LINKS_NODE = "links";
}
Symbol 427 MovieClip [__Packages.rainbow.levels.LinkDef] Frame 0
class rainbow.levels.LinkDef extends gdp.core.base.BaseClass
{
function LinkDef (oBrokenLink) {
super();
sHoleA = oBrokenLink.hole1;
sHoleB = oBrokenLink.hole2;
if ((getCircleHoleA() > getCircleHoleB()) || (getLineHoleA() > getLineHoleB())) {
sHoleA = oBrokenLink.hole2;
sHoleB = oBrokenLink.hole1;
}
sLinkName = (("link" + getIdHoleA()) + "_") + getIdHoleB();
}
function getLineHoleA(Void) {
return(Number(sHoleA.substr(5, 1)));
}
function getCircleHoleA(Void) {
return(Number(sHoleA.substr(4, 1)));
}
function getIdHoleA(Void) {
return(sHoleA.substr(4, 2));
}
function getNameHoleA(Void) {
return(sHoleA);
}
function getLineHoleB(Void) {
return(Number(sHoleB.substr(5, 1)));
}
function getCircleHoleB(Void) {
return(Number(sHoleB.substr(4, 1)));
}
function getIdHoleB(Void) {
return(sHoleB.substr(4, 2));
}
function getNameHoleB(Void) {
return(sHoleB);
}
function getLinkName(Void) {
return(sLinkName);
}
function description(Void) {
return(("LinkDef (" + getLinkName()) + ")");
}
var sHoleA = null;
var sHoleB = null;
var sLinkName = null;
}
Symbol 428 MovieClip [__Packages.rainbow.parser.XML2Font] Frame 0
class rainbow.parser.XML2Font extends gdp.config.modules.AbstractModule
{
var toInfo, xmlNode;
function XML2Font (xmlNode, parser) {
super(xmlNode, parser);
}
static function match(xmlNode) {
return(xmlNode.nodeName == FONT_NODE);
}
function convert(Void) {
toInfo(("rainbow.parser.XML2Font.convert(" + [xmlNode.nodeName]) + ")");
var _local5 = new rainbow.helpers.BitmapFont();
_local5.setName(xmlNode.attributes[NAME_ATTRIBUTE]);
var _local4 = new Object();
var _local3 = 0;
while (_local3 < xmlNode.firstChild.childNodes.length) {
var _local2 = new rainbow.parser.BitmapSymbolDef(xmlNode.firstChild.childNodes[_local3].attributes);
if (xmlNode.attributes[SCALE_ATTRIBUTE] != undefined) {
_local2.setScale(parseFloat(xmlNode.attributes[SCALE_ATTRIBUTE]));
}
_local4[_local2.getScanCode()] = _local2;
_local3++;
}
_local5.setSymbols(_local4);
rainbow.managers.FontManager.getInstance().addFont(_local5);
}
static var FONT_NODE = "font";
static var NAME_ATTRIBUTE = "name";
static var SCALE_ATTRIBUTE = "scale";
}
Symbol 429 MovieClip [__Packages.rainbow.managers.FontManager] Frame 0
class rainbow.managers.FontManager extends gdp.core.base.BaseClass
{
static var instance;
function FontManager () {
super();
oFontsList = new Object();
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.managers.FontManager();
}
return(instance);
}
function getFont(sFontName) {
return(oFontsList[sFontName]);
}
function addFont(font) {
oFontsList[font.getName()] = font;
}
var oFontsList = null;
}
Symbol 430 MovieClip [__Packages.rainbow.core.StandalonConfig] Frame 0
class rainbow.core.StandalonConfig extends gdp.core.base.BaseClass
{
function StandalonConfig () {
super();
}
static var xmlConfigA = "<?xml version='1.0' encoding='UTF-8'?><config><font name='font_ball'><symbols><symbol scancode='32' name='l_32' left='0' top='0' width='11' height='31'/><symbol scancode='33' name='l_33' left='11' top='0' width='14' height='26'/><symbol scancode='34' name='l_34' left='25' top='0' width='13' height='17'/><symbol scancode='35' name='l_35' left='38' top='0' width='20' height='26'/><symbol scancode='36' name='l_36' left='58' top='0' width='17' height='28'/><symbol scancode='37' name='l_37' left='75' top='0' width='22' height='31'/><symbol scancode='38' name='l_38' left='97' top='0' width='21' height='26'/><symbol scancode='39' name='l_39' left='118' top='0' width='9' height='17'/><symbol scancode='40' name='l_40' left='127' top='0' width='16' height='31'/><symbol scancode='41' name='l_41' left='143' top='0' width='16' height='31'/><symbol scancode='42' name='l_42' left='159' top='0' width='17' height='21'/><symbol scancode='43' name='l_43' left='176' top='0' width='18' height='26'/><symbol scancode='44' name='l_44' left='194' top='0' width='11' height='30'/><symbol scancode='45' name='l_45' left='205' top='0' width='13' height='23'/><symbol scancode='46' name='l_46' left='218' top='0' width='12' height='26'/><symbol scancode='47' name='l_47' left='230' top='0' width='14' height='30'/><symbol scancode='48' name='l_48' left='244' top='0' width='18' height='26'/><symbol scancode='49' name='l_49' left='262' top='0' width='14' height='26'/><symbol scancode='50' name='l_50' left='276' top='0' width='17' height='26'/><symbol scancode='51' name='l_51' left='293' top='0' width='18' height='26'/><symbol scancode='52' name='l_52' left='311' top='0' width='17' height='26'/><symbol scancode='53' name='l_53' left='328' top='0' width='17' height='26'/><symbol scancode='54' name='l_54' left='345' top='0' width='17' height='26'/><symbol scancode='55' name='l_55' left='362' top='0' width='16' height='26'/><symbol scancode='56' name='l_56' left='378' top='0' width='17' height='26'/><symbol scancode='57' name='l_57' left='395' top='0' width='17' height='26'/><symbol scancode='58' name='l_58' left='412' top='0' width='13' height='26'/><symbol scancode='59' name='l_59' left='425' top='0' width='14' height='30'/><symbol scancode='60' name='l_60' left='439' top='0' width='18' height='26'/><symbol scancode='61' name='l_61' left='457' top='0' width='18' height='22'/><symbol scancode='62' name='l_62' left='475' top='0' width='18' height='26'/><symbol scancode='63' name='l_63' left='493' top='0' width='16' height='26'/><symbol scancode='64' name='l_64' left='509' top='0' width='25' height='30'/><symbol scancode='65' name='l_65' left='534' top='0' width='21' height='26'/><symbol scancode='66' name='l_66' left='555' top='0' width='23' height='26'/><symbol scancode='67' name='l_67' left='578' top='0' width='19' height='26'/><symbol scancode='68' name='l_68' left='597' top='0' width='22' height='26'/><symbol scancode='69' name='l_69' left='619' top='0' width='18' height='26'/><symbol scancode='70' name='l_70' left='637' top='0' width='20' height='26'/><symbol scancode='71' name='l_71' left='657' top='0' width='20' height='31'/><symbol scancode='72' name='l_72' left='677' top='0' width='26' height='26'/><symbol scancode='73' name='l_73' left='703' top='0' width='19' height='26'/><symbol scancode='74' name='l_74' left='722' top='0' width='18' height='31'/><symbol scancode='75' name='l_75' left='740' top='0' width='25' height='26'/><symbol scancode='76' name='l_76' left='765' top='0' width='20' height='26'/><symbol scancode='77' name='l_77' left='785' top='0' width='28' height='26'/><symbol scancode='78' name='l_78' left='813' top='0' width='26' height='26'/><symbol scancode='79' name='l_79' left='839' top='0' width='20' height='26'/><symbol scancode='80' name='l_80' left='859' top='0' width='22' height='26'/><symbol scancode='81' name='l_81' left='881' top='0' width='20' height='26'/><symbol scancode='82' name='l_82' left='901' top='0' width='24' height='26'/><symbol scancode='83' name='l_83' left='925' top='0' width='18' height='26'/><symbol scancode='84' name='l_84' left='943' top='0' width='21' height='26'/><symbol scancode='85' name='l_85' left='964' top='0' width='23' height='26'/><symbol scancode='86' name='l_86' left='987' top='0' width='21' height='26'/><symbol scancode='87' name='l_87' left='1008' top='0' width='27' height='26'/><symbol scancode='88' name='l_88' left='1035' top='0' width='22' height='26'/><symbol scancode='89' name='l_89' left='1057' top='0' width='23' height='31'/><symbol scancode='90' name='l_90' left='1080' top='0' width='19' height='26'/><symbol scancode='91' name='l_91' left='1099' top='0' width='17' height='30'/><symbol scancode='92' name='l_92' left='1116' top='0' width='14' height='31'/><symbol scancode='93' name='l_93' left='1130' top='0' width='18' height='30'/><symbol scancode='94' name='l_94' left='1148' top='0' width='17' height='19'/><symbol scancode='95' name='l_95' left='1165' top='0' width='18' height='29'/><symbol scancode='96' name='l_96' left='1183' top='0' width='11' height='16'/><symbol scancode='97' name='l_97' left='1194' top='0' width='19' height='26'/><symbol scancode='98' name='l_98' left='1213' top='0' width='17' height='26'/><symbol scancode='99' name='l_99' left='1230' top='0' width='16' height='26'/><symbol scancode='100' name='l_100' left='1246' top='0' width='19' height='26'/><symbol scancode='101' name='l_101' left='1265' top='0' width='16' height='26'/><symbol scancode='102' name='l_102' left='1281' top='0' width='16' height='31'/><symbol scancode='103' name='l_103' left='1297' top='0' width='18' height='31'/><symbol scancode='104' name='l_104' left='1315' top='0' width='18' height='26'/><symbol scancode='105' name='l_105' left='1333' top='0' width='13' height='26'/><symbol scancode='106' name='l_106' left='1346' top='0' width='16' height='31'/><symbol scancode='107' name='l_107' left='1362' top='0' width='18' height='26'/><symbol scancode='108' name='l_108' left='1380' top='0' width='15' height='26'/><symbol scancode='109' name='l_109' left='1395' top='0' width='23' height='26'/><symbol scancode='110' name='l_110' left='1418' top='0' width='18' height='26'/><symbol scancode='111' name='l_111' left='1436' top='0' width='17' height='26'/><symbol scancode='112' name='l_112' left='1453' top='0' width='18' height='31'/><symbol scancode='113' name='l_113' left='1471' top='0' width='19' height='31'/><symbol scancode='114' name='l_114' left='1490' top='0' width='16' height='26'/><symbol scancode='115' name='l_115' left='1506' top='0' width='15' height='26'/><symbol scancode='116' name='l_116' left='1521' top='0' width='14' height='26'/><symbol scancode='117' name='l_117' left='1535' top='0' width='19' height='26'/><symbol scancode='118' name='l_118' left='1554' top='0' width='17' height='26'/><symbol scancode='119' name='l_119' left='1571' top='0' width='22' height='26'/><symbol scancode='120' name='l_120' left='1593' top='0' width='20' height='26'/><symbol scancode='121' name='l_121' left='1613' top='0' width='19' height='31'/><symbol scancode='122' name='l_122' left='1632' top='0' width='18' height='26'/><symbol scancode='123' name='l_123' left='1650' top='0' width='13' height='30'/><symbol scancode='124' name='l_124' left='1663' top='0' width='9' height='31'/><symbol scancode='125' name='l_125' left='1672' top='0' width='13' height='30'/><symbol scancode='126' name='l_126' left='1685' top='0' width='18' height='21'/><symbol scancode='127' name='l_127' left='1703' top='0' width='14' height='26'/><symbol scancode='128' name='l_128' left='1717' top='0' width='12' height='26'/><symbol scancode='129' name='l_129' left='1729' top='0' width='12' height='26'/><symbol scancode='130' name='l_130' left='1741' top='0' width='12' height='26'/><symbol scancode='131' name='l_131' left='1753' top='0' width='12' height='26'/><symbol scancode='132' name='l_132' left='1765' top='0' width='12' height='26'/><symbol scancode='133' name='l_133' left='1777' top='0' width='6' height='31'/><symbol scancode='134' name='l_134' left='1783' top='0' width='12' height='26'/><symbol scancode='135' name='l_135' left='1795' top='0' width='12' height='26'/><symbol scancode='136' name='l_136' left='1807' top='0' width='12' height='26'/><symbol scancode='137' name='l_137' left='1819' top='0' width='12' height='26'/><symbol scancode='138' name='l_138' left='1831' top='0' width='12' height='26'/><symbol scancode='139' name='l_139' left='1843' top='0' width='12' height='26'/><symbol scancode='140' name='l_140' left='1855' top='0' width='12' height='26'/><symbol scancode='141' name='l_141' left='1867' top='0' width='12' height='26'/><symbol scancode='142' name='l_142' left='1879' top='0' width='12' height='26'/><symbol scancode='143' name='l_143' left='1891' top='0' width='12' height='26'/><symbol scancode='144' name='l_144' left='1903' top='0' width='12' height='26'/><symbol scancode='145' name='l_145' left='1915' top='0' width='12' height='26'/><symbol scancode='146' name='l_146' left='1927' top='0' width='12' height='26'/><symbol scancode='147' name='l_147' left='1939' top='0' width='12' height='26'/><symbol scancode='148' name='l_148' left='1951' top='0' width='12' height='26'/><symbol scancode='149' name='l_149' left='1963' top='0' width='12' height='26'/><symbol scancode='150' name='l_150' left='1975' top='0' width='12' height='26'/><symbol scancode='151' name='l_151' left='1987' top='0' width='12' height='26'/><symbol scancode='152' name='l_152' left='1999' top='0' width='12' height='26'/><symbol scancode='153' name='l_153' left='2011' top='0' width='12' height='26'/><symbol scancode='154' name='l_154' left='2023' top='0' width='12' height='26'/><symbol scancode='155' name='l_155' left='2035' top='0' width='12' height='26'/><symbol scancode='156' name='l_156' left='2047' top='0' width='12' height='26'/><symbol scancode='157' name='l_157' left='2059' top='0' width='12' height='26'/><symbol scancode='158' name='l_158' left='2071' top='0' width='12' height='26'/><symbol scancode='159' name='l_159' left='2083' top='0' width='12' height='26'/><symbol scancode='160' name='l_160' left='2095' top='0' width='11' height='31'/><symbol scancode='161' name='l_161' left='2106' top='0' width='14' height='26'/><symbol scancode='162' name='l_162' left='2120' top='0' width='15' height='30'/><symbol scancode='163' name='l_163' left='2135' top='0' width='20' height='26'/><symbol scancode='164' name='l_164' left='2155' top='0' width='18' height='24'/><symbol scancode='165' name='l_165' left='2173' top='0' width='21' height='26'/><symbol scancode='166' name='l_166' left='2194' top='0' width='9' height='30'/><symbol scancode='167' name='l_167' left='2203' top='0' width='18' height='30'/><symbol scancode='168' name='l_168' left='2221' top='0' width='14' height='16'/><symbol scancode='169' name='l_169' left='2235' top='0' width='22' height='26'/><symbol scancode='170' name='l_170' left='2257' top='0' width='15' height='17'/><symbol scancode='171' name='l_171' left='2272' top='0' width='16' height='26'/><symbol scancode='172' name='l_172' left='2288' top='0' width='18' height='24'/><symbol scancode='173' name='l_173' left='2306' top='0' width='13' height='23'/><symbol scancode='174' name='l_174' left='2319' top='0' width='22' height='26'/><symbol scancode='175' name='l_175' left='2341' top='0' width='18' height='10'/><symbol scancode='176' name='l_176' left='2359' top='0' width='14' height='19'/><symbol scancode='177' name='l_177' left='2373' top='0' width='18' height='26'/><symbol scancode='178' name='l_178' left='2391' top='0' width='13' height='20'/><symbol scancode='179' name='l_179' left='2404' top='0' width='13' height='20'/><symbol scancode='180' name='l_180' left='2417' top='0' width='12' height='16'/><symbol scancode='181' name='l_181' left='2429' top='0' width='20' height='30'/><symbol scancode='182' name='l_182' left='2449' top='0' width='19' height='30'/><symbol scancode='183' name='l_183' left='2468' top='0' width='12' height='20'/><symbol scancode='184' name='l_184' left='2480' top='0' width='12' height='31'/><symbol scancode='185' name='l_185' left='2492' top='0' width='12' height='20'/><symbol scancode='186' name='l_186' left='2504' top='0' width='14' height='17'/><symbol scancode='187' name='l_187' left='2518' top='0' width='16' height='26'/><symbol scancode='188' name='l_188' left='2534' top='0' width='21' height='29'/><symbol scancode='189' name='l_189' left='2555' top='0' width='21' height='29'/><symbol scancode='190' name='l_190' left='2576' top='0' width='22' height='29'/><symbol scancode='191' name='l_191' left='2598' top='0' width='15' height='26'/><symbol scancode='192' name='l_192' left='2613' top='0' width='21' height='26'/><symbol scancode='193' name='l_193' left='2634' top='0' width='21' height='26'/><symbol scancode='194' name='l_194' left='2655' top='0' width='21' height='26'/><symbol scancode='195' name='l_195' left='2676' top='0' width='21' height='26'/><symbol scancode='196' name='l_196' left='2697' top='0' width='21' height='26'/><symbol scancode='197' name='l_197' left='2718' top='0' width='21' height='26'/><symbol scancode='198' name='l_198' left='2739' top='0' width='25' height='26'/><symbol scancode='199' name='l_199' left='2764' top='0' width='19' height='30'/><symbol scancode='200' name='l_200' left='2783' top='0' width='18' height='26'/><symbol scancode='201' name='l_201' left='2801' top='0' width='18' height='26'/><symbol scancode='202' name='l_202' left='2819' top='0' width='18' height='26'/><symbol scancode='203' name='l_203' left='2837' top='0' width='18' height='26'/><symbol scancode='204' name='l_204' left='2855' top='0' width='19' height='26'/><symbol scancode='205' name='l_205' left='2874' top='0' width='20' height='26'/><symbol scancode='206' name='l_206' left='2894' top='0' width='19' height='26'/><symbol scancode='207' name='l_207' left='2913' top='0' width='19' height='26'/><symbol scancode='208' name='l_208' left='2932' top='0' width='22' height='26'/><symbol scancode='209' name='l_209' left='2954' top='0' width='26' height='26'/><symbol scancode='210' name='l_210' left='2980' top='0' width='20' height='26'/><symbol scancode='211' name='l_211' left='3000' top='0' width='20' height='26'/><symbol scancode='212' name='l_212' left='3020' top='0' width='20' height='26'/><symbol scancode='213' name='l_213' left='3040' top='0' width='20' height='26'/><symbol scancode='214' name='l_214' left='3060' top='0' width='20' height='26'/><symbol scancode='215' name='l_215' left='3080' top='0' width='18' height='26'/><symbol scancode='216' name='l_216' left='3098' top='0' width='20' height='27'/><symbol scancode='217' name='l_217' left='3118' top='0' width='23' height='26'/><symbol scancode='218' name='l_218' left='3141' top='0' width='23' height='26'/><symbol scancode='219' name='l_219' left='3164' top='0' width='23' height='26'/><symbol scancode='220' name='l_220' left='3187' top='0' width='23' height='26'/><symbol scancode='221' name='l_221' left='3210' top='0' width='23' height='31'/><symbol scancode='222' name='l_222' left='3233' top='0' width='23' height='26'/><symbol scancode='223' name='l_223' left='3256' top='0' width='19' height='31'/><symbol scancode='224' name='l_224' left='3275' top='0' width='19' height='26'/><symbol scancode='225' name='l_225' left='3294' top='0' width='19' height='26'/><symbol scancode='226' name='l_226' left='3313' top='0' width='19' height='26'/><symbol scancode='227' name='l_227' left='3332' top='0' width='19' height='26'/><symbol scancode='228' name='l_228' left='3351' top='0' width='19' height='26'/><symbol scancode='229' name='l_229' left='3370' top='0' width='19' height='26'/><symbol scancode='230' name='l_230' left='3389' top='0' width='21' height='26'/><symbol scancode='231' name='l_231' left='3410' top='0' width='16' height='30'/><symbol scancode='232' name='l_232' left='3426' top='0' width='16' height='26'/><symbol scancode='233' name='l_233' left='3442' top='0' width='17' height='26'/><symbol scancode='234' name='l_234' left='3459' top='0' width='16' height='26'/><symbol scancode='235' name='l_235' left='3475' top='0' width='16' height='26'/><symbol scancode='236' name='l_236' left='3491' top='0' width='13' height='26'/><symbol scancode='237' name='l_237' left='3504' top='0' width='15' height='26'/><symbol scancode='238' name='l_238' left='3519' top='0' width='15' height='26'/><symbol scancode='239' name='l_239' left='3534' top='0' width='15' height='26'/><symbol scancode='240' name='l_240' left='3549' top='0' width='16' height='26'/><symbol scancode='241' name='l_241' left='3565' top='0' width='18' height='26'/><symbol scancode='242' name='l_242' left='3583' top='0' width='17' height='26'/><symbol scancode='243' name='l_243' left='3600' top='0' width='17' height='26'/><symbol scancode='244' name='l_244' left='3617' top='0' width='17' height='26'/><symbol scancode='245' name='l_245' left='3634' top='0' width='17' height='26'/><symbol scancode='246' name='l_246' left='3651' top='0' width='17' height='26'/><symbol scancode='247' name='l_247' left='3668' top='0' width='18' height='26'/><symbol scancode='248' name='l_248' left='3686' top='0' width='17' height='27'/><symbol scancode='249' name='l_249' left='3703' top='0' width='19' height='26'/><symbol scancode='250' name='l_250' left='3722' top='0' width='19' height='26'/><symbol scancode='251' name='l_251' left='3741' top='0' width='19' height='26'/><symbol scancode='252' name='l_252' left='3760' top='0' width='19' height='26'/><symbol scancode='253' name='l_253' left='3779' top='0' width='19' height='31'/><symbol scancode='254' name='l_254' left='3798' top='0' width='18' height='31'/><symbol scancode='255' name='l_255' left='3816' top='0' width='19' height='31'/></symbols></font><font name='font_uncover'><symbols><symbol scancode='32' name='l_32' left='0' top='0' width='5' height='25'/><symbol scancode='33' name='l_33' left='5' top='0' width='8' height='20'/><symbol scancode='34' name='l_34' left='13' top='0' width='7' height='11'/><symbol scancode='35' name='l_35' left='20' top='0' width='14' height='20'/><symbol scancode='36' name='l_36' left='34' top='0' width='11' height='22'/><symbol scancode='37' name='l_37' left='45' top='0' width='16' height='25'/><symbol scancode='38' name='l_38' left='61' top='0' width='15' height='20'/><symbol scancode='39' name='l_39' left='76' top='0' width='3' height='11'/><symbol scancode='40' name='l_40' left='79' top='0' width='10' height='25'/><symbol scancode='41' name='l_41' left='89' top='0' width='10' height='25'/><symbol scancode='42' name='l_42' left='99' top='0' width='11' height='15'/><symbol scancode='43' name='l_43' left='110' top='0' width='12' height='20'/><symbol scancode='44' name='l_44' left='122' top='0' width='5' height='24'/><symbol scancode='45' name='l_45' left='127' top='0' width='7' height='17'/><symbol scancode='46' name='l_46' left='134' top='0' width='6' height='20'/><symbol scancode='47' name='l_47' left='140' top='0' width='8' height='24'/><symbol scancode='48' name='l_48' left='148' top='0' width='12' height='20'/><symbol scancode='49' name='l_49' left='160' top='0' width='8' height='20'/><symbol scancode='50' name='l_50' left='168' top='0' width='11' height='20'/><symbol scancode='51' name='l_51' left='179' top='0' width='12' height='20'/><symbol scancode='52' name='l_52' left='191' top='0' width='11' height='20'/><symbol scancode='53' name='l_53' left='202' top='0' width='11' height='20'/><symbol scancode='54' name='l_54' left='213' top='0' width='11' height='20'/><symbol scancode='55' name='l_55' left='224' top='0' width='10' height='20'/><symbol scancode='56' name='l_56' left='234' top='0' width='11' height='20'/><symbol scancode='57' name='l_57' left='245' top='0' width='11' height='20'/><symbol scancode='58' name='l_58' left='256' top='0' width='7' height='20'/><symbol scancode='59' name='l_59' left='263' top='0' width='8' height='24'/><symbol scancode='60' name='l_60' left='271' top='0' width='12' height='20'/><symbol scancode='61' name='l_61' left='283' top='0' width='12' height='16'/><symbol scancode='62' name='l_62' left='295' top='0' width='12' height='20'/><symbol scancode='63' name='l_63' left='307' top='0' width='10' height='20'/><symbol scancode='64' name='l_64' left='317' top='0' width='19' height='24'/><symbol scancode='65' name='l_65' left='336' top='0' width='15' height='20'/><symbol scancode='66' name='l_66' left='351' top='0' width='17' height='20'/><symbol scancode='67' name='l_67' left='368' top='0' width='13' height='20'/><symbol scancode='68' name='l_68' left='381' top='0' width='16' height='20'/><symbol scancode='69' name='l_69' left='397' top='0' width='12' height='20'/><symbol scancode='70' name='l_70' left='409' top='0' width='14' height='20'/><symbol scancode='71' name='l_71' left='423' top='0' width='14' height='25'/><symbol scancode='72' name='l_72' left='437' top='0' width='20' height='20'/><symbol scancode='73' name='l_73' left='457' top='0' width='13' height='20'/><symbol scancode='74' name='l_74' left='470' top='0' width='12' height='25'/><symbol scancode='75' name='l_75' left='482' top='0' width='19' height='20'/><symbol scancode='76' name='l_76' left='501' top='0' width='14' height='20'/><symbol scancode='77' name='l_77' left='515' top='0' width='22' height='20'/><symbol scancode='78' name='l_78' left='537' top='0' width='20' height='20'/><symbol scancode='79' name='l_79' left='557' top='0' width='14' height='20'/><symbol scancode='80' name='l_80' left='571' top='0' width='16' height='20'/><symbol scancode='81' name='l_81' left='587' top='0' width='14' height='20'/><symbol scancode='82' name='l_82' left='601' top='0' width='18' height='20'/><symbol scancode='83' name='l_83' left='619' top='0' width='12' height='20'/><symbol scancode='84' name='l_84' left='631' top='0' width='15' height='20'/><symbol scancode='85' name='l_85' left='646' top='0' width='17' height='20'/><symbol scancode='86' name='l_86' left='663' top='0' width='15' height='20'/><symbol scancode='87' name='l_87' left='678' top='0' width='21' height='20'/><symbol scancode='88' name='l_88' left='699' top='0' width='16' height='20'/><symbol scancode='89' name='l_89' left='715' top='0' width='17' height='25'/><symbol scancode='90' name='l_90' left='732' top='0' width='13' height='20'/><symbol scancode='91' name='l_91' left='745' top='0' width='11' height='24'/><symbol scancode='92' name='l_92' left='756' top='0' width='8' height='25'/><symbol scancode='93' name='l_93' left='764' top='0' width='12' height='24'/><symbol scancode='94' name='l_94' left='776' top='0' width='11' height='13'/><symbol scancode='95' name='l_95' left='787' top='0' width='12' height='23'/><symbol scancode='96' name='l_96' left='799' top='0' width='5' height='10'/><symbol scancode='97' name='l_97' left='804' top='0' width='13' height='20'/><symbol scancode='98' name='l_98' left='817' top='0' width='11' height='20'/><symbol scancode='99' name='l_99' left='828' top='0' width='10' height='20'/><symbol scancode='100' name='l_100' left='838' top='0' width='13' height='20'/><symbol scancode='101' name='l_101' left='851' top='0' width='10' height='20'/><symbol scancode='102' name='l_102' left='861' top='0' width='10' height='25'/><symbol scancode='103' name='l_103' left='871' top='0' width='12' height='25'/><symbol scancode='104' name='l_104' left='883' top='0' width='12' height='20'/><symbol scancode='105' name='l_105' left='895' top='0' width='7' height='20'/><symbol scancode='106' name='l_106' left='902' top='0' width='10' height='25'/><symbol scancode='107' name='l_107' left='912' top='0' width='12' height='20'/><symbol scancode='108' name='l_108' left='924' top='0' width='9' height='20'/><symbol scancode='109' name='l_109' left='933' top='0' width='17' height='20'/><symbol scancode='110' name='l_110' left='950' top='0' width='12' height='20'/><symbol scancode='111' name='l_111' left='962' top='0' width='11' height='20'/><symbol scancode='112' name='l_112' left='973' top='0' width='12' height='25'/><symbol scancode='113' name='l_113' left='985' top='0' width='13' height='25'/><symbol scancode='114' name='l_114' left='998' top='0' width='10' height='20'/><symbol scancode='115' name='l_115' left='1008' top='0' width='9' height='20'/><symbol scancode='116' name='l_116' left='1017' top='0' width='8' height='20'/><symbol scancode='117' name='l_117' left='1025' top='0' width='13' height='20'/><symbol scancode='118' name='l_118' left='1038' top='0' width='11' height='20'/><symbol scancode='119' name='l_119' left='1049' top='0' width='16' height='20'/><symbol scancode='120' name='l_120' left='1065' top='0' width='14' height='20'/><symbol scancode='121' name='l_121' left='1079' top='0' width='13' height='25'/><symbol scancode='122' name='l_122' left='1092' top='0' width='12' height='20'/><symbol scancode='123' name='l_123' left='1104' top='0' width='7' height='24'/><symbol scancode='124' name='l_124' left='1111' top='0' width='3' height='25'/><symbol scancode='125' name='l_125' left='1114' top='0' width='7' height='24'/><symbol scancode='126' name='l_126' left='1121' top='0' width='12' height='15'/><symbol scancode='127' name='l_127' left='1133' top='0' width='8' height='20'/><symbol scancode='128' name='l_128' left='1141' top='0' width='6' height='20'/><symbol scancode='129' name='l_129' left='1147' top='0' width='6' height='20'/><symbol scancode='130' name='l_130' left='1153' top='0' width='6' height='20'/><symbol scancode='131' name='l_131' left='1159' top='0' width='6' height='20'/><symbol scancode='132' name='l_132' left='1165' top='0' width='6' height='20'/><symbol scancode='133' name='l_133' left='1171' top='0' width='0' height='25'/><symbol scancode='134' name='l_134' left='1171' top='0' width='6' height='20'/><symbol scancode='135' name='l_135' left='1177' top='0' width='6' height='20'/><symbol scancode='136' name='l_136' left='1183' top='0' width='6' height='20'/><symbol scancode='137' name='l_137' left='1189' top='0' width='6' height='20'/><symbol scancode='138' name='l_138' left='1195' top='0' width='6' height='20'/><symbol scancode='139' name='l_139' left='1201' top='0' width='6' height='20'/><symbol scancode='140' name='l_140' left='1207' top='0' width='6' height='20'/><symbol scancode='141' name='l_141' left='1213' top='0' width='6' height='20'/><symbol scancode='142' name='l_142' left='1219' top='0' width='6' height='20'/><symbol scancode='143' name='l_143' left='1225' top='0' width='6' height='20'/><symbol scancode='144' name='l_144' left='1231' top='0' width='6' height='20'/><symbol scancode='145' name='l_145' left='1237' top='0' width='6' height='20'/><symbol scancode='146' name='l_146' left='1243' top='0' width='6' height='20'/><symbol scancode='147' name='l_147' left='1249' top='0' width='6' height='20'/><symbol scancode='148' name='l_148' left='1255' top='0' width='6' height='20'/><symbol scancode='149' name='l_149' left='1261' top='0' width='6' height='20'/><symbol scancode='150' name='l_150' left='1267' top='0' width='6' height='20'/><symbol scancode='151' name='l_151' left='1273' top='0' width='6' height='20'/><symbol scancode='152' name='l_152' left='1279' top='0' width='6' height='20'/><symbol scancode='153' name='l_153' left='1285' top='0' width='6' height='20'/><symbol scancode='154' name='l_154' left='1291' top='0' width='6' height='20'/><symbol scancode='155' name='l_155' left='1297' top='0' width='6' height='20'/><symbol scancode='156' name='l_156' left='1303' top='0' width='6' height='20'/><symbol scancode='157' name='l_157' left='1309' top='0' width='6' height='20'/><symbol scancode='158' name='l_158' left='1315' top='0' width='6' height='20'/><symbol scancode='159' name='l_159' left='1321' top='0' width='6' height='20'/><symbol scancode='160' name='l_160' left='1327' top='0' width='5' height='25'/><symbol scancode='161' name='l_161' left='1332' top='0' width='8' height='20'/><symbol scancode='162' name='l_162' left='1340' top='0' width='9' height='24'/><symbol scancode='163' name='l_163' left='1349' top='0' width='14' height='20'/><symbol scancode='164' name='l_164' left='1363' top='0' width='12' height='18'/><symbol scancode='165' name='l_165' left='1375' top='0' width='15' height='20'/><symbol scancode='166' name='l_166' left='1390' top='0' width='3' height='24'/><symbol scancode='167' name='l_167' left='1393' top='0' width='12' height='24'/><symbol scancode='168' name='l_168' left='1405' top='0' width='8' height='10'/><symbol scancode='169' name='l_169' left='1413' top='0' width='16' height='20'/><symbol scancode='170' name='l_170' left='1429' top='0' width='9' height='11'/><symbol scancode='171' name='l_171' left='1438' top='0' width='10' height='20'/><symbol scancode='172' name='l_172' left='1448' top='0' width='12' height='18'/><symbol scancode='173' name='l_173' left='1460' top='0' width='7' height='17'/><symbol scancode='174' name='l_174' left='1467' top='0' width='16' height='20'/><symbol scancode='175' name='l_175' left='1483' top='0' width='12' height='4'/><symbol scancode='176' name='l_176' left='1495' top='0' width='8' height='13'/><symbol scancode='177' name='l_177' left='1503' top='0' width='12' height='20'/><symbol scancode='178' name='l_178' left='1515' top='0' width='7' height='14'/><symbol scancode='179' name='l_179' left='1522' top='0' width='7' height='14'/><symbol scancode='180' name='l_180' left='1529' top='0' width='6' height='10'/><symbol scancode='181' name='l_181' left='1535' top='0' width='14' height='24'/><symbol scancode='182' name='l_182' left='1549' top='0' width='13' height='24'/><symbol scancode='183' name='l_183' left='1562' top='0' width='6' height='14'/><symbol scancode='184' name='l_184' left='1568' top='0' width='6' height='25'/><symbol scancode='185' name='l_185' left='1574' top='0' width='6' height='14'/><symbol scancode='186' name='l_186' left='1580' top='0' width='8' height='11'/><symbol scancode='187' name='l_187' left='1588' top='0' width='10' height='20'/><symbol scancode='188' name='l_188' left='1598' top='0' width='15' height='23'/><symbol scancode='189' name='l_189' left='1613' top='0' width='15' height='23'/><symbol scancode='190' name='l_190' left='1628' top='0' width='16' height='23'/><symbol scancode='191' name='l_191' left='1644' top='0' width='9' height='20'/><symbol scancode='192' name='l_192' left='1653' top='0' width='15' height='20'/><symbol scancode='193' name='l_193' left='1668' top='0' width='15' height='20'/><symbol scancode='194' name='l_194' left='1683' top='0' width='15' height='20'/><symbol scancode='195' name='l_195' left='1698' top='0' width='15' height='20'/><symbol scancode='196' name='l_196' left='1713' top='0' width='15' height='20'/><symbol scancode='197' name='l_197' left='1728' top='0' width='15' height='20'/><symbol scancode='198' name='l_198' left='1743' top='0' width='19' height='20'/><symbol scancode='199' name='l_199' left='1762' top='0' width='13' height='24'/><symbol scancode='200' name='l_200' left='1775' top='0' width='12' height='20'/><symbol scancode='201' name='l_201' left='1787' top='0' width='12' height='20'/><symbol scancode='202' name='l_202' left='1799' top='0' width='12' height='20'/><symbol scancode='203' name='l_203' left='1811' top='0' width='12' height='20'/><symbol scancode='204' name='l_204' left='1823' top='0' width='13' height='20'/><symbol scancode='205' name='l_205' left='1836' top='0' width='14' height='20'/><symbol scancode='206' name='l_206' left='1850' top='0' width='13' height='20'/><symbol scancode='207' name='l_207' left='1863' top='0' width='13' height='20'/><symbol scancode='208' name='l_208' left='1876' top='0' width='16' height='20'/><symbol scancode='209' name='l_209' left='1892' top='0' width='20' height='20'/><symbol scancode='210' name='l_210' left='1912' top='0' width='14' height='20'/><symbol scancode='211' name='l_211' left='1926' top='0' width='14' height='20'/><symbol scancode='212' name='l_212' left='1940' top='0' width='14' height='20'/><symbol scancode='213' name='l_213' left='1954' top='0' width='14' height='20'/><symbol scancode='214' name='l_214' left='1968' top='0' width='14' height='20'/><symbol scancode='215' name='l_215' left='1982' top='0' width='12' height='20'/><symbol scancode='216' name='l_216' left='1994' top='0' width='14' height='21'/><symbol scancode='217' name='l_217' left='2008' top='0' width='17' height='20'/><symbol scancode='218' name='l_218' left='2025' top='0' width='17' height='20'/><symbol scancode='219' name='l_219' left='2042' top='0' width='17' height='20'/><symbol scancode='220' name='l_220' left='2059' top='0' width='17' height='20'/><symbol scancode='221' name='l_221' left='2076' top='0' width='17' height='25'/><symbol scancode='222' name='l_222' left='2093' top='0' width='17' height='20'/><symbol scancode='223' name='l_223' left='2110' top='0' width='13' height='25'/><symbol scancode='224' name='l_224' left='2123' top='0' width='13' height='20'/><symbol scancode='225' name='l_225' left='2136' top='0' width='13' height='20'/><symbol scancode='226' name='l_226' left='2149' top='0' width='13' height='20'/><symbol scancode='227' name='l_227' left='2162' top='0' width='13' height='20'/><symbol scancode='228' name='l_228' left='2175' top='0' width='13' height='20'/><symbol scancode='229' name='l_229' left='2188' top='0' width='13' height='20'/><symbol scancode='230' name='l_230' left='2201' top='0' width='15' height='20'/><symbol scancode='231' name='l_231' left='2216' top='0' width='10' height='24'/><symbol scancode='232' name='l_232' left='2226' top='0' width='10' height='20'/><symbol scancode='233' name='l_233' left='2236' top='0' width='11' height='20'/><symbol scancode='234' name='l_234' left='2247' top='0' width='10' height='20'/><symbol scancode='235' name='l_235' left='2257' top='0' width='10' height='20'/><symbol scancode='236' name='l_236' left='2267' top='0' width='7' height='20'/><symbol scancode='237' name='l_237' left='2274' top='0' width='9' height='20'/><symbol scancode='238' name='l_238' left='2283' top='0' width='9' height='20'/><symbol scancode='239' name='l_239' left='2292' top='0' width='9' height='20'/><symbol scancode='240' name='l_240' left='2301' top='0' width='10' height='20'/><symbol scancode='241' name='l_241' left='2311' top='0' width='12' height='20'/><symbol scancode='242' name='l_242' left='2323' top='0' width='11' height='20'/><symbol scancode='243' name='l_243' left='2334' top='0' width='11' height='20'/><symbol scancode='244' name='l_244' left='2345' top='0' width='11' height='20'/><symbol scancode='245' name='l_245' left='2356' top='0' width='11' height='20'/><symbol scancode='246' name='l_246' left='2367' top='0' width='11' height='20'/><symbol scancode='247' name='l_247' left='2378' top='0' width='12' height='20'/><symbol scancode='248' name='l_248' left='2390' top='0' width='11' height='21'/><symbol scancode='249' name='l_249' left='2401' top='0' width='13' height='20'/><symbol scancode='250' name='l_250' left='2414' top='0' width='13' height='20'/><symbol scancode='251' name='l_251' left='2427' top='0' width='13' height='20'/><symbol scancode='252' name='l_252' left='2440' top='0' width='13' height='20'/><symbol scancode='253' name='l_253' left='2453' top='0' width='13' height='25'/><symbol scancode='254' name='l_254' left='2466' top='0' width='12' height='25'/><symbol scancode='255' name='l_255' left='2478' top='0' width='13' height='25'/></symbols></font><font name='font_text'><symbols><symbol scancode='32' name='l_32' left='0' top='0' width='5' height='25'/><symbol scancode='33' name='l_33' left='5' top='0' width='8' height='20'/><symbol scancode='34' name='l_34' left='13' top='0' width='7' height='11'/><symbol scancode='35' name='l_35' left='20' top='0' width='14' height='20'/><symbol scancode='36' name='l_36' left='34' top='0' width='11' height='22'/><symbol scancode='37' name='l_37' left='45' top='0' width='16' height='25'/><symbol scancode='38' name='l_38' left='61' top='0' width='15' height='20'/><symbol scancode='39' name='l_39' left='76' top='0' width='3' height='11'/><symbol scancode='40' name='l_40' left='79' top='0' width='10' height='25'/><symbol scancode='41' name='l_41' left='89' top='0' width='10' height='25'/><symbol scancode='42' name='l_42' left='99' top='0' width='11' height='15'/><symbol scancode='43' name='l_43' left='110' top='0' width='12' height='20'/><symbol scancode='44' name='l_44' left='122' top='0' width='5' height='24'/><symbol scancode='45' name='l_45' left='127' top='0' width='7' height='17'/><symbol scancode='46' name='l_46' left='134' top='0' width='6' height='20'/><symbol scancode='47' name='l_47' left='140' top='0' width='8' height='24'/><symbol scancode='48' name='l_48' left='148' top='0' width='12' height='20'/><symbol scancode='49' name='l_49' left='160' top='0' width='8' height='20'/><symbol scancode='50' name='l_50' left='168' top='0' width='11' height='20'/><symbol scancode='51' name='l_51' left='179' top='0' width='12' height='20'/><symbol scancode='52' name='l_52' left='191' top='0' width='11' height='20'/><symbol scancode='53' name='l_53' left='202' top='0' width='11' height='20'/><symbol scancode='54' name='l_54' left='213' top='0' width='11' height='20'/><symbol scancode='55' name='l_55' left='224' top='0' width='10' height='20'/><symbol scancode='56' name='l_56' left='234' top='0' width='11' height='20'/><symbol scancode='57' name='l_57' left='245' top='0' width='11' height='20'/><symbol scancode='58' name='l_58' left='256' top='0' width='7' height='20'/><symbol scancode='59' name='l_59' left='263' top='0' width='8' height='24'/><symbol scancode='60' name='l_60' left='271' top='0' width='12' height='20'/><symbol scancode='61' name='l_61' left='283' top='0' width='12' height='16'/><symbol scancode='62' name='l_62' left='295' top='0' width='12' height='20'/><symbol scancode='63' name='l_63' left='307' top='0' width='10' height='20'/><symbol scancode='64' name='l_64' left='317' top='0' width='19' height='24'/><symbol scancode='65' name='l_65' left='336' top='0' width='15' height='20'/><symbol scancode='66' name='l_66' left='351' top='0' width='17' height='20'/><symbol scancode='67' name='l_67' left='368' top='0' width='13' height='20'/><symbol scancode='68' name='l_68' left='381' top='0' width='16' height='20'/><symbol scancode='69' name='l_69' left='397' top='0' width='12' height='20'/><symbol scancode='70' name='l_70' left='409' top='0' width='14' height='20'/><symbol scancode='71' name='l_71' left='423' top='0' width='14' height='25'/><symbol scancode='72' name='l_72' left='437' top='0' width='20' height='20'/><symbol scancode='73' name='l_73' left='457' top='0' width='13' height='20'/><symbol scancode='74' name='l_74' left='470' top='0' width='12' height='25'/><symbol scancode='75' name='l_75' left='482' top='0' width='19' height='20'/><symbol scancode='76' name='l_76' left='501' top='0' width='14' height='20'/><symbol scancode='77' name='l_77' left='515' top='0' width='22' height='20'/><symbol scancode='78' name='l_78' left='537' top='0' width='20' height='20'/><symbol scancode='79' name='l_79' left='557' top='0' width='14' height='20'/><symbol scancode='80' name='l_80' left='571' top='0' width='16' height='20'/><symbol scancode='81' name='l_81' left='587' top='0' width='14' height='20'/><symbol scancode='82' name='l_82' left='601' top='0' width='18' height='20'/><symbol scancode='83' name='l_83' left='619' top='0' width='12' height='20'/><symbol scancode='84' name='l_84' left='631' top='0' width='15' height='20'/><symbol scancode='85' name='l_85' left='646' top='0' width='17' height='20'/><symbol scancode='86' name='l_86' left='663' top='0' width='15' height='20'/><symbol scancode='87' name='l_87' left='678' top='0' width='21' height='20'/><symbol scancode='88' name='l_88' left='699' top='0' width='16' height='20'/><symbol scancode='89' name='l_89' left='715' top='0' width='17' height='25'/><symbol scancode='90' name='l_90' left='732' top='0' width='13' height='20'/><symbol scancode='91' name='l_91' left='745' top='0' width='11' height='24'/><symbol scancode='92' name='l_92' left='756' top='0' width='8' height='25'/><symbol scancode='93' name='l_93' left='764' top='0' width='12' height='24'/><symbol scancode='94' name='l_94' left='776' top='0' width='11' height='13'/><symbol scancode='95' name='l_95' left='787' top='0' width='12' height='23'/><symbol scancode='96' name='l_96' left='799' top='0' width='5' height='10'/><symbol scancode='97' name='l_97' left='804' top='0' width='13' height='20'/><symbol scancode='98' name='l_98' left='817' top='0' width='11' height='20'/><symbol scancode='99' name='l_99' left='828' top='0' width='10' height='20'/><symbol scancode='100' name='l_100' left='838' top='0' width='13' height='20'/><symbol scancode='101' name='l_101' left='851' top='0' width='10' height='20'/><symbol scancode='102' name='l_102' left='861' top='0' width='10' height='25'/><symbol scancode='103' name='l_103' left='871' top='0' width='12' height='25'/><symbol scancode='104' name='l_104' left='883' top='0' width='12' height='20'/><symbol scancode='105' name='l_105' left='895' top='0' width='7' height='20'/><symbol scancode='106' name='l_106' left='902' top='0' width='10' height='25'/><symbol scancode='107' name='l_107' left='912' top='0' width='12' height='20'/><symbol scancode='108' name='l_108' left='924' top='0' width='9' height='20'/><symbol scancode='109' name='l_109' left='933' top='0' width='17' height='20'/><symbol scancode='110' name='l_110' left='950' top='0' width='12' height='20'/><symbol scancode='111' name='l_111' left='962' top='0' width='11' height='20'/><symbol scancode='112' name='l_112' left='973' top='0' width='12' height='25'/><symbol scancode='113' name='l_113' left='985' top='0' width='13' height='25'/><symbol scancode='114' name='l_114' left='998' top='0' width='10' height='20'/><symbol scancode='115' name='l_115' left='1008' top='0' width='9' height='20'/><symbol scancode='116' name='l_116' left='1017' top='0' width='8' height='20'/><symbol scancode='117' name='l_117' left='1025' top='0' width='13' height='20'/><symbol scancode='118' name='l_118' left='1038' top='0' width='11' height='20'/><symbol scancode='119' name='l_119' left='1049' top='0' width='16' height='20'/><symbol scancode='120' name='l_120' left='1065' top='0' width='14' height='20'/><symbol scancode='121' name='l_121' left='1079' top='0' width='13' height='25'/><symbol scancode='122' name='l_122' left='1092' top='0' width='12' height='20'/><symbol scancode='123' name='l_123' left='1104' top='0' width='7' height='24'/><symbol scancode='124' name='l_124' left='1111' top='0' width='3' height='25'/><symbol scancode='125' name='l_125' left='1114' top='0' width='7' height='24'/><symbol scancode='126' name='l_126' left='1121' top='0' width='12' height='15'/><symbol scancode='127' name='l_127' left='1133' top='0' width='8' height='20'/><symbol scancode='128' name='l_128' left='1141' top='0' width='6' height='20'/><symbol scancode='129' name='l_129' left='1147' top='0' width='6' height='20'/><symbol scancode='130' name='l_130' left='1153' top='0' width='6' height='20'/><symbol scancode='131' name='l_131' left='1159' top='0' width='6' height='20'/><symbol scancode='132' name='l_132' left='1165' top='0' width='6' height='20'/><symbol scancode='133' name='l_133' left='1171' top='0' width='0' height='25'/><symbol scancode='134' name='l_134' left='1171' top='0' width='6' height='20'/><symbol scancode='135' name='l_135' left='1177' top='0' width='6' height='20'/><symbol scancode='136' name='l_136' left='1183' top='0' width='6' height='20'/><symbol scancode='137' name='l_137' left='1189' top='0' width='6' height='20'/><symbol scancode='138' name='l_138' left='1195' top='0' width='6' height='20'/><symbol scancode='139' name='l_139' left='1201' top='0' width='6' height='20'/><symbol scancode='140' name='l_140' left='1207' top='0' width='6' height='20'/><symbol scancode='141' name='l_141' left='1213' top='0' width='6' height='20'/><symbol scancode='142' name='l_142' left='1219' top='0' width='6' height='20'/><symbol scancode='143' name='l_143' left='1225' top='0' width='6' height='20'/><symbol scancode='144' name='l_144' left='1231' top='0' width='6' height='20'/><symbol scancode='145' name='l_145' left='1237' top='0' width='6' height='20'/><symbol scancode='146' name='l_146' left='1243' top='0' width='6' height='20'/><symbol scancode='147' name='l_147' left='1249' top='0' width='6' height='20'/><symbol scancode='148' name='l_148' left='1255' top='0' width='6' height='20'/><symbol scancode='149' name='l_149' left='1261' top='0' width='6' height='20'/><symbol scancode='150' name='l_150' left='1267' top='0' width='6' height='20'/><symbol scancode='151' name='l_151' left='1273' top='0' width='6' height='20'/><symbol scancode='152' name='l_152' left='1279' top='0' width='6' height='20'/><symbol scancode='153' name='l_153' left='1285' top='0' width='6' height='20'/><symbol scancode='154' name='l_154' left='1291' top='0' width='6' height='20'/><symbol scancode='155' name='l_155' left='1297' top='0' width='6' height='20'/><symbol scancode='156' name='l_156' left='1303' top='0' width='6' height='20'/><symbol scancode='157' name='l_157' left='1309' top='0' width='6' height='20'/><symbol scancode='158' name='l_158' left='1315' top='0' width='6' height='20'/><symbol scancode='159' name='l_159' left='1321' top='0' width='6' height='20'/><symbol scancode='160' name='l_160' left='1327' top='0' width='5' height='25'/><symbol scancode='161' name='l_161' left='1332' top='0' width='8' height='20'/><symbol scancode='162' name='l_162' left='1340' top='0' width='9' height='24'/><symbol scancode='163' name='l_163' left='1349' top='0' width='14' height='20'/><symbol scancode='164' name='l_164' left='1363' top='0' width='12' height='18'/><symbol scancode='165' name='l_165' left='1375' top='0' width='15' height='20'/><symbol scancode='166' name='l_166' left='1390' top='0' width='3' height='24'/><symbol scancode='167' name='l_167' left='1393' top='0' width='12' height='24'/><symbol scancode='168' name='l_168' left='1405' top='0' width='8' height='10'/><symbol scancode='169' name='l_169' left='1413' top='0' width='16' height='20'/><symbol scancode='170' name='l_170' left='1429' top='0' width='9' height='11'/><symbol scancode='171' name='l_171' left='1438' top='0' width='10' height='20'/><symbol scancode='172' name='l_172' left='1448' top='0' width='12' height='18'/><symbol scancode='173' name='l_173' left='1460' top='0' width='7' height='17'/><symbol scancode='174' name='l_174' left='1467' top='0' width='16' height='20'/><symbol scancode='175' name='l_175' left='1483' top='0' width='12' height='4'/><symbol scancode='176' name='l_176' left='1495' top='0' width='8' height='13'/><symbol scancode='177' name='l_177' left='1503' top='0' width='12' height='20'/><symbol scancode='178' name='l_178' left='1515' top='0' width='7' height='14'/><symbol scancode='179' name='l_179' left='1522' top='0' width='7' height='14'/><symbol scancode='180' name='l_180' left='1529' top='0' width='6' height='10'/><symbol scancode='181' name='l_181' left='1535' top='0' width='14' height='24'/><symbol scancode='182' name='l_182' left='1549' top='0' width='13' height='24'/><symbol scancode='183' name='l_183' left='1562' top='0' width='6' height='14'/><symbol scancode='184' name='l_184' left='1568' top='0' width='6' height='25'/><symbol scancode='185' name='l_185' left='1574' top='0' width='6' height='14'/><symbol scancode='186' name='l_186' left='1580' top='0' width='8' height='11'/><symbol scancode='187' name='l_187' left='1588' top='0' width='10' height='20'/><symbol scancode='188' name='l_188' left='1598' top='0' width='15' height='23'/><symbol scancode='189' name='l_189' left='1613' top='0' width='15' height='23'/><symbol scancode='190' name='l_190' left='1628' top='0' width='16' height='23'/><symbol scancode='191' name='l_191' left='1644' top='0' width='9' height='20'/><symbol scancode='192' name='l_192' left='1653' top='0' width='15' height='20'/><symbol scancode='193' name='l_193' left='1668' top='0' width='15' height='20'/><symbol scancode='194' name='l_194' left='1683' top='0' width='15' height='20'/><symbol scancode='195' name='l_195' left='1698' top='0' width='15' height='20'/><symbol scancode='196' name='l_196' left='1713' top='0' width='15' height='20'/><symbol scancode='197' name='l_197' left='1728' top='0' width='15' height='20'/><symbol scancode='198' name='l_198' left='1743' top='0' width='19' height='20'/><symbol scancode='199' name='l_199' left='1762' top='0' width='13' height='24'/><symbol scancode='200' name='l_200' left='1775' top='0' width='12' height='20'/><symbol scancode='201' name='l_201' left='1787' top='0' width='12' height='20'/><symbol scancode='202' name='l_202' left='1799' top='0' width='12' height='20'/><symbol scancode='203' name='l_203' left='1811' top='0' width='12' height='20'/><symbol scancode='204' name='l_204' left='1823' top='0' width='13' height='20'/><symbol scancode='205' name='l_205' left='1836' top='0' width='14' height='20'/><symbol scancode='206' name='l_206' left='1850' top='0' width='13' height='20'/><symbol scancode='207' name='l_207' left='1863' top='0' width='13' height='20'/><symbol scancode='208' name='l_208' left='1876' top='0' width='16' height='20'/><symbol scancode='209' name='l_209' left='1892' top='0' width='20' height='20'/><symbol scancode='210' name='l_210' left='1912' top='0' width='14' height='20'/><symbol scancode='211' name='l_211' left='1926' top='0' width='14' height='20'/><symbol scancode='212' name='l_212' left='1940' top='0' width='14' height='20'/><symbol scancode='213' name='l_213' left='1954' top='0' width='14' height='20'/><symbol scancode='214' name='l_214' left='1968' top='0' width='14' height='20'/><symbol scancode='215' name='l_215' left='1982' top='0' width='12' height='20'/><symbol scancode='216' name='l_216' left='1994' top='0' width='14' height='21'/><symbol scancode='217' name='l_217' left='2008' top='0' width='17' height='20'/><symbol scancode='218' name='l_218' left='2025' top='0' width='17' height='20'/><symbol scancode='219' name='l_219' left='2042' top='0' width='17' height='20'/><symbol scancode='220' name='l_220' left='2059' top='0' width='17' height='20'/><symbol scancode='221' name='l_221' left='2076' top='0' width='17' height='25'/><symbol scancode='222' name='l_222' left='2093' top='0' width='17' height='20'/><symbol scancode='223' name='l_223' left='2110' top='0' width='13' height='25'/><symbol scancode='224' name='l_224' left='2123' top='0' width='13' height='20'/><symbol scancode='225' name='l_225' left='2136' top='0' width='13' height='20'/><symbol scancode='226' name='l_226' left='2149' top='0' width='13' height='20'/><symbol scancode='227' name='l_227' left='2162' top='0' width='13' height='20'/><symbol scancode='228' name='l_228' left='2175' top='0' width='13' height='20'/><symbol scancode='229' name='l_229' left='2188' top='0' width='13' height='20'/><symbol scancode='230' name='l_230' left='2201' top='0' width='15' height='20'/><symbol scancode='231' name='l_231' left='2216' top='0' width='10' height='24'/><symbol scancode='232' name='l_232' left='2226' top='0' width='10' height='20'/><symbol scancode='233' name='l_233' left='2236' top='0' width='11' height='20'/><symbol scancode='234' name='l_234' left='2247' top='0' width='10' height='20'/><symbol scancode='235' name='l_235' left='2257' top='0' width='10' height='20'/><symbol scancode='236' name='l_236' left='2267' top='0' width='7' height='20'/><symbol scancode='237' name='l_237' left='2274' top='0' width='9' height='20'/><symbol scancode='238' name='l_238' left='2283' top='0' width='9' height='20'/><symbol scancode='239' name='l_239' left='2292' top='0' width='9' height='20'/><symbol scancode='240' name='l_240' left='2301' top='0' width='10' height='20'/><symbol scancode='241' name='l_241' left='2311' top='0' width='12' height='20'/><symbol scancode='242' name='l_242' left='2323' top='0' width='11' height='20'/><symbol scancode='243' name='l_243' left='2334' top='0' width='11' height='20'/><symbol scancode='244' name='l_244' left='2345' top='0' width='11' height='20'/><symbol scancode='245' name='l_245' left='2356' top='0' width='11' height='20'/><symbol scancode='246' name='l_246' left='2367' top='0' width='11' height='20'/><symbol scancode='247' name='l_247' left='2378' top='0' width='12' height='20'/><symbol scancode='248' name='l_248' left='2390' top='0' width='11' height='21'/><symbol scancode='249' name='l_249' left='2401' top='0' width='13' height='20'/><symbol scancode='250' name='l_250' left='2414' top='0' width='13' height='20'/><symbol scancode='251' name='l_251' left='2427' top='0' width='13' height='20'/><symbol scancode='252' name='l_252' left='2440' top='0' width='13' height='20'/><symbol scancode='253' name='l_253' left='2453' top='0' width='13' height='25'/><symbol scancode='254' name='l_254' left='2466' top='0' width='12' height='25'/><symbol scancode='255' name='l_255' left='2478' top='0' width='13' height='25'/></symbols></font>";
static var xmlConfigB = "<class name='rainbow.managers.PlayerManager'><static-variable name='SCORE_FOR_BEADS' type='number'>10</static-variable> <!-- --><static-variable name='SCORE_FOR_LETTER' type='number'>100</static-variable> <!-- \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD --><static-variable name='LIVES' type='number'>3</static-variable> <!-- \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD --><static-variable name='TIME2SCORE' type='number'>10</static-variable> <!-- \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD --><static-variable name='TIME4HINT' type='number'>10</static-variable> <!-- \uFFFD\uFFFD\uFFFD\uFFFD\uFFFD --><static-variable name='SYMBOLS_SCORE_SPEED' type='number'>2</static-variable><static-variable name='SYMBOLS_SCORE_MAX_HEIGHT_FLY' type='number'>60</static-variable><static-variable name='SYMBOLS_SCORE_FADE' type='boolean'>false</static-variable><static-variable name='SYMBOLS_COMBO_SPEED' type='number'>2</static-variable><static-variable name='SYMBOLS_COMBO_MAX_HEIGHT_FLY' type='number'>60</static-variable><static-variable name='SYMBOLS_COMBO_FADE' type='boolean'>false</static-variable></class><class name='rainbow.core.Game'><static-variable name='DOWNLOAD_FULL_VERSION_URL'>http://www.2dplay.com/downloadgame.php?gameid=1287</static-variable><static-variable name='DOWNLOAD_FULL_VERSION_TARGET'>_blank</static-variable></class><levels><level name='level01' level='1' web_levels='4' time='300' ballcolors='0,2,3,4' broken_holes='hole50,hole51,hole52,hole53,hole54,hole55,hole56,hole57'><phrases><phrase>Pathway</phrase><phrase>Rainbow</phrase></phrases><broken_links><link hole1='hole51' hole2='hole52' /><link hole1='hole52' hole2='hole53' /><link hole1='hole53' hole2='hole54' /><link hole1='hole54' hole2='hole55' /><link hole1='hole55' hole2='hole56' /><link hole1='hole56' hole2='hole57' /><link hole1='hole57' hole2='hole50' /><link hole1='hole50' hole2='hole51' /></broken_links><holes_def ballcolor_default='-1' balltype_default='R'><hole_def name='hole20' balltype='W' ballcolor='-1' /><hole_def name='hole30' balltype='C' ballcolor='-1' /><hole_def name='hole40' balltype='C' ballcolor='-1' /><hole_def name='hole21' balltype='W' ballcolor='-1' /><hole_def name='hole31' balltype='C' ballcolor='-1' /><hole_def name='hole41' balltype='C' ballcolor='-1' /><hole_def name='hole22' balltype='W' ballcolor='-1' /><hole_def name='hole32' balltype='C' ballcolor='-1' /><hole_def name='hole42' balltype='C' ballcolor='-1' /><hole_def name='hole23' balltype='W' ballcolor='-1' /><hole_def name='hole33' balltype='C' ballcolor='-1' /><hole_def name='hole43' balltype='C' ballcolor='-1' /><hole_def name='hole24' balltype='C' ballcolor='-1' /><hole_def name='hole34' balltype='C' ballcolor='-1' /><hole_def name='hole44' balltype='C' ballcolor='-1' /><hole_def name='hole15' balltype='C' ballcolor='-1' /><hole_def name='hole25' balltype='W' ballcolor='-1' /><hole_def name='hole35' balltype='C' ballcolor='-1' /><hole_def name='hole45' balltype='C' ballcolor='-1' /><hole_def name='hole16' balltype='C' ballcolor='-1' /><hole_def name='hole26' balltype='W' ballcolor='-1' /><hole_def name='hole36' balltype='C' ballcolor='-1' /><hole_def name='hole46' balltype='C' ballcolor='-1' /><hole_def name='hole27' balltype='W' ballcolor='-1' /><hole_def name='hole37' balltype='C' ballcolor='-1' /><hole_def name='hole47' balltype='C' ballcolor='-1' /></holes_def></level><level name='level02' level='2' web_levels='4' time='300' ballcolors='0,2,3,4' broken_holes='hole50,hole51,hole52,hole53,hole54,hole55,hole56,hole57'><phrases><phrase>Tall Pillars</phrase><phrase>Glory Road</phrase></phrases><broken_links><link hole1='hole51' hole2='hole52' /><link hole1='hole52' hole2='hole53' /><link hole1='hole53' hole2='hole54' /><link hole1='hole54' hole2='hole55' /><link hole1='hole55' hole2='hole56' /><link hole1='hole56' hole2='hole57' /><link hole1='hole57' hole2='hole50' /><link hole1='hole50' hole2='hole51' /></broken_links><holes_def ballcolor_default='-1' balltype_default='R'><hole_def name='hole10' balltype='W' ballcolor='-1' /><hole_def name='hole17' balltype='W' ballcolor='-1' /><hole_def name='hole20' balltype='C' ballcolor='-1' /><hole_def name='hole30' balltype='W' ballcolor='-1' /><hole_def name='hole40' balltype='C' ballcolor='4' /><hole_def name='hole21' balltype='C' ballcolor='-1' /><hole_def name='hole31' balltype='C' ballcolor='3' /><hole_def name='hole41' balltype='C' ballcolor='0' /><hole_def name='hole22' balltype='W' ballcolor='-1' /><hole_def name='hole32' balltype='C' ballcolor='4' /><hole_def name='hole42' balltype='W' ballcolor='-1' /><hole_def name='hole23' balltype='C' ballcolor='2' /><hole_def name='hole33' balltype='W' ballcolor='-1' /><hole_def name='hole43' balltype='C' ballcolor='2' /><hole_def name='hole24' balltype='C' ballcolor='0' /><hole_def name='hole34' balltype='W' ballcolor='-1' /><hole_def name='hole44' balltype='C' ballcolor='-1' /><hole_def name='hole15' balltype='C' ballcolor='3' /><hole_def name='hole25' balltype='W' ballcolor='-1' /><hole_def name='hole35' balltype='C' ballcolor='2' /><hole_def name='hole45' balltype='W' ballcolor='-1' /><hole_def name='hole16' balltype='C' ballcolor='0' /><hole_def name='hole26' balltype='C' ballcolor='2' /><hole_def name='hole36' balltype='C' ballcolor='4' /><hole_def name='hole46' balltype='C' ballcolor='3' /><hole_def name='hole27' balltype='C' ballcolor='3' /><hole_def name='hole37' balltype='W' ballcolor='-1' /><hole_def name='hole47' balltype='C' ballcolor='2' /></holes_def></level><level name='level03' level='3' web_levels='4' time='300' ballcolors='0,2,3,4' broken_holes='hole50,hole51,hole52,hole53,hole54,hole55,hole56,hole57'><phrases><phrase>Fairy Gates</phrase><phrase>Triumphal Arch</phrase></phrases><broken_links><link hole1='hole51' hole2='hole52' /><link hole1='hole52' hole2='hole53' /><link hole1='hole53' hole2='hole54' /><link hole1='hole54' hole2='hole55' /><link hole1='hole55' hole2='hole56' /><link hole1='hole56' hole2='hole57' /><link hole1='hole57' hole2='hole50' /><link hole1='hole50' hole2='hole51' /><link hole1='hole37' hole2='hole30' /><link hole1='hole34' hole2='hole33' /></broken_links><holes_def ballcolor_default='-1' balltype_default='R'><hole_def name='hole13' balltype='W' ballcolor='-1' /><hole_def name='hole14' balltype='W' ballcolor='-1' /><hole_def name='hole20' balltype='C' ballcolor='-1' /><hole_def name='hole30' balltype='W' ballcolor='-1' /><hole_def name='hole40' balltype='C' ballcolor='4' /><hole_def name='hole21' balltype='W' ballcolor='-1' /><hole_def name='hole31' balltype='C' ballcolor='3' /><hole_def name='hole41' balltype='W' ballcolor='0' /><hole_def name='hole22' balltype='C' ballcolor='-1' /><hole_def name='hole32' balltype='W' ballcolor='4' /><hole_def name='hole42' balltype='C' ballcolor='-1' /><hole_def name='hole23' balltype='C' ballcolor='2' /><hole_def name='hole33' balltype='W' ballcolor='-1' /><hole_def name='hole43' balltype='C' ballcolor='2' /><hole_def name='hole24' balltype='C' ballcolor='0' /><hole_def name='hole34' balltype='W' ballcolor='-1' /><hole_def name='hole44' balltype='C' ballcolor='-1' /><hole_def name='hole15' balltype='C' ballcolor='3' /><hole_def name='hole25' balltype='C' ballcolor='-1' /><hole_def name='hole35' balltype='W' ballcolor='2' /><hole_def name='hole45' balltype='C' ballcolor='-1' /><hole_def name='hole16' balltype='C' ballcolor='0' /><hole_def name='hole26' balltype='W' ballcolor='2' /><hole_def name='hole36' balltype='C' ballcolor='4' /><hole_def name='hole46' balltype='W' ballcolor='3' /><hole_def name='hole27' balltype='C' ballcolor='3' /><hole_def name='hole37' balltype='W' ballcolor='-1' /><hole_def name='hole47' balltype='C' ballcolor='2' /></holes_def></level><level name='level04' level='4' web_levels='5' time='300' ballcolors='0,2,3,4,5' broken_holes='hole60,hole61,hole62,hole63,hole64,hole65,hole66,hole67'><phrases><phrase>Gates Crown</phrase><phrase>Royal Palace</phrase></phrases><holes_def ballcolor_default='-1' balltype_default='R'><hole_def name='hole40' balltype='W' ballcolor='-1' /><hole_def name='hole47' balltype='W' ballcolor='-1' /><hole_def name='hole30' balltype='W' ballcolor='-1' /><hole_def name='hole37' balltype='W' ballcolor='-1' /><hole_def name='hole43' balltype='W' ballcolor='-1' /><hole_def name='hole44' balltype='W' ballcolor='-1' /><hole_def name='hole33' balltype='W' ballcolor='-1' /><hole_def name='hole34' balltype='W' ballcolor='-1' /><hole_def name='hole51' balltype='W' ballcolor='-1' /><hole_def name='hole56' balltype='W' ballcolor='-1' /></holes_def></level><level name='level05' level='5' web_levels='5' time='240' ballcolors='0,2,3,4,5' broken_holes='hole60,hole61,hole62,hole63,hole64,hole65,hole66,hole67'><phrases><phrase>Golden Shine</phrase></phrases><broken_links><link hole1='hole52' hole2='hole53' /><link hole1='hole54' hole2='hole55' /><link hole1='hole56' hole2='hole57' /><link hole1='hole50' hole2='hole51' /></broken_links><holes_def ballcolor_default='-1' balltype_default='R'><hole_def name='hole50' balltype='W' ballcolor='-1' /><hole_def name='hole52' balltype='W' ballcolor='-1' /><hole_def name='hole54' balltype='W' ballcolor='-1' /><hole_def name='hole56' balltype='W' ballcolor='-1' /><hole_def name='hole31' balltype='W' ballcolor='-1' /><hole_def name='hole33' balltype='W' ballcolor='-1' /><hole_def name='hole35' balltype='W' ballcolor='-1' /><hole_def name='hole37' balltype='W' ballcolor='-1' /><hole_def name='hole20' balltype='W' ballcolor='-1' /><hole_def name='hole27' balltype='W' ballcolor='-1' /></holes_def></level></levels>";
static var xmlConfigC = "<class name='rainbow.lang.Localization' singleton='true'><property name='stringsAt'><value><object><field name='tf_pregame_start'>Play</field><field name='tf_map_start'>Play</field><field name='tf_map_download'>Download</field><field name='tf_map_rules'>Rules</field><field name='tf_download_play'>Play</field><field name='tf_download_download'>Download</field><field name='tf_download_text1'>Want More? Download the full version of Rainbow Web today.</field><field name='tf_download_text2'>Continue to release the evil Spider's web and restore the Rainbow Kingdom to its former glory.</field><field name='tf_download_text3'>Discover 12 more beautiful landscapes in Adventure Mode or play unlimited in Relaxed Mode.</field><field name='tf_download_text4'>More levels. 	More modes. 		More puzzles. 			Play offline anytime.</field><field name='tf_htp_swap_beads'>1. Swap beads</field><field name='tf_htp_restore_a_phrase'>2. Restore a phrase</field><field name='tf_htp_swap_txt'>Swap neighboring beads to make a line of 3 or more matching beads. This line may be horiontal or vertical.</field><field name='tf_htp_phrase_txt'>Collect all letters from the web to make up a magic phrase and break the spell. This lets you continue your adventure.</field><field name='tf_htp_start'>Play</field><field name='tf_web_score'>Score</field><field name='tf_web_level'>Level</field><field name='tf_web_lives'>Lives</field><field name='tf_web_menu_label'>Menu</field><field name='tf_web_main_return_to_game'>Resume</field><field name='tf_web_main_start_new'>New Game</field><field name='tf_web_main_download'>Download</field><field name='tf_web_main_sound_on_off'>Sound On/Off</field><field name='tf_web_level_complete'>Level complete!</field><field name='tf_web_time_bonus'>Time Bonus:</field><field name='tf_web_next'>Next</field><field name='tf_hint_1'>Swap 2 neighboring beads to make a line of 3 matching beads. This line may be horizontal or vertical.</field><field name='tf_hint_2'>Collect all letters from the web. Place a bead with a letter in line with 3 or more beads of the same color.</field><field name='tf_hint_3'>Victory is around the corner! Collect the last letter to restore the magic name and proceed to the next web.</field><field name='tf_hint_4'>The evil Spider hampers your brave mission. It severs links on the web. Watch out!</field><field name='tf_hint_go'>Go</field></object></value></property></class><class name='msn.Zone' singleton='true'><property name='emulation'><value type='boolean'>true</value></property></class><class name='rainbow.web.Web'><static-variable name='nLines' type='number'>8</static-variable><static-variable name='nCircles' type='number'>5</static-variable><static-variable name='aLinks'><links><link hole1='hole10' hole2='hole14' /><link hole1='hole11' hole2='hole15' /><link hole1='hole12' hole2='hole16' /><link hole1='hole13' hole2='hole17' /><link hole1='hole00' hole2='hole10' /><link hole1='hole00' hole2='hole11' /><link hole1='hole00' hole2='hole12' /><link hole1='hole00' hole2='hole13' /><link hole1='hole00' hole2='hole14' /><link hole1='hole00' hole2='hole15' /><link hole1='hole00' hole2='hole16' /><link hole1='hole00' hole2='hole17' /><link hole1='hole11' hole2='hole21' /><link hole1='hole21' hole2='hole31' /><link hole1='hole31' hole2='hole41' /><link hole1='hole41' hole2='hole51' /><link hole1='hole12' hole2='hole22' /><link hole1='hole22' hole2='hole32' /><link hole1='hole32' hole2='hole42' /><link hole1='hole42' hole2='hole52' /><link hole1='hole13' hole2='hole23' /><link hole1='hole23' hole2='hole33' /><link hole1='hole33' hole2='hole43' /><link hole1='hole43' hole2='hole53' /><link hole1='hole14' hole2='hole24' /><link hole1='hole24' hole2='hole34' /><link hole1='hole34' hole2='hole44' /><link hole1='hole44' hole2='hole54' /><link hole1='hole15' hole2='hole25' /><link hole1='hole25' hole2='hole35' /><link hole1='hole35' hole2='hole45' /><link hole1='hole45' hole2='hole55' /><link hole1='hole16' hole2='hole26' /><link hole1='hole26' hole2='hole36' /><link hole1='hole36' hole2='hole46' /><link hole1='hole46' hole2='hole56' /><link hole1='hole17' hole2='hole27' /><link hole1='hole27' hole2='hole37' /><link hole1='hole37' hole2='hole47' /><link hole1='hole47' hole2='hole57' /><link hole1='hole10' hole2='hole20' /><link hole1='hole20' hole2='hole30' /><link hole1='hole30' hole2='hole40' /><link hole1='hole40' hole2='hole50' /><!-- Circles --><link hole1='hole11' hole2='hole12' /><link hole1='hole12' hole2='hole13' /><link hole1='hole13' hole2='hole14' /><link hole1='hole14' hole2='hole15' /><link hole1='hole15' hole2='hole16' /><link hole1='hole16' hole2='hole17' /><link hole1='hole10' hole2='hole17' /><link hole1='hole10' hole2='hole11' /><link hole1='hole21' hole2='hole22' /><link hole1='hole22' hole2='hole23' /><link hole1='hole23' hole2='hole24' /><link hole1='hole24' hole2='hole25' /><link hole1='hole25' hole2='hole26' /><link hole1='hole26' hole2='hole27' /><link hole1='hole20' hole2='hole27' /><link hole1='hole20' hole2='hole21' /><link hole1='hole31' hole2='hole32' /><link hole1='hole32' hole2='hole33' /><link hole1='hole33' hole2='hole34' /><link hole1='hole34' hole2='hole35' /><link hole1='hole35' hole2='hole36' /><link hole1='hole36' hole2='hole37' /><link hole1='hole30' hole2='hole37' /><link hole1='hole30' hole2='hole31' /><link hole1='hole41' hole2='hole42' /><link hole1='hole42' hole2='hole43' /><link hole1='hole43' hole2='hole44' /><link hole1='hole44' hole2='hole45' /><link hole1='hole45' hole2='hole46' /><link hole1='hole46' hole2='hole47' /><link hole1='hole40' hole2='hole47' /><link hole1='hole40' hole2='hole41' /><link hole1='hole51' hole2='hole52' /><link hole1='hole52' hole2='hole53' /><link hole1='hole53' hole2='hole54' /><link hole1='hole54' hole2='hole55' /><link hole1='hole55' hole2='hole56' /><link hole1='hole56' hole2='hole57' /><link hole1='hole50' hole2='hole57' /><link hole1='hole50' hole2='hole5' /></links></static-variable></class></config>";
}
Symbol 431 MovieClip [__Packages.rainbow.core.Sound] Frame 0
class rainbow.core.Sound extends gdp.core.base.BaseClass
{
static var instance;
function Sound () {
super();
waveEngine = new gdp.sound.WaveEngine(1);
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.core.Sound();
}
return(instance);
}
function play(sLink, nLoops) {
var _local2 = waveEngine.addStream(sLink);
waveEngine.play(_local2, 0, nLoops);
}
function disable(Void) {
bDisableSound = true;
waveEngine.soundOff();
}
function enable(Void) {
bDisableSound = false;
setMute(bMute);
}
function setMute(bMute) {
trace(("rainbow.core.Sound.setMute(" + [arguments]) + ")");
this.bMute = bMute;
if (bDisableSound) {
return(undefined);
}
if (bMute) {
waveEngine.soundOff();
} else {
waveEngine.soundOn();
}
}
function getMute(Void) {
return(bMute);
}
var waveEngine = null;
var bMute = false;
var bDisableSound = false;
}
Symbol 432 MovieClip [__Packages.gdp.sound.WaveEngine] Frame 0
class gdp.sound.WaveEngine
{
var type, stack, debugOn, mute, _mc;
function WaveEngine (type, debugOn) {
this.type = ((type == undefined) ? 1 : (type));
stack = new Object();
this.debugOn = ((type == undefined) ? false : (debugOn));
mute = false;
init();
}
function init() {
_numClass++;
_mc = _root.createEmptyMovieClip((("CWaveEngine_" + _numClass) + "_") + type, _root.getNextHighestDepth());
}
function soundOff() {
if (!mute) {
debug("soundOff()");
for (var _local2 in stack) {
stack[_local2]._oldVolume = stack[_local2].getVolume();
setVolume(Number(_local2), 0);
}
mute = true;
}
}
function soundOn() {
if (mute) {
mute = false;
debug("soundOn()");
for (var _local3 in stack) {
var _local2 = ((stack[_local3]._oldVolume == undefined) ? 100 : (stack[_local3]._oldVolume));
setVolume(Number(_local3), _local2);
}
}
}
function getSoundStatus() {
return(!mute);
}
function play(id, secondsOffset, loops) {
if ((id == undefined) || (stack[id] == undefined)) {
return(0);
}
if (type == 2) {
stopAll();
}
secondsOffset = ((secondsOffset == undefined) ? 0 : (secondsOffset));
loops = ((loops == undefined) ? 1 : (loops));
var _local3 = stack[id];
if (mute) {
_local3.setVolume(0);
} else {
_local3.setVolume(100);
}
if (type == 2) {
loops = 65536;
}
_local3.start(secondsOffset, loops);
debug(((((("play(" + _local3.__link) + ", ") + secondsOffset) + ", ") + loops) + ")");
}
function playAll(secondsOffset, loops, autoDelete) {
for (var _local5 in stack) {
play(Number(_local5), secondsOffset, loops, autoDelete);
}
}
function addStream(link_name, autoDelete) {
if (link_name == undefined) {
return(0);
}
autoDelete = ((autoDelete == undefined) ? true : (autoDelete));
var _local4 = _mc.createEmptyMovieClip("attachS_" + (++_numSound), _mc.getNextHighestDepth());
var _local2 = new Sound(_local4);
_local2.attachSound(link_name);
_local2.__parent = this;
_local2.__link = link_name;
_local2.__num = _numSound;
_local2.__mc = _local4;
_local2.__autoDelete = autoDelete;
_local2.onSoundComplete = function () {
if (this.__autoDelete) {
this.__parent.deleteSound(this.__num);
}
};
debug(("addStream(" + link_name) + ")");
stack[_numSound] = _local2;
return(_local2.__num);
}
function deleteSound(id) {
if ((id == undefined) || (stack[id] == undefined)) {
return(0);
}
var _local2 = stack[id];
debug("Stack deletes a " + _local2.__link);
delete stack[id];
_local2.__mc.removeMovieClip();
}
function deleteAllSound() {
debug("deleteAllSound()");
for (var _local2 in stack) {
deleteSound(Number(_local2));
}
}
function stop(id) {
if ((id == undefined) || (stack[id] == undefined)) {
return(0);
}
var _local3 = stack[id];
_local3.stop();
debug(("stop(" + _local3.__link) + ")");
if (_local3.__autoDelete) {
if ((id != _numSound) || (type != 2)) {
deleteSound(id);
}
}
}
function stopAll() {
debug("stopAll()");
for (var _local2 in stack) {
stop(Number(_local2));
}
}
function setVolume(id, volume) {
if (((id == undefined) || (volume == undefined)) || (stack[id] == undefined)) {
return(0);
}
var _local2 = stack[id];
if (mute) {
_local2._oldVolume = volume;
return(0);
}
debug(((("setVolume(" + _local2.__link) + ", ") + volume) + ")");
if (_local2 != undefined) {
_local2.setVolume(volume);
}
}
function setAllVolume(volume) {
for (var _local2 in stack) {
setVolume(Number(_local2), volume);
}
}
function debug(msg) {
if (debugOn) {
trace((type + " ") + msg);
}
}
function toString() {
return("[sound.CWaveEngine]");
}
var _numSound = 0;
static var _numClass = 0;
}
Symbol 433 MovieClip [__Packages.gdp.preloader.AbstractPreloader] Frame 0
class gdp.preloader.AbstractPreloader extends gdp.core.base.BaseMovieClip
{
static var sMovieURL;
var mclLoader, cfgLoader, sConfigURL, mcContainer, oListener, createEmptyMovieClip, getNextHighestDepth;
function AbstractPreloader () {
super();
mclLoader = new MovieClipLoader();
cfgLoader = new gdp.config.ConfigLoader(sConfigURL, gdp.utils.Delegate.create(this, onConfigLoad));
setEvents();
}
function getContainer() {
return(mcContainer);
}
function setEvents() {
oListener = new Object();
oListener.onLoadStart = gdp.utils.Delegate.create(this, onLoadStart);
oListener.onLoadComplete = gdp.utils.Delegate.create(this, onLoadComplete);
oListener.onLoadProgress = gdp.utils.Delegate.create(this, onLoadProgress);
oListener.onLoadInit = gdp.utils.Delegate.create(this, onLoadInit);
oListener.onLoadError = gdp.utils.Delegate.create(this, onLoadError);
mclLoader.addListener(oListener);
}
function onConfigLoad(bSuccess) {
if (!bSuccess) {
return(undefined);
}
loadGame();
}
function loadGame(Void) {
mcContainer = createEmptyMovieClip("mcContainer", getNextHighestDepth(), {_visible:false});
mcContainer._lockroot = true;
mclLoader.loadClip(sMovieURL, mcContainer);
}
function addFlashVars(mcTarget) {
var _local2 = gdp.utils.ObjectUtil.getPrimitivesOnly(_level0, ["$version"]);
var _local1 = 0;
while (_local1 < _local2.length) {
gdp.core.ExternalVars.set(_local2[_local1].sName, _local2[_local1].data);
if (bOnlyExternalVars) {
} else {
mcTarget[_local2[_local1].sName] = _local2[_local1].data;
}
_local1++;
}
}
function onLoadStart(mcTarget) {
addFlashVars(mcTarget);
}
function onLoadComplete(mcTarget) {
_root.stop();
}
function onLoadProgress(mcTarget, nLoadedBytes, nTotalBytes) {
}
function onLoadInit(mcTarget) {
}
function onLoadError(mcTarget, sErrorCode, nHttpStatus) {
}
static var bOnlyExternalVars = false;
}
Symbol 434 MovieClip [__Packages.gdp.core.ExternalVars] Frame 0
class gdp.core.ExternalVars
{
function ExternalVars () {
}
static function set(sName, value) {
oVars[sName] = value;
}
static function get(sName) {
return(oVars[sName]);
}
static function getAll() {
return(oVars);
}
static function clear() {
oVars = new Object();
}
static var oVars = new Object();
}
Symbol 435 MovieClip [__Packages.rainbow.core.Preloader] Frame 0
class rainbow.core.Preloader extends gdp.preloader.AbstractPreloader
{
static var instance;
var mcPreloader;
function Preloader () {
super();
aLogosMc = new Array();
}
static function getInstance(mcParent) {
if (instance == null) {
instance = rainbow.core.Preloader(mcParent.attachMovie("Preloader", "preLoader" + (nCount++), mcParent.getNextHighestDepth()));
}
return(instance);
}
function loadGame(Void) {
var _local3;
if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 7) {
gdp.preloader.AbstractPreloader.sMovieURL = getGameFlash7();
_local3 = aLogosFlash7;
} else if (gdp.utils.SystemUtil.getFlashPlayerVersionMajor() == 8) {
gdp.preloader.AbstractPreloader.sMovieURL = getGameFlash8();
_local3 = aLogosFlash8;
}
loadLogos(_local3);
super.loadGame();
}
function loadLogos(aLogos) {
var _local2 = 0;
while (_local2 < aLogos.length) {
var _local7 = aLogos[_local2][0];
var _local6 = gdp.utils.StringUtil.toNumber(aLogos[_local2][1]);
var _local5 = gdp.utils.StringUtil.toNumber(aLogos[_local2][2]);
var _local3 = mcPreloader.createEmptyMovieClip("mcLogo" + _local2, mcPreloader.getNextHighestDepth(), {_x:_local6, _y:_local5});
_local3._x = _local6;
_local3._y = _local5;
_local3.loadMovie(_local7);
aLogosMc.push(_local3);
_local2++;
}
}
function setGameFlash7(sGame7) {
this.sGame7 = sGame7;
}
function getGameFlash7(Void) {
return(sGame7);
}
function setGameFlash8(sGame8) {
this.sGame8 = sGame8;
}
function getGameFlash8(Void) {
return(sGame8);
}
function setLogoFlash7(aLogosFlash7) {
this.aLogosFlash7 = aLogosFlash7;
}
function getLogoFlash7(Void) {
return(aLogosFlash7);
}
function setLogoFlash8(aLogosFlash8) {
this.aLogosFlash8 = aLogosFlash8;
}
function getLogoFlash8(Void) {
return(aLogosFlash8);
}
function hide(Void) {
mcPreloader._visible = false;
}
function onLoadComplete(mcTarget) {
super.onLoadComplete(mcTarget);
}
function onLoadProgress(mcTarget, nLoadedBytes, nTotalBytes) {
var _local2 = int((nLoadedBytes / nTotalBytes) * 100);
mcPreloader.tfLoaded.text = (rainbow.lang.Localization.getInstance().getString("tf_loaded") + _local2) + "%";
mcPreloader.mcBar.gotoAndStop(_local2);
}
static var nCount = 0;
var sConfigURL = "./xml/config_preloader.xml";
var sGame7 = null;
var sGame8 = null;
var aLogosFlash8 = null;
var aLogosFlash7 = null;
var aLogosMc = null;
}
Symbol 436 MovieClip [__Packages.rainbow.ui.MenuButton] Frame 0
class rainbow.ui.MenuButton extends gdp.core.base.BaseMovieClip
{
function MenuButton () {
super();
}
function onRollOut(Void) {
var _local2 = new TextFormat();
_local2.color = nUpColor;
tfLabel.setTextFormat(_local2);
}
function onRollOver(Void) {
var _local2 = new TextFormat();
_local2.color = 16777215 /* 0xFFFFFF */;
tfLabel.setTextFormat(_local2);
}
var tfLabel = null;
var nUpColor = 16574721;
}
Symbol 437 MovieClip [__Packages.rainbow.panels.Pregame] Frame 0
class rainbow.panels.Pregame extends rainbow.ui.Panel
{
static var instance;
var hide;
function Pregame () {
super();
btnStart.onRelease = gdp.utils.Delegate.create(this, onReleaseStart);
}
static function getInstance() {
if (instance == null) {
instance = new rainbow.panels.Pregame();
}
return(instance);
}
function onReleaseStart(Void) {
hide();
rainbow.core.Game.getInstance().showMap();
}
var btnStart = null;
}
Symbol 438 MovieClip [__Packages.rainbow.map.Item] Frame 0
class rainbow.map.Item extends gdp.core.base.BaseMovieClip
{
var _name;
function Item () {
super();
nItemId = Number(_name.substring(4, _name.length));
setItem();
close();
}
function setItem(Void) {
mcOpened.gotoAndStop(nItemId);
mcClosed.gotoAndStop(nItemId);
}
function open(Void) {
mcClosed._visible = false;
mcOpened._visible = true;
}
function close(Void) {
mcClosed._visible = true;
mcOpened._visible = false;
}
var mcOpened = null;
var mcClosed = null;
var nItemId = null;
}
Symbol 439 MovieClip [__Packages.rainbow.helpers.Counter] Frame 0
class rainbow.helpers.Counter extends gdp.core.base.BaseClass
{
function Counter (nStartValue, nEndValue, nDelta) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.nStartValue = nStartValue;
this.nEndValue = nEndValue;
this.nDelta = nDelta;
nCurrentValue = this.nStartValue;
psCounter = new gdp.core.process.Process(gdp.utils.Delegate.create(this, process));
}
function run(Void) {
if (nStartValue == nEndValue) {
eventManager.dispatch("onComplete", nEndValue);
return(undefined);
}
if (!gdp.core.process.ProcessManager.getInstance().isHas(psCounter)) {
gdp.core.process.ProcessManager.getInstance().addProcess(psCounter);
}
}
function process(Void) {
if (nEndValue <= ((nCurrentValue + nDelta) * (nDelta / Math.abs(nDelta)))) {
eventManager.dispatch("onComplete", nEndValue);
return(0);
}
nCurrentValue = nCurrentValue + nDelta;
eventManager.dispatch("onChange", nCurrentValue);
}
function setStart(nStartValue) {
this.nStartValue = nStartValue;
nCurrentValue = nStartValue;
}
function getStart(Void) {
return(nStartValue);
}
function setEnd(nEndValue) {
this.nEndValue = nEndValue;
}
function getEnd(Void) {
return(nEndValue);
}
function setDelta(nDelta) {
this.nDelta = nDelta;
}
function getDelta(Void) {
return(nDelta);
}
function getCurrent(Void) {
return(nCurrentValue);
}
var nStartValue = null;
var nCurrentValue = null;
var nEndValue = null;
var nDelta = null;
var eventManager = null;
var psCounter = null;
}
Symbol 440 MovieClip [__Packages.rainbow.web.BeadCreator] Frame 0
class rainbow.web.BeadCreator extends gdp.core.base.BaseClass
{
function BeadCreator (nRepeatNum) {
super();
trace(("rainbow.web.BeadCreator.BeadCreator(" + [arguments]) + ")");
oBeadsStack = new Object();
beadsManager = rainbow.managers.BeadsManager.getInstance();
nRepeat = ((nRepeatNum == null) ? (nRepeat) : (nRepeatNum));
}
static function createBeadToHole(hole, nColor, sLetter) {
var _local2 = rainbow.web.Web.getInstance().getElements();
var _local1 = rainbow.web.Bead(_local2.attachMovie("bead", "bead_" + (nCount++), _local2.getNextHighestDepth()));
_local1.cacheAsBitmap = true;
if (nColor == -1) {
nColor = gdp.utils.ArrayUtil.getRandElem(rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getBallColors());
}
_local1.setBallColor(nColor);
_local1.setLetter(sLetter);
_local1.draw();
_local1.setHole(hole);
return(_local1);
}
static function recreateBead(bead, nColor, sLetter) {
if (nColor == -1) {
nColor = gdp.utils.ArrayUtil.getRandElem(rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getBallColors());
}
bead.setBallColor(nColor);
bead.setLetter(sLetter);
bead.draw();
return(bead);
}
function addBead(hole, nColor, sLetter, nDelay) {
if (oBeadsStack[hole._name] != null) {
oBeadsStack[hole._name].bead.removeMovieClip();
}
var _local2 = createBeadToHole(hole, nColor, sLetter);
_local2.hide();
oBeadsStack[hole._name] = {bead:_local2, hole:hole, color:nColor, letter:sLetter, delay:nDelay};
if (checkExplodes()) {
rebuild(nRepeat);
}
return(_local2);
}
function rebuild(bRepeat) {
var _local6 = true;
for (var _local7 in oBeadsStack) {
var _local2 = oBeadsStack[_local7];
var _local5 = _local2.bead;
var _local3 = _local2.color;
var _local4 = _local2.letter;
if (_local3 == -1) {
recreateBead(_local5, _local3, _local4);
_local6 = false;
}
}
if (((!_local6) && ((--nRepeat) > 0)) && (checkExplodes())) {
trace("generate " + nRepeat);
rebuild(bRepeat);
}
}
function checkExplodes(Void) {
for (var _local2 in oBeadsStack) {
if (checkExplode(oBeadsStack[_local2].bead)) {
return(true);
}
}
return(false);
}
function checkExplode(bead) {
var _local2 = beadsManager.findBeadsArrayOnLine(bead);
var _local3 = beadsManager.findBeadsArrayOnCircle(bead);
return((_local2.length > 2) || (_local3.length > 2));
}
function run(Void) {
var _local4 = new gdp.utils.Executor(true);
for (var _local5 in oBeadsStack) {
var _local2 = oBeadsStack[_local5];
var _local3 = [_local2.bead, rainbow.managers.WebManager.getInstance().getHole(0, 0), _local2.hole, _local2.delay];
_local4.addTask(gdp.utils.Delegate.create(beadsManager, beadsManager.moveBeadToHoleWithStart), _local3, true, "onMoveEnd", [_local2.bead]);
}
_local4.onComplete = gdp.utils.Delegate.create(this, onComplete);
_local4.start();
}
static var nCount = 0;
var oBeadsStack = null;
var beadsManager = null;
var nRepeat = 1000;
var onComplete = null;
}
Symbol 441 MovieClip [__Packages.gdp.effects.fade.Blink] Frame 0
class gdp.effects.fade.Blink extends gdp.core.base.BaseClass
{
function Blink (mcObject, nAlphaStart, nAlphaEnd, nSpeed, nBlinkNumber) {
super();
eventManager = new gdp.env.events.EventManager(this);
this.mcObject = mcObject;
this.nAlphaStart = nAlphaStart;
this.nAlphaEnd = nAlphaEnd;
this.nSpeed = nSpeed;
this.nBlinkNumber = (nBlinkNumber * 2) + 1;
nAlphaCheckpoint = nAlphaEnd;
}
function psBlink(Void) {
if (mcObject == null) {
return(0);
}
if (Math.abs(int(mcObject._alpha - nAlphaCheckpoint)) <= Math.abs(nSpeed)) {
if ((nBlinkNumber--) == 0) {
end();
return(0);
}
nSpeed = -nSpeed;
nAlphaCheckpoint = ((nAlphaCheckpoint == nAlphaStart) ? (nAlphaEnd) : (nAlphaStart));
}
mcObject._alpha = mcObject._alpha - nSpeed;
}
function end(Void) {
mcObject._alpha = nAlphaEnd;
eventManager.dispatch("onEnd", mcObject);
onEnd();
}
function run(Void) {
mcObject._alpha = nAlphaStart;
var _local2 = new gdp.core.process.Process(gdp.utils.Delegate.create(this, psBlink));
gdp.core.process.ProcessManager.getInstance().addProcess(_local2);
}
var mcObject = null;
var nAlphaStart = null;
var nAlphaEnd = null;
var nSpeed = null;
var nBlinkNumber = null;
var nAlphaCheckpoint = null;
var eventManager = null;
var onEnd = null;
}
Symbol 442 MovieClip [__Packages.rainbow.web.BeadDropper] Frame 0
class rainbow.web.BeadDropper
{
function BeadDropper (aFreeHoles) {
trace(("rainbow.web.BeadDropper.BeadDropper(" + [arguments]) + ")");
this.aFreeHoles = gdp.utils.ArrayUtil.removeDuplicate(aFreeHoles);
beadsManager = rainbow.managers.BeadsManager.getInstance();
webManager = rainbow.managers.WebManager.getInstance();
beadCreator = new rainbow.web.BeadCreator(7 - rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getBallColors().length);
}
function run(Void) {
aDroppingBeads = findBeadsForDrop(aFreeHoles);
beadCreator.run();
complete();
}
function findBeadsForDrop(aFreeHoles) {
trace(("rainbow.web.BeadDropper.findBeadsForDrop(" + [arguments]) + ")");
var _local7 = new Array();
var _local8 = 0;
while (_local8 < aFreeHoles.length) {
var _local3 = aFreeHoles[_local8];
var _local5 = null;
if (_local3.getCircleNumber() == 1) {
var _local4 = getBottomFreeHole(_local3);
var _local6 = -600 + nPreDelay;
do {
_local6 = _local6 + 600;
_local7.push(dropNewBead(_local4, _local6));
_local4 = getBottomFreeHole(_local3);
} while (_local4.isFree());
} else {
while ((_local5 == null) && (_local3 != null)) {
_local3 = _local3.getUpHole();
_local5 = _local3.getBead();
}
if (!gdp.utils.ArrayUtil.contains(_local7, _local5)) {
_local7 = _local7.concat(dropBead(_local5));
}
}
_local8++;
}
return(_local7);
}
function dropNewBead(hole, nDelay) {
nDelay = nDelay | ((hole.getCircleNumber() - 1) * 150);
var _local2 = beadCreator.addBead(hole, rainbow.levels.LevelsManager.getInstance().getCurrentLevel().getDefaultBallColor(), null, nDelay);
_local2.onMoveEnd = gdp.utils.Delegate.create(this, onEndMove);
if (_local2 == null) {
return(null);
}
nMovesCount++;
return(_local2);
}
function dropBead(bead) {
var _local4 = new Array();
if (bead == null) {
return(_local4);
}
var _local5 = getBottomFreeHole(bead.getHole());
if ((_local5 == null) || (!_local5.isFree())) {
return(_local4);
}
var _local2 = bead.getHole();
nMovesCount++;
bead.onMoveEnd = gdp.utils.Delegate.create(this, onEndMove);
beadsManager.moveBeadToHole(bead, _local5, nPreDelay);
_local4.push(bead);
var _local7 = _local2.getUpHole();
if (_local7 != null) {
_local4 = _local4.concat(dropBead(_local7.getBead()));
} else {
_local5 = null;
var _local3 = -600 + nPreDelay;
while (_local2.isFree()) {
_local3 = _local3 + 600;
_local4.push(dropNewBead(getBottomFreeHole(_local2), _local3));
}
}
return(_local4);
}
function getBottomFreeHole(holeFree) {
while (holeFree.getDownHole().isFree()) {
holeFree = holeFree.getDownHole();
}
return(holeFree);
}
function onEndMove(Void) {
nMovesCount--;
if (nMovesCount == 0) {
complete();
}
}
function complete(Void) {
if ((!bCompleted) && (nMovesCount == 0)) {
onComplete(aDroppingBeads);
bCompleted = true;
}
}
var beadsManager = null;
var webManager = null;
var aFreeHoles = null;
var nMovesCount = 0;
var bCompleted = false;
var aDroppingBeads = null;
var nPreDelay = 500;
var beadCreator = null;
var onComplete = null;
}
Symbol 443 MovieClip [__Packages.gdp.draw.DrawColor] Frame 0
class gdp.draw.DrawColor extends gdp.core.base.BaseClass
{
var nRed, nGreen, nBlue;
function DrawColor (nR, nG, nB) {
super();
nRed = nR;
nGreen = nG;
nBlue = nB;
}
function set redComp(nValue) {
nRed = nValue;
//return(redComp);
}
function get redComp() {
return(nRed);
}
function set greenComp(nValue) {
nGreen = nValue;
//return(greenComp);
}
function get greenComp() {
return(nGreen);
}
function set blueComp(nValue) {
nBlue = nValue;
//return(blueComp);
}
function get blueComp() {
return(nBlue);
}
function toHex() {
var _local2 = valueOf().toString(16);
if (_local2.length < 6) {
_local2 = gdp.utils.StringUtil.addCharsToLeft(_local2, "0", 6 - _local2.length);
}
return("0x" + _local2.toUpperCase());
}
function description() {
return(((((("DrawColor (red:" + nRed) + ", blue:") + nBlue) + ", green:") + nGreen) + ")");
}
function valueOf() {
return(((nRed << 16) | (nGreen << 8)) | nBlue);
}
static var aliceblue = new gdp.draw.DrawColor(240, 248, 255);
static var antiquewhite = new gdp.draw.DrawColor(250, 235, 215);
static var aqua = new gdp.draw.DrawColor(0, 255, 255);
static var aquamarine = new gdp.draw.DrawColor(127, 255, 212);
static var azure = new gdp.draw.DrawColor(240, 255, 255);
static var beige = new gdp.draw.DrawColor(245, 245, 220);
static var bisque = new gdp.draw.DrawColor(255, 228, 196);
static var black = new gdp.draw.DrawColor(0, 0, 0);
static var blanchedalmond = new gdp.draw.DrawColor(255, 235, 205);
static var blue = new gdp.draw.DrawColor(0, 0, 255);
static var blueviolet = new gdp.draw.DrawColor(138, 43, 226);
static var brown = new gdp.draw.DrawColor(165, 42, 42);
static var burlywood = new gdp.draw.DrawColor(222, 184, 135);
static var cadetblue = new gdp.draw.DrawColor(95, 158, 160);
static var chartreuse = new gdp.draw.DrawColor(127, 255, 0);
static var chocolate = new gdp.draw.DrawColor(210, 105, 30);
static var coral = new gdp.draw.DrawColor(255, 127, 80);
static var cornflowerblue = new gdp.draw.DrawColor(100, 149, 237);
static var cornsilk = new gdp.draw.DrawColor(255, 248, 220);
static var crimson = new gdp.draw.DrawColor(220, 20, 60);
static var cyan = new gdp.draw.DrawColor(0, 255, 255);
static var darkblue = new gdp.draw.DrawColor(0, 0, 139);
static var darkcyan = new gdp.draw.DrawColor(0, 139, 139);
static var darkgoldenrod = new gdp.draw.DrawColor(184, 134, 11);
static var darkgray = new gdp.draw.DrawColor(169, 169, 169);
static var darkgreen = new gdp.draw.DrawColor(0, 100, 0);
static var darkkhaki = new gdp.draw.DrawColor(189, 183, 107);
static var darkmagenta = new gdp.draw.DrawColor(139, 0, 139);
static var darkolivegreen = new gdp.draw.DrawColor(85, 107, 47);
static var darkorange = new gdp.draw.DrawColor(255, 140, 0);
static var darkorchid = new gdp.draw.DrawColor(153, 50, 204);
static var darkred = new gdp.draw.DrawColor(139, 0, 0);
static var darksalmon = new gdp.draw.DrawColor(233, 150, 122);
static var darkseagreen = new gdp.draw.DrawColor(143, 188, 143);
static var darkslateblue = new gdp.draw.DrawColor(72, 61, 139);
static var darkslategray = new gdp.draw.DrawColor(47, 79, 79);
static var darkturquoise = new gdp.draw.DrawColor(0, 206, 209);
static var darkviolet = new gdp.draw.DrawColor(148, 0, 211);
static var deeppink = new gdp.draw.DrawColor(255, 20, 147);
static var deepskyblue = new gdp.draw.DrawColor(0, 191, 255);
static var dimgray = new gdp.draw.DrawColor(105, 105, 105);
static var dodgerblue = new gdp.draw.DrawColor(30, 144, 255);
static var firebrick = new gdp.draw.DrawColor(178, 34, 34);
static var floralwhite = new gdp.draw.DrawColor(255, 250, 240);
static var forestgreen = new gdp.draw.DrawColor(34, 139, 34);
static var fuchsia = new gdp.draw.DrawColor(255, 0, 255);
static var gainsboro = new gdp.draw.DrawColor(220, 220, 220);
static var ghostwhite = new gdp.draw.DrawColor(248, 248, 255);
static var gold = new gdp.draw.DrawColor(255, 215, 0);
static var goldenrod = new gdp.draw.DrawColor(218, 165, 32);
static var gray = new gdp.draw.DrawColor(128, 128, 128);
static var green = new gdp.draw.DrawColor(0, 128, 0);
static var greenyellow = new gdp.draw.DrawColor(173, 255, 47);
static var honeydew = new gdp.draw.DrawColor(240, 255, 240);
static var hotpink = new gdp.draw.DrawColor(255, 105, 180);
static var indianred = new gdp.draw.DrawColor(205, 92, 92);
static var indigo = new gdp.draw.DrawColor(75, 0, 130);
static var ivory = new gdp.draw.DrawColor(255, 255, 240);
static var khaki = new gdp.draw.DrawColor(240, 230, 140);
static var lavender = new gdp.draw.DrawColor(230, 230, 250);
static var lavenderblush = new gdp.draw.DrawColor(255, 240, 245);
static var lawngreen = new gdp.draw.DrawColor(124, 252, 0);
static var lemonchiffon = new gdp.draw.DrawColor(255, 250, 205);
static var lightblue = new gdp.draw.DrawColor(173, 216, 230);
static var lightcoral = new gdp.draw.DrawColor(240, 128, 128);
static var lightcyan = new gdp.draw.DrawColor(224, 255, 255);
static var lightgoldenrodyellow = new gdp.draw.DrawColor(250, 250, 210);
static var lightgreen = new gdp.draw.DrawColor(144, 238, 144);
static var lightgrey = new gdp.draw.DrawColor(211, 211, 211);
static var lightpink = new gdp.draw.DrawColor(255, 182, 193);
static var lightsalmon = new gdp.draw.DrawColor(255, 160, 122);
static var lightseagreen = new gdp.draw.DrawColor(32, 178, 170);
static var lightskyblue = new gdp.draw.DrawColor(135, 206, 250);
static var lightslategray = new gdp.draw.DrawColor(119, 136, 153);
static var lightsteelblue = new gdp.draw.DrawColor(176, 196, 222);
static var lightyellow = new gdp.draw.DrawColor(255, 255, 224);
static var lime = new gdp.draw.DrawColor(0, 255, 0);
static var limegreen = new gdp.draw.DrawColor(50, 205, 50);
static var linen = new gdp.draw.DrawColor(250, 240, 230);
static var magenta = new gdp.draw.DrawColor(255, 0, 255);
static var maroon = new gdp.draw.DrawColor(128, 0, 0);
static var mediumaquamarine = new gdp.draw.DrawColor(102, 205, 170);
static var mediumblue = new gdp.draw.DrawColor(0, 0, 205);
static var mediumorchid = new gdp.draw.DrawColor(186, 85, 211);
static var mediumpurple = new gdp.draw.DrawColor(147, 112, 219);
static var mediumseagreen = new gdp.draw.DrawColor(60, 179, 113);
static var mediumslateblue = new gdp.draw.DrawColor(123, 104, 238);
static var mediumspringgreen = new gdp.draw.DrawColor(0, 250, 154);
static var mediumturquoise = new gdp.draw.DrawColor(72, 209, 204);
static var mediumvioletred = new gdp.draw.DrawColor(199, 21, 133);
static var midnightblue = new gdp.draw.DrawColor(25, 25, 112);
static var mintcream = new gdp.draw.DrawColor(245, 255, 250);
static var mistyrose = new gdp.draw.DrawColor(255, 228, 225);
static var moccasin = new gdp.draw.DrawColor(255, 228, 181);
static var navajowhite = new gdp.draw.DrawColor(255, 222, 173);
static var navy = new gdp.draw.DrawColor(0, 0, 128);
static var oldlace = new gdp.draw.DrawColor(253, 245, 230);
static var olive = new gdp.draw.DrawColor(128, 128, 0);
static var olivedrab = new gdp.draw.DrawColor(107, 142, 35);
static var orange = new gdp.draw.DrawColor(255, 165, 0);
static var orangered = new gdp.draw.DrawColor(255, 69, 0);
static var orchid = new gdp.draw.DrawColor(218, 112, 214);
static var palegoldenrod = new gdp.draw.DrawColor(238, 232, 170);
static var palegreen = new gdp.draw.DrawColor(152, 251, 152);
static var paleturquoise = new gdp.draw.DrawColor(175, 238, 238);
static var palevioletred = new gdp.draw.DrawColor(219, 112, 147);
static var papayawhip = new gdp.draw.DrawColor(255, 239, 213);
static var peachpuff = new gdp.draw.DrawColor(255, 218, 185);
static var peru = new gdp.draw.DrawColor(205, 133, 63);
static var pink = new gdp.draw.DrawColor(255, 192, 203);
static var plum = new gdp.draw.DrawColor(221, 160, 221);
static var powderblue = new gdp.draw.DrawColor(176, 224, 230);
static var purple = new gdp.draw.DrawColor(128, 0, 128);
static var red = new gdp.draw.DrawColor(255, 0, 0);
static var rosybrown = new gdp.draw.DrawColor(188, 143, 143);
static var royalblue = new gdp.draw.DrawColor(65, 105, 225);
static var saddlebrown = new gdp.draw.DrawColor(139, 69, 19);
static var salmon = new gdp.draw.DrawColor(250, 128, 114);
static var sandybrown = new gdp.draw.DrawColor(244, 164, 96);
static var seagreen = new gdp.draw.DrawColor(46, 139, 87);
static var seashell = new gdp.draw.DrawColor(255, 245, 238);
static var sienna = new gdp.draw.DrawColor(160, 82, 45);
static var silver = new gdp.draw.DrawColor(192, 192, 192);
static var skyblue = new gdp.draw.DrawColor(135, 206, 235);
static var slateblue = new gdp.draw.DrawColor(106, 90, 205);
static var slategray = new gdp.draw.DrawColor(112, 128, 144);
static var snow = new gdp.draw.DrawColor(255, 250, 250);
static var springgreen = new gdp.draw.DrawColor(0, 255, 127);
static var steelblue = new gdp.draw.DrawColor(70, 130, 180);
static var tan = new gdp.draw.DrawColor(210, 180, 140);
static var teal = new gdp.draw.DrawColor(0, 128, 128);
static var thistle = new gdp.draw.DrawColor(216, 191, 216);
static var tomato = new gdp.draw.DrawColor(255, 99, 71);
static var turquoise = new gdp.draw.DrawColor(64, 224, 208);
static var violet = new gdp.draw.DrawColor(238, 130, 238);
static var wheat = new gdp.draw.DrawColor(245, 222, 179);
static var white = new gdp.draw.DrawColor(255, 255, 255);
static var whitesmoke = new gdp.draw.DrawColor(245, 245, 245);
static var yellow = new gdp.draw.DrawColor(255, 255, 0);
static var yellowgreen = new gdp.draw.DrawColor(154, 205, 50);
static var defaultTransform = {ra:100, ga:100, ba:100, aa:100, rb:0, gb:0, bb:0, ab:0};
}
Symbol 226 MovieClip Frame 1
var gameBytesTotal = 0;
var gameBytesLoaded = 0;
var percent = 0;
Symbol 226 MovieClip Frame 3
gameBytesTotal = _root.getBytesTotal();
gameBytesLoaded = _root.getBytesLoaded();
percent = Math.round((gameBytesLoaded / gameBytesTotal) * 100);
bar.loadbar._xscale = percent;
if (((gameBytesLoaded >= gameBytesTotal) && (gameBytesTotal > 0)) && (_root.logo._currentframe >= _root.logo._totalframes)) {
_root.gotoAndStop("startgame");
stop();
} else {
gotoAndPlay ("preload");
}
Symbol 229 Button
on (release) {
getURL (_root.main_link, "_blank");
}
Symbol 299 MovieClip Frame 1
_root.loading._visible = false;
Symbol 299 MovieClip Frame 207
_root.loading._visible = true;
stop();
Symbol 304 MovieClip Frame 100
_root.gotoAndPlay(_root._currentframe + 1);
Symbol 308 Button
on (release) {
getURL (_root.main_link, "_blank");
}
Symbol 314 Button
on (press) {
getURL (_root.main_link, "_blank");
}