Combined Code
movieClip 5 blockPush {
}
movieClip 15 {
}
movieClip 25 {
}
movieClip 26 player {
#initclip
Object.registerClass('player', player);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 28 tile_hitbox {
}
movieClip 32 egg_icon {
}
movieClip 35 egg_dispenser_ro {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 41 glow_tile {
}
movieClip 46 egg_dispenser_map {
#initclip
Object.registerClass('egg_dispenser_map', egg_dispenser);
#endinitclip
frame 1 {
stop();
}
instance ro of movieClip 35 egg_dispenser_ro {
onClipEvent (rollOver) {
_parent.RollOver();
}
onClipEvent (release) {
_parent.Release();
}
onClipEvent (rollOut) {
_parent.RollOut();
}
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 48 options_code {
#initclip
Object.registerClass('options_code', options_code);
#endinitclip
}
movieClip 51 {
}
movieClip 52 {
}
movieClip 54 {
}
movieClip 56 {
frame 1 {
stop();
}
}
movieClip 59 {
}
movieClip 60 {
}
movieClip 63 {
}
movieClip 66 {
frame 1 {
stop();
}
}
movieClip 67 Preloader {
frame 1 {
function enterFrameHandler() {
var v2 = 0;
v2 = _root.getBytesLoaded() / _root.getBytesTotal();
if (loadingBar) {
loadingBar.gotoAndStop(int(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 69 Newgrounds API Classes {
#initclip
Object.registerClass('Newgrounds API Classes', com.newgrounds.shims.APIShim);
#endinitclip
}
movieClip 109 {
}
movieClip 112 {
}
movieClip 117 {
}
movieClip 121 {
}
movieClip 122 {
}
movieClip 123 {
}
movieClip 124 FlashAd {
#initclip
Object.registerClass('FlashAd', com.newgrounds.components.FlashAdBase);
#endinitclip
frame 1 {
stop();
}
frame 30 {
function onPlayClick() {
removeAd();
_visible = false;
}
if (this.playButton) {
this.playButton.onRelease = onPlayClick;
}
}
}
movieClip 125 APIConnector {
frame 1 {
function _onLoaded() {
gotoAndStop('invisible');
if (_redirect) {
com.newgrounds.API.loadOfficialVersion();
return undefined;
}
}
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 1283;
case 'Simulate Logged-in User':
//Invalid switch }
v2.debugMode = v2.DEBUG_MODE_LOGGED_IN;
goto 1283;
case 'Off':
v2.debugMode = v2.DEBUG_MODE_LOGGED_OUT;
goto 1283;
case 'Simulate Logged-in User':
v2.debugMode = v2.DEBUG_MODE_NEW_VERSION;
goto 1283;
case 'Simulate Logged-out User':
v2.debugMode = v2.DEBUG_MODE_HOST_BLOCKED;
label 1283:
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 className;
var _redirect;
_x = int(_x);
_y = int(_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 124 FlashAd {
onClipEvent (construct) {
apiId = '';
showBorder = true;
}
}
instance loader of movieClip 67 Preloader {
onClipEvent (construct) {
autoPlay = false;
mainClass = '';
}
}
}
frame 1 {
function adam() {}
function lewis() {}
function bill() {}
function bill2() {}
var rightClick = new ContextMenu();
rightClick.hideBuiltInItems();
_root.menu = rightClick;
var adam = new ContextMenuItem('Programmer - Adam Carmichael', adam);
rightClick.customItems.push(adam);
var lewis = new ContextMenuItem('Graphics - Lewis Goddard', lewis);
rightClick.customItems.push(lewis);
var bill = new ContextMenuItem('Director - Billy Blythin', bill);
rightClick.customItems.push(bill);
var bill2 = new ContextMenuItem('Billy died on a slime wave...', bill2);
rightClick.customItems.push(bill2);
_root.play_button._visible = false;
var kongregate = _global.kongregate;
kongregate.services.connect();
}
movieClip 150 {
frame 1 {
stop();
}
}
instance block_1 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 82) {
gotoAndPlay(5);
}
if (loaded > 84) {
gotoAndPlay(10);
}
if (loaded > 86) {
gotoAndPlay(15);
}
if (loaded > 88) {
gotoAndPlay(20);
}
if (loaded > 90) {
gotoAndPlay(25);
}
if (loaded > 92) {
gotoAndPlay(30);
}
if (loaded > 94) {
gotoAndPlay(35);
}
if (loaded > 96) {
gotoAndPlay(40);
}
if (loaded > 98) {
gotoAndPlay(45);
}
if (loaded >= 100) {
gotoAndPlay(55);
_root.play_button._visible = true;
}
}
}
instance block_2 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 62) {
gotoAndPlay(5);
}
if (loaded > 64) {
gotoAndPlay(10);
}
if (loaded > 66) {
gotoAndPlay(15);
}
if (loaded > 68) {
gotoAndPlay(20);
}
if (loaded > 70) {
gotoAndPlay(25);
}
if (loaded > 72) {
gotoAndPlay(30);
}
if (loaded > 74) {
gotoAndPlay(35);
}
if (loaded > 76) {
gotoAndPlay(40);
}
if (loaded > 78) {
gotoAndPlay(45);
}
if (loaded > 80) {
gotoAndPlay(50);
}
if (loaded > 82) {
gotoAndPlay(55);
}
}
}
instance block_3 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 42) {
gotoAndPlay(5);
}
if (loaded > 44) {
gotoAndPlay(10);
}
if (loaded > 46) {
gotoAndPlay(15);
}
if (loaded > 48) {
gotoAndPlay(20);
}
if (loaded > 50) {
gotoAndPlay(25);
}
if (loaded > 52) {
gotoAndPlay(30);
}
if (loaded > 54) {
gotoAndPlay(35);
}
if (loaded > 56) {
gotoAndPlay(40);
}
if (loaded > 58) {
gotoAndPlay(45);
}
if (loaded > 60) {
gotoAndPlay(50);
}
if (loaded > 62) {
gotoAndPlay(55);
}
}
}
instance block_4 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 22) {
gotoAndPlay(5);
}
if (loaded > 24) {
gotoAndPlay(10);
}
if (loaded > 26) {
gotoAndPlay(15);
}
if (loaded > 28) {
gotoAndPlay(20);
}
if (loaded > 30) {
gotoAndPlay(25);
}
if (loaded > 32) {
gotoAndPlay(30);
}
if (loaded > 34) {
gotoAndPlay(35);
}
if (loaded > 36) {
gotoAndPlay(40);
}
if (loaded > 38) {
gotoAndPlay(45);
}
if (loaded > 40) {
gotoAndPlay(50);
}
if (loaded > 42) {
gotoAndPlay(55);
}
}
}
instance block_5 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 2) {
gotoAndPlay(5);
}
if (loaded > 4) {
gotoAndPlay(10);
}
if (loaded > 6) {
gotoAndPlay(15);
}
if (loaded > 8) {
gotoAndPlay(20);
}
if (loaded > 10) {
gotoAndPlay(25);
}
if (loaded > 12) {
gotoAndPlay(30);
}
if (loaded > 14) {
gotoAndPlay(35);
}
if (loaded > 16) {
gotoAndPlay(40);
}
if (loaded > 18) {
gotoAndPlay(45);
}
if (loaded > 20) {
gotoAndPlay(50);
}
if (loaded > 22) {
gotoAndPlay(55);
}
}
}
// unknown tag 88 length 48
movieClip 158 start_button_2 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
instance play_button of movieClip 158 start_button_2 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
_root.fade.play();
}
}
movieClip 163 {
frame 1 {
stop();
}
frame 49 {
if (_root.player.wave > _root.options.easy_wave && _root.player.difficulty == 1) {
_root.options.easy_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.normal_wave && _root.player.difficulty == 2) {
_root.options.normal_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.hard_wave && _root.player.difficulty == 3) {
_root.options.hard_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
stopAllSounds();
_root.gotoAndPlay(4);
}
}
instance of movieClip 124 FlashAd {
onClipEvent (construct) {
apiId = '21195:4xnHjRWy';
showBorder = false;
}
}
instance of movieClip 125 APIConnector {
onClipEvent (construct) {
apiId = '21195:4xnHjRWy';
connectorType = 'Invisible';
debugMode = 'Off';
encryptionKey = 'xxXx43dt76l0lRlCUCS4U20PvOmVsweH';
movieVersion = '1.0';
redirectOnHostBlocked = true;
redirectOnNewVersion = true;
}
}
movieClip 77 __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 71 __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 70 __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 72 __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 75 __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 81 __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) {
if (getTimer() - com.newgrounds.APICommand._throttleTimestamp >= com.newgrounds.APICommand.THROTTLE_INTERVAL) {
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;
com.newgrounds.APICommand._throttleTimestamp = getTimer();
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 = 10050;
v1.THROTTLE_TICK_INTERVAL = 1000;
v1.THROTTLE_THRESHOLD = 24;
v1._throttleCount = 0;
v1._commandQueue = [];
v1._throttleTimer = setInterval(com.newgrounds.APICommand.onThrottleTimer, com.newgrounds.APICommand.THROTTLE_TICK_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 76 __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 73 __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';
v1.ERROR_WRONG_ENCRYPTION_KEY = 'wrongEncryptionKey';
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 92 __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;
}
apiId = com.newgrounds.API.trimWhitespace(apiId);
if (encryptionKey) {
encryptionKey = com.newgrounds.API.trimWhitespace(encryptionKey);
}
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;
var v4;
v4 = apiId.indexOf(':');
if (v4 != -1) {
com.newgrounds.API._connection.trackerId = int(apiId.substring(0, v4));
} 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 v18;
if (com.newgrounds.API.__get__hasUserSession()) {
v18 = com.newgrounds.API.loadLocal('medals_unlocked_' + com.newgrounds.API.__get__username());
} else {
v18 = com.newgrounds.API.loadLocal('medals_unlocked');
}
v1 = 0;
while (v1 < v10) {
var v6 = v11.medals[v1];
var v15 = v6.medal_unlocked;
var v17 = v18 && v18[v6.medal_id];
var v14 = com.newgrounds.API.__get__hasUserSession() ? v15 : v17;
if (com.newgrounds.API.__get__debugMode() != com.newgrounds.API.RELEASE_MODE) {
v14 = false;
}
var v4 = new com.newgrounds.Medal(com.newgrounds.API._connection, v6.medal_id, v6.medal_name, v14, 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() && v17 && !v15) {
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 v16 = v11.score_boards[v1];
var v9 = new com.newgrounds.ScoreBoard(com.newgrounds.API._connection, v16.name, v16.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.SCORE_POSTED, 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.SCORE_POSTED, 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.trimWhitespace = function (string) {
if (!string) {
return null;
}
var v1 = 0;
while (string.charAt(v1) == ' ') {
++v1;
}
var v3 = string.length - 1;
for (;;) {
if (!(string.charAt(v1) == ' ' && v3 >= 0)) break;
--v3;
}
return string.slice(v1, v3 + 1);
};
v1.VERSION = '3.0.5.6 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 89 __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 90 __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 88 __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 86 __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 87 __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 82 __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 91 __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 83 __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._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 85 __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 74 __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 970 __Packages.egg_dispenser {
#initclip
if (!_global.egg_dispenser) {
var v1 = function () {
super();
};
_global.egg_dispenser = v1;
_global.egg_dispenser extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.worth = _root.player.ed_price - 5;
this.upgrade_price = 30;
this.shoot_timer = 0;
this.level = 1;
this.type = 'tutorial';
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.ed_price += 15;
_root.player.ed_price += _root.player.ed_price % 5;
this.add_array = 0;
};
v2.RollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Egg Dispenser.';
};
v2.RollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.Release = function () {
this.select();
};
v2.select = function () {
if (_root.player.tutorial == 5 || _root.player.tutorial == 6) {
_root.player.tutorial = 6;
_root.tutorial_arrow_6._visible = true;
_root.tutorial_arrow_5._visible = false;
}
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(3);
this.selected = 1;
this.glow._visible = true;
_root.player.updateShop(3);
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 3;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
if (this.level == 3) {
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
if (_root.player.enemies_screen > 0) {
this.shoot_timer += this.level;
if (this.shoot_timer >= 90) {
this.shoot_timer = 0;
for (var v4 in _root.player.enemies) {
if (_root.player.enemies[v4].hitTest(this.range)) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('bow');
_root.soundFX.start();
}
this.shoot_timer = 0;
var v3 = _root.tileset.attachMovie('egg', 'egg' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y - 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 1;
v3 = _root.tileset.attachMovie('egg', 'egg' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y + 60;
v3.level = this.level;
v3.range = 0;
v3.direction = 2;
v3._rotation = 180;
v3 = _root.tileset.attachMovie('egg', 'egg' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x - 20;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 3;
v3._rotation = -90;
v3 = _root.tileset.attachMovie('egg', 'egg' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 60;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 4;
v3._rotation = 90;
break;
}
}
}
}
};
ASSetPropFlags(_global.egg_dispenser.prototype, null, 1);
}
#endinitclip
}
movieClip 971 __Packages.options_code {
#initclip
if (!_global.options_code) {
var v1 = function () {
super();
};
_global.options_code = v1;
_global.options_code extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
_root.soundFX = new Sound();
if (_root._currentframe == 4) {
_root.soundFX.attachSound('ts');
_root.soundFX.start();
}
this.sfx = 1;
this.bgm = 1;
};
v2.onEnterFrame = function () {
if (_root._currentframe == 4) {
if (this.stats_animation == 1 && _root.main_menu.game_stats._y > -45) {
_root.main_menu.game_stats._y -= 15;
if (_root.main_menu.game_stats._y < -45) {
_root.main_menu.game_stats._y = -45;
}
}
if (this.stats_animation == 0 && _root.main_menu.game_stats._y < 247) {
_root.main_menu.game_stats._y += 15;
if (_root.main_menu.game_stats._y > 247) {
_root.main_menu.game_stats._y = 247;
}
}
}
};
ASSetPropFlags(_global.options_code.prototype, null, 1);
}
#endinitclip
}
movieClip 93 __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 (this.__get__fullScreen()) {
this.drawFullScreenRect();
}
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__fullScreen = function () {
return this._fullScreen;
};
v2.__set__fullScreen = function (v) {
this._fullScreen = v;
if (v) {
this.drawFullScreenRect();
} else {
this.clear();
}
return this.__get__fullScreen();
};
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) {
if (this.showPlayButton) {
this.gotoAndStop('loadedPlay');
} else {
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) {
if (this.showPlayButton) {
this.gotoAndStop('loadedPlay');
}
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.drawFullScreenRect = function () {
this._x = (Stage.width - this._width) / 2;
this._y = (Stage.height - this._height) / 2;
this.beginFill(0);
this.moveTo(-Stage.width, -Stage.height);
this.lineTo(Stage.width, -Stage.height);
this.lineTo(Stage.width, Stage.height);
this.lineTo(-Stage.width, Stage.height);
this.lineTo(-Stage.width, -Stage.height);
this.endFill();
};
v2._showBorder = true;
v2.addProperty('_adContainer', v2.__get___adContainer, function () {});
v2.addProperty('_newgroundsButton', v2.__get___newgroundsButton, function () {});
v2.addProperty('fullScreen', v2.__get__fullScreen, v2.__set__fullScreen);
v2.addProperty('showBorder', v2.__get__showBorder, v2.__set__showBorder);
ASSetPropFlags(com.newgrounds.components.FlashAdBase.prototype, null, 1);
}
#endinitclip
}
movieClip 972 __Packages.player {
#initclip
if (!_global.player) {
var v1 = function () {
super();
};
_global.player = v1;
_global.player extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
if (_root._currentframe < 7) {
this.difficulty = 1;
}
if (_root._currentframe > 6 && _root._currentframe < 9) {
this.difficulty = 2;
}
if (_root._currentframe > 8 && _root._currentframe < 11) {
this.difficulty = 3;
}
if (_root._currentframe > 10 && _root._currentframe < 13) {
this.difficulty = 4;
}
if (_root._currentframe > 13 && _root._currentframe < 16) {
this.difficulty = 5;
}
this.newGame(this.difficulty);
};
v2.newGame = function (game) {
this._x = -40;
this._y = 220;
this._visible = true;
_root.house.gotoAndStop(1);
this.space_down = 0;
this.sword._visible = false;
_root.tutorial_mistake_1._visible = false;
this.in_game_help = false;
if (game == 1) {
_root.gotoAndStop(5);
this.xtile = 1;
this.ytile = 6;
this.seconds = 60;
this.second_timer = 0;
this.resources = 0;
this.updateResources(0);
this.health = 7;
this.updateHealth(0);
this.in_game_help = true;
this.enemies_remaining = 5;
this.enemies_screen = 0;
this.enemies_spawning = 1;
this.day = true;
this.wave = 0;
_root.top_bar.wave.text = this.wave;
this.build_mode = 0;
this.device_id = 0;
Mouse.hide();
this.blocks = [];
this.items = [];
this.enemies = [];
this.roll_over_menu = 0;
this.setting_device = false;
this.spawn_speed = 100;
this.enemy_timer = 0;
this.blocks_id = -1;
this.items_id = -1;
this.enemies_id = -1;
this.setPrices();
this.paused = false;
_root.paused_screen._visible = false;
this.items_screen = 0;
if (this.tutorial == undefined) {
_root.tutorial_arrow_1._visible = false;
}
_root.tutorial_arrow_2._visible = false;
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_9._visible = false;
_root.array_tests._visible == false;
}
if (game == 2) {
_root.gotoAndStop(7);
this.xtile = 1;
this.ytile = 6;
this.seconds = 30;
this.second_timer = 0;
this.resources = 0;
this.updateResources(0);
this.health = 7;
this.updateHealth(0);
this.enemies_remaining = 5;
this.enemies_screen = 0;
this.enemies_spawning = 1;
this.day = true;
this.wave = 0;
_root.top_bar.wave.text = this.wave;
this.build_mode = 0;
this.device_id = 0;
Mouse.hide();
this.blocks = [];
this.items = [];
this.enemies = [];
this.roll_over_menu = 0;
this.setting_device = false;
this.spawn_speed = 100;
this.enemy_timer = 0;
this.blocks_id = -1;
this.items_id = -1;
this.enemies_id = -1;
this.setPrices();
this.paused = false;
_root.paused_screen._visible = false;
this.items_screen = 0;
}
if (game == 3) {
_root.gotoAndStop(9);
this.xtile = 1;
this.ytile = 6;
this.seconds = 15;
this.second_timer = 0;
this.resources = 0;
this.updateResources(0);
this.health = 3;
this.updateHealth(0);
this.enemies_remaining = 5;
this.enemies_screen = 0;
this.enemies_spawning = 1;
this.day = true;
this.wave = 0;
_root.top_bar.wave.text = this.wave;
this.build_mode = 0;
this.device_id = 0;
this.pearls = 0;
Mouse.hide();
this.blocks = [];
this.items = [];
this.enemies = [];
this.roll_over_menu = 0;
this.setting_device = false;
this.spawn_speed = 80;
this.enemy_timer = 0;
this.blocks_id = -1;
this.items_id = -1;
this.enemies_id = -1;
this.setPrices();
this.paused = false;
_root.paused_screen._visible = false;
this.items_screen = 0;
}
if (game == 4) {
_root.gotoAndStop(11);
this.xtile = 1;
this.ytile = 6;
this.seconds = 30;
this.second_timer = 0;
this.resources = 0;
this.updateResources(0);
this.health = 1;
this.updateHealth(0);
this.enemies_remaining = 20;
this.enemies_screen = 0;
this.enemies_spawning = 1;
this.day = true;
this.wave = 0;
_root.top_bar.wave.text = this.wave;
this.build_mode = 0;
this.device_id = 0;
this.pearls = 0;
Mouse.hide();
this.blocks = [];
this.items = [];
this.enemies = [];
this.roll_over_menu = 0;
this.setting_device = false;
this.spawn_speed = 40;
this.enemy_timer = 0;
this.blocks_id = -1;
this.items_id = -1;
this.enemies_id = -1;
this.setPrices();
this.paused = false;
_root.paused_screen._visible = false;
this.items_screen = 0;
}
if (game == 5) {
_root.gotoAndStop(14);
this.xtile = 1;
this.ytile = 6;
this.seconds = 30;
this.second_timer = 0;
this.resources = 0;
this.updateResources(0);
this.health = 7;
this.updateHealth(0);
this.enemies_remaining = 5;
this.enemies_screen = 0;
this.enemies_spawning = 1;
this.day = true;
this.wave = 0;
_root.top_bar.wave.text = this.wave;
this.build_mode = 0;
this.device_id = 0;
Mouse.hide();
this.blocks = [];
this.items = [];
this.enemies = [];
this.roll_over_menu = 0;
this.setting_device = false;
this.spawn_speed = 100;
this.enemy_timer = 0;
this.blocks_id = -1;
this.items_id = -1;
this.enemies_id = -1;
this.setPrices();
this.paused = false;
_root.paused_screen._visible = false;
this.items_screen = 0;
}
};
v2.onEnterFrame = function () {
if (this.paused == false) {
if (this._visible == true) {
if (Key.isDown(82) && _root._currentframe >= 5) {
this.respawn();
}
if (this.xtile == 14 && this.ytile == 2 && _root._currentframe == 9) {
this.getArrowKeys();
this.sword._visible = true;
} else {
this.getMovement();
if (this.xtile == 2 && this.ytile == 6 && this.tutorial == 1) {
this.tutorial = 2;
_root.tutorial_arrow_1._visible = false;
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
_root.tutorial_arrow_2._visible = true;
}
}
}
if (this.difficulty == 1) {
if (_root.mob_help._currentframe == 1) {
this.getGUI();
if (this.day == false) {
this.getEnemies();
}
}
} else {
this.getGUI();
if (this.day == false) {
this.getEnemies();
}
}
if (_root._currentframe == 6 || _root._currentframe == 8 || _root._currentframe == 10 || _root._currentframe == 12 || _root._currentframe == 15) {
_root.wave.text = 'You survived ' + this.wave + ' waves...';
}
} else {
this.deselect_all();
this.build_mode = 0;
this.roll_over_menu = 0;
}
};
v2.getArrowKeys = function () {
if (Key.isDown(38)) {
this._y -= 2;
this._rotation = -90;
var v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].hitTest(this.blockPush) && this.blocks[v3].type == 1) {
this._y += 2;
break;
return undefined;
}
++v3;
}
}
if (Key.isDown(40)) {
this._y += 2;
this._rotation = 90;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].hitTest(this.blockPush) && this.blocks[v3].type == 1) {
this._y -= 2;
break;
return undefined;
}
++v3;
}
}
if (Key.isDown(39)) {
this._x += 2;
this._rotation = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].hitTest(this.blockPush) && this.blocks[v3].type == 1) {
this._x -= 2;
break;
return undefined;
}
++v3;
}
}
if (Key.isDown(37)) {
this._x -= 2;
this._rotation = 180;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].hitTest(this.blockPush) && this.blocks[v3].type == 1) {
this._x += 2;
break;
return undefined;
}
++v3;
}
}
if (Key.isDown(32) && this.space_down == 0) {
this.sword.play();
this.space_down = 1;
var v2 = 0;
while (v2 < this.enemies.length) {
if (this.enemies[v2].hitTest(this)) {
this.enemies[v2].hit(1);
this.enemies[v2].artificial_move = 1;
this.enemies[v2].moved = 20;
++this.enemies[v2].creeper_explode;
this.enemies[v2].move_timer = 100;
break;
}
++v2;
}
}
if (!Key.isDown(32)) {
this.space_down = 0;
}
};
v2.getMovement = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += 2;
this._rotation = 0;
this.gotoAndStop(2);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= 2;
this._rotation = 180;
this.gotoAndStop(2);
}
if (this._y < this.ytile * 40 - 20) {
this._y += 2;
this._rotation = 90;
this.gotoAndStop(2);
}
if (this._y > this.ytile * 40 - 20) {
this._y -= 2;
this._rotation = -90;
this.gotoAndStop(2);
}
this.getBed();
if (this._x < this.xtile * 40 - 20) {
} else {
if (this._x > this.xtile * 40 - 20) {
} else {
if (this._y < this.ytile * 40 - 20) {
} else {
if (this._y > this.ytile * 40 - 20) {
} else {
this.gotoAndStop(1);
}
}
}
}
};
v2.getBed = function () {
if (this._x == 500 && this._y == 140) {
if (this._visible == true) {
this._visible = false;
if (this.difficulty == 3) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('portal.mp3');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('door_close');
_root.soundFX.start();
}
}
if (_root.options.sfx == true) {
_root.soundFX.attachSound('settling_music');
_root.soundFX.start();
}
this.updateResources(5 - this.resources % 5, this._x, this._y);
}
_root.house.gotoAndStop(2);
if (_root.cursor._currentframe < 2) {
_root.cursor.gotoAndStop(2);
}
if (this.tutorial == 2) {
var v3 = 0;
while (v3 < this.blocks.length) {
this.blocks[v3].checkPath();
++v3;
}
this.tutorial = 3;
_root.tutorial_arrow_2._visible = false;
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_3._visible = true;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].type == 1 && this.blocks[v3].along_path == 1 && this.blocks[v3].xtile > 1 && this.blocks[v3].xtile < 6 && (this.blocks[v3].ytile == 6 || this.blocks[v3].ytile == 7)) {
_root.tutorial_arrow_3._x = this.blocks[v3]._x;
_root.tutorial_arrow_3._y = this.blocks[v3]._y;
break;
}
++v3;
}
}
}
};
v2.getGUI = function () {
_root.top_bar.mobs_remaining.text = this.enemies_screen;
if (_root._currentframe == 5 || _root._currentframe == 7 || _root._currentframe == 9 || _root._currentframe == 11 || _root._currentframe == 14) {
this.getTime();
}
this.getBuyMenu();
};
v2.updateResources = function (amount, gainx, gainy) {
this.resources += amount;
_root.top_bar.resources.text = this.resources;
var v3 = _root.attachMovie('gain_resources', 'gain_resources' + _root.getNextHighestDepth(), _root.getNextHighestDepth());
v3._x = gainx;
v3._y = gainy - 10;
if (amount > 0) {
v3.change.text = '+' + amount;
_root.options.game_resources += amount;
}
if (amount < 0) {
v3.change.text = amount;
}
if (amount == 0) {
v3.removeMovieClip();
}
v3.onEnterFrame = function () {
this._y -= 0.5;
--this._alpha;
if (this._alpha <= 10) {
this.removeMovieClip();
}
};
if (_root.buy_items._currentframe < 4) {
this.updateShop(_root.buy_items._currentframe);
} else {
this.updateShop(3);
}
};
v2.updateHealth = function (amount) {
this.health += amount;
if (this.health == 7) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = true;
_root.top_bar.heart_4._visible = true;
_root.top_bar.heart_5._visible = true;
_root.top_bar.heart_6._visible = true;
_root.top_bar.heart_7._visible = true;
} else {
if (_root.options.sfx >= 1 && this._x >= -20) {
_root.soundFX.attachSound('hurt');
_root.soundFX.start();
}
}
if (this.health == 6) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = true;
_root.top_bar.heart_4._visible = true;
_root.top_bar.heart_5._visible = true;
_root.top_bar.heart_6._visible = true;
_root.top_bar.heart_7._visible = false;
}
if (this.health == 5) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = true;
_root.top_bar.heart_4._visible = true;
_root.top_bar.heart_5._visible = true;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
if (this.health == 4) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = true;
_root.top_bar.heart_4._visible = true;
_root.top_bar.heart_5._visible = false;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
if (this.health == 3) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = true;
_root.top_bar.heart_4._visible = false;
_root.top_bar.heart_5._visible = false;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
if (this.health == 2) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = true;
_root.top_bar.heart_3._visible = false;
_root.top_bar.heart_4._visible = false;
_root.top_bar.heart_5._visible = false;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
if (this.health == 1) {
_root.top_bar.heart_1._visible = true;
_root.top_bar.heart_2._visible = false;
_root.top_bar.heart_3._visible = false;
_root.top_bar.heart_4._visible = false;
_root.top_bar.heart_5._visible = false;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
if (this.health <= 0) {
this.game_over();
_root.top_bar.heart_1._visible = false;
_root.top_bar.heart_2._visible = false;
_root.top_bar.heart_3._visible = false;
_root.top_bar.heart_4._visible = false;
_root.top_bar.heart_5._visible = false;
_root.top_bar.heart_6._visible = false;
_root.top_bar.heart_7._visible = false;
}
};
v2.onMouseMove = function () {
_root.cursor._x = _root._xmouse;
_root.cursor._y = _root._ymouse;
this.getHelp();
};
v2.getTime = function () {
if (this.day == true) {
if (_root.skip_button._currentframe < 2) {
_root.skip_button.gotoAndStop(1);
}
if (_root.skip_button._currentframe > 3) {
_root.skip_button.gotoAndStop(1);
}
++this.second_timer;
if (this.second_timer >= 60) {
--this.seconds;
this.second_timer = 0;
if (this.seconds <= 0) {
if (this.difficulty == 1 && this.wave == 0) {
this.seconds = 1;
} else {
this.seconds = 0;
this.day = false;
this.newWave();
}
}
}
} else {
if (_root.skip_button._currentframe < 3) {
_root.skip_button.gotoAndStop(3);
}
}
_root.skip_button.time.text = 'Skip (' + this.seconds + ')';
};
v2.getHelp = function () {
if (this._visible == true) {
_root.help.text = 'Dig your way to your house.';
}
};
v2.getBuyMenu = function () {
if (this.build_mode == 0) {
if (_root.buy_items._y < 480) {
_root.buy_items._y += 4;
}
}
if (this.build_mode > 0) {
if (_root.buy_items._y > 360) {
_root.buy_items._y -= 4;
}
}
if (this.roll_over_menu == 0 && _root._ymouse > 350 && this.build_mode > 0) {
this.roll_over_menu = 1;
}
if (this.roll_over_menu == 1 && _root._ymouse < 350 && this.build_mode > 0 && this.setting_device == false) {
this.roll_over_menu = 0;
this.build_mode = 0;
this.deselect_all();
if (this.tutorial == 4) {
this.tutorial = 3;
_root.tutorial_arrow_3._visible = true;
_root.tutorial_arrow_4._visible = false;
}
if (this.tutorial == 6) {
this.tutorial = 5;
_root.tutorial_arrow_5._visible = true;
_root.tutorial_arrow_6._visible = false;
}
if (this.tutorial == 8) {
this.tutorial = 7;
_root.tutorial_arrow_7._visible = true;
_root.tutorial_arrow_8._visible = false;
}
}
};
v2.deselect_all = function () {
var v2 = 0;
while (v2 < this.blocks.length) {
this.blocks[v2].deselect();
if (this.blocks[v2].selected == 1) {
this.blocks[v2].deselect();
break;
}
++v2;
}
var v3 = 0;
while (v3 < this.blocks.length) {
if (this.items[v3].selected == 1) {
this.items[v3].deselect();
break;
}
++v3;
}
};
v2.buy_item = function (item) {
if (item == 1) {
if (this.resources >= this.ed_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
var v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
var v4 = _root.tileset.attachMovie('egg_dispenser_map', 'egg_dispenser_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
if (this.tutorial == 4) {
this.tutorial = 5;
_root.tutorial_arrow_5._visible = true;
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_5._x = v4._x;
_root.tutorial_arrow_5._y = v4._y;
}
this.updateResources(this.ed_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
this.deselect_all();
}
++v3;
}
}
}
if (item == 2) {
if (this.resources >= this.sd_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('snow_dispenser_map', 'snow_dispenser_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.sd_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
if (this.tutorial == 4) {
v3 = 0;
while (v3 < this.blocks.length) {
this.blocks[v3].checkPath();
++v3;
}
this.tutorial = 7;
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_7._visible = true;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].type == 0 && this.blocks[v3].xtile > 1 && this.blocks[v3].xtile < 10 && this.blocks[v3].ytile == 6) {
_root.tutorial_arrow_7._x = this.blocks[v3]._x;
_root.tutorial_arrow_7._y = this.blocks[v3]._y;
break;
}
++v3;
}
}
this.deselect_all();
}
++v3;
}
}
}
if (item == 3) {
if (this.resources >= this.ad_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('arrow_dispenser_map', 'arrow_dispenser_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.ad_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
if (this.tutorial == 4) {
this.tutorial = 9;
_root.tutorial_arrow_9._visible = true;
_root.tutorial_arrow_4._visible = false;
}
this.deselect_all();
}
++v3;
}
}
}
if (item == 4) {
if (this.resources >= this.c_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('cactus_map', 'cactus_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.c_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
if (this.tutorial == 8) {
this.tutorial = 9;
_root.tutorial_arrow_9._visible = true;
_root.tutorial_arrow_8._visible = false;
}
this.deselect_all();
}
++v3;
}
}
}
if (item == 5) {
if (this.resources >= this.wt_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('water_map', 'water_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.wt_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
if (this.tutorial == 8) {
this.tutorial = 9;
_root.tutorial_arrow_9._visible = true;
_root.tutorial_arrow_8._visible = false;
}
this.deselect_all();
}
++v3;
}
}
}
if (item == 6) {
if (this.resources >= this.lt_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('lava_map', 'lava_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.lt_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
this.deselect_all();
}
++v3;
}
}
}
if (item == 7) {
if (this.resources >= this.tnt_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('tnt_map', 'tnt_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.tnt_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
this.deselect_all();
}
++v3;
}
}
}
if (item == 8) {
if (this.resources >= this.fd_price) {
this.build_mode = 0;
this.roll_over_menu = 0;
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].selected == 1) {
v4 = _root.tileset.attachMovie('fireball_dispenser_map', 'fireball_dispenser_map' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = this.blocks[v3]._x;
v4._y = this.blocks[v3]._y;
this.updateResources(this.fd_price * -1, this.blocks[v3]._x, this.blocks[v3]._y);
this.deselect_all();
}
++v3;
}
}
}
};
v2.getEnemies = function () {
this.enemy_timer += 1 + this.wave / 10;
if (this.difficulty >= 4) {
this.enemy_timer += 4;
}
if (this.wave % 10 == 6 && this.difficulty < 4) {
this.enemy_timer += 2;
}
if (this.wave % 10 == 9 && this.difficulty < 4) {
this.spawn_speed = 300;
} else {
this.spawn_speed = 100;
}
if (this.enemy_timer > this.spawn_speed && this.enemies_remaining > 0 && _root._currentframe < 11) {
if (this.wave % 10 == 1 && this.difficulty < 3) {
if (Math.random() < 0.5) {
var v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
var v3 = _root.tileset.attachMovie('zombie', 'zombie' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 2) {
v3 = _root.tileset.attachMovie('spider', 'spider' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 3) {
v3 = _root.tileset.attachMovie('creeper', 'creeper' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 4 && this.difficulty < 3) {
if (Math.random() < 0.5) {
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
v3 = _root.tileset.attachMovie('zombie', 'zombie' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 5) {
v3 = _root.tileset.attachMovie('ghast', 'ghast' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = (10 * this.wave + 100) * -1;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 6) {
v3 = _root.tileset.attachMovie('silverfish', 'silverfish' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 7 && this.difficulty < 3) {
if (Math.random() < 0.5) {
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
v3 = _root.tileset.attachMovie('zombie', 'zombie' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 8) {
v3 = _root.tileset.attachMovie('endermen', 'endermen' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 220;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 9 && this.difficulty < 3) {
v3 = _root.tileset.attachMovie('slime_main', 'slime_main' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 9 && this.difficulty == 3) {
v3 = _root.tileset.attachMovie('magma_cube', 'magma_cube' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 0 && this.difficulty <= 3) {
if (this.wave == 50) {
v3 = _root.tileset.attachMovie('herobrine_boss', 'herobrine_boss' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = -200;
this.enemies_remaining -= 1;
} else {
v3 = _root.tileset.attachMovie('spider_jockey', 'spider_jockey' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = -200;
this.enemies_remaining -= 1;
}
}
if (this.wave % 10 == 0 && this.wave % 20 == 0 && this.difficulty == 3) {
v3 = _root.tileset.attachMovie('spider_jockey', 'spider_jockey' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = -200;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 0 && this.wave % 20 == 10 && this.difficulty == 3) {
v3 = _root.tileset.attachMovie('blaze', 'blaze' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
this.enemy_timer = -200;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 1 && this.difficulty == 3) {
if (Math.random() < 0.5) {
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
v3 = _root.tileset.attachMovie('zombie_pigmen', 'zombie_pigmen' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 4 && this.difficulty == 3) {
if (Math.random() < 0.5) {
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
v3 = _root.tileset.attachMovie('zombie_pigmen', 'zombie_pigmen' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
if (this.wave % 10 == 7 && this.difficulty == 3) {
if (Math.random() < 0.5) {
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
} else {
v3 = _root.tileset.attachMovie('zombie_pigmen', 'zombie_pigmen' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 200;
}
this.enemy_timer = 0;
this.enemies_remaining -= 1;
}
this.update_skip_button();
}
if (this.enemy_timer > this.spawn_speed && this.enemies_remaining > 0 && _root._currentframe == 11) {
v3 = _root.tileset.attachMovie('endermen', 'endermen' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 220;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
this.update_skip_button();
}
if (this.enemy_timer > this.spawn_speed && this.enemies_remaining > 0 && _root._currentframe == 14) {
v3 = _root.tileset.attachMovie('snow_golem', 'snow_golem' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = -40;
v3._y = 220;
this.enemy_timer = 0;
this.enemies_remaining -= 1;
this.update_skip_button();
}
};
v2.update_skip_button = function () {
if (this.enemies_remaining == 0 && this.enemies_screen > 0) {
_root.skip_button.gotoAndStop(4);
}
};
v2.sell_item = function (item) {
if (item == 1) {
for (var v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.ed_price -= 15;
break;
}
}
}
if (item == 2) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.sd_price -= 40;
break;
}
}
}
if (item == 3) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.ad_price -= 50;
break;
}
}
}
if (item == 4) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
break;
}
}
}
if (item == 5) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.wt_price -= 25;
break;
}
}
}
if (item == 6) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.lt_price -= 60;
break;
}
}
}
if (item == 8) {
for (v5 in _root.player.items) {
if (_root.player.items[v5].selected == 1) {
this.updateResources(_root.player.items[v5].worth, _root.player.items[v5]._x, _root.player.items[v5]._y);
_root.player.items[v5].destroy_block();
this.deselect_all();
this.fd_price -= 100;
break;
}
}
}
this.build_mode = 0;
this.roll_over_menu = 0;
for (var v4 in _root.player.items) {
_root.player.items[v4].add_array = 0;
}
this.items = [];
};
v2.upgrade_item = function (item) {
for (var v4 in _root.player.items) {
if (_root.player.items[v4].selected == 1) {
_root.player.items[v4].upgrade();
break;
}
}
if (_root.player.tutorial == 6) {
_root.player.tutorial = 7;
_root.tutorial_arrow_7._visible = true;
_root.tutorial_arrow_6._visible = false;
if (this.tutorial == 7) {
var v3 = 0;
while (v3 < this.blocks.length) {
this.blocks[v3].checkPath();
++v3;
}
v3 = 0;
while (v3 < this.blocks.length) {
if (this.blocks[v3].type == 0 && this.blocks[v3].xtile > 1 && this.blocks[v3].xtile < 6 && this.blocks[v3].ytile == 6) {
_root.tutorial_arrow_7._x = this.blocks[v3]._x;
_root.tutorial_arrow_7._y = this.blocks[v3]._y;
break;
}
++v3;
}
}
}
this.updateShop(3);
};
v2.updateShop = function (frame) {
if (frame == 1) {
if (this.resources < this.ed_price) {
_root.buy_items.egg_dispenser.gotoAndStop(3);
} else {
_root.buy_items.egg_dispenser.gotoAndStop(1);
}
if (this.resources < this.sd_price) {
_root.buy_items.snow_dispenser.gotoAndStop(3);
} else {
_root.buy_items.snow_dispenser.gotoAndStop(1);
}
if (this.resources < this.ad_price) {
_root.buy_items.arrow_dispenser.gotoAndStop(3);
} else {
_root.buy_items.arrow_dispenser.gotoAndStop(1);
}
if (this.resources < this.fd_price) {
_root.buy_items.fireball_dispenser.gotoAndStop(3);
} else {
_root.buy_items.fireball_dispenser.gotoAndStop(1);
}
}
if (frame == 2) {
if (this.resources < this.c_price) {
_root.buy_items.cactus.gotoAndStop(3);
} else {
_root.buy_items.cactus.gotoAndStop(1);
}
if (this.resources < this.wt_price) {
_root.buy_items.water.gotoAndStop(3);
} else {
_root.buy_items.water.gotoAndStop(1);
}
if (this.resources < this.lt_price) {
_root.buy_items.lava.gotoAndStop(3);
} else {
_root.buy_items.lava.gotoAndStop(1);
}
if (this.resources < this.tnt_price) {
_root.buy_items.tnt.gotoAndStop(3);
} else {
_root.buy_items.tnt.gotoAndStop(1);
}
}
if (frame == 3) {
for (var v3 in _root.player.items) {
if (_root.player.items[v3].selected == 1) {
_root.buy_items.sell_item.worth.text = _root.player.items[v3].worth;
if (this.resources < _root.player.items[v3].upgrade_price) {
_root.buy_items.upgrade_item.gotoAndStop(3);
} else {
_root.buy_items.upgrade_item.gotoAndStop(1);
}
if (_root.player.items[v3].level < 3) {
_root.buy_items.upgrade_item.worth.text = _root.player.items[v3].upgrade_price;
} else {
_root.buy_items.upgrade_item.worth.text = 'No upgrade!';
_root.buy_items.upgrade_item.gotoAndStop(3);
}
}
}
}
if (frame == 4) {
for (v3 in _root.player.items) {
if (_root.player.items[v3].selected == 1) {
_root.buy_items.sell_item.worth.text = _root.player.items[v3].worth;
}
}
}
};
v2.check_new_wave = function () {
if (this.wave == 50) {
this.day = true;
_root.skip_button.gotoAndStop(4);
if (this.difficulty == 1) {
this.seconds = 15;
}
if (this.difficulty == 2) {
this.seconds = 10;
}
if (this.difficulty == 3) {
this.seconds = 5;
}
if (this.difficulty == 4) {
this.seconds = 5;
}
if (this.difficulty == 5) {
this.seconds = 1;
}
this.enemies = [];
if (_root.options.sfx == true) {
_root.soundFX.attachSound('settling_music');
_root.soundFX.start();
}
}
if (this.enemies_screen == 0 && this.enemies_remaining == 0) {
this.day = true;
_root.skip_button.gotoAndStop(4);
if (this.difficulty == 1) {
this.seconds = 15;
}
if (this.difficulty == 2) {
this.seconds = 10;
}
if (this.difficulty == 3) {
this.seconds = 5;
}
if (this.difficulty == 4) {
this.seconds = 5;
}
if (this.difficulty == 5) {
this.seconds = 1;
}
this.enemies = [];
if (_root.options.sfx == true) {
_root.soundFX.attachSound('settling_music');
_root.soundFX.start();
}
} else {
if (this.difficulty == 5 && this.wave >= 3 && this.enemies_remaining == 0) {
this.newWave();
}
}
};
v2.newWave = function () {
++this.wave;
if (this.wave == 11 && _root.options.easy_wave < 10 && this.difficulty == 1) {
var v4 = _root.tileset.attachMovie('notification_large2', 'notification_large2' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = 320;
v4._y = 240;
}
if (this.wave == 21 && _root.options.normal_wave < 20 && this.difficulty == 2) {
v4 = _root.tileset.attachMovie('notification_large_1', 'notification_large_1' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = 320;
v4._y = 240;
}
_root.options.waves = this.wave;
_root.top_bar.wave.text = this.wave;
this.enemies_remaining = 4 + this.wave;
if (this.wave % 10 == 6) {
this.enemies_remaining *= 2;
}
if (this.wave % 10 == 5 && this.wave == 5) {
this.enemies_remaining = 1;
}
if (this.wave % 10 == 5 && this.wave > 5) {
this.enemies_remaining = 1 + (this.wave - 5) / 10;
}
if (this.wave % 10 == 0 && this.wave == 10) {
this.enemies_remaining = 1;
}
if (this.wave % 10 == 0 && this.wave > 10) {
this.enemies_remaining = 1 + (this.wave - 20) / 10;
}
if (this.wave % 10 == 8) {
this.enemies_remaining = Math.round(5 + this.wave / 8);
}
if (this.wave % 10 == 9) {
this.enemies_remaining = Math.round(5 + this.wave / 9);
}
if (this.wave % 10 == 0 && this.wave == 50) {
this.enemies_remaining = 1;
}
if (this.difficulty == 4) {
this.enemies_remaining = 20 + this.wave;
}
if (this.difficulty == 5) {
this.enemies_remaining = 5 + this.wave;
}
for (var v3 in _root.player.items) {
if (_root.player.items[v3].worth > 5) {
_root.player.items[v3].worth -= 5;
}
}
stopAllSounds();
if ((this.wave % 10 == 5 || this.wave % 10 == 0) && this.difficulty < 4) {
if (this.wave == 50) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('hb_wave');
_root.soundFX.start();
}
this.enemy_timer = -150;
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('boss_music');
_root.soundFX.start();
}
this.enemy_timer = -100;
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('wave_complete');
_root.soundFX.start();
}
this.enemy_timer = 0;
if (this.wave == 50) {
this.enemy_timer = -50;
}
}
if (this.difficulty == 1 && this.in_game_help) {
if (this.wave == 1) {
_root.mob_help.gotoAndStop(2);
}
if (this.wave == 2) {
_root.mob_help.gotoAndStop(3);
}
if (this.wave == 3) {
_root.mob_help.gotoAndStop(4);
}
if (this.wave == 5) {
_root.mob_help.gotoAndStop(5);
}
if (this.wave == 6) {
_root.mob_help.gotoAndStop(6);
}
if (this.wave == 8) {
_root.mob_help.gotoAndStop(7);
}
if (this.wave == 9) {
_root.mob_help.gotoAndStop(8);
}
if (this.wave == 10) {
_root.mob_help.gotoAndStop(9);
}
}
};
v2.setPrices = function () {
this.ed_price = 30;
this.sd_price = 75;
this.ad_price = 100;
this.c_price = 20;
this.wt_price = 25;
this.lt_price = 150;
this.tnt_price = 150;
this.fd_price = 200;
this.money_multiplier = 1;
};
v2.game_over = function () {
if (this._visible == true) {
_root.player.create_smoke(this._x, this._y);
}
_root.fade.play();
this._visible = false;
this.paused = false;
};
v2.respawn = function () {
_root.options.respawn = this.difficulty;
_root.gotoAndStop(13);
};
v2.create_smoke = function (smoke_x, smoke_y) {
var v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y + 1;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y - 1;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y - 3;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y + 3;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y - 5;
v4 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v4._x = smoke_x;
v4._y = smoke_y + 5;
};
v2.water_sizzle = function (smoke_x, smoke_y) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('fizz');
_root.soundFX.start();
}
this.create_smoke(smoke_x + 20, smoke_y + 20);
};
v2.quit_game = function () {
_root.fade2.play();
};
v2.start_wave = function () {
_root.mob_help.gotoAndStop(1);
};
ASSetPropFlags(_global.player.prototype, null, 1);
}
#endinitclip
}
movieClip 973 __Packages.water_map {
#initclip
if (!_global.water_map) {
var v1 = function () {
super();
};
_global.water_map = v1;
_global.water_map extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
if (_root._currentframe == 9) {
_root.player.water_sizzle(this._x, this._y);
this.destroy_block();
}
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.add_array = 0;
this.id = _root.player.items_id;
this.worth = _root.player.wt_price - 5;
this.upgrade_price = 40;
this.level = 1;
this.check_enemies = 0;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.wt_price += 25;
_root.player.wt_price += _root.player.wt_price % 5;
};
v2.onRollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Water Trench.';
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onRelease = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(4);
this.selected = 1;
this.glow._visible = true;
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
this.fire();
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
if (_root.player.paused == false && _root.player.enemies_screen > 0) {
++this.check_enemies;
if (this.check_enemies >= 20) {
this.check_enemies = 0;
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
_root.player.enemies[v3].hit_water(this.level + 1);
this.check_enemies = 0;
break;
}
}
}
}
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 3;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
};
ASSetPropFlags(_global.water_map.prototype, null, 1);
}
#endinitclip
}
movieClip 974 __Packages.egg {
#initclip
if (!_global.egg) {
var v1 = function () {
super();
};
_global.egg = v1;
_global.egg extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this._visible = false;
this.check_destroy();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
if (this.direction == 1) {
this._y -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 2) {
this._y += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 3) {
this._x -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 4) {
this._x += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.range % 20 == 0) {
this.check_destroy();
}
}
};
v2.check_destroy = function () {
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
if (this.level == 1) {
_root.player.enemies[v3].hit(1);
}
if (this.level == 2) {
_root.player.enemies[v3].hit(1.5);
}
if (this.level == 3) {
_root.player.enemies[v3].hit(2);
}
this.destroy();
break;
return undefined;
}
}
for (var v4 in _root.player.blocks) {
if (_root.player.blocks[v4].glow.hitTest(this) && _root.player.blocks[v4].type == 1) {
this.destroy();
break;
}
}
};
v2.destroy = function () {
this.removeMovieClip();
};
ASSetPropFlags(_global.egg.prototype, null, 1);
}
#endinitclip
}
movieClip 975 __Packages.particle {
#initclip
if (!_global.particle) {
var v1 = function () {
super();
};
_global.particle = v1;
_global.particle extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
if (this.type == undefined) {
this.xMove = Math.floor(Math.random() * 5) + 1;
if (Math.random() < 0.5) {
this.xMove *= -1;
}
}
if (this.type == 2) {
this.xMove = Math.floor(Math.random() * 3) + 1;
if (Math.random() < 0.5) {
this.xMove *= -1;
}
this.gravity = -4;
}
if (this.type == 3) {
this.colour = new Color(this);
}
};
v2.onEnterFrame = function () {
this._y -= 0.5;
this._y += this.gravity;
this.gravity += 0.5;
if (this.xMove < 0) {
this.xMove += 0.3;
if (this.xMove > 0) {
this.xMove = 0;
}
}
if (this.xMove > 0) {
this.xMove -= 0.3;
if (this.xMove < 0) {
this.xMove = 0;
}
}
this._x += this.xMove;
if (this.type == 1) {
this._alpha -= 0.5;
if (this._alpha < 5) {
this.removeMovieClip();
}
}
if (this.type == 2) {
var v3 = _root.tileset.attachMovie('smoke_particle', 'smoke_particle' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.type = 3;
v3._xscale = 30;
v3._yscale = 30;
if (this.gravity > 4) {
this.removeMovieClip();
}
}
if (this.type == 3) {
if (this._currentframe <= 3) {
this.colour.setRGB(16711680);
}
if (this._currentframe > 3 && this._currentframe <= 10) {
this.colour.setRGB(16737792);
}
if (this._currentframe > 10 && this._currentframe <= 15) {
this.colour.setRGB(16750950);
}
if (this._currentframe > 15 && this._currentframe <= 20) {
this.colour.setRGB(13421772);
}
if (this._currentframe > 20) {
this.colour.setRGB(16777215);
}
}
};
ASSetPropFlags(_global.particle.prototype, null, 1);
}
#endinitclip
}
movieClip 976 __Packages.zombie_pigmen {
#initclip
if (!_global.zombie_pigmen) {
var v1 = function () {
super();
};
_global.zombie_pigmen = v1;
_global.zombie_pigmen extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
if (_root.player.difficulty == 1 && _root.player.wave < 5) {
this.speed = 1;
} else {
this.speed = 2;
}
this.frozen = 0;
this.initial_speed = this.speed;
if (this.xtile == undefined) {
this.xtile = 1;
}
if (this.ytile == undefined) {
this.ytile = 6;
}
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('zombiepigmen1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('zombiepigmen2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (_root.player._visible == true) {
if (this.xtile == _root.player.xtile && this.ytile == _root.player.ytile) {
this.destroy_enemy();
return undefined;
}
}
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('zombiepigmendeath');
_root.soundFX.start();
}
_root.player.updateResources(5 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_zombie_pigmen_resources += 10;
++_root.options.game_zombie_pigmen_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.updateHealth(-1);
++_root.options.game_zombie_pigmen_hurt;
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.zombie_pigmen.prototype, null, 1);
}
#endinitclip
}
movieClip 977 __Packages.snow_golem {
#initclip
if (!_global.snow_golem) {
var v1 = function () {
super();
};
_global.snow_golem = v1;
_global.snow_golem extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 2;
this.speed = 4;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 150;
this.jumping = 0;
this.slime = true;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('snow1');
_root.soundFX.start();
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
this.moveTile();
this.getMove();
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('snow2');
_root.soundFX.start();
}
_root.player.updateResources(25 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.options.game_mobs += 1;
_root.player.create_smoke(this._x, this._y);
_root.player.check_new_wave();
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_mc_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.snow_golem.prototype, null, 1);
}
#endinitclip
}
movieClip 978 __Packages.herobrine_boss {
#initclip
if (!_global.herobrine_boss) {
var v1 = function () {
super();
};
_global.herobrine_boss = v1;
_global.herobrine_boss extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 10;
this.speed = 2;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.fb_hit = 0;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('thunder1');
_root.soundFX.start();
}
_root.gradient.play();
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.getMove();
} else {
this.frozen -= 3;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += 2;
}
if (this.direction == 'down') {
this._y -= 2;
}
if (this.direction == 'left') {
this._x += 2;
}
if (this.direction == 'right') {
this._x -= 2;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.moveTile();
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
if (this.health % 10 == 0) {
if (Math.random() < 0.5) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('thunder1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('thunder2');
_root.soundFX.start();
}
}
}
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1 && this._x >= -20) {
_root.soundFX.attachSound('hurt');
_root.soundFX.start();
}
_root.player.updateResources(500 * _root.player.money_multiplier, this._x, this._y);
_root.day = true;
_root.skip_button.gotoAndStop(4);
if (_root.player.difficulty == 1) {
_root.player.seconds = 15;
}
if (_root.player.difficulty == 2) {
_root.player.seconds = 10;
}
if (_root.player.difficulty == 3) {
_root.player.seconds = 5;
}
_root.player.enemies = [];
if (_root.options.sfx == true) {
_root.soundFX.attachSound('settling_music');
_root.soundFX.start();
}
_root.options.game_herobrine_resources += 100;
++_root.options.game_herobrine_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
_root.gradient.play();
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-3);
++_root.options.game_herobrine_resources;
_root.gradient.play();
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.herobrine_boss.prototype, null, 1);
}
#endinitclip
}
movieClip 979 __Packages.notification_large {
#initclip
if (!_global.notification_large) {
var v1 = function () {
super();
};
_global.notification_large = v1;
_global.notification_large extends MovieClip;
var v2 = v1.prototype;
v2.onEnterFrame = function () {
this._y -= 1;
if (this._y < 200) {
--this._alpha;
if (this._alpha <= 5) {
this.removeMovieClip();
}
}
};
ASSetPropFlags(_global.notification_large.prototype, null, 1);
}
#endinitclip
}
movieClip 980 __Packages.skeleton {
#initclip
if (!_global.skeleton) {
var v1 = function () {
super();
};
_global.skeleton = v1;
_global.skeleton extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
if (_root.player.difficulty == 1 && _root.player.wave < 5) {
this.speed = 1;
} else {
this.speed = 2;
}
this.frozen = 0;
this.initial_speed = this.speed;
if (this.xtile == undefined) {
this.xtile = 1;
}
if (this.ytile == undefined) {
this.ytile = 6;
}
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
if (this.direction == undefined) {
this.direction = 'right';
}
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
if (Math.random() < 0.5) {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('skeleton1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('skeleton2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (_root.player._visible == true) {
if (this.xtile == _root.player.xtile && this.ytile == _root.player.ytile) {
_root.player.updateHealth(-1);
}
}
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('skeletondeath');
_root.soundFX.start();
}
_root.player.updateResources(5 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_skeleton_resources += 10;
++_root.options.game_skeleton_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_skeleton_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.skeleton.prototype, null, 1);
}
#endinitclip
}
movieClip 981 __Packages.snow_dispenser {
#initclip
if (!_global.snow_dispenser) {
var v1 = function () {
super();
};
_global.snow_dispenser = v1;
_global.snow_dispenser extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.add_array = 0;
this.worth = _root.player.sd_price - 5;
this.upgrade_price = 100;
this.shoot_timer = 0;
this.level = 1;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.sd_price += 40;
++_root.player.items_id;
this.id = _root.player.items_id;
};
v2.RollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Snow Dispenser.';
};
v2.RollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.Release = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(6);
this.selected = 1;
this.glow._visible = true;
_root.player.updateShop(3);
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 3;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
if (this.level == 3) {
_root.player.updateShop(3);
}
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
if (_root.player.enemies_screen > 0) {
this.shoot_timer += this.level;
if (this.shoot_timer >= 110) {
this.shoot_timer = 0;
for (var v4 in _root.player.enemies) {
if (_root.player.enemies[v4].hitTest(this.range)) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('bow');
_root.soundFX.start();
}
this.shoot_timer = 0;
var v3 = _root.tileset.attachMovie('snow', 'snow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y - 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 1;
v3 = _root.tileset.attachMovie('snow', 'snow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y + 60;
v3.level = this.level;
v3.range = 0;
v3.direction = 2;
v3._rotation = 180;
v3 = _root.tileset.attachMovie('snow', 'snow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x - 20;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 3;
v3._rotation = -90;
v3 = _root.tileset.attachMovie('snow', 'snow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 60;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 4;
v3._rotation = 90;
break;
}
}
}
}
};
ASSetPropFlags(_global.snow_dispenser.prototype, null, 1);
}
#endinitclip
}
movieClip 982 __Packages.snow {
#initclip
if (!_global.snow) {
var v1 = function () {
super();
};
_global.snow = v1;
_global.snow extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this._visible = false;
this.check_destroy();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
if (this.direction == 1) {
this._y -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 2) {
this._y += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 3) {
this._x -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 4) {
this._x += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.range % 20 == 0) {
this.check_destroy();
}
}
};
v2.check_destroy = function () {
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
_root.player.enemies[v3].hit(0.5 * this.level);
if (_root.player.enemies[v3].frozen <= 0) {
_root.player.enemies[v3].frozen = 30 * this.level;
}
this.destroy();
break;
return undefined;
}
}
for (var v4 in _root.player.blocks) {
if (_root.player.blocks[v4].glow.hitTest(this) && _root.player.blocks[v4].type == 1) {
this.destroy();
break;
}
}
};
v2.destroy = function () {
this.removeMovieClip();
};
ASSetPropFlags(_global.snow.prototype, null, 1);
}
#endinitclip
}
movieClip 983 __Packages.spider {
#initclip
if (!_global.spider) {
var v1 = function () {
super();
};
_global.spider = v1;
_global.spider extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
if (_root.player.difficulty == 1 && _root.player.wave < 5) {
this.speed = 2;
} else {
this.speed = 4;
}
this.frozen = 0;
this.initial_speed = this.speed;
if (this.xtile == undefined) {
this.xtile = 1;
}
if (this.ytile == undefined) {
this.ytile = 6;
}
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
if (this.direction == undefined) {
this.direction = 'right';
}
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('spider1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('spider2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += 2;
}
if (this.direction == 'down') {
this._y -= 2;
}
if (this.direction == 'left') {
this._x += 2;
}
if (this.direction == 'right') {
this._x -= 2;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.moveTile();
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('spiderdeath');
_root.soundFX.start();
}
_root.player.updateResources(10 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_spider_resources += 15;
++_root.options.game_spider_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_spider_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.spider.prototype, null, 1);
}
#endinitclip
}
movieClip 984 __Packages.creeper {
#initclip
if (!_global.creeper) {
var v1 = function () {
super();
};
_global.creeper = v1;
_global.creeper extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
this.speed = 2;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
this.creeper_explode = 0;
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
if (this.creeper_explode == 1) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('creeper1');
_root.soundFX.start();
}
this.creeper_explode = 2;
}
if (this.creeper_explode > 0) {
++this.creeper_explode;
}
if (this.creeper_explode >= 20) {
this.explode();
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved < 20) {
if (this.direction == 'up') {
this._y += 1;
}
if (this.direction == 'down') {
this._y -= 1;
}
if (this.direction == 'left') {
this._x += 1;
}
if (this.direction == 'right') {
this._x -= 1;
}
++this.moved;
if (this.moved == 20) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('creeperdeath');
_root.soundFX.start();
}
_root.player.updateResources(15 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_creeper_resources += 20;
++_root.options.game_creeper_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
this.explode();
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-7);
++_root.options.game_creeper_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
v2.explode = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('explode');
_root.soundFX.start();
}
var v3 = _root.tileset.attachMovie('Explosion', 'Explosion' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.create_smoke(this._x, this._y);
_root.player.create_smoke(this._x, this._y);
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
ASSetPropFlags(_global.creeper.prototype, null, 1);
}
#endinitclip
}
movieClip 985 __Packages.ghast {
#initclip
if (!_global.ghast) {
var v1 = function () {
super();
};
_global.ghast = v1;
_global.ghast extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 6;
this.speed = 1;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.flying = true;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('ghast1');
_root.soundFX.start();
}
_root.player.update_skip_button();
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
this.moveTile();
this.getMove();
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (_root.player.blockPush.hitTest(this)) {
this.destroy_enemy();
}
};
v2.getMove = function () {
if (this.moved < 20) {
if (this.direction == 'up') {
this._y += 1;
}
if (this.direction == 'down') {
this._y -= 1;
}
if (this.direction == 'left') {
this._x += 1;
}
if (this.direction == 'right') {
this._x -= 1;
}
++this.moved;
if (this.moved == 20) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health % 10 == 0) {
if (Math.random() < 0.5) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('ghasthit1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('ghasthit2');
_root.soundFX.start();
}
}
}
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('ghastdeath');
_root.soundFX.start();
}
_root.player.updateResources(50 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_ghast_resources += 50;
++_root.options.game_ghast_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-3);
++_root.options.game_ghast_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.ghast.prototype, null, 1);
}
#endinitclip
}
movieClip 986 __Packages.silverfish {
#initclip
if (!_global.silverfish) {
var v1 = function () {
super();
};
_global.silverfish = v1;
_global.silverfish extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave / 3;
this.speed = 4;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('silverfish1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('silverfish2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('creeperdeath');
_root.soundFX.start();
}
_root.player.updateResources(5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_silverfish_resources += 5;
++_root.options.game_silverfish_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_silverfish_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.silverfish.prototype, null, 1);
}
#endinitclip
}
movieClip 987 __Packages.endermen {
#initclip
if (!_global.endermen) {
var v1 = function () {
super();
};
_global.endermen = v1;
_global.endermen extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
this.speed = 8;
this.frozen = 0;
this.initial_speed = this.speed;
if (this.xtile == undefined) {
this.xtile = 1;
}
if (this.ytile == undefined) {
this.ytile = 6;
}
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('endermen1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('endermen2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.hitTest(_root.house)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += 2;
}
if (this.direction == 'down') {
this._y -= 2;
}
if (this.direction == 'left') {
this._x += 2;
}
if (this.direction == 'right') {
this._x -= 2;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.moveTile();
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (_root.player._visible == true) {
if (this.xtile == _root.player.xtile && this.ytile == _root.player.ytile) {
this.destroy_enemy();
return undefined;
}
}
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
this.hit(points);
var v3 = _root.tileset.attachMovie('bubble', 'bubble' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.type = 1;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('endermendeath');
_root.soundFX.start();
}
if (_root.player.difficulty < 4) {
_root.player.updateResources(20 + 5 * _root.player.money_multiplier, this._x, this._y);
} else {
_root.player.updateResources(5 + 5 * _root.player.money_multiplier, this._x, this._y);
}
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_endermen_resources += 25;
++_root.options.game_endermen_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
if (_root.player.difficulty == 3 && _root.player.wave > 10) {
var v3 = _root.tileset.attachMovie('ender_pearl', 'ender_pearl' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
}
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.updateHealth(-1);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
++_root.options.game_endermen_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.endermen.prototype, null, 1);
}
#endinitclip
}
movieClip 988 __Packages.slime_main {
#initclip
if (!_global.slime_main) {
var v1 = function () {
super();
};
_global.slime_main = v1;
_global.slime_main extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
this.speed = 1;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 150;
this.jumping = 0;
this.slime = true;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 3;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('slime1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('slime2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
if (this.jumping > 0) {
this.jump();
}
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('slimedeath');
_root.soundFX.start();
}
_root.player.updateResources(5 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
var v3 = _root.tileset.attachMovie('slime_small', 'slime_small' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.direction = this.direction;
v3.xtile = this.xtile;
v3.ytile = this.ytile;
v3 = _root.tileset.attachMovie('slime_small', 'slime_small' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.direction = this.direction;
if (this.direction == 'right') {
v3.xtile = this.xtile - 1;
v3.ytile = this.ytile;
}
if (this.direction == 'left') {
v3.xtile = this.xtile + 1;
v3.ytile = this.ytile;
}
if (this.direction == 'up') {
v3.xtile = this.xtile;
v3.ytile = this.ytile + 1;
}
if (this.direction == 'down') {
v3.xtile = this.xtile;
v3.ytile = this.ytile - 1;
}
_root.options.game_slime_resources += 20;
_root.options.game_slime_killed += 3;
_root.options.game_mobs += 3;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_slime_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
v2.jump = function () {
if (this.jumping == 1) {
this._xscale += 0.5;
this._yscale += 0.5;
if (this._xscale >= 120) {
this.jumping = 2;
this._xscale = 120;
}
return undefined;
}
if (this.jumping == 2) {
this._xscale -= 0.8;
this._yscale -= 0.8;
if (this._xscale <= 100) {
this.jumping = 0;
this._xscale = 100;
}
return undefined;
}
};
ASSetPropFlags(_global.slime_main.prototype, null, 1);
}
#endinitclip
}
movieClip 989 __Packages.slime_small {
#initclip
if (!_global.slime_small) {
var v1 = function () {
super();
};
_global.slime_small = v1;
_global.slime_small extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave / 2;
this.speed = 2;
this.frozen = 0;
this.move_check = 0;
this.initial_speed = this.speed;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.last_direction = this.direction;
_root.player.enemies.push(this);
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
++this.move_check;
if (this.move_check == 20) {
for (var v3 in _root.player.enemies) {
if (this.hitTest(_root.player.enemies[v3]) && _root.player.enemies[v3].slime == true) {
if (this.direction == 'right' && _root.player.enemies[v3].direction == 'left') {
this.direction = 'left';
}
if (this.direction == 'left' && _root.player.enemies[v3].direction == 'right') {
this.direction = 'right';
}
if (this.direction == 'up' && _root.player.enemies[v3].direction == 'down') {
this.direction = 'down';
}
if (this.direction == 'down' && _root.player.enemies[v3].direction == 'up') {
this.direction = 'up';
}
}
this.move_check = 0;
}
}
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
if (this.xtile == 2 && this.ytile == 6) {
this.direction = 'right';
}
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('slimedeath');
_root.soundFX.start();
}
_root.player.updateResources(5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.slime_small.prototype, null, 1);
}
#endinitclip
}
movieClip 990 __Packages.spider_jockey {
#initclip
if (!_global.spider_jockey) {
var v1 = function () {
super();
};
_global.spider_jockey = v1;
_global.spider_jockey extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 4;
this.speed = 4;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.fb_hit = 0;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('spider1');
_root.soundFX.start();
}
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('skeleton1');
_root.soundFX.start();
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.getMove();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += 2;
}
if (this.direction == 'down') {
this._y -= 2;
}
if (this.direction == 'left') {
this._x += 2;
}
if (this.direction == 'right') {
this._x -= 2;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.moveTile();
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('spiderdeath');
_root.soundFX.start();
}
_root.player.updateResources(100 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
var v3 = _root.tileset.attachMovie('spider', 'spider' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.direction = this.direction;
v3.xtile = this.xtile;
v3.ytile = this.ytile;
v3 = _root.tileset.attachMovie('skeleton', 'skeleton' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x;
v3._y = this._y;
v3.direction = this.direction;
if (this.direction == 'right') {
v3.xtile = this.xtile - 1;
v3.ytile = this.ytile;
}
if (this.direction == 'left') {
v3.xtile = this.xtile + 1;
v3.ytile = this.ytile;
}
if (this.direction == 'up') {
v3.xtile = this.xtile;
v3.ytile = this.ytile + 1;
}
if (this.direction == 'down') {
v3.xtile = this.xtile;
v3.ytile = this.ytile - 1;
}
_root.options.game_spider_jockey_resources += 100;
++_root.options.game_spider_jockey_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-3);
++_root.options.game_spider_jockey_resources;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.spider_jockey.prototype, null, 1);
}
#endinitclip
}
movieClip 991 __Packages.arrow_dispenser {
#initclip
if (!_global.arrow_dispenser) {
var v1 = function () {
super();
};
_global.arrow_dispenser = v1;
_global.arrow_dispenser extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.worth = _root.player.ad_price - 5;
this.upgrade_price = 150;
this.shoot_timer = 0;
this.level = 1;
this.add_array = 0;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.ad_price += 50;
++_root.player.items_id;
this.id = _root.player.items_id;
};
v2.RollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Arrow Dispenser.';
};
v2.RollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.Release = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(7);
this.selected = 1;
this.glow._visible = true;
_root.player.updateShop(3);
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 3;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
if (this.level == 3) {
_root.player.updateShop(3);
}
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
if (_root.player.enemies_screen > 0) {
this.shoot_timer += this.level;
if (this.shoot_timer >= 70) {
this.shoot_timer = 0;
for (var v4 in _root.player.enemies) {
if (_root.player.enemies[v4].hitTest(this.range)) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('bow');
_root.soundFX.start();
}
this.shoot_timer = 0;
var v3 = _root.tileset.attachMovie('arrow', 'arrow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y - 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 1;
v3 = _root.tileset.attachMovie('arrow', 'arrow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y + 60;
v3.level = this.level;
v3.range = 0;
v3.direction = 2;
v3._rotation = 180;
v3 = _root.tileset.attachMovie('arrow', 'arrow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x - 20;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 3;
v3._rotation = -90;
v3 = _root.tileset.attachMovie('arrow', 'arrow' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 60;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 4;
v3._rotation = 90;
break;
}
}
}
}
};
ASSetPropFlags(_global.arrow_dispenser.prototype, null, 1);
}
#endinitclip
}
movieClip 992 __Packages.arrow {
#initclip
if (!_global.arrow) {
var v1 = function () {
super();
};
_global.arrow = v1;
_global.arrow extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this._visible = false;
this.check_destroy();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
if (this.direction == 1) {
this._y -= 4;
this.range += 4;
if (this.range > 200) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 2) {
this._y += 4;
this.range += 4;
if (this.range > 200) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 3) {
this._x -= 4;
this.range += 4;
if (this.range > 200) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 4) {
this._x += 4;
this.range += 4;
if (this.range > 200) {
this.destroy();
}
this._visible = true;
}
if (this.range % 20 == 0) {
this.check_destroy();
}
}
};
v2.check_destroy = function () {
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
if (this.level == 1) {
_root.player.enemies[v3].hit(3);
}
if (this.level == 2) {
_root.player.enemies[v3].hit(4);
}
if (this.level == 3) {
_root.player.enemies[v3].hit(5);
}
this.destroy();
break;
return undefined;
}
}
for (var v4 in _root.player.blocks) {
if (_root.player.blocks[v4].glow.hitTest(this) && _root.player.blocks[v4].type == 1) {
this.destroy();
break;
}
}
};
v2.destroy = function () {
this.removeMovieClip();
};
ASSetPropFlags(_global.arrow.prototype, null, 1);
}
#endinitclip
}
movieClip 993 __Packages.lava_map {
#initclip
if (!_global.lava_map) {
var v1 = function () {
super();
};
_global.lava_map = v1;
_global.lava_map extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.add_array = 0;
this.particles = 0;
this.id = _root.player.items_id;
this.worth = _root.player.lt_price - 5;
this.upgrade_price = 200;
this.level = 1;
this.check_enemies = 0;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.lt_price += 60;
_root.player.lt_price += _root.player.lt_price % 5;
};
v2.onRollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Lava Trench.';
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onRelease = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(8);
this.selected = 1;
this.glow._visible = true;
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false && _root.player.enemies_screen > 0) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
++this.particles;
if (this.particles >= 39) {
if (this.level == 2) {
if (Math.random() < 0.5) {
var v3 = _root.tileset.attachMovie('fire', 'fire' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + Math.floor(Math.random() * 40) + 1;
v3._y = this._y + Math.floor(Math.random() * 30) + 1;
v3.type = 2;
v3._xscale = 150;
v3._yscale = 150;
}
}
if (this.level == 3) {
v3 = _root.tileset.attachMovie('fire', 'fire' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + Math.floor(Math.random() * 40) + 1;
v3._y = this._y + Math.floor(Math.random() * 30) + 1;
v3.type = 2;
v3._xscale = 150;
v3._yscale = 150;
}
this.particles = 0;
}
};
v2.fire = function () {
++this.check_enemies;
if (this.check_enemies >= 20) {
this.check_enemies = 0;
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
_root.player.enemies[v3].hit_lava(this.level + 1);
this.check_enemies = 0;
break;
}
}
}
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 2;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
};
ASSetPropFlags(_global.lava_map.prototype, null, 1);
}
#endinitclip
}
movieClip 994 __Packages.fireball_dispenser {
#initclip
if (!_global.fireball_dispenser) {
var v1 = function () {
super();
};
_global.fireball_dispenser = v1;
_global.fireball_dispenser extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.add_array = 0;
this.worth = _root.player.fd_price - 5;
this.upgrade_price = 250;
this.shoot_timer = 0;
this.level = 1;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
_root.player.fd_price += 100;
_root.player.fd_price += _root.player.fd_price % 5;
++_root.player.items_id;
this.id = _root.player.items_id;
};
v2.RollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Fireball Dispenser.';
};
v2.RollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.Release = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(9);
this.selected = 1;
this.glow._visible = true;
_root.player.updateShop(3);
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.upgrade = function () {
if (_root.player.resources >= this.upgrade_price) {
if (this.level < 3) {
this.worth += this.upgrade_price;
_root.player.updateResources(this.upgrade_price * -1, this._x, this._y);
++this.level;
this.upgrade_price *= 3;
this.upgrade_price += this.upgrade_price % 5;
this.gotoAndStop(this.level);
}
_root.player.updateShop(3);
}
if (this.level == 3) {
this.upgrade_price = 500;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
if (_root.player.enemies_screen > 0) {
this.shoot_timer += this.level;
if (this.shoot_timer >= 90) {
this.shoot_timer = 0;
for (var v4 in _root.player.enemies) {
if (_root.player.enemies[v4].hitTest(this.range)) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('bow');
_root.soundFX.start();
}
this.shoot_timer = 0;
var v3 = _root.tileset.attachMovie('fireball', 'fireball' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y - 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 1;
v3 = _root.tileset.attachMovie('fireball', 'fireball' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y + 60;
v3.level = this.level;
v3.range = 0;
v3.direction = 2;
v3._rotation = 180;
v3 = _root.tileset.attachMovie('fireball', 'fireball' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x - 20;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 3;
v3._rotation = -90;
v3 = _root.tileset.attachMovie('fireball', 'fireball' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 60;
v3._y = this._y + 20;
v3.level = this.level;
v3.range = 0;
v3.direction = 4;
v3._rotation = 90;
break;
}
}
}
}
};
ASSetPropFlags(_global.fireball_dispenser.prototype, null, 1);
}
#endinitclip
}
movieClip 995 __Packages.fireball {
#initclip
if (!_global.fireball) {
var v1 = function () {
super();
};
_global.fireball = v1;
_global.fireball extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this._visible = false;
this.check_destroy();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
if (this.direction == 1) {
this._y -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 2) {
this._y += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 3) {
this._x -= 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.direction == 4) {
this._x += 4;
this.range += 4;
if (this.range > 120) {
this.destroy();
}
this._visible = true;
}
if (this.range % 20 == 0) {
this.check_destroy();
}
}
};
v2.check_destroy = function () {
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].fb_hit == 1) {
_root.player.enemies[v3].hit(1);
this.destroy();
break;
return undefined;
} else {
if (_root.player.enemies[v3].hitTest(this)) {
_root.player.enemies[v3].hit(1 * this.level);
if (_root.player.enemies[v3].direction == 'left' && this.direction == 4) {
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
if (_root.player.enemies[v3].flying != true) {
_root.player.enemies[v3].move_timer = 100;
}
}
if (_root.player.enemies[v3].direction == 'right' && this.direction == 3) {
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
if (_root.player.enemies[v3].flying != true) {
_root.player.enemies[v3].move_timer = 100;
}
}
if (_root.player.enemies[v3].direction == 'up' && this.direction == 2) {
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
if (_root.player.enemies[v3].flying != true) {
_root.player.enemies[v3].move_timer = 100;
}
}
if (_root.player.enemies[v3].direction == 'down' && this.direction == 1) {
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
if (_root.player.enemies[v3].flying != true) {
_root.player.enemies[v3].move_timer = 100;
}
}
this.destroy();
++_root.player.enemies[v3].fb_hit;
break;
return undefined;
}
}
}
for (var v4 in _root.player.blocks) {
if (_root.player.blocks[v4].glow.hitTest(this) && _root.player.blocks[v4].type == 1) {
this.destroy();
break;
}
}
};
v2.destroy = function () {
this.removeMovieClip();
};
ASSetPropFlags(_global.fireball.prototype, null, 1);
}
#endinitclip
}
movieClip 996 __Packages.tnt_map {
#initclip
if (!_global.tnt_map) {
var v1 = function () {
super();
};
_global.tnt_map = v1;
_global.tnt_map extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.add_array = 0;
this.check_enemies = 0;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('fuse');
_root.soundFX.start();
}
this.detonation = 0;
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.destroy_block = function () {
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
++this.detonation;
if (this.detonation == 160) {
this.explode();
}
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.explode = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('explode');
_root.soundFX.start();
}
var v3 = _root.tileset.attachMovie('Explosion_tnt', 'Explosion_tnt' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v3._x = this._x + 20;
v3._y = this._y + 20;
};
v2.fire = function () {
++this.check_enemies;
if (this.check_enemies >= 2) {
this.check_enemies = 0;
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
++_root.player.enemies[v3].creeper_explode;
_root.player.enemies[v3].move_timer = 100;
this.check_enemies = 0;
break;
}
}
}
};
v2.update_health = function (points) {
this.health += points;
if (this.health <= 0) {
this.destroy_block();
}
};
ASSetPropFlags(_global.tnt_map.prototype, null, 1);
}
#endinitclip
}
movieClip 997 __Packages.zombie {
#initclip
if (!_global.zombie) {
var v1 = function () {
super();
};
_global.zombie = v1;
_global.zombie extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave;
if (_root.player.difficulty == 1 && _root.player.wave < 5) {
this.speed = 1;
} else {
this.speed = 2;
}
this.frozen = 0;
this.initial_speed = this.speed;
if (this.xtile == undefined) {
this.xtile = 1;
}
if (this.ytile == undefined) {
this.ytile = 6;
}
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (Math.random() < 0.5) {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('zombie1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('zombie2');
_root.soundFX.start();
}
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
this.play();
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
if (this.direction == 'right' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'left' && this._y % 4 > 0) {
this._y += this._y % 4;
}
if (this.direction == 'up' && this._x % 4 > 0) {
this._x += this._x % 4;
}
if (this.direction == 'down' && this._x % 4 > 0) {
this._x += this._x % 4;
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (_root.player._visible == true) {
if (this.xtile == _root.player.xtile && this.ytile == _root.player.ytile) {
this.destroy_enemy();
return undefined;
}
}
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_water = function (points) {
this.speed = this.initial_speed;
this.speed /= points;
};
v2.hit_lava = function (points) {
this.hit(points);
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('zombiedeath');
_root.soundFX.start();
}
_root.player.updateResources(5 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_zombie_resources += 10;
++_root.options.game_zombie_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.updateHealth(-1);
++_root.options.game_zombie_hurt;
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.zombie.prototype, null, 1);
}
#endinitclip
}
movieClip 998 __Packages.pearl {
#initclip
if (!_global.pearl) {
var v1 = function () {
super();
};
_global.pearl = v1;
_global.pearl extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.gravity = 8;
this.timer = 0;
this._xscale = 150;
this._yscale = 150;
};
v2.onEnterFrame = function () {
if (this._xscale > 100) {
this._xscale += this.gravity;
this._yscale = this._xscale;
this.gravity -= 1;
}
if (this._xscale < 100) {
this._xscale = 100;
this._yscale = this._xscale;
}
++this.timer;
if (this.timer > 180) {
this.removeMovieClip();
}
};
v2.onRollOver = function () {
++_root.player.pearls;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
if (_root.player.pearls >= 10) {
_root.player.difficulty = 4;
_root.gotoAndStop(11);
_root.player.respawn();
}
this.removeMovieClip();
};
ASSetPropFlags(_global.pearl.prototype, null, 1);
}
#endinitclip
}
movieClip 999 __Packages.magma_cube {
#initclip
if (!_global.magma_cube) {
var v1 = function () {
super();
};
_global.magma_cube = v1;
_global.magma_cube extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 2;
this.speed = 1;
this.frozen = 0;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 150;
this.jumping = 0;
this.slime = true;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.frozen_effect.gotoAndStop(this.frozen_effect._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('magma_cube_1');
_root.soundFX.start();
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
if (this.frozen <= 0) {
this.frozen = 0;
this.moveTile();
this.getMove();
if (this.jumping > 0) {
this.jump();
}
} else {
--this.frozen;
this.gotoAndStop(1);
this.frozen_effect.gotoAndPlay(1);
}
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this.hitTest(_root.player.blockPush)) {
this.destroy_enemy();
}
};
v2.getMove = function () {
if (this.artificial_move == 1 && this.moved > 0) {
if (this.direction == 'up') {
this._y += this.speed;
}
if (this.direction == 'down') {
this._y -= this.speed;
}
if (this.direction == 'left') {
this._x += this.speed;
}
if (this.direction == 'right') {
this._x -= this.speed;
}
--this.moved;
if (this.moved == 0) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this.jumping = 1;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.hit_lava = function (points) {};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('magma_cube_death');
_root.soundFX.start();
}
_root.player.updateResources(15 + 5 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.options.game_mc_resources += 20;
_root.options.game_mc_killed += 1;
_root.options.game_mobs += 1;
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-1);
++_root.options.game_mc_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
v2.jump = function () {
if (this.jumping == 1) {
this._xscale += 0.5;
this._yscale += 0.5;
if (this._xscale >= 120) {
this.jumping = 2;
this._xscale = 120;
}
return undefined;
}
if (this.jumping == 2) {
this._xscale -= 0.8;
this._yscale -= 0.8;
if (this._xscale <= 100) {
this.jumping = 0;
this._xscale = 100;
}
return undefined;
}
};
ASSetPropFlags(_global.magma_cube.prototype, null, 1);
}
#endinitclip
}
movieClip 1000 __Packages.blaze {
#initclip
if (!_global.blaze) {
var v1 = function () {
super();
};
_global.blaze = v1;
_global.blaze extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.health = _root.player.wave * 4;
this.speed = 2;
this.initial_speed = this.speed;
this.xtile = 1;
this.ytile = 6;
this.artificial_move = 0;
this.moved = 0;
this.move_timer = 100;
this.flying = true;
this.take_damage.gotoAndStop(this.take_damage._totalframes);
this.direction = 'right';
this.last_direction = this.direction;
_root.player.enemies.push(this);
_root.player.enemies_screen += 1;
++_root.player.enemies_id;
this.id = _root.player.enemies_id;
if (_root.options.sfx == true && _root._currentframe > 4) {
_root.soundFX.attachSound('blaze1');
_root.soundFX.start();
}
};
v2.onEnterFrame = function () {
if (this.hitTest(_root.house.bound)) {
this.destroy_enemy();
}
if (_root.player.paused == false) {
this.moveTile();
this.getMove();
}
};
v2.moveTile = function () {
if (this._x < this.xtile * 40 - 20) {
this._x += this.speed / 2;
Math.round(this._x);
}
if (this._x > this.xtile * 40 - 20) {
this._x -= this.speed / 2;
Math.round(this._x);
}
if (this._y < this.ytile * 40 - 20) {
this._y += this.speed / 2;
Math.round(this._y);
return undefined;
}
if (this._y > this.ytile * 40 - 20) {
this._y -= this.speed / 2;
Math.round(this._y);
return undefined;
}
if (_root.player.blockPush.hitTest(this)) {
this.destroy_enemy();
}
};
v2.getMove = function () {
if (this.moved < 20) {
if (this.direction == 'up') {
this._y += 1;
}
if (this.direction == 'down') {
this._y -= 1;
}
if (this.direction == 'left') {
this._x += 1;
}
if (this.direction == 'right') {
this._x -= 1;
}
++this.moved;
if (this.moved == 20) {
this.artificial_move = 0;
}
} else {
this.move_timer -= this.speed;
if (this.move_timer <= 0) {
this.move();
}
}
};
v2.move = function () {
if (this.direction == 'right') {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile - 1 == this.xtile && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0 && _root.player.blocks[v3]._currentframe > 1) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 0;
break;
return undefined;
} else {
this.changeDirection();
break;
}
}
}
return undefined;
}
if (this.direction == 'up') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = -90;
break;
return undefined;
} else {
this.changeDirection(2);
break;
}
}
}
return undefined;
}
if (this.direction == 'left') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].ytile == this.ytile) {
if (_root.player.blocks[v3].type == 0) {
this.xtile = _root.player.blocks[v3].xtile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 180;
break;
return undefined;
} else {
this.changeDirection(3);
break;
}
}
}
return undefined;
}
if (this.direction == 'down') {
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].xtile == this.xtile) {
if (_root.player.blocks[v3].type == 0) {
this.ytile = _root.player.blocks[v3].ytile;
this.check_bed();
this.speed = this.initial_speed;
this.move_timer = 100;
this._rotation = 90;
break;
return undefined;
} else {
this.changeDirection(4);
break;
}
}
}
return undefined;
}
};
v2.changeDirection = function (points) {
for (var v3 in _root.player.blocks) {
if (this.direction == 'right') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
if (this.direction == 'up') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'down') {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'right';
break;
return undefined;
}
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile == this.xtile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'left';
break;
return undefined;
}
}
if (this.direction == 'left') {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile - 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'up';
break;
return undefined;
}
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile == this.ytile + 1 && _root.player.blocks[v3].type == 0) {
this.direction = 'down';
break;
return undefined;
}
}
}
};
v2.hit = function (points) {
this.health -= points;
this.take_damage.play();
if (this.health % 10 == 0) {
if (Math.random() < 0.5) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('blazehit1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('blazehit2');
_root.soundFX.start();
}
}
}
if (this.health <= 0) {
this.kill_enemy();
}
};
v2.kill_enemy = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('blazedeath');
_root.soundFX.start();
}
_root.player.updateResources(50 * _root.player.money_multiplier, this._x, this._y);
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.options.game_blaze_resources += 50;
++_root.options.game_blaze_killed;
++_root.options.game_mobs;
_root.player.create_smoke(this._x, this._y);
_root.player.create_smoke(this._x, this._y);
this.removeMovieClip();
};
v2.destroy_enemy = function () {
_root.player.enemies_screen -= 1;
_root.player.check_new_wave();
_root.player.updateHealth(-3);
++_root.options.game_blaze_hurt;
this.removeMovieClip();
};
v2.check_bed = function () {
if (this.xtile == 13 && this.ytile == 6) {
this.xtile = 13;
this.ytile = 4;
}
};
ASSetPropFlags(_global.blaze.prototype, null, 1);
}
#endinitclip
}
movieClip 1001 __Packages.cactus_map {
#initclip
if (!_global.cactus_map) {
var v1 = function () {
super();
};
_global.cactus_map = v1;
_global.cactus_map extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.add_array = 0;
this.worth = 15;
this.health = 3;
this.level = 1;
this.check_enemies = 0;
if (_root.options.sfx >= 1 && _root._currentframe > 4) {
_root.soundFX.attachSound('pop');
_root.soundFX.start();
}
};
v2.onRollOver = function () {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open options for Cactus.';
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onRelease = function () {
this.select();
};
v2.select = function () {
_root.player.deselect_all();
_root.player.build_mode = 1;
_root.buy_items.gotoAndStop(5);
this.selected = 1;
_root.player.updateShop(4);
this.glow._visible = true;
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.destroy_block = function () {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('hurtflesh1');
_root.soundFX.start();
}
this.swapDepths(1000);
this.removeMovieClip();
};
v2.onEnterFrame = function () {
if (_root.player.paused == false) {
this.fire();
}
if (this.add_array == 1) {
_root.player.items.push(this);
this.add_array = 2;
} else {
++this.add_array;
}
};
v2.fire = function () {
++this.check_enemies;
if (this.check_enemies >= 20) {
this.check_enemies = 0;
for (var v3 in _root.player.enemies) {
if (_root.player.enemies[v3].hitTest(this)) {
if (_root.player.enemies[v3].flying != true) {
_root.player.enemies[v3].hit(this.level);
}
_root.player.enemies[v3].artificial_move = 1;
_root.player.enemies[v3].moved = 20;
++_root.player.enemies[v3].creeper_explode;
_root.player.enemies[v3].move_timer = 100;
this.update_health(-1);
this.check_enemies = 0;
break;
}
}
}
};
v2.update_health = function (points) {
this.health += points;
if (this.health <= 0) {
this.destroy_block();
}
};
ASSetPropFlags(_global.cactus_map.prototype, null, 1);
}
#endinitclip
}
movieClip 1002 __Packages.idle_block {
#initclip
if (!_global.idle_block) {
var v1 = function () {
super();
};
_global.idle_block = v1;
_global.idle_block extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.array = 0;
this.type = 1;
};
v2.onEnterFrame = function () {
if (this.array < 3) {
++this.array;
}
if (this.array == 2) {
_root.player.blocks.push(this);
}
};
ASSetPropFlags(_global.idle_block.prototype, null, 1);
}
#endinitclip
}
movieClip 1003 __Packages.dirt_block {
#initclip
if (!_global.dirt_block) {
var v1 = function () {
super();
};
_global.dirt_block = v1;
_global.dirt_block extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.array = 0;
this.type = 1;
};
v2.onEnterFrame = function () {
if (this.array < 3) {
++this.array;
}
if (this.array == 2) {
_root.player.blocks.push(this);
}
};
v2.checkPath = function () {
if (_root.player._visible == false && this.along_path == undefined && this.type == 1) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
if (this.tested >= 2) {
this.along_path = 1;
break;
}
}
++v3;
}
}
};
v2.onRollOver = function () {
if (_root.player._visible == false && this.along_path == undefined) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
if (this.tested >= 2) {
this.along_path = 1;
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
break;
return undefined;
}
++v3;
}
} else {
if (this.type == 1) {
this.rollOverDig();
}
}
if (_root.player._visible == false && this.along_path == 1) {
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
}
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onPress = function () {
if (_root.player._visible == true && _root.player.paused == false) {
this.glow._visible = false;
this.check_destroy();
}
};
v2.onRelease = function () {
if (this.xtile > 1 && this.xtile < 16 && this.ytile > 1 && this.ytile < 12) {
if (_root.player._visible == true) {
if (_root.player.paused == false) {
if (this._x == 440 && this._y >= 80 && this._y <= 160) {
} else {
if (this._x >= 520 && this._y == 160) {
} else {
this.check_destroy();
}
}
}
} else {
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.along_path == 1) {
this.select();
break;
}
++v3;
}
}
}
};
v2.check_destroy = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
};
v2.destroy_block = function () {
if (_root.player._visible == true) {
_root.player.xtile = this.xtile;
_root.player.ytile = this.ytile;
this.check_bed();
}
this.gotoAndStop(2);
this.type = 0;
if (_root._currentframe == 5 || _root._currentframe == 9 || _root._currentframe == 11) {
if (Math.random() < 0.5) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('gravel1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('gravel2');
_root.soundFX.start();
}
}
}
if (_root._currentframe == 7) {
if (Math.random() < 0.5) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('stone1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('stone2');
_root.soundFX.start();
}
}
}
if (_root._currentframe == 14) {
if (Math.random() < 0.5) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('snow1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('snow2');
_root.soundFX.start();
}
}
}
for (var v4 in _root.player.blocks) {
var v3 = 0;
if (this.hitTest(_root.player.blocks[v4])) {
++v3;
_root.player.blocks[v4].check_shadow();
if (v3 >= 5) {
break;
}
}
}
this.check_shadow();
_root.tutorial_mistake_1._visible = false;
if (_root._currentframe == 5 || _root._currentframe == 9 || _root._currentframe == 11 || _root._currentframe == 14) {
_root.player.updateResources(5, this._x, this._y);
}
};
v2.check_shadow = function () {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile + 1 == this.ytile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow._visible = true;
break;
} else {
this.shadow._visible = false;
break;
}
}
}
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile + 1 == this.xtile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow_2._visible = true;
break;
} else {
this.shadow_2._visible = false;
break;
}
}
}
if (this.xtile == 2 && this.ytile == 6) {
this.shadow_2._visible = false;
}
if (this.xtile == 13 && this.ytile == 6) {
this.shadow._visible = false;
}
};
v2.check_bed = function () {
if (_root.player.xtile == 13 && _root.player.ytile == 6) {
_root.player.xtile = 13;
_root.player.ytile = 4;
}
};
v2.rollOverDig = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (Key.isDown(1) && this.glow._visible == true) {
this.check_destroy();
}
};
v2.select = function () {
if (_root.player.tutorial == 3 || _root.player.tutorial == 4) {
if (this.type == 1) {
_root.player.tutorial = 4;
_root.tutorial_arrow_4._visible = true;
_root.tutorial_arrow_3._visible = false;
}
}
if (_root.player.tutorial == 7 || _root.player.tutorial == 8) {
if (this.type == 0) {
_root.player.tutorial = 8;
_root.tutorial_arrow_8._visible = true;
_root.tutorial_arrow_7._visible = false;
}
}
_root.player.deselect_all();
_root.player.build_mode = 1;
if (this.type == 1) {
_root.buy_items.gotoAndStop(1);
} else {
_root.buy_items.gotoAndStop(2);
}
this.selected = 1;
this.glow._visible = true;
if (this.type == 1) {
_root.player.updateShop(1);
} else {
_root.player.updateShop(2);
}
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.testSpaces = function () {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
++v3;
}
if (this.tested <= 2) {
this.destroy_block();
}
if (this.tested >= 3) {
_root.tutorial_mistake_1._visible = true;
_root.tutorial_mistake_1._x = _root.player._x;
if (_root.player._y > 100) {
_root.tutorial_mistake_1._y = _root.player._y;
} else {
_root.tutorial_mistake_1._y = _root.player._y + 100;
}
}
};
v2.resetPath = function () {
this.gotoAndStop(1);
this.type = 1;
};
ASSetPropFlags(_global.dirt_block.prototype, null, 1);
}
#endinitclip
}
movieClip 1004 __Packages.dungeon_block {
#initclip
if (!_global.dungeon_block) {
var v1 = function () {
super();
};
_global.dungeon_block = v1;
_global.dungeon_block extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.array = 0;
this.type = 1;
};
v2.onEnterFrame = function () {
if (this.array < 3) {
++this.array;
}
if (this.array == 2) {
_root.player.blocks.push(this);
}
};
ASSetPropFlags(_global.dungeon_block.prototype, null, 1);
}
#endinitclip
}
movieClip 1005 __Packages.mossy_block {
#initclip
if (!_global.mossy_block) {
var v1 = function () {
super();
};
_global.mossy_block = v1;
_global.mossy_block extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.array = 0;
this.type = 1;
};
v2.onEnterFrame = function () {
if (this.array < 3) {
++this.array;
}
if (this.array == 2) {
_root.player.blocks.push(this);
}
};
v2.checkPath = function () {
if (_root.player._visible == false && this.along_path == undefined && this.type == 1) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
if (this.tested >= 2) {
this.along_path = 1;
break;
}
}
++v3;
}
}
};
v2.onRollOver = function () {
if (_root.player._visible == false && this.along_path == undefined) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
if (this.tested >= 2) {
this.along_path = 1;
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
break;
return undefined;
}
++v3;
}
} else {
if (this.type == 1) {
this.rollOverDig();
}
}
if (_root.player._visible == false && this.along_path == 1) {
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
}
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onPress = function () {
if (_root.player._visible == true && _root.player.paused == false) {
this.glow._visible = false;
this.check_destroy();
}
};
v2.onRelease = function () {
if (this.xtile > 1 && this.xtile < 16 && this.ytile > 1 && this.ytile < 12) {
if (_root.player._visible == true) {
if (_root.player.paused == false) {
if (this._x == 440 && this._y >= 80 && this._y <= 160) {
} else {
if (this._x >= 520 && this._y == 160) {
} else {
this.check_destroy();
}
}
}
} else {
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.along_path == 1) {
this.select();
break;
}
++v3;
}
}
}
};
v2.check_destroy = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
};
v2.destroy_block = function () {
if (_root.player._visible == true) {
_root.player.xtile = this.xtile;
_root.player.ytile = this.ytile;
this.check_bed();
}
this.gotoAndStop(2);
this.type = 0;
if (Math.random() < 0.5) {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('stone1');
_root.soundFX.start();
}
} else {
if (_root.options.sfx == true) {
_root.soundFX.attachSound('stone2');
_root.soundFX.start();
}
}
for (var v4 in _root.player.blocks) {
var v3 = 0;
if (this.hitTest(_root.player.blocks[v4])) {
++v3;
_root.player.blocks[v4].check_shadow();
if (v3 >= 5) {
break;
}
}
}
this.check_shadow();
if (Math.random() < 0.5) {
var v5 = _root.tileset.attachMovie('zombie', 'zombie' + _root.tileset.getNextHighestDepth(), _root.tileset.getNextHighestDepth());
v5._x = this._x + 20;
v5._y = this._y + 20;
v5.xtile = this.xtile;
v5.ytile = this.ytile;
}
};
v2.check_shadow = function () {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile + 1 == this.ytile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow._visible = true;
break;
} else {
this.shadow._visible = false;
break;
}
}
}
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile + 1 == this.xtile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow_2._visible = true;
break;
} else {
this.shadow_2._visible = false;
break;
}
}
}
if (this.xtile == 2 && this.ytile == 6) {
this.shadow_2._visible = false;
}
if (this.xtile == 13 && this.ytile == 6) {
this.shadow._visible = false;
}
};
v2.check_bed = function () {
if (_root.player.xtile == 13 && _root.player.ytile == 6) {
_root.player.xtile = 13;
_root.player.ytile = 4;
}
};
v2.rollOverDig = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (Key.isDown(1) && this.glow._visible == true) {
this.check_destroy();
}
};
v2.select = function () {
if (_root.player.tutorial == 3 || _root.player.tutorial == 4) {
if (this.type == 1) {
_root.player.tutorial = 4;
_root.tutorial_arrow_4._visible = true;
_root.tutorial_arrow_3._visible = false;
}
}
if (_root.player.tutorial == 7 || _root.player.tutorial == 8) {
if (this.type == 0) {
_root.player.tutorial = 8;
_root.tutorial_arrow_8._visible = true;
_root.tutorial_arrow_7._visible = false;
}
}
_root.player.deselect_all();
_root.player.build_mode = 1;
if (this.type == 1) {
_root.buy_items.gotoAndStop(1);
} else {
_root.buy_items.gotoAndStop(2);
}
this.selected = 1;
this.glow._visible = true;
if (this.type == 1) {
_root.player.updateShop(1);
} else {
_root.player.updateShop(2);
}
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.testSpaces = function () {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
++v3;
}
if (this.tested <= 2) {
this.destroy_block();
}
if (this.tested >= 3) {
_root.tutorial_mistake_1._visible = true;
_root.tutorial_mistake_1._x = _root.player._x;
if (_root.player._y > 100) {
_root.tutorial_mistake_1._y = _root.player._y;
} else {
_root.tutorial_mistake_1._y = _root.player._y + 100;
}
}
};
v2.resetPath = function () {
this.gotoAndStop(1);
this.type = 1;
};
ASSetPropFlags(_global.mossy_block.prototype, null, 1);
}
#endinitclip
}
movieClip 1006 __Packages.chest {
#initclip
if (!_global.chest) {
var v1 = function () {
super();
};
_global.chest = v1;
_global.chest extends MovieClip;
var v2 = v1.prototype;
v2.onLoad = function () {
this.glow._visible = false;
this.xtile = (this._x + 40) / 40;
this.ytile = (this._y + 40) / 40;
this.selected = 0;
this.array = 0;
this.type = 1;
};
v2.onEnterFrame = function () {
if (this.array < 3) {
++this.array;
}
if (this.array == 2) {
_root.player.blocks.push(this);
}
};
v2.checkPath = function () {
if (_root.player._visible == false && this.along_path == undefined && this.type == 1) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
if (this.tested >= 2) {
this.along_path = 1;
break;
}
}
++v3;
}
}
};
v2.onRollOver = function () {
if (_root.player._visible == false && this.along_path == undefined) {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
if (this.tested >= 2) {
this.along_path = 1;
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
break;
return undefined;
}
++v3;
}
} else {
if (this.type == 1) {
this.rollOverDig();
}
}
if (_root.player._visible == false && this.along_path == 1) {
if (this.type == 1) {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open dispenser menu.';
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
_root.help.text = 'Open traps menu.';
}
}
};
v2.onRollOut = function () {
if (this.selected == 0) {
this.glow._visible = false;
}
};
v2.onPress = function () {
if (_root.player._visible == true && _root.player.paused == false) {
this.glow._visible = false;
this.check_destroy();
}
};
v2.onRelease = function () {
if (this.xtile > 1 && this.xtile < 16 && this.ytile > 1 && this.ytile < 12) {
if (_root.player._visible == true) {
if (_root.player.paused == false) {
if (this._x == 440 && this._y >= 80 && this._y <= 160) {
} else {
if (this._x >= 520 && this._y == 160) {
} else {
this.check_destroy();
}
}
}
} else {
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.along_path == 1) {
this.select();
break;
}
++v3;
}
}
}
};
v2.check_destroy = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
return undefined;
} else {
this.testSpaces();
}
}
};
v2.destroy_block = function () {
if (_root.player._visible == true) {
_root.player.xtile = this.xtile;
_root.player.ytile = this.ytile;
this.check_bed();
}
this.gotoAndStop(2);
this.type = 0;
if (_root.options.sfx == true) {
_root.soundFX.attachSound('chestopen');
_root.soundFX.start();
}
for (var v4 in _root.player.blocks) {
var v3 = 0;
if (this.hitTest(_root.player.blocks[v4])) {
++v3;
_root.player.blocks[v4].check_shadow();
if (v3 >= 5) {
break;
}
}
}
this.check_shadow();
_root.tutorial_mistake_1._visible = false;
_root.tutorial_arrow._visible = false;
_root.player.updateResources(50, this._x, this._y);
};
v2.check_shadow = function () {
for (var v3 in _root.player.blocks) {
if (_root.player.blocks[v3].xtile == this.xtile && _root.player.blocks[v3].ytile + 1 == this.ytile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow._visible = true;
break;
} else {
this.shadow._visible = false;
break;
}
}
}
for (v3 in _root.player.blocks) {
if (_root.player.blocks[v3].ytile == this.ytile && _root.player.blocks[v3].xtile + 1 == this.xtile) {
if (_root.player.blocks[v3].type == 1) {
this.shadow_2._visible = true;
break;
} else {
this.shadow_2._visible = false;
break;
}
}
}
if (this.xtile == 2 && this.ytile == 6) {
this.shadow_2._visible = false;
}
if (this.xtile == 13 && this.ytile == 6) {
this.shadow._visible = false;
}
};
v2.check_bed = function () {
if (_root.player.xtile == 13 && _root.player.ytile == 6) {
_root.player.xtile = 13;
_root.player.ytile = 4;
}
};
v2.rollOverDig = function () {
if (this.xtile == _root.player.xtile + 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.xtile == _root.player.xtile - 1) {
if (this.ytile != _root.player.ytile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile - 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (this.ytile == _root.player.ytile + 1) {
if (this.xtile != _root.player.xtile) {
} else {
this.glow._visible = true;
this.glow.gotoAndPlay(1);
}
}
if (Key.isDown(1) && this.glow._visible == true) {
this.check_destroy();
}
};
v2.select = function () {
if (_root.player.tutorial == 3 || _root.player.tutorial == 4) {
if (this.type == 1) {
_root.player.tutorial = 4;
_root.tutorial_arrow_4._visible = true;
_root.tutorial_arrow_3._visible = false;
}
}
if (_root.player.tutorial == 7 || _root.player.tutorial == 8) {
if (this.type == 0) {
_root.player.tutorial = 8;
_root.tutorial_arrow_8._visible = true;
_root.tutorial_arrow_7._visible = false;
}
}
_root.player.deselect_all();
_root.player.build_mode = 1;
if (this.type == 1) {
_root.buy_items.gotoAndStop(1);
} else {
_root.buy_items.gotoAndStop(2);
}
this.selected = 1;
this.glow._visible = true;
if (this.type == 1) {
_root.player.updateShop(1);
} else {
_root.player.updateShop(2);
}
};
v2.deselect = function () {
this.selected = 0;
this.glow._visible = false;
};
v2.testSpaces = function () {
this.tested = 0;
var v3 = 0;
while (v3 < _root.player.blocks.length) {
if (this.hitTest(_root.player.blocks[v3])) {
if (_root.player.blocks[v3].type == 0) {
++this.tested;
}
}
++v3;
}
if (this.tested <= 2) {
this.destroy_block();
}
if (this.tested >= 3) {
_root.tutorial_mistake_1._visible = true;
_root.tutorial_mistake_1._x = _root.player._x;
if (_root.player._y > 100) {
_root.tutorial_mistake_1._y = _root.player._y;
} else {
_root.tutorial_mistake_1._y = _root.player._y + 100;
}
}
};
v2.resetPath = function () {
this.gotoAndStop(1);
this.type = 1;
};
ASSetPropFlags(_global.chest.prototype, null, 1);
}
#endinitclip
}
movieClip 68 __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 78 __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 79 __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 80 __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 84 __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
}
frame 2 {
stopAllSounds();
}
movieClip 167 cactus_map {
#initclip
Object.registerClass('cactus_map', cactus_map);
#endinitclip
}
movieClip 171 water_map {
#initclip
Object.registerClass('water_map', water_map);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 186 Explosion {
frame 7 {
for (var i in _root.player.items) {
if (_root.player.items[i].glow.hitTest(this)) {
_root.player.items[i].destroy_block();
}
}
for (var i in _root.player.enemies) {
if (_root.player.enemies[i].hitTest(this)) {
_root.player.enemies[i].hit(10);
}
}
_root.player.create_smoke(_x, _y);
}
frame 12 {
this.removeMovieClip();
}
}
movieClip 187 egg {
#initclip
Object.registerClass('egg', egg);
#endinitclip
}
movieClip 190 fire {
#initclip
Object.registerClass('fire', particle);
#endinitclip
}
instance block_1 of movieClip 150 {
onClipEvent (enterFrame) {
var loaded = (_root.getBytesLoaded() / _root.getBytesTotal()) * 100;
_root.preloader.percentage.text = Math.round(loaded);
if (loaded > 82) {
gotoAndPlay(5);
}
if (loaded > 84) {
gotoAndPlay(10);
}
if (loaded > 86) {
gotoAndPlay(15);
}
if (loaded > 88) {
gotoAndPlay(20);
}
if (loaded > 90) {
gotoAndPlay(25);
}
if (loaded > 92) {
gotoAndPlay(30);
}
if (loaded > 94) {
gotoAndPlay(35);
}
if (loaded > 96) {
gotoAndPlay(40);
}
if (loaded > 98) {
gotoAndPlay(45);
}
if (loaded >= 100) {
gotoAndPlay(55);
_root.fade.play();
}
}
}
movieClip 195 take_damage_zombie {
frame 10 {
stop();
}
}
movieClip 200 zombie_pigmen {
#initclip
Object.registerClass('zombie_pigmen', zombie_pigmen);
#endinitclip
}
movieClip 206 take_damage_slime {
frame 10 {
stop();
}
}
movieClip 207 snow_golem {
#initclip
Object.registerClass('snow_golem', snow_golem);
#endinitclip
}
movieClip 209 herobrine {
#initclip
Object.registerClass('herobrine', herobrine_boss);
#endinitclip
frame 1 {
stop();
}
}
movieClip 210 Explosion_tnt {
frame 7 {
for (var i in _root.player.items) {
if (_root.player.items[i].glow.hitTest(this)) {
_root.player.items[i].destroy_block();
}
}
for (var i in _root.player.enemies) {
if (_root.player.enemies[i].hitTest(this)) {
if (_root.player.enemies[i].flying) {
} else {
_root.player.enemies[i].kill_enemy();
}
}
}
_root.player.create_smoke(_x, _y);
}
frame 12 {
this.removeMovieClip();
}
}
movieClip 212 notification_large_1 {
#initclip
Object.registerClass('notification_large_1', notification_large);
#endinitclip
}
movieClip 214 notification_large2 {
#initclip
Object.registerClass('notification_large2', notification_large);
#endinitclip
}
movieClip 273 sounds {
frame 2 {
stopAllSounds();
}
frame 3 {
stopAllSounds();
}
}
movieClip 276 bubble {
#initclip
Object.registerClass('bubble', particle);
#endinitclip
}
movieClip 281 take_damage_skeleton {
frame 10 {
stop();
}
}
movieClip 286 skeleton {
#initclip
Object.registerClass('skeleton', skeleton);
#endinitclip
}
movieClip 289 {
frame 1 {
stop();
}
}
movieClip 296 snow_dispenser_map {
#initclip
Object.registerClass('snow_dispenser_map', snow_dispenser);
#endinitclip
frame 1 {
stop();
}
instance ro of movieClip 289 {
onClipEvent (rollOver) {
_parent.RollOver();
}
onClipEvent (release) {
_parent.Release();
}
onClipEvent (rollOut) {
_parent.RollOut();
}
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 298 snow {
#initclip
Object.registerClass('snow', snow);
#endinitclip
}
movieClip 303 take_damage_spider {
frame 10 {
stop();
}
}
movieClip 306 spider {
#initclip
Object.registerClass('spider', spider);
#endinitclip
}
movieClip 310 take_damage_creeper {
frame 10 {
stop();
}
}
movieClip 315 creeper {
#initclip
Object.registerClass('creeper', creeper);
#endinitclip
}
movieClip 320 take_damage_ghast {
frame 10 {
stop();
}
}
movieClip 321 ghast {
#initclip
Object.registerClass('ghast', ghast);
#endinitclip
}
movieClip 326 take_damage_silverfish {
frame 10 {
stop();
}
}
movieClip 331 silverfish {
#initclip
Object.registerClass('silverfish', silverfish);
#endinitclip
}
movieClip 336 take_damage_endermen {
frame 10 {
stop();
}
}
movieClip 341 endermen {
#initclip
Object.registerClass('endermen', endermen);
#endinitclip
}
movieClip 344 slime_main {
#initclip
Object.registerClass('slime_main', slime_main);
#endinitclip
}
movieClip 346 slime_small {
#initclip
Object.registerClass('slime_small', slime_small);
#endinitclip
}
movieClip 350 take_damage_spider_jockey {
frame 10 {
stop();
}
}
movieClip 352 spider_jockey {
#initclip
Object.registerClass('spider_jockey', spider_jockey);
#endinitclip
}
movieClip 355 arrow_dispenser {
frame 1 {
stop();
}
}
movieClip 362 arrow_dispenser_map {
#initclip
Object.registerClass('arrow_dispenser_map', arrow_dispenser);
#endinitclip
frame 1 {
stop();
}
instance ro of movieClip 355 arrow_dispenser {
onClipEvent (rollOver) {
_parent.RollOver();
}
onClipEvent (release) {
_parent.Release();
}
onClipEvent (rollOut) {
_parent.RollOut();
}
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 365 arrow {
#initclip
Object.registerClass('arrow', arrow);
#endinitclip
}
movieClip 369 {
}
movieClip 372 lava_map {
#initclip
Object.registerClass('lava_map', lava_map);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 379 fireball_dispenser_map {
#initclip
Object.registerClass('fireball_dispenser_map', fireball_dispenser);
#endinitclip
frame 1 {
stop();
}
instance ro of movieClip 289 {
onClipEvent (rollOver) {
_parent.RollOver();
}
onClipEvent (release) {
_parent.Release();
}
onClipEvent (rollOut) {
_parent.RollOut();
}
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 382 fireball {
#initclip
Object.registerClass('fireball', fireball);
#endinitclip
}
movieClip 385 tnt_map {
#initclip
Object.registerClass('tnt_map', tnt_map);
#endinitclip
}
movieClip 392 zombie {
#initclip
Object.registerClass('zombie', zombie);
#endinitclip
}
movieClip 396 gain_resources {
}
movieClip 399 ender_pearl {
#initclip
Object.registerClass('ender_pearl', pearl);
#endinitclip
}
movieClip 402 magma_cube {
#initclip
Object.registerClass('magma_cube', magma_cube);
#endinitclip
}
movieClip 407 blaze_effects {
}
movieClip 408 blaze {
#initclip
Object.registerClass('blaze', blaze);
#endinitclip
instance of movieClip 407 blaze_effects {
onClipEvent (enterFrame) {
_rotation = _rotation + 2;
}
}
}
movieClip 425 smoke_particle {
#initclip
Object.registerClass('smoke_particle', particle);
#endinitclip
frame 25 {
this.removeMovieClip();
}
}
movieClip 428 take_damage_herobrine {
frame 10 {
stop();
}
}
movieClip 429 herobrine_boss {
#initclip
Object.registerClass('herobrine_boss', herobrine_boss);
#endinitclip
frame 1 {
stop();
}
}
frame 3 {
stopAllSounds();
}
frame 4 {
stop();
Mouse.show();
theDate = new Date();
month = theDate.getMonth();
day = theDate.getDate();
if (month == 11) {
_root.special_button.gotoAndStop(2);
}
if (month == 2 && day == 31) {
_root.special_button.gotoAndStop(3);
}
if (month == 11 && day == 31) {
_root.special_button.gotoAndStop(4);
}
if (month == 3 && day == 4) {
_root.special_button.gotoAndStop(5);
}
_root.day_text.text = day;
_root.fade.gotoAndPlay(1);
_root.pos = SharedObject.getLocal('game');
_root.options.end = _root.pos.data.end;
if (_root.options.end == undefined) {
_root.end_button._visible = false;
}
_root.options.easy_wave = _root.pos.data.easy_wave;
_root.options.normal_wave = _root.pos.data.normal_wave;
_root.options.hard_wave = _root.pos.data.hard_wave;
_root.options.highest_wave = _root.pos.data.highest_wave;
_root.options.games_played = _root.pos.data.games_played;
_root.options.total_resources = _root.pos.data.total_resources;
_root.options.total_mobs = _root.pos.data.total_mobs;
_root.options.zombie_killed = _root.pos.data.zombie_killed;
_root.options.zombie_hurt = _root.pos.data.zombie_hurt;
_root.options.zombie_resources = _root.pos.data.zombie_resources;
_root.options.skeleton_killed = _root.pos.data.skeleton_killed;
_root.options.skeleton_hurt = _root.pos.data.skeleton_hurt;
_root.options.skeleton_resources = _root.pos.data.skeleton_resources;
_root.options.spider_killed = _root.pos.data.spider_killed;
_root.options.spider_hurt = _root.pos.data.spider_hurt;
_root.options.spider_resources = _root.pos.data.spider_resources;
_root.options.creeper_killed = _root.pos.data.creeper_killed;
_root.options.creeper_hurt = _root.pos.data.creeper_hurt;
_root.options.creeper_resources = _root.pos.data.creeper_resources;
_root.options.ghast_killed = _root.pos.data.ghast_killed;
_root.options.ghast_hurt = _root.pos.data.ghast_hurt;
_root.options.ghast_resources = _root.pos.data.ghast_resources;
_root.options.silverfish_killed = _root.pos.data.silverfish_killed;
_root.options.silverfish_hurt = _root.pos.data.silverfish_hurt;
_root.options.silverfish_resources = _root.pos.data.silverfish_resources;
_root.options.endermen_killed = _root.pos.data.endermen_killed;
_root.options.endermen_hurt = _root.pos.data.endermen_hurt;
_root.options.endermen_resources = _root.pos.data.endermen_resources;
_root.options.slime_killed = _root.pos.data.slime_killed;
_root.options.slime_hurt = _root.pos.data.slime_hurt;
_root.options.slime_resources = _root.pos.data.slime_resources;
_root.options.spider_jockey_killed = _root.pos.data.spider_jockey_killed;
_root.options.spider_jockey_hurt = _root.pos.data.spider_jockey_hurt;
_root.options.spider_jockey_resources = _root.pos.data.spider_jockey_resources;
if (_root.options.easy_wave == undefined) {
_root.options.easy_wave = 0;
}
if (_root.options.normal_wave == undefined) {
_root.options.normal_wave = 0;
}
if (_root.options.hard_wave == undefined) {
_root.options.hard_wave = 0;
}
if (_root.options.highest_wave == undefined) {
_root.options.highest_wave = 0;
}
if (_root.options.games_played == undefined) {
_root.options.games_played = 0;
}
if (_root.options.total_resources == undefined) {
_root.options.total_resources = 0;
}
if (_root.options.total_mobs == undefined) {
_root.options.total_mobs = 0;
}
if (_root.options.zombie_killed == undefined) {
_root.options.zombie_killed = 0;
}
if (_root.options.zombie_hurt == undefined) {
_root.options.zombie_hurt = 0;
}
if (_root.options.zombie_resources == undefined) {
_root.options.zombie_resources = 0;
}
if (_root.options.skeleton_killed == undefined) {
_root.options.skeleton_killed = 0;
}
if (_root.options.skeleton_hurt == undefined) {
_root.options.skeleton_hurt = 0;
}
if (_root.options.skeleton_resources == undefined) {
_root.options.skeleton_resources = 0;
}
if (_root.options.spider_killed == undefined) {
_root.options.spider_killed = 0;
}
if (_root.options.spider_hurt == undefined) {
_root.options.spider_hurt = 0;
}
if (_root.options.spider_resources == undefined) {
_root.options.spider_resources = 0;
}
if (_root.options.creeper_killed == undefined) {
_root.options.creeper_killed = 0;
}
if (_root.options.creeper_hurt == undefined) {
_root.options.creeper_hurt = 0;
}
if (_root.options.creeper_resources == undefined) {
_root.options.creeper_resources = 0;
}
if (_root.options.ghast_killed == undefined) {
_root.options.ghast_killed = 0;
}
if (_root.options.ghast_hurt == undefined) {
_root.options.ghast_hurt = 0;
}
if (_root.options.ghast_resources == undefined) {
_root.options.ghast_resources = 0;
}
if (_root.options.silverfish_killed == undefined) {
_root.options.silverfish_killed = 0;
}
if (_root.options.silverfish_hurt == undefined) {
_root.options.silverfish_hurt = 0;
}
if (_root.options.silverfish_resources == undefined) {
_root.options.silverfish_resources = 0;
}
if (_root.options.endermen_killed == undefined) {
_root.options.endermen_killed = 0;
}
if (_root.options.endermen_hurt == undefined) {
_root.options.endermen_hurt = 0;
}
if (_root.options.endermen_resources == undefined) {
_root.options.endermen_resources = 0;
}
if (_root.options.slime_killed == undefined) {
_root.options.slime_killed = 0;
}
if (_root.options.slime_hurt == undefined) {
_root.options.slime_hurt = 0;
}
if (_root.options.slime_resources == undefined) {
_root.options.slime_resources = 0;
}
if (_root.options.spider_jockey_killed == undefined) {
_root.options.spider_jockey_killed = 0;
}
if (_root.options.spider_jockey_hurt == undefined) {
_root.options.spider_jockey_hurt = 0;
}
if (_root.options.spider_jockey_resources == undefined) {
_root.options.spider_jockey_resources = 0;
}
_quality = 'LOW';
if (_root.options.sfx == 1) {
_root.soundFX.attachSound('ts');
_root.soundFX.start();
}
}
movieClip 434 start_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 437 statistics_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 440 options2_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 453 done_small_button {
frame 1 {
stop();
}
}
movieClip 460 game_stats {
frame 1 {
stop();
if (_root.options.easy_wave > _root.options.normal_wave && _root.options.easy_wave > _root.options.hard_wave) {
_root.main_menu.game_stats.wave.text = _root.options.easy_wave;
}
if (_root.options.normal_wave > _root.options.easy_wave && _root.options.normal_wave > _root.options.hard_wave) {
_root.main_menu.game_stats.wave.text = _root.options.normal_wave;
}
if (_root.options.hard_wave > _root.options.easy_wave && _root.options.hard_wave > _root.options.normal_wave) {
_root.main_menu.game_stats.wave.text = _root.options.hard_wave;
}
_root.main_menu.game_stats.easy.text = _root.options.easy_wave;
_root.main_menu.game_stats.normal.text = _root.options.normal_wave;
_root.main_menu.game_stats.hard.text = _root.options.hard_wave;
_root.main_menu.game_stats.games.text = _root.options.games_played;
_root.main_menu.game_stats.resources.text = _root.options.total_resources;
_root.main_menu.game_stats.mobs.text = _root.options.total_mobs;
}
instance of movieClip 453 done_small_button {
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_root.options.stats_animation = 0;
}
}
}
movieClip 463 easy_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 464 dark_button {
}
movieClip 468 medium_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 471 hard_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 474 back_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 482 sounds_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
frame 4 {
stop();
}
frame 5 {
stop();
}
frame 6 {
stop();
}
}
movieClip 499 next_small_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 510 back_small_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 559 main_menu {
frame 1 {
stop();
}
instance play_button of movieClip 434 start_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.play();
}
}
instance statistic_button of movieClip 437 statistics_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_root.options.stats_animation = 1;
}
}
instance options_button of movieClip 440 options2_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(3);
}
}
frame 2 {
stop();
if (_root.options.easy_wave >= 10) {
_root.main_menu.medium_button.gotoAndStop(2);
}
if (_root.options.normal_wave >= 20) {
_root.main_menu.hard_button.gotoAndStop(2);
}
}
instance easy_button of movieClip 463 easy_button {
onClipEvent (rollOver) {
gotoAndStop(2);
if (_root.options.easy_wave > 0) {
_root.main_menu.easy_button.record.text = 'Island - Wave ' + _root.options.easy_wave;
} else {
_root.main_menu.easy_button.record.text = 'Island';
}
}
onClipEvent (rollOut) {
gotoAndStop(1);
if (_root.options.easy_wave > 0) {
_root.main_menu.easy_button.record.text = 'Island - Wave ' + _root.options.easy_wave;
} else {
_root.main_menu.easy_button.record.text = 'Island';
}
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_root.gotoAndStop(5);
Mouse.hide();
}
onClipEvent (enterFrame) {
if (_root.options.easy_wave > 0) {
_root.main_menu.easy_button.record.text = 'Island - Wave ' + _root.options.easy_wave;
} else {
_root.main_menu.easy_button.record.text = 'Island';
}
}
}
instance medium_button of movieClip 468 medium_button {
onClipEvent (rollOver) {
if (this._currentframe == 2) {
gotoAndStop(3);
if (_root.options.normal_wave > 0) {
_root.main_menu.medium_button.record.text = 'Dungeon - Wave ' + _root.options.normal_wave;
} else {
_root.main_menu.medium_button.record.text = 'Dungeon';
}
}
}
onClipEvent (rollOut) {
if (this._currentframe == 3) {
gotoAndStop(2);
if (_root.options.normal_wave > 0) {
_root.main_menu.medium_button.record.text = 'Dungeon - Wave ' + _root.options.normal_wave;
} else {
_root.main_menu.medium_button.record.text = 'Dungeon';
}
}
}
onClipEvent (release) {
if (this._currentframe == 3) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_root.gotoAndStop(7);
}
}
onClipEvent (enterFrame) {
if (_root.options.normal_wave > 0) {
_root.main_menu.medium_button.record.text = 'Dungeon - Wave ' + _root.options.normal_wave;
} else {
_root.main_menu.medium_button.record.text = 'Dungeon';
}
}
}
instance hard_button of movieClip 471 hard_button {
onClipEvent (rollOver) {
if (this._currentframe == 2) {
gotoAndStop(3);
if (_root.options.hard_wave > 0) {
_root.main_menu.hard_button.record.text = 'Nether - Wave ' + _root.options.hard_wave;
} else {
_root.main_menu.hard_button.record.text = 'Nether';
}
}
}
onClipEvent (rollOut) {
if (this._currentframe == 3) {
gotoAndStop(2);
if (_root.options.hard_wave > 0) {
_root.main_menu.hard_button.record.text = 'Nether - Wave ' + _root.options.hard_wave;
} else {
_root.main_menu.hard_button.record.text = 'Nether';
}
}
}
onClipEvent (release) {
if (this._currentframe == 3) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_root.gotoAndStop(9);
}
}
onClipEvent (enterFrame) {
if (_root.options.hard_wave > 0) {
_root.main_menu.hard_button.record.text = 'Nether - Wave ' + _root.options.hard_wave;
} else {
_root.main_menu.hard_button.record.text = 'Nether';
}
}
}
frame 3 {
stop();
if (_root.options.sfx == 0) {
_root.main_menu.sounds_button.gotoAndStop(5);
}
if (_root.options.sfx == 1) {
_root.main_menu.sounds_button.gotoAndStop(1);
}
if (_root.options.sfx == 2) {
_root.main_menu.sounds_button.gotoAndStop(3);
}
}
instance of movieClip 474 back_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(1);
}
}
instance sounds_button of movieClip 482 sounds_button {
onClipEvent (rollOver) {
gotoAndStop(this._currentframe + 1);
}
onClipEvent (rollOut) {
gotoAndStop(this._currentframe - 1);
}
onClipEvent (release) {
if (this._currentframe == 6) {
gotoAndStop(2);
_root.options.sfx = 1;
_root.soundFX.attachSound('ts');
_root.soundFX.start();
} else {
gotoAndStop(this._currentframe + 2);
if (this._currentframe == 4) {
_root.options.sfx = 2;
} else {
_root.options.sfx = 0;
stopAllSounds();
}
}
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
}
}
frame 4 {
stop();
_root.main_menu.wave.text = _root.options.highest_wave;
_root.main_menu.games.text = _root.options.games_played;
_root.main_menu.resources.text = _root.options.total_resources;
_root.main_menu.mobs.text = _root.options.total_mobs;
}
instance of movieClip 453 done_small_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(1);
}
}
instance of movieClip 499 next_small_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(_parent._currentframe + 1);
}
}
frame 5 {
stop();
_root.main_menu.killed.text = _root.options.zombie_killed;
_root.main_menu.hurt.text = _root.options.zombie_hurt;
_root.main_menu.resources.text = _root.options.zombie_resources;
}
instance of movieClip 510 back_small_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(_parent._currentframe - 1);
}
}
frame 6 {
stop();
_root.main_menu.killed.text = _root.options.skeleton_killed;
_root.main_menu.hurt.text = _root.options.skeleton_hurt;
_root.main_menu.resources.text = _root.options.skeleton_resources;
}
frame 7 {
stop();
_root.main_menu.killed.text = _root.options.spider_killed;
_root.main_menu.hurt.text = _root.options.spider_hurt;
_root.main_menu.resources.text = _root.options.spider_resources;
}
frame 8 {
stop();
_root.main_menu.killed.text = _root.options.creeper_killed;
_root.main_menu.hurt.text = _root.options.creeper_hurt;
_root.main_menu.resources.text = _root.options.creeper_resources;
}
frame 9 {
stop();
_root.main_menu.killed.text = _root.options.ghast_killed;
_root.main_menu.hurt.text = _root.options.ghast_hurt;
_root.main_menu.resources.text = _root.options.ghast_resources;
}
frame 10 {
stop();
_root.main_menu.killed.text = _root.options.silverfish_killed;
_root.main_menu.hurt.text = _root.options.silverfish_hurt;
_root.main_menu.resources.text = _root.options.silverfish_resources;
}
frame 11 {
stop();
_root.main_menu.killed.text = _root.options.endermen_killed;
_root.main_menu.hurt.text = _root.options.endermen_hurt;
_root.main_menu.resources.text = _root.options.endermen_resources;
}
frame 12 {
stop();
_root.main_menu.killed.text = _root.options.slime_killed;
_root.main_menu.hurt.text = _root.options.slime_hurt;
_root.main_menu.resources.text = _root.options.slime_resources;
}
frame 13 {
stop();
_root.main_menu.killed.text = _root.options.spider_jockey_killed;
_root.main_menu.hurt.text = _root.options.spider_jockey_hurt;
_root.main_menu.resources.text = _root.options.spider_jockey_resources;
}
}
movieClip 570 special_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
frame 4 {
stop();
}
frame 5 {
stop();
}
}
instance special_button of movieClip 570 special_button {
onClipEvent (release) {
if (this._currentframe == 2) {
_root.gotoAndStop(14);
}
}
}
movieClip 573 theend_button {
frame 1 {
stop();
}
}
instance end_button of movieClip 573 theend_button {
onClipEvent (release) {
_root.gotoAndStop(11);
}
}
movieClip 575 fade_from_black {
frame 101 {
stop();
}
}
frame 5 {
stop();
stopAllSounds();
Mouse.hide();
if (_root.options.easy_wave == 0) {
_root.player.tutorial = 1;
} else {
_root.tutorial_arrow_1._visible = false;
}
_root.options.game_resources = 0;
_root.options.game_mobs = 0;
_root.options.game_zombie_killed = 0;
_root.options.game_zombie_hurt = 0;
_root.options.game_zombie_resources = 0;
_root.options.game_skeleton_killed = 0;
_root.options.game_skeleton_hurt = 0;
_root.options.game_skeleton_resources = 0;
_root.options.game_spider_killed = 0;
_root.options.game_spider_hurt = 0;
_root.options.game_spider_resources = 0;
_root.options.game_creeper_killed = 0;
_root.options.game_creeper_hurt = 0;
_root.options.game_creeper_resources = 0;
_root.options.game_ghast_killed = 0;
_root.options.game_ghast_hurt = 0;
_root.options.game_ghast_resources = 0;
_root.options.game_silverfish_killed = 0;
_root.options.game_silverfish_hurt = 0;
_root.options.game_silverfish_resources = 0;
_root.options.game_endermen_killed = 0;
_root.options.game_endermen_hurt = 0;
_root.options.game_endermen_resources = 0;
_root.options.game_slime_killed = 0;
_root.options.game_slime_hurt = 0;
_root.options.game_slime_resources = 0;
_root.options.game_spider_jockey_killed = 0;
_root.options.game_spider_jockey_hurt = 0;
_root.options.game_spider_jockey_resources = 0;
}
movieClip 581 dungeon_block {
#initclip
Object.registerClass('dungeon_block', dungeon_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 582 idle_block {
#initclip
Object.registerClass('idle_block', idle_block);
#endinitclip
}
movieClip 590 grass_block {
#initclip
Object.registerClass('grass_block', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 594 snow_block {
#initclip
Object.registerClass('snow_block', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 595 tileset_island {
}
movieClip 598 house_detect {
}
movieClip 603 house {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 609 dynamic_gradient {
frame 1 {
stop();
}
frame 30 {
stop();
}
}
movieClip 614 quit_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 681 game_paused {
frame 1 {
stop();
}
frame 2 {
stop();
_root.paused_screen.resources.text = _root.options.game_resources;
_root.paused_screen.mobs.text = _root.options.game_mobs;
}
instance of movieClip 482 sounds_button {
onClipEvent (rollOver) {
gotoAndStop(this._currentframe + 1);
}
onClipEvent (rollOut) {
gotoAndStop(this._currentframe - 1);
}
onClipEvent (release) {
if (this._currentframe == 6) {
gotoAndStop(2);
_root.options.sfx = 1;
} else {
gotoAndStop(this._currentframe + 2);
if (this._currentframe == 4) {
_root.options.sfx = 2;
} else {
_root.options.sfx = 0;
}
}
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
}
}
instance of movieClip 614 quit_button {
onClipEvent (rollOver) {
gotoAndStop(this._currentframe + 1);
}
onClipEvent (rollOut) {
gotoAndStop(this._currentframe - 1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
Mouse.show();
if (_root.player.wave > _root.options.easy_wave && _root._currentframe == 5) {
_root.options.easy_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.normal_wave && _root._currentframe == 7) {
_root.options.normal_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.hard_wave && _root._currentframe == 9) {
_root.options.hard_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
if (_root.player.difficulty == 1) {
var kongregate = _global.kongregate;
kongregate.stats.submit('Island Wave', _root.player.wave);
}
if (_root.player.difficulty == 2) {
var kongregate = _global.kongregate;
kongregate.stats.submit('Dungeon Wave', _root.player.wave);
}
if (_root.player.difficulty == 3) {
var kongregate = _global.kongregate;
kongregate.stats.submit('Nether Wave', _root.player.wave);
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.normal_wave = _root.options.normal_wave;
_root.pos.data.hard_wave = _root.options.hard_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
_root.player.quit_game();
stop();
}
}
instance of movieClip 499 next_small_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(_parent._currentframe + 1);
}
}
frame 3 {
stop();
_root.paused_screen.killed.text = _root.options.game_zombie_killed;
_root.paused_screen.hurt.text = _root.options.game_zombie_hurt;
_root.paused_screen.resources.text = _root.options.game_zombie_resources;
}
instance of movieClip 614 quit_button {
onClipEvent (rollOver) {
gotoAndStop(this._currentframe + 1);
}
onClipEvent (rollOut) {
gotoAndStop(this._currentframe - 1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
Mouse.show();
if (_root.player.wave > _root.options.easy_wave && _root._currentframe == 5) {
_root.options.easy_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.normal_wave && _root._currentframe == 7) {
_root.options.normal_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.hard_wave && _root._currentframe == 9) {
_root.options.hard_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.normal_wave = _root.options.normal_wave;
_root.pos.data.hard_wave = _root.options.hard_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
_root.player.quit_game();
stop();
}
}
instance of movieClip 510 back_small_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('click');
_root.soundFX.start();
}
_parent.gotoAndStop(_parent._currentframe - 1);
}
}
frame 4 {
stop();
_root.paused_screen.killed.text = _root.options.game_skeleton_killed;
_root.paused_screen.hurt.text = _root.options.game_skeleton_hurt;
_root.paused_screen.resources.text = _root.options.game_skeleton_resources;
}
frame 5 {
stop();
_root.paused_screen.killed.text = _root.options.game_spider_killed;
_root.paused_screen.hurt.text = _root.options.game_spider_hurt;
_root.paused_screen.resources.text = _root.options.game_spider_resources;
}
frame 6 {
stop();
_root.paused_screen.killed.text = _root.options.game_creeper_killed;
_root.paused_screen.hurt.text = _root.options.game_creeper_hurt;
_root.paused_screen.resources.text = _root.options.game_creeper_resources;
}
frame 7 {
stop();
_root.paused_screen.killed.text = _root.options.game_ghast_killed;
_root.paused_screen.hurt.text = _root.options.game_ghast_hurt;
_root.paused_screen.resources.text = _root.options.game_ghast_resources;
}
frame 8 {
stop();
_root.paused_screen.killed.text = _root.options.game_silverfish_killed;
_root.paused_screen.hurt.text = _root.options.game_silverfish_hurt;
_root.paused_screen.resources.text = _root.options.game_silverfish_resources;
}
frame 9 {
stop();
_root.paused_screen.killed.text = _root.options.game_endermen_killed;
_root.paused_screen.hurt.text = _root.options.game_endermen_hurt;
_root.paused_screen.resources.text = _root.options.game_endermen_resources;
}
frame 10 {
stop();
_root.paused_screen.killed.text = _root.options.game_slime_killed;
_root.paused_screen.hurt.text = _root.options.game_slime_hurt;
_root.paused_screen.resources.text = _root.options.game_slime_resources;
}
frame 11 {
stop();
_root.paused_screen.killed.text = _root.options.game_spider_jockey_killed;
_root.paused_screen.hurt.text = _root.options.game_spider_jockey_hurt;
_root.paused_screen.resources.text = _root.options.game_spider_jockey_resources;
}
}
movieClip 686 {
}
movieClip 688 {
}
movieClip 691 buy_egg_dispenser {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 692 snow_shadow {
}
movieClip 696 buy_snow_dispenser {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 700 buy_arrow_dispenser {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 703 {
}
movieClip 707 buy_fireball_dispenser {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 710 water_shadow {
}
movieClip 714 buy_water {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 717 {
}
movieClip 721 buy_cactus {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 724 {
}
movieClip 728 buy_lava {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 731 {
}
movieClip 735 buy_tnt {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
}
movieClip 737 dispenser_icon {
}
movieClip 745 pp_upgrade {
frame 1 {
stop();
}
}
movieClip 750 pp_sell {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 762 buy_items {
frame 1 {
stop();
}
instance egg_dispenser of movieClip 691 buy_egg_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.ed_price) {
_root.help.text = 'Fires weak eggs at mobs.';
gotoAndStop(2);
this.price.text = _root.player.ed_price;
} else {
_root.help.text = 'Fires weak eggs at mobs.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.ed_price) {
gotoAndStop(1);
this.price.text = _root.player.ed_price;
}
}
onClipEvent (release) {
_root.player.buy_item(1);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.ed_price;
if (_root.player.resources < _root.player.ed_price) {
this.gotoAndStop(3);
}
}
}
instance snow_dispenser of movieClip 696 buy_snow_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.sd_price) {
_root.help.text = 'Temporarily freezes mobs in place.';
gotoAndStop(2);
this.price.text = _root.player.sd_price;
} else {
_root.help.text = 'Temporarily freezes mobs in place.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.sd_price) {
gotoAndStop(1);
this.price.text = _root.player.sd_price;
}
}
onClipEvent (release) {
_root.player.buy_item(2);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.sd_price;
if (_root.player.resources < _root.player.sd_price) {
this.gotoAndStop(3);
}
}
}
instance arrow_dispenser of movieClip 700 buy_arrow_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.ad_price) {
_root.help.text = 'Fires powerful ranged arrows.';
gotoAndStop(2);
this.price.text = _root.player.ad_price;
} else {
_root.help.text = 'Fires powerful ranged arrows.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.ad_price) {
gotoAndStop(1);
this.price.text = _root.player.ad_price;
}
}
onClipEvent (release) {
_root.player.buy_item(3);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.ad_price;
if (_root.player.resources < _root.player.ad_price) {
this.gotoAndStop(3);
}
}
}
instance fireball_dispenser of movieClip 707 buy_fireball_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.fd_price) {
_root.help.text = 'Projectiles knock mobs back.';
gotoAndStop(2);
this.price.text = _root.player.fd_price;
} else {
_root.help.text = 'Projectiles knock mobs back.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.fd_price) {
gotoAndStop(1);
this.price.text = _root.player.fd_price;
}
}
onClipEvent (release) {
_root.player.buy_item(8);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.fd_price;
if (_root.player.resources < _root.player.fd_price) {
this.gotoAndStop(3);
}
}
}
frame 2 {
stop();
}
instance water of movieClip 714 buy_water {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.wt_price) {
_root.help.text = 'Slows downs mobs on contact.';
gotoAndStop(2);
this.price.text = _root.player.wt_price;
} else {
_root.help.text = 'Slows downs mobs on contact.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.wt_price) {
gotoAndStop(1);
this.price.text = _root.player.wt_price;
}
}
onClipEvent (release) {
_root.player.buy_item(5);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.wt_price;
if (_root.player.resources < _root.player.wt_price) {
this.gotoAndStop(3);
}
}
}
instance cactus of movieClip 721 buy_cactus {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.c_price) {
_root.help.text = 'Damages mobs on contact.';
gotoAndStop(2);
this.price.text = _root.player.c_price;
} else {
_root.help.text = 'Damages mobs on contact.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.c_price) {
gotoAndStop(1);
this.price.text = _root.player.c_price;
}
}
onClipEvent (release) {
_root.player.buy_item(4);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.c_price;
if (_root.player.resources < _root.player.c_price) {
this.gotoAndStop(3);
}
}
}
instance lava of movieClip 728 buy_lava {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.lt_price) {
_root.help.text = 'Burns mobs on contact.';
gotoAndStop(2);
this.price.text = _root.player.lt_price;
} else {
_root.help.text = 'Burns mobs on contact.';
}
}
onClipEvent (rollOut) {
this.price.text = _root.player.lt_price;
if (_root.player.resources >= _root.player.lt_price) {
this.price.text = _root.player.lt_price;
gotoAndStop(1);
}
}
onClipEvent (release) {
_root.player.buy_item(6);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.lt_price;
if (_root.player.resources < _root.player.lt_price) {
this.gotoAndStop(3);
}
}
}
instance tnt of movieClip 735 buy_tnt {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.tnt_price) {
_root.help.text = 'Explodes 3 seconds after buying.';
gotoAndStop(2);
this.price.text = _root.player.tnt_price;
} else {
_root.help.text = 'Explodes 3 seconds after buying.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.tnt_price) {
gotoAndStop(1);
this.price.text = _root.player.tnt_price;
}
}
onClipEvent (release) {
_root.player.buy_item(7);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.tnt_price;
if (_root.player.resources < _root.player.tnt_price) {
this.gotoAndStop(3);
}
}
}
frame 3 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(1);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(1);
}
}
frame 4 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Mobs slow down even more.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(5);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(5);
}
}
frame 5 {
stop();
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(4);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(4);
}
onClipEvent (release) {
_root.player.sell_item(4);
}
}
frame 6 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate and time frozen.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(2);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(2);
}
}
frame 7 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate and range.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(3);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(3);
}
}
frame 8 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases damage done to mobs.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(6);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(6);
}
}
frame 9 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(8);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(2);
}
}
}
movieClip 768 {
}
movieClip 773 top_bar {
}
movieClip 781 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
instance of movieClip 781 {
onClipEvent (rollOver) {
play();
}
onClipEvent (rollOut) {
play();
}
onClipEvent (release) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
if (_root.player.paused == true) {
_root.player.paused = false;
_root.paused_screen._visible = false;
_root.paused_screen.gotoAndStop(1);
} else {
_root.player.paused = true;
_root.paused_screen.gotoAndStop(2);
_root.paused_screen._visible = true;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
}
}
movieClip 788 skip_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
frame 3 {
stop();
}
frame 4 {
stop();
}
frame 5 {
stop();
}
}
instance skip_button of movieClip 788 skip_button {
onClipEvent (rollOver) {
if (this._currentframe == 1) {
gotoAndStop(2);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 4) {
gotoAndStop(5);
}
}
onClipEvent (rollOut) {
if (this._currentframe == 2) {
gotoAndStop(1);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 5) {
gotoAndStop(4);
}
}
onClipEvent (release) {
if (this._currentframe <= 2) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.seconds = 0;
_root.player.day = false;
_root.player.newWave();
if (_root.player.tutorial <= 9) {
_root.player.tutorial = 10;
_root.tutorial_arrow_9._visible = false;
_root.tutorial_arrow_9.swapDepths(1000);
_root.tutorial_arrow_9.removeMovieClip();
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_8.swapDepths(1000);
_root.tutorial_arrow_8.removeMovieClip();
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_7.swapDepths(1000);
_root.tutorial_arrow_7.removeMovieClip();
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_6.swapDepths(1000);
_root.tutorial_arrow_6.removeMovieClip();
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_5.swapDepths(1000);
_root.tutorial_arrow_5.removeMovieClip();
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_3.swapDepths(1000);
_root.tutorial_arrow_3.removeMovieClip();
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
}
}
if (this._currentframe == 4 || this._currentframe == 5) {
_root.player.newWave();
this.gotoAndStop(3);
}
}
}
movieClip 796 stop_help_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 798 continue_button {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 820 mob_help {
frame 1 {
stop();
}
frame 2 {
stop();
}
instance of movieClip 796 stop_help_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
_root.player.in_game_help = false;
_root.player.start_wave();
}
}
instance of movieClip 798 continue_button {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
_root.player.start_wave();
}
}
frame 3 {
stop();
}
frame 4 {
stop();
}
frame 5 {
stop();
}
frame 6 {
stop();
}
frame 7 {
stop();
}
frame 8 {
stop();
}
frame 9 {
stop();
}
}
movieClip 824 cursor {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 829 tutorial_arrow {
}
movieClip 833 {
}
movieClip 835 tutorial_arrow_2 {
instance of movieClip 833 {
onClipEvent (enterFrame) {
if (_root.player._x > 200) {
this._visible = false;
}
}
}
}
movieClip 839 tutorial_arrow_3 {
}
movieClip 843 tutorial_arrow_4 {
}
movieClip 847 tutorial_arrow_5 {
}
movieClip 851 tutorial_arrow_6 {
}
movieClip 855 tutorial_arrow_9 {
}
movieClip 857 tutorial_mistake_1 {
}
movieClip 861 tutorial_arrow_7 {
}
movieClip 865 tutorial_arrow_8 {
}
movieClip 868 fade_to_black_3 {
frame 1 {
stop();
}
frame 50 {
_root.play();
}
}
frame 6 {
stop();
Mouse.show();
var kongregate = _global.kongregate;
kongregate.stats.submit('Island Wave', _root.player.wave);
if (_root.player.wave > _root.options.easy_wave) {
_root.options.easy_wave = _root.player.wave;
}
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
}
movieClip 875 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
instance of movieClip 875 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.respawn();
}
}
movieClip 880 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
instance of movieClip 880 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.gotoAndStop(4);
}
}
frame 7 {
stop();
stopAllSounds();
Mouse.hide();
_root.options.game_resources = 0;
_root.options.game_mobs = 0;
_root.options.game_zombie_killed = 0;
_root.options.game_zombie_hurt = 0;
_root.options.game_zombie_resources = 0;
_root.options.game_skeleton_killed = 0;
_root.options.game_skeleton_hurt = 0;
_root.options.game_skeleton_resources = 0;
_root.options.game_spider_killed = 0;
_root.options.game_spider_hurt = 0;
_root.options.game_spider_resources = 0;
_root.options.game_creeper_killed = 0;
_root.options.game_creeper_hurt = 0;
_root.options.game_creeper_resources = 0;
_root.options.game_ghast_killed = 0;
_root.options.game_ghast_hurt = 0;
_root.options.game_ghast_resources = 0;
_root.options.game_silverfish_killed = 0;
_root.options.game_silverfish_hurt = 0;
_root.options.game_silverfish_resources = 0;
_root.options.game_endermen_killed = 0;
_root.options.game_endermen_hurt = 0;
_root.options.game_endermen_resources = 0;
_root.options.game_slime_killed = 0;
_root.options.game_slime_hurt = 0;
_root.options.game_slime_resources = 0;
_root.options.game_spider_jockey_killed = 0;
_root.options.game_spider_jockey_hurt = 0;
_root.options.game_spider_jockey_resources = 0;
}
movieClip 889 dirt_block {
#initclip
Object.registerClass('dirt_block', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 891 dirt_block_uncracked {
#initclip
Object.registerClass('dirt_block_uncracked', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 894 mossy_block {
#initclip
Object.registerClass('mossy_block', mossy_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 897 chest {
#initclip
Object.registerClass('chest', chest);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 898 tileset_2 {
}
movieClip 905 dungeon_arrows {
}
movieClip 909 house_dungeon {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 914 dynamic_gradient2 {
frame 1 {
stop();
}
frame 30 {
stop();
}
}
instance of movieClip 781 {
onClipEvent (rollOver) {
play();
}
onClipEvent (rollOut) {
play();
}
onClipEvent (release) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
if (_root.player.paused == true) {
_root.player.paused = false;
_root.paused_screen._visible = false;
_root.paused_screen.gotoAndStop(1);
} else {
_root.player.paused = true;
_root.paused_screen.gotoAndStop(2);
_root.paused_screen._visible = true;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
}
}
instance skip_button of movieClip 788 skip_button {
onClipEvent (rollOver) {
if (this._currentframe == 1) {
gotoAndStop(2);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 4) {
gotoAndStop(5);
}
}
onClipEvent (rollOut) {
if (this._currentframe == 2) {
gotoAndStop(1);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 5) {
gotoAndStop(4);
}
}
onClipEvent (release) {
if (this._currentframe <= 2) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.seconds = 0;
_root.player.day = false;
_root.player.newWave();
if (_root.player.tutorial <= 9) {
_root.player.tutorial = 10;
_root.tutorial_arrow_9._visible = false;
_root.tutorial_arrow_9.swapDepths(1000);
_root.tutorial_arrow_9.removeMovieClip();
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_8.swapDepths(1000);
_root.tutorial_arrow_8.removeMovieClip();
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_7.swapDepths(1000);
_root.tutorial_arrow_7.removeMovieClip();
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_6.swapDepths(1000);
_root.tutorial_arrow_6.removeMovieClip();
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_5.swapDepths(1000);
_root.tutorial_arrow_5.removeMovieClip();
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_3.swapDepths(1000);
_root.tutorial_arrow_3.removeMovieClip();
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
}
}
if (this._currentframe == 4 || this._currentframe == 5) {
_root.player.newWave();
this.gotoAndStop(3);
}
}
}
frame 8 {
stop();
Mouse.show();
var kongregate = _global.kongregate;
kongregate.stats.submit('Dungeon Wave', _root.player.wave);
if (_root.player.wave > _root.options.normal_wave) {
_root.options.normal_wave = _root.player.wave;
}
_root.pos = SharedObject.getLocal('game');
_root.pos.data.normal_wave = _root.options.normal_wave;
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
}
instance of movieClip 875 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.respawn();
}
}
instance of movieClip 880 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.gotoAndStop(4);
}
}
frame 9 {
stop();
stopAllSounds();
Mouse.hide();
if (_root.options.sfx >= 1) {
_root.soundFX.attachSound('nether_start');
_root.soundFX.start();
}
_root.options.game_resources = 0;
_root.options.game_mobs = 0;
_root.options.game_zombie_killed = 0;
_root.options.game_zombie_hurt = 0;
_root.options.game_zombie_resources = 0;
_root.options.game_skeleton_killed = 0;
_root.options.game_skeleton_hurt = 0;
_root.options.game_skeleton_resources = 0;
_root.options.game_spider_killed = 0;
_root.options.game_spider_hurt = 0;
_root.options.game_spider_resources = 0;
_root.options.game_creeper_killed = 0;
_root.options.game_creeper_hurt = 0;
_root.options.game_creeper_resources = 0;
_root.options.game_ghast_killed = 0;
_root.options.game_ghast_hurt = 0;
_root.options.game_ghast_resources = 0;
_root.options.game_silverfish_killed = 0;
_root.options.game_silverfish_hurt = 0;
_root.options.game_silverfish_resources = 0;
_root.options.game_endermen_killed = 0;
_root.options.game_endermen_hurt = 0;
_root.options.game_endermen_resources = 0;
_root.options.game_slime_killed = 0;
_root.options.game_slime_hurt = 0;
_root.options.game_slime_resources = 0;
_root.options.game_spider_jockey_killed = 0;
_root.options.game_spider_jockey_hurt = 0;
_root.options.game_spider_jockey_resources = 0;
}
movieClip 924 cobble_block {
#initclip
Object.registerClass('cobble_block', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 925 tileset_3 {
}
movieClip 929 {
}
movieClip 934 portal_animate {
}
movieClip 935 portal {
frame 1 {
stop();
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
instance of movieClip 934 portal_animate {
onClipEvent (enterFrame) {
_rotation = _rotation + (Math.floor(Math.random() * 3) + 1);
}
}
frame 2 {
stop();
}
}
movieClip 941 dynamic_gradient3 {
frame 1 {
stop();
}
frame 30 {
stop();
}
}
instance of movieClip 781 {
onClipEvent (rollOver) {
play();
}
onClipEvent (rollOut) {
play();
}
onClipEvent (release) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
if (_root.player.paused == true) {
_root.player.paused = false;
_root.paused_screen._visible = false;
_root.paused_screen.gotoAndStop(1);
} else {
_root.player.paused = true;
_root.paused_screen.gotoAndStop(2);
_root.paused_screen._visible = true;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
}
}
instance skip_button of movieClip 788 skip_button {
onClipEvent (rollOver) {
if (this._currentframe == 1) {
gotoAndStop(2);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 4) {
gotoAndStop(5);
}
}
onClipEvent (rollOut) {
if (this._currentframe == 2) {
gotoAndStop(1);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 5) {
gotoAndStop(4);
}
}
onClipEvent (release) {
if (this._currentframe <= 2) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.seconds = 0;
_root.player.day = false;
_root.player.newWave();
if (_root.player.tutorial <= 9) {
_root.player.tutorial = 10;
_root.tutorial_arrow_9._visible = false;
_root.tutorial_arrow_9.swapDepths(1000);
_root.tutorial_arrow_9.removeMovieClip();
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_8.swapDepths(1000);
_root.tutorial_arrow_8.removeMovieClip();
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_7.swapDepths(1000);
_root.tutorial_arrow_7.removeMovieClip();
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_6.swapDepths(1000);
_root.tutorial_arrow_6.removeMovieClip();
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_5.swapDepths(1000);
_root.tutorial_arrow_5.removeMovieClip();
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_3.swapDepths(1000);
_root.tutorial_arrow_3.removeMovieClip();
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
}
}
if (this._currentframe == 4 || this._currentframe == 5) {
_root.player.newWave();
this.gotoAndStop(3);
}
}
}
frame 10 {
stop();
Mouse.show();
var kongregate = _global.kongregate;
kongregate.stats.submit('Nether Wave', _root.player.wave);
if (_root.player.wave > _root.options.hard_wave) {
_root.options.hard_wave = _root.player.wave;
}
_root.pos = SharedObject.getLocal('game');
_root.pos.data.hard_wave = _root.options.hard_wave;
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
}
instance of movieClip 875 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.respawn();
}
}
instance of movieClip 880 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.gotoAndStop(4);
}
}
frame 11 {
stop();
stopAllSounds();
Mouse.hide();
_root.options.end = true;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.end = _root.options.end;
_root.options.game_resources = 0;
_root.options.game_mobs = 0;
_root.options.game_zombie_killed = 0;
_root.options.game_zombie_hurt = 0;
_root.options.game_zombie_resources = 0;
_root.options.game_skeleton_killed = 0;
_root.options.game_skeleton_hurt = 0;
_root.options.game_skeleton_resources = 0;
_root.options.game_spider_killed = 0;
_root.options.game_spider_hurt = 0;
_root.options.game_spider_resources = 0;
_root.options.game_creeper_killed = 0;
_root.options.game_creeper_hurt = 0;
_root.options.game_creeper_resources = 0;
_root.options.game_ghast_killed = 0;
_root.options.game_ghast_hurt = 0;
_root.options.game_ghast_resources = 0;
_root.options.game_silverfish_killed = 0;
_root.options.game_silverfish_hurt = 0;
_root.options.game_silverfish_resources = 0;
_root.options.game_endermen_killed = 0;
_root.options.game_endermen_hurt = 0;
_root.options.game_endermen_resources = 0;
_root.options.game_slime_killed = 0;
_root.options.game_slime_hurt = 0;
_root.options.game_slime_resources = 0;
_root.options.game_spider_jockey_killed = 0;
_root.options.game_spider_jockey_hurt = 0;
_root.options.game_spider_jockey_resources = 0;
}
movieClip 951 end_block {
#initclip
Object.registerClass('end_block', dirt_block);
#endinitclip
frame 1 {
stop();
}
frame 2 {
stop();
}
}
movieClip 952 tileset_4 {
}
movieClip 958 buy_items_nether {
frame 1 {
stop();
}
instance egg_dispenser of movieClip 691 buy_egg_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.ed_price) {
_root.help.text = 'Fires weak eggs at mobs.';
gotoAndStop(2);
this.price.text = _root.player.ed_price;
} else {
_root.help.text = 'Fires weak eggs at mobs.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.ed_price) {
gotoAndStop(1);
this.price.text = _root.player.ed_price;
}
}
onClipEvent (release) {
_root.player.buy_item(1);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.ed_price;
if (_root.player.resources < _root.player.ed_price) {
this.gotoAndStop(3);
}
}
}
instance snow_dispenser of movieClip 696 buy_snow_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.sd_price) {
_root.help.text = 'Temporarily freezes mobs in place.';
gotoAndStop(2);
this.price.text = _root.player.sd_price;
} else {
_root.help.text = 'Temporarily freezes mobs in place.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.sd_price) {
gotoAndStop(1);
this.price.text = _root.player.sd_price;
}
}
onClipEvent (release) {
_root.player.buy_item(2);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.sd_price;
if (_root.player.resources < _root.player.sd_price) {
this.gotoAndStop(3);
}
}
}
instance arrow_dispenser of movieClip 700 buy_arrow_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.ad_price) {
_root.help.text = 'Fires powerful ranged arrows.';
gotoAndStop(2);
this.price.text = _root.player.ad_price;
} else {
_root.help.text = 'Fires powerful ranged arrows.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.ad_price) {
gotoAndStop(1);
this.price.text = _root.player.ad_price;
}
}
onClipEvent (release) {
_root.player.buy_item(3);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.ad_price;
if (_root.player.resources < _root.player.ad_price) {
this.gotoAndStop(3);
}
}
}
instance fireball_dispenser of movieClip 707 buy_fireball_dispenser {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.fd_price) {
_root.help.text = 'Projectiles knock mobs back.';
gotoAndStop(2);
this.price.text = _root.player.fd_price;
} else {
_root.help.text = 'Projectiles knock mobs back.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.fd_price) {
gotoAndStop(1);
this.price.text = _root.player.fd_price;
}
}
onClipEvent (release) {
_root.player.buy_item(8);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.fd_price;
if (_root.player.resources < _root.player.fd_price) {
this.gotoAndStop(3);
}
}
}
frame 2 {
stop();
}
instance cactus of movieClip 721 buy_cactus {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.c_price) {
_root.help.text = 'Damages mobs on contact.';
gotoAndStop(2);
this.price.text = _root.player.c_price;
} else {
_root.help.text = 'Damages mobs on contact.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.c_price) {
gotoAndStop(1);
this.price.text = _root.player.c_price;
}
}
onClipEvent (release) {
_root.player.buy_item(4);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.c_price;
if (_root.player.resources < _root.player.c_price) {
this.gotoAndStop(3);
}
}
}
instance lava of movieClip 728 buy_lava {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.lt_price) {
_root.help.text = 'Burns mobs on contact.';
gotoAndStop(2);
this.price.text = _root.player.lt_price;
} else {
_root.help.text = 'Burns mobs on contact.';
}
}
onClipEvent (rollOut) {
this.price.text = _root.player.lt_price;
if (_root.player.resources >= _root.player.lt_price) {
this.price.text = _root.player.lt_price;
gotoAndStop(1);
}
}
onClipEvent (release) {
_root.player.buy_item(6);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.lt_price;
if (_root.player.resources < _root.player.lt_price) {
this.gotoAndStop(3);
}
}
}
instance tnt of movieClip 735 buy_tnt {
onClipEvent (rollOver) {
if (_root.player.resources >= _root.player.tnt_price) {
_root.help.text = 'Explodes 3 seconds after buying.';
gotoAndStop(2);
this.price.text = _root.player.tnt_price;
} else {
_root.help.text = 'Explodes 3 seconds after buying.';
}
}
onClipEvent (rollOut) {
if (_root.player.resources >= _root.player.tnt_price) {
gotoAndStop(1);
this.price.text = _root.player.tnt_price;
}
}
onClipEvent (release) {
_root.player.buy_item(7);
}
onClipEvent (enterFrame) {
this.price.text = _root.player.tnt_price;
if (_root.player.resources < _root.player.tnt_price) {
this.gotoAndStop(3);
}
}
}
frame 3 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(1);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(1);
}
}
frame 4 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Mobs slow down even more.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(5);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(5);
}
}
frame 5 {
stop();
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(4);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(4);
}
onClipEvent (release) {
_root.player.sell_item(4);
}
}
frame 6 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate and time frozen.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(2);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(2);
}
}
frame 7 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate and range.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(3);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(3);
}
}
frame 8 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases damage done to mobs.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(6);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(6);
}
}
frame 9 {
stop();
}
instance upgrade_item of movieClip 745 pp_upgrade {
onClipEvent (rollOver) {
_root.player.updateShop(3);
_root.help.text = 'Increases fire rate.';
}
onClipEvent (rollOut) {
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.upgrade_item(8);
}
onClipEvent (enterFrame) {
_root.player.updateShop(3);
}
}
instance sell_item of movieClip 750 pp_sell {
onClipEvent (rollOver) {
gotoAndStop(2);
_root.player.updateShop(3);
}
onClipEvent (rollOut) {
gotoAndStop(1);
_root.player.updateShop(3);
}
onClipEvent (release) {
_root.player.sell_item(2);
}
}
}
instance of movieClip 781 {
onClipEvent (rollOver) {
play();
}
onClipEvent (rollOut) {
play();
}
onClipEvent (release) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
if (_root.player.paused == true) {
_root.player.paused = false;
_root.paused_screen._visible = false;
_root.paused_screen.gotoAndStop(1);
} else {
_root.player.paused = true;
_root.paused_screen.gotoAndStop(2);
_root.paused_screen._visible = true;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
}
}
instance skip_button of movieClip 788 skip_button {
onClipEvent (rollOver) {
if (this._currentframe == 1) {
gotoAndStop(2);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 4) {
gotoAndStop(5);
}
}
onClipEvent (rollOut) {
if (this._currentframe == 2) {
gotoAndStop(1);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 5) {
gotoAndStop(4);
}
}
onClipEvent (release) {
if (this._currentframe <= 2) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.seconds = 0;
_root.player.day = false;
_root.player.newWave();
if (_root.player.tutorial <= 9) {
_root.player.tutorial = 10;
_root.tutorial_arrow_9._visible = false;
_root.tutorial_arrow_9.swapDepths(1000);
_root.tutorial_arrow_9.removeMovieClip();
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_8.swapDepths(1000);
_root.tutorial_arrow_8.removeMovieClip();
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_7.swapDepths(1000);
_root.tutorial_arrow_7.removeMovieClip();
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_6.swapDepths(1000);
_root.tutorial_arrow_6.removeMovieClip();
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_5.swapDepths(1000);
_root.tutorial_arrow_5.removeMovieClip();
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_3.swapDepths(1000);
_root.tutorial_arrow_3.removeMovieClip();
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
}
}
if (this._currentframe == 4 || this._currentframe == 5) {
_root.player.newWave();
this.gotoAndStop(3);
}
}
}
movieClip 962 cursor_3 {
frame 1 {
stop();
}
frame 2 {
stop();
}
}
frame 12 {
stop();
Mouse.show();
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
}
instance of movieClip 875 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.respawn();
}
}
instance of movieClip 880 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.gotoAndStop(4);
}
}
frame 13 {
if (_root.options.respawn == 1) {
gotoAndStop(5);
}
if (_root.options.respawn == 2) {
gotoAndStop(7);
}
if (_root.options.respawn == 3) {
gotoAndStop(9);
}
if (_root.options.respawn == 4) {
gotoAndStop(11);
}
if (_root.options.respawn == 5) {
gotoAndStop(14);
}
}
frame 14 {
stop();
stopAllSounds();
Mouse.hide();
if (_root.options.easy_wave == 0) {
_root.player.tutorial = 1;
} else {
_root.tutorial_arrow_1._visible = false;
}
_root.options.game_resources = 0;
_root.options.game_mobs = 0;
_root.options.game_zombie_killed = 0;
_root.options.game_zombie_hurt = 0;
_root.options.game_zombie_resources = 0;
_root.options.game_skeleton_killed = 0;
_root.options.game_skeleton_hurt = 0;
_root.options.game_skeleton_resources = 0;
_root.options.game_spider_killed = 0;
_root.options.game_spider_hurt = 0;
_root.options.game_spider_resources = 0;
_root.options.game_creeper_killed = 0;
_root.options.game_creeper_hurt = 0;
_root.options.game_creeper_resources = 0;
_root.options.game_ghast_killed = 0;
_root.options.game_ghast_hurt = 0;
_root.options.game_ghast_resources = 0;
_root.options.game_silverfish_killed = 0;
_root.options.game_silverfish_hurt = 0;
_root.options.game_silverfish_resources = 0;
_root.options.game_endermen_killed = 0;
_root.options.game_endermen_hurt = 0;
_root.options.game_endermen_resources = 0;
_root.options.game_slime_killed = 0;
_root.options.game_slime_hurt = 0;
_root.options.game_slime_resources = 0;
_root.options.game_spider_jockey_killed = 0;
_root.options.game_spider_jockey_hurt = 0;
_root.options.game_spider_jockey_resources = 0;
}
movieClip 965 tileset {
}
instance of movieClip 781 {
onClipEvent (rollOver) {
play();
}
onClipEvent (rollOut) {
play();
}
onClipEvent (release) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
if (_root.player.paused == true) {
_root.player.paused = false;
_root.paused_screen._visible = false;
_root.paused_screen.gotoAndStop(1);
} else {
_root.player.paused = true;
_root.paused_screen.gotoAndStop(2);
_root.paused_screen._visible = true;
_root.player.deselect_all();
_root.player.build_mode = 0;
_root.player.roll_over_menu = 0;
}
}
}
instance skip_button of movieClip 788 skip_button {
onClipEvent (rollOver) {
if (this._currentframe == 1) {
gotoAndStop(2);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 4) {
gotoAndStop(5);
}
}
onClipEvent (rollOut) {
if (this._currentframe == 2) {
gotoAndStop(1);
_root.skip_button.time.text = 'Skip (' + _root.player.seconds + ')';
}
if (this._currentframe == 5) {
gotoAndStop(4);
}
}
onClipEvent (release) {
if (this._currentframe <= 2) {
stopAllSounds();
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.seconds = 0;
_root.player.day = false;
_root.player.newWave();
if (_root.player.tutorial <= 9) {
_root.player.tutorial = 10;
_root.tutorial_arrow_9._visible = false;
_root.tutorial_arrow_9.swapDepths(1000);
_root.tutorial_arrow_9.removeMovieClip();
_root.tutorial_arrow_8._visible = false;
_root.tutorial_arrow_8.swapDepths(1000);
_root.tutorial_arrow_8.removeMovieClip();
_root.tutorial_arrow_7._visible = false;
_root.tutorial_arrow_7.swapDepths(1000);
_root.tutorial_arrow_7.removeMovieClip();
_root.tutorial_arrow_6._visible = false;
_root.tutorial_arrow_6.swapDepths(1000);
_root.tutorial_arrow_6.removeMovieClip();
_root.tutorial_arrow_5._visible = false;
_root.tutorial_arrow_5.swapDepths(1000);
_root.tutorial_arrow_5.removeMovieClip();
_root.tutorial_arrow_4._visible = false;
_root.tutorial_arrow_4.swapDepths(1000);
_root.tutorial_arrow_4.removeMovieClip();
_root.tutorial_arrow_3._visible = false;
_root.tutorial_arrow_3.swapDepths(1000);
_root.tutorial_arrow_3.removeMovieClip();
_root.tutorial_arrow_2.swapDepths(1000);
_root.tutorial_arrow_2.removeMovieClip();
_root.tutorial_arrow_1.swapDepths(1000);
_root.tutorial_arrow_1.removeMovieClip();
}
}
if (this._currentframe == 4 || this._currentframe == 5) {
_root.player.newWave();
this.gotoAndStop(3);
}
}
}
frame 15 {
stop();
Mouse.show();
var kongregate = _global.kongregate;
kongregate.stats.submit('Snow Wave', _root.player.wave);
if (_root.player.wave > _root.options.highest_wave) {
_root.options.highest_wave = _root.player.wave;
}
_root.options.games_played += 1;
_root.options.total_resources += _root.options.game_resources;
_root.options.total_mobs += _root.options.game_mobs;
_root.options.zombie_killed += _root.options.game_zombie_killed;
_root.options.zombie_hurt += _root.options.game_zombie_hurt;
_root.options.zombie_resources += _root.options.game_zombie_resources;
_root.options.skeleton_killed += _root.options.game_skeleton_killed;
_root.options.skeleton_hurt += _root.options.game_skeleton_hurt;
_root.options.skeleton_resources += _root.options.game_skeleton_resources;
_root.options.spider_killed += _root.options.game_spider_killed;
_root.options.spider_hurt += _root.options.game_spider_hurt;
_root.options.spider_resources += _root.options.game_spider_resources;
_root.options.creeper_killed += _root.options.game_creeper_killed;
_root.options.creeper_hurt += _root.options.game_creeper_hurt;
_root.options.creeper_resources += _root.options.game_creeper_resources;
_root.options.ghast_killed += _root.options.game_ghast_killed;
_root.options.ghast_hurt += _root.options.game_ghast_hurt;
_root.options.ghast_resources += _root.options.game_ghast_resources;
_root.options.silverfish_killed += _root.options.game_silverfish_killed;
_root.options.silverfish_hurt += _root.options.game_silverfish_hurt;
_root.options.silverfish_resources += _root.options.game_silverfish_resources;
_root.options.endermen_killed += _root.options.game_endermen_killed;
_root.options.endermen_hurt += _root.options.game_endermen_hurt;
_root.options.endermen_resources += _root.options.game_endermen_resources;
_root.options.slime_killed += _root.options.game_slime_killed;
_root.options.slime_hurt += _root.options.game_slime_hurt;
_root.options.slime_resources += _root.options.game_slime_resources;
_root.options.spider_jockey_killed += _root.options.game_spider_jockey_killed;
_root.options.spider_jockey_hurt += _root.options.game_spider_jockey_hurt;
_root.options.spider_jockey_resources += _root.options.game_spider_jockey_resources;
_root.pos = SharedObject.getLocal('game');
_root.pos.data.easy_wave = _root.options.easy_wave;
_root.pos.data.highest_wave = _root.options.highest_wave;
_root.pos.data.games_played = _root.options.games_played;
_root.pos.data.total_resources = _root.options.total_resources;
_root.pos.data.total_mobs = _root.options.total_mobs;
_root.pos.data.zombie_killed = _root.options.zombie_killed;
_root.pos.data.zombie_hurt = _root.options.zombie_hurt;
_root.pos.data.zombie_resources = _root.options.zombie_resources;
_root.pos.data.skeleton_killed = _root.options.skeleton_killed;
_root.pos.data.skeleton_hurt = _root.options.skeleton_hurt;
_root.pos.data.skeleton_resources = _root.options.skeleton_resources;
_root.pos.data.spider_killed = _root.options.spider_killed;
_root.pos.data.spider_hurt = _root.options.spider_hurt;
_root.pos.data.spider_resources = _root.options.spider_resources;
_root.pos.data.creeper_killed = _root.options.creeper_killed;
_root.pos.data.creeper_hurt = _root.options.creeper_hurt;
_root.pos.data.creeper_resources = _root.options.creeper_resources;
_root.pos.data.ghast_killed = _root.options.ghast_killed;
_root.pos.data.ghast_hurt = _root.options.ghast_hurt;
_root.pos.data.ghast_resources = _root.options.ghast_resources;
_root.pos.data.silverfish_killed = _root.options.silverfish_killed;
_root.pos.data.silverfish_hurt = _root.options.silverfish_hurt;
_root.pos.data.silverfish_resources = _root.options.silverfish_resources;
_root.pos.data.endermen_killed = _root.options.endermen_killed;
_root.pos.data.endermen_hurt = _root.options.endermen_hurt;
_root.pos.data.endermen_resources = _root.options.endermen_resources;
_root.pos.data.slime_killed = _root.options.slime_killed;
_root.pos.data.slime_hurt = _root.options.slime_hurt;
_root.pos.data.slime_resources = _root.options.slime_resources;
_root.pos.data.spider_jockey_killed = _root.options.spider_jockey_killed;
_root.pos.data.spider_jockey_hurt = _root.options.spider_jockey_hurt;
_root.pos.data.spider_jockey_resources = _root.options.spider_jockey_resources;
}
instance of movieClip 875 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.player.respawn();
}
}
instance of movieClip 880 {
onClipEvent (rollOver) {
gotoAndStop(2);
}
onClipEvent (rollOut) {
gotoAndStop(1);
}
onClipEvent (release) {
if (_root.options.sfx >= 1) {
var click_sound = new Sound();
click_sound.attachSound('click');
click_sound.start();
}
_root.gotoAndStop(4);
}
}