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) ? (getVersion()) : (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);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
__com_mochibot__("a98dce94", this, 10301, true);
mochi.MochiServices.connect("0a1ba6d0f26c6d86");
Instance of Symbol 451 MovieClip in Frame 1
//component parameters
onClipEvent (construct) {
xin_motion_val = "Toward";
xin_alphatype_val = "No";
xout_motion_val = "None";
xout_alphatype_val = "No";
perc_req_val = 100;
show_perc_val = "Yes";
slow_factor_val = 0.2;
init_action_val = "_root.stop();";
play_action_val = "_root.play();";
}
Frame 2
stop();
Frame 11
MochiAd.showPreGameAd({id:"0a1ba6d0f26c6d86", res:"600x480"});
Frame 21
stop();
Frame 22
var showingAds = false;
stop();
Instance of Symbol 646 MovieClip in Frame 22
//component parameters
onClipEvent (construct) {
game_data_file = "";
use_quiz = "False";
shuffle_questions = "True";
correct_points = 100;
incorrect_points = -50;
stage_width = 600;
stage_height = 480;
num_power_ups = 1;
num_power_ups_increase = 1;
maximum_num_power_ups = 15;
power_up_placement = "Random";
power_up_points = 150;
power_up_points_increase = 50;
incorrect_answer_handle = "Skip Power Up";
num_lives = 3;
num_points_extra_life = 1000;
obstacle_speed_increase = 0.5;
obstacle_delay_decrease = -1;
move_left_key = "LEFT";
move_right_key = "RIGHT";
move_up_key = "UP";
move_down_key = "DOWN";
player_move_displacement = 40;
num_player_move_increments = 4;
hit_go_back_speed = 5;
}
Frame 23
stop();
Symbol 379 MovieClip Frame 5
_parent.gotoAndStop("Standing");
Symbol 395 MovieClip Frame 31
this.gotoAndPlay(this._currentframe - 10);
Symbol 396 MovieClip [player] Frame 1
stop();
Symbol 451 MovieClip Frame 1
stop();
Instance of Symbol 450 MovieClip "swfloader" in Symbol 451 MovieClip Frame 1
onClipEvent (load) {
function strip_spaces(str) {
var _local3 = new String("");
var _local1 = 0;
while (_local1 < str.length) {
if ((str.charAt(_local1) != " ") && (str.charAt(_local1) != ";")) {
_local3 = _local3 + str.charAt(_local1);
}
_local1++;
}
return(_local3);
}
function simple_script(action, timeline) {
action = strip_spaces(action);
if ((action.length > 0) && ((action.indexOf(")") != -1) && (action.indexOf("(") != -1))) {
var _local3 = action.split(".");
var _local5 = _local3.pop();
var _local7 = _local5.indexOf("(");
var _local9 = _local5.indexOf(")");
var _local8 = _local5.substr(0, _local7);
var _local4 = _local5.substr(_local7 + 1, _local9 - (_local7 + 1));
var _local2 = timeline;
var _local1 = 0;
while (_local1 < _local3.length) {
_local2 = _local2[_local3[_local1]];
_local1++;
}
if (_local4.indexOf("\"") != -1) {
_local4 = _local4.substr(1, _local4.length - 2);
}
_local2[_local8](_local4);
}
}
function execute_action() {
unloaded = true;
_parent._visible = false;
simple_script(_parent.play_action_val, _parent);
}
_parent.anim.gotoAndStop(1);
simple_script(_parent.init_action_val, _parent);
var done = false;
var unloaded = false;
var orig_x = _parent._x;
var orig_y = _parent._y;
var dist_x = (_parent._x + ((_parent._width * 2) / 3));
var dist_y = (_parent._y + ((_parent._height * 2) / 3));
var orig_a = _parent._alpha;
var accel_jump = 0.75;
var slow_factor = _parent.slow_factor_val;
var speed_factor = (1 + (slow_factor / (1 - slow_factor)));
var ready = false;
var perc_fadeout = 0;
_parent.perc._x = _parent.anim._x - (_parent.perc._width / 2);
_parent.perc._y = _parent.anim._y - (_parent.perc._height / 2);
if (slow_factor < 1) {
switch (_parent.xin_motion_val) {
case "Up" :
_parent._y = orig_y + (dist_y * 2);
break;
case "Down" :
_parent._y = orig_y - (dist_y * 2);
break;
case "Left" :
_parent._x = orig_x + (dist_x * 2);
break;
case "Right" :
_parent._x = orig_x - (dist_x * 2);
break;
case "Toward" :
_parent._xscale = (_parent._yscale = 1);
break;
case "None" :
_parent._alpha = 0;
}
} else {
ready = true;
}
}
onClipEvent (enterFrame) {
if (unloaded) {
return(undefined);
}
if (!ready) {
switch (_parent.xin_motion_val) {
case "Toward" :
_parent._xscale = _parent._xscale + ((100 - _parent._xscale) * slow_factor);
_parent._yscale = _parent._xscale;
if (_parent.xin_alphatype_val == "Yes") {
_parent._alpha = Math.round((orig_a / 100) * Math.max(0, Math.min(_parent._xscale, 100)));
}
if (Math.abs(100 - _parent._xscale) < 0.5) {
_parent._xscale = (_parent._yscale = 100);
_parent._alpha = orig_a;
ready = true;
}
break;
default :
_parent._x = _parent._x + ((orig_x - _parent._x) * slow_factor);
_parent._y = _parent._y + ((orig_y - _parent._y) * slow_factor);
if (_parent.xin_alphatype_val == "Yes") {
if (_parent.xin_motion_val == "None") {
_parent._alpha = _parent._alpha + ((orig_a - _parent._alpha) * slow_factor);
} else if (Math.abs(orig_x - _parent._x) > Math.abs(orig_y - _parent._y)) {
_parent._alpha = 100 - Math.round(((orig_a / 100) * (Math.min(dist_x, Math.abs(_parent._x - orig_x)) / dist_x)) * 100);
} else {
_parent._alpha = 100 - Math.round(((orig_a / 100) * (Math.min(dist_y, Math.abs(_parent._y - orig_y)) / dist_y)) * 100);
}
}
if (!(((_parent.xin_motion_val == "None") && (Math.abs(_parent._alpha - orig_a) <= 1)) || (((_parent.xin_motion_val != "None") && (Math.abs(_parent._y - orig_y) < 0.5)) && (Math.abs(_parent._x - orig_x) < 0.5)))) {
break;
}
_parent._x = orig_x;
_parent._y = orig_y;
_parent._alpha = orig_a;
ready = true;
}
} else if (!done) {
var rl = _root.getBytesLoaded();
var rt = (_root.getBytesTotal() * (_parent.perc_req_val / 100));
if ((rl > 10) && (rt > 10)) {
rl = Math.min(rl, rt);
var new_frame = (_parent.anim._currentframe + Math.ceil(((_parent.anim._totalframes * (rl / rt)) - _parent.anim._currentframe) / 4));
new_frame = Math.max(1, new_frame);
if (_parent.show_perc_val == "Yes") {
_parent.perc.text = Math.round(((new_frame - 1) / (_parent.anim._totalframes - 1)) * 100) + " %";
}
if (new_frame != _parent.anim._currentframe) {
_parent.anim.gotoAndStop(new_frame);
}
if ((_parent.anim._totalframes == _parent.anim._currentframe) && (rl >= rt)) {
done = true;
}
}
} else if (slow_factor < 1) {
switch (_parent.xout_motion_val) {
case "Down" :
if (_parent._y <= orig_y) {
_parent._y = orig_y + accel_jump;
}
_parent._y = orig_y + (Math.abs(_parent._y - orig_y) * speed_factor);
perc_fadeout = Math.round((Math.min(dist_y, Math.abs(_parent._y - orig_y)) / dist_y) * 100);
if (_parent._y > (orig_y + (dist_y * 2))) {
execute_action();
}
break;
case "Up" :
if (_parent._y >= orig_y) {
_parent._y = orig_y - accel_jump;
}
_parent._y = orig_y - (Math.abs(_parent._y - orig_y) * speed_factor);
perc_fadeout = Math.round((Math.min(dist_y, Math.abs(_parent._y - orig_y)) / dist_y) * 100);
if (_parent._y < (orig_y - (dist_y * 2))) {
execute_action();
}
break;
case "Right" :
if (_parent._x <= orig_x) {
_parent._x = orig_x + accel_jump;
}
_parent._x = orig_x + (Math.abs(_parent._x - orig_x) * speed_factor);
perc_fadeout = Math.round((Math.min(dist_x, Math.abs(_parent._x - orig_x)) / dist_x) * 100);
if (_parent._x > (orig_x + (dist_x * 2))) {
execute_action();
}
break;
case "Left" :
if (_parent._x >= orig_x) {
_parent._x = orig_x - accel_jump;
}
_parent._x = orig_x - (Math.abs(_parent._x - orig_x) * speed_factor);
perc_fadeout = Math.round((Math.min(dist_x, Math.abs(_parent._x - orig_x)) / dist_x) * 100);
if (_parent._x < (orig_x - (dist_x * 2))) {
execute_action();
}
break;
case "Away" :
if ((_parent._xscale >= 100) || (_parent._yscale >= 100)) {
_parent._xscale = (_parent._yscale = 100 - accel_jump);
}
_parent._xscale = (_parent._yscale = Math.max(0.5, 100 - ((100 - _parent._yscale) * speed_factor)));
perc_fadeout = 100 - Math.round(Math.max(0, Math.min(_parent._xscale, 100)));
if (_parent._xscale < 1) {
execute_action();
}
break;
default :
perc_fadeout = perc_fadeout + ((100 - perc_fadeout) * slow_factor);
if (Math.abs(perc_fadeout - 100) > 1) {
break;
}
execute_action();
}
if (!(_parent.xout_alphatype_val === "Yes")) {
} else {
_parent._alpha = (orig_a / 100) * (100 - perc_fadeout);
}
} else {
execute_action();
}
}
Symbol 659 MovieClip [__Packages.mochi.MochiServices] Frame 0
class mochi.MochiServices
{
static var _id, _container, _clip, _sendChannelName, _rcvChannelName, __get__comChannelName, onError, _listenChannel, _rcvChannel, _loader, _loaderListener, _sendChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function get childClip() {
return(_clip);
}
static function getVersion() {
return("1.31");
}
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 get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
_rcvChannelName = val;
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
if ((!_connected) && (_clip == undefined)) {
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
}
if (onError != undefined) {
mochi.MochiServices.onError = onError;
} else if (mochi.MochiServices.onError == undefined) {
mochi.MochiServices.onError = function (errorCode) {
trace(errorCode);
};
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
flush(true);
if (_clip != undefined) {
_clip.removeMovieClip();
delete _clip;
}
_listenChannel.close();
_rcvChannel.close();
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip;
} else {
_container = _root;
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
var _local2 = "_mochiservices_com_" + id;
if (_clip != null) {
return(_clip);
}
if (!isNetworkAvailable) {
return(null);
}
allowDomains(_gatewayURL);
_clip = clip.createEmptyMovieClip(_local2, 10336, false);
_loader = new MovieClipLoader();
if (_loaderListener.waitInterval != null) {
clearInterval(_loaderListener.waitInterval);
}
_loaderListener = {};
_loaderListener.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("MochiServices could not load.");
mochi.MochiServices.disconnect();
mochi.MochiServices.onError.apply(null, [errorCode]);
};
_loaderListener.onLoadStart = function (target_mc) {
this.isLoading = true;
};
_loaderListener.startTime = getTimer();
_loaderListener.wait = function () {
if ((getTimer() - this.startTime) > 10000) {
if (!this.isLoading) {
mochi.MochiServices.disconnect();
mochi.MochiServices.onError.apply(null, ["IOError"]);
}
clearInterval(this.waitInterval);
}
};
_loaderListener.waitInterval = setInterval(_loaderListener, "wait", 1000);
_loader.addListener(_loaderListener);
_loader.loadClip(_gatewayURL, _clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
_rcvChannel = new LocalConnection();
_rcvChannel.allowDomain = function (d) {
return(true);
};
_rcvChannel.allowInsecureDomain = _rcvChannel.allowDomain;
_rcvChannel._nextcallbackID = 0;
_rcvChannel._callbacks = {};
listen();
return(_clip);
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
mochi.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel.connect(_listenChannelName);
trace("Waiting for MochiAds services to connect...");
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_clip, version:getVersion()});
_rcvChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_rcvChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_rcvChannel.onError = function () {
mochi.MochiServices.onError.apply(null, ["IOError"]);
};
_rcvChannel.connect(_rcvChannelName);
trace("connected!");
_connecting = false;
_connected = true;
_listenChannel.close();
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function flush(error) {
var _local1;
var _local2;
while (_sendChannel._queue.length > 0) {
_local1 = _sendChannel._queue.shift();
if (_local1.callbackID != null) {
_local2 = _rcvChannel._callbacks[_local1.callbackID];
}
delete _rcvChannel._callbacks[_local1.callbackID];
if (error) {
handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod);
}
}
}
static function handleError(args, callbackObject, callbackMethod) {
if (args != null) {
if (args.onError != null) {
args.onError.apply(null, ["NotConnected"]);
}
}
if (callbackMethod != null) {
args = {};
args.error = true;
args.errorCode = "NotConnected";
if ((callbackObject != null) && (typeof(callbackMethod) == "string")) {
callbackObject[callbackMethod](args);
} else if (callbackMethod != null) {
callbackMethod.apply(args);
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
} else {
if ((_clip == undefined) || (!_connecting)) {
onError.apply(null, ["NotConnected"]);
handleError(args, callbackObject, callbackMethod);
flush(true);
return(undefined);
}
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
}
_rcvChannel._callbacks[_rcvChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_rcvChannel._nextcallbackID++;
}
static var _gatewayURL = "http://www.mochiads.com/static/lib/services/services.swf";
static var _listenChannelName = "__mochiservices";
static var _connecting = false;
static var _connected = false;
}
Symbol 660 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.1");
}
static function showPreGameAd(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 showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:10, 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.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 - 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 showTimedAd(options) {
showInterLevelAd(options);
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
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 _local26 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local26);
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 _local25 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local25);
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_arg) {
var _local8 = parseInt(cb_arg);
var _local4 = this._callbacks[_local8];
if (!_local4) {
return(undefined);
}
delete this._callbacks[_local8];
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 _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
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 _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_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 661 MovieClip [__Packages.mochi.MochiScores] Frame 0
class mochi.MochiScores
{
static var boardID, onClose, onError;
function MochiScores () {
}
static function setBoardID(boardID) {
mochi.MochiScores.boardID = boardID;
mochi.MochiServices.send("scores_setBoardID", {boardID:boardID});
}
static function showLeaderboard(options) {
if (options.clip != null) {
if ((options.clip != mochi.MochiServices.__get__clip()) || (mochi.MochiServices.__get__childClip()._target == undefined)) {
mochi.MochiServices.disconnect();
mochi.MochiServices.connect(mochi.MochiServices.__get__id(), options.clip);
}
delete options.clip;
}
if (options.name != null) {
if (typeof(options.name) == "object") {
if (options.name.text != undefined) {
options.name = options.name.text;
}
}
}
if (options.score != null) {
if (typeof(options.score) == "object") {
if (options.score.text != undefined) {
options.score = options.score.text;
}
}
}
if (options.onDisplay != null) {
options.onDisplay();
} else {
mochi.MochiServices.__get__clip().stop();
}
if (options.onClose != null) {
onClose = options.onClose;
} else {
onClose = function () {
mochi.MochiServices.__get__clip().play();
};
}
if (options.onError != null) {
onError = options.onError;
} else {
onError = onClose;
}
if (options.boardID == null) {
if (boardID != null) {
options.boardID = boardID;
}
}
mochi.MochiServices.send("scores_showLeaderboard", {options:options}, null, doClose);
}
static function closeLeaderboard() {
mochi.MochiServices.send("scores_closeLeaderboard");
}
static function getPlayerInfo(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod);
}
static function submit(score, name, callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod);
}
static function requestList(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_requestList", null, callbackObj, callbackMethod);
}
static function scoresArrayToObjects(scores) {
var _local5 = {};
var _local1;
var _local4;
var _local2;
var _local6;
for (var _local8 in scores) {
if (typeof(scores[_local8]) == "object") {
if ((scores[_local8].cols != null) && (scores[_local8].rows != null)) {
_local5[_local8] = [];
_local2 = scores[_local8];
_local4 = 0;
while (_local4 < _local2.rows.length) {
_local6 = {};
_local1 = 0;
while (_local1 < _local2.cols.length) {
_local6[_local2.cols[_local1]] = _local2.rows[_local4][_local1];
_local1++;
}
_local5[_local8].push(_local6);
_local4++;
}
} else {
_local5[_local8] = {};
for (var _local7 in scores[_local8]) {
_local5[_local8][_local7] = scores[_local8][_local7];
}
}
} else {
_local5[_local8] = scores[_local8];
}
}
return(_local5);
}
static function doClose(args) {
if (args.error == true) {
if (args.errorCode == undefined) {
args.errorCode = "IOError";
}
onError.apply(null, [args.errorCode]);
} else {
onClose.apply();
}
}
}
Symbol 473 MovieClip Frame 1
Symbol 473 MovieClip Frame 198
_root.gotoAndStop("splash2");
Symbol 479 Button
on (press) {
this.play();
}
Symbol 483 Button
on (release) {
this._parent.inst.gotoAndPlay("On");
gotoAndStop ("i2");
}
Symbol 484 Button
on (release) {
this._parent.inst.gotoAndPlay("Off");
gotoAndStop ("i1");
}
Symbol 485 MovieClip Frame 1
stop();
Symbol 485 MovieClip Frame 2
stop();
Symbol 490 Button
on (release) {
getURL ("http://www.yougame.com", "_top");
}
Symbol 494 Button
on (release) {
getURL ("http://www.yougame.com", "_top");
}
Symbol 498 Button
on (release) {
mochi.MochiScores.showLeaderboard({boardID:"134ecc9a983dd75e", onClose:function () {
}});
}
Symbol 504 MovieClip Frame 1
stop();
Symbol 504 MovieClip Frame 17
stop();
Symbol 504 MovieClip Frame 34
gotoAndStop (1);
Symbol 507 MovieClip Frame 1
function init() {
trace("init============================================================================");
_parent.game.initialize();
}
Symbol 563 MovieClip Frame 1
stop();
Symbol 565 Button
on (press) {
_parent._parent.game.evaluate_answer(this);
}
Symbol 591 MovieClip Frame 1
stop();
Symbol 591 MovieClip Frame 20
stop();
Symbol 591 MovieClip Frame 108
_parent.game.answer_prompt_done();
this.gotoAndStop(2);
Symbol 591 MovieClip Frame 208
_parent.game.answer_prompt_done();
this.gotoAndStop(2);
Symbol 625 MovieClip Frame 1
stop();
Symbol 625 MovieClip Frame 2
trace("level:" + _parent.game.current_level);
stop();
if (_parent.game.current_level > 0) {
if (!_root.showingAds) {
_root.showingAds = true;
MochiAd.showInterLevelAd({id:"0a1ba6d0f26c6d86", res:"600x480", ad_finished:function () {
_root.showingAds = false;
play();
}});
}
} else {
play();
}
Symbol 625 MovieClip Frame 69
_parent.game.level_prompt_done_playing();
Symbol 642 MovieClip Frame 1
stop();
Symbol 645 MovieClip Frame 1
this.stop();
Symbol 646 MovieClip Frame 1
Number.prototype.randi = function (a, b) {
return(Math.floor(Math.random() * (b - a)) + Math.floor(a));
};
Number.prototype.randf = function (a, b) {
return((Math.random() * (b - a)) + a);
};
Number.prototype.randa = function () {
return(arguments.rande());
};
Number.prototype.sign = function (a) {
return(((a == 0) ? 0 : (Math.abs(a) / a)));
};
Array.prototype.toNumber = function () {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < this.length) {
if (typeof(this[_local2]) == "string") {
_local3[_local2] = Number(this[_local2]);
} else {
_local3[_local2] = this[_local2].toNumber();
}
_local2++;
}
return(_local3);
};
Array.prototype.swap = function (a, b) {
var _local2 = this[a];
this[a] = this[b];
this[b] = _local2;
};
Array.prototype.shuffle = function () {
var _local3 = new Number();
var _local2 = 0;
while (_local2 < this.length) {
this.swap(_local2, _local3.randi(0, this.length));
_local2++;
}
};
Array.prototype.rande = function () {
var _local2 = new Number();
return(this[_local2.randi(0, this.length)]);
};
Array.prototype.split2D = function (delimeter) {
var _local3 = new Array();
var _local2 = 0;
while (_local2 < this.length) {
_local3[_local2] = this[_local2].split(delimeter);
_local2++;
}
return(_local3);
};
Array.prototype.sortNum = function () {
this.sort(function (a, b) {
return(((a > b) ? 1 : -1));
});
};
Array.prototype.sortNum2D = function () {
var _local2 = 0;
while (_local2 < this.length) {
this[_local2].sortNum();
_local2++;
}
};
FroggerGame = function () {
this.load_game_data();
};
FroggerGame.prototype.game_data_file = game_data_file;
FroggerGame.prototype.use_quiz = use_quiz;
FroggerGame.prototype.shuffle_questions = shuffle_questions;
FroggerGame.prototype.correct_points = Number(correct_points);
FroggerGame.prototype.incorrect_points = Number(incorrect_points);
FroggerGame.prototype.stage_width = Number(stage_width);
FroggerGame.prototype.stage_height = Number(stage_height);
FroggerGame.prototype.num_power_ups = Number(num_power_ups);
FroggerGame.prototype.num_power_ups_increase = Number(num_power_ups_increase);
FroggerGame.prototype.maximum_num_power_ups = Number(maximum_num_power_ups);
FroggerGame.prototype.power_up_placement = power_up_placement;
FroggerGame.prototype.power_up_points = Number(power_up_points);
FroggerGame.prototype.power_up_points_increase = Number(power_up_points_increase);
FroggerGame.prototype.incorrect_answer_handle = incorrect_answer_handle;
FroggerGame.prototype.worm_points = Number(worm_points);
FroggerGame.prototype.worm_points_increase = Number(worm_points_increase);
FroggerGame.prototype.num_lives = Number(num_lives);
FroggerGame.prototype.num_points_extra_life = Number(num_points_extra_life);
FroggerGame.prototype.obstacle_speed_increase = Number(obstacle_speed_increase);
FroggerGame.prototype.obstacle_delay_decrease = Number(obstacle_delay_decrease);
FroggerGame.prototype.move_left_key = move_left_key;
FroggerGame.prototype.move_right_key = move_right_key;
FroggerGame.prototype.move_up_key = move_up_key;
FroggerGame.prototype.move_down_key = move_down_key;
FroggerGame.prototype.player_move_displacement = Number(player_move_displacement);
FroggerGame.prototype.num_player_move_increments = Number(num_player_move_increments);
FroggerGame.prototype.hit_go_back_speed = Number(hit_go_back_speed);
FroggerGame.prototype.timeline = this;
FroggerGame.prototype.load_game_data = function () {
};
FroggerGame.prototype.initialize = function () {
this.initialize_variables();
this.initialize_graphics();
this.initialize_level();
};
FroggerGame.prototype.initialize_variables = function () {
this._num = new Number();
this.paused = false;
this.depth = 0;
this.current_level = 0;
this.current_frame = 1;
this.score = 0;
this.player_lives = this.num_lives;
this.lanes = new Array();
this.power_up = undefined;
this.num_remaining_power_ups = 0;
this.obstacles = new Array();
this.player_speed = this.player_move_displacement / this.num_player_move_increments;
this.outside_velocity = 0;
this.obstacles_position.sortNum2D();
};
FroggerGame.prototype.initialize_graphics = function () {
this.create_player_graphics();
};
FroggerGame.prototype.create_player_graphics = function () {
this.timeline.attachMovie("player", "player", 12000 + (this.depth++));
this.timeline.player.final_x = 0;
this.timeline.player.final_y = 0;
};
FroggerGame.prototype.initialize_level = function () {
this.remove_previous_graphics();
this.initialize_theme();
this.initialize_beginning_obstacles();
this.initialize_power_up();
};
FroggerGame.prototype.remove_previous_graphics = function () {
this.remove_obstacles();
};
FroggerGame.prototype.remove_obstacles = function () {
var _local3 = 0;
while (_local3 < this.lanes.length) {
var _local2 = 0;
while (_local2 < this.lanes[_local3].obstacles.length) {
this.lanes[_local3].obstacles[_local2].unloadMovie();
_local2++;
}
_local3++;
}
};
FroggerGame.prototype.initialize_theme = function () {
this.timeline.backgrounds.gotoAndStop((this.current_level % this.timeline.backgrounds._totalframes) + 1);
this.current_theme = this.themes[this.timeline.backgrounds._currentframe - 1];
this.num_remaining_power_ups = Math.min(this.num_power_ups + (this.current_level * this.num_power_ups_increase), this.maximum_num_power_ups);
this.lanes = new Array();
var _local2 = 0;
while (_local2 < this.current_theme.num_lanes) {
this.lanes[_local2] = new Object();
this.lanes[_local2].position_y = this.current_theme.lanes_y[_local2];
this.lanes[_local2].inversion = this.current_theme.lane_inversions[_local2];
this.lanes[_local2].linkages = this.current_theme.lane_linkages[_local2];
this.lanes[_local2].speed = Math.min(Math.abs(this.current_theme.lane_speeds[_local2]) + (Math.floor(this.current_level / this.timeline.backgrounds._totalframes) * this.obstacle_speed_increase), Math.abs(this.current_theme.max_lane_speeds[_local2])) * this._num.sign(this.current_theme.lane_speeds[_local2]);
this.lanes[_local2].add_obstacle_delay = Math.max(this.current_theme.add_obstacle_delay[_local2] + (Math.floor(this.current_level / this.timeline.backgrounds._totalframes) * this.obstacle_delay_decrease), this.current_theme.min_obstacle_delay[_local2]);
this.lanes[_local2].level = _local2;
this.lanes[_local2].obstacles = new Array();
_local2++;
}
this.timeline.player._x = (this.timeline.player.final_x = this.current_theme.start_point_x);
this.timeline.player._y = (this.timeline.player.final_y = this.current_theme.start_point_y);
this.timeline.level_prompt.level = this.current_level + 1;
trace("dadasdadasddsadasdasdasdasdasdasdasdasdasdasdsadddddddddddddddddddddd:" + this.timeline.level_prompt.level);
this.timeline.level_prompt.gotoAndStop(2);
this.paused = true;
};
FroggerGame.prototype.initialize_beginning_obstacles = function () {
var _local3 = 0;
while (_local3 < this.lanes.length) {
var _local2 = ((this._num.sign(this.lanes[_local3].speed) == 1) ? (this._num.randf(1, 100)) : (this.stage_width - this._num.randf(1, 100)));
while ((_local2 > 0) && (_local2 < this.stage_width)) {
this.create_obstacle(_local2, this.lanes[_local3]);
_local2 = _local2 + (this._num.sign(this.lanes[_local3].speed) * 400);
}
_local3++;
}
};
FroggerGame.prototype.create_obstacle = function (starting_x, lane) {
var _local4 = lane.linkages.rande();
this.depth++;
this.timeline.attachMovie(_local4, "obstacle" + this.depth, this.depth);
var _local2 = this.timeline["obstacle" + this.depth];
_local2._x = starting_x;
_local2._y = lane.position_y;
_local2._xscale = _local2._xscale * this._num.sign(lane.speed);
_local2.speed = lane.speed;
lane.obstacles.push(_local2);
return(_local2);
};
FroggerGame.prototype.initialize_power_ups = function () {
var _local4 = Math.min(this.num_power_ups + (this.current_level * this.num_power_ups_increase), this.maximum_num_power_ups);
var _local3 = 0;
while (_local3 < _local4) {
this.depth++;
this.timeline.attachMovie("power_up", "power_up" + this.depth, this.depth + 10000);
var _local2 = this.timeline["power_up" + this.depth];
if (_local3 == 0) {
_local2._x = this.current_theme.end_point_x;
_local2._y = this.current_theme.end_point_y;
} else {
_local2._x = this._num.randf(100, this.stage_width - 100);
_local2._y = this._num.randf(this.lanes[0].position_y, this.lanes[this.lanes.length - 1].position_y);
}
this.power_ups.push(_local2);
_local3++;
}
};
FroggerGame.prototype.initialize_power_up = function () {
this.num_remaining_power_ups--;
if (this.num_remaining_power_ups < 0) {
return(undefined);
}
this.depth++;
this.timeline.attachMovie("power_up", "power_up" + this.depth, this.depth + 10000);
var _local2 = this.timeline["power_up" + this.depth];
if (this.power_up_placement == "Random") {
if (this.num_remaining_power_ups == 0) {
_local2._x = this.current_theme.end_point_x;
_local2._y = this.current_theme.end_point_y;
} else {
_local2._x = this._num.randf(100, this.stage_width - 100);
_local2._y = this._num.randf(this.lanes[0].position_y, this.lanes[this.lanes.length - 1].position_y);
}
} else {
var _local3 = (this.current_theme.start_point_y + this.current_theme.end_point_y) / 2;
_local2._x = this._num.randf(100, this.stage_width - 100);
_local2._y = (Math.pow(-1, this.num_remaining_power_ups + 1) * Math.abs(_local3 - this.current_theme.end_point_y)) + _local3;
}
this.power_up = _local2;
};
FroggerGame.prototype.action = function () {
this.move_player();
this.move_all_obstacles();
this.check_player_safety();
this.update_properties();
if ((this.num_remaining_power_ups < 0) && (this.timeline.player._mc._totalframes == this.timeline.player._mc._currentframe)) {
this.current_level++;
this.initialize_level();
return(undefined);
}
};
FroggerGame.prototype.move_player = function () {
if (this.timeline.player._currentframe == 3) {
return(undefined);
}
var _local5 = Math.floor(this.timeline.player._x);
var _local3 = Math.floor(this.timeline.player._y);
var _local4 = Math.floor(this.timeline.player.final_x);
var _local2 = Math.floor(this.timeline.player.final_y);
var _local6 = this.timeline.player._currentframe;
if ((this.timeline.player._currentframe == 4) && (_local3 != _local2)) {
this.tween_player(_local2, _local3, "_y", this.hit_go_back_speed, "Hit");
} else if (_local5 != _local4) {
this.tween_player(_local4, _local5, "_x", this.player_speed, "Walking");
} else if (_local3 != _local2) {
this.tween_player(_local2, _local3, "_y", this.player_speed, "Walking");
} else {
this.timeline.player.gotoAndStop("Standing");
this.timeline.player._x = this.timeline.player.final_x;
this.timeline.player._y = this.timeline.player.final_y;
this.check_player_power_up();
this.timeline.player._x = this.timeline.player._x + this.outside_velocity;
this.timeline.player.final_x = this.timeline.player._x;
}
this.clip_player_to_screen();
};
FroggerGame.prototype.tween_player = function (final, current, axis, speed, label) {
this.timeline.player.gotoAndStop(label);
this.timeline.player[axis] = this.timeline.player[axis] + (this._num.sign(final - current) * speed);
if (Math.abs(this.timeline.player[axis] - final) < speed) {
this.timeline.player[axis] = final;
}
};
FroggerGame.prototype.clip_player_to_screen = function () {
var _local2 = this.timeline.player._x;
var _local3 = this.timeline.player._y;
if (this.timeline.player._x < 0) {
this.timeline.player._x = (this.timeline.player.final_x = 0);
} else if (this.timeline.player._x > this.stage_width) {
this.timeline.player._x = (this.timeline.player.final_x = this.stage_width);
} else if (this.timeline.player._y < 0) {
this.timeline.player._y = (this.timeline.player.final_y = 0);
} else if (this.timeline.player._y > this.stage_height) {
this.timeline.player._y = (this.timeline.player.final_y = this.stage_height);
}
if ((_local2 != this.timeline.player._x) && (this.outside_velocity != 0)) {
this.timeline.player._x = ((this.timeline.player._x == 0) ? 20 : (this.stage_width - 20));
this.timeline.player.final_x = this.timeline.player._x;
this.player_hit();
this.play_sound("hit_regular_sound");
}
};
FroggerGame.prototype.move_all_obstacles = function () {
var _local7 = this.lanes.length;
var _local3 = 0;
while (_local3 < _local7) {
var _local5 = this.lanes[_local3].obstacles.length;
var _local6 = false;
var _local2 = 0;
while (_local2 < _local5) {
var _local4 = this.lanes[_local3].obstacles[_local2];
this.move_obstacle(_local4, _local2, this.lanes[_local3]);
_local2++;
}
if ((this.current_frame % this.lanes[_local3].add_obstacle_delay) == 0) {
if (this._num.sign(_local4.speed) == 1) {
this.create_obstacle(1, this.lanes[_local3]);
} else {
this.create_obstacle(this.stage_width - 1, this.lanes[_local3]);
}
}
_local3++;
}
};
FroggerGame.prototype.move_obstacle = function (obstacle_mc, obstacle_index, lane) {
obstacle_mc._x = obstacle_mc._x + obstacle_mc.speed;
var _local3 = this.check_obstacle_off_stage(obstacle_mc, obstacle_index, lane);
if (_local3) {
return(undefined);
}
if (lane.inversion == "False") {
this.check_player_obstacle_interaction_regular(obstacle_mc, lane);
}
};
FroggerGame.prototype.check_obstacle_off_stage = function (obstacle_mc, obstacle_index, lane) {
if (((this._num.sign(obstacle_mc.speed) == 1) && ((obstacle_mc._x - obstacle_mc._width) > this.stage_width)) || ((this._num.sign(obstacle_mc.speed) == -1) && ((obstacle_mc._x + obstacle_mc._width) < 0))) {
lane.obstacles.splice(obstacle_index, 1);
obstacle_mc.unloadMovie();
return(true);
}
};
FroggerGame.prototype.check_player_safety = function () {
if (this.timeline.player._currentframe != 1) {
return(undefined);
}
var _local2 = this.lanes[this.calculate_player_lane()];
var _local3 = _local2.obstacles[this.calculate_touching_obstacle(_local2)];
this.outside_velocity = 0;
if (_local2.inversion == "True") {
this.check_player_obstacle_interaction_inversion(_local3, _local2);
}
};
FroggerGame.prototype.check_player_obstacle_interaction_inversion = function (obstacle_mc, lane) {
if (obstacle_mc == undefined) {
if (this.timeline.backgrounds.theme.sink_area.hitTest(this.timeline.player._x, this.timeline.player._y, true)) {
this.play_sound("hit_inversion_sound");
this.player_hit();
}
} else {
this.outside_velocity = obstacle_mc.speed;
}
};
FroggerGame.prototype.check_player_obstacle_interaction_regular = function (obstacle_mc, lane) {
if (this.timeline.player._currentframe == 1) {
if (obstacle_mc.hitTest(this.timeline.player._x, this.timeline.player._y, true)) {
this.play_sound("hit_regular_sound");
this.player_hit();
}
}
};
FroggerGame.prototype.player_hit = function () {
this.timeline.player.gotoAndStop("Hit");
this.timeline.player._rotation = 0;
this.timeline.player.final_y = this.current_theme.start_point_y;
this.player_lives--;
this.check_game_over();
};
FroggerGame.prototype.calculate_touching_obstacle = function (lane) {
var _local4 = this.timeline.player._height / 3;
var _local2 = 0;
while (_local2 < lane.obstacles.length) {
var _local3 = lane.obstacles[_local2];
if ((_local3.hitTest(this.timeline.player._x, this.timeline.player._y, true) || (_local3.hitTest(this.timeline.player._x + _local4, this.timeline.player._y, true))) || (_local3.hitTest(this.timeline.player._x - _local4, this.timeline.player._y, true))) {
return(_local2);
}
_local2++;
}
return(-1);
};
FroggerGame.prototype.calculate_player_lane = function () {
var _local5 = -1;
var _local4 = Number.MAX_VALUE;
var _local2 = 0;
while (_local2 < this.lanes.length) {
var _local3 = Math.abs(this.timeline.player._y - this.lanes[_local2].position_y);
if (_local3 < _local4) {
_local5 = _local2;
_local4 = _local3;
}
_local2++;
}
return(_local5);
};
FroggerGame.prototype.update_properties = function () {
this.current_frame++;
this.timeline.score = (_root.score = this.score);
this.timeline.lives = this.player_lives;
};
FroggerGame.prototype.key_down = function () {
if (this.timeline.player._currentframe != 1) {
return(undefined);
}
if (Key.isDown(Key[this.move_left_key])) {
this.shift_player_left();
} else if (Key.isDown(Key[this.move_right_key])) {
this.shift_player_right();
} else if (Key.isDown(Key[this.move_up_key])) {
this.shift_player_up();
} else if (Key.isDown(Key[this.move_down_key])) {
this.shift_player_down();
}
};
FroggerGame.prototype.shift_player_left = function () {
this.timeline.player._rotation = 180;
this.timeline.player.final_x = this.timeline.player.final_x - this.player_move_displacement;
};
FroggerGame.prototype.shift_player_right = function () {
this.timeline.player._rotation = 0;
this.timeline.player.final_x = this.timeline.player.final_x + this.player_move_displacement;
};
FroggerGame.prototype.shift_player_up = function () {
this.timeline.player._rotation = -90;
this.timeline.player.final_y = this.timeline.player.final_y - this.player_move_displacement;
};
FroggerGame.prototype.shift_player_down = function () {
this.timeline.player._rotation = 90;
this.timeline.player.final_y = this.timeline.player.final_y + this.player_move_displacement;
};
FroggerGame.prototype.check_player_power_up = function () {
if (this.power_up.hitTest(this.timeline.player)) {
this.handle_player_get_power_up();
}
};
FroggerGame.prototype.handle_player_get_power_up = function () {
this.power_up.unloadMovie();
this.power_up = undefined;
this.timeline.player.gotoAndStop("Power Up");
this.score = this.score + (this.power_up_points + (this.current_level * this.power_up_points_increase));
if (this.use_quiz == "True") {
this.initialize_quiz();
} else {
this.initialize_power_up();
}
this.play_sound("power_up_sound");
};
FroggerGame.prototype.initialize_quiz = function () {
this.paused = true;
this.timeline.quiz_prompt.play();
var _local4 = this.questions.shift();
this.questions.push(_local4);
this.timeline.quiz_prompt.question = _local4.text;
var _local2 = 0;
while (_local2 < this.num_choices_per_question) {
var _local3 = this.timeline.quiz_prompt["choice" + _local2];
_local3.index = String.fromCharCode(_local2 + 65);
_local3.field = _local4.choices[_local2];
_local3.correct = _local2 == _local4.answer;
_local2++;
}
};
FroggerGame.prototype.evaluate_answer = function (choice_mc) {
if (choice_mc.correct) {
this.correct_answer();
} else {
this.incorrect_answer();
}
};
FroggerGame.prototype.correct_answer = function () {
this.timeline.quiz_prompt.gotoAndPlay("Correct");
this.score = this.score + this.correct_points;
};
FroggerGame.prototype.incorrect_answer = function () {
this.timeline.quiz_prompt.gotoAndPlay("Incorrect");
this.score = this.score + this.incorrect_points;
if (this.incorrect_answer_handle == "Re-place Power Up") {
this.num_remaining_power_ups++;
}
};
FroggerGame.prototype.answer_prompt_done = function () {
this.paused = false;
this.initialize_power_up();
};
FroggerGame.prototype.check_game_over = function () {
if (this.player_lives <= 0) {
this.timeline._parent.gotoAndStop("Game Over");
}
};
FroggerGame.prototype.level_prompt_done_playing = function () {
this.paused = false;
this.current_frame = 1;
};
FroggerGame.prototype.play_sound = function (linkage) {
this.timeline.sounds_mc.gotoAndStop(linkage);
this.timeline.sounds_mc.gotoAndStop(1);
};
this._x = 0;
this._y = 0;
game = new FroggerGame();
game.num_choices_per_question = 4;
game.questions = new Array();
game.questions[0] = new Object();
game.questions[0].text = "The answer is A.";
game.questions[0].answer = 0;
game.questions[0].choices = new Array();
game.questions[0].choices[0] = "This is the answer";
game.questions[0].choices[1] = "-";
game.questions[0].choices[2] = "-";
game.questions[0].choices[3] = "-";
game.questions[1] = new Object();
game.questions[1].text = "The answer is B.";
game.questions[1].answer = 1;
game.questions[1].choices = new Array();
game.questions[1].choices[0] = "This is the answer";
game.questions[1].choices[1] = "-";
game.questions[1].choices[2] = "-";
game.questions[1].choices[3] = "-";
game.questions[2] = new Object();
game.questions[2].text = "The answer is B.";
game.questions[2].answer = 0;
game.questions[2].choices = new Array();
game.questions[2].choices[0] = "This is the answer";
game.questions[2].choices[1] = "-";
game.questions[2].choices[2] = "-";
game.questions[2].choices[3] = "-";
game.themes = new Array();
game.themes[0] = new Object();
game.themes[0].num_lanes = 4;
game.themes[0].lanes_y = [141, 211, 281, 352];
game.themes[0].lane_inversions = ["False", "False", "False", "False"];
game.themes[0].add_obstacle_delay = [101, 87, 77, 68];
game.themes[0].min_obstacle_delay = [81, 67, 57, 48];
game.themes[0].lane_speeds = [-4, 4, -4, 4];
game.themes[0].max_lane_speeds = [-8, 8, -8, 8];
game.themes[0].start_point_x = 300;
game.themes[0].start_point_y = 450;
game.themes[0].end_point_x = 300;
game.themes[0].end_point_y = 40;
game.themes[0].lane_linkages = new Array();
game.themes[0].lane_linkages[0] = ["vehicle5", "vehicle6"];
game.themes[0].lane_linkages[1] = ["vehicle3", "vehicle4"];
game.themes[0].lane_linkages[2] = ["vehicle2", "vehicle3"];
game.themes[0].lane_linkages[3] = ["vehicle0", "vehicle1"];
game.themes[1] = new Object();
game.themes[1].num_lanes = 4;
game.themes[1].lanes_y = [148, 215, 284, 350];
game.themes[1].lane_inversions = ["True", "True", "True", "True"];
game.themes[1].add_obstacle_delay = [101, 87, 77, 68];
game.themes[1].min_obstacle_delay = [81, 67, 57, 48];
game.themes[1].lane_speeds = [-4, 4, -4, 4];
game.themes[1].max_lane_speeds = [-8, 8, -8, 8];
game.themes[1].start_point_x = 300;
game.themes[1].start_point_y = 450;
game.themes[1].end_point_x = 300;
game.themes[1].end_point_y = 40;
game.themes[1].lane_linkages = new Array();
game.themes[1].lane_linkages[0] = ["log0", "log1", "log2"];
game.themes[1].lane_linkages[1] = ["boat", "turtles0", "turtles1", "turtles2", "turtles3"];
game.themes[1].lane_linkages[2] = ["log0", "log1", "log2"];
game.themes[1].lane_linkages[3] = ["turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[2] = new Object();
game.themes[2].num_lanes = 4;
game.themes[2].lanes_y = [128, 197, 293, 349];
game.themes[2].lane_inversions = ["False", "False", "True", "True"];
game.themes[2].add_obstacle_delay = [101, 87, 77, 68];
game.themes[2].min_obstacle_delay = [81, 67, 57, 48];
game.themes[2].lane_speeds = [-4, 4, -4, 4];
game.themes[2].max_lane_speeds = [-8, 8, -8, 8];
game.themes[2].start_point_x = 300;
game.themes[2].start_point_y = 450;
game.themes[2].end_point_x = 300;
game.themes[2].end_point_y = 40;
game.themes[2].lane_linkages = new Array();
game.themes[2].lane_linkages[0] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[2].lane_linkages[1] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[2].lane_linkages[2] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[2].lane_linkages[3] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[3] = new Object();
game.themes[3].num_lanes = 4;
game.themes[3].lanes_y = [142, 202, 293, 360];
game.themes[3].lane_inversions = ["True", "True", "False", "False"];
game.themes[3].add_obstacle_delay = [101, 87, 77, 68];
game.themes[3].min_obstacle_delay = [81, 67, 57, 48];
game.themes[3].lane_speeds = [-4, 4, -4, 4];
game.themes[3].max_lane_speeds = [-8, 8, -8, 8];
game.themes[3].start_point_x = 300;
game.themes[3].start_point_y = 450;
game.themes[3].end_point_x = 300;
game.themes[3].end_point_y = 40;
game.themes[3].lane_linkages = new Array();
game.themes[3].lane_linkages[0] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[3].lane_linkages[1] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[3].lane_linkages[2] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[3].lane_linkages[3] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[4] = new Object();
game.themes[4].num_lanes = 4;
game.themes[4].lanes_y = [114, 204, 267, 348];
game.themes[4].lane_inversions = ["True", "False", "False", "True"];
game.themes[4].add_obstacle_delay = [101, 87, 77, 68];
game.themes[4].min_obstacle_delay = [81, 67, 57, 48];
game.themes[4].lane_speeds = [-4, 4, -4, 4];
game.themes[4].max_lane_speeds = [-8, 8, -8, 8];
game.themes[4].start_point_x = 300;
game.themes[4].start_point_y = 450;
game.themes[4].end_point_x = 300;
game.themes[4].end_point_y = 40;
game.themes[4].lane_linkages = new Array();
game.themes[4].lane_linkages[0] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[4].lane_linkages[1] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[4].lane_linkages[2] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[4].lane_linkages[3] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[5] = new Object();
game.themes[5].num_lanes = 4;
game.themes[5].lanes_y = [114, 212, 269, 369];
game.themes[5].lane_inversions = ["False", "True", "True", "False"];
game.themes[5].add_obstacle_delay = [101, 87, 77, 68];
game.themes[5].min_obstacle_delay = [81, 67, 57, 48];
game.themes[5].lane_speeds = [-4, 4, -4, 4];
game.themes[5].max_lane_speeds = [-8, 8, -8, 8];
game.themes[5].start_point_x = 300;
game.themes[5].start_point_y = 450;
game.themes[5].end_point_x = 300;
game.themes[5].end_point_y = 40;
game.themes[5].lane_linkages = new Array();
game.themes[5].lane_linkages[0] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
game.themes[5].lane_linkages[1] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[5].lane_linkages[2] = ["log0", "log1", "log2", "turtles0", "turtles1", "turtles2", "turtles3", "crocodile0", "crocodile1"];
game.themes[5].lane_linkages[3] = ["vehicle0", "vehicle1", "vehicle2", "vehicle3", "vehicle4", "vehicle5", "vehicle6"];
trace(level_prompt);
game.initialize();
if (_root._quality == "HIGH") {
_root._quality = "MEDIUM";
}
Instance of Symbol 507 MovieClip "controller" in Symbol 646 MovieClip Frame 1
onClipEvent (load) {
this._visible = false;
this.key_down = false;
}
onClipEvent (data) {
}
onClipEvent (keyDown) {
if (Key.isDown(32)) {
_parent.game.paused = _parent.game.paused ^ true;
}
this.key_down = true;
}
onClipEvent (keyUp) {
this.key_down = false;
}
onClipEvent (enterFrame) {
if (_parent.game.paused) {
return(undefined);
}
if (this.key_down) {
_parent.game.key_down();
}
_parent.game.action();
}
Instance of Symbol 591 MovieClip "quiz_prompt" in Symbol 646 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(16005);
}
Instance of Symbol 625 MovieClip "level_prompt" in Symbol 646 MovieClip Frame 1
onClipEvent (load) {
this.swapDepths(16001);
}
Instance of Symbol 642 MovieClip in Symbol 646 MovieClip Frame 1
onClipEvent (load) {
this._num = new Number();
start_time = getTimer();
range_min = 2000;
range_max = 4000;
next_time = this._num.randi(range_min, range_max);
}
onClipEvent (enterFrame) {
if ((getTimer() - start_time) > next_time) {
this.gotoAndStop(this._num.randi(2, this._totalframes + 1));
start_time = getTimer();
next_time = this._num.randi(range_min, range_max);
}
}
Symbol 652 Button
on (press) {
this.gotoAndStop("Starting Screen");
}
Symbol 658 Button
on (release) {
mochi.MochiScores.showLeaderboard({boardID:"134ecc9a983dd75e", score:_root.score, onClose:function () {
_root.gotoAndStop("Starting Screen");
}});
}