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

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/36069065?noj=FRM36069065-19DC" width="1" height="1"></div>

NurseryRhymesOfDeath.swf

This is the info page for
Flash #136090

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


Text
Nursery Rhymes

OF DEATH

Press 1, 2, 3, 4 or 5 during playback to skip through scenes and 0 to come back here

Select starting point:

Five little ducks

Incy Wincy Spider

Humpty Dumpty sat on a wall

Two little dicky birds

Scene 1:

Scene 2:

Scene 3:

Scene 4:

ActionScript [AS1/AS2]

Instance of Symbol 77 MovieClip [APIConnector] in Frame 1
//component parameters onClipEvent (construct) { apiId = "33230:UL6BXsS8"; encryptionKey = "KyJCwEoKzWWktIZLCegD57OAMFOZ0z22"; debugMode = "Simulate Logged-in User"; movieVersion = ""; connectorType = "Flash Ad + Preloader"; redirectOnNewVersion = true; redirectOnHostBlocked = true; adType = "Video"; }
Frame 2
stop();
Symbol 8 MovieClip Frame 1
stop();
Symbol 18 MovieClip Frame 1
stop();
Symbol 19 MovieClip [Preloader] Frame 1
function enterFrameHandler() { var _local2 = 0; _local2 = _root.getBytesLoaded() / _root.getBytesTotal(); if (loadingBar) { loadingBar.gotoAndStop(int(_local2 * (loadingBar._totalframes - 1)) + 1); } if ((_local2 >= 1) && (haltComplete != true)) { onEnterFrame = null; gotoAndStop ("loaded"); } } stop(); var autoPlay; var className; var haltComplete; onEnterFrame = enterFrameHandler;
Symbol 19 MovieClip [Preloader] Frame 10
function _onPlayClick() { _root.nextFrame(); _root.play(); _parent._onLoaded(); } if (playButton) { playButton.onRelease = _onPlayClick; playButton.stop(); } if (autoPlay) { _onPlayClick(null); }
Symbol 21 MovieClip [Newgrounds API Classes] Frame 1
#initclip 26 Object.registerClass("Newgrounds API Classes", com.newgrounds.shims.APIShim); #endinitclip
Symbol 76 MovieClip [FlashAd] Frame 1
#initclip 27 Object.registerClass("FlashAd", com.newgrounds.components.FlashAdBase); #endinitclip function initPlayButton() { if (this.playButton) { this.playButton.onRelease = onPlayClick; if (!this.showPlayButton) { this.playButton._visible = false; } } } function onPlayClick() { removeAd(); _visible = false; } stop();
Symbol 76 MovieClip [FlashAd] Frame 2
initPlayButton();
Symbol 76 MovieClip [FlashAd] Frame 10
initPlayButton();
Symbol 76 MovieClip [FlashAd] Frame 20
initPlayButton();
Symbol 77 MovieClip [APIConnector] Frame 1
function _onLoaded() { gotoAndStop ("invisible"); if (_redirect) { com.newgrounds.API.loadOfficialVersion(); return(undefined); } } 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; } if (loader) { loader.haltComplete = true; } _local2.addEventListener(com.newgrounds.APIEvent.API_CONNECTED, _onConnected); _local2.connect(_root, apiId, encryptionKey, movieVersion); } } function _onConnected(event) { if (loader) { loader.haltComplete = false; } 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 adType; var className; var _redirect; _x = int(_x); _y = int(_y); if (!debugMode) { debugMode = "Simulate Logged-in User"; } if (!connectorType) { connectorType = "Flash Ad + Preloader"; } if (!adType) { adType = "Video"; } if (ad) { ad.adType = adType; } switch (connectorType) { case "Flash Ad + Preloader" : gotoAndStop ("adPreloader"); break; case "Flash Ad Only" : gotoAndStop ("ad"); break; case "Invisible" : gotoAndStop ("invisible"); } _apiConnect();
Instance of Symbol 76 MovieClip [FlashAd] "ad" in Symbol 77 MovieClip [APIConnector] Frame 1
//component parameters onClipEvent (construct) { apiId = ""; showBorder = true; adType = "Video"; }
Instance of Symbol 19 MovieClip [Preloader] "loader" in Symbol 77 MovieClip [APIConnector] Frame 1
//component parameters onClipEvent (construct) { autoPlay = false; mainClass = ""; }
Symbol 80 MovieClip Frame 1
function camControl() { parentColor.setTransform(camColor.getTransform()); var _local4 = sX / this._width; var _local3 = sY / this._height; _parent._x = cX - (this._x * _local4); _parent._y = cY - (this._y * _local3); _parent._xscale = 100 * _local4; _parent._yscale = 100 * _local3; } function resetStage() { var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0}; parentColor.setTransform(_local2); _parent._xscale = 100; _parent._yscale = 100; _parent._x = 0; _parent._y = 0; } this._visible = false; var oldMode = Stage.scaleMode; Stage.scaleMode = "exactFit"; var cX = (Stage.width / 2); var cY = (Stage.height / 2); var sX = Stage.width; var sY = Stage.height; Stage.scaleMode = oldMode; var camColor = new Color(this); var parentColor = new Color(_parent); this.onEnterFrame = camControl; camControl(); this.onUnload = resetStage;
Symbol 85 Button
on (release) { getURL ("http://www.youtube.com/subscription_center?add_user=RogerToonTime", "_blank"); }
Symbol 30 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) { var _local2 = _hostURL.split("/"); if ((_local2[0] != "file:") && (_hostURL != "localhost")) { hostDomain = _local2.splice(0, 3).join("/"); } } 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 23 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 22 MovieClip [__Packages.com.newgrounds.Event] Frame 0
class com.newgrounds.Event { var _type; function Event (type) { _type = type; } function get type() { return(_type); } }
Symbol 24 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 27 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 33 MovieClip [__Packages.com.newgrounds.APICommand] Frame 0
class com.newgrounds.APICommand extends com.newgrounds.APIEventDispatcher { static var _throttleTimestamp, bridge; 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 ((getTimer() - _throttleTimestamp) >= THROTTLE_INTERVAL) { _throttleCount = 0; _throttleCount = 0; while (_commandQueue.length && (_throttleCount < THROTTLE_THRESHOLD)) { var _local1 = _commandQueue.shift(); _local1.command.send(_local1.connection); _throttleCount++; } } } 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++; _throttleTimestamp = getTimer(); 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) { com.newgrounds.Logger.logInternal("Received packet:", data); try { if ((!data) || (data == "")) { throw new Error(); } 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)))); if (bridge) { bridge.sendEvent(_local2.command_id, _local2); } } catch(e) { 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 = 10050; static var THROTTLE_TICK_INTERVAL = 1000; static var THROTTLE_THRESHOLD = 24; static var _throttleCount = 0; static var _commandQueue = []; static var _throttleTimer = setInterval(onThrottleTimer, THROTTLE_TICK_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 29 MovieClip [__Packages.com.newgrounds.Bridge] Frame 0
class com.newgrounds.Bridge extends com.newgrounds.EventDispatcher { var _widgetId, _inConnection, _outConnection, dispatchEvent; function Bridge (id) { super(); _widgetId = id; _inConnection = new LocalConnection(); _outConnection = new LocalConnection(); var me = this; _inConnection.receiveEvent = function () { me.receiveEvent.apply(me, arguments); }; _inConnection.allowDomain = (_inConnection.allowInsecureDomain = function (d) { return(((d == "www.newgrounds.com") || (d == "newgrounds.com")) || (d == "uploads.ungrounded.net")); }); _inConnection.connect("_rec_" + _widgetId); com.newgrounds.Logger.addEventListener(com.newgrounds.APIEvent.LOG, {target:this, func:onLogMessage}); } function get widgetId() { return(_widgetId); } function onLogMessage(event) { try { _outConnection.send(_widgetId, "sendEvent", "trace", String(event.__get__data())); } catch(error) { } } function sendEvent(command, parameters) { if (_outConnection) { parameters = {data:parameters}; try { _outConnection.send(_widgetId, "sendEvent", command, parameters); } catch(error) { } } } function receiveEvent(responseData) { var _local2; try { _local2 = com.newgrounds.encoders.json.JSON.decode(responseData); } catch(error) { } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.BRIDGE_EVENT_RECEIVED, _local2, ((_local2 == null) ? (com.newgrounds.APIEvent.ERROR_UNKNOWN) : null))); } function onStatus(event) { } }
Symbol 25 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 BRIDGE_EVENT_RECEIVED = "brdigeEventReceived"; 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 FILE_DELETED = "fileDeleted"; static var FILE_REQUESTED = "fileRequested"; static var VOTE_COMPLETE = "voteComplete"; static var USER_SIGNED_IN = "userSignedIn"; 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"; static var ERROR_WRONG_ENCRYPTION_KEY = "wrongEncryptionKey"; static var ERROR_SIGN_IN_FAILED = "signInFailed"; }
Symbol 44 MovieClip [__Packages.com.newgrounds.API] Frame 0
class com.newgrounds.API { static var _serverTime, _adFeedURL, _movieVersion, _bridge, _requestedSaveGroupId, _requestedSaveFileId, _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 serverTime() { return(_serverTime); } 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); } apiId = trimWhitespace(apiId); if (encryptionKey) { encryptionKey = trimWhitespace(encryptionKey); } 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 _local4; _local4 = apiId.indexOf(":"); if (_local4 != -1) { _connection.trackerId = int(apiId.substring(0, _local4)); } 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 (flashVars && (flashVars.NewgroundsAPI_SandboxID)) { _bridge = new com.newgrounds.Bridge(flashVars.NewgroundsAPI_SandboxID); com.newgrounds.APICommand.bridge = _bridge; } else { _bridge = new com.newgrounds.Bridge(com.newgrounds.crypto.MD5.hash(String(Math.random()))); com.newgrounds.APICommand.bridge = _bridge; } 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_SaveGroupID) { _requestedSaveGroupId = flashVars.NewgroundsAPI_SaveGroupID; } if (flashVars.NewgroundsAPI_SaveFileID) { _requestedSaveFileId = flashVars.NewgroundsAPI_SaveFileID; } } } 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, publisher_id:_connection.publisherId}); } 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; } _serverTime = new Date(int(_local1.time) * 1000); 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 _local4; var _local1; 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 _local18; if (hasUserSession) { _local18 = loadLocal("medals_unlocked_" + username); } else { _local18 = loadLocal("medals_unlocked"); } _local4 = 0; while (_local4 < _local10) { var _local5 = _local11.medals[_local4]; var _local15 = _local5.medal_unlocked; var _local17 = _local18 && (_local18[_local5.medal_id]); var _local14 = (hasUserSession ? (_local15) : (_local17)); if (debugMode != RELEASE_MODE) { _local14 = false; } var _local6 = new com.newgrounds.Medal(_connection, _local5.medal_id, _local5.medal_name, _local5.medal_description, Boolean(int(_local5.secret)), _local14, _local5.medal_value, _local5.medal_difficulty, _local5.medal_icon); _local6.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, onMedalUnlocked, false, 0, true); _local6.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, onMedalUnlockConfirmed, false, 0, true); _medals[_local6.__get__name()] = _local6; _medalsArray.push(_local6); com.newgrounds.Logger.logMessage(_local6); if ((hasUserSession && (_local17)) && (!_local15)) { com.newgrounds.Logger.logMessage(("Server missed the \"" + _local6.__get__name()) + "\" unlock. Resending..."); _local6.unlock(); } _local4++; } } com.newgrounds.Logger.logMessage(((_local10 + " medal") + ((_local10 != 1) ? "s" : "")) + " initialized."); _local10 = 0; if (_local11.score_boards) { _local10 = _local11.score_boards.length; _local4 = 0; while (_local4 < _local10) { var _local16 = _local11.score_boards[_local4]; var _local9 = new com.newgrounds.ScoreBoard(_connection, _local16.name, _local16.id); _scoreBoards[_local9.__get__name()] = _local9; _scoreBoardsArray.push(_local9); com.newgrounds.Logger.logMessage(_local9); _local4++; } } com.newgrounds.Logger.logMessage(((_local10 + " scoreboard") + ((_local10 != 1) ? "s" : "")) + " initialized."); _local10 = 0; if (_local11.save_groups) { _local10 = _local11.save_groups.length; _local4 = 0; while (_local4 < _local10) { var _local2 = _local11.save_groups[_local4]; var _local13 = []; if (_local2.keys) { _local1 = 0; while (_local1 < _local2.keys.length) { var _local7 = _local2.keys[_local1]; _local13.push(new com.newgrounds.SaveKey(_local7.name, _local7.id, _local7.type)); _local1++; } } 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); _local4++; } } 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}); if (_requestedSaveFileId && (_requestedSaveGroupId)) { addEventListener(com.newgrounds.APIEvent.FILE_LOADED, onRequestedFileLoaded); loadSaveFile(_requestedSaveFileId, false); } } 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 promptSignIn() { if (_connection.assertInitialized()) { getURL (PASSPORT_URL + _bridge.__get__widgetId(), "_blank"); _bridge.addEventListener(com.newgrounds.APIEvent.BRIDGE_EVENT_RECEIVED, onUserSignedIn, false, 0, true); } } static function onUserSignedIn(e) { _bridge.removeEventListener(com.newgrounds.APIEvent.BRIDGE_EVENT_RECEIVED, onUserSignedIn); var _local1 = e.__get__data(); if (e.__get__success()) { try { if (_local1.NewgroundsAPI_UserName) { _connection.username = _local1.NewgroundsAPI_UserName; } if (_local1.NewgroundsAPI_UserID) { _connection.userId = _local1.NewgroundsAPI_UserID; } if (_local1.NewgroundsAPI_PublisherID) { _connection.publisherId = _local1.NewgroundsAPI_PublisherID; } if (_local1.NewgroundsAPI_SessionID) { _connection.sessionId = _local1.NewgroundsAPI_SessionID; } _connection.sendSimpleCommand("preloadSettings", onMetadataLoaded, {publisher_id:_connection.publisherId, user_id:_connection.userId}); } catch(error) { } com.newgrounds.Logger.logMessage(("User " + _connection.username) + " signed in."); } dispatchEvent(com.newgrounds.APIEvent.USER_SIGNED_IN, null, (e.__get__success() ? null : (com.newgrounds.APIEvent.ERROR_SIGN_IN_FAILED))); } 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 clearLocalMedals() { for (var _local2 in _medals) { var _local1 = _medals[_local2]; _local1.setUnlocked(false); } if (!hasUserSession) { saveLocal("medals_unlocked", new Object()); } } 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.SCORE_POSTED, 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.SCORE_POSTED, 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) { var _local2; if (event.__get__success()) { _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()); dispatchEvent(com.newgrounds.APIEvent.FILE_LOADED, null, 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 = false; } 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 onRequestedFileLoaded(event) { removeEventListener(com.newgrounds.APIEvent.FILE_LOADED, onRequestedFileLoaded); if (event.__get__success()) { var _local1 = event.__get__data(); if (_local1) { dispatchEvent(com.newgrounds.APIEvent.FILE_REQUESTED, _local1); } } } static function addEventListener(eventType, listener, priority, useWeakReference) { if (priority == undefined) { priority = 0; } if (useWeakReference == undefined) { useWeakReference = true; } _dispatcher.addEventListener(eventType, listener, false, priority, useWeakReference); } static function removeEventListener(eventType, listener) { _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 trimWhitespace(string) { if (!string) { return(null); } var _local3 = 0; while (string.charAt(_local3) == " ") { _local3++; } var _local1 = string.length - 1; while ((string.charAt(_local1) == " ") && (_local1 >= 0)) { _local1--; } return(string.slice(_local3, _local1 + 1)); } static var VERSION = "3.2 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 PASSPORT_URL = "https://www.newgrounds.com/login/remote/"; 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 41 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 _local4 = {callbackFunction:callbackFunction, callbackObject:callbackObject, source:source, i:6, x:0, y:0, output:null}; var _local3 = source.substr(0, 3); var _local2 = source.substr(3, 3); while (_local3.charAt(0) == "0") { _local3 = _local3.substr(1); } while (_local2.charAt(0) == "0") { _local2 = _local2.substr(1); } var _local7 = int(_local3); var _local8 = int(_local2); _local4.output = new flash.display.BitmapData(_local7, _local8, _encodeAlpha); var _local6 = setInterval(this, "doDecode", WORK_INTERVAL, _local4); _local4.interval = _local6; } 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 42 MovieClip [__Packages.com.newgrounds.SaveFile] Frame 0
class com.newgrounds.SaveFile extends com.newgrounds.APIEventDispatcher { static var _currentFile; var _iconLoader, _group, _keys, _ratings, _numVotes, _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; _keys = {}; _ratings = {}; _numVotes = {}; } static function get currentFile() { return(_currentFile); } static function fromObject(group, fileData) { var _local3 = new com.newgrounds.SaveFile(group); _local3._name = fileData.filename; _local3._description = fileData.description; _local3._id = fileData.save_id; _local3._authorId = fileData.user_id; _local3._authorName = fileData.user_name; _local3._createdDate = fileData.created; _local3._modifiedDate = fileData.last_update; _local3._views = fileData.views; if (fileData.thumb && (fileData.thumb != "")) { _local3._iconLoader.__set__url(_imageFilePath + fileData.thumb); } _local3._dataURL = _saveFilePath + fileData.file; _local3._fileSize = fileData.file_size; _local3._approved = fileData.status != STATUS_UNAPPROVED; _local3._readOnly = false; _local3._public = (fileData.status != STATUS_PRIVATE) && (fileData.status != STATUS_UNAPPROVED); for (var _local8 in fileData.keys) { var _local6 = fileData.keys[_local8]; var _local4 = group.getKeyById(_local6.id); if (_local4) { _local3._keys[_local4.__get__name()] = _local4.validateValue(_local6.value); } } for (var _local9 in fileData.ratings) { var _local5 = fileData.ratings[_local9]; var _local2 = group.getRatingById(_local5.id); if (_local2) { _local3._ratings[_local2.__get__name()] = _local2.validateValue(_local5.score); _local3._numVotes[_local2.__get__name()] = int(_local5.votes); } } return(_local3); } 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 numVotes() { return(_numVotes); } 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 _local7; var _local6; var _local10 = 0; var _local8 = 0; if (source instanceof flash.display.BitmapData) { _local7 = source.width; _local6 = source.height; } else if (source instanceof MovieClip) { var _local2 = MovieClip(source).getBounds(source); _local7 = _local2.xMax - _local2.xMin; _local6 = _local2.yMax - _local2.yMin; _local10 = _local2.xMin; _local8 = _local2.yMin; } var _local4 = new flash.geom.Matrix(); var _local5; _local5 = Math.min(ICON_WIDTH / _local7, ICON_HEIGHT / _local6); _local4.translate(-_local10, -_local8); _local4.scale(_local5, _local5); _local4.translate((ICON_WIDTH - (_local7 * _local5)) / 2, (ICON_HEIGHT - (_local6 * _local5)) / 2); _local9.draw(source, _local4); _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 deleteFile() { if (!_group.__get__connection().__get__hasUserSession()) { com.newgrounds.Logger.logError("The user must be logged-in to delete a file."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_DELETED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN)); return(undefined); } if (!_id) { com.newgrounds.Logger.logError("The file does not exist."); dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_DELETED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN)); return(undefined); } var _local2 = new com.newgrounds.APICommand("deleteSaveFile"); _local2.__get__secureParameters().save_id = _id; _local2.addEventListener(com.newgrounds.APIEvent.COMMAND_COMPLETE, {target:this, func:onFileDeleted}); _group.__get__connection().sendCommand(_local2); } 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 + "&random=") + Math.random()); } 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); } com.newgrounds.Logger.logMessage("Vote complete!"); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, this, _local2)); } function onFileDeleted(event) { if (event.__get__success()) { _id = 0; } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_DELETED, this, event.__get__error())); } 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]; } for (_local2 in _numVotes) { _local3._numVotes[_local2] = _numVotes[_local2]; } _local3._name = _name; return(_local3); } static var ICON_WIDTH = 90; static var ICON_HEIGHT = 90; static var DEFAULT_ICON = new flash.display.BitmapData(ICON_WIDTH, ICON_HEIGHT, false, 0); 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); }
Symbol 40 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 38 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) && (int(value) != 0)); 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 39 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 34 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 43 MovieClip [__Packages.com.newgrounds.SaveQuery] Frame 0
class com.newgrounds.SaveQuery extends com.newgrounds.APIEventDispatcher { var _group, _connection, _files, _lookupKeys, _lookupRatings, _fileConditions, _keyConditions, _ratingConditions, _sortFields, dispatchEvent; function SaveQuery (group) { super(); _group = group; _connection = group.connection; reset(); } 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 = []; _sortFields = []; _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 _local4 = _group.getKey(field); if (_local4) { value = _local4.validateValue(value); _keyConditions.push({key_id:_local4.__get__id(), operator:operator, value:value}); return(undefined); } var _local3 = field.split("."); var _local6 = _group.getRating(_local3[0]); if (_local6) { if (_local3[1] != "votes") { value = _local6.validateValue(value); } _ratingConditions.push({rating_id:_local6.__get__id(), operator:operator, value:value, column:(_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 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; }
Symbol 35 MovieClip [__Packages.com.newgrounds.Medal] Frame 0
class com.newgrounds.Medal extends com.newgrounds.APIEventDispatcher { var _connection, _id, _name, _description, _secret, _unlocked, _value, _difficulty, _iconLoader, dispatchEvent; function Medal (connection, id, name, description, secret, unlocked, value, difficultyId, iconURL) { super(); _connection = connection; _id = id; _name = name; _description = description; _secret = secret; _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 description() { return(_description); } function get secret() { return(_secret); } 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 (_unlocked) { com.newgrounds.Logger.logWarning(("Medal \"" + _name) + "\" is already unlocked."); return(undefined); } com.newgrounds.Logger.logMessage(("Unlocking medal \"" + name) + "\"..."); _unlocked = true; if (_connection.__get__hasUserSession()) { _connection.sendSimpleCommand("unlockMedal", {target:this, func:onUnlockConfirmed}, null, {medal_id:id}); } dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.MEDAL_UNLOCKED, this)); } function setUnlocked(unlocked) { _unlocked = unlocked; } 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 37 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 26 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 45 MovieClip [__Packages.com.newgrounds.components.FlashAdBase] Frame 0
class com.newgrounds.components.FlashAdBase extends MovieClip { var gotoAndStop, _x, _y, stop, onUnload, _adListener, adContainer, newgroundsButton, _fullScreen, clear, _ad, _adFeedLoader, _width, _height, beginFill, moveTo, lineTo, endFill; function FlashAdBase () { super(); try { System.security.allowDomain("server.cpmstar.com"); System.security.allowInsecureDomain("server.cpmstar.com"); } catch(error) { } gotoAndStop("idle"); _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 (fullScreen) { drawFullScreenRect(); } 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 fullScreen() { return(_fullScreen); } function set fullScreen(v) { _fullScreen = v; if (v) { drawFullScreenRect(); } else { clear(); } //return(fullScreen); } 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) { if (adType != VIDEO_ADS) { if (adURL.indexOf("?") >= 0) { adURL = adURL + "&"; } else { adURL = adURL + "?"; } adURL = adURL + "blockoverlays=1"; } _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(); } function drawFullScreenRect() { _x = (Stage.width - _width) / 2; _y = (Stage.height - _height) / 2; beginFill(0); moveTo(-Stage.width, -Stage.height); lineTo(Stage.width, -Stage.height); lineTo(Stage.width, Stage.height); lineTo(-Stage.width, Stage.height); lineTo(-Stage.width, -Stage.height); endFill(); } var _showBorder = true; var adType = com.newgrounds.components.FlashAdBase.prototype.VIDEO_ADS; var VIDEO_ADS = "Video"; var SIMPLE_ADS = "Simple"; }
Symbol 20 MovieClip [__Packages.com.newgrounds.shims.APIShim] Frame 0
class com.newgrounds.shims.APIShim extends MovieClip { function APIShim () { super(); } }
Symbol 28 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 31 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 32 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 36 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); } }
Symbol 114 Button
on (release) { gotoAndPlay (3); }
Symbol 115 Button
on (release) { gotoAndPlay (1669); }
Symbol 116 Button
on (release) { gotoAndPlay (3498); }
Symbol 117 Button
on (release) { gotoAndPlay (4895); }
Symbol 203 Button
on (keyPress "1") { gotoAndPlay (3); } on (keyPress "2") { gotoAndPlay (1669); } on (keyPress "3") { gotoAndPlay (3498); } on (keyPress "4") { gotoAndPlay (4895); } on (keyPress "5") { gotoAndPlay (5799); } on (keyPress "0") { gotoAndStop (2); }
Symbol 336 MovieClip Frame 1
function camControl() { parentColor.setTransform(camColor.getTransform()); var _local4 = sX / this._width; var _local3 = sY / this._height; _parent._x = cX - (this._x * _local4); _parent._y = cY - (this._y * _local3); _parent._xscale = 100 * _local4; _parent._yscale = 100 * _local3; } function resetStage() { var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0}; parentColor.setTransform(_local2); _parent._xscale = 100; _parent._yscale = 100; _parent._x = 0; _parent._y = 0; } this._visible = false; var oldMode = Stage.scaleMode; Stage.scaleMode = "exactFit"; var cX = (Stage.width / 2); var cY = (Stage.height / 2); var sX = Stage.width; var sY = Stage.height; Stage.scaleMode = oldMode; var camColor = new Color(this); var parentColor = new Color(_parent); this.onEnterFrame = camControl; camControl(); this.onUnload = resetStage;
Symbol 551 MovieClip Frame 1
function camControl() { parentColor.setTransform(camColor.getTransform()); var _local4 = sX / this._width; var _local3 = sY / this._height; _parent._x = cX - (this._x * _local4); _parent._y = cY - (this._y * _local3); _parent._xscale = 100 * _local4; _parent._yscale = 100 * _local3; } function resetStage() { var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0}; parentColor.setTransform(_local2); _parent._xscale = 100; _parent._yscale = 100; _parent._x = 0; _parent._y = 0; } this._visible = false; var oldMode = Stage.scaleMode; Stage.scaleMode = "exactFit"; var cX = (Stage.width / 2); var cY = (Stage.height / 2); var sX = Stage.width; var sY = Stage.height; Stage.scaleMode = oldMode; var camColor = new Color(this); var parentColor = new Color(_parent); this.onEnterFrame = camControl; camControl(); this.onUnload = resetStage;
Symbol 693 MovieClip Frame 1
function camControl() { parentColor.setTransform(camColor.getTransform()); var _local4 = sX / this._width; var _local3 = sY / this._height; _parent._x = cX - (this._x * _local4); _parent._y = cY - (this._y * _local3); _parent._xscale = 100 * _local4; _parent._yscale = 100 * _local3; } function resetStage() { var _local2 = {ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100, ab:0}; parentColor.setTransform(_local2); _parent._xscale = 100; _parent._yscale = 100; _parent._x = 0; _parent._y = 0; } this._visible = false; var oldMode = Stage.scaleMode; Stage.scaleMode = "exactFit"; var cX = (Stage.width / 2); var cY = (Stage.height / 2); var sX = Stage.width; var sY = Stage.height; Stage.scaleMode = oldMode; var camColor = new Color(this); var parentColor = new Color(_parent); this.onEnterFrame = camControl; camControl(); this.onUnload = resetStage;
Symbol 812 Button
on (keyPress "1") { gotoAndPlay (3); } on (keyPress "2") { gotoAndPlay (1669); } on (keyPress "3") { gotoAndPlay (3498); } on (keyPress "4") { gotoAndPlay (4895); } on (keyPress "5") { gotoAndPlay (5799); }

Library Items

Symbol 1 GraphicUsed by:8
Symbol 2 GraphicUsed by:3
Symbol 3 MovieClipUses:2Used by:4
Symbol 4 MovieClipUses:3Used by:8
Symbol 5 GraphicUsed by:6 62 76
Symbol 6 MovieClipUses:5Used by:8 75 76
Symbol 7 GraphicUsed by:8
Symbol 8 MovieClipUses:1 4 6 7Used by:19
Symbol 9 GraphicUsed by:18
Symbol 10 GraphicUsed by:11
Symbol 11 MovieClipUses:10Used by:12
Symbol 12 MovieClipUses:11Used by:18
Symbol 13 GraphicUsed by:15
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClipUses:13 14Used by:18 75
Symbol 16 GraphicUsed by:18
Symbol 17 GraphicUsed by:18
Symbol 18 MovieClipUses:9 12 15 16 17Used by:19 76
Symbol 19 MovieClip [Preloader]Uses:8 18Used by:77
Symbol 21 MovieClip [Newgrounds API Classes]Used by:77
Symbol 46 GraphicUsed by:76
Symbol 47 GraphicUsed by:76
Symbol 48 GraphicUsed by:76
Symbol 49 GraphicUsed by:76
Symbol 50 BitmapUsed by:52
Symbol 51 BitmapUsed by:52
Symbol 52 GraphicUses:50 51Used by:63
Symbol 53 BitmapUsed by:54
Symbol 54 GraphicUses:53Used by:63
Symbol 55 BitmapUsed by:56
Symbol 56 GraphicUses:55Used by:61 63
Symbol 57 BitmapUsed by:58
Symbol 58 GraphicUses:57Used by:61
Symbol 59 BitmapUsed by:60
Symbol 60 GraphicUses:59Used by:61
Symbol 61 MovieClipUses:56 58 60Used by:63
Symbol 62 ButtonUses:5Used by:63
Symbol 63 ButtonUses:52 54 61 56 62Used by:76
Symbol 64 MovieClipUsed by:76
Symbol 65 GraphicUsed by:75
Symbol 66 GraphicUsed by:75
Symbol 67 GraphicUsed by:75
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClipUses:68Used by:75
Symbol 70 GraphicUsed by:74
Symbol 71 BitmapUsed by:72
Symbol 72 GraphicUses:71Used by:73
Symbol 73 MovieClipUses:72Used by:74
Symbol 74 MovieClipUses:70 73Used by:75
Symbol 75 MovieClipUses:65 6 66 67 69 74 15Used by:76
Symbol 76 MovieClip [FlashAd]Uses:46 47 48 49 63 6 64 18 75 5Used by:77
Symbol 77 MovieClip [APIConnector]Uses:21 76 19Used by:Timeline
Symbol 78 GraphicUsed by:Timeline
Symbol 79 GraphicUsed by:80 336 551 693
Symbol 80 MovieClipUses:79Used by:Timeline
Symbol 81 GraphicUsed by:Timeline
Symbol 82 BitmapUsed by:83 84
Symbol 83 GraphicUses:82Used by:85
Symbol 84 GraphicUses:82Used by:85
Symbol 85 ButtonUses:83 84Used by:Timeline
Symbol 86 FontUsed by:87
Symbol 87 TextUses:86Used by:Timeline
Symbol 88 FontUsed by:89
Symbol 89 TextUses:88Used by:Timeline
Symbol 30 MovieClip [__Packages.com.newgrounds.APIConnection]
Symbol 23 MovieClip [__Packages.com.newgrounds.EventDispatcher]
Symbol 22 MovieClip [__Packages.com.newgrounds.Event]
Symbol 24 MovieClip [__Packages.com.newgrounds.APIEventDispatcher]
Symbol 27 MovieClip [__Packages.com.newgrounds.encoders.BaseN]
Symbol 33 MovieClip [__Packages.com.newgrounds.APICommand]
Symbol 29 MovieClip [__Packages.com.newgrounds.Bridge]
Symbol 25 MovieClip [__Packages.com.newgrounds.APIEvent]
Symbol 44 MovieClip [__Packages.com.newgrounds.API]
Symbol 41 MovieClip [__Packages.com.newgrounds.encoders.ImageScanner]
Symbol 42 MovieClip [__Packages.com.newgrounds.SaveFile]
Symbol 40 MovieClip [__Packages.com.newgrounds.SaveGroup]
Symbol 38 MovieClip [__Packages.com.newgrounds.SaveKey]
Symbol 39 MovieClip [__Packages.com.newgrounds.SaveRating]
Symbol 34 MovieClip [__Packages.com.newgrounds.BitmapLoader]
Symbol 43 MovieClip [__Packages.com.newgrounds.SaveQuery]
Symbol 35 MovieClip [__Packages.com.newgrounds.Medal]
Symbol 37 MovieClip [__Packages.com.newgrounds.ScoreBoard]
Symbol 26 MovieClip [__Packages.com.newgrounds.Logger]
Symbol 45 MovieClip [__Packages.com.newgrounds.components.FlashAdBase]
Symbol 20 MovieClip [__Packages.com.newgrounds.shims.APIShim]
Symbol 28 MovieClip [__Packages.com.newgrounds.encoders.json.JSON]
Symbol 31 MovieClip [__Packages.com.newgrounds.crypto.MD5]
Symbol 32 MovieClip [__Packages.com.newgrounds.crypto.RC4]
Symbol 36 MovieClip [__Packages.com.newgrounds.Score]
Symbol 90 FontUsed by:91 92
Symbol 91 TextUses:90Used by:Timeline
Symbol 92 TextUses:90Used by:Timeline
Symbol 93 GraphicUsed by:Timeline
Symbol 94 BitmapUsed by:98
Symbol 95 BitmapUsed by:98
Symbol 96 BitmapUsed by:98
Symbol 97 BitmapUsed by:98
Symbol 98 GraphicUses:94 95 96 97Used by:Timeline
Symbol 99 GraphicUsed by:Timeline
Symbol 100 FontUsed by:101 102 104 106 107 108 109 110
Symbol 101 TextUses:100Used by:Timeline
Symbol 102 TextUses:100Used by:Timeline
Symbol 103 GraphicUsed by:Timeline
Symbol 104 TextUses:100Used by:Timeline
Symbol 105 GraphicUsed by:Timeline
Symbol 106 TextUses:100Used by:Timeline
Symbol 107 TextUses:100Used by:Timeline
Symbol 108 TextUses:100Used by:Timeline
Symbol 109 TextUses:100Used by:Timeline
Symbol 110 TextUses:100Used by:Timeline
Symbol 111 GraphicUsed by:114 115 116 117
Symbol 112 GraphicUsed by:114 115 116 117
Symbol 113 GraphicUsed by:114 115 116 117
Symbol 114 ButtonUses:111 112 113Used by:Timeline
Symbol 115 ButtonUses:111 112 113Used by:Timeline
Symbol 116 ButtonUses:111 112 113Used by:Timeline
Symbol 117 ButtonUses:111 112 113Used by:Timeline
Symbol 118 GraphicUsed by:Timeline
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClipUses:119Used by:Timeline
Symbol 121 GraphicUsed by:122
Symbol 122 MovieClipUses:121Used by:Timeline
Symbol 123 GraphicUsed by:124
Symbol 124 MovieClipUses:123Used by:Timeline
Symbol 125 GraphicUsed by:Timeline
Symbol 126 GraphicUsed by:Timeline
Symbol 127 GraphicUsed by:Timeline
Symbol 128 GraphicUsed by:Timeline
Symbol 129 GraphicUsed by:Timeline
Symbol 130 GraphicUsed by:131
Symbol 131 MovieClipUses:130Used by:Timeline
Symbol 132 GraphicUsed by:141
Symbol 133 GraphicUsed by:140
Symbol 134 GraphicUsed by:140
Symbol 135 GraphicUsed by:140
Symbol 136 GraphicUsed by:140
Symbol 137 GraphicUsed by:140
Symbol 138 GraphicUsed by:140
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:133 134 135 136 137 138 139Used by:141
Symbol 141 MovieClipUses:132 140Used by:Timeline
Symbol 142 GraphicUsed by:143
Symbol 143 MovieClipUses:142Used by:Timeline
Symbol 144 GraphicUsed by:Timeline
Symbol 145 GraphicUsed by:Timeline
Symbol 146 GraphicUsed by:Timeline
Symbol 147 GraphicUsed by:Timeline
Symbol 148 GraphicUsed by:149
Symbol 149 MovieClipUses:148Used by:Timeline
Symbol 150 GraphicUsed by:151
Symbol 151 MovieClipUses:150Used by:1022 1033  Timeline
Symbol 152 GraphicUsed by:153
Symbol 153 MovieClipUses:152Used by:1022 1033  Timeline
Symbol 154 GraphicUsed by:1022 1033  Timeline
Symbol 155 GraphicUsed by:161
Symbol 156 GraphicUsed by:161 174 181
Symbol 157 GraphicUsed by:161 174 181
Symbol 158 GraphicUsed by:161 174 181
Symbol 159 GraphicUsed by:161 174 181
Symbol 160 GraphicUsed by:161
Symbol 161 MovieClipUses:155 156 157 158 159 160Used by:1022 1033  Timeline
Symbol 162 GraphicUsed by:163
Symbol 163 MovieClipUses:162Used by:1022 1033  Timeline
Symbol 164 GraphicUsed by:1022 1033  Timeline
Symbol 165 GraphicUsed by:1022 1033  Timeline
Symbol 166 GraphicUsed by:1022 1033  Timeline
Symbol 167 GraphicUsed by:1022 1033  Timeline
Symbol 168 GraphicUsed by:1022 1033  Timeline
Symbol 169 GraphicUsed by:1022 1033  Timeline
Symbol 170 GraphicUsed by:174
Symbol 171 GraphicUsed by:174
Symbol 172 GraphicUsed by:174
Symbol 173 GraphicUsed by:174
Symbol 174 MovieClipUses:170 156 157 158 159 171 172 173Used by:1022 1033  Timeline
Symbol 175 GraphicUsed by:1022 1033  Timeline
Symbol 176 GraphicUsed by:1022 1033  Timeline
Symbol 177 GraphicUsed by:181
Symbol 178 GraphicUsed by:181
Symbol 179 GraphicUsed by:181
Symbol 180 GraphicUsed by:181
Symbol 181 MovieClipUses:177 156 157 158 159 178 179 180Used by:1022 1033  Timeline
Symbol 182 GraphicUsed by:1022 1033  Timeline
Symbol 183 GraphicUsed by:Timeline
Symbol 184 GraphicUsed by:189
Symbol 185 GraphicUsed by:189
Symbol 186 GraphicUsed by:189
Symbol 187 GraphicUsed by:189
Symbol 188 GraphicUsed by:189
Symbol 189 MovieClipUses:184 185 186 187 188Used by:Timeline
Symbol 190 GraphicUsed by:Timeline
Symbol 191 GraphicUsed by:Timeline
Symbol 192 GraphicUsed by:196  Timeline
Symbol 193 GraphicUsed by:196  Timeline
Symbol 194 GraphicUsed by:196  Timeline
Symbol 195 GraphicUsed by:196  Timeline
Symbol 196 MovieClipUses:192 193 194 195Used by:Timeline
Symbol 197 GraphicUsed by:Timeline
Symbol 198 GraphicUsed by:Timeline
Symbol 199 ShapeTweeningUsed by:Timeline
Symbol 200 GraphicUsed by:203 812
Symbol 201 GraphicUsed by:203 812
Symbol 202 GraphicUsed by:203 812
Symbol 203 ButtonUses:200 201 202Used by:Timeline
Symbol 204 GraphicUsed by:Timeline
Symbol 205 GraphicUsed by:Timeline
Symbol 206 GraphicUsed by:Timeline
Symbol 207 GraphicUsed by:Timeline
Symbol 208 GraphicUsed by:Timeline
Symbol 209 GraphicUsed by:Timeline
Symbol 210 GraphicUsed by:Timeline
Symbol 211 GraphicUsed by:Timeline
Symbol 212 GraphicUsed by:Timeline
Symbol 213 GraphicUsed by:214
Symbol 214 MovieClipUses:213Used by:Timeline
Symbol 215 GraphicUsed by:216
Symbol 216 MovieClipUses:215Used by:Timeline
Symbol 217 GraphicUsed by:218
Symbol 218 MovieClipUses:217Used by:Timeline
Symbol 219 GraphicUsed by:220
Symbol 220 MovieClipUses:219Used by:Timeline
Symbol 221 GraphicUsed by:222
Symbol 222 MovieClipUses:221Used by:Timeline
Symbol 223 GraphicUsed by:Timeline
Symbol 224 GraphicUsed by:Timeline
Symbol 225 GraphicUsed by:Timeline
Symbol 226 GraphicUsed by:Timeline
Symbol 227 GraphicUsed by:Timeline
Symbol 228 GraphicUsed by:Timeline
Symbol 229 GraphicUsed by:Timeline
Symbol 230 GraphicUsed by:Timeline
Symbol 231 GraphicUsed by:Timeline
Symbol 232 GraphicUsed by:Timeline
Symbol 233 GraphicUsed by:Timeline
Symbol 234 GraphicUsed by:Timeline
Symbol 235 GraphicUsed by:Timeline
Symbol 236 GraphicUsed by:Timeline
Symbol 237 GraphicUsed by:Timeline
Symbol 238 GraphicUsed by:Timeline
Symbol 239 GraphicUsed by:Timeline
Symbol 240 GraphicUsed by:Timeline
Symbol 241 GraphicUsed by:Timeline
Symbol 242 GraphicUsed by:Timeline
Symbol 243 GraphicUsed by:Timeline
Symbol 244 GraphicUsed by:Timeline
Symbol 245 GraphicUsed by:Timeline
Symbol 246 ShapeTweeningUsed by:Timeline
Symbol 247 GraphicUsed by:Timeline
Symbol 248 GraphicUsed by:Timeline
Symbol 249 GraphicUsed by:Timeline
Symbol 250 GraphicUsed by:Timeline
Symbol 251 GraphicUsed by:Timeline
Symbol 252 GraphicUsed by:Timeline
Symbol 253 GraphicUsed by:Timeline
Symbol 254 GraphicUsed by:Timeline
Symbol 255 ShapeTweeningUsed by:Timeline
Symbol 256 GraphicUsed by:Timeline
Symbol 257 GraphicUsed by:Timeline
Symbol 258 GraphicUsed by:Timeline
Symbol 259 ShapeTweeningUsed by:Timeline
Symbol 260 GraphicUsed by:Timeline
Symbol 261 GraphicUsed by:Timeline
Symbol 262 GraphicUsed by:Timeline
Symbol 263 GraphicUsed by:Timeline
Symbol 264 GraphicUsed by:Timeline
Symbol 265 GraphicUsed by:Timeline
Symbol 266 GraphicUsed by:Timeline
Symbol 267 ShapeTweeningUsed by:Timeline
Symbol 268 GraphicUsed by:Timeline
Symbol 269 GraphicUsed by:Timeline
Symbol 270 GraphicUsed by:Timeline
Symbol 271 GraphicUsed by:Timeline
Symbol 272 GraphicUsed by:Timeline
Symbol 273 ShapeTweeningUsed by:Timeline
Symbol 274 GraphicUsed by:Timeline
Symbol 275 GraphicUsed by:Timeline
Symbol 276 GraphicUsed by:Timeline
Symbol 277 GraphicUsed by:Timeline
Symbol 278 GraphicUsed by:Timeline
Symbol 279 GraphicUsed by:Timeline
Symbol 280 GraphicUsed by:Timeline
Symbol 281 GraphicUsed by:Timeline
Symbol 282 GraphicUsed by:Timeline
Symbol 283 GraphicUsed by:Timeline
Symbol 284 GraphicUsed by:Timeline
Symbol 285 GraphicUsed by:Timeline
Symbol 286 ShapeTweeningUsed by:Timeline
Symbol 287 ShapeTweeningUsed by:Timeline
Symbol 288 GraphicUsed by:Timeline
Symbol 289 GraphicUsed by:Timeline
Symbol 290 ShapeTweeningUsed by:Timeline
Symbol 291 GraphicUsed by:Timeline
Symbol 292 GraphicUsed by:Timeline
Symbol 293 GraphicUsed by:Timeline
Symbol 294 GraphicUsed by:Timeline
Symbol 295 GraphicUsed by:302  Timeline
Symbol 296 GraphicUsed by:302  Timeline
Symbol 297 GraphicUsed by:298
Symbol 298 MovieClipUses:297Used by:302  Timeline
Symbol 299 GraphicUsed by:302  Timeline
Symbol 300 GraphicUsed by:302  Timeline
Symbol 301 GraphicUsed by:302  Timeline
Symbol 302 MovieClipUses:295 296 298 299 300 301Used by:Timeline
Symbol 303 GraphicUsed by:Timeline
Symbol 304 ShapeTweeningUsed by:Timeline
Symbol 305 GraphicUsed by:Timeline
Symbol 306 GraphicUsed by:307
Symbol 307 MovieClipUses:306Used by:335 493 501  Timeline
Symbol 308 GraphicUsed by:326
Symbol 309 GraphicUsed by:326
Symbol 310 GraphicUsed by:326
Symbol 311 GraphicUsed by:326
Symbol 312 GraphicUsed by:326 359
Symbol 313 GraphicUsed by:326
Symbol 314 GraphicUsed by:326
Symbol 315 GraphicUsed by:326
Symbol 316 GraphicUsed by:326
Symbol 317 GraphicUsed by:326
Symbol 318 GraphicUsed by:326
Symbol 319 GraphicUsed by:326
Symbol 320 GraphicUsed by:326
Symbol 321 GraphicUsed by:326
Symbol 322 GraphicUsed by:326
Symbol 323 GraphicUsed by:326
Symbol 324 GraphicUsed by:326
Symbol 325 GraphicUsed by:326
Symbol 326 MovieClipUses:308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325Used by:335  Timeline
Symbol 327 GraphicUsed by:328
Symbol 328 MovieClipUses:327Used by:335 493 501 1051  Timeline
Symbol 329 GraphicUsed by:330
Symbol 330 MovieClipUses:329Used by:335 493 501  Timeline
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClipUses:331Used by:335 493 501  Timeline
Symbol 333 GraphicUsed by:334
Symbol 334 MovieClipUses:333Used by:335 493 501  Timeline
Symbol 335 MovieClipUses:307 326 328 330 332 334Used by:Timeline
Symbol 336 MovieClipUses:79Used by:Timeline
Symbol 337 ShapeTweeningUsed by:Timeline
Symbol 338 GraphicUsed by:Timeline
Symbol 339 GraphicUsed by:Timeline
Symbol 340 GraphicUsed by:Timeline
Symbol 341 GraphicUsed by:Timeline
Symbol 342 GraphicUsed by:Timeline
Symbol 343 GraphicUsed by:359
Symbol 344 GraphicUsed by:359
Symbol 345 GraphicUsed by:359
Symbol 346 GraphicUsed by:359
Symbol 347 GraphicUsed by:359
Symbol 348 GraphicUsed by:359
Symbol 349 GraphicUsed by:359
Symbol 350 GraphicUsed by:359
Symbol 351 GraphicUsed by:359
Symbol 352 GraphicUsed by:359
Symbol 353 GraphicUsed by:359
Symbol 354 GraphicUsed by:359
Symbol 355 GraphicUsed by:359
Symbol 356 GraphicUsed by:359
Symbol 357 GraphicUsed by:359
Symbol 358 GraphicUsed by:359
Symbol 359 MovieClipUses:343 344 345 312 346 347 348 349 350 351 352 353 354 355 356 357 358Used by:Timeline
Symbol 360 GraphicUsed by:Timeline
Symbol 361 GraphicUsed by:362
Symbol 362 MovieClipUses:361Used by:Timeline
Symbol 363 GraphicUsed by:364
Symbol 364 MovieClipUses:363Used by:Timeline
Symbol 365 GraphicUsed by:366
Symbol 366 MovieClipUses:365Used by:Timeline
Symbol 367 GraphicUsed by:Timeline
Symbol 368 GraphicUsed by:369
Symbol 369 MovieClipUses:368Used by:Timeline
Symbol 370 GraphicUsed by:371
Symbol 371 MovieClipUses:370Used by:Timeline
Symbol 372 GraphicUsed by:373
Symbol 373 MovieClipUses:372Used by:Timeline
Symbol 374 GraphicUsed by:375
Symbol 375 MovieClipUses:374Used by:Timeline
Symbol 376 GraphicUsed by:Timeline
Symbol 377 GraphicUsed by:Timeline
Symbol 378 GraphicUsed by:Timeline
Symbol 379 GraphicUsed by:Timeline
Symbol 380 GraphicUsed by:Timeline
Symbol 381 GraphicUsed by:Timeline
Symbol 382 GraphicUsed by:Timeline
Symbol 383 GraphicUsed by:Timeline
Symbol 384 GraphicUsed by:Timeline
Symbol 385 GraphicUsed by:Timeline
Symbol 386 GraphicUsed by:Timeline
Symbol 387 GraphicUsed by:Timeline
Symbol 388 GraphicUsed by:Timeline
Symbol 389 GraphicUsed by:Timeline
Symbol 390 GraphicUsed by:Timeline
Symbol 391 GraphicUsed by:Timeline
Symbol 392 GraphicUsed by:Timeline
Symbol 393 GraphicUsed by:Timeline
Symbol 394 GraphicUsed by:Timeline
Symbol 395 GraphicUsed by:Timeline
Symbol 396 GraphicUsed by:Timeline
Symbol 397 GraphicUsed by:Timeline
Symbol 398 GraphicUsed by:Timeline
Symbol 399 GraphicUsed by:Timeline
Symbol 400 GraphicUsed by:Timeline
Symbol 401 GraphicUsed by:Timeline
Symbol 402 GraphicUsed by:Timeline
Symbol 403 GraphicUsed by:Timeline
Symbol 404 GraphicUsed by:Timeline
Symbol 405 GraphicUsed by:Timeline
Symbol 406 ShapeTweeningUsed by:Timeline
Symbol 407 GraphicUsed by:Timeline
Symbol 408 ShapeTweeningUsed by:Timeline
Symbol 409 GraphicUsed by:410
Symbol 410 MovieClipUses:409Used by:Timeline
Symbol 411 GraphicUsed by:412
Symbol 412 MovieClipUses:411Used by:Timeline
Symbol 413 ShapeTweeningUsed by:Timeline
Symbol 414 GraphicUsed by:Timeline
Symbol 415 GraphicUsed by:Timeline
Symbol 416 GraphicUsed by:Timeline
Symbol 417 GraphicUsed by:418
Symbol 418 MovieClipUses:417Used by:419
Symbol 419 MovieClipUses:418Used by:Timeline
Symbol 420 GraphicUsed by:Timeline
Symbol 421 ShapeTweeningUsed by:Timeline
Symbol 422 GraphicUsed by:Timeline
Symbol 423 GraphicUsed by:Timeline
Symbol 424 ShapeTweeningUsed by:Timeline
Symbol 425 ShapeTweeningUsed by:Timeline
Symbol 426 GraphicUsed by:Timeline
Symbol 427 GraphicUsed by:428
Symbol 428 MovieClipUses:427Used by:Timeline
Symbol 429 GraphicUsed by:Timeline
Symbol 430 GraphicUsed by:Timeline
Symbol 431 GraphicUsed by:Timeline
Symbol 432 GraphicUsed by:Timeline
Symbol 433 GraphicUsed by:Timeline
Symbol 434 GraphicUsed by:Timeline
Symbol 435 GraphicUsed by:Timeline
Symbol 436 GraphicUsed by:Timeline
Symbol 437 GraphicUsed by:Timeline
Symbol 438 ShapeTweeningUsed by:Timeline
Symbol 439 GraphicUsed by:Timeline
Symbol 440 ShapeTweeningUsed by:Timeline
Symbol 441 ShapeTweeningUsed by:Timeline
Symbol 442 GraphicUsed by:444
Symbol 443 GraphicUsed by:444
Symbol 444 MovieClipUses:442 443Used by:447
Symbol 445 GraphicUsed by:447
Symbol 446 GraphicUsed by:447
Symbol 447 MovieClipUses:444 445 446Used by:Timeline
Symbol 448 ShapeTweeningUsed by:Timeline
Symbol 449 GraphicUsed by:Timeline
Symbol 450 ShapeTweeningUsed by:Timeline
Symbol 451 GraphicUsed by:Timeline
Symbol 452 GraphicUsed by:Timeline
Symbol 453 GraphicUsed by:Timeline
Symbol 454 ShapeTweeningUsed by:Timeline
Symbol 455 GraphicUsed by:Timeline
Symbol 456 GraphicUsed by:Timeline
Symbol 457 GraphicUsed by:Timeline
Symbol 458 GraphicUsed by:Timeline
Symbol 459 GraphicUsed by:Timeline
Symbol 460 GraphicUsed by:Timeline
Symbol 461 GraphicUsed by:462
Symbol 462 MovieClipUses:461Used by:Timeline
Symbol 463 ShapeTweeningUsed by:Timeline
Symbol 464 GraphicUsed by:Timeline
Symbol 465 GraphicUsed by:466
Symbol 466 MovieClipUses:465Used by:Timeline
Symbol 467 GraphicUsed by:Timeline
Symbol 468 GraphicUsed by:Timeline
Symbol 469 GraphicUsed by:Timeline
Symbol 470 GraphicUsed by:Timeline
Symbol 471 ShapeTweeningUsed by:Timeline
Symbol 472 GraphicUsed by:Timeline
Symbol 473 GraphicUsed by:Timeline
Symbol 474 ShapeTweeningUsed by:Timeline
Symbol 475 GraphicUsed by:Timeline
Symbol 476 ShapeTweeningUsed by:Timeline
Symbol 477 GraphicUsed by:Timeline
Symbol 478 GraphicUsed by:Timeline
Symbol 479 GraphicUsed by:Timeline
Symbol 480 GraphicUsed by:Timeline
Symbol 481 GraphicUsed by:Timeline
Symbol 482 ShapeTweeningUsed by:Timeline
Symbol 483 GraphicUsed by:Timeline
Symbol 484 GraphicUsed by:492 501 1051  Timeline
Symbol 485 GraphicUsed by:492
Symbol 486 GraphicUsed by:492
Symbol 487 GraphicUsed by:492
Symbol 488 GraphicUsed by:492 501 1051  Timeline
Symbol 489 GraphicUsed by:492
Symbol 490 GraphicUsed by:492
Symbol 491 GraphicUsed by:492 501 1051  Timeline
Symbol 492 MovieClipUses:484 485 486 487 488 489 490 491Used by:493
Symbol 493 MovieClipUses:307 492 328 330 332 334Used by:Timeline
Symbol 494 ShapeTweeningUsed by:Timeline
Symbol 495 ShapeTweeningUsed by:Timeline
Symbol 496 GraphicUsed by:Timeline
Symbol 497 GraphicUsed by:Timeline
Symbol 498 GraphicUsed by:Timeline
Symbol 499 GraphicUsed by:Timeline
Symbol 500 GraphicUsed by:Timeline
Symbol 501 MovieClipUses:307 334 332 330 328 484 488 491Used by:Timeline
Symbol 502 GraphicUsed by:Timeline
Symbol 503 ShapeTweeningUsed by:Timeline
Symbol 504 GraphicUsed by:Timeline
Symbol 505 ShapeTweeningUsed by:Timeline
Symbol 506 GraphicUsed by:Timeline
Symbol 507 GraphicUsed by:Timeline
Symbol 508 GraphicUsed by:Timeline
Symbol 509 GraphicUsed by:Timeline
Symbol 510 GraphicUsed by:Timeline
Symbol 511 GraphicUsed by:517
Symbol 512 GraphicUsed by:516
Symbol 513 GraphicUsed by:516
Symbol 514 GraphicUsed by:516
Symbol 515 GraphicUsed by:516
Symbol 516 MovieClipUses:512 513 514 515Used by:517
Symbol 517 MovieClipUses:511 516Used by:Timeline
Symbol 518 GraphicUsed by:Timeline
Symbol 519 GraphicUsed by:Timeline
Symbol 520 GraphicUsed by:524
Symbol 521 GraphicUsed by:524
Symbol 522 GraphicUsed by:524
Symbol 523 GraphicUsed by:524
Symbol 524 MovieClipUses:520 521 522 523Used by:Timeline
Symbol 525 GraphicUsed by:Timeline
Symbol 526 GraphicUsed by:Timeline
Symbol 527 GraphicUsed by:Timeline
Symbol 528 GraphicUsed by:533
Symbol 529 GraphicUsed by:533
Symbol 530 GraphicUsed by:533
Symbol 531 GraphicUsed by:533
Symbol 532 GraphicUsed by:533
Symbol 533 MovieClipUses:528 529 530 531 532Used by:Timeline
Symbol 534 GraphicUsed by:973  Timeline
Symbol 535 GraphicUsed by:973  Timeline
Symbol 536 GraphicUsed by:973  Timeline
Symbol 537 GraphicUsed by:973  Timeline
Symbol 538 GraphicUsed by:973  Timeline
Symbol 539 GraphicUsed by:612  Timeline
Symbol 540 GraphicUsed by:973  Timeline
Symbol 541 GraphicUsed by:973  Timeline
Symbol 542 GraphicUsed by:973  Timeline
Symbol 543 GraphicUsed by:Timeline
Symbol 544 GraphicUsed by:612  Timeline
Symbol 545 GraphicUsed by:Timeline
Symbol 546 GraphicUsed by:Timeline
Symbol 547 GraphicUsed by:Timeline
Symbol 548 GraphicUsed by:Timeline
Symbol 549 GraphicUsed by:Timeline
Symbol 550 GraphicUsed by:Timeline
Symbol 551 MovieClipUses:79Used by:Timeline
Symbol 552 ShapeTweeningUsed by:Timeline
Symbol 553 GraphicUsed by:612  Timeline
Symbol 554 GraphicUsed by:612  Timeline
Symbol 555 GraphicUsed by:612 973  Timeline
Symbol 556 GraphicUsed by:612  Timeline
Symbol 557 GraphicUsed by:612  Timeline
Symbol 558 GraphicUsed by:973  Timeline
Symbol 559 GraphicUsed by:Timeline
Symbol 560 GraphicUsed by:Timeline
Symbol 561 GraphicUsed by:Timeline
Symbol 562 GraphicUsed by:Timeline
Symbol 563 GraphicUsed by:Timeline
Symbol 564 GraphicUsed by:Timeline
Symbol 565 GraphicUsed by:Timeline
Symbol 566 GraphicUsed by:Timeline
Symbol 567 GraphicUsed by:Timeline
Symbol 568 GraphicUsed by:Timeline
Symbol 569 GraphicUsed by:Timeline
Symbol 570 GraphicUsed by:Timeline
Symbol 571 GraphicUsed by:Timeline
Symbol 572 GraphicUsed by:Timeline
Symbol 573 GraphicUsed by:Timeline
Symbol 574 GraphicUsed by:Timeline
Symbol 575 GraphicUsed by:Timeline
Symbol 576 GraphicUsed by:Timeline
Symbol 577 GraphicUsed by:Timeline
Symbol 578 GraphicUsed by:Timeline
Symbol 579 GraphicUsed by:Timeline
Symbol 580 GraphicUsed by:Timeline
Symbol 581 GraphicUsed by:Timeline
Symbol 582 GraphicUsed by:Timeline
Symbol 583 GraphicUsed by:Timeline
Symbol 584 GraphicUsed by:Timeline
Symbol 585 GraphicUsed by:Timeline
Symbol 586 GraphicUsed by:587
Symbol 587 MovieClipUses:586Used by:Timeline
Symbol 588 GraphicUsed by:Timeline
Symbol 589 GraphicUsed by:Timeline
Symbol 590 GraphicUsed by:Timeline
Symbol 591 GraphicUsed by:592
Symbol 592 MovieClipUses:591Used by:Timeline
Symbol 593 GraphicUsed by:594
Symbol 594 MovieClipUses:593Used by:Timeline
Symbol 595 GraphicUsed by:596
Symbol 596 MovieClipUses:595Used by:Timeline
Symbol 597 GraphicUsed by:Timeline
Symbol 598 GraphicUsed by:Timeline
Symbol 599 GraphicUsed by:Timeline
Symbol 600 GraphicUsed by:Timeline
Symbol 601 GraphicUsed by:Timeline
Symbol 602 GraphicUsed by:Timeline
Symbol 603 GraphicUsed by:Timeline
Symbol 604 GraphicUsed by:Timeline
Symbol 605 GraphicUsed by:Timeline
Symbol 606 GraphicUsed by:Timeline
Symbol 607 GraphicUsed by:Timeline
Symbol 608 GraphicUsed by:973  Timeline
Symbol 609 GraphicUsed by:Timeline
Symbol 610 GraphicUsed by:612
Symbol 611 GraphicUsed by:612
Symbol 612 MovieClipUses:610 544 611 553 554 555 556 557 539Used by:Timeline
Symbol 613 GraphicUsed by:973  Timeline
Symbol 614 GraphicUsed by:Timeline
Symbol 615 GraphicUsed by:973  Timeline
Symbol 616 GraphicUsed by:973  Timeline
Symbol 617 GraphicUsed by:973  Timeline
Symbol 618 GraphicUsed by:973  Timeline
Symbol 619 GraphicUsed by:973  Timeline
Symbol 620 GraphicUsed by:Timeline
Symbol 621 GraphicUsed by:Timeline
Symbol 622 ShapeTweeningUsed by:Timeline
Symbol 623 GraphicUsed by:Timeline
Symbol 624 GraphicUsed by:Timeline
Symbol 625 GraphicUsed by:Timeline
Symbol 626 GraphicUsed by:Timeline
Symbol 627 GraphicUsed by:Timeline
Symbol 628 GraphicUsed by:Timeline
Symbol 629 GraphicUsed by:Timeline
Symbol 630 GraphicUsed by:Timeline
Symbol 631 GraphicUsed by:Timeline
Symbol 632 GraphicUsed by:Timeline
Symbol 633 GraphicUsed by:Timeline
Symbol 634 GraphicUsed by:Timeline
Symbol 635 GraphicUsed by:Timeline
Symbol 636 GraphicUsed by:Timeline
Symbol 637 GraphicUsed by:Timeline
Symbol 638 GraphicUsed by:Timeline
Symbol 639 GraphicUsed by:Timeline
Symbol 640 GraphicUsed by:Timeline
Symbol 641 ShapeTweeningUsed by:Timeline
Symbol 642 GraphicUsed by:Timeline
Symbol 643 GraphicUsed by:Timeline
Symbol 644 GraphicUsed by:Timeline
Symbol 645 GraphicUsed by:Timeline
Symbol 646 GraphicUsed by:Timeline
Symbol 647 GraphicUsed by:Timeline
Symbol 648 GraphicUsed by:Timeline
Symbol 649 GraphicUsed by:Timeline
Symbol 650 GraphicUsed by:Timeline
Symbol 651 ShapeTweeningUsed by:Timeline
Symbol 652 GraphicUsed by:Timeline
Symbol 653 GraphicUsed by:Timeline
Symbol 654 GraphicUsed by:Timeline
Symbol 655 GraphicUsed by:Timeline
Symbol 656 ShapeTweeningUsed by:Timeline
Symbol 657 GraphicUsed by:Timeline
Symbol 658 GraphicUsed by:Timeline
Symbol 659 GraphicUsed by:660
Symbol 660 MovieClipUses:659Used by:1049  Timeline
Symbol 661 GraphicUsed by:Timeline
Symbol 662 GraphicUsed by:Timeline
Symbol 663 GraphicUsed by:682
Symbol 664 GraphicUsed by:682  Timeline
Symbol 665 GraphicUsed by:682 691 1049  Timeline
Symbol 666 GraphicUsed by:682 691
Symbol 667 GraphicUsed by:682 691
Symbol 668 GraphicUsed by:682
Symbol 669 GraphicUsed by:682 691
Symbol 670 GraphicUsed by:682
Symbol 671 GraphicUsed by:682
Symbol 672 GraphicUsed by:682
Symbol 673 GraphicUsed by:682
Symbol 674 GraphicUsed by:682
Symbol 675 GraphicUsed by:682
Symbol 676 GraphicUsed by:682
Symbol 677 GraphicUsed by:682
Symbol 678 GraphicUsed by:682
Symbol 679 GraphicUsed by:682
Symbol 680 GraphicUsed by:682
Symbol 681 GraphicUsed by:682
Symbol 682 MovieClipUses:663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681Used by:Timeline
Symbol 683 GraphicUsed by:Timeline
Symbol 684 GraphicUsed by:Timeline
Symbol 685 GraphicUsed by:Timeline
Symbol 686 GraphicUsed by:Timeline
Symbol 687 GraphicUsed by:Timeline
Symbol 688 GraphicUsed by:691 1049
Symbol 689 GraphicUsed by:691
Symbol 690 GraphicUsed by:691
Symbol 691 MovieClipUses:688 665 666 667 689 669 690Used by:Timeline
Symbol 692 GraphicUsed by:Timeline
Symbol 693 MovieClipUses:79Used by:Timeline
Symbol 694 GraphicUsed by:Timeline
Symbol 695 GraphicUsed by:Timeline
Symbol 696 ShapeTweeningUsed by:Timeline
Symbol 697 GraphicUsed by:Timeline
Symbol 698 GraphicUsed by:Timeline
Symbol 699 GraphicUsed by:Timeline
Symbol 700 GraphicUsed by:Timeline
Symbol 701 GraphicUsed by:Timeline
Symbol 702 GraphicUsed by:Timeline
Symbol 703 GraphicUsed by:709
Symbol 704 GraphicUsed by:709
Symbol 705 GraphicUsed by:709
Symbol 706 GraphicUsed by:709
Symbol 707 GraphicUsed by:709
Symbol 708 GraphicUsed by:709
Symbol 709 MovieClipUses:703 704 705 706 707 708Used by:Timeline
Symbol 710 GraphicUsed by:Timeline
Symbol 711 GraphicUsed by:717
Symbol 712 GraphicUsed by:717
Symbol 713 GraphicUsed by:717
Symbol 714 GraphicUsed by:717
Symbol 715 GraphicUsed by:717
Symbol 716 GraphicUsed by:717
Symbol 717 MovieClipUses:711 712 713 714 715 716Used by:Timeline
Symbol 718 GraphicUsed by:719
Symbol 719 MovieClipUses:718Used by:Timeline
Symbol 720 GraphicUsed by:Timeline
Symbol 721 GraphicUsed by:Timeline
Symbol 722 GraphicUsed by:Timeline
Symbol 723 GraphicUsed by:Timeline
Symbol 724 GraphicUsed by:Timeline
Symbol 725 GraphicUsed by:Timeline
Symbol 726 GraphicUsed by:Timeline
Symbol 727 GraphicUsed by:Timeline
Symbol 728 GraphicUsed by:Timeline
Symbol 729 GraphicUsed by:Timeline
Symbol 730 GraphicUsed by:Timeline
Symbol 731 GraphicUsed by:Timeline
Symbol 732 GraphicUsed by:Timeline
Symbol 733 GraphicUsed by:Timeline
Symbol 734 GraphicUsed by:Timeline
Symbol 735 GraphicUsed by:Timeline
Symbol 736 GraphicUsed by:Timeline
Symbol 737 GraphicUsed by:Timeline
Symbol 738 GraphicUsed by:Timeline
Symbol 739 GraphicUsed by:Timeline
Symbol 740 GraphicUsed by:Timeline
Symbol 741 GraphicUsed by:Timeline
Symbol 742 GraphicUsed by:Timeline
Symbol 743 GraphicUsed by:Timeline
Symbol 744 GraphicUsed by:Timeline
Symbol 745 ShapeTweeningUsed by:Timeline
Symbol 746 GraphicUsed by:Timeline
Symbol 747 GraphicUsed by:748
Symbol 748 MovieClipUses:747Used by:Timeline
Symbol 749 GraphicUsed by:750
Symbol 750 MovieClipUses:749Used by:Timeline
Symbol 751 GraphicUsed by:752
Symbol 752 MovieClipUses:751Used by:Timeline
Symbol 753 GraphicUsed by:Timeline
Symbol 754 ShapeTweeningUsed by:Timeline
Symbol 755 ShapeTweeningUsed by:Timeline
Symbol 756 GraphicUsed by:Timeline
Symbol 757 GraphicUsed by:Timeline
Symbol 758 ShapeTweeningUsed by:Timeline
Symbol 759 GraphicUsed by:Timeline
Symbol 760 ShapeTweeningUsed by:Timeline
Symbol 761 ShapeTweeningUsed by:Timeline
Symbol 762 GraphicUsed by:Timeline
Symbol 763 GraphicUsed by:Timeline
Symbol 764 GraphicUsed by:Timeline
Symbol 765 ShapeTweeningUsed by:Timeline
Symbol 766 ShapeTweeningUsed by:Timeline
Symbol 767 ShapeTweeningUsed by:Timeline
Symbol 768 GraphicUsed by:Timeline
Symbol 769 GraphicUsed by:770
Symbol 770 MovieClipUses:769Used by:Timeline
Symbol 771 GraphicUsed by:Timeline
Symbol 772 GraphicUsed by:Timeline
Symbol 773 GraphicUsed by:Timeline
Symbol 774 GraphicUsed by:Timeline
Symbol 775 GraphicUsed by:Timeline
Symbol 776 GraphicUsed by:Timeline
Symbol 777 GraphicUsed by:Timeline
Symbol 778 GraphicUsed by:Timeline
Symbol 779 GraphicUsed by:Timeline
Symbol 780 GraphicUsed by:Timeline
Symbol 781 GraphicUsed by:Timeline
Symbol 782 GraphicUsed by:Timeline
Symbol 783 GraphicUsed by:Timeline
Symbol 784 GraphicUsed by:Timeline
Symbol 785 GraphicUsed by:Timeline
Symbol 786 GraphicUsed by:Timeline
Symbol 787 GraphicUsed by:Timeline
Symbol 788 GraphicUsed by:Timeline
Symbol 789 GraphicUsed by:Timeline
Symbol 790 GraphicUsed by:Timeline
Symbol 791 GraphicUsed by:Timeline
Symbol 792 GraphicUsed by:Timeline
Symbol 793 GraphicUsed by:Timeline
Symbol 794 GraphicUsed by:Timeline
Symbol 795 GraphicUsed by:Timeline
Symbol 796 GraphicUsed by:Timeline
Symbol 797 GraphicUsed by:Timeline
Symbol 798 GraphicUsed by:Timeline
Symbol 799 GraphicUsed by:Timeline
Symbol 800 GraphicUsed by:Timeline
Symbol 801 GraphicUsed by:Timeline
Symbol 802 GraphicUsed by:Timeline
Symbol 803 GraphicUsed by:Timeline
Symbol 804 GraphicUsed by:Timeline
Symbol 805 GraphicUsed by:Timeline
Symbol 806 ShapeTweeningUsed by:Timeline
Symbol 807 GraphicUsed by:Timeline
Symbol 808 GraphicUsed by:Timeline
Symbol 809 GraphicUsed by:Timeline
Symbol 810 GraphicUsed by:Timeline
Symbol 811 GraphicUsed by:Timeline
Symbol 812 ButtonUses:200 201 202Used by:Timeline
Symbol 813 GraphicUsed by:Timeline
Symbol 814 GraphicUsed by:Timeline
Symbol 815 GraphicUsed by:Timeline
Symbol 816 GraphicUsed by:Timeline
Symbol 817 GraphicUsed by:Timeline
Symbol 818 GraphicUsed by:Timeline
Symbol 819 GraphicUsed by:Timeline
Symbol 820 GraphicUsed by:Timeline
Symbol 821 GraphicUsed by:Timeline
Symbol 822 GraphicUsed by:Timeline
Symbol 823 GraphicUsed by:Timeline
Symbol 824 GraphicUsed by:Timeline
Symbol 825 GraphicUsed by:Timeline
Symbol 826 GraphicUsed by:Timeline
Symbol 827 GraphicUsed by:Timeline
Symbol 828 GraphicUsed by:Timeline
Symbol 829 GraphicUsed by:Timeline
Symbol 830 GraphicUsed by:Timeline
Symbol 831 GraphicUsed by:Timeline
Symbol 832 GraphicUsed by:Timeline
Symbol 833 GraphicUsed by:Timeline
Symbol 834 GraphicUsed by:Timeline
Symbol 835 GraphicUsed by:Timeline
Symbol 836 GraphicUsed by:Timeline
Symbol 837 GraphicUsed by:Timeline
Symbol 838 GraphicUsed by:Timeline
Symbol 839 GraphicUsed by:Timeline
Symbol 840 GraphicUsed by:Timeline
Symbol 841 GraphicUsed by:Timeline
Symbol 842 GraphicUsed by:Timeline
Symbol 843 GraphicUsed by:Timeline
Symbol 844 GraphicUsed by:845
Symbol 845 MovieClipUses:844Used by:Timeline
Symbol 846 GraphicUsed by:Timeline
Symbol 847 GraphicUsed by:Timeline
Symbol 848 GraphicUsed by:Timeline
Symbol 849 GraphicUsed by:Timeline
Symbol 850 GraphicUsed by:Timeline
Symbol 851 GraphicUsed by:Timeline
Symbol 852 GraphicUsed by:Timeline
Symbol 853 GraphicUsed by:Timeline
Symbol 854 GraphicUsed by:Timeline
Symbol 855 GraphicUsed by:Timeline
Symbol 856 GraphicUsed by:Timeline
Symbol 857 GraphicUsed by:Timeline
Symbol 858 GraphicUsed by:Timeline
Symbol 859 GraphicUsed by:Timeline
Symbol 860 GraphicUsed by:Timeline
Symbol 861 GraphicUsed by:Timeline
Symbol 862 GraphicUsed by:Timeline
Symbol 863 GraphicUsed by:Timeline
Symbol 864 GraphicUsed by:Timeline
Symbol 865 GraphicUsed by:Timeline
Symbol 866 GraphicUsed by:Timeline
Symbol 867 GraphicUsed by:Timeline
Symbol 868 GraphicUsed by:Timeline
Symbol 869 GraphicUsed by:Timeline
Symbol 870 GraphicUsed by:Timeline
Symbol 871 GraphicUsed by:Timeline
Symbol 872 GraphicUsed by:974  Timeline
Symbol 873 GraphicUsed by:Timeline
Symbol 874 GraphicUsed by:974  Timeline
Symbol 875 GraphicUsed by:Timeline
Symbol 876 GraphicUsed by:974  Timeline
Symbol 877 GraphicUsed by:Timeline
Symbol 878 GraphicUsed by:Timeline
Symbol 879 GraphicUsed by:Timeline
Symbol 880 GraphicUsed by:Timeline
Symbol 881 GraphicUsed by:Timeline
Symbol 882 GraphicUsed by:Timeline
Symbol 883 GraphicUsed by:Timeline
Symbol 884 GraphicUsed by:Timeline
Symbol 885 GraphicUsed by:Timeline
Symbol 886 GraphicUsed by:Timeline
Symbol 887 GraphicUsed by:Timeline
Symbol 888 GraphicUsed by:Timeline
Symbol 889 GraphicUsed by:Timeline
Symbol 890 GraphicUsed by:Timeline
Symbol 891 GraphicUsed by:Timeline
Symbol 892 GraphicUsed by:Timeline
Symbol 893 GraphicUsed by:Timeline
Symbol 894 GraphicUsed by:Timeline
Symbol 895 GraphicUsed by:Timeline
Symbol 896 GraphicUsed by:Timeline
Symbol 897 GraphicUsed by:Timeline
Symbol 898 GraphicUsed by:Timeline
Symbol 899 GraphicUsed by:Timeline
Symbol 900 GraphicUsed by:Timeline
Symbol 901 GraphicUsed by:Timeline
Symbol 902 GraphicUsed by:Timeline
Symbol 903 GraphicUsed by:Timeline
Symbol 904 GraphicUsed by:Timeline
Symbol 905 GraphicUsed by:Timeline
Symbol 906 GraphicUsed by:Timeline
Symbol 907 GraphicUsed by:Timeline
Symbol 908 GraphicUsed by:Timeline
Symbol 909 GraphicUsed by:Timeline
Symbol 910 GraphicUsed by:Timeline
Symbol 911 GraphicUsed by:Timeline
Symbol 912 GraphicUsed by:Timeline
Symbol 913 GraphicUsed by:Timeline
Symbol 914 GraphicUsed by:Timeline
Symbol 915 GraphicUsed by:Timeline
Symbol 916 GraphicUsed by:Timeline
Symbol 917 GraphicUsed by:Timeline
Symbol 918 GraphicUsed by:973 1023 1025  Timeline
Symbol 919 GraphicUsed by:973  Timeline
Symbol 920 GraphicUsed by:973  Timeline
Symbol 921 GraphicUsed by:973 1023 1025  Timeline
Symbol 922 GraphicUsed by:973  Timeline
Symbol 923 GraphicUsed by:973  Timeline
Symbol 924 GraphicUsed by:973  Timeline
Symbol 925 GraphicUsed by:973  Timeline
Symbol 926 GraphicUsed by:973 1023 1025  Timeline
Symbol 927 GraphicUsed by:973 1023 1025  Timeline
Symbol 928 GraphicUsed by:973 1023 1025  Timeline
Symbol 929 BitmapUsed by:930 934 937 940
Symbol 930 GraphicUses:929Used by:973 1023 1025  Timeline
Symbol 931 GraphicUsed by:932
Symbol 932 MovieClipUses:931Used by:973  Timeline
Symbol 933 GraphicUsed by:973  Timeline
Symbol 934 GraphicUses:929Used by:973 1023 1025  Timeline
Symbol 935 GraphicUsed by:973  Timeline
Symbol 936 GraphicUsed by:973  Timeline
Symbol 937 GraphicUses:929Used by:973 1023 1025  Timeline
Symbol 938 GraphicUsed by:973  Timeline
Symbol 939 GraphicUsed by:973  Timeline
Symbol 940 GraphicUses:929Used by:973 1023 1025  Timeline
Symbol 941 GraphicUsed by:973 1025  Timeline
Symbol 942 GraphicUsed by:973 1025  Timeline
Symbol 943 GraphicUsed by:973 1025  Timeline
Symbol 944 GraphicUsed by:973 1025  Timeline
Symbol 945 GraphicUsed by:973 1025  Timeline
Symbol 946 GraphicUsed by:973 1025  Timeline
Symbol 947 GraphicUsed by:973 1025  Timeline
Symbol 948 GraphicUsed by:973 1025  Timeline
Symbol 949 GraphicUsed by:973 1025  Timeline
Symbol 950 GraphicUsed by:973 1025  Timeline
Symbol 951 GraphicUsed by:973 1025  Timeline
Symbol 952 GraphicUsed by:973 1025  Timeline
Symbol 953 GraphicUsed by:973 1025  Timeline
Symbol 954 GraphicUsed by:973 1025  Timeline
Symbol 955 GraphicUsed by:973 1025  Timeline
Symbol 956 GraphicUsed by:973 1025  Timeline
Symbol 957 GraphicUsed by:973 1025  Timeline
Symbol 958 ShapeTweeningUsed by:973 1025  Timeline
Symbol 959 GraphicUsed by:973 1025  Timeline
Symbol 960 GraphicUsed by:973 1025  Timeline
Symbol 961 GraphicUsed by:973 1025  Timeline
Symbol 962 ShapeTweeningUsed by:973 1025  Timeline
Symbol 963 GraphicUsed by:973 1025  Timeline
Symbol 964 ShapeTweeningUsed by:973  Timeline
Symbol 965 GraphicUsed by:973  Timeline
Symbol 966 GraphicUsed by:973  Timeline
Symbol 967 GraphicUsed by:973  Timeline
Symbol 968 GraphicUsed by:973  Timeline
Symbol 969 GraphicUsed by:973  Timeline
Symbol 970 GraphicUsed by:973  Timeline
Symbol 971 GraphicUsed by:973  Timeline
Symbol 972 GraphicUsed by:973  Timeline
Symbol 973 MovieClipUses:918 919 920 921 922 923 924 925 926 927 928 930 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 534 608 536 537 538 555 540 541 542 967 968 969 970 971 972 613 535 558 615 616 617 618 619Used by:Timeline
Symbol 974 MovieClipUses:872 874 876Used by:Timeline
Symbol 975 GraphicUsed by:Timeline
Symbol 976 GraphicUsed by:980
Symbol 977 GraphicUsed by:978
Symbol 978 MovieClipUses:977Used by:980
Symbol 979 GraphicUsed by:980
Symbol 980 MovieClipUses:976 978 979Used by:Timeline
Symbol 981 GraphicUsed by:1022
Symbol 982 GraphicUsed by:995
Symbol 983 GraphicUsed by:990
Symbol 984 GraphicUsed by:990
Symbol 985 GraphicUsed by:990
Symbol 986 GraphicUsed by:990
Symbol 987 GraphicUsed by:990
Symbol 988 GraphicUsed by:990
Symbol 989 GraphicUsed by:990
Symbol 990 MovieClipUses:983 984 985 986 987 988 989Used by:995
Symbol 991 GraphicUsed by:995
Symbol 992 GraphicUsed by:995
Symbol 993 GraphicUsed by:995
Symbol 994 GraphicUsed by:995
Symbol 995 MovieClipUses:982 990 991 992 993 994Used by:1022
Symbol 996 GraphicUsed by:1022
Symbol 997 GraphicUsed by:1002
Symbol 998 GraphicUsed by:1002
Symbol 999 GraphicUsed by:1002
Symbol 1000 GraphicUsed by:1002
Symbol 1001 GraphicUsed by:1002
Symbol 1002 MovieClipUses:997 998 999 1000 1001Used by:1022
Symbol 1003 GraphicUsed by:1022
Symbol 1004 GraphicUsed by:1022 1033
Symbol 1005 GraphicUsed by:1022 1033
Symbol 1006 GraphicUsed by:1022 1033
Symbol 1007 GraphicUsed by:1022 1033
Symbol 1008 GraphicUsed by:1022
Symbol 1009 GraphicUsed by:1022
Symbol 1010 GraphicUsed by:1022
Symbol 1011 GraphicUsed by:1022
Symbol 1012 GraphicUsed by:1022
Symbol 1013 GraphicUsed by:1022
Symbol 1014 GraphicUsed by:1022
Symbol 1015 GraphicUsed by:1022
Symbol 1016 GraphicUsed by:1022
Symbol 1017 GraphicUsed by:1021
Symbol 1018 GraphicUsed by:1021
Symbol 1019 GraphicUsed by:1021
Symbol 1020 GraphicUsed by:1021
Symbol 1021 MovieClipUses:1017 1018 1019 1020Used by:1022
Symbol 1022 MovieClipUses:981 995 996 1002 1003 1004 1005 151 153 154 161 163 164 165 166 167 168 169 174 175 176 181 182 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1021Used by:Timeline
Symbol 1023 MovieClipUses:918 926 927 921 928 937 940 930 934Used by:Timeline
Symbol 1024 GraphicUsed by:Timeline
Symbol 1025 MovieClipUses:918 926 927 921 928 930 934 937 941 940 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963Used by:Timeline
Symbol 1026 GraphicUsed by:1033
Symbol 1027 GraphicUsed by:1033
Symbol 1028 GraphicUsed by:1033
Symbol 1029 GraphicUsed by:1033
Symbol 1030 GraphicUsed by:1033
Symbol 1031 GraphicUsed by:1033
Symbol 1032 GraphicUsed by:1033
Symbol 1033 MovieClipUses:1026 1027 1004 1005 151 153 154 161 163 164 165 166 167 168 169 174 175 176 181 182 1006 1007 1028 1029 1030 1031 1032Used by:Timeline
Symbol 1034 GraphicUsed by:Timeline
Symbol 1035 GraphicUsed by:Timeline
Symbol 1036 GraphicUsed by:Timeline
Symbol 1037 GraphicUsed by:Timeline
Symbol 1038 GraphicUsed by:Timeline
Symbol 1039 GraphicUsed by:Timeline
Symbol 1040 GraphicUsed by:Timeline
Symbol 1041 GraphicUsed by:Timeline
Symbol 1042 GraphicUsed by:1049
Symbol 1043 GraphicUsed by:1049
Symbol 1044 GraphicUsed by:1049
Symbol 1045 GraphicUsed by:1049
Symbol 1046 GraphicUsed by:1049
Symbol 1047 GraphicUsed by:1049
Symbol 1048 GraphicUsed by:1049
Symbol 1049 MovieClipUses:1042 1043 660 1044 1045 1046 688 665 1047 1048Used by:Timeline
Symbol 1050 GraphicUsed by:1051
Symbol 1051 MovieClipUses:1050 328 484 488 491Used by:Timeline
Symbol 1052 GraphicUsed by:1058
Symbol 1053 GraphicUsed by:1058
Symbol 1054 GraphicUsed by:1058
Symbol 1055 GraphicUsed by:1058
Symbol 1056 GraphicUsed by:1058
Symbol 1057 GraphicUsed by:1058
Symbol 1058 MovieClipUses:1052 1053 1054 1055 1056 1057Used by:Timeline
Symbol 1059 ShapeTweeningUsed by:Timeline
Symbol 1060 GraphicUsed by:Timeline
Symbol 1061 GraphicUsed by:Timeline
Symbol 1062 GraphicUsed by:Timeline
Symbol 1063 ShapeTweeningUsed by:Timeline
Symbol 1064 GraphicUsed by:Timeline
Streaming Sound 1Used by:Timeline

Instance Names

"loadingBar"Symbol 19 MovieClip [Preloader] Frame 1Symbol 8 MovieClip
"playButton"Symbol 19 MovieClip [Preloader] Frame 10Symbol 18 MovieClip
"newgroundsButton"Symbol 76 MovieClip [FlashAd] Frame 1Symbol 63 Button
"adContainer"Symbol 76 MovieClip [FlashAd] Frame 1Symbol 64 MovieClip
"playButton"Symbol 76 MovieClip [FlashAd] Frame 2Symbol 18 MovieClip
"ad"Symbol 77 MovieClip [APIConnector] Frame 1Symbol 76 MovieClip [FlashAd]
"loader"Symbol 77 MovieClip [APIConnector] Frame 1Symbol 19 MovieClip [Preloader]

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 19 as "Preloader"
ExportAssets (56)Timeline Frame 1Symbol 21 as "Newgrounds API Classes"
ExportAssets (56)Timeline Frame 1Symbol 76 as "FlashAd"
ExportAssets (56)Timeline Frame 1Symbol 77 as "APIConnector"
ExportAssets (56)Timeline Frame 1Symbol 30 as "__Packages.com.newgrounds.APIConnection"
ExportAssets (56)Timeline Frame 1Symbol 23 as "__Packages.com.newgrounds.EventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 22 as "__Packages.com.newgrounds.Event"
ExportAssets (56)Timeline Frame 1Symbol 24 as "__Packages.com.newgrounds.APIEventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 27 as "__Packages.com.newgrounds.encoders.BaseN"
ExportAssets (56)Timeline Frame 1Symbol 33 as "__Packages.com.newgrounds.APICommand"
ExportAssets (56)Timeline Frame 1Symbol 29 as "__Packages.com.newgrounds.Bridge"
ExportAssets (56)Timeline Frame 1Symbol 25 as "__Packages.com.newgrounds.APIEvent"
ExportAssets (56)Timeline Frame 1Symbol 44 as "__Packages.com.newgrounds.API"
ExportAssets (56)Timeline Frame 1Symbol 41 as "__Packages.com.newgrounds.encoders.ImageScanner"
ExportAssets (56)Timeline Frame 1Symbol 42 as "__Packages.com.newgrounds.SaveFile"
ExportAssets (56)Timeline Frame 1Symbol 40 as "__Packages.com.newgrounds.SaveGroup"
ExportAssets (56)Timeline Frame 1Symbol 38 as "__Packages.com.newgrounds.SaveKey"
ExportAssets (56)Timeline Frame 1Symbol 39 as "__Packages.com.newgrounds.SaveRating"
ExportAssets (56)Timeline Frame 1Symbol 34 as "__Packages.com.newgrounds.BitmapLoader"
ExportAssets (56)Timeline Frame 1Symbol 43 as "__Packages.com.newgrounds.SaveQuery"
ExportAssets (56)Timeline Frame 1Symbol 35 as "__Packages.com.newgrounds.Medal"
ExportAssets (56)Timeline Frame 1Symbol 37 as "__Packages.com.newgrounds.ScoreBoard"
ExportAssets (56)Timeline Frame 1Symbol 26 as "__Packages.com.newgrounds.Logger"
ExportAssets (56)Timeline Frame 1Symbol 45 as "__Packages.com.newgrounds.components.FlashAdBase"
ExportAssets (56)Timeline Frame 1Symbol 20 as "__Packages.com.newgrounds.shims.APIShim"
ExportAssets (56)Timeline Frame 1Symbol 28 as "__Packages.com.newgrounds.encoders.json.JSON"
ExportAssets (56)Timeline Frame 1Symbol 31 as "__Packages.com.newgrounds.crypto.MD5"
ExportAssets (56)Timeline Frame 1Symbol 32 as "__Packages.com.newgrounds.crypto.RC4"
ExportAssets (56)Timeline Frame 1Symbol 36 as "__Packages.com.newgrounds.Score"

Labels

"_up"Symbol 18 MovieClip Frame 1
"_over"Symbol 18 MovieClip Frame 10
"_down"Symbol 18 MovieClip Frame 20
"loading"Symbol 19 MovieClip [Preloader] Frame 1
"loaded"Symbol 19 MovieClip [Preloader] Frame 10
"idle"Symbol 76 MovieClip [FlashAd] Frame 2
"loading"Symbol 76 MovieClip [FlashAd] Frame 10
"loaded"Symbol 76 MovieClip [FlashAd] Frame 20
"noBorder"Symbol 76 MovieClip [FlashAd] Frame 30
"adPreloader"Symbol 77 MovieClip [APIConnector] Frame 2
"ad"Symbol 77 MovieClip [APIConnector] Frame 12
"invisible"Symbol 77 MovieClip [APIConnector] Frame 22




http://swfchan.com/28/136090/info.shtml
Created: 9/2 -2019 07:31:30 Last modified: 9/2 -2019 07:31:30 Server time: 19/04 -2024 04:25:38