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

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

Donkey Kong 2 - classic donkey kong arcade platformer game.swf

This is the info page for
Flash #136365

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


ActionScript [AS1/AS2]
Combined Code
// unknown tag 88 length 58 movieClip 8 pauseScreen { } movieClip 10 { } movieClip 11 lvl3Heart { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } frame 4 { stop(); } frame 5 { stop(); } frame 6 { stop(); } } movieClip 14 { } movieClip 15 { } movieClip 17 { } movieClip 19 { frame 1 { stop(); } } movieClip 22 { } movieClip 23 { } movieClip 26 { } movieClip 31 { frame 1 { stop(); } } movieClip 32 Preloader { frame 1 { function enterFrameHandler() { var v2 = 0; v2 = _root.getBytesLoaded() / _root.getBytesTotal(); if (loadingBar) { loadingBar.gotoAndStop(Number(v2 * (loadingBar.totalFrames - 1)) + 1); } if (v2 >= 1) { onEnterFrame = null; gotoAndStop('loaded'); } } stop(); var autoPlay; var className; onEnterFrame = enterFrameHandler; } frame 10 { function _onPlayClick() { _root.nextFrame(); _root.play(); _parent._onLoaded(); } if (playButton) { playButton.onRelease = _onPlayClick; playButton.stop(); } if (autoPlay) { _onPlayClick(null); } } } movieClip 37 Newgrounds API Classes { #initclip Object.registerClass('Newgrounds API Classes', com.newgrounds.shims.APIShim); #endinitclip } movieClip 77 { } movieClip 80 { } movieClip 85 { } movieClip 89 { } movieClip 90 { } movieClip 91 { } movieClip 92 FlashAd { #initclip Object.registerClass('FlashAd', com.newgrounds.components.FlashAdBase); #endinitclip frame 1 { stop(); } } movieClip 93 APIConnector { frame 1 { function _onLoaded() { gotoAndStop('invisible'); if (_redirect) { com.newgrounds.API.loadOfficialVersion(); } } function _apiConnect() { var v2 = com.newgrounds.API; if (v2 && !v2.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: v2.debugMode = v2.RELEASE_MODE; goto 1268; case 'Simulate Logged-in User': //Invalid switch } v2.debugMode = v2.DEBUG_MODE_LOGGED_IN; goto 1268; case 'Off': v2.debugMode = v2.DEBUG_MODE_LOGGED_OUT; goto 1268; case 'Simulate Logged-in User': v2.debugMode = v2.DEBUG_MODE_NEW_VERSION; goto 1268; case 'Simulate Logged-out User': v2.debugMode = v2.DEBUG_MODE_HOST_BLOCKED; label 1268: v2.addEventListener(com.newgrounds.APIEvent.API_CONNECTED, _onConnected); v2.connect(_root, apiId, encryptionKey, movieVersion); } } function _onConnected(event) { if (redirectOnNewVersion && event.__get__success() && (event.__get__data()).newVersion) { _redirect = true; } if (redirectOnHostBlocked && !event.__get__success() && event.__get__error() == com.newgrounds.APIEvent.ERROR_HOST_BLOCKED) { _redirect = true; } if (_redirect) { gotoAndStop('adPreloader'); forceAlwaysOnTop(); } } function forceAlwaysOnTop() { var v2 = getNextHighestDepth(); swapDepths(v2); if (Stage) { _x = (Stage.width - _width) / 2; _y = (Stage.height - _height) / 2; _visible = true; } if (_root && _root instanceof MovieClip) { (MovieClip(_root)).stop(); } } stop(); if (_root && _root instanceof MovieClip) { (MovieClip(_root)).stop(); } var apiId; var encryptionKey; var movieVersion; var debugMode; var connectorType; var redirectOnHostBlocked; var redirectOnNewVersion; var _redirect; _x = Number(_x); _y = Number(_y); if (!debugMode) { debugMode = 'Simulate Logged-in User'; } if (!connectorType) { connectorType = 'Flash Ad + Preloader'; } switch (connectorType) { case 'Flash Ad + Preloader': gotoAndStop('adPreloader'); break; case 'Flash Ad Only': gotoAndStop('ad'); break; case 'Invisible': gotoAndStop('invisible'); } _apiConnect(); } instance ad of movieClip 92 FlashAd { onClipEvent (construct) { apiId = ''; showBorder = true; } } instance loader of movieClip 32 Preloader { onClipEvent (construct) { autoPlay = false; mainClass = ''; } } } frame 1 { stop(); var NoMenu = new ContextMenu(); NoMenu.hideBuiltInItems(); this.menu = NoMenu; var ThereAndBackAgain = true; var NoobKong = true; var DonKingKong = true; var SuperKingOfKong = true; var Vertigo = true; var Jumpmania = true; var RiskyBusiness = true; var ProAtGaming = true; var PickerUper = true; var BallsOfSteel = true; var Shocked = true; var Toast = true; var Princess = true; var HardcoreGamer = true; var Cheater = true; var SelfPwn = true; var round; var enemiesJumped = 0; var gameDifficulty; var highScore; savefile = SharedObject.getLocal('dkArcade2'); highScore = savefile.data.highScore; if (savefile.data.highScore == undefined) { highScore = 0; } onEnterFrame = function () { PercentLoaded = Math.ceil((_root.getBytesLoaded() / _root.getBytesTotal()) * 100); dkPreloader.gotoAndStop(PercentLoaded); }; ldLogo.onRelease = function () { com.newgrounds.API.loadMySite(); }; dkLogo.onRelease = function () { getURL('http://www.donkeykonggame.org', 'blank'); }; } // unknown tag 88 length 48 movieClip 98 { } movieClip 100 { } movieClip 102 { } movieClip 104 hammer { } movieClip 106 { } movieClip 107 { } movieClip 112 { } movieClip 115 { } movieClip 120 { frame 2 { _parent.climbSound.start(0, 100); } } movieClip 124 { } movieClip 127 { } movieClip 135 { frame 1 { _root.hammerMusic.stop(); clearInterval(_root.hammerInterval); } frame 145 { stop(); --_root.lives; if (_root.lives <= 0) { _root.gotoAndStop('Game Over'); } else { _root.gotoAndPlay('How High' + _root.currentLevel); } } } movieClip 136 mario { frame 1 { stop(); runSound = new Sound(this); jumpSound = new Sound(this); climbSound = new Sound(this); runSound.attachSound('run'); jumpSound.attachSound('jump'); climbSound.attachSound('climbLadder'); this.runSound.stop(); } frame 7 { stop(); this.runSound.stop(); } frame 13 { stop(); this.runSound.stop(); this.runSound.start(0, 100); } instance of movieClip 112 { onClipEvent (enterFrame) { if (!Key.isDown(39)) { _root.mario.gotoAndStop('idleR'); _root.run = false; } } } frame 19 { stop(); this.runSound.stop(); this.runSound.start(0, 100); } instance of movieClip 115 { onClipEvent (enterFrame) { if (!Key.isDown(37)) { _root.mario.gotoAndStop('idleL'); _root.run = false; } } } frame 24 { stop(); this.runSound.stop(); this.jumpSound.start(0.15, 1); } frame 30 { stop(); this.runSound.stop(); this.jumpSound.start(0.15, 1); } frame 37 { stop(); this.runSound.stop(); this.climbSound.stop(); } instance of movieClip 120 { onClipEvent (enterFrame) { if (!Key.isDown(38)) { if (_root.ladderUnderFeet() && _root.groundUnderFeet()) { _root.mario.gotoAndStop('ladderReady'); } if (this._currentframe == 1 || this._currentframe >= 14 && this._currentframe <= 22) { _root.mario.gotoAndStop('idleClimb'); } else { _root.mario.gotoAndStop('idleClimb2'); } } } } frame 43 { stop(); this.runSound.stop(); this.climbSound.stop(); } instance of movieClip 120 { onClipEvent (enterFrame) { if (!Key.isDown(40)) { if (_root.feetOnLadder() && _root.groundUnderFeet()) { _root.mario.gotoAndStop('ladderReady'); } if (this._currentframe == 1 || this._currentframe >= 14 && this._currentframe <= 22) { _root.mario.gotoAndStop('idleClimb'); } else { _root.mario.gotoAndStop('idleClimb2'); } } } } frame 53 { stop(); this.climbSound.stop(); } frame 62 { stop(); this.climbSound.stop(); } frame 73 { stop(); this.climbSound.stop(); } frame 84 { stop(); } frame 107 { stop(); } instance of movieClip 127 { onClipEvent (enterFrame) { if (!Key.isDown(39)) { _root.mario.gotoAndStop('hammerIdleR'); } } } frame 119 { stop(); } instance of movieClip 127 { onClipEvent (enterFrame) { if (!Key.isDown(37)) { _root.mario.gotoAndStop('hammerIdleL'); } } } frame 132 { stop(); this.runSound.stop(); } } movieClip 144 { } movieClip 147 { } movieClip 153 Die Spark { frame 39 { _root.hammerHitBarrel = false; _root.hammerHitPie = false; } frame 62 { _root.dieSpark.removeMovieClip(); } } movieClip 154 Barrel { frame 1 { stop(); } } movieClip 159 { } movieClip 160 { frame 1 { stop(); } } instance of movieClip 93 APIConnector { onClipEvent (construct) { apiId = '20930:GJUQqOWJ'; connectorType = 'Flash Ad + Preloader'; debugMode = 'Simulate Logged-in User'; encryptionKey = 'xy59YnJfMmvCznfOOwdeYMHzHc41tYKO'; movieVersion = ''; redirectOnHostBlocked = true; redirectOnNewVersion = true; } } movieClip 45 __Packages.com.newgrounds.APIConnection { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.APIConnection) { var v1 = function () { this.reset(); }; com.newgrounds.APIConnection = v1; var v2 = v1.prototype; v2.__get__hostURL = function () { return this._hostURL; }; v2.__set__hostURL = function (value) { this._hostURL = value; this.hostDomain = null; if (this._hostURL) { var v2 = this._hostURL.split('/'); if (v2[0] != 'file:' && this._hostURL != 'localhost') { this.hostDomain = v2[2]; } } if (!this.hostDomain) { this.hostDomain = 'localhost'; } return this.__get__hostURL(); }; v2.__get__sandboxType = function () { return System.security.sandboxType; }; v2.__get__isNetworkHost = function () { switch (this.__get__sandboxType()) { return true; case 'localWithFile': case 'localWithNetwork': case 'localTrusted': case 'application': return false; case 'remote': } return true; }; v2.__get__hasUserSession = function () { return this.sessionId != null && this.sessionId != '' && this.publisherId != 0; }; v2.__get__connected = function () { return this.connectionState == com.newgrounds.APIConnection.CONNECTED; }; v2.reset = function () { this.connectionState = com.newgrounds.APIConnection.NOT_CONNECTED; this.encryptionKey = null; this.sessionId = null; this.userEmail = null; this.username = null; this.userId = 0; this.userpageFormat = 0; }; v2.assertInitialized = function () { if (!this.initialized) { com.newgrounds.Logger.logError('You must initialized the API using API.connect() before using this command.'); return false; } return true; }; v2.assertConnected = function () { if (!this.connectionState == com.newgrounds.APIConnection.CONNECTED) { com.newgrounds.Logger.logError('You must establish a connection using API.connect() before using this command.'); return false; } return true; }; v2.sendSimpleCommand = function (command, completeHandler, parameters, secureParameters) { if (parameters == undefined) { parameters = null; } if (secureParameters == undefined) { secureParameters = null; } var v2 = new com.newgrounds.APICommand(command); v2.__set__parameters(parameters); v2.__set__secureParameters(secureParameters); if (completeHandler != null) { v2.addEventListener(com.newgrounds.APIEvent.COMMAND_COMPLETE, completeHandler); } v2.send(this); }; v2.sendCommand = function (command) { command.send(this); }; v2.loadInBrowser = function (command, newWindow, parameters) { if (newWindow == undefined) { newWindow = true; } if (parameters == undefined) { parameters = null; } var v2 = new com.newgrounds.APICommand(command); v2.__set__parameters(parameters); v2.loadInBrowser(this, newWindow); }; v1.NOT_CONNECTED = 'notConnected'; v1.CONNECTING = 'connecting'; v1.CONNECTED = 'connected'; v2.connectionState = com.newgrounds.APIConnection.NOT_CONNECTED; v2.apiURL = 'http://www.ngads.com/gateway_v2.php'; v2.addProperty('connected', v2.__get__connected, function () {}); v2.addProperty('hasUserSession', v2.__get__hasUserSession, function () {}); v2.addProperty('hostURL', v2.__get__hostURL, v2.__set__hostURL); v2.addProperty('isNetworkHost', v2.__get__isNetworkHost, function () {}); v2.addProperty('sandboxType', v2.__get__sandboxType, function () {}); ASSetPropFlags(com.newgrounds.APIConnection.prototype, null, 1); } #endinitclip } movieClip 39 __Packages.com.newgrounds.EventDispatcher { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.EventDispatcher) { var v1 = function () { this._listeners = {}; }; com.newgrounds.EventDispatcher = v1; var v2 = v1.prototype; v2.addEventListener = function (type, listener) { if (!this._listeners[type]) { this._listeners[type] = []; } if (typeof listener == 'function') { this._listeners[type].push({'target': null, 'func': listener}); } else { this._listeners[type].push(listener); } }; v2.removeEventListener = function (type, listener) { var v3 = this._listeners[type]; if (v3) { var v5 = v3.length; var v2 = 0; while (v2 < v5) { if (v3[v2].func == listener || v3[v2] == listener) { v3.splice(v2, 1); return undefined; } ++v2; } } }; v2.dispatchEvent = function (event) { var v4 = this._listeners[event.__get__type()]; if (v4) { var v5 = v4.length; var v2 = 0; while (v2 < v5) { var v3 = v4[v2]; v3.func.call(v3.target, event); ++v2; } } return true; }; ASSetPropFlags(com.newgrounds.EventDispatcher.prototype, null, 1); } #endinitclip } movieClip 38 __Packages.com.newgrounds.Event { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.Event) { var v1 = function (type) { this._type = type; }; com.newgrounds.Event = v1; var v2 = v1.prototype; v2.__get__type = function () { return this._type; }; v2.addProperty('type', v2.__get__type, function () {}); ASSetPropFlags(com.newgrounds.Event.prototype, null, 1); } #endinitclip } movieClip 40 __Packages.com.newgrounds.APIEventDispatcher { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.APIEventDispatcher) { var v1 = function () { super(); }; com.newgrounds.APIEventDispatcher = v1; com.newgrounds.APIEventDispatcher extends com.newgrounds.EventDispatcher; var v2 = v1.prototype; v1.__get__globalDispatcher = function () { return com.newgrounds.APIEventDispatcher._globalDispatcher; }; v1.__set__globalDispatcher = function (value) { com.newgrounds.APIEventDispatcher._globalDispatcher = value; return com.newgrounds.APIEventDispatcher.__get__globalDispatcher(); }; v1.initEventQueue = function () { setInterval(com.newgrounds.APIEventDispatcher.runEventQueue, 50); return []; }; v2.dispatchEvent = function (event) { com.newgrounds.APIEventDispatcher._eventQueue.push({'dispatcher': this, 'event': event}); return true; }; v2.actualDispatchEvent = function (event) { var v3 = super.dispatchEvent(event); if (com.newgrounds.APIEventDispatcher._globalDispatcher && this != com.newgrounds.APIEventDispatcher._globalDispatcher) { com.newgrounds.APIEventDispatcher._globalDispatcher.dispatchEvent(event); } }; v1.runEventQueue = function (event) { var v3 = com.newgrounds.APIEventDispatcher._eventQueue.length; if (v3) { var v4 = com.newgrounds.APIEventDispatcher._eventQueue; com.newgrounds.APIEventDispatcher._eventQueue = []; var v1 = 0; while (v1 < v3) { var v2 = v4[v1]; v2.dispatcher.actualDispatchEvent(v2.event); ++v1; } } }; v1._eventQueue = com.newgrounds.APIEventDispatcher.initEventQueue(); v1.addProperty('globalDispatcher', v1.__get__globalDispatcher, v1.__set__globalDispatcher); ASSetPropFlags(com.newgrounds.APIEventDispatcher.prototype, null, 1); } #endinitclip } movieClip 43 __Packages.com.newgrounds.encoders.BaseN { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.encoders) { _global.com.newgrounds.encoders = new Object(); } if (!_global.com.newgrounds.encoders.BaseN) { var v1 = function (hash) { if (hash) { this._hash = hash; } else { this._hash = com.newgrounds.encoders.BaseN.DEFAULT_HASH; } this._base = this._hash.length; this._reverseHash = new Object(); var v2 = 0; while (v2 < this._hash.length) { this._reverseHash[this._hash.charAt(v2)] = v2; ++v2; } }; com.newgrounds.encoders.BaseN = v1; var v2 = v1.prototype; v2.encodeUint = function (number, minimumChars) { if (minimumChars == undefined) { minimumChars = 1; } var v2 = ''; var v3 = number; while (v3 != 0) { v2 = this._hash.charAt(v3 % this._base) + v2; v3 /= this._base; v3 = int(v3); } while (v2.length < minimumChars) { v2 = this._hash.charAt(0) + v2; } return v2; }; v2.decodeUint = function (encodedNumber) { var v3 = 0; var v2 = 0; while (v2 < encodedNumber.length) { v3 *= this._base; v3 += this._reverseHash[encodedNumber.charAt(v2)]; ++v2; } return v3; }; v1.DEFAULT_HASH = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/'; ASSetPropFlags(com.newgrounds.encoders.BaseN.prototype, null, 1); } #endinitclip } movieClip 49 __Packages.com.newgrounds.APICommand { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.APICommand) { var v1 = function (command) { super(); this._command = command; this._parameters = new Object(); this._secureParameters = new Object(); this._hasTimeout = true; }; com.newgrounds.APICommand = v1; com.newgrounds.APICommand extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v1.stopPendingCommands = function () { for (var v2 in com.newgrounds.APICommand._pendingCommands) { var v1 = com.newgrounds.APICommand._pendingCommands[v2]; v1.close(); } com.newgrounds.APICommand._pendingCommands = []; }; v1.onThrottleTimer = function (event) { com.newgrounds.APICommand._throttleCount = 0; com.newgrounds.APICommand._throttleCount = 0; for (;;) { if (!(com.newgrounds.APICommand._commandQueue.length && com.newgrounds.APICommand._throttleCount < com.newgrounds.APICommand.THROTTLE_THRESHOLD)) break; var v1 = com.newgrounds.APICommand._commandQueue.shift(); v1.command.send(v1.connection); ++com.newgrounds.APICommand._throttleCount; } }; v1.encryptHex = function (hexValue) { var v4 = hexValue.length % 6; var v3 = ''; var v1 = 0; while (v1 < hexValue.length) { v3 += com.newgrounds.APICommand._encryptor.encodeUint(int('0x' + hexValue.substr(v1, 6)), 4); v1 += 6; } return v4.toString() + v3; }; v2.__get__command = function () { return this._command; }; v2.__set__command = function (value) { this._command = value; return this.__get__command(); }; v2.__get__hasTimeout = function () { return this._hasTimeout; }; v2.__set__hasTimeout = function (val) { this._hasTimeout = val; return this.__get__hasTimeout(); }; v2.__get__parameters = function () { return this._parameters; }; v2.__set__parameters = function (object) { this._parameters = new Object(); if (object) { for (var v3 in object) { this._parameters[v3] = object[v3]; } } return this.__get__parameters(); }; v2.__get__preventCache = function () { return this._preventCache; }; v2.__set__preventCache = function (value) { this._preventCache = value; return this.__get__preventCache(); }; v2.__get__secureParameters = function () { return this._secureParameters; }; v2.__set__secureParameters = function (object) { this._secureParameters = new Object(); if (object) { for (var v3 in object) { this._secureParameters[v3] = object[v3]; } } return this.__get__secureParameters(); }; v2.__get__hasSecureParameters = function () { for (var v2 in this._secureParameters) { return true; } return false; }; v2.addFile = function (filename, data, dataField, contentType) { if (contentType == undefined) { contentType = 'application/octet-stream'; } if (!this._files) { this._files = new Object(); } var v3 = {'filename': filename, 'data': data, 'dataField': dataField, 'contentType': contentType}; this._files[filename] = v3; }; v2.removeFile = function (filename) { if (this._files) { delete this._files[filename]; } }; v2.clearFiles = function () { this._files = null; }; v2.close = function () { if (this._loader) { clearInterval(this._timeoutTimer); var v2 = 0; while (v2 < com.newgrounds.APICommand._pendingCommands.length) { if (com.newgrounds.APICommand._pendingCommands[v2] == this) { com.newgrounds.APICommand._pendingCommands.splice(v2, 1); break; } ++v2; } this._loader = null; } }; v2.loadInBrowser = function (connection, newWindow) { this._parameters.command_id = this._command; this._parameters.tracker_id = connection.apiId ? connection.apiId : 1; if (connection.debug) { this._parameters.debug = 1; } var v3 = connection.apiURL + '?host=' + escape(connection.hostDomain); for (var v4 in this._parameters) { v3 += '&' + escape(v4) + '=' + escape(this._parameters[v4]); } var v6; if (newWindow) { v6 = '_blank'; } else { v6 = '_top'; } _root.getURL(v3, v6); }; v2.send = function (connection) { if (com.newgrounds.APICommand._throttleCount >= com.newgrounds.APICommand.THROTTLE_THRESHOLD) { com.newgrounds.APICommand._commandQueue.push({'connection': connection, 'command': this}); } else { this.sendInternal(connection); } }; v2.sendInternal = function (connection) { var v4; v4 = new LoadVars(); v4.command_id = this._command; v4.tracker_id = connection.apiId; if (connection.debug) { v4.debug = 1; } if (this._preventCache) { v4.seed = Math.random(); } var v2; var v3; var v7; for (v2 in this._parameters) { v3 = this._parameters[v2]; if (v3 != null) { if (typeof v3 == 'boolean') { v4[v2] = int(v3); } else { v4[v2] = v3; } } } if (this.__get__hasSecureParameters()) { var v6 = new Object(); for (v2 in this._secureParameters) { v3 = this._secureParameters[v2]; if (v3 != null) { if (typeof v3 == 'boolean') { v6[v2] = int(v3); } else { v6[v2] = v3; } } } var v8 = ''; v7 = 0; while (v7 < 16) { v8 += com.newgrounds.APICommand.ENCRYPTOR_RADIX.charAt(int(Math.random() * com.newgrounds.APICommand.ENCRYPTOR_RADIX.length)); ++v7; } v4.command_id = 'securePacket'; v6.command_id = this._command; v6.as_version = 3; v6.session_id = connection.sessionId; v6.user_email = connection.userEmail; v6.publisher_id = connection.publisherId; v6.seed = v8; var v13 = com.newgrounds.crypto.MD5.hash(v8); var v11 = com.newgrounds.crypto.RC4.encrypt(com.newgrounds.encoders.json.JSON.encode(v6), connection.encryptionKey); v4.secure = com.newgrounds.APICommand.encryptHex(v13 + v11); } com.newgrounds.Logger.logInternal('Sending packet:', v4); var v12; v12 = 'application/x-www-form-urlencoded'; for (v2 in v4) { if (typeof v4[v2] == 'object') { v4[v2] = com.newgrounds.encoders.json.JSON.encode(v4[v2]); } } if (this._files) { for (var v10 in this._files) { var v5 = this._files[v10]; if (typeof v5.data == 'string') { v4[v10] = v5.data; } else { v4[v10] = com.newgrounds.encoders.json.JSON.encode(v5.data); } } } com.newgrounds.APICommand._pendingCommands.push(this); ++com.newgrounds.APICommand._throttleCount; this.startLoader(connection.apiURL, v4, v12); }; v2.startLoader = function (url, data, contentType) { this._loader = LoadVars(data); this._loader.onData = this.as2CompleteHandler; this._loader.contentType = contentType; this._loader.sendAndLoad(url, this._loader, 'POST'); if (this._hasTimeout) { setInterval(this, this.onTimeout, com.newgrounds.APICommand.TIMEOUT_INTERVAL); } }; v2.as2CompleteHandler = function (data) { var v3; var v2 = 0; while (v2 < com.newgrounds.APICommand._pendingCommands.length) { if (com.newgrounds.APICommand._pendingCommands[v2]._loader == this) { v3 = com.newgrounds.APICommand._pendingCommands[v2]; break; } ++v2; } v3.onComplete(data); }; v2.onTimeout = function (event) { this.close(); com.newgrounds.Logger.logError('Command timed out.'); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_TIMED_OUT)); }; v2.onError = function (error) { com.newgrounds.Logger.logError('Error when sending command:', error); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_UNKNOWN)); this.close(); }; v2.onComplete = function (data) { try { if (!data || data == '') { throw new Error(); } com.newgrounds.Logger.logInternal('Received packet:', data); var v2 = com.newgrounds.encoders.json.JSON.decode(data); if (!v2) { throw new Error(); } if (com.newgrounds.APICommand.bridge) { com.newgrounds.APICommand.bridge.sendEvent(v2.command_id, v2); } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, v2, (v2 && v2.success) ? com.newgrounds.APIEvent.ERROR_NONE : com.newgrounds.APIEvent.ERROR_COMMAND_FAILED)); } catch (e) { com.newgrounds.Logger.logError('Invalid response returned from server: ' + data); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.COMMAND_COMPLETE, null, com.newgrounds.APIEvent.ERROR_BAD_RESPONSE)); } this.close(); }; v1.TIMEOUT_INTERVAL = 10000; v1.THROTTLE_INTERVAL = 5000; v1.THROTTLE_THRESHOLD = 12; v1._throttleCount = 0; v1._commandQueue = []; v1._throttleTimer = setInterval(com.newgrounds.APICommand.onThrottleTimer, com.newgrounds.APICommand.THROTTLE_INTERVAL); v1.ENCRYPTOR_RADIX = '/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X'; v1._encryptor = new com.newgrounds.encoders.BaseN(com.newgrounds.APICommand.ENCRYPTOR_RADIX); v1._pendingCommands = []; v1.CRLF = '\r\n'; v2.addProperty('command', v2.__get__command, v2.__set__command); v2.addProperty('hasSecureParameters', v2.__get__hasSecureParameters, function () {}); v2.addProperty('hasTimeout', v2.__get__hasTimeout, v2.__set__hasTimeout); v2.addProperty('parameters', v2.__get__parameters, v2.__set__parameters); v2.addProperty('preventCache', v2.__get__preventCache, v2.__set__preventCache); v2.addProperty('secureParameters', v2.__get__secureParameters, v2.__set__secureParameters); ASSetPropFlags(com.newgrounds.APICommand.prototype, null, 1); } #endinitclip } movieClip 44 __Packages.com.newgrounds.Bridge { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.Bridge) { var v1 = function (id) { this._widgetId = id; this._inConnection = new LocalConnection(); this._outConnection = new LocalConnection(); this._inConnection.receiveEvent = this.receiveEvent; try { this._inConnection.connect('rec_' + this._widgetId); } com.newgrounds.Logger.addEventListener(com.newgrounds.APIEvent.LOG, {'target': this, 'func': this.onLogMessage}); }; com.newgrounds.Bridge = v1; var v2 = v1.prototype; v2.onLogMessage = function (event) { try { this._outConnection.send(this._widgetId, 'sendEvent', 'trace', String(event.__get__data())); } }; v2.sendEvent = function (command, parameters) { if (this._outConnection) { parameters = {'data': parameters}; this._outConnection.send(this._widgetId, 'sendEvent', command, parameters); } }; v2.receiveEvent = function (event, parameters) {}; v2.onStatus = function (event) {}; ASSetPropFlags(com.newgrounds.Bridge.prototype, null, 1); } #endinitclip } movieClip 41 __Packages.com.newgrounds.APIEvent { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.APIEvent) { var v1 = function (type, data, error) { super(type); if (data == undefined) { data = null; } if (error == undefined) { error = null; } if (!error || error == '' || error == com.newgrounds.APIEvent.ERROR_NONE) { this._error = com.newgrounds.APIEvent.ERROR_NONE; this._success = true; } else { this._error = error; this._success = false; } if (data) { this._data = data; } else { this._data = {}; } }; com.newgrounds.APIEvent = v1; com.newgrounds.APIEvent extends com.newgrounds.Event; var v2 = v1.prototype; v2.clone = function () { return new com.newgrounds.APIEvent(this.__get__type(), this._data, this._error); }; v2.__get__success = function () { return this._success; }; v2.__get__data = function () { return this._data; }; v2.__get__error = function () { return this._error; }; v1.COMMAND_COMPLETE = 'commandComplete'; v1.MEDAL_UNLOCK_CONFIRMED = 'medalUnlockConfirmed'; v1.ICON_LOADED = 'iconLoaded'; v1.API_CONNECTED = 'movieConnected'; v1.LOG = 'log'; v1.MEDAL_UNLOCKED = 'medalUnlocked'; v1.SCORES_LOADED = 'scoresLoaded'; v1.SCORE_POSTED = 'scorePosted'; v1.QUERY_COMPLETE = 'queryComplete'; v1.FILE_LOADED = 'fileLoaded'; v1.FILE_SAVED = 'fileSaved'; v1.FILE_REQUESTED = 'fileRequested'; v1.VOTE_COMPLETE = 'voteComplete'; v1.ERROR_NONE = 'noError'; v1.ERROR_UNKNOWN = 'unknownError'; v1.ERROR_COMMAND_FAILED = 'commandFailed'; v1.ERROR_NOT_CONNECTED = 'notConnected'; v1.ERROR_INVALID_ARGUMENT = 'invalidArgument'; v1.ERROR_TIMED_OUT = 'timedOut'; v1.ERROR_BAD_FILE = 'badFile'; v1.ERROR_BAD_RESPONSE = 'badResponse'; v1.ERROR_SENDING_COMMAND = 'errorSendingCommand'; v1.ERROR_HOST_BLOCKED = 'hostBlocked'; v1.ERROR_ALREADY_VOTED = 'alreadyVoted'; v1.ERROR_NOT_LOGGED_IN = 'notLoggedIn'; v2.addProperty('data', v2.__get__data, function () {}); v2.addProperty('error', v2.__get__error, function () {}); v2.addProperty('success', v2.__get__success, function () {}); ASSetPropFlags(com.newgrounds.APIEvent.prototype, null, 1); } #endinitclip } movieClip 60 __Packages.com.newgrounds.API { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.API) { var v1 = function () {}; com.newgrounds.API = v1; var v2 = v1.prototype; v1.__get__connected = function () { return com.newgrounds.API._connection.__get__connected(); }; v1.__get__isNetworkHost = function () { return com.newgrounds.API._connection.__get__isNetworkHost(); }; v1.__get__apiId = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.apiId; }; v1.__get__debugMode = function () { return com.newgrounds.API._debugMode; }; v1.__set__debugMode = function (val) { com.newgrounds.API._debugMode = val; return com.newgrounds.API.__get__debugMode(); }; v1.__get__publisherId = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.publisherId; }; v1.__get__sessionId = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.sessionId; }; v1.__get__hostDomain = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.hostDomain; }; v1.__get__hostURL = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.__get__hostURL(); }; v1.__get__isNewgrounds = function () { return com.newgrounds.API._connection.publisherId == 1; }; v1.__get__hasUserSession = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.__get__hasUserSession(); }; v1.__get__username = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.username; }; v1.__get__userId = function () { com.newgrounds.API._connection.assertInitialized(); return com.newgrounds.API._connection.userId; }; v1.assertConnected = function (eventType) { if (eventType == undefined) { eventType = null; } if (com.newgrounds.API._connection.assertConnected()) { return true; } else { if (eventType) { com.newgrounds.API.dispatchEvent(eventType, null, com.newgrounds.APIEvent.ERROR_NOT_CONNECTED); } return false; } }; v1.__get__adsApproved = function () { return com.newgrounds.API._adsApproved; }; v1.__get__adFeedURL = function () { return com.newgrounds.API._adFeedURL; }; v1.__get__medals = function () { return com.newgrounds.API._medalsArray; }; v1.__get__scoreBoards = function () { return com.newgrounds.API._scoreBoardsArray; }; v1.__get__saveGroups = function () { return com.newgrounds.API._saveGroupsArray; }; v1.connect = function (_root, apiId, encryptionKey, movieVersion) { if (encryptionKey == undefined) { encryptionKey = null; } if (movieVersion == undefined) { movieVersion = ''; } com.newgrounds.APIEventDispatcher.__set__globalDispatcher(com.newgrounds.API._dispatcher); System.security.loadPolicyFile('http://apifiles.ngfiles.com/crossdomain.xml'); if (com.newgrounds.API._connection.initialized) { com.newgrounds.Logger.logError('Connection already in progress. Please call API.disconnect() before attempting another connection.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_NOT_CONNECTED); return undefined; } var v2 = 0; while (apiId.charAt(v2) == ' ') { ++v2; } apiId = apiId.slice(v2); v2 = apiId.length - 1; while (apiId.charAt(v2) == ' ') { --v2; } apiId = apiId.slice(0, v2 + 1); if (!apiId || apiId == '') { com.newgrounds.Logger.logError('No apiId given. Please use the API ID from your API settings page.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return undefined; } com.newgrounds.Logger.logMessage('====== Newgrounds API v' + com.newgrounds.API.VERSION + ' ======'); com.newgrounds.API._connection.connectionState = com.newgrounds.APIConnection.CONNECTING; _root = _root; com.newgrounds.API._movieVersion = movieVersion; com.newgrounds.API._connection.apiId = apiId; v2 = apiId.indexOf(':'); if (v2 != -1) { com.newgrounds.API._connection.trackerId = int(apiId.substring(0, v2)); } else { com.newgrounds.API._connection.trackerId = int(apiId); } if (!com.newgrounds.API._connection.trackerId) { com.newgrounds.Logger.logError('Invalid API ID: ' + apiId); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, false, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return undefined; } com.newgrounds.API._connection.encryptionKey = encryptionKey; com.newgrounds.API._connection.initialized = true; com.newgrounds.API._connection.__set__hostURL(_root._url); com.newgrounds.API.doConnect(_root); }; v1.doConnect = function (flashVars) { if (com.newgrounds.API.__get__isNetworkHost() && com.newgrounds.API._debugMode != com.newgrounds.API.RELEASE_MODE) { com.newgrounds.Logger.logMessage('Live file detected, turning off debug mode.'); com.newgrounds.API._debugMode = com.newgrounds.API.RELEASE_MODE; } if (flashVars && flashVars.NewgroundsAPI_SandboxID) { com.newgrounds.API._bridge = new com.newgrounds.Bridge(flashVars.NewgroundsAPI_SandboxID); com.newgrounds.APICommand.bridge = com.newgrounds.API._bridge; } if (com.newgrounds.API._debugMode == com.newgrounds.API.RELEASE_MODE) { if (flashVars) { if (flashVars.NewgroundsAPI_UserName) { com.newgrounds.API._connection.username = flashVars.NewgroundsAPI_UserName; } if (flashVars.NewgroundsAPI_UserID) { com.newgrounds.API._connection.userId = flashVars.NewgroundsAPI_UserID; } if (flashVars.NewgroundsAPI_PublisherID) { com.newgrounds.API._connection.publisherId = flashVars.NewgroundsAPI_PublisherID; } if (flashVars.NewgroundsAPI_UserpageFormat) { com.newgrounds.API._connection.userpageFormat = flashVars.NewgroundsAPI_UserpageFormat; } if (flashVars.NewgroundsAPI_SessionID) { com.newgrounds.API._connection.sessionId = flashVars.NewgroundsAPI_SessionID; } if (flashVars.NewgroundsAPI_SaveGroupID) { com.newgrounds.API._requestedSaveGroupId = flashVars.NewgroundsAPI_SaveGroupID; } if (flashVars.NewgroundsAPI_SaveFileID) { com.newgrounds.API._requestedSaveFileId = flashVars.NewgroundsAPI_SaveFileID; } } } else { com.newgrounds.API._connection.debug = true; if (com.newgrounds.API._debugMode == com.newgrounds.API.DEBUG_MODE_LOGGED_IN || com.newgrounds.API._debugMode == com.newgrounds.API.DEBUG_MODE_LOGGED_OUT) { com.newgrounds.API._connection.publisherId = 1; } if (com.newgrounds.API._debugMode == com.newgrounds.API.DEBUG_MODE_LOGGED_IN) { com.newgrounds.API._connection.sessionId = 'D3bu64p1U53R'; com.newgrounds.API._connection.userId = 10; com.newgrounds.API._connection.username = 'API-Debugger'; } } com.newgrounds.API._connection.sendSimpleCommand('connectMovie', com.newgrounds.API.onConnect, {'host': com.newgrounds.API._connection.hostDomain, 'movie_version': com.newgrounds.API._movieVersion, 'publisher_id': com.newgrounds.API._connection.publisherId}); }; v1.onConnect = function (event) { var v1 = event.__get__data(); if (!event.__get__success()) { com.newgrounds.Logger.logError('Unable to connect to the API.'); com.newgrounds.API._connection.reset(); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, event.__get__data(), event.__get__error()); return undefined; } if (com.newgrounds.API.__get__debugMode() != com.newgrounds.API.RELEASE_MODE) { com.newgrounds.API._adFeedURL = com.newgrounds.API.TEST_AD_FEED_URL; } else { if (v1.ad_url) { com.newgrounds.API._adFeedURL = unescape(v1.ad_url); } } switch (v1.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!'); } com.newgrounds.API._adsApproved = v1.ad_status == 1; if (com.newgrounds.API._debugMode == com.newgrounds.API.DEBUG_MODE_HOST_BLOCKED || v1.deny_host) { com.newgrounds.Logger.logWarning(com.newgrounds.API._connection.hostDomain + ' does not have permission to host this movie!', 'Update your API configuration to allow this host.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, {'officialURL': unescape(v1.movie_url)}, com.newgrounds.APIEvent.ERROR_HOST_BLOCKED); com.newgrounds.API._connection.reset(); return undefined; } com.newgrounds.API._movieName = v1.movieName ? v1.movieName : ''; com.newgrounds.Logger.logMessage('Connecting to the Newgrounds API Gateway...', '----- ' + v1.movie_name + ' -----'); if (com.newgrounds.API._debugMode == com.newgrounds.API.DEBUG_MODE_NEW_VERSION) { v1.movie_version = 'Debug Mode'; } if (v1.movie_version) { com.newgrounds.Logger.logMessage('A new version of this movie is available.', 'Current version:\t' + com.newgrounds.API._movieVersion, 'Newest version:\t' + v1.movie_version, 'Use API.loadOfficialVersion() to link to the latest version.'); com.newgrounds.API._newVersion = true; } else { com.newgrounds.API._newVersion = false; } if (v1.request_portal_url) { com.newgrounds.API._connection.sendSimpleCommand('setPortalID', null, {'portal_url': com.newgrounds.API._connection.__get__hostURL()}); } com.newgrounds.API._connection.sendSimpleCommand('preloadSettings', com.newgrounds.API.onMetadataLoaded, {'publisher_id': com.newgrounds.API._connection.publisherId, 'user_id': com.newgrounds.API._connection.userId}); }; v1.onMetadataLoaded = function (event) { var v11 = event.__get__data(); var v1; var v7; if (!event.__get__success()) { com.newgrounds.Logger.logWarning('Unable to load movie metadata.'); com.newgrounds.API.disconnect(); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, null, event.__get__error()); return undefined; } var v10 = 0; if (v11.medals) { v10 = v11.medals.length; var v17; if (com.newgrounds.API.__get__hasUserSession()) { v17 = com.newgrounds.API.loadLocal('medals_unlocked_' + com.newgrounds.API.__get__username()); } else { v17 = com.newgrounds.API.loadLocal('medals_unlocked'); } v1 = 0; while (v1 < v10) { var v6 = v11.medals[v1]; var v14 = v6.medal_unlocked; var v16 = v17 && v17[v6.medal_id]; var v4 = new com.newgrounds.Medal(com.newgrounds.API._connection, v6.medal_id, v6.medal_name, com.newgrounds.API.__get__hasUserSession() ? v14 : v16, v6.medal_value, v6.medal_difficulty, v6.medal_icon); v4.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, com.newgrounds.API.onMedalUnlocked, false, 0, true); v4.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, com.newgrounds.API.onMedalUnlockConfirmed, false, 0, true); com.newgrounds.API._medals[v4.__get__name()] = v4; com.newgrounds.API._medalsArray.push(v4); com.newgrounds.Logger.logMessage(v4); if (com.newgrounds.API.__get__hasUserSession() && v16 && !v14) { com.newgrounds.Logger.logMessage('Server missed the "' + v4.__get__name() + '" unlock. Resending...'); v4.unlock(); } ++v1; } } com.newgrounds.Logger.logMessage(v10 + ' medal' + ((v10 != 1) ? 's' : '') + ' initialized.'); v10 = 0; if (v11.score_boards) { v10 = v11.score_boards.length; v1 = 0; while (v1 < v10) { var v15 = v11.score_boards[v1]; var v9 = new com.newgrounds.ScoreBoard(com.newgrounds.API._connection, v15.name, v15.id); com.newgrounds.API._scoreBoards[v9.__get__name()] = v9; com.newgrounds.API._scoreBoardsArray.push(v9); com.newgrounds.Logger.logMessage(v9); ++v1; } } com.newgrounds.Logger.logMessage(v10 + ' scoreboard' + ((v10 != 1) ? 's' : '') + ' initialized.'); v10 = 0; if (v11.save_groups) { v10 = v11.save_groups.length; v1 = 0; while (v1 < v10) { var v2 = v11.save_groups[v1]; var v13 = []; if (v2.keys) { v7 = 0; while (v7 < v2.keys.length) { var v5 = v2.keys[v7]; v13.push(new com.newgrounds.SaveKey(v5.name, v5.id, v5.type)); ++v7; } } var v12 = []; if (v2.ratings) { v1 = 0; while (v1 < v2.ratings.length) { var v3 = v2.ratings[v1]; v12.push(new com.newgrounds.SaveRating(v3.name, v3.id, v3.float, v3.min, v3.max)); ++v1; } } var v8 = new com.newgrounds.SaveGroup(com.newgrounds.API._connection, v2.group_name, v2.group_id, v2.group_type, v13, v12); com.newgrounds.API._saveGroups[v8.__get__name()] = v8; com.newgrounds.API._saveGroupsArray.push(v8); com.newgrounds.Logger.logMessage(v8); ++v1; } } com.newgrounds.Logger.logMessage(v10 + ' save group' + ((v10 != 1) ? 's' : '') + ' initialized.'); if (v11.save_file_path) { com.newgrounds.API._saveFilePath = v11.save_file_path + '/'; com.newgrounds.SaveFile._saveFilePath = com.newgrounds.API._saveFilePath; com.newgrounds.Logger.logInternal('Save file path: ' + com.newgrounds.API._saveFilePath); } if (v11.image_file_path) { com.newgrounds.API._imageFilePath = v11.image_file_path + '/'; com.newgrounds.SaveFile._imageFilePath = com.newgrounds.API._imageFilePath; com.newgrounds.Logger.logInternal('Image file path: ' + com.newgrounds.API._imageFilePath); } com.newgrounds.Logger.logMessage('Connection complete!'); com.newgrounds.API._connection.connectionState = com.newgrounds.APIConnection.CONNECTED; com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.API_CONNECTED, {'movieName': com.newgrounds.API._movieName, 'newVersion': com.newgrounds.API._newVersion}); if (com.newgrounds.API._requestedSaveFileId && com.newgrounds.API._requestedSaveGroupId) { com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.FILE_LOADED, com.newgrounds.API.onRequestedFileLoaded); com.newgrounds.API.loadSaveFile(com.newgrounds.API._requestedSaveFileId, false); } }; v1.disconnect = function () { if (!com.newgrounds.API._connection.__get__connected()) { com.newgrounds.Logger.logWarning('The Newgrounds API is already disconnected.'); return undefined; } com.newgrounds.API._connection.reset(); for (var v2 in com.newgrounds.API._medals) { var v1 = com.newgrounds.API._medals[v2]; v1.removeEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, com.newgrounds.API.onMedalUnlocked); v1.removeEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, com.newgrounds.API.onMedalUnlockConfirmed); } com.newgrounds.API._newVersion = false; com.newgrounds.API._medals = new Object(); com.newgrounds.API._medalsArray = []; com.newgrounds.API._scoreBoards = new Object(); com.newgrounds.API._scoreBoardsArray = []; com.newgrounds.API._saveGroups = new Object(); com.newgrounds.API._saveGroupsArray = []; com.newgrounds.API._sharedObjects = new Object(); com.newgrounds.API._imageFilePath = null; com.newgrounds.API._saveFilePath = null; com.newgrounds.Logger.logMessage('Disconnected from the Newgrounds API.'); }; v1.loadNewgrounds = function () { com.newgrounds.API._connection.loadInBrowser('loadNewgrounds'); }; v1.loadOfficialVersion = function () { if (com.newgrounds.API._connection.assertInitialized()) { com.newgrounds.API._connection.loadInBrowser('loadOfficialVersion', false); } }; v1.loadMySite = function () { if (com.newgrounds.API._connection.assertInitialized()) { com.newgrounds.API._connection.loadInBrowser('loadMySite'); } }; v1.loadCustomLink = function (linkName) { if (com.newgrounds.API._connection.assertInitialized()) { com.newgrounds.API._connection.loadInBrowser('loadCustomLink', true, {'link': linkName}); } }; v1.getMedal = function (medalName) { return com.newgrounds.API._medals[medalName]; }; v1.unlockMedal = function (medalName) { if (!com.newgrounds.API.assertConnected()) { return undefined; } var v1 = com.newgrounds.API._medals[medalName]; if (!v1) { com.newgrounds.Logger.logError('No medal named "' + medalName + '" w.'); return undefined; } v1.unlock(); }; v1.onMedalUnlocked = function (event) { if (event.__get__success()) { var v2 = com.newgrounds.Medal(event.__get__data()); var v1; if (com.newgrounds.API.__get__hasUserSession()) { v1 = com.newgrounds.API.loadLocal('medals_unlocked_' + com.newgrounds.API.__get__username()); if (!v1) { v1 = new Object(); } v1[v2.__get__id()] = true; com.newgrounds.API.saveLocal('medals_unlocked_' + com.newgrounds.API.__get__username(), v1); } else { v1 = com.newgrounds.API.loadLocal('medals_unlocked'); if (!v1) { v1 = new Object(); } v1[(com.newgrounds.Medal(event.__get__data())).__get__id()] = true; com.newgrounds.API.saveLocal('medals_unlocked', v1); com.newgrounds.Logger.logMessage('User instanceof not logged in. Medal "' + v2.__get__name() + '" unlocked locally.'); } } }; v1.onMedalUnlockConfirmed = function (event) { if (com.newgrounds.API.__get__hasUserSession()) { var v1 = com.newgrounds.API.loadLocal('medals_unlocked_' + com.newgrounds.API.__get__username()); if (!v1) { v1 = new Object(); } else { delete v1[(com.newgrounds.Medal(event.__get__data())).__get__id()]; } com.newgrounds.API.saveLocal('medals_unlocked_' + com.newgrounds.API.__get__username(), v1); } }; v1.getScoreBoard = function (scoreBoardName) { if (!com.newgrounds.API.assertConnected()) { return null; } return com.newgrounds.API._scoreBoards[scoreBoardName]; }; v1.loadScores = function (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 (!com.newgrounds.API.assertConnected()) { return null; } var v1 = com.newgrounds.API._scoreBoards[scoreBoardName]; if (!v1) { com.newgrounds.Logger.logError('No scoreboard named "' + scoreBoardName + '" w.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return null; } v1.__set__period(period); v1.__set__firstResult(firstResult); v1.__set__numResults(numResults); v1.__set__tag(tag); v1.loadScores(); return v1; }; v1.postScore = function (scoreBoardName, numericScore, tag) { if (tag == undefined) { tag = null; } if (!com.newgrounds.API.assertConnected()) { return undefined; } if (!com.newgrounds.API.__get__hasUserSession()) { com.newgrounds.Logger.logError('The user must be logged-in to post a score.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN); return undefined; } var v1 = com.newgrounds.API._scoreBoards[scoreBoardName]; if (!v1) { com.newgrounds.Logger.logError('No scoreboard named "' + scoreBoardName + '" w.'); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.SCORES_LOADED, null, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT); return undefined; } v1.postScore(numericScore, tag); }; v1.getSaveGroup = function (groupName) { if (!com.newgrounds.API.assertConnected()) { return null; } return com.newgrounds.API._saveGroups[groupName]; }; v1.getSaveGroupById = function (id) { for (var v3 in com.newgrounds.API._saveGroups) { var v1 = com.newgrounds.API._saveGroups[v3]; if (v1.__get__id() == id) { return v1; } } return null; }; v1.createSaveFile = function (groupName) { if (!com.newgrounds.API.assertConnected()) { return null; } var v1 = com.newgrounds.API.getSaveGroup(groupName); if (!v1) { com.newgrounds.Logger.logError('The save group "' + groupName + '" w found.'); return null; } return new com.newgrounds.SaveFile(v1); }; v1.loadSaveFile = function (saveId, loadContents) { if (loadContents == undefined) { loadContents = true; } com.newgrounds.API._connection.sendSimpleCommand('loadSaveFile', com.newgrounds.API.onFileLoaded, {'save_id': saveId, 'get_contents': loadContents}); }; v1.onFileLoaded = function (event) { var v2; if (event.__get__success()) { v2 = com.newgrounds.SaveFile.fromObject(com.newgrounds.API.getSaveGroupById((event.__get__data()).group_id), (event.__get__data()).file); if ((event.__get__data()).get_contents) { v2.load(); } else { com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.FILE_LOADED, v2); } } else { com.newgrounds.Logger.logError('Unable to load file:', event.__get__error()); com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.FILE_LOADED, null, event.__get__error()); } }; v1.createSaveQuery = function (groupName) { if (!com.newgrounds.API.assertConnected()) { return null; } var v1 = com.newgrounds.API.getSaveGroup(groupName); if (!v1) { com.newgrounds.Logger.logError('The save group "' + groupName + '" w found.'); return null; } var v2 = new com.newgrounds.SaveQuery(v1); return v2; }; v1.createSaveQueryByDate = function (groupName, sortDescending) { if (sortDescending == undefined) { sortDescending = true; } var v1 = com.newgrounds.API.createSaveQuery(groupName); if (!v1) { return null; } v1.sortOn(com.newgrounds.SaveQuery.CREATED_ON, sortDescending); return v1; }; v1.createSaveQueryByName = function (groupName, filename, exactMatch, sortDescending) { if (exactMatch == undefined) { exactMatch = false; } if (sortDescending == undefined) { sortDescending = false; } var v1 = com.newgrounds.API.createSaveQuery(groupName); if (!exactMatch) { v1.addCondition(com.newgrounds.SaveQuery.FILE_NAME, com.newgrounds.SaveQuery.OPERATOR_CONTAINS, filename); return v1; } v1.addCondition(com.newgrounds.SaveQuery.FILE_NAME, com.newgrounds.SaveQuery.OPERATOR_EQUAL, filename); return v1; }; v1.createSaveQueryByRating = function (groupName, ratingName, sortDescending) { if (sortDescending == undefined) { sortDescending = true; } var v1 = com.newgrounds.API.createSaveQuery(groupName); v1.sortOn(ratingName, sortDescending); return v1; }; v1.onRequestedFileLoaded = function (event) { com.newgrounds.API.removeEventListener(com.newgrounds.APIEvent.FILE_LOADED, com.newgrounds.API.onRequestedFileLoaded); if (event.__get__success()) { var v1 = event.__get__data(); if (v1) { com.newgrounds.API.dispatchEvent(com.newgrounds.APIEvent.FILE_REQUESTED, v1); } } }; v1.addEventListener = function (eventType, listener, priority, useWeakReference) { if (priority == undefined) { priority = 0; } if (useWeakReference == undefined) { useWeakReference = true; } com.newgrounds.API._dispatcher.addEventListener(eventType, listener, false, priority, useWeakReference); }; v1.removeEventListener = function (eventType, listener) { com.newgrounds.API._dispatcher.removeEventListener(eventType, listener); }; v1.dispatchEvent = function (event, data, error) { if (data == undefined) { data = null; } if (error == undefined) { error = null; } com.newgrounds.API._dispatcher.dispatchEvent(new com.newgrounds.APIEvent(event, data, error)); }; v1.saveLocal = function (saveId, saveData) { try { var v3; var v2 = 'ng_ap_secure_' + com.newgrounds.API._connection.trackerId + '_' + com.newgrounds.crypto.RC4.encrypt(saveId, com.newgrounds.API._connection.encryptionKey); if (!com.newgrounds.API._sharedObjects[saveId]) { com.newgrounds.API._sharedObjects[saveId] = SharedObject.getLocal(v2); } v3 = com.newgrounds.API._sharedObjects[saveId]; v3.data.data = com.newgrounds.API.encodeData(saveData); } catch (v0) { if (Error(v0) != null) { var error = Error(v0); com.newgrounds.Logger.logError('Unable to save local data.', error); return false; return true; } throw v0; } return true; }; v1.loadLocal = function (saveId) { try { var v1; var v3 = 'ng_ap_secure_' + com.newgrounds.API._connection.trackerId + '_' + com.newgrounds.crypto.RC4.encrypt(saveId, com.newgrounds.API._connection.encryptionKey); if (!com.newgrounds.API._sharedObjects[saveId]) { com.newgrounds.API._sharedObjects[saveId] = SharedObject.getLocal(v3); } v1 = com.newgrounds.API._sharedObjects[saveId]; if (v1 && v1.data && v1.data.data) { return com.newgrounds.API.decodeData(v1.data.data); } return null; } catch (v0) { if (Error(v0) != null) { var error = Error(v0); com.newgrounds.Logger.logError('Unable to load local data.', error); return null; } throw v0; } return null; }; v1.logCustomEvent = function (eventName) { if (com.newgrounds.API.assertConnected()) { com.newgrounds.Logger.logMessage('Logged event: ' + eventName); com.newgrounds.API._connection.sendSimpleCommand('logCustomEvent', null, {'event': eventName}); } }; v1.encodeData = function (data) { if (!com.newgrounds.API._connection.assertInitialized()) { return null; } return com.newgrounds.crypto.RC4.encrypt(com.newgrounds.encoders.json.JSON.encode(data), com.newgrounds.API._connection.encryptionKey); }; v1.decodeData = function (data) { if (!com.newgrounds.API._connection.assertInitialized()) { return null; } try { return com.newgrounds.encoders.json.JSON.decode(com.newgrounds.crypto.RC4.decrypt(data, com.newgrounds.API._connection.encryptionKey)); } catch (v0) { if (Error(v0) != null) { var error = Error(v0); return null; } throw v0; } return null; }; v1.stopPendingCommands = function () { com.newgrounds.APICommand.stopPendingCommands(); com.newgrounds.Logger.logMessage('Pending commands stopped.'); }; v1.setFont = function (textField, font) { if (textField && font) { var v2 = textField.getTextFormat(); var v4 = textField.embedFonts; var v3 = new TextFormat(font); textField.setNewTextFormat(v3); textField.setTextFormat(v3); textField.embedFonts = true; if (textField.textWidth == 0) { textField.embedFonts = v4; textField.setTextFormat(v2); textField.setNewTextFormat(v2); } else { textField.antiAliasType = 'advanced'; textField.sharpness = 120; } } }; v1.VERSION = '3.0.4.2 beta AS2'; v1.RELEASE_MODE = 'releaseMode'; v1.DEBUG_MODE_LOGGED_IN = 'debugModeLoggedIn'; v1.DEBUG_MODE_LOGGED_OUT = 'debugModeLoggedOut'; v1.DEBUG_MODE_NEW_VERSION = 'debugModeNewVersion'; v1.DEBUG_MODE_HOST_BLOCKED = 'debugModeHostBlocked'; v1.TEST_AD_FEED_URL = 'http://www.ngads.com/adtest.php'; v1._dispatcher = new com.newgrounds.APIEventDispatcher(); v1._connection = new com.newgrounds.APIConnection(); v1._debugMode = com.newgrounds.API.DEBUG_MODE_LOGGED_IN; v1._adsApproved = false; v1._medals = new Object(); v1._medalsArray = []; v1._scoreBoards = new Object(); v1._scoreBoardsArray = []; v1._saveGroups = new Object(); v1._saveGroupsArray = []; v1._sharedObjects = new Object(); v1.addProperty('adFeedURL', v1.__get__adFeedURL, function () {}); v1.addProperty('adsApproved', v1.__get__adsApproved, function () {}); v1.addProperty('apiId', v1.__get__apiId, function () {}); v1.addProperty('connected', v1.__get__connected, function () {}); v1.addProperty('debugMode', v1.__get__debugMode, v1.__set__debugMode); v1.addProperty('hasUserSession', v1.__get__hasUserSession, function () {}); v1.addProperty('hostDomain', v1.__get__hostDomain, function () {}); v1.addProperty('hostURL', v1.__get__hostURL, function () {}); v1.addProperty('isNetworkHost', v1.__get__isNetworkHost, function () {}); v1.addProperty('isNewgrounds', v1.__get__isNewgrounds, function () {}); v1.addProperty('medals', v1.__get__medals, function () {}); v1.addProperty('publisherId', v1.__get__publisherId, function () {}); v1.addProperty('saveGroups', v1.__get__saveGroups, function () {}); v1.addProperty('scoreBoards', v1.__get__scoreBoards, function () {}); v1.addProperty('sessionId', v1.__get__sessionId, function () {}); v1.addProperty('userId', v1.__get__userId, function () {}); v1.addProperty('username', v1.__get__username, function () {}); ASSetPropFlags(com.newgrounds.API.prototype, null, 1); } #endinitclip } movieClip 57 __Packages.com.newgrounds.encoders.ImageScanner { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.encoders) { _global.com.newgrounds.encoders = new Object(); } if (!_global.com.newgrounds.encoders.ImageScanner) { var v1 = function (hashLength, charsPerPixel) { if (hashLength) { this._hash = com.newgrounds.encoders.ImageScanner.DEFAULT_HASH.substr(0, hashLength); } this._baseN = new com.newgrounds.encoders.BaseN(this._hash); if (charsPerPixel) { this._charsPerPixel = charsPerPixel; } this.__set__encodeAlpha(false); }; com.newgrounds.encoders.ImageScanner = v1; var v2 = v1.prototype; v2.__get__encodeAlpha = function () { return this._encodeAlpha; }; v2.__set__encodeAlpha = function (v) { this._encodeAlpha = v; this._maxPerChannel = int(Math.pow(this._hash.length, this._charsPerPixel / (this._encodeAlpha ? 4 : 3))); if (this._maxPerChannel > 256) { this._maxPerChannel = 256; } return this.__get__encodeAlpha(); }; v2.encode = function (source, callbackFunction, callbackObject) { var v4 = {'callbackFunction': callbackFunction, 'callbackObject': callbackObject, 'source': source, 'x': 0, 'y': 0, 'output': null}; var v2 = source.width.toString(); var v3 = source.height.toString(); while (v2.length < 3) { v2 = '0' + v2; } while (v3.length < 3) { v3 = '0' + v3; } v4.output = v2 + v3; var v6 = setInterval(this, 'doEncode', com.newgrounds.encoders.ImageScanner.WORK_INTERVAL, v4); v4.interval = v6; }; v2.decode = function (source, callbackFunction, callbackObject) { var v2 = {'callbackFunction': callbackFunction, 'callbackObject': callbackObject, 'source': source, 'i': 6, 'x': 0, 'y': 0, 'output': null}; var v5 = int(source.substr(0, 3)); var v6 = int(source.substr(3, 3)); v2.output = new flash.display.BitmapData(v5, v6, this._encodeAlpha); var v4 = setInterval(this, 'doDecode', com.newgrounds.encoders.ImageScanner.WORK_INTERVAL, v2); v2.interval = v4; }; v2.doEncode = function (state) { var v3 = getTimer(); for (;;) { if (!(state.y < state.source.height && getTimer() - v3 < com.newgrounds.encoders.ImageScanner.WORK_INTERVAL)) break; state.output += this.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); } }; v2.doDecode = function (state) { var v4 = getTimer(); for (;;) { if (!(state.y < state.output.height && getTimer() - v4 < com.newgrounds.encoders.ImageScanner.WORK_INTERVAL)) break; var v3 = this.decodePixel(state.source.substr(state.i, this._charsPerPixel)); state.output.setPixel32(state.x, state.y, v3); state.i += this._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); } }; v2.encodePixel = function (pixel) { var v3 = pixel >> 24 & 255; var v4 = pixel >> 16 & 255; var v5 = pixel >> 8 & 255; var v2 = pixel & 255; v3 = int((v3 / 256) * this._maxPerChannel); v4 = int((v4 / 256) * this._maxPerChannel); v5 = int((v5 / 256) * this._maxPerChannel); v2 = int((v2 / 256) * this._maxPerChannel); var v7 = v4 * this._maxPerChannel * this._maxPerChannel + v5 * this._maxPerChannel + v2; if (this._encodeAlpha) { v7 += v3 * this._maxPerChannel * this._maxPerChannel * this._maxPerChannel; } return this._baseN.encodeUint(v7, this._charsPerPixel); }; v2.decodePixel = function (encodedPixel) { var v3 = 255; var v5; var v6; var v4; var v7 = 0; var v2 = this._baseN.decodeUint(encodedPixel); v4 = v2 % this._maxPerChannel; v2 /= int(this._maxPerChannel); v6 = v2 % this._maxPerChannel; v2 /= int(this._maxPerChannel); v5 = v2 % this._maxPerChannel; v2 /= int(this._maxPerChannel); if (this._encodeAlpha) { v3 = v2 % this._maxPerChannel; v2 /= int(this._maxPerChannel); } return v3 << 24 | v5 << 16 | v6 << 8 | v4; }; v1.DEFAULT_HASH = '0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ<>?:;-_=+()!&'; v2._hash = com.newgrounds.encoders.ImageScanner.DEFAULT_HASH; v2._charsPerPixel = 2; v1.WORK_INTERVAL = 33.33333333333334; v2.addProperty('encodeAlpha', v2.__get__encodeAlpha, v2.__set__encodeAlpha); ASSetPropFlags(com.newgrounds.encoders.ImageScanner.prototype, null, 1); } #endinitclip } movieClip 58 __Packages.com.newgrounds.SaveFile { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.SaveFile) { var v1 = function (group) { super(); this._iconLoader = new com.newgrounds.BitmapLoader(com.newgrounds.SaveFile.DEFAULT_ICON, null); this._group = group; }; com.newgrounds.SaveFile = v1; com.newgrounds.SaveFile extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v1.__get__currentFile = function () { return com.newgrounds.SaveFile._currentFile; }; v1.fromObject = function (group, fileData) { var v4 = new com.newgrounds.SaveFile(group); v4._name = fileData.filename; v4._description = fileData.description; v4._id = fileData.save_id; v4._authorId = fileData.user_id; v4._authorName = fileData.user_name; v4._createdDate = fileData.created; v4._modifiedDate = fileData.last_update; v4._views = fileData.views; if (fileData.thumb && fileData.thumb != '') { v4._iconLoader.__set__url(com.newgrounds.SaveFile._imageFilePath + fileData.thumb); } v4._dataURL = com.newgrounds.SaveFile._saveFilePath + fileData.file; v4._fileSize = fileData.file_size; v4._approved = fileData.status != com.newgrounds.SaveFile.STATUS_UNAPPROVED; v4._readOnly = false; v4._public = fileData.status != com.newgrounds.SaveFile.STATUS_PRIVATE && fileData.status != com.newgrounds.SaveFile.STATUS_UNAPPROVED; for (var v8 in fileData.keys) { var v6 = fileData.keys[v8]; var v2 = group.getKeyById(v6.id); if (v2) { v4._keys[v2.__get__name()] = v2.validateValue(v6.value); } } for (var v9 in fileData.ratings) { var v5 = fileData.ratings[v9]; var v3 = group.getRatingById(v5.id); if (v3) { v4._ratings[v3.__get__name()] = v3.validateValue(v5.score); } } return v4; }; v2.__get__group = function () { return this._group; }; v2.__get__name = function () { return this._name; }; v2.__set__name = function (val) { this._name = val; return this.__get__name(); }; v2.__get__description = function () { return this._description; }; v2.__set__description = function (val) { this._description = val; return this.__get__description(); }; v2.__get__id = function () { return this._id; }; v2.__get__data = function () { return this._data; }; v2.__set__data = function (val) { this._data = val; return this.__get__data(); }; v2.__get__bytesLoaded = function () { if (this._data) { return this.__get__bytesTotal(); } else { if (!this._dataLoader) { return 0; } else { return this._dataLoader.getBytesLoaded(); } } }; v2.__get__bytesTotal = function () { return this._fileSize; }; v2.__get__readOnly = function () { return this._readOnly; }; v2.__get__draft = function () { return this._draft; }; v2.__set__draft = function (v) { this._draft = v; return this.__get__draft(); }; v2.__get__authorId = function () { return this._authorId; }; v2.__get__authorName = function () { return this._authorName; }; v2.__get__keys = function () { return this._keys; }; v2.__get__ratings = function () { return this._ratings; }; v2.__get__views = function () { return this._views; }; v2.__get__createdDate = function () { return this._createdDate; }; v2.__get__updatedDate = function () { return this._modifiedDate; }; v2.toString = function () { return 'Save File: ' + this._name; }; v2.__get__icon = function () { return this._iconLoader.__get__bitmapData(); }; v2.__set__icon = function (v) { this.createIcon(v); return this.__get__icon(); }; v2.__get__iconLoaded = function () { return this._iconLoader.__get__loaded(); }; v2.createIcon = function (source) { var v9 = new flash.display.BitmapData(com.newgrounds.SaveFile.ICON_WIDTH, com.newgrounds.SaveFile.ICON_HEIGHT, false, 0); var v6; var v5; var v10 = 0; var v8 = 0; if (source instanceof flash.display.BitmapData) { v6 = source.width; v5 = source.height; } else { if (source instanceof MovieClip) { v6 = source._width; v5 = source._height; var v7 = (MovieClip(source)).getBounds(source); v10 = v7.xMin; v8 = v7.yMin; } } var v3 = new flash.geom.Matrix(); var v4; v4 = Math.min(com.newgrounds.SaveFile.ICON_WIDTH / v6, com.newgrounds.SaveFile.ICON_HEIGHT / v5); v3.translate(-v10, -v8); v3.scale(v4, v4); v3.translate((com.newgrounds.SaveFile.ICON_WIDTH - v6 * v4) / 2, (com.newgrounds.SaveFile.ICON_HEIGHT - v5 * v4) / 2); v9.draw(source, v3); this._iconLoader.__set__bitmapData(v9); }; v2.attachIcon = function (parent) { if (this._iconLoader) { return this._iconLoader.attachBitmap(parent); } com.newgrounds.Logger.logError('No icon available for this sumbission.'); return null; }; v2.save = function () { if (!(this._group.__get__connection()).__get__hasUserSession()) { com.newgrounds.Logger.logError('The user must be logged-in to save a file.'); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, null, com.newgrounds.APIEvent.ERROR_NOT_LOGGED_IN)); return undefined; } ++com.newgrounds.BitmapLoader._cacheSeed; com.newgrounds.SaveFile._currentFile = this; if (this.__get__iconLoaded()) { com.newgrounds.SaveFile.ICON_IMAGE_SCANNER.encode(this.__get__icon(), this.onIconEncoded, this); } else { this.encodeData(true); } }; v2.onIconEncoded = function (encodedIcon) { this._encodedIcon = encodedIcon; this.encodeData(true); }; v2.doSave = function () { var v4 = new com.newgrounds.APICommand('saveFile'); (v4.__get__secureParameters()).group = this._group.id; (v4.__get__secureParameters()).user_name = (this._group.__get__connection()).username; (v4.__get__secureParameters()).filename = this._name; (v4.__get__secureParameters()).description = this._description; if (this._draft) { (v4.__get__secureParameters()).draft = true; } if (this._id && !this._readOnly) { (v4.__get__secureParameters()).overwrite = 1; (v4.__get__secureParameters()).save_id = this._id; } var v8 = []; for (var v9 in this._keys) { var v2 = this._group.getKey(v9); if (v2) { v8.push({'id': v2.__get__id(), 'value': v2.validateValue(this._keys[v9])}); } else { com.newgrounds.Logger.logError('No key named "' + v9 + '" in save group "' + this._group.__get__name() + '".'); } } (v4.__get__secureParameters()).keys = v8; var v7 = []; for (var v10 in this._ratings) { var v3 = this._group.getRating(v10); if (v3) { v7.push({'id': v3.__get__id(), 'value': v3.validateValue(this._ratings[v10])}); } else { com.newgrounds.Logger.logError('No rating named "' + v10 + '" in save group "' + this._group.__get__name() + '".'); } } (v4.__get__secureParameters()).ratings = v7; if (typeof this._encodedData == 'string') { v4.addFile('file', this._encodedData, 'file'); } else { v4.addFile('file', com.newgrounds.encoders.json.JSON.encode(this._encodedData), 'file'); } if (this.__get__iconLoaded()) { v4.addFile('thumbnail', this._encodedIcon, 'thumbnail'); } v4.addEventListener(com.newgrounds.APIEvent.COMMAND_COMPLETE, {'target': this, 'func': this.onSaveComplete}); (this._group.__get__connection()).sendCommand(v4); }; v2.encodeData = function (encode) { this._encoderQueue = []; this._encoding = encode; if (encode) { this._encodedData = this._data; this.preEncodeObject(this, '_encodedData'); } else { this.preEncodeObject(this, '_data'); } this.encodeObject(); }; v2.preEncodeObject = function (parent, property) { var v3 = parent[property]; var v5; try { if (this._encoding) { v5 = v3 instanceof flash.display.BitmapData; } else { v5 = v3.type == '__bitmap'; } } var v2 = v3; var v8; if (v5) { this._encoderQueue.push({'parent': parent, 'property': property}); } else { if (typeof v3 == 'object' && !v8) { if (this._encoding) { if (v3 instanceof Array) { v2 = []; } else { v2 = {}; } for (var v4 in v3) { v2[v4] = v3[v4]; } parent[property] = v2; } for (v4 in v2) { this.preEncodeObject(v2, v4); } } } }; v2.encodeObject = function () { if (!this._encoderQueue.length) { if (this._encoding) { this.doSave(); } else { this._dataLoaded = true; this.checkLoadComplete(); } return undefined; } var v6 = this._encoderQueue.pop(); var v4 = v6.parent; var v3 = v6.property; var v2 = v4[v3]; var v5; if (this._encoding) { v5 = {'type': '__bitmap', 'width': v2.width, 'height': v2.height, 'transparent': v2.transparent}; v4[v3] = v5; this._encodingParent = v5; this._encodingProperty = 'data'; com.newgrounds.SaveFile.DATA_IMAGE_SCANNER.__set__encodeAlpha(v2.transparent); com.newgrounds.SaveFile.DATA_IMAGE_SCANNER.encode(flash.display.BitmapData(v2), this.encodeBitmapComplete, this); } else { this._encodingParent = v4; this._encodingProperty = v3; com.newgrounds.SaveFile.DATA_IMAGE_SCANNER.__set__encodeAlpha(v2.transparent); com.newgrounds.SaveFile.DATA_IMAGE_SCANNER.decode(String(v2.data), this.encodeBitmapComplete, this); } }; v2.encodeBitmapComplete = function (data) { this._encodingParent[this._encodingProperty] = data; this.encodeObject(); }; v2.load = function () { com.newgrounds.SaveFile._currentFile = this; this._dataLoaded = false; this._data = null; if (!this.__get__iconLoaded()) { this._iconLoader.addEventListener(com.newgrounds.APIEvent.ICON_LOADED, {'target': this, 'func': this.onIconLoaded}); this._iconLoader.load(); } this._dataLoader = new LoadVars(); var file = this; this._dataLoader.onData = function (data) { file.onDataLoaded(data); }; this._dataLoader.load(this._dataURL); }; v2.onIconLoaded = function (event) { if (!event.__get__success() && this._iconLoader.__get__url()) { com.newgrounds.Logger.logWarning('Unable to load the icon for this save file.'); } this._iconLoader.removeEventListener(com.newgrounds.APIEvent.ICON_LOADED, this.onIconLoaded); this.checkLoadComplete(); }; v2.checkLoadComplete = function () { if (this._dataLoaded && this.__get__iconLoaded()) { com.newgrounds.Logger.logMessage('Data loaded.'); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this)); } }; v2.onDataLoaded = function (data) { try { if (data) { if (data.charAt(0) == '{') { this._data = com.newgrounds.encoders.json.JSON.decode(String(data)); } else { this._data = String(data); } this.encodeData(false); } } catch (v0) { if (Error(v0) != null) { var error = Error(v0); com.newgrounds.Logger.logError('Error while loading data:', error); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this, com.newgrounds.APIEvent.ERROR_BAD_FILE)); } else { throw v0; } } }; v2.onDataError = function (error) { com.newgrounds.Logger.logError('Unable to load data:', error); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_LOADED, this, com.newgrounds.APIEvent.ERROR_BAD_FILE)); }; v2.onSaveComplete = function (event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage('File "' + this._name + '" saved!'); if (event.__get__data()) { this._id = (event.__get__data()).save_id; this._dataURL = unescape((event.__get__data()).file_url); } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, this)); } else { com.newgrounds.Logger.logError('Error saving file "' + this._name + '":', event.__get__error()); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.FILE_SAVED, this, event.__get__error())); } }; v2.sendVote = function (ratingName, vote) { var v2 = this._group.getRating(ratingName); if (!v2) { com.newgrounds.Logger.logError('No save rating named "' + ratingName + '" exists for this save group.'); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, {}, com.newgrounds.APIEvent.ERROR_INVALID_ARGUMENT)); return undefined; } vote = v2.validateValue(vote); if (isNaN(vote)) { com.newgrounds.Logger.logError('Invalid vote (' + vote + '). ' + ratingName + ' allows a range of ' + v2.__get__minimum() + '-' + v2.__get__maximum() + '.'); this.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 ' + this._name + '...'); (this._group.__get__connection()).sendSimpleCommand('rateSaveFile', {'target': this, 'func': this.onVoteComplete}, null, {'group': this._group.__get__id(), 'save_id': this._id, 'rating_id': v2.__get__id(), 'vote': vote}); }; v2.onVoteComplete = function (event) { var v2 = event.__get__error(); if ((event.__get__data()).already_voted) { com.newgrounds.Logger.logError('Vote failed. You\'ve already voted on this rating today.'); v2 = com.newgrounds.APIEvent.ERROR_ALREADY_VOTED; } if (v2 == com.newgrounds.APIEvent.ERROR_NONE) { var v3 = this._group.getRatingById((event.__get__data()).rating_id); if (v3) { this._ratings[v3.__get__name()] = v3.validateValue((event.__get__data()).score); } } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.VOTE_COMPLETE, this, v2)); }; v2.clone = function () { var v3 = new com.newgrounds.SaveFile(this._group); v3._data = this._data; v3._description = this._description; v3._draft = this._draft; v3._fileSize = this._fileSize; v3._iconLoader.__set__bitmapData(this._iconLoader.bitmapData); var v2; for (v2 in this._keys) { v3._keys[v2] = this._keys[v2]; } for (v2 in this._ratings) { v3._ratings[v2] = this._ratings[v2]; } v3._name = this._name; return v3; }; v1.ICON_WIDTH = 90; v1.ICON_HEIGHT = 90; v1.DEFAULT_ICON = flash.display.BitmapData.loadBitmap('DefaultSaveIcon'); v1.STATUS_PRIVATE = 0; v1.STATUS_SHARED = 1; v1.STATUS_UNAPPROVED = 2; v1.STATUS_APPROVED = 3; v1._imageFilePath = ''; v1._saveFilePath = ''; v1.ICON_IMAGE_SCANNER = new com.newgrounds.encoders.ImageScanner(); v1.DATA_IMAGE_SCANNER = new com.newgrounds.encoders.ImageScanner(64, 6); v2._keys = new Object(); v2._ratings = new Object(); v2.addProperty('authorId', v2.__get__authorId, function () {}); v2.addProperty('authorName', v2.__get__authorName, function () {}); v2.addProperty('bytesLoaded', v2.__get__bytesLoaded, function () {}); v2.addProperty('bytesTotal', v2.__get__bytesTotal, function () {}); v2.addProperty('createdDate', v2.__get__createdDate, function () {}); v1.addProperty('currentFile', v1.__get__currentFile, function () {}); v2.addProperty('data', v2.__get__data, v2.__set__data); v2.addProperty('description', v2.__get__description, v2.__set__description); v2.addProperty('draft', v2.__get__draft, v2.__set__draft); v2.addProperty('group', v2.__get__group, function () {}); v2.addProperty('icon', v2.__get__icon, v2.__set__icon); v2.addProperty('iconLoaded', v2.__get__iconLoaded, function () {}); v2.addProperty('id', v2.__get__id, function () {}); v2.addProperty('keys', v2.__get__keys, function () {}); v2.addProperty('name', v2.__get__name, v2.__set__name); v2.addProperty('ratings', v2.__get__ratings, function () {}); v2.addProperty('readOnly', v2.__get__readOnly, function () {}); v2.addProperty('updatedDate', v2.__get__updatedDate, function () {}); v2.addProperty('views', v2.__get__views, function () {}); ASSetPropFlags(com.newgrounds.SaveFile.prototype, null, 1); } #endinitclip } movieClip 56 __Packages.com.newgrounds.SaveGroup { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.SaveGroup) { var v1 = function (connection, name, id, type, keys, ratings) { this._connection = connection; this._id = id; this._name = name; this._type = type; this._keysArray = keys; this._ratingsArray = ratings; this._keys = new Object(); this._ratings = new Object(); var v11; for (var v7 in keys) { var v2 = keys[v7]; this._keys[v2.__get__name()] = v2; } for (var v6 in ratings) { var v3 = ratings[v6]; this._ratings[v3.__get__name()] = v3; } }; com.newgrounds.SaveGroup = v1; var v2 = v1.prototype; v2.__get__connection = function () { return this._connection; }; v2.__get__name = function () { return this._name; }; v2.__get__type = function () { return this._type; }; v2.__get__id = function () { return this._id; }; v2.__get__keys = function () { return this._keysArray; }; v2.__get__ratings = function () { return this._ratingsArray; }; v2.getKey = function (name) { return this._keys[name]; }; v2.getRating = function (name) { return this._ratings[name]; }; v2.getKeyById = function (id) { for (var v4 in this._keys) { var v2 = this._keys[v4]; if (v2.__get__id() == id) { return v2; } } return null; }; v2.getRatingById = function (id) { for (var v4 in this._ratings) { var v2 = this._ratings[v4]; if (v2.__get__id() == id) { return v2; } } return null; }; v2.toString = function () { return 'SaveGroup: ' + this.__get__name() + ' Keys: ' + this._keysArray + ' Ratings: ' + this._ratingsArray; }; v1.TYPE_SYSTEM = 0; v1.TYPE_PRIVATE = 1; v1.TYPE_PUBLIC = 2; v1.TYPE_MODERATED = 3; v2.addProperty('connection', v2.__get__connection, function () {}); v2.addProperty('id', v2.__get__id, function () {}); v2.addProperty('keys', v2.__get__keys, function () {}); v2.addProperty('name', v2.__get__name, function () {}); v2.addProperty('ratings', v2.__get__ratings, function () {}); v2.addProperty('type', v2.__get__type, function () {}); ASSetPropFlags(com.newgrounds.SaveGroup.prototype, null, 1); } #endinitclip } movieClip 54 __Packages.com.newgrounds.SaveKey { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.SaveKey) { var v1 = function (name, id, type) { this._name = name; this._id = id; this._type = type; }; com.newgrounds.SaveKey = v1; var v2 = v1.prototype; v2.__get__name = function () { return this._name; }; v2.__get__id = function () { return this._id; }; v2.__get__type = function () { return this._type; }; v2.validateValue = function (value) { switch (this._type) { return null; case com.newgrounds.SaveKey.TYPE_INTEGER: value = Number(value); if (!isNaN(value)) { var v3 = int(value); if (v3 != value) { com.newgrounds.Logger.logWarning('Float value ' + value + ' given for integer key "' + this._name + '". Clamping to ' + v3 + '.'); } return v3; } return null; case com.newgrounds.SaveKey.TYPE_FLOAT: value = Number(value); if (!isNaN(value)) { return isNaN(Number(value)); } return null; case com.newgrounds.SaveKey.TYPE_BOOLEAN: return Boolean(value); return null; case com.newgrounds.SaveKey.TYPE_STRING: return value ? value.toString() : ''; return null; } return null; }; v2.toString = function () { return this._name; }; v1.TYPE_FLOAT = 1; v1.TYPE_INTEGER = 2; v1.TYPE_STRING = 3; v1.TYPE_BOOLEAN = 4; v2.addProperty('id', v2.__get__id, function () {}); v2.addProperty('name', v2.__get__name, function () {}); v2.addProperty('type', v2.__get__type, function () {}); ASSetPropFlags(com.newgrounds.SaveKey.prototype, null, 1); } #endinitclip } movieClip 55 __Packages.com.newgrounds.SaveRating { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.SaveRating) { var v1 = function (name, id, isFloat, minimum, maximum) { this._name = name; this._id = id; this._isFloat = isFloat; this._minimum = minimum; this._maximum = maximum; }; com.newgrounds.SaveRating = v1; var v2 = v1.prototype; v2.__get__name = function () { return this._name; }; v2.__get__id = function () { return this._id; }; v2.__get__isFloat = function () { return this._isFloat; }; v2.__get__minimum = function () { return this._minimum; }; v2.__get__maximum = function () { return this._maximum; }; v2.validateValue = function (value) { var v2 = Number(value); if (isNaN(v2)) { com.newgrounds.Logger.logError('Invalid value for rating "' + this._name + '".'); return NaN; } if (v2 < this._minimum) { com.newgrounds.Logger.logWarning(v2 + ' is out of acceptable range for rating "' + this._name + '". Clamping to ' + this._minimum + '.'); return this._minimum; } if (v2 > this._maximum) { com.newgrounds.Logger.logWarning(v2 + ' is out of acceptable range for rating "' + this._name + '". Clamping to ' + this._maximum + '.'); return this._maximum; } if (!this.__get__isFloat()) { var v3 = int(v2); if (v3 != v2) { com.newgrounds.Logger.logWarning('Float value ' + v2 + ' given for integer rating "' + this._name + '". Clamping to ' + v3 + '.'); } return v3; } return v2; }; v2.toString = function () { return this._name; }; v2.addProperty('id', v2.__get__id, function () {}); v2.addProperty('isFloat', v2.__get__isFloat, function () {}); v2.addProperty('maximum', v2.__get__maximum, function () {}); v2.addProperty('minimum', v2.__get__minimum, function () {}); v2.addProperty('name', v2.__get__name, function () {}); ASSetPropFlags(com.newgrounds.SaveRating.prototype, null, 1); } #endinitclip } movieClip 50 __Packages.com.newgrounds.BitmapLoader { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.BitmapLoader) { var v1 = function (defaultBitmap, url) { super(); this._bitmapData = defaultBitmap; this._url = url; }; com.newgrounds.BitmapLoader = v1; com.newgrounds.BitmapLoader extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v2.__get__url = function () { return this._url; }; v2.__set__url = function (v) { this._loaded = false; this._url = v; return this.__get__url(); }; v2.__get__bitmapData = function () { return this._bitmapData; }; v2.__set__bitmapData = function (v) { this._bitmapData = v; this._loaded = true; return this.__get__bitmapData(); }; v2.__get__loaded = function () { return this._loaded; }; v2.disposeLoader = function () { if (this._loader) { if (this._loaderClip._parent == _root) { this._loader.unloadClip(this._loaderClip.bitmap); this._loaderClip.removeMovieClip(); } this._loader = null; this._loaderClip = null; } }; v2.load = function () { if (!this._url || this._url == '') { this.onLoadComplete(); return undefined; } this._loaded = false; if (this._bitmapData) { this._bitmapData.dispose(); this._bitmapData = null; } this.disposeLoader(); this.attachBitmap(null); }; v2.attachBitmap = function (parent) { if (!parent) { parent = _root; } var v5 = parent.getNextHighestDepth(); var v3 = parent.createEmptyMovieClip('__bitmap' + v5, v5); if (!this._loaded && this._url && this._url != '') { v3.createEmptyMovieClip('bitmap', 0); this._loader = new MovieClipLoader(); this._loaderClip = v3; if (parent == _root) { this._loaderClip._visible = false; } var thisObj = this; this._loaderClip.onEnterFrame = function () { thisObj.pollLoad(); }; this._loader.addListener({'onLoadError': function () { thisObj.onLoadComplete(); }}); this._loader.loadClip(this._url, v3.bitmap); return v3; } v3.attachBitmap(this._bitmapData, 0); return v3; }; v2.pollLoad = function () { if (this._loaderClip._width) { this.onLoadComplete(); } }; v2.onLoadComplete = function () { var v2; if (this._loader && this._loaderClip && this._loaderClip._width) { try { this._loaderClip.onEnterFrame = null; v2 = new flash.display.BitmapData(this._loaderClip._width, this._loaderClip._height, true, 0); v2.draw(this._loaderClip); this._bitmapData = v2; this._loaded = true; } catch (error) { if (v2) { v2.dispose(); } } } this.disposeLoader(); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.ICON_LOADED, this, this._loaded ? null : com.newgrounds.APIEvent.ERROR_BAD_FILE)); }; v1._cacheSeed = 0; v2._loaded = true; v2.addProperty('bitmapData', v2.__get__bitmapData, v2.__set__bitmapData); v2.addProperty('loaded', v2.__get__loaded, function () {}); v2.addProperty('url', v2.__get__url, v2.__set__url); ASSetPropFlags(com.newgrounds.BitmapLoader.prototype, null, 1); } #endinitclip } movieClip 59 __Packages.com.newgrounds.SaveQuery { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.SaveQuery) { var v1 = function (group) { super(); this._group = group; this._connection = group.connection; this.includeAllFields(); }; com.newgrounds.SaveQuery = v1; com.newgrounds.SaveQuery extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v2.__get__group = function () { return this._group; }; v2.__get__resultsPerPage = function () { return this._resultsPerPage; }; v2.__set__resultsPerPage = function (val) { this._resultsPerPage = Math.min(Math.max(val, 1), 100); return this.__get__resultsPerPage(); }; v2.__get__page = function () { return this._page; }; v2.__set__page = function (val) { this._page = Math.max(val, 1); return this.__get__page(); }; v2.prevPage = function () { this.__set__page(this.__get__page() - 1); }; v2.nextPage = function () { this.__set__page(this.__get__page() + 1); }; v2.__get__isRandomized = function () { return this._isRandomized; }; v2.__set__isRandomized = function (val) { this._isRandomized = val; return this.__get__isRandomized(); }; v2.__get__files = function () { return this._files; }; v2.reset = function () { this._page = 1; this._resultsPerPage = 10; this._isRandomized = false; this._lookupKeys = []; this._lookupRatings = []; this._fileConditions = []; this._keyConditions = []; this._ratingConditions = []; this._files = []; this.includeAllFields(); }; v2.clone = function () { var v2 = new com.newgrounds.SaveQuery(this._group); v2._page = this._page; v2._resultsPerPage = this._resultsPerPage; v2._isRandomized = this._isRandomized; v2._lookupKeys = this._lookupKeys.concat(); v2._lookupRatings = this._lookupRatings.concat(); v2._fileConditions = this._fileConditions.concat(); v2._keyConditions = this._keyConditions.concat(); v2._ratingConditions = this._ratingConditions.concat(); return v2; }; v2.includeAllFields = function () { for (var v5 in this._group.__get__keys()) { var v2 = (this._group.__get__keys())[v5]; this._lookupKeys.push(v2.__get__id()); } for (var v4 in this._group.__get__ratings()) { var v3 = (this._group.__get__ratings())[v4]; this._lookupRatings.push(v3.__get__id()); } }; v2.addCondition = function (field, operator, value) { var v2; v2 = 0; while (v2 < com.newgrounds.SaveQuery.FILE_FIELDS.length) { if (com.newgrounds.SaveQuery.FILE_FIELDS[v2] == field) { break; } ++v2; } if (v2 == com.newgrounds.SaveQuery.FILE_FIELDS.length) { v2 = -1; } if (v2 >= 0) { this._fileConditions.push({'field': v2, 'operator': operator, 'value': value}); } else { var v3 = this._group.getKey(field); if (v3) { value = v3.validateValue(value); this._keyConditions.push({'key_id': v3.__get__id(), 'operator': operator, 'value': value}); return undefined; } var v4 = field.split('.'); var v6 = this._group.getRating(v4[0]); if (v6) { value = v6.validateValue(value); this._ratingConditions.push({'rating_id': v6.__get__id(), 'operator': operator, 'value': value, 'column': v4[1] ? v4[1] : 'score'}); return undefined; } com.newgrounds.Logger.logError('The save group "' + this._group.__get__name() + '" does not have a field named "' + field + '".'); } }; v2.sortOn = function (field, sortDescending) { if (sortDescending == undefined) { sortDescending = false; } var v2; v2 = 0; while (v2 < com.newgrounds.SaveQuery.FILE_FIELDS.length) { if (com.newgrounds.SaveQuery.FILE_FIELDS[v2] == field) { break; } ++v2; } if (v2 == com.newgrounds.SaveQuery.FILE_FIELDS.length) { v2 = -1; } if (v2 >= 0) { this._sortFields.push({'table': com.newgrounds.SaveQuery.TABLE_FILES, 'field': v2, 'desc': sortDescending}); } else { var v5 = this._group.getKey(field); if (v5) { this._sortFields.push({'table': com.newgrounds.SaveQuery.TABLE_KEYS, 'field': v5.__get__id(), 'desc': sortDescending}); return undefined; } var v3 = field.split('.'); var v6 = this._group.getRating(v3[0]); if (v6) { this._sortFields.push({'table': com.newgrounds.SaveQuery.TABLE_RATINGS, 'field': v6.__get__id(), 'desc': sortDescending, 'extra': v3[1] ? v3[1] : 'score'}); return undefined; } com.newgrounds.Logger.logError('The save group "' + this._group.__get__name() + '" does not have a field named "' + field + '".'); } }; v2.execute = function () { var v5 = {}; v5.page = this._page; v5.num_results = this._resultsPerPage; if (this._isRandomized) { v5.randomize = 1; } if (this._lookupKeys && this._lookupKeys.length) { v5.lookup_keys = this._lookupKeys; } if (this._lookupRatings && this._lookupRatings.length) { v5.lookup_ratings = this._lookupRatings; } if (this._fileConditions && this._fileConditions.length) { v5.file_conditions = this._fileConditions; } if (this._keyConditions && this._keyConditions.length) { v5.key_conditions = this._keyConditions; } if (this._ratingConditions && this._ratingConditions.length) { v5.rating_conditions = this._ratingConditions; } if (this._sortFields && this._sortFields.length) { v5.sort_conditions = this._sortFields; } this._connection.sendSimpleCommand('lookupSaveFiles', {'target': this, 'func': this.onQueryComplete}, {'publisher_id': this._connection.publisherId, 'group_id': this._group.__get__id(), 'query': v5}); }; v2.onQueryComplete = function (event) { if (event.__get__success()) { var v4 = event.__get__data(); this._files = []; if (v4.files) { var v2 = 0; while (v2 < v4.files.length) { var v3 = com.newgrounds.SaveFile.fromObject(this._group, v4.files[v2]); if (v3) { this._files.push(v3); } ++v2; } } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.QUERY_COMPLETE, this)); } else { com.newgrounds.Logger.logError('Query failed: ' + event.__get__error()); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.QUERY_COMPLETE, this, event.__get__error())); } }; v1.FILE_ID = 'fileId'; v1.AUTHOR_ID = 'authorId'; v1.AUTHOR_NAME = 'authorName'; v1.FILE_NAME = 'fileName'; v1.CREATED_ON = 'createdOn'; v1.UPDATED_ON = 'updatedOn'; v1.FILE_VIEWS = 'fileViews'; v1.FILE_STATUS = 'fileStatus'; v1.FILE_FIELDS = [com.newgrounds.SaveQuery.FILE_ID, com.newgrounds.SaveQuery.AUTHOR_ID, com.newgrounds.SaveQuery.AUTHOR_NAME, com.newgrounds.SaveQuery.FILE_NAME, com.newgrounds.SaveQuery.CREATED_ON, com.newgrounds.SaveQuery.UPDATED_ON, com.newgrounds.SaveQuery.FILE_VIEWS, com.newgrounds.SaveQuery.FILE_STATUS]; v1.OPERATOR_EQUAL = '='; v1.OPERATOR_LESS_THAN = '<'; v1.OPERATOR_GREATER_THAN = '>'; v1.OPERATOR_NOT_EQUAL = '!='; v1.OPERATOR_LESS_OR_EQUAL = '<='; v1.OPERATOR_GREATER_OR_EQUAL = '>='; v1.OPERATOR_CONTAINS = '*'; v1.OPERATOR_NOT_CONTAINS = '!*'; v1.OPERATOR_NOT_BEGINS_WITH = '!*='; v1.OPERATOR_NOT_ENDS_WITH = '!=*'; v1.OPERATOR_BEGINS_WITH = '*='; v1.OPERATOR_ENDS_WITH = '=*'; v1.TABLE_FILES = 1; v1.TABLE_KEYS = 2; v1.TABLE_RATINGS = 3; v2._page = 1; v2._resultsPerPage = 10; v2._isRandomized = false; v2._files = []; v2._lookupKeys = []; v2._lookupRatings = []; v2._fileConditions = []; v2._keyConditions = []; v2._ratingConditions = []; v2._sortFields = []; v2.addProperty('files', v2.__get__files, function () {}); v2.addProperty('group', v2.__get__group, function () {}); v2.addProperty('isRandomized', v2.__get__isRandomized, v2.__set__isRandomized); v2.addProperty('page', v2.__get__page, v2.__set__page); v2.addProperty('resultsPerPage', v2.__get__resultsPerPage, v2.__set__resultsPerPage); ASSetPropFlags(com.newgrounds.SaveQuery.prototype, null, 1); } #endinitclip } movieClip 51 __Packages.com.newgrounds.Medal { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.Medal) { var v1 = function (connection, id, name, unlocked, value, difficultyId, iconURL) { super(); this._connection = connection; this._id = id; this._name = name; this._unlocked = unlocked; this._value = value; this._difficulty = com.newgrounds.Medal.DIFFICULTIES[difficultyId]; this._iconLoader = new com.newgrounds.BitmapLoader(com.newgrounds.Medal.DEFAULT_ICON, iconURL); this._iconLoader.load(); }; com.newgrounds.Medal = v1; com.newgrounds.Medal extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v2.__get__difficulty = function () { return this._difficulty; }; v2.__get__icon = function () { return this._iconLoader.__get__bitmapData(); }; v2.__get__id = function () { return this._id; }; v2.__get__name = function () { return this._name; }; v2.__get__unlocked = function () { return this._unlocked; }; v2.__get__value = function () { return this._value; }; v2.toString = function () { if (!this._unlocked) { return 'Medal: ' + this._name + '\t\t(' + 'locked, ' + this._value + 'pts, ' + this._difficulty + ')'; } return 'Medal: ' + this._name + '\t\t(' + 'unlocked, ' + this._value + 'pts, ' + this._difficulty + ')'; }; v2.attachIcon = function (parent) { return this._iconLoader.attachBitmap(parent); }; v2.unlock = function () { if (!this._connection.debug && this._unlocked) { com.newgrounds.Logger.logWarning('Medal "' + this._name + '" is already unlocked.'); return undefined; } com.newgrounds.Logger.logMessage('Unlocking medal "' + this.__get__name() + '"...'); this._unlocked = true; this._connection.sendSimpleCommand('unlockMedal', {'target': this, 'func': this.onUnlockConfirmed}, null, {'medal_id': this.__get__id()}); this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.MEDAL_UNLOCKED, this)); }; v2.onUnlockConfirmed = function (event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage('Medal "' + this.__get__name() + '" unlocked.'); } else { com.newgrounds.Logger.logError('Failed to unlock "' + this.__get__name() + '"!'); } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.MEDAL_UNLOCK_CONFIRMED, this, event.__get__error())); }; v1.ICON_WIDTH = 50; v1.ICON_HEIGHT = 50; v1.DEFAULT_ICON = flash.display.BitmapData.loadBitmap('DefaultMedalIcon'); v1.DIFFICULTY_EASY = 'Easy'; v1.DIFFICULTY_MODERATE = 'Moderate'; v1.DIFFICULTY_CHALLENGING = 'Challenging'; v1.DIFFICULTY_DIFFICULT = 'Difficult'; v1.DIFFICULTY_BRUTAL = 'Brutal'; v1.DIFFICULTIES = ['Unknown', com.newgrounds.Medal.DIFFICULTY_EASY, com.newgrounds.Medal.DIFFICULTY_MODERATE, com.newgrounds.Medal.DIFFICULTY_CHALLENGING, com.newgrounds.Medal.DIFFICULTY_DIFFICULT, com.newgrounds.Medal.DIFFICULTY_BRUTAL]; v2.addProperty('difficulty', v2.__get__difficulty, function () {}); v2.addProperty('icon', v2.__get__icon, function () {}); v2.addProperty('id', v2.__get__id, function () {}); v2.addProperty('name', v2.__get__name, function () {}); v2.addProperty('unlocked', v2.__get__unlocked, function () {}); v2.addProperty('value', v2.__get__value, function () {}); ASSetPropFlags(com.newgrounds.Medal.prototype, null, 1); } #endinitclip } movieClip 53 __Packages.com.newgrounds.ScoreBoard { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.ScoreBoard) { var v1 = function (connection, name, id) { super(); this._connection = connection; this._name = name; this._id = id; }; com.newgrounds.ScoreBoard = v1; com.newgrounds.ScoreBoard extends com.newgrounds.APIEventDispatcher; var v2 = v1.prototype; v2.__get__name = function () { return this._name; }; v2.__get__scores = function () { return this._scores; }; v2.__get__period = function () { return this._period; }; v2.__set__period = function (val) { this._period = val; return this.__get__period(); }; v2.__get__firstResult = function () { return this._firstResult; }; v2.__set__firstResult = function (val) { this._firstResult = Math.max(1, val); return this.__get__firstResult(); }; v2.__get__numResults = function () { return this._numResults; }; v2.__set__numResults = function (val) { this._numResults = val; return this.__get__numResults(); }; v2.__get__tag = function () { return this._tag; }; v2.__set__tag = function (val) { this._tag = val; return this.__get__tag(); }; v2.__get__page = function () { return Math.ceil((this._firstResult - 1) / this._numResults) + 1; }; v2.prevPage = function () { if (this.__get__firstResult() > this._numResults) { this.firstResult -= this._numResults; } }; v2.nextPage = function () { this.firstResult += this._numResults; }; v2.loadScores = function () { this._connection.sendSimpleCommand('loadScores', {'target': this, 'func': this.onScoresLoaded}, {'publisher_id': this._connection.publisherId, 'board': this._id, 'page': (this._firstResult - 1) / this._numResults + 1, 'num_results': this._numResults, 'period': this._period, 'tag': this._tag}); }; v2.postScore = function (numericScore, tag) { if (tag == undefined) { tag = null; } if (isNaN(numericScore)) { com.newgrounds.Logger.logError('Cannot post invalid score: ' + numericScore); this.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 ' + this._connection.username + ' to scoreboard "' + this._name + '"...'); this._connection.sendSimpleCommand('postScore', {'target': this, 'func': this.onScorePosted}, null, {'user_name': this._connection.username, 'board': this._id, 'value': numericScore, 'tag': tag}); }; v2.onScoresLoaded = function (event) { var v4 = event.__get__data(); this._scores = []; var v5; if (v4.first_result) { v5 = v4.first_result; } else { v5 = this._firstResult; } if (v4.scores) { var v3 = 0; while (v3 < v4.scores.length) { var v2 = v4.scores[v3]; if (v2) { this._scores[v3] = new com.newgrounds.Score(v5, v2.username, v2.value, v2.numeric_value, v2.tag); } v3++; v5++; } } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.SCORES_LOADED, this)); }; v2.onScorePosted = function (event) { if (event.__get__success()) { com.newgrounds.Logger.logMessage('Score posted!'); var v4 = event.__get__data(); var v2 = {}; v2.score = v4.value; v2.scoreBoard = this; } else { com.newgrounds.Logger.logError('Error posting score: ' + event.__get__error()); } this.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.SCORE_POSTED, storedv2, event.__get__error())); }; v2.toString = function () { return 'Scoreboard: ' + this._name; }; v1.TODAY = 'Today'; v1.THIS_WEEK = 'This Week'; v1.THIS_MONTH = 'This Month'; v1.THIS_YEAR = 'This Year'; v1.ALL_TIME = 'All-Time'; v2._period = com.newgrounds.ScoreBoard.ALL_TIME; v2._firstResult = 1; v2._numResults = 10; v2.addProperty('firstResult', v2.__get__firstResult, v2.__set__firstResult); v2.addProperty('name', v2.__get__name, function () {}); v2.addProperty('numResults', v2.__get__numResults, v2.__set__numResults); v2.addProperty('page', v2.__get__page, function () {}); v2.addProperty('period', v2.__get__period, v2.__set__period); v2.addProperty('scores', v2.__get__scores, function () {}); v2.addProperty('tag', v2.__get__tag, v2.__set__tag); ASSetPropFlags(com.newgrounds.ScoreBoard.prototype, null, 1); } #endinitclip } movieClip 42 __Packages.com.newgrounds.Logger { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.Logger) { var v1 = function () {}; com.newgrounds.Logger = v1; var v2 = v1.prototype; v1.logInternal = function () { var v2 = arguments; com.newgrounds.Logger.log(com.newgrounds.Logger.PRIORITY_INTERNAL, v2); }; v1.logMessage = function () { var v2 = arguments; com.newgrounds.Logger.log(com.newgrounds.Logger.PRIORITY_MESSAGE, v2); }; v1.logWarning = function () { var v2 = arguments; com.newgrounds.Logger.log(com.newgrounds.Logger.PRIORITY_WARNING, v2); }; v1.logError = function () { var v2 = arguments; com.newgrounds.Logger.log(com.newgrounds.Logger.PRIORITY_ERROR, v2); }; v1.log = function (priority, messages) { if (priority == undefined) { priority = com.newgrounds.Logger.PRIORITY_MESSAGE; } if (messages == undefined) { messages = null; } if (priority >= com.newgrounds.Logger._messageLevel) { var v1 = 0; while (v1 < messages.length) { trace(com.newgrounds.Logger.HEADER + messages[v1]); com.newgrounds.Logger._eventDispatcher.dispatchEvent(new com.newgrounds.APIEvent(com.newgrounds.APIEvent.LOG, messages[v1])); ++v1; } } if (priority >= com.newgrounds.Logger._throwLevel) { throw new Error(messages.join('\n')); } }; v1.addEventListener = function (event, listener) { com.newgrounds.Logger._eventDispatcher.addEventListener(event, listener, false, 0, false); }; v1.PRIORITY_INTERNAL = 0; v1.PRIORITY_MESSAGE = 1; v1.PRIORITY_WARNING = 2; v1.PRIORITY_ERROR = 3; v1.PRIORITY_MAX = 4; v1.HEADER = '[Newgrounds API] :: '; v1._eventDispatcher = new com.newgrounds.EventDispatcher(); v1._messageLevel = com.newgrounds.Logger.PRIORITY_MESSAGE; v1._throwLevel = com.newgrounds.Logger.PRIORITY_MAX; ASSetPropFlags(com.newgrounds.Logger.prototype, null, 1); } #endinitclip } movieClip 61 __Packages.com.newgrounds.components.FlashAdBase { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.components) { _global.com.newgrounds.components = new Object(); } if (!_global.com.newgrounds.components.FlashAdBase) { var v1 = function () { super(); try { System.security.allowDomain('server.cpmstar.com'); System.security.allowInsecureDomain('server.cpmstar.com'); } this._x = int(this._x); this._y = int(this._y); this.stop(); if (this.__get___newgroundsButton()) { (this.__get___newgroundsButton()).onRelease = this.onNGClick; } this.onUnload = this.removeAd; var v4 = this; this._adListener = {'onLoadError': function (target, error, httpStatus) { target._parent.onAdError(target, error, httpStatus); }}; if (com.newgrounds.API.__get__adFeedURL()) { this.loadAdFeed(); } else { com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.API_CONNECTED, {'target': this, 'func': this.loadAdFeed}); } }; com.newgrounds.components.FlashAdBase = v1; com.newgrounds.components.FlashAdBase extends MovieClip; var v2 = v1.prototype; v2.__get___adContainer = function () { return this.adContainer; }; v2.__get___newgroundsButton = function () { return this.newgroundsButton; }; v2.__get__showBorder = function () { return this._showBorder; }; v2.__set__showBorder = function (value) { this._showBorder = value; if (this._showBorder) { if (this._ad) { var v2 = this._ad.getProgress(this.__get___adContainer()); if (v2.bytesLoaded >= v2.bytesTotal) { this.gotoAndStop('loaded'); } else { this.gotoAndStop('loading'); } } else { this.gotoAndStop('idle'); } } else { this.gotoAndStop('noBorder'); } return this.__get__showBorder(); }; v2.loadAdFeed = function (event) { if (event == undefined) { event = null; } this._adFeedLoader = new LoadVars(); var target = this; this._adFeedLoader.onData = function (data) { target.onAdFeedLoaded(data); }; this._adFeedLoader.load(com.newgrounds.API.__get__adFeedURL(), this._adFeedLoader); }; v2.onAdFeedLoaded = function (data) { if (data && data != '') { this.loadAd(data); } else { this.onAdError(); } }; v2.loadAd = function (adURL) { this._ad = new MovieClipLoader(); this._ad.addListener(this._adListener); (this.__get___adContainer())._lockroot = true; this._ad.loadClip(adURL, this.__get___adContainer()); }; v2.removeAd = function () { this._adFeedLoader.onData = null; this._adFeedLoader = null; this._ad.removeListener(this._adListener); if (this.__get___adContainer()) { this._ad.unloadClip(this.__get___adContainer()); } this._ad = null; }; v2.onAdError = function (target, error, httpStatus) { com.newgrounds.Logger.logError('Unable to load ad.'); this.removeAd(); }; v2.onNGClick = function () { com.newgrounds.API.loadNewgrounds(); }; v2.addProperty('_adContainer', v2.__get___adContainer, function () {}); v2.addProperty('_newgroundsButton', v2.__get___newgroundsButton, function () {}); v2.addProperty('showBorder', v2.__get__showBorder, v2.__set__showBorder); ASSetPropFlags(com.newgrounds.components.FlashAdBase.prototype, null, 1); } #endinitclip } movieClip 52 __Packages.com.newgrounds.Score { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.Score) { var v1 = function (rank, username, score, numericValue, tag) { this._rank = rank; this._username = username; this._score = score; this._numericValue = numericValue; this._tag = tag; }; com.newgrounds.Score = v1; var v2 = v1.prototype; v2.__get__numericValue = function () { return this._numericValue; }; v2.__get__rank = function () { return this._rank; }; v2.__get__score = function () { return this._score; }; v2.__get__tag = function () { return this._tag; }; v2.__get__username = function () { return this._username; }; v2.toString = function () { return this._rank + '.\t' + this._username + '\t' + this._score; }; v2.addProperty('numericValue', v2.__get__numericValue, function () {}); v2.addProperty('rank', v2.__get__rank, function () {}); v2.addProperty('score', v2.__get__score, function () {}); v2.addProperty('tag', v2.__get__tag, function () {}); v2.addProperty('username', v2.__get__username, function () {}); ASSetPropFlags(com.newgrounds.Score.prototype, null, 1); } #endinitclip } movieClip 33 __Packages.com.newgrounds.shims.APIShim { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.shims) { _global.com.newgrounds.shims = new Object(); } if (!_global.com.newgrounds.shims.APIShim) { var v1 = function () { super(); }; com.newgrounds.shims.APIShim = v1; com.newgrounds.shims.APIShim extends MovieClip; var v2 = v1.prototype; ASSetPropFlags(com.newgrounds.shims.APIShim.prototype, null, 1); } #endinitclip } movieClip 46 __Packages.com.newgrounds.crypto.MD5 { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.crypto) { _global.com.newgrounds.crypto = new Object(); } if (!_global.com.newgrounds.crypto.MD5) { var v1 = function () {}; com.newgrounds.crypto.MD5 = v1; var v2 = v1.prototype; v1.hash = function (src) { return com.newgrounds.crypto.MD5.hex_md5(src); }; v1.hex_md5 = function (src) { return com.newgrounds.crypto.MD5.binl2hex(com.newgrounds.crypto.MD5.core_md5(com.newgrounds.crypto.MD5.str2binl(src), src.length * 8)); }; v1.core_md5 = function (x, len) { x[len >> 5] |= 128 << len % 32; x[(len + 64 >>> 9 << 4) + 14] = len; var v4 = 1732584193; var v3 = -271733879; var v2 = -1732584194; var v1 = 271733878; var v5 = 0; while (v5 < x.length) { var v10 = v4; var v9 = v3; var v8 = v2; var v7 = v1; v4 = com.newgrounds.crypto.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 0], 7, -680876936); v1 = com.newgrounds.crypto.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 1], 12, -389564586); v2 = com.newgrounds.crypto.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 2], 17, 606105819); v3 = com.newgrounds.crypto.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 3], 22, -1044525330); v4 = com.newgrounds.crypto.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 4], 7, -176418897); v1 = com.newgrounds.crypto.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 5], 12, 1200080426); v2 = com.newgrounds.crypto.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 6], 17, -1473231341); v3 = com.newgrounds.crypto.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 7], 22, -45705983); v4 = com.newgrounds.crypto.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 8], 7, 1770035416); v1 = com.newgrounds.crypto.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 9], 12, -1958414417); v2 = com.newgrounds.crypto.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 10], 17, -42063); v3 = com.newgrounds.crypto.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 11], 22, -1990404162); v4 = com.newgrounds.crypto.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 12], 7, 1804603682); v1 = com.newgrounds.crypto.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 13], 12, -40341101); v2 = com.newgrounds.crypto.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 14], 17, -1502002290); v3 = com.newgrounds.crypto.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 15], 22, 1236535329); v4 = com.newgrounds.crypto.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 1], 5, -165796510); v1 = com.newgrounds.crypto.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 6], 9, -1069501632); v2 = com.newgrounds.crypto.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 11], 14, 643717713); v3 = com.newgrounds.crypto.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 0], 20, -373897302); v4 = com.newgrounds.crypto.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 5], 5, -701558691); v1 = com.newgrounds.crypto.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 10], 9, 38016083); v2 = com.newgrounds.crypto.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 15], 14, -660478335); v3 = com.newgrounds.crypto.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 4], 20, -405537848); v4 = com.newgrounds.crypto.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 9], 5, 568446438); v1 = com.newgrounds.crypto.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 14], 9, -1019803690); v2 = com.newgrounds.crypto.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 3], 14, -187363961); v3 = com.newgrounds.crypto.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 8], 20, 1163531501); v4 = com.newgrounds.crypto.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 13], 5, -1444681467); v1 = com.newgrounds.crypto.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 2], 9, -51403784); v2 = com.newgrounds.crypto.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 7], 14, 1735328473); v3 = com.newgrounds.crypto.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 12], 20, -1926607734); v4 = com.newgrounds.crypto.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 5], 4, -378558); v1 = com.newgrounds.crypto.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 8], 11, -2022574463); v2 = com.newgrounds.crypto.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 11], 16, 1839030562); v3 = com.newgrounds.crypto.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 14], 23, -35309556); v4 = com.newgrounds.crypto.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 1], 4, -1530992060); v1 = com.newgrounds.crypto.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 4], 11, 1272893353); v2 = com.newgrounds.crypto.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 7], 16, -155497632); v3 = com.newgrounds.crypto.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 10], 23, -1094730640); v4 = com.newgrounds.crypto.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 13], 4, 681279174); v1 = com.newgrounds.crypto.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 0], 11, -358537222); v2 = com.newgrounds.crypto.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 3], 16, -722521979); v3 = com.newgrounds.crypto.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 6], 23, 76029189); v4 = com.newgrounds.crypto.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 9], 4, -640364487); v1 = com.newgrounds.crypto.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 12], 11, -421815835); v2 = com.newgrounds.crypto.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 15], 16, 530742520); v3 = com.newgrounds.crypto.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 2], 23, -995338651); v4 = com.newgrounds.crypto.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 0], 6, -198630844); v1 = com.newgrounds.crypto.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 7], 10, 1126891415); v2 = com.newgrounds.crypto.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 14], 15, -1416354905); v3 = com.newgrounds.crypto.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 5], 21, -57434055); v4 = com.newgrounds.crypto.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 12], 6, 1700485571); v1 = com.newgrounds.crypto.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 3], 10, -1894986606); v2 = com.newgrounds.crypto.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 10], 15, -1051523); v3 = com.newgrounds.crypto.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 1], 21, -2054922799); v4 = com.newgrounds.crypto.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 8], 6, 1873313359); v1 = com.newgrounds.crypto.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 15], 10, -30611744); v2 = com.newgrounds.crypto.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 6], 15, -1560198380); v3 = com.newgrounds.crypto.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 13], 21, 1309151649); v4 = com.newgrounds.crypto.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 4], 6, -145523070); v1 = com.newgrounds.crypto.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 11], 10, -1120210379); v2 = com.newgrounds.crypto.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 2], 15, 718787259); v3 = com.newgrounds.crypto.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 9], 21, -343485551); v4 = com.newgrounds.crypto.MD5.safe_add(v4, v10); v3 = com.newgrounds.crypto.MD5.safe_add(v3, v9); v2 = com.newgrounds.crypto.MD5.safe_add(v2, v8); v1 = com.newgrounds.crypto.MD5.safe_add(v1, v7); v5 += 16; } return new Array(v4, v3, v2, v1); }; v1.md5_cmn = function (q, a, b, x, s, t) { return com.newgrounds.crypto.MD5.safe_add(com.newgrounds.crypto.MD5.bit_rol(com.newgrounds.crypto.MD5.safe_add(com.newgrounds.crypto.MD5.safe_add(a, q), com.newgrounds.crypto.MD5.safe_add(x, t)), s), b); }; v1.md5_ff = function (a, b, c, d, x, s, t) { return com.newgrounds.crypto.MD5.md5_cmn(b & c | ~b & d, a, b, x, s, t); }; v1.md5_gg = function (a, b, c, d, x, s, t) { return com.newgrounds.crypto.MD5.md5_cmn(b & d | c & ~d, a, b, x, s, t); }; v1.md5_hh = function (a, b, c, d, x, s, t) { return com.newgrounds.crypto.MD5.md5_cmn(b ^ c ^ d, a, b, x, s, t); }; v1.md5_ii = function (a, b, c, d, x, s, t) { return com.newgrounds.crypto.MD5.md5_cmn(c ^ (b | ~d), a, b, x, s, t); }; v1.bit_rol = function (num, cnt) { return num << cnt | num >>> 32 - cnt; }; v1.safe_add = function (x, y) { var v1 = (x & 65535) + (y & 65535); var v2 = (x >> 16) + (y >> 16) + (v1 >> 16); return v2 << 16 | v1 & 65535; }; v1.str2binl = function (str) { var v3 = new Array(); var v4 = 255; var v1 = 0; while (v1 < str.length * 8) { v3[v1 >> 5] |= (str.charCodeAt(v1 / 8) & v4) << v1 % 32; v1 += 8; } return v3; }; v1.binl2hex = function (binarray) { var v4 = new String(''); var v3 = new String('0123456789abcdef'); var v1 = 0; while (v1 < binarray.length * 4) { v4 += v3.charAt(binarray[v1 >> 2] >> (v1 % 4) * 8 + 4 & 15) + v3.charAt(binarray[v1 >> 2] >> (v1 % 4) * 8 & 15); ++v1; } return v4; }; ASSetPropFlags(com.newgrounds.crypto.MD5.prototype, null, 1); } #endinitclip } movieClip 47 __Packages.com.newgrounds.crypto.RC4 { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.crypto) { _global.com.newgrounds.crypto = new Object(); } if (!_global.com.newgrounds.crypto.RC4) { var v1 = function () {}; com.newgrounds.crypto.RC4 = v1; var v2 = v1.prototype; v1.encrypt = function (src, key) { var v3 = com.newgrounds.crypto.RC4.strToChars(src); var v1 = com.newgrounds.crypto.RC4.strToChars(key); var v2 = com.newgrounds.crypto.RC4.calculate(v3, v1); return com.newgrounds.crypto.RC4.charsToHex(v2); }; v1.encryptbin = function (src, key) { var v3 = com.newgrounds.crypto.RC4.strToChars(src); var v1 = com.newgrounds.crypto.RC4.strToChars(key); var v2 = com.newgrounds.crypto.RC4.calculate(v3, v1); return v2; }; v1.decrypt = function (src, key) { var v3 = com.newgrounds.crypto.RC4.hexToChars(src); var v1 = com.newgrounds.crypto.RC4.strToChars(key); var v2 = com.newgrounds.crypto.RC4.calculate(v3, v1); return com.newgrounds.crypto.RC4.charsToStr(v2); }; v1.initialize = function (pwd) { var v2 = 0; var v3; var v4 = pwd.length; var v1 = 0; while (v1 <= 255) { com.newgrounds.crypto.RC4.mykey[v1] = pwd[v1 % v4]; com.newgrounds.crypto.RC4.sbox[v1] = v1; ++v1; } v1 = 0; while (v1 <= 255) { v2 = (v2 + com.newgrounds.crypto.RC4.sbox[v1] + com.newgrounds.crypto.RC4.mykey[v1]) % 256; v3 = com.newgrounds.crypto.RC4.sbox[v1]; com.newgrounds.crypto.RC4.sbox[v1] = com.newgrounds.crypto.RC4.sbox[v2]; com.newgrounds.crypto.RC4.sbox[v2] = v3; ++v1; } }; v1.calculate = function (plaintxt, psw) { com.newgrounds.crypto.RC4.initialize(psw); var v1 = 0; var v2 = 0; var v9 = new Array(); var v7; var v5; var v6; var v3 = 0; while (v3 < plaintxt.length) { v1 = (v1 + 1) % 256; v2 = (v2 + com.newgrounds.crypto.RC4.sbox[v1]) % 256; v5 = com.newgrounds.crypto.RC4.sbox[v1]; com.newgrounds.crypto.RC4.sbox[v1] = com.newgrounds.crypto.RC4.sbox[v2]; com.newgrounds.crypto.RC4.sbox[v2] = v5; var v4 = (com.newgrounds.crypto.RC4.sbox[v1] + com.newgrounds.crypto.RC4.sbox[v2]) % 256; v7 = com.newgrounds.crypto.RC4.sbox[v4]; v6 = plaintxt[v3] ^ v7; v9.push(v6); ++v3; } return v9; }; v1.charsToHex = function (chars) { var v4 = new String(''); var v3 = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'); var v1 = 0; while (v1 < chars.length) { v4 += v3[chars[v1] >> 4] + v3[chars[v1] & 15]; ++v1; } return v4; }; v1.hexToChars = function (hex) { var v3 = new Array(); var v1 = (hex.substr(0, 2) == '0x') ? 2 : 0; while (v1 < hex.length) { v3.push(parseInt(hex.substr(v1, 2), 16)); v1 += 2; } return v3; }; v1.charsToStr = function (chars) { var v3 = new String(''); var v1 = 0; while (v1 < chars.length) { v3 += String.fromCharCode(chars[v1]); ++v1; } return v3; }; v1.strToChars = function (str) { var v3 = new Array(); var v1 = 0; while (v1 < str.length) { v3.push(str.charCodeAt(v1)); ++v1; } return v3; }; v1.sbox = new Array(255); v1.mykey = new Array(255); ASSetPropFlags(com.newgrounds.crypto.RC4.prototype, null, 1); } #endinitclip } movieClip 48 __Packages.com.newgrounds.encoders.json.JSON { #initclip if (!_global.com) { _global.com = new Object(); } if (!_global.com.newgrounds) { _global.com.newgrounds = new Object(); } if (!_global.com.newgrounds.encoders) { _global.com.newgrounds.encoders = new Object(); } if (!_global.com.newgrounds.encoders.json) { _global.com.newgrounds.encoders.json = new Object(); } if (!_global.com.newgrounds.encoders.json.JSON) { var v1 = function () {}; com.newgrounds.encoders.json.JSON = v1; var v2 = v1.prototype; v1.encode = function (arg, noquotes) { var v3; var v2; var v6; var v1 = ''; var v4; if (arg.isSServerVar()) { var v8 = 'sservervariable'; } else { var v8 = typeof arg; } switch (v8) { return 'null'; case 'sservervariable': return '?' + arg.getEncodedValue(); break; case 'object': if (arg) { if (arg instanceof Array) { v2 = 0; while (v2 < arg.length) { v4 = com.newgrounds.encoders.json.JSON.encode(arg[v2]); if (v1) { v1 += ','; } v1 += v4; ++v2; } return '[' + v1 + ']'; } else { if (typeof arg.toString != 'undefined') { for (v2 in arg) { v4 = arg[v2]; if (typeof v4 != 'undefined' && typeof v4 != 'function') { v4 = com.newgrounds.encoders.json.JSON.encode(v4); if (v1) { v1 += ','; } v1 += com.newgrounds.encoders.json.JSON.encode(v2) + ':' + v4; } } return '{' + v1 + '}'; } } } return 'null'; case 'number': return isFinite(arg) ? String(arg) : 'null'; case 'string': v6 = arg.length; if (noquotes) { var v7 = ''; } else { var v7 = '"'; } v1 = v7; v2 = 0; while (v2 < v6) { v3 = arg.charAt(v2); if (v3 >= ' ') { if (v3 == '\\' || v3 == '"') { v1 += '\\'; } v1 += v3; } else { switch (v3) { case '\b': v1 += '\\b'; break; case '\f': v1 += '\\f'; break; case '\n': v1 += '\\n'; break; case '\r': v1 += '\\r'; break; case '\t': v1 += '\\t'; break; default: v3 = v3.charCodeAt(); v1 += '\\u00' + (Math.floor(v3 / 16)).toString(16) + (v3 % 16).toString(16); } } v2 += 1; } return v1 + v7; case 'boolean': return String(arg); default: return 'null'; } }; v1.background_encode = function (arg, callback) { if (com.newgrounds.encoders.json.JSON.busy) { trace('[Newgrounds Encoder] :: Cannot encode a new file until the previous file is completed'); return false; } else { if (!callback) { trace('[Newgrounds Encoder] :: Missing a callback function, skipping encode'); return false; } } com.newgrounds.encoders.json.JSON.busy = true; var v2 = new Date(); com.newgrounds.encoders.json.JSON.start = v2.getTime(); com.newgrounds.encoders.json.JSON.cache = {'busy': false, 'complete': false, 'arg': arg, 'target': arg, 'parents': [], 'encoded': '', 'callback': callback, 'encode_chunk': function () { com.newgrounds.encoders.json.JSON.encode_chunk(); }}; if (com.newgrounds.encoders.json.JSON.getType(arg) == 'object') { com.newgrounds.encoders.json.JSON.cache.encoded = '{'; com.newgrounds.encoders.json.JSON.interval = setInterval(com.newgrounds.encoders.json.JSON.cache, 'encode_chunk', 25); return true; } if (com.newgrounds.encoders.json.JSON.getType(arg) == 'array') { com.newgrounds.encoders.json.JSON.cache.encoded = '['; } com.newgrounds.encoders.json.JSON.interval = setInterval(com.newgrounds.encoders.json.JSON.cache, 'encode_chunk', 25); return true; }; v1.background_decode = function (arg, callback) { if (com.newgrounds.encoders.json.JSON.busy) { trace('[Newgrounds Encoder] :: Cannot decode a new file until the previous file is completed'); return false; } else { if (!callback) { trace('[Newgrounds Encoder] :: Missing a callback function, skipping decode'); return false; } } com.newgrounds.encoders.json.JSON.busy = true; var v1 = new Date(); com.newgrounds.encoders.json.JSON.start = v1.getTime(); com.newgrounds.encoders.json.JSON.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(); }}; com.newgrounds.encoders.json.JSON.interval = setInterval(com.newgrounds.encoders.json.JSON.cache, 'decode_chunk', 25); return true; }; v1.decode = function (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 += 1; return ch; }; var _white = function () { while (ch) { if (ch <= ' ') { _next(); } else { if (ch == '/') { switch (_next()) { case '/': for (;;) { if (!(_next() && ch != '\n' && ch != '\r')) break; } break; case '*': _next(); for (;;) { if (ch) { if (ch == '*') { if (_next() == '/') { _next(); break; } } else { _next(); } continue; } _error('Unterminated comment'); } break; default: _error('Syntax error'); } } else { break; } } } }; var _string = function () { var v4; var v1 = ''; var v3; var v2; var v5 = false; if (ch == '"') { while (_next()) { if (ch == '"') { _next(); return v1; } else { if (ch == '\\') { switch (_next()) { case 'b': v1 += '\b'; break; case 'f': v1 += '\f'; break; case 'n': v1 += '\n'; break; case 'r': v1 += '\r'; break; case 't': v1 += '\t'; break; case 'u': v2 = 0; v4 = 0; while (v4 < 4) { v3 = parseInt(_next(), 16); if (!isFinite(v3)) { v5 = true; break; } v2 = v2 * 16 + v3; v4 += 1; } if (v5) { v5 = false; } else { v1 += String.fromCharCode(v2); break; default: v1 += ch; } } } else { v1 += ch; } } } } _error('Bad string'); }; var _array = function () { var v1 = []; if (ch == '[') { _next(); _white(); if (ch == ']') { _next(); return v1; } while (ch) { v1.push(_value()); _white(); if (ch == ']') { _next(); return v1; } else { if (ch != ',') { break; } } _next(); _white(); } } _error('Bad array'); }; var _object = function () { var v2; var v1 = {}; if (ch == '{') { _next(); _white(); if (ch == '}') { _next(); return v1; } while (ch) { v2 = _string(); _white(); if (ch != ':') { break; } _next(); v1[v2] = _value(); _white(); if (ch == '}') { _next(); return v1; } else { if (ch != ',') { break; } } _next(); _white(); } } _error('Bad object'); }; var _number = function () { var v1 = ''; var v2; if (ch == '-') { v1 = '-'; _next(); } for (;;) { if (!(ch >= '0' && ch <= '9')) break; v1 += ch; _next(); } if (ch == '.') { v1 += '.'; for (;;) { if (!(_next() && ch >= '0' && ch <= '9')) break; v1 += ch; } } v2 = 1 * v1; if (!isFinite(v2)) { _error('Bad number'); } else { return v2; } }; 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') { _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(); }; v1.getType = function (v) { if (v instanceof Array) { return 'array'; } else { return typeof v; } }; v1.decode_chunk = function () { if (!com.newgrounds.encoders.json.JSON.cache.busy && !com.newgrounds.encoders.json.JSON.cache.complete) { com.newgrounds.encoders.json.JSON.cache.busy = true; var v1 = 0; while (v1 < com.newgrounds.encoders.json.JSON.decode_chunks) { com.newgrounds.encoders.json.JSON.chunk_decoder(); if (com.newgrounds.encoders.json.JSON.cache.complete) { break; } ++v1; } trace(Math.round((com.newgrounds.encoders.json.JSON.cache.pos / com.newgrounds.encoders.json.JSON.cache.arg.length) * 100) + '% decoded'); com.newgrounds.encoders.json.JSON.cache.busy = false; } if (com.newgrounds.encoders.json.JSON.cache.complete) { var v2 = new Date(); com.newgrounds.encoders.json.JSON.busy = false; clearInterval(com.newgrounds.encoders.json.JSON.interval); com.newgrounds.encoders.json.JSON.cache.callback(com.newgrounds.encoders.json.JSON.cache.root, v2.getTime() - com.newgrounds.encoders.json.JSON.start); com.newgrounds.encoders.json.JSON.cache.arg = ''; } }; v1.encode_chunk = function () { if (!com.newgrounds.encoders.json.JSON.cache.busy && !com.newgrounds.encoders.json.JSON.cache.complete) { com.newgrounds.encoders.json.JSON.cache.busy = true; var v1 = 0; while (v1 < com.newgrounds.encoders.json.JSON.encode_chunks) { com.newgrounds.encoders.json.JSON.chunk_encoder(); if (com.newgrounds.encoders.json.JSON.cache.complete) { break; } ++v1; } com.newgrounds.encoders.json.JSON.cache.busy = false; } if (com.newgrounds.encoders.json.JSON.cache.complete) { var v3 = new Date(); var v2 = v3.getTime(); com.newgrounds.encoders.json.JSON.busy = false; clearInterval(com.newgrounds.encoders.json.JSON.interval); com.newgrounds.encoders.json.JSON.cache.callback(com.newgrounds.encoders.json.JSON.cache.encoded, v2 - com.newgrounds.encoders.json.JSON.start); com.newgrounds.encoders.json.JSON.cache.encoded = ''; } }; v1.chunk_decoder = function () { function _object() { var v1 = 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; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (v1 != '"') { throw 'Malformed object key in encoded string. Keys must be wrapped in quotes ("")'; } com.newgrounds.encoders.json.JSON.cache.scratch = ''; _setTargetValue({}); } else { if (v1 == ',') { ++com.newgrounds.encoders.json.JSON.cache.pos; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (v1 != '"') { throw 'Malformed object key in encoded string. Keys must be wrapped in quotes ("")'; } com.newgrounds.encoders.json.JSON.cache.scratch = ''; } else { if (v1 == '}') { _useParent(); } else { if (v1 == '"') { ++com.newgrounds.encoders.json.JSON.cache.pos; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (v1 != ':') { 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 (v1 == '\\') { ++com.newgrounds.encoders.json.JSON.cache.pos; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); } com.newgrounds.encoders.json.JSON.cache.scratch += v1; } } } } ++com.newgrounds.encoders.json.JSON.cache.pos; } function _array() { var v1 = 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; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); _setTargetValue([]); if (v1 != ']') { _addArrayKey(); } else { _useParent(); } return undefined; } else { if (v1 == ',') { _addArrayKey(); } else { if (v1 == ']') { _useParent(); } } } ++com.newgrounds.encoders.json.JSON.cache.pos; } function _boolean() { var v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (v1 == 't') { _setTargetValue(true); com.newgrounds.encoders.json.JSON.cache.pos += 3; } else { if (v1 == 'f') { _setTargetValue(false); com.newgrounds.encoders.json.JSON.cache.pos += 4; } else { throw 'Bool values must be true or false'; } } _useParent(); } function _null() { var v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (v1 == 'n') { _setTargetValue(null); com.newgrounds.encoders.json.JSON.cache.pos += 2; } else { throw 'Null values must be null'; } _useParent(); } function _string() { var v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); if (!com.newgrounds.encoders.json.JSON.cache.mode) { if (v1 != '"') { throw 'Strings must be wrapped in quotes ("")'; } com.newgrounds.encoders.json.JSON.cache.scratch = ''; com.newgrounds.encoders.json.JSON.cache.mode = 'string'; } else { if (v1 == '"') { _setTargetValue(com.newgrounds.encoders.json.JSON.cache.scratch); _useParent(); } else { if (v1 == '\\') { ++com.newgrounds.encoders.json.JSON.cache.pos; v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); switch (v1) { case 'n': v1 = '\n'; break; case 'r': v1 = '\n'; break; case 't': v1 = '\t'; break; case 'u': v1 = '\\' + v1; } } com.newgrounds.encoders.json.JSON.cache.scratch += v1; } } ++com.newgrounds.encoders.json.JSON.cache.pos; } function _number() { var v1 = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); var v2 = '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 (v2.indexOf(v1) < 0) { _setTargetValue(Number(com.newgrounds.encoders.json.JSON.cache.scratch)); _useParent(); } else { com.newgrounds.encoders.json.JSON.cache.scratch += v1; ++com.newgrounds.encoders.json.JSON.cache.pos; } } function _setTargetValue(newval) { var v2 = (_getParent()).obj; var v1 = com.newgrounds.encoders.json.JSON.cache.parents[com.newgrounds.encoders.json.JSON.cache.parents.length - 1]; v2[v1] = 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 v2 = com.newgrounds.encoders.json.JSON.cache; var v1 = 0; while (v1 < com.newgrounds.encoders.json.JSON.cache.parents.length - 1) { v2 = v2[com.newgrounds.encoders.json.JSON.cache.parents[v1]]; ++v1; } return {'obj': v2, 'name': com.newgrounds.encoders.json.JSON.cache.parents[v1]}; } function _getCurrent() { var v2 = com.newgrounds.encoders.json.JSON.cache; var v1 = 0; while (v1 < com.newgrounds.encoders.json.JSON.cache.parents.length) { v2 = v2[com.newgrounds.encoders.json.JSON.cache.parents[v1]]; ++v1; } return {'obj': v2, 'name': com.newgrounds.encoders.json.JSON.cache.parents[v1]}; } function _addParent(child) { com.newgrounds.encoders.json.JSON.cache.parents.push(child); } function _addArrayKey() { var v1 = (_getCurrent()).obj.length; com.newgrounds.encoders.json.JSON.cache.parents.push(v1); com.newgrounds.encoders.json.JSON.cache.mode = null; } if (com.newgrounds.encoders.json.JSON.cache.pos >= com.newgrounds.encoders.json.JSON.cache.arg.length) { com.newgrounds.encoders.json.JSON.cache.complete = true; return undefined; } else { if (com.newgrounds.encoders.json.JSON.cache.mode) { ('_' + com.newgrounds.encoders.json.JSON.cache.mode)(); } else { var char = com.newgrounds.encoders.json.JSON.cache.arg.charAt(com.newgrounds.encoders.json.JSON.cache.pos); switch (char) { case '{': _object(); break; case '[': _array(); break; case '"': _string(); break; case 'n': _null(); break; case 't': _boolean(); break; case 'f': _boolean(); break; default: _number(); } } } }; v1.chunk_encoder = function () { if (com.newgrounds.encoders.json.JSON.cache.complete) { return undefined; } var v2 = com.newgrounds.encoders.json.JSON.getType(com.newgrounds.encoders.json.JSON.cache.target); switch (v2) { case 'number': com.newgrounds.encoders.json.JSON.cache.encoded += com.newgrounds.encoders.json.JSON.cache.target; com.newgrounds.encoders.json.JSON.getParent(); break; case 'string': com.newgrounds.encoders.json.JSON.cache.encoded += '"' + (com.newgrounds.encoders.json.JSON.cache.target.split('"')).join('\\"') + '"'; com.newgrounds.encoders.json.JSON.getParent(); break; case 'boolean': com.newgrounds.encoders.json.JSON.cache.encoded += (com.newgrounds.encoders.json.JSON.cache.target == true) ? 'true' : 'false'; com.newgrounds.encoders.json.JSON.getParent(); break; case 'null': com.newgrounds.encoders.json.JSON.cache.encoded += 'null'; com.newgrounds.encoders.json.JSON.getParent(); break; case 'array': if (com.newgrounds.encoders.json.JSON.cache.target.length < 1) { com.newgrounds.encoders.json.JSON.cache.encoded += ']'; com.newgrounds.encoders.json.JSON.getParent(); } else { com.newgrounds.encoders.json.JSON.cache.parents.push(com.newgrounds.encoders.json.JSON.cache.target); com.newgrounds.encoders.json.JSON.cache.target = com.newgrounds.encoders.json.JSON.cache.target[0]; if (com.newgrounds.encoders.json.JSON.getType(com.newgrounds.encoders.json.JSON.cache.target) == 'array') { com.newgrounds.encoders.json.JSON.cache.encoded += '['; } else { if (com.newgrounds.encoders.json.JSON.getType(com.newgrounds.encoders.json.JSON.cache.target) == 'object') { com.newgrounds.encoders.json.JSON.cache.encoded += '{'; } } } break; case 'object': for (var v1 in com.newgrounds.encoders.json.JSON.cache.target) { break; } if (v1 === undefined) { com.newgrounds.encoders.json.JSON.cache.encoded += '}'; com.newgrounds.encoders.json.JSON.getParent(); } else { com.newgrounds.encoders.json.JSON.cache.parents.push(com.newgrounds.encoders.json.JSON.cache.target); com.newgrounds.encoders.json.JSON.cache.target = com.newgrounds.encoders.json.JSON.cache.target[v1]; com.newgrounds.encoders.json.JSON.cache.encoded += '"' + (v1.split('"')).join('\\"') + '":'; if (com.newgrounds.encoders.json.JSON.getType(com.newgrounds.encoders.json.JSON.cache.target) == 'array') { com.newgrounds.encoders.json.JSON.cache.encoded += '['; } else { if (com.newgrounds.encoders.json.JSON.getType(com.newgrounds.encoders.json.JSON.cache.target) == 'object') { com.newgrounds.encoders.json.JSON.cache.encoded += '{'; } } } break; default: com.newgrounds.encoders.json.JSON.cache.encoded += 'null'; com.newgrounds.encoders.json.JSON.getParent(); } }; v1.getParent = function () { if (com.newgrounds.encoders.json.JSON.cache.parents.length > 0) { var v1 = com.newgrounds.encoders.json.JSON.cache.parents.pop(); if (com.newgrounds.encoders.json.JSON.getType(v1) == 'array') { v1.shift(); } else { for (var v3 in v1) { delete v1[v3]; break; } } if (com.newgrounds.encoders.json.JSON.getType(v1) == 'object' or com.newgrounds.encoders.json.JSON.getType(v1) == 'array') { for (var v2 in v1) { break; } if (v2 !== undefined) { com.newgrounds.encoders.json.JSON.cache.encoded += ','; } } com.newgrounds.encoders.json.JSON.cache.target = v1; } else { com.newgrounds.encoders.json.JSON.cache.complete = true; } }; v1.encode_chunks = 20000; v1.decode_chunks = 20000; v1.busy = false; ASSetPropFlags(com.newgrounds.encoders.json.JSON.prototype, null, 1); } #endinitclip } movieClip 166 1000pts { } movieClip 168 100pts { } movieClip 170 2000pts { } movieClip 172 250pts { } movieClip 174 300pts { } movieClip 176 500pts { } movieClip 178 50pts { } movieClip 180 800pts { } movieClip 183 { } movieClip 185 Big Fireball { frame 1 { stop(); } frame 11 { stop(); } } movieClip 190 { } movieClip 193 { } movieClip 194 { frame 18 { stop(); _root.blueBarrelDie = true; } } movieClip 195 { frame 7 { stop(); _root.blueBarrelDie = true; } } movieClip 196 Blue Barrel { frame 1 { stop(); } frame 10 { stop(); } frame 20 { stop(); } frame 31 { stop(); } } movieClip 199 { } movieClip 202 { } movieClip 203 fireball { frame 1 { stop(); } frame 8 { stop(); } } movieClip 205 { } movieClip 207 { } movieClip 208 { } movieClip 209 pie { frame 1 { stop(); } frame 2 { stop(); } } movieClip 212 { } movieClip 213 spring { } movieClip 215 umbrella { } movieClip 217 rivetGround { } movieClip 219 rivet2 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 221 rivet { } movieClip 223 purse { } movieClip 225 blanket { } movieClip 248 { } frame 8 { stop(); ngLogo.onRelease = function () { com.newgrounds.API.loadNewgrounds(); }; } movieClip 251 { } movieClip 252 { } movieClip 255 { } movieClip 256 { } movieClip 258 { } movieClip 262 { } movieClip 263 { } movieClip 266 { } movieClip 270 { } movieClip 273 { } movieClip 274 { } movieClip 276 { } movieClip 277 { } movieClip 278 { } movieClip 280 { } movieClip 281 { frame 120 { stop(); _root.play(); } } frame 14 { menu = new Sound(this); menu.attachSound('menu'); menu.start(0, 1000); } frame 15 { function refreshKeys() { flag = true; clearInterval(keyInterval); } stop(); gameDifficulty = 2; keyRefreshRate = 300; flag = false; keyInterval = setInterval(refreshKeys, keyRefreshRate); selectSound = new Sound(this); selectSound.attachSound('select'); enterSound = new Sound(this); enterSound.attachSound('enter'); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 6) { this.gotoAndStop(this._currentframe + 1); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 1) { this.gotoAndStop(this._currentframe - 1); } else { this.gotoAndStop(6); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: gotoAndStop('Difficulty'); break; case 2: gotoAndStop('Controls'); break; case 3: gotoAndStop('Hard'); break; case 4: getURL('http://www.newgrounds.com/portal/view/569072', 'blank'); keyInterval = setInterval(refreshKeys, keyRefreshRate); break; case 5: getURL('http://www.donkeykonggame.org', 'blank'); keyInterval = setInterval(refreshKeys, keyRefreshRate); break; case 6: gotoAndStop('Credits'); } } }; } movieClip 284 { } movieClip 286 { } movieClip 288 { } movieClip 291 { } movieClip 296 { } movieClip 312 { frame 1 { stop(); } frame 2 { stop(); round_txt.text = _root.round; enemiesHammered_txt.text = _root.enemiesHammered; barrels_txt.text = _root.barrelsJumped; } frame 3 { stop(); } frame 4 { stop(); } frame 5 { stop(); } frame 6 { stop(); } } frame 21 { stop(); flag = false; keyInterval = setInterval(refreshKeys, keyRefreshRate); menuSelect.gotoAndStop(2); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 3) { this.gotoAndStop(this._currentframe + 1); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 1) { this.gotoAndStop(this._currentframe - 1); } else { this.gotoAndStop(3); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; round = 1; switch (this._currentframe) { case 1: gameDifficulty = 1; break; case 2: gameDifficulty = 2; break; case 3: gameDifficulty = 3; } gotoAndStop('intro'); } }; } movieClip 322 { } movieClip 330 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } frame 28 { stop(); flag = false; keyInterval = setInterval(refreshKeys, keyRefreshRate); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: gotoAndStop('Hard'); break; case 2: gotoAndStop('Menu'); } } }; } movieClip 335 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 341 { } movieClip 342 { } movieClip 345 { } movieClip 347 { } movieClip 348 { } // unknown tag 88 length 75 movieClip 353 { frame 1 { stop(); mouseChildren = false; } } movieClip 359 { frame 1 { function setListItems(listItems) { if (!listItems) { _listItems = []; } else { _listItems = listItems.concat(); } var v1 = 0; while (v1 < _listItems.length) { if (typeof _listItems[v1] == 'string') { _listItems[v1] = {'label': _listItems[v1], 'data': _listItems[v1]}; } ++v1; } setSelectedIndex(0); } function setSelectedItem(data) { var v1 = 0; while (v1 < _listItems.length) { if (_listItems[v1].data == data) { setSelectedIndex(v1); return undefined; } ++v1; } } function setSelectedIndex(i) { if (i < _listItems.length) { _selectedItem = _listItems[i]; if (currentItem && currentItem.label) { currentItem.label.text = _selectedItem.label; } } } function hideList() { _listDown = false; gotoAndStop('sortUP'); } function _onListClick() { _listDown = !_listDown; if (_listDown) { gotoAndStop('sortDOWN'); } else { gotoAndStop('sortUP'); } } stop(); if (listButton) { listButton.onRelease = _onListClick; } if (currentItem) { currentItem.onRelease = _onListClick; if (currentItem.label) { if (_selectedItem) { currentItem.label.text = _selectedItem.label; } else { currentItem.label.text = ''; } } } var _listItems; var _listDown; var _selectedItem; if (!_listItems) { _listItems = []; } } frame 10 { function _onItemClick() { var v3 = MovieClip(this); if (v3.item) { setSelectedItem(v3.item.data); } if (v3 && _parent && _parent instanceof MovieClip && (MovieClip(_parent))._onListChange) { (MovieClip(_parent))._onListChange(v3.item); } } var i = 0; var itemClip = item0; while (itemClip) { if (i < _listItems.length) { itemClip.item = _listItems[i]; itemClip.label.text = _listItems[i].label; itemClip.onRelease = _onItemClick; } else { itemClip._visible = false; } ++i; itemClip = this['item' + i]; } } } // unknown tag 88 length 296 movieClip 369 Newgrounds API Font { } movieClip 376 { frame 1 { stop(); mouseChildren = false; } } movieClip 377 { } movieClip 379 { } movieClip 386 ScoreBrowser { frame 1 { function loadScores() { if (_scoreBoard) { _scoreBoard.removeEventListener(com.newgrounds.APIEvent.SCORES_LOADED, _onScoresLoaded); } _scoreBoard = com.newgrounds.API.getScoreBoard(scoreBoardName); if (!_scoreBoard) { if (!(com.newgrounds.API.__get__scoreBoards())[0]) { com.newgrounds.Logger.logError('No scoreboards created for this movie. You can create scoreboards on your API Settings page at http://www.newgrounds.com/account/flashapi'); gotoAndPlay('error'); return undefined; } else { _scoreBoard = (com.newgrounds.API.__get__scoreBoards())[0]; scoreBoardName = _scoreBoard.name; com.newgrounds.Logger.logWarning('No scoreboard name set in the Score Browser component. Defaulting to scoreboard "' + _scoreBoard.__get__name() + '".'); } } _scoreBoard.addEventListener(com.newgrounds.APIEvent.SCORES_LOADED, _onScoresLoaded); _scoreBoard.__set__numResults(_numScores); _scoreBoard.__set__period(period); if (pageText) { pageText.text = 'Page ' + _scoreBoard.__get__page(); } _loading = true; if (listBox) { listBox.mouseChildren = false; listBox.hideList(); } gotoAndStop('loading'); _scoreBoard.loadScores(); } function _onScoresLoaded(event) { _loading = false; if (listBox) { listBox.mouseChildren = true; } if (event.__get__success()) { gotoAndStop('scores'); } else { gotoAndPlay('error'); } } function _onPageClick() { var v2 = this; if (_scoreBoard && !_loading) { if (v2 == prevButton) { _scoreBoard.prevPage(); } else { _scoreBoard.nextPage(); } loadScores(); } } function _onListChange(selection) { period = selection.data; loadScores(); } var title; var scoreBoardName; var period; if (!title) { title = 'High Scores'; } if (!period) { period = com.newgrounds.ScoreBoard.ALL_TIME; } var _scoreBoard; var _loading; var _numScores = 10; var _listItems = [com.newgrounds.ScoreBoard.TODAY, com.newgrounds.ScoreBoard.THIS_WEEK, com.newgrounds.ScoreBoard.THIS_MONTH, com.newgrounds.ScoreBoard.THIS_YEAR, com.newgrounds.ScoreBoard.ALL_TIME]; _x = Number(_x); _y = Number(_y); if (titleText) { titleText.text = title; com.newgrounds.API.setFont(titleText, 'Pakenham'); } if (prevButton) { prevButton.onRelease = _onPageClick; } if (nextButton) { nextButton.onRelease = _onPageClick; } gotoAndPlay('error'); loadScores(); } frame 2 { if (listBox) { listBox.setListItems(_listItems); listBox.setSelectedItem(period); } } frame 11 { function onScoreClick() { var v3 = MovieClip(this); if (v3.usernameText) { _root.getURL('http://' + v3.usernameText.text + '.newgrounds.com', '_blank'); } } var i = 0; var scoreClip = scoreContainer.score0; while (scoreClip) { var score = com.newgrounds.Score(_scoreBoard.scores[i]); if (score) { if (scoreClip.rankText) { scoreClip.rankText.text = (score.__get__rank()).toString(); } if (scoreClip.usernameText) { scoreClip.usernameText.text = score.username; } if (scoreClip.scoreText) { scoreClip.scoreText.text = score.score; } scoreClip.onRelease = onScoreClick; } else { if (scoreClip.rankText) { scoreClip.rankText.text = ''; } if (scoreClip.usernameText) { scoreClip.usernameText.text = ''; } if (scoreClip.scoreText) { scoreClip.scoreText.text = ''; } scoreClip.enabled = false; } ++i; scoreClip = scoreContainer['score' + i]; } } frame 21 { function onReloadClick() { loadScores(); } if (reloadButton) { reloadButton.onRelease = onReloadClick; } } frame 30 { stop(); } } instance of movieClip 386 ScoreBrowser { onClipEvent (construct) { scoreBoardName = 'High Scores - Medium'; period = 'All-Time'; title = 'High Scores - MEDIUM'; } } frame 37 { stop(); flag = false; keyInterval = setInterval(refreshKeys, keyRefreshRate); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: gotoAndStop('Medium'); break; case 2: gotoAndStop('Menu'); } } }; } movieClip 391 { frame 1 { stop(); } frame 2 { stop(); } } instance of movieClip 386 ScoreBrowser { onClipEvent (construct) { scoreBoardName = 'High Scores - Hard'; period = 'All-Time'; title = 'High Scores - HARD'; } } frame 43 { stop(); flag = false; keyInterval = setInterval(refreshKeys, keyRefreshRate); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: gotoAndStop('Menu'); break; case 2: _root.controlMC.gotoAndPlay(1); keyInterval = setInterval(refreshKeys, keyRefreshRate); } } }; } movieClip 393 { } movieClip 415 { } movieClip 417 { } movieClip 426 { } movieClip 429 { } movieClip 431 { } movieClip 437 { } movieClip 438 { } movieClip 439 { } movieClip 441 { } movieClip 442 { frame 145 { stop(); } } movieClip 443 { } movieClip 444 { frame 539 { stop(); if (_root.ProAtGaming) { _root.ProAtGaming = false; com.newgrounds.API.unlockMedal('Pro At Gaming'); } } } movieClip 449 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 451 { } movieClip 454 { } movieClip 458 { } movieClip 462 { } movieClip 466 { } movieClip 468 { } movieClip 470 { } movieClip 472 { } movieClip 474 { } movieClip 476 MedalPopup { frame 1 { function onMedalUnlocked(event) { if (event.__get__success()) { _medalQueue.push(event.__get__data()); showNextUnlock(); } } function showNextUnlock() { if (_unlockedMedal) { return undefined; } if (!_medalQueue.length) { gotoAndStop('hidden'); onEnterFrame = null; return undefined; } _unlockedMedal = com.newgrounds.Medal(_medalQueue.shift()); gotoAndPlay('medalUnlocked'); } gotoAndStop('hidden'); com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, onMedalUnlocked); var alwaysOnTop; _x = Number(_x); _y = Number(_y); var _unlockedMedal; var _medalQueue = []; var _alwaysOnTop = true; if (alwaysOnTop) { _alwaysOnTop = alwaysOnTop == 'true'; } } frame 15 { function medalPopupEnterFrame() { if (_alwaysOnTop) { var v1 = getNextHighestDepth(); swapDepths(v1); } if (_medalScrollRect) { _medalScrollRect.offset(2, 0); medalNameClip.scrollRect = _medalScrollRect; if (_medalScrollRect.left >= medalNameClip.textField.textWidth + 10) { _medalScrollRect = null; play(); } } } var _medalScrollRect; if (_unlockedMedal) { if (medalNameClip && medalNameClip.textField) { medalNameClip.textField.text = _unlockedMedal.name; com.newgrounds.API.setFont(medalNameClip.textField, 'Pakenham'); } if (medalPointsText) { medalPointsText.text = _unlockedMedal.value.toString(); } if (medalNameClip.textField.textWidth > medalNameClip._width) { _medalScrollRect = new flash.geom.Rectangle(-medalNameClip._width, 0, medalNameClip._width, medalNameClip._height); medalNameClip.textField._width = 1000; medalNameClip.scrollRect = _medalScrollRect; } onEnterFrame = medalPopupEnterFrame; } } frame 23 { if (_unlockedMedal && medalIcon) { _unlockedMedal.attachIcon(medalIcon); } } frame 84 { if (_medalScrollRect) { stop(); } } frame 105 { stop(); _unlockedMedal = null; showNextUnlock(); } } instance of movieClip 476 MedalPopup { onClipEvent (construct) { alwaysOnTop = 'true'; } } frame 51 { stop(); flag = false; keyInterval = setInterval(refreshKeys, 500); menuSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe == 1) { this.gotoAndStop(2); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, keyRefreshRate); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: com.newgrounds.API.loadMySite(); keyInterval = setInterval(refreshKeys, keyRefreshRate); break; case 2: gotoAndStop('Menu'); } } }; } movieClip 487 { frame 1 { stop(); } frame 2 { stop(); } } frame 63 { function refreshEnemiesJumpedDisplay() { if (enemiesJumped < 10) { enemiesJumped_txt.text = '000' + enemiesJumped; } else { if (enemiesJumped < 100) { enemiesJumped_txt.text = '00' + enemiesJumped; } else { if (enemiesJumped < 1000) { enemiesJumped_txt.text = '0' + enemiesJumped; } else { enemiesJumped_txt.text = enemiesJumped; } } } } function refreshBonusDisplay() { if (bonus < 10000) { bonus_txt.text = '0' + bonus; } else { bonus_txt.text = bonus; } } function refreshRoundDisplay() { if (round < 10) { round_txt.text = '0' + round; } else { round_txt.text = round; } } function displayHighScore() { if (highScore < 10) { _root.highscore_txt.text = '00000' + highScore; } else { if (highScore < 100) { _root.highscore_txt.text = '0000' + highScore; } else { if (highScore < 1000) { _root.highscore_txt.text = '000' + highScore; } else { if (highScore < 10000) { _root.highscore_txt.text = '00' + highScore; } else { if (highScore < 100000) { _root.highscore_txt.text = '0' + highScore; } else { _root.highscore_txt.text = highScore; } } } } } } function refreshPauseBtn() { pauseBtnFlag = true; clearInterval(pauseBtnInterval); } function refreshMuteBtn() { muteBtnFlag = true; clearInterval(muteBtnInterval); } function muteGame() { if (gameIsMuted) { mute.gotoAndStop(2); } else { mute.gotoAndStop(1); } if (songIsMuted) { muteMusic.gotoAndStop(2); } else { muteMusic.gotoAndStop(1); } if (Key.isDown(77) && muteBtnFlag) { muteBtnFlag = false; if (gameIsMuted) { _root.music.setVolume(100); gameIsMuted = false; } else { _root.music.setVolume(0); gameIsMuted = true; } muteBtnInterval = setInterval(refreshMuteBtn, 500); } if (Key.isDown(78) && muteBtnFlag) { muteBtnFlag = false; if (songIsMuted) { startLevelMusic(currentLevel); songIsMuted = false; } else { stopLevelMusic(currentLevel); songIsMuted = true; } muteBtnInterval = setInterval(_root, 'refreshMuteBtn', 500); } } function startLevelMusic(level) { switch (_root.currentLevel) { case 1: case 6: music3.start(0, 1000); break; case 2: case 5: music2.start(0, 1000); break; case 3: music.start(0, 1000); break; default: } } function stopLevelMusic(level) { switch (_root.currentLevel) { case 1: case 6: music3.stop(); break; case 2: case 5: music2.stop(); break; case 3: music.stop(); break; default: } } function pauseGame() { pauseFlag; if (pauseFlag == undefined) { pauseFlag = true; } if (gameIsPaused && pauseFlag) { pauseFlag = false; _root.attachMovie('pauseScreen', 'pause_mc', _root.getNextHighestDepth(), {'_x': 253.15, '_y': 256.05}); } else { if (!gameIsPaused) { pauseFlag = true; pause_mc.removeMovieClip(); } } if (gameIsPaused) { _root.girderMC_Top.stop(); _root.girderMC_Bottom.stop(); _root.electric1.electric.stop(); _root.electric2.electric.stop(); _root.ground.moving.stop(); _root.movingGirder1.stop(); _root.movingGirder2.stop(); _root.movingGirder3.stop(); _root.ground.moving1.stop(); _root.ground.moving2.stop(); _root.ground.moving3.stop(); _root.springs.spring.stop(); _root.springs.spring.rivet1.stop(); _root.springs.spring.rivet2.stop(); } else { _root.girderMC_Top.play(); _root.girderMC_Bottom.play(); _root.electric1.electric.play(); _root.electric2.electric.play(); _root.ground.moving.play(); _root.movingGirder1.play(); _root.movingGirder2.play(); _root.movingGirder3.play(); _root.ground.moving1.play(); _root.ground.moving2.play(); _root.ground.moving3.play(); _root.springs.spring.play(); _root.springs.spring.rivet1.play(); _root.springs.spring.rivet2.play(); } if (Key.isDown(80) && pauseBtnFlag && !marioDie) { pauseBtnFlag = false; if (gameIsPaused) { _root.pauseSound.start(0, 1); startLevelMusic(currentLevel); gameIsPaused = false; } else { stopLevelMusic(currentLevel); _root.pauseSound.start(0, 1); gameIsPaused = true; } pauseBtnInterval = setInterval(refreshPauseBtn, 500); } } function quitGame() { if (Key.isDown(81) && gameIsPaused) { _root.music.stop(); enterSound.start(0, 1); removeAllMovieClips(); clearInterval(_root.bonusInterval); _root.mario.removeMovieClip(); _root.pause_mc.removeMovieClip(); delete this.onEnterFrame; gotoAndPlay('pMenu'); } } function removePointsDisplay() { soundFlag = true; pts50.removeMovieClip(); pts100.removeMovieClip(); pts250.removeMovieClip(); pts300.removeMovieClip(); pts500.removeMovieClip(); pts800.removeMovieClip(); pts1000.removeMovieClip(); pts2000.removeMovieClip(); clearInterval(intervalCounter); } function displayPoints() { if (pointsScore < 10) { _root.score_txt.text = '00000' + pointsScore; } else { if (pointsScore < 100) { _root.score_txt.text = '0000' + pointsScore; } else { if (pointsScore < 1000) { _root.score_txt.text = '000' + pointsScore; } else { if (pointsScore < 10000) { _root.score_txt.text = '00' + pointsScore; } else { if (pointsScore < 100000) { _root.score_txt.text = '0' + pointsScore; } else { _root.score_txt.text = pointsScore; } } } } } } function bonusTimer() { if (!_root.marioDie && !gameIsPaused) { bonus -= 100; if (bonus == 0) { _root.bonus_txt.text = '0000' + bonus; _root.marioDie = true; clearInterval(_root.bonusInterval); } else { if (bonus < 100) { _root.bonus_txt.text = '000' + bonus; } else { if (bonus < 1000) { _root.timeMusic.start(0, 1); _root.bonus_txt.text = '00' + bonus; } else { if (bonus < 10000) { _root.bonus_txt.text = '0' + bonus; } else { _root.bonus_txt.text = bonus; } } } } } } function getNewLife() { if (pointsScore >= extraLifePoints) { trace('Extra Life!'); switch (gameDifficulty) { case 1: extraLifePoints += 10000; break; case 2: extraLifePoints += 20000; break; case 3: extraLifePoints += 30000; } extraLifeFlag = false; ++lives; livesMC.gotoAndStop(lives + 1); } } function generateRandomNumber(min, max) { do { r = Math.random(); } while (r == 1); return min + Math.floor(r * (max + 1 - min)); } function checkJumpmaniaMedal() { if (enemiesJumped >= 100 && Jumpmania) { Jumpmania = false; com.newgrounds.API.unlockMedal('Jumpmania'); } } stop(); timeMusic = new Sound(this); timeMusic.attachSound('time'); pauseSound = new Sound(this); pauseSound.attachSound('pause'); jumpOverSound = new Sound(this); jumpOverSound.attachSound('jump over'); getItem = new Sound(this); getItem.attachSound('jump over'); gameOver = new Sound(this); gameOver.attachSound('Game Over'); hammerMusic = new Sound(this); hammerMusic.attachSound('hammer song'); startSong = new Sound(this); startSong.attachSound('start'); music = new Sound(this); music.attachSound('music'); music2 = new Sound(this); music2.attachSound('music2'); music3 = new Sound(this); music3.attachSound('music3'); if (round == undefined) { round = 1; } var currentLevel = 0; var intervalCounter = 0; var bonusInterval = 0; var bonus = (round * 10 + 40) * 100; var endLevel = false; var gameIsPaused = false; var pauseBtnInterval = 0; var pauseBtnFlag = true; var muteBtnInterval = 0; var muteBtnFlag = true; var gameIsMuted = false; var songIsMuted = false; var fireShootNumber = -1; var pointsScore = 0; var lives; var extraLifePoints; var totalItems = 0; switch (gameDifficulty) { case 1: lives = 6; extraLifePoints = 10000; difficulty_txt.text = 'EASY'; break; case 2: lives = 5; extraLifePoints = 20000; difficulty_txt.text = 'MEDIUM'; break; case 3: lives = 4; extraLifePoints = 30000; difficulty_txt.text = 'HARD'; } stopAllSounds(); livesMC.gotoAndStop(lives + 1); refreshEnemiesJumpedDisplay(); var gravity = 0.5; var xspeed = 0; var yspeed = 0; switch (gameDifficulty) { case 1: var maxY = 7; break; case 2: var maxY = 9; break; case 3: var maxY = 7.5; } var walk_speed = 2.5; var climb_speed = 1.5; var jumpSpeed = 4.8; var jumpSpeedX = 2.2; displayHighScore(); MovieClip.prototype.awardPoints = function (type) { if (type != 'bonus' && type != 'hammerFireball') { getItem.start(0, 1); _root.soundFlag = false; this.soundFlag = false; } if (!marioDie) { switch (type) { case 'barrel': case 'pie': ++enemiesJumped; pointsScore += 100; _root.attachMovie('100pts', 'pts100', _root.getNextHighestDepth()); pts100._x = this._x + 20; pts100._y = this._y; refreshEnemiesJumpedDisplay(); break; case 'rivet': case 'heart': pointsScore += 100; _root.attachMovie('100pts', 'pts100', _root.getNextHighestDepth()); pts100._x = this._x + 20; pts100._y = this._y - 20; break; pointsScore += 100; _root.attachMovie('100pts', 'pts100', _root.getNextHighestDepth()); pts100._x = this._x + 20; pts100._y = this._y; break; case 'pieSpecial': case 'hammerPie': ++enemiesJumped; refreshEnemiesJumpedDisplay(); pointsScore += 300; _root.attachMovie('300pts', 'pts300', _root.getNextHighestDepth()); pts300._x = this._x + 20; pts300._y = this._y - 20; break; case 'fireball': ++enemiesJumped; refreshEnemiesJumpedDisplay(); pointsScore += 250; _root.attachMovie('250pts', 'pts250', _root.getNextHighestDepth()); pts250._x = this._x + 20; pts250._y = this._y + 30; break; case 'hammer': pointsScore += 500; _root.attachMovie('500pts', 'pts500', _root.getNextHighestDepth()); pts500._x = this._x + 20; pts500._y = this._y - 20; break; case 'hammerFireball': case 'item': pointsScore += 800; _root.attachMovie('800pts', 'pts800', _root.getNextHighestDepth()); pts800._x = this._x + 20; pts800._y = this._y - 10; break; case 'all items': pointsScore += 2000; _root.attachMovie('2000pts', 'pts2000', _root.getNextHighestDepth()); pts2000._x = this._x + 20; pts2000._y = this._y - 10; break; case 'bonus': pointsScore += bonus; } displayPoints(); intervalCounter = setInterval(removePointsDisplay, 1500); } }; } movieClip 490 { } movieClip 493 { } movieClip 498 { } movieClip 499 { frame 136 { dkClimb.stop(); } frame 351 { _root.gotoAndStop('How High1'); } } movieClip 520 { frame 1 { stop(); } } movieClip 523 { } movieClip 524 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 526 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 527 { } button 533 { on (release) { getURL('http://www.donkeykonggame.org', 'blank'); } } instance of movieClip 476 MedalPopup { onClipEvent (construct) { alwaysOnTop = 'true'; } } frame 69 { function startTimer() { clearInterval(timer); _root.gotoAndPlay('lvl1'); } function removeAllMovieClips() { i = 0; while (i < barrelNumber + 1) { _root['barrel' + i].removeMovieClip(); ++i; } _root.fireball1.removeMovieClip(); _root.umbrella.removeMovieClip(); _root.purse.removeMovieClip(); _root.blanket.removeMovieClip(); } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); refreshRoundDisplay(); } movieClip 538 { frame 45 { _root.dkRandom = true; _parent.gotoAndStop('idle'); } } movieClip 540 { } frame 79 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround1.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround2.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } function shootFireball() { if (marioDie && currentLevel != 1 || gameDifficulty != 3) { clearInterval(shootingFireInterval); } if (!gameIsPaused && fireShoot && gameDifficulty == 3) { fireShoot = false; fireShootNumber = generateRandomNumber(1, 4); _root['shootingFire' + fireShootNumber].play(); } } stop(); music3.start(0, 1000); currentLevel = 1; clearInterval(bonusInterval); bonusInterval = setInterval(bonusTimer, 2000); muteBtnInterval = 0; pauseBtnInterval = 0; intervalCounter = 0; barrelNumber = 0; bonus = (round * 10 + 40) * 100; itemsCount = 0; endLevel = false; gameIsPaused = false; pauseBtnFlag = true; muteBtnFlag = true; extraLifeFlag = true; medalHits = 0; medalHit1Flag = true; medalHit2Flag = true; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; barrelLimit = 1; barrelSpeed = 3; fireballSpeed = 2; dkRandom = true; dkShoot = false; fireShoot = true; if (gameDifficulty == 3) { shootingFireInterval = setInterval(shootFireball, 2000); } if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } refreshBonusDisplay(); livesMC.gotoAndStop(lives + 1); var temp = new Object(); temp._x = 90; temp._y = 400; temp._xscale = 90; temp._yscale = 90; _root.ground._visible = false; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 280, '_y': 145}); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 278, '_y': 365}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 437, '_y': 436}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 83.7, '_y': 218.5}); i = 1; while (i <= 2) { _root['movingGround' + i].travelledDistance = 0; _root['movingGround' + i].pixels = 0.95; ++i; } if (gameDifficulty == 1) { ladder.gotoAndStop(2); } onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); getNewLife(); checkJumpmaniaMedal(); fireball.apply(_root.fireball1); if (endLevel) { endLevel = false; _root.gotoAndStop('finish1'); } if (ThereAndBackAgain && gameDifficulty != 1 && medalHits == 2) { ThereAndBackAgain = false; com.newgrounds.API.unlockMedal('There And Back Again'); } if (BallsOfSteel && gameDifficulty == 3 && medalHits == 1) { BallsOfSteel = false; com.newgrounds.API.unlockMedal('Balls of Steel'); } }; movingGround1.onEnterFrame = function () { if (!gameIsPaused) { this.girderGroup._x -= this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 103.7) { this.travelledDistance = 0; this.girderGroup._x = 53.3; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true)) { _root.mario._x -= this.pixels; } } }; movingGround2.onEnterFrame = function () { if (!gameIsPaused) { this.girderGroup._x += this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 103.95) { this.travelledDistance = 0; this.girderGroup._x = 52; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true)) { _root.mario._x += this.pixels; } } }; mario.onEnterFrame = function () { if (!marioDie) { if (!gameIsPaused) { if (_root.dk.hitTest(this.hitArea) || _root.fire1.hitZone.hitTest(this.hitArea) || _root.fire2.hitZone.hitTest(this.hitArea) || _root.fire3.hitZone.hitTest(this.hitArea) || _root.fire4.hitZone.hitTest(this.hitArea) || _root.shootingFire1.fire.hitZone.hitTest(this.hitArea) || _root.shootingFire2.fire.hitZone.hitTest(this.hitArea) || _root.shootingFire3.fire.hitZone.hitTest(this.hitArea) || _root.shootingFire4.fire.hitZone.hitTest(this.hitArea)) { marioDie = true; } if (this.hitTest(_root.medalHit1) && _root.medalHit1Flag) { _root.medalHit1Flag = false; ++medalHits; trace(medalHits); } if (this.hitTest(_root.medalHit2) && _root.medalHit2Flag && medalHits == 1) { _root.medalHit1Flag = false; ++medalHits; trace(medalHits); } if (_root.purse.hitTest(this.hitArea)) { ++itemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && !climbing && canJump && !jumping) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; for (;;) { if (!(_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround1.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround2.hitTest(forecast_x, forecast_y + marioHeight - 1, true))) break; if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } for (;;) { if (!(_root.ground.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround1.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround2.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true))) break; ++forecast_x; xspeed = 0; } for (;;) { if (!(_root.ground.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround1.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround2.hitTest(forecast_x + this._width / 2, forecast_y, true))) break; --forecast_x; xspeed = 0; } } if (forecast_x >= 470) { forecast_x = 469; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_y >= 450) { forecast_y = 449; jumping = false; canJump = true; } if (forecast_x <= 320 && forecast_y <= 109) { endLevel = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } } else { stopLevelMusic(currentLevel); this.gotoAndStop('dead'); } }; dk.onEnterFrame = function () { var v5; if (gameDifficulty == 2) { v5 = 0.2; } else { if (gameDifficulty == 3) { v5 = 0.3; } } var v6 = 0.4; if (!gameIsPaused && gameDifficulty != 1) { if (marioDie) { this.gotoAndStop('chest pound'); } else { if (dkRandom) { dkRandom = false; var v4; if (gameDifficulty == 2) { v4 = generateRandomNumber(1, 10); } else { if (gameDifficulty == 3) { v4 = generateRandomNumber(1, 5); } } switch (v4) { case 1: this.gotoAndStop('attack1'); break; case 2: case 6: case 7: this.gotoAndStop('chest pound'); break; default: this.gotoAndStop('doNothing'); } } if (dkShoot) { _root.dkShoot = false; var v3 = new Object(); v3._x = 195; v3._y = 150; _root.attachMovie('Barrel', 'barrel' + barrelNumber, _root.getNextHighestDepth(), v3); barrel.apply(_root['barrel' + barrelNumber]); ++barrelNumber; } } } }; barrel = function () { this.barrel_xSpeed = 0; this.barrel_ySpeed = 0; this.barrelDirection = true; this.barrelIsFalling = false; this.barrelGravity = 1; this.barrelMaxY = 4; this.barrelDie = false; this.jumpOver = false; this.soundFlag = true; this.onEnterFrame = function () { if (!gameIsPaused) { if (this.hitTest(_root.mario.hitArea)) { _root.marioDie = true; } if (mario.hitTest(this._x, this._y - 30, true) && this.soundFlag && _root.jumping) { ++barrelsJumped; this.soundFlag = false; jumpOverSound.start(0, 1); pts100.removeMovieClip(); this.awardPoints('barrel'); } this.barrel_ySpeed += this.barrelGravity; if (this.barrel_ySpeed > this.barrelMaxY) { this.barrel_ySpeed = this.barrelMaxY; } if (!this.barrelIsFalling && this._currentframe != 20) { if (this.barrelDirection) { this.barrel_xSpeed = barrelSpeed; } else { this.barrel_xSpeed = -barrelSpeed; } } else { this.barrel_xSpeed = 0; } this.barrel_forecast_x = this._x + this.barrel_xSpeed; this.barrel_forecast_y = this._y + this.barrel_ySpeed; if (!this.barrelIsFalling) { while (_root.ground.hitTest(this.barrel_forecast_x, this.barrel_forecast_y + this._height / 2 - 1, true)) { this.barrelIsFalling = false; --this.barrel_forecast_y; this.barrel_xSpeed = 0; this.barrel_ySpeed = 0; } } if (this._y >= 420) { this.removeMovieClip(); } if (this.barrel_forecast_x >= 470) { this.barrelDirection = false; } if (this.barrel_forecast_x <= 55) { if (this.barrel_forecast_y >= 420) { this.removeMovieClip(); } else { this.barrelDirection = true; } } this._x = this.barrel_forecast_x; this._y = this.barrel_forecast_y; } }; }; fireball = function () { this.fireball_xSpeed; this.fireball_ySpeed; this.fireballDirection; this.randomMovement; this.fireballIsFalling; this.fireballGravity; this.fireballMaxY; if (this.fireball_xSpeed == undefined) { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.fireballIsFalling = false; this.fireballGravity = 1; this.fireballMaxY = 2; } this.onEnterFrame = function () { if (!gameIsPaused) { this.gotoAndStop('normal'); if (this.hitTest(_root.mario.hitArea)) { _root.marioDie = true; } if (mario.hitTest(this._x, this._y - 30, true) && _root.soundFlag && _root.jumping) { ++fireJumped; _root.soundFlag = false; this.awardPoints('fireball'); } this.randomMovement = Math.random(); if (this.randomMovement < 0.01) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed -= this.fireballGravity; } else { this.fireball_ySpeed += this.fireballGravity; } if (this.fireball_ySpeed > this.fireballMaxY) { this.fireball_ySpeed = this.fireballMaxY; } else { if (this.fireball_ySpeed < -this.fireballMaxY) { this.fireball_ySpeed = -this.fireballMaxY; } } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this.fireball_xSpeed = fireballSpeed; } else { this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } } if (this.fireball_forecast_x >= 316) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 115) { this.fireballDirection = true; } this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } }; }; } movieClip 542 { } movieClip 544 { } movieClip 545 { } movieClip 547 { } movieClip 548 { } movieClip 550 { } movieClip 552 { } movieClip 555 { } movieClip 557 { } movieClip 559 { } movieClip 560 { } movieClip 561 { frame 1 { stop(); } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } frame 2 { stop(); } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 564 { } movieClip 565 { frame 30 { _root.dkShoot = true; } frame 47 { _root.dkRandom = true; _parent.gotoAndStop('idle'); } } movieClip 568 { frame 1 { chestPound = new Sound(this); chestPound.attachSound('dk chest'); chestPound.start(0, 1); } frame 48 { _root.dkRandom = true; _parent.gotoAndStop('idle'); } } movieClip 569 { frame 1 { stop(); } frame 6 { stop(); } frame 13 { stop(); } frame 24 { stop(); } } movieClip 573 { } movieClip 574 { frame 1 { stop(); } frame 60 { _root.fireShoot = true; gotoAndStop(1); } } movieClip 576 { } frame 84 { stop(); stopAllSounds(); clearInterval(bonusInterval); mario.removeMovieClip(); pauseBtnFlag = false; removeAllMovieClips(); refreshRoundDisplay(); this.awardPoints('bonus'); if (Princess) { Princess = false; com.newgrounds.API.unlockMedal('The Princess is in Another Castle!'); } totalItems += itemsCount; trace(totalItems); } movieClip 583 { } movieClip 587 { frame 134 { _root.gotoAndStop('How High2'); } } frame 93 { function startTimer() { clearInterval(timer); _root.gotoAndPlay('lvl2'); } function removeAllMovieClips() { i = 1; while (i <= 3) { _root['fireball' + i].removeMovieClip(); ++i; } i = 1; while (i <= 8) { _root['rivet' + i].removeMovieClip(); ++i; } purse.removeMovieClip(); blanket.removeMovieClip(); umbrella.removeMovieClip(); rivetCount = 0; } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); } frame 103 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } stop(); music2.start(0, 1000); currentLevel = 2; intervalCounter = 0; pauseBtnInterval = 0; muteBtnInterval = 0; clearInterval(bonusInterval); bonusInterval = setInterval(_root, 'bonusTimer', 2000); bonus = (round * 10 + 40) * 100; endLevel = false; gameIsPaused = false; pauseBtnFlag = true; muteBtnFlag = true; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; fireballSpeed = 1.5; itemsCount = 0; fireballCount = 0; rivetCount = 0; refreshBonusDisplay(); refreshRoundDisplay(); livesMC.gotoAndStop(lives + 1); _root.ground._visible = false; if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } var temp = new Object(); if (gameDifficulty == 1) { temp._x = 210; } else { temp._x = 80; } temp._y = 400; temp._xscale = 90; temp._yscale = 90; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 184.7, '_y': 301.8}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 188.25, '_y': 162.05}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 437, '_y': 425.85}); _root.attachMovie('rivet2', 'rivet1', _root.getNextHighestDepth(), {'_x': 110.8, '_y': 402.45}); _root.attachMovie('rivet2', 'rivet2', _root.getNextHighestDepth(), {'_x': 110.8, '_y': 359.3}); _root.attachMovie('rivet2', 'rivet3', _root.getNextHighestDepth(), {'_x': 110.8, '_y': 273}); _root.attachMovie('rivet2', 'rivet4', _root.getNextHighestDepth(), {'_x': 110.8, '_y': 216.85}); _root.attachMovie('rivet2', 'rivet5', _root.getNextHighestDepth(), {'_x': 411.7, '_y': 402.45}); _root.attachMovie('rivet2', 'rivet6', _root.getNextHighestDepth(), {'_x': 411.7, '_y': 359.3}); _root.attachMovie('rivet2', 'rivet7', _root.getNextHighestDepth(), {'_x': 411.7, '_y': 273}); _root.attachMovie('rivet2', 'rivet8', _root.getNextHighestDepth(), {'_x': 411.7, '_y': 216.85}); electric1.gotoAndStop(gameDifficulty); electric2.gotoAndStop(gameDifficulty); if (gameDifficulty == 3) { _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 84.5, '_y': 253.25}); } if (gameDifficulty != 1) { _root.attachMovie('fireball', 'fireball3', _root.getNextHighestDepth(), {'_x': 391.4, '_y': 337.75}); } _root.attachMovie('fireball', 'fireball2', _root.getNextHighestDepth(), {'_x': 192, '_y': 288}); extraLifeFlag = true; onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); checkJumpmaniaMedal(); var v2 = 1; while (v2 <= 3) { fireball.apply(_root['fireball' + v2]); ++v2; } if (rivetCount >= 8) { fireBlue.gotoAndStop(2); electric1.electric.gotoAndStop('Stop'); electric2.electric.gotoAndStop('Stop'); } getNewLife(); if (endLevel) { endLevel = false; _root.gotoAndStop('finish2'); } }; mario.onEnterFrame = function () { if (!marioDie) { if (!gameIsPaused) { if (_root.dk.hitZone.hitTest(this.hitArea) || _root.fireBlue.hitTest(this.hitArea)) { marioDie = true; } if (_root.electric1.electric.spark1.hitTest(this.hitArea) || _root.electric1.electric.spark2.hitTest(this.hitArea) || _root.electric1.electric.spark3.hitTest(this.hitArea) || _root.electric1.electric.spark4.hitTest(this.hitArea) || _root.electric2.electric.spark1.hitTest(this.hitArea) || _root.electric2.electric.spark2.hitTest(this.hitArea) || _root.electric2.electric.spark3.hitTest(this.hitArea) || _root.electric2.electric.spark4.hitTest(this.hitArea)) { marioDie = true; if (Shocked) { Shocked = false; com.newgrounds.API.unlockMedal('Shocked'); } } if (_root.purse.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { pts1000.removeMovieClip(); this.awardPoints('all items'); } else { pts800.removeMovieClip(); this.awardPoints('item'); } } i = 1; while (i <= 8) { if (this.hitTest(_root['rivet' + i]._x, _root['rivet' + i]._y - 30, true)) { pts100.removeMovieClip(); ++rivetCount; _root['rivet' + i].removeMovieClip(); this.awardPoints('rivet'); } ++i; } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && canJump && !jumping && !climbing) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { trace(yspeed); if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } else { if (yspeed > maxY - 2) { trace(yspeed); } } if (groundUnderFeet() and !jumping and !climbing) { yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; while (_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true)) { if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } } if (forecast_x >= 465) { forecast_x = 464; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_y >= 450) { forecast_y = 449; marioDie = true; } if (forecast_y <= 85) { endLevel = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } } else { stoplevelMusic(currentLevel); this.gotoAndStop('dead'); } }; dk.onEnterFrame = function () { if (gameIsPaused) { this.stop(); } else { this.play(); } }; fireball = function () { this.fireball_xSpeed; this.fireball_ySpeed; this.fireballDirection; this.randomMovement; this.fireballIsFalling; this.fireballGravity; this.fireballMaxY; if (this.fireball_xSpeed == undefined) { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.fireballIsFalling = false; this.fireballGravity = 1; this.fireballMaxY = 2; } this.onEnterFrame = function () { if (!gameIsPaused) { this.gotoAndStop('normal'); if (this.hitZone.hitTest(_root.mario.hitArea)) { _root.marioDie = true; if (_root.climbing && Toast) { Toast = false; com.newgrounds.API.unlockMedal('Toast'); } } if (mario.hitTest(this._x, this._y - 30, true) && _root.soundFlag && _root.jumping) { _root.soundFlag = false; this.awardPoints('fireball'); } if (_root.ladder.hitTest(this._x, this._y, true) && !this.fireballIsFalling) { this.randomLadder = Math.random(); if (this.randomLadder < 0.03 && !this.climbing) { this.climbing = true; } } if (_root.ladder.hitTest(this._x, this._y + this._height + 10, true) && !this.climbing) { this.randomLadder = Math.random(); if (this.randomLadder < 0.03 && !this.fireballIsFalling) { this.fireballIsFalling = true; } } if (_root.ladderTop.hitTest(this._x, this._y + this._height / 2, true) && this.climbing) { this.climbing = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (_root.ladderBottom.hitTest(this._x, this._y + this._height / 2, true) && this.fireballIsFalling) { this.fireballIsFalling = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } this.randomMovement = Math.random(); if (this.randomMovement < 0.001) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed -= this.fireballGravity; } else { this.fireball_ySpeed += this.fireballGravity; } if (this.fireball_ySpeed > this.fireballMaxY) { this.fireball_ySpeed = this.fireballMaxY; } else { if (this.fireball_ySpeed < -this.fireballMaxY) { this.fireball_ySpeed = -this.fireballMaxY; } } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this.fireball_xSpeed = fireballSpeed; } else { this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.fire_ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } while (_root.fire_ground.hitTest(this.fireball_forecast_x - this._width / 2 + 1, this.fireball_forecast_y, true)) { ++this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = true; } while (_root.fire_ground.hitTest(this.fireball_forecast_x + this._width / 2, this.fireball_forecast_y, true)) { --this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = false; } } this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } }; }; } movieClip 591 { } movieClip 592 { } movieClip 593 { } movieClip 595 { } movieClip 598 { } movieClip 600 { } movieClip 601 { } movieClip 603 { } movieClip 605 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 606 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 607 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 609 { } movieClip 610 { } movieClip 613 { } movieClip 614 { frame 1 { stop(); } frame 2 { stop(); } } movieClip 615 { } movieClip 617 { frame 1 { stop(); } frame 21 { stop(); } } movieClip 618 { frame 21 { stop(); } } movieClip 619 { frame 154 { gotoAndPlay(1); } frame 156 { stop(); } } movieClip 620 { frame 113 { gotoAndPlay(1); } frame 115 { stop(); } } movieClip 621 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } movieClip 623 { } frame 108 { stop(); stopAllSounds(); clearInterval(bonusInterval); mario.removeMovieClip(); pauseBtnFlag = false; refreshRoundDisplay(); removeAllMovieClips(); this.awardPoints('bonus'); totalItems += itemsCount; trace(totalItems); } movieClip 626 { } movieClip 628 { } movieClip 630 { } movieClip 632 { } movieClip 634 { } movieClip 636 { } movieClip 637 { frame 337 { _root.gotoAndStop('How High3'); } } frame 119 { function startTimer() { clearInterval(timer); _root.gotoAndStop('lvl3'); } function removeAllMovieClips() { fireball1.removeMovieClip(); fireball2.removeMovieClip(); fireball3.removeMovieClip(); purse.removeMovieClip(); blanket.removeMovieClip(); umbrella.removeMovieClip(); lvl3Heart.removeMovieClip(); if (enemyNumber != undefined) { i = 1; while (i <= enemyNumber + 1) { _root['enemy' + i].removeMovieClip(); ++i; } } } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); } frame 129 { function marioOnGirder1() { return _root.girderWeight.ground1.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.girderWeight.ground1.hitTest(mario._x, mario._y + mario._height / 2 + 10, true); } function marioOnGirder2() { return _root.girderWeight.ground2.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.girderWeight.ground2.hitTest(mario._x, mario._y + mario._height / 2 + 10, true); } function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround1.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround2.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.girderWeight.ground1.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.girderWeight.ground2.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } function spawnPie() { if (marioDie || endLevel) { clearInterval(_root.pieSpawnInterval); } else { if (pieCount <= pieLimit && !gameIsPaused && currentLevel == 3) { do { randomSide = generateRandomNumber(1, 2); randomRow = generateRandomNumber(1, 3); } while (randomSide == previousPieCords[0] && randomRow == previousPieCords[1]); previousPieCords[0] = randomSide; previousPieCords[1] = randomRow; enemyProb = generateRandomNumber(1, 100); if (enemyProb <= 20 && gameDifficulty == 3) { enemyName = 'spring'; } else { if (enemyProb <= 10 && gameDifficulty == 2) { enemyName = 'spring'; } else { enemyName = 'pie'; } } _root.attachMovie(enemyName, 'enemy' + enemyNumber, _root.getNextHighestDepth(), {'_x': pieSide[randomSide - 1], '_y': piePosition[randomRow - 1]}); pie.apply(_root['enemy' + enemyNumber]); ++enemyNumber; ++pieCount; } } } stop(); music.start(0, 1000); currentLevel = 3; intervalCounter = 0; pauseBtnInterval = 0; muteBtnInterval = 0; clearInterval(bonusInterval); bonusInterval = setInterval(_root, 'bonusTimer', 2000); bonus = (round * 10 + 40) * 100; endLevel = false; gameIsPaused = false; pauseBtnFlag = true; muteBtnFlag = true; gameIsMuted = false; extraLifeFlag = true; heartCount = 0; heartMoveGirder = false; girderFallSpeed = 0.85; girder_cords = new Array(-32.25, -4.25, 23.75, 51.75, 79.75, 107.75); cord_cords = new Array(62.5, 90.5, 118.5, 146.5, 174.5, 202.5); hearts_cords = new Array(-51.1, -23.1, 4.9, 32.9, 60.9, 88.90000000000001); xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; clearInterval(pieSpawnInterval); switch (gameDifficulty) { case 1: pieSpawnInterval = setInterval(_root, 'spawnPie', generateRandomNumber(1500, 2500)); break; case 2: pieSpawnInterval = setInterval(_root, 'spawnPie', generateRandomNumber(1000, 2000)); break; case 3: pieSpawnInterval = setInterval(_root, 'spawnPie', generateRandomNumber(500, 1500)); } piePosition = new Array(336, 392.2, 449.95); pieSide = new Array(10, 520); enemyNumber = 0; pieCount = 0; pieLimit = 20; previousPieCords = new Array(0, 0); fireballSpeed = 1.5; itemsCount = 0; fireballCount = 0; refreshBonusDisplay(); refreshRoundDisplay(); livesMC.gotoAndStop(lives + 1); _root.ground._visible = false; if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } var temp = new Object(); temp._x = 80; temp._y = 440; temp._xscale = 90; temp._yscale = 90; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 484.5, '_y': 163.7}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 484.5, '_y': 223.95}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 484.5, '_y': 277.05}); _root.attachMovie('lvl3Heart', 'lvl3Heart', _root.getNextHighestDepth(), {'_x': 285.2, '_y': 265.15}); _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 260, '_y': 185}); _root.attachMovie('fireball', 'fireball2', _root.getNextHighestDepth(), {'_x': 60, '_y': 230}); if (gameDifficulty == 3) { _root.attachMovie('fireball', 'fireball3', _root.getNextHighestDepth(), {'_x': 210, '_y': 240}); } i = 1; while (i <= 3) { _root['movingGround' + i].travelledDistance = 0; _root['movingGround' + i].pixels = 1.45; ++i; } ladder.gotoAndStop(gameDifficulty); onEnterFrame = function () { _root.pieMask.swapDepths(_root.getNextHighestDepth()); muteGame(); pauseGame(); quitGame(); checkJumpmaniaMedal(); var v2 = 1; while (v2 <= 3) { fireball.apply(_root['fireball' + v2]); ++v2; } getNewLife(); if (endLevel) { endLevel = false; clearInterval(pieSpawnInterval); _root.gotoAndStop('finish3'); } }; movingGround1.onEnterFrame = function () { if (!gameIsPaused) { this.girderGroup._x += this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 138.1) { this.travelledDistance = 0; this.girderGroup._x = -74.8; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true) && !climbing) { _root.mario._x += this.pixels; } } }; movingGround2.onEnterFrame = function () { if (!gameIsPaused) { this.girderGroup._x -= this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 138.1) { this.travelledDistance = 0; this.girderGroup._x = 74.8; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true) && !climbing) { _root.mario._x -= this.pixels; } } }; girderWeight.onEnterFrame = function () { if (!gameIsPaused) { this.hearts_MC.gotoAndStop(_root.heartCount + 1); if (!marioOnGirder2() && !marioOnGirder1()) { switch (_root.heartCount) { case 0: leftGirderLimit = 5; rightGirderLimit = 0; break; case 1: leftGirderLimit = 4; rightGirderLimit = 1; break; case 2: leftGirderLimit = 3; rightGirderLimit = 2; break; case 3: leftGirderLimit = 2; rightGirderLimit = 3; break; case 4: leftGirderLimit = 1; rightGirderLimit = 4; break; case 5: leftGirderLimit = 0; rightGirderLimit = 5; } } else { if (marioOnGirder1()) { leftGirderLimit = 5; rightGirderLimit = 0; } } if (marioOnGirder2()) { leftGirderLimit = 0; rightGirderLimit = 5; } marioHeight = mario._height / 2; if (marioOnGirder2() || heartMoveGirder) { _root.girderWeight.pulley.play(); _root.girderWeight.girder1._y -= girderFallSpeed; _root.girderWeight.ground1._y -= girderFallSpeed; _root.girderWeight.cord1._height -= girderFallSpeed; _root.girderWeight.girder2._y += girderFallSpeed; _root.girderWeight.ground2._y += girderFallSpeed; _root.girderWeight.cord2._height += girderFallSpeed; _root.girderWeight.hearts_MC._y += girderFallSpeed; if (_root.girderWeight.girder2._y >= girder_cords[rightGirderLimit]) { heartMoveGirder = false; if (_root.girderWeight.girder1._y >= girder_cords[leftGirderLimit] || _root.girderWeight.girder2._y >= girder_cords[rightGirderLimit] && marioOnGirder2()) { _root.girderWeight.pulley.stop(); _root.girderWeight.girder1._y = girder_cords[leftGirderLimit]; _root.girderWeight.ground1._y = girder_cords[leftGirderLimit]; _root.girderWeight.cord1._height = cord_cords[leftGirderLimit]; _root.girderWeight.girder2._y = girder_cords[rightGirderLimit]; _root.girderWeight.ground2._y = girder_cords[rightGirderLimit]; _root.girderWeight.cord2._height = cord_cords[rightGirderLimit]; _root.girderWeight.hearts_MC._y = hearts_cords[rightGirderLimit]; } } } else { if (_root.girderWeight.girder1._y > girder_cords[leftGirderLimit]) { heartMoveGirder = true; } else { _root.girderWeight.pulley.play(); _root.girderWeight.girder1._y += girderFallSpeed; _root.girderWeight.ground1._y += girderFallSpeed; _root.girderWeight.cord1._height += girderFallSpeed; _root.girderWeight.girder2._y -= girderFallSpeed; _root.girderWeight.ground2._y -= girderFallSpeed; _root.girderWeight.cord2._height -= girderFallSpeed; _root.girderWeight.hearts_MC._y -= girderFallSpeed; if (_root.girderWeight.girder2._y <= girder_cords[rightGirderLimit]) { _root.girderWeight.pulley.stop(); _root.girderWeight.girder1._y = girder_cords[leftGirderLimit]; _root.girderWeight.ground1._y = girder_cords[leftGirderLimit]; _root.girderWeight.cord1._height = cord_cords[leftGirderLimit]; _root.girderWeight.girder2._y = girder_cords[rightGirderLimit]; _root.girderWeight.ground2._y = girder_cords[rightGirderLimit]; _root.girderWeight.cord2._height = cord_cords[rightGirderLimit]; _root.girderWeight.hearts_MC._y = hearts_cords[rightGirderLimit]; } } } } }; mario.onEnterFrame = function () { if (!marioDie) { if (!gameIsPaused) { if (_root.dk.hitZone.hitTest(this.hitArea) || _root.fire2.hitZone.hitTest(this.hitArea)) { marioDie = true; } if (_root.purse.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.lvl3Heart.hitTest(this.hitArea)) { ++_root.heartCount; this.awardPoints('heart'); _root.lvl3Heart.gotoAndStop(_root.heartCount + 1); heartMoveGirder = true; } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && canJump && !jumping && !climbing) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; for (;;) { if (!(_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround1.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround2.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.girderWeight.ground1.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.girderWeight.ground2.hitTest(forecast_x, forecast_y + marioHeight - 1, true))) break; if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } for (;;) { if (!(_root.ground.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround1.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround2.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true))) break; ++forecast_x; xspeed = 0; } for (;;) { if (!(_root.ground.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround1.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround2.hitTest(forecast_x + this._width / 2, forecast_y, true))) break; --forecast_x; xspeed = 0; } } if (forecast_x >= 490) { forecast_x = 489; } if (forecast_x <= 35) { forecast_x = 36; } if (forecast_y >= 470) { forecast_y = 469; marioDie = true; } if (forecast_y <= 95) { endLevel = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } } else { stopLevelMusic(currentLevel); this.gotoAndStop('dead'); } }; dk.onEnterFrame = function () { if (gameIsPaused) { this.stop(); } else { this.play(); } }; fireball = function () { this.fireball_xSpeed; this.fireball_ySpeed; this.fireballDirection; this.randomMovement; this.fireballIsFalling; this.fireballGravity; this.fireballMaxY; this.soundFlag; if (this.fireball_xSpeed == undefined) { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.fireballIsFalling = false; this.fireballGravity = 1; this.fireballMaxY = 2; this.soundFlag = true; } this.onEnterFrame = function () { if (!gameIsPaused) { this.gotoAndStop('normal'); if (this.hitZone.hitTest(_root.mario.hitArea)) { _root.marioDie = true; if (_root.climbing && Toast) { Toast = false; com.newgrounds.API.unlockMedal('Toast'); } } if (mario.hitTest(this._x, this._y - 30, true) && _root.soundFlag && _root.jumping) { _root.soundFlag = false; this.awardPoints('fireball'); } if (!_root.jumping) { this.soundFlag = true; } if (_root.ladder.hitTest(this._x, this._y, true) && !this.fireballIsFalling) { this.randomLadder = Math.random(); if (this.randomLadder < 0.05 && !this.climbing) { this.climbing = true; } } if (_root.ladder.hitTest(this._x, this._y + this._height + 10, true) && !this.climbing) { this.randomLadder = Math.random(); if (this.randomLadder < 0.05 && !this.fireballIsFalling) { this.fireballIsFalling = true; } } if (_root.ladderTop.hitTest(this._x, this._y + this._height / 2, true) && this.climbing) { this.climbing = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (_root.ladderBottom.hitTest(this._x, this._y + this._height / 2, true) && this.fireballIsFalling) { this.fireballIsFalling = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } this.randomMovement = Math.random(); if (this.randomMovement < 0.001) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed -= this.fireballGravity; } else { this.fireball_ySpeed += this.fireballGravity; } if (this.fireball_ySpeed > this.fireballMaxY) { this.fireball_ySpeed = this.fireballMaxY; } else { if (this.fireball_ySpeed < -this.fireballMaxY) { this.fireball_ySpeed = -this.fireballMaxY; } } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this.fireball_xSpeed = fireballSpeed; } else { this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.fire_ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } while (_root.fire_ground.hitTest(this.fireball_forecast_x - this._width / 2 + 1, this.fireball_forecast_y, true)) { ++this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = true; } while (_root.fire_ground.hitTest(this.fireball_forecast_x + this._width / 2, this.fireball_forecast_y, true)) { --this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = false; } } this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } }; }; pie = function () { this.pie_xSpeed; this.pie_ySpeed; this.pieGravity; this.pieMaxY; this.pieDie; this.jumpOver; this.soundFlag; this.hammerHitFlag; this.pie_direction; if (pieDie == undefined) { this.pie_xSpeed = 0; this.pie_ySpeed = 0; this.pieGravity = 1; this.pieMaxY = 2; this.pieDie = false; this.jumpOver = false; this.soundFlag = true; this.hammerHitFlag = true; } this.onEnterFrame = function () { if (!gameIsPaused) { if (this._y >= 475) { --pieCount; this.removeMovieClip(); } if (this.hitZone.hitTest(_root.mario.hitArea)) { _root.marioDie = true; } if (mario.hitTest(this) && _root.hammerGet && !hammerHitPie) { ++enemiesHammered; --pieCount; hammerHitPie = true; dieSpark.removeMovieClip(); _root.attachMovie('Die Spark', 'dieSpark', _root.getNextHighestDepth()); dieSpark._x = this._x; dieSpark._y = this._y; this.awardPoints('hammerPie'); this.removeMovieClip(); } if (mario.hitTest(this._x, this._y - 30, true) && this.soundFlag && _root.jumping) { this.soundFlag = false; if (this._currentframe == 1) { this.awardPoints('pie'); } else { this.awardPoints('pieSpecial'); } } this.pie_ySpeed += this.pieGravity; if (this.pie_ySpeed > this.pieMaxY) { this.pie_ySpeed = this.pieMaxY; } this.pie_forecast_x = this._x; this.pie_forecast_y = this._y + this.pie_ySpeed; for (;;) { if (!(_root.movingGround1.hitTest(this._x, this.pie_forecast_y + this._height / 2 - 1, true) || _root.movingGround2.hitTest(this._x, this.pie_forecast_y + this._height / 2 - 1, true))) break; this.gotoAndStop(1); if (_root.movingGround1.hitTest(this._x, this.pie_forecast_y + this._height / 2 - 1, true)) { this.pie_direction = 'left'; this.pie_forecast_x += movingGround1.pixels; } else { this.pie_direction = 'right'; this.pie_forecast_x -= movingGround2.pixels; } this.pieIsFalling = false; --this.pie_forecast_y; this.pie_ySpeed = 0; } if (this.pie_direction == 'left' && this._x > 249 || this.pie_direction == 'right' && this._x < 281) { this.pieIsFalling = true; this.gotoAndStop(2); this.pie_forecast_x = 264.15; } this._x = this.pie_forecast_x; this._y = this.pie_forecast_y; } }; }; } movieClip 640 { } movieClip 643 { } movieClip 644 { } movieClip 645 { } movieClip 646 { } movieClip 648 { } movieClip 651 { } movieClip 652 { } movieClip 653 { } movieClip 654 { } movieClip 659 { } movieClip 660 { } movieClip 661 { } movieClip 667 { } movieClip 668 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } frame 4 { stop(); } frame 5 { stop(); } frame 6 { stop(); } } movieClip 669 { frame 1 { stop(); } } movieClip 673 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } movieClip 674 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 675 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 678 { } movieClip 680 { } frame 134 { stop(); stopAllSounds(); clearInterval(bonusInterval); mario.removeMovieClip(); pauseBtnFlag = false; refreshRoundDisplay(); removeAllMovieClips(); this.awardPoints('bonus'); totalItems += itemsCount; trace(totalItems); } movieClip 684 { frame 133 { _root.gotoAndStop('How High4'); } } frame 145 { function startTimer() { clearInterval(timer); _root.gotoAndPlay('lvl4'); } function removeAllMovieClips() { _root.fireball1.removeMovieClip(); _root.fireball2.removeMovieClip(); _root.fireball3.removeMovieClip(); purse.removeMovieClip(); blanket.removeMovieClip(); umbrella.removeMovieClip(); } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); } frame 155 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } stop(); currentLevel = 4; intervalCounter = 0; pauseBtnInterval = 0; muteBtnInterval = 0; clearInterval(bonusInterval); bonusInterval = setInterval(_root, 'bonusTimer', 2000); bonus = (round * 10 + 40) * 100; endLevel = false; gameIsPaused = false; pauseBtnFlag = true; muteBtnFlag = true; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; fireballSpeed = 1.5; fireballClimbSpeed = 1; itemsCount = 0; fireballCount = 0; rivetCount = 0; refreshBonusDisplay(); refreshRoundDisplay(); livesMC.gotoAndStop(lives + 1); _root.ground._visible = false; if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } var temp = new Object(); temp._x = 90; temp._y = 400; temp._xscale = 90; temp._yscale = 90; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 443, '_y': 156.15}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 187, '_y': 354.2}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 91, '_y': 234.7}); switch (gameDifficulty) { case 1: _root.attachMovie('fireball', 'fireball2', _root.getNextHighestDepth(), {'_x': 273.45, '_y': 345.2}); break; case 2: _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 188.9, '_y': 253.7}); _root.attachMovie('fireball', 'fireball3', _root.getNextHighestDepth(), {'_x': 360.9, '_y': 253.7}); break; case 3: _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 188.9, '_y': 253.7}); _root.attachMovie('fireball', 'fireball2', _root.getNextHighestDepth(), {'_x': 273.45, '_y': 345.2}); _root.attachMovie('fireball', 'fireball3', _root.getNextHighestDepth(), {'_x': 360.9, '_y': 253.7}); } ground.gotoAndStop(gameDifficulty); springs.gotoAndStop(gameDifficulty); if (gameDifficulty == 1) { soleGirder._alpha = 100; } else { soleGirder._alpha = 0; } extraLifeFlag = true; onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); checkJumpmaniaMedal(); var v2 = 1; while (v2 <= 3) { fireball.apply(_root['fireball' + v2]); ++v2; } getNewLife(); if (endLevel) { endLevel = false; _root.gotoAndStop('finish4'); } }; mario.onEnterFrame = function () { if (!marioDie) { if (!gameIsPaused) { if (_root.dk.hitZone.hitTest(this.hitArea) || _root.machine1.hitTest(this.hitArea) || _root.machine2.hitTest(this.hitArea) || _root.machine3.hitTest(this.hitArea) || _root.springs.spring.rivet1.hitTest(this.hitArea) || _root.springs.spring.rivet2.hitTest(this.hitArea) || this._y >= 432) { marioDie = true; } if (_root.purse.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && canJump && !jumping && !climbing) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; while (_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true)) { if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } } if (forecast_x >= 475) { forecast_x = 474; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_y <= 100) { endLevel = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } } else { stopLevelMusic(currentLevel); this.gotoAndStop('dead'); } }; dk.onEnterFrame = function () { if (gameIsPaused) { this.stop(); } else { this.play(); } }; fireball = function () { this.fireball_xSpeed; this.fireball_ySpeed; this.fireballDirection; this.randomMovement; this.fireballIsFalling; this.fireballGravity; if (this.fireball_xSpeed == undefined) { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.fireballIsFalling = false; this.fireballGravity = 1; } this.onEnterFrame = function () { if (!gameIsPaused) { this.gotoAndStop('normal'); if (this.hitZone.hitTest(_root.mario.hitArea)) { _root.marioDie = true; if (_root.climbing && Toast) { Toast = false; com.newgrounds.API.unlockMedal('Toast'); } } if (mario.hitTest(this._x, this._y - 30, true) && _root.soundFlag && _root.jumping) { _root.soundFlag = false; this.awardPoints('fireball'); } if (!_root.jumping) { this.soundFlag = true; } if (_root.ladder.hitTest(this._x, this._y, true) && !this.fireballIsFalling) { this.randomLadder = generateRandomNumber(1, 100); if (this.randomLadder < 3 && !this.climbing) { this.climbing = true; } } if (_root.ladder.hitTest(this._x, this._y + this._height + 10, true) && !this.climbing) { this.randomLadder = generateRandomNumber(1, 100); if (this.randomLadder < 3 && !this.fireballIsFalling) { this.fireballIsFalling = true; } } if (_root.ladderTop.hitTest(this._x, this._y + this._height / 2, true) && this.climbing) { this.climbing = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (_root.ladderBottom.hitTest(this._x, this._y + this._height / 2, true) && this.fireballIsFalling) { this.fireballIsFalling = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } this.randomMovement = Math.random(); if (this.randomMovement < 0.001) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed = -fireballClimbSpeed; } else { this.fireball_ySpeed = fireballClimbSpeed; } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this.fireball_xSpeed = fireballSpeed; } else { this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.fire_ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } while (_root.fire_ground.hitTest(this.fireball_forecast_x - this._width / 2 + 1, this.fireball_forecast_y, true)) { ++this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = true; } while (_root.fire_ground.hitTest(this.fireball_forecast_x + this._width / 2, this.fireball_forecast_y, true)) { --this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = false; } } this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } }; }; } movieClip 688 { } movieClip 689 { } movieClip 690 { } movieClip 691 { } movieClip 693 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } movieClip 695 { } movieClip 698 { } movieClip 699 { } movieClip 700 { } movieClip 701 { } movieClip 702 { } movieClip 704 { } movieClip 705 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 706 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 708 { } movieClip 710 { } movieClip 711 { } movieClip 712 { } movieClip 713 { } movieClip 714 { } movieClip 715 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } frame 160 { stop(); stopAllSounds(); clearInterval(bonusInterval); mario.removeMovieClip(); pauseBtnFlag = false; refreshRoundDisplay(); removeAllMovieClips(); this.awardPoints('bonus'); totalItems += itemsCount; trace(totalItems); } movieClip 718 { } movieClip 719 { frame 1 { stop(); } frame 8 { stop(); } } movieClip 721 { } movieClip 722 { } movieClip 723 { frame 350 { _root.gotoAndStop('How High5'); } } frame 172 { function startTimer() { clearInterval(timer); _root.gotoAndPlay('lvl5'); } function removeAllMovieClips() { purse.removeMovieClip(); blanket.removeMovieClip(); umbrella.removeMovieClip(); fireball1.removeMovieClip(); } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); } frame 182 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround1.hitTest(mario._x, mario._y + mario._height / 2, true) || _root.movingGround2.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } stop(); music2.start(0, 1000); currentLevel = 5; clearInterval(bonusInterval); bonusInterval = setInterval(bonusTimer, 2000); muteBtnInterval = 0; pauseBtnInterval = 0; intervalCounter = 0; barrelNumber = 0; bonus = (round * 10 + 40) * 100; itemsCount = 0; endLevel = false; gameIsPaused = false; pauseBtnFlag = true; muteBtnFlag = true; extraLifeFlag = true; movingGirderFlag; soundFlag = true; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; refreshBonusDisplay(); livesMC.gotoAndStop(lives + 1); if (gameDifficulty == 3) { _root.attachMovie('fireball', 'fireball1', _root.getNextHighestDepth(), {'_x': 440, '_y': 200}); } if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } var temp = new Object(); temp._x = 80; temp._y = 430; temp._xscale = 90; temp._yscale = 90; _root.ground._visible = false; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 86.59999999999999, '_y': 216.65}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 452.8, '_y': 215.75}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 458, '_y': 440}); _root.movingGround1.travelledDistance = 0; _root.movingGround1.pixels = 1.75; _root.movingGround2.travelledDistance = 0; _root.movingGround2.pixels = 2.1; ladder.gotoAndStop(gameDifficulty); onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); checkJumpmaniaMedal(); getNewLife(); fireball.apply(_root.fireball1); if (endLevel) { endLevel = false; _root.gotoAndStop('finish5'); } if (gameDifficulty == 1) { movingGirder2.pie1._visible = false; movingGirder2.pie2._visible = false; } }; movingGround1.onEnterFrame = function () { if (!gameIsPaused) { if (movingGirderFlag) { this.girder._x += this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 120) { this.travelledDistance = 0; this.girder._x = -24; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true) && !climbing) { _root.mario._x += this.pixels; } } if (mario.hitTest(this) && _root.hammerGet && !hammerHitPie) { ++enemiesHammered; --pieCount; hammerHitPie = true; dieSpark.removeMovieClip(); _root.attachMovie('Die Spark', 'dieSpark', _root.getNextHighestDepth()); dieSpark._x = this._x; dieSpark._y = this._y; this.awardPoints('hammerPie'); this.removeMovieClip(); } } }; movingGround2.onEnterFrame = function () { if (!gameIsPaused) { this.girderGroup._x -= this.pixels; this.travelledDistance += this.pixels; if (this.travelledDistance >= 134.4) { this.travelledDistance = 0; this.girderGroup._x = 0; } if (this.hitTest(mario._x, mario._y + mario._height / 2, true) && !climbing) { _root.mario._x -= this.pixels; } } }; movingGrider.onEnterFrame = function () { i = 1; while (i <= 5) { if (_root.mario.hitTest(_root.movingGirder1.pie4._x, _root.movingGirder1.pie4._y - 30, true) && soundFlag && _root.jumping) { soundFlag = false; this.awardPoints('pie'); } ++i; } }; mario.onEnterFrame = function () { if (!marioDie) { if (!gameIsPaused) { if (_root.dk.hitZone.hitTest(this.hitArea) || _root.fire1.hitZone.hitTest(this.hitArea) || _root.movingGirder1.machine.hitTest(this.hitArea) || _root.movingGirder1.pie1.hitTest(this.hitArea) || _root.movingGirder1.pie2.hitTest(this.hitArea) || _root.movingGirder1.pie3.hitTest(this.hitArea) || _root.movingGirder1.pie4.hitTest(this.hitArea) || _root.movingGirder1.pie5.hitTest(this.hitArea) || _root.movingGirder2.fire.hitZone.hitTest(this.hitArea) || this._y >= 450) { marioDie = true; } if (gameDifficulty != 1 && (_root.movingGirder2.pie1.hitTest(this.hitArea) || _root.movingGirder2.pie2.hitTest(this.hitArea))) { marioDie = true; } if (_root.purse.hitTest(this.hitArea)) { ++itemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++itemsCount; ++totalItemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.movingGirder1.machine.hitTest(this._x, this._y + 45, true) && RiskyBusiness) { RiskyBusiness = false; com.newgrounds.API.unlockMedal('Risky Business'); } i = 1; while (i <= 5) { if (_root.movingGirder1['pie' + i].hitTest(this._x, this._y + 30, true) && soundFlag && _root.jumping) { soundFlag = false; this.awardPoints('pie'); break; } ++i; } if (_root.movingGirder2.pie1.hitTest(this._x, this._y + 30, true) && soundFlag && _root.jumping) { soundFlag = false; this.awardPoints('pieSpecial'); } if (_root.movingGirder2.pie2.hitTest(this._x, this._y + 30, true) && soundFlag && _root.jumping) { soundFlag = false; this.awardPoints('pie'); } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && !climbing && canJump && !jumping) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; for (;;) { if (!(_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround1.hitTest(forecast_x, forecast_y + marioHeight - 1, true) || _root.movingGround2.hitTest(forecast_x, forecast_y + marioHeight - 1, true))) break; if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } for (;;) { if (!(_root.ground.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround1.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true) || _root.movingGround2.hitTest(forecast_x - this._width / 2 + 1, forecast_y, true))) break; ++forecast_x; xspeed = 0; } for (;;) { if (!(_root.ground.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround1.hitTest(forecast_x + this._width / 2, forecast_y, true) || _root.movingGround2.hitTest(forecast_x + this._width / 2, forecast_y, true))) break; --forecast_x; xspeed = 0; } } if (forecast_x >= 470) { forecast_x = 469; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_x <= 320 && forecast_y <= 99) { endLevel = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } } else { stopLevelMusic(currentLevel); this.gotoAndStop('dead'); } }; dk.onEnterFrame = function () { if (gameIsPaused) { this.stop(); } else { this.play(); } }; fireball = function () { this.fireball_xSpeed; this.fireball_ySpeed; this.fireballDirection; this.randomMovement; this.fireballIsFalling; this.fireballGravity; if (this.fireball_xSpeed == undefined) { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.fireballIsFalling = false; this.fireballGravity = 1; } this.onEnterFrame = function () { if (!gameIsPaused) { this.gotoAndStop('normal'); if (this.hitZone.hitTest(_root.mario.hitArea)) { _root.marioDie = true; if (_root.climbing && Toast) { Toast = false; com.newgrounds.API.unlockMedal('Toast'); } } if (mario.hitTest(this._x, this._y - 30, true) && _root.soundFlag && _root.jumping) { _root.soundFlag = false; this.awardPoints('fireball'); } this.randomMovement = Math.random(); if (this.randomMovement < 0.001) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed = -fireballClimbSpeed; } else { this.fireball_ySpeed = fireballClimbSpeed; } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this.fireball_xSpeed = fireballSpeed; } else { this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.fire_ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } while (_root.fire_ground.hitTest(this.fireball_forecast_x - this._width / 2 + 1, this.fireball_forecast_y, true)) { ++this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = true; } while (_root.fire_ground.hitTest(this.fireball_forecast_x + this._width / 2, this.fireball_forecast_y, true)) { --this.fireball_forecast_x; this.fireball_xSpeed = 0; this.fireballDirection = false; } } this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } }; }; } movieClip 726 { } movieClip 727 { } movieClip 728 { } movieClip 730 { } movieClip 732 { frame 1 { stop(); } frame 11 { stop(); } } movieClip 736 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } } movieClip 740 { } movieClip 741 { } movieClip 742 { } movieClip 744 { } movieClip 746 { } movieClip 748 { } movieClip 750 { frame 1 { stop(); } } movieClip 755 { } movieClip 756 { frame 1 { _root.movingGirderFlag = true; } frame 70 { _root.movingGirderFlag = false; } } frame 187 { stop(); stopAllSounds(); clearInterval(bonusInterval); mario.removeMovieClip(); pauseBtnFlag = false; refreshRoundDisplay(); removeAllMovieClips(); this.awardPoints('bonus'); totalItems += itemsCount; trace(totalItems); if (gameDifficulty == 1) { movingGirder2.pie1._visible = false; movingGirder2.pie2._visible = false; } movingGirder2.stop(); movingGirder1.stop(); } movieClip 759 { frame 140 { _root.gotoAndStop('How High6'); } } frame 200 { function startTimer() { clearInterval(timer); _root.gotoAndPlay('lvl6'); } function removeAllMovieClips() { purse.removeMovieClip(); blanket.removeMovieClip(); umbrella.removeMovieClip(); hammer1.removeMovieClip(); hammer2.removeMovieClip(); i = 0; while (i <= 8) { _root['rivet' + i].removeMovieClip(); ++i; } if (fireballNumber != undefined) { i = 0; while (i <= fireballNumber + 10) { _root['fireball' + i].removeMovieClip(); ++i; } } } stop(); stopAllSounds(); startSong.start(0, 1); clearInterval(bonusInterval); mario.removeMovieClip(); var timer = setInterval(startTimer, 3000); removeAllMovieClips(); displayPoints(); currentLevel = 0; } frame 211 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } function finishHammer() { trace('Hammer Finish'); startLevelMusic(currentLevel); hammerGet = false; clearInterval(hammerInterval); } stop(); music3.start(0, 1000); currentLevel = 6; intervalCounter = 0; clearInterval(hammerInterval); hammerInterval = 0; bonusInterval = setInterval(bonusTimer, 2000); bonus = (round * 10 + 40) * 100; rivetSoundFlag = true; rivetCount = 0; gameIsPaused = false; pauseBtnInterval = 0; pauseBtnFlag = true; muteBtnInterval = 0; muteBtnFlag = true; extraLifeFlag = true; itemsCount = 0; endLevel = false; hammerHitBarrel = false; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; marioDieFlag = false; hammerGet = false; fireballSpeed = 2; switch (gameDifficulty) { case 1: fireballLimit = 4; spawnProb = 0.008500000000000001; break; case 2: fireballLimit = 6; spawnProb = 0.0125; break; case 3: fireballLimit = 8; spawnProb = 0.0245; } fireballCount = 0; fireballNumber = 0; var spawnProb; refreshBonusDisplay(); livesMC.gotoAndStop(lives + 1); if (Cheater && Key.isDown(32)) { Cheater = false; com.newgrounds.API.unlockMedal('Cheater'); } var temp = new Object(); temp._x = 175; temp._y = 445; temp._xscale = 90; temp._yscale = 90; _root.ground._visible = false; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); _root.attachMovie('hammer', 'hammer1', _root.getNextHighestDepth(), {'_x': 100, '_y': 277}); _root.attachMovie('hammer', 'hammer2', _root.getNextHighestDepth(), {'_x': 265, '_y': 205}); _root.attachMovie('purse', 'purse', _root.getNextHighestDepth(), {'_x': 307, '_y': 453}); _root.attachMovie('blanket', 'blanket', _root.getNextHighestDepth(), {'_x': 435, '_y': 382}); _root.attachMovie('umbrella', 'umbrella', _root.getNextHighestDepth(), {'_x': 138, '_y': 164}); _root.attachMovie('rivet', 'rivet1', _root.getNextHighestDepth(), {'_x': 179.05, '_y': 397.4}); _root.attachMovie('rivet', 'rivet2', _root.getNextHighestDepth(), {'_x': 367.95, '_y': 397.4}); _root.attachMovie('rivet', 'rivet3', _root.getNextHighestDepth(), {'_x': 179.05, '_y': 327}); _root.attachMovie('rivet', 'rivet4', _root.getNextHighestDepth(), {'_x': 367.95, '_y': 327}); _root.attachMovie('rivet', 'rivet5', _root.getNextHighestDepth(), {'_x': 179.05, '_y': 256}); _root.attachMovie('rivet', 'rivet6', _root.getNextHighestDepth(), {'_x': 367.95, '_y': 256}); _root.attachMovie('rivet', 'rivet7', _root.getNextHighestDepth(), {'_x': 179.05, '_y': 185.2}); _root.attachMovie('rivet', 'rivet8', _root.getNextHighestDepth(), {'_x': 367.95, '_y': 185.2}); onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); getNewLife(); checkJumpmaniaMedal(); if (endLevel) { _root.gotoAndStop('finish6'); } if (rivetCount == 8) { rivetCount = 0; endLevel = true; } if (!gameIsPaused) { if (!endLevel && currentLevel == 6 && fireballCount < fireballLimit) { randomFire = Math.random(); randomPosition = Math.random(); if (randomFire < spawnProb) { var v2 = new Object(); if (randomPosition < 0.165) { v2._x = 75; v2._y = 441; } else { if (randomPosition < 0.33) { v2._x = 460; v2._y = 441; } else { if (randomPosition < 0.495) { v2._x = 435; v2._y = 305; } else { if (randomPosition < 0.66) { v2._x = 100; v2._y = 305; } else { if (randomPosition < 0.825) { v2._x = 415; v2._y = 235; } else { v2._x = 120; v2._y = 235; } } } } } ++fireballCount; _root.attachMovie('Big Fireball', 'fireball' + fireballNumber, _root.getNextHighestDepth(), v2); fireball.apply(_root['fireball' + fireballNumber]); _root['fireball' + fireballNumber].spawnFlag = true; ++fireballNumber; } } } }; mario.onEnterFrame = function () { if (!gameIsPaused) { if (!endLevel) { if (!marioDie) { if (_root.dk.hitZone.hitTest(this.hitArea)) { marioDie = true; } if (_root.hammer1.hitTest(this)) { stopLevelMusic(currentLevel); this._y -= 10; _root.hammer1.removeMovieClip(); _root.hammerMusic.start(0, 4); hammerGet = true; hammerInterval = setInterval(finishHammer, 11700); } if (_root.hammer2.hitTest(this)) { stopLevelMusic(currentLevel); this._y -= 10; _root.hammer2.removeMovieClip(); _root.hammerMusic.start(0, 4); hammerGet = true; hammerInterval = setInterval(finishHammer, 11700); } if (_root.purse.hitTest(this.hitArea)) { ++totalItemsCount; ++itemsCount; _root.purse.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.blanket.hitTest(this.hitArea)) { ++totalItemsCount; ++itemsCount; _root.blanket.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } if (_root.umbrella.hitTest(this.hitArea)) { ++totalItemsCount; ++itemsCount; _root.umbrella.removeMovieClip(); if (itemsCount == 3) { this.awardPoints('all items'); } else { this.awardPoints('item'); } } i = 1; while (i <= 8) { if (_root['rivet' + i].hitTest(this) || this.hitTest(_root['rivet' + i]._x, _root['rivet' + i]._y - 40, true)) { ++rivetCount; _root['rivet' + i].removeMovieClip(); this.awardPoints('rivet'); } ++i; } if (this._y <= 153 && Vertigo) { Vertigo = false; com.newgrounds.API.unlockMedal('Vertigo'); } if (Key.isDown(39) && !climbing && !jumping && !hammerHitBarrel) { running = true; direccion = true; xspeed = walk_speed; if (!hammerGet) { this.gotoAndStop('runR'); } else { this.gotoAndStop('hammerMoveR'); } } else { if (Key.isDown(37) && !climbing && !jumping && !hammerHitBarrel) { running = true; direccion = false; xspeed = -walk_speed; if (!hammerGet) { this.gotoAndStop('runL'); } else { this.gotoAndStop('hammerMoveL'); } } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping && !hammerGet) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && canJump && !jumping && !climbing && !hammerGet) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { jumpMove = false; yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { if (!hammerGet) { marioHeight = this._height / 2; } else { marioHeight = 15; } while (_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true)) { if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running && !hammerGet) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } else { if (hammerGet) { if (direccion) { this.gotoAndStop('hammerIdleR'); } else { this.gotoAndStop('hammerIdleL'); } } } } } if (forecast_x >= 470) { forecast_x = 469; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_y >= 451) { forecast_y = 450; jumping = false; canJump = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } else { stopLevelMusic(currentLevel); this.gotoAndStop('dead'); removeAllMovieClips(); } } else { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } } } }; dk.onEnterFrame = function () { if (gameIsPaused) { this.stop(); } else { this.play(); } }; fireball = function () { this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; this.fireballDirection = true; this.randomMovement = 0; this.randomLadder = 0; this.fireballIsFalling = false; this.fireballGravity = 1; this.fireballMaxY = 2; this.climbing = false; this.soundFlag = true; this.spawnFlag = true; this.spawnInterval = 50; this.onEnterFrame = function () { if (this.spawnInterval % 5 == 0 && this.spawnFlag) { this._visible = false; } else { this._visible = true; } --this.spawnInterval; if (this.spawnInterval <= 0) { this.spawnFlag = false; } if (!gameIsPaused) { if (_root.hammerGet) { this.gotoAndStop('vulnerable'); } else { this.gotoAndStop('normal'); } if (mario.hitTest(this) && _root.hammerGet && !hammerHitBarrel) { ++enemiesJumped; --fireballCount; hammerHitBarrel = true; dieSpark.removeMovieClip(); _root.attachMovie('Die Spark', 'dieSpark', _root.getNextHighestDepth()); dieSpark._x = this._x; dieSpark._y = this._y; this.awardPoints('hammerFireball'); this.removeMovieClip(); } if (this.hitZone.hitTest(_root.mario.hitArea) && !this.spawnFlag) { _root.marioDie = true; if (_root.climbing && Toast) { Toast = false; com.newgrounds.API.unlockMedal('Toast'); } } if (mario.hitTest(this._x, this._y - 30, true) && this.soundFlag && _root.jumping) { this.soundFlag = false; this.awardPoints('hammerPie'); } if (!_root.jumping) { this.soundFlag = true; } if (_root.ladder.hitTest(this._x, this._y, true) && !this.fireballIsFalling) { this.randomLadder = Math.random(); if (this.randomLadder < 0.07000000000000001 && !this.climbing) { this.climbing = true; } } if (_root.ladder.hitTest(this._x, this._y + this._height + 10, true) && !this.climbing) { this.randomLadder = Math.random(); if (this.randomLadder < 0.07000000000000001 && !this.fireballIsFalling) { this.fireballIsFalling = true; } } if (_root.ladderFireballEnd.hitTest(this._x, this._y + this._height / 2, true) && this.climbing) { this.climbing = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (_root.ladderBarrelEnd.hitTest(this._x, this._y + this._height / 2, true) && this.fireballIsFalling) { this.fireballIsFalling = false; if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } this.randomMovement = Math.random(); if (this.randomMovement < 0.01) { if (this.fireballDirection) { this.fireballDirection = false; } else { this.fireballDirection = true; } } if (this.climbing) { this.fireball_ySpeed -= this.fireballGravity; } else { this.fireball_ySpeed += this.fireballGravity; } if (this.fireball_ySpeed > this.fireballMaxY) { this.fireball_ySpeed = this.fireballMaxY; } else { if (this.fireball_ySpeed < -this.fireballMaxY) { this.fireball_ySpeed = -this.fireballMaxY; } } if (!this.fireballIsFalling && !this.climbing) { if (this.fireballDirection) { this._xscale = -100; this.fireball_xSpeed = fireballSpeed; } else { this._xscale = 100; this.fireball_xSpeed = -fireballSpeed; } } else { this.fireball_xSpeed = 0; } this.fireball_forecast_x = this._x + this.fireball_xSpeed; this.fireball_forecast_y = this._y + this.fireball_ySpeed; if (!this.fireballIsFalling && !this.climbing) { while (_root.ground.hitTest(this.fireball_forecast_x, this.fireball_forecast_y + this._height / 2 - 1, true)) { --this.fireball_forecast_y; this.fireball_xSpeed = 0; this.fireball_ySpeed = 0; } } if (this._y > 420) { if (this.fireball_forecast_x >= 470) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 80) { this.fireballDirection = true; } } else { if (this._y > 350) { if (this.fireball_forecast_x >= 450) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 95) { this.fireballDirection = true; } } else { if (this._y > 280) { if (this.fireball_forecast_x >= 435) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 110) { this.fireballDirection = true; } } else { if (this._y > 200) { if (this.fireball_forecast_x >= 430) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 120) { this.fireballDirection = true; } } else { if (this._y > 150) { if (this.fireball_forecast_x >= 410) { this.fireballDirection = false; } if (this.fireball_forecast_x <= 140) { this.fireballDirection = true; } } } } } } if (!hammerHitBarrel) { this._x = this.fireball_forecast_x; this._y = this.fireball_forecast_y; } } }; }; } movieClip 762 { } movieClip 765 { } movieClip 767 { } movieClip 769 { } movieClip 770 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } movieClip 771 { instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } instance of movieClip 560 { onClipEvent (enterFrame) { this._visible = false; } } } frame 216 { stop(); stopAllSounds(); clearInterval(bonusInterval); pauseBtnFlag = false; delete eval(this.onEnterFrame()); refreshRoundDisplay(); removeAllMovieClips(); this.awardPoints('bonus'); currentLevel = 0; totalItems += itemsCount; trace(totalItems); if (totalItems >= 18 && PickerUper && gameDifficulty != 1) { PickerUper = false; com.newgrounds.API.unlockMedal('Picker-Uper'); } } movieClip 774 { } movieClip 777 { } movieClip 780 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } frame 4 { stop(); } } movieClip 782 { frame 116 { _root.mario.removeMovieClip(); _root.endLevel = false; _root.rivetCount = 0; } frame 193 { stop(); _root.gotoAndStop('lvl 7'); } } frame 223 { function feetOnLadder() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2 - 1, true); } function groundUnderFeet() { return _root.ground.hitTest(mario._x, mario._y + mario._height / 2, true); } function ladderUnderFeet() { return _root.ladder.hitTest(mario._x, mario._y + mario._height / 2, true); } stop(); currentLevel = 6.5; intervalCounter = 0; rivetCount = 0; gameIsPaused = false; pauseBtnInterval = 0; pauseBtnFlag = true; muteBtnInterval = 0; muteBtnFlag = true; extraLifeFlag = true; endLevel = false; xspeed = 0; yspeed = 0; jumping = false; canJump = true; walkJump = true; running = false; climbing = false; direccion = true; jumpMove = false; marioDie = false; dkHits = 0; livesMC.gotoAndStop(lives + 1); var temp = new Object(); temp._x = 328; temp._y = 163; temp._xscale = 90; temp._yscale = 90; _root.ground._visible = false; _root.attachMovie('mario', 'mario', _root.getNextHighestDepth(), temp); onEnterFrame = function () { muteGame(); pauseGame(); quitGame(); getNewLife(); if (endLevel) { endLevel = false; _root.gotoAndStop('end'); } if (dkHits == 2) { dkHits = 0; endLevel = true; } if (marioDie && SelfPwn) { SelfPwn = false; com.newgrounds.API.unlockMedal('Self Pwnage'); } }; mario.onEnterFrame = function () { if (!gameIsPaused) { if (!endLevel) { if (!marioDie) { if (this._y <= 153 && Vertigo) { Vertigo = false; com.newgrounds.API.unlockMedal('Vertigo'); } if (this.hitTest(_root.dk.hand1) && dkHits < 2) { _root.dk.gotoAndStop(2); ++dkHits; } if (this.hitTest(_root.dk.hand2) && dkHits < 3) { _root.dk.gotoAndStop(3); ++dkHits; } if (Key.isDown(39) && !climbing && !jumping) { running = true; direccion = true; xspeed = walk_speed; this.gotoAndStop('runR'); } else { if (Key.isDown(37) && !climbing && !jumping) { running = true; direccion = false; xspeed = -walk_speed; this.gotoAndStop('runL'); } else { running = false; } } if (groundUnderFeet() || !feetOnLadder()) { climbing = false; } if (Key.isDown(38) && !jumping) { if (feetOnLadder()) { this.gotoAndStop('climb'); yspeed = -climb_speed; climbing = true; jumping = false; } } if (Key.isDown(40)) { if (feetOnLadder() || ladderUnderFeet()) { this.gotoAndStop('climbDown'); yspeed = climb_speed; climbing = true; jumping = false; } } if (Key.isDown(32) && canJump && !jumping && !climbing) { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } if (!running) { gravity = 0.5; } else { if (Key.isDown(39)) { jumpMove = true; } else { if (Key.isDown(37)) { jumpMove = true; } } } yspeed -= jumpSpeed; canJump = false; jumping = true; } if (!climbing) { yspeed += gravity; } if (jumpMove) { if (direccion) { xspeed = jumpSpeedX; } else { xspeed = -jumpSpeedX; } } if (yspeed > maxY) { if (gameDifficulty != 1) { marioDieFlag = true; } yspeed = maxY; } if (groundUnderFeet() and !jumping and !climbing) { jumpMove = false; yspeed = 0; } forecast_x = this._x + xspeed; forecast_y = this._y + yspeed; marioHeight = 0; if (groundUnderFeet() && !climbing) { marioHeight = this._height / 2; while (_root.ground.hitTest(forecast_x, forecast_y + marioHeight - 1, true)) { if (marioDieFlag) { marioDie = true; } jumpMove = false; jumping = false; canJump = true; --forecast_y; xspeed = 0; yspeed = 0; if (!jumping && !running) { if (direccion) { this.gotoAndStop('idleR'); } else { this.gotoAndStop('idleL'); } } } } if (forecast_x >= 470) { forecast_x = 469; } if (forecast_x <= 70) { forecast_x = 71; } if (forecast_y >= 451) { forecast_y = 450; jumping = false; canJump = true; } this._x = forecast_x; this._y = forecast_y; xspeed = 0; if (climbing) { yspeed = 0; } } else { currentLevel = 6; stopLevelMusic(currentLevel); this.gotoAndStop('dead'); removeAllMovieClips(); } } else { if (direccion) { this.gotoAndStop('jumpR'); } else { this.gotoAndStop('jumpL'); } } } }; } movieClip 784 { } movieClip 787 { } frame 230 { stop(); mario.removeMovieClip(); pauseBtnFlag = false; delete eval(this.onEnterFrame()); switch (gameDifficulty) { case 1: if (NoobKong) { NoobKong = false; com.newgrounds.API.unlockMedal('Noob Kong'); } break; case 2: if (DonKingKong) { DonKingKong = false; com.newgrounds.API.unlockMedal('Don King Kong'); } break; case 3: if (SuperKingOfKong) { SuperKingOfKong = false; com.newgrounds.API.unlockMedal('Super King of Kong'); } } if (round >= 2 && HardcoreGamer) { HardcoreGamer = false; com.newgrounds.API.unlockMedal('Hardcore Gamer'); } } movieClip 790 { } movieClip 794 { } movieClip 797 { frame 51 { _root.endLevel = false; } frame 275 { switch (_root.difficulty) { case 1: case 2: question_txt.text = 'TRY AGAIN ON A HARDER DIFFICULTY!'; break; case 3: question_txt.text = 'YOU ARE TRULY THE KING OF KONG! NOW BREAK THE HIGH SCORE!'; } } frame 475 { stop(); trace(_root.round); _root.round += 1; _root.gotoAndStop('How High1'); } } frame 235 { function refreshKeys() { flag = true; clearInterval(keyInterval); } function onScorePosted(event) { if (event.__get__success()) { var v1 = (event.__get__data()).scoreBoard; var v4 = (event.__get__data()).username; var v3 = (event.__get__data()).score; trace('Your Highscore of ' + v3 + ' was posted successfuly to ' + v1.__get__name()); highScorePost_txt.text = 'Your Highscore was posted successfuly to ' + v1.__get__name(); } else { highScorePost_txt.text = 'Error: score not published, log in to post to High Scores'; } } stop(); selectSound = new Sound(this); selectSound.attachSound('select'); enterSound = new Sound(this); enterSound.attachSound('enter'); menu = new Sound(this); menu.attachSound('menu'); clearInterval(bonusInterval); flag = true; pauseBtnFlag = false; gameOver.start(0.5, 1); keyInterval = 0; savefile.data.highScore = highScore; savefile.flush(); removeAllMovieClips(); mario.removeMovieClip(); if (pointsScore > highScore) { highScore = pointsScore; newHigh_txt.text = 'New High Score!'; } else { newHigh_txt.text = ''; } displayPoints(); displayHighScore(); marioSelect.onEnterFrame = function () { if (Key.isDown(40) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 4) { this.gotoAndStop(this._currentframe + 1); } else { this.gotoAndStop(1); } keyInterval = setInterval(refreshKeys, 300); flag = false; } if (Key.isDown(38) && flag) { selectSound.start(0.15, 1); if (this._currentframe != 1) { this.gotoAndStop(this._currentframe - 1); } else { this.gotoAndStop(4); } keyInterval = setInterval(refreshKeys, 300); flag = false; } if ((Key.isDown(13) || Key.isDown(32)) && flag) { gameOver.stop(); enterSound.start(0, 1); flag = false; switch (this._currentframe) { case 1: gotoAndStop('intro'); break; case 2: menu.start(0, 1000); gotoAndPlay('Difficulty'); break; case 3: gotoAndPlay('pMenu'); break; case 4: gameOver.stop(); menu.start(0, 1000); if (gameDifficulty == 3) { gotoAndStop('Hard'); } else { gotoAndStop('Medium'); } } } }; switch (gameDifficulty) { case 1: highScorePost_txt.text = 'Play on Medium or Hard to post your score to the High Scores!'; break; case 2: com.newgrounds.API.postScore('High Scores - Medium', _root.pointsScore); break; case 3: com.newgrounds.API.postScore('High Scores - Hard', _root.pointsScore); } com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.SCORE_POSTED, onScorePosted, this); } movieClip 814 { frame 1 { stop(); } frame 2 { stop(); } frame 3 { stop(); } frame 4 { stop(); } } movieClip 815 { } movieClip 817 { }




http://swfchan.com/28/136365/info.shtml
Created: 9/2 -2019 04:44:58 Last modified: 9/2 -2019 04:44:58 Server time: 06/11 -2024 01:46:58