Combined Code
movieClip 18 soundz {
}
movieClip 60 {
}
movieClip 63 {
}
movieClip 112 {
frame 1 {
stop();
}
frame 15 {
done = true;
}
frame 29 {
done = true;
}
frame 43 {
done = true;
}
frame 57 {
done = true;
}
frame 71 {
done = true;
}
frame 86 {
gotoAndPlay('walk');
}
}
movieClip 115 {
}
movieClip 118 {
}
movieClip 137 {
frame 1 {
stop();
}
frame 3 {
expl = true;
}
frame 49 {
done = true;
stop();
}
frame 50 {
done = true;
}
frame 60 {
gotoAndStop('walk');
}
}
movieClip 140 {
}
movieClip 187 {
frame 1 {
stop();
}
frame 9 {
done = true;
}
frame 17 {
done = true;
}
frame 25 {
done = true;
}
frame 34 {
done = true;
}
frame 43 {
done = true;
}
frame 58 {
gotoAndStop('walk');
}
}
movieClip 231 {
frame 24 {
expl = true;
}
frame 36 {
done = true;
}
}
movieClip 236 {
}
movieClip 245 {
}
movieClip 246 {
}
movieClip 247 {
}
movieClip 258 {
}
movieClip 259 {
}
movieClip 262 {
}
movieClip 263 {
frame 1 {
stop();
}
frame 15 {
done = true;
}
frame 29 {
done = true;
}
frame 43 {
done = true;
}
frame 57 {
done = true;
}
frame 71 {
done = true;
}
frame 86 {
gotoAndPlay('walk');
}
}
movieClip 266 {
}
movieClip 284 {
}
movieClip 322 {
frame 23 {
expl = true;
}
frame 36 {
done = true;
}
}
movieClip 324 {
}
movieClip 325 ball {
}
movieClip 334 {
}
movieClip 336 p4 {
frame 19 {
done = true;
}
}
movieClip 369 p3 {
frame 17 {
done = true;
}
}
movieClip 373 p2 {
frame 12 {
done = true;
}
}
movieClip 388 p6 {
frame 17 {
done = true;
}
}
movieClip 401 {
}
movieClip 402 p7 {
frame 15 {
done = true;
}
}
movieClip 415 p5 {
frame 15 {
done = true;
}
}
movieClip 426 p1 {
frame 11 {
done = true;
}
}
movieClip 429 p0 {
frame 19 {
done = true;
}
}
movieClip 435 score {
}
movieClip 494 scoreget {
}
frame 1 {
stop();
gamename = 'seed_of_destruction';
_root.localization_url1 = 'http://www.a10.com/moregames/?utm_medium=brandedgames_as2&utm_campaign=' + gamename + '&utm_source=unknown';
_root.localization_language_nr = 1;
_root.localization_branding_nr = 46;
_root.localization_portal = 'teen';
if (_root.localization_portal == 'game_com_cn') {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_mainscreen_moregames', '_blank');
};
}
}
frame 1 {
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
var pv;
mb = '__mochibot__';
mbc = 'mochibot.com';
g = _global ? _global : _level0._root;
if (g[mb + swfid]) {
return g[mb + swfid];
}
s = System.security;
x = mc._root.getSWFVersion;
fv = x ? mc.getSWFVersion() : (_global ? 6 : 5);
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == 'localWithFile') {
return null;
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
pv = (fv == 5) ? /:$version : System.capabilities.version;
u = 'http://' + mbc + '/my/core.swf?mv=8&fv=' + fv + '&v=' + escape(pv) + '&swfid=' + escape(swfid) + '&l=' + lv + '&f=' + mc + (sb ? '&sb=' + sb : '') + (trk ? '&t=1' : '');
lv = fv > 6 ? mc.getNextHighestDepth() : (g[mb + 'level'] ? g[mb + 'level'] + 1 : lv);
g[mb + 'level'] = lv;
if (fv == 5) {
res = '_level' + lv;
if (!eval(res)) {
loadMovieNum(u, lv);
}
return res;
}
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
return res;
}
function medalg(f1) {
if (ngs) {
var v5 = true;
var v4 = com.Newgrounds.NewgroundsAPI.getMedals();
var v2 = 0;
while (v2 < v4.length) {
var v3 = v4[v2];
if (v3.medal_name == f1 && v3.medal_unlocked) {
v5 = false;
}
++v2;
}
if (v5) {
_root.medal_popup.unlockMedal(f1);
}
}
}
function itemHandler0(obj, item) {
getURL('http://www.komix-games.com', '_blank');
}
function itemHandler1(obj, item) {
getURL('http://barfquestion.com/', '_blank');
}
function itemHandler3(obj, item) {
getURL('http://www.myspace.com/doctorsulek', '_blank');
}
function itemHandler2(obj, item) {
_root.maxlev = 6;
co.nextFrame();
co2.nextFrame();
co3.nextFrame();
so = SharedObject.getLocal('so');
so.data.l = 7;
so.flush();
}
stop();
__com_mochibot__('0d6b63cd', this, 10301, true);
_root.API_Settings = {'movie_id': 6881, 'enc_key': 'sSnCSsZ6MFQfhxCTuZKbyOeUU46cD0w9', 'debug_mode': false, 'movie_version': ''};
currUrl = _url.toLowerCase();
if (currUrl.indexOf('komix-games.com') <= 0 && currUrl != 'local' && currUrl.indexOf('flashgamelicense.com') <= 0) {
}
if (_url.indexOf('ungrounded.net') > -1 && com.Newgrounds.NewgroundsAPI.hasUserSession()) {
ngs = true;
}
var myMenu = new ContextMenu();
myMenu.hideBuiltInItems();
myMenu.customItems.push(new ContextMenuItem('Florian!', itemHandler0));
myMenu.customItems.push(new ContextMenuItem('Grey!', itemHandler1));
myMenu.customItems.push(new ContextMenuItem('Sulek!', itemHandler3));
var myMenu2 = new ContextMenu();
myMenu2.hideBuiltInItems();
if (currUrl.indexOf('www8.agame.com') <= 0) {
_root.menu = myMenu;
} else {
_root.menu = myMenu2;
}
}
// unknown tag 88 length 68
// unknown tag 88 length 62
movieClip 502 {
}
movieClip 503 {
frame 1 {
com.Newgrounds.NewgroundsAPI.attachFlashAd(_parent[_name]);
var attachAd = function () {
com.Newgrounds.NewgroundsAPI.attachFlashAd(_parent[_name]);
};
com.Newgrounds.NewgroundsAPI.addEventListener(com.Newgrounds.NewgroundsAPI.events.ADS_APPROVED, attachAd);
background._visible = false;
}
}
movieClip 505 {
}
movieClip 516 {
}
movieClip 517 {
}
movieClip 519 {
}
movieClip 521 {
}
movieClip 523 {
}
movieClip 525 {
}
movieClip 527 {
}
movieClip 529 {
}
movieClip 531 {
}
movieClip 533 {
}
movieClip 535 {
}
movieClip 537 {
}
movieClip 539 {
}
movieClip 541 {
}
movieClip 543 {
}
movieClip 545 {
}
movieClip 548 {
}
movieClip 549 {
}
movieClip 551 {
}
movieClip 553 {
}
movieClip 555 {
}
movieClip 557 {
}
movieClip 559 {
}
movieClip 561 {
}
movieClip 563 {
}
movieClip 565 {
}
movieClip 567 {
}
movieClip 569 {
}
movieClip 571 {
}
movieClip 573 {
}
movieClip 575 {
}
movieClip 577 {
}
movieClip 579 {
}
movieClip 581 {
}
movieClip 583 {
}
movieClip 585 {
}
movieClip 587 {
}
movieClip 589 {
}
movieClip 591 {
}
movieClip 593 {
}
movieClip 595 {
}
movieClip 597 {
}
movieClip 600 {
}
movieClip 602 {
}
movieClip 604 {
}
movieClip 606 {
}
movieClip 607 {
frame 1 {
gotoAndStop(_root.localization_branding_nr);
}
}
button 621 {
on (release) {
_root.gotoAndStop('intro2');
}
}
movieClip 622 {
}
instance of movieClip 622 {
onClipEvent (enterFrame) {
lod = _root.getBytesLoaded();
tot = _root.getBytesTotal();
center = lod / tot;
if (cent > 0.9) {
nextFrame();
}
cent = (cent * 5 + center) / 6;
_root.pl.gotoAndStop(Math.round(cent * (_root.pl._totalframes - 1)) + 1);
}
onClipEvent (load) {
stop();
cent = 0;
narf = 0;
}
}
movieClip 624 {
}
movieClip 654 {
}
// unknown tag 88 length 67
// unknown tag 88 length 62
movieClip 660 {
}
// unknown tag 88 length 67
movieClip 665 {
}
movieClip 666 {
frame 1 {
function unlockMedal(m_name) {
clearInterval(pop_delay);
var v1 = com.Newgrounds.NewgroundsAPI.getMedals();
var v2 = null;
for (i in v1) {
if (v1[i].medal_name == m_name) {
v2 = v1[i];
medal_name = v2.medal_name;
medal_value = v2.medal_value + 'pts';
com.Newgrounds.NewgroundsAPI.unlockMedal(medal_name);
pop_delay = setInterval(endDelay, 3000);
_visible = true;
gotoAndPlay(2);
break;
}
}
}
function endDelay(params) {
gotoAndPlay(10);
clearInterval(pop_delay);
}
var pop_delay;
var medal_name = '?????';
var medal_value = '???';
_visible = false;
}
frame 10 {
var myBitmapData = flash.display.BitmapData.loadBitmap(medal_name + '.gif');
medal_icon.attachBitmap(myBitmapData, 111);
stop();
}
}
button 669 {
on (release) {
this._visible = false;
}
}
movieClip 676 {
frame 1 {
_visible = false;
var checkConnection = function (event) {
if (!event.success) {
_visible = true;
gotoAndStop(3);
}
};
if (com.Newgrounds.NewgroundsAPI.isNewgrounds() || _root.API_Settings.debug_mode) {
com.Newgrounds.NewgroundsAPI.addEventListener(com.Newgrounds.NewgroundsAPI.events.MOVIE_CONNECTED, checkConnection);
if (!com.Newgrounds.NewgroundsAPI.hasUserSession() && !_root.API_Settings.debug_mode) {
_visible = true;
gotoAndStop(2);
}
}
com.Newgrounds.NewgroundsAPI.setMovieVersion(_root.API_Settings.movie_version);
com.Newgrounds.NewgroundsAPI.connectMovie(_root.API_Settings.movie_id, _root.API_Settings.enc_key, _root.API_Settings.debug_mode);
com.Newgrounds.NewgroundsAPI.loadMedals();
stop();
}
}
movieClip 972 __Packages.com.Newgrounds.BaseN {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.BaseN) {
var v1 = function (hash) {
this.ceiling = 100000000000000.0;
if (hash) {
this.hashIndex = hash;
} else {
this.hashIndex = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/';
}
this.bitSize = this.hashIndex.length;
this.hashVal = new Object();
this.i = 0;
while (this.i < this.bitSize) {
this.hashVal[this.hashIndex.charAt(this.i)] = this.i;
++this.i;
}
};
com.Newgrounds.BaseN = v1;
var v2 = v1.prototype;
v2.verify = function (s) {
if (this.hashVal[s] != undefined) {
return true;
} else {
return false;
}
};
v2.encode = function (n, minchars) {
this.debug.lastencode = '';
if (typeof this.i != 'string') {
n = n.toString();
}
if (n.charAt(0) == '-') {
var v3 = '-';
n = n.substring(1);
} else {
var v3 = '';
}
if ((String(n)).indexOf('.') > -1) {
var v4 = (String(n)).split('.', 2);
return v3 + this.baseNEncoder(v4[0], minchars) + '.' + this.baseNEncoder(v4[1]);
} else {
this.debug.lastencode += '\tNo decimal\r';
return v3 + this.baseNEncoder(n, minchars);
}
};
v2.decode = function (s) {
var v4 = 1;
if (s.charAt(0) == '-') {
v4 = -1;
s = s.substring(1, s.length);
}
var v3 = s.indexOf('.');
if (v3 > -1) {
var v5 = Math.pow(10, this.baseNDecoder(s.substring(v3 + 1, s.length)));
return (this.baseNDecoder(s.substring(0, v3)) / v5) * v4;
} else {
return this.baseNDecoder(s) * v4;
}
};
v2.baseNEncoder = function (n, minchars) {
if (!minchars) {
minchars = 1;
}
var v4 = '';
while (n != 0) {
n = Math.round(n);
var v3 = n % this.bitSize;
if (Math.round(v3) != v3) {
trace('BaseN failed on ' + n + '%' + this.bitSize + ' = ' + v3 + ' ' + int(n) + ' ' + int(this.bitSize));
}
v4 = this.hashIndex.charAt(v3) + v4;
this.debug.lastencode += '\t-> n:' + n + ' % bitSize:' + this.bitSize + ' = ' + v3 + ', final char=' + v4 + '\n';
n -= v3;
n /= this.bitSize;
}
if (minchars) {
while (v4.length < minchars) {
v4 = this.hashIndex.charAt(0) + v4;
}
}
return v4;
};
v2.baseNDecoder = function (s) {
var v2 = 0;
var v6 = 0;
this.i = 0;
while (this.i < s.length) {
var v3 = s.charAt(s.length - this.i - 1);
if (v3 == this.hashIndex.charAt(0)) {
var v5 = 0;
} else {
var v5 = this.hashVal[v3] * Math.pow(this.bitSize, this.i);
}
v2 += v5;
if (v2 >= this.ceiling) {
v6 += (v2 - v2 % this.ceiling) / this.ceiling;
v2 %= this.ceiling;
}
++this.i;
}
if (v6 > 0) {
v2 = '' + v2;
while (v2.length < (this.ceiling.toString()).length - 1) {
v2 = '0' + v2;
}
v2 = '' + v6 + v2;
}
return v2;
};
v2.debug = new Object();
ASSetPropFlags(com.Newgrounds.BaseN.prototype, null, 1);
}
#endinitclip
}
movieClip 973 __Packages.com.Newgrounds.NewgroundsAPIError {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.NewgroundsAPIError) {
var v1 = function (error, msg) {
if ((Number(error)).toString() == String(error)) {
error = Number(error);
} else {
if (com.Newgrounds.NewgroundsAPIError.error_codes[String(error)]) {
error = com.Newgrounds.NewgroundsAPIError.error_codes[String(error)];
} else {
error = 0;
}
}
this.code = error;
this.message = msg;
this.name = com.Newgrounds.NewgroundsAPIError.error_names[error];
this.alias = com.Newgrounds.NewgroundsAPIError.aliases[error];
};
com.Newgrounds.NewgroundsAPIError = v1;
var v2 = v1.prototype;
v1.init_codes = function () {
var v2 = new Object();
var v1 = 0;
while (v1 < com.Newgrounds.NewgroundsAPIError.aliases.length) {
v2[com.Newgrounds.NewgroundsAPIError.aliases[v1]] = v1;
++v1;
}
return v2;
};
v1.init_names = function () {
var v5 = new Array();
var v3 = 0;
while (v3 < com.Newgrounds.NewgroundsAPIError.aliases.length) {
var v2 = (com.Newgrounds.NewgroundsAPIError.aliases[v3].toLowerCase()).split('_');
var v1 = 0;
while (v1 < v2.length) {
v2[v1] = (v2[v1].substr(0, 1)).toUpperCase() + v2[v1].substr(1, v2[v1].length);
for (var v4 in com.Newgrounds.NewgroundsAPIError.always_caps) {
if (v2[v1].toUpperCase() == com.Newgrounds.NewgroundsAPIError.always_caps[v4]) {
v2[v1] = v2[v1].toUpperCase();
}
}
++v1;
}
v5[v3] = v2.join(' ');
++v3;
}
return v5;
};
v2.isError = function () {
return true;
};
v1.aliases = new Array('UNKNOWN_ERROR', 'INVALID_API_ID', 'MISSING_PARAM', 'INVALID_STAT_ID', 'INVALID_COMMAND_ID', 'FLASH_ADS_NOT_APPROVED', 'PERMISSION_DENIED', 'IDENTIFICATION_REQUIRED', 'INVALID_EMAIL_ADDRESS', 'BANNED_USER', 'SESSION_EXPIRED', 'INVALID_SCORE', 'INVALID_MEDAL', 'INVALID_FOLDER', 'FILE_NOT_FOUND', 'SITE_ID_REQUIRED', 'UPLOAD_IN_PROGRESS', 'USER_CANCELLED', 'CONFIRM_REQUEST', 'CONNECTION_FAILED');
v1.always_caps = new Array('API', 'URL', 'ID');
v1.error_codes = com.Newgrounds.NewgroundsAPIError.init_codes();
v1.error_names = com.Newgrounds.NewgroundsAPIError.init_names();
v2.code = 0;
ASSetPropFlags(com.Newgrounds.NewgroundsAPIError.prototype, null, 1);
}
#endinitclip
}
movieClip 974 __Packages.com.Newgrounds.NewgroundsAPI {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.NewgroundsAPI) {
var v1 = function () {};
com.Newgrounds.NewgroundsAPI = v1;
var v2 = v1.prototype;
v1.setMovieVersion = function (v) {
if (v) {
com.Newgrounds.NewgroundsAPI.version = String(v);
}
};
v1.setUserEmail = function (e) {
com.Newgrounds.NewgroundsAPI.user_email = e;
};
v1.getOfficialVersionURL = function () {
var v1 = com.Newgrounds.NewgroundsAPI.GATEWAY_URL + '?tracker_id=' + com.Newgrounds.NewgroundsAPI.movie_id + '&command_id=' + com.Newgrounds.NewgroundsAPI.getCommandID('loadOfficalVersion') + '&seed=' + Math.random();
if (com.Newgrounds.NewgroundsAPI.debug) {
v1 += '&debug=1';
}
return v1;
};
v1.hasUserSession = function () {
if (com.Newgrounds.NewgroundsAPI.session_id && com.Newgrounds.NewgroundsAPI.publisher_id) {
return true;
return false;
}
if (_root.NewgroundsAPI_PublisherID && _root.NewgroundsAPI_SessionID) {
return true;
}
return false;
};
v1.isNewgrounds = function () {
return com.Newgrounds.NewgroundsAPI.publisher_id == 1 || _root.NewgroundsAPI_PublisherID == 1 || ((com.Newgrounds.NewgroundsAPI.getHost()).toLowerCase()).indexOf('ungrounded.net') > -1;
};
v1.hasPublisher = function () {
return com.Newgrounds.NewgroundsAPI.publisher_id || _root.NewgroundsAPI_PublisherID;
};
v1.hasUserEmail = function () {
if (com.Newgrounds.NewgroundsAPI.user_email) {
return true;
}
return false;
};
v1.connectionTimeOut = function () {
clearInterval(com.Newgrounds.NewgroundsAPI.timeout);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.MOVIE_CONNECTED, false, new com.Newgrounds.NewgroundsAPIError('CONNECTION_FAILED', 'Connection to NewgroundsAPI gateway timed out.'));
};
v1.connectMovie = function (m_id, encrypt_key, debug_mode) {
if (com.Newgrounds.NewgroundsAPI.connected) {
return undefined;
}
var v2 = function () {
com.Newgrounds.NewgroundsAPI.connectionTimeOut();
};
com.Newgrounds.NewgroundsAPI.timeout = setInterval(v2, 8000, null);
if (!m_id) {
com.Newgrounds.NewgroundsAPI.fatalError('NewgroundsAPI.connectMovie() - missing required movie_id parameter', 'connectMovie');
}
com.Newgrounds.NewgroundsAPI.movie_id = String(m_id);
com.Newgrounds.NewgroundsAPI.tracker_id = Number(com.Newgrounds.NewgroundsAPI.movie_id.substring(0, com.Newgrounds.NewgroundsAPI.movie_id.indexOf(':')));
com.Newgrounds.NewgroundsAPI.encryption_key = encrypt_key;
com.Newgrounds.NewgroundsAPI.debug = debug_mode;
if (_root.NewgroundsAPI_PublisherID) {
com.Newgrounds.NewgroundsAPI.publisher_id = _root.NewgroundsAPI_PublisherID;
if (_root.NewgroundsAPI_SessionID) {
com.Newgrounds.NewgroundsAPI.session_id = _root.NewgroundsAPI_SessionID;
}
} else {
com.Newgrounds.NewgroundsAPI.publisher_id = 1;
com.Newgrounds.NewgroundsAPI.session_id = null;
com.Newgrounds.NewgroundsAPI.user_id = 0;
com.Newgrounds.NewgroundsAPI.user_name = 'Guest';
}
if (_root.NewgroundsAPI_UserName) {
com.Newgrounds.NewgroundsAPI.user_name = _root.NewgroundsAPI_UserName;
}
if (_root.NewgroundsAPI_UserID) {
com.Newgrounds.NewgroundsAPI.user_id = _root.NewgroundsAPI_UserID;
}
com.Newgrounds.NewgroundsAPI.connected = true;
com.Newgrounds.NewgroundsAPI.sendCommand('connectMovie', {'host': com.Newgrounds.NewgroundsAPI.getHost(), 'movie_version': com.Newgrounds.NewgroundsAPI.version});
};
v1.getHost = function () {
if (!com.Newgrounds.NewgroundsAPI.host) {
var v1 = _url;
if (v1.indexOf('http://') > -1 or v1.indexOf('https://') > -1) {
com.Newgrounds.NewgroundsAPI.host = (v1.split('/'))[2].toLowerCase();
return com.Newgrounds.NewgroundsAPI.host;
}
com.Newgrounds.NewgroundsAPI.host = 'localhost';
}
return com.Newgrounds.NewgroundsAPI.host;
};
v1.loadNewgrounds = function () {
com.Newgrounds.NewgroundsAPI.sendCommand('loadNewgrounds', {'host': com.Newgrounds.NewgroundsAPI.getHost()}, true);
};
v1.loadMySite = function () {
com.Newgrounds.NewgroundsAPI.sendCommand('loadMySite', {'host': com.Newgrounds.NewgroundsAPI.getHost()});
};
v1.loadCustomLink = function (link) {
com.Newgrounds.NewgroundsAPI.sendCommand('loadCustomLink', {'host': com.Newgrounds.NewgroundsAPI.getHost(), 'link': link}, true);
};
v1.logCustomEvent = function (event) {
com.Newgrounds.NewgroundsAPI.sendCommand('logCustomEvent', {'host': com.Newgrounds.NewgroundsAPI.getHost(), 'event': event});
};
v1.postScore = function (score, value, get_best) {
if (!score or value == undefined) {
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('postScore')}, new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', 'missing required parameter(s)'));
return undefined;
}
com.Newgrounds.NewgroundsAPI.sendSecureCommand('postScore', {'score': score, 'value': value, 'get_best': get_best});
};
v1.getTodaysScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 't', params, 'getTodaysScores');
};
v1.getYesterdaysScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 'y', params, 'getYesterdaysScores');
};
v1.getThisWeeksScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 'w', params, 'getThisWeeksScores');
};
v1.getThisMonthsScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 'm', params, 'getThisMonthsScores');
};
v1.getThisYearsScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 'y', params, 'getThisYearsScores');
};
v1.getAlltimeScores = function (score, params) {
com.Newgrounds.NewgroundsAPI.getScores(score, 'a', params, 'getAlltimeScores');
};
v1.getScores = function (score, period, params, command_name) {
if (!score) {
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID(command_name)}, new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', 'missing required score name'));
return undefined;
}
if (!params) {
params = new Object();
}
if (!com.Newgrounds.NewgroundsAPI.hasUserSession()) {
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.SCORES_LOADED, false, new com.Newgrounds.NewgroundsAPIError('SITE_ID_REQUIRED', 'Host \'' + com.Newgrounds.NewgroundsAPI.getHost() + '\' does not have high scores enabled'));
return undefined;
}
params.publisher_id = com.Newgrounds.NewgroundsAPI.publisher_id;
params.period = period;
params.score = score;
if (params.user_id) {
var v3 = period;
} else {
var v3 = period + '-u';
}
if (com.Newgrounds.NewgroundsAPI.score_page_counts[v3] == undefined) {
params.request_page_count = true;
}
com.Newgrounds.NewgroundsAPI.sendCommand('getScores', params);
};
v1.unlockMedal = function (medal, get_score) {
if (!medal) {
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('unlockMedal')}, new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', 'missing required medal name'));
return undefined;
}
var v1 = new Object();
v1.medal = medal;
if (get_score) {
v1.get_score = get_score;
}
com.Newgrounds.NewgroundsAPI.sendSecureCommand('unlockMedal', v1);
};
v1.loadMedals = function () {
if (com.Newgrounds.NewgroundsAPI.medals) {
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.MEDALS_LOADED, true, {'medals': com.Newgrounds.NewgroundsAPI.medals});
return undefined;
}
var v1 = new Object();
if (com.Newgrounds.NewgroundsAPI.hasUserSession()) {
v1.publisher_id = com.Newgrounds.NewgroundsAPI.publisher_id;
v1.user_id = com.Newgrounds.NewgroundsAPI.user_id;
}
com.Newgrounds.NewgroundsAPI.sendCommand('getMedals', v1);
};
v1.getMedals = function () {
return com.Newgrounds.NewgroundsAPI.medals;
};
v1.saveLocal = function (save_id, save_data, size_allocation) {
if (!com.Newgrounds.NewgroundsAPI.sharedObjects[save_id]) {
com.Newgrounds.NewgroundsAPI.sharedObjects[save_id] = SharedObject.getLocal('ng_ap_secure_' + com.Newgrounds.NewgroundsAPI.movie_id + '_' + save_id);
}
com.Newgrounds.NewgroundsAPI.sharedObjects[save_id].data[save_id] = com.Newgrounds.NewgroundsAPI.encodeData(save_data);
com.Newgrounds.NewgroundsAPI.sharedObjects[save_id].flush();
};
v1.loadLocal = function (save_id) {
if (!com.Newgrounds.NewgroundsAPI.sharedObjects[save_id]) {
com.Newgrounds.NewgroundsAPI.sharedObjects[save_id] = SharedObject.getLocal('ng_ap_secure_' + com.Newgrounds.NewgroundsAPI.movie_id + '_' + save_id);
}
com.Newgrounds.NewgroundsAPI.sharedObjects[save_id].flush();
if (com.Newgrounds.NewgroundsAPI.sharedObjects[save_id].data[save_id]) {
return com.Newgrounds.NewgroundsAPI.decodeData(com.Newgrounds.NewgroundsAPI.sharedObjects[save_id].data[save_id]);
} else {
return null;
}
};
v1.encodeData = function (data) {
return com.Newgrounds.NewgroundsAPI.compressHex(com.Newgrounds.RC4.encrypt(com.Newgrounds.JSON.encode(data), com.Newgrounds.NewgroundsAPI.encryption_key));
};
v1.decodeData = function (base) {
return com.Newgrounds.JSON.decode(com.Newgrounds.RC4.decrypt(com.Newgrounds.NewgroundsAPI.uncompressHex(base), com.Newgrounds.NewgroundsAPI.encryption_key));
};
v1.compressHex = function (hex_value) {
var v5 = hex_value.length % 6;
var v4 = '';
var v1 = 0;
while (v1 < hex_value.length) {
var v2 = Number('0x' + hex_value.substr(v1, 6));
v4 += com.Newgrounds.NewgroundsAPI.compressor.encode(v2, 4);
v1 += 6;
}
return v5 + v4;
};
v1.uncompressHex = function (base_value) {
var v8 = Number(base_value.charAt(0));
var v7 = '';
var v3;
var v2 = 1;
while (v2 < base_value.length) {
var v6 = base_value.substr(v2, 4);
var v5 = com.Newgrounds.NewgroundsAPI.compressor.decode(v6);
var v1 = com.Newgrounds.NewgroundsAPI.dec2hex(v5);
if (v2 + 4 < base_value.length) {
v3 = 6;
} else {
v3 = v8;
}
while (v1.length < v3) {
v1 = '0' + v1;
}
v7 += v1;
v2 += 4;
}
return v7;
};
v1.dec2hex = function (dec) {
var v4 = '0123456789ABCDEF';
var v3 = '';
while (dec > 0) {
var v2 = dec % 16;
v3 = v4.charAt(v2) + v3;
dec = (dec - v2) / 16;
}
return v3;
};
v1.saveFile = function (folder, filename, contents, thumbnail_source) {
if (!com.Newgrounds.NewgroundsAPI.save_file) {
com.Newgrounds.NewgroundsAPI.save_file = new com.Newgrounds.NewgroundsAPISaveFile(com.Newgrounds.NewgroundsAPI.movie_id, folder, filename);
com.Newgrounds.NewgroundsAPI.save_file.setContents(contents);
if (thumbnail_source) {
com.Newgrounds.NewgroundsAPI.save_file.setThumbnail(thumbnail_source);
}
com.Newgrounds.NewgroundsAPI.save_file.onError = function (msg) {
var v1 = new com.Newgrounds.NewgroundsAPIError('PERMISSION_DENIED', msg);
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('saveFile')}, v1);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.FILE_SAVED, false, v1);
};
com.Newgrounds.NewgroundsAPI.save_file.onCancel = function (msg) {
var v1 = new com.Newgrounds.NewgroundsAPIError('USER_CANCELLED', msg);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.FILE_SAVED, false, v1);
};
com.Newgrounds.NewgroundsAPI.save_file.submit();
} else {
var v1 = new com.Newgrounds.NewgroundsAPIError('UPLOAD_IN_PROGRESS', 'Please wait for the previous file to finish uploading');
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('saveFile')}, v1);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.FILE_SAVED, false, v1);
}
};
v1.checkFilePrivs = function (folder, filename) {
if (com.Newgrounds.NewgroundsAPI.user_id) {
var v1 = com.Newgrounds.NewgroundsAPI.user_id;
} else {
var v1 = 0;
}
var v2 = {'folder': folder, 'filename': filename, 'user_id': v1, 'publisher_id': com.Newgrounds.NewgroundsAPI.publisher_id};
com.Newgrounds.NewgroundsAPI.sendCommand('checkFilePrivs', v2);
};
v1.finishFileSave = function (folder, filename, description, share, file, thumbnail) {
var v2;
v2 = {'folder': folder, 'filename': filename, 'description': description, 'share': share};
var v1;
v1 = {'file': file, 'thumbnail': thumbnail};
com.Newgrounds.NewgroundsAPI.sendSecureCommand('saveFile', v2, null, v1);
};
v1.getFiles = function (folder, options) {
var v7 = {'name': 1, 'date': 2, 'score': 3};
var v2 = {'user_only': false, 'sort_on': 'date', 'page': 1, 'results_per_page': 20, 'sort_descending': true};
var v6 = new Array();
for (var v10 in v7) {
v6.push('\'' + v10 + '\'');
}
var v4 = new Array();
for (var v9 in v2) {
v4.push('\'' + v9 + '\'');
}
if (options.sort_descending && !v7[options.sort_descending]) {
var v3 = new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', '\'' + options.sort_descending + '\' is not a valid sort_on value. Valid values are: ' + v6.join(', '));
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('getFiles')}, v3);
delete options.sort_descending;
}
var v8;
if (options) {
for (v10 in options) {
if (v2[v10] == undefined) {
v3 = new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', '\'' + v10 + '\' is not a valid option. Valid options are: ' + v4.join(', '));
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('getFiles')}, v3);
delete options[v10];
} else {
if (typeof options[v10] != typeof v2[v10]) {
v3 = new com.Newgrounds.NewgroundsAPIError('MISSING_PARAM', 'option \'' + v10 + '\' should be the following type: ' + typeof v2[v10]);
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID('getFiles')}, v3);
delete options[v10];
}
}
}
v8 = options;
} else {
v8 = new Object();
}
if (com.Newgrounds.NewgroundsAPI.hasUserSession()) {
v8.publisher_id = com.Newgrounds.NewgroundsAPI.publisher_id;
v8.user_id = com.Newgrounds.NewgroundsAPI.user_id;
}
v8.folder = folder;
com.Newgrounds.NewgroundsAPI.sendCommand('getFiles', v8);
};
v1.getConfirmation = function (command_name, event, msg, target, confirm, cancel) {
var v1 = new com.Newgrounds.NewgroundsAPIError('CONFIRM_REQUEST', msg);
v1.confirm = function () {
target[confirm]();
};
v1.cancel = function () {
target[cancel]();
};
v1.command = com.Newgrounds.NewgroundsAPI.getCommandID(command_name);
com.Newgrounds.NewgroundsAPI.callListener(event, false, v1);
};
v1.doBlockHost = function (event) {
_root.stop();
com.Newgrounds.NewgroundsAPI.initTextFormats();
_root.createEmptyMovieClip('NGAPI_deny_host_overlay', _root.getNextHighestDepth());
_root.NGAPI_deny_host_overlay.lineStyle(20, 0, 100);
_root.NGAPI_deny_host_overlay.beginFill(6684672);
_root.NGAPI_deny_host_overlay.moveTo(0, 0);
_root.NGAPI_deny_host_overlay.lineTo(Stage.width, 0);
_root.NGAPI_deny_host_overlay.lineTo(Stage.width, Stage.height);
_root.NGAPI_deny_host_overlay.lineTo(0, Stage.height);
_root.NGAPI_deny_host_overlay.lineTo(0, 0);
_root.NGAPI_deny_host_overlay.endFill();
var v2 = 'This movie has not been approved for use on ' + com.Newgrounds.NewgroundsAPI.getHost() + '.';
v2 += '\r\rFor an aproved copy, please visit:\r';
var v4 = v2.length;
v2 += event.data.movie_url;
var v3 = v2.length;
_root.NGAPI_deny_host_overlay.createTextField('mousekill', 100, 0, 0, Stage.width, Stage.height);
_root.NGAPI_deny_host_overlay.createTextField('error', 101, (Stage.width - 400) / 2, Stage.height / 2 - 100, 400, 200);
_root.NGAPI_deny_host_overlay.error.text = 'ERROR!';
_root.NGAPI_deny_host_overlay.error.setTextFormat(com.Newgrounds.NewgroundsAPI.error_format);
_root.NGAPI_deny_host_overlay.createTextField('message', 102, (Stage.width - 400) / 2, Stage.height / 2, 400, 200);
_root.NGAPI_deny_host_overlay.message.text = v2;
_root.NGAPI_deny_host_overlay.message.multiline = true;
_root.NGAPI_deny_host_overlay.message.wordWrap = true;
_root.NGAPI_deny_host_overlay.message.html = true;
_root.NGAPI_deny_host_overlay.message.setTextFormat(com.Newgrounds.NewgroundsAPI.normal_format);
com.Newgrounds.NewgroundsAPI.link_format.url = event.data.redirect_url;
_root.NGAPI_deny_host_overlay.message.setTextFormat(v4, v3, com.Newgrounds.NewgroundsAPI.link_format);
};
v1.onNewVersionAvailable = function (event) {
_root.stop();
com.Newgrounds.NewgroundsAPI.initTextFormats();
var v2 = new Object();
v2.x = Stage.width / 2;
v2.y = Stage.height / 2;
_root.createEmptyMovieClip('NGAPI_new_version_overlay', _root.getNextHighestDepth());
_root.NGAPI_new_version_overlay.lineStyle(1, 0, 100);
_root.NGAPI_new_version_overlay.beginFill(0, 70);
_root.NGAPI_new_version_overlay.moveTo(-10, -10);
_root.NGAPI_new_version_overlay.lineTo(-10, 1000);
_root.NGAPI_new_version_overlay.lineTo(1000, 1000);
_root.NGAPI_new_version_overlay.lineTo(1000, -10);
_root.NGAPI_new_version_overlay.lineTo(-10, -10);
_root.NGAPI_new_version_overlay.endFill();
_root.NGAPI_new_version_overlay.lineStyle(10, 0, 100);
_root.NGAPI_new_version_overlay.beginFill(51);
_root.NGAPI_new_version_overlay.moveTo(v2.x - 240, v2.y - 120);
_root.NGAPI_new_version_overlay.lineTo(v2.x + 240, v2.y - 120);
_root.NGAPI_new_version_overlay.lineTo(v2.x + 240, v2.y + 80);
_root.NGAPI_new_version_overlay.lineTo(v2.x - 240, v2.y + 80);
_root.NGAPI_new_version_overlay.lineTo(v2.x - 240, v2.y - 120);
_root.NGAPI_new_version_overlay.endFill();
_root.NGAPI_new_version_overlay.createEmptyMovieClip('exit', 1000);
_root.NGAPI_new_version_overlay.exit.lineStyle(2, 39423, 100);
_root.NGAPI_new_version_overlay.exit.beginFill(0, 50);
_root.NGAPI_new_version_overlay.exit.moveTo(v2.x + 210, v2.y - 110);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 230, v2.y - 110);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 230, v2.y - 90);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 210, v2.y - 90);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 210, v2.y - 110);
_root.NGAPI_new_version_overlay.exit.endFill();
_root.NGAPI_new_version_overlay.exit.moveTo(v2.x + 214, v2.y - 106);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 226, v2.y - 94);
_root.NGAPI_new_version_overlay.exit.moveTo(v2.x + 226, v2.y - 106);
_root.NGAPI_new_version_overlay.exit.lineTo(v2.x + 214, v2.y - 94);
_root.NGAPI_new_version_overlay.exit.onMouseUp = function () {
if (_root.NGAPI_new_version_overlay.exit.hitTest(_root._xmouse, _root._ymouse)) {
_root.NGAPI_new_version_overlay.removeMovieClip();
}
};
var v3 = 'Version ' + event.data.movie_version + ' is now available at:' + '\n';
var v6 = v3.length;
v3 += event.data.movie_url;
var v4 = v3.length;
_root.NGAPI_new_version_overlay.createTextField('mouseblocker', 99, -10, -10, 1000, 1000);
_root.NGAPI_new_version_overlay.createTextField('newversion', 100, v2.x - 210, v2.y - 90, 400, 80);
_root.NGAPI_new_version_overlay.newversion.text = 'New Version Available!';
_root.NGAPI_new_version_overlay.newversion.setTextFormat(com.Newgrounds.NewgroundsAPI.header_format);
_root.NGAPI_new_version_overlay.createTextField('message', 101, (Stage.width - 400) / 2, Stage.height / 2, 400, 40);
_root.NGAPI_new_version_overlay.message.text = v3;
_root.NGAPI_new_version_overlay.message.multiline = true;
_root.NGAPI_new_version_overlay.message.wordWrap = true;
_root.NGAPI_new_version_overlay.message.html = true;
_root.NGAPI_new_version_overlay.message.setTextFormat(com.Newgrounds.NewgroundsAPI.normal_format);
com.Newgrounds.NewgroundsAPI.link_format.url = event.data.redirect_url;
_root.NGAPI_new_version_overlay.message.setTextFormat(v6, v4, com.Newgrounds.NewgroundsAPI.link_format);
};
v1.initTextFormats = function () {
if (!com.Newgrounds.NewgroundsAPI.error_format) {
com.Newgrounds.NewgroundsAPI.error_format = new TextFormat();
com.Newgrounds.NewgroundsAPI.error_format.font = 'Arial Black';
com.Newgrounds.NewgroundsAPI.error_format.size = 48;
com.Newgrounds.NewgroundsAPI.error_format.color = 16711680;
}
if (!com.Newgrounds.NewgroundsAPI.header_format) {
com.Newgrounds.NewgroundsAPI.header_format = new TextFormat();
com.Newgrounds.NewgroundsAPI.header_format.font = 'Arial Black';
com.Newgrounds.NewgroundsAPI.header_format.size = 24;
com.Newgrounds.NewgroundsAPI.header_format.color = 16777215;
}
if (!com.Newgrounds.NewgroundsAPI.normal_format) {
com.Newgrounds.NewgroundsAPI.normal_format = new TextFormat();
com.Newgrounds.NewgroundsAPI.normal_format.font = 'Arial';
com.Newgrounds.NewgroundsAPI.normal_format.bold = true;
com.Newgrounds.NewgroundsAPI.normal_format.size = 12;
com.Newgrounds.NewgroundsAPI.normal_format.color = 16777215;
}
if (!com.Newgrounds.NewgroundsAPI.link_format) {
com.Newgrounds.NewgroundsAPI.link_format = new TextFormat();
com.Newgrounds.NewgroundsAPI.link_format.color = 16776960;
com.Newgrounds.NewgroundsAPI.link_format.underline = true;
}
};
v1.doEvent = function (e) {
switch (com.Newgrounds.NewgroundsAPI.getCommandName(e.command_id)) {
case 'connectMovie':
clearInterval(com.Newgrounds.NewgroundsAPI.timeout);
com.Newgrounds.NewgroundsAPI.sendMessage('You have successfully connected to the Newgrounds API Gateway');
com.Newgrounds.NewgroundsAPI.sendMessage('Movie identified as "' + e.movie_name + '"');
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.MOVIE_CONNECTED, e.success, {'movie_name': e.movie_name});
var v4 = false;
if (e.ad_status === -1) {
var v6 = 'This movie was not approved to run Flash Ads.';
com.Newgrounds.NewgroundsAPI.sendWarning(v6);
com.Newgrounds.NewgroundsAPI.sendWarning('visit ' + com.Newgrounds.NewgroundsAPI.AD_TERMS_URL + ' to view our approval guidelines');
if (!e.ad_url) {
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.ADS_APPROVED, false, new com.Newgrounds.NewgroundsAPIError('FLASH_ADS_NOT_APPROVED', v6));
} else {
v4 = true;
}
} else {
if (e.ad_status === 0) {
var v6 = 'Flash Ads are currently awaiting approval.';
com.Newgrounds.NewgroundsAPI.sendNotice(v6);
if (!e.ad_url) {
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.ADS_APPROVED, false, new com.Newgrounds.NewgroundsAPIError('FLASH_ADS_NOT_APPROVED', v6));
} else {
v4 = true;
}
}
}
if (e.ad_url) {
com.Newgrounds.NewgroundsAPI.ad_url = unescape(e.ad_url);
if (!v4) {
com.Newgrounds.NewgroundsAPI.sendMessage('This movie has been approved to run Flash Ads!');
}
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.ADS_APPROVED, true);
}
if (e.deny_host) {
v6 = com.Newgrounds.NewgroundsAPI.getHost() + ' does not have permission to run this movie!';
com.Newgrounds.NewgroundsAPI.sendWarning(v6);
com.Newgrounds.NewgroundsAPI.sendWarning('\tUpdate your API configuration to unblock ' + com.Newgrounds.NewgroundsAPI.getHost());
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.HOST_BLOCKED, true, {'movie_url': unescape(e.movie_url), 'redirect_url': com.Newgrounds.NewgroundsAPI.getOfficialVersionURL()});
}
if (e.movie_version) {
com.Newgrounds.NewgroundsAPI.sendWarning('According to your API Configuration, this version is out of date.');
if (com.Newgrounds.NewgroundsAPI.version) {
com.Newgrounds.NewgroundsAPI.sendWarning('\tThe this movie is version ' + com.Newgrounds.NewgroundsAPI.version);
}
com.Newgrounds.NewgroundsAPI.sendWarning('\tThe most current version is ' + e.movie_version);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.NEW_VERSION_AVAILABLE, true, {'movie_version': e.movie_version, 'movie_url': unescape(e.movie_url), 'redirect_url': com.Newgrounds.NewgroundsAPI.getOfficialVersionURL()});
}
if (e.request_portal_url) {
com.Newgrounds.NewgroundsAPI.sendCommand('setPortalID', {'portal_url': _url});
}
break;
case 'logCustomEvent':
if (e.success) {
com.Newgrounds.NewgroundsAPI.sendMessage('Event \'' + e.event + '\' was logged.');
}
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.EVENT_LOGGED, e.success, {'event': e.event});
break;
case 'postScore':
var v7;
if (e.success) {
var v3 = 'User';
if (com.Newgrounds.NewgroundsAPI.user_email) {
v3 = com.Newgrounds.NewgroundsAPI.user_email;
} else {
if (com.Newgrounds.NewgroundsAPI.user_name) {
v3 = com.Newgrounds.NewgroundsAPI.user_name;
}
}
com.Newgrounds.NewgroundsAPI.sendMessage(v3 + ' posted ' + e.value + ' to \'' + e.score + '\'');
v7 = {'score': e.score, 'value': e.value, 'username': v3};
}
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.SCORE_POSTED, e.success, v7);
break;
case 'getScores':
var v7 = new Object();
if (e.user_id) {
var v5 = e.period;
} else {
var v5 = e.period + '-u';
}
if (e.total_pages) {
com.Newgrounds.NewgroundsAPI.score_page_counts[v5] = e.total_pages;
}
v7.user_id = e.user_id;
v7.current_page = e.current_page;
v7.total_pages = com.Newgrounds.NewgroundsAPI.score_page_counts[v5];
v7.scores = e.scores;
v7.period = com.Newgrounds.NewgroundsAPI.getPeriodName(e.period);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.SCORES_LOADED, e.success, v7);
break;
case 'unlockMedal':
if (com.Newgrounds.NewgroundsAPI.medals) {
var v2 = 0;
while (v2 < com.Newgrounds.NewgroundsAPI.medals.length) {
if (com.Newgrounds.NewgroundsAPI.medals[v2].medal_name === e.medal_name) {
com.Newgrounds.NewgroundsAPI.medals[v2].medal_unlocked = true;
break;
}
++v2;
}
}
var v7 = {'medal_name': e.medal_name, 'medal_value': e.medal_value, 'medal_difficulty': e.medal_difficulty};
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.MEDAL_UNLOCKED, e.success, v7);
break;
case 'getMedals':
com.Newgrounds.NewgroundsAPI.medals = e.medals;
var v7 = {'medals': e.medals};
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.MEDALS_LOADED, e.success, v7);
break;
break;
case 'getFiles':
case 'getSystemFiles':
break;
case 'saveFile':
com.Newgrounds.NewgroundsAPI.save_file = null;
var v7 = {'file_id': e.file_id, 'filename': e.filename, 'file_url': e.file_url, 'thumbnail': e.thumbnail, 'icon': e.icon};
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.FILE_SAVED, e.success, v7);
break;
case 'checkFilePrivs':
if (com.Newgrounds.NewgroundsAPI.save_file) {
com.Newgrounds.NewgroundsAPI.save_file.checkPrivs(e);
} else {
var v7 = {'filename': e.filename, 'folder': e.folder, 'can_read': e.can_read, 'can_write': e.can_write};
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.FILE_PRIVS_LOADED, e.success, v7);
}
}
};
v1.setDefaultListeners = function () {
var v1 = new Array();
v1[com.Newgrounds.NewgroundsAPI.events.HOST_BLOCKED] = {'listener': com.Newgrounds.NewgroundsAPI.doBlockHost};
v1[com.Newgrounds.NewgroundsAPI.events.NEW_VERSION_AVAILABLE] = {'listener': com.Newgrounds.NewgroundsAPI.onNewVersionAvailable};
return v1;
};
v1.addEventListener = function (event, listener, params) {
com.Newgrounds.NewgroundsAPI.listeners[event] = {'listener': listener, 'params': params};
};
v1.removeEventListener = function (event) {
delete com.Newgrounds.NewgroundsAPI.listeners[event];
};
v1.getEventName = function (event) {
for (var v2 in com.Newgrounds.NewgroundsAPI.events) {
if (com.Newgrounds.NewgroundsAPI.events[v2] == event) {
return v2;
}
}
return undefined;
};
v1.callListener = function (event, success, data, target) {
com.Newgrounds.NewgroundsAPI.echo('Fired Event: ' + com.Newgrounds.NewgroundsAPI.getEventName(event));
if (com.Newgrounds.NewgroundsAPI.listeners[event]) {
if (data.isError()) {
com.Newgrounds.NewgroundsAPI.listeners[event].listener({'event': event, 'success': success, 'error': data, 'target': target}, com.Newgrounds.NewgroundsAPI.listeners[event].params);
} else {
com.Newgrounds.NewgroundsAPI.listeners[event].listener({'event': event, 'success': success, 'data': data, 'target': target}, com.Newgrounds.NewgroundsAPI.listeners[event].params);
}
}
};
v1.getCommandName = function (id) {
return id;
};
v1.getCommandID = function (name) {
return name;
};
v1.getPeriodAliases = function () {
var v1 = new Object();
for (var v2 in com.Newgrounds.NewgroundsAPI.period_aliases) {
v1[com.Newgrounds.NewgroundsAPI.period_aliases[v2].alias] = v2;
}
return v1;
};
v1.getPeriodName = function (p) {
for (var v2 in com.Newgrounds.NewgroundsAPI.period_aliases) {
if (v2 == p) {
return com.Newgrounds.NewgroundsAPI.period_aliases[v2].name;
}
}
return null;
};
v1.getPeriodAlias = function (p) {
for (var v2 in com.Newgrounds.NewgroundsAPI.period_aliases) {
if (v2 == p) {
return com.Newgrounds.NewgroundsAPI.period_aliases[v2].alias;
}
}
return null;
};
v1.sendError = function (c, e) {
trace('[NewgroundsAPI ERROR] :: ' + com.Newgrounds.NewgroundsAPI.getCommandName(c.command_id) + '() - ' + e.name + ':' + '\n' + '\t\t\t\t' + e.message);
};
v1.sendWarning = function (m, c) {
if (c) {
m += '\r[NewgroundsAPI WARNING] :: \tSee ' + com.Newgrounds.NewgroundsAPI.COMMANDS_WIKI_URL + c.toLowerCase() + ' for additional information.';
}
trace('[NewgroundsAPI WARNING] :: ' + m);
};
v1.sendNotice = function (m, c) {
if (c) {
m += '\r[NewgroundsAPI NOTICE] :: \tSee ' + com.Newgrounds.NewgroundsAPI.COMMANDS_WIKI_URL + c.toLowerCase() + ' for additional information.';
}
trace('[NewgroundsAPI NOTICE] :: ' + m);
};
v1.fatalError = function (m, c) {
if (c) {
m += '\r\tSee ' + com.Newgrounds.NewgroundsAPI.COMMANDS_WIKI_URL + c.toLowerCase() + ' for additional information.';
}
throw '***ERROR*** frame=' + _root._currentframe + ', class=NewgroundsAPI' + '\n' + '\n' + m;
};
v1.sendSecureCommand = function (command, secure_params, unsecure_params, files) {
if (!com.Newgrounds.NewgroundsAPI.debug && !com.Newgrounds.NewgroundsAPI.hasUserSession() && !com.Newgrounds.NewgroundsAPI.hasUserEmail()) {
com.Newgrounds.NewgroundsAPI.sendError({'command_id': com.Newgrounds.NewgroundsAPI.getCommandID(command)}, new com.Newgrounds.NewgroundsAPIError('IDENTIFICATION_REQUIRED', 'You must be logged in or provide an e-mail address ( using NewgroundsAPI.setUserEmail("name@domain.com"); ) to use ' + command + '().'));
return undefined;
}
if (!command) {
com.Newgrounds.NewgroundsAPI.fatalError('Missing command', 'sendSecureCommand');
}
if (!secure_params) {
com.Newgrounds.NewgroundsAPI.fatalError('Missing secure_params', 'sendSecureCommand');
}
if (!unsecure_params) {
unsecure_params = new Object();
}
var v2 = '';
var v1 = 0;
while (v1 < 16) {
v2 += com.Newgrounds.NewgroundsAPI.compression_radix.charAt(Math.floor(Math.random() * com.Newgrounds.NewgroundsAPI.compression_radix.length));
++v1;
}
if (com.Newgrounds.NewgroundsAPI.debug) {
secure_params.session_id = '';
} else {
secure_params.session_id = com.Newgrounds.NewgroundsAPI.session_id;
}
secure_params.as_version = 2;
secure_params.user_email = com.Newgrounds.NewgroundsAPI.user_email;
secure_params.publisher_id = com.Newgrounds.NewgroundsAPI.publisher_id;
secure_params.seed = v2;
secure_params.command_id = com.Newgrounds.NewgroundsAPI.getCommandID(command);
var v8 = com.Newgrounds.MD5.calculate(v2);
var v6 = com.Newgrounds.RC4.encrypt(com.Newgrounds.JSON.encode(secure_params), com.Newgrounds.NewgroundsAPI.encryption_key);
var v7 = v8 + v6;
unsecure_params.secure = com.Newgrounds.NewgroundsAPI.compressHex(v7);
com.Newgrounds.NewgroundsAPI.sendCommand('securePacket', unsecure_params, false, files);
};
v1.sendCommand = function (command, params, open_browser, files) {
if (!com.Newgrounds.NewgroundsAPI.connected and command != 'connectMovie') {
var v11 = 'NewgroundsAPI.' + command + '() - NewgroundsAPI.connectMovie() must be called before this command can be called' + '\n';
com.Newgrounds.NewgroundsAPI.fatalError(v11, 'connectMovie');
}
if (open_browser) {
var v1 = new Object();
} else {
var v1 = new LoadVars();
}
v1.command_id = com.Newgrounds.NewgroundsAPI.getCommandID(command);
v1.tracker_id = com.Newgrounds.NewgroundsAPI.movie_id;
if (com.Newgrounds.NewgroundsAPI.debug) {
v1.debug = com.Newgrounds.NewgroundsAPI.debug;
}
if (params) {
for (var v8 in params) {
v1[v8] = params[v8];
}
}
if (files) {
for (v8 in files) {
v1[v8] = files[v8];
}
}
com.Newgrounds.NewgroundsAPI.echo('OUTPUT: \r' + com.Newgrounds.JSON.encode(v1) + '\n');
if (open_browser) {
var v5 = com.Newgrounds.NewgroundsAPI.GATEWAY_URL + '?seed=' + Math.random();
for (v8 in v1) {
v5 += '&' + escape(v8) + '=' + escape(v1[v8]);
}
getURL(v5, '_blank');
v1.removeMovieClip();
} else {
var v9 = new LoadVars();
v9.onData = function (data) {
com.Newgrounds.NewgroundsAPI.echo('INPUT: \r' + data + '\n');
if (data) {
var v1 = com.Newgrounds.JSON.decode(data);
} else {
var v1 = {'success': false};
}
if (!v1.success) {
var v3 = new com.Newgrounds.NewgroundsAPIError(v1.error_code, v1.error_msg);
com.Newgrounds.NewgroundsAPI.sendError(v1, v3);
} else {
com.Newgrounds.NewgroundsAPI.doEvent(v1);
}
};
var v4 = new Array();
for (var v7 in v1) {
v4.push(v7 + '=' + escape(v1[v7]));
}
com.Newgrounds.NewgroundsAPI.echo('POST ' + com.Newgrounds.NewgroundsAPI.GATEWAY_URL + '?' + v4.join('&'));
v1.sendAndLoad(com.Newgrounds.NewgroundsAPI.GATEWAY_URL + '?seed=' + Math.random(), v9, 'POST');
}
};
v1.renderAd = function (target) {
if (com.Newgrounds.NewgroundsAPI.ad_swf_url) {
target.background = target.createEmptyMovieClip('background', 100);
target.background.beginFill(0);
target.background.moveTo(0, 0);
target.background.lineTo(300, 0);
target.background.lineTo(300, 250);
target.background.lineTo(0, 250);
target.background.lineTo(0, 0);
target.background.endFill();
target.mask = target.createEmptyMovieClip('mask', 101);
target.mask.beginFill(0);
target.mask.moveTo(0, 0);
target.mask.lineTo(300, 0);
target.mask.lineTo(300, 250);
target.mask.lineTo(0, 250);
target.mask.lineTo(0, 0);
target.mask.endFill();
target.clip = target.createEmptyMovieClip('clip', 102);
target.clip.ad = target.clip.createEmptyMovieClip('ad', 100);
target.clip.setMask(target.mask);
loadMovie(com.Newgrounds.NewgroundsAPI.ad_swf_url, target.clip.ad);
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.AD_ATTACHED, true, null, target);
} else {
com.Newgrounds.NewgroundsAPI.callListener(com.Newgrounds.NewgroundsAPI.events.AD_ATTACHED, false, new com.Newgrounds.NewgroundsAPIError('FLASH_ADS_NOT_APPROVED', 'Unable to render ad'));
}
};
v1.attachFlashAd = function (target) {
System.security.allowDomain('http://server.cpmstar.com');
System.security.allowDomain('http://www.cpmstar.com');
System.security.allowDomain('https://server.cpmstar.com');
System.security.allowDomain('https://www.cpmstar.com');
System.security.allowInsecureDomain('http://server.cpmstar.com');
System.security.allowInsecureDomain('http://www.cpmstar.com');
System.security.allowInsecureDomain('https://server.cpmstar.com');
System.security.allowInsecureDomain('https://www.cpmstar.com');
com.Newgrounds.NewgroundsAPI.sendMessage('You may get a security sandbox violation from this ad. This is nothing to worry about!');
if (com.Newgrounds.NewgroundsAPI.resetAdTimer()) {
if (com.Newgrounds.NewgroundsAPI.ad_url) {
var v1 = new LoadVars();
v1.onData = function (data) {
if (data) {
com.Newgrounds.NewgroundsAPI.ad_swf_url = data;
} else {
com.Newgrounds.NewgroundsAPI.ad_swf_url = null;
}
com.Newgrounds.NewgroundsAPI.renderAd(target);
};
if (com.Newgrounds.NewgroundsAPI.ad_url.indexOf('?') > -1) {
v1.load(com.Newgrounds.NewgroundsAPI.ad_url + '&random=' + Math.random());
} else {
v1.load(com.Newgrounds.NewgroundsAPI.ad_url + '?random=' + Math.random());
}
}
} else {
com.Newgrounds.NewgroundsAPI.renderAd(target);
}
};
v1.resetAdTimer = function () {
if (!com.Newgrounds.NewgroundsAPI.ad_url) {
return false;
}
var v1 = new Date();
if (v1.getTime() >= com.Newgrounds.NewgroundsAPI.ad_reset) {
com.Newgrounds.NewgroundsAPI.ad_reset = v1.getTime() + 300000;
return true;
}
return false;
};
v1.sendMessage = function (m, r) {
var v1 = '[NewgroundsAPI] :: ' + m;
if (r) {
return v1;
} else {
trace(v1);
}
};
v1.echo = function (m) {
if (com.Newgrounds.NewgroundsAPI.do_echo) {
trace(m);
}
};
v1.do_echo = false;
v1.GATEWAY_URL = 'http://www.ngads.com/gateway_v2.php';
v1.AD_TERMS_URL = 'http://www.newgrounds.com/wiki/flashads/terms/';
v1.COMMANDS_WIKI_URL = 'http://www.newgrounds.com/wiki/flashapi/commands/';
v1.ad_reset = 0;
v1.save_file = null;
v1.medals = null;
v1.score_page_counts = new Object();
v1.compression_radix = '/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X';
v1.compressor = new com.Newgrounds.BaseN(com.Newgrounds.NewgroundsAPI.compression_radix);
v1.errors = com.Newgrounds.NewgroundsAPIError.init_codes();
v1.sharedObjects = new Object();
v1.events = {'MOVIE_CONNECTED': 1, 'ADS_APPROVED': 2, 'AD_ATTACHED': 3, 'HOST_BLOCKED': 4, 'NEW_VERSION_AVAILABLE': 5, 'EVENT_LOGGED': 6, 'SCORE_POSTED': 7, 'SCORES_LOADED': 8, 'MEDAL_UNLOCKED': 9, 'MEDALS_LOADED': 10, 'FILE_PRIVS_LOADED': 11, 'FILE_SAVED': 12};
v1.listeners = com.Newgrounds.NewgroundsAPI.setDefaultListeners();
v1.periods = com.Newgrounds.NewgroundsAPI.getPeriodAliases();
v1.period_aliases = {'t': {'name': 'Today', 'alias': 'TODAY'}, 'p': {'name': 'Yesterday', 'alias': 'YESTERDAY'}, 'w': {'name': 'This Week', 'alias': 'THIS_WEEK'}, 'm': {'name': 'This Month', 'alias': 'THIS_MONTH'}, 'y': {'name': 'This Year', 'alias': 'THIS_YEAR'}, 'a': {'name': 'All-Time', 'alias': 'ALL_TIME'}};
ASSetPropFlags(com.Newgrounds.NewgroundsAPI.prototype, null, 1);
}
#endinitclip
}
movieClip 975 __Packages.com.Newgrounds.NewgroundsAPISaveFile {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.NewgroundsAPISaveFile) {
var v1 = function (tracker_id, folder, filename) {
this.tracker_id = tracker_id;
this.folder = folder;
this.filename = filename;
this.contents = null;
this.thumbnail = null;
this.icon_url = null;
this.thumbnail_url = null;
};
com.Newgrounds.NewgroundsAPISaveFile = v1;
var v2 = v1.prototype;
v2.setDescription = function (description) {
this.description = description;
};
v2.setShared = function (share) {
this.share = share;
};
v2.setContents = function (contents) {
this.contents = contents;
};
v2.setThumbnail = function (thumb) {
if (thumb) {
this.thumbnail = thumb;
} else {
this.thumbnail = null;
}
};
v2.onError = function (msg) {
trace('[NewgroundsAPISaveFile ERROR] :: ' + msg);
};
v2.onCancel = function (msg) {
trace('[NewgroundsAPISaveFile] :: ' + msg);
};
v2.submit = function () {
this.scan = null;
com.Newgrounds.NewgroundsAPI.checkFilePrivs(this.folder, this.filename);
};
v2.checkPrivs = function (p) {
if (p.success) {
if (p.can_write) {
this.can_write = p.can_write;
if (p.exists) {
com.Newgrounds.NewgroundsAPI.getConfirmation('saveFile', com.Newgrounds.NewgroundsAPI.events.FILE_SAVED, 'File \'' + this.filename + '\' exists, overwrite?', this, 'startFile', 'cancelFile');
} else {
this.startFile();
}
} else {
this.onError('This filename is owned by another user.');
}
} else {
this.onError('There was a problem looking up your file\'s details');
}
};
v2.cancelFile = function () {
this.onCancel('Overwrite was cancelled');
};
v2.startFile = function () {
if (this.can_write) {
if (this.thumbnail) {
this.scanner = new com.Newgrounds.ImageScanner(this.thumbnail);
this.scanner.setCallback(this, 'writeFile');
this.scanner.startScan(100, 100, true);
} else {
this.writeFile();
}
} else {
this.onError('You cannot write to filename "' + this.filename + '"');
}
};
v2.writeFile = function (img) {
trace('FINISHED');
com.Newgrounds.NewgroundsAPI.finishFileSave(this.folder, this.filename, this.description, this.share, com.Newgrounds.JSON.encode(this.contents), img);
};
v2.can_write = false;
v2.share = true;
ASSetPropFlags(com.Newgrounds.NewgroundsAPISaveFile.prototype, null, 1);
}
#endinitclip
}
movieClip 976 __Packages.com.Newgrounds.ImageScanner {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.ImageScanner) {
var v1 = function (the_source) {
if (the_source) {
this.image_source = the_source;
} else {
this.image_source = _root;
}
this.reset();
if (typeof this.image_source == 'movieclip') {
if (this.image_source == _root) {
this.source_width = Stage.width;
this.source_height = Stage.height;
} else {
this.source_width = Math.floor(this.image_source._width);
this.source_height = Math.floor(this.image_source._height);
}
this.sourceBitmap = new flash.display.BitmapData(this.source_width, this.source_height, false, 4294967295.0);
this.sourceBitmap.draw(_root);
} else {
if (this.image_source.width) {
this.source_width = this.image_source.width;
this.source_height = this.image_source.height;
this.sourceBitmap = this.image_source;
} else {
this.error('You can only use BitMaptData and MovieClip objects to create images');
}
}
};
com.Newgrounds.ImageScanner = v1;
var v2 = v1.prototype;
v2.setCallback = function (target, funct) {
if (target && funct) {
this.callback_target = target;
this.callback_function = funct;
}
};
v2.reset = function () {
this.callback_target = null;
this.callback_function = null;
this.debug.bad_pixels = 0;
this.hash = '0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ<>?:;-_=+()!&';
var v3 = Math.pow(this.hash.length, 2);
trace('MAX COLORS: ' + v3);
var v2 = Math.floor(Math.pow(v3, 0.3333333333333333)) - 1;
var v4 = Math.pow(v2, 3);
this.cube = v2;
this.basen = new com.Newgrounds.BaseN(this.hash);
this.xpos = 0;
this.ypos = 0;
this.pixels = 0;
this.busy = false;
};
v2.startScan = function (w, h, s) {
if (w) {
this.image_width = w;
}
if (h) {
this.image_height = h;
}
if (s != undefined) {
this.crop = s;
}
var v7 = _root.getNextHighestDepth();
var v6 = _root.createEmptyMovieClip('API_image_container_' + v7, v7);
var v5 = v6.createEmptyMovieClip('canvas', 100);
v5.attachBitmap(this.sourceBitmap, 100);
if (this.crop) {
if (this.image_width / this.source_width > this.image_height / this.source_height) {
this.canvas_width = this.image_width;
this.canvas_height = Math.ceil(this.source_height * (this.image_width / this.source_width));
} else {
this.canvas_height = this.image_height;
this.canvas_width = Math.ceil(this.source_width * (this.image_height / this.source_height));
}
} else {
this.canvas_width = this.image_width;
this.canvas_height = this.image_height;
}
v5._x = Math.round((this.image_width - this.canvas_width) / 2);
v5._width = this.canvas_width;
v5._height = this.canvas_height;
this.resizedBitmap = new flash.display.BitmapData(this.image_width, this.image_height, false, 4294967295.0);
this.resizedBitmap.draw(v6);
v6.removeMovieClip();
this.copyBitmap = new flash.display.BitmapData(this.image_width, this.image_height, false, 4294967295.0);
var v3 = '' + this.image_width;
while (v3.length < 3) {
v3 = '0' + v3;
}
var v4 = '' + this.image_height;
while (v4.length < 3) {
v4 = '0' + v4;
}
this.output = v3 + v4;
this.draw_interval = setInterval(this, 'drawChunk', 10);
this.busy = false;
return this.resizedBitmap;
};
v2.getBitmapData = function () {
return this.copyBitmap;
};
v2.getBytesTotal = function () {
return this.image_width * this.image_height * 2;
};
v2.getBytesScanned = function () {
return this.pixels * 2;
};
v2.drawChunk = function () {
if (!this.busy) {
this.busy = true;
var v2 = 0;
while (v2 < 250) {
if (!this.nextPixel()) {
clearInterval(this.draw_interval);
this.callback_interval = setInterval(this, 'doCallback', 25);
this.busy = true;
break;
}
++v2;
}
this.busy = false;
}
};
v2.doCallback = function () {
this.busy = false;
clearInterval(this.callback_interval);
if (this.callback_target and this.callback_function) {
this.callback_target[this.callback_function](this.output);
} else {
this.onScanComplete(this.output);
}
};
v2.onScanComplete = function (packet) {
this.sendMessage('packet size: ' + this.output.length + ' bytes', 'onScanComplete');
};
v2.nextPixel = function () {
var v15 = this.xpos;
var v14 = this.ypos;
var v7 = this.resizedBitmap.getPixel(v15, v14);
var v17 = v7 >> 16 & 255;
var v20 = v7 >> 8 & 255;
var v16 = v7 >> 0 & 255;
var v11 = Math.round(((v17 + 1) / 256) * this.cube);
var v10 = Math.round(((v20 + 1) / 256) * this.cube);
var v13 = Math.round(((v16 + 1) / 256) * this.cube);
var v12 = v11 * (this.cube + 1) * (this.cube + 1) + v10 * (this.cube + 1) + v13;
var v6 = this.basen.encode(v12, 2);
this.output += v6;
if (v6.length != 2) {
trace('bad pixel ' + v6);
}
var v5 = this.basen.decode(v6);
var v18 = v5;
var v8 = v5 % (this.cube + 1);
v5 = (v5 - v8) / (this.cube + 1);
var v9 = v5 % (this.cube + 1);
var v19 = (v5 - v9) / (this.cube + 1);
if (v13 != v8 and v10 != v9 and v11 != v10) {
++this.debug.bad_pixels;
trace('BAD PIXEL ' + this.debug.bad_pixels + ') ' + v12 + ' != ' + v18 + ' ' + v6);
trace(this.basen.debug.lastencode);
}
var v2 = (Math.round((v19 / this.cube) * 255)).toString(16);
var v4 = (Math.round((v9 / this.cube) * 255)).toString(16);
var v3 = (Math.round((v8 / this.cube) * 255)).toString(16);
while (v2.length < 2) {
v2 = '0' + v2;
}
while (v4.length < 2) {
v4 = '0' + v4;
}
while (v3.length < 2) {
v3 = '0' + v3;
}
this.copyBitmap.setPixel(v15, v14, Number('0x' + v2 + v4 + v3));
++this.pixels;
if (this.pixels >= this.image_width * this.image_height) {
return false;
}
++this.xpos;
if (this.xpos >= this.image_width) {
this.xpos = 0;
++this.ypos;
}
return true;
};
v2.error = function (e, f) {
this.sendMessage(e, f, 'ERROR');
};
v2.sendMessage = function (msg, func, type) {
var v1 = 'ImageScanner';
if (func) {
v1 += '.' + func + '()';
}
if (type) {
v1 = type + ' in ' + v1;
}
v1 += ' :: ' + msg;
trace(v1);
};
v2.image_width = 100;
v2.image_height = 100;
v2.crop = true;
v2.debug = new Object();
ASSetPropFlags(com.Newgrounds.ImageScanner.prototype, null, 1);
}
#endinitclip
}
movieClip 977 __Packages.com.Newgrounds.JSON {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.JSON) {
var v1 = function () {};
com.Newgrounds.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.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.JSON.encode(v4);
if (v1) {
v1 += ',';
}
v1 += com.Newgrounds.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.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();
};
ASSetPropFlags(com.Newgrounds.JSON.prototype, null, 1);
}
#endinitclip
}
movieClip 978 __Packages.com.Newgrounds.RC4 {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.RC4) {
var v1 = function () {};
com.Newgrounds.RC4 = v1;
var v2 = v1.prototype;
v1.encrypt = function (src, key) {
var v3 = com.Newgrounds.RC4.strToChars(src);
var v1 = com.Newgrounds.RC4.strToChars(key);
var v2 = com.Newgrounds.RC4.calculate(v3, v1);
return com.Newgrounds.RC4.charsToHex(v2);
};
v1.encryptbin = function (src, key) {
var v3 = com.Newgrounds.RC4.strToChars(src);
var v1 = com.Newgrounds.RC4.strToChars(key);
var v2 = com.Newgrounds.RC4.calculate(v3, v1);
return v2;
};
v1.decrypt = function (src, key) {
var v3 = com.Newgrounds.RC4.hexToChars(src);
var v1 = com.Newgrounds.RC4.strToChars(key);
var v2 = com.Newgrounds.RC4.calculate(v3, v1);
return com.Newgrounds.RC4.charsToStr(v2);
};
v1.initialize = function (pwd) {
var v2 = 0;
var v3;
var v4 = pwd.length;
var v1 = 0;
while (v1 <= 255) {
com.Newgrounds.RC4.mykey[v1] = pwd[v1 % v4];
com.Newgrounds.RC4.sbox[v1] = v1;
++v1;
}
v1 = 0;
while (v1 <= 255) {
v2 = (v2 + com.Newgrounds.RC4.sbox[v1] + com.Newgrounds.RC4.mykey[v1]) % 256;
v3 = com.Newgrounds.RC4.sbox[v1];
com.Newgrounds.RC4.sbox[v1] = com.Newgrounds.RC4.sbox[v2];
com.Newgrounds.RC4.sbox[v2] = v3;
++v1;
}
};
v1.calculate = function (plaintxt, psw) {
com.Newgrounds.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.RC4.sbox[v1]) % 256;
v5 = com.Newgrounds.RC4.sbox[v1];
com.Newgrounds.RC4.sbox[v1] = com.Newgrounds.RC4.sbox[v2];
com.Newgrounds.RC4.sbox[v2] = v5;
var v4 = (com.Newgrounds.RC4.sbox[v1] + com.Newgrounds.RC4.sbox[v2]) % 256;
v7 = com.Newgrounds.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.RC4.prototype, null, 1);
}
#endinitclip
}
movieClip 979 __Packages.com.Newgrounds.MD5 {
#initclip
if (!_global.com) {
_global.com = new Object();
}
if (!_global.com.Newgrounds) {
_global.com.Newgrounds = new Object();
}
if (!_global.com.Newgrounds.MD5) {
var v1 = function () {};
com.Newgrounds.MD5 = v1;
var v2 = v1.prototype;
v1.calculate = function (src) {
return com.Newgrounds.MD5.hex_md5(src);
};
v1.hex_md5 = function (src) {
return com.Newgrounds.MD5.binl2hex(com.Newgrounds.MD5.core_md5(com.Newgrounds.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.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 0], 7, -680876936);
v1 = com.Newgrounds.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 1], 12, -389564586);
v2 = com.Newgrounds.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 2], 17, 606105819);
v3 = com.Newgrounds.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 3], 22, -1044525330);
v4 = com.Newgrounds.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 4], 7, -176418897);
v1 = com.Newgrounds.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 5], 12, 1200080426);
v2 = com.Newgrounds.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 6], 17, -1473231341);
v3 = com.Newgrounds.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 7], 22, -45705983);
v4 = com.Newgrounds.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 8], 7, 1770035416);
v1 = com.Newgrounds.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 9], 12, -1958414417);
v2 = com.Newgrounds.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 10], 17, -42063);
v3 = com.Newgrounds.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 11], 22, -1990404162);
v4 = com.Newgrounds.MD5.md5_ff(v4, v3, v2, v1, x[v5 + 12], 7, 1804603682);
v1 = com.Newgrounds.MD5.md5_ff(v1, v4, v3, v2, x[v5 + 13], 12, -40341101);
v2 = com.Newgrounds.MD5.md5_ff(v2, v1, v4, v3, x[v5 + 14], 17, -1502002290);
v3 = com.Newgrounds.MD5.md5_ff(v3, v2, v1, v4, x[v5 + 15], 22, 1236535329);
v4 = com.Newgrounds.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 1], 5, -165796510);
v1 = com.Newgrounds.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 6], 9, -1069501632);
v2 = com.Newgrounds.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 11], 14, 643717713);
v3 = com.Newgrounds.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 0], 20, -373897302);
v4 = com.Newgrounds.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 5], 5, -701558691);
v1 = com.Newgrounds.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 10], 9, 38016083);
v2 = com.Newgrounds.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 15], 14, -660478335);
v3 = com.Newgrounds.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 4], 20, -405537848);
v4 = com.Newgrounds.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 9], 5, 568446438);
v1 = com.Newgrounds.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 14], 9, -1019803690);
v2 = com.Newgrounds.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 3], 14, -187363961);
v3 = com.Newgrounds.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 8], 20, 1163531501);
v4 = com.Newgrounds.MD5.md5_gg(v4, v3, v2, v1, x[v5 + 13], 5, -1444681467);
v1 = com.Newgrounds.MD5.md5_gg(v1, v4, v3, v2, x[v5 + 2], 9, -51403784);
v2 = com.Newgrounds.MD5.md5_gg(v2, v1, v4, v3, x[v5 + 7], 14, 1735328473);
v3 = com.Newgrounds.MD5.md5_gg(v3, v2, v1, v4, x[v5 + 12], 20, -1926607734);
v4 = com.Newgrounds.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 5], 4, -378558);
v1 = com.Newgrounds.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 8], 11, -2022574463);
v2 = com.Newgrounds.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 11], 16, 1839030562);
v3 = com.Newgrounds.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 14], 23, -35309556);
v4 = com.Newgrounds.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 1], 4, -1530992060);
v1 = com.Newgrounds.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 4], 11, 1272893353);
v2 = com.Newgrounds.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 7], 16, -155497632);
v3 = com.Newgrounds.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 10], 23, -1094730640);
v4 = com.Newgrounds.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 13], 4, 681279174);
v1 = com.Newgrounds.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 0], 11, -358537222);
v2 = com.Newgrounds.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 3], 16, -722521979);
v3 = com.Newgrounds.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 6], 23, 76029189);
v4 = com.Newgrounds.MD5.md5_hh(v4, v3, v2, v1, x[v5 + 9], 4, -640364487);
v1 = com.Newgrounds.MD5.md5_hh(v1, v4, v3, v2, x[v5 + 12], 11, -421815835);
v2 = com.Newgrounds.MD5.md5_hh(v2, v1, v4, v3, x[v5 + 15], 16, 530742520);
v3 = com.Newgrounds.MD5.md5_hh(v3, v2, v1, v4, x[v5 + 2], 23, -995338651);
v4 = com.Newgrounds.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 0], 6, -198630844);
v1 = com.Newgrounds.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 7], 10, 1126891415);
v2 = com.Newgrounds.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 14], 15, -1416354905);
v3 = com.Newgrounds.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 5], 21, -57434055);
v4 = com.Newgrounds.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 12], 6, 1700485571);
v1 = com.Newgrounds.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 3], 10, -1894986606);
v2 = com.Newgrounds.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 10], 15, -1051523);
v3 = com.Newgrounds.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 1], 21, -2054922799);
v4 = com.Newgrounds.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 8], 6, 1873313359);
v1 = com.Newgrounds.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 15], 10, -30611744);
v2 = com.Newgrounds.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 6], 15, -1560198380);
v3 = com.Newgrounds.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 13], 21, 1309151649);
v4 = com.Newgrounds.MD5.md5_ii(v4, v3, v2, v1, x[v5 + 4], 6, -145523070);
v1 = com.Newgrounds.MD5.md5_ii(v1, v4, v3, v2, x[v5 + 11], 10, -1120210379);
v2 = com.Newgrounds.MD5.md5_ii(v2, v1, v4, v3, x[v5 + 2], 15, 718787259);
v3 = com.Newgrounds.MD5.md5_ii(v3, v2, v1, v4, x[v5 + 9], 21, -343485551);
v4 = com.Newgrounds.MD5.safe_add(v4, v10);
v3 = com.Newgrounds.MD5.safe_add(v3, v9);
v2 = com.Newgrounds.MD5.safe_add(v2, v8);
v1 = com.Newgrounds.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.MD5.safe_add(com.Newgrounds.MD5.bit_rol(com.Newgrounds.MD5.safe_add(com.Newgrounds.MD5.safe_add(a, q), com.Newgrounds.MD5.safe_add(x, t)), s), b);
};
v1.md5_ff = function (a, b, c, d, x, s, t) {
return com.Newgrounds.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.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.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.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.MD5.prototype, null, 1);
}
#endinitclip
}
frame 2 {
if (_root.localization_portal == 'game_com_cn') {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_mainscreen_moregames', '_blank');
};
}
}
frame 2 {
stop();
if (_root.diff == undefined) {
_root.diff = 1;
}
so = SharedObject.getLocal('so');
if (so.data.l == undefined) {
_root.maxlev = 1;
_root.diff = 2;
} else {
_root.maxlev = so.data.l;
}
if (maxlev == 1) {
mainmenbg.nextFrame();
}
_root.musicoff = so.data.m;
so.flush();
}
movieClip 683 {
}
movieClip 689 {
frame 1 {
stop();
}
}
button 690 {
on (release) {
_root.golev = 0;
_root.story = true;
_root.gamemode = 0;
gotoAndStop('game');
}
}
button 691 {
on (release) {
_root.story = false;
gotoAndStop('mini');
}
}
button 692 {
on (release) {
if (_root.maxlev > 1) {
_root.story = true;
_root.gamemode = 0;
gotoAndStop('story');
}
}
}
button 694 {
on (release) {
getURL('http://www.barfquestion.com', _blank);
}
}
button 695 {
on (release) {
getURL('http://www.komix-games.com', _blank);
}
}
button 696 {
on (release) {
getURL('http://www.myspace.com/doctorsulek', _blank);
}
}
// unknown tag 88 length 73
button 701 {
on (release) {
_root.gotoAndStop('select');
}
}
movieClip 702 {
frame 1 {
if (_root.maxlev > 5) {
nextFrame();
} else {
stop();
}
}
}
button 704 {
on (release) {
_root.story = false;
_root.maxspawn = 1;
_root.lev1 = [12];
_root.lev2 = [];
_root.gamemode = 1;
_root.gotoAndStop('game');
}
}
movieClip 706 {
frame 1 {
if (_root.maxlev >= 2) {
nextFrame();
} else {
stop();
}
}
}
button 708 {
on (release) {
_root.story = false;
_root.maxspawn = 7;
_root.lev1 = [6];
_root.lev2 = [];
_root.gamemode = 2;
_root.gotoAndStop('game');
}
}
button 710 {
on (release) {
_root.story = false;
_root.maxspawn = 0;
_root.lev1 = [];
_root.lev2 = [];
_root.gamemode = 3;
_root.gotoAndStop('game');
}
}
movieClip 712 {
frame 1 {
if (_root.maxlev >= 3) {
nextFrame();
} else {
stop();
}
}
}
button 715 {
on (release) {
_root.gotoAndStop('select');
}
}
movieClip 718 {
frame 1 {
if (_root.maxlev >= 6) {
nextFrame();
} else {
stop();
}
}
}
button 721 {
on (release) {
_root.story = false;
_root.maxspawn = 1;
_root.lev1 = [12];
_root.lev2 = [];
_root.gamemode = 1;
_root.gotoAndStop('game');
}
}
movieClip 724 {
frame 1 {
if (_root.maxlev >= 2) {
nextFrame();
} else {
stop();
}
}
}
button 725 {
on (release) {
_root.story = false;
_root.maxspawn = 7;
_root.lev1 = [6];
_root.lev2 = [];
_root.gamemode = 2;
_root.gotoAndStop('game');
}
}
button 728 {
on (release) {
_root.story = false;
_root.maxspawn = 0;
_root.lev1 = [];
_root.lev2 = [];
_root.gamemode = 3;
_root.gotoAndStop('game');
}
}
movieClip 731 {
frame 1 {
if (_root.maxlev >= 3) {
nextFrame();
} else {
stop();
}
}
}
button 734 {
on (release) {
_root.gotoAndStop('menu');
}
}
frame 4 {
if (_root.localization_portal == 'game_com_cn') {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.mainscreen_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_mainscreen_moregames', '_blank');
};
}
}
button 742 {
on (release) {
_root.golev = 0;
_root.gotoAndStop('game');
}
}
button 745 {
on (release) {
_root.golev = 1;
_root.gotoAndStop('game');
}
}
button 748 {
on (release) {
_root.golev = 2;
_root.gotoAndStop('game');
}
}
button 751 {
on (release) {
_root.golev = 3;
_root.gotoAndStop('game');
}
}
button 754 {
on (release) {
_root.golev = 4;
_root.gotoAndStop('game');
}
}
movieClip 755 {
frame 1 {
gotoAndStop(_root.maxlev);
}
}
button 756 {
on (release) {
gotoAndStop('menu');
}
}
frame 5 {
_root.ftw.gotoAndStop(3);
}
button 761 {
on (release) {
if (_currentframe == 1) {
nextFrame();
} else {
prevFrame();
}
}
}
movieClip 765 {
frame 1 {
stop();
}
}
button 767 {
on (release) {
unitz = [6, 2, 12, 4, 8, 14, 10];
lev1 = [];
lev2 = [];
zomg = 0;
e = 1;
while (e < 8) {
trg = _root['b' + e];
if (trg._currentframe == 1) {
if (e == 6) {
++zomg;
} else {
zomg -= 100;
}
if (e < 5) {
lev1.push(unitz[e - 1]);
} else {
lev2.push(unitz[e - 1]);
}
}
++e;
}
if (zomg == 1) {
_root.medalg('Drunken Air Show');
}
_root.allmax = false;
if (zomg == -599) {
if (_root.maxspawn >= 9) {
_root.allmax = true;
}
}
_root.story = false;
_root.gamemode = 4;
if (lev1.length == 0 && lev2.length == 0) {
_root.ftw.gotoAndStop(1);
} else {
if (lev2[0] == 10 && lev1.length == 0) {
_root.ftw.gotoAndStop(2);
} else {
gotoAndStop('game');
}
}
}
}
movieClip 769 {
}
button 770 {
on (release, releaseOutside) {
draging = false;
}
on (press) {
draging = true;
}
}
movieClip 773 {
}
instance of movieClip 773 {
onClipEvent (enterFrame) {
_x = _root.bar._x;
if (draging) {
_y = _root._ymouse;
}
v1 = _root.bar._y + _root.bar._height / 2;
v2 = _root.bar._y - _root.bar._height / 2;
if (_y > v1) {
_y = v1;
}
if (_y < v2) {
_y = v2;
}
v1 = Math.round(((_y - v2) / (v1 - v2)) * 8 + 1);
_root.maxspawn = v1;
_root.n1.gotoAndStop(v1);
}
}
movieClip 784 {
frame 1 {
stop();
}
}
movieClip 789 {
}
movieClip 793 {
}
movieClip 795 {
}
movieClip 797 {
frame 90 {
}
frame 91 {
stop();
}
}
movieClip 798 {
frame 1 {
if (_root.localization_portal == 'game_com_cn') {
this.logo_intro.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.logo_intro.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=logo_intro', '_blank');
};
}
}
frame 90 {
stop();
}
}
movieClip 800 {
}
movieClip 802 {
}
movieClip 804 {
frame 89 {
stop();
}
}
movieClip 808 {
}
movieClip 810 {
}
movieClip 812 {
frame 89 {
stop();
}
}
movieClip 815 {
frame 89 {
stop();
}
}
movieClip 818 {
}
movieClip 821 {
frame 39 {
stop();
}
}
movieClip 822 {
}
movieClip 823 {
frame 91 {
stop();
_root.nextFrame();
}
}
movieClip 824 {
frame 1 {
if (_root.localization_portal == 'family') {
gotoAndStop(1);
}
if (_root.localization_portal == 'tweens') {
gotoAndStop(2);
}
if (_root.localization_portal == 'girl') {
gotoAndStop(3);
}
if (_root.localization_portal == 'game_com_cn') {
gotoAndStop(4);
}
if (_root.localization_portal == 'teen') {
gotoAndStop(5);
}
}
}
frame 7 {
stop();
d.done = function () {
_root.gotoAndStop('menu');
};
}
button 828 {
on (release) {
gotoAndStop(_totalframes);
}
}
button 829 {
on (release) {
if (_root.currUrl.indexOf('www8.agame.com') <= 0) {
getURL('http://www.komix-games.com', '_top');
}
}
}
button 830 {
on (release) {
if (_root.currUrl.indexOf('www8.agame.com') <= 0) {
getURL('http://barfquestion.com/', '_top');
}
}
}
movieClip 831 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 346 {
done();
}
}
movieClip 866 {
frame 1 {
stop();
}
}
movieClip 867 {
}
movieClip 868 {
}
movieClip 871 {
}
movieClip 886 {
frame 1 {
stop();
}
}
movieClip 887 {
frame 1 {
function moar() {
for (e in ball) {
trg = ball[e];
trg2 = ball[0];
v1 = 1000;
switch (trg.s) {
if (trg.s !== 12) {
} else {
case 14:
case 8:
case 2:
case 4:
case 6:
xenf = trg.xp - trg2.xp;
while (xenf > v1) {
trg.xp -= v1 * 2;
xenf -= v1 * 2;
}
while (xenf < -v1) {
trg.xp += v1 * 2;
xenf += v1 * 2;
}
}
}
switch (trg.s) {
if (trg.s !== 8) {
} else {
case 10:
v5 = 10;
if (trg.d.ready) {
v2 = 0;
v1 = 0;
siz = 250;
for (a in ball) {
if (e != a) {
trg2 = ball[a];
if (trg2.what == 4 && trg2.s != 14) {
xenf = trg2.xp - trg.xp;
if (Math.abs(xenf) < siz) {
yenf = trg2.yp - trg.yp;
if (Math.abs(xenf) < siz) {
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf < siz) {
v3 = (siz - enf) / siz;
v1 -= xenf * v3;
v2 -= yenf * v3;
}
}
}
}
}
}
trg2 = ball[0];
xenf = trg.xp - trg2.xp;
yenf = trg.yp - trg2.yp;
enf = Math.sqrt(xenf * xenf + yenf * yenf);
xenf /= enf;
yenf /= enf;
v3 = (300 - enf) / 300;
v1 += xenf * v3;
v2 += yenf * v3;
if (trg.yp > 0) {
v2 -= trg.yp * 0.1;
}
v3 = Math.sqrt(v1 * v1 + v2 * v2);
v4 = 5;
if (v3 > v4) {
v3 /= v4;
v1 /= v3;
v2 /= v3;
}
}
}
}
switch (trg.s) {
case 14:
soundy('jet_loop.mp3', 100, trg, trg.uniq);
if (trg.d.ready) {
siz = 300;
for (a in ball) {
trg2 = ball[a];
if (trg2.what == 4 && e != a) {
xenf = trg.xp + trg.xbew * 3 - trg2.xp - trg2.xbew * 3;
if (Math.abs(xenf) < siz) {
yenf = trg.yp + trg.ybew * 3 - trg2.yp - trg2.ybew * 3;
if (Math.abs(yenf) < siz) {
enf = enfget(xenf, yenf);
if (enf < siz) {
v1 = rotget(xenf, yenf) + 90;
v2 = 5 - Math.max(0, 60 / (10 + siz - enf));
if (v2 > 0) {
v1 -= trg.rp;
v1 = absmax(rotrund(v1 - 180) * 0.3, v2 * 2.5);
trg.rp += v1;
}
}
}
}
}
}
v8 = 200;
v9 = 700;
v2 = 4;
xenf = trg.xp + trg.xbew * 10 - trg2.xp - trg2.xbew * 5;
yenf = trg.yp + trg.ybew * 10 - trg2.yp - trg2.ybew * 5;
enf = enfget(xenf, yenf);
v1 = rotget(xenf, yenf) - 90;
if (trg.v2 < 0) {
v2 -= Math.max(0, 180 / (30 + Math.abs(enf - v8)));
if (enf < v8) {
v1 += 180;
}
} else {
v2 = 5;
v1 += 180;
}
v1 -= trg.rp;
v1 = absmax(rotrund(v1 - 180) * 0.3, v2);
trg.rp += v1;
trg.rp = rotrund(trg.rp);
trg.rbew *= 0.9;
v1 = ((trg.rp + 90) / 180) * Math.PI;
v2 = -Math.cos(v1);
v3 = -Math.sin(v1);
if (trg.v2 < 0) {
if (enf < v8) {
create(trg.xp, trg.yp, trg.rp - 90, v2 * 3, v3 * 3, 0, trg.s + 1);
trg.v2 = 10;
}
}
v1 = Math.max(0, 1 - Math.max(0, trg.yp * 0.001));
trg.rp *= v1;
if (enf > v9) {
--trg.v2;
}
v4 = -trg.rp;
v4 = v4 / 18 + 1;
while (v4 < 1) {
v4 += 20;
}
while (v4 > 20) {
v4 -= 20;
}
v4 = Math.round(v4);
trg.d.gotoAndStop(v4);
trg.xbew *= 0.7;
trg.ybew *= 0.7;
if (trg.v2 < 0) {
v4 = 3;
} else {
v4 = 2.5;
}
trg.xbew += v2 * v4;
trg.ybew += v3 * v4;
if (trg.v2 < 0) {
trg.d.d.gotoAndStop(trg.d._currentframe);
} else {
trg.d.d.gotoAndStop(1);
}
} else {
trg.rp += 0.3;
trg.rp = rotrund(trg.rp);
if (trg.dead) {
trg.rp = 0;
trg.ybew = 0;
trg.xbew = 0;
if (trg.d._currentframe <= 20) {
trg.d.gotoAndStop('die');
} else {
trg.d.nextFrame();
}
} else {
trg.ybew += 0.5;
trg.rp = rotget(trg.xbew, trg.ybew) - 90;
if (fra % 2 == 1) {
trg.d.nextFrame();
if (trg.d._currentframe > 20) {
trg.d.gotoAndStop(1);
}
}
if (fra % 9 == 2 or Math.random() < 0.3) {
parc('p3', trg.xp, trg.yp);
}
}
trg.d.d.gotoAndStop(1);
}
break;
case 10:
blimp._x = trg.xp;
blimp._y = trg.yp;
trg.fire = false;
if (trg.d.ready) {
trg.d.gotoAndStop(1);
if (trg.v1 > 0) {
v4 = 1;
} else {
v4 = 2;
}
v3 = rotget(xenf, yenf);
v3 -= trg.rp;
v3 = rotrund(v3) * 0.2;
v3 = absmax(v3, v4);
trg.rp += v3;
trg.rbew *= 0.85;
trg.v1 *= 0.9;
if (trg.v1 < 0) {
trg.xbew *= 0.975;
trg.ybew *= 0.975;
trg.xbew += v1 * 0.2;
trg.ybew += v2 * 0.2;
trg.v1 += 1 - enf * 0.003;
if (trg.v1 > 0) {
trg.v1 = 10;
}
trg.d.b.prevFrame();
} else {
if (trg.d.b._currentframe == 2) {
soundy('laser_charge.mp3', 100, trg);
}
trg.d.b.nextFrame();
trg.v1 += 1 - enf * 0.0015;
if (trg.d.b._currentframe == trg.d.b._totalframes) {
trg.fire = true;
soundy('laser_loop.mp3', 100, trg, trg.uniq);
for (a in ball) {
trg2 = ball[a];
v1 = (trg.rp / 180) * Math.PI;
xbewenf = Math.cos(v1);
ybewenf = Math.sin(v1);
v3 = trg2.xp - trg.xp;
v4 = trg2.yp - trg.yp;
v1 = linearcut(v3, v4, -ybewenf, xbewenf, xbewenf, ybewenf);
v2 = linearcut(v3, v4, xbewenf, ybewenf, -ybewenf, xbewenf);
if (v2 > 0 && Math.abs(v1) < sizes[trg2.s]) {
bulletdeath(trg2);
if (trg2.what == 4 && trg2.d.ready or trg2.what == 1 && !trg2.die) {
++toaster;
if (toaster == 10) {
_root.medalg('Toast Master');
}
}
helideath(trg2);
peddeath(trg2);
if (trg2.s == 1) {
hp -= hpdown;
hpdown = Math.max(hpdown - 0.5, 0.5);
}
if (trg2.s == 4) {
soundy('tank_hitbylaser.mp3', 100, trg2, trg2.uniq);
} else {
soundy('laser_burningloop.mp3', 100, trg2, trg2.uniq);
}
if (Math.random() < 0.25) {
v5 = sizes[trg2.s] - Math.abs(v1);
v5 *= Math.random() * 2 - 1;
parc('p4', trg2.xp + ybewenf * v1 + xbewenf * v5, trg2.yp - xbewenf * v1 + ybewenf * v5);
}
}
}
}
}
trg.d.d.gotoAndStop(trg.d.b._currentframe);
} else {
blimp.play();
trg.d.nextFrame();
if (trg.d._currentframe == trg.d._totalframes) {
trg.done = true;
}
}
break;
case 8:
if (trg.d.ready) {
soundy('helicopter_loop.mp3', 100, trg, trg.uniq);
trg.xbew += v1 * 0.2;
trg.ybew += v2 * 0.2;
v5 = Math.max(1, Math.min(v5, (-trg.xbew / 5 + 0.5) * v5));
if (fra % 2 == 1) {
v5 -= trg.d._currentframe;
if (v5 > 0.5) {
trg.d.nextFrame();
} else {
if (v5 < -0.5) {
trg.d.prevFrame();
}
}
}
xenf = -Math.abs(xenf);
trg.xbew *= 0.975;
trg.ybew *= 0.975;
--trg.v1;
if (trg.v1 < 0) {
trg.v1 = 150;
create(trg.xp, trg.yp + 30, 90, 0, 0, 0, trg.s + 1);
}
} else {
soundy('helicopter_dies.wav', 100, trg, trg.uniq);
trg.ybew += 0.5;
if (trg.dead) {
if (trg.d._currentframe <= v5 * 2) {
trg.d.gotoAndStop('die');
} else {
trg.d.nextFrame();
}
trg.ybew = 0;
trg.xbew = 0;
} else {
if (fra % 2 == 1) {
trg.d.nextFrame();
if (trg.d._currentframe > v5 * 2) {
trg.d.gotoAndStop(1);
}
}
if (fra % 9 == 2 or Math.random() < 0.3) {
parc('p3', trg.xp, trg.yp - 30);
}
}
}
break;
case 6:
if (trg.d.ready) {
trg2 = ball[0];
xenf = trg.xp - trg2.xp;
yenf = trg.yp - trg2.yp;
enf = xenf * xenf + yenf * yenf;
if (enf < 40000) {
trg.doing = 1;
}
switch (trg.doing) {
case 1:
if (xenf * trg.d._xscale < 0) {
trg.d._xscale *= -1;
}
case 2:
if (trg.lastgo != 'walk') {
go('walk');
}
trg.d.play();
if (trg.d._xscale < 0) {
v1 = 1;
} else {
v1 = -1;
}
trg.xp -= v1 * 3;
if (Math.random() < 0.01) {
trg.doing = undefined;
}
break;
default:
if (trg.lastgo == 'walk') {
go(1);
trg.d.stop();
}
if (Math.random() < 0.01) {
trg.doing = 2;
if (Math.random() < 0.5) {
trg.d._xscale *= -1;
}
}
}
}
break;
case 4:
if (trg.d.ready) {
trg.yp = 245;
if (Math.abs(trg.xbew) > 3) {
for (a in ball) {
trg2 = ball[a];
if (trg2.what == 1 && trg2.s != 4) {
xenf = trg.xp - trg2.xp;
if (Math.abs(xenf) < sizes[trg.s] + 10) {
trg2.xbew = trg.xbew;
peddeath(trg2);
_root.medalg('Tankicular Homicide');
}
}
}
}
}
case 2:
case 12:
if (trg.d.ready) {
trg2 = ball[0];
if (trg.v3 == undefined) {
trg.v3 = Math.random();
if (Math.random() < 0.25) {
trg.v3 = 1;
} else {
if (Math.random() < 0.25) {
trg.v3 = 0;
}
}
}
tankbe = trg.s == 4;
nadebe = trg.s == 12;
xenf = trg.xp - trg2.xp;
yenf = trg.yp - trg2.yp;
if (Math.abs(xenf) > 800) {
if (xenf * trg.d._xscale > 0) {
trg.d._xscale *= -1;
if (tankbe) {
trg.rp = 180 - trg.rp;
}
}
trg.walk = 50;
}
--trg.walk;
if (tankbe) {
enf = Math.sqrt(xenf * xenf + yenf * yenf);
xenf -= trg2.xbew * enf / 10;
yenf -= trg2.ybew * enf / 10;
v1 = (Math.atan(-xenf / yenf) / Math.PI) * 180 + 90;
if (yenf >= 0) {
v1 += 180;
}
if (trg.d._xscale < 0) {
v1 = 180 - v1;
}
v1 = rotrund(v1 + 90);
v1 = absmax(v1, 90) - 90;
v1 -= trg.rp;
trg.rp += absmax(rotrund(v1) * 0.5, 5);
}
if (trg.walk > 0) {
if (tankbe) {
soundy('tank_loop.mp3', 100, trg, trg.uniq);
}
if (trg.lastgo != 'walk') {
go('walk');
}
trg.d.play();
if (trg.d._xscale < 0) {
v1 = 1;
} else {
v1 = -1;
}
trg.xp -= v1 * 3;
if (Math.abs(xenf) < 300) {
siz = 300 - Math.abs(xenf);
siz *= siz * 0.0003;
trg.walk -= Math.min(25, siz);
}
if (trg.walk < 30) {
if (tankbe) {
siz = 200;
} else {
siz = 100;
}
for (a in ball) {
if (e != a) {
trg2 = ball[a];
if (trg2.walk <= 0 && (!tankbe or trg2.s == 4)) {
xenf = Math.abs(trg2.xp - trg.xp);
if (trg2.s == 4) {
xenf -= 75;
}
if (xenf < siz) {
siz = xenf;
}
}
}
}
if (siz < 50) {
trg.walk = 30;
}
}
} else {
if (tankbe) {
v1 = (trg.rp / 180) * Math.PI;
xenf = -Math.cos(v1) * 10;
yenf = -Math.sin(v1) * 10;
if (trg.d._xscale < 0) {
xenf *= -1;
}
} else {
if (nadebe) {
v1 = 30;
if (trg.v1 < v1) {
v1 = 1.001 - trg.v1 / v1;
v1 *= v1;
} else {
v1 = 0.001;
}
v1 = nadetime * v1;
xenf /= v1;
yenf /= v1;
xenf -= trg2.xbew * trg.v3;
yenf -= trg2.ybew * trg.v3;
yenf += nadegrav * v1 * 0.5;
} else {
enf = Math.sqrt(xenf * xenf + yenf * yenf);
xenf -= (trg2.xbew * enf / 10) * trg.v3;
yenf -= (trg2.ybew * enf / 10) * trg.v3;
}
}
if (!tankbe) {
if (xenf * trg.d._xscale > 0) {
trg.d._xscale *= -1;
}
xenf = -Math.abs(xenf);
trg.rp = (Math.atan(-xenf / yenf) / Math.PI) * 180 + 90;
if (yenf >= 0) {
trg.rp += 180;
}
if (trg.d._xscale < 0) {
xenf = -xenf;
}
}
if (trg.lastgo == 'walk') {
go(1);
trg.d.stop();
}
trg.xbew *= 0.95;
trg.ybew *= 0.95;
--trg.v1;
if (trg.v1 < 0) {
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (!nadebe) {
xenf *= 10 / enf;
yenf *= 10 / enf;
}
trg.v1 = 70;
siz = 40;
v1 = (Math.atan(-xenf / yenf) / Math.PI) * 180 + 90;
if (yenf >= 0) {
v1 += 180;
}
if (tankbe) {
siz = 80;
trg.v1 = 100;
}
if (nadebe) {
siz /= enf;
} else {
siz /= 10;
}
create(trg.xp - xenf * siz, trg.yp - yenf * siz, v1, -xenf, -yenf, 0, trg.s + 1);
trg.v3 = undefined;
}
}
}
break;
case 3:
case 5:
case 9:
case 15:
if (_root.gamemode != 3) {
xenf = -trg.xp - _x + 414;
yenf = -trg.yp - _y + 300;
if (Math.abs(xenf) > 700 or Math.abs(yenf) > 700) {
trg.done = true;
trg.noexp = true;
}
trg.v3 += Math.random();
if (trg.what == 3) {
trg.ybew += 0.5;
}
if (trg.v3 > 100) {
trg.what = 3;
}
}
break;
case 13:
trg.ybew += nadegrav;
++trg.v1;
if (trg.v1 > nadetime) {
trg.done = true;
}
}
v1 = 20;
switch (trg.s) {
case 9:
if (_root.gamemode == 3) {
if (trg.what != 2) {
v1 = (Math.atan(-trg.xbew / trg.ybew) / Math.PI) * 180 + 90;
if (trg.ybew < 0) {
v1 += 180;
}
trg.rp = v1;
trg.what = 2;
}
} else {
v1 = -5;
}
case 15:
if (trg.what != 3) {
trg2 = ball[0];
xenf = trg.xp + trg.xbew * 4 - trg2.xp - trg2.xbew * v1;
yenf = trg.yp + trg.ybew * 4 - trg2.yp - trg2.ybew * v1;
if (yenf != 0) {
v1 = (Math.atan(-xenf / yenf) / Math.PI) * 180 + 90;
if (yenf >= 0) {
v1 += 180;
}
v1 -= trg.rp;
v1 = rotrund(v1);
v2 = 5;
if (_root.gamemode == 3) {
v2 = 8;
v1 *= 0.25;
}
v1 = absmax(v1, v2);
trg.rp += v1 * 0.5;
}
} else {
v1 = (Math.atan(-trg.xbew / trg.ybew) / Math.PI) * 180 + 90;
if (trg.ybew < 0) {
v1 += 180;
}
trg.rp = v1;
}
v1 = 1.1;
v5 = 0.9;
if (_root.gamemode == 3) {
v1 = 1.2;
v5 = 0.94;
}
v2 = (trg.rp / 180) * Math.PI;
v3 = Math.cos(v2) * v1;
v4 = Math.sin(v2) * v1;
trg.xbew += v3;
trg.ybew += v4;
trg.xbew *= v5;
trg.ybew *= v5;
if (Math.random() < 0.45) {
parc('p3', trg.xp - v3 * 10, trg.yp - v4 * 10);
}
}
}
tip(0);
e = 0;
while (e < ball.length) {
trg = ball[e];
if (trg.what == 1) {
if (trg.die && trg.d.ready) {
v3 = Math.sqrt(trg.xbew * trg.xbew + trg.ybew * trg.ybew);
if (trg.d._xscale < 0) {
trg.d._xscale *= -1;
}
trg.d.ready = false;
trg.d.bh = false;
v1 = trg.xbew / v3;
v2 = trg.ybew / v3;
if (v1 < 0) {
v1 = -v1;
trg._xscale = -100;
}
if (trg.s == 4) {
trg.d.gotoAndStop('hit1');
} else {
if (v1 / 3 > Math.abs(v2)) {
trg.d.gotoAndStop('hit3');
} else {
if (v1 * 3 < Math.abs(v2)) {
if (v2 > 0) {
trg.d.gotoAndStop('hit1');
} else {
trg.d.gotoAndStop('hit5');
}
} else {
if (v2 > 0) {
trg.d.gotoAndStop('hit2');
} else {
trg.d.gotoAndStop('hit4');
}
}
}
}
trg.d.pla = true;
}
v2 = trg.d.d._y;
if (v2 == undefined) {
v2 = 0;
}
trg.yp += v2 - trg.v2;
trg.v2 = v2;
v1 = pedy + v2;
trg.d._y = -v2;
if (trg.yp > v1) {
trg.yp = v1;
trg.ybew = 0;
trg.xbew *= 0.95;
} else {
trg.ybew += 0.5;
}
trg.d.d._rotation = Math.round(trg.rp * 10) / 10;
} else {
if (trg.s == 10) {
trg.d.d._rotation = Math.round(trg.rp * 10) / 10;
} else {
trg.d._rotation = Math.round(trg.rp * 10) / 10;
}
}
trg._x = Math.round(trg.xp * 10) / 10;
trg._y = Math.round(trg.yp * 10) / 10;
trg.web = [];
trg.webz = 1;
++e;
}
trg = ball[0];
v1 = -trg.rp;
if (trg.rbew > 0) {
v2 = 0;
} else {
v2 = 180;
}
while (v1 > 360) {
v1 -= 360;
}
while (v1 < 0) {
v1 += 360;
}
v3 = Math.min(1, Math.max(0, 2 - Math.abs(trg.rbew) * 0.4));
v1 *= v3;
v2 -= v1;
while (v2 > 360) {
v2 -= 360;
}
while (v2 < 0) {
v2 += 360;
}
plfff = plfff * 0.8 + trg.rbew * 0.2;
v3 = 1 - v3;
v1 += v2 * v3;
v2 = trg.d._totalframes;
v1 = (v1 / 360) * v2 + 0.5;
v1 -= plf + plff;
while (v1 > v2 / 2) {
v1 -= v2;
}
while (v1 < -v2 / 2) {
v1 += v2;
}
v4 = 0.5 / (1 + Math.abs(plfff - trg.rbew));
v1 = Math.max(-v4, Math.min(v4, v1));
plff *= 0.8;
plff += v1 * 0.4;
plf += plff;
if (plf > v2) {
plf -= v2;
}
if (plf < 1) {
plf += v2;
}
trg.d.gotoAndStop(Math.round(plf));
siz = 35;
v5 = true;
while (v5) {
v2 = (trg.rp / 180) * Math.PI;
v1 = trg.xp - Math.cos(v2) * siz;
v2 = trg.yp - Math.sin(v2) * siz;
xenf = trg.tailx[0] - v1;
yenf = trg.taily[0] - v2;
enf = xenf * xenf + yenf * yenf;
if (enf > 25) {
xenf = trg.tailx[0] - trg.tailx[1];
yenf = trg.taily[0] - trg.taily[1];
v1 += xenf / 2;
v2 += yenf / 2;
xenf = trg.tailx[0] - v1;
yenf = trg.taily[0] - v2;
enf = xenf * xenf + yenf * yenf;
enf = Math.sqrt(enf);
enf = (enf - 5) / enf;
v1 += xenf * enf;
v2 += yenf * enf;
trg.tailx.splice(0, 0, v1);
trg.taily.splice(0, 0, v2);
trg.inverse = !trg.inverse;
} else {
v5 = false;
}
}
drawer[1].moveTo(v1, v2);
drawer[2].moveTo(v1, v2);
trg.tailx.splice(longz);
trg.taily.splice(longz);
a = 0;
v2 = Math.sqrt(trg.xbew * trg.xbew + trg.ybew * trg.ybew);
if (v2 > 0) {
v2 = Math.max(0, longy * 1.4 - v2);
v1 = Math.cos((trg.rp / 180) * Math.PI) * v2;
v2 = Math.sin((trg.rp / 180) * Math.PI) * v2;
while (a < trg.tailx.length - 1) {
trg.tailx[a] -= v1;
trg.taily[a] -= v2;
++a;
}
}
a = 0;
while (a < trg.tailx.length - 1) {
if (a > 0) {
xenf = trg.tailx[a] - trg.tailx[a - 1];
yenf = trg.taily[a] - trg.taily[a - 1];
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
enf = (longy - enf) / enf;
xenf *= enf;
yenf *= enf;
if (a != 1) {
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
trg.tailx[a - 1] -= xenf * 0.7;
trg.taily[a - 1] -= yenf * 0.7;
} else {
trg.tailx[a] += xenf * 2;
trg.taily[a] += yenf * 2;
}
}
}
++a;
}
a = 0;
v1 = Math.cos((trg.rp / 180) * Math.PI);
v2 = Math.sin((trg.rp / 180) * Math.PI);
while (a < trg.tailx.length - 1) {
v4 = Math.min(a / longz / 0.375, 1);
if (v4 != 1) {
v3 = siz + longy * a;
xenf = trg.xp - v1 * v3;
yenf = trg.yp - v2 * v3;
v4 = Math.sqrt(v4);
trg.tailx[a] *= v4;
trg.taily[a] *= v4;
v4 = 1 - v4;
trg.tailx[a] += xenf * v4;
trg.taily[a] += yenf * v4;
}
xenf = trg.tailx[a] - trg.xp;
yenf = trg.taily[a] - trg.yp;
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
v5 = a / longz;
v5 = 0.5 + 0.5 * v5;
enf = (Math.max(longy * longz * 2 - enf, 0) / enf) * 0.05;
xenf *= enf;
yenf *= enf;
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
}
if (a > 7) {
xenf = trg.tailx[a] - trg.tailx[a - 8];
yenf = trg.taily[a] - trg.taily[a - 8];
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
enf = ((8 * longy - enf) / enf) * 0.5 / 2;
xenf *= enf;
yenf *= enf;
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
trg.tailx[a - 8] -= xenf;
trg.taily[a - 8] -= yenf;
}
}
if (a > 1) {
xenf = trg.tailx[a] - trg.tailx[a - 2];
yenf = trg.taily[a] - trg.taily[a - 2];
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
enf = ((2 * longy - enf) / enf) * 0.5 / 3;
xenf *= enf;
yenf *= enf;
if (a != 1) {
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
trg.tailx[a - 2] -= xenf;
trg.taily[a - 2] -= yenf;
} else {
trg.tailx[a] += xenf * 2;
trg.taily[a] += yenf * 2;
}
}
}
if (a > 0) {
xenf = trg.tailx[a] - trg.tailx[a - 1];
yenf = trg.taily[a] - trg.taily[a - 1];
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
enf = ((longy - enf) / enf) * 0.5 / 5;
xenf *= enf;
yenf *= enf;
if (a != 1) {
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
trg.tailx[a - 1] -= xenf * 0.7;
trg.taily[a - 1] -= yenf * 0.7;
} else {
trg.tailx[a] += xenf * 2;
trg.taily[a] += yenf * 2;
}
}
}
if (a > 2) {
xenf = trg.tailx[a] - trg.tailx[a - 3];
yenf = trg.taily[a] - trg.taily[a - 3];
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf > 0) {
enf = ((3 * longy - enf) / enf) * 0.5 / 4;
xenf *= enf;
yenf *= enf;
trg.tailx[a] += xenf;
trg.taily[a] += yenf;
trg.tailx[a - 3] -= xenf;
trg.taily[a - 3] -= yenf;
}
}
++a;
}
a = 0;
while (a < trg.tailx.length - 1) {
v1 = 1 - a / longz;
v2 = crand(v1);
v3 = crand(v1);
drawer[1].lineStyle(v1 * 9 + 1, 16511732);
drawer[1].lineTo(trg.tailx[a] + v2, trg.taily[a] + v3);
drawer[2].lineStyle(v1 * 10 + 4, 2236962);
drawer[2].lineTo(trg.tailx[a] + v2, trg.taily[a] + v3);
++a;
}
for (e in ball) {
trg2 = ball[e];
if (e != 0) {
v1 = -1;
if (trg2.bh) {
xenf = trg.tailx[longz / 2] - trg2.xp;
siz = 200;
if (xenf < siz) {
yenf = trg.taily[longz / 2] - trg2.yp;
if (yenf < siz) {
siz = sizes[trg2.s] + 3;
a = 0;
while (a < trg.tailx.length - 1) {
xenf = trg.tailx[a] - trg2.xp;
if (xenf < siz) {
yenf = trg.taily[a] - trg2.yp;
if (yenf < siz) {
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf < siz) {
siz = enf;
v1 = a;
v2 = xenf;
v3 = yenf;
}
}
}
++a;
}
}
}
if (v1 > -1) {
switch (trg2.what) {
case 2:
trg2.what = 3;
break;
case 4:
helideath(trg2);
}
roty = sizes[trg2.s] * Math.PI / 180;
if (v1 == longz) {
f5 = -v3;
f6 = v2;
} else {
if (v1 > 0) {
f5 = trg.tailx[v1 - 1];
f6 = trg.taily[v1 - 1];
} else {
f5 = trg.tailx[v1];
f6 = trg.taily[v1];
}
if (v1 < longz) {
f5 -= trg.tailx[v1 + 1];
f6 -= trg.taily[v1 + 1];
} else {
f5 -= trg.tailx[v1];
f6 -= trg.taily[v1];
}
f7 = f5;
f5 = f6;
f6 = -f7;
}
f7 = Math.sqrt(f5 * f5 + f6 * f6);
f5 /= f7;
f6 /= f7;
v4 = trg.tailx[v1] - trg.atailx[v1];
v5 = trg.taily[v1] - trg.ataily[v1];
xbewenf = trg2.xbew - v4;
ybewenf = trg2.ybew - v5;
f9 = -f6 * xbewenf + f5 * ybewenf;
f8 = -f5 * xbewenf - f6 * ybewenf;
v6 = 1;
if (f8 > 0) {
v6 = -1;
}
nadedelay(trg2);
if (trg2.parc < 0) {
if (Math.abs(f8) > 4.5) {
parc('p3', trg.tailx[v1], trg.taily[v1]);
bounce(trg2);
switch (trg2.s) {
case 3:
case 5:
case 13:
soundy('taildeflect_bulletsgrenades.mp3', 100, trg2);
break;
case 9:
case 15:
soundy('taildeflect_missiles.mp3', 100, trg2);
break;
case 4:
soundy('spermrider_hittank.mp3', 100, trg2);
break;
case 8:
case 14:
soundy('taildeflect_bulletsgrenades.mp3', 100, trg2);
}
}
trg2.parc = 18;
trg2.v6 = v6;
}
if (peddeath(trg2)) {
soundy('pedestrian_squished' + random(4) + '.mp3', 100, trg2);
}
if (f8 * trg2.v6 < 0) {
enf = Math.sqrt(v2 * v2 + v3 * v3);
enf = Math.max(0, sizes[trg2.s] + 5 - enf) * v6;
v2 *= enf;
v3 *= enf;
if (what[trg.s] == 2 or what[trg.s] == 3) {
trg2.xp -= v2;
trg2.yp -= v3;
}
siz = Math.sqrt(xbewenf * xbewenf + ybewenf * ybewenf);
if (siz > 0 && rotat[trg2.s]) {
f10 = trg2.rbew * roty * v6;
f10 += f9;
f10 = rotc(f10 * 4) / 4;
if (trg2.s == 10) {
f10 *= 0.3;
}
trg2.rbew -= (f10 / roty) * v6;
f9 -= f10;
}
f8 *= 0.2;
trg2.xbew = v4 + f5 * f8 - f6 * f9;
trg2.ybew = v5 + f6 * f8 + f5 * f9;
}
}
}
}
}
trg.atailx = trg.tailx.slice(0, -1);
trg.ataily = trg.taily.slice(0, -1);
v6 = 0.8;
_x = _x * v6;
_y = _y * v6;
v1 = ball[0]._x;
v2 = ball[0]._y;
v6 = 1 - v6;
_x = _x + (414 - v1) * v6;
_y = _y + (300 - v2) * v6;
v3 = 250;
if (_y < v3) {
_y = v3;
}
v3 = 870;
if (_y > v3) {
_y = v3;
}
v = 0.7;
bg._x = -Math.round(_x / bgzz) * bgzz;
tip(1);
if (_root.gamemode == 2) {
_root.diff = 1;
}
if (_root.red._alpha < 5) {
hpback += 0.00075 * (_root.diff + 1);
hpback *= 0.993;
} else {
hpback = 0;
}
hp = Math.min(hp + hpback, 100);
if (hp < 100) {
hang += hpback;
if (hang > 900) {
_root.medalg('Hanging in There');
}
}
_root.health._x = healthx - (100 - hp) * 2;
if (ahp > hp) {
_root.red._alpha += 5 * (ahp - hp);
}
_root.red._alpha = Math.min(70, Math.max(_root.red._alpha - 15, 0));
ahp = hp;
spo *= 0.996;
spo = Math.min(spo + 0.4, 100);
_root.speed._x = speedx - (100 - spo) * 2;
n = 1;
e = 1;
while (e < 9) {
trg = _root.n['n' + e];
if (points < n) {
trg.gotoAndStop(11);
} else {
n *= 10;
v1 = Math.round(((points % n) / n) * 10 - 0.5);
trg.gotoAndStop(nub(v1));
}
++e;
}
v1 = (timelimit - fra) / 30;
if (_root.gamemode == 2) {
maxguys1 = 25;
if (v1 > 30) {
cspawn1 *= 0.97;
} else {
if (v1 > 20) {
cspawn1 *= 0.95;
} else {
if (v1 > 10) {
cspawn1 *= 0.8;
} else {
cspawn1 *= 0.65;
}
}
}
} else {
if (_root.gamemode == 1) {
cspawn *= 0.6;
} else {
if (_root.gamemode == 3) {
v1 = Math.sqrt(Math.sqrt(fra)) * 0.7;
_root.tex = v1;
miss -= Math.max(0, v1 - ball.length);
if (miss < 0) {
miss = 150;
v1 = Math.random() * 300 + 500;
v2 = -90;
if (Math.random() < 0.5) {
v1 *= -1;
}
if (player.yp < 0) {
if (Math.random() < 0.5) {
v2 *= -1;
}
}
create(player.xp + v1, player.yp, v2, 0, 0, 0, 9);
}
v1 = fra / 30;
}
}
}
if (v1 < 0) {
leavesound();
unpause = false;
_root.pmen.gotoAndStop('complete');
leavegame = 'mode' + _root.gamemode;
}
v2 = v1 / 600 - 0.5;
v2 = Math.round(v2);
_root.n.t.t4.gotoAndStop(nub(v2));
v1 -= v2 * 600;
v2 = v1 / 60 - 0.5;
v2 = Math.round(v2);
_root.n.t.t3.gotoAndStop(nub(v2));
v1 -= v2 * 60;
v2 = v1 / 10 - 0.5;
v2 = Math.round(v2);
_root.n.t.t2.gotoAndStop(nub(v2));
v1 -= v2 * 10;
v2 = v1 - 0.5;
v2 = Math.round(v2);
_root.n.t.t1.gotoAndStop(nub(v2));
if (hp < 0) {
leavesound();
unpause = false;
_root.pmen.pausego = undefined;
if (_root.gamemode > 0 && _root.gamemode != 4) {
_root.pmen.gotoAndStop('complete');
leavegame = 'mode' + _root.gamemode;
_root.fra = fra;
} else {
_root.pmen.gotoAndStop('over');
_root.medalg('Infertility');
leavegame = 'menu';
_root.diff = Math.min(_root.diff + 1, 2);
}
}
if (lvsr) {
leavesound();
}
lvsr = false;
if (_root.gamemode == 4 && _root.allmax) {
if (fra == 18000) {
_root.medalg('Looking for a Challenge');
}
}
if (_root.gamemode == 2) {
if (points >= 10000) {
if (!dev) {
dev = true;
_root.medalg('Pedestrian Devestation');
}
}
}
if (_root.gamemode == 1) {
if (points >= 10000) {
if (!dev) {
dev = true;
_root.medalg('Ball Fondler');
}
}
}
if (_root.gamemode == 3) {
if (fra >= 9000) {
if (!dev) {
dev = true;
_root.medalg('Evasivivity');
}
}
}
}
}
frame 1 {
function storysetup() {
if (_root.story) {
if (points < levpoints[1]) {
_root.lev = 1;
_root.lev1 = [6];
maxguys1 = 8;
} else {
if (points < levpoints[2]) {
_root.lev = 2;
_root.lev1 = [2, 6];
_root.lev2 = [8];
maxguys1 = 2;
maxguys2 = 2;
} else {
if (points < levpoints[3]) {
_root.lev = 3;
_root.lev1 = [2, 6, 12];
_root.lev2 = [8, 14];
maxguys1 = 3;
maxguys2 = 2;
} else {
if (points < levpoints[4]) {
_root.lev = 4;
if (tankspawn <= -10) {
tankspawn = 0;
}
_root.lev1 = [2, 12];
_root.lev2 = [8, 14];
maxguys1 = 4;
maxguys2 = 2;
} else {
if (points < levpoints[5]) {
_root.lev = 5;
if (tankspawn <= -10) {
tankspawn = 0;
}
if (blimpspawn <= -10) {
blimpspawn = 0;
}
_root.lev1 = [2, 12];
_root.lev2 = [8, 14];
maxguys1 = 4;
maxguys2 = 2;
} else {
_root.lev = 6;
}
}
}
}
}
}
}
function r(x2) {
return Math.round(x2 * 100) / 100;
}
function go(f1) {
trg.d.gotoAndPlay(f1);
trg.lastgo = f1;
}
function enfget(f1, f2) {
f1 = f1 * f1 + f2 * f2;
if (f1 > 0) {
f1 = Math.sqrt(f1);
return f1;
}
f1 = 0;
return f1;
}
function rotget(f1, f2) {
f0 = (Math.atan(-f1 / f2) / Math.PI) * 180 + 90;
if (f2 >= 0) {
f0 += 180;
}
return f0;
}
function absmax(f1, f2) {
if (f1 > f2) {
f1 = f2;
return f1;
}
if (f1 < -f2) {
f1 = -f2;
}
return f1;
}
function linearcut(f1, f2, f3, f4, f5, f6) {
return (f1 * f6 - f2 * f5) / (f3 * f6 - f5 * f4);
}
function rotrund(f1) {
while (f1 > 180) {
f1 -= 360;
}
while (f1 < -180) {
f1 += 360;
}
return f1;
}
function create(f1, f2, f3, f4, f5, f6, f7) {
++ballz;
namer = 'b' + ballz;
f0 = ball.length;
if (f0 == 0) {
ball[f0] = attachMovie('ball', namer, ballz + 20000);
} else {
ball[f0] = attachMovie('ball', namer, ballz + 10000);
}
ball[f0].xp = f1;
ball[f0]._x = ball[f0].xp;
ball[f0].yp = f2;
ball[f0]._y = ball[f0].yp;
ball[f0].rp = f3;
ball[f0].xbew = f4;
ball[f0].ybew = f5;
ball[f0].rbew = f6;
ball[f0].s = f7;
ball[f0].e = f0;
ball[f0].parc = 0;
ball[f0].gotoAndStop(f7);
ball[f0].v4 = 0;
ball[f0].v3 = 0;
ball[f0].v2 = 0;
ball[f0].v1 = 0;
ball[f0].bh = true;
ball[f0].what = what[f7];
switch (f7) {
case 2:
case 4:
case 6:
case 8:
case 10:
case 12:
case 14:
ball[f0].v1 = Math.random() * 80;
ball[f0].v2 = 0;
ball[f0].d.ready = true;
ball[f0].uniq = Math.random();
break;
case 13:
ball[f0].v1 = 0;
if (_root.gamemode == 1) {
ball[f0].v1 = -14;
}
}
if (f7 == 10) {
ball[f0].rp = 90;
}
ball[f0].bounced = 0;
ball[f0].bfra = 0;
switch (f7) {
return f0;
case 10:
ball[f0].v1 = -10;
soundy('blimp_foghorn.mp3', 100, ball[f0]);
return f0;
case 3:
soundy('bazooka_fire.mp3', 100, ball[f0]);
return f0;
case 5:
soundy('tank_fire.mp3', 100, ball[f0]);
return f0;
case 9:
soundy('helicopter_fire.mp3', 100, ball[f0]);
return f0;
case 13:
soundy('grenade_fire.mp3', 100, ball[f0]);
return f0;
case 15:
soundy('jet_fire.mp3', 100, ball[f0]);
return f0;
}
return f0;
}
function bounce(f0) {
if (f0.what == 2 or f0.what == 3) {
if (f0.bfra < fra - 6 && _root.gamemode != 3) {
scorec(-9 - f0.bounced);
++f0.bounced;
f0.bfra = fra;
}
}
}
function nadedelay(f0) {
if (f0.s == 13 && nadetime - nadeadd < f0.v1) {
f0.v1 = nadetime - nadeadd;
}
}
function diescore(f4) {
scorec(f4.s);
}
function nub(f0) {
f0 = Math.round(f0);
if (f0 == 0) {
f0 = 10;
}
return f0;
}
function scoreget(f4) {
switch (f4) {
return f4;
case 6:
f4 = 2;
return f4;
case 2:
case 12:
case 8:
f4 = 3;
return f4;
case 4:
case 14:
f4 = 4;
return f4;
case 10:
f4 = 5;
return f4;
}
return f4;
}
function scorec(f1) {
if (f1 > 1) {
if (_root.gamemode != 1) {
points += scoreg[scoreget(f1) - 1];
f1 = goframe[f1];
} else {
f1 = -10;
}
} else {
f1 *= -1;
points += (f1 - 8) * 10;
}
if (f1 > 0) {
++scorez;
namer = 'so' + scorez;
f0 = score.length;
tellTarget ('_root.n.s') {
_root.a.score[_root.a.f0] = attachMovie('scoreget', _root.a.namer, _root.a.scorez + 100);
}
score[f0]._y = -1000;
score[f0]._xscale = 50;
score[f0]._yscale = 50;
score[f0].gotoAndStop(f1);
if (f1 == 28) {
_root.medalg('Mega Combo');
}
_root.tex = f1;
}
}
function parc(f1, f2, f3, f4) {
if (Math.abs(player.xp - f2) < 450) {
if (Math.abs(player.yp - f3) < 500) {
++parz;
namer = 'p' + parz;
f0 = par.length;
par[f0] = attachMovie(f1, namer, parz + 100000);
par[f0]._x = f2;
par[f0]._y = f3;
if (f4 == undefined) {
f4 = Math.random() * 360;
}
par[f0]._rotation = f4;
par[f0].stop();
}
}
}
function explosion(f1, f2, f3, f4) {
for (a in ball) {
trg2 = ball[a];
xenf = trg2.xp - f2;
siz = sizes[trg2.s] + f4;
if (Math.abs(xenf) < siz) {
yenf = trg2.yp - f3;
if (Math.abs(xenf) < siz) {
enf = xenf * xenf + yenf * yenf;
if (enf > 0 && enf < siz * siz) {
enf = Math.sqrt(enf);
if (trg2.s == 1) {
v1 = ((siz - enf) / siz) * 18;
if (f4 < 150) {
hp -= v1;
}
v2 = rotget(xenf, yenf) + 180;
v3 = absmax(rotrund(v2 - trg2.rp), v1);
trg2.rbew += v3;
trg2.xbew += (xenf / enf) * v1;
trg2.ybew += (yenf / enf) * v1;
}
helideath(trg2);
peddeath(trg2);
parc('p3', trg2.xp, trg2.yp);
}
}
}
}
if (f1 != undefined) {
parc(f1, f2, f3);
}
}
function rotc(f0) {
if (Math.abs(f0) > 200) {
return f0 * 0.1;
} else {
return f0 * 0.5;
}
}
function t3d(f1, f2) {
f2 += f1._rotation;
f2 += 45;
while (f2 > 360) {
f2 -= 360;
}
while (f2 < 0) {
f2 += 360;
}
f1.gotoAndStop(Math.round((f2 / 360) * 72) + 1);
}
function soundvol(vol, x0) {
if (vol == undefined) {
vol = 100;
}
if (x0 != undefined) {
pan = x0.xp - player.xp;
pan *= 0.15;
vol *= 100 / (100 + Math.abs(pan));
pan = absmax(pan, 60);
}
return [pan, vol];
}
function soundy(nam, vol, x0, x3) {
if (!_root.soundoff) {
x2 = soundvol(vol, x0);
v0 = sz.length;
x5 = -1;
for (x4 in sz) {
if (sz[x4].v1 == x3) {
if (sz[x4].nam == nam) {
x5 = x4;
break;
}
}
}
if (x5 == -1) {
++szz;
sz[v0] = attachMovie('soundz', 'sz' + szz, szz + 2000000000);
sz[v0].nam = nam;
sz[v0].s = new Sound(sz[v0]);
sz[v0].s.attachSound(nam);
sz[v0].s.setVolume(x2[1]);
sz[v0].s.setPan(x2[0]);
if (x3 == undefined) {
sz[v0].s.start(0, 0);
} else {
sz[v0].s.start(0, 9999);
}
sz[v0].fra = fra;
sz[v0].v1 = x3;
return szz;
}
v0 = x5;
sz[v0].s.setVolume(x2[1]);
sz[v0].s.setPan(x2[0]);
sz[v0].fra = fra;
sz[v0].v1 = x3;
return szz;
}
}
function soundstopi() {
for (z in sz) {
trg = sz[z];
sz[z].s.stop();
trg.swapDepths(100);
removeMovieClip(trg);
}
sz = [];
}
function leavesound() {
lvsr = true;
_root.points = points;
_root.music.gotoAndStop(5);
for (z in sz) {
trg = sz[z];
if (trg.v1 != undefined) {
sz[z].s.stop();
sz.splice(z, 1);
trg.swapDepths(100);
removeMovieClip(trg);
}
}
}
function mhit(f1, f2) {
if (f2 < m.h._y) {
return m.hitTest(f1 + _x, f2 + _y, true);
} else {
return true;
}
}
function pull(f1, f2, f3, f4, f5) {
if (f1 == 0) {
v = 0.8;
} else {
v = 1.2;
}
v = 1;
f1 = ball[f1];
f2 = ball[f2];
f5 = leg[f5];
f5._x = f1._x;
f5._y = f1._y;
xenf = f1._x - f2._x;
yenf = f1._y - f2._y;
f5._rotation = (Math.atan(-xenf / yenf) / Math.PI) * 180 + 90;
if (yenf >= 0) {
f5._rotation += 180;
}
enf = Math.sqrt(xenf * xenf + yenf * yenf);
f5._xscale = enf;
f5._yscale = 50;
xenf = f1._x + f1.xbew - f2._x - f2.xbew;
yenf = f1._y + f1.ybew - f2._y - f2.ybew;
enf = Math.sqrt(xenf * xenf + yenf * yenf);
if (enf != 0) {
enf = (f3 - enf) / enf;
xenf *= enf * f4;
yenf *= enf * f4;
f1.xbew += xenf * v;
f1.ybew += yenf * v;
f2.xbew -= xenf / v;
f2.ybew -= yenf / v;
}
}
function helideath(f3, f4) {
switch (f3.s) {
case 8:
case 14:
if (!f3.d.ready) {
if (Math.random() < 0.9 && f3.dti + 15 < fra) {
f3.dead = true;
}
} else {
diescore(f3);
f3.dti = fra;
f3.d.ready = false;
}
break;
case 10:
if (f4 == 3 or f4 == 2) {
f3.d.ready = false;
diescore(f3);
}
}
}
function bulletdeath(f3) {
if (f3.what == 3 or f3.what == 2) {
if (_root.gamemode == 3) {
f3.what = 3;
} else {
if (f3.s != 13) {
f3.done = true;
}
switch (f3.s) {
if (f3.s !== 5) {
} else {
case 3:
parc('p2', f3.xp, f3.yp);
}
}
}
}
}
function peddeath(f4) {
switch (f4.s) {
return false;
case 2:
case 6:
case 12:
if (!f4.die) {
f4.die = true;
diescore(f4);
return true;
}
return false;
}
return false;
}
function bulletcheck(f1, f2) {
helideath(f1, f2.what);
switch (f1.s) {
case 13:
if (f2.s != 10 && f2.s != 4) {
break;
} else {
f2.done = true;
}
case 3:
case 5:
case 9:
case 15:
f3 = -1;
switch (f2.what) {
case 0:
f3 = 'p1';
f1.done = true;
break;
case 1:
f3 = 'p1';
f1.done = true;
if (!f2.die) {
diescore(f2);
f2.die = true;
}
_root.medalg('Backfire');
break;
case 4:
f3 = 'p1';
f1.done = true;
_root.medalg('Backfire');
}
if (f1.s == 9 && f1.done) {
f3 = -1;
}
if (f3 != -1) {
parc(f3, f1.xp, f1.yp);
}
if (f2.s == 1) {
hp -= 10;
}
}
}
function crand(f1) {
if (cra == undefined) {
cra = Math.random() * Math.PI * 2;
cra2 = Math.random() * f1;
return Math.cos(cra) * cra2;
} else {
f1 = Math.sin(cra) * cra2;
cra = undefined;
return f1;
}
}
levpoints = [0, 500, 6000, 20000, 50000, 75000, 0, 0, 0];
points = 0;
if (_root.golev > 0 && _root.story) {
points = levpoints[_root.golev];
}
maxguys2 = 0;
maxguys1 = 0;
guys2 = 0;
guys3 = 0;
guys1 = 0;
cspawn2 = 0;
cspawn1 = 0;
if (_root.story) {
storysetup();
} else {
v1 = Math.round(_root.maxspawn / 2);
v2 = _root.maxspawn - v1;
if (_root.lev1.length > 0) {
maxguys1 = v1;
}
if (_root.lev2.length > 0) {
maxguys2 = v2;
}
if (maxguys1 == 0) {
maxguys2 += v1;
}
if (maxguys2 == 0) {
maxguys1 += v2;
}
if (_root.lev1[_root.lev1.length - 1] == 4) {
tankspawn = 100;
_root.lev1.pop();
}
if (_root.lev2[_root.lev2.length - 1] == 10) {
blimpspawn = 500;
_root.lev2.pop();
}
if (_root.lev2.length == 0) {
if (blimpspawn > 0) {
blimpspawn = 0;
maxguys1 += maxguys2 - 1;
}
maxguys2 = 0;
}
if (_root.lev1.length == 0) {
guys3 -= maxguys1 - 2;
maxguys1 = 0;
}
}
longz = 40;
longy = 4;
bgzz = 3411;
nadegrav = 0.35;
nadetime = 90;
playerbreak = 1;
_root.g.gotoAndPlay(60);
timer = [];
alltimer = [0, 0, 0, 0, 0, 0, 0, 0, 0];
topz = function (cap) {
timer[cap] = getTimer();
};
tip = function (cap) {
alltimer[cap] += (getTimer() - timer[cap]) / 50;
};
bg.cacheAsBitmap = true;
m.cacheAsBitmap = true;
m.swapDepths(200000);
ballz = 0;
ball = [];
sizes = [5, 35, 20, 10, 40, 18, 20, 0, 45, 20, 45, 20, 20, 10, 40, 10];
masses = [0, 10, 5, 2, 5, 2, 5, 0, 5, 5, 5, 0, 5, 5, 5, 5];
hard = [1.570796326794897, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, 0.3];
rotat = [0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1];
wh = [0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1];
what = [0, 0, 1, 2, 1, 2, 1, 0, 4, 2, 4, 2, 1, 2, 4, 2];
wb = [];
hardx = [];
hardy = [];
++_root.diff;
for (e in hard) {
v1 = hard[e];
siz = sizes[e];
hardx[e] = [];
hardy[e] = [];
a = 0;
while (a < 6.283185307179586) {
hardx[e][hardx[e].length] = Math.sin(a) * siz;
hardy[e][hardy[e].length] = Math.cos(a) * siz;
a += v1;
}
}
hpdown = 4;
parz = 0;
score = [];
hang = 0;
scoreg = [10, 100, 250, 500, 2500];
goframe = [0, 0, 3, 0, 7, 0, 2, 0, 5, 0, 8, 0, 4, 0, 6];
scorez = 0;
par = [];
sz = [];
szz = 0;
player = ball[create(0, 50, 0, 0, 0, 0, 1)];
player.rp = 0.001;
Mouse.removeListener();
mouseListener = new Object();
mouseListener.onMouseDown = function () {};
mouseListener.onMouseUp = function () {};
Mouse.addListener(mouseListener);
unpause = true;
_root.pinfo = 2;
toaster = 0;
drawer = [];
e = 0;
while (e < 100) {
drawer[e] = createEmptyMovieClip('drawer' + e, 9999 - e);
++e;
}
fra = 0;
trg = ball[0];
f1 = trg.xp;
f2 = trg.yp;
trg.tailx = [f1, f1, f1];
trg.taily = [f2, f2, f2];
pedy = m._y + m.h._y;
plfff = 0;
plff = 0;
plf = 0;
healthx = _root.health._x;
hp = 100;
hpback = 0;
speedx = _root.speed._x;
spo = 100;
scorey = 0;
nadeadd = 30;
hardbe = 0;
switch (_root.gamemode) {
case 1:
nadeadd = 150;
_root.n.t.stop();
timelimit = 2700;
break;
case 2:
_root.n.t.stop();
timelimit = 1800;
break;
case 3:
_root.n.t.stop();
miss = 0;
}
}
frame 1 {
function onEnterFrame() {
if (!Key.isDown(27) && !Key.isDown(80) && !Key.isDown(32)) {
unspace = true;
}
if (!unpause) {
if (leavegame == 'menu') {
if (unl1) {
_root.pmen.pausego = 'unlock1';
} else {
if (unl2) {
_root.pmen.pausego = 'unlock2';
}
}
}
if ((Key.isDown(27) or Key.isDown(80) or Key.isDown(32) or _root.pmen.d._currentframe == _root.pmen.d._totalframes && _root.pmen.d._totalframes != undefined) && unspace) {
soundy('menubutton_click.mp3');
unspace = false;
if (_root.pmen.pausego == undefined) {
unpause = true;
} else {
v1 = _root.pmen.pausego;
_root.pmen.pausego = undefined;
_root.pmen.gotoAndStop(v1);
if (v1 == 'unlock1') {
unl1 = false;
}
if (v1 == 'unlock2') {
unl2 = false;
}
if (v1 == 'tut1') {
iq = getTimer();
}
if (v1 == 4) {
var v3 = true;
var v5 = com.Newgrounds.NewgroundsAPI.getMedals();
var v2 = 0;
while (v2 < v5.length) {
var v4 = v5[v2];
if (v4.medal_unlocked) {
v3 = false;
}
++v2;
}
if (v3) {
if (getTimer() - iq < 6000) {
_root.medalg('I am Illiterate');
} else {
if (getTimer() - iq > 12000) {
_root.medalg('I am Literate');
}
}
}
}
}
}
} else {
if (_root.music._currentframe == 5) {
_root.music.gotoAndStop(1);
}
if (leavegame != undefined) {
leavesound();
_root.gotoAndStop(leavegame);
}
if (_root.pmen._currentframe != 2) {
_root.pmen.gotoAndStop(2);
soundy('menubutton_click.mp3');
}
if (_root.gamemode > 0) {
if (!omgwtfbbq) {
unpause = false;
if (_root.gamemode == 4) {
_root.pmen.gotoAndStop(1);
} else {
_root.pmen.gotoAndStop('mode' + _root.gamemode);
}
omgwtfbbq = 1;
_root.pmen.pausego = undefined;
}
} else {
storysetup();
if (alev != _root.lev) {
if (_root.lev != 2) {
_root.diff = Math.max(_root.diff - 1, 0);
}
unpause = false;
_root.pmen.gotoAndStop('sce' + _root.lev);
if (_root.lev != 1) {
leavesound();
}
if (_root.lev != 3 && _root.lev != 6) {
_root.pmen.pausego = 'tut' + _root.lev;
}
if (_root.lev > _root.maxlev) {
so = SharedObject.getLocal('so');
_root.maxlev = _root.lev;
so.data.l = _root.maxlev;
so.flush();
if (_root.lev == 2) {
unl1 = true;
} else {
if (_root.lev == 3) {
unl2 = true;
}
}
}
if (_root.lev == 6) {
_root.medalg('Cavalier of Sperm');
if (hardbe > 5400) {
_root.medalg('Seed of Destruction');
}
_root.pmen.gotoAndStop('complete');
leavegame = 'complete';
}
}
alev = _root.lev;
}
for (e in sz) {
trg = sz[e];
if (trg.s.duration == trg.s.position or trg.fra < fra - 3 && trg.v1 != undefined) {
trg.s.stop();
sz.splice(e, 1);
trg.swapDepths(100);
removeMovieClip(trg);
}
}
++fra;
for (e in drawer) {
drawer[e].clear();
}
if ((Key.isDown(27) or Key.isDown(80)) && unspace) {
_root.pmen.gotoAndStop(1);
unpause = false;
unspace = false;
_root.pmen.pausego = undefined;
soundy('menubutton_click.mp3');
_root.medalg('Master of Time and Space');
}
topz(1);
for (e in par) {
trg = par[e];
if (trg.done) {
par.gotoAndStop(3);
removeMovieClip(par[e]);
par.splice(e, 1);
} else {
trg.nextFrame();
}
}
v1 = 42;
if (score.length == 0) {
scorey = v1;
} else {
v3 = score.length * 0.15 + 0.5;
v4 = (scorey - v1 / 2) / v1;
v4 = 1.7 - Math.abs(v4);
scorey -= v3 * v4 * 1.8;
if (scorey < -v1) {
score[0].done = true;
scorey += v1;
}
}
v2 = 0;
e = 0;
while (e < score.length) {
trg = score[e];
if (trg.done) {
removeMovieClip(score[e]);
score.splice(e, 1);
} else {
trg._y = v1 * e + scorey;
trg._xscale += 20;
trg._xscale *= 0.8;
trg._yscale = trg._xscale;
v2 += v1;
}
++e;
}
if (_root.diff == 0) {
++hardbe;
} else {
hardbe = 0;
}
trg = ball[0];
if (trg.yp < -800) {
trg.rbew += absmax(rotrund(90 - trg.rp) * 0.01, 5);
trg.ybew += 0.5;
}
yenf = 0;
xenf = 0;
if (Key.isDown(39)) {
++xenf;
}
if (Key.isDown(37)) {
--xenf;
}
if (Key.isDown(40) or Key.isDown(32)) {
--yenf;
}
if (Key.isDown(38) or Key.isDown(16)) {
++yenf;
}
if (yenf > 0) {
v1 = 1;
if (spo < v1) {
yenf = spo / v1;
spo = 0;
} else {
spo -= v1;
}
}
yenf += 1;
if (yenf == 1) {
v1 = Math.abs(trg.rbew);
v1 = 0.75 + v1 * v1 * v1 * 0.005;
if (v1 < 1 && v1 < playerbreak) {
playerbreak -= (playerbreak - 0.75) * 0.3;
} else {
if (v1 > 1.1 && v1 > playerbreak && v1 < 5) {
playerbreak += Math.min(1, v1 - 1);
xenf *= 1.15;
}
}
playerbreak *= 0.95;
playerbreak += v1 * 0.05;
yenf /= playerbreak;
xenf *= Math.min(1.15, 0.9 + playerbreak * 0.1);
} else {
if (yenf > 1) {
playerbreak = 0.75;
}
}
if (yenf < 0) {
spo += -(yenf - 1) * 0.3;
}
enf = Math.sqrt(trg.xbew * trg.xbew + trg.ybew * trg.ybew);
if (enf > 0) {
trg.rbew += xenf * 2 / Math.abs(enf * 0.035 + yenf * 0.6 + 0.5);
}
trg.rbew *= 0.8;
v1 = (trg.rp / 180) * Math.PI;
trg.xbew += Math.cos(v1) * yenf * 0.6;
trg.ybew += Math.sin(v1) * yenf * 0.6;
trg.xbew *= 0.95;
trg.ybew *= 0.95;
for (e in ball) {
trg = ball[e];
if (trg.d.expl) {
trg.d.expl = 0;
switch (trg.s) {
case 8:
soundy('helicopter_explode.mp3', 100, trg);
explosion(undefined, trg.xp, trg.yp, 140);
break;
case 14:
soundy('jet_explode.mp3', 100, trg);
explosion(undefined, trg.xp, trg.yp, 140);
break;
case 4:
soundy('tank_explode.mp3', 100, trg);
explosion(undefined, trg.xp, trg.yp, 100);
}
}
if (trg.d.done or trg.done) {
if (!trg.noexp) {
switch (trg.s) {
case 10:
explosion(undefined, trg.xp, trg.yp, 400);
soundy('blimp_explode.mp3', 100, trg);
break;
case 9:
explosion('p5', trg.xp, trg.yp, 130);
soundy('helicopter_missileexplodes.mp3', 100, trg);
break;
case 15:
explosion('p7', trg.xp, trg.yp, 130);
soundy('jet_missileexplode.mp3', 100, trg);
break;
case 5:
explosion('p6', trg.xp, trg.yp, 130);
soundy('tank_missileexplode.mp3', 100, trg);
break;
case 13:
explosion('p5', trg.xp, trg.yp, 130);
soundy('grenade_explode.mp3', 100, trg);
break;
case 3:
soundy('bullet_explode.mp3', 100, trg);
}
}
if (trg.what == 1) {
--guys1;
if (trg.s == 4) {
--guys3;
}
} else {
if (trg.what == 4) {
--guys2;
}
}
removeMovieClip(ball[e]);
ball.splice(e, 1);
}
}
e = 0;
while (e < ball.length) {
trg = ball[e];
if (trg.s != 13) {
enf = trg.xbew * trg.xbew + trg.ybew * trg.ybew;
var v3 = 1.0e-005;
if (trg.s !== 3) {
} else {
if (!trg.v2) {
v3 = 0;
}
}
v1 = 1 / (1 + enf * v3);
trg.xbew *= v1;
trg.ybew *= v1;
enf *= v1 * v1;
f1 = 23;
if (enf > f1 * f1) {
enf = f1 / Math.sqrt(enf);
trg.xbew *= enf;
trg.ybew *= enf;
}
}
++e;
}
for (e in ball) {
trg = ball[e];
if (trg.s == 10) {
if (trg.v1 > 0) {
trg.xbew = 0;
trg.ybew = 0;
}
}
trg.rbew *= 0.98;
trg.ybew += 0;
trg.rp += trg.rbew;
trg.xp += trg.xbew;
trg.yp += trg.ybew;
trg.gh = false;
--trg.parc;
if (trg.d.pla && fra % 3 == 0) {
trg.d.nextFrame();
}
}
topz(0);
e = 0;
while (e < ball.length) {
trg = ball[e];
a = e;
while (a < ball.length) {
trg2 = ball[a];
xenf = trg2.xp - trg.xp;
siz = sizes[trg.s] + sizes[trg2.s];
if (Math.abs(xenf) < siz) {
yenf = trg2.yp - trg.yp;
if (Math.abs(xenf) < siz) {
enf = xenf * xenf + yenf * yenf;
if (enf > 0 && enf < siz * siz) {
if (trg.bh && trg2.bh) {
v1 = Math.min(trg.what, trg2.what);
v2 = Math.max(trg.what, trg2.what);
if ((v1 == 0 || v2 != 2 && v1 != 2) && (v1 != 1 || v2 != 1) or trg.s == 10) {
trg.gh = true;
trg2.gh = true;
v = masses[trg.s] / (masses[trg.s] + masses[trg2.s]);
vv = 1 - v;
enf = Math.sqrt(enf);
bulletcheck(trg, trg2);
bulletcheck(trg2, trg);
f1 = (siz - enf) / enf;
trg.xp -= xenf * vv * f1;
trg.yp -= yenf * vv * f1;
trg2.xp += xenf * v * f1;
trg2.yp += yenf * v * f1;
xbewenf = trg2.xbew - trg.xbew;
ybewenf = trg2.ybew - trg.ybew;
bewenf = xbewenf * xbewenf + ybewenf * ybewenf;
if (bewenf > 0) {
bewenf = Math.sqrt(bewenf);
} else {
bewenf = 0;
}
enf = bewenf / enf;
if (e == 0) {
if (trg2.s == 13) {
nadedelay(trg2);
if (bewenf > 0.5) {
bewenf += 5;
trg2.ybew -= 5;
vv = 0.1;
v = 0.9;
bounce(trg2);
if (trg2.parc < 0) {
parc('p3', trg.tailx[v1], trg.taily[v1]);
soundy('taildeflect_bulletsgrenades.mp3', 100, trg2);
}
}
}
}
xenf *= enf;
yenf *= enf;
trg.xbew -= xenf * vv;
trg.ybew -= yenf * vv;
trg2.xbew += xenf * v;
trg2.ybew += yenf * v;
xbewenf1 = trg2.xbew + trg.xbew;
ybewenf1 = trg2.ybew + trg.ybew;
if (peddeath(trg)) {
soundy('pedestrian_squished' + random(4) + '.mp3', 100, trg);
}
if (peddeath(trg2)) {
soundy('pedestrian_squished' + random(4) + '.mp3', 100, trg2);
}
if (e == 0) {
if (trg2.s == 4) {
soundy('spermrider_hittank.mp3', 100, trg2);
}
}
if (rotat[trg.s] && rotat[trg2.s]) {
enf = xenf * xenf + yenf * yenf;
enf = Math.sqrt(enf);
if (enf > 0) {
xenf /= enf;
yenf /= enf;
}
roty = (sizes[trg2.s] + sizes[trg.s]) * Math.PI / 180;
f8 = yenf * xbewenf - xenf * ybewenf;
f9 = (-trg2.rbew - trg.rbew) * roty - f8;
f10 = (-trg2.rbew - trg.rbew) * roty - f8 * 2;
f9 = rotc(f9);
f10 = rotc(f10);
trg2.rbew += (f10 / roty) * v;
trg2.xbew += yenf * f9 * v;
trg2.ybew -= xenf * f9 * v;
trg.rbew += (f10 / roty) * vv;
trg.xbew -= yenf * f9 * vv;
trg.ybew += xenf * f9 * vv;
}
}
}
}
}
}
++a;
}
if (wh[trg.s]) {
f1 = trg.xp;
v3 = trg.yp;
f6 = 0;
f5 = 0;
siz = sizes[trg.s] + 2;
v1 = trg.s;
for (var v2 in hardx[v1]) {
if (mhit(f1 + hardx[v1][v2], v3 + hardy[v1][v2])) {
f5 += hardx[v1][v2];
f6 += hardy[v1][v2];
}
}
if (Math.abs(f5) > 0 && Math.abs(f6) > 0) {
roty = sizes[trg.s] * Math.PI / 180;
f7 = Math.sqrt(f5 * f5 + f6 * f6);
f5 /= f7;
f6 /= f7;
if (trg.rotn != undefined) {
trg.roty = (Math.atan(-f5 / f6) / Math.PI) * 180;
if (f6 >= 0) {
trg.roty += 180;
}
trg.rotn = 3;
}
f8 = -f5 * trg.xbew - f6 * trg.ybew;
if (f8 < 0.5) {
helideath(trg);
bulletdeath(trg);
if (trg.s == 13 && _root.gamemode == 1) {
trg.done = true;
}
trg.gh = true;
f9 = f8 * 1.8;
if (f9 < -10 && e == 0) {
soundy('spermrider_hitground.mp3');
}
trg.xbew += f5 * f9;
trg.ybew += f6 * f9;
siz = Math.sqrt(trg.xbew * trg.xbew + trg.ybew * trg.ybew);
if (siz > 0 && f8 < 0) {
f1 = trg.xp;
v3 = trg.yp;
v2 = sizes[trg.s] - 10;
for (;;) {
if (!(!mhit(f1 + f5 * v2, v3 + f6 * v2) && v2 < sizes[trg.s] + 10)) break;
v2 += 2;
}
v2 -= 2;
for (;;) {
if (!(!mhit(f1 + f5 * v2, v3 + f6 * v2) && v2 < sizes[trg.s] + 10)) break;
v2 += 0.5;
}
v2 -= sizes[trg.s];
v2 *= 0.6;
if (v2 > 0) {
v2 *= 0.2;
}
trg.xp += f5 * v2;
trg.yp += f6 * v2;
f8 = -f8 / siz;
f8 = 0.9 - f8 * 0.5;
if (rotat[trg.s]) {
if (trg.s != 1) {
trg.xbew *= f8;
trg.ybew *= f8;
}
f8 = -f6 * trg.xbew + f5 * trg.ybew;
f9 = trg.rbew * roty;
f9 += f8;
f9 = rotc(f9 * 4) / 4;
if (trg.s == 1) {
trg.rbew += (f9 / roty) * 0.15;
} else {
trg.rbew -= f9 / roty;
trg.xbew += f6 * f9;
trg.ybew -= f5 * f9;
}
}
}
}
}
}
++e;
}
v1 = Math.max(0, (maxguys1 - guys1) / maxguys1);
v1 = Math.sqrt(v1);
if (maxguys2 > 0) {
v2 = Math.max(0, (maxguys2 - guys2) / maxguys2);
v2 = Math.sqrt(v2);
cspawn2 -= v2;
}
cspawn1 -= v1;
if (guys3 < 2) {
--tankspawn;
}
if (blimp._currentframe == 1) {
--blimpspawn;
}
if (cspawn1 < 0 or cspawn2 < 0 or tankspawn < 0 or blimpspawn < 0) {
if (blimpspawn < 0) {
blimpspawn = 500;
v3 = 10;
} else {
if (tankspawn < 0) {
tankspawn = 70;
v3 = 4;
} else {
if (cspawn1 < 0) {
v3 = _root.lev1[random(_root.lev1.length)];
} else {
v3 = _root.lev2[random(_root.lev2.length)];
}
}
}
v1 = player.xp;
v4 = 570 + Math.random() * 150;
switch (what[v3]) {
case 1:
v2 = 300;
cspawn1 = 50;
++guys1;
if (v3 == 4) {
++guys3;
}
break;
case 4:
++guys2;
cspawn2 = 50;
if (v3 == 10) {
blimp.gotoAndStop(2);
v4 = 1000;
}
v2 = ball[0].yp + (Math.random() - 0.5) * 40;
v2 = Math.min(0, v2);
}
if (Math.random() > 0.5) {
v1 += v4;
} else {
v1 -= v4;
}
create(v1, v2, 0, 0, 0, 0, v3);
}
hpdown *= 0.9;
hpdown += 0.5;
moar();
}
}
}
}
movieClip 893 {
}
movieClip 895 {
}
movieClip 897 {
}
movieClip 901 {
}
movieClip 904 {
frame 2 {
stop();
}
}
movieClip 905 {
}
movieClip 906 {
}
button 909 {
on (release) {
_root.a.unpause = true;
}
}
button 910 {
on (release) {
_root.a.leavesound();
_root.a.leavegame = 'menu';
_root.a.unpause = true;
}
}
button 911 {
on (release) {
_root.music.gotoAndStop(5);
so = SharedObject.getLocal('so');
so.data.m = true;
_root.musicoff = so.data.m;
so.flush();
nextFrame();
}
}
button 914 {
on (release) {
_root.music.gotoAndPlay(2);
so = SharedObject.getLocal('so');
so.data.m = false;
_root.musicoff = so.data.m;
so.flush();
prevFrame();
}
}
movieClip 915 {
frame 1 {
if (_root.musicoff) {
nextFrame();
} else {
stop();
}
}
}
button 916 {
on (release) {
_root.soundoff = true;
_root.a.soundstopi();
nextFrame();
}
}
button 917 {
on (release) {
_root.soundoff = false;
prevFrame();
}
}
movieClip 918 {
frame 1 {
if (_root.soundoff) {
nextFrame();
} else {
stop();
}
}
}
button 919 {
on (release) {
_root.diff = 2;
gotoAndStop(1);
}
}
button 920 {
on (release) {
_root.diff = 1;
gotoAndStop(2);
}
}
button 921 {
on (release) {
_root.diff = 0;
gotoAndStop(3);
}
}
movieClip 923 {
frame 1 {
stop();
gotoAndStop(Math.round(3 - _root.diff));
}
}
movieClip 942 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 235 {
done();
}
}
movieClip 944 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 651 {
done();
}
}
movieClip 946 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 783 {
done();
}
}
movieClip 948 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 686 {
done();
}
}
movieClip 950 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 790 {
done();
}
}
movieClip 952 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 670 {
done();
}
}
movieClip 954 {
frame 1 {
function onEnterFrame() {
if (Key.isDown(32) or Key.isDown(27)) {
done();
}
}
}
frame 141 {
done();
}
}
movieClip 959 {
frame 3 {
pausego = _currentframe + 1;
}
}
movieClip 961 {
frame 1 {
if (_root.musicoff) {
gotoAndStop(5);
} else {
gotoAndPlay(2);
}
}
frame 3 {
stop();
}
}
frame 21 {
if (_root.localization_portal == 'game_com_cn') {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_gameover_moregames', '_blank');
};
}
}
movieClip 962 {
}
instance d of movieClip 962 {
onClipEvent (enterFrame) {
v1 = 37;
if (_currentframe < v1 or _currentframe == _totalframes) {
gotoAndStop(v1);
}
if (Math.random() < 0.9) {
nextFrame();
}
}
}
button 965 {
on (release) {
_root.gotoAndStop('menu');
}
}
frame 22 {
if (_root.localization_portal == 'game_com_cn') {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_gameover_moregames', '_blank');
};
}
}
frame 22 {
v0 = 1;
e = 1;
while (e < 9) {
trg = _root['n' + e];
if (points < v0) {
trg.gotoAndStop(11);
} else {
v0 *= 10;
v1 = Math.round(((points % v0) / v0) * 10 - 0.5);
if (v1 == 0) {
v1 = 10;
}
trg.gotoAndStop(v1);
}
++e;
}
}
frame 23 {
if (_root.localization_portal == 'game_com_cn') {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_gameover_moregames', '_blank');
};
}
}
frame 23 {
v0 = 1;
points /= 100;
e = 1;
while (e < 9) {
trg = _root['n' + e];
if (points < v0) {
trg.gotoAndStop(11);
} else {
v0 *= 10;
v1 = Math.round(((points % v0) / v0) * 10 - 0.5);
if (v1 == 0) {
v1 = 10;
}
trg.gotoAndStop(v1);
}
++e;
}
}
frame 24 {
if (_root.localization_portal == 'game_com_cn') {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1, '_blank');
};
} else {
this.gameover_moregames.onRelease = function () {
getURL(_root.localization_url1 + '&utm_content=button_gameover_moregames', '_blank');
};
}
}
frame 24 {
function nub(f0) {
f0 = Math.round(f0);
if (f0 == 0) {
f0 = 10;
}
return f0;
}
v1 = fra / 30;
v2 = v1 / 600 - 0.5;
v2 = Math.round(v2);
t4.gotoAndStop(nub(v2));
v1 -= v2 * 600;
v2 = v1 / 60 - 0.5;
v2 = Math.round(v2);
t3.gotoAndStop(nub(v2));
v1 -= v2 * 60;
v2 = v1 / 10 - 0.5;
v2 = Math.round(v2);
t2.gotoAndStop(nub(v2));
v1 -= v2 * 10;
v2 = v1 - 0.5;
v2 = Math.round(v2);
t1.gotoAndStop(nub(v2));
}