Frame 1
_root.NoDbConnections = false;
_root.DisableVGLinks = false;
_root.MochiBotEnabled = true;
_root.MochiAdEnabled = true;
Frame 2
if (_root.MochiAdEnabled) {
MochiAd.showPreloaderAd({id:"554bca6e8622b473", res:"540x540"});
}
Frame 3
function startGame() {
trace("startGame fn !");
this.play();
}
System.security.allowDomain("*");
System.security.allowInsecureDomain("*");
_quality = "HIGH";
var Config = new configuration(this);
var configFile = (_root.NoDbConnections ? "config_ndb.xml" : "config.xml");
trace("configFile: " + configFile);
Config.configConnection((_root.siteUrl + "config/") + configFile);
Config.checkIfIsDone();
stop();
Frame 4
function updatePreloader(loadedBytes, totalBytes) {
loadedBytes = Math.round(loadedBytes / 1024);
totalBytes = Math.round(totalBytes / 1024);
var _local1 = Math.round((loadedBytes / totalBytes) * 100);
loadedBytes_t.text = loadedBytes;
totalBytes_t.text = totalBytes;
if ((_local1 >= 10) && (round1 == false)) {
loader_mc.gotoAndPlay("one");
round1 = true;
}
if ((_local1 >= 20) && (round2 == false)) {
loader_mc.gotoAndPlay("two");
round2 = true;
}
if ((_local1 >= 30) && (round3 == false)) {
loader_mc.gotoAndPlay("three");
round3 = true;
}
if ((_local1 >= 40) && (round4 == false)) {
loader_mc.gotoAndPlay("four");
round4 = true;
}
if ((_local1 >= 50) && (round5 == false)) {
loader_mc.gotoAndPlay("five");
round5 = true;
}
if ((_local1 >= 60) && (round6 == false)) {
loader_mc.gotoAndPlay("six");
round6 = true;
}
if ((_local1 >= 70) && (round7 == false)) {
loader_mc.gotoAndPlay("seven");
round7 = true;
}
if ((_local1 >= 80) && (round8 == false)) {
loader_mc.gotoAndPlay("eight");
round8 = true;
}
if ((_local1 >= 90) && (round9 == false)) {
loader_mc.gotoAndPlay("nine");
round9 = true;
}
if ((_local1 >= 100) && (round10 == false)) {
loader_mc.gotoAndPlay("ten");
round10 = true;
}
}
var game_container = this.createEmptyMovieClip("game_container", 100);
var mc_listener = new Object();
mc_listener.parent = this;
mc_listener.onLoadProgress = function (target_mc, loadedBytes, totalBytes) {
this.parent.updatePreloader(loadedBytes, totalBytes);
};
var mc_loader = new MovieClipLoader();
mc_loader.loadClip(_root.siteUrl + "defender.swf", game_container);
mc_loader.addListener(mc_listener);
round1 = false;
round2 = false;
round3 = false;
round4 = false;
round5 = false;
round6 = false;
round7 = false;
round8 = false;
round9 = false;
round10 = false;
stop();
Frame 5
_root.indexCode = "MNBbgt56yhn$6Nvc~!-=";
_root.defenderCode = ":J[Y]|nF$$30m.v_P6h^";
game_container.play();
stop();
Symbol 14 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("1.5");
}
static function showPreloaderAd(options) {
var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local27);
var clip = options.clip;
var _local23 = 11000;
var _local26 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4);
_local7._x = 10;
_local7._y = _local13 - 20;
var _local22 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local24 = options.outline;
delete options.outline;
var _local5 = _local7.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local7.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local22);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local6 = _local7.createEmptyMovieClip("_outline", 3);
_local6.lineStyle(0, _local24, 100);
_local6.moveTo(0, 0);
_local6.lineTo(_local4 - 20, 0);
_local6.lineTo(_local4 - 20, 10);
_local6.lineTo(0, 10);
_local6.lineTo(0, 0);
chk.ad_msec = _local23;
chk.ad_timeout = _local26;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local12 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local10 = (100 * _local8) / _local4;
var _local11 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local2 = Math.min(100, Math.min(_local10 || 0, _local11));
_local2 = Math.max(this.last_pcnt, _local2);
this.last_pcnt = _local2;
_local9._xscale = _local2;
if (!chk.showing) {
var _local7 = _local12.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local5 > chk.ad_timeout) {
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showTimedAd(options) {
var _local13 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function _loadCommunicator(options) {
var _local25 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local25);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local18 = options.clip;
var _local20 = "_mochiad_com_" + options.id;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local18[_local20]) {
return(_local18[_local20].lc);
}
var _local21 = options.com_server + options.id;
_allowDomains(_local21);
delete options.id;
delete options.com_server;
var _local24 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local24);
var _local11 = _local17.createEmptyMovieClip("_mochiad_com", 1);
for (var _local15 in options) {
_local11[_local15] = options[_local15];
}
var _local6 = new LocalConnection();
var _local16 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local6.mc = _local17;
_local6.name = _local16;
_local6.allowDomain = function (d) {
return(true);
};
_local6.allowInsecureDomain = _local6.allowDomain;
_local6.connect(_local16);
_local17.lc = _local6;
_local11.lc = _local16;
_local6._id = 0;
_local6._queue = [];
_local6.rpcResult = function (cb) {
cb = parseInt(cb);
var _local4 = this._callbacks[cb];
if (!_local4) {
return(undefined);
}
delete this._callbacks[cb];
var _local5 = [];
var _local3 = 2;
while (_local3 < _local4.length) {
_local5.push(_local4[_local3]);
_local3++;
}
_local3 = 1;
while (_local3 < arguments.length) {
_local5.push(arguments[_local3]);
_local3++;
}
var _local6 = _local4[1];
var _local7 = _local4[0];
if (_local7 && (typeof(_local6) == "string")) {
_local6 = _local7[_local6];
}
if (_local6) {
_local6.apply(_local7, _local5);
}
};
_local6._didConnect = function (endpoint) {
this._endpoint = endpoint;
var _local4 = this._queue;
delete this._queue;
var _local5 = this.doSend;
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local5.apply(this, _local3);
_local2++;
}
};
_local6.doSend = function (args, cbobj, cbfn) {
if (this._endpoint == null) {
var _local4 = [];
var _local3 = 0;
while (_local3 < arguments.length) {
_local4.push(arguments[_local3]);
_local3++;
}
this._queue.push(_local4);
return(undefined);
}
this._id = this._id + 1;
var _local5 = this._id;
if ((cbfn === undefined) || (cbfn === null)) {
cbfn = cbobj;
}
this._callbacks[_local5] = [cbobj, cbfn];
var _local7 = new LocalConnection();
var _local9 = _local7.send(this._endpoint, "rpc", _local5, args);
};
_local6._callbacks = {};
_local6._callbacks[0] = [_local6, "_didConnect"];
_local11.st = getTimer();
_local11.loadMovie(_local21 + ".swf", "POST");
return(_local6);
}
static function fetchHighScores(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["fetchHighScores", options];
_local1.doSend(["fetchHighScores", options], callbackObj, callbackMethod);
return(true);
}
static function sendHighScore(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["sendHighScore", options];
_local1.doSend(["sendHighScore", options], callbackObj, callbackMethod);
return(true);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local7 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local7._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local7.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local7._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
if (_local7._url.indexOf("http") != 0) {
options.no_page = true;
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local9 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local9;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local9);
_local6.lc = _local5;
_local4.lc = _local9;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local4);
}
}
Symbol 15 MovieClip [__Packages.configuration] Frame 0
class configuration
{
var root, configdata, isDoneInterval;
function configuration (root) {
this.root = root;
_root.siteUrl = resolveURL(_root._url);
}
function configConnection(configConnectionUrl) {
trace("configConnection,configConnectionUrl: " + configConnectionUrl);
configdata = new XML();
configdata.ignoreWhite = true;
configdata.load(String(configConnectionUrl));
configdata.onLoad = mx.utils.Delegate.create(this, configdataloaded);
configdata.onHTTPStatus = function (httpStatus) {
this.httpStatus = httpStatus;
if (httpStatus < 100) {
this.httpStatusType = "flashError";
} else if (httpStatus < 200) {
this.httpStatusType = "informational";
} else if (httpStatus < 300) {
this.httpStatusType = "successful";
} else if (httpStatus < 400) {
this.httpStatusType = "redirection";
} else if (httpStatus < 500) {
this.httpStatusType = "clientError";
} else if (httpStatus < 600) {
this.httpStatusType = "serverError";
}
if (_root.DESIGNED_FOR_EXE_FILE) {
mApplication.trace("configConnection - httpStatusType: " + this.httpStatusType);
} else {
trace("configConnection - httpStatusType: " + this.httpStatusType);
}
};
}
function configdataloaded() {
grabTheArguments(configdata);
trace("_root.siteUrl: " + _root.siteUrl);
trace("_root.loadmaps: " + _root.loadmaps);
trace("_root.loadmap: " + _root.loadmap);
trace("_root.submitscore: " + _root.submitscore);
trace("_root.highscore: " + _root.highscore);
}
function grabTheArguments(configdata) {
for (var _local3 in configdata.firstChild.childNodes) {
switch (String(configdata.firstChild.childNodes[_local3].nodeName)) {
case "loadmaps" :
_root.loadmaps = String(configdata.firstChild.childNodes[_local3].firstChild.nodeValue);
break;
case "loadmap" :
_root.loadmap = String(configdata.firstChild.childNodes[_local3].firstChild.nodeValue);
break;
case "submitscore" :
_root.submitscore = String(configdata.firstChild.childNodes[_local3].firstChild.nodeValue);
break;
case "highscore" :
_root.highscore = String(configdata.firstChild.childNodes[_local3].firstChild.nodeValue);
break;
default :
if (_root.DESIGNED_FOR_EXE_FILE) {
mApplication.trace("ERROR - some new/unused args in config file!");
} else {
trace("ERROR - some new/unused args in config file!");
}
}
}
}
function checkIfIsDone() {
isDoneInterval = setInterval(this, "isDone", 100);
}
function isDone() {
trace("\nisDone fn values :");
trace("_root.siteUrl: " + _root.siteUrl);
trace("_root.loadmaps: " + _root.loadmaps);
trace("_root.loadmap: " + _root.loadmap);
trace("_root.submitscore: " + _root.submitscore);
trace("_root.highscore: " + _root.highscore);
trace("-------------------------------------------\n");
var _local3 = new Array();
_local3.push(_root.siteUrl);
_local3.push(_root.loadmaps);
_local3.push(_root.loadmap);
if (_root.NoDbConnections) {
} else {
_local3.push(_root.submitscore);
_local3.push(_root.highscore);
}
if (_local3.join().indexOf("undefined") == -1) {
trace("from configuration class isDone: allDone !");
clearInterval(isDoneInterval);
_root.configurationLoaded = true;
root.startGame();
} else {
_root.configurationLoaded = false;
}
}
function resolveURL(url) {
var _local4 = "http://";
var _local5 = ".swf";
var _local3 = "file:///";
trace("from resolve : url: " + url);
if (url.slice(0, _local3.length) != _local3) {
var _local2 = url.length;
if (url.lastIndexOf(_local5) != -1) {
url = url.slice(0, url.lastIndexOf("/"));
}
_local2 = url.length;
if (url.slice(_local2 - 1, _local2) != "/") {
url = url + "/";
}
if (url.indexOf(_local4) == -1) {
return(String(_local4 + url));
}
return(url);
}
return("");
}
function toString() {
return("Configuration Class Obj.");
}
}
Symbol 16 MovieClip [__Packages.mx.utils.Delegate] Frame 0
class mx.utils.Delegate extends Object
{
var func;
function Delegate (f) {
super();
func = f;
}
static function create(obj, func) {
var _local2 = function () {
var _local2 = arguments.callee.target;
var _local3 = arguments.callee.func;
return(_local3.apply(_local2, arguments));
};
_local2.target = obj;
_local2.func = func;
return(_local2);
}
function createDelegate(obj) {
return(create(obj, func));
}
}
Symbol 8 MovieClip Frame 1
stop();
Symbol 8 MovieClip Frame 6
stop();
Symbol 8 MovieClip Frame 11
stop();
Symbol 8 MovieClip Frame 16
stop();
Symbol 8 MovieClip Frame 21
stop();
Symbol 8 MovieClip Frame 26
stop();
Symbol 8 MovieClip Frame 31
stop();
Symbol 8 MovieClip Frame 36
stop();
Symbol 8 MovieClip Frame 41
stop();
Symbol 8 MovieClip Frame 46
stop();
Symbol 8 MovieClip Frame 55
stop();
_parent.play();