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

<div style="position:absolute;top:-99px;left:-99px;"><img src="https://tools.swfchan.com/stathit.asp?noj=FRM71059045-8DC&rnd=71059045" width="1" height="1"></div>

armorgames wasted-youth-part-1-12032.swf

This is the info page for
Flash #264467

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


Text
S I T E L O C K E D

To download the game, click here

To play the game, click here

0%

PLAY

<p align="left"></p>

100

<p align="left"></p>

pts

ActionScript [AS1/AS2]

Frame 1
stop(); _global.CONT = container; LOADED_MOVIE = false; ready = false; INFO = {}; INFO.VERSION = "armorgames"; FakeAPI = com.newgrounds.API; emptyFunction = function () { }; function load_game_settings() { if (_root.game_settings.data.language_no != undefined) { if (_root.game_settings.data.language_no == 4) { _root.game_settings.data.language_no = 0; } _root.language_no = _root.game_settings.data.language_no; } if (_root.game_settings.data.new_language_no != undefined) { _root.new_language_no = _root.game_settings.data.new_language_no; } if (_root.game_settings.data.musicvolume != undefined) { _root.musicvolume = _root.game_settings.data.musicvolume; } if (_root.game_settings.data.sfxvolume != undefined) { _root.sfxvolume = _root.game_settings.data.sfxvolume; } if (INFO.NON_EXCLUSIVE) { _root.language_no = 0; _root.new_language_no = undefined; } } function check_language_change() { if (_root.new_language_no != undefined) { _root.language_no = _root.new_language_no; _root.new_language_no = undefined; _root.save_game_settings(); LANG_INIT(); } } function save_game_settings() { _root.game_settings.data.language_no = _root.language_no; _root.game_settings.data.new_language_no = _root.new_language_no; _root.game_settings.data.musicvolume = _root.musicvolume; _root.game_settings.data.sfxvolume = _root.sfxvolume; _root.game_settings.flush(); } function array_has_prefix(arr, prefix) { len = prefix.length; if (arr.length < len) { return(false); } var _local1 = 0; while (_local1 < len) { if (arr[_local1] != prefix[_local1]) { return(false); } _local1++; } return(true); } function reversed_domain_parts(domain) { parts = domain.split("."); parts.reverse(); return(parts); } function is_domain_allowed(domain, allowed_domains) { var _local1 = 0; while (_local1 < allowed_domains.length) { if (array_has_prefix(reversed_domain_parts(domain), reversed_domain_parts(allowed_domains[_local1]))) { return(true); } _local1++; } return(false); } function deadClick() { } function setQualityLow() { _root.default_quality = "low"; _root.best_quality = "medium"; } function setQualityMedium() { _root.default_quality = "medium"; _root.best_quality = "high"; } function setQualityHigh() { _root.default_quality = "high"; _root.best_quality = "high"; } function gpstudios() { if (!INFO.NON_EXCLUSIVE) { getURL ("http://www.gpstudios.com", "_blank"); _root.gpstudios_visits++; } } function sponsor() { if (INFO.NON_EXCLUSIVE) { if (INFO.VERSION == "armorgames") { getURL ("http://armorgames.com/", "_blank"); } } else { if (INFO.ON_TTG) { getURL ("http://twotowersgames.com/", "_blank"); } else { getURL ("http://twotowersgames.com/eredir/1DWp7GqniXP2", "_blank"); } _root.sponsor_visits++; } } function bugReport() { getURL ("http://twotowersgames.com/bugreporter/wasted-youth/fromgame", "_blank"); } function walkthrough() { if (INFO.ON_TTG) { getURL ("http://twotowersgames.com/games/wasted-youth/solution", "_blank"); } else { getURL ("http://twotowersgames.com/eredir/QOjaqnq2N6lM", "_blank"); } } function download(getTxt) { if (INFO.ON_TTG) { txt = "http://twotowersgames.com/freegames"; } else { txt = "http://twotowersgames.com/eredir/oE5wIuz7SfVx"; } if (getTxt) { return(txt); } getURL (txt, "_blank"); } function jayisgames() { getURL ("http://jayisgames.com/archives/2011/05/wasted_youth.php", "_blank"); } function playgame(getTxt) { txt = "http://twotowersgames.com/games/wasted-youth"; if (getTxt) { return(txt); } getURL (txt, "_blank"); } function fsend(fnum) { switch (fnum) { case 1 : api.addEventListener(com.api.as2.evnt.APIEvents.STARTGAME, Start); api.startGame(); break; case 2 : api.addEventListener(com.api.as2.evnt.APIEvents.AUTHURL, Url); api.getAuthUrl(); break; case 3 : api.addEventListener(com.api.as2.evnt.APIEvents.USERNAME, UName); api.getUserName(); break; case 4 : api.addEventListener(com.api.as2.evnt.APIEvents.GETSCORE, GetScore); api.getScore(ilevel.text); break; case 5 : api.addEventListener(com.api.as2.evnt.APIEvents.GIVESCORE, GiveScore); api.giveScore(ilevel.text, iscore.text); } } function Start(e) { ttg.username = e.username; ttg.authed = e.authed; } function Url(e) { ttg.authurl = e.authurl; } function UName(e) { ttg.username = e.username; } function GetScore(e) { ttg.gameid = e.gameid; ttg.level = e.level; ttg.score = e.score; } function GiveScore(e) { ttg.gameid = e.gameid; ttg.level = e.level; ttg.authed = e.authed; ttg.username = e.username; } function Errors(e) { trace(("Error data transfer in method \"" + e.metod) + "\"\n"); } Stage.scaleMode = "exactFit"; System.security.allowDomain("*"); System.security.allowInsecureDomain("*"); if (LOADED_MOVIE) { INFO = _level0.INFO; onEnterFrame = function () { if (_level0.ready) { beginGame(); delete onEnterFrame; } }; } else { if (INFO.VERSION == "twotowersgames") { INFO.SITE_LOCKED = !is_domain_allowed(_url.split("/")[2], ["twotowersgames.com"]); INFO.SPONSOR = "twotowersgames"; INFO.JAY_IS_GAMES_ACTIVE = true; INFO.GPSTUDIOS_ACTIVE = false; INFO.ADS = "none"; } else if (INFO.VERSION == "newgrounds") { INFO.SITE_LOCKED = !is_domain_allowed(_url.split("/")[2], ["newgrounds.com", "uploads.ungrounded.net"]); INFO.SPONSOR = "twotowersgames"; INFO.JAY_IS_GAMES_ACTIVE = true; INFO.GPSTUDIOS_ACTIVE = true; INFO.ADS = "newgrounds"; } else if (INFO.VERSION == "kongregate") { INFO.KONGREGATE = _global.kongregate; INFO.KONGREGATE.services.connect(); INFO.SITE_LOCKED = !is_domain_allowed(_url.split("/")[2], ["kongregate.com"]); INFO.SPONSOR = "twotowersgames"; INFO.JAY_IS_GAMES_ACTIVE = true; INFO.GPSTUDIOS_ACTIVE = true; INFO.ADS = "none"; } else if (INFO.VERSION == "mochi") { mochi.as2.MochiAd.showPreGameAd({id:"33f89f112ad70e0d", res:"600x440", ad_finished:emptyFunction, ad_started:emptyFunction, no_progress_bar:true}); INFO.SITE_LOCKED = false; INFO.SPONSOR = "twotowersgames"; INFO.JAY_IS_GAMES_ACTIVE = true; INFO.GPSTUDIOS_ACTIVE = true; INFO.ADS = "mochi"; } else if (INFO.VERSION == "viral") { INFO.SITE_LOCKED = false; INFO.SPONSOR = "twotowersgames"; INFO.JAY_IS_GAMES_ACTIVE = true; INFO.GPSTUDIOS_ACTIVE = true; INFO.ADS = "cpmstar"; } else if (INFO.VERSION == "armorgames") { INFO.SPONSOR = "armorgames"; INFO.SITE_LOCKED = !is_domain_allowed(_url.split("/")[2], ["armorgames.com"]); INFO.FILE_PATH = "http://cache.armorgames.com/misc/game-data/wastedyouth/wasted-youth-1.swf"; INFO.NON_EXCLUSIVE = true; INFO.JAY_IS_GAMES_ACTIVE = false; INFO.JAY_IS_GAMES_INVISIBLE = true; INFO.GPSTUDIOS_ACTIVE = false; INFO.LOAD_COMPLETE_START = true; INFO.ADS = "none"; } else { INFO.SITE_LOCKED = true; } INFO.ON_TTG = is_domain_allowed(_url.split("/")[2], ["twotowersgames.com"]); if (!INFO.NON_EXCLUSIVE) { Playtomic.Log.View(3362, "4e5cf97cb00f4122", _root._url); } } if (INFO.SITE_LOCKED) { loader.gotoAndStop(2); } else { loader.preloader.gotoAndStop(INFO.ADS); } _root.game_settings = SharedObject.getLocal("gpstudios/wasted_youth_1/settings", "/"); _root.language_no = 0; _root.new_language_no = undefined; _root.musicvolume = 75; _root.sfxvolume = 100; lang_codes = []; lang_codes[0] = ["af", "Afrikaans", 0]; lang_codes[1] = ["sq", "Albanian", 0]; lang_codes[2] = ["ar", "Arabic", 0]; lang_codes[3] = ["eu", "Basque", 0]; lang_codes[4] = ["bg", "Bulgarian", 0]; lang_codes[5] = ["be", "Belarusian", 0]; lang_codes[6] = ["ca", "Catalan", 0]; lang_codes[7] = ["zh", "Chinese", 0]; lang_codes[8] = ["hr", "Croatian", 0]; lang_codes[9] = ["cs", "Czech", 0]; lang_codes[10] = ["da", "Danish", 0]; lang_codes[11] = ["nl", "Dutch", 2]; lang_codes[12] = ["en", "English", 0]; lang_codes[13] = ["et", "Estonian", 0]; lang_codes[14] = ["fo", "Faeroese", 0]; lang_codes[15] = ["fa", "Farsi", 0]; lang_codes[16] = ["fi", "Finnish", 0]; lang_codes[17] = ["fr", "French", 3]; lang_codes[18] = ["gd", "Gaelic (Scotland)", 0]; lang_codes[19] = ["ga", "Irish", 0]; lang_codes[20] = ["de", "German", 2]; lang_codes[21] = ["el", "Greek", 0]; lang_codes[22] = ["he", "Hebrew", 0]; lang_codes[23] = ["hi", "Hindi", 0]; lang_codes[24] = ["hu", "Hungarian", 0]; lang_codes[25] = ["is", "Icelandic", 0]; lang_codes[26] = ["id", "Indonesian", 0]; lang_codes[27] = ["it", "Italian", 0]; lang_codes[28] = ["ja", "Japanese", 0]; lang_codes[29] = ["ko", "Korean", 0]; lang_codes[30] = ["ko", "Korean (Johab)", 0]; lang_codes[31] = ["lv", "Latvian", 0]; lang_codes[32] = ["lt", "Lithuanian", 0]; lang_codes[33] = ["mk", "Macedonian (FYROM)", 0]; lang_codes[34] = ["ms", "Malaysian", 0]; lang_codes[35] = ["mt", "Maltese", 0]; lang_codes[36] = ["no", "Norwegian", 0]; lang_codes[37] = ["pl", "Polish", 0]; lang_codes[38] = ["pt", "Portuguese", 0]; lang_codes[39] = ["rm", "Rhaeto-Romanic", 0]; lang_codes[40] = ["ro", "Romanian", 0]; lang_codes[41] = ["ru", "Russian", 1]; lang_codes[42] = ["sz", "Sami (Lappish)", 0]; lang_codes[43] = ["sr", "Serbian", 0]; lang_codes[44] = ["sk", "Slovak", 0]; lang_codes[45] = ["sl", "Slovenian", 0]; lang_codes[46] = ["sb", "Sorbian", 0]; lang_codes[47] = ["es", "Spanish", 4]; lang_codes[48] = ["sx", "Sutu", 0]; lang_codes[49] = ["sv", "Swedish", 0]; lang_codes[50] = ["th", "Thai", 0]; lang_codes[51] = ["ts", "Tsonga", 0]; lang_codes[52] = ["tn", "Tswana", 0]; lang_codes[53] = ["tr", "Turkish", 0]; lang_codes[54] = ["uk", "Ukrainian", 0]; lang_codes[55] = ["ur", "Urdu", 0]; lang_codes[56] = ["ve", "Venda", 0]; lang_codes[57] = ["vi", "Vietnamese", 0]; lang_codes[58] = ["xh", "Xhosa", 0]; lang_codes[59] = ["ji", "Yiddish", 0]; lang_codes[60] = ["zu", "Zulu", 0]; _root.language_no = 0; if (!INFO.NON_EXCLUSIVE) { language_string = System.capabilities.language.substring(0, 2); var i = 0; while (i < lang_codes.length) { code = lang_codes[i][0]; if (code == language_string) { _root.language_no = lang_codes[i][2]; break; } i++; } } load_game_settings(); _global.LANG = function (array, obj) { var _local2 = array[_root.language_no]; if (obj == undefined) { obj = {}; } for (var _local4 in obj) { _local2 = _local2.split(("[" + _local4) + "]").join(obj[_local4]); } _local2 = _local2.split("[PlayerName]").join(_root.playername); return(_local2); }; var myMenu = new ContextMenu(); myMenu.hideBuiltInItems(); var cm1 = new ContextMenuItem("\u00A9 GP Studios 2011", deadClick); var cm2 = new ContextMenuItem("Quality: Low", setQualityLow); cm2.separatorBefore = true; var cm3 = new ContextMenuItem("Quality: Medium", setQualityMedium); var cm4 = new ContextMenuItem("Quality: High", setQualityHigh); var cm5 = new ContextMenuItem("Visit TwoTowersGames.com", sponsor); cm5.separatorBefore = true; var cm6 = new ContextMenuItem("Visit GPStudios.com", gpstudios); var cm7 = new ContextMenuItem("Walkthrough / Tips", walkthrough); var cm8 = new ContextMenuItem("Bug Report", bugReport); var cm9 = new ContextMenuItem("Host This Game", function () { download(); }); myMenu.customItems.push(cm1, cm2, cm3, cm4); if (!INFO.NON_EXCLUSIVE) { myMenu.customItems.push(cm5, cm6, cm7, cm8, cm9); } _root.menu = myMenu; if (!INFO.NON_EXCLUSIVE) { var GPSAPI = com.as2.GPSAPI; GPSAPI.newGPSAPI(this); } if (!INFO.NON_EXCLUSIVE) { var ttg = {}; if (INFO.VERSION == "twotowersgames") { var api = (new com.api.as2.API("000192", "L3a89A61", "http://twotowersgames.com/api/")); fsend(1); } } api.addEventListener(com.api.as2.evnt.APIEvents.BADDATA, Errors); function beginGame() { ready = true; } function remove() { Playtomic.Log.Play(); nextFrame(); } contBytesLoaded = 0; contBytesTotal = 100; if (!INFO.SITE_LOCKED) { var mcLoader = new MovieClipLoader(); var listener = new Object(); listener.onLoadProgress = function (target, bytesLoaded, bytesTotal) { contBytesLoaded = bytesLoaded; contBytesTotal = bytesTotal; }; mcLoader.addListener(listener); if (INFO.FILE_PATH == undefined) { mcLoader.loadClip("http://twotowersgames.com/game/wasted-youth/swfsitelocked/wasted-youth.swf", container); } else { mcLoader.loadClip(INFO.FILE_PATH, container); } }
Frame 2
stop();
Symbol 15 MovieClip Frame 1
stop();
Instance of Symbol 14 MovieClip in Symbol 15 MovieClip Frame 1
onClipEvent (load) { if (!_root.INFO.GPSTUDIOS_ACTIVE) { _visible = false; } if (_root.INFO.GPSTUDIOS_INVISIBLE) { _parent._visible = false; } } on (press) { _root.gpstudios(); _root.playsound("click1.wav"); } on (rollOver) { _parent.gotoAndStop(2); _root.playsound("click2.wav"); } on (releaseOutside, rollOut) { _parent.gotoAndStop(1); }
Symbol 19 MovieClip [loading_screen] Frame 1
stop();
Symbol 19 MovieClip [loading_screen] Frame 2
playgame.text = _root.playgame(true); download.text = _root.download(true);
Instance of Symbol 5 MovieClip in Symbol 19 MovieClip [loading_screen] Frame 2
on (press) { _root.playgame(); }
Instance of Symbol 5 MovieClip in Symbol 19 MovieClip [loading_screen] Frame 2
on (press) { _root.download(); }
Symbol 27 MovieClip Frame 1
stop();
Symbol 39 MovieClip Frame 1
stop();
Symbol 40 MovieClip [Preloader] Frame 1
function enterFrameHandler() { var _local2 = 0; _local2 = _root.getBytesLoaded() / _root.getBytesTotal(); if (loadingBar) { loadingBar.gotoAndStop(Number(_local2 * (loadingBar.totalFrames - 1)) + 1); } if (_local2 >= 1) { onEnterFrame = null; gotoAndStop ("loaded"); } } stop(); var autoPlay; var className; onEnterFrame = enterFrameHandler;
Symbol 40 MovieClip [Preloader] Frame 10
function _onPlayClick() { _root.nextFrame(); _root.play(); _parent._onLoaded(); } if (playButton) { playButton.onRelease = _onPlayClick; playButton.stop(); } if (autoPlay) { _onPlayClick(null); }
Symbol 45 MovieClip [Newgrounds API Classes] Frame 1
#initclip 40 Object.registerClass("Newgrounds API Classes", com.newgrounds.shims.APIShim); #endinitclip
Symbol 97 MovieClip [FlashAd] Frame 1
#initclip 41 Object.registerClass("FlashAd", com.newgrounds.components.FlashAdBase); #endinitclip stop();
Symbol 98 MovieClip [APIConnector] Frame 1
function _onLoaded() { gotoAndStop ("invisible"); if (_redirect) { com.newgrounds.API.loadOfficialVersion(); } } function _apiConnect() { var _local2 = com.newgrounds.API; if (_local2 && (!_local2.connected)) { if (!apiId) { com.newgrounds.Logger.logError("No API ID entered in the API Connector component.", "You can create an API ID for this submission at http://newgrounds.com/account/flashapi", "Enter your API ID into the API Connector using the Component Inspector (Window -> Component Inspector)."); return(undefined); } switch (debugMode) { case "Off" : default : _local2.debugMode = _local2.RELEASE_MODE; break; case "Simulate Logged-in User" : _local2.debugMode = _local2.DEBUG_MODE_LOGGED_IN; break; case "Simulate Logged-out User" : _local2.debugMode = _local2.DEBUG_MODE_LOGGED_OUT; break; case "Simulate New Version" : _local2.debugMode = _local2.DEBUG_MODE_NEW_VERSION; break; case "Simulate Host Blocked" : _local2.debugMode = _local2.DEBUG_MODE_HOST_BLOCKED; } _local2.addEventListener(com.newgrounds.APIEvent.API_CONNECTED, _onConnected); _local2.connect(_root, apiId, encryptionKey, movieVersion); } } function _onConnected(event) { if ((redirectOnNewVersion && (event.__get__success())) && (event.__get__data().newVersion)) { _redirect = true; } if ((redirectOnHostBlocked && (!event.__get__success())) && (event.__get__error() == com.newgrounds.APIEvent.ERROR_HOST_BLOCKED)) { _redirect = true; } if (_redirect) { gotoAndStop ("adPreloader"); forceAlwaysOnTop(); } } function forceAlwaysOnTop() { var _local2 = getNextHighestDepth(); swapDepths(_local2); if (Stage) { _x = ((Stage.width - _width) / 2); _y = ((Stage.height - _height) / 2); _visible = true; } if (_root && (_root instanceof MovieClip)) { MovieClip(_root).stop(); } } stop(); if (_root && (_root instanceof MovieClip)) { MovieClip(_root).stop(); } var apiId; var encryptionKey; var movieVersion; var debugMode; var connectorType; var redirectOnHostBlocked; var redirectOnNewVersion; var _redirect; _x = Number(_x); _y = Number(_y); if (!debugMode) { debugMode = "Simulate Logged-in User"; } if (!connectorType) { connectorType = "Flash Ad + Preloader"; } switch (connectorType) { case "Flash Ad + Preloader" : gotoAndStop ("adPreloader"); break; case "Flash Ad Only" : gotoAndStop ("ad"); break; case "Invisible" : gotoAndStop ("invisible"); } _apiConnect();
Instance of Symbol 97 MovieClip [FlashAd] "ad" in Symbol 98 MovieClip [APIConnector] Frame 1
//component parameters onClipEvent (construct) { apiId = ""; showBorder = false; }
Instance of Symbol 40 MovieClip [Preloader] "loader" in Symbol 98 MovieClip [APIConnector] Frame 1
//component parameters onClipEvent (construct) { autoPlay = false; mainClass = ""; }
Symbol 101 MovieClip Frame 1
onEnterFrame = function () { _y = random(600); _height = random(200); _alpha = random(20); };
Symbol 103 MovieClip Frame 1
function reset() { _alpha = 0; _x = random(600); visi = false; } reset(); onEnterFrame = function () { _x = (_x + (random(50) - 25)); if (_x > 600) { _x = (_x - 600); } _alpha = random(10); };
Instance of Symbol 116 MovieClip in Symbol 118 MovieClip Frame 1
onClipEvent (load) { _alpha = random(10); } onClipEvent (enterFrame) { _alpha = random(10); oldframe = _currentframe; while (oldframe == _currentframe) { gotoAndStop(random(8) + 1); } }
Instance of Symbol 128 MovieClip "b" in Symbol 129 MovieClip Frame 1
onClipEvent (load) { i = 1; clicksound = "click1.wav"; oversound = "click2.wav"; } on (rollOver) { if (!_parent._parent.request) { _parent._parent.over(); over = true; _root.playsound(oversound); } } on (releaseOutside, rollOut) { _parent._parent.out(); over = false; } on (press) { if (!_parent._parent.request) { _parent._parent.click(); _root.playsound(clicksound); } } onClipEvent (enterFrame) { if ((over and (!_parent._parent.request)) and (!_root.vcam.blackfade3.visi)) { if (i < 5) { i = i + 1; } } else if (i > 1) { i = i - 1; } _parent._parent.gotoAndStop(i); }
Symbol 130 MovieClip Frame 1
stop();
Symbol 131 MovieClip Frame 1
stop();
Instance of Symbol 130 MovieClip in Symbol 131 MovieClip Frame 2
onClipEvent (load) { function click() { _root.beginGame(); } function over() { _parent.gotoAndStop(3); } function out() { _parent.gotoAndStop(2); } }
Symbol 138 MovieClip Frame 1
gotoAndStop(_name.split("flag")[1]);
Instance of Symbol 140 MovieClip "b" in Symbol 141 MovieClip Frame 1
onClipEvent (load) { i = 1; clicksound = "click1.wav"; oversound = "click2.wav"; } on (rollOver) { if (!_parent._parent.request) { _parent._parent.over(); over = true; _root.playsound(oversound); } } on (releaseOutside, rollOut) { _parent._parent.out(); over = false; } on (press) { if (!_parent._parent.request) { _parent._parent.click(); _root.playsound(clicksound); } } onClipEvent (enterFrame) { if ((over and (!_parent._parent.request)) and (!_root.vcam.blackfade3.visi)) { if (i < 5) { i = i + 1; } } else if (i > 1) { i = i - 1; } _parent._parent.gotoAndStop(i); }
Symbol 142 MovieClip Frame 1
stop();
Symbol 145 MovieClip Frame 1
stop(); num = Number(_name.split("flag")[1]);
Instance of Symbol 138 MovieClip "flag" in Symbol 145 MovieClip Frame 1
onClipEvent (load) { gotoAndStop(_parent.num); }
Instance of Symbol 142 MovieClip in Symbol 145 MovieClip Frame 1
onClipEvent (load) { function click() { _parent._parent.updateLang(_parent.num); } }
Symbol 148 MovieClip Frame 1
function updateLang(num) { currentTarg.gotoAndStop(1); targ = this["flag" + num]; targ.gotoAndStop(2); highlight.xdest = targ._x; _root.language_no = num - 1; _root.LANG_INIT(); _root.save_game_settings(); currentLang = languages[num - 1]; screen.update(); currentTarg = targ; } languages = ["English", "\u0420\u0443\u0441\u0441\u043A\u0438\u0439", "Deutsch", "Fran\u00E7ais", "Espagnol"]; updateLang(_root.language_no + 1); highlight._x = highlight.xdest;
Instance of Symbol 147 MovieClip "highlight" in Symbol 148 MovieClip Frame 1
onClipEvent (load) { xdest = _x; } onClipEvent (enterFrame) { _x = (_x + ((xdest - _x) / 2.5)); }
Symbol 155 MovieClip Frame 1
if (_root.INFO.SPONSOR == "twotowersgames") { gotoAndStop ("twotowersgames"); } else if (_root.INFO.SPONSOR == "armorgames") { gotoAndStop ("armorgames"); } stop();
Instance of Symbol 14 MovieClip in Symbol 155 MovieClip Frame 1
on (press) { _root.sponsor(); _root.playsound("click1.wav"); } on (rollOver) { _parent.gotoAndStop(2); _root.playsound("click2.wav"); } on (releaseOutside, rollOut) { _parent.gotoAndStop(1); }
Instance of Symbol 14 MovieClip in Symbol 155 MovieClip Frame 3
on (press) { _root.sponsor(); _root.playsound("click1.wav"); } on (rollOver) { _parent.gotoAndStop(4); _root.playsound("click2.wav"); } on (releaseOutside, rollOut) { _parent.gotoAndStop(3); }
Symbol 159 MovieClip Frame 1
stop();
Instance of Symbol 14 MovieClip in Symbol 159 MovieClip Frame 1
onClipEvent (load) { if (!_root.INFO.JAY_IS_GAMES_ACTIVE) { _visible = false; } if (_root.INFO.JAY_IS_GAMES_INVISIBLE) { _parent._visible = false; } } on (press) { _root.jayisgames(); _root.playsound("click1.wav"); } on (rollOver) { _parent.gotoAndStop(2); _root.playsound("click2.wav"); } on (releaseOutside, rollOut) { _parent.gotoAndStop(1); }
Symbol 169 MovieClip Frame 1
stop();
Instance of Symbol 131 MovieClip in Symbol 169 MovieClip Frame 1
onClipEvent (load) { function ef() { if (_root.contBytesLoaded > 50) { percent = Math.round((_root.contBytesLoaded / _root.contBytesTotal) * 100); if ((percent >= 100) && (!finished)) { finished = true; if (_root.INFO.LOAD_COMPLETE_START) { _root.beginGame(); } else { visi = false; } } } else { percent = 0; } percentage = percent + "%"; if (visi) { yrec = (yon - _y) / 3; } else { yrec = (yoff - _y) / 3; if (Math.abs(_y - yoff) < 5) { visi = true; gotoAndStop (2); } } _y = (_y + yrec); } yon = _y; yoff = _y + 40; finished = false; visi = true; percent = 0; ef(); } onClipEvent (enterFrame) { ef(); }
Instance of Symbol 168 MovieClip "adBox" in Symbol 169 MovieClip Frame 2
onClipEvent (load) { _visible = false; size = adBox.getBytesLoaded(); var CPMStarContentSpotID = "4215QF6DF3400"; adBox.loadMovie("http://server.cpmstar.com/adviewas2.swf?contentspotid=" + CPMStarContentSpotID); } onClipEvent (enterFrame) { if (_root.INFO.CPMSTAR_ACTIVE) { if (adBox.getBytesLoaded() > size) { if ((adBox._width > 0) && (adBox._height > 0)) { _visible = true; } } } }
Instance of Symbol 98 MovieClip [APIConnector] in Symbol 169 MovieClip Frame 3
//component parameters onClipEvent (construct) { apiId = "19161:jFCc5N22"; encryptionKey = "1jhNC4xRPP8GSWz163VTyIhYxsqmpeWa"; debugMode = "Simulate Logged-in User"; movieVersion = ""; connectorType = "Flash Ad Only"; redirectOnNewVersion = true; redirectOnHostBlocked = true; }
Symbol 172 MovieClip Frame 1
stop();
Symbol 172 MovieClip Frame 2
playgame.text = _root.playgame(true); download.text = _root.download(true);
Instance of Symbol 5 MovieClip in Symbol 172 MovieClip Frame 2
on (press) { _root.playgame(); }
Instance of Symbol 5 MovieClip in Symbol 172 MovieClip Frame 2
on (press) { _root.download(); }
Symbol 204 MovieClip [MedalPopup] Frame 1
function onMedalUnlocked(event) { if (event.__get__success()) { _medalQueue.push(event.__get__data()); showNextUnlock(); } } function showNextUnlock() { if (_unlockedMedal) { return(undefined); } if (!_medalQueue.length) { gotoAndStop ("hidden"); onEnterFrame = null; return(undefined); } _unlockedMedal = com.newgrounds.Medal(_medalQueue.shift()); gotoAndPlay ("medalUnlocked"); } gotoAndStop ("hidden"); com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, onMedalUnlocked); var alwaysOnTop; _x = Number(_x); _y = Number(_y); var _unlockedMedal; var _medalQueue = []; var _alwaysOnTop = true; if (alwaysOnTop) { _alwaysOnTop = alwaysOnTop == "true"; }
Symbol 204 MovieClip [MedalPopup] Frame 15
function medalPopupEnterFrame() { if (_alwaysOnTop) { var _local1 = getNextHighestDepth(); swapDepths(_local1); } if (_medalScrollRect) { _medalScrollRect.offset(2, 0); medalNameClip.scrollRect = _medalScrollRect; if (_medalScrollRect.left >= (medalNameClip.textField.textWidth + 10)) { _medalScrollRect = null; play(); } } } var _medalScrollRect; if (_unlockedMedal) { if (medalNameClip && (medalNameClip.textField)) { medalNameClip.textField.text = _unlockedMedal.name; com.newgrounds.API.setFont(medalNameClip.textField, "Pakenham"); } if (medalPointsText) { medalPointsText.text = _unlockedMedal.value.toString(); } if (medalNameClip.textField.textWidth > medalNameClip._width) { _medalScrollRect = new flash.geom.Rectangle(-medalNameClip._width, 0, medalNameClip._width, medalNameClip._height); medalNameClip.textField._width = 1000; medalNameClip.scrollRect = _medalScrollRect; } onEnterFrame = medalPopupEnterFrame; }
Symbol 204 MovieClip [MedalPopup] Frame 23
if (_unlockedMedal && (medalIcon)) { _unlockedMedal.attachIcon(medalIcon); }
Symbol 204 MovieClip [MedalPopup] Frame 84
if (_medalScrollRect) { stop(); }
Symbol 204 MovieClip [MedalPopup] Frame 105
stop(); _unlockedMedal = null; showNextUnlock();
Symbol 205 MovieClip Frame 1
stop(); if (_root.INFO.VERSION == "newgrounds") { gotoAndStop (2); }
Instance of Symbol 204 MovieClip [MedalPopup] in Symbol 205 MovieClip Frame 2
//component parameters onClipEvent (construct) { alwaysOnTop = "true"; }
Symbol 52 MovieClip [__Packages.com.newgrounds.APIConnection] Frame 0
class com.newgrounds.APIConnection { var _hostURL, hostDomain, sessionId, publisherId, encryptionKey, userEmail, username, userId, userpageFormat, initialized; function APIConnection () { reset(); } function get hostURL() { return(_hostURL); } function set hostURL(value) { _hostURL = value; hostDomain = null; if ((_hostURL && (_hostURL.indexOf("file://") != -1)) || (_hostURL == "localhost")) { hostDomain = _hostURL.split("/")[2]; } if (!hostDomain) { hostDomain = "localhost"; } //return(hostURL); } function get sandboxType() { return(System.security.sandboxType); } function get isNetworkHost() { switch (sandboxType) { case "localWithFile" : case "localWithNetwork" : case "localTrusted" : case "application" : return(false); case "remote" : } return(true); } function get hasUserSession() { return(((sessionId != null) && (sessionId != "")) && (publisherId != 0)); } function get connected() { return(connectionState == CONNECTED); } function reset() { connectionState = NOT_CONNECTED; encryptionKey = null; sessionId = null; userEmail = null; username = null; userId = 0; userpageFormat = 0; } function assertInitialized() { if (!initialized) { com.newgrounds.Logger.logError("You must initialized the API using API.connect() before using this command."); return(false); } return(true); } function assertConnected() { if ((!connectionState) == CONNECTED) { com.newgrounds.Logger.logError("You must establish a connection using API.connect() before using this command."); return(false); } return(true); } function sendSimpleCommand(command, completeHandler, parameters, secureParameters) { if (parameters == undefined) { parameters = null; } if (secureParameters == undefined) { secureParameters = null; } var _local2 = new com.newgrounds.APICommand(command); _local2.__set__parameters(parameters); _local2.__set__secureParameters(secureParameters); if (completeHandler != null) { _local2.addEventListener(com.newgrounds.APIEvent.COMMAND_COMPLETE, completeHandler); } _local2.send(this); } function sendCommand(command) { command.send(this); } function loadInBrowser(command, newWindow, parameters) { if (newWindow == undefined) { newWindow = true; } if (parameters == undefined) { parameters = null; } var _local2 = new com.newgrounds.APICommand(command); _local2.__set__parameters(parameters); _local2.loadInBrowser(this, newWindow); } static var NOT_CONNECTED = "notConnected"; static var CONNECTING = "connecting"; static var CONNECTED = "connected"; var connectionState = NOT_CONNECTED; var apiURL = "http://www.ngads.com/gateway_v2.php"; }
Symbol 47 MovieClip [__Packages.com.newgrounds.EventDispatcher] Frame 0
class com.newgrounds.EventDispatcher { var _listeners; function EventDispatcher () { _listeners = {}; } function addEventListener(type, listener) { if (!_listeners[type]) { _listeners[type] = []; } if (typeof(listener) == "function") { _listeners[type].push({target:null, func:listener}); } else { _listeners[type].push(listener); } } function removeEventListener(type, listener) { var _local3 = _listeners[type]; if (_local3) { var _local5 = _local3.length; var _local2 = 0; while (_local2 < _local5) { if ((_local3[_local2].func == listener) || (_local3[_local2] == listener)) { _local3.splice(_local2, 1); return(undefined); } _local2++; } } } function dispatchEvent(event) { var _local4 = _listeners[event.__get__type()]; if (_local4) { var _local5 = _local4.length; var _local2 = 0; while (_local2 < _local5) { var _local3 = _local4[_local2]; _local3.func.call(_local3.target, event); _local2++; } } return(true); } }
Symbol 46 MovieClip [__Packages.com.newgrounds.Event] Frame 0
class com.newgrounds.Event { var _type; function Event (type) { _type = type; } function get type() { return(_type); } }
Symbol 48 MovieClip [__Packages.com.newgrounds.APIEventDispatcher] Frame 0
class com.newgrounds.APIEventDispatcher extends com.newgrounds.EventDispatcher { static var _globalDispatcher; function APIEventDispatcher () { super(); } static function get globalDispatcher() { return(_globalDispatcher); } static function set globalDispatcher(value) { _globalDispatcher = value; //return(globalDispatcher); } static function initEventQueue() { setInterval(runEventQueue, 50); return([]); } function dispatchEvent(event) { _eventQueue.push({dispatcher:this, event:event}); return(true); } function actualDispatchEvent(event) { var _local3 = super.dispatchEvent(event); if (_globalDispatcher && (this != _globalDispatcher)) { _globalDispatcher.dispatchEvent(event); } } static function runEventQueue(event) { var _local3 = _eventQueue.length; if (_local3) { var _local4 = _eventQueue; _eventQueue = []; var _local1 = 0; while (_local1 < _local3) { var _local2 = _local4[_local1]; _local2.dispatcher.actualDispatchEvent(_local2.event); _local1++; } } } static var _eventQueue = initEventQueue(); }
Symbol 51 MovieClip [__Packages.com.newgrounds.encoders.BaseN] Frame 0
class com.newgrounds.encoders.BaseN { var _hash, _base, _reverseHash; function BaseN (hash) { if (hash) { _hash = hash; } else { _hash = DEFAULT_HASH; } _base = _hash.length; _reverseHash = new Object(); var _local2 = 0; while (_local2 < _hash.length) { _reverseHash[_hash.charAt(_local2)] = _local2; _local2++; } } function encodeUint(number, minimumChars) { if (minimumChars == undefined) { minimumChars = 1; } var _local2 = ""; var _local3 = number; while (_local3 != 0) { _local2 = _hash.charAt(_local3 % _base) + _local2; _local3 = _local3 / _base; _local3 = int(_local3); } while (_local2.length < minimumChars) { _local2 = _hash.charAt(0) + _local2; } return(_local2); } function decodeUint(encodedNumber) { var _local3 = 0; var _local2 = 0; while (_local2 < encodedNumber.length) { _local3 = _local3 * _base; _local3 = _local3 + _reverseHash[encodedNumber.charAt(_local2)]; _local2++; } return(_local3); } static var DEFAULT_HASH = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/"; }
Symbol 56 MovieClip [__Packages.com.newgrounds.APICommand] Frame 0
class com.newgrounds.APICommand extends com.newgrounds.APIEventDispatcher { var _command, _parameters, _secureParameters, _hasTimeout, _preventCache, _files, _loader, _timeoutTimer, dispatchEvent; function APICommand (command) { super(); _command = command; _parameters = new Object(); _secureParameters = new Object(); _hasTimeout = true; } static function stopPendingCommands() { for (var _local2 in _pendingCommands) { var _local1 = _pendingCommands[_local2]; _local1.close(); } _pendingCommands = []; } static function onThrottleTimer(event) { if (_throttleCount > 0) { _throttleCount--; } if (_commandQueue.length) { var _local1 = _commandQueue.shift(); _local1.command.send(_local1.connection); } } static function encryptHex(hexValue) { var _local4 = hexValue.length % 6; var _local3 = ""; var _local1 = 0; while (_local1 < hexValue.length) { _local3 = _local3 + _encryptor.encodeUint(int("0x" + hexValue.substr(_local1, 6)), 4); _local1 = _local1 + 6; } return(_local4.toString() + _local3); } function get command() { return(_command); } function set command(value) { _command = value; //return(command); } function get hasTimeout() { return(_hasTimeout); } function set hasTimeout(val) { _hasTimeout = val; //return(hasTimeout); } function get parameters() { return(_parameters); } function set parameters(object) { _parameters = new Object(); if (object) { for (var _local3 in object) { _parameters[_local3] = object[_local3]; } } //return(parameters); } function get preventCache() { return(_preventCache); } function set preventCache(value) { _preventCache = value; //return(preventCache); } function get secureParameters() { return(_secureParameters); } function set secureParameters(object) { _secureParameters = new Object(); if (object) { for (var _local3 in object) { _secureParameters[_local3] = object[_local3]; } } //return(secureParameters); } function get hasSecureParameters() { for (var _local2 in _secureParameters) { return(true); } return(false); } function addFile(filename, data, dataField, contentType) { if (contentType == undefined) { contentType = "application/octet-stream"; } if (!_files) { _files = new Object(); } var _local3 = {filename:filename, data:data, dataField:dataField, contentType:contentType}; _files[filename] = _local3; } function removeFile(filename) { if (_files) { delete _files[filename]; } } function clearFiles() { _files = null; } function close() { if (_loader) { clearInterval(_timeoutTimer); var _local2 = 0; while (_local2 < _pendingCommands.length) { if (_pendingCommands[_local2] == this) { _pendingCommands.splice(_local2, 1); break; } _local2++; } _loader = null; } } function loadInBrowser(connection, newWindow) { _parameters.command_id = _command; _parameters.tracker_id = (connection.apiId ? (connection.apiId) : 1); if (connection.debug) { _parameters.debug = 1; } var _local3 = (connection.apiURL + "?host=") + escape(connection.hostDomain); for (var _local4 in _parameters) { _local3 = _local3 + ((("&" + escape(_local4)) + "=") + escape(_parameters[_local4])); } var _local6; if (newWindow) { _local6 = "_blank"; } else { _local6 = "_top"; } _root.getURL(_local3, _local6); } function send(connection) { if (_throttleCount >= THROTTLE_THRESHOLD) { _commandQueue.push({connection:connection, command:this}); } else { sendInternal(connection); } } function sendInternal(connection) { var _local4; _local4 = new LoadVars(); _local4.command_id = _command; _local4.tracker_id = connection.apiId; if (connection.debug) { _local4.debug = 1; } if (_preventCache) { _local4.seed = Math.random(); } var _local2; var _local3; var _local7; for (_local2 in _parameters) { _local3 = _parameters[_local2]; if (_local3 != null) { if (typeof(_local3) == "boolean") { _local4[_local2] = int(_local3); } else { _local4[_local2] = _local3; } } } if (hasSecureParameters) { var _local6 = new Object(); for (_local2 in _secureParameters) { _local3 = _secureParameters[_local2]; if (_local3 != null) { if (typeof(_local3) == "boolean") { _local6[_local2] = int(_local3); } else { _local6[_local2] = _local3; } } } var _local8 = ""; _local7 = 0; while (_local7 < 16) { _local8 = _local8 + ENCRYPTOR_RADIX.charAt(int(Math.random() * ENCRYPTOR_RADIX.length)); _local7++; } _local4.command_id = "securePacket"; _local6.command_id = _command; _local6.as_version = 3; _local6.session_id = connection.sessionId; _local6.user_email = connection.userEmail; _local6.publisher_id = connection.publisherId; _local6.seed = _local8; var _local13 = com.newgrounds.crypto.MD5.hash(_local8); var _local11 = com.newgrounds.crypto.RC4.encrypt(com.newgrounds.encoders.json.JSON.encode(_local6), connection.encryptionKey); _local4.secure = encryptHex(_local13 + _local11); } com.newgrounds.Logger.logInternal("Sending packet:", _local4); var _local12; _local12 = "application/x-www-form-urlencoded"; for (_local2 in _local4) { if (typeof(_local4[_local2]) == "object") { _local4[_local2] = com.newgrounds.encoders.json.JSON.encode(_local4[_local2]); } } if (_files) { for (var _local10 in _files) { var _local5 = _files[_local10]; if (typeof(_local5.data) == "string") { _local4[_local10] = _local5.data; } else { _local4[_local10] = com.newgrounds.encoders.json.JSON.encode(_local5.data); } } } _pendingCommands.push(this); _throttleCount++; startLoader(connection.apiURL, _local4, _local12); } function startLoader(url, data, contentType) { _loader = LoadVars(data); _loader.onData = as2CompleteHandler; _loader.contentType = contentType; _loader.sendAndLoad(url, _loader, "POST"); if (_hasTimeout) { setInterval(this, onTimeout, TIMEOUT_INTERVAL); } } function as2CompleteHandler(data) { var _local3; var _local2 = 0; while (_local2 < _pendingCommands.length) { if (_pendingCommands[_local2]._loader == this) { _local3 = _pendingCommands[_local2]; break; } _local2++; } _local3.onComplete(data); } function onTimeout(event) { close(); com.newgrounds.Logger.logError("Command timed out."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_TIMED_OUT)); } function onError(error) { com.newgrounds.Logger.logError("Error when sending command:", error); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_UNKNOWN)); close(); } function onComplete(data) { try { if ((!data) || (data == "")) { throw new Error(); } com.newgrounds.Logger.logInternal("Received packet:", data); var _local2 = com.newgrounds.encoders.json.JSON.decode(data); if (!_local2) { throw new Error(); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, _local2, ((_local2 && (_local2.success)) ? (com.newgrounds.APIEvent.ERROR_NONE) : (com.newgrounds.APIEvent.ERROR_COMMAND_FAILED)))); } catch(e:Error) { com.newgrounds.Logger.logError("Invalid response returned from server: " + data); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_BAD_RESPONSE)); } close(); } static var TIMEOUT_INTERVAL = 10000; static var THROTTLE_INTERVAL = 5000; static var THROTTLE_THRESHOLD = 7; static var _throttleCount = 0; static var _commandQueue = []; static var _throttleTimer = setInterval(onThrottleTimer, THROTTLE_INTERVAL); static var ENCRYPTOR_RADIX = "/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X"; static var _encryptor = new com.newgrounds.encoders.BaseN(ENCRYPTOR_RADIX); static var _pendingCommands = []; static var CRLF = "\r\n"; }
Symbol 68 MovieClip [__Packages.com.newgrounds.API] Frame 0
class com.newgrounds.API { static var _adFeedURL, _movieVersion, _bridge, _movieName, _newVersion, _saveFilePath, _imageFilePath; function API () { } static function get connected() { return(_connection.__get__connected()); } static function get isNetworkHost() { return(_connection.__get__isNetworkHost()); } static function get apiId() { _connection.assertInitialized(); return(_connection.apiId); } static function get debugMode() { return(_debugMode); } static function set debugMode(val) { _debugMode = val; //return(debugMode); } static function get publisherId() { _connection.assertInitialized(); return(_connection.publisherId); } static function get sessionId() { _connection.assertInitialized(); return(_connection.sessionId); } static function get hostDomain() { _connection.assertInitialized(); return(_connection.hostDomain); } static function get hostURL() { _connection.assertInitialized(); return(_connection.__get__hostURL()); } static function get isNewgrounds() { return(_connection.publisherId == 1); } static function get hasUserSession() { _connection.assertInitialized(); return(_connection.__get__hasUserSession()); } static function get username() { _connection.assertInitialized(); return(_connection.username); } static function get userId() { _connection.assertInitialized(); return(_connection.userId); } static function assertConnected(eventType) { if (eventType == undefined) { eventType = null; } if (_connection.assertConnected()) { return(true); } if (eventType) { dispatchEvent(eventType, null, com.newgrounds.APIEvent.ERROR_NOT_CONNECTED); } return(false); } static function get adsApproved() { return(_adsApproved); } static function get adFeedURL() { return(_adFeedURL); } static function get medals() { return(_medalsArray); } static function get scoreBoards() { return(_scoreBoardsArray); } static function get saveGroups() { return(_saveGroupsArray); } static function connect(_root, apiId, encryptionKey, movieVersion) { if (encryptionKey == undefined) { encryptionKey = null; } if (movieVersion == undefined) { movieVersion = ""; } com.newgrounds.APIEventDispatcher.__set__globalDispatcher(_dispatcher); System.security.loadPolicyFile("http://apifiles.ngfiles.com/crossdomain.xml"); if (_connection.initialized) { com.newgrounds.Logger.logError("Connection already in progress. Please call API.disconnect() before attempting another connection."); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_NOT_CONNECTED); return(undefined); } if ((!apiId) || (apiId == "")) { com.newgrounds.Logger.logError("No apiId given. Please use the API ID from your API settings page."); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return(undefined); } com.newgrounds.Logger.logMessage(("====== Newgrounds API v" + VERSION) + " ======"); _connection.connectionState = com.newgrounds.APIConnection.CONNECTING; _root=_root;//parameter overwritten _movieVersion = movieVersion; _connection.apiId = apiId; var _local3 = apiId.indexOf(":"); if (_local3 != -1) { _connection.trackerId = int(apiId.substring(0, _local3)); } else { _connection.trackerId = int(apiId); } if (!_connection.trackerId) { com.newgrounds.Logger.logError("Invalid API ID: " + apiId); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return(undefined); } _connection.encryptionKey = encryptionKey; _connection.initialized = true; _connection.__set__hostURL(_root._url); doConnect(_root); } static function doConnect(flashVars) { if (isNetworkHost && (_debugMode != RELEASE_MODE)) { com.newgrounds.Logger.logMessage("Live file detected, turning off debug mode."); _debugMode = RELEASE_MODE; } if (_debugMode == RELEASE_MODE) { if (flashVars) { if (flashVars.NewgroundsAPI_UserName) { _connection.username = flashVars.NewgroundsAPI_UserName; } if (flashVars.NewgroundsAPI_UserID) { _connection.userId = flashVars.NewgroundsAPI_UserID; } if (flashVars.NewgroundsAPI_PublisherID) { _connection.publisherId = flashVars.NewgroundsAPI_PublisherID; } if (flashVars.NewgroundsAPI_UserpageFormat) { _connection.userpageFormat = flashVars.NewgroundsAPI_UserpageFormat; } if (flashVars.NewgroundsAPI_SessionID) { _connection.sessionId = flashVars.NewgroundsAPI_SessionID; } if (flashVars.NewgroundsAPI_SandboxID) { _bridge = new com.newgrounds.Bridge(flashVars.NewgroundsAPI_SandboxID); } } } else { _connection.debug = true; if ((_debugMode == DEBUG_MODE_LOGGED_IN) || (_debugMode == DEBUG_MODE_LOGGED_OUT)) { _connection.publisherId = 1; } if (_debugMode == DEBUG_MODE_LOGGED_IN) { _connection.sessionId = "D3bu64p1U53R"; _connection.userId = 10; _connection.username = "API-Debugger"; } } _connection.sendSimpleCommand("connectMovie", onConnect, {host:_connection.hostDomain, movie_version:_movieVersion}); } static function onConnect(event) { var _local1 = event.__get__data(); if (!event.__get__success()) { com.newgrounds.Logger.logError("Unable to connect to the API."); _connection.reset(); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, event.__get__data(), event.__get__error()); return(undefined); } if (debugMode != RELEASE_MODE) { _adFeedURL = TEST_AD_FEED_URL; } else if (_local1.ad_url) { _adFeedURL = unescape(_local1.ad_url); } switch (_local1.ad_status) { case -1 : com.newgrounds.Logger.logWarning("Your movie is not approved to run Flash Ads."); break; case 0 : com.newgrounds.Logger.logWarning("Your movie is still awaiting approval to run Flash Ads."); break; case 1 : com.newgrounds.Logger.logMessage("Your movie is approved to run Flash Ads!"); } _adsApproved = _local1.ad_status == 1; if ((_debugMode == DEBUG_MODE_HOST_BLOCKED) || (_local1.deny_host)) { com.newgrounds.Logger.logWarning(_connection.hostDomain + " does not have permission to host this movie!", "Update your API configuration to allow this host."); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, {officialURL:unescape(_local1.movie_url)}, com.newgrounds.APIEvent.ERROR_HOST_BLOCKED); _connection.reset(); return(undefined); } _movieName = (_local1.movieName ? (_local1.movieName) : ""); com.newgrounds.Logger.logMessage("Connecting to the Newgrounds API Gateway...", ("----- " + _local1.movie_name) + " -----"); if (_debugMode == DEBUG_MODE_NEW_VERSION) { _local1.movie_version = "Debug Mode"; } if (_local1.movie_version) { com.newgrounds.Logger.logMessage("A new version of this movie is available.", "Current version:\t" + _movieVersion, "Newest version:\t" + _local1.movie_version, "Use API.loadOfficialVersion() to link to the latest version."); _newVersion = true; } else { _newVersion = false; } if (_local1.request_portal_url) { _connection.sendSimpleCommand("setPortalID", null, {portal_url:_connection.__get__hostURL()}); } _connection.sendSimpleCommand("preloadSettings", onMetadataLoaded, {publisher_id:_connection.publisherId, user_id:_connection.userId}); } static function onMetadataLoaded(event) { var _local11 = event.__get__data(); var _local1; var _local7; if (!event.__get__success()) { com.newgrounds.Logger.logWarning("Unable to load movie metadata."); disconnect(); dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, null, event.__get__error()); return(undefined); } var _local10 = 0; if (_local11.medals) { _local10 = _local11.medals.length; var _local17; if (hasUserSession) { _local17 = loadLocal("medals_unlocked_" + username); } else { _local17 = loadLocal("medals_unlocked"); } _local1 = 0; while (_local1 < _local10) { var _local6 = _local11.medals[_local1]; var _local14 = _local6.medal_unlocked; var _local16 = _local17 && (_local17[_local6.medal_id]); var _local4 = new com.newgrounds.Medal(_connection, _local6.medal_id, _local6.medal_name, (hasUserSession ? (_local14) : (_local16)), _local6.medal_value, _local6.medal_difficulty, _local6.medal_icon); _local4.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, onMedalUnlocked, false, 0, true); _local4.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, onMedalUnlockConfirmed, false, 0, true); _medals[_local4.__get__name()] = _local4; _medalsArray.push(_local4); com.newgrounds.Logger.logMessage(_local4); if ((hasUserSession && (_local16)) && (!_local14)) { com.newgrounds.Logger.logMessage(("Server missed the \"" + _local4.__get__name()) + "\" unlock. Resending..."); _local4.unlock(); } _local1++; } } com.newgrounds.Logger.logMessage(((_local10 + " medal") + ((_local10 != 1) ? "s" : "")) + " initialized."); _local10 = 0; if (_local11.score_boards) { _local10 = _local11.score_boards.length; _local1 = 0; while (_local1 < _local10) { var _local15 = _local11.score_boards[_local1]; var _local9 = new com.newgrounds.ScoreBoard(_connection, _local15.name, _local15.id); _scoreBoards[_local9.__get__name()] = _local9; _scoreBoardsArray.push(_local9); com.newgrounds.Logger.logMessage(_local9); _local1++; } } com.newgrounds.Logger.logMessage(((_local10 + " scoreboard") + ((_local10 != 1) ? "s" : "")) + " initialized."); _local10 = 0; if (_local11.save_groups) { _local10 = _local11.save_groups.length; _local1 = 0; while (_local1 < _local10) { var _local2 = _local11.save_groups[_local1]; var _local13 = []; if (_local2.keys) { _local7 = 0; while (_local7 < _local2.keys.length) { var _local5 = _local2.keys[_local7]; _local13.push(new com.newgrounds.SaveKey(_local5.name, _local5.id, _local5.type)); _local7++; } } var _local12 = []; if (_local2.ratings) { _local1 = 0; while (_local1 < _local2.ratings.length) { var _local3 = _local2.ratings[_local1]; _local12.push(new com.newgrounds.SaveRating(_local3.name, _local3.id, _local3.float, _local3.min, _local3.max)); _local1++; } } var _local8 = new com.newgrounds.SaveGroup(_connection, _local2.group_name, _local2.group_id, _local2.group_type, _local13, _local12); _saveGroups[_local8.__get__name()] = _local8; _saveGroupsArray.push(_local8); com.newgrounds.Logger.logMessage(_local8); _local1++; } } com.newgrounds.Logger.logMessage(((_local10 + " save group") + ((_local10 != 1) ? "s" : "")) + " initialized."); if (_local11.save_file_path) { _saveFilePath = _local11.save_file_path + "/"; com.newgrounds.SaveFile._saveFilePath = _saveFilePath; com.newgrounds.Logger.logInternal("Save file path: " + _saveFilePath); } if (_local11.image_file_path) { _imageFilePath = _local11.image_file_path + "/"; com.newgrounds.SaveFile._imageFilePath = _imageFilePath; com.newgrounds.Logger.logInternal("Image file path: " + _imageFilePath); } com.newgrounds.Logger.logMessage("Connection complete!"); _connection.connectionState = com.newgrounds.APIConnection.CONNECTED; dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, {movieName:_movieName, newVersion:_newVersion}); } static function disconnect() { if (!_connection.__get__connected()) { com.newgrounds.Logger.logWarning("The Newgrounds API is already disconnected."); return(undefined); } _connection.reset(); for (var _local2 in _medals) { var _local1 = _medals[_local2]; _local1.removeEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, onMedalUnlocked); _local1.removeEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, onMedalUnlockConfirmed); } _newVersion = false; _medals = new Object(); _medalsArray = []; _scoreBoards = new Object(); _scoreBoardsArray = []; _saveGroups = new Object(); _saveGroupsArray = []; _sharedObjects = new Object(); _imageFilePath = null; _saveFilePath = null; com.newgrounds.Logger.logMessage("Disconnected from the Newgrounds API."); } static function loadNewgrounds() { _connection.loadInBrowser("loadNewgrounds"); } static function loadOfficialVersion() { if (_connection.assertInitialized()) { _connection.loadInBrowser("loadOfficialVersion", false); } } static function loadMySite() { if (_connection.assertInitialized()) { _connection.loadInBrowser("loadMySite"); } } static function loadCustomLink(linkName) { if (_connection.assertInitialized()) { _connection.loadInBrowser("loadCustomLink", true, {link:linkName}); } } static function getMedal(medalName) { return(_medals[medalName]); } static function unlockMedal(medalName) { if (!assertConnected()) { return(undefined); } var _local1 = _medals[medalName]; if (!_local1) { com.newgrounds.Logger.logError(("No medal named \"" + medalName) + "\" w."); return(undefined); } _local1.unlock(); } static function onMedalUnlocked(event) { if (event.__get__success()) { var _local2 = com.newgrounds.Medal(event.__get__data()); var _local1; if (hasUserSession) { _local1 = loadLocal("medals_unlocked_" + username); if (!_local1) { _local1 = new Object(); } _local1[_local2.__get__id()] = true; saveLocal("medals_unlocked_" + username, _local1); } else { _local1 = loadLocal("medals_unlocked"); if (!_local1) { _local1 = new Object(); } _local1[com.newgrounds.Medal(event.__get__data()).__get__id()] = true; saveLocal("medals_unlocked", _local1); com.newgrounds.Logger.logMessage(("User instanceof not logged in. Medal \"" + _local2.__get__name()) + "\" unlocked locally."); } } } static function onMedalUnlockConfirmed(event) { if (hasUserSession) { var _local1 = loadLocal("medals_unlocked_" + username); if (!_local1) { _local1 = new Object(); } else { delete _local1[com.newgrounds.Medal(event.__get__data()).__get__id()]; } saveLocal("medals_unlocked_" + username, _local1); } } static function getScoreBoard(scoreBoardName) { if (!assertConnected()) { return(null); } return(_scoreBoards[scoreBoardName]); } static function loadScores(scoreBoardName, period, firstResult, numResults, tag) { if (period == undefined) { period = "All-Time"; } if (firstResult == undefined) { firstResult = 1; } if (numResults == undefined) { numResults = 10; } if (tag == undefined) { tag = null; } if (!assertConnected()) { return(null); } var _local1 = _scoreBoards[scoreBoardName]; if (!_local1) { com.newgrounds.Logger.logError(("No scoreboard named \"" + scoreBoardName) + "\" w."); dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return(null); } _local1.__set__period(period); _local1.__set__firstResult(firstResult); _local1.__set__numResults(numResults); _local1.__set__tag(tag); _local1.loadScores(); return(_local1); } static function postScore(scoreBoardName, numericScore, tag) { if (tag == undefined) { tag = null; } if (!assertConnected()) { return(undefined); } if (!hasUserSession) { com.newgrounds.Logger.logError("The user must be logged-in to post a score."); dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN); return(undefined); } var _local1 = _scoreBoards[scoreBoardName]; if (!_local1) { com.newgrounds.Logger.logError(("No scoreboard named \"" + scoreBoardName) + "\" w."); dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return(undefined); } _local1.postScore(numericScore, tag); } static function getSaveGroup(groupName) { if (!assertConnected()) { return(null); } return(_saveGroups[groupName]); } static function getSaveGroupById(id) { for (var _local3 in _saveGroups) { var _local1 = _saveGroups[_local3]; if (_local1.__get__id() == id) { return(_local1); } } return(null); } static function createSaveFile(groupName) { if (!assertConnected()) { return(null); } var _local1 = getSaveGroup(groupName); if (!_local1) { com.newgrounds.Logger.logError(("The save group \"" + groupName) + "\" w found."); return(null); } return(new com.newgrounds.SaveFile(_local1)); } static function loadSaveFile(saveId, loadContents) { if (loadContents == undefined) { loadContents = true; } _connection.sendSimpleCommand("loadSaveFile", onFileLoaded, {save_id:saveId, get_contents:loadContents}); } static function onFileLoaded(event) { if (event.__get__success()) { var _local2 = com.newgrounds.SaveFile.fromObject(getSaveGroupById(event.__get__data().group_id), event.__get__data().file); if (event.__get__data().get_contents) { _local2.load(); } else { dispatchEvent(com.newgrounds.APIEvent.FILE_LOADED, _local2); } } else { com.newgrounds.Logger.logError("Unable to load file:", event.__get__error()); } } static function createSaveQuery(groupName) { if (!assertConnected()) { return(null); } var _local1 = getSaveGroup(groupName); if (!_local1) { com.newgrounds.Logger.logError(("The save group \"" + groupName) + "\" w found."); return(null); } var _local2 = new com.newgrounds.SaveQuery(_local1); return(_local2); } static function createSaveQueryByDate(groupName, sortDescending) { if (sortDescending == undefined) { sortDescending = true; } var _local1 = createSaveQuery(groupName); if (!_local1) { return(null); } _local1.sortOn(com.newgrounds.SaveQuery.CREATED_ON, sortDescending); return(_local1); } static function createSaveQueryByName(groupName, filename, exactMatch, sortDescending) { if (exactMatch == undefined) { exactMatch = false; } if (sortDescending == undefined) { sortDescending = true; } var _local1 = createSaveQuery(groupName); _local1.addCondition(com.newgrounds.SaveQuery.FILE_NAME, (exactMatch ? (com.newgrounds.SaveQuery.OPERATOR_EQUAL) : (com.newgrounds.SaveQuery.OPERATOR_CONTAINS)), filename); return(_local1); } static function createSaveQueryByRating(groupName, ratingName, sortDescending) { if (sortDescending == undefined) { sortDescending = true; } var _local1 = createSaveQuery(groupName); _local1.sortOn(ratingName, sortDescending); return(_local1); } static function addEventListener(eventType, listener, useCapture, priority, useWeakReference) { if (useCapture == undefined) { useCapture = false; } if (priority == undefined) { priority = 0; } if (useWeakReference == undefined) { useWeakReference = true; } _dispatcher.addEventListener(eventType, listener, useCapture, priority, useWeakReference); } static function removeEventListener(eventType, listener, useCapture) { if (useCapture == undefined) { useCapture = false; } _dispatcher.removeEventListener(eventType, listener); } static function dispatchEvent(event, data, error) { if (data == undefined) { data = null; } if (error == undefined) { error = null; } _dispatcher.dispatchEvent(new com.newgrounds.APIEvent(event, data, error)); } static function saveLocal(saveId, saveData) { try { var _local3; var _local2 = (("ng_ap_secure_" + _connection.trackerId) + "_") + com.newgrounds.crypto.RC4.encrypt(saveId, _connection.encryptionKey); if (!_sharedObjects[saveId]) { _sharedObjects[saveId] = SharedObject.getLocal(_local2); } _local3 = _sharedObjects[saveId]; _local3.data.data = encodeData(saveData); } catch(_local) { if (Error( /* Error999 */ ) != null) { var error = Error( /* Error999 */ ); com.newgrounds.Logger.logError("Unable to save local data.", error); return(false); } Error( /* Error999 */ ); throw /* Error999 */ ; } return(true); } static function loadLocal(saveId) { try { var _local1; var _local3 = (("ng_ap_secure_" + _connection.trackerId) + "_") + com.newgrounds.crypto.RC4.encrypt(saveId, _connection.encryptionKey); if (!_sharedObjects[saveId]) { _sharedObjects[saveId] = SharedObject.getLocal(_local3); } _local1 = _sharedObjects[saveId]; if ((_local1 && (_local1.data)) && (_local1.data.data)) { return(decodeData(_local1.data.data)); } return(null); } catch(error:Error) { com.newgrounds.Logger.logError("Unable to load local data.", error); } return(null); } static function logCustomEvent(eventName) { if (assertConnected()) { com.newgrounds.Logger.logMessage("Logged event: " + eventName); _connection.sendSimpleCommand("logCustomEvent", null, {event:eventName}); } } static function encodeData(data) { if (!_connection.assertInitialized()) { return(null); } return(com.newgrounds.crypto.RC4.encrypt(com.newgrounds.encoders.json.JSON.encode(data), _connection.encryptionKey)); } static function decodeData(data) { if (!_connection.assertInitialized()) { return(null); } try { return(com.newgrounds.encoders.json.JSON.decode(com.newgrounds.crypto.RC4.decrypt(data, _connection.encryptionKey))); } catch(error:Error) { } return(null); } static function stopPendingCommands() { com.newgrounds.APICommand.stopPendingCommands(); com.newgrounds.Logger.logMessage("Pending commands stopped."); } static function setFont(textField, font) { if (textField && (font)) { var _local2 = textField.getTextFormat(); var _local4 = textField.embedFonts; var _local3 = new TextFormat(font); textField.setNewTextFormat(_local3); textField.setTextFormat(_local3); textField.embedFonts = true; if (textField.textWidth == 0) { textField.embedFonts = _local4; textField.setTextFormat(_local2); textField.setNewTextFormat(_local2); } else { textField.antiAliasType = "advanced"; textField.sharpness = 120; } } } static var VERSION = "3.0.3 AS2"; static var RELEASE_MODE = "releaseMode"; static var DEBUG_MODE_LOGGED_IN = "debugModeLoggedIn"; static var DEBUG_MODE_LOGGED_OUT = "debugModeLoggedOut"; static var DEBUG_MODE_NEW_VERSION = "debugModeNewVersion"; static var DEBUG_MODE_HOST_BLOCKED = "debugModeHostBlocked"; static var TEST_AD_FEED_URL = "http://www.ngads.com/adtest.php"; static var _dispatcher = new com.newgrounds.APIEventDispatcher(); static var _connection = new com.newgrounds.APIConnection(); static var _debugMode = DEBUG_MODE_LOGGED_IN; static var _adsApproved = false; static var _medals = new Object(); static var _medalsArray = []; static var _scoreBoards = new Object(); static var _scoreBoardsArray = []; static var _saveGroups = new Object(); static var _saveGroupsArray = []; static var _sharedObjects = new Object(); }
Symbol 57 MovieClip [__Packages.com.newgrounds.Bridge] Frame 0
class com.newgrounds.Bridge { var _widgetId, _inConnection, _outConnection; function Bridge (id) { _widgetId = id; _inConnection = new LocalConnection(); _outConnection = new LocalConnection(); _inConnection.receiveEvent = receiveEvent; try { _inConnection.connect("rec_" + _widgetId); } catch(error) { } com.newgrounds.Logger.addEventListener(com.newgrounds.APIEvent.LOG, {target:this, func:onLogMessage}); } function onLogMessage(event) { try { _outConnection.send(_widgetId, "sendEvent", String(event.__get__data()), {}); } catch(error) { } } function sendCommand(command, parameters) { } function receiveEvent(event, parameters) { } function onStatus(event) { } }
Symbol 49 MovieClip [__Packages.com.newgrounds.APIEvent] Frame 0
class com.newgrounds.APIEvent extends com.newgrounds.Event { var _error, _success, _data, __get__type; function APIEvent (type, data, error) { super(type); if (data == undefined) { data = null; } if (error == undefined) { error = null; } if (((!error) || (error == "")) || (error == ERROR_NONE)) { _error = ERROR_NONE; _success = true; } else { _error = error; _success = false; } if (data) { _data = data; } else { _data = {}; } } function clone() { return(new com.newgrounds.APIEvent(__get__type(), _data, _error)); } function get success() { return(_success); } function get data() { return(_data); } function get error() { return(_error); } static var COMMAND_COMPLETE = "commandComplete"; static var MEDAL_UNLOCK_CONFIRMED = "medalUnlockConfirmed"; static var ICON_LOADED = "iconLoaded"; static var API_CONNECTED = "movieConnected"; static var LOG = "log"; static var MEDAL_UNLOCKED = "medalUnlocked"; static var SCORES_LOADED = "scoresLoaded"; static var SCORE_POSTED = "scorePosted"; static var QUERY_COMPLETE = "queryComplete"; static var FILE_LOADED = "fileLoaded"; static var FILE_SAVED = "fileSaved"; static var VOTE_COMPLETE = "voteComplete"; static var ERROR_NONE = "noError"; static var ERROR_UNKNOWN = "unknownError"; static var ERROR_COMMAND_FAILED = "commandFailed"; static var ERROR_NOT_CONNECTED = "notConnected"; static var ERROR_INVALID_ARGUMENT = "invalidArgument"; static var ERROR_TIMED_OUT = "timedOut"; static var ERROR_BAD_FILE = "badFile"; static var ERROR_BAD_RESPONSE = "badResponse"; static var ERROR_SENDING_COMMAND = "errorSendingCommand"; static var ERROR_HOST_BLOCKED = "hostBlocked"; static var ERROR_ALREADY_VOTED = "alreadyVoted"; static var ERROR_NOT_LOGGED_IN = "notLoggedIn"; }
Symbol 65 MovieClip [__Packages.com.newgrounds.encoders.ImageScanner] Frame 0
class com.newgrounds.encoders.ImageScanner { var _baseN, _encodeAlpha, _maxPerChannel; function ImageScanner (hashLength, charsPerPixel) { if (hashLength) { _hash = DEFAULT_HASH.substr(0, hashLength); } _baseN = new com.newgrounds.encoders.BaseN(_hash); if (charsPerPixel) { _charsPerPixel = charsPerPixel; } encodeAlpha = (false); } function get encodeAlpha() { return(_encodeAlpha); } function set encodeAlpha(v) { _encodeAlpha = v; _maxPerChannel = int(Math.pow(_hash.length, _charsPerPixel / (_encodeAlpha ? 4 : 3))); if (_maxPerChannel > 256) { _maxPerChannel = 256; } //return(encodeAlpha); } function encode(source, callbackFunction, callbackObject) { var _local4 = {callbackFunction:callbackFunction, callbackObject:callbackObject, source:source, x:0, y:0, output:null}; var _local2 = source.width.toString(); var _local3 = source.height.toString(); while (_local2.length < 3) { _local2 = "0" + _local2; } while (_local3.length < 3) { _local3 = "0" + _local3; } _local4.output = _local2 + _local3; var _local6 = setInterval(this, "doEncode", WORK_INTERVAL, _local4); _local4.interval = _local6; } function decode(source, callbackFunction, callbackObject) { var _local2 = {callbackFunction:callbackFunction, callbackObject:callbackObject, source:source, i:6, x:0, y:0, output:null}; var _local5 = int(source.substr(0, 3)); var _local6 = int(source.substr(3, 3)); _local2.output = new flash.display.BitmapData(_local5, _local6, _encodeAlpha); var _local4 = setInterval(this, "doDecode", WORK_INTERVAL, _local2); _local2.interval = _local4; } function doEncode(state) { var _local3 = getTimer(); while ((state.y < state.source.height) && ((getTimer() - _local3) < WORK_INTERVAL)) { state.output = state.output + encodePixel(state.source.getPixel32(state.x, state.y)); state.x++; if (state.x == state.source.width) { state.x = 0; state.y++; } } if (state.y == state.source.height) { clearInterval(state.interval); state.callbackFunction.call(state.callbackObject, state.output); } } function doDecode(state) { var _local4 = getTimer(); while ((state.y < state.output.height) && ((getTimer() - _local4) < WORK_INTERVAL)) { var _local3 = decodePixel(state.source.substr(state.i, _charsPerPixel)); state.output.setPixel32(state.x, state.y, _local3); state.i = state.i + _charsPerPixel; state.x++; if (state.x == state.output.width) { state.x = 0; state.y++; } } if (state.y == state.output.height) { clearInterval(state.interval); state.callbackFunction.call(state.callbackObject, state.output); } } function encodePixel(pixel) { var _local3 = (pixel >> 24) & 255; var _local4 = (pixel >> 16) & 255; var _local5 = (pixel >> 8) & 255; var _local2 = pixel & 255; _local3 = int((_local3 / 256) * _maxPerChannel); _local4 = int((_local4 / 256) * _maxPerChannel); _local5 = int((_local5 / 256) * _maxPerChannel); _local2 = int((_local2 / 256) * _maxPerChannel); var _local7 = (((_local4 * _maxPerChannel) * _maxPerChannel) + (_local5 * _maxPerChannel)) + _local2; if (_encodeAlpha) { _local7 = _local7 + (((_local3 * _maxPerChannel) * _maxPerChannel) * _maxPerChannel); } return(_baseN.encodeUint(_local7, _charsPerPixel)); } function decodePixel(encodedPixel) { var _local3 = 255; var _local5; var _local6; var _local4; var _local7 = 0; var _local2 = _baseN.decodeUint(encodedPixel); _local4 = _local2 % _maxPerChannel; _local2 = _local2 / int(_maxPerChannel); _local6 = _local2 % _maxPerChannel; _local2 = _local2 / int(_maxPerChannel); _local5 = _local2 % _maxPerChannel; _local2 = _local2 / int(_maxPerChannel); if (_encodeAlpha) { _local3 = _local2 % _maxPerChannel; _local2 = _local2 / int(_maxPerChannel); } return((((_local3 << 24) | (_local5 << 16)) | (_local6 << 8)) | _local4); } static var DEFAULT_HASH = "0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ<>?:;-_=+()!&"; var _hash = DEFAULT_HASH; var _charsPerPixel = 2; static var WORK_INTERVAL = 33.3333333333333; }
Symbol 66 MovieClip [__Packages.com.newgrounds.SaveFile] Frame 0
class com.newgrounds.SaveFile extends com.newgrounds.APIEventDispatcher { static var _currentFile; var _iconLoader, _group, _name, _description, _id, _data, _dataLoader, _fileSize, _readOnly, _draft, _authorId, _authorName, _views, _createdDate, _modifiedDate, dispatchEvent, _encodedIcon, _encodedData, _encoderQueue, _encoding, _dataLoaded, _encodingParent, _encodingProperty, _dataURL; function SaveFile (group) { super(); _iconLoader = new com.newgrounds.BitmapLoader(DEFAULT_ICON, null); _group = group; } static function get currentFile() { return(_currentFile); } static function fromObject(group, fileData) { var _local4 = new com.newgrounds.SaveFile(group); _local4._name = fileData.filename; _local4._description = fileData.description; _local4._id = fileData.save_id; _local4._authorId = fileData.user_id; _local4._authorName = fileData.user_name; _local4._createdDate = fileData.created; _local4._modifiedDate = fileData.last_update; _local4._views = fileData.views; if (fileData.thumb && (fileData.thumb != "")) { _local4._iconLoader.__set__url(_imageFilePath + fileData.thumb); } _local4._dataURL = _saveFilePath + fileData.file; _local4._fileSize = fileData.file_size; _local4._approved = fileData.status != STATUS_UNAPPROVED; _local4._readOnly = false; _local4._public = (fileData.status != STATUS_PRIVATE) && (fileData.status != STATUS_UNAPPROVED); for (var _local8 in fileData.keys) { var _local6 = fileData.keys[_local8]; var _local2 = group.getKeyById(_local6.id); if (_local2) { _local4._keys[_local2.__get__name()] = _local2.validateValue(_local6.value); } } for (var _local9 in fileData.ratings) { var _local5 = fileData.ratings[_local9]; var _local3 = group.getRatingById(_local5.id); if (_local3) { _local4._ratings[_local3.__get__name()] = _local3.validateValue(_local5.score); } } return(_local4); } function get group() { return(_group); } function get name() { return(_name); } function set name(val) { _name = val; //return(name); } function get description() { return(_description); } function set description(val) { _description = val; //return(description); } function get id() { return(_id); } function get data() { return(_data); } function set data(val) { _data = val; //return(data); } function get bytesLoaded() { if (_data) { return(bytesTotal); } if (!_dataLoader) { return(0); } return(_dataLoader.getBytesLoaded()); } function get bytesTotal() { return(_fileSize); } function get readOnly() { return(_readOnly); } function get draft() { return(_draft); } function set draft(v) { _draft = v; //return(draft); } function get authorId() { return(_authorId); } function get authorName() { return(_authorName); } function get keys() { return(_keys); } function get ratings() { return(_ratings); } function get views() { return(_views); } function get createdDate() { return(_createdDate); } function get updatedDate() { return(_modifiedDate); } function toString() { return("Save File: " + _name); } function get icon() { return(_iconLoader.__get__bitmapData()); } function set icon(v) { createIcon(v); //return(icon); } function get iconLoaded() { return(_iconLoader.__get__loaded()); } function createIcon(source) { var _local9 = new flash.display.BitmapData(ICON_WIDTH, ICON_HEIGHT, false, 0); var _local6; var _local5; var _local10 = 0; var _local8 = 0; if (source instanceof flash.display.BitmapData) { _local6 = source.width; _local5 = source.height; } else if (source instanceof MovieClip) { _local6 = source._width; _local5 = source._height; var _local7 = MovieClip(source).getBounds(source); _local10 = _local7.xMin; _local8 = _local7.yMin; } var _local3 = new flash.geom.Matrix(); var _local4; _local4 = Math.min(ICON_WIDTH / _local6, ICON_HEIGHT / _local5); _local3.translate(-_local10, -_local8); _local3.scale(_local4, _local4); _local3.translate((ICON_WIDTH - (_local6 * _local4)) / 2, (ICON_HEIGHT - (_local5 * _local4)) / 2); _local9.draw(source, _local3); _iconLoader.__set__bitmapData(_local9); } function attachIcon(parent) { if (_iconLoader) { return(_iconLoader.attachBitmap(parent)); } com.newgrounds.Logger.logError("No icon available for this sumbission."); return(null); } function save() { if (!_group.__get__connection().__get__hasUserSession()) { com.newgrounds.Logger.logError("The user must be logged-in to save a file."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN)); return(undefined); } com.newgrounds.BitmapLoader._cacheSeed++; _currentFile = this; if (iconLoaded) { ICON_IMAGE_SCANNER.encode(icon, onIconEncoded, this); } else { encodeData(true); } } function onIconEncoded(encodedIcon) { _encodedIcon = encodedIcon; encodeData(true); } function doSave() { var _local4 = new com.newgrounds.APICommand("saveFile"); _local4.__get__secureParameters().group = _group.id; _local4.__get__secureParameters().user_name = _group.__get__connection().username; _local4.__get__secureParameters().filename = _name; _local4.__get__secureParameters().description = _description; if (_draft) { _local4.__get__secureParameters().draft = true; } if (_id && (!_readOnly)) { _local4.__get__secureParameters().overwrite = 1; _local4.__get__secureParameters().save_id = _id; } var _local8 = []; for (var _local9 in _keys) { var _local2 = _group.getKey(_local9); if (_local2) { _local8.push({id:_local2.__get__id(), value:_local2.validateValue(_keys[_local9])}); } else { com.newgrounds.Logger.logError(((("No key named \"" + _local9) + "\" in save group \"") + _group.__get__name()) + "\"."); } } _local4.__get__secureParameters().keys = _local8; var _local7 = []; for (var _local10 in _ratings) { var _local3 = _group.getRating(_local10); if (_local3) { _local7.push({id:_local3.__get__id(), value:_local3.validateValue(_ratings[_local10])}); } else { com.newgrounds.Logger.logError(((("No rating named \"" + _local10) + "\" in save group \"") + _group.__get__name()) + "\"."); } } _local4.__get__secureParameters().ratings = _local7; if (typeof(_encodedData) == "string") { _local4.addFile("file", _encodedData, "file"); } else { _local4.addFile("file", com.newgrounds.encoders.json.JSON.encode(_encodedData), "file"); } if (iconLoaded) { _local4.addFile("thumbnail", _encodedIcon, "thumbnail"); } _local4.addEventListener(com.newgrounds.APIEvent.COMMAND_COMPLETE, {target:this, func:onSaveComplete}); _group.__get__connection().sendCommand(_local4); } function encodeData(encode) { _encoderQueue = []; _encoding = encode; if (encode) { _encodedData = _data; preEncodeObject(this, "_encodedData"); } else { preEncodeObject(this, "_data"); } encodeObject(); } function preEncodeObject(parent, property) { var _local3 = parent[property]; var _local5; try { if (_encoding) { _local5 = _local3 instanceof flash.display.BitmapData; } else { _local5 = _local3.type == "__bitmap"; } } catch(error) { } var _local2 = _local3; var _local8; if (_local5) { _encoderQueue.push({parent:parent, property:property}); } else if ((typeof(_local3) == "object") && (!_local8)) { if (_encoding) { if (_local3 instanceof Array) { _local2 = []; } else { _local2 = {}; } for (var _local4 in _local3) { _local2[_local4] = _local3[_local4]; } parent[property] = _local2; } for (var _local4 in _local2) { preEncodeObject(_local2, _local4); } } } function encodeObject() { if (!_encoderQueue.length) { if (_encoding) { doSave(); } else { _dataLoaded = true; checkLoadComplete(); } return(undefined); } var _local6 = _encoderQueue.pop(); var _local4 = _local6.parent; var _local3 = _local6.property; var _local2 = _local4[_local3]; var _local5; if (_encoding) { _local5 = {type:"__bitmap", width:_local2.width, height:_local2.height, transparent:_local2.transparent}; _local4[_local3] = _local5; _encodingParent = _local5; _encodingProperty = "data"; DATA_IMAGE_SCANNER.__set__encodeAlpha(_local2.transparent); DATA_IMAGE_SCANNER.encode(flash.display.BitmapData(_local2), encodeBitmapComplete, this); } else { _encodingParent = _local4; _encodingProperty = _local3; DATA_IMAGE_SCANNER.__set__encodeAlpha(_local2.transparent); DATA_IMAGE_SCANNER.decode(String(_local2.data), encodeBitmapComplete, this); } } function encodeBitmapComplete(data) { _encodingParent[_encodingProperty] = data; encodeObject(); } function load() { _currentFile = this; _dataLoaded = false; _data = null; if (!iconLoaded) { _iconLoader.addEventListener(com.newgrounds.APIEvent.ICON_LOADED, {target:this, func:onIconLoaded}); _iconLoader.load(); } _dataLoader = new LoadVars(); var file = this; _dataLoader.onData = function (data) { file.onDataLoaded(data); }; _dataLoader.load(_dataURL); } function onIconLoaded(event) { if ((!event.__get__success()) && (_iconLoader.__get__url())) { com.newgrounds.Logger.logWarning("Unable to load the icon for this save file."); } _iconLoader.removeEventListener(com.newgrounds.APIEvent.ICON_LOADED, onIconLoaded); checkLoadComplete(); } function checkLoadComplete() { if (_dataLoaded && (iconLoaded)) { com.newgrounds.Logger.logMessage("Data loaded."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this)); } } function onDataLoaded(data) { try { if (data) { if (data.charAt(0) == "{") { _data = com.newgrounds.encoders.json.JSON.decode(String(data)); } else { _data = String(data); } encodeData(false); } } catch(error:Error) { com.newgrounds.Logger.logError("Error while loading data:", error); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this, com.newgrounds.APIEvent.ERROR_BAD_FILE)); } } function onDataError(error) { com.newgrounds.Logger.logError("Unable to load data:", error); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this, com.newgrounds.APIEvent.ERROR_BAD_FILE)); } function onSaveComplete(event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage(("File \"" + _name) + "\" saved!"); if (event.__get__data()) { _id = event.__get__data().save_id; _dataURL = unescape(event.__get__data().file_url); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, this)); } else { com.newgrounds.Logger.logError(("Error saving file \"" + _name) + "\":", event.__get__error()); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, this, event.__get__error())); } } function sendVote(ratingName, vote) { var _local2 = _group.getRating(ratingName); if (!_local2) { com.newgrounds.Logger.logError(("No save rating named \"" + ratingName) + "\" exists for this save group."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, {}, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT)); return(undefined); } vote = _local2.validateValue(vote); if (isNaN(vote)) { com.newgrounds.Logger.logError(((((((("Invalid vote (" + vote) + "). ") + ratingName) + " allows a range of ") + _local2.__get__minimum()) + "-") + _local2.__get__maximum()) + "."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, {}, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT)); return(undefined); } com.newgrounds.Logger.logMessage(((((("Voting " + vote) + " for ") + ratingName) + " on ") + _name) + "..."); _group.__get__connection().sendSimpleCommand("rateSaveFile", {target:this, func:onVoteComplete}, null, {group:_group.__get__id(), save_id:_id, rating_id:_local2.__get__id(), vote:vote}); } function onVoteComplete(event) { var _local2 = event.__get__error(); if (event.__get__data().already_voted) { com.newgrounds.Logger.logError("Vote failed. You've already voted on this rating today."); _local2 = com.newgrounds.APIEvent.ERROR_ALREADY_VOTED; } if (_local2 == com.newgrounds.APIEvent.ERROR_NONE) { var _local3 = _group.getRatingById(event.__get__data().rating_id); if (_local3) { _ratings[_local3.__get__name()] = _local3.validateValue(event.__get__data().score); } } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, this, _local2)); } function clone() { var _local3 = new com.newgrounds.SaveFile(_group); _local3._data = _data; _local3._description = _description; _local3._draft = _draft; _local3._fileSize = _fileSize; _local3._iconLoader.__set__bitmapData(_iconLoader.bitmapData); var _local2; for (_local2 in _keys) { _local3._keys[_local2] = _keys[_local2]; } for (_local2 in _ratings) { _local3._ratings[_local2] = _ratings[_local2]; } _local3._name = _name; return(_local3); } static var ICON_WIDTH = 90; static var ICON_HEIGHT = 90; static var DEFAULT_ICON = flash.display.BitmapData.loadBitmap("DefaultSaveIcon"); static var STATUS_PRIVATE = 0; static var STATUS_SHARED = 1; static var STATUS_UNAPPROVED = 2; static var STATUS_APPROVED = 3; static var _imageFilePath = ""; static var _saveFilePath = ""; static var ICON_IMAGE_SCANNER = new com.newgrounds.encoders.ImageScanner(); static var DATA_IMAGE_SCANNER = new com.newgrounds.encoders.ImageScanner(64, 6); var _keys = new Object(); var _ratings = new Object(); }
Symbol 64 MovieClip [__Packages.com.newgrounds.SaveGroup] Frame 0
class com.newgrounds.SaveGroup { var _connection, _id, _name, _type, _keysArray, _ratingsArray, _keys, _ratings; function SaveGroup (connection, name, id, type, keys, ratings) { _connection = connection; _id = id; _name = name; _type = type; _keysArray = keys; _ratingsArray = ratings; _keys = new Object(); _ratings = new Object(); var _local11; for (var _local7 in keys) { var _local2 = keys[_local7]; _keys[_local2.__get__name()] = _local2; } for (var _local6 in ratings) { var _local3 = ratings[_local6]; _ratings[_local3.__get__name()] = _local3; } } function get connection() { return(_connection); } function get name() { return(_name); } function get type() { return(_type); } function get id() { return(_id); } function get keys() { return(_keysArray); } function get ratings() { return(_ratingsArray); } function getKey(name) { return(_keys[name]); } function getRating(name) { return(_ratings[name]); } function getKeyById(id) { for (var _local4 in _keys) { var _local2 = _keys[_local4]; if (_local2.__get__id() == id) { return(_local2); } } return(null); } function getRatingById(id) { for (var _local4 in _ratings) { var _local2 = _ratings[_local4]; if (_local2.__get__id() == id) { return(_local2); } } return(null); } function toString() { return((((("SaveGroup: " + name) + " Keys: ") + _keysArray) + " Ratings: ") + _ratingsArray); } static var TYPE_SYSTEM = 0; static var TYPE_PRIVATE = 1; static var TYPE_PUBLIC = 2; static var TYPE_MODERATED = 3; }
Symbol 62 MovieClip [__Packages.com.newgrounds.SaveKey] Frame 0
class com.newgrounds.SaveKey { var _name, _id, _type; function SaveKey (name, id, type) { _name = name; _id = id; _type = type; } function get name() { return(_name); } function get id() { return(_id); } function get type() { return(_type); } function validateValue(value) { switch (_type) { case TYPE_INTEGER : value = Number(value); if (!isNaN(value)) { var _local3 = int(value); if (_local3 != value) { com.newgrounds.Logger.logWarning(((((("Float value " + value) + " given for integer key \"") + _name) + "\". Clamping to ") + _local3) + "."); } return(_local3); } break; case TYPE_FLOAT : value = Number(value); if (!isNaN(value)) { return(isNaN(Number(value))); } break; case TYPE_BOOLEAN : return(Boolean(value)); case TYPE_STRING : return((value ? (value.toString()) : "")); } return(null); } function toString() { return(_name); } static var TYPE_FLOAT = 1; static var TYPE_INTEGER = 2; static var TYPE_STRING = 3; static var TYPE_BOOLEAN = 4; }
Symbol 63 MovieClip [__Packages.com.newgrounds.SaveRating] Frame 0
class com.newgrounds.SaveRating { var _name, _id, _isFloat, _minimum, _maximum; function SaveRating (name, id, isFloat, minimum, maximum) { _name = name; _id = id; _isFloat = isFloat; _minimum = minimum; _maximum = maximum; } function get name() { return(_name); } function get id() { return(_id); } function get isFloat() { return(_isFloat); } function get minimum() { return(_minimum); } function get maximum() { return(_maximum); } function validateValue(value) { var _local2 = Number(value); if (isNaN(_local2)) { com.newgrounds.Logger.logError(("Invalid value for rating \"" + _name) + "\"."); return(NaN); } if (_local2 < _minimum) { com.newgrounds.Logger.logWarning(((((_local2 + " is out of acceptable range for rating \"") + _name) + "\". Clamping to ") + _minimum) + "."); return(_minimum); } if (_local2 > _maximum) { com.newgrounds.Logger.logWarning(((((_local2 + " is out of acceptable range for rating \"") + _name) + "\". Clamping to ") + _maximum) + "."); return(_maximum); } if (!isFloat) { var _local3 = int(_local2); if (_local3 != _local2) { com.newgrounds.Logger.logWarning(((((("Float value " + _local2) + " given for integer rating \"") + _name) + "\". Clamping to ") + _local3) + "."); } return(_local3); } return(_local2); } function toString() { return(_name); } }
Symbol 58 MovieClip [__Packages.com.newgrounds.BitmapLoader] Frame 0
class com.newgrounds.BitmapLoader extends com.newgrounds.APIEventDispatcher { var _bitmapData, _url, _loader, _loaderClip, dispatchEvent; function BitmapLoader (defaultBitmap, url) { super(); _bitmapData = defaultBitmap; _url = url; } function get url() { return(_url); } function set url(v) { _loaded = false; _url = v; //return(url); } function get bitmapData() { return(_bitmapData); } function set bitmapData(v) { _bitmapData = v; _loaded = true; //return(bitmapData); } function get loaded() { return(_loaded); } function disposeLoader() { if (_loader) { if (_loaderClip._parent == _root) { _loader.unloadClip(_loaderClip.bitmap); _loaderClip.removeMovieClip(); } _loader = null; _loaderClip = null; } } function load() { if ((!_url) || (_url == "")) { onLoadComplete(); return(undefined); } _loaded = false; if (_bitmapData) { _bitmapData.dispose(); _bitmapData = null; } disposeLoader(); attachBitmap(null); } function attachBitmap(parent) { if (!parent) { parent = _root; } var _local5 = parent.getNextHighestDepth(); var _local3 = parent.createEmptyMovieClip("__bitmap" + _local5, _local5); if (((!_loaded) && (_url)) && (_url != "")) { _local3.createEmptyMovieClip("bitmap", 0); _loader = new MovieClipLoader(); _loaderClip = _local3; if (parent == _root) { _loaderClip._visible = false; } var thisObj = this; _loaderClip.onEnterFrame = function () { thisObj.pollLoad(); }; _loader.addListener({onLoadError:function () { thisObj.onLoadComplete(); }}); _loader.loadClip(_url, _local3.bitmap); } else { _local3.attachBitmap(_bitmapData, 0); } return(_local3); } function pollLoad() { if (_loaderClip._width) { onLoadComplete(); } } function onLoadComplete() { var _local2; if ((_loader && (_loaderClip)) && (_loaderClip._width)) { try { _loaderClip.onEnterFrame = null; _local2 = new flash.display.BitmapData(_loaderClip._width, _loaderClip._height, true, 0); _local2.draw(_loaderClip); _bitmapData = _local2; _loaded = true; } catch(error) { if (_local2) { _local2.dispose(); } } } disposeLoader(); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.ICON_LOADED, this, (_loaded ? null : (com.newgrounds.APIEvent.ERROR_BAD_FILE)))); } static var _cacheSeed = 0; var _loaded = true; }
Symbol 67 MovieClip [__Packages.com.newgrounds.SaveQuery] Frame 0
class com.newgrounds.SaveQuery extends com.newgrounds.APIEventDispatcher { var _group, _connection, dispatchEvent; function SaveQuery (group) { super(); _group = group; _connection = group.connection; includeAllFields(); } function get group() { return(_group); } function get resultsPerPage() { return(_resultsPerPage); } function set resultsPerPage(val) { _resultsPerPage = Math.min(Math.max(val, 1), 100); //return(resultsPerPage); } function get page() { return(_page); } function set page(val) { _page = Math.max(val, 1); //return(page); } function prevPage() { page = ((page-1)); } function nextPage() { page = ((page+1)); } function get isRandomized() { return(_isRandomized); } function set isRandomized(val) { _isRandomized = val; //return(isRandomized); } function get files() { return(_files); } function reset() { _page = 1; _resultsPerPage = 10; _isRandomized = false; _lookupKeys = []; _lookupRatings = []; _fileConditions = []; _keyConditions = []; _ratingConditions = []; _files = []; includeAllFields(); } function clone() { var _local2 = new com.newgrounds.SaveQuery(_group); _local2._page = _page; _local2._resultsPerPage = _resultsPerPage; _local2._isRandomized = _isRandomized; _local2._lookupKeys = _lookupKeys.concat(); _local2._lookupRatings = _lookupRatings.concat(); _local2._fileConditions = _fileConditions.concat(); _local2._keyConditions = _keyConditions.concat(); _local2._ratingConditions = _ratingConditions.concat(); return(_local2); } function includeAllFields() { for (var _local5 in _group.__get__keys()) { var _local2 = _group.__get__keys()[_local5]; _lookupKeys.push(_local2.__get__id()); } for (var _local4 in _group.__get__ratings()) { var _local3 = _group.__get__ratings()[_local4]; _lookupRatings.push(_local3.__get__id()); } } function addCondition(field, operator, value) { var _local2; _local2 = 0; while (_local2 < FILE_FIELDS.length) { if (FILE_FIELDS[_local2] == field) { break; } _local2++; } if (_local2 == FILE_FIELDS.length) { _local2 = -1; } if (_local2 >= 0) { _fileConditions.push({field:_local2, operator:operator, value:value}); } else { var _local3 = _group.getKey(field); if (_local3) { value = _local3.validateValue(value); _keyConditions.push({key_id:_local3.__get__id(), operator:operator, value:value}); return(undefined); } var _local4 = field.split("."); var _local6 = _group.getRating(_local4[0]); if (_local6) { value = _local6.validateValue(value); _ratingConditions.push({rating_id:_local6.__get__id(), operator:operator, value:value, column:(_local4[1] ? (_local4[1]) : "score")}); return(undefined); } com.newgrounds.Logger.logError(((("The save group \"" + _group.__get__name()) + "\" does not have a field named \"") + field) + "\"."); } } function sortOn(field, sortDescending) { if (sortDescending == undefined) { sortDescending = false; } var _local2; _local2 = 0; while (_local2 < FILE_FIELDS.length) { if (FILE_FIELDS[_local2] == field) { break; } _local2++; } if (_local2 == FILE_FIELDS.length) { _local2 = -1; } if (_local2 >= 0) { _sortFields.push({table:TABLE_FILES, field:_local2, desc:sortDescending}); } else { var _local5 = _group.getKey(field); if (_local5) { _sortFields.push({table:TABLE_KEYS, field:_local5.__get__id(), desc:sortDescending}); return(undefined); } var _local3 = field.split("."); var _local6 = _group.getRating(_local3[0]); if (_local6) { _sortFields.push({table:TABLE_RATINGS, field:_local6.__get__id(), desc:sortDescending, extra:(_local3[1] ? (_local3[1]) : "score")}); return(undefined); } com.newgrounds.Logger.logError(((("The save group \"" + _group.__get__name()) + "\" does not have a field named \"") + field) + "\"."); } } function execute() { var _local5 = {}; _local5.page = _page; _local5.num_results = _resultsPerPage; if (_isRandomized) { _local5.randomize = 1; } if (_lookupKeys && (_lookupKeys.length)) { _local5.lookup_keys = _lookupKeys; } if (_lookupRatings && (_lookupRatings.length)) { _local5.lookup_ratings = _lookupRatings; } if (_fileConditions && (_fileConditions.length)) { _local5.file_conditions = _fileConditions; } if (_keyConditions && (_keyConditions.length)) { _local5.key_conditions = _keyConditions; } if (_ratingConditions && (_ratingConditions.length)) { _local5.rating_conditions = _ratingConditions; } if (_sortFields && (_sortFields.length)) { _local5.sort_conditions = _sortFields; } _connection.sendSimpleCommand("lookupSaveFiles", {target:this, func:onQueryComplete}, {publisher_id:_connection.publisherId, group_id:_group.__get__id(), query:_local5}); } function onQueryComplete(event) { if (event.__get__success()) { var _local4 = event.__get__data(); _files = []; if (_local4.files) { var _local2 = 0; while (_local2 < _local4.files.length) { var _local3 = com.newgrounds.SaveFile.fromObject(_group, _local4.files[_local2]); if (_local3) { _files.push(_local3); } _local2++; } } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.QUERY_COMPLETE, this)); } else { com.newgrounds.Logger.logError("Query failed: " + event.__get__error()); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.QUERY_COMPLETE, this, event.__get__error())); } } static var FILE_ID = "fileId"; static var AUTHOR_ID = "authorId"; static var AUTHOR_NAME = "authorName"; static var FILE_NAME = "fileName"; static var CREATED_ON = "createdOn"; static var UPDATED_ON = "updatedOn"; static var FILE_VIEWS = "fileViews"; static var FILE_STATUS = "fileStatus"; static var FILE_FIELDS = [FILE_ID, AUTHOR_ID, AUTHOR_NAME, FILE_NAME, CREATED_ON, UPDATED_ON, FILE_VIEWS, FILE_STATUS]; static var OPERATOR_EQUAL = "="; static var OPERATOR_LESS_THAN = "<"; static var OPERATOR_GREATER_THAN = ">"; static var OPERATOR_NOT_EQUAL = "!="; static var OPERATOR_LESS_OR_EQUAL = "<="; static var OPERATOR_GREATER_OR_EQUAL = ">="; static var OPERATOR_CONTAINS = "*"; static var OPERATOR_NOT_CONTAINS = "!*"; static var OPERATOR_NOT_BEGINS_WITH = "!*="; static var OPERATOR_NOT_ENDS_WITH = "!=*"; static var OPERATOR_BEGINS_WITH = "*="; static var OPERATOR_ENDS_WITH = "=*"; static var TABLE_FILES = 1; static var TABLE_KEYS = 2; static var TABLE_RATINGS = 3; var _page = 1; var _resultsPerPage = 10; var _isRandomized = false; var _files = []; var _lookupKeys = []; var _lookupRatings = []; var _fileConditions = []; var _keyConditions = []; var _ratingConditions = []; var _sortFields = []; }
Symbol 59 MovieClip [__Packages.com.newgrounds.Medal] Frame 0
class com.newgrounds.Medal extends com.newgrounds.APIEventDispatcher { var _connection, _id, _name, _unlocked, _value, _difficulty, _iconLoader, dispatchEvent; function Medal (connection, id, name, unlocked, value, difficultyId, iconURL) { super(); _connection = connection; _id = id; _name = name; _unlocked = unlocked; _value = value; _difficulty = DIFFICULTIES[difficultyId]; _iconLoader = new com.newgrounds.BitmapLoader(DEFAULT_ICON, iconURL); _iconLoader.load(); } function get difficulty() { return(_difficulty); } function get icon() { return(_iconLoader.__get__bitmapData()); } function get id() { return(_id); } function get name() { return(_name); } function get unlocked() { return(_unlocked); } function get value() { return(_value); } function toString() { return((((((("Medal: " + _name) + "\t\t(") + (_unlocked ? "unlocked, " : "locked, ")) + _value) + "pts, ") + _difficulty) + ")"); } function attachIcon(parent) { return(_iconLoader.attachBitmap(parent)); } function unlock() { if ((!_connection.debug) && (_unlocked)) { com.newgrounds.Logger.logWarning(("Medal \"" + _name) + "\" is already unlocked."); return(undefined); } com.newgrounds.Logger.logMessage(("Unlocking medal \"" + name) + "\"..."); _unlocked = true; _connection.sendSimpleCommand("unlockMedal", {target:this, func:onUnlockConfirmed}, null, {medal_id:id}); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.MEDAL_UNLOCKED, this)); } function onUnlockConfirmed(event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage(("Medal \"" + name) + "\" unlocked."); } else { com.newgrounds.Logger.logError(("Failed to unlock \"" + name) + "\"!"); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, this, event.__get__error())); } static var ICON_WIDTH = 50; static var ICON_HEIGHT = 50; static var DEFAULT_ICON = flash.display.BitmapData.loadBitmap("DefaultMedalIcon"); static var DIFFICULTY_EASY = "Easy"; static var DIFFICULTY_MODERATE = "Moderate"; static var DIFFICULTY_CHALLENGING = "Challenging"; static var DIFFICULTY_DIFFICULT = "Difficult"; static var DIFFICULTY_BRUTAL = "Brutal"; static var DIFFICULTIES = ["Unknown", DIFFICULTY_EASY, DIFFICULTY_MODERATE, DIFFICULTY_CHALLENGING, DIFFICULTY_DIFFICULT, DIFFICULTY_BRUTAL]; }
Symbol 61 MovieClip [__Packages.com.newgrounds.ScoreBoard] Frame 0
class com.newgrounds.ScoreBoard extends com.newgrounds.APIEventDispatcher { var _connection, _name, _id, _scores, _tag, dispatchEvent; function ScoreBoard (connection, name, id) { super(); _connection = connection; _name = name; _id = id; } function get name() { return(_name); } function get scores() { return(_scores); } function get period() { return(_period); } function set period(val) { _period = val; //return(period); } function get firstResult() { return(_firstResult); } function set firstResult(val) { _firstResult = Math.max(1, val); //return(firstResult); } function get numResults() { return(_numResults); } function set numResults(val) { _numResults = val; //return(numResults); } function get tag() { return(_tag); } function set tag(val) { _tag = val; //return(tag); } function get page() { return(Math.ceil((_firstResult - 1) / _numResults) + 1); } function prevPage() { if (firstResult > _numResults) { firstResult = firstResult - _numResults; } } function nextPage() { firstResult = firstResult + _numResults; } function loadScores() { _connection.sendSimpleCommand("loadScores", {target:this, func:onScoresLoaded}, {publisher_id:_connection.publisherId, board:_id, page:((_firstResult - 1) / _numResults) + 1, num_results:_numResults, period:_period, tag:_tag}); } function postScore(numericScore, tag) { if (tag == undefined) { tag = null; } if (isNaN(numericScore)) { com.newgrounds.Logger.logError("Cannot post invalid score: " + numericScore); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.SCORE_POSTED, null, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT)); return(undefined); } com.newgrounds.Logger.logMessage(((((("Posting a score of " + numericScore) + " by ") + _connection.username) + " to scoreboard \"") + _name) + "\"..."); _connection.sendSimpleCommand("postScore", {target:this, func:onScorePosted}, null, {user_name:_connection.username, board:_id, value:numericScore, tag:tag}); } function onScoresLoaded(event) { var _local4 = event.__get__data(); _scores = []; var _local5; if (_local4.first_result) { _local5 = _local4.first_result; } else { _local5 = _firstResult; } if (_local4.scores) { var _local3 = 0; while (_local3 < _local4.scores.length) { var _local2 = _local4.scores[_local3]; if (_local2) { _scores[_local3] = new com.newgrounds.Score(_local5, _local2.username, _local2.value, _local2.numeric_value, _local2.tag); } _local3++; _local5++; } } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.SCORES_LOADED, this)); } function onScorePosted(event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage("Score posted!"); var _local4 = event.__get__data(); var _local2 = {}; _local2.score = _local4.value; _local2.scoreBoard = this; } else { com.newgrounds.Logger.logError("Error posting score: " + event.__get__error()); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.SCORE_POSTED, _local2, event.__get__error())); } function toString() { return("Scoreboard: " + _name); } static var TODAY = "Today"; static var THIS_WEEK = "This Week"; static var THIS_MONTH = "This Month"; static var THIS_YEAR = "This Year"; static var ALL_TIME = "All-Time"; var _period = ALL_TIME; var _firstResult = 1; var _numResults = 10; }
Symbol 50 MovieClip [__Packages.com.newgrounds.Logger] Frame 0
class com.newgrounds.Logger { function Logger () { } static function logInternal() { var _local2 = arguments; log(PRIORITY_INTERNAL, _local2); } static function logMessage() { var _local2 = arguments; log(PRIORITY_MESSAGE, _local2); } static function logWarning() { var _local2 = arguments; log(PRIORITY_WARNING, _local2); } static function logError() { var _local2 = arguments; log(PRIORITY_ERROR, _local2); } static function log(priority, messages) { if (priority == undefined) { priority = PRIORITY_MESSAGE; } if (messages == undefined) { messages = null; } if (priority >= _messageLevel) { var _local1 = 0; while (_local1 < messages.length) { trace(HEADER + messages[_local1]); _eventDispatcher.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.LOG, messages[_local1])); _local1++; } } if (priority >= _throwLevel) { throw new Error(messages.join(newline)); } } static function addEventListener(event, listener) { _eventDispatcher.addEventListener(event, listener, false, 0, false); } static var PRIORITY_INTERNAL = 0; static var PRIORITY_MESSAGE = 1; static var PRIORITY_WARNING = 2; static var PRIORITY_ERROR = 3; static var PRIORITY_MAX = 4; static var HEADER = "[Newgrounds API] :: "; static var _eventDispatcher = new com.newgrounds.EventDispatcher(); static var _messageLevel = PRIORITY_MESSAGE; static var _throwLevel = PRIORITY_MAX; }
Symbol 206 MovieClip [__Packages.mochi.as2.MochiAd] Frame 0
class mochi.as2.MochiAd { function MochiAd () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function showPreGameAd(options) { var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function () { this.clip.stop(); }, ad_finished:function () { this.clip.play(); }, ad_failed:function () { trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_loaded:function (width, height) { }, ad_skipped:function () { }, ad_progress:function (percent) { }}; options = _parseOptions(options, _local27); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def") { options.ad_started(); options.ad_finished(); return(undefined); } var clip = options.clip; var _local24 = 11000; var _local19 = options.ad_timeout; if (options.skip) { _local19 = 0; } delete options.ad_timeout; var fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!load(options)) { options.ad_failed(); options.ad_finished(); return(undefined); } options.ad_started(); var mc = clip._mochiad; mc.onUnload = function () { options.ad_finished(); }; var _local15 = _getRes(options); var _local5 = _local15[0]; var _local14 = _local15[1]; mc._x = _local5 * 0.5; mc._y = _local14 * 0.5; var chk = mc.createEmptyMovieClip("_mochiad_wait", 3); chk._x = _local5 * -0.5; chk._y = _local14 * -0.5; var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4); if (options.no_progress_bar) { _local7._visible = false; delete options.no_progress_bar; } else { _local7._x = 10; _local7._y = _local14 - 20; } var _local23 = options.color; delete options.color; var _local21 = options.background; delete options.background; var _local25 = options.outline; delete options.outline; var _local6 = _local7.createEmptyMovieClip("_outline", 1); _local6.beginFill(_local21); _local6.moveTo(0, 0); _local6.lineTo(_local5 - 20, 0); _local6.lineTo(_local5 - 20, 10); _local6.lineTo(0, 10); _local6.lineTo(0, 0); _local6.endFill(); var _local4 = _local7.createEmptyMovieClip("_inside", 2); _local4.beginFill(_local23); _local4.moveTo(0, 0); _local4.lineTo(_local5 - 20, 0); _local4.lineTo(_local5 - 20, 10); _local4.lineTo(0, 10); _local4.lineTo(0, 0); _local4.endFill(); _local4._xscale = 0; var _local8 = _local7.createEmptyMovieClip("_outline", 3); _local8.lineStyle(0, _local25, 100); _local8.moveTo(0, 0); _local8.lineTo(_local5 - 20, 0); _local8.lineTo(_local5 - 20, 10); _local8.lineTo(0, 10); _local8.lineTo(0, 0); chk.ad_msec = _local24; chk.ad_timeout = _local19; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function () { var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)); if (_local2 > 0) { this._parent._alpha = _local2; } else { var _local3 = this._parent._parent; mochi.as2.MochiAd.unload(_local3); delete this.onEnterFrame; } }; var sendHostProgress = false; mc.lc.sendHostLoadProgress = function (lc_name) { sendHostProgress = true; }; mc.lc.adLoaded = options.ad_loaded; mc.lc.adSkipped = options.ad_skipped; mc.lc.adjustProgress = function (msec) { var _local2 = this.mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = msec; }; mc.lc.rpc = function (callbackID, arg) { mochi.as2.MochiAd.rpc(clip, callbackID, arg); }; mc.rpcTestFn = function (s) { trace("[MOCHIAD rpcTestFn] " + s); return(s); }; chk.onEnterFrame = function () { var _local10 = this._parent._parent; var _local3 = _local10; while ((!_local3.getBytesTotal()) && (_local3)) { _local3 = _local3._parent; } if (!_local3) { _local3 = _root; } var _local13 = this._parent._mochiad_ctr; var _local7 = getTimer() - this.started; var _local5 = false; var _local6 = _local3.getBytesTotal(); var _local9 = _local3.getBytesLoaded(); var _local4 = (100 * _local9) / _local6; var _local12 = (100 * _local7) / chk.ad_msec; var _local11 = this._mochiad_bar._inside; var _local15 = Math.min(100, Math.min(_local4 || 0, _local12)); _local15 = Math.max(this.last_pcnt, _local15); this.last_pcnt = _local15; _local11._xscale = _local15; options.ad_progress(_local15); if (sendHostProgress) { mochi.as2.MochiAd.containerNotify(clip, {id:"hostLoadPcnt", pcnt:_local4}, clip._mochiad._containerLCName); if (_local4 == 100) { sendHostProgress = false; } } if (!chk.showing) { var _local8 = _local13.getBytesTotal(); if ((_local8 > 0) || (typeof(_local8) == "undefined")) { chk.showing = true; chk.started = getTimer(); } else if ((_local7 > chk.ad_timeout) && (_local4 == 100)) { options.ad_failed(); _local5 = true; } } if (_local7 > chk.ad_msec) { _local5 = true; } if (((_local6 > 0) && (_local9 >= _local6)) && (_local5)) { if (this.server_control) { delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; } } }; } static function showClickAwayAd(options) { var _local10 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function () { }, ad_finished:function () { }, ad_loaded:function (width, height) { }, ad_failed:function () { trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function () { }}; options = _parseOptions(options, _local10); var clip = options.clip; var _local9 = options.ad_timeout; delete options.ad_timeout; if (!load(options)) { options.ad_failed(); options.ad_finished(); return(undefined); } options.ad_started(); var _local3 = clip._mochiad; _local3.onUnload = function () { options.ad_finished(); }; var _local5 = _getRes(options); var _local11 = _local5[0]; var _local8 = _local5[1]; _local3._x = _local11 * 0.5; _local3._y = _local8 * 0.5; var chk = _local3.createEmptyMovieClip("_mochiad_wait", 3); chk.ad_timeout = _local9; chk.started = getTimer(); chk.showing = false; _local3.lc.adLoaded = options.ad_loaded; _local3.lc.adSkipped = options.ad_skipped; _local3.lc.rpc = function (callbackID, arg) { mochi.as2.MochiAd.rpc(clip, callbackID, arg); }; _local3.rpcTestFn = function (s) { trace("[MOCHIAD rpcTestFn] " + s); return(s); }; var _local21 = false; chk.onEnterFrame = function () { var _local5 = this._parent._mochiad_ctr; var _local4 = getTimer() - this.started; var _local2 = false; if (!chk.showing) { var _local3 = _local5.getBytesTotal(); if ((_local3 > 0) || (typeof(_local3) == "undefined")) { _local2 = true; chk.showing = true; chk.started = getTimer(); } else if (_local4 > chk.ad_timeout) { options.ad_failed(); _local2 = true; } } if (_local2) { delete this.onEnterFrame; } }; } static function showInterLevelAd(options) { var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () { this.clip.stop(); }, ad_finished:function () { this.clip.play(); }, ad_failed:function () { trace("[MochiAd] Couldn't load an ad, make sure that your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_loaded:function (width, height) { }, ad_skipped:function () { }}; options = _parseOptions(options, _local13); var clip = options.clip; var _local10 = 11000; var _local12 = options.ad_timeout; delete options.ad_timeout; var fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!load(options)) { options.ad_failed(); options.ad_finished(); return(undefined); } options.ad_started(); var mc = clip._mochiad; mc.onUnload = function () { options.ad_finished(); }; var _local5 = _getRes(options); var _local14 = _local5[0]; var _local11 = _local5[1]; mc._x = _local14 * 0.5; mc._y = _local11 * 0.5; var chk = mc.createEmptyMovieClip("_mochiad_wait", 3); chk.ad_msec = _local10; chk.ad_timeout = _local12; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function () { var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)); if (_local2 > 0) { this._parent._alpha = _local2; } else { var _local3 = this._parent._parent; mochi.as2.MochiAd.unload(_local3); delete this.onEnterFrame; } }; mc.lc.adLoaded = options.ad_loaded; mc.lc.adSkipped = options.ad_skipped; mc.lc.adjustProgress = function (msec) { var _local2 = this.mc._mochiad_wait; _local2.server_control = true; _local2.started = getTimer(); _local2.ad_msec = msec - 250; }; mc.lc.rpc = function (callbackID, arg) { mochi.as2.MochiAd.rpc(clip, callbackID, arg); }; mc.rpcTestFn = function (s) { trace("[MOCHIAD rpcTestFn] " + s); return(s); }; chk.onEnterFrame = function () { var _local5 = this._parent._mochiad_ctr; var _local4 = getTimer() - this.started; var _local2 = false; if (!chk.showing) { var _local3 = _local5.getBytesTotal(); if ((_local3 > 0) || (typeof(_local3) == "undefined")) { chk.showing = true; chk.started = getTimer(); } else if (_local4 > chk.ad_timeout) { options.ad_failed(); _local2 = true; } } if (_local4 > chk.ad_msec) { _local2 = true; } if (_local2) { if (this.server_control) { delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; } } }; } static function showPreloaderAd(options) { trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); showPreGameAd(options); } static function showTimedAd(options) { trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); showInterLevelAd(options); } static function _allowDomains(server) { var _local1 = server.split("/")[2].split(":")[0]; if (System.security) { if (System.security.allowDomain) { System.security.allowDomain("*"); System.security.allowDomain(_local1); } if (System.security.allowInsecureDomain) { System.security.allowInsecureDomain("*"); System.security.allowInsecureDomain(_local1); } } return(_local1); } static function load(options) { var _local12 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = _parseOptions(options, _local12); options.swfv = options.clip.getSWFVersion() || 6; options.mav = getVersion(); var _local6 = options.clip; if (!_isNetworkAvailable()) { return(null); } if (_local6._mochiad_loaded) { return(null); } var _local11 = options.depth; delete options.depth; var mc = _local6.createEmptyMovieClip("_mochiad", _local11); var _local10 = _getRes(options); options.res = (_local10[0] + "x") + _local10[1]; options.server = options.server + options.id; delete options.id; _local6._mochiad_loaded = true; if (_local6._url.indexOf("http") != 0) { trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal"); } var _local4 = mc.createEmptyMovieClip("_mochiad_ctr", 1); for (var _local7 in options) { _local4[_local7] = options[_local7]; } var _local9 = _local4.server; delete _local4.server; var _local13 = _allowDomains(_local9); mc.onEnterFrame = function () { if (this._mochiad_ctr._url != this._url) { this.onEnterFrame = function () { if (!this._mochiad_ctr) { delete this.onEnterFrame; mochi.as2.MochiAd.unload(this._parent); } }; } }; var _local5 = new Object(); var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_"); _local5.mc = mc; _local5.name = _local8; _local5.hostname = _local13; _local5.allowDomain = function (d) { return(true); }; _local5.allowInsecureDomain = _local5.allowDomain; _local5.connect(_local8); mc.lc = _local5; mc.lc.regContLC = function (lc_name) { mc._containerLCName = lc_name; }; _local4.lc = _local8; _local4.st = getTimer(); if (!options.skip) { _local4.loadMovie(_local9 + ".swf", "POST"); } return(mc); } static function unload(clip) { if (typeof(clip) == "undefined") { clip = _root; } if (clip.clip && (clip.clip._mochiad)) { clip = clip.clip; } if (!clip._mochiad) { return(false); } containerNotify(clip, {id:"unload"}, clip._mochiad._containerLCName); clip._mochiad.removeMovieClip(); delete clip._mochiad_loaded; delete clip._mochiad; return(true); } static function _isNetworkAvailable() { if (System.security) { var _local1 = System.security; if (_local1.sandboxType == "localWithFile") { return(false); } } return(true); } static function _getRes(options) { var _local3 = options.clip.getBounds(); var _local2 = 0; var _local1 = 0; if (typeof(options.res) != "undefined") { var _local4 = options.res.split("x"); _local2 = parseFloat(_local4[0]); _local1 = parseFloat(_local4[1]); } else { _local2 = _local3.xMax - _local3.xMin; _local1 = _local3.yMax - _local3.yMin; } if ((_local2 == 0) || (_local1 == 0)) { _local2 = Stage.width; _local1 = Stage.height; } return([_local2, _local1]); } static function _parseOptions(options, defaults) { var _local4 = {}; for (var _local8 in defaults) { _local4[_local8] = defaults[_local8]; } if (options) { for (var _local8 in options) { _local4[_local8] = options[_local8]; } } if (_root.mochiad_options) { var _local5 = _root.mochiad_options.split("&"); var _local2 = 0; while (_local2 < _local5.length) { var _local3 = _local5[_local2].split("="); _local4[unescape(_local3[0])] = unescape(_local3[1]); _local2++; } } if (_local4.id == "test") { trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); } return(_local4); } static function rpc(clip, callbackID, arg) { switch (arg.id) { case "setValue" : setValue(clip, arg.objectName, arg.value); break; case "getValue" : var _local4 = getValue(clip, arg.objectName); containerRpcResult(clip, callbackID, _local4, clip._mochiad._containerLCName); break; case "runMethod" : var _local3 = runMethod(clip, arg.method, arg.args); containerRpcResult(clip, callbackID, _local3, clip._mochiad._containerLCName); break; default : trace("[mochiads rpc] unknown rpc id: " + arg.id); } } static function setValue(base, objectName, value) { var _local2 = objectName.split("."); var _local1; _local1 = 0; while (_local1 < (_local2.length - 1)) { if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) { return(undefined); } base = base[_local2[_local1]]; _local1++; } base[_local2[_local1]] = value; } static function getValue(base, objectName) { var _local2 = objectName.split("."); var _local1; _local1 = 0; while (_local1 < (_local2.length - 1)) { if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) { return(undefined); } base = base[_local2[_local1]]; _local1++; } return(base[_local2[_local1]]); } static function runMethod(base, methodName, argsArray) { var _local2 = methodName.split("."); var _local1; _local1 = 0; while (_local1 < (_local2.length - 1)) { if ((base[_local2[_local1]] == undefined) || (base[_local2[_local1]] == null)) { return(undefined); } base = base[_local2[_local1]]; _local1++; } if (typeof(base[_local2[_local1]]) == "function") { return(base[_local2[_local1]].apply(base, argsArray)); } return(undefined); } static function containerNotify(clip, args, lcName) { var _local1 = clip._mochiad._mochiad_ctr.ad.app; if (_local1.notify) { _local1.notify(args); } else { new LocalConnection().send(lcName, "notify", args); } } static function containerRpcResult(clip, callbackID, val, lcName) { var _local1 = clip._mochiad._mochiad_ctr.ad.app; if (_local1.rpcResult) { _local1.rpcResult(callbackID, val); } else { new LocalConnection().send(lcName, "rpcResult", callbackID, val); } } }
Symbol 207 MovieClip [__Packages.mochi.as2.MochiEventDispatcher] Frame 0
class mochi.as2.MochiEventDispatcher { var eventTable; function MochiEventDispatcher () { eventTable = {}; } function buildDelegate(thisObject, thatObject) { var _local2 = {thisObject:thisObject, thatObject:thatObject}; if (thatObject != undefined) { var funct = ((typeof(thatObject) == "string") ? (thisObject[thatObject]) : (thatObject)); _local2.delegate = function (args) { funct.call(thisObject, args); }; } else { _local2.delegate = thisObject; } return(_local2); } function compareDelegate(d_A, d_B) { if ((d_A.thisObject != d_B.thisObject) || (d_A.thatObject != d_B.thatObject)) { return(false); } return(true); } function addEventListener(event, thisObject, thatObject) { removeEventListener(event, thisObject, thatObject); eventTable[event].push(buildDelegate(thisObject, thatObject)); } function removeEventListener(event, thisObject, thatObject) { var _local3 = buildDelegate(thisObject, thatObject); if (eventTable[event] == undefined) { eventTable[event] = []; return(undefined); } for (var _local4 in eventTable[event]) { if (!compareDelegate(eventTable[event][_local4], _local3)) { continue; } eventTable[event].splice(Number(_local4), 1); } } function triggerEvent(event, args) { if (eventTable[event] == undefined) { return(undefined); } for (var _local4 in eventTable[event]) { eventTable[event][_local4].delegate(args); } } }
Symbol 208 MovieClip [__Packages.mochi.as2.MochiServices] Frame 0
class mochi.as2.MochiServices { static var _id, _container, _clip, _sendChannelName, __get__comChannelName, onError, _listenChannel, _sendChannel; function MochiServices () { } static function get id() { return(_id); } static function get clip() { return(_container); } static function get childClip() { return(_clip); } static function getVersion() { return("3.9.4 as2"); } static function allowDomains(server) { var _local1 = server.split("/")[2].split(":")[0]; if (System.security) { if (System.security.allowDomain) { System.security.allowDomain("*"); System.security.allowDomain(_local1); } if (System.security.allowInsecureDomain) { System.security.allowInsecureDomain("*"); System.security.allowInsecureDomain(_local1); } } return(_local1); } static function get isNetworkAvailable() { if (System.security) { var _local1 = System.security; if (_local1.sandboxType == "localWithFile") { return(false); } } return(true); } static function set comChannelName(val) { if (val != undefined) { if (val.length > 3) { _sendChannelName = val + "_fromgame"; initComChannels(); } } //return(__get__comChannelName()); } static function get connected() { return(_connected); } static function connect(id, clip, onError) { if (onError != undefined) { mochi.as2.MochiServices.onError = onError; } else if (mochi.as2.MochiServices.onError == undefined) { mochi.as2.MochiServices.onError = function (errorCode) { trace(errorCode); }; } warnID(id, false); if ((!_connected) && (_clip == undefined)) { trace("MochiServices Connecting..."); _connecting = true; init(id, clip); } } static function disconnect() { if (_connected || (_connecting)) { _connecting = (_connected = false); flush(true); if (_clip != undefined) { _clip.removeMovieClip(); delete _clip; } _listenChannel.close(); } } static function init(id, clip) { _id = id; if (clip != undefined) { _container = clip; } else { _container = _root; } loadCommunicator(id, _container); } static function loadCommunicator(id, clip) { var _local6 = "_mochiservices_com_" + id; var _local5 = new MovieClipLoader(); var _local3 = {}; if (_clip != null) { return(_clip); } if (!isNetworkAvailable) { onError("NotConnected"); return(null); } if (urlOptions().servURL) { _servURL = urlOptions().servURL; } var _local4 = _servURL + _services; if (urlOptions().servicesURL) { _local4 = urlOptions().servicesURL; } allowDomains(_local4); _clip = clip.createEmptyMovieClip(_local6, 10336, false); _listenChannelName = _listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor(Math.random() * 99999)); listen(); if (_local3.waitInterval != null) { clearInterval(_local3.waitInterval); } _local3.onLoadError = loadError; _local3.onLoadStart = function (target_mc) { this.isLoading = true; }; _local3.onLoadComplete = function (target_mc) { target_mc.MochiServices = mochi.as2.MochiServices; }; _local3.startTime = getTimer(); _local3.wait = function () { if ((getTimer() - this.startTime) > 10000) { if (!this.isLoading) { mochi.as2.MochiServices.disconnect(); mochi.as2.MochiServices.onError("IOError"); } clearInterval(this.waitInterval); } }; _local3.waitInterval = setInterval(_local3, "wait", 1000); _local5.addListener(_local3); _local5.loadClip((((((_local4 + "?listenLC=") + _listenChannelName) + "&mochiad_options=") + escape(_root.mochiad_options)) + "&api_version=") + getVersion(), _clip); _sendChannel = new LocalConnection(); _sendChannel._queue = []; return(_clip); } static function loadError(target_mc, errorCode, httpStatus) { trace("MochiServices could not load."); disconnect(); onError(errorCode); } static function onStatus(infoObject) { if (!(infoObject.level === "error")) { } else { _connected = false; _listenChannel.connect(_listenChannelName); } } static function listen() { _listenChannel = new LocalConnection(); _listenChannel.handshake = function (args) { mochi.as2.MochiServices.__set__comChannelName(args.newChannel); }; _listenChannel.allowDomain = function (d) { return(true); }; _listenChannel.allowInsecureDomain = _listenChannel.allowDomain; _listenChannel._nextcallbackID = 0; _listenChannel._callbacks = {}; _listenChannel.connect(_listenChannelName); trace("Waiting for MochiAds services to connect..."); } static function initComChannels() { if (!_connected) { _sendChannel.onStatus = function (infoObject) { mochi.as2.MochiServices.onStatus(infoObject); }; _sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, version:getVersion()}); _listenChannel.onStatus = function (infoObject) { mochi.as2.MochiServices.onStatus(infoObject); }; _listenChannel.onReceive = function (pkg) { var _local5 = pkg.callbackID; var _local4 = this._callbacks[_local5]; if (!_local4) { return(undefined); } var _local2 = _local4.callbackMethod; var _local3 = _local4.callbackObject; if (_local3 && (typeof(_local2) == "string")) { _local2 = _local3[_local2]; } if (_local2 != undefined) { _local2.apply(_local3, pkg.args); } delete this._callbacks[_local5]; }; _listenChannel.onEvent = function (pkg) { switch (pkg.target) { case "services" : mochi.as2.MochiServices.triggerEvent(pkg.event, pkg.args); break; case "events" : mochi.as2.MochiEvents.triggerEvent(pkg.event, pkg.args); break; case "coins" : mochi.as2.MochiCoins.triggerEvent(pkg.event, pkg.args); break; case "social" : mochi.as2.MochiSocial.triggerEvent(pkg.event, pkg.args); } }; _listenChannel.onError = function () { mochi.as2.MochiServices.onError("IOError"); }; trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; while (_sendChannel._queue.length > 0) { _sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift()); } } } static function flush(error) { var _local1; var _local2; while (_sendChannel._queue.length > 0) { _local1 = _sendChannel._queue.shift(); if (_local1.callbackID != null) { _local2 = _listenChannel._callbacks[_local1.callbackID]; } delete _listenChannel._callbacks[_local1.callbackID]; if (error) { handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod); } } } static function handleError(args, callbackObject, callbackMethod) { if (args != null) { if (args.onError != null) { args.onError("NotConnected"); } if ((args.options != null) && (args.options.onError != null)) { args.options.onError("NotConnected"); } } if (callbackMethod != null) { args = {}; args.error = true; args.errorCode = "NotConnected"; if ((callbackObject != null) && (typeof(callbackMethod) == "string")) { callbackObject[callbackMethod](args); } else if (callbackMethod != null) { callbackMethod.apply(args); } } } static function send(methodName, args, callbackObject, callbackMethod) { if (_connected) { _sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID}); } else { if ((_clip == undefined) || (!_connecting)) { trace("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + methodName); handleError(args, callbackObject, callbackMethod); flush(true); return(undefined); } _sendChannel._queue.push({methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID}); } _listenChannel._callbacks[_listenChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod}; _listenChannel._nextcallbackID++; } static function urlOptions() { var _local5 = {}; var _local6; if (_root._url.indexOf("mochiad_options") != -1) { var _local2 = (_root._url.indexOf("mochiad_options") + "mochiad_options".length) + 1; _local6 = _root._url.substr(_local2, _root._url.length); } else if (_root.mochiad_options) { _local6 = _root.mochiad_options; } if (_local6) { var _local4 = _root.mochiad_options.split("&"); var _local2 = 0; while (_local2 < _local4.length) { var _local3 = _local4[_local2].split("="); _local5[unescape(_local3[0])] = unescape(_local3[1]); _local2++; } } return(_local5); } static function warnID(bid, leaderboard) { bid = bid.toLowerCase(); if (bid.length != 16) { trace(("WARNING: " + (leaderboard ? "board" : "game")) + " ID is not the appropriate length"); return(undefined); } if (bid == "1e113c7239048b3f") { if (leaderboard) { trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); } return(undefined); } if (bid == "84993a1de4031cd8") { if (leaderboard) { trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); } return(undefined); } var _local1 = 0; while (_local1 < bid.length) { switch (bid.charAt(_local1)) { case "0" : case "1" : case "2" : case "3" : case "4" : case "5" : case "6" : case "7" : case "8" : case "9" : case "a" : case "b" : case "c" : case "d" : case "e" : case "f" : break; default : trace("WARNING: Board ID contains illegal characters: " + bid); return(undefined); } _local1++; } } static function addLinkEvent(url, burl, btn, onClick) { var timeout = 1500; var t0 = getTimer(); var _local2 = new Object(); _local2.mav = getVersion(); _local2.swfv = btn.getSWFVersion() || 6; _local2.swfurl = btn._url; _local2.fv = System.capabilities.version; _local2.os = System.capabilities.os; _local2.lang = System.capabilities.language; _local2.scres = (System.capabilities.screenResolutionX + "x") + System.capabilities.screenResolutionY; var s = "?"; var _local3 = 0; for (var _local6 in _local2) { if (_local3 != 0) { s = s + "&"; } _local3++; s = ((s + _local6) + "=") + escape(_local2[_local6]); } if (!(netupAttempted || (_connected))) { var ping = btn.createEmptyMovieClip("ping", 777); var _local7 = btn.createEmptyMovieClip("nettest", 778); netupAttempted = true; ping.loadMovie("http://link.mochiads.com/linkping.swf?t=" + getTimer()); _local7.onEnterFrame = function () { if ((ping._totalframes > 0) && (ping._totalframes == ping._framesloaded)) { delete this.onEnterFrame; } else if ((getTimer() - t0) > timeout) { delete this.onEnterFrame; mochi.as2.MochiServices.netup = false; } }; } var _local4 = btn.createEmptyMovieClip("clk", 1001); _local4._alpha = 0; _local4.beginFill(1044735); _local4.moveTo(0, 0); _local4.lineTo(0, btn._height); _local4.lineTo(btn._width, btn._height); _local4.lineTo(btn._width, 0); _local4.lineTo(0, 0); _local4.endFill(); _local4.onRelease = function () { if (mochi.as2.MochiServices.netup) { getURL (url + s, "_blank"); } else { getURL (burl, "_blank"); } if (onClick != undefined) { onClick(); } }; } static function setContainer(clip) { } static function stayOnTop(clip) { } static function addEventListener(eventType, thisObject, thatObject) { _dispatcher.addEventListener(eventType, thisObject, thatObject); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, thisObject, thatObject) { _dispatcher.removeEventListener(eventType, thisObject, thatObject); } static var CONNECTED = "onConnected"; static var _servURL = "http://www.mochiads.com/static/lib/services/"; static var _services = "services.swf"; static var _mochiLC = "MochiLC.swf"; static var _listenChannelName = "__ms_"; static var _connecting = false; static var _connected = false; static var netup = true; static var netupAttempted = false; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 209 MovieClip [__Packages.mochi.as2.MochiEvents] Frame 0
class mochi.as2.MochiEvents { function MochiEvents () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function getAchievements(properties) { mochi.as2.MochiServices.send("events_getAchievements", properties); } static function unlockAchievement(properties) { mochi.as2.MochiServices.send("events_unlockAchievement", properties); } static function startSession(achievementID) { mochi.as2.MochiServices.send("events_beginSession", {achievementID:achievementID}, null, null); } static function showAwards(options) { mochi.as2.MochiServices.send("events_showAwards", options, null, null); } static function setNotifications(style) { mochi.as2.MochiServices.send("events_setNotifications", style, null, null); } static function addEventListener(eventType, thisObject, thatObject) { _dispatcher.addEventListener(eventType, thisObject, thatObject); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, thisObject, thatObject) { _dispatcher.removeEventListener(eventType, thisObject, thatObject); } static function startPlay(tag) { if (tag == undefined) { tag = "gameplay"; } mochi.as2.MochiServices.send("events_setRoundID", {tag:String(tag)}, null, null); } static function endPlay() { mochi.as2.MochiServices.send("events_clearRoundID", null, null, null); } static function trackEvent(tag, value) { mochi.as2.MochiServices.send("events_trackEvent", {tag:tag, value:value}, null, null); } static var ACHIEVEMENTS_OWNED = "AchievementOwned"; static var ACHIEVEMENT_NEW = "AchievementReceived"; static var GAME_ACHIEVEMENTS = "GameAchievements"; static var ERROR = "Error"; static var IO_ERROR = "IOError"; static var IO_PENDING = "IOPending"; static var ALIGN_TOP_LEFT = "ALIGN_TL"; static var ALIGN_TOP = "ALIGN_T"; static var ALIGN_TOP_RIGHT = "ALIGN_TR"; static var ALIGN_LEFT = "ALIGN_L"; static var ALIGN_CENTER = "ALIGN_C"; static var ALIGN_RIGHT = "ALIGN_R"; static var ALIGN_BOTTOM_LEFT = "ALIGN_BL"; static var ALIGN_BOTTOM = "ALIGN_B"; static var ALIGN_BOTTOM_RIGHT = "ALIGN_BR"; static var FORMAT_SHORT = "ShortForm"; static var FORMAT_LONG = "LongForm"; static var FORMAT_NONE = "NoForm"; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 210 MovieClip [__Packages.mochi.as2.MochiCoins] Frame 0
class mochi.as2.MochiCoins { function MochiCoins () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function showStore(options) { mochi.as2.MochiServices.send("coins_showStore", {options:options}, null, null); } static function showItem(options) { if ((options == undefined) || (typeof(options.item) != "string")) { trace("ERROR: showItem call must pass an Object with an item key"); return(undefined); } mochi.as2.MochiServices.send("coins_showItem", {options:options}, null, null); } static function showVideo(options) { if ((options == undefined) || (typeof(options.item) != "string")) { trace("ERROR: showVideo call must pass an Object with an item key"); return(undefined); } mochi.as2.MochiServices.send("coins_showVideo", {options:options}, null, null); } static function getStoreItems() { mochi.as2.MochiServices.send("coins_getStoreItems"); } static function requestFunding(properties) { mochi.as2.MochiServices.send("social_requestFunding", properties); } static function addEventListener(eventType, delegate) { _dispatcher.addEventListener(eventType, delegate); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, delegate) { _dispatcher.removeEventListener(eventType, delegate); } static var STORE_SHOW = "StoreShow"; static var STORE_HIDE = "StoreHide"; static var ITEM_OWNED = "ItemOwned"; static var ITEM_NEW = "ItemNew"; static var STORE_ITEMS = "StoreItems"; static var ERROR = "Error"; static var IO_ERROR = "IOError"; static var NO_USER = "NoUser"; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 211 MovieClip [__Packages.mochi.as2.MochiSocial] Frame 0
class mochi.as2.MochiSocial { function MochiSocial () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function showLoginWidget(options) { mochi.as2.MochiServices.setContainer(); mochi.as2.MochiServices.stayOnTop(); mochi.as2.MochiServices.send("social_showLoginWidget", {options:options}); } static function hideLoginWidget() { mochi.as2.MochiServices.send("social_hideLoginWidget"); } static function requestLogin(properties) { mochi.as2.MochiServices.send("social_requestLogin", properties); } static function getFriendsList(properties) { mochi.as2.MochiServices.send("social_getFriendsList", properties); } static function showProfile(options) { mochi.as2.MochiServices.setContainer(); mochi.as2.MochiServices.stayOnTop(); mochi.as2.MochiServices.send("social_showProfile", options); } static function postToStream(properties) { mochi.as2.MochiServices.send("social_postToStream", properties); } static function inviteFriends(properties) { mochi.as2.MochiServices.send("social_inviteFriends", properties); } static function requestFan(properties) { mochi.as2.MochiServices.send("social_requestFan", properties); } static function saveUserProperties(properties) { mochi.as2.MochiServices.send("social_saveUserProperties", properties); } static function addEventListener(eventType, delegate) { _dispatcher.addEventListener(eventType, delegate); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, delegate) { _dispatcher.removeEventListener(eventType, delegate); } static var LOGGED_IN = "LoggedIn"; static var LOGGED_OUT = "LoggedOut"; static var LOGIN_SHOW = "LoginShow"; static var LOGIN_HIDE = "LoginHide"; static var LOGIN_SHOWN = "LoginShown"; static var PROFILE_SHOW = "ProfileShow"; static var PROFILE_HIDE = "ProfileHide"; static var PROPERTIES_SAVED = "PropertySaved"; static var WIDGET_LOADED = "WidgetLoaded"; static var FRIEND_LIST = "FriendsList"; static var PROFILE_DATA = "ProfileData"; static var GAMEPLAY_DATA = "GameplayData"; static var ACTION_CANCELED = "onCancel"; static var ACTION_COMPLETE = "onComplete"; static var USER_INFO = "UserInfo"; static var ERROR = "Error"; static var IO_ERROR = "IOError"; static var NO_USER = "NoUser"; static var PROPERTIES_SIZE = "PropertiesSize"; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 212 MovieClip [__Packages.mx.events.EventDispatcher] Frame 0
class mx.events.EventDispatcher { function EventDispatcher () { } static function _removeEventListener(queue, event, handler) { if (queue != undefined) { var _local4 = queue.length; var _local1; _local1 = 0; while (_local1 < _local4) { var _local2 = queue[_local1]; if (_local2 == handler) { queue.splice(_local1, 1); return(undefined); } _local1++; } } } static function initialize(object) { if (_fEventDispatcher == undefined) { _fEventDispatcher = new mx.events.EventDispatcher(); } object.addEventListener = _fEventDispatcher.addEventListener; object.removeEventListener = _fEventDispatcher.removeEventListener; object.dispatchEvent = _fEventDispatcher.dispatchEvent; object.dispatchQueue = _fEventDispatcher.dispatchQueue; } function dispatchQueue(queueObj, eventObj) { var _local7 = "__q_" + eventObj.type; var _local4 = queueObj[_local7]; if (_local4 != undefined) { var _local5; for (_local5 in _local4) { var _local1 = _local4[_local5]; var _local3 = typeof(_local1); if ((_local3 == "object") || (_local3 == "movieclip")) { if (_local1.handleEvent != undefined) { _local1.handleEvent(eventObj); } if (_local1[eventObj.type] != undefined) { if (exceptions[eventObj.type] == undefined) { _local1[eventObj.type](eventObj); } } } else { _local1.apply(queueObj, [eventObj]); } } } } function dispatchEvent(eventObj) { if (eventObj.target == undefined) { eventObj.target = this; } this[eventObj.type + "Handler"](eventObj); dispatchQueue(this, eventObj); } function addEventListener(event, handler) { var _local3 = "__q_" + event; if (this[_local3] == undefined) { this[_local3] = new Array(); } _global.ASSetPropFlags(this, _local3, 1); _removeEventListener(this[_local3], event, handler); this[_local3].push(handler); } function removeEventListener(event, handler) { var _local2 = "__q_" + event; _removeEventListener(this[_local2], event, handler); } static var _fEventDispatcher = undefined; static var exceptions = {move:1, draw:1, load:1}; }
Symbol 213 MovieClip [__Packages.Playtomic.LogRequest] Frame 0
class Playtomic.LogRequest { var Pieces; function LogRequest () { } function Queue(data) { Pieces++; Data = Data + (((Data == "") ? "" : "~") + data); if ((Pieces == 8) || (Data.length > 300)) { Pieces = 0; Ready = true; } } function Send() { var _local3 = function (success) { if ((this.Data.indexOf("v/") == 0) || (this.Data.indexOf("~v/") > -1)) { Playtomic.Log.IncreaseViews(); } if ((this.Data.indexOf("p/") == 0) || (this.Data.indexOf("~p/") > -1)) { Playtomic.Log.IncreasePlays(); } }; var _local2 = new LoadVars(); _local2.sendAndLoad(((((((((("http://g" + Playtomic.Log.GUID) + ".api.playtomic.com/Tracker/q.aspx?swfid=") + Playtomic.Log.SWFID) + "&q=") + Data) + "&url=") + Playtomic.Log.SourceUrl) + "&") + Math.random()) + "z", _local3, "POST"); } var Data = ""; var Ready = false; }
Symbol 214 MovieClip [__Packages.Playtomic.Log] Frame 0
class Playtomic.Log { static var SourceUrl, Cookie; function Log () { } static function View(swfid, guid, defaulturl) { if (swfid == undefined) { swfid = 0; } if (guid == undefined) { guid = ""; } if (defaulturl == undefined) { defaulturl = ""; } if (SWFID > 0) { return(undefined); } SWFID = swfid; GUID = guid; Enabled = true; if ((SWFID == 0) || (GUID == "")) { Enabled = false; return(undefined); } if (defaulturl.indexOf("http://") != 0) { Enabled = false; return(undefined); } SourceUrl = defaulturl; if (((SourceUrl == null) || (SourceUrl == "")) || (SourceUrl.indexOf("https://") == 0)) { Enabled = false; return(undefined); } Cookie = SharedObject.getLocal("playtomic"); var _local5 = GetCookie("views"); Send("v/" + _local5, true); _global.setTimeout(PingServer, 60000); } static function ForceSend() { if (Request == null) { return(undefined); } Request.Send(); Request = new Playtomic.LogRequest(); } static function Play() { if (!Enabled) { return(undefined); } LevelCounters = new Array(); LevelAverages = new Array(); LevelRangeds = new Array(); Send("p/" + (Plays + 1), true); } static function CustomMetric(name, group, unique) { if (!Enabled) { return(undefined); } if ((group == null) || (group == undefined)) { group = ""; } if ((unique == null) || (unique == undefined)) { unique = false; } if (unique) { if (Customs.indexOf(name) > -1) { return(undefined); } Customs.push(name); } Send((("c/" + Clean(name)) + "/") + Clean(group)); } static function Link(url, name, group, unique, total, fail) { if (!Enabled) { return(undefined); } Send((((((((((("l/" + Clean(name)) + "/") + Clean(group)) + "/") + Clean(url)) + "/") + unique) + "/") + total) + "/") + fail); } static function LevelCounterMetric(name, level, unique) { if (!Enabled) { return(undefined); } if (unique) { var _local1 = (name + ".") + level.toString(); if (LevelCounters.indexOf(_local1) > -1) { return(undefined); } LevelCounters.push(_local1); } Send((("lc/" + Clean(name)) + "/") + Clean(level)); } static function LevelRangedMetric(name, level, value, unique) { if (!Enabled) { return(undefined); } if (unique) { var _local1 = (name + ".") + level.toString(); if (LevelRangeds.indexOf(_local1) > -1) { return(undefined); } LevelRangeds.push(_local1); SaveCookie("lr_" + name, 1); } Send((((("lr/" + Clean(name)) + "/") + Clean(level)) + "/") + value); } static function LevelAverageMetric(name, level, value, unique) { if (!Enabled) { return(undefined); } if (unique) { var _local1 = (name + ".") + level.toString(); if (LevelAverages.indexOf(_local1) > -1) { return(undefined); } LevelAverages.push(_local1); } Send((((("la/" + Clean(name)) + "/") + Clean(level)) + "/") + value); } static function Heatmap(name, group, x, y) { if (!Enabled) { return(undefined); } Send((((((("h/" + Clean(name)) + "/") + Clean(group)) + "/") + x) + "/") + y); } static function Funnel(name, step, stepnum) { if (!Enabled) { return(undefined); } Send((((("f/" + Clean(name)) + "/") + Clean(step)) + "/") + stepnum); } static function PlayerLevelStart(levelid) { if (!Enabled) { return(undefined); } Send("pls/" + levelid); } static function PlayerLevelWin(levelid) { if (!Enabled) { return(undefined); } Send("plw/" + levelid); } static function PlayerLevelQuit(levelid) { if (!Enabled) { return(undefined); } Send("plq/" + levelid); } static function PlayerLevelRetry(levelid) { if (!Enabled) { return(undefined); } Send("plr/" + levelid); } static function PlayerLevelFlag(levelid) { if (!Enabled) { return(undefined); } Send("plf/" + levelid); } static function PingServer() { if (!Enabled) { return(undefined); } Pings++; Send((("t/" + (FirstPing ? "y" : "n")) + "/") + Pings, true); if (FirstPing) { FirstPing = false; setInterval(PingServer, 60000); } } static function Send(s, view) { if (view == undefined) { view = false; } Request.Queue(s); if ((Request.Ready || (view)) || (!Queue)) { Request.Send(); Request = new Playtomic.LogRequest(); } } static function GetCookie(n) { if (Cookie.data[n] == undefined) { return(0); } return(parseInt(Cookie.data[n])); } static function SaveCookie(n, v) { Cookie.data[n] = v.toString(); Cookie.flush(); } static function Clean(s) { while (s.indexOf("/") > -1) { s = Replace(s, "/", "\\"); } while (s.indexOf("~") > -1) { s = Replace(s, "~", "-"); } return(escape(s)); } static function Replace(str, find, replace) { return(str.split(find).join(replace)); } static function IncreaseViews() { var _local1 = GetCookie("views"); _local1++; SaveCookie("views", _local1); } static function IncreasePlays() { Plays++; } static var Enabled = false; static var Queue = true; static var SWFID = 0; static var GUID = ""; static var Request = new Playtomic.LogRequest(); static var FirstPing = true; static var Pings = 0; static var Plays = 0; static var HighestGoal = 0; static var Customs = new Array(); static var LevelCounters = new Array(); static var LevelAverages = new Array(); static var LevelRangeds = new Array(); }
Symbol 215 MovieClip [__Packages.com.as2.GPSAPI] Frame 0
class com.as2.GPSAPI { function GPSAPI () { } static function newGPSAPI(parent) { function __com_mochibot__(swfid, mc, lv, trk) { var x; var g; var s; var fv; var sb; var u; var res; var mb; var mbc; var pv; mb = "__mochibot__"; mbc = "mochibot.com"; g = (_global ? (_global) : (_level0._root)); if (g[mb + swfid]) { return(g[mb + swfid]); } s = System.security; x = mc._root.getSWFVersion; fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5))); if (!s) { s = {}; } sb = s.sandboxType; if (sb == "localWithFile") { return(null); } x = s.allowDomain; if (x) { s.allowDomain(mbc); } x = s.allowInsecureDomain; if (x) { s.allowInsecureDomain(mbc); } pv = ((fv == 5) ? (getVersion()) : (System.capabilities.version)); u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=8&fv=") + fv) + "&v=") + escape(pv)) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : ""); lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv)))); g[mb + "level"] = lv; if (fv == 5) { res = "_level" + lv; if (!eval (res)) { loadMovieNum (u, lv); } } else { res = mc.createEmptyMovieClip(mb + swfid, lv); res.loadMovie(u); } return(res); } System.security.allowDomain("*"); System.security.allowInsecureDomain("*"); __com_mochibot__(MOCHIBOT_STRING, parent, 10301, true); } static var GAME_ID = 990; static var MOCHIBOT_STRING = "e93f7d4b"; }
Symbol 216 MovieClip [__Packages.com.api.as2.evnt.APIEvents] Frame 0
class com.api.as2.evnt.APIEvents { function APIEvents () { } static var USERNAME = "USERNAME"; static var GETSCORE = "GETSCORE"; static var GIVESCORE = "GIVESCORE"; static var STARTGAME = "STARTGAME"; static var AUTHURL = "AUTHURL"; static var BADDATA = "BADDATA"; static var LOADERROR = "LOADERROR"; static var SECURITY_ERROR = "SECURITY_ERROR"; static var IO_ERROR = "IO_ERROR"; }
Symbol 217 MovieClip [__Packages.com.api.as2.API] Frame 0
class com.api.as2.API { var theKey, gameid; function API (gameid, key, url) { if (key != undefined) { theKey = key; } if (url != undefined) { this.url = url; } if (gameid != undefined) { this.gameid = gameid; } mx.events.EventDispatcher.initialize(this); } function startGame() { function loadComplete(success) { if (loader.resp) { reply_en = loader.resp; var _local2 = new XML(com.api.as2.security.RC4.decrypt(loader.resp, this.theKey)); reply_de = _local2.toString(); var _local4 = 0; var _local3 = ""; if (_local2 != "") { _local4 = (_local2.firstChild.firstChild.firstChild.attributes.authed ? (_local2.firstChild.firstChild.firstChild.attributes.authed) : 0); _local3 = (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.username ? (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.username) : ""); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.STARTGAME, authed:_local4, username:_local3, query_de:query_de, query_en:query_en, reply_de:reply_de, reply_en:reply_en}); } } else { trace("Bad xml data loaded in metod 'startGame'."); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.BADDATA, metod:"startGame"}); } } var _local2; var query_de; var query_en; var reply_de; var reply_en; _local2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; _local2 = _local2 + "\t <root>"; _local2 = _local2 + "\t\t<query name=\"startgame\">"; _local2 = _local2 + (("\t\t\t<game gameid=\"" + gameid) + "\"></game>"); _local2 = _local2 + "\t\t</query>"; _local2 = _local2 + "\t</root>"; query_de = _local2; var _local4 = com.api.as2.security.RC4.encrypt(_local2, theKey); _local4 = _local4 + com.api.as2.security.RC4.encrypt(gameid, idkey); query_en = _local4; var loader = new LoadVars(); loader.onLoad = mx.utils.Delegate.create(this, loadComplete); var _local3 = new LoadVars(); _local3.query = _local4; _local3.k = Math.random(); _local3.sendAndLoad(url, loader, "GET"); } function getAuthUrl() { function loadComplete(success) { if (loader.resp) { reply_en = loader.resp; var _local2 = new XML(com.api.as2.security.RC4.decrypt(loader.resp, this.theKey)); reply_de = _local2.toString(); var _local3 = ""; if (_local2 != "") { _local3 = (_local2.firstChild.firstChild.firstChild.attributes.authurl ? (_local2.firstChild.firstChild.firstChild.attributes.authurl) : ""); } this.dispatchEvent({type:com.api.as2.evnt.APIEvents.AUTHURL, authurl:_local3, query_de:query_de, query_en:query_en, reply_de:reply_de, reply_en:reply_en}); } else { trace("Bad xml data loaded in metod 'getAuthUrl'."); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.BADDATA, metod:"getAuthUrl"}); } } var _local2; var query_de; var query_en; var reply_de; var reply_en; _local2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; _local2 = _local2 + "\t <root>"; _local2 = _local2 + "\t\t<query name=\"getauthurl\">"; _local2 = _local2 + (("\t\t\t<game gameid=\"" + gameid) + "\"></game>"); _local2 = _local2 + "\t\t</query>"; _local2 = _local2 + "\t</root>"; query_de = _local2; var _local4 = com.api.as2.security.RC4.encrypt(_local2, theKey); _local4 = _local4 + com.api.as2.security.RC4.encrypt(gameid, idkey); query_en = _local4; var loader = new LoadVars(); loader.onLoad = mx.utils.Delegate.create(this, loadComplete); var _local3 = new LoadVars(); _local3.query = _local4; _local3.k = Math.random(); _local3.sendAndLoad(url, loader, "GET"); } function getUserName() { function loadComplete(success) { if (loader.resp) { reply_en = loader.resp; var _local2 = new XML(com.api.as2.security.RC4.decrypt(loader.resp, this.theKey)); reply_de = _local2.toString(); var _local3 = ""; if (_local2 != "") { _local3 = (_local2.firstChild.firstChild.firstChild.attributes.username ? (_local2.firstChild.firstChild.firstChild.attributes.username) : ""); } this.dispatchEvent({type:com.api.as2.evnt.APIEvents.USERNAME, username:_local3, query_de:query_de, query_en:query_en, reply_de:reply_de, reply_en:reply_en}); } else { trace("Bad xml data loaded in metod 'getUserName'."); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.BADDATA, metod:"getUserName"}); } } var _local2; var query_de; var query_en; var reply_de; var reply_en; _local2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; _local2 = _local2 + "\t <root>"; _local2 = _local2 + "\t\t<query name=\"getusername\">"; _local2 = _local2 + (("\t\t\t<game gameid=\"" + gameid) + "\"></game>"); _local2 = _local2 + "\t\t</query>"; _local2 = _local2 + "\t</root>"; query_de = _local2; var _local4 = com.api.as2.security.RC4.encrypt(_local2, theKey); _local4 = _local4 + com.api.as2.security.RC4.encrypt(gameid, idkey); query_en = _local4; var loader = new LoadVars(); loader.onLoad = mx.utils.Delegate.create(this, loadComplete); var _local3 = new LoadVars(); _local3.query = _local4; _local3.k = Math.random(); _local3.sendAndLoad(url, loader, "GET"); } function getScore(level) { function loadComplete(success) { if (loader.resp) { reply_en = loader.resp; var _local2 = new XML(com.api.as2.security.RC4.decrypt(loader.resp, this.theKey)); reply_de = _local2.toString(); var _local5 = 0; var _local4 = 0; var _local3 = 0; if (_local2 != "") { _local5 = (_local2.firstChild.firstChild.firstChild.attributes.gameid ? (_local2.firstChild.firstChild.firstChild.attributes.gameid) : 0); _local4 = (_local2.firstChild.firstChild.firstChild.attributes.level ? (_local2.firstChild.firstChild.firstChild.attributes.level) : 0); _local3 = (_local2.firstChild.firstChild.firstChild.attributes.score ? (_local2.firstChild.firstChild.firstChild.attributes.score) : 0); } this.dispatchEvent({type:com.api.as2.evnt.APIEvents.GETSCORE, gameid:_local5, level:_local4, score:_local3, query_de:query_de, query_en:query_en, reply_de:reply_de, reply_en:reply_en}); } else { trace("Bad xml data loaded in metod 'getScore'."); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.BADDATA, metod:"getScore"}); } } var _local2; var query_de; var query_en; var reply_de; var reply_en; _local2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; _local2 = _local2 + "\t <root>"; _local2 = _local2 + "\t\t<query name=\"getScore\">"; _local2 = _local2 + (((("\t\t\t<game gameid=\"" + gameid) + "\" level=\"") + level) + "\"></game>"); _local2 = _local2 + "\t\t</query>"; _local2 = _local2 + "\t</root>"; query_de = _local2; var _local4 = com.api.as2.security.RC4.encrypt(_local2, theKey); _local4 = _local4 + com.api.as2.security.RC4.encrypt(gameid, idkey); query_en = _local4; var loader = new LoadVars(); loader.onLoad = mx.utils.Delegate.create(this, loadComplete); var _local3 = new LoadVars(); _local3.query = _local4; _local3.k = Math.random(); _local3.sendAndLoad(url, loader, "GET"); } function giveScore(level, score) { function loadComplete(success) { if (loader.resp) { reply_en = loader.resp; var _local2 = new XML(com.api.as2.security.RC4.decrypt(loader.resp, this.theKey)); reply_de = _local2.toString(); var _local6 = 0; var _local5 = 0; var _local4 = 0; var _local3 = ""; if (_local2 != "") { _local6 = (_local2.firstChild.firstChild.firstChild.attributes.gameid ? (_local2.firstChild.firstChild.firstChild.attributes.gameid) : 0); _local5 = (_local2.firstChild.firstChild.firstChild.attributes.level ? (_local2.firstChild.firstChild.firstChild.attributes.level) : 0); _local4 = (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.authed ? (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.authed) : 0); _local3 = (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.username ? (_local2.firstChild.firstChild.firstChild.nextSibling.attributes.username) : ""); } this.dispatchEvent({type:com.api.as2.evnt.APIEvents.GIVESCORE, gameid:_local6, level:_local5, authed:_local4, username:_local3, query_de:query_de, query_en:query_en, reply_de:reply_de, reply_en:reply_en}); } else { trace("Bad xml data loaded in metod 'giveScore'."); this.dispatchEvent({type:com.api.as2.evnt.APIEvents.BADDATA, metod:"giveScore"}); } } var _local2; var query_de; var query_en; var reply_de; var reply_en; _local2 = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; _local2 = _local2 + "\t <root>"; _local2 = _local2 + "\t\t<query name=\"givescore\">"; _local2 = _local2 + (((((("\t\t\t<game gameid=\"" + gameid) + "\" level=\"") + level) + "\" score=\"") + score) + "\"></game>"); _local2 = _local2 + "\t\t</query>"; _local2 = _local2 + "\t</root>"; query_de = _local2; var _local4 = com.api.as2.security.RC4.encrypt(_local2, theKey); _local4 = _local4 + com.api.as2.security.RC4.encrypt(gameid, idkey); query_en = _local4; var loader = new LoadVars(); loader.onLoad = mx.utils.Delegate.create(this, loadComplete); var _local3 = new LoadVars(); _local3.query = _local4; _local3.k = Math.random(); _local3.sendAndLoad(url, loader, "GET"); } var url = "/index.php"; var idkey = "JKLdfr34,56D5,673rdSsDS"; }
Symbol 218 MovieClip [__Packages.com.api.as2.security.RC4] Frame 0
class com.api.as2.security.RC4 { function RC4 () { } static function encrypt(src, key) { var _local3 = strToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToHex(_local2)); } static function decrypt(src, key) { var _local3 = hexToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToStr(_local2)); } static function initialize(pwd) { var _local3 = 0; var _local4; var _local5 = pwd.length; var _local1 = 0; while (_local1 <= 255) { mykey[_local1] = pwd[_local1 % _local5]; sbox[_local1] = _local1; _local1++; } var _local2 = 0; while (_local2 <= 255) { _local3 = ((_local3 + sbox[_local2]) + mykey[_local2]) % 256; _local4 = sbox[_local2]; sbox[_local2] = sbox[_local3]; sbox[_local3] = _local4; _local2++; } } static function calculate(plaintxt, psw) { initialize(psw); var _local1 = 0; var _local2 = 0; var _local9 = new Array(); var _local7; var _local5; var _local6; var _local3 = 0; while (_local3 < plaintxt.length) { _local1 = (_local1 + 1) % 256; _local2 = (_local2 + sbox[_local1]) % 256; _local5 = sbox[_local1]; sbox[_local1] = sbox[_local2]; sbox[_local2] = _local5; var _local4 = (sbox[_local1] + sbox[_local2]) % 256; _local7 = sbox[_local4]; _local6 = plaintxt[_local3] ^ _local7; _local9.push(_local6); _local3++; } return(_local9); } static function charsToHex(chars) { var _local4 = new String(""); var _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var _local1 = 0; while (_local1 < chars.length) { _local4 = _local4 + (_local3[chars[_local1] >> 4] + _local3[chars[_local1] & 15]); _local1++; } return(_local4); } static function hexToChars(hex) { var _local3 = new Array(); var _local1 = ((hex.substr(0, 2) == "0x") ? 2 : 0); while (_local1 < hex.length) { _local3.push(parseInt(hex.substr(_local1, 2), 16)); _local1 = _local1 + 2; } return(_local3); } static function charsToStr(chars) { var _local3 = new String(""); var _local1 = 0; while (_local1 < chars.length) { _local3 = _local3 + String.fromCharCode(chars[_local1]); _local1++; } return(_local3); } static function strToChars(str) { var _local3 = new Array(); var _local1 = 0; while (_local1 < str.length) { _local3.push(str.charCodeAt(_local1)); _local1++; } return(_local3); } static var sbox = new Array(255); static var mykey = new Array(255); }
Symbol 219 MovieClip [__Packages.mx.utils.Delegate] Frame 0
class mx.utils.Delegate extends Object { var func; function Delegate (f) { super(); func = f; } static function create(obj, func) { var _local2 = function () { var _local2 = arguments.callee.target; var _local3 = arguments.callee.func; return(_local3.apply(_local2, arguments)); }; _local2.target = obj; _local2.func = func; return(_local2); } function createDelegate(obj) { return(create(obj, func)); } }
Symbol 69 MovieClip [__Packages.com.newgrounds.components.FlashAdBase] Frame 0
class com.newgrounds.components.FlashAdBase extends MovieClip { var _x, _y, stop, onUnload, _adListener, adContainer, newgroundsButton, _showBorder, _ad, gotoAndStop, _adFeedLoader; function FlashAdBase () { super(); try { System.security.allowDomain("server.cpmstar.com"); System.security.allowInsecureDomain("server.cpmstar.com"); } catch(error) { } _x = int(_x); _y = int(_y); stop(); if (_newgroundsButton) { _newgroundsButton.onRelease = onNGClick; } onUnload = removeAd; var _local4 = this; _adListener = {onLoadError:function (target, error, httpStatus) { target._parent.onAdError(target, error, httpStatus); }}; if (com.newgrounds.API.__get__adFeedURL()) { loadAdFeed(); } else { com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.API_CONNECTED, {target:this, func:loadAdFeed}); } } function get _adContainer() { return(adContainer); } function get _newgroundsButton() { return(newgroundsButton); } function get showBorder() { return(_showBorder); } function set showBorder(value) { _showBorder = value; if (_showBorder) { if (_ad) { var _local2 = _ad.getProgress(_adContainer); if (_local2.bytesLoaded >= _local2.bytesTotal) { gotoAndStop("loaded"); } else { gotoAndStop("loading"); } } else { gotoAndStop("idle"); } } else { gotoAndStop("noBorder"); } //return(showBorder); } function loadAdFeed(event) { if (event == undefined) { event = null; } _adFeedLoader = new LoadVars(); var target = this; _adFeedLoader.onData = function (data) { target.onAdFeedLoaded(data); }; _adFeedLoader.load(com.newgrounds.API.__get__adFeedURL(), _adFeedLoader); } function onAdFeedLoaded(data) { if (data && (data != "")) { loadAd(data); } else { onAdError(); } } function loadAd(adURL) { _ad = new MovieClipLoader(); _ad.addListener(_adListener); _adContainer._lockroot = true; _ad.loadClip(adURL, _adContainer); } function removeAd() { _adFeedLoader.onData = null; _adFeedLoader = null; _ad.removeListener(_adListener); if (_adContainer) { _ad.unloadClip(_adContainer); } _ad = null; } function onAdError(target, error, httpStatus) { com.newgrounds.Logger.logError("Unable to load ad."); removeAd(); } function onNGClick() { com.newgrounds.API.loadNewgrounds(); } }
Symbol 41 MovieClip [__Packages.com.newgrounds.shims.APIShim] Frame 0
class com.newgrounds.shims.APIShim extends MovieClip { function APIShim () { super(); } }
Symbol 53 MovieClip [__Packages.com.newgrounds.crypto.MD5] Frame 0
class com.newgrounds.crypto.MD5 { function MD5 () { } static function hash(src) { return(hex_md5(src)); } static function hex_md5(src) { return(binl2hex(core_md5(str2binl(src), src.length * 8))); } static 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(new Array(_local4, _local3, _local2, _local1)); } static 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)); } static function md5_ff(a, b, c, d, x, s, t) { return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t)); } static function md5_gg(a, b, c, d, x, s, t) { return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t)); } static function md5_hh(a, b, c, d, x, s, t) { return(md5_cmn((b ^ c) ^ d, a, b, x, s, t)); } static function md5_ii(a, b, c, d, x, s, t) { return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t)); } static function bit_rol(num, cnt) { return((num << cnt) | (num >>> (32 - cnt))); } static function safe_add(x, y) { var _local1 = (x & 65535) + (y & 65535); var _local2 = ((x >> 16) + (y >> 16)) + (_local1 >> 16); return((_local2 << 16) | (_local1 & 65535)); } static function str2binl(str) { var _local3 = new Array(); var _local4 = 255; var _local1 = 0; while (_local1 < (str.length * 8)) { _local3[_local1 >> 5] = _local3[_local1 >> 5] | ((str.charCodeAt(_local1 / 8) & _local4) << (_local1 % 32)); _local1 = _local1 + 8; } return(_local3); } static function binl2hex(binarray) { var _local4 = new String(""); var _local3 = new String("0123456789abcdef"); 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); } }
Symbol 54 MovieClip [__Packages.com.newgrounds.crypto.RC4] Frame 0
class com.newgrounds.crypto.RC4 { function RC4 () { } static function encrypt(src, key) { var _local3 = strToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToHex(_local2)); } static function encryptbin(src, key) { var _local3 = strToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(_local2); } static function decrypt(src, key) { var _local3 = hexToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToStr(_local2)); } static function initialize(pwd) { var _local2 = 0; var _local3; var _local4 = pwd.length; var _local1 = 0; while (_local1 <= 255) { mykey[_local1] = pwd[_local1 % _local4]; sbox[_local1] = _local1; _local1++; } _local1 = 0; while (_local1 <= 255) { _local2 = ((_local2 + sbox[_local1]) + mykey[_local1]) % 256; _local3 = sbox[_local1]; sbox[_local1] = sbox[_local2]; sbox[_local2] = _local3; _local1++; } } static function calculate(plaintxt, psw) { initialize(psw); var _local1 = 0; var _local2 = 0; var _local9 = new Array(); var _local7; var _local5; var _local6; var _local3 = 0; while (_local3 < plaintxt.length) { _local1 = (_local1 + 1) % 256; _local2 = (_local2 + sbox[_local1]) % 256; _local5 = sbox[_local1]; sbox[_local1] = sbox[_local2]; sbox[_local2] = _local5; var _local4 = (sbox[_local1] + sbox[_local2]) % 256; _local7 = sbox[_local4]; _local6 = plaintxt[_local3] ^ _local7; _local9.push(_local6); _local3++; } return(_local9); } static function charsToHex(chars) { var _local4 = new String(""); var _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var _local1 = 0; while (_local1 < chars.length) { _local4 = _local4 + (_local3[chars[_local1] >> 4] + _local3[chars[_local1] & 15]); _local1++; } return(_local4); } static function hexToChars(hex) { var _local3 = new Array(); var _local1 = ((hex.substr(0, 2) == "0x") ? 2 : 0); while (_local1 < hex.length) { _local3.push(parseInt(hex.substr(_local1, 2), 16)); _local1 = _local1 + 2; } return(_local3); } static function charsToStr(chars) { var _local3 = new String(""); var _local1 = 0; while (_local1 < chars.length) { _local3 = _local3 + String.fromCharCode(chars[_local1]); _local1++; } return(_local3); } static function strToChars(str) { var _local3 = new Array(); var _local1 = 0; while (_local1 < str.length) { _local3.push(str.charCodeAt(_local1)); _local1++; } return(_local3); } static var sbox = new Array(255); static var mykey = new Array(255); }
Symbol 55 MovieClip [__Packages.com.newgrounds.encoders.json.JSON] Frame 0
class com.newgrounds.encoders.json.JSON { static var start, cache, interval; function JSON () { } static function encode(arg, noquotes) { var _local3; var _local2; var _local6; var _local1 = ""; var _local4; if (arg.isSServerVar()) { var _local8 = "sservervariable"; } else { var _local8 = typeof(arg); } switch (_local8) { case "sservervariable" : return("?" + arg.getEncodedValue()); case "object" : if (arg) { if (arg instanceof Array) { _local2 = 0; while (_local2 < arg.length) { _local4 = encode(arg[_local2]); if (_local1) { _local1 = _local1 + ","; } _local1 = _local1 + _local4; _local2++; } return(("[" + _local1) + "]"); } if (typeof(arg.toString) != "undefined") { for (_local2 in arg) { _local4 = arg[_local2]; if ((typeof(_local4) != "undefined") && (typeof(_local4) != "function")) { _local4 = encode(_local4); if (_local1) { _local1 = _local1 + ","; } _local1 = _local1 + ((encode(_local2) + ":") + _local4); } } return(("{" + _local1) + "}"); } } return("null"); case "number" : return((isFinite(arg) ? (String(arg)) : "null")); case "string" : _local6 = arg.length; if (noquotes) { var _local7 = ""; } else { var _local7 = "\""; } _local1 = _local7; _local2 = 0; while (_local2 < _local6) { _local3 = arg.charAt(_local2); if (_local3 >= " ") { if ((_local3 == "\\") || (_local3 == "\"")) { _local1 = _local1 + "\\"; } _local1 = _local1 + _local3; } else { switch (_local3) { case "\b" : _local1 = _local1 + "\\b"; break; case "\f" : _local1 = _local1 + "\\f"; break; case newline : _local1 = _local1 + "\\n"; break; case "\r" : _local1 = _local1 + "\\r"; break; case "\t" : _local1 = _local1 + "\\t"; break; default : _local3 = _local3.charCodeAt(); _local1 = _local1 + (("\\u00" + Math.floor(_local3 / 16).toString(16)) + (_local3 % 16).toString(16)); } } _local2 = _local2 + 1; } return(_local1 + _local7); case "boolean" : return(String(arg)); } return("null"); } static function background_encode(arg, callback) { if (busy) { trace("[Newgrounds Encoder] :: Cannot encode a new file until the previous file is completed"); return(false); } if (!callback) { trace("[Newgrounds Encoder] :: Missing a callback function, skipping encode"); return(false); } busy = true; var _local2 = new Date(); start = _local2.getTime(); cache = {busy:false, complete:false, arg:arg, target:arg, parents:[], encoded:"", callback:callback, encode_chunk:function () { com.newgrounds.encoders.json.JSON.encode_chunk(); }}; if (getType(arg) == "object") { cache.encoded = "{"; } else if (getType(arg) == "array") { cache.encoded = "["; } interval = setInterval(cache, "encode_chunk", 25); return(true); } static function background_decode(arg, callback) { if (busy) { trace("[Newgrounds Encoder] :: Cannot decode a new file until the previous file is completed"); return(false); } if (!callback) { trace("[Newgrounds Encoder] :: Missing a callback function, skipping decode"); return(false); } busy = true; var _local1 = new Date(); start = _local1.getTime(); cache = {busy:false, callback:callback, complete:false, arg:arg, pos:0, parents:["root"], target:null, scratch:"", decode_chunk:function () { com.newgrounds.encoders.json.JSON.decode_chunk(); }}; interval = setInterval(cache, "decode_chunk", 25); return(true); } static function decode(text) { var at = 0; var ch = " "; var _value; var _error = function (m) { throw {name:"JSONError", message:m, at:at - 1, text:text}; }; var _next = function () { ch = text.charAt(at); at = at + 1; return(ch); }; var _white = function () { while (ch) { if (ch <= " ") { _next(); } else if (ch == "/") { switch (_next()) { case "/" : while ((_next() && (ch != newline)) && (ch != "\r")) { } break; case "*" : _next(); for(;;){ if (ch) { if (ch == "*") { if (_next() == "/") { _next(); // unexpected jump } } else { _next(); } } else { _error("Unterminated comment"); } }; break; default : _error("Syntax error"); } } else { return; } } }; var _string = function () { var _local4; var _local1 = ""; var _local3; var _local2; var _local5 = false; if (ch == "\"") { while (_next()) { if (ch == "\"") { _next(); return(_local1); } if (ch == "\\") { switch (_next()) { case "b" : _local1 = _local1 + "\b"; break; case "f" : _local1 = _local1 + "\f"; break; case "n" : _local1 = _local1 + newline; break; case "r" : _local1 = _local1 + "\r"; break; case "t" : _local1 = _local1 + "\t"; break; case "u" : _local2 = 0; _local4 = 0; while (_local4 < 4) { _local3 = parseInt(_next(), 16); if (!isFinite(_local3)) { _local5 = true; break; } _local2 = (_local2 * 16) + _local3; _local4 = _local4 + 1; } if (_local5) { _local5 = false; break; } _local1 = _local1 + String.fromCharCode(_local2); break; default : _local1 = _local1 + ch; } } else { _local1 = _local1 + ch; } } } _error("Bad string"); }; var _array = function () { var _local1 = []; if (ch == "[") { _next(); _white(); if (ch == "]") { _next(); return(_local1); } while (ch) { _local1.push(_value()); _white(); if (ch == "]") { _next(); return(_local1); } if (ch != ",") { break; } _next(); _white(); } } _error("Bad array"); }; var _object = function () { var _local2; var _local1 = {}; if (ch == "{") { _next(); _white(); if (ch == "}") { _next(); return(_local1); } while (ch) { _local2 = _string(); _white(); if (ch != ":") { break; } _next(); _local1[_local2] = _value(); _white(); if (ch == "}") { _next(); return(_local1); } if (ch != ",") { break; } _next(); _white(); } } _error("Bad object"); }; var _number = function () { var _local1 = ""; var _local2; if (ch == "-") { _local1 = "-"; _next(); } while ((ch >= "0") && (ch <= "9")) { _local1 = _local1 + ch; _next(); } if (ch == ".") { _local1 = _local1 + "."; while ((_next() && (ch >= "0")) && (ch <= "9")) { _local1 = _local1 + ch; } } _local2 = 1 * _local1; if (!isFinite(_local2)) { _error("Bad number"); } else { return(_local2); } }; var _word = function () { switch (ch) { case "t" : if (((_next() == "r") && (_next() == "u")) && (_next() == "e")) { _next(); return(true); } break; case "f" : if ((((_next() == "a") && (_next() == "l")) && (_next() == "s")) && (_next() == "e")) { _next(); return(false); } break; case "n" : if (!(((_next() == "u") && (_next() == "l")) && (_next() == "l"))) { break; } _next(); return(null); } _error("Syntax error"); }; _value = function () { _white(); switch (ch) { case "{" : return(_object()); case "[" : return(_array()); case "\"" : return(_string()); case "-" : return(_number()); } return((((ch >= "0") && (ch <= "9")) ? (_number()) : (_word()))); }; return(_value()); } static function getType(v) { if (v instanceof Array) { return("array"); } return(typeof(v)); } static function decode_chunk() { if ((!cache.busy) && (!cache.complete)) { cache.busy = true; var _local1 = 0; while (_local1 < decode_chunks) { chunk_decoder(); if (cache.complete) { break; } _local1++; } trace(Math.round((cache.pos / cache.arg.length) * 100) + "% decoded"); cache.busy = false; } if (cache.complete) { var _local2 = new Date(); busy = false; clearInterval(interval); cache.callback(cache.root, _local2.getTime() - start); cache.arg = ""; } } static function encode_chunk() { if ((!cache.busy) && (!cache.complete)) { cache.busy = true; var _local1 = 0; while (_local1 < encode_chunks) { chunk_encoder(); if (cache.complete) { break; } _local1++; } cache.busy = false; } if (cache.complete) { var _local3 = new Date(); var _local2 = _local3.getTime(); busy = false; clearInterval(interval); cache.callback(cache.encoded, _local2 - start); cache.encoded = ""; } } static function chunk_decoder() { function _object() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (!com.newgrounds.encoders.json.JSON.cache.mode) { com.newgrounds.encoders.json.JSON.cache.mode = "object"; com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (_local1 != "\"") { throw "Malformed object key in encoded string. Keys must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.json.JSON.cache.scratch = ""; _setTargetValue({}); } else if (_local1 == ",") { com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (_local1 != "\"") { throw "Malformed object key in encoded string. Keys must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.json.JSON.cache.scratch = ""; } else if (_local1 == "}") { _useParent(); } else if (_local1 == "\"") { com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (_local1 != ":") { throw "Malformed object notation. Object keys and values must be separated by colons(:)"; } _addParent(com.newgrounds.encoders.json.JSON.cache.scratch); com.newgrounds.encoders.json.JSON.cache.mode = null; } else { if (_local1 == "\\") { com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); } com.newgrounds.encoders.json.JSON.cache.scratch = com.newgrounds.encoders.json.JSON.cache.scratch + _local1; } com.newgrounds.encoders.json.JSON.cache.pos++; } function _array() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (!com.newgrounds.encoders.json.JSON.cache.mode) { com.newgrounds.encoders.json.JSON.cache.mode = "array"; com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); _setTargetValue([]); if (_local1 != "]") { _addArrayKey(); } else { _useParent(); } return(undefined); } if (_local1 == ",") { _addArrayKey(); } else if (_local1 == "]") { _useParent(); } com.newgrounds.encoders.json.JSON.cache.pos++; } function _boolean() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (_local1 == "t") { _setTargetValue(true); com.newgrounds.encoders.json.JSON.cache.pos = com.newgrounds.encoders.json.JSON.cache.pos + 3; } else if (_local1 == "f") { _setTargetValue(false); com.newgrounds.encoders.json.JSON.cache.pos = com.newgrounds.encoders.json.JSON.cache.pos + 4; } else { throw "Bool values must be true or false"; } _useParent(); } function _null() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (_local1 == "n") { _setTargetValue(null); com.newgrounds.encoders.json.JSON.cache.pos = com.newgrounds.encoders.json.JSON.cache.pos + 2; } else { throw "Null values must be null"; } _useParent(); } function _string() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (!com.newgrounds.encoders.json.JSON.cache.mode) { if (_local1 != "\"") { throw "Strings must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.json.JSON.cache.scratch = ""; com.newgrounds.encoders.json.JSON.cache.mode = "string"; } else if (_local1 == "\"") { _setTargetValue(com.newgrounds.encoders.json.JSON.cache.scratch); _useParent(); } else { if (_local1 == "\\") { com.newgrounds.encoders.json.JSON.cache.pos++; _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); switch (_local1) { case "n" : _local1 = newline; break; case "r" : _local1 = newline; break; case "t" : _local1 = "\t"; break; case "u" : _local1 = "\\" + _local1; } } com.newgrounds.encoders.json.JSON.cache.scratch = com.newgrounds.encoders.json.JSON.cache.scratch + _local1; } com.newgrounds.encoders.json.JSON.cache.pos++; } function _number() { var _local1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); var _local2 = "01234567890.-"; if (!com.newgrounds.encoders.json.JSON.cache.mode) { com.newgrounds.encoders.json.JSON.cache.mode = "number"; com.newgrounds.encoders.json.JSON.cache.scratch = ""; } if (_local2.indexOf(_local1) < 0) { _setTargetValue(Number(com.newgrounds.encoders.json.JSON.cache.scratch)); _useParent(); } else { com.newgrounds.encoders.json.JSON.cache.scratch = com.newgrounds.encoders.json.JSON.cache.scratch + _local1; com.newgrounds.encoders.json.JSON.cache.pos++; } } function _setTargetValue(newval) { var _local2 = _getParent().obj; var _local1 = com.newgrounds.encoders.json.JSON.cache.parents[com.newgrounds.encoders.json.JSON.cache.parents.length - 1]; _local2[_local1] = newval; } function _useParent() { com.newgrounds.encoders.json.JSON.cache.mode = com.newgrounds.encoders.json.JSON.getType(_getParent().obj); com.newgrounds.encoders.json.JSON.cache.parents.pop(); } function _getParent() { var _local2 = com.newgrounds.encoders.json.JSON.cache; var _local1 = 0; while (_local1 < (com.newgrounds.encoders.json.JSON.cache.parents.length - 1)) { _local2 = _local2[com.newgrounds.encoders.json.JSON.cache.parents[_local1]]; _local1++; } return({obj:_local2, name:com.newgrounds.encoders.json.JSON.cache.parents[_local1]}); } function _getCurrent() { var _local2 = com.newgrounds.encoders.json.JSON.cache; var _local1 = 0; while (_local1 < com.newgrounds.encoders.json.JSON.cache.parents.length) { _local2 = _local2[com.newgrounds.encoders.json.JSON.cache.parents[_local1]]; _local1++; } return({obj:_local2, name:com.newgrounds.encoders.json.JSON.cache.parents[_local1]}); } function _addParent(child) { com.newgrounds.encoders.json.JSON.cache.parents.push(child); } function _addArrayKey() { var _local1 = _getCurrent().obj.length; com.newgrounds.encoders.json.JSON.cache.parents.push(_local1); com.newgrounds.encoders.json.JSON.cache.mode = null; } if (cache.pos >= cache.arg.length) { cache.complete = true; return(undefined); } if (cache.mode) { eval ("_" + cache.mode)(); } else { var char = cache.arg.charAt(cache.pos); switch (char) { case "{" : _object(); return; case "[" : _array(); return; case "\"" : _string(); return; case "n" : _null(); return; case "t" : _boolean(); return; case "f" : _boolean(); return; default : _number(); } } } static function chunk_encoder() { if (cache.complete) { return(undefined); } var _local2 = getType(cache.target); switch (_local2) { case "number" : cache.encoded = cache.encoded + cache.target; getParent(); break; case "string" : cache.encoded = cache.encoded + (("\"" + cache.target.split("\"").join("\\\"")) + "\""); getParent(); break; case "boolean" : cache.encoded = cache.encoded + ((cache.target == true) ? "true" : "false"); getParent(); break; case "null" : cache.encoded = cache.encoded + "null"; getParent(); break; case "array" : if (cache.target.length < 1) { cache.encoded = cache.encoded + "]"; getParent(); } else { cache.parents.push(cache.target); cache.target = cache.target[0]; if (getType(cache.target) == "array") { cache.encoded = cache.encoded + "["; } else if (getType(cache.target) == "object") { cache.encoded = cache.encoded + "{"; } } break; case "object" : for (var _local1 in cache.target) { break; } if (_local1 === undefined) { cache.encoded = cache.encoded + "}"; getParent(); } else { cache.parents.push(cache.target); cache.target = cache.target[_local1]; cache.encoded = cache.encoded + (("\"" + _local1.split("\"").join("\\\"")) + "\":"); if (getType(cache.target) == "array") { cache.encoded = cache.encoded + "["; } else if (getType(cache.target) == "object") { cache.encoded = cache.encoded + "{"; } } break; default : cache.encoded = cache.encoded + "null"; getParent(); } } static function getParent() { if (cache.parents.length > 0) { var _local1 = cache.parents.pop(); if (getType(_local1) == "array") { _local1.shift(); } else { for (var _local3 in _local1) { delete _local1[_local3]; break; } } if ((getType(_local1) == "object") or (getType(_local1) == "array")) { for (var _local2 in _local1) { break; } if (!(_local2 === undefined)) { cache.encoded = cache.encoded + ","; } } cache.target = _local1; } else { cache.complete = true; } } static var encode_chunks = 20000; static var decode_chunks = 20000; static var busy = false; }
Symbol 60 MovieClip [__Packages.com.newgrounds.Score] Frame 0
class com.newgrounds.Score { var _rank, _username, _score, _numericValue, _tag; function Score (rank, username, score, numericValue, tag) { (_rank = rank); (_username = username); _score = score; _numericValue = numericValue; _tag = tag; } function get numericValue() { return(_numericValue); } function get rank() { return(_rank); } function get score() { return(_score); } function get tag() { return(_tag); } function get username() { return(_username); } function toString() { return((((_rank + ".\t") + _username) + "\t") + _score); } }

Library Items

Symbol 1 GraphicUsed by:19 172
Symbol 2 FontUsed by:3 6 7
Symbol 3 TextUses:2Used by:19 172
Symbol 4 GraphicUsed by:5
Symbol 5 MovieClipUses:4Used by:19 172
Symbol 6 TextUses:2Used by:19 172
Symbol 7 TextUses:2Used by:19 172
Symbol 8 GraphicUsed by:9
Symbol 9 MovieClipUses:8Used by:12
Symbol 10 GraphicUsed by:11
Symbol 11 MovieClipUses:10Used by:12
Symbol 12 MovieClipUses:9 11Used by:15
Symbol 13 GraphicUsed by:14
Symbol 14 MovieClipUses:13Used by:15 155 159
Symbol 15 MovieClipUses:12 14Used by:19 169 172
Symbol 16 FontUsed by:17 18 170 171 193
Symbol 17 EditableTextUses:16Used by:19
Symbol 18 EditableTextUses:16Used by:19
Symbol 19 MovieClip [loading_screen]Uses:1 3 5 6 7 15 17 18
Symbol 20 GraphicUsed by:27
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:23
Symbol 23 MovieClipUses:22Used by:27
Symbol 24 GraphicUsed by:25 83 97 204
Symbol 25 MovieClipUses:24Used by:27 96 97 204
Symbol 26 GraphicUsed by:27
Symbol 27 MovieClipUses:20 23 25 26Used by:40
Symbol 28 GraphicUsed by:39
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClipUses:29Used by:31
Symbol 31 MovieClipUses:30Used by:39
Symbol 32 GraphicUsed by:34
Symbol 33 GraphicUsed by:34
Symbol 34 MovieClipUses:32 33Used by:39 96
Symbol 35 GraphicUsed by:39
Symbol 36 SoundUsed by:39
Symbol 37 GraphicUsed by:39
Symbol 38 SoundUsed by:39
Symbol 39 MovieClipUses:28 31 34 35 36 37 38Used by:40
Symbol 40 MovieClip [Preloader]Uses:27 39Used by:98
Symbol 42 Bitmap [DefaultSaveIcon]Used by:44
Symbol 43 Bitmap [DefaultMedalIcon]Used by:44
Symbol 44 GraphicUses:43 42Used by:45
Symbol 45 MovieClip [Newgrounds API Classes]Uses:44Used by:98
Symbol 70 GraphicUsed by:97
Symbol 71 BitmapUsed by:73
Symbol 72 BitmapUsed by:73
Symbol 73 GraphicUses:71 72Used by:84
Symbol 74 BitmapUsed by:75
Symbol 75 GraphicUses:74Used by:84
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:82 84
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:82
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:82
Symbol 82 MovieClipUses:77 79 81Used by:84
Symbol 83 ButtonUses:24Used by:84
Symbol 84 ButtonUses:73 75 82 77 83Used by:97
Symbol 85 MovieClipUsed by:97 204
Symbol 86 GraphicUsed by:96
Symbol 87 GraphicUsed by:96
Symbol 88 GraphicUsed by:96
Symbol 89 GraphicUsed by:90
Symbol 90 MovieClipUses:89Used by:96
Symbol 91 GraphicUsed by:95
Symbol 92 BitmapUsed by:93
Symbol 93 GraphicUses:92Used by:94
Symbol 94 MovieClipUses:93Used by:95
Symbol 95 MovieClipUses:91 94Used by:96
Symbol 96 MovieClipUses:86 25 87 88 90 95 34Used by:97
Symbol 97 MovieClip [FlashAd]Uses:70 84 25 85 96 24Used by:98
Symbol 98 MovieClip [APIConnector]Uses:45 97 40Used by:169
Symbol 99 GraphicUsed by:165 172
Symbol 100 GraphicUsed by:101
Symbol 101 MovieClipUses:100Used by:118
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClipUses:102Used by:118
Symbol 104 BitmapUsed by:105 112
Symbol 105 GraphicUses:104Used by:116
Symbol 106 BitmapUsed by:107 113
Symbol 107 GraphicUses:106Used by:116
Symbol 108 BitmapUsed by:109 114
Symbol 109 GraphicUses:108Used by:116
Symbol 110 BitmapUsed by:111 115
Symbol 111 GraphicUses:110Used by:116
Symbol 112 GraphicUses:104Used by:116
Symbol 113 GraphicUses:106Used by:116
Symbol 114 GraphicUses:108Used by:116
Symbol 115 GraphicUses:110Used by:116
Symbol 116 MovieClipUses:105 107 109 111 112 113 114 115Used by:118
Symbol 117 GraphicUsed by:118
Symbol 118 MovieClipUses:101 103 116 117Used by:169
Symbol 119 BitmapUsed by:120
Symbol 120 GraphicUses:119Used by:169
Symbol 121 FontUsed by:122 123
Symbol 122 EditableTextUses:121Used by:131
Symbol 123 TextUses:121Used by:124
Symbol 124 MovieClipUses:123Used by:131
Symbol 125 GraphicUsed by:126
Symbol 126 MovieClipUses:125Used by:130
Symbol 127 GraphicUsed by:128
Symbol 128 MovieClipUses:127Used by:129
Symbol 129 MovieClipUses:128Used by:130
Symbol 130 MovieClipUses:126 129Used by:131
Symbol 131 MovieClipUses:122 124 130Used by:169
Symbol 132 GraphicUsed by:138
Symbol 133 GraphicUsed by:138
Symbol 134 GraphicUsed by:138
Symbol 135 GraphicUsed by:138
Symbol 136 GraphicUsed by:138
Symbol 137 GraphicUsed by:138
Symbol 138 MovieClipUses:132 133 134 135 136 137Used by:145
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:141
Symbol 141 MovieClipUses:140Used by:142
Symbol 142 MovieClipUses:141Used by:145
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClipUses:143Used by:145
Symbol 145 MovieClipUses:138 142 144Used by:148
Symbol 146 GraphicUsed by:147
Symbol 147 MovieClipUses:146Used by:148
Symbol 148 MovieClipUses:145 147Used by:169
Symbol 149 BitmapUsed by:150
Symbol 150 GraphicUses:149Used by:151
Symbol 151 MovieClipUses:150Used by:155
Symbol 152 BitmapUsed by:153
Symbol 153 GraphicUses:152Used by:154
Symbol 154 MovieClipUses:153Used by:155
Symbol 155 MovieClipUses:151 14 154Used by:169
Symbol 156 BitmapUsed by:157
Symbol 157 GraphicUses:156Used by:158
Symbol 158 MovieClipUses:157Used by:159
Symbol 159 MovieClipUses:158 14Used by:169
Symbol 160 BitmapUsed by:161
Symbol 161 GraphicUses:160Used by:162
Symbol 162 MovieClipUses:161Used by:169
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClipUses:163Used by:168
Symbol 165 MovieClipUses:99Used by:168
Symbol 166 GraphicUsed by:167
Symbol 167 MovieClipUses:166Used by:168
Symbol 168 MovieClipUses:164 165 167Used by:169
Symbol 169 MovieClipUses:118 120 131 148 155 159 15 162 168 98Used by:172
Symbol 170 EditableTextUses:16Used by:172
Symbol 171 EditableTextUses:16Used by:172
Symbol 172 MovieClipUses:99 169 1 3 5 6 7 15 170 171Used by:Timeline
Symbol 173 GraphicUsed by:174
Symbol 174 MovieClipUses:173Used by:Timeline
Symbol 175 GraphicUsed by:205
Symbol 176 GraphicUsed by:177
Symbol 177 MovieClipUses:176Used by:204
Symbol 178 FontUsed by:179
Symbol 179 EditableTextUses:178Used by:180
Symbol 180 MovieClip [Newgrounds API Font]Uses:179Used by:204
Symbol 181 BitmapUsed by:182
Symbol 182 GraphicUses:181Used by:183
Symbol 183 MovieClipUses:182Used by:204
Symbol 184 SoundUsed by:204
Symbol 185 GraphicUsed by:186
Symbol 186 MovieClipUses:185Used by:204
Symbol 187 GraphicUsed by:204
Symbol 188 GraphicUsed by:189
Symbol 189 MovieClipUses:188Used by:204
Symbol 190 GraphicUsed by:204
Symbol 191 FontUsed by:192 195
Symbol 192 EditableTextUses:191Used by:204
Symbol 193 EditableTextUses:16Used by:194
Symbol 194 MovieClipUses:193Used by:204
Symbol 195 EditableTextUses:191Used by:196
Symbol 196 MovieClipUses:195Used by:204
Symbol 197 GraphicUsed by:198
Symbol 198 MovieClipUses:197Used by:204
Symbol 199 GraphicUsed by:200
Symbol 200 MovieClipUses:199Used by:204
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClipUses:201Used by:204
Symbol 203 SoundUsed by:204
Symbol 204 MovieClip [MedalPopup]Uses:177 180 25 183 184 186 187 189 190 24 192 194 196 85 198 200 202 203Used by:205
Symbol 205 MovieClipUses:175 204Used by:Timeline
Symbol 52 MovieClip [__Packages.com.newgrounds.APIConnection]
Symbol 47 MovieClip [__Packages.com.newgrounds.EventDispatcher]
Symbol 46 MovieClip [__Packages.com.newgrounds.Event]
Symbol 48 MovieClip [__Packages.com.newgrounds.APIEventDispatcher]
Symbol 51 MovieClip [__Packages.com.newgrounds.encoders.BaseN]
Symbol 56 MovieClip [__Packages.com.newgrounds.APICommand]
Symbol 68 MovieClip [__Packages.com.newgrounds.API]
Symbol 57 MovieClip [__Packages.com.newgrounds.Bridge]
Symbol 49 MovieClip [__Packages.com.newgrounds.APIEvent]
Symbol 65 MovieClip [__Packages.com.newgrounds.encoders.ImageScanner]
Symbol 66 MovieClip [__Packages.com.newgrounds.SaveFile]
Symbol 64 MovieClip [__Packages.com.newgrounds.SaveGroup]
Symbol 62 MovieClip [__Packages.com.newgrounds.SaveKey]
Symbol 63 MovieClip [__Packages.com.newgrounds.SaveRating]
Symbol 58 MovieClip [__Packages.com.newgrounds.BitmapLoader]
Symbol 67 MovieClip [__Packages.com.newgrounds.SaveQuery]
Symbol 59 MovieClip [__Packages.com.newgrounds.Medal]
Symbol 61 MovieClip [__Packages.com.newgrounds.ScoreBoard]
Symbol 50 MovieClip [__Packages.com.newgrounds.Logger]
Symbol 206 MovieClip [__Packages.mochi.as2.MochiAd]
Symbol 207 MovieClip [__Packages.mochi.as2.MochiEventDispatcher]
Symbol 208 MovieClip [__Packages.mochi.as2.MochiServices]
Symbol 209 MovieClip [__Packages.mochi.as2.MochiEvents]
Symbol 210 MovieClip [__Packages.mochi.as2.MochiCoins]
Symbol 211 MovieClip [__Packages.mochi.as2.MochiSocial]
Symbol 212 MovieClip [__Packages.mx.events.EventDispatcher]
Symbol 213 MovieClip [__Packages.Playtomic.LogRequest]
Symbol 214 MovieClip [__Packages.Playtomic.Log]
Symbol 215 MovieClip [__Packages.com.as2.GPSAPI]
Symbol 216 MovieClip [__Packages.com.api.as2.evnt.APIEvents]
Symbol 217 MovieClip [__Packages.com.api.as2.API]
Symbol 218 MovieClip [__Packages.com.api.as2.security.RC4]
Symbol 219 MovieClip [__Packages.mx.utils.Delegate]
Symbol 69 MovieClip [__Packages.com.newgrounds.components.FlashAdBase]
Symbol 41 MovieClip [__Packages.com.newgrounds.shims.APIShim]
Symbol 53 MovieClip [__Packages.com.newgrounds.crypto.MD5]
Symbol 54 MovieClip [__Packages.com.newgrounds.crypto.RC4]
Symbol 55 MovieClip [__Packages.com.newgrounds.encoders.json.JSON]
Symbol 60 MovieClip [__Packages.com.newgrounds.Score]

Instance Names

"loader"Frame 1Symbol 172 MovieClip
"container"Frame 1Symbol 174 MovieClip
"playgame"Symbol 19 MovieClip [loading_screen] Frame 2Symbol 17 EditableText
"download"Symbol 19 MovieClip [loading_screen] Frame 2Symbol 18 EditableText
"loadingBar"Symbol 40 MovieClip [Preloader] Frame 1Symbol 27 MovieClip
"playButton"Symbol 40 MovieClip [Preloader] Frame 10Symbol 39 MovieClip
"newgroundsButton"Symbol 97 MovieClip [FlashAd] Frame 1Symbol 84 Button
"adContainer"Symbol 97 MovieClip [FlashAd] Frame 1Symbol 85 MovieClip
"ad"Symbol 98 MovieClip [APIConnector] Frame 1Symbol 97 MovieClip [FlashAd]
"loader"Symbol 98 MovieClip [APIConnector] Frame 1Symbol 40 MovieClip [Preloader]
"b"Symbol 129 MovieClip Frame 1Symbol 128 MovieClip
"b"Symbol 130 MovieClip Frame 1Symbol 129 MovieClip
"b"Symbol 141 MovieClip Frame 1Symbol 140 MovieClip
"b"Symbol 142 MovieClip Frame 1Symbol 141 MovieClip
"flag"Symbol 145 MovieClip Frame 1Symbol 138 MovieClip
"flag1"Symbol 148 MovieClip Frame 1Symbol 145 MovieClip
"flag2"Symbol 148 MovieClip Frame 1Symbol 145 MovieClip
"flag3"Symbol 148 MovieClip Frame 1Symbol 145 MovieClip
"flag4"Symbol 148 MovieClip Frame 1Symbol 145 MovieClip
"flag5"Symbol 148 MovieClip Frame 1Symbol 145 MovieClip
"highlight"Symbol 148 MovieClip Frame 1Symbol 147 MovieClip
"adBox3"Symbol 168 MovieClip Frame 1Symbol 164 MovieClip
"adBox"Symbol 168 MovieClip Frame 1Symbol 165 MovieClip
"adBox1"Symbol 168 MovieClip Frame 1Symbol 167 MovieClip
"adBox"Symbol 169 MovieClip Frame 2Symbol 168 MovieClip
"preloader"Symbol 172 MovieClip Frame 1Symbol 169 MovieClip
"playgame"Symbol 172 MovieClip Frame 2Symbol 170 EditableText
"download"Symbol 172 MovieClip Frame 2Symbol 171 EditableText
"textField"Symbol 194 MovieClip Frame 1Symbol 193 EditableText
"medalPointsText"Symbol 204 MovieClip [MedalPopup] Frame 15Symbol 192 EditableText
"medalNameClip"Symbol 204 MovieClip [MedalPopup] Frame 15Symbol 194 MovieClip
"medalIcon"Symbol 204 MovieClip [MedalPopup] Frame 23Symbol 85 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 19 as "loading_screen"
ExportAssets (56)Timeline Frame 1Symbol 40 as "Preloader"
ExportAssets (56)Timeline Frame 1Symbol 42 as "DefaultSaveIcon"
ExportAssets (56)Timeline Frame 1Symbol 43 as "DefaultMedalIcon"
ExportAssets (56)Timeline Frame 1Symbol 45 as "Newgrounds API Classes"
ExportAssets (56)Timeline Frame 1Symbol 97 as "FlashAd"
ExportAssets (56)Timeline Frame 1Symbol 98 as "APIConnector"
ExportAssets (56)Timeline Frame 1Symbol 180 as "Newgrounds API Font"
ExportAssets (56)Timeline Frame 1Symbol 204 as "MedalPopup"
ExportAssets (56)Timeline Frame 1Symbol 52 as "__Packages.com.newgrounds.APIConnection"
ExportAssets (56)Timeline Frame 1Symbol 47 as "__Packages.com.newgrounds.EventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 46 as "__Packages.com.newgrounds.Event"
ExportAssets (56)Timeline Frame 1Symbol 48 as "__Packages.com.newgrounds.APIEventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 51 as "__Packages.com.newgrounds.encoders.BaseN"
ExportAssets (56)Timeline Frame 1Symbol 56 as "__Packages.com.newgrounds.APICommand"
ExportAssets (56)Timeline Frame 1Symbol 68 as "__Packages.com.newgrounds.API"
ExportAssets (56)Timeline Frame 1Symbol 57 as "__Packages.com.newgrounds.Bridge"
ExportAssets (56)Timeline Frame 1Symbol 49 as "__Packages.com.newgrounds.APIEvent"
ExportAssets (56)Timeline Frame 1Symbol 65 as "__Packages.com.newgrounds.encoders.ImageScanner"
ExportAssets (56)Timeline Frame 1Symbol 66 as "__Packages.com.newgrounds.SaveFile"
ExportAssets (56)Timeline Frame 1Symbol 64 as "__Packages.com.newgrounds.SaveGroup"
ExportAssets (56)Timeline Frame 1Symbol 62 as "__Packages.com.newgrounds.SaveKey"
ExportAssets (56)Timeline Frame 1Symbol 63 as "__Packages.com.newgrounds.SaveRating"
ExportAssets (56)Timeline Frame 1Symbol 58 as "__Packages.com.newgrounds.BitmapLoader"
ExportAssets (56)Timeline Frame 1Symbol 67 as "__Packages.com.newgrounds.SaveQuery"
ExportAssets (56)Timeline Frame 1Symbol 59 as "__Packages.com.newgrounds.Medal"
ExportAssets (56)Timeline Frame 1Symbol 61 as "__Packages.com.newgrounds.ScoreBoard"
ExportAssets (56)Timeline Frame 1Symbol 50 as "__Packages.com.newgrounds.Logger"
ExportAssets (56)Timeline Frame 1Symbol 206 as "__Packages.mochi.as2.MochiAd"
ExportAssets (56)Timeline Frame 1Symbol 207 as "__Packages.mochi.as2.MochiEventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 208 as "__Packages.mochi.as2.MochiServices"
ExportAssets (56)Timeline Frame 1Symbol 209 as "__Packages.mochi.as2.MochiEvents"
ExportAssets (56)Timeline Frame 1Symbol 210 as "__Packages.mochi.as2.MochiCoins"
ExportAssets (56)Timeline Frame 1Symbol 211 as "__Packages.mochi.as2.MochiSocial"
ExportAssets (56)Timeline Frame 1Symbol 212 as "__Packages.mx.events.EventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 213 as "__Packages.Playtomic.LogRequest"
ExportAssets (56)Timeline Frame 1Symbol 214 as "__Packages.Playtomic.Log"
ExportAssets (56)Timeline Frame 1Symbol 215 as "__Packages.com.as2.GPSAPI"
ExportAssets (56)Timeline Frame 1Symbol 216 as "__Packages.com.api.as2.evnt.APIEvents"
ExportAssets (56)Timeline Frame 1Symbol 217 as "__Packages.com.api.as2.API"
ExportAssets (56)Timeline Frame 1Symbol 218 as "__Packages.com.api.as2.security.RC4"
ExportAssets (56)Timeline Frame 1Symbol 219 as "__Packages.mx.utils.Delegate"
ExportAssets (56)Timeline Frame 1Symbol 69 as "__Packages.com.newgrounds.components.FlashAdBase"
ExportAssets (56)Timeline Frame 1Symbol 41 as "__Packages.com.newgrounds.shims.APIShim"
ExportAssets (56)Timeline Frame 1Symbol 53 as "__Packages.com.newgrounds.crypto.MD5"
ExportAssets (56)Timeline Frame 1Symbol 54 as "__Packages.com.newgrounds.crypto.RC4"
ExportAssets (56)Timeline Frame 1Symbol 55 as "__Packages.com.newgrounds.encoders.json.JSON"
ExportAssets (56)Timeline Frame 1Symbol 60 as "__Packages.com.newgrounds.Score"

Labels

"sitelock"Symbol 19 MovieClip [loading_screen] Frame 2
"_up"Symbol 39 MovieClip Frame 1
"_over"Symbol 39 MovieClip Frame 10
"_down"Symbol 39 MovieClip Frame 20
"loading"Symbol 40 MovieClip [Preloader] Frame 1
"loaded"Symbol 40 MovieClip [Preloader] Frame 10
"idle"Symbol 97 MovieClip [FlashAd] Frame 1
"loading"Symbol 97 MovieClip [FlashAd] Frame 10
"loaded"Symbol 97 MovieClip [FlashAd] Frame 20
"noBorder"Symbol 97 MovieClip [FlashAd] Frame 30
"adPreloader"Symbol 98 MovieClip [APIConnector] Frame 2
"ad"Symbol 98 MovieClip [APIConnector] Frame 12
"invisible"Symbol 98 MovieClip [APIConnector] Frame 22
"twotowersgames"Symbol 155 MovieClip Frame 1
"armorgames"Symbol 155 MovieClip Frame 3
"none"Symbol 169 MovieClip Frame 1
"cpmstar"Symbol 169 MovieClip Frame 2
"newgrounds"Symbol 169 MovieClip Frame 3
"mochi"Symbol 169 MovieClip Frame 4
"sitelock"Symbol 172 MovieClip Frame 2
"hidden"Symbol 204 MovieClip [MedalPopup] Frame 3
"medalUnlocked"Symbol 204 MovieClip [MedalPopup] Frame 10
"unlockComplete"Symbol 204 MovieClip [MedalPopup] Frame 84

Dynamic Text Variables

percentageSymbol 122 EditableText"0%"




https://swfchan.com/53/264467/info.shtml
Created: 18/5 -2026 17:01:30 Last modified: 18/5 -2026 17:01:30 Server time: 08/06 -2026 04:14:04