Frame 1
function preloader() {
return(Math.floor((_root.getBytesLoaded() / _root.getBytesTotal()) * 100) + "%");
}
contextmenu = new ContextMenu();
contextmenu.hideBuiltInItems();
_root.menu = contextmenu;
fscommand ("allowscale", "false");
var loadin = 1;
this.onEnterFrame = function () {
if (loadin) {
var _local2 = preloader();
_root.titlescreen.percent.text = _local2;
if (_local2 == "100%") {
_root.gotoAndStop("load");
loadin = 0;
}
}
};
_root._quality = "HIGH";
this.nextFrame();
Instance of Symbol 13 MovieClip in Frame 1
on (press) {
getURL ("http://googumproduce.com/lastman3/", "_blank");
}
Frame 2
this.stop();
Frame 3
this.prevFrame();
Frame 5
function createcandy(ix, iy) {
var _local3 = -1;
var _local2 = ix;
var _local5 = -1;
var _local9 = -1;
while (true) {
_local2 = _local2 + _local3;
var _local4 = world_tiles[_local2][iy];
if (tiledata[_local4][0].weakpoint) {
} else if (_local3 == -1) {
_local5 = _local2;
_local2 = ix;
_local3 = 1;
} else {
rightest = _local2;
break;
}
}
ix = _local5 + Math.floor((rightest - _local5) / 2);
world_tiles[ix][iy] = 26;
var _local8 = (("x" + ix) + "y") + iy;
_root.fg.tl_below[_local8].gotoAndStop(26);
}
function destroyboss() {
var _local9 = (camb.l ? (campointa.x - tlradius.l) : (campointa.x));
var _local8 = (camb.r ? (campointb.x + tlradius.r) : (campointb.x));
var _local7 = (camb.u ? (campointa.y - tlradius.u) : (campointa.y));
var _local6 = (camb.d ? (campointb.y + tlradius.d) : (campointb.y));
_local9 = ((_local9 < camb.tlx) ? (camb.tlx) : (_local9));
_local8 = ((_local8 > camb.brx) ? (camb.brx) : (_local8));
_local7 = ((_local7 < camb.tly) ? (camb.tly) : (_local7));
_local6 = ((_local6 > camb.bry) ? (camb.bry) : (_local6));
_local9 = gettilex(_local9);
_local8 = gettilex(_local8);
_local7 = gettiley(_local7);
_local6 = gettiley(_local6);
var _local4 = _local9;
while (_local4 <= _local8) {
var _local2 = _local7;
while (_local2 <= _local6) {
var _local3 = world_tiles[_local4][_local2];
if (tiledata[_local3][0].boss != undefined) {
_local3 = 40;
var _local5 = (("x" + _local4) + "y") + _local2;
_root.fg.tl_below[_local5].gotoAndStop(_local3);
world_tiles[_local4][_local2] = 0;
}
_local2++;
}
_local4++;
}
playsound("SFX_explosion");
}
function song_lvl1() {
var _local1 = "0Cs+1Gs,0Cs+1Gs,-1,0Fs+0Cs,0Fs+0Cs,-1,0A+1E,0A+1E";
world_bass_0 = (((((_local1 + ",") + _local1) + ",") + _local1) + ",") + _local1;
world_bass_1 = "0Cs+1Gs,0Cs+1Gs,-1,0Cs+1Gs,-1,0Cs+1Gs,-2";
world_bass_2 = "0A+1E,0A+1E,-1,0Fs+0Cs,-1,0A+1E,-2";
world_lead_0 = "-2,1Fs,1Fs,1Gs,-1,1Fs,-3,1Fs,1Fs,1Cs,-1,1Fs,-3,1Fs,1Fs,1Gs,-1,1Fs,-3,1Fs,1Fs,1Cs,-1,1Cs,-1,2E,-5,1Ds,-1,1Cs,-7";
world_bass_3 = "0Cs+1Gs,0Cs+1Gs,0Cs+1Gs,0Cs+1Fs,0Cs+1Gs,0Cs+1Gs,0Cs+1Gs,0Cs+1Gs,0Cs+1F,0Cs+1F,0Cs+1F,0Cs+1Fs,0B+1Fs,0B+1Fs,0B+1Fs,0B+1Fs,0A+1E,0A+1E,0A+1E,0A+1E,0A+1E,0A+1E,0A+1E,0A+1E,0A+0Ds,0A+0Ds,0A+0Ds,0A+1E,0A+0Ds,0A+0Ds,0A+0Ds,0A+0Ds";
world_lead_1 = "-2,1Fs,-3,1A,-1,1F,-4,1Gs,1Gs,1Gs,1A,-1,1Fs,-3,1Fs,1Fs,1E,-1,0Ds,-5";
world_lead_2 = "-2,1Gs,-3,1A,-1,1F,-4,1Fs,1Fs,1Fs,1A,-1,1A,-1,1A,-1,1A,-1,1A,-1,1Gs,-2,1Cs,-2";
world_bass_4 = "0A+1E,-1,0A+1E,-1,0A+1E,-1,0A+1E,-1,0B+1Fs,-1,0B+1Fs,-1,0Cs+1Fs,0Cs+1F,-1,0Cs+1F,1E+1Gs,-1,1E+1Gs,-1,1E+1Gs,-1,1E+1Gs,-1,1Fs+1B,-1,1Fs+1B,-1,1Gs+1B,1Gs+1Cs,-1,1Fs";
world_lead_3 = "1A,-3,1E,1Gs,1E,-1,1Fs,-2,1F,-3,1F,1Gs,-5,1Gs,1As,1B,-1,1Cs,1Cs,-4";
world_bass_5 = "1E+1Gs,1E+1Gs,1E+1Gs,1E+1A,1E+1Gs,1E+1Gs,1E+1Gs,1E+1Gs,1Fs+1B,1Fs+1B,1Fs+1B,1Fs+1Cs,1Fs+1B,1Fs+1B,1Fs+1B,1Fs+1B,1Gs+2E,1Gs+2E,1Gs+2E,1Gs+1Ds,1Gs+2E,1Gs+2E,1Gs+2E,1Gs+2E,1E+1A,1E+1A,1E+1A,0Ds+1A,1E+1A,1E+1A,1E+1A,1E+1A,1E+1Gs,1E+1Gs,1E+1Gs,1E+1A,1E+1Gs,1E+1Gs,1E+1Gs,1E+1Gs,1Fs+1B,1Fs+1B,1Fs+1B,1Fs+1Cs,1Fs+1B,1Fs+1B,1Fs+1B,1Fs+1B,1Gs+2E,1Gs+2E,1Gs+2E,1Gs+1Ds,1Gs+2E,1Gs+2E,1Gs+2E,1Gs+2E,1E+1A,1E+1A,1E+1A,0Ds+1A,1E+1A,1A,1E+1A,-1";
world_lead_4 = "-2,1Gs,-1,1Gs,-3,1B,-1,1Cs,1B,-2,1Gs,1A,2E,2E,-1,2E,-1,1Gs,-1,1A,-10,1Gs,-1,1Gs,-3,1B,1Cs,-1,1B,-2,1Gs,1A,2E,2E,-1,2E,-1,1Gs,-1,1B,-3,1Gs,1Fs,1E,0Cs,0B";
world_bass_6 = "0Cs+1Gs,-7";
world_bass_0 = convertnotetxt(world_bass_0);
world_bass_1 = convertnotetxt(world_bass_1);
world_bass_2 = convertnotetxt(world_bass_2);
world_bass_3 = convertnotetxt(world_bass_3);
world_bass_4 = convertnotetxt(world_bass_4);
world_bass_5 = convertnotetxt(world_bass_5);
world_bass_6 = convertnotetxt(world_bass_6);
world_lead_0 = convertnotetxt(world_lead_0);
world_lead_1 = convertnotetxt(world_lead_1);
world_lead_2 = convertnotetxt(world_lead_2);
world_lead_3 = convertnotetxt(world_lead_3);
world_lead_4 = convertnotetxt(world_lead_4);
}
function song_lvl2() {
world_bass_0 = "0B,-2,0Cs,0D,-1,0Ds,0B,-4,0D,0Cs,0B,-1,0As,-2,0Cs,1Fs,-2,0D,0G,-1,0D,-1,1G,-3";
var _local2 = "1B+1Ds,1As+1Ds,1A+2Fs,-2,-x,1A+x,1As+1D,1B+1Ds,-4,0D,0Cs,0B,-1";
world_lead_0 = _local2 + ",1B+1Ds,1As+1Ds,1A+2Fs,-4,1A+2Fs,1As+1D,-1,1B+1Ds,-1,1B+2E,-3";
world_lead_1 = _local2 + ",1B+1Ds,1As+1Ds,1A+2Fs,-4,1A+2Fs,1As+1D,-1,1B+2E,-1,1D+2Fs,-1,1Ds+2G,-1";
world_lead_5 = "1As,1As,1Cs,-2,-x,1E+x,1A,1As,-4,0D,0Cs,0B,-1,1As,1As,1Cs,-4,1Cs,1A,-1,1As,-1,1B,-3";
world_bass_1 = "0G,-1,0Cs,-2,1G,1Fs,-1";
world_lead_2 = "1As+1D,-1,2Fs,2G,2B,2Fs,2Fs+2A,-1";
world_bass_2 = "0B,-1,0Cs,0B,-1,0B,0As,-1,0B,0As,-2,0D,-1,0Cs,0D,-1,0As,0G,-1,0Fs,0G,-2";
world_bass_3 = "0B,0D,0Cs,0B,0Cs,0B,0As,0B,0D,0As,-2,0D,-1,0Cs,0D,-1,0As,0G,0Cs,0Fs,0G,-2";
var _local1 = "0B,2B+x,2As+x,2Fs,0B,2B+x,2As+x,2Fs,0B,2B+x,2G+x,2Fs,0B,2B+x,2G+x,2Fs";
world_lead_3 = _local1 + ",0D,2B+x,2As+x,2Fs,0D,2B+x,2As+x,2Fs,0Cs,2B+x,2G+x,2Fs,0Cs,-2";
world_lead_4 = _local1 + ",0D,0D,0D,1E,1E,1E,1Fs,1Fs,1Fs,1G,-2";
world_lead_7 = _local1 + ",0D,2B+x,2As+x,2Fs,0D,2B+x,2As+x,2Fs,0Cs,2B+x,2G+x,2Fs,0Cs,2B+x,2G+x,2Fs";
world_bass_4 = "-6,0Fs,-1";
world_lead_6 = "1E+2B,-1,0Cs+2As,1E+2B,1Fs+2As,-3";
world_bass_0 = convertnotetxt(world_bass_0);
world_bass_1 = convertnotetxt(world_bass_1);
world_bass_2 = convertnotetxt(world_bass_2);
world_bass_3 = convertnotetxt(world_bass_3);
world_bass_4 = convertnotetxt(world_bass_4);
world_lead_0 = convertnotetxt(world_lead_0);
world_lead_1 = convertnotetxt(world_lead_1);
world_lead_2 = convertnotetxt(world_lead_2);
world_lead_3 = convertnotetxt(world_lead_3);
world_lead_4 = convertnotetxt(world_lead_4);
world_lead_5 = convertnotetxt(world_lead_5);
world_lead_6 = convertnotetxt(world_lead_6);
world_lead_7 = convertnotetxt(world_lead_7);
}
function song_lvl3() {
world_bass_0 = "0G,-1,0G,-1,0Fs+x,0G+x,0A,1G,-1,0G,-1,0G,-1,0Fs+x,0G+x,0A,1A,-1";
world_bass_1 = "0G,-1,0G,-1,0Fs+x,0G+x,0A,1G,-1,1G,-1,1Fs,-1,1E,-1,0D,-1";
var _local2 = "1G,-1,1G,-1,1G,-1,1G,-1,";
var _local1 = "0D,-1,0D,-1,0D,-1,0D,-1,";
var _local3 = "0C,-1,0C,-1,0C,-1,0C,-1,";
var _local10 = "0B,-1,0B,-1,0B,-1,0B,-1,";
var _local4 = "0A,-1,0A,-1,0A,-1,0A,-1,";
world_bass_2 = ((((((((((((((_local2 + _local1) + _local3) + _local10) + _local2) + _local1) + _local4) + _local3) + _local2) + _local1) + _local3) + _local4) + _local2) + _local1) + _local4) + "1C,-1,1C,-1,1B,-1,1A,-1";
_local2 = "1G,1G,1G,1G,1G,1G,1G,1G,";
_local1 = "0D,0D,0D,0D,0D,0D,0D,0D,";
_local3 = "0C,0C,0C,0C,0C,0C,0C,0C,";
_local10 = "0B,0B,0B,0B,0B,0B,0B,0B,";
_local4 = "0A,0A,0A,0A,0A,0A,0A,0A,";
world_bass_3 = ((((((((((((((_local2 + _local1) + _local3) + _local10) + _local2) + _local1) + _local4) + _local3) + _local2) + _local1) + _local3) + _local4) + _local2) + _local1) + _local4) + "1C,1C,1C,1C,1B,1B,1A,1A";
world_bass_4 = "1G,-1,1G,-1,1B,-1,1G,-1,0D,-1,0D,-1,1G,-1,0D,-1,0C,-1,0C,-1,0B,-1,0C,-1,0B,-1,0B,-1,0B,-1,0B,-1,1G,-1,1G,-1,1A,-1,1G,-1,0D,-1,0D,-1,1B,-1,0D,-1,1A,-1,1A,-1,1G,-1,1A,-1,0C,-1,0C,-1,0C,-1,0C,-1,1G,-1,1G,-1,1B,-1,1G,-1,0D,-1,0D,-1,1G,-1,0D,-1,0C,-1,0C,-1,0B,-1,0C,-1,1A,-1,1A,-1,1A,-1,1A,-1,1G,-1,1G,-1,1A,-1,1G,-1,0D,-1,0D,-1,1G,-1,0D,-1,1A,-1,1A,-1,1A,-1,1A,-1,1C,-1,1C,-1,1B,-1,1A,-1";
world_bass_5 = (((((world_bass_0 + ",") + world_bass_0) + ",") + world_bass_0) + ",") + world_bass_1;
world_bass_6 = "0G,-1";
var _local6 = "1G,-5,1D,-1,1C,-1,1B,-1,1A,-1,1B,-1,1E,-1,1Fs,1G,-1,1A,-1,1B,-1,1A,-1,1B,-4,1G,-5,1D,-1,1C,-1,1B,-1,1A,-1,1B,-1,1C,-3,1D,-3,1B,-3,";
world_lead_0 = ((_local6 + "1A,-3,") + _local6) + "1B,-1,1A,-1";
var _local7 = "1G+1B,-2,1G+1D,-2,1B,-1,1D+2Fs,-2,1D+2A,-2,1B,-1,2Fs+2A,-2,2Fs+2A,-2,1D,-1,1D+1B,-1,1G+1B,-1,1Fs+1C,-1,1G+1B,-1";
var _local9 = "1G+1B,-2,1G+1D,-2,1B,-1,1D+2Fs,-2,1D+2A,-2,2Fs,-1,2Fs+2A,-2,2Fs+2A,-2,2G,-1,2G+2B,-1,1D+2A,-1,2G+1C,-1,2Fs+1B,-1";
var _local8 = "1B,-2,1D,-2,1B,-1,2Fs,-2,2A,-2,2Fs,-1,2A,-2,2A,-2,2G,-1,2G+2B,-1,1D+2A,-1,2Fs+1B,-1,2G+1C,-1";
world_lead_1 = (((((_local7 + ",") + _local9) + ",") + _local7) + ",") + _local8;
var _local5 = "1G,-1,1Fs+1A,1G+1B,-1,1A,1D,-1,1C,-1,1B,-1,1A+1C,-1,1D+1B,-1,1E,-1,1Fs+1A,1G+1B,-1,1A,-1,1B,-1,1A,-1,1B,1A+1C,-1,1D+1B,-1,1G,-1,1Fs+1A,1G+1B,-1,1A,1D,-1,1C,-1,1B,-1,1A,-1,1B,-1,1C,-3,1D,-3,1B,-3";
world_lead_3 = ((_local5 + ",1A+1C,-1,1D+1B,-1,") + _local5) + ",1A,-1,1B,-1";
world_lead_2 = "1G,1B,1D,-1,1D,-1,1D,-1,1G+1D,1B,1D,-1,1D,-1,1D,-1,1G+1D,1D+1B,1D,-1,1D,-1,1D,-1,1G+1D,2Fs+1B,1D,-1,1D,-1,1D,-1,1G+1D,1D+1B,1D+2Fs,-1,1D,-1,1D,-1,1G+1D,2Fs+1B,1D+2Fs,-1,1D,-1,1D+2Fs,-1,1G+1D,1D+1B,1D+2Fs,-1,1D,-1,1D+2A,-1,1G+1D,1D+1B,1D+2Fs,-1,1D+2A,-1,1D+2Fs,-1";
world_lead_4 = "1G,-1";
world_bass_0 = convertnotetxt(world_bass_0);
world_bass_1 = convertnotetxt(world_bass_1);
world_bass_2 = convertnotetxt(world_bass_2);
world_bass_3 = convertnotetxt(world_bass_3);
world_bass_4 = convertnotetxt(world_bass_4);
world_bass_5 = convertnotetxt(world_bass_5);
world_bass_6 = convertnotetxt(world_bass_6);
world_lead_0 = convertnotetxt(world_lead_0);
world_lead_1 = convertnotetxt(world_lead_1);
world_lead_2 = convertnotetxt(world_lead_2);
world_lead_3 = convertnotetxt(world_lead_3);
world_lead_4 = convertnotetxt(world_lead_4);
}
function song_lvl4() {
world_lead_0 = "1E+1G,1G+1As,2E+1As,1F+1Gs,1Gs+1B,1B+2F,1Fs+1A,1A+1C,1C+2Fs,1G+1As,1As+1Cs,1Cs+2G,2E+1G,2G+1As,2E+1G,2G+1As";
world_bass_0 = "0E,0F,0Fs,0F,0Fs,0G,0Fs,0G,0Gs,0G,0Gs,0A,0B,0C,0Cs,0D";
world_bass_3 = "0Cs,0C,0B,0D,0Cs,0C,0D,0Cs,0C,0D,0Cs,0C,0D,0Cs,0C,0B";
var _local1 = "k,k,h1,k";
world_drums_0 = (((((_local1 + ",") + _local1) + ",") + _local1) + ",") + _local1;
world_drums_3 = "t1,t1,t1,t1,t2,t2,t2,t2,k,k,k,k,snare+x,snare+x,snare,snare+x,snare+x,snare";
world_bass_1 = "0E,0G,0E,0B,0G,0E,0B,0E,0G,0B,0G,0B,0E,0G,0E,0B,0G,0A,0G,1E,0A,0G,1E,0G,0A,1E,0A,1E,0G,0A,0G,1E";
world_lead_1 = "1E,1F,1Fs,1E+1G,1F,1Fs,1E+1G,1F,1Fs,1E+1G,1F,1Fs,2E+1G,2E+1G,2E+1G,2E+1G,1G,1Fs,1F,1E+1G,1Fs,1F,1E+1G,1Fs,1F,1E+1G,1Fs,1F,1E+1Cs,1E+1Cs,1E+1Cs,1E+1Cs";
var _local2 = "s,k,k,s,k,-1,s,k,k,s,k,k,";
world_drums_1 = ((_local2 + "r+x,r+x,r+x,r+x,r+x,r+x,r2,") + _local2) + "snare+x,snare+x,snare+x,snare+x,snare+x,snare+x,snare";
world_bass_2 = "0A,0A,-1,1E,0G,0G,-1,0B,0A,0A,-1,0B,1E,1E,-1,0G,0A,0A,-1,1E,0G,0G,-1,0B,0A,0A,-1,0B,0G,0G,-1,1E";
world_lead_2 = "-2,1E+1G+1As,1E+1G,-2,1G+1Cs+2E,1G+1Cs,-2,1Cs+2E+2G,1Cs+2E,-2,1G+1As+2E,1G+2E,-2,1E+1G+1Cs,1E+1G,-2,1G+1As+2E,1G+1As,-2,1As+2E+2G,1As+2E,-2,1E+1Cs,1E+1G";
world_drums_2 = ((((((((((((_local1 + ",") + _local1) + ",") + _local1) + ",") + _local1) + ",") + _local1) + ",") + _local1) + ",") + _local1) + "k,k,h1,s";
world_bass_4 = "1E,-1,-x";
world_drums_4 = "snare,-1,-x";
world_lead_3 = "1E+1G";
world_bass_0 = convertnotetxt(world_bass_0);
world_bass_1 = convertnotetxt(world_bass_1);
world_bass_2 = convertnotetxt(world_bass_2);
world_bass_3 = convertnotetxt(world_bass_3);
world_bass_4 = convertnotetxt(world_bass_4);
world_lead_0 = convertnotetxt(world_lead_0);
world_lead_1 = convertnotetxt(world_lead_1);
world_lead_2 = convertnotetxt(world_lead_2);
world_lead_3 = convertnotetxt(world_lead_3);
world_drums_0 = convertnotetxt(world_drums_0, 1);
world_drums_1 = convertnotetxt(world_drums_1, 1);
world_drums_2 = convertnotetxt(world_drums_2, 1);
world_drums_3 = convertnotetxt(world_drums_3, 1);
world_drums_4 = convertnotetxt(world_drums_4, 1);
}
function init_lvl1() {
world_objects = [{drop:1, movespeed:1, dir:1, none:"snail", x:120, y:224, obj:13, depth:2}, 0, {drop:1, movespeed:1, dir:-1, none:"snail", x:216, y:232, obj:13, depth:2}, 0, 0, 0, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:656, y:232, obj:10, depth:2}, {frame:1, dir:1, none:"spikes", x:752, y:216, obj:11, depth:2}, {frame:1, dir:1, none:"spikes", x:888, y:200, obj:11, depth:2}, 0, 0, 0, {frame:3, dir:1, none:"spikes", x:888, y:216, obj:11, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:1032, y:176, obj:19, depth:2}, {friendly:1, jumpheight:1, none:"banzaiman", x:1088, y:184, obj:19, depth:2}, 0, 0, 0, 0, 0, {drop:0, movespeed:0, dir:1, none:"porcupine", x:1128, y:216, obj:15, depth:2}, 0, 0, 0, 0, 0, {drop:0, movespeed:0, dir:-1, none:"porcupine", x:1168, y:224, obj:15, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1216, y:144, obj:10, depth:2}, {drop:0, movespeed:1, dir:1, none:"porcupine", x:1272, y:136, obj:15, depth:2}, {jump:1, jumpheight:0, drop:0, movespeed:1, dir:1, none:"crab", x:1184, y:176, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1304, y:144, obj:10, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:2744, y:128, obj:19, depth:2}, {friendly:1, jumpheight:2, none:"banzaiman", x:2704, y:208, obj:19, depth:2}, {friendly:1, jumpheight:1, none:"banzaiman", x:2744, y:232, obj:19, depth:2}, {movespeed:0, frame:"modex", xory:2, ydir:1, dir:1, none:"missile", x:1576, y:152, obj:12, depth:2}, {movespeed:0, frame:"modex", xory:2, ydir:-1, dir:-1, none:"missile", x:1544, y:192, obj:12, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:1864, y:152, obj:10, depth:2}, {frame:1, dir:-1, none:"spikes", x:2296, y:128, obj:11, depth:2}, {movespeed:1, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:2312, y:176, obj:12, depth:2}, {movespeed:1, frame:"modex", xory:0, ydir:1, dir:-1, none:"missile", x:2280, y:160, obj:12, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:2304, y:224, obj:10, depth:2}, {dist:1, movespeed:2, path:3, dir:1, none:"parasnail", x:2488, y:168, obj:14, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:2592, y:232, obj:10, depth:2}, {drop:0, movespeed:0, dir:-1, none:"porcupine", x:2520, y:232, obj:15, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1760, y:232, obj:10, depth:2}, {l:0, p:0, inst:1, dir:0, x:320, y:248, obj:20, depth:2}, {l:0, p:3, inst:1, dir:0, x:584, y:248, obj:20, depth:2}, {l:0, p:1, inst:0, dir:0, x:584, y:240, obj:20, depth:2}, {l:0, p:0, inst:0, dir:2, x:416, y:208, obj:20, depth:2}, {l:0, p:2, inst:0, dir:0, x:600, y:240, obj:20, depth:2}, {l:0, p:3, inst:1, dir:0, x:600, y:248, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:424, y:208, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:432, y:208, obj:20, depth:2}, {l:0, p:2, inst:1, dir:2, x:440, y:208, obj:20, depth:2}, {l:0, p:0, inst:1, dir:2, x:416, y:200, obj:20, depth:2}, {l:0, p:0, inst:1, dir:0, x:616, y:248, obj:20, depth:2}, {l:0, p:0, inst:0, dir:0, x:616, y:240, obj:20, depth:2}, 0, {l:0, p:1, inst:1, dir:2, x:744, y:216, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:760, y:216, obj:20, depth:2}, {l:0, p:2, inst:1, dir:0, x:896, y:128, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:920, y:128, obj:20, depth:2}, {l:1, p:3, inst:0, dir:0, x:968, y:128, obj:20, depth:2}, {l:1, p:4, inst:1, dir:0, x:960, y:128, obj:20, depth:2}, {l:0, p:5, inst:1, dir:2, x:1136, y:176, obj:20, depth:2}, {l:0, p:4, inst:0, dir:2, x:1136, y:184, obj:20, depth:2}, {l:0, p:0, inst:0, dir:2, x:1152, y:184, obj:20, depth:2}, {l:0, p:0, inst:1, dir:2, x:1160, y:184, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:1176, y:184, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:1184, y:184, obj:20, depth:2}, {l:0, p:2, inst:1, dir:2, x:1192, y:184, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:1200, y:184, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:1208, y:184, obj:20, depth:2}, {l:0, p:1, inst:1, dir:2, x:1216, y:184, obj:20, depth:2}, {l:0, p:2, inst:1, dir:2, x:1224, y:184, obj:20, depth:2}, {l:0, p:6, inst:1, dir:2, x:1232, y:152, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:1328, y:232, obj:20, depth:2}, {l:0, p:2, inst:1, dir:0, x:1344, y:232, obj:20, depth:2}, {l:0, p:5, inst:1, dir:0, x:1984, y:216, obj:20, depth:2}, {l:0, p:4, inst:0, dir:0, x:1984, y:224, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:2032, y:216, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:2040, y:216, obj:20, depth:2}, {l:0, p:2, inst:1, dir:0, x:2048, y:216, obj:20, depth:2}, {l:0, p:6, inst:1, dir:0, x:2056, y:216, obj:20, depth:2}, {l:0, p:0, inst:1, dir:0, x:2000, y:216, obj:20, depth:2}, {l:0, p:0, inst:0, dir:0, x:2000, y:224, obj:20, depth:2}];
world_camblocks = [{xMin:0, xMax:2768, yMin:104, yMax:240, u:0, d:0, l:1, r:1}];
world_tiles = importtiles(lvl1_txt);
}
function init_lvl2() {
world_objects = [{jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:336, y:392, obj:10, depth:2}, {jump:1, jumpheight:0, drop:0, movespeed:0, dir:-1, none:"crab", x:392, y:352, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:384, y:392, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:384, y:384, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:440, y:392, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:800, y:392, obj:10, depth:2}, {dist:2, movespeed:0, path:3, dir:1, none:"parasnail", x:656, y:344, obj:14, depth:2}, 0, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:704, y:392, obj:10, depth:2}, 0, {frame:1, dir:1, none:"spikes", x:720, y:352, obj:11, depth:2}, {jump:0, jumpheight:2, drop:0, movespeed:0, dir:1, none:"crab", x:632, y:392, obj:10, depth:2}, {drop:0, movespeed:0, dir:-1, none:"porcupine", x:648, y:392, obj:15, depth:2}, 0, 0, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:1432, y:760, obj:10, depth:2}, {movespeed:1, frame:"moded", xory:1, ydir:1, dir:-1, none:"missile", x:1288, y:752, obj:12, depth:2}, {movespeed:1, frame:"modeu", xory:1, ydir:-1, dir:1, none:"missile", x:1288, y:816, obj:12, depth:2}, {movespeed:1, frame:"modeu", xory:1, ydir:-1, dir:1, none:"missile", x:1296, y:808, obj:12, depth:2}, {movespeed:1, frame:"moded", xory:1, ydir:1, dir:1, none:"missile", x:1296, y:760, obj:12, depth:2}, {dist:2, movespeed:2, path:2, dir:1, none:"parasnail", x:1808, y:488, obj:14, depth:2}, {frame:1, dir:-1, none:"spikes", x:1832, y:488, obj:11, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:2, dir:1, none:"crab", x:1960, y:448, obj:10, depth:2}, 0, {movespeed:1, frame:"modex", xory:0, ydir:1, dir:-1, none:"missile", x:1248, y:408, obj:12, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:0, dir:1, none:"crab", x:2184, y:320, obj:10, depth:2}, {drop:1, movespeed:2, dir:1, none:"snail", x:2152, y:320, obj:13, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:2, dir:-1, none:"crab", x:2624, y:328, obj:10, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:3096, y:376, obj:19, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:3176, y:376, obj:19, depth:2}, {friendly:1, jumpheight:1, none:"banzaiman", x:3200, y:376, obj:19, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:3224, y:376, obj:19, depth:2}, {friendly:1, jumpheight:1, none:"banzaiman", x:3128, y:376, obj:19, depth:2}, {l:1, p:0, inst:0, dir:0, x:96, y:400, obj:20, depth:2}, {l:1, p:0, inst:1, dir:0, x:96, y:408, obj:20, depth:2}, {l:1, p:0, inst:1, dir:0, x:1040, y:408, obj:20, depth:2}, {l:1, p:1, inst:0, dir:0, x:1040, y:400, obj:20, depth:2}, {l:0, p:2, inst:0, dir:0, x:1360, y:408, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:1360, y:416, obj:20, depth:2}, {l:1, p:2, inst:1, dir:0, x:1480, y:416, obj:20, depth:2}, {l:1, p:3, inst:0, dir:0, x:1480, y:408, obj:20, depth:2}, 0, 0, {l:1, p:4, inst:0, dir:1, x:2184, y:360, obj:20, depth:2}, {l:1, p:3, inst:1, dir:1, x:2176, y:360, obj:20, depth:2}, {l:1, p:2, inst:0, dir:0, x:2280, y:392, obj:20, depth:2}, {l:1, p:1, inst:1, dir:0, x:2280, y:400, obj:20, depth:2}, {l:0, p:6, inst:0, dir:0, x:2944, y:384, obj:20, depth:2}, {l:0, p:4, inst:1, dir:0, x:2944, y:392, obj:20, depth:2}, {l:0, p:6, inst:0, dir:1, x:1120, y:816, obj:20, depth:2}, {l:0, p:4, inst:1, dir:1, x:1128, y:816, obj:20, depth:2}, {l:1, p:2, inst:1, dir:2, x:1232, y:616, obj:20, depth:2}, {l:1, p:7, inst:0, dir:2, x:1232, y:624, obj:20, depth:2}, {l:0, p:3, inst:0, dir:1, x:1592, y:496, obj:20, depth:2}, {l:0, p:3, inst:1, dir:1, x:1584, y:496, obj:20, depth:2}, {l:1, p:5, inst:0, dir:2, x:1712, y:408, obj:20, depth:2}, {l:1, p:0, inst:1, dir:2, x:1712, y:416, obj:20, depth:2}];
world_camblocks = [{xMin:0, xMax:3232, yMin:272, yMax:416, u:0, d:0, l:0, r:1}, {xMin:1112, xMax:2184, yMin:416, yMax:832, u:1, d:0, l:0, r:1}];
world_tiles = importtiles(lvl2_txt);
}
function init_lvl3() {
world_objects = [{ball:0, ballspeed:0, drop:0, movespeed:0, dir:1, none:"armadillo", x:2568, y:416, obj:16, depth:2}, 0, {jump:1, jumpheight:1, drop:1, movespeed:1, dir:1, none:"crab", x:632, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:1, movespeed:1, dir:-1, none:"crab", x:696, y:376, obj:10, depth:2}, 0, 0, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1728, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1704, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1680, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1656, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1632, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1608, y:432, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1584, y:432, obj:10, depth:2}, {drop:0, movespeed:1, dir:1, none:"porcupine", x:1952, y:432, obj:15, depth:2}, {movespeed:0, frame:"modex", xory:2, ydir:1, dir:1, none:"missile", x:1312, y:416, obj:12, depth:2}, {movespeed:1, frame:"modex", xory:2, ydir:1, dir:-1, none:"missile", x:1312, y:368, obj:12, depth:2}, {movespeed:1, frame:"modex", xory:2, ydir:1, dir:1, none:"missile", x:880, y:448, obj:12, depth:2}, {movespeed:0, frame:"modex", xory:2, ydir:-1, dir:1, none:"missile", x:792, y:416, obj:12, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:2904, y:424, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:3304, y:424, obj:10, depth:2}, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:3384, y:424, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:3456, y:424, obj:10, depth:2}, {timerspeed:2, drop:0, movespeed:1, dir:1, none:"turtle", x:3544, y:424, obj:17, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:4184, y:408, obj:10, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:0, dir:-1, none:"crab", x:4184, y:432, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:4184, y:424, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:4184, y:416, obj:10, depth:2}, 0, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:3912, y:432, obj:10, depth:2}, {frame:3, dir:1, none:"spikes", x:4288, y:1944, obj:11, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:2, dir:1, none:"crab", x:4352, y:1904, obj:10, depth:2}, {frame:1, dir:1, none:"spikes", x:4328, y:2032, obj:11, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:0, dir:-1, none:"crab", x:4336, y:1616, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:-1, none:"crab", x:256, y:696, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:-1, none:"crab", x:216, y:696, obj:10, depth:2}, {movespeed:0, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:24, y:728, obj:12, depth:2}, {movespeed:0, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:80, y:712, obj:12, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:104, y:1104, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:40, y:1104, obj:10, depth:2}, {drop:0, movespeed:1, dir:1, none:"snail", x:72, y:1064, obj:13, depth:2}, {jump:1, jumpheight:2, drop:0, movespeed:2, dir:1, none:"crab", x:24, y:2072, obj:10, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:0, dir:-1, none:"crab", x:16, y:1984, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:328, y:2072, obj:10, depth:2}, {ball:1, ballspeed:1, drop:0, movespeed:1, dir:1, none:"armadillo", x:2816, y:552, obj:16, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:0, dir:-1, none:"crab", x:2904, y:648, obj:10, depth:2}, {dist:2, movespeed:1, path:1, dir:-1, none:"parasnail", x:2696, y:680, obj:14, depth:2}, 0, {dist:2, movespeed:1, path:0, dir:1, none:"parasnail", x:2632, y:896, obj:14, depth:2}, {dist:2, movespeed:2, path:3, dir:1, none:"parasnail", x:2440, y:880, obj:14, depth:2}, {jump:1, jumpheight:0, drop:0, movespeed:1, dir:1, none:"crab", x:2208, y:832, obj:10, depth:2}, {ball:1, ballspeed:0, drop:1, movespeed:0, dir:1, none:"armadillo", x:1240, y:760, obj:16, depth:2}, 0, {jump:1, jumpheight:2, drop:0, movespeed:0, dir:-1, none:"crab", x:1096, y:696, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:200, y:1848, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:-1, none:"crab", x:272, y:1848, obj:10, depth:2}, {dist:1, movespeed:1, path:0, dir:1, none:"parasnail", x:320, y:1728, obj:14, depth:2}, {dist:1, movespeed:1, path:0, dir:-1, none:"parasnail", x:336, y:1728, obj:14, depth:2}, 0, {l:1, p:0, inst:1, dir:0, x:2600, y:424, obj:20, depth:2}, 0, {l:0, p:1, inst:1, dir:1, x:4456, y:448, obj:20, depth:2}, {l:1, p:2, inst:1, dir:1, x:4264, y:1824, obj:20, depth:2}, {l:1, p:0, inst:0, dir:1, x:4256, y:1824, obj:20, depth:2}, {l:1, p:1, inst:0, dir:1, x:4256, y:1472, obj:20, depth:2}, {l:0, p:2, inst:0, dir:1, x:4264, y:1184, obj:20, depth:2}, {l:1, p:5, inst:1, dir:1, x:4256, y:1184, obj:20, depth:2}, {l:1, p:2, inst:1, dir:1, x:4256, y:744, obj:20, depth:2}, {l:1, p:3, inst:0, dir:1, x:4264, y:744, obj:20, depth:2}, {l:0, p:1, inst:0, dir:1, x:4264, y:648, obj:20, depth:2}, {l:0, p:4, inst:1, dir:1, x:4256, y:648, obj:20, depth:2}, {l:0, p:6, inst:1, dir:1, x:4256, y:520, obj:20, depth:2}, {l:0, p:4, inst:0, dir:1, x:4264, y:520, obj:20, depth:2}, {l:0, p:1, inst:1, dir:0, x:2120, y:464, obj:20, depth:2}, {l:1, p:2, inst:1, dir:1, x:4264, y:1472, obj:20, depth:2}, {l:1, p:5, inst:1, dir:0, x:1744, y:472, obj:20, depth:2}, {l:1, p:2, inst:0, dir:0, x:1744, y:464, obj:20, depth:2}, {l:1, p:3, inst:0, dir:0, x:800, y:480, obj:20, depth:2}, {l:1, p:3, inst:1, dir:0, x:800, y:472, obj:20, depth:2}, 0, {l:0, p:1, inst:0, dir:3, x:144, y:832, obj:20, depth:2}, 0, {l:0, p:6, inst:1, dir:3, x:152, y:832, obj:20, depth:2}, {l:1, p:3, inst:1, dir:2, x:488, y:584, obj:20, depth:2}, {l:1, p:0, inst:0, dir:2, x:488, y:576, obj:20, depth:2}, {l:1, p:1, inst:0, dir:2, x:1192, y:592, obj:20, depth:2}, {l:1, p:3, inst:1, dir:2, x:1192, y:584, obj:20, depth:2}, {l:1, p:5, inst:1, dir:0, x:2336, y:904, obj:20, depth:2}, {l:1, p:2, inst:0, dir:0, x:2336, y:896, obj:20, depth:2}, {l:0, p:4, inst:0, dir:2, x:2856, y:560, obj:20, depth:2}, {l:0, p:6, inst:1, dir:2, x:2856, y:552, obj:20, depth:2}];
world_camblocks = [{xMin:0, xMax:4576, yMin:344, yMax:472, u:0, d:0, l:1, r:1}, {xMin:0, xMax:4576, yMin:344, yMax:2080, u:1, d:1, l:1, r:1}];
world_tiles = importtiles(lvl3_txt);
}
function init_lvl4() {
world_objects = [{timerspeed:1, drop:0, movespeed:1, dir:1, none:"turtle", x:448, y:384, obj:17, depth:2}, 0, 0, 0, 0, 0, 0, {drop:0, movespeed:1, dir:-1, none:"googum", x:632, y:424, obj:18, depth:2}, {movespeed:2, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:752, y:448, obj:12, depth:2}, {movespeed:1, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:840, y:448, obj:12, depth:2}, {movespeed:0, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:944, y:448, obj:12, depth:2}, 0, {movespeed:2, frame:"modex", xory:0, ydir:1, dir:1, none:"missile", x:912, y:448, obj:12, depth:2}, 0, 0, {timebased:1, frame:7, dir:1, none:"spikes", x:776, y:392, obj:11, depth:2}, {timebased:1, frame:5, dir:-1, none:"spikes", x:824, y:392, obj:11, depth:2}, {timebased:1, frame:7, dir:1, none:"spikes", x:880, y:392, obj:11, depth:2}, {timebased:1, frame:5, dir:-1, none:"spikes", x:928, y:376, obj:11, depth:2}, {timebased:1, frame:3, dir:1, none:"spikes", x:976, y:360, obj:11, depth:2}, {timebased:1, frame:5, dir:1, none:"spikes", x:960, y:296, obj:11, depth:2}, {timebased:1, frame:3, dir:1, none:"spikes", x:920, y:264, obj:11, depth:2}, {dist:3, movespeed:2, path:3, dir:1, none:"parasnail", x:1144, y:320, obj:14, depth:2}, {drop:0, movespeed:1, dir:-1, none:"googum", x:1528, y:296, obj:18, depth:2}, 0, {jump:1, jumpheight:0, drop:0, movespeed:0, dir:1, none:"crab", x:1672, y:320, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:1832, y:296, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:1832, y:288, obj:10, depth:2}, 0, 0, 0, 0, 0, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:208, y:816, obj:10, depth:2}, {jump:0, jumpheight:1, drop:1, movespeed:1, dir:1, none:"crab", x:176, y:808, obj:10, depth:2}, {jump:1, jumpheight:1, drop:1, movespeed:1, dir:-1, none:"crab", x:160, y:824, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:280, y:832, obj:10, depth:2}, 0, {jump:1, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:624, y:856, obj:10, depth:2}, 0, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:520, y:840, obj:10, depth:2}, {drop:0, movespeed:2, dir:-1, none:"googum", x:944, y:864, obj:18, depth:2}, {drop:0, movespeed:2, dir:1, none:"googum", x:904, y:864, obj:18, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:1, none:"crab", x:680, y:792, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1184, y:856, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:1, dir:-1, none:"crab", x:1336, y:856, obj:10, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:2, dir:-1, none:"crab", x:1520, y:856, obj:10, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:672, y:824, obj:19, depth:2}, {friendly:1, jumpheight:0, none:"banzaiman", x:792, y:824, obj:19, depth:2}, 0, {movespeed:0, frame:"moded", xory:1, ydir:1, dir:1, none:"missile", x:1368, y:536, obj:12, depth:2}, {movespeed:0, frame:"moded", xory:1, ydir:1, dir:1, none:"missile", x:1392, y:536, obj:12, depth:2}, {movespeed:1, frame:"modeu", xory:1, ydir:-1, dir:1, none:"missile", x:1416, y:560, obj:12, depth:2}, {timerspeed:0, drop:0, movespeed:0, dir:-1, none:"turtle", x:1544, y:592, obj:17, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:1, none:"crab", x:1576, y:592, obj:10, depth:2}, 0, 0, 0, 0, {ball:0, ballspeed:1, drop:0, movespeed:1, dir:1, none:"armadillo", x:1576, y:576, obj:16, depth:2}, {jump:0, jumpheight:1, drop:0, movespeed:0, dir:-1, none:"crab", x:1672, y:696, obj:10, depth:2}, {ball:0, ballspeed:1, drop:0, movespeed:1, dir:1, none:"armadillo", x:1760, y:656, obj:16, depth:2}, {movespeed:0, frame:"modex", xory:2, ydir:1, dir:1, none:"missile", x:1240, y:768, obj:12, depth:2}, {timerspeed:2, drop:0, movespeed:0, dir:1, none:"turtle", x:1528, y:800, obj:17, depth:2}, {timerspeed:2, drop:0, movespeed:1, dir:1, none:"turtle", x:1600, y:792, obj:17, depth:2}, {drop:0, movespeed:0, dir:1, none:"googum", x:192, y:760, obj:18, depth:2}, 0, {l:1, p:0, inst:1, dir:3, x:280, y:320, obj:20, depth:2}, 0, 0, 0, {l:0, p:0, inst:1, dir:0, x:432, y:352, obj:20, depth:2}, 0, 0, 0, {l:1, p:1, inst:1, dir:0, x:1088, y:448, obj:20, depth:2}, {l:1, p:1, inst:0, dir:0, x:1088, y:456, obj:20, depth:2}, {l:0, p:4, inst:1, dir:0, x:440, y:360, obj:20, depth:2}, {l:0, p:0, inst:1, dir:0, x:1600, y:352, obj:20, depth:2}, {l:0, p:0, inst:0, dir:0, x:1600, y:360, obj:20, depth:2}, {l:1, p:1, inst:0, dir:0, x:1608, y:360, obj:20, depth:2}, {l:1, p:1, inst:1, dir:0, x:1608, y:352, obj:20, depth:2}, {l:0, p:0, inst:1, dir:1, x:1984, y:280, obj:20, depth:2}, {l:0, p:0, inst:0, dir:1, x:1976, y:280, obj:20, depth:2}, {l:1, p:2, inst:1, dir:1, x:1984, y:520, obj:20, depth:2}, 0, 0, 0, 0, 0, 0, 0, 0, {l:0, p:0, inst:1, dir:0, x:736, y:784, obj:20, depth:2}, {l:0, p:3, inst:1, dir:0, x:752, y:784, obj:20, depth:2}, {l:0, p:0, inst:1, dir:0, x:768, y:784, obj:20, depth:2}, {l:0, p:4, inst:1, dir:0, x:784, y:784, obj:20, depth:2}, 0, 0, {l:0, p:0, inst:0, dir:0, x:736, y:776, obj:20, depth:2}, {l:0, p:0, inst:0, dir:0, x:752, y:776, obj:20, depth:2}, {l:0, p:0, inst:0, dir:0, x:768, y:776, obj:20, depth:2}, {l:0, p:3, inst:0, dir:0, x:784, y:776, obj:20, depth:2}, 0, {l:0, p:0, inst:0, dir:0, x:1912, y:616, obj:20, depth:2}, {l:0, p:0, inst:1, dir:0, x:1912, y:608, obj:20, depth:2}, {l:0, p:2, inst:0, dir:0, x:1920, y:616, obj:20, depth:2}, {l:1, p:1, inst:0, dir:0, x:1928, y:616, obj:20, depth:2}, {l:0, p:2, inst:1, dir:0, x:1920, y:608, obj:20, depth:2}, {l:1, p:1, inst:1, dir:0, x:1928, y:608, obj:20, depth:2}, {l:0, p:0, inst:1, dir:3, x:1776, y:736, obj:20, depth:2}, {l:0, p:2, inst:1, dir:3, x:1776, y:744, obj:20, depth:2}, {l:1, p:1, inst:1, dir:3, x:1776, y:752, obj:20, depth:2}, {l:0, p:0, inst:0, dir:3, x:1784, y:736, obj:20, depth:2}, {l:0, p:2, inst:0, dir:3, x:1784, y:744, obj:20, depth:2}, {l:1, p:1, inst:0, dir:3, x:1784, y:752, obj:20, depth:2}, {l:1, p:0, inst:0, dir:3, x:1760, y:824, obj:20, depth:2}, {l:1, p:0, inst:1, dir:3, x:1752, y:824, obj:20, depth:2}, {l:1, p:0, inst:0, dir:2, x:528, y:832, obj:20, depth:2}, {l:1, p:3, inst:1, dir:2, x:528, y:832, obj:20, depth:2}, {l:1, p:0, inst:0, dir:2, x:536, y:832, obj:20, depth:2}, {l:1, p:0, inst:1, dir:2, x:536, y:832, obj:20, depth:2}, {l:0, p:3, inst:0, dir:2, x:560, y:832, obj:20, depth:2}, 0, {l:1, p:0, inst:0, dir:2, x:544, y:832, obj:20, depth:2}, {l:0, p:0, inst:0, dir:2, x:552, y:832, obj:20, depth:2}, {l:0, p:0, inst:1, dir:2, x:552, y:832, obj:20, depth:2}, {l:1, p:3, inst:1, dir:2, x:544, y:832, obj:20, depth:2}, 0, {l:1, p:2, inst:1, dir:1, x:248, y:624, obj:20, depth:2}, {l:1, p:2, inst:2, dir:1, x:256, y:624, obj:20, depth:2}, 0, {l:1, p:0, inst:2, dir:3, x:288, y:320, obj:20, depth:2}, {l:0, p:0, inst:2, dir:0, x:432, y:360, obj:20, depth:2}, {l:0, p:4, inst:2, dir:0, x:440, y:368, obj:20, depth:2}, {l:1, p:2, inst:0, dir:1, x:1976, y:520, obj:20, depth:2}, {l:1, p:1, inst:2, dir:1, x:256, y:616, obj:20, depth:2}, {l:1, p:1, inst:1, dir:1, x:248, y:616, obj:20, depth:2}];
world_camblocks = [{xMin:24, xMax:2040, yMin:216, yMax:872, u:1, d:1, l:0, r:1}];
world_tiles = importtiles(lvl4_txt);
}
function initmenu() {
frameon("menu");
buttonhover(menup.bon);
_root.gotocontrols.onRollOver = function () {
buttonhover("gotocontrols");
};
_root.gotoreplays.onRollOver = function () {
buttonhover("gotoreplays");
};
_root.gotol1.onRollOver = function () {
buttonhover("gotol1");
};
_root.gotol2.onRollOver = function () {
buttonhover("gotol2");
};
_root.gotol3.onRollOver = function () {
buttonhover("gotol3");
};
_root.gotol4.onRollOver = function () {
buttonhover("gotol4");
};
_root.gotocontrols.onPress = function () {
initcontrols();
};
_root.gotoreplays.onPress = function () {
initreplays();
};
_root.gotol1.onPress = function () {
gameinit(1);
};
_root.gotol2.onPress = function () {
gameinit(2);
};
_root.gotol3.onPress = function () {
gameinit(3);
};
_root.gotol4.onPress = function () {
gameinit(4);
};
if (menup.losses == 10) {
menup.losses = 0;
_root.mouthtxt.gotoAndStop(1);
_root.lastman.gotoAndStop(1);
_root.mouthtxt.speech.gotoAndStop(random(_root.mouthtxt.speech._totalframes) + 1);
} else if (menup.wins > 0) {
menup.losses = 0;
menup.wins = 0;
_root.mouthtxt.gotoAndStop(2);
_root.lastman.gotoAndStop(1);
_root.mouthtxt.speech.gotoAndStop(playerloglvl);
} else {
_root.mouthtxt.gotoAndStop(3);
_root.lastman.gotoAndStop(2);
}
}
function buttonhover(nam) {
_root[menup.bon].gotoAndStop(1);
_root[nam].gotoAndStop(2);
menup.bon = nam;
var _local2 = 0;
while (_local2 < menubuttons.length) {
if (menubuttons[_local2] == nam) {
menup.bonx = _local2;
break;
}
_local2++;
}
}
function menukeys() {
if (clicks.left == 1) {
menup.bonx = (((menup.bonx - 1) < 0) ? (menubuttons.length - 1) : (menup.bonx - 1));
buttonhover(menubuttons[menup.bonx]);
}
if (clicks.right == 1) {
menup.bonx = (((menup.bonx + 1) > (menubuttons.length - 1)) ? 0 : (menup.bonx + 1));
buttonhover(menubuttons[menup.bonx]);
}
if ((clicks.s == 1) || (clicks.a == 1)) {
if (menup.bon == "gotocontrols") {
initcontrols();
} else if (menup.bon == "gotoreplays") {
initreplays();
} else {
gameinit(menup.bonx + 1);
}
}
}
function initcontrols() {
frameon("controls");
outkeys();
_root.gotomenu.onPress = function () {
pausep.ctrlon = -1;
initmenu();
};
_root.defaultkeys.onPress = function () {
resetinputs();
};
}
function initreplays() {
frameon("replays");
_root.gotomenu.onPress = function () {
loadedlogtxt = _root.loadtxt.text;
initmenu();
};
_root.savecopy.onPress = function () {
var _local1 = exportplaythrough();
if (_local1 != undefined) {
System.setClipboard(_local1);
}
};
_root.loadtxt.text = loadedlogtxt;
_root.loadclear.onPress = function () {
loadedlogtxt = "";
_root.loadtxt.text = "";
};
_root.loadreplay.onPress = function () {
var _local2 = importplaythrough(_root.loadtxt.text);
if (_local2 == 1) {
loadedlogtxt = _root.loadtxt.text;
initreplaying();
} else {
_root.loadtxt.text = _local2;
}
};
}
function gameinit(lvl, replaying) {
if (lvl > 0) {
thislevelis = lvl;
var _local9 = _root[("lvl" + lvl) + "_points"].x;
var _local8 = _root[("lvl" + lvl) + "_points"].y;
_root["song_lvl" + lvl]();
_root["init_lvl" + lvl]();
if (!replaying) {
playerlogp = {stage:lvl, timeup:"", victory:0};
playerlog = [new Array(), new Array(), new Array(), new Array(), new Array()];
}
} else {
var _local9 = _root.fg._xmouse;
var _local8 = _root.fg._ymouse;
backup_tiles = copyarr(world_tiles);
backup_objects = copyarr(world_objects);
}
gamep = {state:"playing", replay:0, zonein:"none", ffps:39, timeven:1, minitimer:0};
songp = {timer:0, timing:4};
waitingbass = new Array();
waitinglead = new Array();
waitingdrums = new Array();
var _local5 = 0;
while (_local5 < 3) {
var _local3 = instruments[_local5];
songp[_local3 + "piece"] = -1;
songp[_local3 + "skip"] = 0;
songp[_local3 + "loop"] = 0;
songp[_local3 + "hit"] = 0;
if (_root[("channel_" + _local3) + "_0"] == undefined) {
var _local2 = 0;
while (_local2 < 3) {
var _local4 = (("soundxchannel_" + _local3) + "_") + _local2;
_root.attachMovie("empty", _local4, _root.getNextHighestDepth());
_root[(("channel_" + _local3) + "_") + _local2] = new Sound(_root[_local4]);
_local2++;
}
}
_local5++;
}
timer = 0;
frameon("game");
_root.fg.tl_below.cacheAsBitmap = true;
_root.fg._xscale = tilep.zoom;
_root.fg._yscale = tilep.zoom;
_root.bg.gotoAndStop("none");
if (replaying) {
gamep.replay = 1;
_root.overlay.gotoAndStop("replay");
_root.bg.replayer.gotoAndStop(2);
_root.bg.replayer.playername.text = loadedsplit[0];
} else {
_root.overlay.gotoAndStop("game");
}
getcambounds(_local9, _local8);
world_objects.push({x:_local9, y:_local8, obj:1, depth:2, none:"player", crouching:0});
pallette.suit = psuit[1];
createarea();
_root.fg.gotoAndStop(2);
var _local7 = world_objects[world_objects.length - 1];
cam(_local7.x, _local7.y - 20, 1, 1);
inittracks();
}
function gameexit() {
gamep.state = "exiting";
world_tiles = copyarr(backup_tiles);
world_objects = copyarr(backup_objects);
}
function superexit() {
if (gamep.replay) {
gamep.replay = 0;
initreplays();
} else {
var _local1 = setreplayclock(timer);
playerlogp.timeup = (((_local1.min + ",") + _local1.sec) + ",") + _local1.cent;
initmenu();
}
}
function gameloop() {
if (gamep.state == "playing") {
if (clicks.space == 1) {
_root.overlay.gotoAndStop("paused");
gamep.state = "paused";
return(undefined);
}
playpiece();
gamep.minitimer = ((gamep.minitimer < gamep.ffps) ? (gamep.minitimer + 1) : 0);
if (gamep.minitimer == 0) {
gamep.timeven = (gamep.timeven ? 0 : 1);
}
if (crumbleplays.length > 0) {
var _local5 = 0;
while (_local5 < crumbleplays.length) {
_root.fg.tl_below[crumbleplays[_local5]].mc.mc.play();
_local5++;
}
crumbleplays.length = 0;
}
if (gamep.zonein == "spiral") {
deathspiral();
var _local13 = {x:_root.overlay.skull._x, y:_root.overlay.skull._y};
_root.fg.globalToLocal(_local13);
killtile(-1, "tl_below", _local13.x, _local13.y);
}
spikesound = 0;
spritesonscreen = {crab:0, snail:0, armadillo:0, porcupine:0, turtle:0, explosion:0, bullethead:0, bullettail:0, googum:0};
var _local12 = {x:-obradius.l, y:-obradius.u};
_root.fg.globalToLocal(_local12);
var _local11 = {x:Stage.width + obradius.r, y:Stage.height + obradius.d};
_root.fg.globalToLocal(_local11);
var _local5 = 0;
while (_local5 < ref_objects.length) {
var _local4 = ref_objects[_local5];
var _local2 = world_objects[_local4];
var _local3 = _local2.none;
if (((_local3 != "player") && (_local3 != "parasnail")) && ((((_local2.x > _local11.x) || (_local2.x < _local12.x)) || (_local2.y > _local11.y)) || (_local2.y < _local12.y))) {
} else if (_local3 != undefined) {
if (_local3 != "player") {
var _local7 = _local2.x - 8;
var _local6 = _local2.x + 8;
var _local10 = ((_local3 == "googum") ? (_local2.y - 24) : (_local2.y - 8));
var _local8 = ((_local3 == "spikes") ? (_local2.y + 8) : (_local2.y));
if ((((_local7 > campointb.x) || (_local6 < campointa.x)) || (_local10 > campointb.y)) || (_local8 < campointa.y)) {
if (_local2.onscreen) {
_local2.onscreen = 0;
_root.fg.sorted["obj" + _local4]._visible = false;
}
} else {
managepallette(_local3, _local2.explode);
if (!_local2.onscreen) {
_local2.onscreen = 1;
_root.fg.sorted["obj" + _local4]._visible = true;
}
}
}
var _local9 = _root[_local3](_local4);
if (_local9) {
return(undefined);
}
}
_local5++;
}
assignpallette();
} else if (gamep.state == "paused") {
if (clicks.space == 1) {
_root.overlay.gotoAndStop("game");
gamep.state = "playing";
return(undefined);
}
} else if ((gamep.state == "exiting") && (gamep.exitcountdown == timer)) {
superexit();
}
}
function spikes(id) {
var _local2 = world_objects[id];
if (_local2.timebased) {
if ((gamep.minitimer > 3) && (gamep.minitimer < 9)) {
if ((((_local2.frame == 2) || (_local2.frame == 4)) || (_local2.frame == 6)) || (_local2.frame == 8)) {
return(undefined);
}
_local2.frame++;
_local2.killu = 0;
_local2.killd = 0;
_local2.killl = 0;
_local2.killr = 0;
if (_local2.onscreen) {
_root.fg.sorted["obj" + id].mc.gotoAndStop(_local2.frame);
}
} else if (gamep.minitimer > 8) {
if ((((_local2.frame == 2) || (_local2.frame == 4)) || (_local2.frame == 6)) || (_local2.frame == 8)) {
_local2.frame = (((_local2.frame + 1) == 9) ? 1 : (_local2.frame + 1));
var _local5 = 1;
}
var _local7 = (((_local2.vert + gamep.timeven) == 1) ? 1 : 0);
var _local6 = (((_local2.frame == 1) || (_local2.frame == 5)) ? 0 : 1);
if (_local7 != _local6) {
_local2.frame = (((_local2.frame + 2) == 9) ? 1 : (_local2.frame + 2));
var _local5 = 1;
}
if (_local5) {
if (_local2.onscreen) {
if (!spikesound) {
playsound("SFX_spikes");
spikesound = 1;
}
_root.fg.sorted["obj" + id].mc.gotoAndStop(_local2.frame);
}
var _local3 = (_local2.frame == 1) || (_local2.frame == 5);
_local2.killu = (_local3 ? 0 : 1);
_local2.killd = (_local3 ? 0 : 1);
_local2.killl = (_local3 ? 1 : 0);
_local2.killr = (_local3 ? 1 : 0);
}
}
} else {
_local2.minitimer = ((_local2.minitimer < gamep.ffps) ? (_local2.minitimer + 1) : 0);
if ((((_local2.frame == 2) || (_local2.frame == 4)) || (_local2.frame == 6)) || (_local2.frame == 8)) {
_local2.midframe++;
if (_local2.midframe > 3) {
_local2.frame = (((_local2.frame + 1) > 8) ? 1 : (_local2.frame + 1));
var _local3 = (_local2.frame == 1) || (_local2.frame == 5);
_local2.killu = (_local3 ? 0 : 1);
_local2.killd = (_local3 ? 0 : 1);
_local2.killl = (_local3 ? 1 : 0);
_local2.killr = (_local3 ? 1 : 0);
if (_local2.onscreen) {
if (!spikesound) {
playsound("SFX_spikes");
spikesound = 1;
}
_root.fg.sorted["obj" + id].mc.gotoAndStop(_local2.frame);
}
}
}
var _local8 = _local2.minitimer;
if (_local8 == 4) {
_local2.frame = (((((_local2.frame == 2) || (_local2.frame == 4)) || (_local2.frame == 6)) || (_local2.frame == 8)) ? (_local2.frame + 2) : (_local2.frame + 1));
_local2.frame = _local2.frame - ((_local2.frame > 8) ? 8 : 0);
_local2.killu = 0;
_local2.killd = 0;
_local2.killl = 0;
_local2.killr = 0;
if (_local2.onscreen) {
_root.fg.sorted["obj" + id].mc.gotoAndStop(_local2.frame);
_local2.midframe = 0;
}
}
}
}
function missile(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = ((_local2.xory == 1) ? 0 : (missilep[_local2.movespeed].speed));
_local2.xmove = _local2.topx * _local2.dir;
_local2.ymove = ((_local2.xory == 0) ? 0 : (missilep[_local2.movespeed].yspeed * _local2.ydir));
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if (_local2.xory == 1) {
if ((_local2.ydir == 1) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id].mc.gotoAndStop("moded");
_local2.killu = 0;
_local2.killd = 2;
} else if ((_local2.ydir == -1) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id].mc.gotoAndStop("modeu");
_local2.killu = 2;
_local2.killd = 0;
}
} else {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
_local2.killl = 0;
_local2.killr = 2;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
_local2.killl = 2;
_local2.killr = 0;
}
if ((_local2.xory == 2) && (((_local2.ydir == -1) && (_local2.killu != 2)) || ((_local2.ydir == 1) && (_local2.killd != 2)))) {
_local2.killu = ((_local2.ydir == -1) ? 2 : 0);
_local2.killd = ((_local2.ydir == -1) ? 0 : 2);
}
}
_root.fg.sorted["obj" + id].mc.mc1.gotoAndStop(pallette.bullethead);
_root.fg.sorted["obj" + id].mc.mc2.mc.gotoAndStop(pallette.bullettail);
}
}
function crab(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.minitimer = ((_local2.minitimer < (gamep.ffps * 2)) ? (_local2.minitimer + 1) : 0);
var _local6 = _local2.minitimer;
_local2.topx = crabp[_local2.movespeed].speed;
if ((_local2.jump && (!_local2.inair)) && (_local6 == 0)) {
_local2.ymove = -crabp[_local2.jumpheight].jump;
}
var _local5 = physics(id);
if (_local5 == 0) {
return(undefined);
}
if (_local2.onscreen) {
var _local4 = "sorted";
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg[_local4]["obj" + id]._xscale = 100;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg[_local4]["obj" + id]._xscale = -100;
}
if (_local2.inair) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("jump");
_root.fg[_local4]["obj" + id].mc.mc1.gotoAndStop(pallette.crab);
_root.fg[_local4]["obj" + id].mc.mc2.gotoAndStop(pallette.crab);
} else if (_local2.xmove == 0) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("idle");
_root.fg[_local4]["obj" + id].mc.mc1.gotoAndStop(pallette.crab);
_root.fg[_local4]["obj" + id].mc.mc2.gotoAndStop(pallette.crab);
} else {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("run");
_root.fg[_local4]["obj" + id].mc.mc.mc1.gotoAndStop(pallette.crab);
_root.fg[_local4]["obj" + id].mc.mc.mc2.gotoAndStop(pallette.crab);
}
}
}
function pig(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = crabp[_local2.movespeed].speed;
if (!_local2.inair) {
var _local5 = world_objects[world_objects.length - 1];
if (_local5.ontop == id) {
_local2.drop = 1;
_local2.ymove = -crabp[_local2.jumpheight].jump;
}
}
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
_local2.drop = 0;
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
}
if (_local2.inair) {
_root.fg.sorted["obj" + id].mc.gotoAndStop("jump");
} else {
_root.fg.sorted["obj" + id].mc.gotoAndStop("run");
}
}
function snail(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = snailp[_local2.movespeed].speed;
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
_local2.killl = 0;
_local2.killr = 1;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
_local2.killl = 1;
_local2.killr = 0;
}
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(pallette.snail);
}
}
function parasnail(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
if (_local2.pathdir) {
if ((_local2.dir != -1) && (_local2.x > _local2.pathmax)) {
_local2.dir = -1;
} else if ((_local2.dir != 1) && (_local2.x < _local2.pathmin)) {
_local2.dir = 1;
}
_local2.topx = parasnailp[_local2.movespeed].speed;
_local2.xmove = _local2.topx * _local2.dir;
_local2.ymove = 0;
} else {
if ((_local2.dir != -1) && (_local2.y > _local2.pathmax)) {
_local2.dir = -1;
} else if ((_local2.dir != 1) && (_local2.y < _local2.pathmin)) {
_local2.dir = 1;
}
_local2.topx = 0;
_local2.ymove = parasnailp[_local2.movespeed].speed * _local2.dir;
}
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
_local2.killl = 0;
_local2.killr = 1;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
_local2.killl = 1;
_local2.killr = 0;
}
_root.fg.sorted["obj" + id].mc.mc1.gotoAndStop(pallette.snail);
_root.fg.sorted["obj" + id].mc.mc2.mc.gotoAndStop(pallette.snail);
}
}
function porcupine(id) {
var _local2 = world_objects[id];
if (_local2.death) {
physics(id);
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.porcupine);
return(undefined);
}
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = porcupinep[_local2.movespeed].speed;
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
}
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.porcupine);
}
}
function booster(sub, dub) {
playsound("SFX_head");
sub.dir = ((dub.xmove < 0) ? -1 : 1);
sub.topx = ((dub.xmove == 0) ? 0 : (dub.topx));
sub.xmove = dub.xmove;
sub.ymove = ((dub.ymove < 0) ? (dub.ymove * 2) : -5);
}
function changi(id) {
var _local2 = world_objects[id];
if (_local2.none == "armadillo") {
if (_local2.ball == 2) {
playsound("SFX_bop");
_local2.killd = 1;
_local2.killl = 1;
_local2.killr = 1;
_local2.ball = 0;
_root.fg.sorted["obj" + id].mc.gotoAndStop(1);
} else {
playsound("SFX_bop");
_local2.killd = 0;
_local2.killl = 0;
_local2.killr = 0;
_local2.ball = 2;
_root.fg.sorted["obj" + id].mc.gotoAndStop("crouch");
}
} else if (_local2.switched == undefined) {
playsound("SFX_bop");
_local2.switched = timer + turtlep[3][_local2.timerspeed];
_local2.countdown = 0;
_local2.killd = 0;
_local2.killl = 0;
_local2.killr = 0;
_local2.xmove = 0;
_local2.drop = 1;
_local2.crouching = 1;
_root.fg.sorted["obj" + id].mc.gotoAndStop("crouch");
}
}
function ballkick(id) {
var _local2 = world_objects[id];
_local2.ball = 1;
_local2.killd = 2;
_local2.killl = ((_local2.dir == -1) ? 2 : 0);
_local2.killr = ((_local2.dir == 1) ? 2 : 0);
_local2.drop = 1;
_root.fg.sorted["obj" + id].mc.gotoAndStop("roll");
}
function armadillo(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
if (_local2.ball == 2) {
_local2.topx = 0;
} else {
_local2.topx = (_local2.ball ? (armadillop[_local2.ballspeed].ballspd) : (armadillop[_local2.movespeed].speed));
}
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
if (_local2.ball) {
_local2.killl = 0;
_local2.killr = 2;
}
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
if (_local2.ball) {
_local2.killl = 2;
_local2.killr = 0;
}
}
if (_local2.ball == 2) {
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(pallette.armadillo);
} else {
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.armadillo);
}
}
}
function turtle(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
if (_local2.switched != undefined) {
if (_local2.countdown < 6) {
physics(id);
_root.fg.sorted["obj" + id].mc.mc.mc1.gotoAndStop(pallette.turtle);
_root.fg.sorted["obj" + id].mc.mc.mc2.gotoAndStop(pallette.turtle);
} else {
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.explosion);
}
if (timer == _local2.switched) {
_local2.switched = timer + turtlep[3][_local2.timerspeed];
_local2.countdown++;
if (_local2.countdown == 7) {
killobj(id);
} else if (_local2.countdown == 6) {
_root.fg.sorted["obj" + id].mc.gotoAndStop("explode");
playsound("SFX_explosion");
if (!_local2.explode) {
_local2.death = 1;
_local2.explode = 1;
_local2.ontop = -1;
crumbletouch(id, 17, 4);
}
} else {
_root.fg.sorted["obj" + id].mc.mc.nextFrame();
}
}
return(undefined);
}
_local2.topx = turtlep[_local2.movespeed].speed;
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
}
_root.fg.sorted["obj" + id].mc.mc.mc1.gotoAndStop(pallette.turtle);
_root.fg.sorted["obj" + id].mc.mc.mc2.gotoAndStop(pallette.turtle);
_root.fg.sorted["obj" + id].mc.mc.mc3.gotoAndStop(pallette.turtle);
}
}
function googum(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = googump[_local2.movespeed].speed;
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg.sorted["obj" + id]._xscale = 100;
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg.sorted["obj" + id]._xscale = -100;
}
}
}
function banzaiman(id) {
var _local2 = world_objects[id];
if (_local2.dir == "warp") {
_local2.dir = _local2.graphic;
return(undefined);
}
_local2.topx = 0;
if (!_local2.inair) {
_local2.ymove = -banzaimanp[_local2.jumpheight].jump;
_local2.jreserve = banzaimanp[_local2.jumpheight].jres;
if (_local2.onscreen) {
playsound("SFX_banzai");
}
}
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
if (_local2.onscreen) {
if (_local2.ymove < 0) {
_root.fg.sorted["obj" + id].mc.gotoAndStop("jump");
} else {
_root.fg.sorted["obj" + id].mc.gotoAndStop("fall");
}
}
}
function updatelookers(dir) {
tiledata[8][0].block = ((dir == 1) ? 0 : 1);
tiledata[9][0].block = ((dir == 1) ? 1 : 0);
var _local2 = 0;
while (_local2 < ref_tiles.length) {
var _local3 = ref_tiles[_local2].tile;
if ((_local3 == 8) || (_local3 == 9)) {
var _local5 = (("x" + ref_tiles[_local2].x) + "y") + ref_tiles[_local2].y;
var _local4 = tiledata[_local3][0].block + 1;
_root.fg.tl_below[_local5].mc.gotoAndStop(_local4);
}
_local2++;
}
}
function warpblock(id, dir, tx, ty) {
var _local4 = world_objects[id];
_local4.warptouch = 1;
if (((dir == "l") || (dir == "r")) && ((_local4.lastwarp == "l") || (_local4.lastwarp == "r"))) {
if ((_local4.lastwarp != dir) && (ty == _local4.warpy)) {
return(0);
}
} else if (((dir == "u") || (dir == "d")) && ((_local4.lastwarp == "u") || (_local4.lastwarp == "d"))) {
if ((_local4.lastwarp != dir) && (ty == _local4.warpy)) {
return(0);
}
}
var _local6 = 501;
if (dir == "l") {
var _local3 = tx - 1;
while (_local3 > (tx - _local6)) {
var _local8 = world_tiles[_local3][ty];
if (tiledata[_local8][0].warp == "r") {
_local4.lastwarp = dir;
warpto(id, _local3, ty);
return(1);
}
_local3--;
}
} else if (dir == "r") {
var _local3 = tx + 1;
while (_local3 < (tx + _local6)) {
var _local8 = world_tiles[_local3][ty];
if (tiledata[_local8][0].warp == "l") {
_local4.lastwarp = dir;
warpto(id, _local3, ty);
return(1);
}
_local3++;
}
} else if (dir == "u") {
var _local3 = ty - 1;
while (_local3 > (ty - _local6)) {
var _local8 = world_tiles[tx][_local3];
if (tiledata[_local8][0].warp == "d") {
_local4.lastwarp = dir;
warpto(id, tx, _local3);
return(1);
}
_local3--;
}
} else if (dir == "d") {
var _local3 = ty + 1;
while (_local3 < (ty + _local6)) {
var _local8 = world_tiles[tx][_local3];
if (tiledata[_local8][0].warp == "u") {
_local4.lastwarp = dir;
warpto(id, tx, _local3);
return(1);
}
_local3++;
}
}
}
function warpto(id, tx, ty) {
var _local2 = world_objects[id];
_local2.warpx = tx;
_local2.warpy = ty;
_local2.ymove = 1;
_local2.xmove = 0;
_local2.ontop = -1;
_local2.inair = 0;
_local2.dir = "warp";
moveobj(id, (tx * 8) + 4, "cen", ty * 8, "max");
_local2.inside = checktouch(id, _local2.obj, 1);
if (_local2.none == "player") {
getcambounds(_local2.x, _local2.y);
cam(_local2.x, _local2.y - 20, 1, 1);
}
if ((_local2.none == "player") || (happeningonscreen(tx, ty))) {
playsound("SFX_warp");
_root.fg.tl_below[(("x" + tx) + "y") + ty].mc.mc.play();
}
}
function springblock(id, tx, ty) {
var _local2 = world_objects[id];
_local2.topx = ((_local2.topx < 1) ? 1 : (_local2.topx));
_local2.jreserve = 5;
_local2.ymove = -8;
if (happeningonscreen(tx, ty)) {
_root.fg.tl_below[(("x" + tx) + "y") + ty].mc.mc.gotoAndPlay(1);
playsound("SFX_spring");
}
}
function crumbleblock(tx, ty) {
if (_root.fg.tl_below[(("x" + tx) + "y") + ty].mc.mc._currentframe == 1) {
_root.fg.tl_below[(("x" + tx) + "y") + ty].mc.mc.play();
world_tiles[tx][ty] = world_tiles[tx][ty] + 100;
if (crumble_tiles == undefined) {
crumble_tiles = new Array();
}
if (crumble_tiles[tx] == undefined) {
crumble_tiles[tx] = new Array();
}
crumble_tiles[tx][ty] = timer;
if (happeningonscreen(tx, ty)) {
playsound("SFX_crumble");
}
}
}
function happeningonscreen(tx, ty, pt) {
if (pt) {
var _local1 = tx;
var _local5 = tx;
var _local2 = ty;
var _local6 = ty;
} else {
var _local1 = tx * tilep.w;
var _local5 = _local1 + tilep.w;
var _local2 = ty * tilep.h;
var _local6 = _local2 + tilep.h;
}
if ((((_local1 < campointb.x) && (_local5 > campointa.x)) && (_local2 < campointb.y)) && (_local6 > campointa.y)) {
return(1);
}
return(0);
}
function killoff(id) {
var _local2 = world_objects[id];
if (((_local2.death || (_local2.none == "spikes")) || (_local2.none == "missile")) || (_local2.none == "pig")) {
return(undefined);
}
if (happeningonscreen(_local2.x, _local2.y, 1)) {
if (_local2.none == "player") {
playsound("SFX_death");
} else {
playsound("SFX_nmedeath");
}
}
if ((_local2.none == "player") && (suits[_local2.obj] == "crab")) {
_local2.obj = 2;
_root.fg.sorted["obj" + id].gotoAndStop("red");
}
_root.fg.sorted["obj" + id].mc.gotoAndStop("death");
_local2.frame = "death";
_local2.xmove = 0;
_local2.topx = 0;
_local2.ymove = -physicsp.ytop;
_local2.jreserve = ((_local2.none != "porcupine") ? 3 : 4);
_local2.death = 1;
_local2.sticking = 0;
if ((_local2.none != "porcupine") && (_local2.none != "player")) {
_local2.none = "playdeath";
}
}
function killkilledcheck(plr, npc) {
if (((npc.none == "missile") || (npc.none == "spikes")) || (npc.none == "pig")) {
} else {
if ((suits[plr.obj] == "brown") || (plr.diving)) {
return(1);
}
if ((npc.none == "googum") && (plr.xmove == 0)) {
return(1);
}
if ((plr.attacking && (npc.none != "crab")) && (npc.none != "googum")) {
if (((plr.graphic == 1) && (plr.x < npc.x)) || ((plr.graphic == -1) && (plr.x > npc.x))) {
return(1);
}
}
}
if (plr.obj == 4) {
_root.fg.sorted["obj" + (world_objects.length - 1)].gotoAndStop(5);
plr.obj = 5;
return(1);
}
return(0);
}
function testkill(sub, subdir, dub, dubdir) {
if ((suits[sub.obj] != "crab") || (suits[dub.obj] != "crab")) {
if (((sub["kill" + subdir] == 2) || ((sub["kill" + subdir] == 1) && (dub.none == "player"))) || ((sub["kill" + dubdir] == 3) && ((dub.obj > 12) || (dub.obj == 10)))) {
if (killkilledcheck(dub, sub)) {
return(1);
}
return(2);
}
if (((dub["kill" + dubdir] == 2) || ((dub["kill" + dubdir] == 1) && (sub.none == "player"))) || ((dub["kill" + dubdir] == 3) && ((sub.obj > 12) || (sub.obj == 10)))) {
if (killkilledcheck(sub, dub)) {
return(2);
}
return(1);
}
}
return(0);
}
function playdeath(id) {
var _local2 = world_objects[id];
moveobj(id, -1, -1, _local2.y + _local2.ymove, "max");
_local2.ymove = _local2.ymove + 0.3;
if (_local2.obj == 10) {
_root.fg.sorted["obj" + id].mc.mc1.gotoAndStop(pallette.crab);
_root.fg.sorted["obj" + id].mc.mc2.gotoAndStop(pallette.crab);
} else if ((_local2.obj == 13) || (_local2.obj == 14)) {
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.snail);
} else if (_local2.obj == 15) {
_root.fg.sorted["obj" + id].mc.mc.mc.gotoAndStop(pallette.porcupine);
} else if (_local2.obj == 16) {
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(pallette.armadillo);
} else if (_local2.obj == 17) {
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(pallette.turtle);
}
}
function lrdirchange(sub, newdir) {
if ((sub.none == "player") || (sub.none == "spikes")) {
return(undefined);
}
if ((sub.dir == 0) || (sub.pathdir == 0)) {
return(undefined);
}
sub.dir = newdir;
}
function uddirchange(sub, newdir) {
if ((sub.none == "missile") && (sub.xory != 0)) {
sub.ydir = newdir;
}
}
function playerjump(id) {
var _local1 = world_objects[id];
if (_local1.hanging) {
_local1.hanging = 0;
_local1.xmove = 0;
} else if (_local1.jumps) {
_local1.jumps--;
if ((suits[_local1.obj] == "white") && (_local1.inair)) {
_local1.topx = ppp[_local1.obj].walk;
_local1.xmove = ppp[_local1.obj].walk * (_local1.graphic * -1);
}
}
var _local2 = Math.abs(_local1.xmove);
_local1.topx = (((_local2 < ppp[_local1.obj].dash) && (_local2 < ppp[_local1.obj].walk)) ? (ppp[_local1.obj].walk) : (_local2));
_local1.jreserve = _local2 + ppp[_local1.obj].jump;
_local1.ymove = -physicsp.ytop;
playsound("SFX_jump");
}
function playergraphics(id) {
var _local2 = world_objects[id];
var _local4 = "sorted";
if (((_local2.dir != 0) && ((!_local2.inair) || (!clicks.a))) && (!_local2.hanging)) {
if ((_local2.xmove > 0) && (_local2.graphic != 1)) {
_local2.graphic = 1;
_root.fg[_local4]["obj" + id]._xscale = 100;
updatelookers(1);
} else if ((_local2.xmove < 0) && (_local2.graphic != -1)) {
_local2.graphic = -1;
_root.fg[_local4]["obj" + id]._xscale = -100;
updatelookers(-1);
}
}
_local2.diving = 0;
if (_local2.death) {
_root.fg.sorted["obj" + id].mc.gotoAndStop("death");
} else if ((((suits[_local2.obj] == "black") && (_local2.inair)) && (_local2.ymove > 0)) && (clicks.down)) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("dive");
_local2.diving = 1;
_local2.crouching = 1;
} else if (_local2.hanging) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("grab");
} else if (_local2.attacking == 1) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("attack");
_local2.attacking = 2;
} else if (_local2.attacking == 2) {
var _local6 = _root.fg[_local4]["obj" + id].mc.mc._currentframe;
var _local5 = _root.fg[_local4]["obj" + id].mc.mc._totalframes;
_local2.killl = ((_local2.graphic == 1) ? 0 : 2);
_local2.killr = ((_local2.graphic == 1) ? 2 : 0);
if (_local6 == _local5) {
_local2.attacking = 0;
_local2.killl = 0;
_local2.killr = 0;
_root.fg[_local4]["obj" + id].mc.gotoAndStop("idle");
}
} else if (_local2.crouching) {
if (suits[_local2.obj] == "red") {
if (_local2.crouching == 1) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("crouch");
_local2.crouching = 2;
} else if (_local2.crouching == 2) {
var _local6 = _root.fg[_local4]["obj" + id].mc.mc._currentframe;
var _local5 = _root.fg[_local4]["obj" + id].mc.mc._totalframes;
if (_local6 == _local5) {
if (checktouch(id, 10, 1)) {
_local2.crouching = 3;
_root.fg[_local4]["obj" + id].mc.gotoAndStop("uncrouch");
} else {
_local2.obj = 10;
_root.fg[_local4]["obj" + id].gotoAndStop(_local2.obj);
_root.fg[_local4]["obj" + id].mc.gotoAndStop("idle");
_local2.crouching = 0;
}
}
} else if (_local2.crouching == 3) {
var _local6 = _root.fg[_local4]["obj" + id].mc.mc._currentframe;
var _local5 = _root.fg[_local4]["obj" + id].mc.mc._totalframes;
if (_local6 == _local5) {
_local2.crouching = 0;
_root.fg[_local4]["obj" + id].mc.gotoAndStop("idle");
}
}
} else if (suits[_local2.obj] == "crab") {
if (checktouch(id, 2, 1)) {
_local2.crouching = 0;
} else {
_local2.obj = 2;
_root.fg[_local4]["obj" + id].gotoAndStop(_local2.obj);
_root.fg[_local4]["obj" + id].mc.gotoAndStop("uncrouch");
_local2.crouching = 3;
}
} else if (_local2.crouching == 1) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("crouch");
_local2.crouching = 2;
_local2.inside = (((!_local2.inair) && checktouch(id, _local2.obj, 3)) ? 1 : 0);
} else if (_local2.crouching == 3) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("uncrouch");
_local2.crouching = 4;
} else if (_local2.crouching == 4) {
var _local6 = _root.fg[_local4]["obj" + id].mc.mc._currentframe;
var _local5 = _root.fg[_local4]["obj" + id].mc.mc._totalframes;
if (_local6 == _local5) {
_local2.crouching = 0;
_local2.inside = (((!_local2.inair) && checktouch(id, _local2.obj, 1)) ? 1 : 0);
}
}
} else if (_local2.inair) {
if (_local2.ymove < 0) {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("jump");
} else {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("fall");
}
} else if (_local2.xmove == 0) {
_local2.idletimer = ((_local2.idlelast == (timer - 1)) ? (_local2.idletimer + 1) : 1);
_local2.idlelast = timer;
_root.fg[_local4]["obj" + id].mc.gotoAndStop("idle");
if (_local2.idletimer > 200) {
_local2.idletimer = -100;
_root.fg[_local4]["obj" + id].mc.mc.play();
}
} else {
_root.fg[_local4]["obj" + id].mc.gotoAndStop("run");
}
if (suits[_local2.obj] == "crab") {
if (_local2.attacking || (_local2.xmove != 0)) {
_root.fg[_local4]["obj" + id].mc.mc.mc1.gotoAndStop(1);
_root.fg[_local4]["obj" + id].mc.mc.mc2.gotoAndStop(1);
} else {
_root.fg[_local4]["obj" + id].mc.mc1.gotoAndStop(1);
_root.fg[_local4]["obj" + id].mc.mc2.gotoAndStop(1);
}
}
}
function player(id) {
var _local2 = world_objects[id];
if ((design == 0) && (_local2.y > (campointb.y + 80))) {
gamep.state = "exiting";
if (!gamep.replay) {
menup.losses++;
}
superexit();
return(1);
}
if (_local2.death) {
_local2.xmove = 0;
if (clicks.right) {
_local2.xmove = 1;
} else if (clicks.left) {
_local2.xmove = -1;
}
if (_local2.ymove == 1) {
_root.fg.sorted["obj" + id].mc.mc.play();
}
physics(id);
return(undefined);
}
if (_local2.dir == "warp") {
_local2.dir = 0;
return(undefined);
}
if (_local2.hanging) {
if (clicks.down == 1) {
_local2.hanging = 0;
_local2.crouching = 1;
_local2.xmove = ((_local2.graphic == 1) ? -1 : 1);
}
} else if (suits[_local2.obj] == "red") {
if ((clicks.down == 1) && (_local2.crouching == 0)) {
_local2.crouching = 1;
}
} else if (suits[_local2.obj] == "crab") {
if (clicks.down == 1) {
_local2.crouching = 1;
}
} else if (_local2.sticking) {
} else if (clicks.down && (_local2.crouching == 0)) {
_local2.crouching = 1;
} else if ((!clicks.down) && (_local2.crouching == 2)) {
_local2.crouching = 3;
}
if (clicks.right) {
_local2.dir = 1;
} else if (clicks.left) {
_local2.dir = -1;
} else if (_local2.dir != 0) {
_local2.dir = 0;
}
if (suits[_local2.obj] == "crab") {
if (_local2.attacking && (!_local2.inair)) {
_local2.dir = 0;
} else if (clicks.a == 1) {
crumbleblock(gettilex(_local2.x + (8 * _local2.graphic)), gettiley(_local2.y - 4));
_local2.attacking = 1;
_local2.dir = 0;
}
} else if (suits[_local2.obj] == "yellow") {
if (!_local2.inair) {
_local2.jumps = 2;
}
} else if (psuit[_local2.obj] == "gecko") {
_local2.stick = (clicks.a ? 1 : 0);
_local2.sticking = (((!clicks.a) || (!_local2.inair)) ? 0 : (_local2.sticking));
}
if (clicks.s == 1) {
_local2.jumppress = 1;
} else if (clicks.s == 0) {
_local2.jumppress = 0;
}
if (((!_local2.inair) || (_local2.hanging)) || (_local2.jumps)) {
if (_local2.landed && ((!_local2.inair) || (_local2.hanging))) {
_local2.landed = 0;
}
_local2.topx = (clicks.a ? (ppp[_local2.obj].dash) : (ppp[_local2.obj].walk));
if (_local2.jumppress) {
playerjump(id);
_local2.jumppress = 0;
}
}
var _local4 = physics(id);
if (_local4 == 0) {
return(undefined);
}
playergraphics(id);
}
function playercam(sub) {
if ((sub.none == "player") && (!sub.death)) {
var _local2 = sub.lasty != sub.y;
if (_local2) {
_local2 = (sub.lasty > campointa.y) && (sub.lasty < campointb.y);
if (!_local2) {
_local2 = (sub.y > campointa.y) && (sub.y < campointb.y);
}
}
if (_local2) {
var _local3 = (((!sub.crouching) || (suits[sub.obj] != "brown")) ? (sub.y - 10) : (sub.y + 20));
var _local4 = ((sub.lastontop > -1) ? 0.05 : 0.1);
var _local5 = ((sub.lastontop > -1) ? 60 : 50);
if (camb.u && (_local3 < (campointa.y + _local5))) {
cam(-999, _local3, _local4);
} else if (camb.d && (_local3 > (campointb.y - _local5))) {
cam(-999, _local3, _local4);
}
}
if ((camb.l && (sub.lastx > sub.x)) || (camb.r && (sub.lastx < sub.x))) {
var _local6 = campointa.x + ((campointb.x - campointa.x) / 2);
var _local3 = sub.x;
var _local4 = 0.6;
if (camb.l && (_local3 < _local6)) {
cam(_local3, -999, _local4);
} else if (camb.r && (_local3 > _local6)) {
cam(_local3, -999, _local4);
}
}
}
}
function collected(id, tx, ty) {
var _local2 = world_tiles[tx][ty];
if (tiledata[_local2][0].end) {
killtile(-1, "tl_below", tx * 8, ty * 8);
gamep.state = "exiting";
if (!gamep.replay) {
menup.wins = 1;
}
var _local1 = setreplayclock(timer);
if (!replaying) {
playerlogp.timeup = (((_local1.min + ",") + _local1.sec) + ",") + _local1.cent;
playerlogp.victory = 1;
}
settimerclock(_local1);
gamep.exitcountdown = timer + 120;
return(1);
}
if (tiledata[_local2][0].suit) {
switchsuit(id, tiledata[_local2][0].suit);
playsound("SFX_changi");
killtile(-1, "tl_below", tx * 8, ty * 8);
}
}
function setreplayclock(t) {
var _local2 = Math.floor(t / (gamep.ffps * 60));
var _local1 = Math.floor(t / gamep.ffps);
var _local4 = t - (_local1 * gamep.ffps);
_local1 = _local1 - (_local2 * 60);
var _local5 = Math.floor((_local4 / gamep.ffps) * 100);
return({min:_local2, sec:_local1, cent:_local5});
}
function settimerclock(t) {
var _local2 = {ma:11, mb:11, sa:11, sb:11, ca:11, cb:11};
if (t.min < 100) {
_local2.ma = Math.floor(t.min / 10);
_local2.mb = (t.min - (_local2.ma * 10)) + 1;
_local2.ma++;
_local2.sa = Math.floor(t.sec / 10);
_local2.sb = (t.sec - (_local2.sa * 10)) + 1;
_local2.sa++;
_local2.ca = Math.floor(t.cent / 10);
_local2.cb = (t.cent - (_local2.ca * 10)) + 1;
_local2.ca++;
}
_root.overlay.timetaken.gotoAndStop(2);
_root.overlay.timetaken.mina.gotoAndStop(_local2.ma);
_root.overlay.timetaken.minb.gotoAndStop(_local2.mb);
_root.overlay.timetaken.seca.gotoAndStop(_local2.sa);
_root.overlay.timetaken.secb.gotoAndStop(_local2.sb);
_root.overlay.timetaken.centa.gotoAndStop(_local2.ca);
_root.overlay.timetaken.centb.gotoAndStop(_local2.cb);
}
function switchsuit(id, suit) {
var _local2 = world_objects[id];
_local2.obj = suit;
_root.fg.sorted["obj" + id].gotoAndStop(suit);
_local2.crouching = 0;
_local2.death = 0;
pallette.suit = psuit[suit];
tiledata[27][0].block = ((psuit[suit] == "crow") ? 1 : 0);
}
function exportresources() {
var _local2 = "";
var _local3 = new Date();
_local2 = _local2 + ((((((((("//" + _local3.getFullYear()) + "/") + (_local3.getMonth() + 1)) + "/") + _local3.getDate()) + " ") + _local3.getHours()) + ":") + _local3.getMinutes());
_local2 = _local2 + newline;
_local2 = _local2 + "tiledata = new Array();";
_local2 = _local2 + newline;
var _local1 = 0;
while (_local1 < tiledata.length) {
if (tiledata[_local1] != undefined) {
_local2 = _local2 + exportvar(("tiledata[" + _local1) + "]", tiledata[_local1]);
_local2 = _local2 + newline;
}
_local1++;
}
_local2 = _local2 + "objectdata = new Array();";
_local2 = _local2 + newline;
_local1 = 0;
while (_local1 < objectdata.length) {
if (objectdata[_local1] != undefined) {
_local2 = _local2 + exportvar(("objectdata[" + _local1) + "]", objectdata[_local1]);
_local2 = _local2 + newline;
}
_local1++;
}
trace(_local2);
}
function exportworld() {
var _local1 = "";
var _local2 = new Date();
_local1 = _local1 + ((((((((("//" + _local2.getFullYear()) + "/") + (_local2.getMonth() + 1)) + "/") + _local2.getDate()) + " ") + _local2.getHours()) + ":") + _local2.getMinutes());
_local1 = _local1 + newline;
_local1 = _local1 + exportvar("world_objects", world_objects);
_local1 = _local1 + newline;
_local1 = _local1 + exportvar("world_camblocks", world_camblocks);
_local1 = _local1 + newline;
_local1 = _local1 + (("world_txt = \"" + exporttiles(world_tiles)) + "\";");
_local1 = _local1 + newline;
_local1 = _local1 + "world_tiles = importtiles(world_txt);";
trace(_local1);
}
function exportvar(nam, val, multi) {
var _local3 = nam + " = ";
if (multi) {
_local3 = _local3 + "new Array();\r";
var _local1 = 0;
while (_local1 < val.length) {
_local3 = _local3 + (((((((nam + "[") + _local1) + "]") + " = ") + exportarray(val[_local1])) + ";") + newline);
_local1++;
}
return(_local3);
}
var _local5 = typeof(val);
if (val instanceof Array) {
_local3 = _local3 + exportarray(val);
} else if (_local5 == "object") {
_local3 = _local3 + exportobject(val);
} else if (_local5 == "string") {
_local3 = _local3 + (("\"" + val) + "\"");
} else if (_local5 == "number") {
_local3 = _local3 + val;
}
_local3 = _local3 + ";";
return(_local3);
}
function exportarray(arr) {
var _local3 = "[";
var _local1 = 0;
while (_local1 < arr.length) {
if (_local1) {
_local3 = _local3 + ", ";
}
var _local4 = typeof(arr[_local1]);
if (arr[_local1] == undefined) {
_local3 = _local3 + 0;
} else if (arr[_local1] instanceof Array) {
_local3 = _local3 + exportarray(arr[_local1]);
} else if (_local4 == "object") {
_local3 = _local3 + exportobject(arr[_local1]);
} else if (_local4 == "string") {
_local3 = _local3 + (("\"" + arr[_local1]) + "\"");
} else if (_local4 == "number") {
_local3 = _local3 + arr[_local1];
}
_local1++;
}
_local3 = _local3 + "]";
if (_local3 == "[]") {
_local3 = "0";
} else if (_local3.slice(0, 6) == "[{tile") {
_local3 = arr[0].tile;
}
return(_local3);
}
function exportobject(obj) {
var _local2 = "{";
var _local4 = 0;
for (var _local5 in obj) {
if (_local4) {
_local2 = _local2 + ", ";
}
var _local3 = typeof(obj[_local5]);
if (obj[_local5] == undefined) {
_local2 = _local2 + ((_local5 + ":") + 0);
} else if (_local3 == "string") {
_local2 = _local2 + (((_local5 + ":\"") + obj[_local5]) + "\"");
} else if (_local3 == "number") {
_local2 = _local2 + ((_local5 + ":") + obj[_local5]);
}
_local4++;
}
_local2 = _local2 + "}";
return(_local2);
}
function importarray(txt) {
var _local4 = new Array();
txt = txt.slice(1, -1);
while (true) {
var _local6 = txt.charAt(0);
if (_local6 == "[") {
var _local2 = 1;
var _local7 = 1;
while (true) {
_local7 = txt.indexOf("]", _local7);
_local2 = txt.indexOf("[", _local2);
if ((_local2 == -1) || (_local2 > _local7)) {
break;
}
_local2++;
_local7++;
}
_local7++;
var _local8 = txt.slice(0, _local7);
_local4.push(importarray(_local8));
txt = txt.slice(_local7);
} else if (_local6 == "{") {
var _local7 = txt.indexOf("}") + 1;
_local4.push(importobject(txt.slice(0, _local7)));
txt = txt.slice(_local7);
} else {
_local4 = txt.split(", ");
var _local3 = 0;
while (_local3 < _local4.length) {
var _local5 = Number(_local4[_local3]);
if (!isNaN(_local5)) {
_local4[_local3] = _local5;
}
_local3++;
}
}
if (txt.charAt(0) == ",") {
txt = txt.slice(2);
continue;
}
return(_local4);
}
}
function importobject(txt) {
var _local5 = new Object();
txt = txt.slice(1, -1);
var _local4 = txt.split(", ");
var _local2 = 0;
while (_local2 < _local4.length) {
var _local1 = _local4.split(":");
var _local3 = ((_local1[1].charAt(0) == "\"") ? (_local1[1].slice(1, -1)) : (Number(_local1[_local2])));
_local5[_local1[0]] = _local3;
_local2++;
}
return(_local5);
}
function copyarr(arr) {
var _local4 = new Array();
var _local1 = 0;
while (_local1 < arr.length) {
var _local2 = arr[_local1];
if (_local2 instanceof Array) {
var _local5 = copyarr(arr[_local1]);
_local4.push(_local5);
} else if (typeof(_local2) == "object") {
var _local5 = copyob(arr[_local1]);
_local4.push(_local5);
} else {
_local4.push(_local2);
}
_local1++;
}
return(_local4);
}
function copyob(ob) {
var _local2 = new Object();
for (var _local3 in ob) {
_local2[_local3] = ob[_local3];
}
return(_local2);
}
function importtiles(txt) {
txt = txt.split(",");
var _local6 = new Array();
var _local5 = 0;
var _local2 = 0;
_local6[_local5] = new Array();
var _local4 = 0;
while (_local4 < txt.length) {
if (txt[_local4] == "br") {
_local5++;
_local6[_local5] = new Array();
_local2 = 0;
} else {
var _local1 = txt[_local4].split("x");
if (_local1.length == 0) {
} else if (_local1.length == 1) {
_local6[_local5][_local2] = Number(_local1[0]);
_local2++;
} else {
_local1[0] = Number(_local1[0]);
_local1[1] = Number(_local1[1]);
if (_local1[0] == 0) {
_local2 = _local2 + _local1[1];
} else {
var _local3 = 0;
while (_local3 < _local1[1]) {
_local6[_local5][_local2] = _local1[0];
_local2++;
_local3++;
}
}
}
}
_local4++;
}
return(_local6);
}
function exporttiles(arr) {
var _local2 = "";
var _local3 = 0;
var _local4 = 0;
var _local6 = 0;
while (_local6 < arr.length) {
if (_local6 != 0) {
if (_local3 != 0) {
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + ((_local4 > 1) ? ((_local3 + "x") + _local4) : (_local3));
}
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + "br";
_local3 = 0;
_local4 = 0;
}
var _local1 = 0;
while (_local1 < arr[_local6].length) {
if (arr[_local6][_local1] == undefined) {
arr[_local6][_local1] = 0;
}
if (arr[_local6][_local1] == _local3) {
_local4++;
} else {
_local2 = _local2 + ((_local2.length == 0) ? "" : ",");
_local2 = _local2 + ((_local4 > 1) ? ((_local3 + "x") + _local4) : (_local3));
_local3 = arr[_local6][_local1];
_local4 = 1;
}
_local1++;
}
_local6++;
}
var _local7 = _local2.split(",");
_local6 = _local7.length - 1;
while (_local6 > 0) {
if (_local7[_local6] != "br") {
_local7.splice(_local6 + 1);
_local2 = _local7.join(",");
break;
}
_local6--;
}
return(_local2);
}
function getcambounds(curx, cury) {
var _local5 = 0;
while (_local5 < world_camblocks.length) {
var _local2 = world_camblocks[_local5];
if ((((_local2.xMin <= curx) && (_local2.xMax >= curx)) && (_local2.yMin <= cury)) && (_local2.yMax >= cury)) {
var _local4 = {x:_local2.xMin, y:_local2.yMin};
_root.fg.localToGlobal(_local4);
var _local3 = {x:_local2.xMax, y:_local2.yMax};
_root.fg.localToGlobal(_local3);
var _local7 = _root.fg._x;
var _local6 = _root.fg._y;
camb.xMin = _local4.x - _local7;
camb.yMin = _local4.y - _local6;
camb.xMax = _local3.x - _local7;
camb.yMax = _local3.y - _local6;
camb.tlx = _local2.xMin;
camb.tly = _local2.yMin;
camb.brx = _local2.xMax;
camb.bry = _local2.yMax;
camb.u = _local2.u;
camb.d = _local2.d;
camb.l = _local2.l;
camb.r = _local2.r;
return(undefined);
}
_local5++;
}
}
function parallax() {
var _local6 = Stage.width - (camb.xMax - camb.xMin);
var _local7 = Stage.height - (camb.yMax - camb.yMin);
var _local4 = Stage.width - _root.bg._width;
var _local5 = Stage.height - _root.bg._height;
var _local3 = _local4 / _local6;
var _local2 = _local5 / _local7;
_root.bg._x = (_root.fg._x + camb.xMin) * _local3;
_root.bg._y = (_root.fg._y + camb.yMin) * _local2;
}
function cam(xto, yto, smooth, warpin) {
var _local9 = {x:xto, y:yto};
_root.fg.localToGlobal(_local9);
if (xto != -999) {
var _local8 = ((Stage.width / 2) - _local9.x) * smooth;
if ((_local8 == 0) && (yto == -999)) {
return(undefined);
}
var _local4 = _root.fg._x + _local8;
if ((((_local4 > _root.fg._x) && (camb.l)) || ((_local4 < _root.fg._x) && (camb.r))) || (warpin)) {
var _local12 = (-camb.xMax) + Stage.width;
var _local10 = -camb.xMin;
_local4 = ((_local4 < _local12) ? (_local12) : (_local4));
_local4 = ((_local4 > _local10) ? (_local10) : (_local4));
_root.fg._x = _local4;
}
}
if (yto != -999) {
var _local7 = ((Stage.height / 2) - _local9.y) * smooth;
if ((_local7 == 0) && (xto == -999)) {
return(undefined);
}
var _local2 = _root.fg._y + _local7;
if ((((_local2 > _root.fg._y) && (camb.u)) || ((_local2 < _root.fg._y) && (camb.d))) || (warpin)) {
var _local13 = (-camb.yMax) + Stage.height;
var _local11 = -camb.yMin;
_local2 = ((_local2 < _local13) ? (_local13) : (_local2));
_local2 = ((_local2 > _local11) ? (_local11) : (_local2));
_root.fg._y = _local2;
}
}
var _local6 = ((_local8 < 0) ? (Stage.width) : undefined);
_local6 = ((_local8 > 0) ? 0 : (_local6));
var _local5 = ((_local7 < 0) ? (Stage.height) : undefined);
_local5 = ((_local7 > 0) ? 0 : (_local5));
if ((_local6 != undefined) || (_local5 != undefined)) {
_local6 = ((_local6 == undefined) ? 0 : (_local6));
_local5 = ((_local5 == undefined) ? 0 : (_local5));
var _local3 = {x:_local6, y:_local5};
_root.fg.globalToLocal(_local3);
_local3.x = gettilex(_local3.x);
_local3.y = gettiley(_local3.y);
if ((((_local3.x < tilearea.xMin) || (_local3.x > tilearea.xMax)) || (_local3.y < tilearea.yMin)) || (_local3.y > tilearea.yMax)) {
createarea();
}
}
campointa = {x:0, y:0};
_root.fg.globalToLocal(campointa);
campointb = {x:Stage.width, y:Stage.height};
_root.fg.globalToLocal(campointb);
}
function createarea() {
var _local24 = {x:0, y:0};
_root.fg.globalToLocal(_local24);
var _local23 = {x:Stage.width, y:Stage.height};
_root.fg.globalToLocal(_local23);
var _local39 = (camb.l ? (_local24.x - tlradius.l) : (_local24.x));
var _local38 = (camb.r ? (_local23.x + tlradius.r) : (_local23.x));
var _local31 = (camb.u ? (_local24.y - tlradius.u) : (_local24.y));
var _local30 = (camb.d ? (_local23.y + tlradius.d) : (_local23.y));
_local39 = ((_local39 < camb.tlx) ? (camb.tlx) : (_local39));
_local38 = ((_local38 > camb.brx) ? (camb.brx) : (_local38));
_local31 = ((_local31 < camb.tly) ? (camb.tly) : (_local31));
_local30 = ((_local30 > camb.bry) ? (camb.bry) : (_local30));
_local39 = gettilex(_local39);
_local38 = gettilex(_local38);
_local31 = gettiley(_local31);
_local30 = gettiley(_local30);
tilearea = {xMin:_local39, xMax:_local38, yMin:_local31, yMax:_local30};
ref_objects = new Array();
ref_tiles = new Array();
layerholding = new Object();
triggers = new Array();
crumbleplays = new Array();
depthholding = {below:0, sorted:0, above:0};
if (design != 1) {
var _local41 = "obj" + (world_objects.length - 1);
var _local32 = _root.fg.sorted[_local41]._currentframe;
var _local33 = _root.fg.sorted[_local41].mc._currentframe;
var _local40 = _root.fg.sorted[_local41].mc.mc._currentframe;
}
_root.fg.gotoAndStop(3);
_root.fg.gotoAndStop(1);
if (design == 1) {
allcambounds();
}
var _local6 = _local39;
while (_local6 <= _local38) {
if (world_tiles[_local6] == undefined) {
world_tiles[_local6] = new Array();
}
var _local5 = _local31;
while (_local5 <= _local30) {
var _local3 = world_tiles[_local6][_local5];
if (_local3 == undefined) {
world_tiles[_local6][_local5] = 0;
_local3 = 0;
}
if (_local3 == 0) {
} else {
if (tiledata[_local3][0].hasfunction != undefined) {
ref_tiles.push({tile:_local3, x:_local6, y:_local5});
}
if (tiledata[_local3][0].zone != undefined) {
triggers.push({zone:tiledata[_local3][0].zone, dir:4, x:_local6 * tilep.w, y:_local5 * tilep.h});
} else if (tiledata[_local3][0].bpm != undefined) {
var _local10 = (((tiledata[_local3][0].bpm == "l") || (tiledata[_local3][0].bpm == "r")) ? 4 : 5);
triggers.push({bpm:tiledata[_local3][0].bpm, dir:_local10, x:_local6 * tilep.w, y:_local5 * tilep.h});
}
if ((design != 1) && (tiledata[_local3][0].unvisible != undefined)) {
} else {
attachtile(_local6, _local5, _local3);
}
}
_local5++;
}
_local6++;
}
var _local12 = new Object();
var _local34 = _local39 * tilep.w;
var _local36 = (_local38 * tilep.w) + tilep.w;
var _local37 = _local31 * tilep.h;
var _local35 = (_local30 * tilep.h) + tilep.h;
_local12.xMin = (camb.l ? (_local34 - obradius.l) : (_local34));
_local12.xMax = (camb.r ? (_local36 + obradius.r) : (_local36));
_local12.yMin = (camb.u ? (_local37 - obradius.u) : (_local37 - Math.floor(obradius.u / 2)));
_local12.yMax = (camb.d ? (_local35 + obradius.d) : (_local35));
var _local4 = 0;
while (_local4 < world_objects.length) {
var _local2 = world_objects[_local4];
if (_local2.killedobject) {
} else {
var _local14 = _local2.x + objectdata[_local2.obj][1].xs;
var _local21 = _local2.x + objectdata[_local2.obj][1].xe;
var _local15 = _local2.y + objectdata[_local2.obj][1].ys;
var _local22 = _local2.y + objectdata[_local2.obj][1].ye;
if ((_local2.none == "player") || ((((_local14 < _local12.xMax) && (_local21 > _local12.xMin)) && (_local15 < _local12.yMax)) && (_local22 > _local12.yMin))) {
if ((_local2.none == "parasnail") && ((((_local14 > _local36) || (_local21 < _local34)) || (_local15 > _local35)) || (_local22 < _local37))) {
} else {
if ((_local2.obj != 20) || (design == 1)) {
ref_objects.push(_local4);
var _local7 = "sorted";
var _local26 = depthholding.sorted;
depthholding.sorted++;
_root.fg[_local7].attachMovie("objects", "obj" + _local4, _local26);
_root.fg[_local7]["obj" + _local4]._x = _local2.x;
_root.fg[_local7]["obj" + _local4]._y = _local2.y;
_root.fg[_local7]["obj" + _local4].gotoAndStop(_local2.obj);
}
if (_local2.obj == 20) {
if (design == 1) {
_root.fg[_local7]["obj" + _local4].mc.gotoAndStop(_local2.dir + 1);
getnotetxt(_local4, 1);
} else {
var _local8 = new Object();
_local8.musicid = _local4;
_local8.dir = _local2.dir;
_local8.x = _local2.x;
_local8.y = _local2.y;
triggers.push(_local8);
}
} else if (design == 1) {
var _local11 = (_local2.ball ? "roll" : 1);
_local11 = (_local2.frame ? (_local2.frame) : (_local11));
_root.fg[_local7]["obj" + _local4].mc.gotoAndStop(_local11);
_root.fg[_local7]["obj" + _local4]._xscale = 100 * _local2.dir;
} else {
if (_local2.none == "player") {
_local2.onscreen = 1;
} else {
var _local27 = _local2.x - 8;
var _local25 = _local2.x + 8;
var _local29 = ((func == "googum") ? (_local2.y - 24) : (_local2.y - 8));
var _local28 = ((func == "spikes") ? (_local2.y + 8) : (_local2.y));
if ((((_local27 > _local23.x) || (_local25 < _local24.x)) || (_local29 > _local23.y)) || (_local28 < _local24.y)) {
_local2.onscreen = 0;
_root.fg.sorted["obj" + _local4]._visible = false;
}
}
if (_local2.graphic == undefined) {
var _local11 = (_local2.ball ? "roll" : 1);
_local11 = (_local2.frame ? (_local2.frame) : (_local11));
_local2.dir = ((_local2.dir == undefined) ? 1 : (_local2.dir));
_root.fg[_local7]["obj" + _local4].mc.gotoAndStop(_local11);
_root.fg[_local7]["obj" + _local4]._xscale = 100 * _local2.dir;
world_objects[_local4].graphic = _local2.dir;
world_objects[_local4].ymove = 0;
world_objects[_local4].jreserve = 0;
world_objects[_local4].xmove = 0;
world_objects[_local4].inair = 0;
_local2.killu = 0;
_local2.killd = 0;
_local2.killl = 0;
_local2.killr = 0;
if (((_local2.none == "crab") || (_local2.none == "armadillo")) || (_local2.none == "turtle")) {
_local2.killd = 1;
_local2.killl = 1;
_local2.killr = 1;
} else if ((_local2.none == "snail") || (_local2.none == "parasnail")) {
_local2.killd = 1;
if (_local2.dir == 1) {
_local2.killr = 1;
} else {
_local2.killl = 1;
}
} else if (((_local2.none == "porcupine") || (_local2.none == "googum")) || ((_local2.none == "banzaiman") && (!_local2.friendly))) {
_local2.killu = 1;
_local2.killd = 1;
_local2.killl = 1;
_local2.killr = 1;
} else if (_local2.none == "spikes") {
var _local9 = (_local2.frame == 1) || (_local2.frame == 5);
if (_local2.timebased) {
_local2.vert = (_local9 ? 0 : 1);
}
_local2.killu = (_local9 ? 0 : 1);
_local2.killd = (_local9 ? 0 : 1);
_local2.killl = (_local9 ? 1 : 0);
_local2.killr = (_local9 ? 1 : 0);
_local2.minitimer = 0;
} else if (_local2.none == "missile") {
if ((_local2.xory == 0) || (_local2.xory == 2)) {
_local2.killl = ((_local2.dir == 1) ? 0 : 2);
_local2.killr = ((_local2.dir == 1) ? 2 : 0);
}
if ((_local2.xory == 1) || (_local2.xory == 2)) {
_local2.killu = ((_local2.ydir == 1) ? 0 : 2);
_local2.killd = ((_local2.ydir == 1) ? 2 : 0);
}
} else if (_local2.none == "pig") {
_local2.killu = 3;
_local2.killd = 3;
_local2.killl = 3;
_local2.killr = 3;
}
} else if (_local2.none == "player") {
_root.fg[_local7]["obj" + _local4].gotoAndStop(_local32);
_root.fg[_local7]["obj" + _local4].mc.gotoAndStop(_local33);
_root.fg[_local7]["obj" + _local4].mc.mc.gotoAndPlay(_local40);
_root.fg[_local7]["obj" + _local4]._xscale = (((_local32 == 2) && (_local33 == 4)) ? (-100 * _local2.graphic) : (100 * _local2.graphic));
} else {
var _local11 = (_local2.ball ? "roll" : 1);
_local11 = (_local2.frame ? _local2.frame : _local11);
_root.fg[_local7]["obj" + _local4].mc.gotoAndStop(_local11);
_root.fg[_local7]["obj" + _local4]._xscale = 100 * _local2.graphic;
}
if ((_local2.path > -1) && (_local2.pathmin == undefined)) {
if (_local2.path < 2) {
_local2.pathdir = 0;
_local2.pathmin = ((_local2.path == 0) ? (_local2.y - parasnailp[_local2.dist].dist) : _local2.y);
_local2.pathmax = ((_local2.path == 0) ? _local2.y : (_local2.y + parasnailp[_local2.dist].dist));
} else {
_local2.pathdir = 1;
_local2.pathmin = ((_local2.path == 2) ? (_local2.x - parasnailp[_local2.dist].dist) : _local2.x);
_local2.pathmax = ((_local2.path == 2) ? _local2.x : (_local2.x + parasnailp[_local2.dist].dist));
}
}
if (_local2.none == "player") {
updatelookers(_local2.graphic);
}
}
}
}
}
_local4++;
}
}
function getydepth(layer) {
var _local3 = Math.floor(((Stage.width + tlradius.r) + tlradius.d) / tilep.w) + 50;
if (layerholding["l" + layer] == undefined) {
var _local2 = 0;
layerholding["l" + layer] = 1;
} else {
var _local2 = layerholding["l" + layer];
layerholding["l" + layer]++;
}
return((_local3 * layer) + _local2);
}
function setydepth(obj, prevlayer) {
var _local2 = gettiley(world_objects[obj].y) - tilearea.yMin;
_root.fg.sorted["obj" + i].swapDepths(getydepth(_local2));
layerholding["l" + prevlayer]--;
}
function setpdepth(obj, clip) {
var _local3 = ((clip == "sorted") ? (clip) : ("ob_" + clip));
_root.fg[_local3]["obj" + i].swapDepths(depthholding[clip]);
}
function getmaindepth(depth, pre) {
if (depth == 1) {
return(pre + "_below");
}
if (depth == 2) {
return("sorted");
}
if (depth == 3) {
return(pre + "_above");
}
return("invisible");
}
function attachtile(ix, iy, one) {
var _local3 = "tl_below";
var _local8 = getydepth(iy - tilearea.yMin);
var _local2 = (("x" + ix) + "y") + iy;
_root.fg[_local3].attachMovie("tiles", _local2, _local8);
_root.fg[_local3][_local2]._x = ix * tilep.w;
_root.fg[_local3][_local2]._y = iy * tilep.h;
if (one > 99) {
var _local7 = one - 100;
if (tiledata[_local7][0].crumble || (tiledata[_local7][0].breaker)) {
world_tiles[ix][iy] = _local7;
_root.fg[_local3][_local2].gotoAndStop(_local7);
_root.fg[_local3][_local2].mc.gotoAndStop(1);
_root.fg.tl_below[_local2].mc.mc.gotoAndStop(timer - crumble_tiles[ix][iy]);
crumbleplays.push(_local2);
return(undefined);
}
} else {
var _local7 = one;
}
_root.fg[_local3][_local2].gotoAndStop(_local7);
_root.fg[_local3][_local2].mc.gotoAndStop(getgroupframe(ix, iy, 1, one));
}
function getgroupframe(x, y, depth, group) {
if ((design != 1) && ((group == 28) || (group == 128))) {
if (group == 28) {
return(2);
}
return(1);
}
var _local4 = ((hastile(x, y - 1) == group) ? 1 : 0);
var _local5 = ((hastile(x, y + 1) == group) ? 1 : 0);
var _local7 = ((hastile(x - 1, y) == group) ? 1 : 0);
var _local6 = ((hastile(x + 1, y) == group) ? 1 : 0);
var _local2 = 1;
while (_local2 < tiledata[group].length) {
var _local1 = tiledata[group][_local2];
if ((((_local1.u == _local4) && (_local1.d == _local5)) && (_local1.l == _local7)) && (_local1.r == _local6)) {
return(_local1.frame);
}
_local2++;
}
return(1);
}
function hastile(x, y, z) {
var _local1 = world_tiles[x][y];
if (_local1 > 0) {
return(_local1);
}
return(0);
}
function killtile(tilename, mainname, px, py) {
if (mainname == "tl_below") {
var _local6 = 1;
} else if (mainname == "sorted") {
var _local6 = 2;
} else if (mainname == "tl_above") {
var _local6 = 3;
}
if (tilename == -1) {
var _local5 = gettilex(px);
var _local4 = gettiley(py);
tilename = (("x" + _local5) + "y") + _local4;
} else {
var _local5 = gettilex(_root.fg[mainname][tilename]._x);
var _local4 = gettiley(_root.fg[mainname][tilename]._y);
}
_root.fg[mainname][tilename].removeMovieClip();
world_tiles[_local5][_local4] = 0;
}
function gettilex(cord) {
return(Math.floor(cord / tilep.w));
}
function gettiley(cord) {
return(Math.floor(cord / tilep.h));
}
function killobj(id) {
var _local4 = world_objects[id];
_local4.killedobject = 1;
_root.fg.sorted["obj" + id].removeMovieClip();
var _local2 = 0;
while (_local2 < ref_objects.length) {
if (ref_objects[_local2] == id) {
ref_objects.splice(_local2, 1);
return(undefined);
}
_local2++;
}
}
function moveobj(id, xpos, xminmax, ypos, yminmax) {
var _local2 = world_objects[id];
var _local6 = _root.fg.sorted["obj" + id].mc._currentframe;
_local6 = ((_local6 == undefined) ? 1 : (_local6));
var _local13 = ((_local2.graphic == 1) ? (objectdata[_local2.obj][_local6].xs) : (-objectdata[_local2.obj][_local6].xe));
var _local12 = ((_local2.graphic == 1) ? (objectdata[_local2.obj][_local6].xe) : (-objectdata[_local2.obj][_local6].xs));
var _local3 = 0;
if (xpos != -1) {
if (xminmax == "min") {
_local3 = xpos - _local13;
} else if (xminmax == "cen") {
_local3 = xpos;
} else if (xminmax == "max") {
_local3 = xpos - _local12;
}
_local2.lastx = _local2.x;
_local2.x = _local3;
_root.fg.sorted["obj" + id]._x = _local3;
}
if (ypos != -1) {
var _local9 = objectdata[_local2.obj][_local6].ys;
var _local17 = objectdata[_local2.obj][_local6].ye;
if (yminmax == "min") {
_local3 = ypos - _local9;
} else if (yminmax == "cen") {
_local3 = ypos;
} else if (yminmax == "max") {
_local3 = ypos - _local17;
}
var _local18 = _local2.y;
_local2.lasty = _local2.y;
_local2.y = _local3;
_root.fg.sorted["obj" + id]._y = _local3;
}
if (((((!_local2.hanging) && (suits[_local2.obj] == "grey")) && (!_local2.crouching)) && (yminmax != "min")) && (ypos != -1)) {
var _local19 = gettiley(_local18 + _local9);
var _local4 = gettiley(_local2.y + _local9);
if (_local19 < _local4) {
var _local8 = ((_local2.graphic == 1) ? (_local2.x + _local12) : ((_local2.x + _local13) - 1));
var _local5 = gettilex(_local8);
if ((_local2.graphic == -1) && ((((_local8 + 1) / tilep.w) - 1) == _local5)) {
var _local20 = 1;
_local8 = _local8 + 1;
_local5 = _local5 + 1;
}
if (_local20 || ((_local8 / tilep.w) == _local5)) {
if (_local2.graphic == 1) {
var _local11 = world_tiles[_local5][_local4];
if (tiledata[_local11][0].block) {
if ((world_tiles[_local5 - 1][_local4 - 1] != _local11) && (world_tiles[_local5][_local4 - 1] != _local11)) {
_local2.hanging = 1;
moveobj(id, -1, 0, _local4 * tilep.h, "min");
}
}
} else {
var _local11 = world_tiles[_local5 - 1][_local4];
if (tiledata[_local11][0].block) {
if ((world_tiles[_local5][_local4 - 1] != _local11) && (world_tiles[_local5 - 1][_local4 - 1] != _local11)) {
_local2.hanging = 1;
moveobj(id, -1, 0, _local4 * tilep.h, "min");
}
}
}
}
}
}
playercam(_local2);
}
function boxintersection(box1, box2) {
if ((((box1.xMin < box2.xMax) && (box1.xMax > box2.xMin)) && (box1.yMin < box2.yMax)) && (box1.yMax > box2.yMin)) {
return(1);
}
return(0);
}
function testgraphichit(box, id) {
_root.fg.localToGlobal(box);
if (_root.fg.sorted["obj" + id].hitTest(box.x, box.y, 1)) {
return(1);
}
return(0);
}
function quicktiletest(ox, oy, obj, action) {
var _local7 = gettilex(ox);
var _local6 = gettiley(oy);
var _local2 = world_tiles[_local7][_local6];
_local2 = ((_local2 == undefined) ? 0 : (_local2));
if (tiledata[_local2][0].block != 1) {
return(0);
}
var _local4 = _root.fg.tl_below[(("x" + _local7) + "y") + _local6].mc._currentframe;
_local4 = ((_local4 == undefined) ? 1 : (_local4));
var _local3 = tiledata[_local2][_local4];
var _local9 = _local7 * tilep.w;
var _local8 = _local6 * tilep.h;
var _local17 = _local3.xs + _local9;
var _local12 = _local3.xe + _local9;
var _local15 = _local3.ys + _local8;
var _local14 = _local3.ye + _local8;
var _local19 = {xMin:_local17, xMax:_local12, yMin:_local15, yMax:_local14};
var _local5 = objectdata[obj][action];
var _local16 = _local5.xs + ox;
var _local10 = _local5.xe + ox;
var _local18 = oy + _local5.ys;
var _local13 = oy + _local5.ye;
var _local22 = {xMin:_local16, xMax:_local10, yMin:_local18, yMax:_local13};
var _local11 = boxintersection(_local19, _local22);
return(_local11);
}
function testtile(tx, ty, obox, dir, tcheck, id) {
var _local6 = world_tiles[tx][ty];
_local6 = ((_local6 == undefined) ? 0 : (_local6));
var _local2 = world_objects[id];
var _local11 = 0;
if (_local6 > 0) {
if (tiledata[_local6][0][tcheck]) {
if (tiledata[_local6][0].cloud && (dir != "d")) {
return(-1);
}
var _local9 = _root.fg.tl_below[(("x" + tx) + "y") + ty].mc._currentframe;
_local9 = ((_local9 == undefined) ? 1 : (_local9));
var _local3 = tiledata[_local6][_local9];
var _local13 = tx * tilep.w;
var _local12 = ty * tilep.h;
var _local18 = _local3.xs + _local13;
var _local14 = _local3.xe + _local13;
var _local17 = _local3.ys + _local12;
var _local16 = _local3.ye + _local12;
var _local8 = {xMin:_local18, xMax:_local14, yMin:_local17, yMax:_local16};
_local11 = boxintersection(_local8, obox);
}
}
if (_local11) {
var _local3 = tiledata[_local6][0];
if (_local3.invisible) {
world_tiles[tx][ty] = 128;
_root.fg.tl_below[(("x" + tx) + "y") + ty].mc.gotoAndStop(1);
}
if (_local2.none == "player") {
if (_local3.kill) {
killoff(id);
} else if (_local3.weakpoint) {
createcandy(tx, ty);
destroyboss();
} else if (_local3.suit || (_local3.end)) {
collected(id, tx, ty);
}
}
if (dir == "u") {
if (_local3.crumble) {
crumbleblock(tx, ty);
} else if ((_local3.belt != undefined) && (_local2.stick)) {
_local2.beltu = ((_local3.belt == "clock") ? -1 : 1);
_local2.beltucheck = ty;
}
if (_local2.none == "missile") {
_local2.ydir = 1;
}
return(_local8.yMax);
}
if (dir == "d") {
if (_local3.warp != undefined) {
if (((((thisworldis == 2) && (thislevelis == 4)) && (_local2.none == "player")) && (tx == 16)) && (ty == 1100)) {
var _local15 = copyob(_local2);
init_lvl4();
world_objects.push(_local15);
_local2 = world_objects[id];
_local2.lastwarp = "u";
warpto(id, 16, 15);
return(4);
}
if (warpblock(id, _local3.warp, tx, ty)) {
return(4);
}
} else if (_local3.crumble) {
crumbleblock(tx, ty);
} else if (_local3.breaker && ((_local2.ymove > 1) || ((_local2.none == "player") && (Math.abs(_local2.xmove) > ppp[_local2.obj].walk)))) {
crumbleblock(tx, ty);
} else if (_local2.none == "missile") {
} else {
if (_local3.spring) {
springblock(id, tx, ty);
return(4);
}
if (_local3.belt != undefined) {
_local2.beltd = ((_local3.belt == "clock") ? 1 : -1);
} else if ((_local2.none == "snail") && ((!world_tiles[tx][ty - 1]) > 0)) {
world_tiles[tx][ty - 1] = 3;
attachtile(tx, ty - 1, world_tiles[tx][ty - 1]);
}
}
if (_local2.none == "missile") {
_local2.ydir = -1;
}
return(_local8.yMin);
}
if (dir == "l") {
if (_local2.none != "player") {
_local2.dir = 1;
if (happeningonscreen(tx, ty)) {
if (_local2.ball || (_local2.none == "missile")) {
playsound("SFX_collide");
} else {
playsound("SFX_touch");
}
}
if (_local3.crumble && (((_local2.none == "crab") || (_local2.ball)) || (_local2.none == "missile"))) {
crumbleblock(tx, ty);
}
} else if (_local3.crumble && (_local2.attacking)) {
crumbleblock(tx, ty);
} else if ((_local3.belt != undefined) && (_local2.stick)) {
_local2.beltl = ((_local3.belt == "clock") ? 1 : -1);
_local2.beltlcheck = tx;
}
return(_local8.xMax);
}
if (dir == "r") {
if (_local2.none != "player") {
_local2.dir = -1;
if (happeningonscreen(tx, ty)) {
if (_local2.ball || (_local2.none == "missile")) {
playsound("SFX_collide");
} else {
playsound("SFX_touch");
}
}
if (_local3.crumble && (((_local2.none == "crab") || (_local2.ball)) || (_local2.none == "missile"))) {
crumbleblock(tx, ty);
}
} else if (_local3.crumble && (_local2.attacking)) {
crumbleblock(tx, ty);
} else if ((_local3.belt != undefined) && (_local2.stick)) {
_local2.beltr = ((_local3.belt == "clock") ? -1 : 1);
_local2.beltrcheck = tx;
}
return(_local8.xMin);
}
return(1);
}
return(-1);
}
function testtilematrix(tmatrix, min, max, dir) {
if (dir == "d") {
var _local1 = 0;
while (_local1 < tilep.h) {
var _local5 = 0;
while (_local5 < tilep.w) {
if (((tmatrix[_local5][_local1] == 1) && (_local5 > min)) && (_local5 < max)) {
return(_local1);
}
_local5++;
}
_local1++;
}
} else if (dir == "u") {
var _local1 = tilep.h - 1;
while (_local1 > -1) {
var _local5 = 0;
while (_local5 < tilep.w) {
if (((tmatrix[_local5][_local1] == 1) && (_local5 > min)) && (_local5 < max)) {
return(_local1);
}
_local5++;
}
_local1--;
}
} else if (dir == "r") {
var _local5 = 0;
while (_local5 < tilep.w) {
var _local1 = 0;
while (_local1 < tilep.h) {
if (((tmatrix[_local5][_local1] == 1) && (_local1 > min)) && (_local1 < max)) {
return(_local5);
}
_local1++;
}
_local5++;
}
} else if (dir == "l") {
var _local5 = tilep.w - 1;
while (_local5 > -1) {
var _local1 = 0;
while (_local1 < tilep.h) {
if (((tmatrix[_local5][_local1] == 1) && (_local1 > min)) && (_local1 < max)) {
return(_local5);
}
_local1++;
}
_local5--;
}
}
return(-1);
}
function checkmatrix(tx, ty, xs, xe, ys, ye) {
var _local8 = world_tiles[tx][ty];
var _local5 = 0;
while (_local5 < _local8.length) {
var _local11 = _local8[_local5].tile;
var _local6 = _local8[_local5].depth;
_local6 = getmaindepth(_local6, "tl");
var _local4 = ((_local6 == "invisible") ? 1 : (_root.fg[_local6][(("x" + tx) + "y") + ty].mc._currentframe));
_local4 = ((_local4 == undefined) ? 1 : (_local4));
var _local7 = matrixdata[_local11][_local4];
if (_local7 == undefined) {
} else {
var _local3 = xs;
while (_local3 < xe) {
var _local2 = ys;
while (_local2 < ye) {
if (_local7[_local3][_local2] == 1) {
return(1);
}
_local2++;
}
_local3++;
}
}
_local5++;
}
return(0);
}
function checktouch(id, obj, action) {
var _local7 = world_objects[id];
var _local10 = objectdata[obj][action];
var _local13 = ((_local7.graphic == 1) ? (_local10.xs + _local7.x) : ((-_local10.xe) + _local7.x));
var _local11 = ((_local7.graphic == 1) ? (_local10.xe + _local7.x) : ((-_local10.xs) + _local7.x));
var _local14 = _local7.y + _local10.ys;
var _local12 = _local7.y + _local10.ye;
var _local9 = gettilex(_local13 - 1);
var _local8 = gettilex(_local11);
var _local4 = gettiley(_local14 - 1);
var _local3 = gettiley(_local12);
var _local5 = {xMin:_local13, xMax:_local11, yMin:_local14, yMax:_local12};
var _local2 = _local9;
while (_local2 <= _local8) {
var _local1 = _local4;
while (_local1 <= _local3) {
if (testtile(_local2, _local1, _local5, 0, "block", id) == 1) {
return(1);
}
_local1++;
}
_local2++;
}
return(0);
}
function crumbletouch(id, obj, action) {
var _local7 = world_objects[id];
var _local10 = objectdata[obj][action];
var _local13 = ((_local7.graphic == 1) ? (_local10.xs + _local7.x) : ((-_local10.xe) + _local7.x));
var _local11 = ((_local7.graphic == 1) ? (_local10.xe + _local7.x) : ((-_local10.xs) + _local7.x));
var _local14 = _local7.y + _local10.ys;
var _local12 = _local7.y + _local10.ye;
var _local9 = gettilex(_local13 - 1);
var _local8 = gettilex(_local11);
var _local4 = gettiley(_local14 - 1);
var _local3 = gettiley(_local12);
var _local5 = {xMin:_local13, xMax:_local11, yMin:_local14, yMax:_local12};
var _local2 = _local9;
while (_local2 <= _local8) {
var _local1 = _local4;
while (_local1 <= _local3) {
if (testtile(_local2, _local1, _local5, 0, "crumble", id) == 1) {
crumbleblock(_local2, _local1);
}
_local1++;
}
_local2++;
}
}
function interactions(id, dubid, subdir) {
var _local2 = world_objects[id];
var _local3 = world_objects[dubid];
var _local4 = 0;
if (_local3.none == "narwhal") {
if (_local2.none == "player") {
var _local11 = _root.fg.sorted["obj" + id].mc._currentframe;
var _local6 = objectdata[_local2.obj][_local11];
var _local10 = ((_local2.graphic == 1) ? (_local6.xs) : (-_local6.xe));
var _local9 = ((_local2.graphic == 1) ? (_local6.xe) : (-_local6.xs));
var _local8 = _local6.ys / 2;
if (((testgraphichit({x:_local2.x, y:_local2.y + _local6.ys}, dubid) || (testgraphichit({x:_local2.x, y:_local2.y}, dubid))) || (testgraphichit({x:_local2.x + _local9, y:_local2.y - _local8}, dubid))) || (testgraphichit({x:_local2.x + _local10, y:_local2.y - _local8}, dubid))) {
_local4 = 1;
}
} else if (_local2.none == "porcupine") {
if (testgraphichit({x:_local2.x, y:_local2.y - 4}, dubid)) {
_root.fg.sorted["obj" + id].mc.gotoAndStop("explode");
playsound("SFX_explosion");
_local2.none = undefined;
_local3.hp--;
if (_local3.hp == 0) {
_root.fg.sorted["obj" + dubid].mc.gotoAndStop(2);
_root.fg.sorted["obj" + dubid].mc.mc.stop();
_local3.engaged = 2;
_local3.death = 1;
createcandy(16, 1100);
}
}
}
} else if (_local3.explode) {
_local4 = 1;
} else if (_local2.death && (_local2.none == "porcupine")) {
booster(_local2, _local3);
if (_local3.none != "player") {
_local4 = 2;
}
} else {
switch (subdir) {
case 1 :
if ((_local3.countdown < 6) && (_local2.none == "player")) {
_local3.xmove = 2;
break;
}
_local4 = testkill(_local2, "r", _local3, "l");
lrdirchange(_local2, -1);
lrdirchange(_local3, 1);
if ((_local3.ball == 2) && (_local2.none == "player")) {
ballkick(dubid);
}
break;
case 3 :
if ((_local3.countdown < 6) && (_local2.none == "player")) {
_local3.xmove = -2;
} else {
_local4 = testkill(_local2, "l", _local3, "r");
lrdirchange(_local2, 1);
lrdirchange(_local3, -1);
if ((_local3.ball == 2) && (_local2.none == "player")) {
ballkick(dubid);
}
break;
_local4 = testkill(_local2, "u", _local3, "d");
uddirchange(_local2, 1);
uddirchange(_local3, -1);
break;
if ((_local2.none == "player") && (_local2.death)) {
_local4 = 2;
_local2.inair = 1;
_local2.ymove = -physicsp.ytop;
_local2.jreserve = 3;
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(1);
} else if ((_local2.none == "player") && (suits[_local2.obj] != "crab")) {
if (_local3.none == "crab") {
_local4 = 2;
_local2.inair = 1;
_local2.ymove = -2;
_local2.jreserve = 5;
if (suits[_local2.obj] == "yellow") {
_local4 = 3;
}
break;
}
if ((dubid != _local2.lastontop) && ((_local3.none == "armadillo") || (_local3.none == "turtle"))) {
if ((suits[_local2.obj] == "brown") || _local2.diving) {
_local4 = 2;
break;
}
changi(dubid);
} else if (_local2.diving && ((_local3.none == "snail") || (_local3.none == "parasnail"))) {
_local4 = 2;
} else {
_local4 = testkill(_local2, "d", _local3, "u");
uddirchange(_local2, -1);
uddirchange(_local3, 1);
if (_local4 != 0) {
break;
}
_local2.ontop = dubid;
_local2.ontopx = _local3.x;
_local2.ontopy = _local3.y;
}
} else {
_local4 = testkill(_local2, "d", _local3, "u");
uddirchange(_local2, -1);
uddirchange(_local3, 1);
if (_local4 != 0) {
break;
}
_local2.ontop = dubid;
_local2.ontopx = _local3.x;
_local2.ontopy = _local3.y;
}
}
case 0 :
_local4 = testkill(_local2, "u", _local3, "d");
uddirchange(_local2, 1);
uddirchange(_local3, -1);
break;
case 2 :
if ((_local2.none == "player") && (_local2.death)) {
_local4 = 2;
_local2.inair = 1;
_local2.ymove = -physicsp.ytop;
_local2.jreserve = 3;
_root.fg.sorted["obj" + id].mc.mc.gotoAndStop(1);
} else if ((_local2.none == "player") && (suits[_local2.obj] != "crab")) {
if (_local3.none == "crab") {
_local4 = 2;
_local2.inair = 1;
_local2.ymove = -2;
_local2.jreserve = 5;
if (suits[_local2.obj] == "yellow") {
_local4 = 3;
}
break;
}
if ((dubid != _local2.lastontop) && ((_local3.none == "armadillo") || (_local3.none == "turtle"))) {
if ((suits[_local2.obj] == "brown") || (_local2.diving)) {
_local4 = 2;
break;
}
changi(dubid);
} else if (_local2.diving && ((_local3.none == "snail") || (_local3.none == "parasnail"))) {
_local4 = 2;
} else {
_local4 = testkill(_local2, "d", _local3, "u");
uddirchange(_local2, -1);
uddirchange(_local3, 1);
if (_local4 != 0) {
break;
}
_local2.ontop = dubid;
_local2.ontopx = _local3.x;
_local2.ontopy = _local3.y;
}
} else {
_local4 = testkill(_local2, "d", _local3, "u");
uddirchange(_local2, -1);
uddirchange(_local3, 1);
if (_local4 != 0) {
break;
}
_local2.ontop = dubid;
_local2.ontopx = _local3.x;
_local2.ontopy = _local3.y;
}
}
}
if (_local4 == 1) {
killoff(id);
return(1);
}
if (_local4 == 2) {
killoff(dubid);
} else if (_local4 == 3) {
killoff(id);
killoff(dubid);
return(1);
}
}
function physics(id) {
var _local2 = world_objects[id];
if ((((_local2.drop == 0) && (!_local2.inair)) && (_local2.ontop <= -1)) && (_local2.xmove != 0)) {
var _local14 = gettilex(_local2.x);
var _local13 = gettiley(_local2.y + 1);
var _local8 = world_tiles[_local14][_local13];
_local8 = ((_local8 == undefined) ? 0 : (_local8));
if (tiledata[_local8][0].block != 1) {
_local2.dir = _local2.dir * -1;
_local2.xmove = _local2.xmove * -1;
}
}
if (((!_local2.inair) && (_local2.none != "missile")) && (_local2.none != "parasnail")) {
_local2.ymove = ((_local2.ymove == 0) ? 1 : (_local2.ymove));
_local2.inair = 1;
}
var _local10 = _root.fg.sorted["obj" + id].mc._currentframe;
var _local5 = objectdata[_local2.obj][_local10];
if (gamep.zonein == "ceiling") {
if (_local2.fallback) {
if ((_local2.y + _local5.ys) >= campointb.y) {
moveobj(id, -1, -1, campointa.y + _local5.ye, "max");
_local2.fallback = 0;
} else if ((_local2.y + _local5.ye) < campointb.y) {
_local2.fallback = 0;
}
} else if ((_local2.y + _local5.ye) <= campointa.y) {
moveobj(id, -1, -1, campointb.y - _local5.ys, "max");
_local2.fallback = 1;
}
}
var _local9 = _local2.x;
var _local7 = _local2.y;
_local2.lastontop = -1;
if (_local2.ontop > -1) {
var _local6 = world_objects[_local2.ontop];
if ((((_local2.inside || (_local2.hanging)) || (_local2.sticking)) || (_local2.death)) || (_local6.dir == "warp")) {
} else if ((_local2.none == _local6.none) && (_local2.dir != _local6.dir)) {
} else {
var _local3 = collisions(id, _local5, _local6.x - _local2.ontopx, _local6.y - _local2.ontopy, 1);
if (((_local2.none == "player") || (_local2.drop)) || (_local6.none == "spikes")) {
} else {
_local2.xmove = 0;
}
}
_local2.lastontop = _local2.ontop;
_local2.ontop = -1;
}
var _local11 = (((!_local2.death) && ((_local2.inside || (_local2.hanging)) || (_local2.sticking))) ? 0 : (_local2.xmove));
var _local12 = ((((!_local2.death) && (_local2.hanging)) || (_local2.sticking)) ? 0 : (_local2.ymove));
_local11 = _local11 + xbelts(_local2);
_local12 = _local12 + ybelts(_local2);
var _local3 = collisions(id, _local5, _local11, _local12, 0);
if (_local3 == -1) {
return(0);
}
if (_local3.yobj != -1) {
var _local15 = ((_local3.ydir == -1) ? 0 : 2);
if (interactions(id, _local3.yobj, _local15)) {
return(undefined);
}
}
if (_local3.xobj != -1) {
var _local15 = ((_local3.xdir == -1) ? 3 : 1);
if (interactions(id, _local3.xobj, _local15)) {
return(undefined);
}
}
if ((_local2.none == "player") && (!_local2.death)) {
if ((_local2.stick && (_local3.xobj == -1)) && (_local3.yobj == -1)) {
if (_local3.stopx) {
_local2.sticking = ((_local3.xdir == -1) ? 1 : 2);
} else if (_local3.stopy && (_local3.ydir == -1)) {
_local2.sticking = 3;
}
}
if (suits[_local2.obj] == "white") {
if (_local3.stopx) {
_local2.jumps = 1;
} else {
_local2.jumps = 0;
}
}
if ((_local2.x != _local9) || (_local2.y != _local7)) {
checktriggers(_local9, _local2.x, _local7, _local2.y);
}
if (_local2.inside && (_local2.y != _local7)) {
_local2.inside = checktouch(id, _local2.obj, _local10);
}
}
if ((_local2.warpx != -1) && ((_local2.y != _local7) || (!_local2.warptouch))) {
_local2.warpx = -1;
_local2.warpy = -1;
}
actualphysics(id);
}
function collisions(id, obdata, xdist, ydist, skipobs) {
var _local9 = world_objects[id];
var _local37 = ((_local9.graphic == 1) ? (obdata.xs) : (-obdata.xe));
var _local36 = ((_local9.graphic == 1) ? (obdata.xe) : (-obdata.xs));
var _local8 = {xMin:_local9.x + _local37, xMax:_local9.x + _local36, yMin:_local9.y + obdata.ys, yMax:_local9.y + obdata.ye};
var _local3 = {xobj:-1, yobj:-1, xdir:0, ydir:0, stopx:0, stopy:0};
_local3.xdir = ((xdist > 0) ? 1 : -1);
_local3.ydir = ((ydist > 0) ? 1 : -1);
_local3.x = ((_local3.xdir == -1) ? (_local8.xMin + xdist) : (_local8.xMax + xdist));
_local3.y = ((_local3.ydir == -1) ? (_local8.yMin + ydist) : (_local8.yMax + ydist));
if ((!_local9.death) || (_local9.none == "player")) {
var _local2 = [{txt:"u", axis:"y", bin:-1}, {txt:"d", axis:"y", bin:1}, {txt:"l", axis:"x", bin:-1}, {txt:"r", axis:"x", bin:1}];
var _local24 = 0;
while (_local24 < 4) {
if ((_local2[_local24].txt != "d") && (_local9.inside || (_local9.death))) {
} else if (_local2[_local24].bin != _local3[_local2[_local24].axis + "dir"]) {
} else if (((_local2[_local24].axis == "y") && (ydist == 0)) || ((_local2[_local24].axis == "x") && (xdist == 0))) {
} else {
if (_local2[_local24].axis == "y") {
var _local22 = Math.floor((_local8.xMin - 1) / tilep.w);
var _local25 = Math.ceil(_local8.xMax / tilep.w);
} else {
var _local22 = Math.floor((_local8.yMin - 1) / tilep.h);
var _local25 = Math.ceil(_local8.yMax / tilep.h);
}
var _local5 = copyob(_local8);
if (_local2[_local24].txt == "u") {
_local5.yMax = _local5.yMin;
_local5.yMin = _local5.yMin + ydist;
var _local23 = Math.floor((_local5.yMin - 1) / tilep.h);
var _local26 = Math.ceil(_local8.yMin / tilep.h);
} else if (_local2[_local24].txt == "d") {
_local9.warptouch = 0;
_local5.yMin = _local5.yMax;
_local5.yMax = _local5.yMax + ydist;
var _local23 = Math.ceil(_local5.yMax / tilep.h);
var _local26 = Math.floor(_local8.yMax / tilep.h);
} else if (_local2[_local24].txt == "l") {
_local5.xMax = _local5.xMin;
_local5.xMin = _local5.xMin + xdist;
var _local23 = Math.floor((_local5.xMin - 1) / tilep.w);
var _local26 = Math.ceil(_local8.xMin / tilep.w);
} else if (_local2[_local24].txt == "r") {
_local5.xMin = _local5.xMax;
_local5.xMax = _local5.xMax + xdist;
var _local23 = Math.ceil(_local5.xMax / tilep.w);
var _local26 = Math.floor(_local8.xMax / tilep.w);
}
var _local23 = _local23 + _local2[_local24].bin;
var _local17 = (_local9.death ? "suit" : "block");
var _local12 = _local26;
while (_local12 != _local23) {
var _local6 = -1;
var _local10 = _local22;
while (_local10 <= _local25) {
if (_local2[_local24].axis == "y") {
var _local7 = testtile(_local10, _local12, _local5, _local2[_local24].txt, _local17, id);
} else {
var _local7 = testtile(_local12, _local10, _local5, _local2[_local24].txt, _local17, id);
}
if (_local7 == 4) {
return(-1);
}
if ((_local7 != -1) && (((_local6 == -1) || ((_local2[_local24].bin == -1) && (_local7 > _local6))) || ((_local2[_local24].bin == 1) && (_local7 < _local6)))) {
_local6 = _local7;
}
_local10++;
}
if ((_local6 != -1) && (((_local2[_local24].bin == -1) && (_local6 > _local3[_local2[_local24].axis])) || ((_local2[_local24].bin == 1) && (_local6 < _local3[_local2[_local24].axis])))) {
_local3[_local2[_local24].axis] = _local6;
_local3["stop" + _local2[_local24].axis] = 1;
break;
}
_local12 = _local12 + _local2[_local24].bin;
}
}
_local24++;
}
}
if ((!skipobs) && (((!_local9.death) || (_local9.none == "porcupine")) || ((_local9.none == "player") && (_local3.ydir == 1)))) {
var _local24 = 0;
for ( ; _local24 < ref_objects.length ; _local24++) {
var _local13 = ref_objects[_local24];
if (_local13 == id) {
} else {
var _local4 = world_objects[_local13];
if (_local4.ontop == id) {
} else if (((_local4.none == "spikes") && ((_local9.ontop > -1) || (_local9.lastontop > -1))) && (_local9.lastontop != _local13)) {
} else if (_local4.death && (!_local4.explode)) {
} else if (_local9.death && (((_local4.none == "spikes") || (_local4.none == "missile")) || (_local4.none == "pig"))) {
} else if (_local4.none == "narwhal") {
if (!_local4.engaged) {
continue;
}
if ((_local9.none == "player") || (_local9.death && (_local9.none == "porcupine"))) {
} else {
continue;
}
} else {
var _local29 = _root.fg.sorted["obj" + _local13].mc._currentframe;
var _local18 = objectdata[_local4.obj][_local29];
var _local28 = ((_local4.graphic == 1) ? _local18.xs : (-_local18.xe));
var _local27 = ((_local4.graphic == 1) ? _local18.xe : (-_local18.xs));
var _local11 = {xMin:_local4.x + _local28, xMax:_local4.x + _local27, yMin:_local4.y + _local18.ys, yMax:_local4.y + _local18.ye};
if ((((Math.floor(_local11.xMin) > Math.floor(_local8.xMax + xdist)) || (Math.floor(_local11.xMax) < Math.floor(_local8.xMin + xdist))) || (Math.floor(_local11.yMin) > Math.floor(_local8.yMax + ydist))) || (Math.floor(_local11.yMax) < Math.floor(_local8.yMin + ydist))) {
} else {
if (_local4.explode || (_local4.none == "narwhal")) {
_local3.xobj = _local13;
break;
}
if (_local9.death && (_local9.none == "porcupine")) {
if ((_local4.none != "player") || ((_local4.ymove < 1) && (_local8.yMin < _local11.yMin))) {
_local3.yobj = _local13;
}
break;
}
if (((_local4.none == "googum") && (_local9.none == "player")) && (xdist != 0)) {
_local3.xobj = _local13;
return(_local3);
}
var _local16 = -999;
var _local15 = -999;
var _local20 = 0;
if (_local11.yMin >= _local8.yMax) {
_local20++;
} else if ((_local3.xdir == 1) && (Math.floor(_local11.xMin) >= Math.floor(_local8.xMax))) {
_local16 = _local11.xMin - 1;
} else if ((_local3.xdir == -1) && (Math.floor(_local11.xMax) <= Math.floor(_local8.xMin))) {
_local16 = _local11.xMax + 1;
} else {
_local20++;
}
if ((_local3.ydir == 1) && (Math.floor(_local11.yMin) >= Math.floor(_local8.yMax))) {
_local15 = _local11.yMin;
} else if ((_local3.ydir == -1) && (Math.floor(_local11.yMax) <= Math.floor(_local8.yMin))) {
_local15 = _local11.yMax;
} else {
_local20++;
}
if (((_local20 == 2) && (_local9.none != "player")) && (_local4.none != "player")) {
_local3.y = _local11.yMin;
_local3.yobj = _local13;
_local3.stopy = 1;
break;
}
if ((_local16 != -999) && (((_local3.xdir == 1) && (_local16 <= _local3.x)) || ((_local3.xdir == -1) && (_local16 >= _local3.x)))) {
_local3.x = _local16;
_local3.xobj = _local13;
_local3.stopx = 1;
}
if ((_local15 != -999) && (((_local3.ydir == 1) && (_local15 <= _local3.y)) || ((_local3.ydir == -1) && (_local15 >= _local3.y)))) {
_local3.y = _local15;
_local3.yobj = _local13;
_local3.stopy = 1;
}
}
}
}
}
}
if (_local9.none == "player") {
if ((_local3.xdir == -1) && (_local3.x < campointa.x)) {
_local3.x = campointa.x;
_local3.stopx = 1;
} else if ((_local3.xdir == 1) && (_local3.x > campointb.x)) {
_local3.x = campointb.x;
_local3.stopx = 1;
}
}
var _local38 = ((_local3.x == _local9.x) ? -1 : (_local3.x));
var _local35 = ((_local3.y == _local9.y) ? -1 : (_local3.y));
var _local39 = ((_local3.xdir == 1) ? "max" : "min");
var _local40 = ((_local3.ydir == 1) ? "max" : "min");
if (_local3.stopx) {
_local9.xmove = 0;
}
if (_local3.stopy) {
if (_local3.ydir == 1) {
_local9.inair = 0;
_local9.laston = 1;
}
_local9.ymove = 0;
_local9.jreserve = 0;
} else if ((_local35 == (_local9.y + 1)) && (_local9.laston)) {
_local9.laston = 0;
_local9.inair = 0;
_local35 = -1;
} else {
_local9.laston = 0;
}
moveobj(id, _local38, _local39, _local35, _local40);
return(_local3);
}
function actualphysics(id) {
var _local1 = world_objects[id];
if ((_local1.none == "missile") || (_local1.none == "parasnail")) {
return(undefined);
}
if (_local1.inair) {
if ((!_local1.hanging) && (_local1.none == "player")) {
_local1.landed = 1;
}
if ((_local1.ymove >= 0) && (suits[_local1.obj] == "black")) {
var _local6 = (_local1.crouching ? 0.2 : 0.05);
} else {
var _local6 = physicsp.gravity;
}
if (_local1.jreserve > 0) {
_local1.jreserve = _local1.jreserve - _local6;
} else {
if (_local1.death) {
var _local7 = ((_local1.none == "porcupine") ? 1 : 3);
} else if (_local1.none == "porcupine") {
var _local7 = 3;
} else if (_local1.crouching && (suits[_local1.obj] == "brown")) {
var _local7 = 3.5;
} else {
var _local7 = 4;
}
_local1.ymove = (((_local1.ymove + _local6) > _local7) ? (_local7) : (_local1.ymove + _local6));
}
if (_local1.jreserve < 0) {
_local1.ymove = _local1.ymove - _local1.jreserve;
_local1.jreserve = 0;
}
if (((_local1.dir == 1) && (_local1.xmove > -2)) || ((_local1.dir == -1) && (_local1.xmove < 2))) {
if (suits[_local1.obj] == "brown") {
var _local4 = 0.05;
} else {
var _local4 = 0.2;
}
} else if (suits[_local1.obj] == "brown") {
var _local4 = Math.abs(_local1.xmove * 0.05);
} else {
var _local4 = Math.abs(_local1.xmove * 0.5);
}
var _local3 = ((gamep.zonein == "jumpdash") ? (_local1.topx * 2) : (_local1.topx));
if (_local1.dir == 1) {
_local1.xmove = (((_local1.xmove + _local4) < _local3) ? (_local1.xmove + _local4) : (_local3));
} else if (_local1.dir == -1) {
_local1.xmove = (((_local1.xmove - _local4) > (-_local3)) ? (_local1.xmove - _local4) : (-_local3));
}
} else {
if (suits[_local1.obj] == "white") {
var _local2 = 0.15;
} else if (((suits[_local1.obj] == "brown") && (_local1.dir == _local1.graphic)) && (!_local1.crouching)) {
var _local2 = 0.05;
} else if (_local1.stick) {
var _local2 = 100;
} else {
var _local8 = gettiley(_local1.y - 1);
var _local9 = gettilex(_local1.x);
var _local5 = world_tiles[_local9][_local8];
_local5 = ((_local5 == undefined) ? 0 : (_local5));
var _local2 = (tiledata[_local5][0].slime ? (physicsp.slime) : (physicsp.block));
}
var _local2 = _local2 - (_local1.crouching ? 0.1 : 0);
if ((_local1.dir == 1) && (!_local1.crouching)) {
_local1.xmove = (((_local1.xmove + _local2) < _local1.topx) ? (_local1.xmove + _local2) : (_local1.topx));
} else if ((_local1.dir == -1) && (!_local1.crouching)) {
_local1.xmove = (((_local1.xmove - _local2) > (-_local1.topx)) ? (_local1.xmove - _local2) : (-_local1.topx));
} else if (_local1.xmove != 0) {
if (_local1.xmove > 0) {
_local1.xmove = (((_local1.xmove - _local2) > 0) ? (_local1.xmove - _local2) : 0);
} else {
_local1.xmove = (((_local1.xmove + _local2) < 0) ? (_local1.xmove + _local2) : 0);
}
}
}
}
function xbelts(sub) {
var _local3 = 0;
if ((sub.beltd != 0) && (sub.beltd != undefined)) {
_local3 = _local3 + (physicsp.belt * sub.beltd);
sub.beltd = 0;
}
if ((sub.beltu != 0) && (sub.beltu != undefined)) {
var _local2 = world_tiles[gettiley(sub.x)][sub.beltucheck];
_local2 = ((_local2 == undefined) ? 0 : (_local2));
if ((tiledata[_local2][0].belt == undefined) || (sub.sticking != 3)) {
sub.beltu = 0;
} else {
_local3 = _local3 + (physicsp.belt * sub.beltu);
}
}
return(_local3);
}
function ybelts(sub) {
var _local3 = 0;
if ((sub.beltl != 0) && (sub.beltl != undefined)) {
var _local2 = world_tiles[sub.beltlcheck][gettiley(sub.y)];
_local2 = ((_local2 == undefined) ? 0 : (_local2));
if ((tiledata[_local2][0].belt == undefined) || (sub.sticking != 1)) {
sub.beltl = 0;
} else {
_local3 = _local3 + (physicsp.belt * sub.beltl);
}
}
if ((sub.beltr != 0) && (sub.beltr != undefined)) {
var _local2 = world_tiles[sub.beltrcheck][gettiley(sub.y)];
_local2 = ((_local2 == undefined) ? 0 : (_local2));
if ((tiledata[_local2][0].belt == undefined) || (sub.sticking != 2)) {
sub.beltr = 0;
} else {
_local3 = _local3 + (physicsp.belt * sub.beltr);
}
}
return(_local3);
}
function pausegame() {
gamep.state = "paused";
_root.overlay.gotoAndStop("pause");
with (_root.overlay.fillbox) {
_x = 0;
_y = 0;
_width = Stage.width;
_height = Stage.height;
}
placecontrols();
knobs();
Key.addListener(keylisten);
}
function unpausegame() {
gamep.state = "playing";
unplacecontrols();
_root.overlay.gotoAndStop("game");
Key.removeListener(keylisten);
}
function volumechange(rep) {
pausep.voly = _root._ymouse;
pausep.volc = rep;
}
function volumechanging() {
var _local3 = _root._ymouse;
if (_local3 != pausep.voly) {
var _local2 = _root.overlay[pausep.volc].knob._rotation;
_local2 = _local2 + (pausep.voly - _local3);
_local2 = ((_local2 > 0) ? 0 : (_local2));
_local2 = ((_local2 < -180) ? -180 : (_local2));
_root.overlay[pausep.volc].knob._rotation = _local2;
pausep.voly = _local3;
var _local4 = ((_local2 + 180) / 180) * 100;
if (pausep.volc == "music") {
bgmusic.setVolume(_local4);
} else if (pausep.volc == "sound") {
soundeffects.setVolume(_local4);
}
}
}
function knobs() {
_root.overlay.sound.knob._rotation = ((soundeffects.getVolume() / 100) * 180) - 180;
_root.overlay.music.knob._rotation = ((bgmusic.getVolume() / 100) * 180) - 180;
}
function changetext(id, kc) {
if (((kc >= 48) && (kc <= 57)) || ((kc >= 65) && (kc <= 90))) {
inputs[id].kcode = kc;
inputs[id].kname = String.fromCharCode(kc).toUpperCase();
} else if (keylist["c" + kc] != undefined) {
inputs[id].kname = keylist["c" + kc];
inputs[id].kcode = kc;
} else {
return(1);
}
}
function controls() {
var _local2 = 0;
while (_local2 < inputs.length) {
var _local1 = inputs[_local2];
if ((gamep.state == "paused") && (_local1.tag != "space")) {
} else {
if (Key.isDown(_local1.kcode)) {
if (_local1.kstate == 0) {
if (_local1.dblclick && ((_local1.ktime + controlp.dbltime) > timer)) {
_local1.kstate = 3;
_local1.ktime = 0;
} else {
_local1.kstate = 1;
_local1.ktime = timer;
}
} else {
_local1.kstate = 2;
}
}
if (!Key.isDown(_local1.kcode)) {
_local1.kstate = 0;
}
clicks[_local1.tag] = _local1.kstate;
if ((_local1.tag != "space") && (_local1.kstate != 2)) {
addtolog(_local2, _local1.kstate);
}
}
_local2++;
}
}
function addtolog(i, statein) {
if ((!design) && (!gamep.replay)) {
var _local1 = playerlog[i][playerlog[i].length - 1];
if (_local1[1] != statein) {
playerlog[i].push([timer, statein]);
}
}
}
function replaycontrols() {
var _local1 = 0;
while (_local1 < 5) {
if (loadedlog[_local1][0][0] == timer) {
clicks[inputs[_local1].tag] = loadedlog[_local1][0][1];
loadedlog[_local1].shift();
} else if (clicks[inputs[_local1].tag] == 1) {
clicks[inputs[_local1].tag] = 2;
}
_local1++;
}
}
function resetinputs() {
inputs = copyarr(defaultinputs);
outkeys();
saves.data.controls = copyarr(inputs);
}
function changekey(ki) {
pausep.ctrlon = Number(ki.charAt(1));
_root.overlay[ki].keyname.text = "";
}
function newkey() {
var _local3 = Key.getCode();
var _local2 = inputs[pausep.ctrlon].kcode;
if (changetext(pausep.ctrlon, _local3)) {
pausep.ctrlon = -1;
outkeys();
return(undefined);
}
var _local1 = 0;
while (_local1 < (inputs.length - designercontrols)) {
if ((_local1 != pausep.ctrlon) && (inputs[_local1].kcode == inputs[pausep.ctrlon].kcode)) {
changetext(_local1, _local2);
}
_local1++;
}
inputs[pausep.ctrlon].kstate = 2;
pausep.ctrlon = -1;
outkeys();
saves.data.controls = copyarr(inputs);
}
function outkeys() {
if (inputs[0].kname == undefined) {
var _local2 = 0;
while (_local2 < (inputs.length - designercontrols)) {
changetext(_local2, inputs[_local2].kcode);
_local2++;
}
}
var _local2 = 0;
while (_local2 < (inputs.length - designercontrols)) {
_root.overlay["k" + _local2].keyname.text = inputs[_local2].kname;
_local2++;
}
}
function playsound(filename) {
if (_root[filename] == undefined) {
_root.attachMovie("empty", "soundx" + filename, _root.getNextHighestDepth());
_root[filename] = new Sound(_root["soundx" + filename]);
_root[filename].attachSound(filename + ".wav");
}
_root[filename].start();
}
function playpiece() {
if (songp.timer < songp.timing) {
songp.timer++;
return(undefined);
}
songp.timer = 0;
rockout(1);
rockout(0);
rockout(2);
}
function rockout(part) {
var _local3 = instruments[part];
if (songp[_local3 + "piece"] == -1) {
if (_root["waiting" + _local3].length == 0) {
return(undefined);
}
if ((part == 1) && ((songp.leadhit != 0) || (songp.drumshit != 0))) {
return(undefined);
}
if ((part == 0) && (((songp.basshit != 1) && (songp.basspiece != -1)) || (songp.drumshit != 0))) {
return(undefined);
}
if ((part == 2) && (((songp.leadhit != 1) && (songp.leadpiece != -1)) || ((songp.basshit != 1) && (songp.basspiece != -1)))) {
return(undefined);
}
var _local8 = _root["waiting" + _local3].shift();
songp[_local3 + "piece"] = _local8.p;
songp[_local3 + "loop"] = _local8.l;
}
if (songp[_local3 + "skip"]) {
songp[_local3 + "skip"] = 0;
return(undefined);
}
songp[_local3 + "skip"] = 1;
var _local4 = songp[_local3 + "hit"];
var _local5 = _root[(("world_" + _local3) + "_") + songp[_local3 + "piece"]];
if (_local5[_local4] == undefined) {
} else if (_local5[_local4] == "x") {
songp[_local3 + "skip"] = 0;
} else {
var _local2 = 0;
while (_local2 < _local5[_local4].length) {
if (_local5[_local4][_local2] == "x") {
songp[_local3 + "skip"] = 0;
} else {
var _local6 = getaudiofilename(part, _local5[_local4][_local2].o, _local5[_local4][_local2].n);
_root[(("channel_" + _local3) + "_") + _local2].stop();
_root[(("channel_" + _local3) + "_") + _local2].attachSound(_local6);
_root[(("channel_" + _local3) + "_") + _local2].start();
}
_local2++;
}
}
songp[_local3 + "hit"] = ((_local4 == (_local5.length - 1)) ? 0 : (_local4 + 1));
if (songp[_local3 + "hit"] == 0) {
if (_root["waiting" + _local3].length > 0) {
var _local8 = _root["waiting" + _local3].shift();
songp[_local3 + "piece"] = _local8.p;
songp[_local3 + "loop"] = _local8.l;
} else if (songp[_local3 + "loop"] == 0) {
songp[_local3 + "piece"] = -1;
songp[_local3 + "skip"] = 0;
}
}
}
function triggered(id, cx, cy) {
var _local2 = triggers[id];
if (_local2.musicid != undefined) {
var _local3 = world_objects[_local2.musicid];
var _local5 = instruments[_local3.inst];
_root["waiting" + _local5].push(_local3);
_local3.killedobject = 1;
triggers[id] = -1;
} else if (_local2.bpm != undefined) {
switch (_local2.bpm) {
case "u" :
songp.timing = songp.timing + ((cy < _local2.y) ? -1 : 1);
break;
case "d" :
songp.timing = songp.timing + ((cy > _local2.y) ? -1 : 1);
break;
case "l" :
songp.timing = songp.timing + ((cx < _local2.x) ? -1 : 1);
break;
case "r" :
songp.timing = songp.timing + ((cx > _local2.x) ? -1 : 1);
}
songp.timing = ((songp.timing < 2) ? 2 : (songp.timing));
triggers[id] = -1;
} else {
if (gamep.zonein == "spiral") {
_root.overlay.skull.removeMovieClip();
}
gamep.zonein = ((gamep.zonein == _local2.zone) ? "none" : (_local2.zone));
_root.bg.gotoAndStop(gamep.zonein);
if (gamep.zonein == "spiral") {
createdeathspiral();
}
}
}
function createdeathspiral() {
_root.overlay.attachMovie("objects", "skull", depth);
_root.overlay.skull.gotoAndStop(21);
_root.overlay.skull._xscale = tilep.zoom;
_root.overlay.skull._yscale = tilep.zoom;
_root.overlay.skull._x = 23;
_root.overlay.skull._y = 377;
spiralp = {wh:28, speed:0, maxspd:1, halt:20, halted:-1, spirals:7, dir:0, ymin:23, xmax:777, ymax:377, xmin:47};
}
function deathspiral() {
if ((spiralp.halted != -1) && (timer > spiralp.halted)) {
spiralp.halted = -1;
}
if (spiralp.halted == -1) {
var _local2 = 0;
spiralp.speed = spiralp.speed + (((spiralp.speed + 0.1) > spiralp.maxspd) ? (spiralp.maxspd) : (spiralp.speed + 0.1));
if (spiralp.dir == 0) {
if ((_root.overlay.skull._y - spiralp.speed) < spiralp.ymin) {
_root.overlay.skull._y = spiralp.ymin;
_local2 = 1;
spiralp.ymin = spiralp.ymin + spiralp.wh;
} else {
_root.overlay.skull._y = _root.overlay.skull._y - spiralp.speed;
}
} else if (spiralp.dir == 1) {
if ((_root.overlay.skull._x + spiralp.speed) > spiralp.xmax) {
_root.overlay.skull._x = spiralp.xmax;
_local2 = 1;
spiralp.xmax = spiralp.xmax - spiralp.wh;
} else {
_root.overlay.skull._x = _root.overlay.skull._x + spiralp.speed;
}
} else if (spiralp.dir == 2) {
if ((_root.overlay.skull._y + spiralp.speed) > spiralp.ymax) {
_root.overlay.skull._y = spiralp.ymax;
_local2 = 1;
spiralp.ymax = spiralp.ymax - spiralp.wh;
} else {
_root.overlay.skull._y = _root.overlay.skull._y + spiralp.speed;
}
} else if (spiralp.dir == 3) {
if ((_root.overlay.skull._x - spiralp.speed) < spiralp.xmin) {
_root.overlay.skull._x = spiralp.xmin;
_local2 = 1;
spiralp.xmin = spiralp.xmin + spiralp.wh;
} else {
_root.overlay.skull._x = _root.overlay.skull._x - spiralp.speed;
}
}
if (_local2) {
playsound("SFX_skullturn");
spiralp.speed = 0;
spiralp.halted = timer + spiralp.halt;
spiralp.dir = (((spiralp.dir + 1) > 3) ? 0 : (spiralp.dir + 1));
if (spiralp.dir == 0) {
spiralp.spirals--;
if (spiralp.spirals == 0) {
_root.overlay.skull._x = 23;
_root.overlay.skull._y = 377;
spiralp.spirals = 7;
spiralp.ymin = 23;
spiralp.xmax = 777;
spiralp.ymax = 377;
spiralp.xmin = 47;
}
}
}
}
}
function getaudiofilename(instrument, octave, note) {
if (instrument == 2) {
var _local2 = 0;
if (note == "r") {
if (!lastdrump.rand) {
lastdrump.sample = random(drumsamples.length);
}
_local2 = lastdrump.sample;
lastdrump.rand = 1;
} else {
lastdrump.rand = 0;
switch (note) {
case "k" :
_local2 = 0;
break;
case "s" :
_local2 = 1;
break;
case "sr" :
_local2 = 2;
break;
case "h1" :
_local2 = 3;
break;
case "h2" :
_local2 = 4;
break;
case "t1" :
_local2 = 5;
break;
case "t2" :
_local2 = 6;
break;
case "c1" :
_local2 = 7;
break;
case "c2" :
_local2 = 8;
break;
case "cym1" :
_local2 = 9;
break;
case "cym2" :
_local2 = 10;
break;
case "snare" :
_local2 = 11;
break;
case "clap" :
_local2 = 12;
break;
case "cowbell" :
_local2 = 13;
}
}
_local2 = ((_local2 > 10) ? (("sample_" + drumsamples[_local2]) + ".wav") : (("chip_" + drumsamples[_local2]) + ".wav"));
} else {
var _local3 = ["Sq_", "Tr_"];
var _local2 = _local3[instrument];
_local3 = ["2", "3", "4", "5", "6"];
var _local4 = ((instrument == 0) ? (octave + 1) : (octave));
_local4 = _local4 + (((((note == "C") || (note == "Cs")) || (note == "D")) || (note == "Ds")) ? 1 : 0);
_local2 = _local2 + _local3[_local4];
note = ((((note == "A") || (note == "As")) || (note == "B")) ? ("x" + note) : (note));
_local2 = _local2 + (("_" + note) + ".wav");
}
return(_local2);
}
function checktriggers(px, cx, py, cy) {
var _local4 = new Array();
var _local7 = 0;
while (_local7 < triggers.length) {
var _local1 = triggers[_local7];
if (_local1 == -1) {
} else if (_local1.dir == 4) {
if (((px <= _local1.x) && (cx > _local1.x)) || ((px >= _local1.x) && (cx < _local1.x))) {
_local4.push(_local7);
}
} else if (_local1.dir == 5) {
if (((py <= _local1.y) && (cy > _local1.y)) || ((py >= _local1.y) && (cy < _local1.y))) {
_local4.push(_local7);
}
} else if (_local1.dir == 0) {
if (cy <= _local1.y) {
if (((px <= _local1.x) && (cx > _local1.x)) || ((px >= _local1.x) && (cx < _local1.x))) {
_local4.push(_local7);
}
}
} else if (_local1.dir == 2) {
if (cy >= _local1.y) {
if (((px <= _local1.x) && (cx > _local1.x)) || ((px >= _local1.x) && (cx < _local1.x))) {
_local4.push(_local7);
}
}
} else if (_local1.dir == 3) {
if (cx <= _local1.x) {
if (((py <= _local1.y) && (cy > _local1.y)) || ((py >= _local1.y) && (cy < _local1.y))) {
_local4.push(_local7);
}
}
} else if (_local1.dir == 1) {
if (cx >= _local1.x) {
if (((py <= _local1.y) && (cy > _local1.y)) || ((py >= _local1.y) && (cy < _local1.y))) {
_local4.push(_local7);
}
}
}
_local7++;
}
_local7 = 0;
while (_local7 < _local4.length) {
triggered(_local4[_local7], cx, cy);
_local7++;
}
}
function convertnotetxt(txt, isdrums, octrans) {
if (octrans == undefined) {
octrans = 0;
}
var _local7 = new Array();
var _local5 = 0;
txt = txt.split(",");
var _local1 = 0;
while (_local1 < txt.length) {
txt[_local1] = txt[_local1].split("+");
var _local6 = 0;
var _local2 = 0;
while (_local2 < txt[_local1].length) {
var _local4 = txt[_local1][_local2].charAt(0);
if (_local4 == "-") {
_local4 = txt[_local1][_local2].slice(1);
if (_local4 == "x") {
_local7[_local5] = "x";
_local5++;
} else {
_local5 = _local5 + Number(_local4);
}
_local6 = 1;
break;
}
if (_local4 == "x") {
txt[_local1][_local2] = "x";
} else if (isdrums) {
txt[_local1][_local2] = drumtoobject(txt[_local1][_local2]);
} else {
txt[_local1][_local2] = notetoobject(txt[_local1][_local2], octrans);
}
_local2++;
}
if (_local6) {
} else {
_local7[_local5] = txt[_local1];
_local5++;
}
_local1++;
}
_local7.length = _local5;
return(_local7);
}
function notetoobject(txt, octrans) {
var _local1 = new Object();
_local1.o = Number(txt.charAt(0)) + octrans;
_local1.n = txt.slice(1);
return(_local1);
}
function drumtoobject(txt) {
var _local1 = new Object();
_local1.o = "d";
_local1.n = txt;
return(_local1);
}
function frameon(goto) {
framein = goto;
_root.gotoAndStop(goto);
}
function designing(b) {
if (b == 0) {
design = 0;
initmenu();
} else {
design = 1;
frameon("designer");
}
}
function initialloop() {
if (gamep.state != "paused") {
timer++;
}
if (gamep.replay) {
replaycontrols();
} else if (pausep.ctrlon == -1) {
controls();
}
if (framein == "game") {
if (design) {
designloop();
} else {
gameloop();
}
} else if (framein == "menu") {
menukeys();
} else if ((framein == "tiledesign") || (framein == "objectdesign")) {
crosshair();
}
}
function bitAND(a, b) {
if ((a < 0) && (b < 0)) {
var _local3 = (a & 1) & (b & 1);
var _local4 = (a >>> 1) & (b >>> 1);
return((_local4 << 1) | _local3);
}
return(a & b);
}
function rhex(num) {
var _local1 = "0123456789abcdef";
var _local3 = "";
j = 0;
while (j <= 3) {
_local3 = _local3 + (_local1.charAt(bitAND(num >> ((j * 8) + 4), 15)) + _local1.charAt(bitAND(num >> (j * 8), 15)));
j++;
}
return(_local3);
}
function str2blks_MD5(str) {
var _local3 = ((str.length + 8) >> 6) + 1;
var _local1 = new Array(_local3 * 16);
i = 0;
while (i < (_local3 * 16)) {
_local1[i] = 0;
i++;
}
i = 0;
while (i < str.length) {
_local1[i >> 2] = _local1[i >> 2] | (str.charCodeAt(i) << ((i % 4) * 8));
i++;
}
_local1[i >> 2] = _local1[i >> 2] | (128 << ((i % 4) * 8));
_local1[(_local3 * 16) - 2] = str.length * 8;
return(_local1);
}
function addme(x, y) {
var _local1 = bitAND(x, 65535) + bitAND(y, 65535);
var _local2 = ((x >> 16) + (y >> 16)) + (_local1 >> 16);
return((_local2 << 16) | bitAND(_local1, 65535));
}
function rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
function cmn(q, a, b, x, s, t) {
return(addme(rol(addme(addme(a, q), addme(x, t)), s), b));
}
function ff(a, b, c, d, x, s, t) {
return(cmn(bitAND(b, c) | bitAND(~b, d), a, b, x, s, t));
}
function gg(a, b, c, d, x, s, t) {
return(cmn(bitAND(b, d) | bitAND(c, ~d), a, b, x, s, t));
}
function hh(a, b, c, d, x, s, t) {
return(cmn((b ^ c) ^ d, a, b, x, s, t));
}
function ii(a, b, c, d, x, s, t) {
return(cmn(c ^ (b | (~d)), a, b, x, s, t));
}
function md5(str) {
var _local10 = str.split(":");
var _local13 = _local10[_local10.length - 1].split(",");
var _local11 = _local10[_local10.length - 2].split(",");
_local11 = (Number(_local11[0]) + Number(_local11[1])) + Number(_local11[2]);
_local10.pop();
var _local12 = _local10.concat(_local13);
_local12.reverse();
str = _local12.join(finalcutter[_local11 % finalcutter.length]);
var _local5 = str2blks_MD5(str);
var _local4 = 1732584193 /* 0x67452301 */;
var _local3 = -271733879;
var _local2 = -1732584194;
var _local1 = 271733878 /* 0x10325476 */;
i = 0;
while (i < _local5.length) {
var _local9 = _local4;
var _local8 = _local3;
var _local7 = _local2;
var _local6 = _local1;
_local4 = ff(_local4, _local3, _local2, _local1, _local5[i + 0], 7, -680876936);
_local1 = ff(_local1, _local4, _local3, _local2, _local5[i + 1], 12, -389564586);
_local2 = ff(_local2, _local1, _local4, _local3, _local5[i + 2], 17, 606105819);
_local3 = ff(_local3, _local2, _local1, _local4, _local5[i + 3], 22, -1044525330);
_local4 = ff(_local4, _local3, _local2, _local1, _local5[i + 4], 7, -176418897);
_local1 = ff(_local1, _local4, _local3, _local2, _local5[i + 5], 12, 1200080426);
_local2 = ff(_local2, _local1, _local4, _local3, _local5[i + 6], 17, -1473231341);
_local3 = ff(_local3, _local2, _local1, _local4, _local5[i + 7], 22, -45705983);
_local4 = ff(_local4, _local3, _local2, _local1, _local5[i + 8], 7, 1770035416);
_local1 = ff(_local1, _local4, _local3, _local2, _local5[i + 9], 12, -1958414417);
_local2 = ff(_local2, _local1, _local4, _local3, _local5[i + 10], 17, -42063);
_local3 = ff(_local3, _local2, _local1, _local4, _local5[i + 11], 22, -1990404162);
_local4 = ff(_local4, _local3, _local2, _local1, _local5[i + 12], 7, 1804603682);
_local1 = ff(_local1, _local4, _local3, _local2, _local5[i + 13], 12, -40341101);
_local2 = ff(_local2, _local1, _local4, _local3, _local5[i + 14], 17, -1502002290);
_local3 = ff(_local3, _local2, _local1, _local4, _local5[i + 15], 22, 1236535329);
_local4 = gg(_local4, _local3, _local2, _local1, _local5[i + 1], 5, -165796510);
_local1 = gg(_local1, _local4, _local3, _local2, _local5[i + 6], 9, -1069501632);
_local2 = gg(_local2, _local1, _local4, _local3, _local5[i + 11], 14, 643717713);
_local3 = gg(_local3, _local2, _local1, _local4, _local5[i + 0], 20, -373897302);
_local4 = gg(_local4, _local3, _local2, _local1, _local5[i + 5], 5, -701558691);
_local1 = gg(_local1, _local4, _local3, _local2, _local5[i + 10], 9, 38016083);
_local2 = gg(_local2, _local1, _local4, _local3, _local5[i + 15], 14, -660478335);
_local3 = gg(_local3, _local2, _local1, _local4, _local5[i + 4], 20, -405537848);
_local4 = gg(_local4, _local3, _local2, _local1, _local5[i + 9], 5, 568446438);
_local1 = gg(_local1, _local4, _local3, _local2, _local5[i + 14], 9, -1019803690);
_local2 = gg(_local2, _local1, _local4, _local3, _local5[i + 3], 14, -187363961);
_local3 = gg(_local3, _local2, _local1, _local4, _local5[i + 8], 20, 1163531501);
_local4 = gg(_local4, _local3, _local2, _local1, _local5[i + 13], 5, -1444681467);
_local1 = gg(_local1, _local4, _local3, _local2, _local5[i + 2], 9, -51403784);
_local2 = gg(_local2, _local1, _local4, _local3, _local5[i + 7], 14, 1735328473);
_local3 = gg(_local3, _local2, _local1, _local4, _local5[i + 12], 20, -1926607734);
_local4 = hh(_local4, _local3, _local2, _local1, _local5[i + 5], 4, -378558);
_local1 = hh(_local1, _local4, _local3, _local2, _local5[i + 8], 11, -2022574463);
_local2 = hh(_local2, _local1, _local4, _local3, _local5[i + 11], 16, 1839030562);
_local3 = hh(_local3, _local2, _local1, _local4, _local5[i + 14], 23, -35309556);
_local4 = hh(_local4, _local3, _local2, _local1, _local5[i + 1], 4, -1530992060);
_local1 = hh(_local1, _local4, _local3, _local2, _local5[i + 4], 11, 1272893353);
_local2 = hh(_local2, _local1, _local4, _local3, _local5[i + 7], 16, -155497632);
_local3 = hh(_local3, _local2, _local1, _local4, _local5[i + 10], 23, -1094730640);
_local4 = hh(_local4, _local3, _local2, _local1, _local5[i + 13], 4, 681279174);
_local1 = hh(_local1, _local4, _local3, _local2, _local5[i + 0], 11, -358537222);
_local2 = hh(_local2, _local1, _local4, _local3, _local5[i + 3], 16, -722521979);
_local3 = hh(_local3, _local2, _local1, _local4, _local5[i + 6], 23, 76029189);
_local4 = hh(_local4, _local3, _local2, _local1, _local5[i + 9], 4, -640364487);
_local1 = hh(_local1, _local4, _local3, _local2, _local5[i + 12], 11, -421815835);
_local2 = hh(_local2, _local1, _local4, _local3, _local5[i + 15], 16, 530742520);
_local3 = hh(_local3, _local2, _local1, _local4, _local5[i + 2], 23, -995338651);
_local4 = ii(_local4, _local3, _local2, _local1, _local5[i + 0], 6, -198630844);
_local1 = ii(_local1, _local4, _local3, _local2, _local5[i + 7], 10, 1126891415);
_local2 = ii(_local2, _local1, _local4, _local3, _local5[i + 14], 15, -1416354905);
_local3 = ii(_local3, _local2, _local1, _local4, _local5[i + 5], 21, -57434055);
_local4 = ii(_local4, _local3, _local2, _local1, _local5[i + 12], 6, 1700485571);
_local1 = ii(_local1, _local4, _local3, _local2, _local5[i + 3], 10, -1894986606);
_local2 = ii(_local2, _local1, _local4, _local3, _local5[i + 10], 15, -1051523);
_local3 = ii(_local3, _local2, _local1, _local4, _local5[i + 1], 21, -2054922799);
_local4 = ii(_local4, _local3, _local2, _local1, _local5[i + 8], 6, 1873313359);
_local1 = ii(_local1, _local4, _local3, _local2, _local5[i + 15], 10, -30611744);
_local2 = ii(_local2, _local1, _local4, _local3, _local5[i + 6], 15, -1560198380);
_local3 = ii(_local3, _local2, _local1, _local4, _local5[i + 13], 21, 1309151649);
_local4 = ii(_local4, _local3, _local2, _local1, _local5[i + 4], 6, -145523070);
_local1 = ii(_local1, _local4, _local3, _local2, _local5[i + 11], 10, -1120210379);
_local2 = ii(_local2, _local1, _local4, _local3, _local5[i + 2], 15, 718787259);
_local3 = ii(_local3, _local2, _local1, _local4, _local5[i + 9], 21, -343485551);
_local4 = addme(_local4, _local9);
_local3 = addme(_local3, _local8);
_local2 = addme(_local2, _local7);
_local1 = addme(_local1, _local6);
i = i + 16;
}
var _local14 = ((rhex(_local4) + rhex(_local3)) + rhex(_local2)) + rhex(_local1);
return(_local14);
}
function importplaythrough(txt) {
var _local1 = txt.split(":");
if (_local1.length != 6) {
return("FAiL_003: Insufficient Funds.");
}
var _local3 = _local1[0];
var _local2 = md5((((((((_local1[1] + ":") + _local1[2]) + ":") + _local1[3]) + ":") + _local1[4]) + ":") + _local1[5]);
if (_local3 == _local2) {
var _local4 = _local1[2].split("");
loadedsplit = [_local1[1], _local4[2]];
loadedlog = importreplaytxt(_local1[5]);
return(1);
}
return("FAiL_303: Tampered Log.");
}
function exportplaythrough() {
var _local2 = _root.savetxt.text;
if ((_local2.length < 1) || (_local2 == "FAiL_300: Enter Name.")) {
_root.savetxt.text = "FAiL_300: Enter Name.";
} else if (playerlog == undefined) {
_root.savetxt.text = "FAiL_030: No Playthrough To Output. Play A Level First.";
} else {
var _local3 = (((((((((_local2 + ":") + thisworldis) + "-") + playerlogp.stage) + ":") + playerlogp.victory) + ":") + playerlogp.timeup) + ":") + exportreplaytxt(playerlog);
var _local4 = md5(_local3);
_root.savetxt.text = "WiN_330: Copied!";
return((_local4 + ":") + _local3);
}
}
function exportreplaytxt(arr) {
var _local2 = 0;
while (_local2 < arr.length) {
var _local3 = "";
var _local1 = 0;
while (_local1 < arr[_local2].length) {
_local3 = _local3 + ((_local1 == 0) ? "" : ",");
_local3 = _local3 + arr[_local2][_local1][1];
_local3 = _local3 + tosuperhex(arr[_local2][_local1][0]);
_local1++;
}
arr[_local2] = _local3;
_local2++;
}
arr = arr.join("=");
return(arr);
}
function importreplaytxt(arr) {
arr = arr.split("=");
var _local2 = 0;
while (_local2 < arr.length) {
arr[_local2] = arr[_local2].split(",");
var _local1 = 0;
while (_local1 < arr[_local2].length) {
var _local4 = new Array();
_local4[0] = fromsuperhex(arr[_local2][_local1].slice(1));
_local4[1] = Number(arr[_local2][_local1].charAt(0));
arr[_local2][_local1] = _local4;
_local1++;
}
_local2++;
}
return(arr);
}
function tosuperhex(num) {
var _local2 = superhexlist.length;
var _local1 = num % _local2;
var _local3 = num - _local1;
if (_local3 == 0) {
var _local4 = superhexlist[_local1];
} else {
var _local4 = tosuperhex(_local3 / _local2) + superhexlist[_local1];
}
return(_local4);
}
function fromsuperhex(num) {
var _local7 = 0;
var _local4 = superhexlist.length;
var _local5 = 1;
var _local3 = num.length - 1;
while (_local3 > -1) {
var _local2 = num.charAt(_local3);
var _local1 = 0;
while (_local1 < _local4) {
if (superhexlist[_local1] == _local2) {
_local2 = _local1;
break;
}
_local1++;
}
_local7 = _local7 + (_local2 * _local5);
_local5 = _local5 * _local4;
_local3--;
}
return(_local7);
}
function initreplaying() {
var _local1 = loadedsplit[1];
gameinit(_local1, 1);
}
function managepallette(obj, explodan) {
if (explodan) {
spritesonscreen.explosion++;
} else if (((obj == "player") || (obj == "spikes")) || (obj == "banzaiman")) {
} else if (obj == "crab") {
spritesonscreen.crab++;
} else if (obj == "missile") {
spritesonscreen.bullethead++;
spritesonscreen.bullettail++;
} else if ((obj == "snail") || (obj == "parasnail")) {
spritesonscreen.snail++;
} else if (obj == "porcupine") {
spritesonscreen.porcupine++;
} else if (obj == "armadillo") {
spritesonscreen.armadillo++;
} else if (obj == "turtle") {
spritesonscreen.turtle++;
} else if (obj == "googum") {
spritesonscreen.googum++;
}
}
function assignpallette() {
var _local6 = {bbf:0, rbf:0, gbg:0, ggg:0, oby:0, wbp:0, wbg:0, bby:0, bbb:0};
if (pallette.suit == "lastman") {
_local6.bbf = 1;
} else if (pallette.suit == "crab") {
_local6.rbf = 1;
} else if (pallette.suit == "raccoon") {
_local6.gbg = 1;
} else if (pallette.suit == "gecko") {
_local6.ggg = 1;
} else if (pallette.suit == "bee") {
_local6.oby = 1;
} else if (pallette.suit == "squid") {
_local6.wbp = 1;
} else if (pallette.suit == "crow") {
_local6.wbg = 1;
} else if (pallette.suit == "bear") {
_local6.bby = 1;
}
var _local10 = 3;
var _local9 = 0;
if ((((spritesonscreen.googum > 0) || (spritesonscreen.bullethead > 0)) && (!_local6.wbg)) && (!_local6.wbp)) {
_local10 = 2;
_local9 = 1;
}
var _local11 = new Array();
var _local12 = 0;
for (var _local8 in spritesonscreen) {
_local12++;
if (((spritesonscreen[_local8] == 0) || (_local8 == "googum")) || (_local8 == "bullethead")) {
continue;
}
var _local7 = new Object();
_local7.sprite = _local8;
_local7.sprites = spritesonscreen[_local8];
_local11.push(_local7);
}
_local11.sortOn("sprites", Array.NUMERIC | Array.DESCENDING);
var _local8 = 0;
while (_local8 < _local11.length) {
var _local5 = _local11[_local8].sprite;
var _local4 = 0;
while (_local4 < 6) {
var _local2 = _root[_local5 + "pref"][_local4];
var _local3 = 0;
if (_local6[_local2]) {
_local3 = 1;
} else if (_local9 && ((_local2 == "wbp") || (_local2 == "wbg"))) {
_local6[_local2] = 1;
_local9 = 0;
pallette.bullethead = ((_local2 == "wbg") ? 1 : 2);
_local3 = 1;
} else if (_local10 > 0) {
_local10--;
_local3 = 1;
}
if (_local3) {
pallette[_local5] = _local4 + 1;
break;
}
_local4++;
}
_local8++;
}
if (_local9) {
pallette.bullethead = 1;
}
}
function onEnterFrame() {
initialloop();
}
tiledata = new Array();
tiledata[0] = "empty";
tiledata[1] = [{block:1}, {ye:9, ys:0, xe:9, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[2] = [{block:1}, {ye:8, ys:0, xe:5, xs:3, frame:1, u:0, d:0, l:0, r:0}, {r:0, l:0, d:1, u:0, frame:2, xs:3, xe:5, ys:0, ye:8}, {ye:8, ys:0, xe:5, xs:3, frame:3, u:0, d:1, l:0, r:1}, {r:1, l:1, d:1, u:0, frame:4, xs:3, xe:5, ys:0, ye:8}, {ye:8, ys:0, xe:5, xs:3, frame:5, u:0, d:1, l:1, r:0}];
tiledata[3] = [{slime:1}, {ye:8, ys:7, xe:7, xs:2, frame:1, u:0, d:0, l:0, r:0}, {r:1, l:0, d:0, u:0, frame:2, xs:3, xe:8, ys:7, ye:8}, {ye:8, ys:7, xe:8, xs:0, frame:3, u:0, d:0, l:1, r:1}, {r:0, l:1, d:0, u:0, frame:4, xs:0, xe:7, ys:7, ye:8}];
tiledata[4] = [0, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:1, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:2, u:0, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:3, u:0, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:4, u:0, d:1, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:5, u:1, d:1, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:6, u:1, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:7, u:1, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:8, u:1, d:1, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:9, u:1, d:0, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:10, u:1, d:0, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:11, u:1, d:0, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:12, u:1, d:0, l:1, r:0}];
tiledata[5] = [{zone:"ceiling"}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[6] = [0, {ye:0, ys:0, xe:0, xs:0, frame:1, u:1, d:0, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:2, u:1, d:0, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:3, u:1, d:0, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:4, u:1, d:0, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:5, u:1, d:1, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:6, u:1, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:7, u:1, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:8, u:1, d:1, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:9, u:0, d:1, l:0, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:10, u:0, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:11, u:0, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:12, u:0, d:1, l:1, r:0}];
tiledata[7] = [{zone:"jumpdash"}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[8] = [{block:0, hasfunction:"lookleft"}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}, {ye:8, ys:0, xe:8, xs:0, frame:2, u:0, d:0, l:0, r:0}];
tiledata[9] = [{block:1, hasfunction:"lookright"}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}, {ye:8, ys:0, xe:8, xs:0, frame:2, u:0, d:0, l:0, r:0}];
tiledata[10] = [{block:1, warp:"r"}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[11] = [{block:1, warp:"l"}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[12] = [{block:1, warp:"u"}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[13] = [{block:1, warp:"d"}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[14] = [{block:1, crumble:1}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[15] = [{block:1, spring:1}, {ye:8, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[16] = [{block:1, suit:1}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[17] = [{block:1, suit:2}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[18] = [{block:1, suit:3}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[19] = [{block:1, suit:4}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[20] = [{block:1, suit:8}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[21] = [{block:1, suit:7}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[22] = [{block:1, suit:9}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[23] = [{block:1, suit:6}, {ye:8, ys:7, xe:7, xs:1, frame:1, u:0, d:0, l:0, r:0}];
tiledata[24] = [0, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[25] = [0, {ye:0, ys:0, xe:0, xs:0, frame:1, u:1, d:0, l:0, r:1}, {ye:7, ys:6, xe:5, xs:3, frame:2, u:1, d:0, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:3, u:1, d:0, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:4, u:1, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:5, u:1, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:6, u:1, d:1, l:1, r:0}, {ye:0, ys:0, xe:0, xs:0, frame:7, u:0, d:1, l:0, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:8, u:0, d:1, l:1, r:1}, {ye:0, ys:0, xe:0, xs:0, frame:9, u:0, d:1, l:1, r:0}];
tiledata[26] = [{end:1, block:1}, {ye:7, ys:0, xe:8, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[27] = [{cloud:1, block:0}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}, {ye:8, ys:7, xe:8, xs:0, frame:2, u:0, d:0, l:0, r:1}, {r:1, l:0, d:1, u:0, frame:3, xs:0, xe:8, ys:7, ye:8}, {ye:8, ys:7, xe:8, xs:0, frame:4, u:0, d:0, l:1, r:1}, {r:1, l:1, d:1, u:0, frame:5, xs:0, xe:8, ys:7, ye:8}, {ye:8, ys:7, xe:8, xs:0, frame:6, u:0, d:0, l:1, r:0}, {r:0, l:1, d:1, u:0, frame:7, xs:0, xe:8, ys:7, ye:8}, {ye:8, ys:7, xe:8, xs:0, frame:8, u:1, d:0, l:1, r:1}, {r:1, l:1, d:1, u:1, frame:9, xs:0, xe:8, ys:7, ye:8}, {ye:0, ys:0, xe:0, xs:0, frame:10, u:0, d:1, l:0, r:0}];
tiledata[28] = [{block:1, invisible:1}, {r:0, l:0, d:0, u:0, frame:1, ye:8, ys:0, xe:8, xs:0}, {r:0, l:0, d:0, u:0, frame:2, xs:0, xe:8, ys:0, ye:8}];
tiledata[29] = [{zone:"spiral"}, {ye:0, ys:0, xe:0, xs:0, frame:1, u:0, d:0, l:0, r:0}];
tiledata[30] = [{block:1, kill:1, boss:1}, {r:1, l:0, d:0, u:0, frame:1, xs:1, xe:8, ys:6, ye:8}, {r:1, l:1, d:0, u:0, frame:2, xs:0, xe:8, ys:6, ye:8}, {r:0, l:1, d:0, u:0, frame:3, xs:0, xe:7, ys:6, ye:8}];
tiledata[31] = [{block:1, boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:2, xe:6, ys:4, ye:8}];
tiledata[32] = [{block:1, kill:1, boss:1}, {r:1, l:0, d:0, u:0, frame:1, xs:0, xe:8, ys:3, ye:8}, {r:1, l:1, d:0, u:0, frame:2, xs:0, xe:8, ys:0, ye:8}, {r:0, l:1, d:0, u:0, frame:3, xs:0, xe:8, ys:3, ye:8}];
tiledata[33] = [{block:1, kill:1, boss:1}, {r:1, l:0, d:0, u:0, frame:1, xs:0, xe:8, ys:3, ye:8}, {ye:8, ys:3, xe:8, xs:0, frame:2, u:1, d:0, l:0, r:1}, {r:1, l:0, d:1, u:1, frame:3, xs:0, xe:8, ys:3, ye:8}, {ye:8, ys:3, xe:8, xs:0, frame:4, u:0, d:1, l:0, r:1}, {r:1, l:1, d:0, u:0, frame:5, xs:0, xe:8, ys:0, ye:8}, {ye:8, ys:0, xe:8, xs:0, frame:6, u:1, d:0, l:1, r:1}, {r:1, l:1, d:1, u:1, frame:7, xs:0, xe:8, ys:0, ye:8}, {ye:8, ys:0, xe:8, xs:0, frame:8, u:0, d:1, l:1, r:1}, {r:0, l:1, d:0, u:0, frame:9, xs:0, xe:8, ys:3, ye:8}, {ye:8, ys:3, xe:8, xs:0, frame:10, u:1, d:0, l:1, r:0}, {r:0, l:1, d:1, u:1, frame:11, xs:0, xe:8, ys:3, ye:8}, {ye:8, ys:3, xe:8, xs:0, frame:12, u:0, d:1, l:1, r:0}];
tiledata[34] = [{weakpoint:1, block:1, boss:1}, {r:1, l:0, d:0, u:1, frame:1, xs:0, xe:8, ys:0, ye:8}, {ye:8, ys:0, xe:8, xs:0, frame:2, u:1, d:0, l:1, r:1}, {r:0, l:1, d:0, u:1, frame:3, xs:0, xe:8, ys:0, ye:8}, {ye:8, ys:0, xe:8, xs:0, frame:4, u:0, d:1, l:0, r:1}, {r:1, l:1, d:1, u:0, frame:5, xs:0, xe:8, ys:0, ye:8}, {ye:8, ys:0, xe:8, xs:0, frame:6, u:0, d:1, l:1, r:0}];
tiledata[35] = [{block:1, boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:0, xe:8, ys:0, ye:8}];
tiledata[36] = [{boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:0, xe:0, ys:0, ye:0}];
tiledata[37] = [{boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:0, xe:0, ys:0, ye:0}];
tiledata[38] = [{block:1, unvisible:1, boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:0, xe:8, ys:0, ye:8}];
tiledata[39] = [{block:1, unvisible:1, kill:1, boss:1}, {r:0, l:0, d:0, u:0, frame:1, xs:0, xe:8, ys:0, ye:8}];
tiledata[40] = [0, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
tiledata[41] = [{bpm:"r", unvisible:1}, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
tiledata[42] = [{bpm:"l", unvisible:1}, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
tiledata[43] = [{bpm:"u", unvisible:1}, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
tiledata[44] = [{bpm:"d", unvisible:1}, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
tiledata[45] = [0, {r:0, l:0, d:0, u:0, frame:1, xs:-7, xe:-5, ys:-2, ye:0}];
objectdata = new Array();
objectdata[1] = [{none:"player"}, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-4, xe:4, ys:-16, ye:0}, {xs:-3, xe:3, ys:-11, ye:0}];
objectdata[2] = [0, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {ye:0, ys:-11, xe:3, xs:-3}, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-4, xe:4, ys:-16, ye:0}];
objectdata[3] = [0, {xs:-3, xe:3, ys:-15, ye:0}, {ye:0, ys:-15, xe:3, xs:-3}, {xs:-3, xe:3, ys:-10, ye:0}, {ye:0, ys:-15, xe:3, xs:-3}, {xs:-3, xe:3, ys:-15, ye:0}, {xs:-3, xe:3, ys:-15, ye:0}, {ye:0, ys:-16, xe:4, xs:-4}, {xs:-3, xe:3, ys:-10, ye:0}];
objectdata[4] = [0, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-16, ye:0}, {xs:-4, xe:4, ys:-16, ye:0}, {ye:0, ys:-11, xe:3, xs:-3}];
objectdata[5] = [0, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-16, ye:0}, {xs:-4, xe:4, ys:-16, ye:0}, {ye:0, ys:-11, xe:3, xs:-3}];
objectdata[6] = [0, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-16, ye:0}, {xs:-4, xe:4, ys:-16, ye:0}, {ye:0, ys:-11, xe:3, xs:-3}];
objectdata[7] = [0, {xs:-4, xe:4, ys:-14, ye:0}, {ye:0, ys:-14, xe:4, xs:-4}, {xs:-4, xe:4, ys:-11, ye:0}, {ye:0, ys:-14, xe:4, xs:-4}, {xs:-4, xe:4, ys:-14, ye:0}, {ye:0, ys:-16, xe:4, xs:-4}, {xs:-4, xe:4, ys:-11, ye:0}];
objectdata[8] = [0, {ye:0, ys:-16, xe:3, xs:-3}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-11, ye:0}, {ye:0, ys:-16, xe:3, xs:-3}, {xs:-3, xe:3, ys:-16, ye:0}, {xs:-3, xe:3, ys:-11, ye:0}, {xs:-3, xe:3, ys:-16, ye:0}, {ye:0, ys:-11, xe:3, xs:-3}];
objectdata[9] = [0, {xs:-5, xe:5, ys:-22, ye:0}, {ye:0, ys:-13, xe:5, xs:-5}, {xs:-5, xe:5, ys:-13, ye:0}, {ye:0, ys:-20, xe:5, xs:-5}, {xs:-5, xe:5, ys:-20, ye:0}, {ye:0, ys:-16, xe:5, xs:-4}, {xs:-5, xe:5, ys:-20, ye:0}];
objectdata[10] = [{none:"crab"}, {xs:-6, xe:6, ys:-6, ye:0}, {ye:0, ys:-6, xe:6, xs:-6}, {xs:-6, xe:6, ys:-6, ye:0}, {ye:0, ys:-6, xe:6, xs:-6}, {xs:-6, xe:6, ys:-6, ye:0}];
objectdata[11] = [{none:"spikes"}, {ye:5, ys:-5, xe:5, xs:-5}, {xs:-5, xe:5, ys:-5, ye:5}, {ye:5, ys:-5, xe:5, xs:-5}, {xs:-5, xe:5, ys:-5, ye:5}, {ye:5, ys:-5, xe:5, xs:-5}, {xs:-5, xe:5, ys:-5, ye:5}, {ye:5, ys:-5, xe:5, xs:-5}, {xs:-5, xe:5, ys:-5, ye:5}];
objectdata[12] = [{none:"missile"}, {xs:-4, xe:4, ys:-6, ye:0}, {xs:-3, xe:3, ys:-8, ye:0}, {ye:0, ys:-8, xe:3, xs:-3}];
objectdata[13] = [{none:"snail"}, {xs:-5, xe:6, ys:-8, ye:0}, {xs:-4, xe:4, ys:-12, ye:0}];
objectdata[14] = [{none:"parasnail"}, {xs:-5, xe:6, ys:-8, ye:0}, {xs:-4, xe:4, ys:-12, ye:0}];
objectdata[15] = [{none:"porcupine"}, {xs:-6, xe:5, ys:-7, ye:0}, {xs:-4, xe:4, ys:-8, ye:0}];
objectdata[16] = [{none:"armadillo"}, {xs:-5, xe:4, ys:-6, ye:0}, {xs:-3, xe:3, ys:-6, ye:0}, {xs:-3, xe:3, ys:-6, ye:0}, {xs:-3, xe:4, ys:-10, ye:-3}];
objectdata[17] = [{none:"turtle"}, {ye:0, ys:-8, xe:2, xs:-4}, {ye:0, ys:-6, xe:2, xs:-4}, {xs:-4, xe:4, ys:-6, ye:0}, {ye:3, ys:-11, xe:7, xs:-7}];
objectdata[18] = [{none:"googum"}, {xs:-3, xe:3, ys:-24, ye:0}, {ye:0, ys:-24, xe:3, xs:-3}];
objectdata[19] = [{none:"banzaiman"}, {xs:-4, xe:4, ys:-8, ye:0}, {ye:0, ys:-8, xe:4, xs:-4}];
objectdata[20] = [{none:"musicnote"}, {xs:-3, xe:3, ys:-4, ye:3}, {ye:3, ys:-4, xe:3, xs:-3}, {xs:-3, xe:3, ys:-4, ye:3}, {ye:3, ys:-4, xe:3, xs:-3}];
objectdata[21] = [0, {xs:0, xe:0, ys:0, ye:0}];
thisworldis = 1;
finalcutter = ["#$#", "$&^", "%^#%", "^$@#", "&&%*$%", "%@&*$!", "#%^@", "&!%"];
lvl1_points = {x:48, y:232};
lvl1_txt = "0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x22,25x7,1,br,0x7,1,0x14,25x7,1,br,0x7,1,0x15,25x6,1,br,0x7,1,0x16,25x5,1,br,0x4,1x7,0x18,1,br,0x7,1,0x21,1,br,0x7,1,0x16,24,4x4,1,br,0x7,1,0x17,4x4,1,br,0x29,1,br,0x29,1,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x27,3,1x2,br,0x28,3,1,br,0x28,3,1,br,0x28,3,1,br,0x28,3,1,br,0x28,1x2,br,0x28,1x2,br,0x28,1x2,br,0x28,1x2,br,0x29,15,br,br,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,br,0x21,3,1,2x7,br,0x21,3,1,br,br,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,8,br,0x29,9,br,0x29,9,br,0x29,9,br,0x29,9,br,0x29,9,br,0x29,9,br,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,15,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,0x13,1,br,0x15,14,br,br,0x15,1,br,0x15,1,br,0x15,1,br,0x15,1,br,0x15,1,br,br,0x25,1,2x4,br,0x25,1,br,0x25,1,br,0x24,1x2,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,2x5,br,br,0x27,1,2x2,br,0x19,1x4,br,0x22,1,0x4,1,2x2,br,0x22,1,0x4,1,br,0x22,1,br,0x22,1,0x5,1,2x2,br,0x22,1,br,0x22,1,0x5,1,2x2,br,0x22,1,0x5,1,br,0x22,1,0x5,1,br,0x22,1,0x5,1,br,0x18,1x5,0x5,1,br,0x18,1,0x9,1,br,0x17,1x2,0x9,1x2,br,0x17,1x2,0x9,1x2,br,0x18,1,0x10,10,br,0x17,1x2,0x10,10,br,0x17,1x2,br,0x17,1x2,br,0x18,1,br,0x17,1x2,br,0x18,1,br,0x18,1,2x11,br,br,br,0x24,41,br,br,br,0x26,1,br,0x26,1,br,0x26,15,2x3,br,0x26,1,br,0x26,1,br,br,br,br,0x21,1,br,0x21,1,br,0x21,1,2x8,br,br,br,br,br,br,br,br,br,br,0x15,1x12,br,0x15,1,0x10,1,2x3,br,0x15,1,0x10,1,br,0x15,1,0x10,1,br,0x15,1,0x10,1,br,0x15,1,0x4,1x2,0x4,1,br,0x15,1,0x4,1x2,0x4,1,br,0x15,1,0x10,1,br,0x15,1,0x10,1,br,0x15,1,0x10,1,br,0x15,1,0x10,1,2x3,br,0x15,1x12,br,br,br,br,br,br,br,br,br,br,br,br,br,br,br,br,br,0x29,1,br,0x29,1,br,0x29,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x13,1x11,0x5,1,br,0x13,1,0x8,1,0x6,1,br,0x13,1,0x15,1,br,0x13,1,0x15,1,br,0x13,1,0x15,1,br,0x13,1,0x5,1,0x9,1,br,0x13,1,0x5,1,0x9,1,br,0x13,1,0x5,1,0x9,1,br,0x13,1,0x2,14,1x13,br,0x13,1,0x15,1,br,0x13,1,0x15,1,br,0x13,1x12,0x4,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x24,1,2x4,1,br,0x24,1,br,0x24,1,br,0x24,1,br,0x24,1,br,br,br,br,br,br,br,br,br,br,br,br,br,br,0x22,1,2x7,br,0x20,1x3,br,0x20,1,2x9,br,br,br,0x16,1,br,0x29,11,br,0x29,11,br,0x29,11,br,0x29,11,br,0x29,11,br,0x29,11,br,0x29,11,br,br,br,br,br,br,br,0x16,1x8,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x16,1x8,0x5,1,br,br,br,br,br,br,br,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,br,br,br,0x29,1,br,0x29,1,br,0x29,1,br,0x23,1,0x5,1,br,0x23,1,0x5,1,br,0x29,1,br,0x29,1,br,0x29,1,br,br,br,br,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x29,1,br,0x19,25x10,1,br,0x17,25x12,1,br,0x16,26,25x12,1,br,0x17,25x12,1,br,0x19,25x10,1,br,0x29,1";
lvl2_points = {x:52, y:391};
lvl2_txt = "0x49,1x3,br,0x43,25x6,1x3,br,0x42,25x7,1x3,br,0x41,25x8,1x3,br,0x40,25x9,1x3,br,0x39,25x10,1x3,br,0x39,25x10,1x3,br,0x39,25x10,1x3,br,0x3,1x5,0x32,25x9,1x3,br,0x3,1,0,1,0x33,41,0,25x8,1x3,br,0x3,1x3,0x36,25x7,1x3,br,0x12,1,0x30,25x6,1x3,br,0x3,1x5,0x4,1x2,0x35,1x3,br,0x3,1,0,1,0x3,1x6,0x34,1x3,br,0x3,1x5,0x4,1x2,0x35,1x3,br,0x12,1,0x36,1x3,br,0x3,1x5,0x41,1x3,br,0x4,1x2,0x43,1x3,br,0x5,1x2,0x42,1x3,br,0x3,1x5,0x41,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,br,br,br,br,br,br,br,br,0x35,1x2,0x12,1,2x2,br,0x35,1x2,0x12,1,2x2,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,br,0x35,1x2,0x7,1,0x4,1,2x2,br,0x35,1x2,0x7,1,0x4,1,2x2,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x2,0x12,1,br,0x35,1x6,0x8,1,br,0x40,1,0x8,1,br,0x39,1x2,0x8,1,br,0x37,17,1x3,0x8,1,2x2,br,0x39,1x2,0x8,1,2x2,br,0x40,1,br,br,br,br,br,br,br,br,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,0x49,1x3,br,br,br,br,br,br,0x45,1,br,0x45,1,2x6,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,2x6,br,0x45,1,br,br,br,br,br,br,br,br,0x41,1,br,0x41,1,2x10,br,0x41,1,br,0x41,1,br,0x41,1,br,0x41,1,br,0x41,1,br,0x41,1,0x53,1x9,br,0x41,1,2x10,0x45,1x7,br,0x41,1,2x10,0x47,1x5,br,0x41,1,0x59,1x3,br,0x41,1,0x35,1x5,0x21,1,br,0x41,13,0x35,1,0,1,0,1,0x12,1x2,0x6,1,12,br,0x41,1,0x50,1x4,0x7,1,br,0x41,1,0x35,1x2,0,1x2,0x10,1x4,0x7,1,br,0x41,1,2x10,0x27,1,0x10,1x6,0x7,1,br,0x41,1,0x35,1x2,0,1x2,0x8,1x6,0x7,1,br,0x103,1,br,0x77,1x5,0x21,1,br,0x103,1,br,0x77,1,br,0x77,1x5,br,0x77,1,br,br,0x78,1x3,br,0x78,1x3,0x4,1,2x5,1,0x11,1,br,0x77,1x5,0x3,1,0x5,1,0x11,1,br,0x78,1x3,0x4,1,0x5,1,0x11,1,br,0x79,1,0x5,1,0x5,1,0x11,1,br,0x85,1,0x5,1,0x11,1,br,0x85,1,0x5,1,0x11,1,br,0x85,1,0x5,1,0x11,1,br,0x85,1,2x5,1,0x11,1,br,br,br,br,0x103,1,br,0x103,1,br,0x41,27,0x61,1,br,0x41,27,0x61,1,br,0x41,27,0x61,1,br,0x41,27,0x2,27,0x58,1,br,0x103,1,br,0x102,1x2,br,0x70,9x14,0x18,1,br,0x96,9,0x4,1,2x2,br,0x96,9,0x4,1,br,0x96,8,0x4,1,br,0x96,8,0x4,1,br,0x101,1,br,0x101,1,br,0x101,1,br,0x42,27,0x58,1,br,0x42,27,0x58,1,br,0x41,27x2,0x57,15,1,br,0x42,27,0x58,1,br,0x42,27,0x24,9,0x4,8x29,1,2x2,br,0x67,9,0x4,8,br,0x67,9,0x4,8,0x14,15,br,0x67,9,0x4,8,0x14,15,br,0x67,9,0x4,8,0x14,15,br,0x67,9,0x4,8,0x14,15,br,0x67,9,0x4,8,0x14,15,br,0x67,9,0x4,8,br,0x67,9,0x4,8x15,2x17,br,br,br,br,br,br,0x64,1,br,0x64,1,br,0x64,1,br,0x64,1,br,0x64,1,br,0x64,1,br,0x64,1,br,br,0x47,27,br,0x47,27,br,br,br,br,br,br,br,0x44,27,br,0x44,27,br,0x43,27x2,br,0x44,27,br,0x44,27,br,br,br,br,br,br,br,br,br,br,br,0x60,1,br,0x60,1,br,0x60,1,br,0x60,1,br,0x60,1,br,br,br,br,br,0x56,1,br,0x47,1x2,0x7,1,br,0x47,1x2,0x7,1,br,0x56,1,br,0x56,1,br,0x56,1,br,0x56,1,br,br,br,0x43,1,br,0x43,1,br,0x43,1,br,0x43,1,br,0x43,1,13,0x9,12,br,0x43,1,0x10,1,br,0x43,1,0x10,1,br,0x42,1x2,0x10,1,br,0x42,1x2,0x10,1,br,0x42,1x2,0x10,1,br,0x42,1,br,0x42,1,br,0x41,1x2,br,0x41,1x2,br,0x41,1x2,br,0x41,1x2,br,0x41,1,br,0x40,1x2,br,0x40,1x2,br,0x40,1x2,br,0x40,1x2,br,0x40,1x2,br,0x40,1x2,2x10,br,0x40,1,br,0x40,1,br,0x40,14,br,0x40,14,br,0x40,1,0x5,1x2,br,0x40,1,0x6,1,br,0x40,1,0x6,1,br,0x40,1,0x6,1,br,0x40,1,0x6,1,br,0x16,1x25,0x6,1,br,0x47,1,br,0x47,1,br,0x47,1,br,0x47,1,2x4,br,0x47,1,br,0x46,1x2,br,br,br,br,0x38,1,2x6,1,br,0x38,1,0x6,1,2x6,br,0x38,1,0x6,1,br,0x38,1,0x6,1,br,0x38,1,0x6,1,br,0x38,1,0x6,1,br,0x38,1,0x6,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x45,1,br,0x23,1x16,0x6,1,br,0x44,14,1,br,0x44,14,br,0x43,14x2,br,0x43,14x2,br,0x43,14,br,0x43,14,br,0x43,14,br,0x43,14,br,0x43,14,br,0x35,27,0x7,14,br,0x35,27,0x7,14,br,0x35,27,0x7,14,br,0x34,27x2,0x5,14,0,14,br,0x35,27,0x5,14,0,14,br,0x35,27,0x5,14,0,14,br,0x35,27,0x5,14,0,14,br,0x35,27,0x5,14,0,14,br,0x41,14x3,br,0x41,14x3,br,0x41,14x3,br,0x41,14x3,br,0x41,14x3,br,0x41,14x3,br,0x41,14x3,br,0x41,1,br,0x41,1,br,0x41,1x10,10,br,0x41,1x11,br,0x41,1,br,0x41,1,br,br,br,br,br,br,br,0x45,9,br,0x45,9,br,0x45,9,br,0x45,9,br,0x45,9,br,0x45,9,br,br,br,br,br,br,br,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x42,8,0x8,11,br,0x41,8x2,0x8,11,br,0x40,8x3,0x8,11,br,0x51,11,br,0x38,1x5,2x9,br,0x38,1,0,1,2,1,br,0x38,1x3,2,1x2,2x8,br,0x38,1x3,2,1x2,br,0x38,1x3,2,1x2,br,0x38,1,0,1,2,1x3,br,0x38,1x7,br,0x43,1x3,br,0x44,1x2,2x6,br,0x44,1x3,br,0x45,1x2,2x5,br,0x45,1x3,br,0x45,1x3,br,0x46,1x2,br,0x46,1x3,br,0x46,1x6,br,0x46,1x6,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x47,1x5,br,0x45,24,2,1x5,br,0x42,26,0x3,2,1x5,br,0x47,1x5,br,0x38,25x9,1x5,br,0x38,25x9,1x5,br,0x37,25x10,1x5,br,0x35,25x12,1x5,br,0x35,25x12,1x5,br,0x35,25x12,1x5,br,0x37,25x10,1x5,br,0x38,25x9,1x5";
lvl3_points = {x:2660, y:416};
lvl3_txt = "0x46,1x13,0x27,1,2x8,1x4,0,1x4,0,1x4,0,1x4,0,1x4,0,1x4,0,1,2x12,1x6,2x57,1,0,1x2,0,1,2x43,1x10,br,0x46,1x13,0x24,1,0x3,14,0x50,1,8x3,1,0x108,1x2,0x6,1,br,0x46,14,1x12,0x24,1,0x3,14,0x50,1,8x2,1,0x75,1x2,0,1,0x31,1x2,0x5,1,br,0x46,14x2,1x11,0x24,1,0x3,14,0x50,1,8,1,0x112,1x2,0x4,1,br,0x46,14x3,1x10,0x4,1,0x19,1,0x3,14,0x50,1x2,0x8,1,0,1x4,0,1,0x23,1x2,2,0x72,1x2,0x3,1,br,0x46,14x4,1x9,0x4,1,0x19,1,0x3,14,0x21,27,0x28,1,0x116,1x2,0x2,1,br,0x46,14x5,1x8,0x4,1,0x19,1,0x3,14,0x21,27,0x22,3,1,0x122,1x2,0,1,br,0x46,14x6,1x7,0x4,1x2,0x18,1,0x3,14,0x20,27x2,0x22,3,1,0x123,1x3,br,0x46,14x7,1x6,0x4,1x2,0x18,1,0x3,14,0x21,27,0x22,3,1,0x124,1x2,br,0x46,14x8,1x5,0x4,1x3,0x17,1,0x3,14,0x44,3,1,0x125,1,br,0x46,14x9,1x4,0x4,1x3,0x17,1,0x3,14,0x44,3,1,0x125,1,br,0x8,1,0x37,14x10,1x3,0x4,1x3,0x17,1,0x3,14,0x44,3,1,0x125,1,br,0x8,1,0x37,14x11,1x2,0x4,1x3,0x17,1,0x3,14,0x50,1,0x120,1,br,0x5,1x9,0x32,14x11,13,1,0x5,12,1,0x21,14,0x50,1x2,0x90,1,0x28,1,br,0x8,1,0,1x2,0,1,0x32,14x11,1x2,0x4,1x3,0x21,14,0x50,1,9,1,0x24,1x3,0,1,0x25,1,0x63,1,br,0x8,1,0x4,1,0x32,14x10,1x4,0x4,1x2,0x21,14,0x50,1,9x2,1,br,0x8,1,0x4,1,0x32,14x9,1x5,0x4,10,1,0x21,14,0x50,1,9x3,1,0x97,1,0x9,1,0x8,1,br,0x46,14x8,1x6,0x4,1x2,0x15,1,0x5,1,2x50,1x6,2x41,1,2x19,1,2x2,1,2x31,1,2x9,1,br,0x46,14x7,1x13,2x15,1,0x5,1,0x16,39,0x134,1x2,0x9,1,0x8,1,br,0x46,14x6,1x9,0x4,10,0x15,1,0x5,1,0x16,39,0x134,1x2,br,0x46,14x5,1x10,0x4,10,0x15,1,0x5,1,0x16,39,0x134,1x2,0x18,1,br,0x46,14x4,1x11,14x4,1,0x15,1,0x5,1,0x16,39,0x134,1x2,0x17,27,br,0x46,14x3,1x12,0x4,1,0x15,1,0x5,1,0x16,39,0x134,1x2,0x17,27,1,br,0x46,14x2,1x13,0x4,1,0x15,1,0x5,1,0x16,39,0x126,16x5,1x5,0x17,27,br,0x46,14,1x14,0x12,1,0x7,1,0x5,1,0x16,39,0x126,16x5,1x5,0x17,27,1,br,0x46,1x14,0x13,1,0x7,1,0x5,1,0x16,39,0x126,16x5,1x5,0x17,27,br,0x46,1x13,0x14,1,0x7,1,0x5,1,0x16,39,0x126,16x5,1x5,0x12,1,0x5,1,br,0x46,1x12,2x15,1,0x7,1,0x5,1,0x16,39,0x126,16x5,1x5,0x18,1,br,0x81,1,0x5,1,0x16,39,0x126,16x5,15,1x4,0x18,1,br,0x81,1,0x5,1,0x16,39,0x126,16x5,15,1x4,0x18,1,br,0x54,1,0x26,1,0x5,1,0x16,39,0x115,1,0x10,16x5,15,1x4,0x18,1,br,0x46,1x2,0x6,1,0x5,1,0x9,1,0x10,1,0x5,1,0x16,39,0x115,1,0x10,16x5,1x5,0x12,14,0x5,1,br,0x46,1x2,0x6,1,2x5,1,2x9,1,0x10,1,0x5,1,0x16,39,0x115,1,0x10,16x5,1x5,0x11,16,1,0x5,1,br,0x46,1x2,0x6,1,0x15,1,0x10,1,0x5,1,0x16,39,0x115,1,0x10,16x5,1x5,0x12,14,0x5,1,br,0x46,1x2,0x6,1,0x15,1,0x10,1,0x5,1,0x16,39,0x126,16x5,1x5,0x6,1,0x5,14,0x5,1,br,0x46,1x2,0x6,1,0x15,1,0x16,1,0x16,39,0x126,16x5,1x5,0x12,14,0x4,27,1,br,0x46,1x2,0x6,1,0x15,1,0x16,1,0x16,39,0x134,1x2,0x12,1,0x4,27,1,br,0x46,1x2,0x6,1,0x15,1,0x16,1,0x16,39,0x134,1x2,0x12,14,0x4,27,1,br,0x46,1x2,0x6,1,0x15,1,0x16,1,0x16,39,0x134,1x2,0x17,27,1,br,0x46,1x2,0x6,1,0x15,1,0x16,1,0x16,39,0x134,1x2,0x18,1,br,0x46,1x2,0x6,1,0x15,1,2x16,1,0x16,39,0x134,1x2,0x18,1,br,0x46,1x3,0x4,1x2,0x49,39,0x135,1,0x18,1,br,0x46,1x3,0x4,1x2,0x49,39,0x154,1,br,0x46,1x3,0x4,1,0x50,39,0x151,15x3,1,br,0x46,1x3,0x4,1,0x50,39,0x151,15x3,1,br,0x46,1x3,0x4,1,0x33,13,0x16,39,0x100,12,0x53,1,br,0x48,1,0x4,1,0x33,1,0x16,39,0x100,1,0x53,1,br,0x48,1,0x4,1,0x33,1,0x16,39,0x100,1,0x53,1,br,0x48,1,0x4,1,0x33,1,0x16,39,0x100,1,0x53,1,br,0x48,1,0x4,1,0x33,1,0x16,39,0x100,1,0x53,1,br,0x48,1,0x4,1,0x33,1,0x16,39,0x100,1,br,0x48,1,0x4,1,0x33,1,0x16,39,br,0x48,1x2,0x3,1,0x33,1,0x16,39,br,0x48,1x2,0x3,1,0x33,1,0x16,39,br,0x48,1x2,0x3,1,0x50,39,br,0x48,1x2,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x49,1,0x3,1,0x50,39,br,0x51,1,0,1,0x50,39,br,0x51,1,0,1,0x50,39,br,0x51,1,0,1x2,0x49,39,br,0x51,1,0x2,1,0x32,1,0x16,39,br,0x51,1,0x2,1,0x32,1,0x16,39,br,0x51,1,0x2,1,0x32,1,0x16,39,br,0x51,1,0x2,1,0x32,1,0x16,39,br,0x51,1,0x2,1,0x32,1,0x16,39,br,0x51,1,0x2,1,0x13,1,0x18,1,0x16,39,br,0x51,1,0x2,1,0x13,1,0x18,1,0x16,39,br,0x51,1,0x2,1,0x13,1,0x18,1,0x16,39,br,0x54,1,0x13,1,0x18,1,0x16,39,br,0x54,1,0x11,1x5,0x16,15,0x16,39,br,0x46,1,0x7,1,0x12,1x3,0x34,39,br,0x46,1,0x7,1,0x13,1,0x35,39,0x154,1,br,0x46,1,0x6,1x2,0x49,39,0x154,1,br,0x46,1x5,0x2,1x2,0x49,39,0x154,1,br,0x46,1,0x3,1,0x2,1x2,0x49,39,0x154,1,br,0x46,1,0x3,1,0x3,1,0x49,39,0x154,1,br,0x46,1,0x3,1,0x3,1,0x49,39,0x153,18,1,br,0x50,1,0x3,1,0x49,39,0x154,1,br,0x50,1,0x3,1,0x49,39,0x154,1,br,0x54,1,0x49,39,0x154,1,br,0x47,1,0x6,1,0x49,39,0x154,1,br,0x47,1,0x6,1,0x49,39,0x154,1,br,0x47,1,0x4,1x3,2x3,1x2,0x44,39,0x154,1,br,0x47,1,0x4,1,0x6,1,0x44,39,0x143,1x12,br,0x44,1x2,2,1,0x4,1,0x6,1,0x44,39,0x154,1,br,0x44,1x4,0x4,1,0x6,1,0x44,39,0x154,1,br,0x44,1,0x5,1x3,0x5,1x2,0x44,39,0x154,1,br,0x44,1,0x14,1,0x44,39,0x154,1,br,0x44,1,0x14,1,0x44,39,0x154,1,br,0x44,1,0x14,1,0x44,39,0x154,1,br,0x44,1,0x13,1x2,0x44,39,0x154,1,br,0x44,1,0x14,1,0x44,39,0x154,10,br,0x44,1,0x14,1,0x44,39,0x154,10,br,0x44,1,0x14,1,0x44,39,0x154,10,br,0x44,1,0x13,1x2,0x44,39,0x154,10,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x13,1x2,0x44,39,br,0x44,1,0x8,1,0x5,1,0x44,39,br,0x44,1,0x8,1,0x5,1,0x44,39,br,0x44,1,0x8,1,0x5,1,0x44,39,br,0x44,1,0x13,1x2,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x13,1x2,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0,1x2,0x11,1,0x44,39,br,0x44,1,0x14,1,0x44,39,br,0x44,1,0x13,1x2,0x36,14,0x7,39,br,0x44,1,0x14,1,0x35,14x2,0x7,39,br,0x44,1,0x14,1,0x34,14x2,0x8,39,br,0x44,1,0x14,1,0x33,14x2,0x9,39,br,0x44,1,0x13,1x2,0x32,14x2,0x10,39,br,0x44,1,0x14,1,0x31,14x2,0x11,39,br,0x44,1,0x14,1,0x30,14x2,0x12,39,br,0x44,1,0x14,1,0x29,14x2,0x13,39,br,0x44,1,0x13,1x2,0x28,14x2,0x14,39,br,0x44,1,0x14,1,0x27,1,14,0x15,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x13,1x2,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x13,1x2,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x13,1x2,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,0x16,39,br,0x44,1,0x14,1,0x27,1,2x4,1,0x11,39,br,0x44,1,0x13,1x2,0x32,1,0x11,39,br,0x44,1x3,0x12,1,0x32,1,0x11,39,br,0x44,1x2,0x4,1x2,0x7,1,0x32,1,0x11,39,br,0x44,1x2,0x2,1x4,0x6,1x2,0x32,1,0x11,39,br,0x44,1x6,0x9,1,0x32,1,0x11,39,br,0x44,1,0,1x4,0x9,1,0x32,1,0x11,39,br,0x44,1,0x13,1x2,0x32,1,0x11,39,br,0x44,1,0x14,1,0x32,1,0x11,39,br,0x44,1,0x14,1,0x32,1,0x11,39,br,0x44,1,0x13,1x2,0x32,1,0x11,39,br,0x44,1,0x14,1,0x32,1,br,0x44,1,0x14,1,0x32,1,br,0x44,1,0x13,1x2,0x32,1,br,0x44,1,0x14,1,0x32,1x4,br,0x44,1,0x14,1,0x35,1,0x26,39,br,0x44,1,0x13,1x2,0x35,1,0x26,39,br,0x44,1,0x2,1,0x11,1,0x35,1,0x26,39,br,0x44,1x5,0x10,1,2x26,1,0,9,0,9,0,9,0,9,1,0x26,39,br,0x44,1,0x2,1,0x10,1x2,0x26,1,0x8,1,0x26,39,br,0x44,1,0x14,1,0x26,1,0x8,1,0x26,39,br,0x44,1,0x14,1,0x26,1,0,8,0,8,0,8,0,8,1,0x26,39,br,0x44,1,0x13,1x2,0x26,1,0x8,1,0x26,39,br,0x44,1,0x14,1,0x26,1,0x8,1,0x26,39,br,0x44,1,0x13,1x2,0x26,1,0,14,0,14,0,14,0,14,1,0x26,39,br,0x44,1,0x14,1,0x35,1x3,0x24,39,br,0x44,1,0x13,1x2,0x36,14,1x2,0x23,39,br,0x44,1,0x14,1,0x36,14x2,1x2,0x22,39,br,0x44,1,0x13,1x2,0x36,14x3,1x2,0x21,39,br,0x44,1,0x14,1,0x36,14x4,1x2,0x20,39,br,0x44,1,0x13,1x2,0x36,14x5,1x2,0x19,39,br,0x44,1,0x14,1,0x36,14x6,1x2,0x18,39,br,0x44,1,0x13,1x2,0x36,14x7,1x6,0x13,39,br,0x44,1,0x14,1,0x36,14x8,0x4,14,0x13,39,br,0x44,1,0x13,1x2,0x36,14x8,0x4,14,0x13,39,br,0x44,1,0x14,1,0x36,14x7,1,0x4,14,0x13,39,br,0x44,1,0x13,1x2,0x36,14x6,1x2,0x4,14,0x13,39,br,0x44,1,0x14,1,0x36,14x5,1x2,0x5,14,0x13,39,br,0x44,1x2,0x12,1x2,0x36,14x4,1x2,0x6,14,0x13,39,br,0x44,1x3,0x12,1,0x36,14x3,1x2,0x7,14,0x13,39,br,0x44,1x4,0x10,1x2,0x36,14x2,1x2,0x8,14,0x13,39,br,0x44,1x5,0x10,1,0x36,14,1x2,0x9,14,0x13,39,br,0x44,1x6,0x9,1,2x35,1x3,0x10,14,0x13,39,br,0x44,1x7,0x8,1,0x48,14,0x13,39,br,0x44,1x6,0x9,1,0x48,14,0x13,39,br,0x44,1x5,0x9,1x2,0x48,14,0x13,39,br,0x44,1x4,0x11,1,0x48,14,0x13,39,br,0x44,1x3,0x12,1,0x48,14,0x13,39,br,0x44,1x2,0x13,1,0x48,14,0x13,39,br,0x35,2x9,1,0x9,1,0x4,1,0x48,14,0x13,39,br,0x54,1,2x4,1,0x62,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x43,14,0x4,14x2,0x17,39,br,0x54,1,0x43,14,0x4,14x2,0x17,39,br,0x54,1,0x43,14,0x4,14x2,0x17,39,br,0x54,1,0x43,14,0x4,14x2,0x17,39,br,0x54,1,0x43,14,0x4,14x2,0x17,39,br,0x54,1,0x43,14x7,0x17,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,2x23,0x27,14,0x16,39,br,0x54,1,0x19,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x74,39,0x30,14,0x16,39,br,0x54,1,2x23,0x27,14,0x16,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x54,1,0x67,39,br,0x49,42,0x4,1,0x67,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,0x50,14,0x16,39,br,0x54,1,2x2,1,2x23,0x24,14,0x16,39,br,0x57,1,0x64,39,br,0x57,1,0x64,39,br,0x57,1,0x64,39,br,0x57,1,0x64,39,br,0x57,1,0x64,39,br,0x57,1,0x64,39,br,0x57,1,2x23,0x41,39,br,0x74,39,0x47,39,br,0x57,14,0x16,39,0x24,14,0x22,39,br,0x42,28,14x15,0x16,39,0x24,14,0x22,39,br,0x42,28,0x13,14x2,0x16,39,0x24,14x2,0x6,14x2,0x13,39,br,0x42,28,0x12,14x3,0x16,39,0x24,14x2,0x3,14x5,0x13,39,br,0x42,28,0x12,14x2,0x17,39,0x24,14x2,0x2,14x6,0x13,39,br,0x42,28,0x12,14,0x18,39,0x24,14x2,0x2,14x6,0x13,39,br,0x42,28,0x12,14,0x18,39,0x24,14x2,0x2,14x6,0x13,39,br,0x42,28,0x12,14,0x18,39,0x24,14x10,0x13,39,br,0x42,28,0x7,27,0x4,14,0x18,39,0x24,14x4,0,14x5,0x13,39,br,0x42,28,0x7,27,0x4,14,0x18,39,0x25,14x3,0,14x5,0x13,39,br,0x42,28,0x6,27x2,0x4,14,0x18,39,0x26,14x2,0,14x5,0x13,39,br,0x42,28,0x7,27,0x4,14,0x18,39,0x27,14x7,0x13,39,br,0x42,28,0x7,27,0x4,14,0x18,39,0x28,14x6,0x13,39,br,0x42,28,0x12,14,0x18,39,0x29,14x5,0x13,39,br,0x42,28,0x12,14,0x18,39,0x30,14x4,0x13,39,br,0x42,28,0x12,14,0x18,39,0x31,14x3,0x13,39,br,0x42,28,0x12,14,0x18,39,0x32,14x2,0x13,39,br,0x42,28,0x12,14,0x18,39,0x33,14,0x13,39,br,0x42,28,0x12,14,0x18,39,0x33,14,0x13,39,br,0x42,28,0x12,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x52,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,14,0x18,39,0x33,14,0x13,39,br,0x55,1,0x18,39,0x33,14,0x13,39,br,0x55,1,0x18,39,0x33,14,0x13,39,br,0x55,1,0x18,39,0x33,14,0x13,39,br,0x55,1,0x18,39,0x33,14,0x13,39,br,0x55,1,0x18,39,0x33,1,0x13,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,0x18,39,0x47,39,br,0x55,1,2x13,1,0x4,39,0x47,39,br,0x69,1,0x4,39,0x47,39,br,0x69,1,0x4,39,0x47,39,br,0x52,1,2x12,1,0x3,1,0x4,39,0x47,39,br,0x52,1,0x12,1,0x3,1,0x4,39,0x47,39,br,0x52,1,0x12,1,0x3,1,2x11,1,0x40,39,br,0x52,1,0x12,1,0x15,1,0x40,39,br,0x52,1,0x12,1,0x15,1,0x40,39,br,0x52,1,0x12,1,0x3,1,0x52,39,br,0x52,1,0x12,11,0x3,1,0x52,39,br,0x52,1,0x12,1,0x3,1,0x52,39,br,0x52,1,0x12,1,0x3,1,0x52,39,br,0x52,1,0x11,1x2,0x3,1,0x52,39,br,0x52,1,0x10,1x2,0x4,1,0x52,39,br,0x52,1,0x9,1x2,0x5,1,0x52,39,br,0x52,1,0x8,1x2,0x6,1,0x52,39,br,0x52,1,0x7,1x2,0x7,1,0x52,39,br,0x52,1,0x6,1x2,0x8,1,0x52,39,br,0x49,25x3,1,0x5,1x2,0x9,1,0x52,39,br,0x48,25x4,1,0x4,1x8,0x4,1,0x52,39,br,0x47,25x5,1,0x4,1x2,0x5,1x2,2x3,1,0x52,39,br,0x46,25x6,1,0x4,1,0x6,11,1,0x3,1,0x52,39,br,0x44,25x8,1,0x4,1,0x6,1x2,0x3,1,0x52,39,br,0x43,25x9,1,0,26,0x2,1,0x6,1x2,0x3,1,0x52,39,br,0x43,25x9,1,0x4,1,0x6,1x2,0x3,1,0x52,39,br,0x43,25x9,1,0x4,1,0x6,10,1,0x3,1,0x52,39,br,0x44,25x8,1,0x4,1x2,0x5,1x2,2x3,1,0x52,39,br,0x52,1,0x4,1x8,0x4,1,0x52,39,br,0x52,1,0x5,1x2,0x9,1,0x52,39,br,0x52,1,0x6,1x2,0x8,1,0x52,39,br,0x52,1,0x7,1x2,0x7,1,0x52,39,br,0x52,1,0x8,1x2,0x6,1,0x52,39,br,0x52,1,0x9,1x2,0x5,1,0x52,39,br,0x52,1,0x10,1x2,0x4,1,0x11,1x33,0x8,39,br,0x52,1,0x11,1x2,0x3,1,0x11,1,0x40,39,br,0x52,1,0x12,1,0x3,1,0x11,1,0x40,39,br,0x52,1,0x12,1x2,0x2,1,0x11,1,0x40,39,br,0x52,1,0x13,1,2x2,1,0x11,1,0x40,39,br,0x52,1,0x16,1,0x11,1,0x40,39,br,0x52,1,0x5,1,0x10,1,0x11,1,0x40,39,br,0x52,1x2,2x4,1,0x10,1,0x10,1x2,0x40,39,br,0x53,1,0x4,1,0x10,1,0x11,1,0x40,39,br,0x53,1,0x4,1,0x10,1,0x11,1,0x40,39,br,0x53,1,0x4,1,0x10,1,0x11,1,0x40,39,br,0x53,1,0x4,1,0x10,1,0x11,1,br,0x53,1,0x4,1,0x10,1,0x11,1,br,0x53,1,0x4,1,0x10,1,0x4,13,0x6,12,br,0x53,1,0x4,1,0x10,1,0x4,13,0x6,12,br,0x53,1,0x4,1,0x10,1,0x4,13,0x6,12,br,0x53,1,0x4,1,0x10,1,0x4,13,0x6,12,br,0x53,1,0x4,1,0x10,1,0x4,13,0x6,12,br,0x53,1,0x4,1,0x10,1,0x11,1,br,0x53,1,0x4,1,0x10,1,0x11,1,br,0x53,1,0x4,1,0x10,1,0x11,1,br,0x53,1,0x4,1x2,0x9,1,0x11,1,br,0x53,1,0x5,1,0x9,1,0x11,1,br,0x53,1,0x5,1,0x9,1,0x10,1x2,br,0x53,1,0x5,1,0x9,1,2x4,1,0x6,1,br,0x53,1,0x5,1,0x14,1,0x6,1,br,0x53,1,0x5,1,0x14,1,0x6,1,br,0x53,1,0x5,1,0x14,1,0x6,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,0x5,1,0x21,1,br,0x53,1,2x5,1,2x21,1,br,0x53,15,0x16,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39,br,0x70,39x3,br,0x72,39,br,0x72,39,br,0x72,39,br,0x53,1,2x25,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,2x21,br,0x70,39,br,0x53,1,2x21,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,2x21,br,0x70,39,br,0x53,1,2x21,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1,br,0x53,1x2,2x20,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,2x20,br,0x54,1,0x15,39,br,0x70,39,br,0x54,1,2x20,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,2x20,br,0x70,39,br,0x54,1,0x15,39,br,0x54,1,2x20,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,br,0x54,1,0x119,1,br,0x54,1,0x2,1x8,0x109,1,0x64,1,0x19,1,br,0x54,1,2x2,1,0x6,1,2x109,1,2x64,1,2x19,1,br,0x54,1,0x2,1,0x6,1,0x17,14,0x12,8,0x78,1,0x64,1,0x18,1,11,br,0x54,1,0x2,1,0x5,1,13,0x17,14,0x10,16,12,8,0x78,1,br,0x54,1,0x2,1,0x6,1,0x17,14x13,8,br,0x54,1,0x2,1,0x6,1,0x30,8,br,0x54,1,0x2,1,0x6,1,0x30,8,0x28,145,br,0x54,1,0x2,1,0x6,11,0x30,8,0x95,1,2x14,1,br,0x54,1,0x2,1,0x6,11,0x30,8,0x94,15,1,0x13,15,1,br,0x54,1,0x2,1,0x6,1,0x30,8,0x25,43,0,43,0,43,0x65,1,0x13,15,1,br,0x54,1,0x2,1,0x6,1,0x30,8,0x95,1,0x13,15,1,br,0x54,1,0x2,1,0x6,1,0x30,8,0x95,1,0x13,15,1,0x31,1,br,0x54,1,0x2,1,14x6,1,0x30,8,0x95,1,0x13,15,1,0x31,1,br,0x54,1,2x2,1,0x6,1,0x30,8,0x95,1,0x2,1,2x7,0x36,1,0x10,1,br,0x54,1,0x2,1,0x6,1,0x30,8,0x95,1,0x2,1,0x43,1,2x10,1,br,0x54,1,0x40,8,0x95,1,0x2,1,0x43,1,0x10,1,br,0x54,1,0x40,8,0x12,15,0x82,1,0x2,1,0x54,1,br,0x54,1,0x40,8,0x12,15,0x26,15,0x55,1,0x2,1,0x54,1,br,0x54,1,0x40,8,0x25,15,0x13,15,0x31,1,0x23,1,0x2,1,0x54,1,br,0x46,27,0x7,1,0x21,1,0x9,1,0x8,8,0x25,15,0x45,1,0x23,1,0x2,1,0x54,1,2x9,1,br,0x46,27,0x7,1,0x21,1,0x9,1,0x8,8,0x71,1,0x23,1,0x2,1,0x54,1,0x9,1,br,0x45,27x2,0x7,1,0x21,1,0x9,1,0x8,8,0x42,9,0x28,1,0x23,1,0x2,1x2,0x63,1,br,0x46,27,0x7,1,0x21,1,0x9,1,0x8,8,0x42,9,0x52,1,0x3,1,0x20,15,0x42,1,br,0x46,27,0x7,1,0x21,1,0x9,1,0x8,8,0x42,9,0x52,1,0x3,1,0x20,15,0x42,1,br,0x54,1,0x21,15,0x9,1,0x8,8,0x42,9,0x56,1,0x20,15,0x42,1,br,0x46,27,0x7,1,0x21,1,0x9,1,0x8,8,0x99,1,0x58,1,0x4,1,br,0x54,1x5,0x36,8,0x146,1,0x11,1,2x4,1,br,0x54,1,0x3,1,0x36,8,0x146,1,0x11,1,0x4,1,br,0x54,1,0x3,1,0x36,8,0x66,1,0x79,1,0x16,1,br,0x53,1x2,0x2,17,13,0x36,8,0x146,12,0x16,1,br,0x54,1,0x3,1,0x36,8,0x57,15,0x105,1,br,0x54,1,0x3,1,0x36,8,0x57,15,0x105,1,br,0x54,1x5,0x36,8,0x57,15,0x77,1,0x27,1,br,0x54,1,0x40,8,0x133,1x3,0x27,1,br,0x54,1,0x40,8,0x133,1,0x29,1,br,0x54,1,0x40,8,0x133,1,0x29,1,br,0x54,1,0x40,8,0x133,1,0x29,1,br,0x54,1,0x40,8,0x61,1,0x62,1,0x38,1,br,0x54,1,0x40,8,0x61,1,0x62,1,0x38,1,br,0x54,1,0x10,1,0x29,8,0x61,1,0x101,1,br,0x54,1,2x10,1,0x29,8,0x163,1";
lvl4_txt = "br,br,br,0x37,1x3,br,0x37,1,3,1,br,0x37,1,3,1,br,0x31,27,0x5,1x3,br,0x31,27,br,0x8,1x3,0x84,1x10,br,0x10,1,0x26,1x3,0x55,1,0x8,1,br,0x9,1x5,0x23,1,3,1,0x55,1,0x8,1,br,0x37,1,3,1,0x55,1,0x7,1,10,br,0x37,1x3,0x55,1,0x7,1x2,br,0x45,1,0x49,1,0x7,1x2,br,0x45,1x2,0x43,1,0x4,1,2x5,0x2,1x2,br,0x31,25x6,1x3,2x3,1x5,2x42,1,0x4,1,0x8,1,br,0x30,25x7,1,3,1,0x5,1x2,0x43,1,0x4,1,0x8,1,br,0x30,25x7,1,3,1,0x5,1,0x49,1,0x8,1,br,0x30,25x7,1x3,0x55,1,0x8,1,br,0x49,44,0x45,1,0x7,1x2,br,0x95,1,0x7,1x2,br,0x33,24,4x3,1x3,0x54,1x2,0x5,1x4,br,0x34,4x3,1,3,1,0x48,1,2x3,0x3,1,0x5,1x4,br,0x37,1,3,1,0x45,1x4,2x3,0x3,1,0x7,1x2,br,0x37,1x3,0x39,1x10,2x3,0x3,1,0x6,1x3,br,0x29,27,0x43,1x10,0x2,1x4,2x3,0x3,1,0x6,1x3,br,0x67,1x9,0,1x4,0,1,0x5,1,2x3,0x3,1,0x6,1x3,br,0x37,1x3,0x20,15,1x10,0,1,0x4,1x3,0x2,1x4,0,1x2,2x3,0x2,17,1,0x6,1x3,br,0x37,1,3,1,0x20,15,1x3,0x3,1x22,2x6,1,0x7,1x2,br,0x37,1,3,1,0x20,15,1x3,0x31,1,0x7,1x2,br,0x37,1x3,0x20,15,1x2,0x32,1,0x7,1x2,br,0x60,15,1x2,0x32,1,0x7,1x2,br,0x50,15,0x9,15,1,0x33,1,0x8,1,br,0x50,15,0x9,15,1,0x33,1,0x8,1,br,0x37,1x3,2x55,1,0x8,1,2x5,br,0x37,1,3,1,0x55,1,0x8,1,br,0x37,1,3,1,0x55,1,0x7,1x2,br,0x35,42,0,1,3,1,0x55,1,0x7,1,br,0x37,1,3,1,0x26,1,0,1x4,0,1x3,0x17,1x3,br,0x37,1,3,1,br,0x37,1,3,1,br,0x37,1,3,1,br,0x37,1,3,1,br,0x37,1,3,1x2,br,0x37,1,0,3,1,br,0x37,1x2,3,1x2,0x64,1,br,0x38,1,0,3,1,0x64,1x2,2x2,br,0x38,1x2,3,1x2,0x64,1,br,0x39,1,0,3,1x2,0x63,1,br,0x39,1x2,0,3,1,0x63,1,br,0x40,1x2,3,1x2,0x33,1,0,1x4,0,1x2,0x20,1,br,0x41,1,0,3,1x2,0x61,1,br,0x41,1x2,0,3,1,0x20,1,0x40,1,br,0x42,1x2,3,1x2,0x16,1,0x2,1,0x40,1,br,0x43,1,0,3,1x3,2x14,1,0x2,1,0x40,1,br,0x43,1x2,0x2,3,1,0x14,1,0x2,1,0x40,1,br,0x32,27,0x11,1x2,0x2,1,0x14,1,0x2,1,0x40,1,br,0x32,27,0x12,1,0,3,1,0x14,1,0x43,1,br,0x31,27x2,0x12,1,0,3,1,0x14,1,0x2,1,0x40,1,br,0x32,27,0x12,1,0,3,1,0x14,1,0x2,1,0x40,1,br,0x45,1,0,3,1,0x14,1,0x2,1,0x40,1,br,0x45,1,0,3,1,0x14,1,0x2,1,0x40,1,br,0x45,1,0,3,1,0x14,1,0x43,1,br,0x45,1,0,3,1,0x14,1,0x2,1,0x40,1,br,0x45,1,2x2,1x5,0x10,1,0x2,1,0x40,1,br,0x51,3,1,0x10,1,0x2,1,0x36,1,0,1x3,br,0x47,3,1,0x2,3,1,0x10,1,0x2,1,0x36,1,0,1x3,br,0x47,3,1,0x3,1,0x10,1,0x2,1,0x36,1,0,1x3,br,0x47,3,1,0x2,3,1x2,0x9,1,0x35,1,0x3,1,0x3,1,br,0x22,2x24,1x3,0x3,3,1,0x9,1,0x35,1,0x3,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x32,1,0x3,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x32,1,0x3,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x32,1,0x3,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x36,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x39,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x39,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x39,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x26,1,0x9,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x26,1,0x9,1,0x3,1,br,0x48,1,0x3,3,1,0x9,1,0x2,1,0x26,1,0x9,1,0x3,1,br,0x48,1,0x3,1x2,0x9,1,0x2,1,0x26,1,0x9,1,0x3,1,br,0x48,1,0x3,1,0x10,1,0x29,1,0x9,1,0x3,1,br,0x52,1,0x10,1,0x29,1,0x5,39,0x3,1,0x3,1,br,0x52,1,0x10,1,0x35,39,0x3,1,0x3,1,br,0x52,1,0x10,1,0x2,1,0x32,39,0x3,1,0x3,1,br,0x52,1,2x10,1,0x2,1,0x32,39,0x3,1,0x3,1,br,0x52,1,0x10,1,0x35,39,36,38x2,1,0x3,1,br,0x52,1,0x10,1,0x26,1x2,0x6,33,35,0,38x2,1,0x3,1,br,0x52,1,0x10,1,0x26,1,0x5,31,32,33,35x2,0x2,1,0x3,1,br,0x52,1,0x10,1,0x26,1,0x5,30,32,33,35x2,0x6,1,br,0x52,1,2x3,1,0x6,1,0x26,1,0x5,30,32,33,34x2,0x5,1x2,br,0x56,1,0x6,1,0x2,13,2x23,1,0x5,30,32,33,34x2,0x4,1,12,10,br,0x56,1,0x6,1,0x2,1,0x23,1,0x5,30,32,33,34x2,0x5,1x2,br,0x56,1,0x6,1,0x2,1,0x23,1,0x5,30,32,33,35x2,0x6,1,br,0x56,1,0x6,1,0x2,1,0x29,31,32,33,35x2,0x2,1,0x3,1,br,0x56,1,0x6,1,0x2,1,0x26,1,0x4,33,35,0,38x2,1,0x3,1,br,0x56,1,0x6,1,0x2,1,0x26,1,0x5,39,37,38x2,1,0x3,1,br,0x56,1,2x6,1x4,0x18,1,2x7,1,0x5,39,0x3,1,0x3,1,br,0x56,1,0x42,39,0x3,1,0x3,1,br,0x56,1,0x42,39,0x3,1,0x3,1,br,0x56,1,0x42,39,0x3,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x55,1x2,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1,br,0x56,1,0x46,1,0x3,1x2,br,0x56,1,0x46,1,0x4,1,br,0x56,1,0x46,1,0x4,1,br,0x56,1,0x51,1,br,0x56,1,0x51,1,br,0x56,1,0x51,1,br,0x56,1,0x46,1,0x4,1,br,0x56,1,0x46,1,0x4,1,br,0x56,1,0x46,1,0x3,1x2,br,0x56,1,0x46,1,0x3,1,br,0x28,1,0x27,1,0x46,1,0x3,1,br,0x28,1,0x27,1,0x46,1,0x3,1,br,0x28,1,0x26,1x2,0x46,1,0x3,1,br,0x28,1,0x13,1,0x13,1,0x11,1,0x34,1,0x3,1,br,0x28,1,0x9,1,0x3,1,2x12,0,1,2x11,1,2x22,1,2x11,1,0x3,1,br,0x28,1,0x9,1,0x3,1,0x13,1,0x11,1,0x22,1,0x11,1,0x3,1,br,0x28,1,2x9,1,2x3,1,0x13,1,0x11,10,0x22,1,0x11,1,0x3,1,br,0x42,1,0x13,1,0x11,1,0x22,10,0x5,1x7,0x3,1,br,0x42,1,0x13,1,0x34,1,0x5,1x4,10,1x2,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,1,0x5,1x7,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,1,0x11,1,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,11,0x11,10,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,11,0x11,1,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,11,0x11,1,0x2,41,1,br,0x42,1,0x13,1,0x19,10,0x14,1,0x11,1,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,1,0x11,1,0x3,1,br,0x42,1,0x13,1,0x19,10,0x14,1,0x11,11,0x3,1,br,0x42,1,0x13,1,2x19,1,0x14,11,0x11,1,0x3,1,br,0x42,1,0x33,1,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,10,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x14,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x7,1,0x6,11,0x11,11,0x3,1,br,0x42,1,0x33,1,0x7,1,0x6,11,0x11,11,0x3,1,br,0x39,14,0x2,1,2x21,1,0x11,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,2x4,1,0,1,2x2,1x2,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x14,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x5,1,0x8,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x5,1,0x8,11,0x10,1,11,0x2,41,1,br,0x61,39,0x2,1,0x11,1,0x5,1,0x8,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x14,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x14,11,0x10,1,11,0x3,1,br,0x61,39,0x2,1,0x11,1,0x14,11,2x3,1x2,0,1,2x3,1,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x6,1,0x4,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x11,11,0x14,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x10,1,0x3,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x10,1,0x3,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x10,1,0x3,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x39,14,0x21,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x53,41,0x7,39,0x2,1,0x6,1,0x4,11,0x6,1,0x7,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x6,1,0x7,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x6,1,0x7,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x6,1,0x4,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,1,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,1,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,1,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,1,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,1,0x3,1,br,0x21,2x11,1,0x28,39,0x2,1,0x11,11,0x14,1,0x11,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x11,11,0x14,1,0x11,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x9,1,0,11,0x14,1,0x11,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x9,1,0,11,0x14,1,0x11,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x32,1,0x4,1,0x23,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x32,1,0x4,1,0x23,39,0x2,1,0x9,1,0,11,0x14,11,0x8,1,0x2,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x32,1,0x28,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x21,2x11,1x5,0x24,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1x9,0x3,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x9,1,0,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1x9,0x3,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x9,1,0,11,0x14,11,0x7,1,0x3,11,0x3,1,br,0x61,39,0x2,1,0x9,1,0,11,0x14,11,0x7,1,0x3,11,0x3,1,br,0x61,39,0x2,1,0x9,1,0,11,0x14,11,0x7,1,0x3,11,0x3,1,br,0x61,39,0x2,1,0x3,1x7,0,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x14,11,0x11,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x14,11,0x4,1,0x6,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x10,1,0x3,11,0x4,1,0x6,11,0x3,1,br,0x61,39,0x2,1,0x3,1,0x7,11,0x10,1,0x3,11,0x4,1,0x6,11,0x3,1,br,0x40,10,0x20,39,0x2,1,0x3,1,0x7,11,0x10,1,0x3,11,0x4,1,0x6,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x4,1,2x6,11,0x3,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,14,11,0x2,1,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,14,11,0x2,1,br,0x40,11,0x20,39,0x2,1,0x11,11,0x14,11,0x11,14,11,0x2,11,br,0x61,39,0x2,1,0x11,11,0x14,11,0x11,14,11,0x2,1,br,0x61,39,0x2,1,0x11,11,0x5,1,2x8,11,2x9,11,2,1x5,br,0x61,39,0x2,1,0x11,11,0x5,1,0x18,11,br,0x61,39,0x2,1,0x11,11,0x5,1,0x18,11,br,0x61,39,0x2,1,0x11,11,0x5,1,0x18,11,br,0x61,39,0x2,1,0x11,11,0x5,1,0x18,11,br,0x61,39,0x2,1,0x11,11,0x5,1,0x18,11,br,0x61,39,0x2,1,0x11,1,0x5,1,0x6,1,2x11,11,br,0x61,39,0x2,1,0x11,1,0x5,1,0x6,1,br,0x61,39,0x2,1,0x11,1,0x5,1,0x6,1,0x14,11,br,0x61,39,0x2,1,0x11,1,0x5,1,0x6,1,0x14,11,br,0x61,39,0x2,1,0x11,1,0x12,1,0x14,11,br,0x61,39,0x2,1,0x11,1,0x12,1,0x14,11,br,0x61,39,0x2,1,0x11,1,0x12,1,0x14,11,br,0x61,39,0x2,1,0x11,11,0x12,1,br,0x37,1,0x13,41,0x9,39,0x2,1,0x11,11,0x12,1,br,0x61,39,0x2,1,0x11,11,0x12,1,br,0x61,39,0x2,1,0x11,11,2x12,1,br,0x61,39,0x2,1,0x11,11,br,0x61,39,0x2,1,0x7,1,0x3,11,br,0x61,39,0x2,1,0x7,1,0x3,11,br,0x61,39,0x2,1,0x7,1,0x3,11,br,0x61,39,0x2,1,0x11,11,0x28,18,br,0x61,39,0x2,1,0x11,11,br,0x61,39,0x2,1,0x11,11,br,0x61,39,0x2,1,0x11,11,br,0x61,39,0x2,1,0x11,11,br,0x61,39,0x2,1x2,0,1x2,0x7,11,br,0x61,39,0x2,1,0x3,1,0x7,11,br,0x61,39,0x2,1,0x3,1,0x7,11,br,0x61,39,0x2,1,0x3,11,0x7,11,br,0x61,39,0x2,1,0x3,1,0x7,11,br,0x34,1,0x26,39,0x2,1,2x3,1,2x7,11,0x26,1,br,0x34,1,0x26,39,0x41,1,br,0x15,1x13,0x4,1x3,2x62,1,0x5,1,br,0x27,1,0x69,1,0x5,1,2x3,1,br,0x27,1,0x79,1,br,0x27,1,0x46,43,0x32,1,br,0x27,1,0x79,1,br,0x27,1,0x79,1,br,0x27,1,0x79,1,br,0x27,1,0x79";
lvl4_points = {x:136, y:295};
controlp = {x:50, y:25, cols:1, xpad:0, ypad:10, offset:0, dbltime:10};
inputs = new Array();
inputs.push({tag:"left", desc:"Move Left", kcode:37});
inputs.push({tag:"right", desc:"Move Right", kcode:39});
inputs.push({tag:"down", desc:"Crouch", kcode:40});
inputs.push({tag:"a", desc:"Dash", kcode:65});
inputs.push({tag:"s", desc:"Jump", kcode:83});
inputs.push({tag:"space", desc:"Pause", kcode:32});
inputs.push({tag:"caml", desc:"LEFT", kcode:37, dblclick:0});
inputs.push({tag:"camr", desc:"RIGHT", kcode:39, dblclick:0});
inputs.push({tag:"camu", desc:"UP", kcode:38, dblclick:0});
inputs.push({tag:"camd", desc:"DOWN", kcode:40, dblclick:0});
inputs.push({tag:"leftclick", desc:"Leftclick", kcode:1, dblclick:0});
inputs.push({tag:"middleclick", desc:"Middleclick", kcode:4, dblclick:0});
inputs.push({tag:"playtest", desc:"Shift", kcode:16, dblclick:0});
inputs.push({tag:"suitl", desc:"9", kcode:57, dblclick:0});
inputs.push({tag:"suitr", desc:"0", kcode:48, dblclick:0});
inputs.push({tag:"tracepoint", desc:"P", kcode:80, dblclick:0});
designercontrols = 10;
tilep = {w:8, h:8, zoom:300, sorting:"p"};
obradius = {r:400, l:400, u:300, d:70};
tlradius = {r:300, l:300, u:100, d:200};
saves = SharedObject.getLocal("lstmn3");
menup = {losses:0, wins:0, bon:"gotol1", bonx:0};
menubuttons = ["gotol1", "gotol2", "gotol3", "gotol4", "gotoreplays", "gotocontrols"];
missilep = [{speed:1, yspeed:1}, {speed:2, yspeed:1.5}, {speed:3, yspeed:2}];
crabp = [{jump:4, speed:0.5}, {jump:5, speed:1}, {jump:7, speed:2}];
snailp = [{speed:0.15}, {speed:0.3}, {speed:0.45}];
parasnailp = [{speed:0.15, dist:32}, {speed:0.3, dist:64}, {speed:0.45, dist:128}, {dist:Infinity}];
porcupinep = [{speed:0.25}, {speed:0.5}, {speed:0.75}];
armadillop = [{speed:0.25, ballspd:3}, {speed:0.5, ballspd:4}, {speed:0.75, ballspd:6}];
turtlep = [{speed:0.15}, {speed:0.3}, {speed:0.45}, [19, 13, 7]];
googump = [{speed:0.25}, {speed:0.5}, {speed:1}];
banzaimanp = [{jump:4, jres:4}, {jump:6, jres:4}, {jump:8, jres:4}];
camb = {u:1, d:1, l:1, r:1};
tilearea = {xMin:0, xMax:0, yMin:0, yMax:0};
physicsp = {gravity:0.5, slime:0.15, block:0.5, ytop:4, belt:0.75};
suits = ["", "blue", "red", "grey", "greentail", "green", "yellow", "white", "black", "brown", "crab"];
ppp = [0, {walk:2, dash:4, jump:3}, {walk:2, dash:4, jump:3}, {walk:3, dash:5, jump:3}, {walk:2, dash:1, jump:3}, {walk:4, dash:1, jump:4}, {walk:3, dash:5, jump:2}, {walk:2, dash:5, jump:2}, {walk:3, dash:4, jump:3}, {walk:2, dash:4, jump:2}, {walk:1, dash:1, jump:1}];
pausep = {volc:"", voly:0, ctrlon:-1};
clicker = new Object();
clicker.onMouseWheel = function (delta) {
clicks.spinner = ((delta > 0) ? 1 : -1);
};
Mouse.addListener(clicker);
var i = 0;
while (i < inputs.length) {
inputs[i].kstate = 0;
inputs[i].ktime = 0;
changetext(id, inputs[i].kcode);
i++;
}
defaultinputs = copyarr(inputs);
if (saves.data.controls != undefined) {
inputs = copyarr(saves.data.controls);
}
keylist = {c96:"Num0", c97:"Num1", c98:"Num2", c99:"Num3", c100:"Num4", c101:"Num5", c102:"Num6", c103:"Num7", c104:"Num8", c105:"Num9", c106:"Num*", c107:"Num+", c109:"Num-", c110:"Num.", c111:"Num/", c16:"Shift", c17:"Ctrl", c18:"Alt", c32:"SPACE", c37:"LEFT", c38:"UP", c39:"RIGHT", c40:"DOWN", c186:":", c187:"+", c189:"_", c191:"?", c192:"~", c219:"[", c220:"|", c221:"]", c222:"'"};
clicks = new Object();
var keylisten = new Object();
keylisten.onKeyDown = function () {
if (pausep.ctrlon != -1) {
newkey();
}
};
Key.addListener(keylisten);
var instruments = ["lead", "bass", "drums"];
drumsamples = ["kick", "snare", "snareroll", "hat1", "hat2", "tom1", "tom2", "crash1", "crash2", "cymbal1", "cymbal2", "snare", "clap", "cowbell"];
lastdrump = {rand:0, sample:0};
timer = 0;
var k = tiledata.length;
var i = 0;
while (i < k) {
tiledata[100 + i] = tiledata[i];
i++;
}
loadedlogtxt = "";
loadedlog = new Array();
superhexlist = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
superhexlist = superhexlist.split(",");
pallette = {suit:"", crab:1, snail:1, armadillo:1, porcupine:1, turtle:1, bullethead:1, bullettail:1, explosion:1};
psuit = ["", "lastman", "crab", "raccoon", "gecko", "gecko", "bee", "squid", "crow", "bear", "crab"];
crabpref = ["rbf", "bbf", "gbg", "wbp", "oby", "ggg"];
snailpref = ["bby", "oby", "wbp", "bbb", "gbg", "wbg"];
armadillopref = ["oby", "ggg", "rbf", "gbg", "bby", "wbp"];
porcupinepref = ["bbb", "bbf", "bby", "ggg", "oby", "rbf"];
turtlepref = ["ggg", "rbf", "bbf", "oby", "gbg", "wbg"];
explosionpref = ["wbp", "gbg", "oby", "wbg", "rbf", "bbf"];
bullettailpref = ["oby", "ggg", "wbp", "wbg", "rbf", "bbf"];
designing(0);
Frame 10
_root._quality = "HIGH";
this.nextFrame();
Instance of Symbol 13 MovieClip in Frame 10
on (press) {
getURL ("http://googumproduce.com/lastman3/", "_blank");
}
Frame 11
this.stop();
Frame 12
this.prevFrame();
Frame 16
_root._quality = "HIGH";
this.nextFrame();
Instance of Symbol 1043 MovieClip "gotomenu" in Frame 16
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Instance of Symbol 1043 MovieClip "defaultkeys" in Frame 16
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Frame 17
this.stop();
Frame 18
this.prevFrame();
Frame 23
_root._quality = "HIGH";
this.nextFrame();
Instance of Symbol 1043 MovieClip "gotomenu" in Frame 23
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Instance of Symbol 1043 MovieClip "loadreplay" in Frame 23
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Instance of Symbol 1043 MovieClip "loadclear" in Frame 23
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Instance of Symbol 1043 MovieClip "savecopy" in Frame 23
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
Frame 24
this.stop();
Frame 25
this.prevFrame();
Frame 30
function startobjectdesign() {
objectdesignp = {zoom:16, objon:1, acton:1, follow:""};
_root.tiles._xscale = _root.tiles._xscale * objectdesignp.zoom;
_root.tiles._yscale = _root.tiles._yscale * objectdesignp.zoom;
_root.tiles.gotoAndStop(1);
_root.tiles.mc.gotoAndStop(1);
setobjecton();
gettiletypes();
}
function addtiledata(which, ret) {
var _local2 = _root.tiles._currentframe;
var _local3 = ((_root.tiles.mc._currentframe == undefined) ? 1 : (_root.tiles.mc._currentframe));
if (tiledata[_local2] == undefined) {
tiledata[_local2] = new Array();
tiledata[_local2][0] = new Object();
}
if (tiledata[_local2][_local3] == undefined) {
tiledata[_local2][_local3] = {frame:_local3, u:0, d:0, l:0, r:0};
}
if (which == 0) {
tiledata[_local2][_local3].frame = _local3;
tiledata[_local2][_local3].u = ret.u;
tiledata[_local2][_local3].d = ret.d;
tiledata[_local2][_local3].l = ret.l;
tiledata[_local2][_local3].r = ret.r;
}
}
function tileplacement(u, d, l, r) {
var _local7 = 0;
while (_local7 < 2) {
var _local5 = 0;
while (_local5 < 2) {
var _local3 = 0;
while (_local3 < 2) {
var _local2 = 0;
while (_local2 < 2) {
var _local4 = ((("a" + _local7) + _local5) + _local3) + _local2;
var _local6 = ((_local4 == (((("a" + u) + d) + l) + r)) ? 2 : 1);
_root.connections[_local4].gotoAndStop(_local6);
_local2++;
}
_local3++;
}
_local5++;
}
_local7++;
}
var _local8 = {u:u, d:d, l:l, r:r};
addtiledata(0, _local8);
}
function settiletypes() {
var _local6 = _root.tiles._currentframe;
tiledata[_local6][0] = new Object();
var _local5 = _root.types.text;
_local5 = _local5.split(",");
var _local4 = 0;
while (_local4 < _local5.length) {
var _local3 = _local5[_local4].split(":");
var _local2 = ((_local3[1] == undefined) ? 1 : (_local3[1]));
_local2 = (isNaN(Number(_local2)) ? (_local2) : (Number(_local2)));
tiledata[_local6][0][_local3[0]] = _local2;
_local4++;
}
}
function gettiletypes() {
var _local3 = _root.tiles._currentframe;
var _local2 = "";
for (var _local4 in tiledata[_local3][0]) {
_local2 = _local2 + ((_local2 == "") ? "" : ",");
_local2 = _local2 + ((_local4 + ":") + tiledata[_local3][0][_local4]);
}
_root.types.text = _local2;
}
function setobjecton() {
if (_root.tiles._currentframe != objectdesignp.objon) {
objectdesignp.objon = _root.tiles._currentframe;
gettiletypes();
}
objectdesignp.objon = _root.tiles._currentframe;
objectdesignp.acton = ((_root.tiles.mc._currentframe == undefined) ? 1 : (_root.tiles.mc._currentframe));
if (tiledata[objectdesignp.objon] == undefined) {
tiledata[objectdesignp.objon] = new Array();
}
if (tiledata[objectdesignp.objon][objectdesignp.acton] == undefined) {
tiledata[objectdesignp.objon][objectdesignp.acton] = {xs:-7, xe:-5, ys:-2, ye:0};
}
if (tiledata[objectdesignp.objon][objectdesignp.acton].xs == undefined) {
tiledata[objectdesignp.objon][objectdesignp.acton].xs = 0;
tiledata[objectdesignp.objon][objectdesignp.acton].xe = 0;
tiledata[objectdesignp.objon][objectdesignp.acton].ys = 0;
tiledata[objectdesignp.objon][objectdesignp.acton].ye = 0;
}
setcrosshairs();
var _local3 = _root.tiles._currentframe;
var _local2 = ((_root.tiles.mc._currentframe == undefined) ? 1 : (_root.tiles.mc._currentframe));
tileplacement(tiledata[_local3][_local2].u, tiledata[_local3][_local2].d, tiledata[_local3][_local2].l, tiledata[_local3][_local2].r);
}
function usepreviouscrosshairs() {
var _local1 = objectdesignp.objon;
tiledata[_local1][objectdesignp.acton] = copyob(tiledata[_local1][objectdesignp.acton - 1]);
setcrosshairs();
}
function setcrosshairs() {
var _local3 = objectdesignp.objon;
var _local2 = objectdesignp.acton;
var _local5 = {x:tiledata[_local3][_local2].xs, y:tiledata[_local3][_local2].ys};
_root.tiles.localToGlobal(_local5);
var _local4 = {x:tiledata[_local3][_local2].xe, y:tiledata[_local3][_local2].ye};
_root.tiles.localToGlobal(_local4);
_root.crossa._x = _local5.x;
_root.crossa._y = _local5.y;
_root.crossb._x = _local4.x;
_root.crossb._y = _local4.y;
}
function crosshair() {
if (objectdesignp.follow != "") {
if (clicks.leftclick == 0) {
objectdesignp.follow = "";
makebox();
} else {
_root[objectdesignp.follow]._x = _root._xmouse;
_root[objectdesignp.follow]._y = _root._ymouse;
}
}
}
function makebox() {
var _local9 = ((_root.crossa._x < _root.crossb._x) ? (_root.crossa._x) : (_root.crossb._x));
var _local6 = ((_root.crossa._x > _root.crossb._x) ? (_root.crossa._x) : (_root.crossb._x));
var _local8 = ((_root.crossa._y < _root.crossb._y) ? (_root.crossa._y) : (_root.crossb._y));
var _local7 = ((_root.crossa._y > _root.crossb._y) ? (_root.crossa._y) : (_root.crossb._y));
var _local5 = {x:_local9, y:_local8};
_root.tiles.globalToLocal(_local5);
var _local4 = {x:_local6, y:_local7};
_root.tiles.globalToLocal(_local4);
var _local3 = objectdesignp.objon;
var _local2 = objectdesignp.acton;
tiledata[_local3][_local2].xs = Math.round(_local5.x);
tiledata[_local3][_local2].xe = Math.round(_local4.x);
tiledata[_local3][_local2].ys = Math.round(_local5.y);
tiledata[_local3][_local2].ye = Math.round(_local4.y);
}
startobjectdesign();
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
if (_root.tiles._currentframe == 1) {
_root.tiles.gotoAndStop(_root.tiles._totalframes);
} else {
_root.tiles.prevFrame();
}
_root.tiles.mc.gotoAndStop(1);
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
if (_root.tiles._currentframe == _root.tiles._totalframes) {
_root.tiles.gotoAndStop(1);
} else {
_root.tiles.nextFrame();
}
_root.tiles.mc.gotoAndStop(1);
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
if (_root.tiles.mc._currentframe == 1) {
_root.tiles.mc.gotoAndStop(_root.tiles.mc._totalframes);
} else {
_root.tiles.mc.prevFrame();
}
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
if (_root.tiles.mc._currentframe == _root.tiles.mc._totalframes) {
_root.tiles.mc.gotoAndStop(1);
} else {
_root.tiles.mc.nextFrame();
}
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
_root.settiletypes();
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
_root.frameon("designer");
}
Instance of Symbol 909 MovieClip [crosshair] "crossa" in Frame 30
on (press) {
_root.objectdesignp.follow = this._name;
}
Instance of Symbol 909 MovieClip [crosshair] "crossb" in Frame 30
on (press) {
_root.objectdesignp.follow = this._name;
}
Instance of Symbol 1104 MovieClip in Frame 30
on (press) {
_root.usepreviouscrosshairs();
}
Frame 39
function startobjectdesign() {
objectdesignp = {zoom:8, objon:1, acton:1, follow:""};
_root.char._xscale = _root.char._xscale * objectdesignp.zoom;
_root.char._yscale = _root.char._yscale * objectdesignp.zoom;
_root.char.gotoAndStop(1);
_root.char.mc.gotoAndStop(1);
setobjecton();
getobfunctions();
}
function getobfunctions() {
var _local4 = objectdesignp.objon;
if (objectdata[_local4][0] == undefined) {
_root.functions.text = "";
} else {
var _local2 = "";
for (var _local5 in objectdata[_local4][0]) {
if (_local5.charAt(1) != "_") {
_local2 = _local2 + ((_local2 == "") ? "" : "+");
_local2 = _local2 + _local5;
_local2 = _local2 + ",";
_local2 = _local2 + objectdata[_local4][0][_local5];
var _local3 = objectdata[_local4][0]["v_" + _local5];
if (_local3.length > 0) {
_local2 = _local2 + ",";
_local2 = _local2 + _local3;
}
}
}
_root.functions.text = _local2;
}
}
function setobfunctions() {
var _local6 = objectdesignp.objon;
objectdata[_local6][0] = new Object();
var _local5 = _root.functions.text;
_local5 = _local5.split("+");
var _local3 = 0;
while (_local3 < _local5.length) {
var _local2 = _local5[_local3].split(",");
var _local4 = _local2.shift();
objectdata[_local6][0][_local4] = _local2.shift();
_local2 = _local2.join();
if (_local2.length > 0) {
objectdata[_local6][0]["v_" + _local4] = _local2;
}
_local3++;
}
}
function setobjecton() {
if (_root.char._currentframe != objectdesignp.objon) {
objectdesignp.objon = _root.char._currentframe;
getobfunctions();
}
objectdesignp.objon = _root.char._currentframe;
objectdesignp.acton = ((_root.char.mc._currentframe == undefined) ? 1 : (_root.char.mc._currentframe));
if (objectdata[objectdesignp.objon] == undefined) {
objectdata[objectdesignp.objon] = new Array();
}
if (objectdata[objectdesignp.objon][objectdesignp.acton] == undefined) {
objectdata[objectdesignp.objon][objectdesignp.acton] = {xs:-7, xe:-5, ys:-2, ye:0};
}
setcrosshairs();
}
function usepreviouscrosshairs() {
var _local1 = objectdesignp.objon;
objectdata[_local1][objectdesignp.acton] = copyob(objectdata[_local1][objectdesignp.acton - 1]);
setcrosshairs();
}
function setcrosshairs() {
var _local3 = objectdesignp.objon;
var _local2 = objectdesignp.acton;
var _local5 = {x:objectdata[_local3][_local2].xs, y:objectdata[_local3][_local2].ys};
_root.char.localToGlobal(_local5);
var _local4 = {x:objectdata[_local3][_local2].xe, y:objectdata[_local3][_local2].ye};
_root.char.localToGlobal(_local4);
_root.crossa._x = _local5.x;
_root.crossa._y = _local5.y;
_root.crossb._x = _local4.x;
_root.crossb._y = _local4.y;
}
function crosshair() {
if (objectdesignp.follow != "") {
if (clicks.leftclick == 0) {
objectdesignp.follow = "";
makebox();
} else {
_root[objectdesignp.follow]._x = _root._xmouse;
_root[objectdesignp.follow]._y = _root._ymouse;
}
}
}
function makebox() {
var _local9 = ((_root.crossa._x < _root.crossb._x) ? (_root.crossa._x) : (_root.crossb._x));
var _local6 = ((_root.crossa._x > _root.crossb._x) ? (_root.crossa._x) : (_root.crossb._x));
var _local8 = ((_root.crossa._y < _root.crossb._y) ? (_root.crossa._y) : (_root.crossb._y));
var _local7 = ((_root.crossa._y > _root.crossb._y) ? (_root.crossa._y) : (_root.crossb._y));
var _local5 = {x:_local9, y:_local8};
_root.char.globalToLocal(_local5);
var _local4 = {x:_local6, y:_local7};
_root.char.globalToLocal(_local4);
var _local3 = objectdesignp.objon;
var _local2 = objectdesignp.acton;
objectdata[_local3][_local2].xs = Math.round(_local5.x);
objectdata[_local3][_local2].xe = Math.round(_local4.x);
objectdata[_local3][_local2].ys = Math.round(_local5.y);
objectdata[_local3][_local2].ye = Math.round(_local4.y);
}
startobjectdesign();
Instance of Symbol 909 MovieClip [crosshair] "crossa" in Frame 39
on (press) {
_root.objectdesignp.follow = this._name;
}
Instance of Symbol 909 MovieClip [crosshair] "crossb" in Frame 39
on (press) {
_root.objectdesignp.follow = this._name;
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
_root.setobfunctions();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
if (_root.char._currentframe == 1) {
_root.char.gotoAndStop(_root.char._totalframes);
} else {
_root.char.prevFrame();
}
_root.char.mc.gotoAndStop(1);
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
if (_root.char._currentframe == _root.char._totalframes) {
_root.char.gotoAndStop(1);
} else {
_root.char.nextFrame();
}
_root.char.mc.gotoAndStop(1);
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
if (_root.char.mc._currentframe == 1) {
_root.char.mc.gotoAndStop(_root.char.mc._totalframes);
} else {
_root.char.mc.prevFrame();
}
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
if (_root.char.mc._currentframe == _root.char.mc._totalframes) {
_root.char.mc.gotoAndStop(1);
} else {
_root.char.mc.nextFrame();
}
_root.setobjecton();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
_root.usepreviouscrosshairs();
}
Instance of Symbol 1104 MovieClip in Frame 39
on (press) {
_root.frameon("designer");
}
Instance of Symbol 1104 MovieClip in Frame 49
on (press) {
_root.designinit();
}
Instance of Symbol 1104 MovieClip in Frame 49
on (press) {
_root.frameon("tiledesign");
}
Instance of Symbol 1104 MovieClip in Frame 49
on (press) {
_root.frameon("objectdesign");
}
Instance of Symbol 1104 MovieClip in Frame 49
on (press) {
_root.exportresources();
}
Instance of Symbol 1104 MovieClip in Frame 49
on (press) {
_root.exportworld();
}
Frame 57
_root._quality = "LOW";
this.nextFrame();
Frame 58
this.stop();
Frame 59
this.prevFrame();
Symbol 10 MovieClip Frame 1
stop();
Symbol 10 MovieClip Frame 31
_root.gotoAndStop("load");
Symbol 24 MovieClip Frame 1
stop();
Symbol 40 MovieClip Frame 7
stop();
Symbol 44 MovieClip Frame 1
stop();
Symbol 44 MovieClip Frame 9
stop();
Symbol 54 MovieClip Frame 1
stop();
Symbol 70 MovieClip Frame 10
stop();
Symbol 71 MovieClip Frame 13
stop();
Symbol 75 MovieClip Frame 1
stop();
Symbol 75 MovieClip Frame 9
stop();
Symbol 87 MovieClip Frame 1
stop();
Symbol 103 MovieClip Frame 7
stop();
Symbol 106 MovieClip Frame 7
stop();
Symbol 111 MovieClip Frame 10
stop();
Symbol 114 MovieClip Frame 1
stop();
Symbol 114 MovieClip Frame 5
stop();
Symbol 118 MovieClip Frame 1
stop();
Symbol 118 MovieClip Frame 9
stop();
Symbol 119 MovieClip Frame 7
stop();
Symbol 123 MovieClip Frame 1
stop();
Symbol 141 MovieClip Frame 7
stop();
Symbol 144 MovieClip Frame 7
stop();
Symbol 149 MovieClip Frame 10
stop();
Symbol 153 MovieClip Frame 1
stop();
Symbol 153 MovieClip Frame 9
stop();
Symbol 154 MovieClip Frame 7
stop();
Symbol 157 MovieClip Frame 1
stop();
Symbol 164 MovieClip Frame 7
stop();
Symbol 165 MovieClip Frame 7
stop();
Symbol 166 MovieClip Frame 7
stop();
Symbol 173 MovieClip Frame 1
stop();
Symbol 189 MovieClip Frame 7
stop();
Symbol 193 MovieClip Frame 1
stop();
Symbol 193 MovieClip Frame 9
stop();
Symbol 194 MovieClip Frame 7
stop();
Symbol 211 MovieClip Frame 13
stop();
Symbol 216 MovieClip Frame 17
stop();
Symbol 220 MovieClip Frame 1
stop();
Symbol 220 MovieClip Frame 9
stop();
Symbol 221 MovieClip Frame 12
stop();
Symbol 235 MovieClip Frame 1
stop();
Symbol 246 MovieClip Frame 7
stop();
Symbol 250 MovieClip Frame 13
stop();
Symbol 255 MovieClip Frame 1
stop();
Symbol 255 MovieClip Frame 9
stop();
Symbol 256 MovieClip Frame 7
stop();
Symbol 259 MovieClip Frame 1
stop();
Symbol 271 MovieClip Frame 13
stop();
Symbol 275 MovieClip Frame 13
stop();
Symbol 279 MovieClip Frame 1
stop();
Symbol 279 MovieClip Frame 9
stop();
Symbol 280 MovieClip Frame 12
stop();
Symbol 294 MovieClip Frame 1
stop();
Symbol 307 MovieClip Frame 1
stop();
Symbol 321 MovieClip Frame 1
stop();
Symbol 322 MovieClip Frame 20
stop();
Symbol 335 MovieClip Frame 1
stop();
Symbol 360 MovieClip Frame 1
stop();
Symbol 373 MovieClip Frame 1
stop();
Symbol 379 MovieClip Frame 1
stop();
Symbol 393 MovieClip Frame 1
stop();
Symbol 406 MovieClip Frame 1
stop();
Symbol 419 MovieClip Frame 1
stop();
Symbol 430 MovieClip Frame 1
stop();
Symbol 441 MovieClip Frame 1
stop();
Symbol 452 MovieClip Frame 1
stop();
Symbol 467 MovieClip Frame 1
stop();
Symbol 480 MovieClip Frame 1
stop();
Symbol 494 MovieClip Frame 1
stop();
Symbol 507 MovieClip Frame 1
stop();
Symbol 520 MovieClip Frame 1
stop();
Symbol 535 MovieClip Frame 1
stop();
Symbol 548 MovieClip Frame 1
stop();
Symbol 575 MovieClip Frame 1
stop();
Symbol 588 MovieClip Frame 1
stop();
Symbol 601 MovieClip Frame 1
stop();
Symbol 629 MovieClip Frame 1
stop();
Symbol 642 MovieClip Frame 1
stop();
Symbol 676 MovieClip Frame 13
stop();
Symbol 772 MovieClip Frame 1
stop();
this.gotoAndStop(_root.pallette.suit);
Symbol 789 MovieClip Frame 1
this.gotoAndStop(_root.pallette.suit);
Symbol 933 MovieClip Frame 1
stop();
Symbol 941 MovieClip Frame 1
stop();
Symbol 949 MovieClip Frame 1
stop();
Symbol 957 MovieClip Frame 1
stop();
Symbol 963 MovieClip Frame 1
stop();
Symbol 963 MovieClip Frame 61
stop();
_root.killtile(_parent._parent._name, "tl_below");
Symbol 971 MovieClip Frame 1
stop();
Symbol 1032 MovieClip Frame 49
stop();
Symbol 1043 MovieClip Frame 1
stop();
Symbol 1064 MovieClip Frame 1
stop();
Symbol 1074 MovieClip Frame 1
stop();
Symbol 1084 MovieClip Frame 1
stop();
Instance of Symbol 1084 MovieClip "changer" in Symbol 1087 MovieClip [keychange] Frame 1
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
_root.changekey(_parent._name);
}
Symbol 1104 MovieClip Frame 1
this.stop();
Instance of Symbol 1104 MovieClip "a0000" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 0, 0, 0);
}
Instance of Symbol 1104 MovieClip "a1111" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 1, 1, 1);
}
Instance of Symbol 1104 MovieClip "a0011" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 0, 1, 1);
}
Instance of Symbol 1104 MovieClip "a1100" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 1, 0, 0);
}
Instance of Symbol 1104 MovieClip "a0001" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 0, 0, 1);
}
Instance of Symbol 1104 MovieClip "a0010" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 0, 1, 0);
}
Instance of Symbol 1104 MovieClip "a0100" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 1, 0, 0);
}
Instance of Symbol 1104 MovieClip "a1000" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 0, 0, 0);
}
Instance of Symbol 1104 MovieClip "a1101" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 1, 0, 1);
}
Instance of Symbol 1104 MovieClip "a1110" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 1, 1, 0);
}
Instance of Symbol 1104 MovieClip "a0111" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 1, 1, 1);
}
Instance of Symbol 1104 MovieClip "a1011" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 0, 1, 1);
}
Instance of Symbol 1104 MovieClip "a0101" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 1, 0, 1);
}
Instance of Symbol 1104 MovieClip "a0110" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(0, 1, 1, 0);
}
Instance of Symbol 1104 MovieClip "a1010" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 0, 1, 0);
}
Instance of Symbol 1104 MovieClip "a1001" in Symbol 1105 MovieClip Frame 1
on (press) {
_root.tileplacement(1, 0, 0, 1);
}
Symbol 1123 MovieClip Frame 1
stop();
Symbol 1128 MovieClip Frame 1
stop();
Symbol 1141 MovieClip Frame 1
stop();
Instance of Symbol 1104 MovieClip in Symbol 1147 MovieClip Frame 14
on (press) {
_root.frameon("designer");
}
Instance of Symbol 1084 MovieClip in Symbol 1147 MovieClip Frame 21
on (rollOver) {
this.gotoAndStop(2);
}
on (rollOut) {
this.gotoAndStop(1);
}
on (press) {
_root.gamep.replay = 0;
_root.gamep.state = "exiting";
_root.initreplays();
}