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;
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);
}
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=7&fv=") + fv) + "&v=") + escape(getVersion())) + "&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__("058bfe7d", this, 10301, true);
function musicHandler() {
if (_global.music_muted) {
_global.music_snd.setVolume(100);
_global.music_muted = false;
} else {
_global.music_snd.setVolume(0);
_global.music_muted = true;
}
}
function loadCurrentMovie() {
if (((lock_domain && (domain != "scarybug.org")) && (domain != "scarybuggames.com")) && (domain != "flashgamelicense.com")) {
_root._x = 50000;
_root._y = 40000;
}
var _local4 = Math.floor((this.getBytesLoaded() / this.getBytesTotal()) * 100);
if (_local4 == 100) {
preloader.label.text = "100 PERCENT";
preloader.progress_mc.gotoAndStop(_local4);
if (_global.logodone) {
delete this.onEnterFrame;
start_btn._visible = true;
preloader._visible = false;
start_btn.onRelease = function () {
gotoAndStop ("logo");
};
}
} else {
preloader.label.text = _local4 + " PERCENT";
preloader.progress_mc.gotoAndStop(_local4);
}
}
var chronotronMenu = new ContextMenu();
chronotronMenu.hideBuiltInItems();
chronotronMenu.builtInItems.quality = true;
var menuItem_cmi1 = new ContextMenuItem("Sound", mute_func);
var menuItem_cmi2 = new ContextMenuItem("Music", musicHandler);
chronotronMenu.customItems.push(menuItem_cmi1);
chronotronMenu.customItems.push(menuItem_cmi2);
start_btn._visible = false;
_root.menu = chronotronMenu;
_root.kongregateServices.connect();
_global.logodone = true;
_global.muted = false;
var urlStart = (_url.indexOf("://") + 3);
var urlEnd = _url.indexOf("/", urlStart);
var domain = _url.substring(urlStart, urlEnd);
var LastDot = (domain.lastIndexOf(".") - 1);
var domEnd = (domain.lastIndexOf(".", LastDot) + 1);
var lock_domain = false;
var is_sponsor_site = false;
domain = domain.substring(domEnd, domain.length);
var CPMStarPoolID = 1429;
var CPMStarSubPoolID = 500;
_global.logodone = true;
if (domain != "kongregate.com") {
is_sponsor_site = false;
System.security.allowDomain("server.cpmstar.com");
adBox.loadMovie((("http://server.cpmstar.com/adviewas2.swf?poolid=" + CPMStarPoolID) + "&subpoolid=") + CPMStarSubPoolID);
} else {
is_sponsor_site = true;
adBox.onRelease = function () {
getURL ("http://www.ScarybugGames.com/", "_blank");
};
}
this.onEnterFrame = loadCurrentMovie;
stop();
kong_banner.onRelease = function () {
getURL ("http://www.kongregate.com/?gamereferral=chronotron", "_blank");
__com_mochibot__("bb1b40df", this, 10301, true);
};
Frame 2
function clearSavedData() {
save_cookie.data.cur_level = 1;
cur_level = 1;
highest_level = 1;
var _local2 = 1;
while (_local2 < _global.score_array.length) {
save_cookie.data["score" + _local2] = 0;
_global.score_array[_local2] = 0;
_local2++;
}
level_number_text.text = "LVL 01";
if (bomb_mc) {
bomb_mc.gotoAndPlay("explode");
}
}
function nextLevel() {
cur_level++;
if ((!_global.time_attack_mode) && (cur_level > MAX_LEVELS)) {
cur_level = 1;
}
pg.destroy();
if (cur_level > highest_level) {
save_cookie.data.cur_level = cur_level;
}
if (_global.time_attack_mode) {
gotoAndStop ("score");
} else {
gotoAndStop("level" + cur_level);
level_indicator.text = cur_level;
}
}
function randomLevel() {
cur_level = random(MAX_LEVELS) + 1;
pg.destroy();
flash_mc.play();
gotoAndStop("level" + cur_level);
level_indicator.text = cur_level;
}
function gotoLevel() {
pg.destroy();
flash_mc.play();
gotoAndStop(this._name);
level_indicator.text = cur_level;
}
var MAX_LEVELS = 40;
var LEVEL_FRAME = 43;
pod.stop();
paradox.stop();
_global.score_array = new Array(MAX_LEVELS + 1);
_global.level_time = 0;
_global.player_time = 0;
_global.time_attack_mode = true;
_global.pause_snd = new Sound(this);
_global.pause_snd.attachSound("pause_snd");
_global.autoInc = 0;
var pg;
var cur_level = 0;
var highest_level = 1;
var save_cookie = SharedObject.getLocal("chronotron");
if (save_cookie.data.cur_level != undefined) {
cur_level = (highest_level = save_cookie.data.cur_level);
var s = 1;
while (s < _global.score_array.length) {
if (save_cookie.data["score" + s]) {
_global.score_array[s] = save_cookie.data["score" + s];
} else {
_global.score_array[s] = 0;
save_cookie.data["score" + s] = 0;
}
s++;
}
} else {
clearSavedData();
}
fullscreen_btn._visible = false;
_quality = "high";
_global.controls = "wasd";
_global.up_key = 87;
_global.right_key = 68;
_global.down_key = 83;
_global.left_key = 65;
_global.do_key = 32;
_global.pause_key = 80;
_global.reset_key = 84;
_global.rewind_key = 82;
_global.eject_key = 74;
_global.mute_key = 77;
loop.gotoAndStop("off");
skip.gotoAndStop("off");
var levelNames = new Array();
levelNames[1] = "tutorial";
levelNames[2] = "learn replay";
levelNames[3] = "three gates";
levelNames[4] = "learn crates";
levelNames[5] = "floating bridge";
levelNames[6] = "paradox pit traps";
levelNames[7] = "learn balance";
levelNames[8] = "gate and lift";
levelNames[9] = "drop pod";
levelNames[10] = "time bomb";
levelNames[11] = "learn the see saw";
levelNames[12] = "advanced balancing";
levelNames[13] = "learn to pause";
levelNames[14] = "eureka!";
levelNames[15] = "change the past";
levelNames[16] = "pause tower";
levelNames[17] = "mirrored lifts";
levelNames[18] = "crumbling floor";
levelNames[19] = "special relativity";
levelNames[20] = "timed detonation";
levelNames[21] = "balance and see saw";
levelNames[22] = "the blast doors ";
levelNames[23] = "weighted companion bomb";
levelNames[24] = "perpetual smashing machine";
levelNames[25] = "raining crates";
levelNames[26] = "yoink!";
levelNames[27] = "crates are useful";
levelNames[28] = "crate conveyor";
levelNames[29] = "causality and gravity";
levelNames[30] = "advanced see saw tricks";
levelNames[31] = "it's a trap!";
levelNames[32] = "pause pull";
levelNames[33] = "buttons on the seesaw";
levelNames[34] = "build a smasher";
levelNames[35] = "paradox cross";
levelNames[36] = "three crates";
levelNames[37] = "crushing walls";
levelNames[38] = "balance with crate conveyor";
levelNames[39] = "launch button";
levelNames[40] = "balance and crate management";
var music_object = new Object();
_global.music_snd = new Sound(music_loader);
_global.music_position = 0;
_global.music_muted = false;
_global.music_snd.attachSound("music");
_global.music_snd.onSoundComplete = function () {
_global.music_snd.start();
};
kong_logo.onRelease = function () {
getURL ("http://www.kongregate.com/?gamereferral=chronotron", "_blank");
__com_mochibot__("3ce6b487", this, 10301, true);
};
Frame 7
stop();
if (cur_level < 10) {
level_number_text.text = "LVL 0" + cur_level;
} else if (cur_level > (MAX_LEVELS - 5)) {
level_number_text.text = "LVL 01";
} else {
level_number_text.text = "LVL " + cur_level;
}
Frame 12
function mute_func() {
var _local2 = new Sound();
if (_global.muted) {
mutesound_btn.gotoAndStop("on");
_local2.setVolume(100);
_global.muted = false;
sound_selector._visible = true;
mute_selector._visible = false;
} else {
mutesound_btn.gotoAndStop("off");
_local2.setVolume(0);
_global.muted = true;
sound_selector._visible = false;
mute_selector._visible = true;
}
}
stop();
pod.stop();
paradox.stop();
loop.gotoAndStop("off");
skip.gotoAndStop("off");
if (cur_level < 10) {
level_number_text.text = "LVL 0" + cur_level;
} else if (cur_level > (MAX_LEVELS - 5)) {
level_number_text.text = "LVL 01";
} else {
level_number_text.text = "LVL " + cur_level;
}
start_btn.onRelease = function () {
if (cur_level == 1) {
gotoAndStop ("intro");
} else if (cur_level > (MAX_LEVELS - 5)) {
gotoAndStop ("intro");
} else {
gotoAndStop("level" + cur_level);
}
level_indicator.text = cur_level;
};
more_games_btn.onRelease = function () {
__com_mochibot__("c478404f", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferral=chronotron", "_blank");
};
instructions_btn.onRelease = function () {
gotoAndStop ("instructions");
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
bonuslevel_btn.onRelease = function () {
gotoAndStop ("bonus");
};
options_btn.onRelease = function () {
gotoAndStop ("options");
};
credits_btn.onRelease = function () {
gotoAndStop ("credits");
};
clear_btn.onRelease = clearSavedData;
paradox.dismiss_btn.onRelease = (death.dismiss_btn.onRelease = (fall.dismiss_btn.onRelease = function () {
paradox.gotoAndStop(1);
death.gotoAndStop(1);
fall.gotoAndStop(1);
pg.reset();
}));
reset.onRollOut = (rewind.onRollOut = (eject.onRollOut = (pause.onRollOut = (mutesound_btn.onRollOut = function () {
if (cur_level <= (MAX_LEVELS - 5)) {
level_indicator.text = "level " + cur_level;
} else {
level_indicator.text = "bonus " + Number(cur_level - 35);
}
}))));
pause.onRollOver = function () {
level_indicator.text = "pause [p]";
};
reset.onRelease = function () {
paradox.gotoAndStop(1);
death.gotoAndStop(1);
fall.gotoAndStop(1);
_global.player_time = 0;
if (_currentframe >= LEVEL_FRAME) {
flash_mc.play();
pg.reset();
}
};
reset.onRollOver = function () {
level_indicator.text = "reset [t]";
};
rewind.onRelease = function () {
if (_global.paused) {
return(undefined);
}
paradox.gotoAndStop(1);
death.gotoAndStop(1);
fall.gotoAndStop(1);
if (_currentframe >= LEVEL_FRAME) {
flash_mc.play();
pg.rewind();
}
};
rewind.onRollOver = function () {
level_indicator.text = "rewind [r]";
};
eject.onRelease = function () {
if (_currentframe >= LEVEL_FRAME) {
stopAllSounds();
paradox.gotoAndStop(1);
death.gotoAndStop(1);
fall.gotoAndStop(1);
pg.destroy();
flash_mc.play();
triangle_mc._visible = false;
_global.player_time = 0;
gotoAndStop ("menu");
}
};
eject.onRollOver = function () {
level_indicator.text = "eject [j]";
};
mutesound_btn.onRelease = mute_func;
mutesound_btn.onRollOver = function () {
level_indicator.text = "mute [m]";
};
link_btn.onRelease = function () {
getURL ("http://www.ScarybugGames.com", "_blank");
};
walktrhough_btn.onRelease = function () {
getURL ("http://scarybuggames.com/category/walkthroughs/", "_blank");
};
Frame 19
pod.stop();
start_btn.onRelease = function () {
if (cur_level == 1) {
gotoAndStop ("intro");
} else {
gotoAndStop("level" + cur_level);
}
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
options_btn.onRelease = function () {
gotoAndStop ("options");
};
credits_btn.onRelease = function () {
gotoAndStop ("credits");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
if (cur_level < 10) {
level_number_text.text = "LVL 0" + cur_level;
} else if (cur_level > MAX_LEVELS) {
level_number_text.text = "LVL 01";
} else {
level_number_text.text = "LVL " + cur_level;
}
Frame 28
pod.stop();
start_btn.onRelease = function () {
if (cur_level == 1) {
gotoAndStop ("intro");
} else {
gotoAndStop("level" + cur_level);
}
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
options_btn.onRelease = function () {
gotoAndStop ("options");
};
instructions_btn.onRelease = function () {
gotoAndStop ("instructions");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
if (cur_level < 10) {
level_number_text.text = "LVL 0" + cur_level;
} else if (cur_level > MAX_LEVELS) {
level_number_text.text = "LVL 01";
} else {
level_number_text.text = "LVL " + cur_level;
}
FGL_logo.onRelease = function () {
getURL ("http://www.flashgamelicense.com", "_blank");
};
link_btn.onRelease = function () {
getURL ("http://www.scarybuggames.com", "_blank");
};
freesound_btn.onRelease = function () {
getURL ("http://scarybuggames.com/about/chronotron-sound-effects/", "_blank");
};
Frame 34
stop();
start_btn.onRelease = function () {
if (cur_level == 1) {
gotoAndStop ("intro");
} else {
gotoAndStop("level" + cur_level);
}
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
if (cur_level < 10) {
level_number_text.text = "LVL 0" + cur_level;
} else if (cur_level > MAX_LEVELS) {
level_number_text.text = "LVL 01";
} else {
level_number_text.text = "LVL " + cur_level;
}
instructions_btn.onRelease = function () {
gotoAndStop ("instructions");
};
credits_btn.onRelease = function () {
gotoAndStop ("credits");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
sound_selector._visible = !_global.music_muted;
mute_selector._visible = _global.music_muted;
trace(_root._quality);
highquality_selector._visible = _root._quality == "HIGH";
mediumquality_selector._visible = _root._quality == "MEDIUM";
lowquality_selector._visible = _root._quality == "LOW";
wasd_selector._visible = _global.controls != "wasd";
esdf_selector._visible = _global.controls != "esdf";
wasd_selector.onRelease = function () {
_global.controls = "wasd";
_global.up_key = 87;
_global.left_key = 65;
_global.down_key = 83;
_global.right_key = 68;
wasd_selector._visible = false;
esdf_selector._visible = true;
};
esdf_selector.onRelease = function () {
_global.controls = "esdf";
_global.up_key = 69;
_global.left_key = 83;
_global.down_key = 68;
_global.right_key = 70;
esdf_selector._visible = false;
wasd_selector._visible = true;
};
highquality_btn.onRelease = function () {
highquality_selector._visible = true;
mediumquality_selector._visible = false;
lowquality_selector._visible = false;
_root._quality = "HIGH";
};
mediumquality_btn.onRelease = function () {
highquality_selector._visible = false;
mediumquality_selector._visible = true;
lowquality_selector._visible = false;
_root._quality = "MEDIUM";
};
lowquality_btn.onRelease = function () {
highquality_selector._visible = false;
mediumquality_selector._visible = false;
lowquality_selector._visible = true;
_root._quality = "LOW";
};
music_btn.onRelease = function () {
trace("music on!");
_global.music_snd.setVolume(100);
_global.music_muted = false;
sound_selector._visible = true;
mute_selector._visible = false;
};
mute_btn.onRelease = function () {
_global.music_snd.setVolume(0);
sound_selector._visible = false;
mute_selector._visible = true;
_global.music_muted = true;
};
clear_btn.onRelease = clearSavedData;
if (cur_level < 10) {
bomb_mc.timer.text = "0" + cur_level;
} else {
bomb_mc.timer.text = cur_level;
}
Frame 42
function setButtons() {
var _local3 = 1;
while (_local3 <= MAX_LEVELS) {
if (((_local3 <= highest_level) && (_local3 <= SPONSOR_MAX_LEVELS)) || (is_sponsor_site && (_local3 >= (MAX_LEVELS - 5)))) {
this["level" + _local3].index = _local3;
this["level" + _local3].gotoAndStop("play");
this["level" + _local3].onRelease = gotoLevel;
this["level" + _local3].onRollOver = function () {
this.gotoAndStop("over");
level_name.text = levelNames[this.index];
level_name.text = level_name.text + ("\nhighscore: " + _global.score_array[this.index]);
};
this["level" + _local3].onRollOut = function () {
level_name.text = "";
this.gotoAndStop("play");
};
} else {
this["level" + _local3].gotoAndStop("stop");
}
if (_local3 <= 35) {
this["level" + _local3].level_text.text = "" + Number(_local3);
} else {
this["level" + _local3].level_text.text = "" + Number(_local3 - 35);
}
_local3++;
}
}
stop();
var SPONSOR_MAX_LEVELS;
cheat_btn.onRelease = function () {
highest_level = 40;
is_sponsor_site = true;
exclusive_banner._visible = false;
SPONSOR_MAX_LEVELS = MAX_LEVELS;
var _local2 = 36;
while (_local2 <= MAX_LEVELS) {
this._parent["level" + _local2]._alpha = 100;
_local2++;
}
setButtons();
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
level_name.text = "";
if (is_sponsor_site == true) {
exclusive_banner._visible = false;
SPONSOR_MAX_LEVELS = MAX_LEVELS;
var i = (MAX_LEVELS - 5);
while (i <= MAX_LEVELS) {
this._parent["level" + i]._alpha = 100;
i++;
}
} else {
exclusive_banner._visible = true;
exclusive_banner.onRelease = function () {
__com_mochibot__("687a0a78", this, 10301, true);
getURL ("http://www.kongregate.com/games/scarybug/chronotron?gamereferral=chronotron", "_blank");
};
SPONSOR_MAX_LEVELS = MAX_LEVELS - 5;
var i = 36;
while (i <= MAX_LEVELS) {
this["level" + i]._alpha = 10;
i++;
}
}
setButtons();
Frame 48
function setButtons() {
var _local3 = 36;
while (_local3 <= MAX_LEVELS) {
if (is_sponsor_site && (_local3 >= (MAX_LEVELS - 5))) {
this["level" + _local3].index = _local3;
this["level" + _local3].gotoAndStop("play");
this["level" + _local3].onRelease = gotoLevel;
this["level" + _local3].onRollOver = function () {
this.gotoAndStop("over");
level_name.text = levelNames[this.index];
level_name.text = level_name.text + ("\nhighscore: " + _global.score_array[this.index]);
};
this["level" + _local3].onRollOut = function () {
level_name.text = "";
this.gotoAndStop("play");
};
} else {
this["level" + _local3].gotoAndStop("stop");
}
this["level" + _local3].level_text.text = "" + Number(_local3 - 35);
_local3++;
}
}
function secretLevel1() {
gotoAndStop ("secret1");
}
function secretLevel2() {
gotoAndStop ("secret2");
}
function secretLevel3() {
gotoAndStop ("secret3");
}
stop();
var SPONSOR_MAX_LEVELS;
main_btn.onRelease = function () {
gotoAndStop ("main");
};
level_name.text = "";
if (is_sponsor_site == true) {
exclusive_banner._visible = false;
SPONSOR_MAX_LEVELS = MAX_LEVELS;
var i = (MAX_LEVELS - 5);
while (i <= MAX_LEVELS) {
this._parent["level" + i]._alpha = 100;
i++;
}
} else {
exclusive_banner._visible = true;
exclusive_banner.onRelease = function () {
__com_mochibot__("5706967c", this, 10301, true);
getURL ("http://www.kongregate.com/games/scarybug/chronotron?gamereferral=chronotron", "_blank");
};
SPONSOR_MAX_LEVELS = MAX_LEVELS - 5;
var i = 36;
while (i <= MAX_LEVELS) {
this["level" + i]._alpha = 10;
i++;
}
}
setButtons();
var b = 36;
while (b <= 40) {
var secrets_activated = true;
if (_global.score_array[b] > 0) {
trace((("bonus " + b) + " ok: ") + _global.score_array[b]);
} else {
secrets_activated = false;
}
b++;
}
if (secrets_activated) {
secret1.onRelease = secretLevel1;
secret2.onRelease = secretLevel2;
secret3.onRelease = secretLevel3;
}
Frame 54
function formatTime(time) {
var _local1 = "";
var _local3;
var _local2;
_local2 = time % 60;
_local3 = Math.floor(time / 60) % 60;
if (_local2 < 10) {
_local1 = (_local3 + ":0") + _local2;
} else {
_local1 = (_local3 + ":") + _local2;
}
if (_local3 < 10) {
_local1 = "0" + _local1;
}
return(_local1);
}
pod.stop();
var score;
var total_score = 0;
triangle_mc._visible = false;
level_time_text.text = formatTime(_global.level_time);
player_time_text.text = formatTime(_global.player_time);
rewind_uses_text.text = _global.rewind_uses;
score = ((120 - _global.level_time) + (600 - _global.player_time)) - (10 * _global.rewind_uses);
_global.rewind_uses = 0;
if (score < 0) {
score = 0;
}
score_text.text = String(score);
if (cur_level <= (MAX_LEVELS - 4)) {
trace((cur_level + "<=") + (MAX_LEVELS - 4));
level_bonus_text.text = (level_bonus_text2.text = "level");
level_number_text.text = (level_number_text2.text = cur_level - 1);
} else {
level_bonus_text.text = (level_bonus_text2.text = "bonus");
level_number_text.text = (level_number_text2.text = cur_level - 36);
}
if (((cur_level - 1) <= 35) && (highest_level < cur_level)) {
highest_level = cur_level;
}
_global.score_array[cur_level - 1] = score;
trace((("score recorded in array[" + (cur_level - 1)) + "]") + _global.score_array[cur_level - 1]);
var s = 1;
while (s < _global.score_array.length) {
trace((("score_array[" + s) + "] = ") + _global.score_array[s]);
trace((("save_cookie.data[" + s) + "] = ") + save_cookie.data["score" + s]);
if (_global.score_array[s] > save_cookie.data["score" + s]) {
save_cookie.data["score" + s] = _global.score_array[s];
trace(("score of " + save_cookie.data["score" + s]) + " saved");
} else {
highscore_text.text = (_global.score_array[s] = save_cookie.data["score" + s]);
trace(("score of " + save_cookie.data["score" + s]) + " retained");
}
total_score = total_score + _global.score_array[s];
s++;
}
highscore_text.text = _global.score_array[cur_level - 1];
trace("total score: " + total_score);
total_score_text.text = String(total_score);
_root.kongregateStats.submit("score", total_score);
if ((cur_level - 1) <= 35) {
_root.kongregateStats.submit("level", cur_level - 1);
} else {
switch (cur_level - 1) {
case 36 :
trace("bonus level 1 beaten!");
_root.kongregateStats.submit("bonus1", 1);
break;
case 37 :
trace("bonus level 2 beaten!");
_root.kongregateStats.submit("bonus2", 1);
break;
case 38 :
trace("bonus level 3 beaten!");
_root.kongregateStats.submit("bonus3", 1);
break;
case 39 :
trace("bonus level 4 beaten!");
_root.kongregateStats.submit("bonus4", 1);
break;
case 40 :
trace("bonus level 5 beaten!");
_root.kongregateStats.submit("bonus5", 1);
break;
case 41 :
trace("secret level 1 beaten!");
_root.kongregateStats.submit("secret1", 1);
break;
case 42 :
trace("secret level 2 beaten!");
_root.kongregateStats.submit("secret2", 1);
break;
case 43 :
trace("secret level 3 beaten!");
_root.kongregateStats.submit("secret3", 1);
}
}
_global.player_time = (_global.level_time = 0);
Key.addListener(next_btn);
next_btn.onKeyUp = function () {
if (Key.getAscii() == 32) {
next_btn.onKeyUp = null;
Key.removeListener(next_btn);
next_btn.onRelease();
}
};
next_btn.onRelease = function () {
if (cur_level > (MAX_LEVELS - 4)) {
gotoAndStop ("bonus");
} else if (cur_level > (MAX_LEVELS - 5)) {
gotoAndStop ("ending");
} else {
gotoAndStop("level" + cur_level);
}
};
walktrhough_btn.onRelease = function () {
getURL ("http://scarybuggames.com/category/walkthroughs/", "_blank");
};
more_games_btn.onRelease = function () {
__com_mochibot__("f37c00f6", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferral=chronotron", "_blank");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
level_name.text = "next level: \n" + levelNames[cur_level];
switch (cur_level) {
case 8 :
trace("beat easy levels!");
__com_mochibot__("ec17e441", this, 10301, true);
break;
case 15 :
trace("beat basic levels!");
__com_mochibot__("6c036efe", this, 10301, true);
break;
case 22 :
trace("beat medium levels!");
__com_mochibot__("7aca52f9", this, 10301, true);
break;
case 29 :
trace("beat hard levels!");
__com_mochibot__("5267e106", this, 10301, true);
break;
case 36 :
trace("beat impossible levels!");
_root.kongregateStats.submit("game_won", 1);
__com_mochibot__("dea42c47", this, 10301, true);
break;
case 41 :
trace("beat hardest bonus level!");
__com_mochibot__("220135fa", this, 10301, true);
}
Frame 60
stop();
start_btn.onRelease = function () {
gotoAndStop ("level1");
};
instructions_btn.onRelease = function () {
gotoAndStop ("instructions");
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
Frame 66
stop();
more_games_btn.onRelease = function () {
__com_mochibot__("aa8ccefa", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferral=chronotron", "_blank");
};
level_select_btn.onRelease = function () {
gotoAndStop ("menu");
};
main_btn.onRelease = function () {
gotoAndStop ("main");
};
bonuslevel_btn.onRelease = function () {
gotoAndStop ("bonus");
};
Frame 73
cur_level = 1;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addLift(level.platform.lift1, level.platform.button1, -255, 5);
pg.addPower(level.skip);
stop();
Frame 79
cur_level = 2;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addGate(level.platform.gate1, level.platform.button1, true, -90);
pg.addPower(level.skip);
stop();
Frame 85
cur_level = 3;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addGate(level.platform.gate1, level.platform.button1, true, -90);
pg.addGate(level.platform.gate2, level.platform.button2, true, -90);
pg.addGate(level.platform.gate3, level.platform.button3, true, -90);
pg.addPower(level.skip);
stop();
Frame 91
cur_level = 4;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addCrate(crate1);
pg.addPower(level.skip);
stop();
Frame 97
cur_level = 6;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 0);
pg.addGate(level.platform.gate1, level.platform.button1, true, 90);
pg.addGate(level.platform.gate2, level.platform.button1, false, 0);
pg.addPower(level.skip);
stop();
Frame 103
cur_level = 36;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addCrate(crate4);
pg.addCrate(crate2);
pg.addCrate(crate3);
pg.addPower(level.skip);
stop();
Frame 109
cur_level = 7;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addBalance(level.platform.balance1, level.platform.balance2, 10);
pg.addCrate(crate7);
pg.addPower(level.skip);
stop();
Frame 115
cur_level = 8;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addGate(level.platform.gate1, level.platform.button1, true, -90);
pg.addLift(level.platform.lift1, level.platform.button2, -255, 5);
pg.addPower(level.skip);
stop();
Frame 121
cur_level = 12;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addBalance(level.platform.balance1, level.platform.balance2, 10);
pg.addBridge(level.platform.bridge1, level.platform.button1, 150, 5);
pg.addPower(level.skip);
stop();
Frame 128
cur_level = 10;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addButton(level.platform.button5);
pg.addGate(level.platform.gate1, level.platform.button1, true, 180);
pg.addGate(level.platform.gate2, level.platform.button2, true, 180);
pg.addGate(level.platform.gate3, level.platform.button3, true, 180);
pg.addGate(level.platform.gate4, level.platform.button4, true, 180);
pg.addGate(level.platform.gate5, level.platform.button5, false, -90);
pg.addCrate(crate8);
pg.addTimeBomb(crate8, 6);
pg.addPower(level.skip);
stop();
Frame 135
cur_level = 9;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addGate(level.platform.gate1, level.platform.button1, null, 180);
pg.addCrate(level.pod);
pg.addCrate(crate9);
pg.addPower(level.skip);
stop();
Frame 142
cur_level = 40;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2, 0);
pg.addGate(level.platform.gate1, level.platform.button1, null, 180);
pg.addBalance(level.platform.balance1, level.platform.balance2, 10);
pg.addDoor(level.platform.fade1, level.platform.button2);
pg.addDoor(level.platform.fade2, level.platform.button2);
pg.addCrate(crate11);
pg.addCrate(crate12);
pg.addCrate(crate12a);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 149
cur_level = 43;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addButton(level.platform.button5);
pg.addButton(level.platform.button6);
pg.addLift(level.platform.lift1, level.platform.button1, -305, 5);
pg.addDoor(level.platform.door1, level.platform.button1);
pg.addDoor(level.platform.door2, level.platform.button1);
pg.addDoor(level.platform.door3, level.platform.button2);
pg.addDoor(level.platform.door4, level.platform.button3);
pg.addDoor(level.platform.door5, level.platform.button4);
pg.addDoor(level.platform.door6, level.platform.button5);
pg.addDoor(level.platform.door7, level.platform.button6);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 156
cur_level = 15;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addTrip(laser1);
pg.addGate(level.platform.gate1, laser1, false, 0);
pg.addLift(level.platform.lift1, level.platform.button1, -255, 5);
pg.addCrate(crate5);
pg.addPower(level.skip);
stop();
Frame 163
cur_level = 19;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addTrip(laser1);
pg.addGate(level.platform.gate1, level.platform.button3, null, 180);
pg.addGate(level.platform.gate2, level.platform.button4, false, -90);
pg.addLift(level.platform.door1, laser1, -10, 40);
pg.addLift(level.platform.lift1, level.platform.button1, -275, 5);
pg.addVanishBlock(level.platform.door1, level.platform.button2);
pg.addPower(level.skip);
pg.addPower(level.pause);
pg.addCrate(crate13);
pg.addCrate(crate14);
stop();
Frame 170
cur_level = 29;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 20);
pg.addTrip(laser2);
pg.addGate(level.platform.gate1, laser2, null, 0);
pg.addLift(level.platform.lift1, level.platform.button1, -255, 5);
pg.addLift(level.platform.lift2, level.platform.button2, -45, 5);
pg.addCrate(crate15);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 177
cur_level = 41;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addTrip(laser1);
pg.addTrip(laser2);
pg.addVanishBlock(level.platform.door1, laser2);
pg.addLift(level.platform.door1, laser1, -10, 10);
pg.addLift(level.platform.door2, laser1, -1000, 40);
pg.addLift(level.platform.fade1, level.platform.button2, -250, 5);
pg.addButton(level.platform.button3, 0);
pg.addButton(level.platform.button4, 0);
pg.addGate(level.platform.gate1, level.platform.button3, true, -90);
pg.addGate(level.platform.gate2, level.platform.button4, true, -90);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 184
cur_level = 28;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 20);
pg.addButton(level.platform.button3, 20);
pg.addButton(level.platform.button4, 20);
pg.addDoor(level.platform.trap1, level.platform.button1);
pg.addGate(level.platform.door1, level.platform.button4, false, -90);
pg.addBridge(level.platform.bridge1, level.platform.button2, 70, 5);
pg.addDoor(level.platform.bridge1, level.platform.button3);
pg.addCrate(level.pod);
pg.addCrate(crate10);
pg.addPower(level.skip);
stop();
Frame 191
cur_level = 26;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addTrip(laser1);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 0);
pg.addLift(level.platform.lift1, level.platform.button2, -255, 5);
pg.addGate(level.platform.door1, level.platform.button1, true, -90);
pg.addGate(level.platform.door2, level.platform.button1, null, -90);
pg.addBridge(level.platform.bridge1, laser1, 660, 20);
pg.addBridge(level.platform.button1, laser1, 669, 20);
pg.addPower(level.skip);
stop();
Frame 198
cur_level = 35;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 20);
pg.addTrip(laser2);
pg.addDoor(level.platform.gate1, level.platform.button1);
pg.addDoor(level.platform.gate2, level.platform.button2);
pg.addLift(level.platform.lift1, laser2, -255, 5);
pg.addCrate(crate6);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 206
cur_level = 24;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 0);
pg.addButton(level.platform.button2, 0);
pg.addButton(level.platform.button3, 0);
pg.addButton(level.platform.button4, 0);
pg.addLift(level.platform.crush1, level.platform.button3, -500, 40);
pg.addLift(level.platform.crush2, level.platform.button1, -500, 40);
pg.addLift(level.platform.crush3, level.platform.button2, -500, 40);
pg.addVanishBlock(level.platform.disk1, level.platform.button2);
pg.addVanishBlock(level.platform.disk2, level.platform.button3);
pg.addVanishBlock(level.platform.disk3, level.platform.button1);
pg.addVanishBlock(level.platform.vanish, level.platform.button4);
pg.addCrate(box1);
pg.addCrate(box2);
pg.addCrate(box3);
pg.addPower(level.skip);
stop();
Frame 213
cur_level = 37;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addTrip(laser1);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.gate1, 5);
pg.addButton(level.platform.gate2, 5);
pg.addGate(level.platform.gate1, level.platform.button1, null, 90);
pg.addGate(level.platform.gate2, level.platform.gate1, null, -90);
pg.addGate(level.platform.gate3, level.platform.gate2, null, 90);
pg.addBridge(level.platform.left_block, laser1, 8, 1);
pg.addBridge(level.platform.gate2, laser1, 420, 1);
pg.addBridge(level.platform.right_block, laser1, 420, 1);
pg.addBridge(level.platform.gate1, laser1, 420, 1);
pg.addBridge(level.platform.gate3, laser1, 420, 1);
pg.addPower(level.skip);
stop();
Frame 220
cur_level = 11;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addSeesaw(level.platform.lever, true);
pg.addButton(level.platform.button1, 20);
pg.addLift(level.platform.autolift, level.platform.button1, -440, 5);
pg.addCrate(box5);
pg.addPower(level.skip);
stop();
Frame 227
cur_level = 21;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addGate(level.platform.gate1, level.platform.button1, false, 180);
pg.addBalance(level.platform.balance1, level.platform.balance2, 10);
pg.addSeesaw(level.platform.lever, true);
pg.addPower(level.skip);
stop();
Frame 234
cur_level = 30;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addSeesaw(level.platform.lever, true);
pg.addCrate(box5);
pg.addPower(level.skip);
stop();
Frame 241
cur_level = 39;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addDoor(level.platform.vanish, level.platform.button1);
pg.addGate(level.platform.gate1, level.platform.button2, true, -90);
pg.addSeesaw(level.platform.lever, true);
pg.addCrate(multibox);
pg.addPower(level.skip);
stop();
Frame 248
cur_level = 20;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addGate(level.platform.gate1, level.platform.button3, false, 90);
pg.addGate(level.platform.trap1, level.platform.button2, null, -90);
pg.addGate(level.platform.trap2, level.platform.button4, null, 90);
pg.addLift(level.platform.lift1, level.platform.button1, -155, 5);
pg.addCrate(bomb1);
pg.addCrate(level.pod);
pg.addTimeBomb(bomb1, 15);
pg.addPower(level.skip);
stop();
Frame 255
cur_level = 14;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 0);
pg.addGate(level.platform.gate1, level.platform.button1, true, 90);
pg.addGate(level.platform.gate2, level.platform.button1, false, 0);
pg.addCrate(box27a);
pg.addCrate(box27b);
pg.addCrate(box27c);
pg.addPower(level.skip);
stop();
Frame 262
cur_level = 17;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.elevator1, 0);
pg.addButton(level.platform.lift2, 0);
pg.addButton(level.platform.pad, 0);
pg.addLift(level.platform.lift1, level.platform.lift2, -184, 5);
pg.addLift(level.platform.lift2, level.platform.lift2, -184, 5);
pg.addLift(level.platform.elevator1, level.platform.elevator1, -397, 5);
pg.addLift(level.platform.elevator2, level.platform.elevator1, -397, 5);
pg.addDoor(level.platform.door, level.platform.pad);
pg.addPower(level.skip);
stop();
Frame 269
cur_level = 16;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addCrate(box29a);
pg.addButton(level.platform.lift, 0);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addLift(level.platform.lift, level.platform.lift, -448, 40);
pg.addLift(level.platform.crusher, level.platform.button1, -1500, 40);
pg.addDoor(level.platform.door1, level.platform.button2);
pg.addDoor(level.platform.door2, level.platform.button2);
pg.addDoor(level.platform.door3, level.platform.button2);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 276
cur_level = 25;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addCrate(box30a);
pg.addCrate(box30b);
pg.addCrate(box30c);
pg.addButton(level.platform.button);
pg.addVanishBlock(level.platform.disc1, level.platform.button);
pg.addVanishBlock(level.platform.disc2, level.platform.button);
pg.addVanishBlock(level.platform.disc3, level.platform.button);
pg.addDoor(level.platform.door1, level.platform.button);
pg.addDoor(level.platform.door2, level.platform.button);
pg.addDoor(level.platform.door3, level.platform.button);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 283
cur_level = 27;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addGate(level.platform.gate1, level.platform.button1, null, 180);
pg.addGate(level.platform.gate2, level.platform.button2, null, -90);
pg.addCrate(crate31a);
pg.addCrate(crate31b);
pg.addCrate(crate31c);
pg.addCrate(crate31d);
pg.addCrate(crate31e);
pg.addCrate(crate31f);
pg.addCrate(bomb);
pg.addTimeBomb(bomb, 30);
pg.addPower(level.skip);
stop();
Frame 290
cur_level = 42;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.pad1, 0);
pg.addButton(level.platform.pad3, 0);
pg.addButton(level.platform.pad4, 0);
pg.addButton(level.platform.pad6, 0);
pg.addButton(level.platform.pad7, 0);
pg.addLift(level.platform.door1, level.platform.pad1, -315, 10);
pg.addLift(level.platform.door2, level.platform.pad7, -270, 10);
pg.addLift(level.platform.door3, level.platform.pad6, -440, 10);
pg.addLift(level.platform.door4, level.platform.pad1, 90, 10);
pg.addLift(level.platform.door5, level.platform.pad4, 90, 10);
pg.addVanishBlock(level.platform.vanish, level.platform.pad3);
pg.addPower(level.skip);
pg.addCrate(level.pod);
stop();
Frame 297
cur_level = 18;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addTrip(trip1);
pg.addTrip(trip2);
pg.addTrip(trip3);
pg.addTrip(trip4);
pg.addTrip(trip5);
pg.addTrip(trip6);
pg.addTrip(trip7);
pg.addTrip(trip8);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.pad1, 0);
pg.addButton(level.platform.pad2, 0);
pg.addVanishBlock(level.platform.crumble1, trip1);
pg.addVanishBlock(level.platform.crumble2, trip2);
pg.addVanishBlock(level.platform.crumble3, trip3);
pg.addVanishBlock(level.platform.crumble4, trip4);
pg.addVanishBlock(level.platform.crumble5, trip5);
pg.addVanishBlock(level.platform.crumble6, trip6);
pg.addVanishBlock(level.platform.crumble7, trip7);
pg.addVanishBlock(level.platform.crumble8, trip8);
pg.addLift(level.platform.lift, level.platform.button1, -457, 5);
pg.addDoor(level.platform.door1, level.platform.pad1);
pg.addDoor(level.platform.door2, level.platform.pad2);
pg.addPower(level.skip);
stop();
Frame 304
cur_level = 31;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addCrate(box35_1);
pg.addCrate(box35_2);
pg.addButton(level.platform.pad1, 0);
pg.addButton(level.platform.pad2, 0);
pg.addButton(level.platform.pad3, 0);
pg.addButton(level.platform.pad4, 0);
pg.addButton(level.platform.pad5, 0);
pg.addGate(level.platform.gate1, level.platform.pad1, false, -180);
pg.addGate(level.platform.gate2, level.platform.pad1, true, -90);
pg.addGate(level.platform.gate3, level.platform.pad3, false, -180);
pg.addBridge(level.platform.platform1, level.platform.pad2, 121, 5);
pg.addVanishBlock(level.platform.platform1, level.platform.pad3);
pg.addVanishBlock(level.platform.platform2, level.platform.pad3);
pg.addTrip(trip);
pg.addVanishBlock(level.platform.crumble, trip);
pg.addBridge(level.platform.left_block, level.platform.pad5, 0, 1);
pg.addBridge(level.platform.right_block, level.platform.pad5, 420, 1);
pg.addLift(level.platform.mangler, level.platform.pad4, 100, 40);
pg.addPower(level.skip);
stop();
Frame 311
cur_level = 33;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.pad, 0);
pg.addSeesaw(level.platform.lever, true);
pg.addButton(level.platform.lever.right, 0);
pg.addButton(level.platform.lever.left, 0);
pg.addLift(level.platform.lift, level.platform.lever.left, -355, 20);
pg.addBridge(level.platform.bridge, level.platform.lever.right, 500, 20);
pg.addCrate(box36_1);
pg.addPower(level.skip);
pg.addGate(level.platform.gate1, level.platform.pad, true, 90);
pg.addGate(level.platform.gate2, level.platform.pad, true, 90);
stop();
Frame 318
cur_level = 38;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addLift(level.platform.lift, level.platform.button1, -450, 30);
pg.addBridge(level.platform.gate, level.platform.button2, 610, 5);
pg.addGate(level.platform.gate, level.platform.button3, null, 180);
pg.addCrate(crate37_1);
pg.addCrate(crate37_2);
pg.addBalance(level.platform.balance1, level.platform.balance2, 10);
pg.addPower(level.skip);
stop();
Frame 325
cur_level = 23;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.pad, 0);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.lift2, 0);
pg.addGate(level.platform.gate1, level.platform.button1, null, 180);
pg.addGate(level.platform.gate2, level.platform.pad, true, 90);
pg.addBridge(level.platform.bridge, level.platform.button2, 478, 5);
pg.addLift(level.platform.lift1, level.platform.button3, -399, 5);
pg.addLift(level.platform.door, level.platform.button3, -600, 40);
pg.addLift(level.platform.lift2, level.platform.lift2, -83, 10);
pg.addCrate(bomb);
pg.addTimeBomb(bomb, 20);
pg.addPower(level.skip);
stop();
Frame 332
cur_level = 32;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.pad, 0);
pg.addButton(level.platform.button1, 0);
pg.addButton(level.platform.button2, 0);
pg.addButton(level.platform.seesaw.left, 0);
pg.addButton(level.platform.seesaw.right, 0);
pg.addButton(level.platform.lift1, 0);
pg.addButton(level.platform.lift2, 0);
pg.addButton(level.platform.bridge, 0);
pg.addSeesaw(level.platform.seesaw, true);
pg.addBridge(level.platform.bridge, level.platform.button2, 659, 35);
pg.addLift(level.platform.spike_block, level.platform.pad, -110, 10);
pg.addLift(level.platform.lift1, level.platform.lift1, -405, 5);
pg.addLift(level.platform.lift2, level.platform.lift2, -33, 5);
pg.addLift(level.platform.spike_block2, level.platform.button1, -170, 10);
pg.addLift(level.platform.crush1, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush2, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush3, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush4, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush5, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush6, level.platform.seesaw.left, -712, 30);
pg.addLift(level.platform.crush7, level.platform.seesaw.left, -712, 30);
pg.addBridge(level.pod, level.platform.button2, 659, 35);
pg.addCrate(crate39_1);
pg.addCrate(crate39_2);
pg.addPower(level.skip);
pg.addPower(level.pause);
level.pod.object = pg;
stop();
Frame 339
cur_level = 34;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 0);
pg.addButton(level.platform.button2, 0);
pg.addButton(level.platform.seesaw.left, 0);
pg.addButton(level.platform.seesaw.right, 0);
pg.addTrip(laser);
pg.addDoor(level.platform.door, level.platform.button1);
pg.addSeesaw(level.platform.seesaw, true);
pg.addLift(level.platform.lift, level.platform.button2, -350, 5);
pg.addLift(level.platform.crush1, level.platform.seesaw.left, -800, 30);
pg.addLift(level.platform.crush2, level.platform.seesaw.right, -800, 30);
pg.addLift(level.platform.crush3, laser, -650, 30);
pg.addCrate(bomb1);
pg.addCrate(bomb2);
pg.addPower(level.skip);
stop();
Frame 346
cur_level = 13;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 20);
pg.addDoor(level.platform.door1, level.platform.button1);
pg.addDoor(level.platform.door2, level.platform.button2);
pg.addCrate(bomb);
pg.addTimeBomb(bomb, 5);
pg.addPower(level.skip);
pg.addPower(level.pause);
stop();
Frame 353
cur_level = 5;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1, 20);
pg.addButton(level.platform.button2, 20);
pg.addLift(level.platform.lift, level.platform.button2, -345, 10);
pg.addBridge(level.platform.bridge, level.platform.button1, 620, 10);
pg.addPower(level.skip);
stop();
Frame 360
cur_level = 22;
pg = new PlatformGame(this, level.platform, level.pod);
pg.addButton(level.platform.button1);
pg.addButton(level.platform.button2);
pg.addButton(level.platform.button3);
pg.addButton(level.platform.button4);
pg.addButton(level.platform.button5);
pg.addLift(level.platform.lift1, level.platform.button3, -305, 5);
pg.addDoor(level.platform.door1, level.platform.button1);
pg.addDoor(level.platform.door2, level.platform.button2);
pg.addDoor(level.platform.door3, level.platform.button4);
pg.addDoor(level.platform.door4, level.platform.button5);
pg.addCrate(level.pod);
pg.addPower(level.skip);
stop();
Symbol 8 MovieClip [skip] Frame 1
stop();
Symbol 17 MovieClip Frame 25
stop();
Symbol 19 MovieClip [explosion_mc] Frame 26
stop();
Symbol 23 MovieClip Frame 1
stop();
Symbol 23 MovieClip Frame 20
gotoAndStop ("main");
Symbol 23 MovieClip Frame 31
gotoAndStop ("main");
Symbol 46 MovieClip [player_mc] Frame 1
carry_arm_mc._visible = false;
var override_count = 0;
Symbol 46 MovieClip [player_mc] Frame 2
stop();
Symbol 46 MovieClip [player_mc] Frame 29
gotoAndPlay ("walk");
Symbol 46 MovieClip [player_mc] Frame 31
stop();
Symbol 46 MovieClip [player_mc] Frame 40
stop();
Symbol 46 MovieClip [player_mc] Frame 50
stop();
Symbol 46 MovieClip [player_mc] Frame 60
this.onEnterFrame = function () {
if (_currentframe < 60) {
this.gotoAndPlay(61);
}
override_count++;
if (override_count >= 27) {
gotoAndStop ("end");
}
};
Symbol 46 MovieClip [player_mc] Frame 86
stop();
this.onEnterFrame = null;
trace("an explosion just occured");
this.object.afterExplode();
_root.death.play();
_root.pg.destroy();
Symbol 67 MovieClip Frame 33
stop();
Symbol 80 MovieClip Frame 1
stop();
Symbol 86 MovieClip Frame 1
stop();
Symbol 1006 MovieClip [__Packages.PlatformGame] Frame 0
class PlatformGame
{
var platform, pod, startX, startY, parent, targetArea_mc, player, desatMatrix, desatFilter, actors, can_spawn, can_spawn_soon, can_rewind, buttons, crates, gates, powerups, lifts, tripwires, has_skip, has_shuffle, used_pause, keyListener, timeInterval, time, pastself, has_pause, has_abandoned;
function PlatformGame (parent, platform, pod) {
this.platform = platform;
this.pod = pod;
this.pod._object = this;
startX = pod._x;
startY = pod._y;
this.parent = parent;
_global.rewind_uses = 0;
_global.new_pause = false;
targetArea_mc = parent.createEmptyMovieClip("targetArea_mc", parent.getNextHighestDepth());
player = new Player(targetArea_mc, platform, targetArea_mc.getNextHighestDepth(), this);
player.setPosition(startX, startY);
desatMatrix = new com.quasimondo.geom.ColorMatrix();
desatFilter = new flash.filters.ColorMatrixFilter(desatMatrix.matrix);
if (parent.cur_level <= (parent.MAX_LEVELS - 5)) {
parent.level_indicator.text = "level " + parent.cur_level;
} else {
parent.level_indicator.text = "bonus " + Number(parent.cur_level - 35);
}
actors = new Array();
actors.push(player);
can_spawn = true;
can_spawn_soon = true;
can_rewind = true;
buttons = new Array();
crates = new Array();
gates = new Array();
powerups = new Array();
lifts = new Array();
tripwires = new Array();
parent.loop.gotoAndStop("on");
parent.skip.gotoAndStop("off");
parent.shuffle.gotoAndStop("off");
has_skip = false;
has_shuffle = false;
used_pause = false;
if (!_global.has_pause) {
parent.pause.gotoAndStop("off");
}
stopClock();
this.pod.gotoAndPlay("entrance");
keyListener = new Object();
keyListener.game = this;
keyListener.onKeyDown = getKeyInput;
Key.addListener(keyListener);
_global.music_position = _global.music_snd.position / 1000;
}
function getKeyInput() {
if (Key.isDown(_global.reset_key)) {
trace("reset key");
_root.reset.onRelease();
} else if (Key.isDown(_global.rewind_key)) {
trace("rewind key");
_root.rewind.onRelease();
} else if (Key.isDown(_global.eject_key)) {
trace("eject key");
_root.eject.onRelease();
} else if (Key.isDown(_global.mute_key)) {
trace("mute key");
_root.mutesound_btn.onRelease();
}
}
function desaturate() {
parent.background._visible = false;
desatMatrix.desaturate();
applyFilters();
}
function resaturate() {
parent.background._visible = true;
desatMatrix.reset();
applyFilters();
}
function applyFilters() {
desatFilter = new flash.filters.ColorMatrixFilter(desatMatrix.matrix);
for (var _local4 in actors) {
if (actors[_local4] != player) {
actors[_local4].getMovieClip().filters = new Array(desatFilter);
}
}
for (var _local2 in crates) {
crates[_local2].getMovieClip().filters = new Array(desatFilter);
}
for (var _local5 in powerups) {
powerups[_local5].getMovieClip().filters = new Array(desatFilter);
}
for (var _local3 in buttons) {
buttons[_local3].getMovieClip().filters = new Array(desatFilter);
}
for (var _local6 in gates) {
gates[_local6].getMovieClip().filters = new Array(desatFilter);
}
for (var _local6 in lifts) {
lifts[_local6].getMovieClip().filters = new Array(desatFilter);
}
parent.sign_mc.filters = new Array(desatFilter);
parent.bg.filters = new Array(desatFilter);
platform.filters = new Array(desatFilter);
pod.filters = new Array(desatFilter);
}
function resetClock() {
stopClock();
timeInterval = setInterval(this, "clock", 990);
}
function stopClock() {
time = 0;
parent.clock.text = "00:00";
clearInterval(timeInterval);
}
function clock() {
if (_global.paused) {
return(undefined);
}
var _local3 = "";
var _local5;
var _local4;
time++;
_local4 = time % 60;
_local5 = Math.floor(time / 60) % 60;
if (_local4 < 10) {
_local3 = (_local5 + ":0") + _local4;
} else {
_local3 = (_local5 + ":") + _local4;
}
if (_local5 < 10) {
_local3 = "0" + _local3;
}
parent.clock.text = _local3;
}
function addButton(btn_mc, dep_num) {
var _local2 = new PressureButton(btn_mc, dep_num, this);
buttons.push(_local2);
}
function addSeesaw(lvr_mc, dep_num) {
var _local2 = new Seesaw(lvr_mc, dep_num, this);
lifts.push(_local2);
}
function addTrip(btn_mc) {
var _local2 = new TripWire(btn_mc, this);
tripwires.push(_local2);
}
function addCrate(crate_mc) {
var _local2 = new Crate(crate_mc, this);
crates.push(_local2);
}
function addTimeBomb(bomb_mc, start_time) {
var _local2 = new TimeBomb(bomb_mc, start_time, this);
crates.push(_local2);
}
function addGate(gate_mc, btn_mc, push_h, openRotation) {
var _local2 = new SwingGate(gate_mc, btn_mc, openRotation, push_h, this);
gates.push(_local2);
}
function addDoor(gate_mc, btn_mc) {
var _local2 = new BlastDoor(gate_mc, btn_mc, this);
gates.push(_local2);
}
function addVanishBlock(gate_mc, btn_mc) {
var _local2 = new VanishBlock(gate_mc, btn_mc, this);
gates.push(_local2);
}
function addLift(lift_mc, btn_mc, raisedLevel, speed) {
var _local2 = new Lift(lift_mc, btn_mc, raisedLevel, speed, this);
lifts.push(_local2);
}
function addBridge(bridge_mc, btn_mc, targetLocation, speed) {
var _local2 = new Bridge(bridge_mc, btn_mc, targetLocation, speed, this);
lifts.push(_local2);
}
function addBalance(balance1_mc, balance2_mc, bottomLevel) {
var _local2 = new Balance(balance1_mc, balance2_mc, bottomLevel, this);
lifts.push(_local2);
}
function addPower(power_mc) {
var _local3;
_local3 = String(power_mc._name.split(".").pop());
var _local2 = new PowerUp(_local3, power_mc, this);
powerups.push(_local2);
}
function onMidLoop() {
if (parent.cur_level == 1) {
parent.sign_mc.time_looped = true;
}
for (var _local2 in actors) {
actors[_local2].reset();
actors[_local2].setPosition(startX, startY);
}
parent.triangle_mc._visible = false;
for (var _local2 in powerups) {
powerups[_local2].reset();
}
for (var _local2 in gates) {
gates[_local2].reset();
}
for (var _local2 in crates) {
crates[_local2].reset();
}
for (var _local2 in lifts) {
lifts[_local2].reset();
}
for (var _local2 in tripwires) {
tripwires[_local2].reset();
}
for (var _local2 in buttons) {
buttons[_local2].reset();
}
}
function onTimeLoop() {
can_spawn = true;
can_spawn_soon = true;
can_rewind = true;
_global.new_pause = false;
resetClock();
player.setTriangle();
parent.triangle_mc._visible = true;
for (var _local3 in actors) {
actors[_local3].setVisible(true);
actors[_local3].activate();
}
activateAll();
}
function activateAll() {
for (var _local2 in crates) {
crates[_local2].activate();
}
for (var _local3 in buttons) {
buttons[_local3].activate();
}
for (var _local5 in gates) {
gates[_local5].activate();
}
for (var _local4 in powerups) {
powerups[_local4].activate();
}
for (var _local4 in lifts) {
lifts[_local4].activate();
}
for (var _local4 in tripwires) {
tripwires[_local4].activate();
}
}
function onEntranceComplete() {
resetClock();
player.activate();
player.setTriangle();
parent.triangle_mc._visible = true;
activateAll();
}
function spawnPast(recAct) {
if (can_spawn) {
can_spawn = false;
can_spawn_soon = false;
} else {
return(undefined);
}
parent.triangle_mc._visible = false;
stopClock();
pastself = new PastSelf(recAct, targetArea_mc, platform, targetArea_mc.getNextHighestDepth(), this);
actors.push(pastself);
player.reset();
player.setPosition(startX, startY);
player.setVisible(false);
pod.gotoAndPlay("timeloop");
}
function nextLevel() {
can_spawn = false;
can_spawn_soon = false;
_global.level_time = time;
trace("level time: " + _global.level_time);
pod.gotoAndPlay("win");
player.reset();
player.setVisible(false);
parent.triangle_mc._visible = false;
_global.stole_pause = _global.has_pause;
}
function onWarpOut() {
for (var _local2 in actors) {
actors[_local2].destroy();
if (actors[_local2] != player) {
delete actors[_local2];
actors[_local2] = null;
}
}
if (has_shuffle) {
parent.randomLevel();
} else if (has_skip) {
parent.nextLevel();
}
can_spawn = true;
can_spawn_soon = true;
}
function toString() {
return("PlatformGame");
}
function destroy() {
_global.paused = false;
_global.music_snd.stop("music");
parent.level.platform._alpha = 100;
time = 0;
parent.clock.text = "00:00";
can_spawn = true;
can_spawn_soon = true;
clearInterval(timeInterval);
for (var _local3 in actors) {
actors[_local3].reset();
}
for (var _local3 in powerups) {
powerups[_local3].reset();
}
for (var _local3 in gates) {
gates[_local3].reset();
}
for (var _local3 in crates) {
crates[_local3].reset();
}
for (var _local3 in lifts) {
lifts[_local3].reset();
}
for (var _local3 in tripwires) {
tripwires[_local3].reset();
}
for (var _local3 in buttons) {
buttons[_local3].reset();
}
has_skip = false;
has_shuffle = false;
has_pause = false;
has_abandoned = false;
used_pause = false;
}
function rewind() {
if ((!can_rewind) || (_global.paused)) {
return(undefined);
}
can_rewind = false;
can_spawn = false;
can_spawn_soon = false;
_global.rewind_uses++;
trace("_global.rewind_uses: " + _global.rewind_uses);
parent.flash_mc.play();
used_pause = false;
player.my_crate = null;
player.velocity = 0;
parent.triangle_mc._visible = false;
stopClock();
player.recordedActions = [];
player.reset();
player.setPosition(startX, startY);
player.setVisible(false);
pod.gotoAndPlay("rewind");
has_skip = false;
has_shuffle = false;
if (_global.new_pause) {
_global.has_pause = false;
parent.pause.gotoAndStop("off");
} else if (_global.has_pause) {
parent.pause.gotoAndStop("on");
}
if (parent.cur_level == 1) {
parent.sign_mc.gotoAndStop(1);
}
has_abandoned = false;
used_pause = false;
}
function reset() {
var _local4 = new Player(targetArea_mc, platform, targetArea_mc.getNextHighestDepth(), this);
_global.music_snd.stop("music");
can_spawn = true;
can_spawn_soon = true;
can_rewind = true;
_global.rewind_uses = 0;
player.velocity = 0;
for (var _local3 in actors) {
actors[_local3].destroy();
if (actors[_local3] != player) {
delete actors[_local3];
actors[_local3] = null;
}
}
for (var _local3 in powerups) {
powerups[_local3].reset();
}
for (var _local3 in gates) {
gates[_local3].reset();
}
for (var _local3 in crates) {
crates[_local3].reset();
}
for (var _local3 in lifts) {
lifts[_local3].reset();
}
for (var _local3 in tripwires) {
tripwires[_local3].reset();
}
for (var _local3 in buttons) {
buttons[_local3].reset();
}
player = _local4;
player.setPosition(startX, startY);
actors = new Array();
actors.push(player);
parent.loop.gotoAndStop("on");
parent.pause.gotoAndStop("off");
parent.skip.gotoAndStop("off");
parent.shuffle.gotoAndStop("off");
_global.paused = false;
parent.level.platform._alpha = 100;
stopClock();
resaturate();
has_skip = false;
has_shuffle = false;
_global.has_pause = _global.stole_pause;
if (_global.has_pause) {
parent.pause.gotoAndStop("on");
}
has_abandoned = false;
used_pause = false;
pod.gotoAndPlay("entrance");
if (parent.cur_level == 1) {
parent.sign_mc.gotoAndStop(1);
}
}
}
Symbol 1007 MovieClip [__Packages.Actor] Frame 0
class Actor
{
var is_player, _name, actor_mc, clock_height, platform, parent, holder, can_get_crate, can_spawn_soon, ducking, weight, force, acceleration, velocity, myMove, halfwidth, halfheight, thud_played, see_sawed, actionInterval, my_crate;
function Actor (holder, platform, depth, parent) {
is_player = false;
_name = "actor" + autoInc;
actor_mc = actor_mc.createEmptyMovieClip("actor" + autoInc, holder.getNextHighestDepth());
actor_mc = holder.attachMovie("player_mc", _name, depth);
actor_mc.carry_arm_mc._visible = false;
actor_mc._visible = false;
actor_mc.object = this;
clock_height = actor_mc.clock_mc._y;
this.platform = platform;
this.parent = parent;
this.holder = holder;
init();
autoInc++;
can_get_crate = true;
can_spawn_soon = true;
ducking = false;
weight = 100;
force = 0;
}
function init() {
acceleration = 1;
velocity = 0;
myMove = 0;
halfwidth = actor_mc.hit_mc._width / 2;
halfheight = actor_mc.hit_mc.height / 2;
thud_played = false;
see_sawed = false;
actor_mc.carry_arm_mc._visible = false;
}
function activate() {
actor_mc._visible = true;
actor_mc.carry_arm_mc._visible = false;
clearInterval(actionInterval);
actionInterval = setInterval(this, "action", 30);
}
function controls() {
if (my_crate) {
my_crate.is_walking_left = false;
my_crate.is_walking_right = false;
}
if (downKey()) {
myMove = myMove + 4;
if (velocity < 0) {
velocity = 0;
}
ducking = true;
actor_mc.gotoAndStop("duck");
} else if (upKey()) {
myMove = myMove + 1;
if ((velocity == 0) && (onGround())) {
velocity = jump_velocity;
actor_mc.hit_mc.gotoAndPlay("jump");
if (my_crate) {
velocity = jump_velocity + 5;
my_crate.is_jumping = true;
} else {
velocity = jump_velocity;
}
}
} else if ((velocity < 0) && (!see_sawed)) {
velocity = 0;
}
if (rightKey()) {
myMove = myMove + 2;
if (actor_mc._currentframe < WALK_FRAME) {
actor_mc.gotoAndPlay("walk");
}
if (!platform.hitTest(actor_mc._x + (halfwidth + SPEED), actor_mc._y - STEPUP, true)) {
if ((!ducking) || (velocity != 0)) {
actor_mc._xscale = 100;
actor_mc.clock_mc._xscale = 100;
actor_mc._x = actor_mc._x + SPEED;
}
if (my_crate) {
my_crate.is_walking_right = true;
}
}
} else if (leftKey()) {
myMove = myMove + 8;
if (actor_mc._currentframe < WALK_FRAME) {
actor_mc.gotoAndPlay("walk");
}
if (!platform.hitTest(actor_mc._x - (halfwidth + SPEED), actor_mc._y - STEPUP, true)) {
if ((!ducking) || (velocity != 0)) {
actor_mc._xscale = -100;
actor_mc.clock_mc._xscale = -100;
actor_mc._x = actor_mc._x - SPEED;
}
if (my_crate) {
my_crate.is_walking_left = true;
}
}
} else if (onGround() && (velocity == 0)) {
actor_mc.gotoAndStop("stop");
}
if (ducking) {
actor_mc.gotoAndStop("duck");
actor_mc.clock_mc._y = -15;
}
return(myMove);
}
function action() {
if (actor_mc._visible) {
ducking = false;
actor_mc.clock_mc._y = clock_height;
gravity();
controls();
}
}
function downKey() {
return(false);
}
function upKey() {
return(false);
}
function rightKey() {
return(false);
}
function leftKey() {
return(false);
}
function onGround() {
if (velocity < 0) {
return(false);
}
for (var _local3 in parent.crates) {
if ((((parent.crates[_local3].velocity <= 0) || (_global.paused)) && (parent.crates[_local3].name != "pod")) && (parent.crates[_local3].getMovieClip().hitTest(getX(), getY() + velocity, true))) {
if (actor_mc._currentframe > 30) {
actor_mc.gotoAndStop("stop");
}
return(true);
}
}
if ((platform.hitTest(actor_mc._x, actor_mc._y + velocity, true) || (platform.hitTest(actor_mc._x + (halfwidth - 5), actor_mc._y + velocity, true))) || (platform.hitTest(actor_mc._x - (halfwidth - 5), actor_mc._y + velocity, true))) {
if (actor_mc._currentframe > 30) {
actor_mc.gotoAndStop("stop");
}
return(true);
}
return(false);
}
function pushLeft(MOVE_SPEED) {
if (!platform.hitTest(actor_mc._x - (halfwidth + MOVE_SPEED), actor_mc._y - 5, true)) {
actor_mc._x = actor_mc._x - MOVE_SPEED;
if (my_crate) {
my_crate.is_walking_left = true;
}
}
}
function pushRight(MOVE_SPEED) {
if (!platform.hitTest(actor_mc._x + (halfwidth + MOVE_SPEED), actor_mc._y - 5, true)) {
actor_mc._x = actor_mc._x + MOVE_SPEED;
if (my_crate) {
my_crate.is_walking_right = true;
}
}
}
function hitHead() {
return((platform.hitTest(actor_mc._x, actor_mc._y - actor_mc._height, true) || (platform.hitTest(actor_mc._x + (halfwidth - 5), actor_mc._y - actor_mc._height, true))) || (platform.hitTest(actor_mc._x - (halfwidth - 5), actor_mc._y - actor_mc._height, true)));
}
function gravity() {
if (my_crate) {
my_crate.is_carried = true;
my_crate.setPosition(getX(), getTopY());
}
if (onGround()) {
touchGround();
} else if (hitHead()) {
if (platform.hitTest(getX(), getY() + velocity, true)) {
touchGround();
} else if (velocity < 0) {
velocity = -1 * velocity;
}
accelerate();
} else {
accelerate();
}
if (velocity > 0) {
thud_played = false;
actor_mc.gotoAndStop("fall");
} else if (velocity < 0) {
actor_mc.gotoAndStop("jump");
}
if (actor_mc._y > 800) {
fallForever();
}
}
function accelerate() {
velocity = velocity + acceleration;
if (velocity > TERMINAL_VELOCITY) {
velocity = TERMINAL_VELOCITY;
}
actor_mc._y = actor_mc._y + velocity;
force = velocity;
}
function setPosition(x, y) {
actor_mc._x = x;
actor_mc._y = y;
}
function getWeight() {
if (my_crate) {
return(weight + my_crate.getWeight());
}
return(weight);
}
function getCrate() {
if (_global.paused) {
return(undefined);
}
if (my_crate) {
my_crate.getMovieClip().gotoAndPlay("lift");
my_crate.setPosition(getX(), getY());
my_crate.is_carried = false;
my_crate.is_jumping = false;
my_crate.is_walking_left = false;
my_crate.is_walking_right = false;
my_crate = null;
can_spawn_soon = true;
can_get_crate = false;
actor_mc.r_arm_mc._visible = true;
actor_mc.carry_arm_mc._visible = false;
return(undefined);
}
for (var _local3 in parent.crates) {
if ((((!parent.crates[_local3].is_carried) && (parent.crates[_local3].velocity == 0)) && (parent.crates[_local3].name != "pod")) && (checkCrate(parent.crates[_local3].getMovieClip()))) {
my_crate = parent.crates[_local3];
my_crate.is_carried = true;
my_crate.velocity = 0;
parent.can_spawn = false;
can_spawn_soon = false;
my_crate.just_picked = true;
my_crate.is_lifting = false;
actor_mc.r_arm_mc._visible = false;
actor_mc.carry_arm_mc._visible = true;
my_crate.getMovieClip().gotoAndPlay("lift");
break;
}
}
can_get_crate = false;
return(undefined);
}
function checkCrate(tmp_crate) {
if ((((tmp_crate.hitTest(getLeftX(), getTopY(), true) || (tmp_crate.hitTest(getLeftX(), getY(), true))) || (tmp_crate.hitTest(getRightX(), getTopY(), true))) || (tmp_crate.hitTest(getRightX(), getY(), true))) || (tmp_crate.hitTest(getX(), getY(), true))) {
return(true);
}
return(false);
}
function checkHit() {
if (((parent.pod.hitTest(getLeftX(), getTopY(), true) || (parent.pod.hitTest(getLeftX(), getY(), true))) || (parent.pod.hitTest(getRightX(), getTopY(), true))) || (parent.pod.hitTest(getRightX(), getY(), true))) {
return(true);
}
return(false);
}
function touchGround() {
var _local2 = 0;
velocity = 0;
see_sawed = false;
if ((platform.hitTest(getX(), getY(), true) && (platform.hitTest(getRightX(), getTopY(), true))) && (platform.hitTest(getLeftX(), getTopY(), true))) {
trace("CRUSH CRUSH CRUSH!");
crush();
return(undefined);
}
if (platform.hitTest(getLeftX(), getTopY(), true) && (platform.hitTest(getRightX(), getTopY(), true))) {
trace("CRUSH SMASH CRUSH!");
crush();
return(undefined);
}
while (!onGround()) {
_local2++;
if (_local2 >= MAX_ADJUSTMENT) {
trace("EXPLOSINATE!");
actor_mc._y = actor_mc._y - _local2;
crush();
return(undefined);
}
actor_mc._y++;
}
while (platform.hitTest(getX(), getY() - 1, true)) {
_local2++;
if (_local2 >= MAX_ADJUSTMENT) {
trace("EXPLUNDEROUS!");
actor_mc._y = actor_mc._y + _local2;
crush();
return(undefined);
}
actor_mc._y--;
}
if (!thud_played) {
actor_mc.hit_mc.gotoAndPlay("thud");
thud_played = true;
}
if (my_crate) {
my_crate.is_jumping = false;
}
}
function fallForever() {
parent.parent.triangle_mc._visible = false;
stopActions();
parent.parent.fall.play();
parent.destroy();
}
function crush() {
parent.parent.triangle_mc._visible = false;
stopActions();
actor_mc.gotoAndPlay("explode");
}
function afterExplode() {
stopAllActions();
parent.parent.death.play();
parent.destroy();
return(true);
}
function getPos() {
var _local2 = new flash.geom.Point(actor_mc._x, actor_mc._y);
return(_local2);
}
function getX() {
return(actor_mc._x);
}
function getLeftX() {
return(actor_mc._x - halfwidth);
}
function getRightX() {
return(actor_mc._x + halfwidth);
}
function getMovieClip() {
return(actor_mc);
}
function getY() {
return(actor_mc._y);
}
function setY(new_y) {
actor_mc._y = new_y;
}
function setX(new_x) {
actor_mc._x = new_x;
}
function getTopY() {
return(actor_mc._y - actor_mc.hit_mc._height);
}
function setPos(point) {
actor_mc._x = point.x;
actor_mc._y = point.y;
trace(((("setPos(" + point.x) + ", ") + point.y) + ")");
}
function reset() {
velocity = 0;
setX(-1000);
setY(-1000);
actor_mc.gotoAndStop(1);
actor_mc.r_arm_mc._visible = true;
actor_mc.carry_arm_mc._visible = false;
actor_mc._visible = false;
my_crate.is_carried = false;
my_crate = null;
stopActions();
}
function setVisible(vis) {
actor_mc._visible = vis;
}
function isVisible() {
return(actor_mc._visible);
}
function stopActions() {
clearInterval(actionInterval);
}
function stopAllActions() {
for (var _local2 in parent.actors) {
parent.actors[_local2].stopActions();
parent.actors[_local2].actor_mc._visible = false;
}
}
function destroy() {
my_crate = null;
clearInterval(actionInterval);
actor_mc.removeMovieClip();
}
static var TERMINAL_VELOCITY = 50;
var jump_velocity = -20;
var SPEED = 6;
var am_player = false;
static var autoInc = 0;
var STEPUP = 10;
var WALK_FRAME = 11;
var MAX_ADJUSTMENT = 100;
}
Symbol 1008 MovieClip [__Packages.Crate] Frame 0
class Crate extends Object
{
var crate_mc, startX, startY, parent, is_carried, is_stacked, velocity, acceleration, weight, normal_weight, force, thud_played, is_jumping, is_walking_left, is_walking_right, name, checkInterval, is_lifting, is_unlifting, just_picked;
function Crate (crate_mc, parent) {
super();
this.crate_mc = crate_mc;
startX = crate_mc._x;
startY = crate_mc._y;
crate_mc.object = this;
this.parent = parent;
is_carried = false;
is_stacked = false;
velocity = 0;
acceleration = 1;
weight = 100;
normal_weight = 100;
force = 0;
thud_played = true;
is_jumping = false;
is_walking_left = false;
is_walking_right = false;
name = crate_mc._name;
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "gravity", 30);
}
function gravity() {
if (_global.paused) {
return(undefined);
}
weight = normal_weight;
checkPressure();
if (is_stacked && (STACK_MODE)) {
trace("what?");
is_carried = false;
}
is_stacked = false;
if (is_carried || (is_stacked)) {
return(undefined);
}
if (onGround()) {
touchGround();
} else {
accelerate();
}
is_lifting = (is_unlifting = false);
}
function accelerate() {
velocity = velocity + acceleration;
if (velocity > TERMINAL_VELOCITY) {
velocity = TERMINAL_VELOCITY;
}
if (velocity >= 3) {
thud_played = false;
}
crate_mc._y = crate_mc._y + velocity;
force = velocity;
}
function touchGround() {
velocity = 0;
while (!onGround()) {
crate_mc._y++;
}
if (!thud_played) {
crate_mc.gotoAndPlay("thud");
thud_played = true;
}
}
function onGround() {
if (velocity < 0) {
return(false);
}
for (var _local2 in parent.crates) {
if (((((parent.crates[_local2] != this) && (!parent.crates[_local2].is_carried)) && (parent.crates[_local2].velocity == 0)) && (parent.crates[_local2].getY() != crate_mc._y)) && (parent.crates[_local2].getMovieClip().hitTest(crate_mc._x, crate_mc._y + velocity, true))) {
return(true);
}
}
return(parent.platform.hitTest(getX(), getY() + velocity, true));
}
function toString() {
return("Crate " + crate_mc);
}
function destroy() {
clearInterval(checkInterval);
}
function setPosition(x, y) {
crate_mc._y = y;
crate_mc._x = x;
}
function checkPressure() {
for (var _local3 in parent.actors) {
if ((is_unlifting && (parent.actors[_local3].getY() < crate_mc._y)) && (crate_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY() + 10, false))) {
parent.actors[_local3].setY(crate_mc._y - (crate_mc._height - 5));
weight = weight + parent.actors[_local3].getWeight();
} else if (((parent.actors[_local3].my_crate != this) && (parent.actors[_local3].getY() < crate_mc._y)) && (crate_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), false))) {
weight = weight + parent.actors[_local3].getWeight();
if (is_walking_left) {
parent.actors[_local3].pushLeft(parent.actors[_local3].SPEED);
if (parent.actors[_local3].my_crate) {
var _local2 = parent.actors[_local3].my_crate.is_walking_left;
parent.actors[_local3].my_crate.is_walking_left = true;
parent.actors[_local3].my_crate.checkPressure();
parent.actors[_local3].my_crate.is_walking_left = _local2;
}
} else if (is_walking_right) {
parent.actors[_local3].pushRight(parent.actors[_local3].SPEED);
if (parent.actors[_local3].my_crate) {
var _local2 = parent.actors[_local3].my_crate.is_walking_right;
parent.actors[_local3].my_crate.is_walking_right = true;
parent.actors[_local3].my_crate.checkPressure();
parent.actors[_local3].my_crate.is_walking_right = _local2;
}
}
if (is_jumping) {
parent.actors[_local3].getMovieClip()._y = (crate_mc._y - crate_mc._height) + 2;
if (parent.actors[_local3].my_crate) {
var _local2 = parent.actors[_local3].my_crate.is_jumping;
parent.actors[_local3].my_crate.is_jumping = is_jumping;
parent.actors[_local3].my_crate.checkPressure();
parent.actors[_local3].my_crate.is_jumping = _local2;
}
} else if (just_picked) {
parent.actors[_local3].getMovieClip()._y = (crate_mc._y - crate_mc._height) + 2;
}
}
}
just_picked = false;
for (var _local3 in parent.crates) {
if (((is_unlifting && (parent.crates[_local3] != this)) && (parent.crates[_local3].getY() < crate_mc._y)) && (crate_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY() + 20, false))) {
parent.crates[_local3].setY(crate_mc._y - (crate_mc._height - 3));
weight = weight + parent.crates[_local3].getWeight();
parent.crates[_local3].is_unlifting = true;
} else if (((parent.crates[_local3] != this) && (parent.crates[_local3].getY() < crate_mc._y)) && (crate_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), false))) {
if (is_lifting) {
parent.crates[_local3].setY(crate_mc._y - (crate_mc._height - 3));
parent.crates[_local3].is_lifting = true;
} else if (STACK_MODE && (is_carried || (is_stacked))) {
parent.crates[_local3].is_stacked = true;
parent.crates[_local3].setPosition(crate_mc._x, crate_mc._y - (crate_mc._height - 3));
}
weight = weight + parent.crates[_local3].getWeight();
}
}
}
function getWeight() {
return(weight);
}
function getTopY() {
return(crate_mc._y - (crate_mc._height - 3));
}
function getY() {
return(crate_mc._y);
}
function setY(new_y) {
crate_mc._y = new_y;
}
function getX() {
return(crate_mc._x);
}
function getMovieClip() {
return(crate_mc);
}
function reset() {
is_carried = false;
is_stacked = false;
is_walking_left = (is_walking_right = false);
velocity = 0;
crate_mc._x = startX;
crate_mc._y = startY;
clearInterval(checkInterval);
}
static var TERMINAL_VELOCITY = 50;
static var STACK_MODE = false;
}
Symbol 1009 MovieClip [__Packages.Player] Frame 0
class Player extends Actor
{
var is_player, recordedActions, can_pause, actor_mc, getTopY, parent, getX, ducking, clock_height, gravity, my_crate, can_get_crate, getCrate, checkHit, reset, actionInterval, velocity, can_spawn_soon, onGround, jump_velocity, see_sawed, WALK_FRAME, platform, SPEED, halfwidth, STEPUP;
function Player (holder, platform, depth, parent) {
super(holder, platform, depth, parent);
is_player = true;
recordedActions = new Array();
can_pause = true;
parent.used_pause = false;
actor_mc.carry_arm_mc._visible = false;
parent.parent.pause.onRelease = function () {
if (_global.has_pause && (this._parent.pg.used_pause == false)) {
if (_global.paused) {
this._parent.pg.player.doUnpause();
} else {
this._parent.pg.player.doPause();
}
}
};
}
function downKey() {
return(Key.isDown(40) || (Key.isDown(_global.down_key)));
}
function upKey() {
return(Key.isDown(38) || (Key.isDown(_global.up_key)));
}
function rightKey() {
return(Key.isDown(39) || (Key.isDown(_global.right_key)));
}
function leftKey() {
return(Key.isDown(37) || (Key.isDown(_global.left_key)));
}
function setTriangle() {
parent.parent.triangle_mc._y = getTopY() - 30;
parent.parent.triangle_mc._x = getX();
}
function waitForPastSelves() {
if (amAlone()) {
trace("finally alone");
parent.nextLevel();
}
}
function action() {
if (!actor_mc._visible) {
return(undefined);
}
setTriangle();
ducking = false;
actor_mc.clock_mc._y = clock_height;
gravity();
var _local3 = 0;
if (can_pause && (pauseKey())) {
can_pause = false;
if ((((!my_crate) && (_global.has_pause)) && (parent.used_pause == false)) || (Key.isDown(27))) {
if (_global.paused == true) {
doUnpause();
return(undefined);
}
doPause();
return(undefined);
}
} else if (!pauseKey()) {
can_pause = true;
}
if (Key.isDown(_global.do_key)) {
if (can_get_crate) {
_local3 = _local3 + 16;
getCrate();
} else if (parent.can_spawn && (checkHit())) {
if ((parent.has_skip == true) || (parent.has_shuffle == true)) {
_global.player_time = _global.player_time + parent.time;
trace("player time: " + _global.player_time);
if (amAlone()) {
trace("alone");
parent.nextLevel();
} else {
if (parent.can_spawn) {
parent.pod.gotoAndPlay("exit");
parent.parent.triangle_mc._x = parent.pod._x;
parent.parent.triangle_mc._y = parent.pod._y - 135;
}
reset();
actionInterval = setInterval(this, "waitForPastSelves", 30);
}
return(undefined);
}
velocity = 0;
spawnPast(recordedActions);
recordedActions = [];
}
} else {
can_get_crate = true;
if (can_spawn_soon) {
parent.can_spawn = true;
}
}
if (my_crate) {
my_crate.is_walking_left = false;
my_crate.is_walking_right = false;
}
if (downKey()) {
_local3 = _local3 + 4;
if (velocity < 0) {
velocity = 0;
}
ducking = true;
actor_mc.gotoAndStop("duck");
} else if (upKey()) {
_local3 = _local3 + 1;
if ((velocity == 0) && (onGround())) {
actor_mc.hit_mc.gotoAndPlay("jump");
if (my_crate) {
velocity = jump_velocity + 5;
my_crate.is_jumping = true;
} else {
velocity = jump_velocity;
if (parent.parent.cur_level == 1) {
parent.parent.sign_mc.keys_used = true;
}
}
}
} else if ((velocity < 0) && (!see_sawed)) {
velocity = 0;
}
if (rightKey()) {
_local3 = _local3 + 2;
if (actor_mc._currentframe < WALK_FRAME) {
actor_mc.gotoAndPlay("walk");
}
if (!platform.hitTest(actor_mc._x + (halfwidth + SPEED), actor_mc._y - STEPUP, true)) {
if ((!ducking) || (velocity != 0)) {
actor_mc._xscale = 100;
actor_mc.clock_mc._xscale = 100;
actor_mc._x = actor_mc._x + SPEED;
}
}
if (my_crate) {
my_crate.is_walking_right = true;
}
} else if (leftKey()) {
_local3 = _local3 + 8;
if (actor_mc._currentframe < WALK_FRAME) {
actor_mc.gotoAndPlay("walk");
}
if (!platform.hitTest(actor_mc._x - (halfwidth + SPEED), actor_mc._y - STEPUP, true)) {
if ((!ducking) || (velocity != 0)) {
actor_mc._xscale = -100;
actor_mc.clock_mc._xscale = -100;
actor_mc._x = actor_mc._x - SPEED;
}
}
if (my_crate) {
my_crate.is_walking_left = true;
}
} else if (onGround() && (velocity == 0)) {
actor_mc.gotoAndStop("stop");
}
if (ducking) {
actor_mc.gotoAndStop("duck");
actor_mc.clock_mc._y = -15;
}
if (!_global.paused) {
recordedActions.push(_local3);
}
}
function doPause() {
trace("PAUSE");
_global.paused = true;
_global.pause_snd.start();
parent.desaturate();
parent.parent.pause.gotoAndStop("off");
_global.music_position = _global.music_snd.position / 1000;
_global.music_snd.stop("music");
}
function doUnpause() {
trace("UNPAUSE");
_global.paused = false;
for (var _local3 in parent.actors) {
if ((parent.actors[_local3].actor_mc._currentframe >= WALK_FRAME) && (parent.actors[_local3].actor_mc._currentframe <= (WALK_FRAME + 30))) {
parent.actors[_local3].actor_mc.play();
}
}
var _local4 = new flash.geom.Point(actor_mc._x, actor_mc._y);
recordedActions.push(_local4);
_global.has_pause = false;
_global.pause_snd.start();
parent.used_pause = true;
parent.resaturate();
_global.music_snd.start(_global.music_position);
}
function pauseKey() {
return(Key.isDown(80));
}
function amAlone() {
for (var _local2 in parent.actors) {
if ((parent.actors[_local2] != this) && (parent.actors[_local2].isVisible())) {
return(false);
}
}
return(true);
}
function spawnPast(recAct) {
_global.player_time = _global.player_time + parent.time;
parent.used_pause = false;
my_crate = null;
parent.spawnPast(recAct);
velocity = 0;
}
function destroy() {
parent.parent.triangle_mc._visible = false;
my_crate = null;
clearInterval(actionInterval);
recordedActions = new Array();
actor_mc.removeMovieClip();
}
}
Symbol 1010 MovieClip [__Packages.PastSelf] Frame 0
class PastSelf extends Actor
{
var recordedActions, velocity, cur_action, actor_mc, parent, setPos, getCrate, checkHit, stopAllActions, my_crate, actionInterval;
function PastSelf (actionlist, target, platform, depth, parent) {
super(target, platform, depth, parent);
recordedActions = new Array();
recordedActions = recordedActions.concat(actionlist);
velocity = 0;
cur_action = 0;
}
function downKey() {
return(down);
}
function upKey() {
return(up);
}
function rightKey() {
return(right);
}
function leftKey() {
return(left);
}
function action() {
if (!actor_mc._visible) {
return(undefined);
}
if (_global.paused) {
actor_mc.stop();
return(undefined);
}
if (cur_action < recordedActions.length) {
up = (down = (right = (left = false)));
if ((!parent.used_pause) && (recordedActions[cur_action].x != undefined)) {
trace("point: " + recordedActions[cur_action]);
trace("TELEPORT!");
_global.has_pause = false;
parent.used_pause = true;
setPos(recordedActions[cur_action]);
parent.parent.pause.gotoAndStop("off");
cur_action++;
_global.pause_snd.start();
return(undefined);
}
switch (recordedActions[cur_action]) {
case 0 :
break;
case 1 :
up = true;
break;
case 3 :
up = true;
right = true;
break;
case 2 :
right = true;
break;
case 6 :
down = true;
right = true;
break;
case 4 :
down = true;
break;
case 12 :
down = true;
left = true;
break;
case 8 :
left = true;
break;
case 9 :
up = true;
left = true;
break;
default :
if ((recordedActions[cur_action] - 16) >= 0) {
getCrate();
} else {
trace("ERROR. Past self has bad instruction");
}
}
super.action();
cur_action++;
} else {
if (!checkHit()) {
causeParadox();
} else if (parent.can_spawn) {
velocity = 0;
parent.pod.gotoAndPlay("exit");
}
reset();
}
}
function causeParadox() {
stopAllSounds();
parent.parent.paradox.play();
parent.parent.triangle_mc._visible = false;
trace("PARADOX!");
stopAllActions();
parent.destroy();
}
function reset() {
velocity = 0;
cur_action = 0;
super.reset();
}
function destroy() {
my_crate = null;
clearInterval(actionInterval);
recordedActions = null;
actor_mc.removeMovieClip();
}
var down = false;
var up = false;
var right = false;
var left = false;
}
Symbol 1011 MovieClip [__Packages.com.quasimondo.geom.ColorMatrix] Frame 0
class com.quasimondo.geom.ColorMatrix
{
var matrix;
function ColorMatrix (mat) {
if (mat instanceof com.quasimondo.geom.ColorMatrix) {
matrix = mat.matrix.concat();
} else if (mat instanceof Array) {
matrix = mat.concat();
} else {
reset();
}
}
function reset() {
matrix = IDENTITY.concat();
}
function clone() {
return(new com.quasimondo.geom.ColorMatrix(matrix));
}
function adjustSaturation(s) {
trace("adjustSaturation called");
var _local2 = 1 - s;
var _local5 = _local2 * r_lum;
var _local3 = _local2 * g_lum;
var _local4 = _local2 * b_lum;
var _local7 = Array(_local5 + s, _local3, _local4, 0, 0, _local5, _local3 + s, _local4, 0, 0, _local5, _local3, _local4 + s, 0, 0, 0, 0, 0, 1, 0);
concat(_local7);
}
function adjustContrast(r, g, b) {
g = g || (r);
b = b || (r);
r = r + 1;
g = g + 1;
b = b + 1;
var _local5 = Array(r, 0, 0, 0, 128 * (1 - r), 0, g, 0, 0, 128 * (1 - g), 0, 0, b, 0, 128 * (1 - b), 0, 0, 0, 1, 0);
concat(_local5);
}
function adjustBrightness(r, g, b) {
g = g || (r);
b = b || (r);
var _local4 = Array(1, 0, 0, 0, r, 0, 1, 0, 0, g, 0, 0, 1, 0, b, 0, 0, 0, 1, 0);
concat(_local4);
}
function adjustHue(angle) {
angle = angle * (Math.PI/180);
var _local2 = Math.cos(angle);
var _local3 = Math.sin(angle);
var _local6 = 0.213;
var _local5 = 0.715;
var _local4 = 0.072;
var _local8 = Array((_local6 + (_local2 * (1 - _local6))) + (_local3 * (-_local6)), (_local5 + (_local2 * (-_local5))) + (_local3 * (-_local5)), (_local4 + (_local2 * (-_local4))) + (_local3 * (1 - _local4)), 0, 0, (_local6 + (_local2 * (-_local6))) + (_local3 * 0.143), (_local5 + (_local2 * (1 - _local5))) + (_local3 * 0.14), (_local4 + (_local2 * (-_local4))) + (_local3 * -0.283), 0, 0, (_local6 + (_local2 * (-_local6))) + (_local3 * (-(1 - _local6))), (_local5 + (_local2 * (-_local5))) + (_local3 * _local5), (_local4 + (_local2 * (1 - _local4))) + (_local3 * _local4), 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1);
concat(_local8);
}
function colorize(rgb, amount) {
var _local4 = ((rgb >> 16) & 255) / 255;
var _local6 = ((rgb >> 8) & 255) / 255;
var _local3 = (rgb & 255) / 255;
if (amount == null) {
amount = 1;
}
var _local5 = 1 - amount;
var _local8 = Array(_local5 + ((amount * _local4) * r_lum), (amount * _local4) * g_lum, (amount * _local4) * b_lum, 0, 0, (amount * _local6) * r_lum, _local5 + ((amount * _local6) * g_lum), (amount * _local6) * b_lum, 0, 0, (amount * _local3) * r_lum, (amount * _local3) * g_lum, _local5 + ((amount * _local3) * b_lum), 0, 0, 0, 0, 0, 1, 0);
concat(_local8);
}
function setAlpha(alpha) {
var _local2 = Array(1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, alpha, 0);
concat(_local2);
}
function desaturate() {
var _local2 = Array(r_lum, g_lum, b_lum, 0, 0, r_lum, g_lum, b_lum, 0, 0, r_lum, g_lum, b_lum, 0, 0, 0, 0, 0, 1, 0);
concat(_local2);
}
function invert() {
var _local2 = Array(-1, 0, 0, 0, 255, 0, -1, 0, 0, 255, 0, 0, -1, 0, 255, 0, 0, 0, 1, 0);
concat(_local2);
}
function threshold(t) {
var _local3 = Array(r_lum * 256, g_lum * 256, b_lum * 256, 0, -256 * t, r_lum * 256, g_lum * 256, b_lum * 256, 0, -256 * t, r_lum * 256, g_lum * 256, b_lum * 256, 0, -256 * t, 0, 0, 0, 1, 0);
concat(_local3);
}
function randomize(amount) {
if (amount == null) {
amount = 1;
}
var _local3 = 1 - amount;
var _local10 = _local3 + (amount * (Math.random() - Math.random()));
var _local15 = amount * (Math.random() - Math.random());
var _local12 = amount * (Math.random() - Math.random());
var _local6 = (amount * 255) * (Math.random() - Math.random());
var _local8 = amount * (Math.random() - Math.random());
var _local14 = _local3 + (amount * (Math.random() - Math.random()));
var _local11 = amount * (Math.random() - Math.random());
var _local5 = (amount * 255) * (Math.random() - Math.random());
var _local7 = amount * (Math.random() - Math.random());
var _local13 = amount * (Math.random() - Math.random());
var _local9 = _local3 + (amount * (Math.random() - Math.random()));
var _local4 = (amount * 255) * (Math.random() - Math.random());
var _local16 = Array(_local10, _local15, _local12, 0, _local6, _local8, _local14, _local11, 0, _local5, _local7, _local13, _local9, 0, _local4, 0, 0, 0, 1, 0);
concat(_local16);
}
function setChannels(r, g, b, a) {
var _local3 = (((((r & 1) == 1) ? 1 : 0) + (((r & 2) == 2) ? 1 : 0)) + (((r & 4) == 4) ? 1 : 0)) + (((r & 8) == 8) ? 1 : 0);
if (_local3 > 0) {
_local3 = 1 / _local3;
}
var _local2 = (((((g & 1) == 1) ? 1 : 0) + (((g & 2) == 2) ? 1 : 0)) + (((g & 4) == 4) ? 1 : 0)) + (((g & 8) == 8) ? 1 : 0);
if (_local2 > 0) {
_local2 = 1 / _local2;
}
var _local4 = (((((b & 1) == 1) ? 1 : 0) + (((b & 2) == 2) ? 1 : 0)) + (((b & 4) == 4) ? 1 : 0)) + (((b & 8) == 8) ? 1 : 0);
if (_local4 > 0) {
_local4 = 1 / _local4;
}
var _local5 = (((((a & 1) == 1) ? 1 : 0) + (((a & 2) == 2) ? 1 : 0)) + (((a & 4) == 4) ? 1 : 0)) + (((a & 8) == 8) ? 1 : 0);
if (_local5 > 0) {
_local5 = 1 / _local5;
}
var _local10 = Array((((r & 1) == 1) ? (_local3) : 0), (((r & 2) == 2) ? (_local3) : 0), (((r & 4) == 4) ? (_local3) : 0), (((r & 8) == 8) ? (_local3) : 0), 0, (((g & 1) == 1) ? (_local2) : 0), (((g & 2) == 2) ? (_local2) : 0), (((g & 4) == 4) ? (_local2) : 0), (((g & 8) == 8) ? (_local2) : 0), 0, (((b & 1) == 1) ? (_local4) : 0), (((b & 2) == 2) ? (_local4) : 0), (((b & 4) == 4) ? (_local4) : 0), (((b & 8) == 8) ? (_local4) : 0), 0, (((a & 1) == 1) ? (_local5) : 0), (((a & 2) == 2) ? (_local5) : 0), (((a & 4) == 4) ? (_local5) : 0), (((a & 8) == 8) ? (_local5) : 0), 0);
concat(_local10);
}
function blend(m, amount) {
var _local3 = 1 - amount;
var _local2 = 0;
while (_local2 < 20) {
matrix[_local2] = (_local3 * matrix[_local2]) + (amount * m.matrix[_local2]);
_local2++;
}
}
function concat(mat) {
var _local6 = Array();
var _local3 = 0;
var _local5 = 0;
while (_local5 < 4) {
var _local2 = 0;
while (_local2 < 5) {
_local6[_local3 + _local2] = ((((mat[_local3] * matrix[_local2]) + (mat[_local3 + 1] * matrix[_local2 + 5])) + (mat[_local3 + 2] * matrix[_local2 + 10])) + (mat[_local3 + 3] * matrix[_local2 + 15])) + ((_local2 == 4) ? (mat[_local3 + 4]) : 0);
_local2++;
}
_local3 = _local3 + 5;
_local5++;
}
matrix = _local6;
}
function get filter() {
return(new flash.filters.ColorMatrixFilter(matrix));
}
static var r_lum = 0.212671;
static var g_lum = 0.71516;
static var b_lum = 0.072169;
static var IDENTITY = Array(1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0);
}
Symbol 1012 MovieClip [__Packages.PressureButton] Frame 0
class PressureButton extends Object
{
var button_mc, depression, parent, pressed, checkInterval;
function PressureButton (button_mc, depression, parent) {
super();
this.button_mc = button_mc;
if (depression == null) {
this.depression = 20;
} else {
this.depression = depression;
}
button_mc.object = this;
this.parent = parent;
pressed = false;
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkPressure", 90);
}
function checkPressure() {
if (_global.paused) {
return(undefined);
}
var _local3 = false;
for (var _local4 in parent.actors) {
if (depression == 0) {
if (button_mc.hitTest(parent.actors[_local4].getX(), parent.actors[_local4].getY() + 20, false)) {
_local3 = true;
}
} else if (button_mc.hitTest(parent.actors[_local4].getLeftX(), parent.actors[_local4].getY() + 20, false) || (button_mc.hitTest(parent.actors[_local4].getRightX(), parent.actors[_local4].getY() + 20, false))) {
_local3 = true;
}
}
for (var _local4 in parent.crates) {
if (button_mc.hitTest(parent.crates[_local4].crate_mc._x, parent.crates[_local4].crate_mc._y + 20, false)) {
_local3 = true;
}
}
if (_local3) {
if (!pressed) {
if (depression != 0) {
button_mc._y = button_mc._y + depression;
}
button_mc.gotoAndStop("beep");
pressed = true;
}
} else if (pressed) {
if (depression != 0) {
button_mc._y = button_mc._y - depression;
}
button_mc.gotoAndStop("main");
pressed = false;
}
}
function getMovieClip() {
return(button_mc);
}
function toString() {
return("PressureButton " + button_mc);
}
function reset() {
if (pressed) {
if (depression != 0) {
button_mc._y = button_mc._y - depression;
}
pressed = false;
}
button_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
function destroy() {
button_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
}
Symbol 1013 MovieClip [__Packages.Seesaw] Frame 0
class Seesaw extends Object
{
var lever_mc, right_state, start_state, parent, checkInterval;
function Seesaw (lever_mc, right_state, parent) {
super();
this.lever_mc = lever_mc;
if (right_state == null) {
this.right_state = false;
} else {
this.right_state = right_state;
}
start_state = right_state;
if (!this.right_state) {
this.lever_mc.gotoAndStop("left");
}
lever_mc.object = this;
this.parent = parent;
activate();
}
function activate() {
right_state = start_state;
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkFlip", 90);
}
function checkFlip() {
if (_global.paused) {
return(undefined);
}
var _local4 = false;
var _local6 = 0;
var _local3 = 0;
if (right_state) {
for (var _local5 in parent.actors) {
if (lever_mc.left.hitTest(parent.actors[_local5].getX(), parent.actors[_local5].getY() + 5, false)) {
_local4 = true;
_local3 = parent.actors[_local5].force;
if (parent.actors[_local5].my_crate) {
_local3 = _local3 + (parent.actors[_local5].my_crate.getWeight() / 20);
}
}
}
if (_local3 == 0) {
for (var _local5 in parent.crates) {
if (lever_mc.left.hitTest(parent.crates[_local5].getX(), parent.crates[_local5].getY() + 5, false)) {
_local4 = true;
_local3 = parent.crates[_local5].force;
parent.crates[_local5].getMovieClip()._y = parent.crates[_local5].getMovieClip()._y + 25;
}
}
}
if (_local4) {
_global.lever_snd.start();
for (var _local5 in parent.actors) {
if (lever_mc.right.hitTest(parent.actors[_local5].getX(), parent.actors[_local5].getY() + 5, false)) {
parent.actors[_local5].see_sawed = true;
parent.actors[_local5].getMovieClip()._y = parent.actors[_local5].getMovieClip()._y - 50;
parent.actors[_local5].velocity = _local3 * -1;
if (parent.actors[_local5].my_crate) {
parent.actors[_local5].velocity = parent.actors[_local5].velocity + (parent.actors[_local5].my_crate.getWeight() / 20);
}
}
}
for (var _local5 in parent.crates) {
if (lever_mc.right.hitTest(parent.crates[_local5].getX(), parent.crates[_local5].getY() + 5, false)) {
parent.crates[_local5].getMovieClip()._y = parent.crates[_local5].getMovieClip()._y - 50;
parent.crates[_local5].velocity = _local3 * -1;
}
}
lever_mc.gotoAndStop("left");
right_state = false;
}
} else {
for (var _local5 in parent.actors) {
if (lever_mc.right.hitTest(parent.actors[_local5].getX(), parent.actors[_local5].getY() + 5, false)) {
_local4 = true;
_local3 = parent.actors[_local5].force;
if (parent.actors[_local5].my_crate) {
_local3 = _local3 + (parent.actors[_local5].my_crate.getWeight() / 20);
}
}
}
if (_local3 == 0) {
for (var _local5 in parent.crates) {
if (lever_mc.right.hitTest(parent.crates[_local5].getX(), parent.crates[_local5].getY() + 5, false)) {
_local4 = true;
_local3 = parent.crates[_local5].force;
parent.crates[_local5].getMovieClip()._y = parent.crates[_local5].getMovieClip()._y + 25;
}
}
}
if (_local4) {
_global.lever_snd.start();
for (var _local5 in parent.actors) {
if (lever_mc.left.hitTest(parent.actors[_local5].getX(), parent.actors[_local5].getY() + 5, false)) {
parent.actors[_local5].see_sawed = true;
parent.actors[_local5].getMovieClip()._y = parent.actors[_local5].getMovieClip()._y - 50;
parent.actors[_local5].velocity = _local3 * -1;
if (parent.actors[_local5].my_crate) {
parent.actors[_local5].velocity = parent.actors[_local5].velocity + (parent.actors[_local5].my_crate.getWeight() / 20);
}
}
}
for (var _local5 in parent.crates) {
if (lever_mc.left.hitTest(parent.crates[_local5].getX(), parent.crates[_local5].getY() + 5, false)) {
parent.crates[_local5].getMovieClip()._y = parent.crates[_local5].getMovieClip()._y - 50;
parent.crates[_local5].velocity = _local3 * -1;
}
}
lever_mc.gotoAndStop("right");
right_state = true;
}
}
}
function getMovieClip() {
return(lever_mc);
}
function toString() {
return("Seesaw " + lever_mc);
}
function reset() {
right_state = start_state;
lever_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
function destroy() {
right_state = start_state;
lever_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
}
Symbol 1014 MovieClip [__Packages.TripWire] Frame 0
class TripWire extends Object
{
var tripwire_mc, parent, pressed, checkInterval;
function TripWire (tripwire_mc, parent) {
super();
this.tripwire_mc = tripwire_mc;
tripwire_mc._visible = true;
tripwire_mc.object = this;
this.parent = parent;
pressed = false;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkTrip", 90);
}
function checkTrip() {
var _local3 = false;
for (var _local2 in parent.actors) {
if (((tripwire_mc.hitTest(parent.actors[_local2].getLeftX(), parent.actors[_local2].getY(), true) || (tripwire_mc.hitTest(parent.actors[_local2].getRightX(), parent.actors[_local2].getY(), true))) || (tripwire_mc.hitTest(parent.actors[_local2].getLeftX(), parent.actors[_local2].getTopY(), true))) || (tripwire_mc.hitTest(parent.actors[_local2].getRightX(), parent.actors[_local2].getTopY(), true))) {
clearInterval(checkInterval);
tripwire_mc.play();
trace("tripped");
tripwire_mc._visible = false;
pressed = true;
}
}
}
function toString() {
return("TripWire " + tripwire_mc);
}
function reset() {
tripwire_mc._visible = true;
pressed = false;
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkTrip", 90);
}
function destroy() {
clearInterval(checkInterval);
}
}
Symbol 1015 MovieClip [__Packages.TimeBomb] Frame 0
class TimeBomb extends Object
{
var bomb_mc, START_TIME, time, startX, startY, is_bomb, parent, timerInterval;
function TimeBomb (bomb_mc, start_time, parent) {
super();
this.bomb_mc = bomb_mc;
START_TIME = (time = start_time);
if (time < 10) {
bomb_mc.timer.text = "0" + time;
} else {
bomb_mc.timer.text = time;
}
startX = bomb_mc._x;
startY = bomb_mc._y;
bomb_mc.object = this;
is_bomb = true;
this.parent = parent;
}
function activate() {
clearInterval(timerInterval);
timerInterval = setInterval(this, "timer", 990);
}
function explodeActor() {
for (var _local2 in parent.actors) {
trace("bombs detects " + _local2);
if (bomb_mc.hitTest(parent.actors[_local2].getX(), parent.actors[_local2].getY(), false) || (bomb_mc.hitTest(parent.actors[_local2].getX(), parent.actors[_local2].getTopY(), false))) {
trace("splash damage");
parent.actors[_local2].crush();
}
}
}
function timer() {
if (_global.paused) {
return(undefined);
}
time--;
if (time == -1) {
clearInterval(timerInterval);
trace("KABOOM!");
bomb_mc.gotoAndPlay("explode");
return(undefined);
}
if (time < 10) {
bomb_mc.timer.text = "0" + time;
} else {
bomb_mc.timer.text = time;
}
bomb_mc.gotoAndPlay("beep");
}
function toString() {
return("TimeBomb " + bomb_mc);
}
function destroy() {
clearInterval(timerInterval);
}
function setPosition(x, y) {
bomb_mc._y = y;
bomb_mc._x = x;
}
function getY() {
return(bomb_mc._y);
}
function getX() {
return(bomb_mc._x);
}
function getMovieClip() {
return(bomb_mc);
}
function explode() {
clearInterval(timerInterval);
bomb_mc._x = (bomb_mc._y = -1000);
}
function reset() {
time = START_TIME;
bomb_mc.gotoAndStop(1);
if (time < 10) {
bomb_mc.timer.text = "0" + time;
} else {
bomb_mc.timer.text = time;
}
clearInterval(timerInterval);
bomb_mc._x = startX;
bomb_mc._y = startY;
}
}
Symbol 1016 MovieClip [__Packages.SwingGate] Frame 0
class SwingGate
{
var gate_mc, parent, master, openRotation, push_right, clockwise, closeRotation, closed, checkInterval, openInterval;
function SwingGate (gate_mc, master, openRotation, push_right, parent) {
this.gate_mc = gate_mc;
this.parent = parent;
this.master = master.object;
this.openRotation = openRotation;
this.push_right = push_right;
if (openRotation > 0) {
clockwise = true;
} else {
clockwise = false;
}
closeRotation = gate_mc._rotation;
closed = true;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkMaster", 90);
}
function checkMaster() {
if (_global.paused) {
return(undefined);
}
if (master.pressed && (closed)) {
open();
} else if ((!master.pressed) && (!closed)) {
close();
}
}
function open() {
gate_mc.gotoAndPlay("gate");
clearInterval(openInterval);
if (clockwise) {
openInterval = setInterval(this, "openGateClockwise", 30);
} else {
openInterval = setInterval(this, "openGateAnticlockwise", 30);
}
closed = false;
}
function close() {
gate_mc.gotoAndPlay("gate");
clearInterval(openInterval);
if (clockwise) {
openInterval = setInterval(this, "closeGateClockwise", 30);
} else {
openInterval = setInterval(this, "closeGateAnticlockwise", 30);
}
closed = true;
}
function openGateAnticlockwise() {
if (_global.paused) {
return(undefined);
}
if (gate_mc._rotation > openRotation) {
gate_mc._rotation = gate_mc._rotation - ROTATION_SPEED;
for (var _local4 in parent.actors) {
var _local3 = 0;
while ((_local3 < 40) && (gate_mc.hitTest(parent.actors[_local4].getLeftX() - MARGIN, parent.actors[_local4].getY(), true) || (gate_mc.hitTest(parent.actors[_local4].getLeftX() - MARGIN, parent.actors[_local4].getTopY(), true)))) {
_local3++;
if (push_right) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x + 6;
} else if (push_right == false) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x - 6;
} else {
_local3 = 50;
}
}
}
} else {
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
}
}
function openGateClockwise() {
if (_global.paused) {
return(undefined);
}
if (gate_mc._rotation < openRotation) {
gate_mc._rotation = gate_mc._rotation + ROTATION_SPEED;
for (var _local4 in parent.actors) {
var _local3 = 0;
while ((_local3 < 40) && (gate_mc.hitTest(parent.actors[_local4].getLeftX() - MARGIN, parent.actors[_local4].getY(), true) || (gate_mc.hitTest(parent.actors[_local4].getLeftX() - MARGIN, parent.actors[_local4].getTopY(), true)))) {
_local3++;
if (push_right) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x + 6;
} else if (push_right == false) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x - 6;
} else {
_local3 = 50;
}
}
}
} else {
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
}
}
function closeGateAnticlockwise() {
if (_global.paused) {
return(undefined);
}
if (gate_mc._rotation < closeRotation) {
gate_mc._rotation = gate_mc._rotation + ROTATION_SPEED;
for (var _local4 in parent.actors) {
var _local3 = 0;
while ((_local3 < 40) && (gate_mc.hitTest(parent.actors[_local4].getRightX() + MARGIN, parent.actors[_local4].getY(), true) || (gate_mc.hitTest(parent.actors[_local4].getRightX() + MARGIN, parent.actors[_local4].getTopY(), true)))) {
_local3++;
if (push_right) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x - 6;
} else if (push_right == false) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x + 6;
} else {
_local3 = 50;
}
}
}
} else {
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
}
}
function closeGateClockwise() {
if (_global.paused) {
return(undefined);
}
if (gate_mc._rotation > closeRotation) {
gate_mc._rotation = gate_mc._rotation - ROTATION_SPEED;
for (var _local4 in parent.actors) {
var _local3 = 0;
while ((_local3 < 40) && (gate_mc.hitTest(parent.actors[_local4].getRightX() + MARGIN, parent.actors[_local4].getY(), true) || (gate_mc.hitTest(parent.actors[_local4].getRightX() + MARGIN, parent.actors[_local4].getTopY(), true)))) {
_local3++;
if (push_right) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x - 6;
} else if (push_right == false) {
parent.actors[_local4].actor_mc._x = parent.actors[_local4].actor_mc._x + 6;
} else {
_local3 = 50;
}
}
}
} else {
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
}
}
function getMovieClip() {
return(gate_mc);
}
function reset() {
closed = true;
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
gate_mc._rotation = closeRotation;
clearInterval(checkInterval);
}
function destroy() {
closed = true;
gate_mc.gotoAndStop("main");
clearInterval(openInterval);
clearInterval(checkInterval);
}
var ROTATION_SPEED = 5;
var MARGIN = 10;
}
Symbol 1017 MovieClip [__Packages.BlastDoor] Frame 0
class BlastDoor
{
var door_mc, parent, master, closed, checkInterval;
function BlastDoor (door_mc, master, parent) {
this.door_mc = door_mc;
this.parent = parent;
this.master = master.object;
closed = true;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkMaster", 90);
}
function checkMaster() {
if (_global.paused) {
return(undefined);
}
if (master.pressed && (closed)) {
closed = false;
door_mc.gotoAndPlay("open");
} else if ((!master.pressed) && (!closed)) {
closed = true;
door_mc.gotoAndPlay("close");
} else if (master.pressed && (door_mc._currentframe == 1)) {
closed = false;
door_mc.gotoAndPlay("open");
}
}
function getMovieClip() {
return(door_mc);
}
function reset() {
closed = true;
door_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
function destroy() {
closed = true;
door_mc.gotoAndStop("main");
clearInterval(checkInterval);
}
}
Symbol 1018 MovieClip [__Packages.VanishBlock] Frame 0
class VanishBlock
{
var vanish_mc, start_x, start_y, parent, master, is_visible, checkInterval, fadeInterval, save_x, save_y;
function VanishBlock (vanish_mc, master, parent) {
this.vanish_mc = vanish_mc;
this.vanish_mc.blendMode = "layer";
start_x = vanish_mc._x;
start_y = vanish_mc._y;
this.parent = parent;
this.master = master.object;
is_visible = true;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkVMaster", 90);
}
function checkVMaster() {
if (_global.paused) {
return(undefined);
}
if (master.pressed && (is_visible)) {
is_visible = false;
clearInterval(fadeInterval);
fadeInterval = setInterval(this, "dissappear", 30);
vanish_mc.gotoAndPlay("fadeout");
} else if ((!master.pressed) && (!is_visible)) {
is_visible = true;
clearInterval(fadeInterval);
fadeInterval = setInterval(this, "appear", 30);
vanish_mc.gotoAndPlay("fadein");
}
}
function dissappear() {
if (_global.paused) {
return(undefined);
}
save_x = vanish_mc._x;
save_y = vanish_mc._y;
if (vanish_mc._alpha > 0) {
vanish_mc._alpha = vanish_mc._alpha - 2;
} else {
vanish_mc._x = 50000;
vanish_mc._y = 50000;
clearInterval(fadeInterval);
}
}
function appear() {
if (_global.paused) {
return(undefined);
}
vanish_mc._x = save_x;
vanish_mc._y = save_y;
if (vanish_mc._alpha < 100) {
vanish_mc._alpha = vanish_mc._alpha + 2;
} else {
clearInterval(fadeInterval);
}
}
function getMovieClip() {
return(vanish_mc);
}
function toString() {
return("VanishBlock " + vanish_mc._name);
}
function reset() {
vanish_mc._alpha = 100;
is_visible = true;
vanish_mc.gotoAndStop("main");
save_x = (vanish_mc._x = start_x);
save_y = (vanish_mc._y = start_y);
clearInterval(fadeInterval);
}
function destroy() {
vanish_mc._alpha = 100;
is_visible = true;
vanish_mc.gotoAndStop("main");
save_x = (vanish_mc._x = start_x);
save_y = (vanish_mc._y = start_y);
clearInterval(fadeInterval);
clearInterval(checkInterval);
}
}
Symbol 1019 MovieClip [__Packages.Lift] Frame 0
class Lift
{
var lift_mc, parent, master, targetLocation, originLocation, at_origin, checkInterval, moveInterval;
function Lift (lift_mc, master, targetLocation, speed, parent) {
this.lift_mc = lift_mc;
this.parent = parent;
this.master = master.object;
this.targetLocation = targetLocation;
originLocation = lift_mc._y;
at_origin = true;
LIFT_SPEED = speed;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkMaster", 90);
}
function checkMaster() {
if (_global.paused) {
return(undefined);
}
if (master.pressed && (at_origin)) {
startGoTarget();
} else if ((!master.pressed) && (!at_origin)) {
startGoOrigin();
}
for (var _local3 in parent.crates) {
if (parent.crates[_local3].is_bomb) {
continue;
}
while (lift_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY() - 1, true)) {
parent.crates[_local3].getMovieClip()._y--;
}
}
}
function startGoOrigin() {
lift_mc.gotoAndPlay("lift");
clearInterval(moveInterval);
if (lift_mc._y < originLocation) {
moveInterval = setInterval(this, "goLiftDown", 30, originLocation);
} else {
moveInterval = setInterval(this, "goLiftUp", 30, originLocation);
}
at_origin = true;
}
function startGoTarget() {
lift_mc.gotoAndPlay("lift");
clearInterval(moveInterval);
if (lift_mc._y < targetLocation) {
moveInterval = setInterval(this, "goLiftDown", 30, targetLocation);
} else {
moveInterval = setInterval(this, "goLiftUp", 30, targetLocation);
}
at_origin = false;
}
function goLiftUp(my_target) {
if (_global.paused) {
return(undefined);
}
if (lift_mc._y > my_target) {
lift_mc._y = lift_mc._y - LIFT_SPEED;
for (var _local3 in parent.actors) {
if (lift_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), true)) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y - (LIFT_SPEED - 1);
}
}
for (var _local3 in parent.crates) {
if (lift_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), true)) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y - (LIFT_SPEED - 1);
parent.crates[_local3].is_lifting = true;
}
}
} else {
lift_mc.gotoAndPlay("ding");
clearInterval(moveInterval);
if (parent.parent.cur_level == 1) {
parent.parent.sign_mc.button_pressed = true;
}
}
}
function goLiftDown(my_target) {
if (_global.paused) {
return(undefined);
}
for (var _local3 in parent.crates) {
if (lift_mc.crusher.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getTopY() + LIFT_SPEED, false) || (lift_mc.crusher.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getTopY(), false))) {
lift_mc.gotoAndStop("ding");
return(undefined);
}
}
if (lift_mc._y < my_target) {
lift_mc._y = lift_mc._y + LIFT_SPEED;
if (LIFT_SPEED < 30) {
for (var _local3 in parent.actors) {
if ((!parent.actors[_local3].is_bomb) && (lift_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY() + LIFT_SPEED, true))) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y + (LIFT_SPEED + 1);
}
}
for (var _local3 in parent.crates) {
if ((!parent.actors[_local3].is_bomb) && (lift_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY() + LIFT_SPEED, true))) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y + (LIFT_SPEED + 1);
}
}
}
} else {
lift_mc.gotoAndPlay("ding");
clearInterval(moveInterval);
}
}
function getMovieClip() {
return(lift_mc);
}
function toString() {
return("Lift " + lift_mc._name);
}
function reset() {
at_origin = true;
lift_mc.gotoAndStop("main");
lift_mc._y = originLocation;
clearInterval(moveInterval);
clearInterval(checkInterval);
}
function destroy() {
at_origin = true;
lift_mc.gotoAndStop("main");
lift_mc._y = originLocation;
clearInterval(moveInterval);
clearInterval(checkInterval);
}
var LIFT_SPEED = 5;
}
Symbol 1020 MovieClip [__Packages.Bridge] Frame 0
class Bridge
{
var bridge_mc, parent, master, targetLocation, originLocation, at_origin, checkInterval, moveInterval;
function Bridge (bridge_mc, master, targetLocation, speed, parent) {
this.bridge_mc = bridge_mc;
this.parent = parent;
this.master = master.object;
this.targetLocation = targetLocation;
originLocation = bridge_mc._x;
if (bridge_mc == parent.pod) {
is_pod = true;
}
trace("is_pod: " + is_pod);
at_origin = true;
MOVE_SPEED = speed;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkMaster", 90);
}
function checkMaster() {
if (_global.paused) {
return(undefined);
}
if (master.pressed && (at_origin)) {
startGoTarget();
} else if ((!master.pressed) && (!at_origin)) {
startGoOrigin();
}
}
function startGoOrigin() {
clearInterval(moveInterval);
if (bridge_mc._x < originLocation) {
moveInterval = setInterval(this, "goBridgeRight", 30, originLocation);
} else {
moveInterval = setInterval(this, "goBridgeLeft", 30, originLocation);
}
if (!is_pod) {
bridge_mc.gotoAndPlay("move");
}
at_origin = true;
}
function startGoTarget() {
clearInterval(moveInterval);
if (bridge_mc._x < targetLocation) {
moveInterval = setInterval(this, "goBridgeRight", 30, targetLocation);
} else {
moveInterval = setInterval(this, "goBridgeLeft", 30, targetLocation);
}
if (!is_pod) {
bridge_mc.gotoAndPlay("move");
}
at_origin = false;
}
function goBridgeLeft(my_target) {
if (_global.paused) {
return(undefined);
}
if (bridge_mc._x > my_target) {
bridge_mc._x = bridge_mc._x - MOVE_SPEED;
if (is_pod) {
return(undefined);
}
for (var _local3 in parent.actors) {
if (bridge_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), true) || (bridge_mc.hitTest(parent.actors[_local3].getRightX(), parent.actors[_local3].getY(), true))) {
parent.actors[_local3].pushLeft(MOVE_SPEED);
}
}
for (var _local3 in parent.crates) {
if ((!parent.crates[_local3].is_bomb) && (bridge_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), true))) {
parent.crates[_local3].getMovieClip()._x = parent.crates[_local3].getMovieClip()._x - MOVE_SPEED;
}
}
} else {
if (!is_pod) {
bridge_mc.gotoAndStop(1);
}
bridge_mc.gotoAndStop(1);
clearInterval(moveInterval);
}
}
function goBridgeRight(my_target) {
if (_global.paused) {
return(undefined);
}
if (bridge_mc._x < my_target) {
bridge_mc._x = bridge_mc._x + MOVE_SPEED;
if (is_pod) {
return(undefined);
}
for (var _local3 in parent.actors) {
if (bridge_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), true) || (bridge_mc.hitTest(parent.actors[_local3].getLeftX(), parent.actors[_local3].getY(), true))) {
parent.actors[_local3].pushRight(MOVE_SPEED);
}
}
for (var _local3 in parent.crates) {
if ((!parent.crates[_local3].is_bomb) && (bridge_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), true))) {
parent.crates[_local3].getMovieClip()._x = parent.crates[_local3].getMovieClip()._x + MOVE_SPEED;
}
}
} else {
if (!is_pod) {
bridge_mc.gotoAndStop(1);
}
bridge_mc.gotoAndStop(1);
clearInterval(moveInterval);
}
}
function toString() {
return("Bridge " + bridge_mc._name);
}
function getMovieClip() {
return(bridge_mc);
}
function reset() {
bridge_mc._x = originLocation;
if (!is_pod) {
bridge_mc.gotoAndStop(1);
}
clearInterval(moveInterval);
}
function destroy() {
if (!is_pod) {
bridge_mc.gotoAndStop(1);
}
clearInterval(moveInterval);
clearInterval(checkInterval);
}
var MOVE_SPEED = 5;
var is_pod = false;
}
Symbol 1021 MovieClip [__Packages.Balance] Frame 0
class Balance
{
var balance1_mc, balance2_mc, parent, bottomLevel, midLevel, topLevel, grounded, weight1, weight2, checkInterval, raiseInterval;
function Balance (balance1_mc, balance2_mc, bottomLevel, parent) {
this.balance1_mc = balance1_mc;
this.balance2_mc = balance2_mc;
this.parent = parent;
this.bottomLevel = bottomLevel;
midLevel = balance1_mc._y;
topLevel = midLevel * 2;
grounded = true;
weight1 = 0;
weight2 = 0;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkBalance", 90);
}
function checkBalance() {
if (_global.paused) {
return(undefined);
}
weight1 = checkWeight(balance1_mc);
weight2 = checkWeight(balance2_mc);
if ((weight1 == weight2) || (Math.abs(weight1 - weight2) <= (3 * LIFT_SPEED))) {
balance1_mc.gotoAndStop("main");
balanceOut();
} else if (weight1 > weight2) {
StartLowerLeftBalance();
} else if (weight1 < weight2) {
StartLowerRightBalance();
}
}
function checkWeight(bal_mc) {
var _local3 = 0;
for (var _local4 in parent.actors) {
if (bal_mc.hitTest(parent.actors[_local4].getLeftX(), parent.actors[_local4].getY() + 5, true) || (bal_mc.hitTest(parent.actors[_local4].getRightX(), parent.actors[_local4].getY() + 5, true))) {
_local3 = _local3 + parent.actors[_local4].getWeight();
}
}
for (var _local4 in parent.crates) {
if ((!parent.crates[_local4].is_carried) && (bal_mc.hitTest(parent.crates[_local4].crate_mc._x, parent.crates[_local4].crate_mc._y + 10, false))) {
_local3 = _local3 + parent.crates[_local4].getWeight();
}
}
return(_local3 - bal_mc._y);
}
function balanceOut() {
clearInterval(raiseInterval);
}
function StartLowerLeftBalance() {
clearInterval(raiseInterval);
raiseInterval = setInterval(this, "lowerLeftBalance", 30);
grounded = false;
}
function StartLowerRightBalance() {
clearInterval(raiseInterval);
raiseInterval = setInterval(this, "lowerRightBalance", 30);
grounded = true;
}
function lowerLeftBalance() {
if (_global.paused) {
return(undefined);
}
if (balance1_mc._y < bottomLevel) {
balance1_mc._y = balance1_mc._y + LIFT_SPEED;
balance2_mc._y = balance2_mc._y - LIFT_SPEED;
if (balance1_mc._currentframe <= 10) {
balance1_mc.gotoAndPlay("balance");
}
for (var _local3 in parent.actors) {
if (balance2_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), true)) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y - (LIFT_SPEED - 1);
}
}
for (var _local3 in parent.crates) {
if (balance2_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), true)) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y - (LIFT_SPEED + 1);
parent.crates[_local3].is_lifting = true;
}
}
for (var _local3 in parent.actors) {
if (balance1_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY() + LIFT_SPEED, true)) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y + (LIFT_SPEED + 1);
}
}
for (var _local3 in parent.crates) {
if (balance1_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY() + LIFT_SPEED, true)) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y + (LIFT_SPEED - 1);
parent.crates[_local3].is_unlifting = true;
}
}
} else {
balance1_mc.gotoAndStop("main");
balanceOut();
}
}
function lowerRightBalance() {
if (_global.paused) {
return(undefined);
}
if (balance2_mc._y < bottomLevel) {
balance2_mc._y = balance2_mc._y + LIFT_SPEED;
balance1_mc._y = balance1_mc._y - LIFT_SPEED;
if (balance1_mc._currentframe <= 10) {
balance1_mc.gotoAndPlay("balance");
}
for (var _local3 in parent.actors) {
if (balance1_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY(), true)) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y - (LIFT_SPEED - 1);
}
}
for (var _local3 in parent.crates) {
if (balance1_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY(), true)) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y - (LIFT_SPEED + 1);
parent.crates[_local3].is_lifting = true;
}
}
for (var _local3 in parent.actors) {
if (balance2_mc.hitTest(parent.actors[_local3].getX(), parent.actors[_local3].getY() + LIFT_SPEED, true)) {
parent.actors[_local3].actor_mc._y = parent.actors[_local3].actor_mc._y + (LIFT_SPEED + 1);
}
}
for (var _local3 in parent.crates) {
if (balance2_mc.hitTest(parent.crates[_local3].getX(), parent.crates[_local3].getY() + LIFT_SPEED, true)) {
parent.crates[_local3].getMovieClip()._y = parent.crates[_local3].getMovieClip()._y + (LIFT_SPEED - 1);
parent.crates[_local3].is_unlifting = true;
}
}
} else {
balance1_mc.gotoAndStop("main");
balanceOut();
}
}
function toString() {
return((("Balance " + balance1_mc._name) + " and ") + balance1_mc._name);
}
function reset() {
balanceOut();
balance1_mc._y = midLevel;
balance2_mc._y = midLevel;
grounded = true;
weight1 = 0;
weight2 = 0;
clearInterval(raiseInterval);
clearInterval(checkInterval);
}
function destroy() {
balanceOut();
balance1_mc._y = midLevel;
balance2_mc._y = midLevel;
grounded = true;
weight1 = 0;
weight2 = 0;
clearInterval(raiseInterval);
clearInterval(checkInterval);
}
var LIFT_SPEED = 3;
}
Symbol 1022 MovieClip [__Packages.PowerUp] Frame 0
class PowerUp extends Object
{
var powerup_mc, parent, type, checkInterval;
function PowerUp (type, powerup_mc, parent) {
super();
this.powerup_mc = powerup_mc;
this.parent = parent;
this.type = type;
activate();
}
function activate() {
clearInterval(checkInterval);
checkInterval = setInterval(this, "checkGet", 90);
}
function checkHit() {
var _local3 = false;
for (var _local2 in parent.actors) {
if (((powerup_mc.hitTest(parent.actors[_local2].getLeftX(), parent.actors[_local2].getTopY(), true) || (powerup_mc.hitTest(parent.actors[_local2].getLeftX(), parent.actors[_local2].getY(), true))) || (powerup_mc.hitTest(parent.actors[_local2].getRightX(), parent.actors[_local2].getTopY(), true))) || (powerup_mc.hitTest(parent.actors[_local2].getRightX(), parent.actors[_local2].getY(), true))) {
return(true);
}
}
return(false);
}
function checkGet() {
if (_global.paused) {
return(undefined);
}
if (checkHit()) {
trace("Got " + type);
parent["has_" + type] = true;
powerup_mc._visible = false;
if (type == "skip") {
parent.parent.loop.gotoAndStop("off");
parent.parent.skip.gotoAndStop("on");
parent.parent.shuffle.gotoAndStop("off");
parent.pod.loop._visible = false;
powerup_mc.play();
if (parent.parent.cur_level == 1) {
parent.parent.sign_mc.skip_gotten = true;
}
} else if (type == "pause") {
if (parent.used_pause) {
parent.has_pause = false;
_global.has_pause = false;
} else {
_global.has_pause = true;
_global.new_pause = true;
parent.parent.pause.gotoAndStop("on");
}
powerup_mc.play();
} else if (type == "shuffle") {
parent.parent.loop.gotoAndStop("off");
parent.parent.skip.gotoAndStop("off");
parent.parent.shuffle.gotoAndStop("on");
powerup_mc.play();
}
clearInterval(checkInterval);
}
}
function getMovieClip() {
return(powerup_mc);
}
function toString() {
return(type);
}
function destroy() {
powerup_mc._visible = true;
clearInterval(checkInterval);
}
function reset() {
clearInterval(checkInterval);
powerup_mc._visible = true;
checkInterval = setInterval(this, "checkGet", 90);
}
}
Symbol 103 Button
on (release) {
getURL ("http://kongregate.com/", "_blank");
}
Symbol 130 MovieClip Frame 146
_parent.gotoAndPlay("title");
Symbol 142 MovieClip Frame 30
stop();
Symbol 143 MovieClip Frame 10
stop();
Symbol 157 MovieClip Frame 1
stop();
this.onKeyDown = null;
Symbol 157 MovieClip Frame 2
stop();
this.onKeyDown = function () {
if (Key.isDown(_global.do_key)) {
trace("space is down");
dismiss_btn.onRelease();
}
};
Key.addListener(this);
walktrhough_btn.onRelease = function () {
getURL ("http://scarybuggames.com/category/walkthroughs/", "_blank");
};
more_games_btn.onRelease = function () {
__com_mochibot__("99d3436f", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferrer=chronotron", "_blank");
};
restart_text_btn.onRelease = function () {
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
_global.player_time = 0;
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.reset();
}
};
rewind_text_btn.onRelease = function () {
if (_global.paused) {
return(undefined);
}
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.rewind();
}
};
Symbol 165 MovieClip Frame 1
stop();
this.onKeyDown = null;
Symbol 165 MovieClip Frame 2
stop();
this.onKeyDown = function () {
if (Key.isDown(_global.do_key)) {
trace("space is down");
dismiss_btn.onRelease();
}
};
Key.addListener(this);
walktrhough_btn.onRelease = function () {
getURL ("http://scarybuggames.com/category/walkthroughs/", "_blank");
};
more_games_btn.onRelease = function () {
__com_mochibot__("99d3436f", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferrer=chronotron", "_blank");
};
restart_text_btn.onRelease = function () {
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
_global.player_time = 0;
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.reset();
}
};
rewind_text_btn.onRelease = function () {
if (_global.paused) {
return(undefined);
}
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.rewind();
}
};
Symbol 171 MovieClip Frame 1
stop();
this.onKeyDown = null;
Symbol 171 MovieClip Frame 2
stop();
this.onKeyDown = function () {
if (Key.isDown(_global.do_key)) {
trace("space is down");
dismiss_btn.onRelease();
}
};
Key.addListener(this);
walktrhough_btn.onRelease = function () {
getURL ("http://scarybuggames.com/category/walkthroughs/", "_blank");
};
more_games_btn.onRelease = function () {
__com_mochibot__("99d3436f", this, 10301, true);
getURL ("http://www.kongregate.com/?gamereferrer=chronotron", "_blank");
};
restart_text_btn.onRelease = function () {
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
_global.player_time = 0;
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.reset();
}
};
rewind_text_btn.onRelease = function () {
if (_global.paused) {
return(undefined);
}
_parent.paradox.gotoAndStop(1);
_parent.death.gotoAndStop(1);
_parent.fall.gotoAndStop(1);
if (_parent._currentframe >= _parent.LEVEL_FRAME) {
_parent.flash_mc.play();
_parent.pg.rewind();
}
};
Symbol 175 MovieClip Frame 1
stop();
Symbol 179 MovieClip Frame 1
stop();
Symbol 179 MovieClip Frame 20
stop();
Symbol 184 MovieClip Frame 1
stop();
Symbol 184 MovieClip Frame 10
stop();
Symbol 184 MovieClip Frame 21
gotoAndStop (1);
Symbol 184 MovieClip Frame 22
stop();
Symbol 184 MovieClip Frame 33
gotoAndStop (1);
Symbol 184 MovieClip Frame 44
stop();
Symbol 184 MovieClip Frame 55
gotoAndStop (1);
Symbol 194 MovieClip Frame 1
stop();
Symbol 194 MovieClip Frame 20
stop();
Symbol 194 MovieClip Frame 31
stop();
Symbol 194 MovieClip Frame 42
gotoAndStop ("main");
Symbol 197 MovieClip Frame 1
stop();
Symbol 197 MovieClip Frame 10
stop();
Symbol 197 MovieClip Frame 11
stop();
Symbol 197 MovieClip Frame 22
gotoAndStop (1);
Symbol 197 MovieClip Frame 23
stop();
Symbol 197 MovieClip Frame 34
gotoAndStop (1);
Symbol 197 MovieClip Frame 35
stop();
Symbol 197 MovieClip Frame 46
gotoAndStop (1);
Symbol 197 MovieClip Frame 57
stop();
Symbol 197 MovieClip Frame 68
gotoAndStop ("main");
Symbol 199 MovieClip Frame 1
stop();
Symbol 199 MovieClip Frame 9
stop();
Symbol 199 MovieClip Frame 18
stop();
Symbol 199 MovieClip Frame 29
gotoAndStop (1);
Symbol 199 MovieClip Frame 30
stop();
Symbol 199 MovieClip Frame 41
gotoAndStop (1);
Symbol 207 MovieClip Frame 1
stop();
Symbol 211 MovieClip Frame 1
stop();
Symbol 211 MovieClip Frame 20
gotoAndStop ("main");
Symbol 211 MovieClip Frame 31
gotoAndStop ("main");
Symbol 213 MovieClip Frame 1
stop();
Symbol 213 MovieClip Frame 20
stop();
Symbol 213 MovieClip Frame 31
stop();
Symbol 213 MovieClip Frame 42
gotoAndStop ("main");
Symbol 213 MovieClip Frame 53
stop();
Symbol 222 MovieClip Frame 1
stop();
Symbol 222 MovieClip Frame 25
gotoAndStop ("main");
Symbol 222 MovieClip Frame 30
this.object.explodeActor();
Symbol 222 MovieClip Frame 50
stop();
trace("stop");
this.object.explode();
Symbol 225 MovieClip Frame 1
stop();
Symbol 227 MovieClip Frame 1
stop();
Symbol 230 MovieClip Frame 1
stop();
Symbol 230 MovieClip Frame 20
stop();
Symbol 230 MovieClip Frame 31
stop();
Symbol 230 MovieClip Frame 42
gotoAndStop ("main");
Symbol 230 MovieClip Frame 53
stop();
Symbol 261 MovieClip Frame 1
stop();
Symbol 267 MovieClip Frame 1
stop();
Symbol 267 MovieClip Frame 6
stop();
Symbol 270 MovieClip Frame 1
stop();
Symbol 272 MovieClip Frame 1
stop();
Symbol 272 MovieClip Frame 6
stop();
Symbol 272 MovieClip Frame 11
stop();
Symbol 276 MovieClip Frame 15
stop();
_parent.gotoAndStop("main");
Symbol 305 MovieClip Frame 40
stop();
Symbol 355 MovieClip Frame 1
stop();
Symbol 355 MovieClip Frame 6
stop();
Symbol 355 MovieClip Frame 11
stop();
Symbol 355 MovieClip Frame 17
stop();
Symbol 362 MovieClip Frame 1
stop();
Symbol 362 MovieClip Frame 6
stop();
Symbol 362 MovieClip Frame 11
stop();
Symbol 362 MovieClip Frame 17
stop();
Symbol 381 MovieClip Frame 1
stop();
Symbol 381 MovieClip Frame 7
stop();
Symbol 381 MovieClip Frame 13
stop();
Symbol 402 MovieClip Frame 12
stop();
Symbol 402 MovieClip Frame 24
stop();
Symbol 402 MovieClip Frame 46
stop();
Symbol 407 MovieClip Frame 2
var r = (random(4) + 1);
gotoAndPlay("entrance" + r);
_global.music_position.onSoundComplete = function () {
_global.music_position.start(_global.music_snd.position);
};
Symbol 407 MovieClip Frame 65
door.play();
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 76
this._object.onEntranceComplete();
gotoAndStop ("main");
Symbol 407 MovieClip Frame 92
door.play();
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 103
this._object.onEntranceComplete();
gotoAndStop ("main");
Symbol 407 MovieClip Frame 141
door.play();
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 152
this._object.onEntranceComplete();
gotoAndStop ("main");
Symbol 407 MovieClip Frame 169
door.play();
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 180
this._object.onEntranceComplete();
gotoAndStop ("main");
Symbol 407 MovieClip Frame 181
stop();
Symbol 407 MovieClip Frame 189
stop();
Symbol 407 MovieClip Frame 190
door.gotoAndPlay("exit");
Symbol 407 MovieClip Frame 200
gotoAndStop ("main");
Symbol 407 MovieClip Frame 201
door.gotoAndPlay("timeloop");
Symbol 407 MovieClip Frame 205
this._object.parent.flash_mc.play();
Symbol 407 MovieClip Frame 210
this._object.onMidLoop();
Symbol 407 MovieClip Frame 220
this._object.onTimeLoop();
gotoAndStop ("main");
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 221
var r = (random(4) + 1);
door.gotoAndPlay("exit");
gotoAndPlay("win" + r);
Symbol 407 MovieClip Frame 268
_parent._parent.flash_mc.play();
Symbol 407 MovieClip Frame 273
gotoAndStop ("main");
this._object.onWarpOut();
Symbol 407 MovieClip Frame 274
door.gotoAndPlay("exit");
play();
Symbol 407 MovieClip Frame 300
_parent._parent.flash_mc.play();
Symbol 407 MovieClip Frame 305
gotoAndStop ("main");
this._object.onWarpOut();
Symbol 407 MovieClip Frame 306
door.gotoAndPlay("exit");
play();
Symbol 407 MovieClip Frame 327
_parent._parent.flash_mc.play();
Symbol 407 MovieClip Frame 332
gotoAndStop ("main");
this._object.onWarpOut();
Symbol 407 MovieClip Frame 333
door.gotoAndPlay("exit");
play();
Symbol 407 MovieClip Frame 381
_parent._parent.flash_mc.play();
Symbol 407 MovieClip Frame 386
gotoAndStop ("main");
this._object.onWarpOut();
Symbol 407 MovieClip Frame 391
this._object.parent.flash_mc.play();
door.stop();
Symbol 407 MovieClip Frame 396
this._object.onMidLoop();
door.gotoAndPlay("entrance");
_global.music_snd.stop("music");
_global.music_snd.start(_global.music_position);
Symbol 407 MovieClip Frame 406
this._object.onTimeLoop();
gotoAndStop ("main");
Symbol 441 MovieClip Frame 11
gotoAndStop (1);
Symbol 447 MovieClip Frame 88
stop();
Symbol 452 MovieClip Frame 60
_global.music_snd.stop("music");
_global.music_snd.start(0);
Symbol 452 MovieClip Frame 88
stop();
Symbol 482 MovieClip Frame 1
var button_pressed = false;
var time_looped = false;
var skip_gotten = false;
var keys_used = false;
stop();
this.onEnterFrame = function () {
if (keys_used) {
this.play();
this.onEnterFrame = null;
}
};
Symbol 482 MovieClip Frame 316
stop();
this.onEnterFrame = function () {
if (button_pressed) {
this.play();
this.onEnterFrame = null;
}
};
Symbol 482 MovieClip Frame 353
stop();
this.onEnterFrame = function () {
if (time_looped) {
this.play();
this.onEnterFrame = null;
}
};
Symbol 482 MovieClip Frame 640
stop();
this.onEnterFrame = function () {
if (skip_gotten) {
this.play();
this.onEnterFrame = null;
}
};
Symbol 482 MovieClip Frame 670
stop();
Symbol 545 MovieClip Frame 1
stop();
Symbol 545 MovieClip Frame 20
stop();
Symbol 601 MovieClip Frame 1
stop();
Symbol 601 MovieClip Frame 10
play();
Symbol 601 MovieClip Frame 15
stop();
Symbol 601 MovieClip Frame 16
play();
Symbol 601 MovieClip Frame 21
gotoAndStop (1);
Symbol 681 MovieClip Frame 1
stop();
Symbol 681 MovieClip Frame 20
stop();
Symbol 681 MovieClip Frame 31
stop();
stop();
Symbol 681 MovieClip Frame 42
gotoAndStop ("main");
Symbol 681 MovieClip Frame 43
stop();
Symbol 681 MovieClip Frame 54
gotoAndStop (1);
Symbol 681 MovieClip Frame 55
stop();
Symbol 681 MovieClip Frame 66
gotoAndStop (1);
Symbol 682 MovieClip Frame 1
stop();
Symbol 682 MovieClip Frame 9
stop();
Symbol 682 MovieClip Frame 10
play();
Symbol 682 MovieClip Frame 29
stop();
Symbol 682 MovieClip Frame 30
play();
Symbol 682 MovieClip Frame 49
gotoAndStop (1);
Symbol 682 MovieClip Frame 50
stop();
Symbol 710 MovieClip Frame 1
stop();
Symbol 723 MovieClip Frame 1
stop();
Symbol 723 MovieClip Frame 9
stop();
Symbol 723 MovieClip Frame 18
stop();
Symbol 723 MovieClip Frame 29
gotoAndStop (1);
Symbol 723 MovieClip Frame 30
stop();
Symbol 723 MovieClip Frame 41
gotoAndStop (1);
Symbol 728 MovieClip Frame 1
stop();
Symbol 728 MovieClip Frame 20
stop();
Symbol 728 MovieClip Frame 31
stop();
Symbol 728 MovieClip Frame 42
gotoAndStop ("main");
Symbol 738 MovieClip Frame 1
stop();
Symbol 747 MovieClip Frame 1
stop();
Symbol 747 MovieClip Frame 9
stop();
Symbol 747 MovieClip Frame 18
stop();
Symbol 747 MovieClip Frame 29
gotoAndStop (1);
Symbol 747 MovieClip Frame 30
stop();
Symbol 747 MovieClip Frame 41
gotoAndStop (1);
Symbol 856 MovieClip Frame 1
stop();
Symbol 856 MovieClip Frame 9
stop();
Symbol 856 MovieClip Frame 18
stop();
Symbol 856 MovieClip Frame 29
gotoAndStop (1);
Symbol 856 MovieClip Frame 30
stop();
Symbol 856 MovieClip Frame 41
gotoAndStop (1);
Symbol 858 MovieClip Frame 1
stop();
Symbol 858 MovieClip Frame 10
stop();
Symbol 858 MovieClip Frame 21
gotoAndStop (1);
Symbol 858 MovieClip Frame 22
stop();
Symbol 858 MovieClip Frame 33
gotoAndStop (1);
Symbol 859 MovieClip Frame 1
stop();
Symbol 859 MovieClip Frame 10
stop();
Symbol 859 MovieClip Frame 21
gotoAndStop (1);
Symbol 859 MovieClip Frame 22
stop();
Symbol 859 MovieClip Frame 33
gotoAndStop (1);
Symbol 859 MovieClip Frame 44
stop();
Symbol 859 MovieClip Frame 55
gotoAndStop (1);
Symbol 861 MovieClip Frame 1
stop();
Symbol 861 MovieClip Frame 10
stop();
Symbol 861 MovieClip Frame 21
gotoAndStop (1);
Symbol 861 MovieClip Frame 22
stop();
Symbol 861 MovieClip Frame 33
gotoAndStop (1);
Symbol 861 MovieClip Frame 45
stop();
Symbol 861 MovieClip Frame 55
gotoAndStop (1);
Symbol 876 MovieClip Frame 1
stop();
Symbol 876 MovieClip Frame 9
stop();
Symbol 876 MovieClip Frame 18
stop();
Symbol 876 MovieClip Frame 29
gotoAndStop (1);
Symbol 876 MovieClip Frame 30
stop();
Symbol 876 MovieClip Frame 41
gotoAndStop (1);
Symbol 883 MovieClip Frame 1
stop();
Symbol 883 MovieClip Frame 9
stop();
Symbol 883 MovieClip Frame 18
stop();
Symbol 883 MovieClip Frame 29
gotoAndStop (1);
Symbol 883 MovieClip Frame 30
stop();
Symbol 883 MovieClip Frame 41
gotoAndStop (1);
Symbol 890 MovieClip Frame 1
stop();
Symbol 890 MovieClip Frame 20
stop();
Symbol 890 MovieClip Frame 31
stop();
Symbol 890 MovieClip Frame 42
gotoAndStop ("main");
Symbol 895 MovieClip Frame 1
stop();
Symbol 895 MovieClip Frame 9
stop();
Symbol 895 MovieClip Frame 18
stop();
Symbol 895 MovieClip Frame 29
gotoAndStop (1);
Symbol 895 MovieClip Frame 30
stop();
Symbol 895 MovieClip Frame 41
gotoAndStop (1);
Symbol 905 MovieClip Frame 1
stop();
Symbol 905 MovieClip Frame 20
stop();
Symbol 905 MovieClip Frame 31
stop();
Symbol 905 MovieClip Frame 42
gotoAndStop ("main");
Symbol 905 MovieClip Frame 53
stop();
Symbol 943 MovieClip Frame 1
stop();
Symbol 943 MovieClip Frame 20
stop();
Symbol 943 MovieClip Frame 31
stop();
Symbol 943 MovieClip Frame 42
gotoAndStop ("main");
Symbol 947 MovieClip Frame 1
stop();
Symbol 947 MovieClip Frame 20
stop();
Symbol 947 MovieClip Frame 31
stop();
Symbol 947 MovieClip Frame 42
gotoAndStop ("main");
Symbol 950 MovieClip Frame 1
stop();
Symbol 950 MovieClip Frame 20
stop();
Symbol 953 MovieClip Frame 1
stop();
Symbol 953 MovieClip Frame 7
stop();
Symbol 953 MovieClip Frame 13
stop();
Symbol 963 MovieClip Frame 1
stop();
Symbol 963 MovieClip Frame 20
gotoAndStop ("main");
Symbol 963 MovieClip Frame 31
gotoAndStop ("main");