Frame 1
function tip(tiptext) {
attachMovie("tipwindow", "tipwindow", 69);
tipwindow._x = tipx;
tipwindow._y = tipy;
tipwindow.tiptext.text = tiptext;
tipwindow.onPress = function () {
startDrag (tipwindow);
};
tipwindow.onRelease = function () {
stopDrag();
tipx = tipwindow._x;
tipy = tipwindow._y;
};
tipwindow.onEnterFrame = function () {
if (((Key.isDown(32) || (Key.isDown(13))) && (tiplock == 0)) && (tipwait > 0)) {
tipwindow.gotoAndPlay(45);
}
};
}
function loadsavecode(savecode) {
keytotal = 0;
g = 0;
while (g < 100) {
if (savecode.substr(g, 1) == "1") {
levelstatus[g] = 2;
} else {
levelstatus[g] = 0;
}
g++;
}
count = 0;
levelcount = 0;
g = 0;
while (g < 15) {
if ((levelstatus[g] != 2) && (count < 3)) {
levelstatus[g] = 1;
count++;
}
if (levelstatus[g] > 0) {
levelcount++;
}
g++;
}
}
function chgobj_e(objx, objy, obji) {
edit[(("ObjX" + objx) + "Y") + objy].gotoAndStop(obji);
a_e[objx][objy] = obji;
}
function chgobj_b(objx, objy, obji) {
game[(("BallX" + objx) + "Y") + objy].gotoAndStop(obji);
a[objx][objy] = obji;
}
editor = 0;
ilevel = new Array();
g = 0;
while (g < 100) {
ilevel[g] = new Array();
g++;
}
levelstatus = new Array();
iswitch_e = new Array();
iteleport_e = new Array();
iswitch = new Array();
iteleport = new Array();
imoved = new Array();
g = 0;
while (g < 40) {
iswitch_e[g] = new Array();
iteleport_e[g] = new Array();
iswitch[g] = new Array();
iteleport[g] = new Array();
g++;
}
a = new Array();
a_save = new Array();
a_b = new Array();
a_e = new Array();
limiter = new Array();
g = 0;
while (g <= 25) {
a[g] = new Array();
a_b[g] = new Array();
a_e[g] = new Array();
limiter[g] = new Array();
g++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 6) {
iswitch[g][h] = 0;
h++;
}
g++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 4) {
iteleport[g][h] = 0;
h++;
}
g++;
}
iload = new Array();
zoommode = 3;
crosshairs = 3;
_root.attachMovie("gameframe", "gameframe", 100);
gameframe._x = 300;
gameframe._y = 275;
gameframe.gotoAndStop(1);
keystr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
shared1 = SharedObject.getLocal("savecyad");
tipx = 50;
tipy = 50;
helppage = 1;
function format(inum, zeros) {
if (zeros == 2) {
if (inum < 10) {
formattext = "0" + inum;
} else {
formattext = "" + inum;
}
}
if (zeros == 3) {
if (inum < 10) {
formattext = "00" + inum;
} else if (inum < 100) {
formattext = "0" + inum;
} else {
formattext = "" + inum;
}
}
if (zeros == 4) {
if (inum < 10) {
formattext = "000" + inum;
} else if (inum < 100) {
formattext = "00" + inum;
} else if (inum < 1000) {
formattext = "0" + inum;
} else {
formattext = "" + inum;
}
}
return(formattext);
}
function zoomcalc(zx1, zy1, zx2, zy2) {
scrnwidth = 1000;
scrnheight = 750;
iwidth = ((zx2 - zx1) + 1) * 25;
iheight = ((zy2 - zy1) + 1) * 25;
ixscale = scrnwidth / iwidth;
iyscale = scrnheight / iheight;
imaxscale = int(Math.min(ixscale, iyscale) * 100);
iscaledpixeltop = (((zy1 - 1) * 25) * imaxscale) / 100;
iscaledpixelleft = (((zx1 - 1) * 25) * imaxscale) / 100;
iscaledwidth = (imaxscale * iwidth) / 100;
iscaledheight = (imaxscale * iheight) / 100;
iwidthdiff = scrnwidth - iscaledwidth;
iheightdiff = scrnheight - iscaledheight;
ixcentre = iwidthdiff / 2;
iycentre = iheightdiff / 2;
ifinalxoff = Math.max(int(iscaledpixelleft - ixcentre), 0);
ifinalyoff = Math.max(int(iscaledpixeltop - iycentre), 0);
zoomstr = (format(imaxscale, 4) + format(ifinalxoff, 4)) + format(ifinalyoff, 4);
return(zoomstr);
}
function init() {
x = 0;
while (x <= 25) {
y = 0;
while (y <= 19) {
a_e[x][y] = 1;
chgobj_e(x, y, 1);
y++;
}
x++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 6) {
iswitch_e[g][h] = 0;
iswitch[g][h] = 0;
h++;
}
g++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 4) {
iteleport_e[g][h] = 0;
iteleport[g][h] = 0;
h++;
}
g++;
}
timestr = 0;
obj_e = 100;
edit.obj.gotoAndStop(obj_e);
zx1 = 0;
cyadx = 1;
cyady = 1;
edit.cyad._x = (cyadx - 1) * 25;
edit.cyad._y = (cyady - 1) * 25;
diamondchgx = 0;
diamondchgy = 0;
diamondchgo = 0;
zx1 = 1;
levelhelpstr = "";
zy1 = 1;
zx2 = 40;
zy2 = 30;
levelhelpstr = "";
titlestr = "Level Name";
startstr = "";
}
function percentage_complete(gameindex) {
icomplete = "";
if ((gameindex >= 0) && (gameindex < _global.gamecount)) {
icode = savegamestr.substr((gameindex * 3) + 20, 3);
loadsavecode(icode);
icomplete = 0;
g2 = 0;
while (g2 < 15) {
if (levelstatus[g2] == 2) {
icomplete++;
}
g2++;
}
icomplete = int((icomplete / 15) * 100) + "%";
}
return(icomplete);
}
function percentage_game_complete() {
icomplete = 0;
g3 = 0;
while (g3 <= totallevelcount) {
if (levelstatus[g3] == 2) {
icomplete++;
}
g3++;
}
icomplete = int((icomplete / totallevelcount) * 100) + "%";
return(icomplete);
}
var someListener = new Object();
someListener.onMouseDown = function () {
mousedown = 1;
};
someListener.onMouseUp = function () {
mousedown = 0;
};
Mouse.addListener(someListener);
function substitute(sourcestring, findstring, replacestring) {
ipos = 0;
while (ipos <= sourcestring.length) {
if (sourcestring.substr(ipos, findstring.length) == findstring) {
if (ipos > 0) {
sourcestring = (sourcestring.substr(0, ipos) + replacestring) + sourcestring.substr(ipos + findstring.length, 99999);
}
if (ipos == 0) {
sourcestring = replacestring + sourcestring.substr(findstring.length, 99999);
}
}
ipos++;
}
return(sourcestring);
}
function iload(txtload) {
init();
if (editor == 1) {
inx = 0;
astr = txtload;
astr = substitute(astr, "<level>", "");
astr = substitute(astr, "</level>", "");
do {
found = 0;
apos = astr.indexOf(">");
if (apos > 0) {
found = 1;
bpos = astr.indexOf("<", apos);
if (apos < bpos) {
iload[inx] = astr.substr(apos + 1, (bpos - apos) - 1);
} else {
iload[inx] = "";
}
inx++;
cpos = astr.indexOf(">", bpos);
astr = astr.substr(cpos + 1, astr.length);
}
} while (found == 1);
}
titlestr = iload[0];
level = iload[1];
level = substitute(level, "f", "ee");
level = substitute(level, "e", "aa");
level = substitute(level, "d", "00");
level = substitute(level, "c", "000");
level = substitute(level, "b", "0000");
level = substitute(level, "a", "00000");
ipos = 1;
x = 1;
y = 1;
if (level.substr(0, 1) == "H") {
do {
if (level.substr(ipos, 1) == "%") {
ipos++;
iobj = parseInt(level.substr(ipos, 3), 10);
iocc = parseInt(level.substr(ipos + 3, 3), 10);
g = 1;
while (g <= iocc) {
if (iobj == 0) {
chgobj_e(x, y, 1);
} else {
chgobj_e(x, y, iobj);
}
x++;
if (x == 25) {
x = 1;
y++;
}
g++;
}
ipos = ipos + 6;
} else {
if (level.substr(ipos, 3) == "000") {
chgobj_e(x, y, 1);
} else {
chgobj_e(x, y, parseInt(level.substr(ipos, 3), 10));
}
ipos = ipos + 3;
x++;
if (x == 25) {
x = 1;
y++;
}
}
} while (y < 31);
}
if (level.substr(0, 1) == "V") {
do {
if (level.substr(ipos, 1) == "%") {
ipos++;
iobj = parseInt(level.substr(ipos, 3), 10);
iocc = parseInt(level.substr(ipos + 3, 3), 10);
g = 1;
while (g <= iocc) {
if (iobj == 0) {
chgobj_e(x, y, 1);
} else {
chgobj_e(x, y, iobj);
}
y++;
if (y == 19) {
y = 1;
x++;
}
g++;
}
ipos = ipos + 6;
} else {
if (level.substr(ipos, 3) == "000") {
chgobj_e(x, y, 1);
} else {
chgobj_e(x, y, parseInt(level.substr(ipos, 3), 10));
}
ipos = ipos + 3;
y++;
if (y == 19) {
y = 1;
x++;
}
}
} while (x < 41);
}
cyadx = parseInt(iload[2].substr(0, 2), 10);
cyady = parseInt(iload[2].substr(2, 2), 10);
edit.cyad._x = (cyadx - 1) * 25;
edit.cyad._y = (cyady - 1) * 25;
workstr = iload[3];
zx1 = parseInt(workstr.substr(0, 3), 10);
zy1 = parseInt(workstr.substr(3, 3), 10);
zx2 = parseInt(workstr.substr(6, 3), 10);
zy2 = parseInt(workstr.substr(9, 3), 10);
workstr = iload[4];
diamondchgx = parseInt(workstr.substr(0, 3), 10);
diamondchgy = parseInt(workstr.substr(3, 3), 10);
diamondchgo = parseInt(workstr.substr(6, 3), 10);
workstr = iload[5];
ipos = 0;
if (workstr != undefined) {
do {
iswitch_e[ipos][0] = parseInt(workstr.substr(ipos * 18, 3), 10);
iswitch_e[ipos][1] = parseInt(workstr.substr((ipos * 18) + 3, 3), 10);
iswitch_e[ipos][2] = parseInt(workstr.substr((ipos * 18) + 6, 3), 10);
iswitch_e[ipos][3] = parseInt(workstr.substr((ipos * 18) + 9, 3), 10);
iswitch_e[ipos][4] = parseInt(workstr.substr((ipos * 18) + 12, 3), 10);
iswitch_e[ipos][5] = parseInt(workstr.substr((ipos * 18) + 15, 3), 10);
ipos++;
} while ((ipos * 18) < workstr.length);
}
workstr = iload[6];
ipos = 0;
if (workstr != undefined) {
do {
iteleport_e[ipos][0] = parseInt(workstr.substr(ipos * 12, 3), 10);
iteleport_e[ipos][1] = parseInt(workstr.substr((ipos * 12) + 3, 3), 10);
iteleport_e[ipos][2] = parseInt(workstr.substr((ipos * 12) + 6, 3), 10);
iteleport_e[ipos][3] = parseInt(workstr.substr((ipos * 12) + 9, 3), 10);
ipos++;
} while ((ipos * 12) < workstr.length);
}
if (iload[7] != undefined) {
timestr = iload[7];
} else {
timestr = 0;
}
if (iload[8] != undefined) {
helppage = iload[8];
}
tipshow = 0;
if (iload[9] != undefined) {
levelhelpstr = iload[9];
if ((levelhelpstr.substr(0, 1) == "%") and (editor == 0)) {
levelhelpstr = levelhelpstr.substr(1, levelhelpstr.length);
tipshow = 1;
}
} else {
levelhelpstr = "";
}
}
Frame 7
stop();
Instance of Symbol 257 MovieClip in Frame 7
on (press) {
getURL ("http://www.cyadonia.co.uk/", "_blank");
}
Frame 9
savegame = shared1.data.savecyad;
savegamestr = "";
if (savegame == undefined) {
g = 0;
while (g < 100) {
savegamestr = savegamestr + "0";
g++;
}
} else {
savegamestr = savegame;
loadsavecode(savegamestr);
}
gameframe.gotoAndStop(5);
gotoAndPlay(_currentframe + 8);
Frame 18
if (Key.isDown(13) || (Key.isDown(32))) {
gotoAndPlay(_currentframe + 18);
} else {
gotoAndPlay(_currentframe - 1);
}
Frame 36
if (editor == 1) {
gameframe.gotoAndStop(6);
gotoAndPlay(_currentframe + 11);
}
Frame 42
totallevelcount = 0;
ilevel[totallevelcount][0] = "The Basics 1";
ilevel[totallevelcount][1] = "H%b52101%142014101%a8143%b14143%a8143%b14143%a8143a0101%b11143%a8143%b13101143%a8143%b14143%a8143%b14143%a8143%b14143%a8143%b14143%a8143%b1c4%a3143%a8143%a3101%b10143%a8143%b14143%a8101%142014101%b76";
ilevel[totallevelcount][2] = "0614";
ilevel[totallevelcount][3] = "005003020015";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Welcome to Cyad. Use the cursor keys to guide the yellow cyad to the green exit. Once you start moving you can't stop until you hit a wall.";
totallevelcount++;
ilevel[totallevelcount][0] = "The Basics 2";
ilevel[totallevelcount][1] = "H%b33150%148d5151%b17149d4%a4149%b17149%a5149%b12150%148d4152%a5153%148d5151%a6149%b16149%a6149c150148%b10148151c149%a6149c149%b12149c149%a3150148148152%b16149%a3149%b19149%a3149%b19149%a3149%a4149%a7149%a6149%a3149%a4153148%a5148152%a6149%a3149%b17149c149%a3153%148012151%a3148152c149%b16149%a6149%b16153%148d6152%b26";
ilevel[totallevelcount][2] = "1616";
ilevel[totallevelcount][3] = "001002023018";
ilevel[totallevelcount][4] = "000100100";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Tip: press R to restart and Q to quit the level at any time. If you quit you can select a different level to try";
totallevelcount++;
ilevel[totallevelcount][0] = "The Basics 3";
ilevel[totallevelcount][1] = "H%12d25%a4%12d12%a4%12c4%a4%12d12%a4%12c4%b11%12c4%a4%12c5%b11%12c4%a4%12c5%b14120%a7120120%b1412a04%a5%12c4%b12120%a7%12c4%b12%12c3%a4%12c5%b12%12c3%a4%12d11%a6%12c3%a4%12d12a0%12c6%a4%12c3%a5%12c4a0%12c6%a4%12c3%a7120120%b12%12c3%b21%12c3a0%12c3%b17%12c8%b16%12d25";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "001001034016";
ilevel[totallevelcount][4] = "001001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds 1";
ilevel[totallevelcount][1] = "H%b77132%167012132%b10166d3%b11166%b10166132%b11166%b10166d3%a7d3132a0166%b10166%b12166%b10166%b12166%b10166%b12166%b10166a0132d3%a4d3%a3166%b10166%a8132%a3166%b10166%b12166%b10166%b12166%b10132%167012132%b77";
ilevel[totallevelcount][2] = "1814";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "015004004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Collect all the diamonds on the screen to make something change";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds 2";
ilevel[totallevelcount][1] = "V%b77103120103%b1512c4120%b11103%12c3103120103%12c7103%a3120%b13120%a3120%b11103c120%a3120%a3103d3%a6d3c120%a3120%b13120%a3120%a6d3103%a5120%a3120103d3%b11120%a3120%b11d3103120%a3120%b13120%a3120%b13120%a3120%a6d3%a6120%a3120%a6103%a6120%a3103%12d13103%b92";
ilevel[totallevelcount][2] = "0803";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "007007001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds 3";
ilevel[totallevelcount][1] = "H%b58108167108%b21166d4166%b16108%167d4108167108%167d4108%b11166%a6d3103d3a0166%b11166c103d3%a4d3%a3108167167108%a8166a3%b12166%a8166%b13d3166%a8166ac3%a9d3103166%a8166a0103d3%a9d3166%a8166%b14166%a8166%a6d3%a4108167167108%a8166%a5d3103d3%a3166%b11108%167011108%b78";
ilevel[totallevelcount][2] = "0706";
ilevel[totallevelcount][3] = "003002023018";
ilevel[totallevelcount][4] = "012005001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "60";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Note this level has a one minute time limit. You can see the clock in the top right of the screen.";
totallevelcount++;
ilevel[totallevelcount][0] = "Mines 1";
ilevel[totallevelcount][1] = "H%b52%101016%a8101%a6d5d4%a6101%a8101%a7d5%a6101%a8101%b14101%a8101%b10101%a3101%a8101%a3101%a8d5c101%a8101a5%a9101a0101%a8101%b14101%a8101%b1c5%a3101%a8101%a8101%a5101%a8101%a4101%a9101%a8%101016%c1d";
ilevel[totallevelcount][2] = "0604";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "001000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Avoid the mines, they are deadly!";
totallevelcount++;
ilevel[totallevelcount][0] = "Mines 2";
ilevel[totallevelcount][1] = "V%b54%1c17c1ac1d%a41d%a41ad41a1d%a71d%a71a1d%a6%1b3%a61a1d%a3d5%a31d%a3d5%a31a1d1d%a61d%a61d1a1d%a71d%a71a1d%a41ac1ac1d%a41a%1b7c%1b7c1a1ac1d%a41d%a41ac1a1d%a71d%a71a1d%a6%1b3%a61a1d%a3d5%a31d%a3d5%a31a1d1d%a61d%a61d1a1d%a71d%a71a1d%a41d%a51d%a41a%1c17%b73";
ilevel[totallevelcount][2] = "0502";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "001000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Mines 3";
ilevel[totallevelcount][1] = "H%a5156%154011157%b11155%a81ac155%b11155d5c1d%a8155%b111551d%a51ad5c1d155%b11155%b11155%b11155%a3d5%a3d5%a3155%b11155%a31d%a31d%a3155%b11159%154d4157c156%154d4158%b16155c155%b14156%154d6158c159%154d6157%a7155%a31d%a61ac1a155%a7155%a71b5%a4d5c155%a7155d5%b14155%a7155a01d%b1c5c155%a7155%a7d5%a31a1a155%a7155%a3d51d%a41d%a31b4155%a7159%154015158%b28";
ilevel[totallevelcount][2] = "1702";
ilevel[totallevelcount][3] = "004002023018";
ilevel[totallevelcount][4] = "004001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds and Mines 1";
ilevel[totallevelcount][1] = "H%b53%1b7%b171ac1ac1d%b171ad3ac31d%b171d1d%a41d%b171d%a5%1b7%b111ad5a3%a3d31b3c1d%b11%1b5%a71d%b151d%a71d%b151b3%a4d3c1d%b13%1b3d5ac3c1a1d%b131b4%a41d%a31d%b13%1b3%a71d%b15%1b9%b78";
ilevel[totallevelcount][2] = "0804";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "011012100";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Collect the Diamonds and avoid the Mines";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds and Mines 2";
ilevel[totallevelcount][1] = "V%c110102%155d5102%155d5102%a5154%a3103d5103d5103%a3154%a5154%a4d3%a4103c154%a5154a3%a3156155%a4154%a5154%a5154d3%a4154%a5154a0154d5c154d5d3154a0154%a5102103c157155155102155155158c103102%a5154d3%a4154d5%a3103154%a5154c103%a3154d3%a4154%a5154ac3c155158%a3103c154%a5154%a7103d3a0154%a5154d5%a4103%a4103154%a5102%155d5102%155d5102%b93";
ilevel[totallevelcount][2] = "0804";
ilevel[totallevelcount][3] = "002001024029";
ilevel[totallevelcount][4] = "015005004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "60";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds and Mines 3";
ilevel[totallevelcount][1] = "V%b72162%161015165c160%a6123d5123123%a516b16b123%b11d5c16b160%a5d5%a916b16ab5%a3123%a816b160%a3123%a3d5%a3d5%a316b160123%a5d3%a816b16c5%b1416b160%a5123123%a816b16ad123%b1216b160%a9d5%a516b160%b11123%a316b160%b10123123%a316b160%a4123%b1016b160%a5123c123d5a5c123a016b16ad123d5%a3d5123%a3123a016b163%161015164%b55";
ilevel[totallevelcount][2] = "2016";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "020013004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamonds and Mines 4";
ilevel[totallevelcount][1] = "Hc%101021%a3101d4101%a4101a3101d3%a3101a3101d4101%a3%101d3%a7101%a7%101d3%a5101101%a6101101%a6101%a7101%a3d5%a3101%a3d5%a3101%a7101%a6101101%a6101101%a7101%a7101%a7101%a7101d3c101%a3d3a3c101%a3d3101%a7%101d7c%101d7c101%a7101d3c101%a3d3101d3c101%a3d3101%a7101%a7101%a7101%a7101%a6101101%a6101101%a7101%a3d5%a3101%a3d5%a3101%a7101101%a6101101%a6101%a5%101d3%a7101%a7%101d3%a3101d4101d3%a3101a3a3%a3101a5101d4101%a3%101021%b26";
ilevel[totallevelcount][2] = "0502";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "020002001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Arrows 1";
ilevel[totallevelcount][1] = "H%b51%101017%a7101c101%b13101%a7101%b1d11%a4101%a7101%a4d9%a8101c101%a7101%b15101%a7101%a6%102d3%a6101%a7101%a6102d4102%a6101%a7101%a6102c102%a6101%a7101%a7d7ad13%a4101%a7101%b15101%a7101a7%b1d13a0101%a7101%a4d7%b10101%a7%101017%b76";
ilevel[totallevelcount][2] = "0514";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Arrows send you in the direction they point";
totallevelcount++;
ilevel[totallevelcount][0] = "Arrows 2";
ilevel[totallevelcount][1] = "H%a7%127011%b13127011%a7011127%b13127c%105d7c127%b13127d9a5b11%a3013127%b13127%105d4c%105d4127%b13127011%a7011127%b13127c%105d7c127%b13127d9%a3011a5b13127%b13127%105d4c%105d4127%b13127011%a7011127%b13127c%105d7c127%b13127d9%a3011a5b13127%b13127%105d4c%105d4127%b13127011%a7011127%b13127c%105d7c127%b13127d9a5b11%a3013127%b13%127d5d4%127d5%b17%127d3%b10";
ilevel[totallevelcount][2] = "1302";
ilevel[totallevelcount][3] = "002001024029";
ilevel[totallevelcount][4] = "001000100";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Arrows 3";
ilevel[totallevelcount][1] = "V%b55150%149014153a0148011%a4104%a3d9%a4148a0148%a7104%a6148a0148%a4104%a5d9%a3148a0148%a6104%a7148a0148%a3104%a7d9a0148a0148%a5104%a8148a0148a0104%a9d9c148a0148%a4104%a9148a0148%b13d9148a0148c150%149d6153%a5148a0148c151%149d6152%a5148a0148013%a4d3%a3d7%a4148a0148013%a3d3%a5d7%a3148a0148013ac3%a7d7a0148a0148013a5%a9d7c148a0148013d3%b11d7148a0151%149014152%b55";
ilevel[totallevelcount][2] = "0504";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "019005004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Arrows 4";
ilevel[totallevelcount][1] = "V%b72%101d8c%101d8c101102102%a4101c101102%a5101c101b10%a4101c101102010%a4101c101%a6101c101102%a5101c101%a3d3a0101c101%a3103102102101c101%a4102c101c101a3c102a4101c101%a6101c101%a3102a0101c101c%101d6c101c%101d6c101c101%a6101c101%a6101c%101d8c%101d6c101c102%a6010%a4102d3101c101a5a0102c%101d3%a6101c101%a3d3a0101c101d5c102102a0101c101%a6101c101102102a0102102101c101102012%a4101c101%a6101c101102%a4014101c101d3012%a4101c%101d8c%101d8%b55";
ilevel[totallevelcount][2] = "0607";
ilevel[totallevelcount][3] = "003001024027";
ilevel[totallevelcount][4] = "009014001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Bouncebacks 1";
ilevel[totallevelcount][1] = "H%12d59%101d3%12d14%101d8018101%12d14101%a6017017101%12d14%101d8c101%12d21101c101%12d14%101d8c%101d9%12c6101%017d3%b12018101%12c6101c%101d6c%101d6c101101%12c6101c101%12c4101017101%12c4101c101%12c7101c%101d4120101017%101d6c101%12c7101%a3d4101120101017%a6017101%12c7%101d6120%101010%12d99";
ilevel[totallevelcount][2] = "0605";
ilevel[totallevelcount][3] = "001002039018";
ilevel[totallevelcount][4] = "001000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Bouncebacks reverse your direction. Blue Bouncebacks disappear, but purple once are permanent";
totallevelcount++;
ilevel[totallevelcount][0] = "Bouncebacks 2";
ilevel[totallevelcount][1] = "V%b91%103016a0103d5%a6d3%a5017103a0103%a7103%a4103c103a0103%b14103a0103%b14103a0103%a5103%a8103a0103%b13103103a0103d3103%b12103a0103%b14103a0103%b14103a0103a0103%b1c5103a0103017%a5103%a5d5d4103a0%103016%c109";
ilevel[totallevelcount][2] = "1209";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "017015001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Dissolvers 1";
ilevel[totallevelcount][1] = "V%b921d%1610111d%a5160%b11160%a516ac19%a8160%a5160%a3011%a5019c160%a5160%a8d9a0160%a516ac13%a81d1611d%a316a19%b11160%a3160%b111d1611d%a3160%b11160%a5160%a4019%a6160%a5160%a8019a0160%a5160%b11160%a51d%161d41a1d%161d41d%b1016c4160%b151d1611d%b80";
ilevel[totallevelcount][2] = "1216";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Dissolvers stop you like walls but disappear when touched";
totallevelcount++;
ilevel[totallevelcount][0] = "Dissolvers 2";
ilevel[totallevelcount][1] = "H%b54%126013%b11126%b11126%b11126c%127d9c126%b11126c127%a7127c126%b11126c127d3%126d5c127c126%b11126c127127126a3c126c127c126%b11126%a3126c127c126ac3126%b11126019127c126ad19126127127019126%b11126c127c126126c126126c127c126%b11126c127%a4019a0127c126%b11126c%127d9c126%b11126%a5d3%a5126%b11%126013%b77";
ilevel[totallevelcount][2] = "0804";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "018015004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Dissolvers 3";
ilevel[totallevelcount][1] = "Hc168%167011169%b11166%b11166%b11166%a4019a0156154157c166%b11166%a7019d3155c166%b11166%a7159154158c166%b11166%b11166%b11166c156154157%a7171%167d8169a0166c155d3019%b16166a0166c159154158%a8156154157%a5166a0166%b12155d3019%a5166a0171%167d7169%a4159154158%a4019166%b10166%a6019%a5166%b10166c156154157%a4156154157c166%b10166c155d3155%a4155d3155c166%b10166c159019158%a4159019158c166%b10166%b12166%b10166%a3019%a4019%a3166%b10171%16701217b";
ilevel[totallevelcount][2] = "1117";
ilevel[totallevelcount][3] = "001002040018";
ilevel[totallevelcount][4] = "016018004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Glue Patches 1";
ilevel[totallevelcount][1] = "H%b29%131015%a9131%a9037%a3131%a9131%b13166%a9131b37%a7037%a3166%a9131%b13131%a9131b37%a4037%a6131%a9131%b13166%a9168%167d5104c104%167d5170%a9166b38%a4038%a6131%a9166%b13131%a9166%a7038%a3038c131%a9131%b13131%a9131b38%a9038c131%a9166%b13131%a9%131d8d4%131d6%b52";
ilevel[totallevelcount][2] = "0703";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "014016004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Glue Patches stop you when you land on them. Blue Glue Patches disappear, but purple ones are permanent";
totallevelcount++;
ilevel[totallevelcount][0] = "Glue Patches 2";
ilevel[totallevelcount][1] = "V%b57%12c3%a3%12c7%a3%12c3d3%12c5d312c312c312012ad120%b1412ad12ac37b37%a912ad120%b1412ad120%b1412ad120%b1412b120120%b1412b12ac37%a4037b38b38b38c12b120120%b1412ad120%b1412ad12ac37%a3037%a712b120120%b1412b12c3b37ad37%a912b120120%b1412ad%12c5d3%12c3d312c512c3120120%a6%12c3c%12c7%b74";
ilevel[totallevelcount][2] = "1202";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "012002004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "60";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Collect the Diamonds";
ilevel[totallevelcount][1] = "H%b55150148148%154d5148148151%b13149%a5d3129d3d3149%b13149d3%a7d3149%b13155129a3129d3129a3129155%b13155d3a0129%a5155%b13155%a9155%b13155%a3d3a3ac3155%b13155ac3a3ac3c155%b13149%a9149%b13149d3ac3129d3ac3149%b13153148148%154d5148148152%c126";
ilevel[totallevelcount][2] = "0904";
ilevel[totallevelcount][3] = "003001024017";
ilevel[totallevelcount][4] = "008008004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "60";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamond Columns";
ilevel[totallevelcount][1] = "V%b75%103d9d4103%a7103%a8d5103%a7103%a9103%a7103038011%d3d6c103%a7103%a9103%a7103038011%d3d6017103%a7103%a9103%a7103038d7%d3d6d7103%a7103%a7103c103%a7103038c%d3d6d5103%a7103%a9103%a7103038011%d3d6038103%a7103%a9103%a7103038011%d3d5013d3103%a7103%a9103%a7%103011%b76";
ilevel[totallevelcount][2] = "0605";
ilevel[totallevelcount][3] = "001001039030";
ilevel[totallevelcount][4] = "006013001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Greenhouse";
ilevel[totallevelcount][1] = "H%14d75103%148d5103%14c4103%148d5103%14c6103a3%d5d3103%148d4103%019d5103%14c6103%037d5ac3d3a0%019d5103%14c6103%037d5103%148d4103d3d5d3d5d3103%14c6103d5d5d3d5d3103%14c4103d3d5d3d5d3103%14c6103%148d5103%14c4103148103c103148103%14c6103d4d5d3b38103%14c4103d3b11a3103%14c6103103038038d5c103%148d4103a7a7c103%14c6103d3b38d5038ac3d3%a4019b13103%14c6103d5d3038a0103%148d4103d7%a4103%14c6103%148d5103%14c4103%148d5103%14d99";
ilevel[totallevelcount][2] = "0505";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "005011038";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Diamond Pool";
ilevel[totallevelcount][1] = "H%b26150%148d8151%b14149d3%a4101a3149%b14149%a8149%b14149%a4d3%a3149%b14149%a6d3c153%148d9151%a4149d3a0101a3%a5d3101101d3%a3149%a4149%a3d3%a5d3c101d3101%a4149%a4149c101%a4101%a8d3a0149%a4149a3%a3101a3a0101%a7149%a4149%a5d3%b11d3149%a4149%b11d3%a4101101149%a4149a0101101%a6101%a6d3149%a4149ac3%a5d3%a4d3%a3101149%a4149d3c101%a3101%a3d3a0101d3%a3149%a4153%148018152%b50";
ilevel[totallevelcount][2] = "2115";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "021014004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Castle";
ilevel[totallevelcount][1] = "H%b29%12d15%a9120%a6011d5a4d5a0120%a912ac37%a8019c120%a912a11%b1c5120%a912c5a7%a3013%a3019a0120%a9120%b1c5a0120%a912012d11%12c6d7%12c5%a912d19%a51d%a5019120%a9120%b13120%a912b1d1d%a71d1a120%a912ac19b19%a3019b19a0120%a91201d%a31d%a31d%a31d120%a91201b31b31b31b31b31b31d120%a91201b31b31b31b31b31b31d120%a9%12d15%b52";
ilevel[totallevelcount][2] = "0703";
ilevel[totallevelcount][3] = "004001024028";
ilevel[totallevelcount][4] = "014009100";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Four Little Rooms";
ilevel[totallevelcount][1] = "H%b33%128d7%b17128%d3d4013128%b17128d9d3011d9011128%b17128128%d3d4128%a9%127d7c128d3d7%d3d3128c%129d7c127a0127ad19b19d7d3d3d7d3019b19b19b19c129c127%a5127c%128d7c129c129d3129c129c127ad37a0127%a9129a3129d3c129c127127%a3127127c%13c7c129019129d3129019129c127d5%d3d3d5127c13d17b38ad19b19b19%a3129c%127d7c130%a513b%129d7%a913c3013038b38130%b1713ac11a0%13c3%b1513c5a3b1713c4130%b15%13c9%b54";
ilevel[totallevelcount][2] = "0307";
ilevel[totallevelcount][3] = "001001023030";
ilevel[totallevelcount][4] = "016015009";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushblocks 1";
ilevel[totallevelcount][1] = "H%b78%184013%b11184b15%a9184%b11%18401d15184184%b20184c184%b15%184d3%a3184c184%b15184d4184%a3184c184%b12%184d4c%184d5c184%b12184b15%a6015c184%b12%18401b184%b21184d5184%b21%184d3%c102";
ilevel[totallevelcount][2] = "0805";
ilevel[totallevelcount][3] = "003002024017";
ilevel[totallevelcount][4] = "002001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Pushblocks can be pushed! Note that they can protect you from mines";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushblocks 2";
ilevel[totallevelcount][1] = "H%b14%101d7%b15%101d3%a5101%b15101d4103%a4015101%b15%101d3%a5101%b11%101d7015%a4101%b11101b38038a0101%a3d3c101%b11101b15015a0101d5%a4101%b11101%a5015%a4d5101%a5%101d7%a5%101d7%a5101%a5101%a5101%b11101%b11101%b11101%a5%101d4a0101%b11101%a5%101d7%b11101%a5101%b17101b15%a3101%b17%101d3%a3101%b17%101d7%b39";
ilevel[totallevelcount][2] = "0810";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "015003001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushblocks 3";
ilevel[totallevelcount][1] = "V%b751d%1430101d%a6142%a9103142%a6142%a8015103142%a6142%b10142%a6142%b10142%a6142b15%a8142%a61d1431d1431d1431a1d1431431d%a6142d4142c142d3142c142%a9142%a3142d3142c142%a91d1431d1431c191c151d1431431d%a8142%a7104142%a8142019%a6104142%a8142%a8142%a8142%a4104%a3142%a8142%a6015c142%a8142%a6104104142%a81d%143d81d%b57";
ilevel[totallevelcount][2] = "0605";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "014007001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushstops 1";
ilevel[totallevelcount][1] = "V%b67%103d3%b15103d4103a0%103017c103%a3016%b11103c%103011c%103d5%b11103c103%a9%103d3%a3103016103%a9103d3103%a3103c103%a9103c103%a3103c103%a9103c103%a3103c103%a9103c103%a3103c103%a9103c103%a3103c103%a6%103d4c%103d5c103%a6103%a8016c103%a6%10301b103%b15103c103%b15%103d3%b77";
ilevel[totallevelcount][2] = "0702";
ilevel[totallevelcount][3] = "002003024018";
ilevel[totallevelcount][4] = "006015001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Pushstops can be pushed one step at a time";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushstops 2";
ilevel[totallevelcount][1] = "H%b771d%1670111d%b11166%a8016a0166%b11166%b11166%b11166a0166d3166d3166d3166a0166%b11166a0166d3166d3166d3166a0166%b11166a01d1671d1671d1671ac166%b11166a0166d3166d3166d3166a0166%b11166a0166d3166d3166d3166a0166%b11166%b11166%b11166ad16%a8166%b111d%1670111d%c102";
ilevel[totallevelcount][2] = "0705";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "009010004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Pushstops 3";
ilevel[totallevelcount][1] = "H%b54%102d6%b18102104104a0102%b18102104104016c102%b14%102d5%a4102c%102d3c%102d3%a6102%a8102c102d3102c102d4102%a6102%a5038a0%102d3d3%102d7%a4102038%b17102%a4102%a6038c%102d4d3%102d3d3102102%a4102%a8102a0102d3102c102d3102%a5%102d5%a4102a0%102d3c%102d3%a9102b15103103102%b18102a0103103102%b18%102d6%b84";
ilevel[totallevelcount][2] = "2109";
ilevel[totallevelcount][3] = "001001039030";
ilevel[totallevelcount][4] = "019008001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "One-way Walls 1";
ilevel[totallevelcount][1] = "H%b52%1c11%b131d%a3062%a51d%b13%1b5c%1b5%b171a1d%b211a1d%a4%1b3%b141a1d%a41b41d%b141a1d%a41a1d%b141a1d%a41a1d%b141c63%1b6c%1b4%b111d%a6062%a41d%b111a%1c11%b111a1d%b21%1b3%b85";
ilevel[totallevelcount][2] = "0604";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%You can only pass through One-way Walls in the direction of the arrows. In all other directions it acts like a wall";
totallevelcount++;
ilevel[totallevelcount][0] = "One-way Walls 2";
ilevel[totallevelcount][1] = "H%b51%12d10%b14120%a3062%a4120%b14120%a8120%b14120%a8120%b14120%a4063%a3%12d10%a5120%a9062%a7120%a5120%b17120%a5%12c7%b11120%b11120%b11120%b11%12c5c%12c7%b1512c4120%b21%12c3%c104";
ilevel[totallevelcount][2] = "0504";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "One-way Walls 3";
ilevel[totallevelcount][1] = "H%b52%134015%a9134%a6064%a6134%a9134%a5063134%a3d3a0134%a9134c%d3d4c134a3%a4134%a9134%a6134%a3061a0134%a9134%a5063134ad62%a3134%a9134063%134d5d4%134d5061134%a9134ad62%d3d3134%a6134%a9134%a6134ac3%a3134%a9134%a3063a0134%a6134%a9134%a3d3a0134a3b61a0134%a9134%a6062062%a5134%a9%134015%b77";
ilevel[totallevelcount][2] = "0604";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "011009001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Ghost Walls 1";
ilevel[totallevelcount][1] = "H%b78162%16c9163%b13161a0%036d6c161%b13161ad36%a6161%b13161ad36b36036%a3161%b13161036b36ad36b36036161%b13161%a5036%a3161%b13161036%a4036%a3161%b13161%036d8c161%b13161d4ad36%a5161%b13161%a6036a0161%b13165%16c9164%c103";
ilevel[totallevelcount][2] = "0805";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Ghost Walls are invisible until touched";
totallevelcount++;
ilevel[totallevelcount][0] = "Ghost Walls 2";
ilevel[totallevelcount][1] = "H%b27103%167d6103%167d9103%a6166%a4036d4166%a5036d4036c166%a6166%a5036166036%a5036a0166%a6166%a6166d4036%a6036166%a6166%a6d9%a7036d4166%a6166%a3036a0166036%a7036166%a6166ad36d4036c166%a9166%a6103%167d6103%a6036a0166%a6166b36d4036a0166%a5036d4036c166%a6166ad17%a3103167167011%167d6103%a6166%a6166%a7103103166%a6166d4036%a4019%a7103103166%a6166%a6166%a7015c166%a6166%a6166%a9166%a6103%167d6103%167d9103%b51";
ilevel[totallevelcount][2] = "0503";
ilevel[totallevelcount][3] = "001001039029";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Blue Dumbell";
ilevel[totallevelcount][1] = "H%b49144%142d5145%a7144%142d5145%a3143d3101%d3d3143%a7143%d3d3101d3143%a3143d3101d3101d3143a0144142145a0143d3101d3101d3143%a3143%a5143a0143d4143a0143%a5143%a3143%a5147%142d3104%142d3146ad37a0143%a3143%a9038%a4037b37b37143%a3143%a5144%142d3104%142d3145%a5143%a3143%a5143a0143d4143a0143%a5143%a3143d3101016101d3143a0147142146a0143d3101d3101d3143%a3143%d3d3101d3143%a7143d3101%d3d3143%a3147%142d5146%a7147%142d5146%c122";
ilevel[totallevelcount][2] = "1208";
ilevel[totallevelcount][3] = "001001039030";
ilevel[totallevelcount][4] = "012009001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Push to Safety";
ilevel[totallevelcount][1] = "H%b74%101015c%101d3%a5101129%a3129%a7011101c101d5101%a5101b15a0129a3a5%101d3c101c101c101101%a4101%b13101c101a4101%a4101129129a0129%a3d5%101d3c%101d3c101101%a4101%b17101%a5101%a4129%a3d3%101d3c%101d3c101%a5101%a4129b61a0101c101%a4d7101%a5101b15a0129%a4101c101c%101d5%a5101129%a3129d3b64c101c101d5101%a9%101011c%101d3%c103";
ilevel[totallevelcount][2] = "1213";
ilevel[totallevelcount][3] = "002001024029";
ilevel[totallevelcount][4] = "008005019";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Orange County";
ilevel[totallevelcount][1] = "V%b73%123015%a3123%b11d3d3123%a3123%b11d3d3123%a3123a0%123d9d3d3123%a3123a0123%d3d4019d5c123d3d3123%a3123a0123%a6019123d3d3123%a3123a0123a0%123d3a0123d3123123%a3123a0123a0123d4123ad19d3d3123%a3123a0123a0%123d3a0123d3d3123%a3123a0123%a7123d3d3123%a3123a0123%d3d4a5209123d3d3123%a3123a0%123d9d3d3123%a3123019016%a9d3d3123%a3123019016%a9d3d3123%a3%123015%b92";
ilevel[totallevelcount][2] = "0603";
ilevel[totallevelcount][3] = "001001039029";
ilevel[totallevelcount][4] = "012008019";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Switches 1";
ilevel[totallevelcount][1] = "V%c110%12d11%a7120%a3103%a5120%a7120%a5103%a3120%a712a20%a7120%a7120%a4020%a3103120%a7120%a4103%a4%12c5%a3120103%a7%209d4d4120%a3120%a6103a0%12c5%a3120%a9120%a712ad103%a402b120%a712a20%a5103c120%a7120%a3103%a5120%a7%12d11%b95";
ilevel[totallevelcount][2] = "0804";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "000001000";
ilevel[totallevelcount][5] = "010005013012001001011008013013001001017005013014001001016011013015001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Hitting a Switch changes something on screen";
totallevelcount++;
ilevel[totallevelcount][0] = "Switches 2";
ilevel[totallevelcount][1] = "V%c128%127d3c%129011%a3127d3127c129%a4129%a4129%a3127d3127c129%a9129%a3127128127129129%a9129c%127d3128127129038a5a5%a3d5c129c127d4128%038d4b21b21b2a21c129c%127d3128127129038%a9129%a3127128127129129%a9129%a3127d3127c129%a9129%a3127d3127c129a0129%a3129a0129%a3%127d3c%129011%c109";
ilevel[totallevelcount][2] = "0908";
ilevel[totallevelcount][3] = "001002040017";
ilevel[totallevelcount][4] = "013003038";
ilevel[totallevelcount][5] = "013009011004001128013011014004128001013013012004001001013015015004001128";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Grey Switches disappear, but white ones are permanent";
totallevelcount++;
ilevel[totallevelcount][0] = "Switches 3";
ilevel[totallevelcount][1] = "H%b51%101017%a7101d3%b14101%a7101%a8d3%a6101%a7101%a4d3%b10101%a7101ac3%b12101%a7101%b12d3a0101%a7101%a4102%b10101%a7101%a8d3%a6101%a7101%a4d3%b10101%a7101%b15101%a7101011101101021%101d3021%101d3021101101d7101%a7101%a3038%a3038%a3038%a3101%a7%101017%b76";
ilevel[totallevelcount][2] = "0514";
ilevel[totallevelcount][3] = "001001038030";
ilevel[totallevelcount][4] = "013003004";
ilevel[totallevelcount][5] = "008013008004102001012013009009102001016013014008102001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Switches 4";
ilevel[totallevelcount][1] = "H%b30150%148011151%b11149d5%a9021149%b11149%148d9c148149%b11149%a5021%a5149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11149%b11153148151c150148c148151c150148152%b13149d3149d4a4149d3149%b15149d3149ad36149d3149%b15153%148d7152%b55";
ilevel[totallevelcount][2] = "0903";
ilevel[totallevelcount][3] = "002001024027";
ilevel[totallevelcount][4] = "013005011";
ilevel[totallevelcount][5] = "018003017004001100013005014010021021014010012008021021012008009009021021009009017009021021";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Switches 5";
ilevel[totallevelcount][1] = "H%12d25%a5120%b10120%a5120120%a5120%b10120%a5120120%a5120%b10120%a5120120%a5120%a5120%a4120%a5120120%b11120%b10120120%b11120%a7%12c8a0%12c4a0120%b10120120%b11%12c6%a5120120%b11120%b10120120%a7120%a9120%a4120120%a7120%a9120%a412012ad%12c6%a5120%a3120%a4120120%a7120%a5120%a312b%12c5%a3120%a3%12c7%a3120%a4120120%a3120%a8020120%a8120120%a3120%a9120%a8%12d25";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "014016019002020020019002012013020020012013020009020020020009006011020020006011015006020020015006003014020020003014014003004004";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Teleports 1";
ilevel[totallevelcount][1] = "H%a3%108d9c%107d9%a5108%a4104a0108c107103%a4103035107%a5108104%a6108c107%a7107%a5108104104c104%a3108c107%a3103103a0107%a5108%a5104c108c107103%a4103c107%a5108b34%a4104108c107a0103103034a0107%a5108%a7108c107c103103%a4107%a5108a0104a0104c108c107%a7107%a5%108d9c%107d9%b35%109d7%b17109a0102a0109%b17109%a5109%b17109ac4c102109%b17109c102102a0109%b17109c102ad35109%b17%109d7%b32";
ilevel[totallevelcount][2] = "0502";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "000001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "006006021002019006015016";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Teleports 2";
ilevel[totallevelcount][1] = "H%b26%101d9c%102d9%a5101%a7101c102%a7102%a5101128%a3d3a0101c102a3%a5102%a5101ad34a0128c101c102a0129d3%a3102%a5101%a3128%a3101c102129%a6102%a5101%a7101c102%a4129a0102%a5101128%a6101c102ad34ac3c102%a5101d3%a3128a0101c102a0129a0129035102%a5%101d9c%102d9%b34%103d9%b15103%a5103d4103%b15103%a5%103d3%b15103%a6035103%b15%103d9%b56";
ilevel[totallevelcount][2] = "0403";
ilevel[totallevelcount][3] = "001001040028";
ilevel[totallevelcount][4] = "014013001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "006005020009016008015015";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Enter a green Teleport and you'll be teleported to the same-numbered red Lander. When you land you continue to move in the same direction.";
totallevelcount++;
ilevel[totallevelcount][0] = "Teleports 3";
ilevel[totallevelcount][1] = "V%b36%104017c104%a416ac61%a3d5%a3104c104%a7104%a7104c104161%a6104%a7104c104%a3034%a3104d3ad35ac5104c104%a6161104%a7104c104%a7104%a7104c104a0160%a4104%a3d5%a3104c%104017%b19%103017c103%a3d3%a3063%a4148a0103c103%a7103%a7103c103%a7103149%a6103c103d5ad35ac5103%a3034%a3103c103%a7103%a6149103c103%a7103%a7103c103%a3d5%a3103a0148%a4103c%103017%b55";
ilevel[totallevelcount][2] = "0402";
ilevel[totallevelcount][3] = "003001024017";
ilevel[totallevelcount][4] = "007005004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "007005017005017013007013";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Enter the Teleports in the right direction!";
totallevelcount++;
ilevel[totallevelcount][0] = "Teleports 4";
ilevel[totallevelcount][1] = "V%b18%103d8%b10103034d3%a3d3103%b10103d3%a5103%b10103%a6103%b10103%a6103c%134d8c103%a6103c134035%a3d3034134c103d3%a4035103c134%a5d3134c%103d8c134%a6134%b10134%a6134c%102d8c134%a6134c102d3b35ac3102c134d3%a4d3134c102%a6102c%134d8c102%a6102%b10102%a6102c%132d8c102%a6102c132%a5035132c102034a3ad34102c132%a6132c%102d8c132%a6132%b10132%a6132c%104d8c132%a6132c104d4034%a3035104c132034%a4034132c%104d8c%132d8%b37";
ilevel[totallevelcount][2] = "1611";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "021003001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "021011012004021003016016017002021007017007008007003002016016021016007011007016016016021007003007";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Spacecraft";
ilevel[totallevelcount][1] = "V%b42144143147%b13144143146021145%143d5147%a7142d5%a7035142%a7145143143062%143d4019143146%a8148%a7148%a8168166166062%166d4019166171%a7167172%a3172%a4167%a7167172b15b63%a4167%a7167172a0172172%a4167%a4168166166170172%a8169171%a3167d4175034%a9034167%a3169166166171%a8172168170%a6167%a4172172a0172167%a7167%a4061b15c172167%a7167%a4172%a3172167%a7169166019%166d4064166166170%a8148%a7148%a8144143019%143d4064143143147%a7142035%a7d5142%a7145%143d5147021144143146%b13145143146%b23";
ilevel[totallevelcount][2] = "1310";
ilevel[totallevelcount][3] = "006002023017";
ilevel[totallevelcount][4] = "005002000";
ilevel[totallevelcount][5] = "004008013005001001022012013004001001";
ilevel[totallevelcount][6] = "013005005014013015021006";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Teleport in Order";
ilevel[totallevelcount][1] = "H%b25150%148d9151%b13149103%a6103103149%b13149103%a8149a0156%154d7157a0149%a5103%a3149a0155011ad13%a3155a0149a0103%a6149a0155c162163020162163c155a0149%a4034%a4149a0155c165164c165164c155a0149%a6103a0149a015501102a35b2d11155a0149%a3103%a5149a0155c162163c162163c155a0149%a8103149a0155c165164020165164c155a0149103103%a6064064ad64013ad13ad13155a0153148151c150%148d5152a0159%154d7158%a4149c149%b21149c153%148016151%a4149%b16149d3149%a4153%148d3151c150%148d5151d3150%148d4152%a8153148152%a5153148152%b30";
ilevel[totallevelcount][2] = "0403";
ilevel[totallevelcount][3] = "003001023017";
ilevel[totallevelcount][4] = "009016004";
ilevel[totallevelcount][5] = "019006021015001001021008006015015015019010011015009009017008007015016016";
ilevel[totallevelcount][6] = "007007019008";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Diamond Picking";
ilevel[totallevelcount][1] = "H%b25172%154019172%a3155d3c1b3%a3d31b3%a8d3166%a3155%a5d3%a6d3%a5102166%a3155c1d%a9d3%a6d3166%a3155%a9d3%a41e3c166%a3155ac3%a4d31d%b10166%a3155a01d%b12102%a3166%a3155d3%b15d3102d3166%a3172%154d9174%a3d3%a4102166%b13166%a5d3ac3166%b13166d3a3c102%a4166%b13166102d3102d3102%a4166%b13166d3a3%a6166%b13166a3102d3%a4d3166%b13174%167d9174%b50";
ilevel[totallevelcount][2] = "1315";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "021010004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Locks and Keys 1";
ilevel[totallevelcount][1] = "H%b73%106d3%b21106d4106%b20106106105%106d5%108d8%109d8106106%a4106106108028%a5108022%a5029109106106%a3023c106108%a4%108d3109%a3025a0109106%a6106108%a6108109%a6109106%a6106108%a6108109%a6109106%a6106%108d3ad24c108109%a6109106027%a5106%a6108108%109d5a0109%106d8%108d8%109d8%c120";
ilevel[totallevelcount][2] = "0209";
ilevel[totallevelcount][3] = "003004023018";
ilevel[totallevelcount][4] = "003006001";
ilevel[totallevelcount][5] = "002012008012001001010007016007001001023007003006001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Push a key into the same-coloured lock to change something on the screen";
totallevelcount++;
ilevel[totallevelcount][0] = "Locks and Keys 2";
ilevel[totallevelcount][1] = "H%b31103%142d7103%b15143c%038d3%a3143%b15143025023022024%a3143%b12103142142103%a7143%b12143%b10143%b12143c104%a8143%b12143%a8103%142d6103%a7143%b1d26027028029d4143%a7143a0104%a7103%142d4103%a7143%b10143%b12143%b10143%b12103%142d6103%a3143%b19143%a3143%b19143%a3143%b19103%142d3103%b56";
ilevel[totallevelcount][2] = "0606";
ilevel[totallevelcount][3] = "003003023016";
ilevel[totallevelcount][4] = "002003000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Note that unlocked locks become filled and disappear the next time you touch them";
totallevelcount++;
ilevel[totallevelcount][0] = "Locks and Keys 3";
ilevel[totallevelcount][1] = "V%b20%12d14%a412d38%a7037b37c120%a4120%a8022b25c120%a412d38%b11120%a4120%a3121026%a7120%a412ac29019%a8120%a4120%a3121b38%121d6120%a4120%a3121b38%121d6120%a412ac27019%a8120%a4120%a3121028%a7120%a412d38%b11120%a4120%a8023b24c120%a412d38%a7037b37c120%a412b%12d12%a412b120%b1512b120%a3%12c5%a712b120%a312c312c3120%a712b%12c5d312c3%12c4%a4120%a5103102104101121a4120%a4%12c6d312c3%12c5%a912c312c3120%b13%12c5%b24";
ilevel[totallevelcount][2] = "0904";
ilevel[totallevelcount][3] = "004001024030";
ilevel[totallevelcount][4] = "020013011";
ilevel[totallevelcount][5] = "006008020010001001007006020011001001010006020012001001011008020009001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Balls 1";
ilevel[totallevelcount][1] = "V%b58%104d8%b10104011%d3d5104%b10104c%104d6%b10104c104%b11%104d5013%104d3%102d9104%a7104102%a7102104%a7104102037ad41%a3102104%a4041a0104102%a7102104ad37b37b37104%a8102104ad41%a4104102%a7102104%a7104102037ad41%a3102104%a7104102%a7102%104d3d9%104d5%102d7d5102a0104c104%b10102d5102a0104c%104d6%a5102c102a0104011%d3d5104%a5102d4102a0%104d8%a5%102d3%b72";
ilevel[totallevelcount][2] = "0902";
ilevel[totallevelcount][3] = "001001039029";
ilevel[totallevelcount][4] = "012009001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Hit the grey Balls to collect the Diamonds and destroy the Mines";
totallevelcount++;
ilevel[totallevelcount][0] = "Balls 2";
ilevel[totallevelcount][1] = "H%b54%129015%a9129011%b11013129%a9129c%129011c129%a9129c129ad41ad41ad41a0129%a9129c129%a9128c129%a5%13c3c129016129%b11129%a513c413b129c129%b10128129%a413013b130130129c129128%b10129%a4130%a6064%b11129%a4%13c5129c129%b11129%a9129c129%b11129%a9129c%129d3061%129d9%a9129c129%a5015%a3041c129%a9%129015%b51";
ilevel[totallevelcount][2] = "2015";
ilevel[totallevelcount][3] = "003001024030";
ilevel[totallevelcount][4] = "004009001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Balls 3";
ilevel[totallevelcount][1] = "H%102025a9%a8011%b11102102%b20102c102102%a3029%a5102%b1d25013102102%b22102102%b22102102%b22102102%b22102102a0102%b1d13%a8102102%b10102%b11102102%a4d9%a8d7%a3d9%a3d7102102%b22102102a7%a6013%b13102102%a3d7%a9013%a8102102%b22%102d6041%102d3041%102d4041%102d3041%102d6%a4038%a3038%a4038%a3038a0102d4%102025";
ilevel[totallevelcount][2] = "0217";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "005004022017001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Fortress";
ilevel[totallevelcount][1] = "V%b72%184017c184d3%a9d3185ac3184c184%a7037037%a6184c184%a6185ad41c185%a3184c184185103185%184d4d9%184d4%a3184c184d3c185184209209184c184209209184041a0184c184%a3184209209184c184209209184%a3184c184%a3%184d4c%184d4b37c184c184%037d3011%a3021%a3d7ad37184c184%a3%184d4c%184d4185a0184c184%a3184209209184c184209209184a0185184c184%a3184209209184c184209209184ac3184c184b41c%184d4013%184d4185103185184c184%a3185b37%a9184c184%a5016b41%a7184c184d3037c185d3%a9d3184c%184017%b55";
ilevel[totallevelcount][2] = "2004";
ilevel[totallevelcount][3] = "006001024023";
ilevel[totallevelcount][4] = "010004004";
ilevel[totallevelcount][5] = "013009009003001103013009007013001103013009017015103001013009019005001103";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Fortress 2";
ilevel[totallevelcount][1] = "V%b46%12c7%b1112c512c512c512b%12d11d512c512c5%12c3011%a9d5a5a5d412012b%12c9c12b12b%12c3c12d11%b1312012b12b%12c3c%12c3c12b12b%12c3c120%a612a38b38b3812b12b120%b1312b12b120%a3120%a6015b1912b12b120%a3120%a6015b1912b12b120%a3120%a6015b1912b12b120%b1101901912b12b120%b1d41019c12b12b120%b1d41019c12b12b120%b1d41019c12b12b120%a3120%a3%12c401912012b12b%12c3c%12c3%a612012b12d13ac7%b1012012b%12d17%b37";
ilevel[totallevelcount][2] = "0904";
ilevel[totallevelcount][3] = "003002024018";
ilevel[totallevelcount][4] = "002001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Chocolate";
ilevel[totallevelcount][1] = "V%b72%133017c133%a4132%a4132c132132a0133c133132%b14133c133132%a9132%a4133c133%132d3%a4132a0%132d3a0133c133132a0132%a5132132%a4133c133%a4132%a5132c132c132133c133%a3132%a6132c132a0133c133%a8132132%a3132c133c133%a9132%a5133c133%a3132a0132%a3132c132132c133c133%a7132132%a4132c133c133132%b14133c133%a5132d4c132%a4132c133c133%a6132%a8133c133a0132c132132%a3132%a4132133c%133017%b55";
ilevel[totallevelcount][2] = "2002";
ilevel[totallevelcount][3] = "001001040017";
ilevel[totallevelcount][4] = "000001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "180";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Bowling";
ilevel[totallevelcount][1] = "V%b23131021%131d3021131%b11131%a5131%a7%131d5%a4%131d8c131d9ad61a0131%a8131c131c%131d4%a4%131d5c131c131c131122131%a5131%122d3131c131c131c131122131021%131d3021131%122d3131c131c131c131%122011131c%131d3062%131d9%122d3131c131131a5%a7d7131%122d3131c131131127d3127%a7131%122d3131c131131a5%a4d7%a3131%122d3131c131131127d3127%a7%131d5c131131a5%a4d7ac7%041d5062131131127d3127%a7%131d3c%131d4a5%a4d7%a3131122131c131a0131127d3127%a7131122131c131a0131a5%a7d7131122131c131a0131131062%131011c131%a3131%b13131%a3131036%131013%a3131d4131%b15%131d3%b14";
ilevel[totallevelcount][2] = "0507";
ilevel[totallevelcount][3] = "003002023018";
ilevel[totallevelcount][4] = "015002004";
ilevel[totallevelcount][5] = "002007015008007007002011015011007007008007015008009013008011015011013009";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Frames 1";
ilevel[totallevelcount][1] = "H%b28%d6015%a9d6d6%b12d6%a9d6%a6042%a6d6%a9d6d6%b12d6%a9%d6013a6%a9d6%a6042%a4d6a6%a9d6101%d6d9a6a6%a9d6a6%a3036%a3d6a6a6%a9d6a6101d6ac4036a6a6a6%a9d6a6a6b36036ac6a6a6%a9d6a6a6%a4036d6a6a6%a9d6a6c%d6d7101d6a6%a9d6a6%a4042%a4d6a6%a9d6c%d6011101d6%a9d6%a6042%a6d6%a9%d6015%b29";
ilevel[totallevelcount][2] = "0604";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Pick up the green Laser Frames and shoot the blue walls. To fire, hold down shift and press the direction you want to shoot. You can't shoot the metal walls.";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Frames 2";
ilevel[totallevelcount][1] = "V%b90%d6020%a6042d6042%a5%d6d3%a8d6%a7d6d6%b16d6d6%b16%d6d3ac6a6c%d6d3a6d6a0%d6d3011%a3d5d5d3d6d4d6d5d5%a3d7d6d6%a3d6d6c%d6d5a6%a3d6d6%b16d6d6%b16d6d6%a8d6%a7%d6d3%a6042d6042%a5%d6020%c108";
ilevel[totallevelcount][2] = "0703";
ilevel[totallevelcount][3] = "001004040018";
ilevel[totallevelcount][4] = "012011001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%You can shoot whilst moving. Press shift mid-move and you'll stop so you can take your shot. Press S to toggle slow mode to make the timing easier.";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Frames 3";
ilevel[totallevelcount][1] = "V%b72%d6017a6%a7d61d%a41ad6a6%a7d6d4%a6d6a6%a4101ac61ac1d%a3d6a6101%a5101d6%a41a1b6a6a0101%a4d6a01d%a31b6a6%a7d6a01ac1ad6a6042%a6d6%a7d6a6%101d71d%103d7d6a6%a7102103%a6d6a6102%a6102%a3103%a3d6a6102042%a4102102103a0103a0103d6a6%a3102%a3102%a7d6a6%a7102a0103%a4d6a6%a5102c102%a7d6a6102%a6102b42a0%103d3d6c%d6017%b55";
ilevel[totallevelcount][2] = "0602";
ilevel[totallevelcount][3] = "003001024030";
ilevel[totallevelcount][4] = "002000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Frames 4";
ilevel[totallevelcount][1] = "H%b40%d6d3%a8%d6014d3d6d6%a7d6%b15d6%a7d6ad15%d6011a6%a7d6ad42d6a0%d6d3%a4d6a6%a7%d6d5ac6d4d6%a4d6042d6d6%a7%d6d3%a3d6a6%a4d6a3d6%a6d6d6c%d6d5a6%a3d6d6042d6d6%a6d6d3c1b6%a4d6%a3d6d3a6%a7d6d6c%d6d7%a3d6d6042d6%a8d6a6%a5%d6d3ac6a6%a6%d6d3c%d6d7d3%d6d4c%d6d3%a4d6%a8042%a9d6d6%a3d6a6015%d6011015%a3d3d6%a3d6%a3d6%a9d6%a4d6d6%a3%d6d5%a9%d6d6%b26";
ilevel[totallevelcount][2] = "0504";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "008010001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Permanent Laser Frames";
ilevel[totallevelcount][1] = "H%b30%d6012%b12d6c%103d8a6%b12d6101%d6d8102d6%b12d6101d6%a6d6102d6%b12d6101d6%a6d6102d6%b12d6101%d6d6a6102d6%b12d6043%a5d6a6102d6%b12%d6d6d4d6a6102d6%b17%d6d3a6102d6%b21d6102d6%b11%d6011102d6%b11d6d6%b1c6%b11d6%a5043%a5d6%b11d6d6%b1c6%b11%d6013%b54";
ilevel[totallevelcount][2] = "0714";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "000001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Permanent Laser Frames are permanent! Collecting a second frame removes the ability.";
totallevelcount++;
ilevel[totallevelcount][0] = "Mirrors 1";
ilevel[totallevelcount][1] = "H%b25%d6021%a3d6%a3d5ac5ac5ac5ac5ad43d6%a3d6a6%b15d6a6%b55052ad52%a5052ad52%b35053%a5053%b47053%a5053%b31d6a6%b21d6d4d6%b21%d6d3%b15d6a6%a3d6b43%b17d6%a3%d6d3%b15%d6d3%b26";
ilevel[totallevelcount][2] = "0316";
ilevel[totallevelcount][3] = "001001039030";
ilevel[totallevelcount][4] = "001000000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Mirrors bend your laser around corners";
totallevelcount++;
ilevel[totallevelcount][0] = "Mirrors 2";
ilevel[totallevelcount][1] = "H%b27%d6018%a6d6ad42%a3d5d5%a3042%d6d5%a6d6c%d6d5c%d6d4c%d6d5%a6d6c%d6d5c%d6d4c%d6d5%a6d6%a6053%d6d4%a4052d6%a6d6042%d601d42%d6d3a6%a6%d6012c%d6d3a6%a6d6d4d6053%a6052d6d5%a3053d6%a6d6d5%a3052%a5d6d5%d6d5%a6d6043d6%a3053%a3053d6c%d6d5%a6d6a6%a4%d6d5c%d6d5%a6d6a6052b53a6053%a7052d6%a6d6043%a4053d6c%d6d3c%d6d3a6%a6d6c%d6d6c%d6d3c%d6d3a6%a6d6a5%a5d5b42%a3042ac6%a6%d6018%b27";
ilevel[totallevelcount][2] = "0503";
ilevel[totallevelcount][3] = "004001024017";
ilevel[totallevelcount][4] = "003001000";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Cannons 1";
ilevel[totallevelcount][1] = "V%b37%d6016ac6%a4046%a9d6ac6%b14d6ac6%b14d6ac6%b14d6ac6043%a3048%a3048%a5d6a0%d601d47%a3045d6%a4d6d3046ad46d3d6%a5d6%a4d6d3%a4d3d6%a5d6%a4d6d3%a4d3d6%a5d6%a4d6d3%a4d3d6%a5d6%a4d6d3048ad48d3d6%a5d6a0%d6d6c%d6d3047%a3045d6ac6%a4046%a3046%a5d6a0%d6d3%b12d6ac6d4d6%b12d6a0%d6d3%b12d6ac6%a8048%a5d6a0%d6016%b55";
ilevel[totallevelcount][2] = "0403";
ilevel[totallevelcount][3] = "001001038030";
ilevel[totallevelcount][4] = "017003108";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Laser cannons fire deadly laser beams. You can deactivate a cannon by shooting it.";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Cannons 2";
ilevel[totallevelcount][1] = "H%b54%d6013%b11d6%a5d6042%a4d6%b11d6d6%b1c6%b11d6%a4053%a3048d6a6%b11d6%a3053%a4052ac6%b11d6d6046%a4052%a4d6%b11d6042%a4d3%a5d6%b11d6%a5d6%a5d6%b11d6%a3045052%a6d6%b11d6%a3d6%a3042d6ac6%a9%d6d3a6046%a3053%a4%d6d3%a7d6d4d6%b11d6d4d6%a7%d6017%b75";
ilevel[totallevelcount][2] = "0804";
ilevel[totallevelcount][3] = "001001040029";
ilevel[totallevelcount][4] = "007014001";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser Cannons 3";
ilevel[totallevelcount][1] = "V%b54%d6019b53ad21d6193a0%d5d3052d6d4a6d6%a3d6%a3038053%d5d3053d6d6a6d6%a3d6%a4052%d5d3b52ac6d6%a4021d6193a0%d5d3052%a3d6d6%a3d6%a3038053%d5d3053%a3d6d6%a3d6%a4052%d5d3ad52a6d6ad53b21d6193a0%d5d3052%a3d6d6%a3d6%a3038053%d5d3053%a3d6d6%a3d6%a4052%d5d3%a4d6d6053%a3021d6193a0%d5d3052%a3d6d6%a3d6%a3038053%d5d3053%a3d6d6%a3d6%a4052%d5d3%a3052d6d6%a3%d6010%a3d6d6ad52%b1d53ac6d6052%b13053a6d6b52%b13053%d6019%b54";
ilevel[totallevelcount][2] = "1606";
ilevel[totallevelcount][3] = "004006024018";
ilevel[totallevelcount][4] = "004006000";
ilevel[totallevelcount][5] = "005006005008193047008006008008193047011006011008193047014006014008193047";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser City";
ilevel[totallevelcount][1] = "H%b26%d6d3%b2c6d6d3%d6014%a7d6%a31a016%a9d6%a6%d6d6%b11%d6d6a6046%a3052a0%d6d3041%d6d3ad53%a3048d6a6b42d3d3%a3d6%a5d6%a3%d3d3a6a6c%d3d3a6a6042%a4d6d6a0%d3d3a6a6052%a6%d6d7%a6052d6a6c%d3d3ac6d6%a4042d6a6c%d3d3a6a6c%d3d3%a3d6%a5d6%a3d3d3042a6a6046%a3053a0%d6d3041%d6d3ad52%a3048d6c%d6d6%b11%d6d6%a6d6b16%a91d%a4d6%a6%d6014d3d6a6%b19d6%a3d6%b19%d6d5%b25";
ilevel[totallevelcount][2] = "0704";
ilevel[totallevelcount][3] = "002001023030";
ilevel[totallevelcount][4] = "012009004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Laser City 2";
ilevel[totallevelcount][1] = "H%a7%d6d3c%d6d3c%d6d3%a7%d6d7c%d6d3c%d6d3c%d6d6ac6d4d6%a5020%a3020%a3020%a4d6d6c%d6d7c%d6d3c%d6d3c%d6d4a6d6a6192%a5053209%a3209%a6052ac6a6%a4d6a0%d6d3a6d6%a8d6a6%a7d6%b13d6a6%a7d6%a3d6ad52%a3194d6a6a6%a3d6%a3d6%a3d6%a9d6a6%a3041a6043d6%a3d6c%d6d7209d6a6%a3%d6d5%a5d6ad53%a4d6a6%b13d6053%a6d6a6%a3d6%a9d6b19%a5d6a6%a3d6%a6191ac6102d6102d6%a3d6a6041ac6%a5016d6ac6d3d6d3d6%a3d6a6%a3d6%a5037%a3d6d3d6d3d6ad43d6c%d6023%b24";
ilevel[totallevelcount][2] = "0503";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "004003001";
ilevel[totallevelcount][5] = "010003003005046046014003013014045045018003021008048048";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Shoot Switches 1";
ilevel[totallevelcount][1] = "V%b37%d6016ac6%d5d3043d6%a9d6ac6d5d5ac6%a9d6ac6d4ac5d6%a9d6ac6%d5d4d6%a9d6a0%d6d6%a5%d6d3a6ac6%a3d6%a4%d6d3039ac6ac6ad39d6%a4d6a6%a3d6ac6%a8d6a6%a3d6ac6%a8d6c%d6d5a0%d6d7b43d6%a8d6%a8d6%a8d6%a8%d6d5%a4d6b39d6%a6d6ac6%a4d6ac6%a6d6039a6%a4%d6d5%a8d6%a7d6%a9d6%a7d6%a3%d6d7%a7d6039ac6%b13%d6d5%b45";
ilevel[totallevelcount][2] = "0408";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "010005004005128128009014006006128128016004005004128128017013007005128128021006004007001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "90";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Shoot Switches are like normal switches, but you need to shoot them.";
totallevelcount++;
ilevel[totallevelcount][0] = "Shoot Switches 2";
ilevel[totallevelcount][1] = "H%b30%d6d3104%d6d3102%d6d3%b13d6%a4d6%a4d6%a3%d6d3%a7d6ad4a06b4ab6c%d6d3d4d6%a7d6%a4d6%a4d6a6103042104d6%a7d6%a4d6%a4d6a6042%d6d3%a7d6c%d6d7a6a6102042101d6c%d6d7c%d6d7c%d6d5042d6a6%b1c6%b1c6a6%b1c6%b1c6a6%b15040%a5d6a6d6%a9d6%b1c6a6%b1c6%b1c6a6%b1c6%a9d6d6a6%a5040%b15d6a6%b1c6%b1c6a6%b1c6%b1c6c%d6d6101%d6d9103%d6d6c";
ilevel[totallevelcount][2] = "0217";
ilevel[totallevelcount][3] = "001002040018";
ilevel[totallevelcount][4] = "021003001";
ilevel[totallevelcount][5] = "007015022007001001010004022005001001014004020007001001017011020005001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%White Shoot Switches are permanent";
totallevelcount++;
ilevel[totallevelcount][0] = "Shoot Switches 3";
ilevel[totallevelcount][1] = "H%a3%d6019%a5d6%b17d6%a5109d6109%d6014a6%a5d6042d6%b13d6a6%a5108d6108%a4%d601a06d6%a4d6042d6%a4d6c109%a9d6c%d6d3107d6107%d6d3a6b42%a4%d3d3ac6a6ac6%a3042d6a6a3ac6a6%a4d6a6%a7d6a6a3ac6b19%a4d6a6%a7d6a6a3%d6d3c%d6d3ac6a6053053052052%053d3d6a6%a5040%a5d6a6053053052053053052052d6a6a0%d6d3c%d6d3d3a6a6052053053%052d3053d6a6%a4d6a6ac3a6a6053053052052053052052d6a6%a4d6a6ac3a6a6%a7d6a6b42%d3d3%a4042a6a604ac4ac4c6a6%a9109a6a6108d6d6107d6d6109d6c%d6013%b25";
ilevel[totallevelcount][2] = "0208";
ilevel[totallevelcount][3] = "006003024018";
ilevel[totallevelcount][4] = "017011004";
ilevel[totallevelcount][5] = "002016005005001001005016005007001001008016005003001001017011013006001109017011021016109001017011021007001109017011012015109001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%You may find slow mode helpful for this level (press S).";
totallevelcount++;
ilevel[totallevelcount][0] = "Shoot Switches 4";
ilevel[totallevelcount][1] = "Ha0%d6011%b13d6%a9d6%b13d6063%d6d7a6%b13d6c%d6d3%a3d6061%d6d8%a6d6a6%a5d6%a6d6d4d6%a6d6a6%a5062ad39%a3d6a6%a6d6a6ad39ac6%a5d6d6c%d6d3%a4d6a6%a5d6%a5d6d6%a3d6%a4d6a6%a5%d6d4063%d6d7%a4d6c%d6d3061%d6d3%a5d6a0%d6d3%a4d6a6%a4d6d6%a8%d6d3%a4d6a6%a4d6d6%a3039%a4%d6d3%a4d6038062b39%a3d6%a8062a6%a4d6a6%a5d6%a4d6%a3d6a6%a4d6043%d6d5063%d601a06%a4d6b64%b16d6%a4%d6020%b26";
ilevel[totallevelcount][2] = "0416";
ilevel[totallevelcount][3] = "001002022018";
ilevel[totallevelcount][4] = "001001000";
ilevel[totallevelcount][5] = "015012021012001001014006021011001001008007021010001001007013021009001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Shoot Switches 5";
ilevel[totallevelcount][1] = "H%b26%d6020%a4d6%a8039d3039d3039d3039d3d6d4d6%a4d6c%d6016a6%a4d6%b14%d6d3a6%a4d6%b10%d6d3%a3d6a6%a4d6%a5%d6d3ac6042d6%a3d6a6%a4d6%a5019042d6ac6019d6%a3d6a6%a4d6%a5%d6d3%a8d6a6%a4d6%b16d6a6%a4d6%a9d6%a6d6a6%a4d6d6%b11d6019d6a6a6%a4d6ac6019d6%a7d6042019a6a6%a4d6ac6042d6%a7%d6d3a6a6%a4d6a0%d6d3%b11d6a6%a4d6%b16%d6d3%a4%d6020%b26";
ilevel[totallevelcount][2] = "0403";
ilevel[totallevelcount][3] = "001001023030";
ilevel[totallevelcount][4] = "020016001";
ilevel[totallevelcount][5] = "012003005007103103014003006005103103016003015010103103018003021016007007";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 1";
ilevel[totallevelcount][1] = "V%c110%101013%a5101105%b10101%a5101%b11101%a5101%a3d3%a7101%a5101%a8d3a0101%a5101%b11101%a5101%a5d3%a4060101%a5101%b11101%a5101%a7d3%a3101%a5101ac3%a8101%a5101%b11101%a5101%b11101%a5%101013%b93";
ilevel[totallevelcount][2] = "0814";
ilevel[totallevelcount][3] = "005001024030";
ilevel[totallevelcount][4] = "016003004";
ilevel[totallevelcount][5] = "013014008004105105";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Move Switches allow you to move object. Land on it, press space and use the cursor keys to move the object. Press space when you're done.";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 2";
ilevel[totallevelcount][1] = "H%b27%d6018%a6d6d41d%b14d6%a6%d6015d5d6d6%b19d6%a3d6%b19d6d6d5d6d6%b19d6%a3d6%a6%d6015d5d6d6%a6d6%b15d6d6%a6d6c%d6d3ac6%a9d6%a6d6a606c6%a7%d6d4a6%a6d6a6019d6ac61b6%a31c6c6a6%a6d6%a6d606c6%a3%d6d3a6%a6d6%a6%d6d3%a7d6%a6d6%a3d6%a6d6%a5d6%a6%d6018%b51";
ilevel[totallevelcount][2] = "0509";
ilevel[totallevelcount][3] = "002001024029";
ilevel[totallevelcount][4] = "002001000";
ilevel[totallevelcount][5] = "007011017012100100018012012012100100012013019004005005";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Destroy the mines with the walls, destroy the wall with the mine!";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 3";
ilevel[totallevelcount][1] = "Ha0134047%134017%a5046%b16052134%a5134%a3132%a5060%a3d3%a3134%a5134%b17134%a5134b60%a3d3%b11134%a5134052%b1d52%a5134%a5%134012%a6134%b16134%a306ad134%b16134%a6134%b16134%a6134%a5%134012%a6134%a5134053%b1d53ac3a0134%a5134c%134d3%b13134%a5134c134d4134%b13134%a5134c%134d3%b13134%a5134%a6d3%a5060%a4134%a5134052%b15053134%a5%134019%a3";
ilevel[totallevelcount][2] = "0503";
ilevel[totallevelcount][3] = "001001039030";
ilevel[totallevelcount][4] = "007014001";
ilevel[totallevelcount][5] = "005005007003132132013003007003132132018008007003132132016016007003132132";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "150";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 4";
ilevel[totallevelcount][1] = "H150%148d9168167169%b11149b41104%a3104a0166c166%b11149c104%a7166c166%b11149%a5104a0104166c166%b11149%a9166060166%148d9151c149b20%a7166c166%a3104%a5149c149%a4104%a3104166154166%a5104104c104149c153%148d9166c166104c104104%a3104c149%b11166060166%a9149c150%148d9166c166ad20%a6149c149%a3104104b20104c166154166a0104%a3104b41149c149%a8104166c166%148d9152c149%a4104%a4166060166%b11149104%a8166c166%b11149104%a7104166154166%b11149041a0104%a5166c166%b11153%148d9166d4166%b21171167170%b11";
ilevel[totallevelcount][2] = "1202";
ilevel[totallevelcount][3] = "001001023030";
ilevel[totallevelcount][4] = "001000000";
ilevel[totallevelcount][5] = "003006012007011011016010012011011011008011012015011011012005003002041041012009022011041041012013002016041041008011011016001001008011012016005005";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 5";
ilevel[totallevelcount][1] = "H%b38%d6d8%b16d6%d3d5d5d6%b16%d6d6d5d6%b21d6d5d6%b11%d6011d5%d6d3%a9d6060%a5047%a6d6%a9d6%b13%d6011%b1206c6d606c6ad47%b17d6d6%b22d6d6%b10%d6d9d5%d6d4%b1c6%a7d6d5d6ac6%b1c6a0%d6d6d5d6a0%d6012ac6%d3d5d5d6%a3d6d4d6%b1c6060%d6d6%a3%d6d3%b10%d6d3%b31";
ilevel[totallevelcount][2] = "0214";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "003015001";
ilevel[totallevelcount][5] = "002010003010006006011007003010006006023009003010006006016016003010006006";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Remember that metal walls are indestructable";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 6";
ilevel[totallevelcount][1] = "H150%148016151%a6149d4149d5%a4d5%a3103%a3060149%a6149148152d5a5%a3d5a0103%a4149a0150148151c149ac5a5%a3d5a5103%a4153148148152c149c149a5%a3d5ac5a5103%a9149c149%a3d5d5ac5%a8150148148151c149c149d3a5%a8103%a3060149a0149c149c153%148016152a0149c149%b21149c149a0150148151a0150%148013152c153151150152d3153148148152d5015%b14149149%b16150%148d5152153%148d5151%a6103%a3149a0150148151%a7149%a4060%a5149c150152c149%a7149%b10149c149d3c149%a7149%b10153%148d3c153151%a6149%a5103%a3015%a6149%a6153%148016152";
ilevel[totallevelcount][2] = "0817";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "002003001";
ilevel[totallevelcount][5] = "012014009011015015012014017017015015017002002002004004017007002007003003";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 7";
ilevel[totallevelcount][1] = "V168%166d3171%b13167b38c169%166011171c167038034038172b6b172172b60%172d3d4167c167b38c168%16601117b167166166064167%b13167035a0167%b13167%166d3167%166011171c167053%b13052167c167%b15167c167ad20%b12167c167%a7020%a7167c167%b15167c167%b1202ad167c167%b15167c167b35ad2ac34%a7167c167%b15167c167%b15167c167%b15167c167%a7020%a7167c167%b11020%a3167c167%b15169171167052%b14045167167%166013171048168170%b1416916617b";
ilevel[totallevelcount][2] = "0304";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "003007015003035035003012015009034034015006003005001001011009003010001001019009003009001001010004003013001001013014003014001001020013003015001001";
ilevel[totallevelcount][6] = "003003015003015009006002";
ilevel[totallevelcount][7] = "180";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Move Switches 8";
ilevel[totallevelcount][1] = "H%d6d6%b13%d6d4a6b6a6c6%b13d6d3d5d6a6c%d6019a6a6a6d4d6d5%b11d5%a4d6a6c%d6d3c%d6011c%d6d3a6a6a6047d6%a6052%a8d6a6a6a6%b17d6a6a6a6%b17d6a6a6a6%b17d6a6a6d5%b18d6a6a6a6%b17d6a6a6a6%b18d5d6a6a6%b17d6a6a6a6%b17d6a6a6a6%a8053%a6d6045d6a6a6c%d6d5c%d6d8c%d6d4a6a6%a6d5%a8d5%a5d6c%d6023c";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "001002040018";
ilevel[totallevelcount][4] = "005004001";
ilevel[totallevelcount][5] = "003002012006052052005002012015053053";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "%Move the mirrors and deflect the laser";
totallevelcount++;
ilevel[totallevelcount][0] = "False Exits";
ilevel[totallevelcount][1] = "H%134025%b17132a0132c134134%b22134134%b22134134%a3d4132%b16132134134a0132132a0132%a6d4a0132%a5134134%b20132c134134%a3132d4a0132%a5132%a8134134%a6132%a7132a0132d4%a3134134a0132%b19134134%b17132%a4134134%a8132%b13134134c132%b18d4c134134c132%a8132%b11134134a4%a6d4132%b10132132134134%b16132%a5134134%a6132%a6132%a8%134025";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "002002021018";
ilevel[totallevelcount][4] = "002002000";
ilevel[totallevelcount][5] = "005003009016041041";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Stack 'em";
ilevel[totallevelcount][1] = "V%b18150%149016153148021%b15148151%149010153062150%149d3152%b11148062148%a4150149149160149160%149d5152062151%149d3148148021c16c3160%b1c8148148a0163019164%b11148148%b12104%a3148148%a5104%b10148161161165%b14148148d3019%b14148161161164%b14148148%a7150153%a7148148%a7151152%a7148148%b14162161161148%b14019d3148148%b14163161161148%b10104%a5148148%a3104%b12148148%b11162019165a0148148012%b1016c316a21148151%149011160149160149149152%b18";
ilevel[totallevelcount][2] = "0317";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "016016004";
ilevel[totallevelcount][5] = "003002003004015015022017020004015015007002009015015015";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Follow the Map";
ilevel[totallevelcount][1] = "Hb11013d7d5011d9d7d9d7d9d7d9d5013011d9d7013d7013d7d9c%d5025%a7036%b14d5d5%b16d4%a5d5d5%b22d5d5%a8036%b13d5d5%b16036%a5d5d5%a6036%b15d5d5%b11036%b1c5d5%b15036%a4036a5d5%b15036%a6d5d5%a3036%b18d5d5ad36%a6036%b11021d5d5%a4036%a7036%a9d5d5036%b21d5d5%a3036%b18d5d5b36%a8036%b11%d5025";
ilevel[totallevelcount][2] = "1210";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "000000000";
ilevel[totallevelcount][5] = "023013018001001001023013019001001001023013020001001001023013021001001001023013022001001001023013023001001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "60";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "One-way Maze";
ilevel[totallevelcount][1] = "H%b25%101022a0101d3d3062d3d3062d3d3062d3d3101d3d3064d3d3064d3d3101a0101d3d3101d3d3101d3d3101d3d3101d3d3101d3d3101d3d3101a0101101061101061%101d3061101063101101063%101d3061101101061101a0101d3d3062d3d3101d3d3101d3d3062d3d3062d3d3101d3d3101a0101d3d3101d3d3101d3d3101d3d3101d3d3101d3d3062d3d3101a0101061101101061101101061%101d3061101101063101101061101101063101a0101d3d3101d3d3064d3d3101a3064d3d3062d3d3101d3d3101a0101d3d3064d3d3101d3d3064d3d3101d3d3101d3d3101d3d3101a0101101063101101061101063%101d3061101061%101d3061101063101101a0101d3d3101d3d3101d3d3062d3d3101d3d3064d3d3101d3d3101a0101d3d3101d3d3064d3d3101d3d3101d3d3101d3d3064d3d3101a0101063%101d3061%101d5063101063%101d6063101a0101d3d3062d3d3101d3d3064d3d3064d3d3064d3d3101d3d3101a0101d3d3101d3d3064d3d3101d3d3101d3d3101d3d3064d3d3101a0%101022%b25";
ilevel[totallevelcount][2] = "1209";
ilevel[totallevelcount][3] = "002002024018";
ilevel[totallevelcount][4] = "012009004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "180";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Vault";
ilevel[totallevelcount][1] = "V%12d19%b16%12d17c120120%a3026b27b28b29b26b2012b120120%a3%12d12c120120126%b15120120126%a8126%a3126a0120120%a9126b25c126a0120120%a9126c%126d4c120120%a3%126d3%b10120120126%a4126%b10120120126%a4%126d3%a4126126a0120120%126d3%b10126a0120120%a9126%a3126c126120120%a6126a0126%a612012a23126c%126d6a0126%a312012ad126b22c126ad24a0126022a012012ad126%a3126%a5126%a312012ad126%a3126%a5126%a3%12c9129%12d10%d3016120120%d3016120120%d3d613d19%d3d8%12d19";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "002003024018";
ilevel[totallevelcount][4] = "002002004";
ilevel[totallevelcount][5] = "004015020009001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "180";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Getting Access";
ilevel[totallevelcount][1] = "Hc168167167169%b14168167167169a0166a0171%167d5169c168%167d617ad166a0166%a8166167170%a9166a0166c150148148151b15037166%a6150148148151c166a0166c149119119149b15%a8149125125149c166c16817b149119119149037015%a8149125125149c171169166d3c149119119149%b10149125125149a3166171169c153%148d5c150151%a5153148148152c16817b166%a8153152150151%a8166c16817b150148148151%a5153152c%148d5151c171169166d3c149119119149%b10149125125149a3166171169c149119119149%a8015037149125125149c16817b166c149119119149%a8015c149125125149c166a0166c153148148152%a6166037015c153148148152c166a0166%a9168167166%a8166a0166a0168%167d617b171%167d5169a0166a0171167167170%b14171167167170%b25";
ilevel[totallevelcount][2] = "0812";
ilevel[totallevelcount][3] = "002001024030";
ilevel[totallevelcount][4] = "012008004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Hide and Seek";
ilevel[totallevelcount][1] = "H144%142022145143%a5129129%a3129c129129%a5129a0143143129%a6d3129%a6129a3%a4143143ac3%b13129a0129a0143143%a7129%a4129d3a0129%a5143143%b12%129d3c129c129%a3143143a0129%b19143143%a9129129%b10129143143%a5129c129129d3%b12143143c129129%a8129%a5129%a4143143%b22143143%b13129a0129c129d3a0143143%a5d3%a8129%a4129129c143143129%a5129%a4129%b10143143d3%a8129%b12143143129%a8d3a0129c129%a7143143%a7129%a4129%a7129d3143147%142022146";
ilevel[totallevelcount][2] = "0202";
ilevel[totallevelcount][3] = "001001040030";
ilevel[totallevelcount][4] = "017018004";
ilevel[totallevelcount][5] = "";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "120";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "Staircases";
ilevel[totallevelcount][1] = "V%1c17c1d%b14d51a1d%a4%1b8d3%1b3c1d1b3ac31d%121d51b31d1211a1d1211b3ac31d%121d41b31d1211a1d1211211b3ac31d%121d3%1b31211a1d%121d31b3ac31d%121d61a1d%121d41b3ac31d%121d51a%1b7%a4%1b6c1a015%a4%037d4%a41ac1d%a6%038d4%a41ac1d%b141ac1ac%038d5%a71ac1ac%037d5%a5015c1ac%1b3%a5%1b9c1d1211211b3%a3d31d%121d61a1d%121d31b3%a3d31d%121d51a1d%121d41b3%a3d31d%121d41a1d%121d51b3%a3d31d%121d31a%1b8d3%a3d3%1b4c1d%a7022%a41b41ac1d%b121b61d1a1c26%a61d%a41ac1a%1c17c";
ilevel[totallevelcount][2] = "1115";
ilevel[totallevelcount][3] = "004002024016";
ilevel[totallevelcount][4] = "022015013";
ilevel[totallevelcount][5] = "023002023014001001";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
ilevel[totallevelcount][0] = "The Vault 2";
ilevel[totallevelcount][1] = "H%a5d6%a4d6d9%b1d11%d6d7%b11%d6d3%a3d6d6ad1a06%b1d41%a6d6d6a7038c103%a5d7%12c5021%a4013d6d6%a3%d6021a0%d6d5%a9d6%a5%d6d3a6%a4041%a6d6%a7d6d6ac6015a6%a6d6ad41a6%a4d6d6%b22d6d6%a3d6d6ac6%a4041ac6%a4d6d5d6d6%a3064%a7d6%a8d6d5%d6d8061%d6014d5d6d6019d3d3126%a5d6%a5101ac5d606a06d6019d3d3126%a5064c101%a7d6d6a6d6%d3d3126126%a4d6%b1c6d5d6d6d3016d3126%a5d6101%a9d6a6d6d3042019126%a4042d6d5c101d5a0101%a5%d6023a6";
ilevel[totallevelcount][2] = "0701";
ilevel[totallevelcount][3] = "001003040018";
ilevel[totallevelcount][4] = "020002004";
ilevel[totallevelcount][5] = "018004006004103001018004003007001103022013023015005005";
ilevel[totallevelcount][6] = "";
ilevel[totallevelcount][7] = "0";
ilevel[totallevelcount][8] = "1";
ilevel[totallevelcount][9] = "";
totallevelcount++;
Frame 43
count = 0;
g = 0;
while (g < totallevelcount) {
if (((ilevel[g][0] != undefined) && (levelstatus[g] != 2)) && (count < 5)) {
levelstatus[g] = 1;
count++;
}
g++;
}
selectedlevel = -1;
levelsopen = 0;
g = 0;
while (g < totallevelcount) {
if ((levelstatus[g] == 1) && (selectedlevel == -1)) {
selectedlevel = g;
}
if (levelstatus[g] > 0) {
levelsopen++;
}
g++;
}
if (selectedlevel == -1) {
selectedlevel = 0;
}
Frame 44
function getlevelforbox(levelindex, indexoffset) {
igetlevelforbox = "";
if (((levelindex + indexoffset) >= 0) && ((levelindex + indexoffset) < totallevelcount)) {
if ((levelstatus[levelindex + indexoffset] == 1) && (ilevel[levelindex + indexoffset][0] != undefined)) {
igetlevelforbox = (((levelindex + indexoffset) + 1) + ") ") + ilevel[levelindex + indexoffset][0];
}
if (levelstatus[levelindex + indexoffset] == 2) {
igetlevelforbox = ((((levelindex + indexoffset) + 1) + ") ") + ilevel[levelindex + indexoffset][0]) + " \u263A";
}
}
return(igetlevelforbox);
}
function updatelevellist(levelindex) {
levelselect1 = getlevelforbox(levelindex, -2);
levelselect2 = getlevelforbox(levelindex, -1);
levelselect3 = getlevelforbox(levelindex, 0);
levelselect4 = getlevelforbox(levelindex, 1);
levelselect5 = getlevelforbox(levelindex, 2);
txtlevelselect3.backgroundColor = 102;
g = 0;
while (g <= 6) {
_root["txtlevelselect" + g].textColor = 6710886 /* 0x666666 */;
if (levelstatus[(levelindex + g) - 3] == 2) {
_root["txtlevelselect" + g].textColor = 16776960 /* 0xFFFF00 */;
}
g++;
}
if (levelstatus[levelindex] == 1) {
txtlevelselect3.textColor = 16777215 /* 0xFFFFFF */;
} else {
txtlevelselect3.textColor = 16776960 /* 0xFFFF00 */;
}
txtlevelselect3.borderColor = 16777215 /* 0xFFFFFF */;
txtlevelselect3.backgroundColor = 204;
}
selectedgame = Math.min(selectedgame, totallevelcount);
updatelevellist(selectedlevel);
gameframe.gotoAndStop(2);
attachMovie("bluebarfade", "bluebarfade", 149);
bluebarfade._x = 1;
bluebarfade._y = 1;
gameframe.gamestatus.totalgamecomplete.text = percentage_game_complete();
if (gameframe.gamestatus.totalgamecomplete.text == "100%") {
gamecomplete._visible = true;
} else {
gamecomplete._visible = false;
}
tipwindow.removeMovieClip();
iclearcount = 0;
keylock = 1;
Instance of Symbol 257 MovieClip in Frame 44
on (press) {
getURL ("http://www.cyadonia.co.uk/", "_blank");
}
Frame 45
if (keylock == 0) {
if (Key.isDown(38)) {
selectedlevel = Math.max(selectedlevel - 1, 0);
updatelevellist(selectedlevel);
keylock = 1;
} else if (Key.isDown(40)) {
selectedlevel = Math.min(selectedlevel + 1, levelsopen - 1);
updatelevellist(selectedlevel);
keylock = 1;
} else if (Key.isDown(34)) {
selectedlevel = Math.min(selectedlevel + 7, levelsopen - 1);
updatelevellist(selectedlevel);
keylock = 1;
} else if (Key.isDown(33)) {
selectedlevel = Math.max(selectedlevel - 7, 0);
updatelevellist(selectedlevel);
keylock = 1;
} else if (Key.isDown(72) && (pkeylock == 0)) {
help = 1;
pkeylock = 1;
} else if (Key.isDown(32) || (Key.isDown(13))) {
editor = 0;
txtload = "";
g = 0;
while (g <= 9) {
iload[g] = ilevel[selectedlevel][g];
g++;
}
tipshow = 0;
iload();
gameframe.gotoAndStop(3);
gotoAndPlay(_currentframe + 12);
} else if ((Key.isDown(69) && (Key.isDown(16))) && (keylock == 0)) {
if (iclearcount == 0) {
iclearcount = 10;
} else {
editor = 1;
gotoAndPlay(_currentframe + 2);
}
keylock = 1;
}
}
if (keylock == 1) {
if (((((((((Key.isDown(38) == false) && (Key.isDown(40) == false)) && (Key.isDown(33) == false)) && (Key.isDown(34) == false)) && (Key.isDown(32) == false)) && (Key.isDown(13) == false)) && (Key.isDown(81) == false)) && (Key.isDown(80) == false)) && (Key.isDown(69) == false)) {
keylock = 0;
}
}
if (iclearcount > 0) {
iclearcount--;
}
Frame 46
gotoAndPlay (45);
Frame 47
init();
_root.createEmptyMovieClip("edit", 1);
idepth = 1;
y = 0;
while (y <= 19) {
x = 0;
while (x <= 25) {
if ((((y == 0) || (x == 0)) || (y == 19)) || (x == 25)) {
a_e[x][y] = 6;
} else {
edit.attachMovie("obj", (("ObjX" + x) + "Y") + y, idepth);
edit[(("ObjX" + x) + "Y") + y]._x = (x - 1) * 25;
edit[(("ObjX" + x) + "Y") + y]._y = (y - 1) * 25;
chgobj_e(x, y, 1);
idepth++;
}
x++;
}
y++;
}
edit._y = 25;
edit.attachMovie("crosshairs", "crossv", idepth);
edit.crossv.gotoAndStop(1);
idepth++;
edit.attachMovie("crosshairs", "crossh", idepth);
edit.crossh.gotoAndStop(2);
idepth++;
edit.attachMovie("background", "background", idepth);
edit.background.gotoAndStop(1);
edit.background._width = 25;
edit.background._height = 25;
idepth++;
edit.attachMovie("obj", "obj", idepth);
edit.obj.gotoAndStop(obj_e);
idepth++;
edit.attachMovie("cursor", "cursor", idepth);
block = 0;
keylock = 0;
iquit = 0;
idepth++;
edit.attachMovie("cyad", "cyad", idepth);
edit.cyad.gotoAndStop(1);
edit.cyad._x = (cyadx - 1) * 25;
edit.cyad._y = (cyady - 1) * 25;
diamondchgx = 0;
diamondchgy = 0;
diamondchgo = 0;
switchmode = 0;
changemode = 0;
teleportmode = 0;
zoommode = 0;
zoomstr = "";
zoomstrtemp = "";
imode = 0;
icount = 0;
iclearcount = 0;
timemode = 0;
gameframe.txtdatarequest = "";
gameframe.inputdata = "";
mouselock = 0;
titlestr = "Level Name";
difficultystr = 1;
timestr = 0;
helpstr = 1;
iplay = 0;
levelhelpstr = "";
zx1 = 1;
zy1 = 1;
zx2 = 40;
zy2 = 30;
loadmode = 0;
savemode = 0;
Frame 48
edit.onEnterFrame = function () {
if ((loadmode == 0) && (savemode == 0)) {
cx = Math.max(Math.min(int(edit._xmouse / 25), 23), 0);
cy = Math.max(Math.min(int((edit._ymouse + 25) / 25), 18), 1) - 1;
edit.cursor._x = cx * 25;
edit.cursor._y = cy * 25;
edit.obj._x = cx * 25;
edit.obj._y = cy * 25;
edit.background._x = cx * 25;
edit.background._y = cy * 25;
edit.crossv._x = (cx * 25) + 12.5;
edit.crossv._y = 0;
edit.crossh._y = (cy * 25) + 12.5;
if (keylock == 1) {
if ((((((Key.isDown(75) == false) && (Key.isDown(65) == false)) && (Key.isDown(83) == false)) && (Key.isDown(81) == false)) && (Key.isDown(32) == false)) && (Key.isDown(68) == false)) {
if ((((Key.isDown(37) == false) && (Key.isDown(39) == false)) && (Key.isDown(38) == false)) && (Key.isDown(40) == false)) {
keylock = 0;
icount == 0;
edit.obj._xscale = 100;
edit.obj._yscale = 100;
}
}
}
if ((Key.isDown(65) && (keylock == 0)) && (icount == 0)) {
if (Key.isDown(16)) {
obj_e = Math.max((obj_e = obj_e - 5), 1);
} else {
obj_e = Math.max((obj_e = obj_e - 1), 1);
}
edit.obj.gotoAndStop(obj_e);
keylock = 1;
icount = 5;
}
if ((Key.isDown(83) && (keylock == 0)) && (icount == 0)) {
if (Key.isDown(16)) {
obj_e = obj_e + 5;
} else {
obj_e++;
}
edit.obj.gotoAndStop(obj_e);
keylock = 1;
icount = 5;
}
if (imode == 0) {
if (Key.isDown(16) && (mousedown == 1)) {
if (block == 0) {
bx = cx;
by = cy;
block = 1;
edit.attachMovie("cursor", "cursor2", 100000);
edit.cursor2._x = cx * 25;
edit.cursor2._y = cy * 25;
}
} else if (block == 1) {
y = Math.min(by, cy);
while (y <= Math.max(by, cy)) {
x = Math.min(bx, cx);
while (x <= Math.max(bx, cx)) {
chgobj_e(x + 1, y + 1, obj_e);
x++;
}
y++;
}
block = 0;
edit.cursor2.removeMovieClip();
}
if (Key.isDown(68) && (keylock == 0)) {
diamondchgx = cx + 1;
diamondchgy = cy + 1;
diamondchgo = obj_e;
edit.obj._xscale = 200;
edit.obj._yscale = 200;
keylock = 1;
}
if (((mousedown == 1) && (block == 0)) && (mouselock == 0)) {
if (obj_e == 2) {
cyadx = cx + 1;
cyady = cy + 1;
edit.cyad._x = (cyadx - 1) * 25;
edit.cyad._y = (cyady - 1) * 25;
} else {
chgobj_e(cx + 1, cy + 1, obj_e);
}
}
if (Key.isDown(86) && (Key.isDown(16))) {
edit._visible = false;
savemode = 1;
}
if (Key.isDown(79) && (Key.isDown(16))) {
edit._visible = false;
loadmode = 1;
}
}
if (Key.isDown(32) && (keylock == 0)) {
keylock = 1;
if ((cx == (cyadx - 1)) && (cy == (cyady - 1))) {
obj_e = 2;
} else {
obj_e = a_e[cx + 1][cy + 1];
}
edit.obj.gotoAndStop(obj_e);
}
K = Key.getCode();
if ((K >= 48) && (K <= 57)) {
if (Key.isDown(16)) {
obj_e = ((K - 48) * 10) + 100;
} else {
obj_e = Math.max((K - 48) * 10, 1);
}
edit.obj.gotoAndStop(obj_e);
}
if ((Key.isDown(87) && (Key.isDown(16))) && (imode == 0)) {
switchmode = 1;
imode = 1;
gameframe.txtdatarequest = "Switch no:";
edit.attachMovie("cursor", "cursor2", 100000);
edit.attachMovie("cursor", "cursor3", 100001);
}
if ((switchmode > 0) && (Key.isDown(81))) {
switchmode = 0;
imode = 0;
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
if ((switchmode == 1) && (mouselock == 0)) {
gameframe.inputdata = (((((((((((cx + ":") + iswitch_e[cx][0]) + ",") + iswitch_e[cx][1]) + ",") + iswitch_e[cx][2]) + ",") + iswitch_e[cx][3]) + ",") + iswitch_e[cx][4]) + ",") + iswitch_e[cx][5];
edit.cursor2._x = (iswitch_e[cx][0] - 1) * 25;
edit.cursor2._y = (iswitch_e[cx][1] - 1) * 25;
edit.cursor3._x = (iswitch_e[cx][2] - 1) * 25;
edit.cursor3._y = (iswitch_e[cx][3] - 1) * 25;
if (mousedown == 1) {
switchi = cx;
switchmode = 2;
gameframe.txtdatarequest = "Swtch xy (k=clear):";
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
mouselock = 1;
}
}
if ((switchmode == 2) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
iswitch_e[switchi][0] = cx + 1;
iswitch_e[switchi][1] = cy + 1;
switchmode = 3;
gameframe.txtdatarequest = "Obj xy:";
mouselock = 1;
}
if (Key.isDown(75)) {
iswitch_e[switchi][0] = 0;
iswitch_e[switchi][1] = 0;
iswitch_e[switchi][2] = 0;
iswitch_e[switchi][3] = 0;
iswitch_e[switchi][4] = 0;
iswitch_e[switchi][5] = 0;
switchmode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
}
if ((switchmode == 3) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
iswitch_e[switchi][2] = cx + 1;
iswitch_e[switchi][3] = cy + 1;
switchmode = 4;
gameframe.txtdatarequest = "Obj from:";
mouselock = 1;
}
}
if ((switchmode == 4) && (mouselock == 0)) {
gameframe.inputdata = obj_e;
if (mousedown == 1) {
iswitch_e[switchi][4] = obj_e;
switchmode = 5;
gameframe.txtdatarequest = "Obj to:";
mouselock = 1;
}
}
if ((switchmode == 5) && (mouselock == 0)) {
gameframe.inputdata = obj_e;
if (mousedown == 1) {
iswitch_e[switchi][5] = obj_e;
switchmode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
}
if ((Key.isDown(84) && (Key.isDown(16))) && (imode == 0)) {
teleportmode = 1;
imode = 1;
gameframe.txtdatarequest = "Teleport no:";
edit.attachMovie("cursor", "cursor2", 100000);
edit.attachMovie("cursor", "cursor3", 100001);
}
if ((teleportmode > 0) && (Key.isDown(81))) {
teleportmode = 0;
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
if ((teleportmode == 1) && (mouselock == 0)) {
gameframe.inputdata = (((((((cx + ":") + iteleport_e[cx][0]) + ",") + iteleport_e[cx][1]) + ",") + iteleport_e[cx][2]) + ",") + iteleport_e[cx][3];
edit.cursor2._x = (iteleport_e[cx][0] - 1) * 25;
edit.cursor2._y = (iteleport_e[cx][1] - 1) * 25;
edit.cursor3._x = (iteleport_e[cx][2] - 1) * 25;
edit.cursor3._y = (iteleport_e[cx][3] - 1) * 25;
if (mousedown == 1) {
teleporti = cx;
teleportmode = 2;
gameframe.txtdatarequest = "Tele xy (k=clear):";
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
mouselock = 1;
}
}
if ((teleportmode == 2) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
iteleport_e[teleporti][0] = cx + 1;
iteleport_e[teleporti][1] = cy + 1;
teleportmode = 3;
gameframe.txtdatarequest = "Landing xy:";
mouselock = 1;
}
if (Key.isDown(75)) {
iteleport_e[teleporti][0] = 0;
iteleport_e[teleporti][1] = 0;
iteleport_e[teleporti][2] = 0;
iteleport_e[teleporti][3] = 0;
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
teleportmode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
}
if ((teleportmode == 3) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
iteleport_e[teleporti][2] = cx + 1;
iteleport_e[teleporti][3] = cy + 1;
teleportmode = 0;
edit.cursor2.removeMovieClip();
edit.cursor3.removeMovieClip();
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
}
if ((Key.isDown(67) && (Key.isDown(16))) && (imode == 0)) {
changemode = 1;
imode = 1;
gameframe.txtdatarequest = "From Object:";
}
if ((changemode > 0) && (Key.isDown(81))) {
changemode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
if ((changemode == 1) && (mouselock == 0)) {
gameframe.inputdata = obj_e;
if (mousedown == 1) {
fromobj = obj_e;
changemode = 2;
gameframe.txtdatarequest = "To Object:";
mouselock = 1;
}
}
if ((changemode == 2) && (mouselock == 0)) {
gameframe.inputdata = obj_e;
if (mousedown == 1) {
toobj = obj_e;
changemode = 3;
gameframe.txtdatarequest = "Area:";
gameframe.inputdata = "";
mouselock = 1;
}
}
if ((changemode == 3) && (mouselock == 0)) {
if (Key.isDown(16) && (mousedown == 1)) {
if (block == 0) {
bx = cx;
by = cy;
block = 1;
edit.attachMovie("cursor", "cursor2", 100000);
edit.cursor2._x = cx * 25;
edit.cursor2._y = cy * 25;
}
} else if (block == 1) {
y = Math.min(by, cy);
while (y <= Math.max(by, cy)) {
x = Math.min(bx, cx);
while (x <= Math.max(bx, cx)) {
if (a_e[x + 1][y + 1] == fromobj) {
chgobj_e(x + 1, y + 1, toobj);
}
x++;
}
y++;
}
block = 0;
edit.cursor2.removeMovieClip();
changemode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
}
if ((Key.isDown(76) && (Key.isDown(16))) && (imode == 0)) {
timemode = 1;
imode = 1;
gameframe.txtdatarequest = "Time limit (k=clear):";
}
if ((timemode > 0) && (Key.isDown(81))) {
timemode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
if (timemode == 1) {
iminute = int(((cy * 20) + cx) / 60);
isecond = int(((cy * 20) + cx) - (iminute * 60));
if (isecond < 10) {
gameframe.inputdata = (iminute + ":0") + isecond;
} else {
gameframe.inputdata = (iminute + ":") + isecond;
}
if (mousedown == 1) {
timestr = (cy * 20) + cx;
timemode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
if (Key.isDown(75)) {
timestr = 0;
imode = 0;
timemode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
}
}
if ((Key.isDown(90) && (Key.isDown(16))) && (imode == 0)) {
zoommode = 1;
imode = 1;
gameframe.txtdatarequest = "Zoom Top Left:";
}
if ((zoommode == 1) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
zx1 = cx + 1;
zy1 = cy + 1;
zoommode = 2;
gameframe.txtdatarequest = "Zoom bottom right:";
mouselock = 1;
}
if (Key.isDown(27)) {
zoommode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
}
if ((zoommode == 2) && (mouselock == 0)) {
gameframe.inputdata = ((cx + 1) + ", ") + (cy + 1);
if (mousedown == 1) {
zx2 = cx + 1;
zy2 = cy + 1;
zoommode = 0;
imode = 0;
gameframe.inputdata = "";
gameframe.txtdatarequest = "";
mouselock = 1;
}
}
if (imode == 0) {
if ((Key.isDown(37) && (Key.isDown(16))) && (keylock == 0)) {
y = 1;
while (y <= 18) {
tempobj = a_e[1][y];
x = 1;
while (x <= 23) {
chgobj_e(x, y, a_e[x + 1][y]);
x++;
}
chgobj_e(24, y, tempobj);
y++;
}
cyadx--;
if (cyadx == 0) {
cyadx = 24;
}
edit.cyad._x = (cyadx - 1) * 25;
g = 0;
while (g <= 31) {
if (iswitch_e[g][0] > 0) {
iswitch_e[g][0]--;
iswitch_e[g][2]--;
if (iswitch_e[g][0] == 0) {
iswitch_e[g][0] = 24;
}
if (iswitch_e[g][2] == 0) {
iswitch_e[g][2] = 24;
}
}
if (iteleport_e[g][0] > 0) {
iteleport_e[g][0]--;
iteleport_e[g][2]--;
if (iteleport_e[g][0] == 0) {
iteleport_e[g][0] = 24;
}
if (iteleport_e[g][2] == 0) {
iteleport_e[g][2] = 24;
}
}
g++;
}
diamondchgx = Math.max(diamondchgx - 1, 1);
zx1 = Math.max(zx1 - 1, 1);
zx2 = Math.max(zx2 - 1, 1);
keylock = 1;
}
if ((Key.isDown(39) && (Key.isDown(16))) && (keylock == 0)) {
y = 1;
while (y <= 18) {
tempobj = a_e[24][y];
x = 24;
while (x >= 2) {
chgobj_e(x, y, a_e[x - 1][y]);
x--;
}
chgobj_e(1, y, tempobj);
y++;
}
cyadx++;
if (cyadx == 25) {
cyadx = 1;
}
edit.cyad._x = (cyadx - 1) * 25;
g = 0;
while (g <= 31) {
if (iswitch_e[g][0] > 0) {
iswitch_e[g][0]++;
iswitch_e[g][2]++;
if (iswitch_e[g][0] == 25) {
iswitch_e[g][0] = 1;
}
if (iswitch_e[g][2] == 25) {
iswitch_e[g][2] = 1;
}
}
if (iteleport_e[g][0] > 0) {
iteleport_e[g][0]++;
iteleport_e[g][2]++;
if (iteleport_e[g][0] == 25) {
iteleport_e[g][0] = 1;
}
if (iteleport_e[g][2] == 25) {
iteleport_e[g][2] = 1;
}
}
g++;
}
diamondchgx = Math.min(diamondchgx + 1, 24);
zx1 = Math.min(zx1 + 1, 24);
zx2 = Math.min(zx2 + 1, 24);
keylock = 1;
}
if ((Key.isDown(38) && (Key.isDown(16))) && (keylock == 0)) {
x = 1;
while (x <= 24) {
tempobj = a_e[x][1];
y = 1;
while (y <= 17) {
chgobj_e(x, y, a_e[x][y + 1]);
y++;
}
chgobj_e(x, 18, tempobj);
x++;
}
cyady--;
if (cyady == 0) {
cyady = 18;
}
edit.cyad._y = (cyady - 1) * 25;
g = 0;
while (g <= 31) {
if (iswitch_e[g][0] > 0) {
iswitch_e[g][1]--;
iswitch_e[g][3]--;
if (iswitch_e[g][1] == 0) {
iswitch_e[g][1] = 18;
}
if (iswitch_e[g][3] == 0) {
iswitch_e[g][3] = 18;
}
}
if (iteleport_e[g][0] > 0) {
iteleport_e[g][1]--;
iteleport_e[g][3]--;
if (iteleport_e[g][1] == 0) {
iteleport_e[g][1] = 18;
}
if (iteleport_e[g][3] == 0) {
iteleport_e[g][3] = 18;
}
}
g++;
}
diamondchgy = Math.max(diamondchgy - 1, 1);
zy1 = Math.max(zy1 - 1, 1);
zy2 = Math.max(zy2 - 1, 1);
keylock = 1;
}
if ((Key.isDown(40) && (Key.isDown(16))) && (keylock == 0)) {
x = 1;
while (x <= 24) {
tempobj = a_e[x][18];
y = 18;
while (y >= 2) {
chgobj_e(x, y, a_e[x][y - 1]);
y--;
}
chgobj_e(x, 1, tempobj);
x++;
}
cyady++;
if (cyady == 19) {
cyady = 1;
}
edit.cyad._y = (cyady - 1) * 25;
g = 0;
while (g <= 31) {
if (iswitch_e[g][0] > 0) {
iswitch_e[g][1]++;
iswitch_e[g][3]++;
if (iswitch_e[g][1] == 19) {
iswitch_e[g][1] = 1;
}
if (iswitch_e[g][3] == 19) {
iswitch_e[g][3] = 1;
}
}
if (iteleport_e[g][0] > 0) {
iteleport_e[g][1]++;
iteleport_e[g][3]++;
if (iteleport_e[g][1] == 19) {
iteleport_e[g][1] = 1;
}
if (iteleport_e[g][3] == 19) {
iteleport_e[g][3] = 1;
}
}
g++;
}
diamondchgy = Math.min(diamondchgy + 1, 18);
zy1 = Math.min(zy1 + 1, 18);
zy2 = Math.min(zy2 + 1, 18);
keylock = 1;
}
}
if (imode == 0) {
if ((Key.isDown(75) && (Key.isDown(16))) && (keylock == 0)) {
if (iclearcount == 0) {
iclearcount = 10;
} else {
init();
}
keylock = 1;
}
if ((Key.isDown(81) && (Key.isDown(16))) && (keylock == 0)) {
if (iclearcount == 0) {
iclearcount = 10;
} else {
editor = 0;
iquit = 1;
}
keylock = 1;
}
}
if (mousedown == 0) {
mouselock = 0;
}
gameframe.txtobj = obj_e;
gameframe.txtcoords = ((cx + 1) + ", ") + (cy + 1);
if (block == 1) {
gameframe.txtcoords = (((Math.max(bx, cx) - Math.min(bx, cx)) + 1) + ", ") + ((Math.max(by, cy) - Math.min(by, cy)) + 1);
}
if ((Key.isDown(80) && (Key.isDown(16))) && (imode == 0)) {
savetimeleft = 0;
cx_save = 0;
cy_save = 0;
iplay = 1;
}
}
if (icount > 0) {
icount--;
}
if (iclearcount > 0) {
iclearcount--;
}
};
gameframe.gotoAndStop(6);
Frame 50
if (icount > 0) {
icount--;
}
if (savemode == 1) {
gotoAndPlay(_currentframe + 1);
} else if (loadmode == 1) {
gotoAndPlay(_currentframe + 4);
} else if (iplay == 1) {
iplay = 0;
gotoAndPlay(_currentframe + 7);
} else if (iquit == 1) {
delete edit.onEnterFrame;
edit._visible = false;
gameframe.gotoAndStop(9);
gotoAndPlay(_currentframe - 41);
} else {
gotoAndPlay(_currentframe - 1);
}
Frame 51
levelstr = "";
levelstrH = "";
cs = 0;
count = 0;
y = 1;
while (y <= 18) {
x = 1;
while (x <= 24) {
c = a_e[x][y];
if (c == 1) {
c = 0;
}
if (c == cs) {
count = count + 1;
} else {
if (count > 2) {
if (count <= 999) {
levelstrH = ((levelstrH + "%") + format(cs, 3)) + format(count, 3);
} else {
levelstrH = ((levelstrH + "%") + format(cs, 3)) + format(999, 3);
levelstrH = ((levelstrH + "%") + format(cs, 3)) + format(count - 999, 3);
}
} else {
if (count == 1) {
levelstrH = levelstrH + format(cs, 3);
}
if (count == 2) {
levelstrH = (levelstrH + format(cs, 3)) + format(cs, 3);
}
}
cs = c;
count = 1;
}
x++;
}
y++;
}
if (count > 2) {
levelstrH = ((levelstrH + "%") + format(cs, 3)) + format(count, 3);
} else {
if (count == 1) {
levelstrH = levelstrH + format(cs, 3);
}
if (count == 2) {
levelstrH = (levelstrH + format(cs, 3)) + format(cs, 3);
}
}
levelstrV = "";
cs = 0;
count = 0;
x = 1;
while (x <= 24) {
y = 1;
while (y <= 18) {
c = a_e[x][y];
if (c == 1) {
c = 0;
}
if (c == cs) {
count = count + 1;
} else {
if (count > 2) {
if (count <= 999) {
levelstrV = ((levelstrV + "%") + format(cs, 3)) + format(count, 3);
} else {
levelstrV = ((levelstrV + "%") + format(cs, 3)) + format(999, 3);
levelstrV = ((levelstrV + "%") + format(cs, 3)) + format(count - 999, 3);
}
} else {
if (count == 1) {
levelstrV = levelstrV + format(cs, 3);
}
if (count == 2) {
levelstrV = (levelstrV + format(cs, 3)) + format(cs, 3);
}
}
cs = c;
count = 1;
}
y++;
}
x++;
}
if (count > 2) {
levelstrV = ((levelstrV + "%") + format(cs, 3)) + format(count, 3);
} else {
if (count == 1) {
levelstrV = levelstrV + format(cs, 3);
}
if (count == 2) {
levelstrV = (levelstrV + format(cs, 3)) + format(cs, 3);
}
}
if (levelstrH.length <= levelstrV.length) {
levelstr = "H" + levelstrH;
} else {
levelstr = "V" + levelstrV;
}
levelstr = substitute(levelstr, "00000", "a");
levelstr = substitute(levelstr, "0000", "b");
levelstr = substitute(levelstr, "000", "c");
levelstr = substitute(levelstr, "00", "d");
levelstr = substitute(levelstr, "aa", "e");
levelstr = substitute(levelstr, "ee", "f");
diamondstr = (format(diamondchgx, 3) + format(diamondchgy, 3)) + format(diamondchgo, 3);
startstr = format(cyadx, 2) + format(cyady, 2);
zoomstr = ((format(zx1, 3) + format(zy1, 3)) + format(zx2, 3)) + format(zy2, 3);
switchstr = "";
g = 0;
while (g < 40) {
if (iswitch_e[g][0] > 0) {
h = 0;
while (h < 6) {
switchstr = switchstr + format(iswitch_e[g][h], 3);
h++;
}
}
g++;
}
teleportstr = "";
g = 0;
while (g < 40) {
if (iteleport_e[g][0] > 0) {
h = 0;
while (h < 4) {
teleportstr = teleportstr + format(iteleport_e[g][h], 3);
h++;
}
}
g++;
}
txtsave = " <level>\r";
txtsave = (((txtsave + " <title>") + titlestr) + "</title>") + "\r";
txtsave = (((txtsave + " <levelstr>") + levelstr) + "</levelstr>") + "\r";
txtsave = (((txtsave + " <start>") + startstr) + "</start>") + "\r";
txtsave = (((txtsave + " <zoom>") + zoomstr) + "</zoom>") + "\r";
txtsave = (((txtsave + " <diamond>") + diamondstr) + "</diamond>") + "\r";
txtsave = (((txtsave + " <switch>") + switchstr) + "</switch>") + "\r";
txtsave = (((txtsave + " <teleport>") + teleportstr) + "</teleport>") + "\r";
txtsave = (((txtsave + " <time>") + timestr) + "</time>") + "\r";
txtsave = (((txtsave + " <help>") + helppage) + "</help>") + "\r";
txtsave = (((txtsave + " <helpstr>") + levelhelpstr) + "</helpstr>") + "\r";
txtsave = txtsave + " </level>";
Frame 52
if (Key.isDown(13)) {
savemode = 0;
edit._visible = true;
gotoAndPlay(_currentframe - 3);
}
Frame 53
gotoAndPlay(_currentframe - 1);
Frame 54
txtload = "";
Frame 55
if (Key.isDown(13)) {
if (txtload != "") {
iload(txtload);
}
loadmode = 0;
edit._visible = true;
gotoAndPlay(_currentframe - 6);
}
Frame 56
gotoAndPlay(_currentframe - 1);
Frame 57
function laserfire() {
if (laserstate == 1) {
if ((((Key.isDown(38) == false) && (Key.isDown(40) == false)) && (Key.isDown(37) == false)) && (Key.isDown(39) == false)) {
laserstate = 2;
lx = cx;
ly = cy;
ldx = 0;
ldy = 0;
}
}
if (laserstate == 2) {
if (Key.isDown(16) == false) {
laserstate = 0;
}
if (Key.isDown(38)) {
ldy = -1;
laserstate = 3;
}
if (Key.isDown(40)) {
ldy = 1;
laserstate = 3;
}
if (Key.isDown(37)) {
ldx = -1;
laserstate = 3;
}
if (Key.isDown(39)) {
ldx = 1;
laserstate = 3;
}
}
if (laserstate == 3) {
sldx = ldx;
sldy = ldy;
lasercount = 0;
if (laserframe == 1) {
game.laserframe.removeMovieClip();
laserframe = 0;
}
laserstate = 4;
laser_done = false;
}
hit_cannon = false;
if (laserstate == 4) {
laser_on("cyad");
if (laser_done == true) {
laserstate = 5;
}
}
if (hit_cannon == true) {
slx = lx;
sly = ly;
ldx = 0;
ldy = 0;
if (lobj == 45) {
ldy = -1;
}
if (lobj == 46) {
ldx = 1;
}
if (lobj == 47) {
ldy = 1;
}
if (lobj == 48) {
ldx = -1;
}
laserstate = 21;
laser_done = false;
do {
laser_off(0);
} while (laser_done == false);
}
if (laserstate == 21) {
lx = slx;
ly = sly;
laserstate = 5;
}
if (laserstate == 5) {
lx = cx;
ly = cy;
ldx = sldx;
ldy = sldy;
if (laserframe == 1) {
laserframe = 0;
}
laserstate = 6;
laser_done = false;
do {
laser_off(0);
} while (laser_done == false);
}
if (laserstate == 6) {
all_lasers_on();
laserstate = 7;
}
if (laserstate == 7) {
if ((((Key.isDown(38) == false) && (Key.isDown(40) == false)) && (Key.isDown(37) == false)) && (Key.isDown(39) == false)) {
if (laserframe == 2) {
laserstate = 1;
} else {
laserstate = 0;
}
}
}
if (laserstate == 50) {
laser_on("cannon");
if (laser_done == true) {
laserstate = 0;
}
}
if (laserstate == 60) {
laser_off(0);
if (laser_done == true) {
laserstate = 0;
}
}
if (laserstate == 0) {
if ((cdx != 0) || (cdy != 0)) {
imove = 1;
}
}
}
function laser_on(isource) {
lx = lx + ldx;
ly = ly + ldy;
lobj = a[lx][ly];
lobj_b = a_b[lx][ly];
if ((lx == cx) && (ly == cy)) {
cyaddeath();
laser_done = true;
}
if ((((lobj == 1) || (lobj == 44)) || (lobj == 69)) && (lobj_b == 1)) {
if (ldx == 0) {
lon = 50;
} else {
lon = 49;
}
chgobj(lx, ly, lon, 0);
if (lobj == 44) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(lon + 17);
}
if (lobj == 69) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(lon + 21);
}
} else if (lobj == 49) {
if (ldx == 0) {
chgobj(lx, ly, 51, 0);
if (limiter[lx][ly] == 44) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(68);
}
if (limiter[lx][ly] == 69) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(72);
}
} else {
laser_done = true;
}
} else if (lobj == 50) {
if (ldy == 0) {
chgobj(lx, ly, 51, 0);
if (limiter[lx][ly] == 44) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(68);
}
if (limiter[lx][ly] == 69) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(72);
}
} else {
laser_done = true;
}
} else if ((lobj >= 52) && (lobj <= 59)) {
mirror_on(lobj);
} else {
if (isource == "cyad") {
if (((((lobj != 6) && (lobj != 35)) && (lobj != 43)) && (lobj != 3)) && (lobj != 35)) {
if (lobj == 40) {
svlx = lx;
svly = ly;
switchobj(lx, ly);
lx = svlx;
ly = svly;
} else {
if (lobj == 39) {
svlx = lx;
svly = ly;
switchobj(lx, ly);
lx = svlx;
ly = svly;
}
explosion(lx, ly);
moveswitch_destroy(a[lx][ly], lx, ly);
moveswitch_destroy(a_b[lx][ly], lx, ly);
chgobj(lx, ly, 1, 0);
chgobj(lx, ly, 1, 1);
}
}
if ((lobj >= 45) && (lobj <= 48)) {
hit_cannon = true;
}
laser_done = true;
}
if (isource == "cannon") {
if ((((((lobj == 6) || (lobj == 40)) || ((ldx == 1) && ((lobj == 48) || (lobj == 194)))) || ((ldx == -1) && ((lobj == 46) || (lobj == 192)))) || ((ldy == 1) && ((lobj == 45) || (lobj == 191)))) || ((ldy == -1) && ((lobj == 47) || (lobj == 193)))) {
if (lobj == 40) {
switchobj(lx, ly);
}
laser_done = true;
if ((lobj >= 191) && (lobj <= 194)) {
chgobj(lx, ly, lobj - 146, 0);
}
} else {
if ((lobj >= 45) && (lobj <= 48)) {
slx = lx;
sly = ly;
sldx = ldx;
sldy = ldy;
ldx = 0;
ldy = 0;
if (a[lx][ly] == 45) {
ldy = -1;
}
if (a[lx][ly] == 46) {
ldx = 1;
}
if (a[lx][ly] == 47) {
ldy = 1;
}
if (a[lx][ly] == 48) {
ldx = -1;
}
laser_done = false;
do {
laser_off(0);
} while (laser_done == false);
lx = slx;
ly = sly;
ldx = sldx;
ldy = sldy;
laser_done = false;
}
if (lobj != 51) {
if (lobj == 39) {
switchobj(lx, ly);
}
moveswitch_destroy(a[lx][ly], lx, ly);
moveswitch_destroy(a_b[lx][ly], lx, ly);
explosion(lx, ly);
if (ldx == 0) {
chgobj(lx, ly, 50, 0);
} else {
chgobj(lx, ly, 49, 0);
}
chgobj(lx, ly, 1, 1);
}
}
}
}
lasermatch();
}
function laser_off(alloff) {
lx = lx + ldx;
ly = ly + ldy;
lobj = a[lx][ly];
if ((lobj == 49) || (lobj == 50)) {
if (limiter[lx][ly] == 44) {
chgobj(lx, ly, 44, 0);
} else if (limiter[lx][ly] == 69) {
chgobj(lx, ly, 69, 0);
} else {
chgobj(lx, ly, 1, 0);
}
} else if ((lobj == 51) && (ldx == 0)) {
chgobj(lx, ly, 49, 0);
if (limiter[lx][ly] == 44) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(66);
}
if (limiter[lx][ly] == 69) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(70);
}
} else if ((lobj == 51) && (ldy == 0)) {
chgobj(lx, ly, 50, 0);
if (limiter[lx][ly] == 44) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(67);
}
if (limiter[lx][ly] == 69) {
game[(("ObjX" + lx) + "Y") + ly].gotoAndStop(71);
}
} else if ((lobj >= 52) && (lobj <= 59)) {
mirror_off(lobj);
lasermatch();
} else {
laser_done = true;
if (((lobj >= 45) && (lobj <= 48)) && (alloff == 0)) {
chgobj(lx, ly, lobj + 146, 0);
}
}
}
function mirror_on(lobj) {
if (lobj == 52) {
if (ldx == 1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 55, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 54, 0);
} else if (ldy == 1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 54, 0);
} else if (ldy == -1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 55, 0);
}
}
if (lobj == 53) {
if (ldx == 1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 57, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 58, 0);
} else if (ldy == 1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 57, 0);
} else if (ldy == -1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 58, 0);
}
}
if (lobj == 54) {
if (ldx == 1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 56, 0);
} else if (ldy == -1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 56, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = -1;
} else if (ldy == 1) {
ldx = 1;
ldy = 0;
}
}
if (lobj == 55) {
if (ldx == -1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 56, 0);
} else if (ldy == 1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 56, 0);
} else if (ldx == 1) {
ldx = 0;
ldy = 1;
} else if (ldy == -1) {
ldx = -1;
ldy = 0;
}
}
if (lobj == 57) {
if (ldx == -1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 59, 0);
} else if (ldy == -1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 59, 0);
} else if (ldx == 1) {
ldx = 0;
ldy = -1;
} else if (ldy == 1) {
ldx = -1;
ldy = 0;
}
}
if (lobj == 58) {
if (ldx == 1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 59, 0);
} else if (ldy == 1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 59, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = 1;
} else if (ldy == -1) {
ldx = 1;
ldy = 0;
}
}
}
function mirror_off(lobj) {
if (lobj == 56) {
if (ldx == 1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 54, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 55, 0);
} else if (ldy == 1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 55, 0);
} else if (ldy == -1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 54, 0);
}
}
if (lobj == 59) {
if (ldx == 1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 58, 0);
} else if (ldx == -1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 57, 0);
} else if (ldy == 1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 58, 0);
} else if (ldy == -1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 57, 0);
}
}
if (lobj == 55) {
if (ldx == 1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 52, 0);
} else if (ldy == -1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 52, 0);
}
}
if (lobj == 54) {
if (ldx == -1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 52, 0);
} else if (ldy == 1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 52, 0);
}
}
if (lobj == 58) {
if (ldx == -1) {
ldx = 0;
ldy = 1;
chgobj(lx, ly, 53, 0);
} else if (ldy == -1) {
ldx = 1;
ldy = 0;
chgobj(lx, ly, 53, 0);
}
}
if (lobj == 57) {
if (ldx == 1) {
ldx = 0;
ldy = -1;
chgobj(lx, ly, 53, 0);
} else if (ldy == 1) {
ldx = -1;
ldy = 0;
chgobj(lx, ly, 53, 0);
}
}
}
function lasermatch() {
eval (((("game.ObjX" + lx) + "Y") + ly) + ".laser1").gotoAndPlay(laseranimcount);
eval (((("game.ObjX" + lx) + "Y") + ly) + ".laser2").gotoAndPlay(laseranimcount);
eval (((("game.ObjX" + lx) + "Y") + ly) + ".laser3").gotoAndPlay(laseranimcount);
eval (((("game.ObjX" + lx) + "Y") + ly) + ".laser4").gotoAndPlay(laseranimcount);
}
function all_lasers_on() {
laseranimcount = 0;
x = 1;
while (x <= 24) {
y = 1;
while (y <= 18) {
if ((a[x][y] >= 45) && (a[x][y] <= 48)) {
lx = x;
ly = y;
ldx = 0;
ldy = 0;
if (a[x][y] == 45) {
ldy = -1;
}
if (a[x][y] == 46) {
ldx = 1;
}
if (a[x][y] == 47) {
ldy = 1;
}
if (a[x][y] == 48) {
ldx = -1;
}
laser_done = false;
do {
laser_on("cannon");
} while (laser_done == false);
}
y++;
}
x++;
}
}
function all_lasers_off() {
laseranimcount = 0;
x = 1;
while (x <= 24) {
y = 1;
while (y <= 18) {
if ((a[x][y] >= 45) && (a[x][y] <= 48)) {
lx = x;
ly = y;
ldx = 0;
ldy = 0;
if (a[x][y] == 45) {
ldy = -1;
}
if (a[x][y] == 46) {
ldx = 1;
}
if (a[x][y] == 47) {
ldy = 1;
}
if (a[x][y] == 48) {
ldx = -1;
}
laser_done = false;
do {
laser_off(1);
} while (laser_done == false);
}
y++;
}
x++;
}
}
function chgobj(x, y, obj, layer) {
if (layer == 0) {
game[(("ObjX" + x) + "Y") + y].gotoAndStop(obj);
a[x][y] = obj;
} else {
game[(("BallX" + x) + "Y") + y].gotoAndStop(obj);
a_b[x][y] = obj;
}
}
function explosion(x, y) {
game.attachMovie("explosion", "explosion" + flashlayer, flashlayer);
game["explosion" + flashlayer]._x = (x - 1) * 25;
game["explosion" + flashlayer]._y = (y - 1) * 25;
flashlayer++;
if (flashlayer >= 4000) {
flashlayer = 3500;
}
}
function flash(x, y) {
game.attachMovie("flash", "flash" + flashlayer, flashlayer);
game["flash" + flashlayer]._x = (x - 1) * 25;
game["flash" + flashlayer]._y = (y - 1) * 25;
flashlayer++;
if (flashlayer >= 4000) {
flashlayer = 3500;
}
}
function cyaddeath() {
if (imoveobj == 2) {
cx = scx;
cy = scy;
}
explosion(cx, cy);
game.cyad.removeMovieClip();
if (laserframe > 0) {
game.laserframe.removeMovieClip();
}
if (editor == 0) {
if (outoftime == 0) {
_root.attachMovie("gametxt_fail", "gametxt_outcome", 55);
} else {
_root.attachMovie("gametxt_outoftime", "gametxt_outcome", 55);
}
_root.gametxt_outcome._x = 300;
_root.gametxt_outcome._y = 250;
tipwindow.removeMovieClip();
gametxt_outcome.txtpassword = createsavecode();
}
waitcount = 40;
ifirst = 1;
gamestate = 3;
imoveobj = 0;
imove = 0;
delete game.onEnterFrame;
}
function key_down(ks) {
if (ks == 0) {
ks = 1;
}
if (ks == 2) {
ks = 3;
}
if (ks == 4) {
ks = 5;
}
if (ks == 6) {
ks = 7;
}
if (ks == 7) {
ks = 0;
}
if (ks == 3) {
ks = 4;
}
return(ks);
}
function key_up(ks) {
if (ks == 0) {
ks = 1;
}
if (ks == 2) {
ks = 3;
}
if (ks == 4) {
ks = 5;
}
if (ks == 6) {
ks = 7;
}
if (ks == 1) {
ks = 2;
}
if (ks == 5) {
ks = 6;
}
return(ks);
}
function zoom_on() {
game._xscale = iscale;
game._yscale = iscale;
game._x = -ixoffset;
game._y = 25 - iyoffset;
}
function zoom_off() {
game._xscale = 100;
game._yscale = 100;
game._x = 0;
game._y = 25;
}
function crosshairs_on() {
game.attachMovie("crosshairs", "crossv", 2900);
game.attachMovie("crosshairs", "crossh", 2901);
game.crossv.gotoAndStop(1);
game.crossh.gotoAndStop(2);
if (zoommode <= 3) {
game.crossv._y = 0;
game.crossh._x = 0;
} else {
game.crossv._y = (iyoffset / (iscale / 100)) + 1;
game.crossh._x = (ixoffset / (iscale / 100)) + 1;
game.crossv._height = (750 / (iscale / 100)) - 1;
game.crossh._width = (1000 / (iscale / 100)) - 1;
}
}
function crosshairs_off() {
game.crossv.removeMovieClip();
game.crossh.removeMovieClip();
}
function displaytime(itime) {
iminute = int(Math.min(itime + 1, itimelimit) / 60);
isecond = int(Math.min(itime + 1, itimelimit) - (iminute * 60));
if (gamestate == 0) {
txt_colon = ":";
if ((int(getTimer() / 500) % 2) == 1) {
if (isecond < 10) {
gameframe.txt_minute = iminute;
gameframe.txt_second = "0" + isecond;
} else {
gameframe.txt_minute = iminute;
gameframe.txt_second = isecond;
}
} else {
gameframe.txt_minute = "";
gameframe.txt_second = "";
}
} else {
if ((int(itime * 2) % 2) == 1) {
gameframe.txt_colon = ":";
} else {
gameframe.txt_colon = "";
}
if (isecond < 10) {
gameframe.txt_minute = iminute;
gameframe.txt_second = "0" + isecond;
} else {
gameframe.txt_minute = iminute;
gameframe.txt_second = isecond;
}
if (itime <= 0) {
gameframe.txt_colon = ":";
gameframe.txt_minute = "0";
gameframe.txt_second = "00";
outoftime = 1;
cyaddeath();
}
}
}
function save_game() {
x = 0;
while (x <= 41) {
y = 0;
while (y <= 31) {
a_save[x][y] = a[x][y];
a_b_save[x][y] = a_b[x][y];
y++;
}
x++;
}
savetimeleft = Math.min(itimelimit - ((getTimer() / 1000) - starttime), itimelimit);
cx_save = cx;
cy_save = cy;
}
if (editor == 1) {
delete edit.onEnterFrame;
edit._visible = false;
}
gameframe.gotoAndStop(3);
gameframe.gamestartkeys._visible = true;
x = 0;
while (x <= 25) {
y = 0;
while (y <= 19) {
a[x][y] = 1;
a_b[x][y] = 1;
if (a_e[x][y] == 41) {
a_b[x][y] = 41;
} else if (a_e[x][y] == 65) {
a_b[x][y] = 41;
a[x][y] = 38;
} else {
a[x][y] = a_e[x][y];
}
if ((((x == 0) || (x == 25)) || (y == 0)) || (y == 19)) {
a[x][y] = 6;
}
limiter[x][y] = 0;
y++;
}
x++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 6) {
iswitch[g][h] = iswitch_e[g][h];
h++;
}
g++;
}
g = 0;
while (g < 40) {
h = 0;
while (h < 4) {
iteleport[g][h] = iteleport_e[g][h];
h++;
}
g++;
}
diamondcount = 0;
_root.createEmptyMovieClip("game", 2);
idepth = 1;
y = 1;
while (y <= 18) {
x = 1;
while (x <= 24) {
game.attachMovie("obj", (("ObjX" + x) + "Y") + y, idepth);
game.attachMovie("obj", (("BallX" + x) + "Y") + y, idepth + 1200);
game[(("ObjX" + x) + "Y") + y].gotoAndStop(1);
game[(("BallX" + x) + "Y") + y].gotoAndStop(1);
game[(("ObjX" + x) + "Y") + y]._x = (x - 1) * 25;
game[(("ObjX" + x) + "Y") + y]._y = (y - 1) * 25;
game[(("BallX" + x) + "Y") + y]._x = (x - 1) * 25;
game[(("BallX" + x) + "Y") + y]._y = (y - 1) * 25;
if (a[x][y] != 41) {
chgobj(x, y, a[x][y], 0);
}
if (a_b[x][y] == 41) {
chgobj(x, y, 41, 1);
}
if (a[x][y] == 3) {
diamondcount++;
}
if (a[x][y] == 36) {
game[(("ObjX" + x) + "Y") + y].gotoAndStop(1);
}
if ((a[x][y] == 44) || (a[x][y] == 69)) {
limiter[x][y] = a[x][y];
}
idepth++;
x++;
}
y++;
}
if (diamondcount > 0) {
gameframe.attachMovie("obj", "diamond", 103);
gameframe.diamond.gotoAndStop(3);
gameframe.diamond._xscale = 80;
gameframe.diamond._yscale = 80;
gameframe.diamond._x = -297;
gameframe.diamond._y = -273;
gameframe.txtdiamond = diamondcount;
} else {
gameframe.txtdiamond = "";
}
cx = cyadx;
cy = cyady;
workstr = zoomcalc(zx1, zy1, zx2, zy2);
iscale = parseInt(workstr.substr(0, 4), 10);
ixoffset = parseInt(workstr.substr(4, 4), 10);
iyoffset = parseInt(workstr.substr(8, 4), 10);
if (zoommode <= 3) {
zoom_off();
} else {
zoom_on();
}
slowmode = 3;
gameframe.txtslow = "";
if (crosshairs >= 4) {
crosshairs_on();
}
teleno = 1;
g = 0;
while (g < 40) {
if (iteleport[g][0] > 0) {
if (a[iteleport[g][2]][iteleport[g][3]] == 35) {
x = iteleport[g][2];
y = iteleport[g][3];
if (game[(("ObjX" + x) + "Y") + y].teleno.text == "0") {
game[(("ObjX" + x) + "Y") + y].teleno.text = teleno;
teleno++;
}
}
if (a[iteleport[g][0]][iteleport[g][1]] == 34) {
x = iteleport[g][0];
y = iteleport[g][1];
x2 = iteleport[g][2];
y2 = iteleport[g][3];
game[(("ObjX" + x) + "Y") + y].teleno.text = game[(("ObjX" + x2) + "Y") + y2].teleno.text;
}
}
g++;
}
itimelimit = parseInt(timestr, 10);
game.attachMovie("cyad", "cyad", 3000);
game.cyad._x = (cx - 1) * 25;
game.cyad._y = (cy - 1) * 25;
game.cyad.gotoAndStop(1);
gamestate = 0;
help = 0;
paused = 0;
keylock = 0;
pkeylock = 0;
laserframe = 0;
laserstate = 0;
ishift = 0;
imoveobj = 0;
imove = 0;
moveswitch = 0;
moveflashtimer = 0;
outoftime = 0;
flashlayer = 3500;
cdx = 0;
cdy = 0;
slowmode = 3;
checklock = 0;
slowcount = 0;
waitcount = -1;
if (editor == 1) {
gameframe.txt_leveltitle = titlestr;
} else {
gameframe.txt_leveltitle = ((selectedlevel + 1) + ") ") + titlestr;
gameframe.leveltitletxt.textColor = 16777215 /* 0xFFFFFF */;
if (levelstatus[selectedlevel] == 2) {
gameframe.txt_leveltitle = gameframe.txt_leveltitle + " \u263A";
gameframe.leveltitletxt.textColor = 16776960 /* 0xFFFF00 */;
}
}
if (itimelimit > 0) {
displaytime(itimelimit - 1);
gameframe.attachMovie("obj", "clock", 102);
gameframe.clock.gotoAndStop(99);
gameframe.clock._xscale = 80;
gameframe.clock._yscale = 80;
gameframe.clock._x = 230;
gameframe.clock._y = -273;
gameframe.txt_colon = ":";
} else {
gameframe.txt_second = "";
gameframe.txt_minute = "";
gameframe.txt_colon = "";
}
all_lasers_on();
attachMovie("gamestart", "gamestart", 70);
gamestart._x = 0;
gamestart._y = 0;
attachMovie("bluebarfade", "bluebarfade", 149);
bluebarfade._x = 1;
bluebarfade._y = 1;
moveswitchballx = 0;
moveswitchbally = 0;
if (editor == 1) {
tipshow = 0;
}
if (tipshow == 1) {
tip(levelhelpstr);
tiplock = 1;
}
if (editor == 0) {
gameframe.gamestartkeys.gotoAndStop(100);
} else {
gameframe.gamestartkeys.gotoAndStop(50);
}
helpkeyswait = 0;
_global.helpkeys = 0;
tipwait = 125;
function obj_diamond() {
diamondcount = Math.max(diamondcount - 1, -1);
chgobj(cx, cy, 1, 0);
gameframe.txtdiamond = diamondcount;
moveswitch_destroy(3, cx, cy);
if (diamondcount == 0) {
all_lasers_off();
flash(diamondchgx, diamondchgy);
if (diamondchgo != 41) {
chgobj(diamondchgx, diamondchgy, diamondchgo, 0);
} else {
chgobj_b(diamondchgx, diamondchgy, diamondchgo, 1);
}
all_lasers_on();
if (diamondchgo == 34) {
g2 = 0;
while (g2 < 40) {
tx = iteleport[g2][0];
ty = iteleport[g2][1];
tx2 = iteleport[g2][2];
ty2 = iteleport[g2][3];
if ((diamondchgx == tx) && (diamondchgy == ty)) {
game[(("ObjX" + tx) + "Y") + ty].teleno.text = game[(("ObjX" + tx2) + "Y") + ty2].teleno.text;
}
g2++;
}
}
if ((diamondchgo >= 45) && (diamondchgo <= 48)) {
lx = diamondchgx;
ly = diamondchgy;
ldx = 0;
ldy = 0;
if (diamondchgo == 45) {
ldy = -1;
}
if (diamondchgo == 46) {
ldx = 1;
}
if (diamondchgo == 47) {
ldy = 1;
}
if (diamondchgo == 48) {
ldx = -1;
}
laserstate = 50;
imove = 0;
laser_done = false;
}
}
}
function obj_exit() {
if (imoveobj == 1) {
imove = 0;
cdx = 0;
cdy = 0;
gamestate = 2;
game.cyad.removeMovieClip();
game.laserframe.removeMovieClip();
if (editor == 0) {
levelstatus[selectedlevel] = 2;
_root.attachMovie("gametxt_success", "gametxt_outcome", 55);
_root.gametxt_outcome._x = 300;
_root.gametxt_outcome._y = 250;
tipwindow.removeMovieClip();
}
delete game.onEnterFrame;
waitcount = 40;
ifirst = 1;
saved = 0;
} else {
imove = 0;
if (moveswitch == 3) {
moveswitch_update(41, moveswitchballx, moveswitchbally, cx, cy);
moveswitch_destroy(41, cx, cy);
}
cdx = 0;
cdy = 0;
balldeath = 1;
chgobj(cx, cy, 1, 1);
}
}
function obj_wall() {
cx = cx - cdx;
cy = cy - cdy;
cdx = 0;
cdy = 0;
imove = 0;
}
function obj_mine() {
if (imoveobj == 1) {
cyaddeath();
chgobj(cx, cy, 1, 0);
} else {
explosion(cx, cy);
chgobj(cx, cy, 1, 0);
chgobj(cx, cy, 1, 1);
cdx = 0;
cdy = 0;
imove = 0;
balldeath = 1;
moveswitch_update(41, moveswitchballx, moveswitchbally, cx, cy);
moveswitch_destroy(41, cx, cy);
}
}
function obj_arrow(obj) {
cdx = 0;
cdy = 0;
if (obj == 7) {
cdy = -1;
}
if (obj == 8) {
cdy = -1;
cdx = 1;
}
if (obj == 9) {
cdx = 1;
}
if (obj == 10) {
cdy = 1;
cdx = 1;
}
if (obj == 11) {
cdy = 1;
}
if (obj == 12) {
cdy = 1;
cdx = -1;
}
if (obj == 13) {
cdx = -1;
}
if (obj == 14) {
cdy = -1;
cdx = -1;
}
}
function obj_pushblock(obj) {
pobj = a[cx + cdx][cy + cdy];
if (pobj == 1) {
pobj = a_b[cx + cdx][cy + cdy];
}
if ((pobj == 1) || ((pobj >= 30) && (pobj <= 33))) {
chgobj(cx, cy, 1, 0);
chgobj(cx + cdx, cy + cdy, obj, 0);
moveswitch_update(obj, cx, cy, cx + cdx, cy + cdy);
} else if ((pobj == 49) || (pobj == 50)) {
chgobj(cx, cy, 1, 0);
explosion(cx + cdx, cy + cdy);
move_destroy(obj, cx + cdx, cy + cdy);
} else {
if (pobj == 36) {
flash(cx + cdx, cy + cdy);
chgobj(cx + cdx, cy + cdy, 36, 0);
}
imove = 0;
cx = cx - cdx;
cy = cy - cdy;
cdx = 0;
cdy = 0;
}
if (obj == 16) {
imove = 0;
cdx = 0;
cdy = 0;
keylock = 1;
}
}
function obj_bounceback(obj) {
cdx = -cdx;
cdy = -cdy;
if (obj == 17) {
chgobj(cx, cy, 1, 0);
moveswitch_destroy(17, cx, cy);
}
keylock = 1;
}
function obj_dissolver() {
chgobj(cx, cy, 1, 0);
moveswitch_destroy(19, cx, cy);
cx = cx - cdx;
cy = cy - cdy;
imove = 0;
cdx = 0;
cdy = 0;
keylock = 1;
}
function obj_switch(obj) {
switchobj(cx, cy);
if (obj == 21) {
obj_wall();
}
if (obj == 20) {
chgobj(cx, cy, 1, 0);
h = 0;
while (h < 40) {
if ((iswitch[h][0] == cx) && (iswitch[h][1] == cy)) {
i = 0;
while (i < 40) {
if (((iswitch[i][2] == cx) && (iswitch[i][3] == cy)) && (a[iswitch[i][0]][iswitch[i][1]] == 60)) {
iswitch[h][0] = 0;
iswitch[h][1] = 0;
}
i++;
}
}
h++;
}
moveswitch_destroy(20, cx, cy);
}
}
function switchobj(x, y) {
g = 0;
while (g < 40) {
sx = iswitch[g][0];
sy = iswitch[g][1];
ox = iswitch[g][2];
oy = iswitch[g][3];
o1 = iswitch[g][4];
o2 = iswitch[g][5];
if ((sx == x) && (sy == y)) {
lobjon = 0;
lobjoff = 0;
flash(ox, oy);
if (((((((o1 >= 52) && (o1 <= 53)) || ((o2 >= 52) && (o2 <= 53))) || ((a[ox][oy] >= 52) && (a[ox][oy] <= 59))) || (a[ox][oy] == 6)) || (o1 == 6)) || (o2 == 6)) {
all_lasers_off();
if (a[ox][oy] == o1) {
chgobj(ox, oy, o2, 0);
} else {
chgobj(ox, oy, o1, 0);
}
all_lasers_on();
} else {
if (a_b[ox][oy] == 41) {
if (o1 != 41) {
lobjon = o1;
lobjoff = 0;
chgobj(ox, oy, o1, 0);
chgobj(ox, oy, 1, 1);
} else if (o2 != 41) {
lobjon = o2;
lobjoff = 0;
chgobj(ox, oy, o2, 0);
chgobj(ox, oy, 1, 1);
}
} else if (a[ox][oy] == o2) {
lobjon = 0;
lobjoff = a[ox][oy];
if (o1 == 41) {
chgobj(ox, oy, o1, 1);
chgobj(ox, oy, 1, 0);
} else {
chgobj(ox, oy, o1, 0);
lobjon = o1;
}
} else {
lobjon = 0;
lobjoff = a[ox][oy];
if (o2 == 41) {
chgobj(ox, oy, o2, 1);
chgobj(ox, oy, 1, 0);
} else {
chgobj(ox, oy, o2, 0);
lobjon = o2;
}
}
if (((lobjoff >= 45) && (lobjoff <= 48)) && ((lobjon < 45) || (lobjon > 48))) {
lx = ox;
ly = oy;
ldx = 0;
ldy = 0;
if (lobjoff == 45) {
ldy = -1;
}
if (lobjoff == 46) {
ldx = 1;
}
if (lobjoff == 47) {
ldy = 1;
}
if (lobjoff == 48) {
ldx = -1;
}
laser_done = false;
do {
laser_off(0);
} while (laser_done == false);
}
if (((lobjon >= 45) && (lobjon <= 48)) && ((lobjoff < 45) || (lobjoff > 48))) {
lx = ox;
ly = oy;
ldx = 0;
ldy = 0;
if (lobjon == 45) {
ldy = -1;
}
if (lobjon == 46) {
ldx = 1;
}
if (lobjon == 47) {
ldy = 1;
}
if (lobjon == 48) {
ldx = -1;
}
laserstate = 50;
imove = 0;
laser_done = false;
}
}
}
if (lobjon == 34) {
g2 = 0;
while (g2 < 40) {
tx = iteleport[g2][0];
ty = iteleport[g2][1];
tx2 = iteleport[g2][2];
ty2 = iteleport[g2][3];
if ((ox == tx) && (oy == ty)) {
game[(("ObjX" + tx) + "Y") + ty].teleno.text = game[(("ObjX" + tx2) + "Y") + ty2].teleno.text;
}
g2++;
}
}
g++;
}
}
function obj_key(obj) {
pobj = a_b[cx + cdx][cy + cdy];
if (pobj == 1) {
pobj = a[cx + cdx][cy + cdy];
}
if ((pobj == 1) || ((pobj >= 30) && (pobj <= 33))) {
chgobj(cx, cy, 1, 0);
chgobj(cx + cdx, cy + cdy, obj, 0);
moveswitch_update(obj, cx, cy, cx + cdx, cy + cdy);
} else if ((obj + 4) == pobj) {
chgobj(cx, cy, 1, 0);
moveswitch_destroy(obj, cx, cy);
chgobj(cx + cdx, cy + cdy, obj + 8, 0);
switchobj(cx + cdx, cy + cdy);
h = 0;
while (h < 40) {
if ((iswitch[h][0] == (cx + cdx)) && (iswitch[h][1] == (cy + cdy))) {
iswitch[h][0] = 0;
iswitch[h][1] = 0;
}
h++;
}
imove = 0;
cdx = 0;
cdy = 0;
keylock = 1;
} else if ((pobj == 49) || (pobj == 50)) {
chgobj(cx, cy, 1, 0);
explosion(cx + cdx, cy + cdy);
} else {
if (pobj == 36) {
flash(cx + cdx, cy + cdy);
chgobj(cx + cdx, cy + cdy, 36, 0);
}
cx = cx - cdx;
cy = cy - cdy;
imove = 0;
cdx = 0;
cdy = 0;
}
}
function obj_teleport() {
g = 0;
while (g < 40) {
t1x = iteleport[g][0];
t1y = iteleport[g][1];
t2x = iteleport[g][2];
t2y = iteleport[g][3];
if ((t1x == cx) && (t1y == cy)) {
cx = t2x;
cy = t2y;
cx = cx - cdx;
cy = cy - cdy;
}
g++;
}
}
function obj_ghost() {
chgobj(cx, cy, 181, 0);
cx = cx - cdx;
cy = cy - cdy;
imove = 0;
cdx = 0;
cdy = 0;
}
function obj_glue(obj) {
if (obj == 37) {
chgobj(cx, cy, 1, 0);
moveswitch_destroy(37, cx, cy);
}
imove = 0;
cdx = 0;
cdy = 0;
keylock = 1;
}
function obj_laser() {
if (imoveobj == 1) {
cyaddeath();
} else {
explosion(cx, cy);
chgobj(cx, cy, 1, 1);
cdx = 0;
cdy = 0;
imove = 0;
balldeath = 1;
moveswitch_update(41, moveswitchballx, moveswitchbally, cx, cy);
moveswitch_destroy(41, cx, cy);
}
}
function obj_laserframe() {
if (imoveobj == 2) {
cx = cx - cdx;
cy = cy - cdy;
cdx = 0;
cdy = 0;
imove = 0;
} else if (obj == 42) {
if (laserframe == 0) {
game.attachMovie("obj", "laserframe", 3001);
game.laserframe.gotoAndStop(42);
game.cyad.gotoAndStop(2);
laserframe = 1;
chgobj(cx, cy, 1, 0);
moveswitch_destroy(42, cx, cy);
} else {
obj_wall();
}
} else if (laserframe != 2) {
game.attachMovie("obj", "laserframe", 3001);
game.laserframe.gotoAndStop(43);
game.cyad.gotoAndStop(2);
laserframe = 2;
chgobj(cx, cy, 1, 0);
moveswitch_destroy(43, cx, cy);
} else {
game.laserframe.removeMovieClip();
game.cyad.gotoAndStop(1);
laserframe = 0;
chgobj(cx, cy, 1, 0);
moveswitch_destroy(43, cx, cy);
}
}
function obj_ball() {
if (imoveobj == 1) {
cx = cx - cdx;
cy = cy - cdy;
scx = cx;
scy = cy;
imoveobj = 2;
balldeath = 0;
} else {
cx = cx - cdx;
cy = cy - cdy;
chgobj(cx, cy, 41, 1);
moveswitch_update(41, moveswitchballx, moveswitchbally, cx, cy);
}
do {
cx = cx + cdx;
cy = cy + cdy;
} while (a_b[cx][cy] == 41);
cx = cx - cdx;
cy = cy - cdy;
chgobj(cx, cy, 1, 1);
moveswitchballx = cx;
moveswitchbally = cy;
cx = cx + cdx;
cy = cy + cdy;
}
function obj_lasercannon() {
obj_wall();
}
function obj_lock(obj) {
if ((obj >= 26) && (obj <= 29)) {
obj_wall();
}
if ((obj >= 30) && (obj <= 33)) {
chgobj(cx, cy, 1, 0);
}
}
function obj_oneway(obj) {
if ((obj == 61) && ((cdx != 0) || (cdy != -1))) {
obj_wall();
}
if ((obj == 62) && ((cdx != 1) || (cdy != 0))) {
obj_wall();
}
if ((obj == 63) && ((cdx != 0) || (cdy != 1))) {
obj_wall();
}
if ((obj == 64) && ((cdx != -1) || (cdy != 0))) {
obj_wall();
}
}
function obj_moveswitch() {
if (imoveobj == 1) {
imove = 0;
cdx = 0;
cdy = 0;
keylock = 1;
moveswitch = 1;
found = false;
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
found = true;
}
g++;
}
if (found == true) {
moveflashtimer = getTimer();
attachMovie("moveswitch", "moveswitch2", 146);
moveswitch2._x = 100;
moveswitch2._y = 1;
}
} else {
obj_wall();
}
}
function domoveswitch() {
if (moveswitch == 1) {
found = false;
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
found = true;
}
g++;
}
if (found == true) {
if (((int((getTimer() - moveflashtimer) / 150) % 2) != 1) || (Key.isDown(32))) {
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
ox = iswitch[g][2];
oy = iswitch[g][3];
mo = iswitch[g][4];
if (mo == 41) {
game[(("BallX" + ox) + "Y") + oy]._visible = true;
}
if (mo != 41) {
game[(("ObjX" + ox) + "Y") + oy]._visible = true;
}
}
g++;
}
} else {
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
ox = iswitch[g][2];
oy = iswitch[g][3];
mo = iswitch[g][4];
if (mo == 41) {
game[(("BallX" + ox) + "Y") + oy]._visible = false;
}
if (mo != 41) {
game[(("ObjX" + ox) + "Y") + oy]._visible = false;
}
}
g++;
}
}
if (Key.isDown(32)) {
moveswitch = 2;
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
game.attachMovie("cursor", "cursor" + g, 5000 + g);
game["cursor" + g]._x = (iswitch[g][2] - 1) * 25;
game["cursor" + g]._y = (iswitch[g][3] - 1) * 25;
}
g++;
}
moveswitch2.gotoAndStop(31);
}
}
}
if (moveswitch == 3) {
if ((cdx != 0) || (cdy != 0)) {
g = 0;
while (g < 40) {
imoved[g] = 0;
g++;
}
trymove = 1;
while (trymove <= 10) {
g = 0;
while (g < 40) {
if ((((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) && (imoveobj == 1)) && (imoved[g] == 0)) {
ox = iswitch[g][2];
oy = iswitch[g][3];
ox2 = ox;
oy2 = oy;
mo = iswitch[g][4];
mobj = a[ox + cdx][oy + cdy];
if (mobj == 1) {
mobj = a_b[ox + cdx][oy + cdy];
}
if (mo == 41) {
imoveobj = 2;
imove = 1;
balldeath = 0;
scx = cx;
scy = cy;
cx = ox;
cy = oy;
moveswitchballx = ox;
moveswitchbally = oy;
game["cursor" + g]._visible = false;
imoved[g] = 1;
} else if (((mobj == 5) || ((mobj >= 49) && (mobj <= 51))) && ((mo < 52) || (mo > 59))) {
all_lasers_off();
if ((mo != 35) && (limiter[ox + cdx][oy + cdy] == 0)) {
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
if (mobj == 5) {
moveswitch_destroy(mobj, ox2, oy2);
chgobj(ox2, oy2, 1, 0);
}
if ((mobj == 5) || ((mo != 6) && ((mobj >= 49) && (mobj <= 51)))) {
explosion(ox2, oy2);
}
if (mo == 6) {
chgobj(ox2, oy2, 6, 0);
moveswitch_update(mo, ox, oy, ox2, oy2);
} else {
moveswitch_update(mo, ox, oy, ox2, oy2);
moveswitch_destroy(mo, ox2, oy2);
}
}
all_lasers_on();
} else if (mo == 5) {
if (((((mobj != 60) && (mobj != 6)) && (mobj != 35)) && (mobj != 3)) && (mobj != 44)) {
all_lasers_off();
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
if (mobj > 1) {
explosion(ox2, oy2);
moveswitch_update(mo, ox, oy, ox2, oy2);
moveswitch_destroy(mo, ox2, oy2);
if ((mobj < 49) || (mobj > 51)) {
chgobj(ox2, oy2, 1, 0);
}
} else {
chgobj(ox2, oy2, 5, 0);
moveswitch_update(5, ox, oy, ox2, oy2);
}
all_lasers_on();
}
} else if (((mo >= 22) && (mo <= 25)) && (mobj == (mo + 4))) {
chgobj(ox, oy, 1, 0);
moveswitch_destroy(mo, ox, oy);
moveswitch_destroy(mobj, ox + cdx, oy + cdy);
chgobj(ox + cdx, oy + cdy, mo + 8, 0);
switchobj(ox + cdx, oy + cdy);
} else if (mobj == 36) {
chgobj(ox + cdx, oy + cdy, 181, 0);
} else if ((limiter[ox + cdx][oy + cdy] == 0) && ((((mobj == 1) || (mobj == 5)) || ((mobj >= 49) && (mobj <= 51))) || ((mobj >= 30) && (mobj <= 33)))) {
if (((mo >= 52) && (mo <= 59)) || (mo == 6)) {
all_lasers_off();
mo = a[ox][oy];
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
chgobj(ox2, oy2, mo, 0);
moveswitch_update(mo, ox, oy, ox2, oy2);
all_lasers_on();
if (((mo >= 52) && (mo <= 59)) && (mobj == 5)) {
explosion(ox2, oy2);
chgobj(ox2, oy2, 1, 0);
moveswitch_destroy(mo, ox2, oy2);
}
} else if (mo == 34) {
itele = -1;
g2 = 0;
while (g2 <= 39) {
if ((ox == iteleport[g2][0]) && (oy == iteleport[g2][1])) {
itele = g2;
}
g2++;
}
chgobj(ox + cdx, oy + cdy, mo, 0);
game[(("ObjX" + (ox + cdx)) + "Y") + (oy + cdy)].teleno.text = game[(("ObjX" + ox) + "Y") + oy].teleno.text;
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
moveswitch_update(mo, ox, oy, ox2, oy2);
iteleport[itele][0] = ox2;
iteleport[itele][1] = oy2;
} else if (mo == 35) {
itele = -1;
g2 = 0;
while (g2 <= 39) {
if ((ox == iteleport[g2][2]) && (oy == iteleport[g2][3])) {
itele = g2;
}
g2++;
}
chgobj(ox + cdx, oy + cdy, mo, 0);
game[(("ObjX" + (ox + cdx)) + "Y") + (oy + cdy)].teleno.text = game[(("ObjX" + ox) + "Y") + oy].teleno.text;
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
moveswitch_update(mo, ox, oy, ox2, oy2);
iteleport[itele][2] = ox2;
iteleport[itele][3] = oy2;
} else {
chgobj(ox, oy, 1, 0);
ox2 = ox + cdx;
oy2 = oy + cdy;
if ((mobj == 1) || ((mobj >= 30) && (mobj <= 33))) {
chgobj(ox2, oy2, mo, 0);
moveswitch_update(mo, ox, oy, ox2, oy2);
h = 0;
while (h < 40) {
if ((((((mo == 20) || (mo == 21)) || (mo == 39)) || (mo == 40)) || (mo == 60)) || ((mo >= 26) && (mo <= 29))) {
if ((iswitch[h][0] == ox) && (iswitch[h][1] == oy)) {
iswitch[h][0] = ox2;
iswitch[h][1] = oy2;
}
}
if ((iswitch[h][2] == ox) && (iswitch[h][3] == oy)) {
iswitch[h][2] = ox2;
iswitch[h][3] = oy2;
}
h++;
}
}
}
}
}
if ((ox2 != ox) || (oy2 != oy)) {
imoved[g] = 1;
}
g++;
}
trymove++;
}
if (imoveobj == 1) {
cdx = 0;
cdy = 0;
keylock = 1;
}
}
if (Key.isDown(32)) {
moveswitch = 4;
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
game["cursor" + g].removeMovieClip();
}
g++;
}
moveswitch2.gotoAndPlay(1);
}
}
if (Key.isDown(32) == false) {
if (moveswitch == 2) {
moveswitch = 3;
}
if (moveswitch == 4) {
moveswitch = 1;
}
}
}
function moveswitch_update(obj, x1, y1, x2, y2) {
msu = 0;
while (msu < 40) {
if (a[iswitch[msu][0]][iswitch[msu][1]] == 60) {
if (((iswitch[msu][2] == x1) && (iswitch[msu][3] == y1)) && (iswitch[msu][4] == obj)) {
iswitch[msu][2] = x2;
iswitch[msu][3] = y2;
game["cursor" + msu]._x = (x2 - 1) * 25;
game["cursor" + msu]._y = (y2 - 1) * 25;
game["cursor" + msu]._visible = true;
}
}
msu++;
}
}
function moveswitch_destroy(obj, x1, y1) {
msd = 0;
while (msd < 40) {
if (a[iswitch[msd][0]][iswitch[msd][1]] == 60) {
if (((iswitch[msd][2] == x1) && (iswitch[msd][3] == y1)) && (iswitch[msd][4] == obj)) {
iswitch[msd][0] = 0;
iswitch[msd][1] = 0;
game["cursor" + msd].removeMovieClip();
}
}
msd++;
}
}
Frame 58
game.onEnterFrame = function () {
if (((gamestate == 1) && (help == 0)) && (paused == 0)) {
if (laserstate == 0) {
if (imove == 0) {
if (keylock == 0) {
if (((Key.isDown(38) || (Key.isDown(40))) || (Key.isDown(37))) || (Key.isDown(39))) {
if (moveswitch < 2) {
imoveobj = 1;
imove = 1;
}
cdx = 0;
cdy = 0;
slowcount = 0;
keylock = 1;
idir = "";
if (Key.isDown(38) && (idir == "")) {
cdy = -1;
idir = "U";
}
if (Key.isDown(40) && (idir == "")) {
cdy = 1;
idir = "D";
}
if (Key.isDown(37) && (idir == "")) {
cdx = -1;
idir = "L";
}
if (Key.isDown(39) && (idir == "")) {
cdx = 1;
idir = "R";
}
}
}
}
} else {
laserfire();
}
if (((Key.isDown(16) && (imoveobj == 1)) && (laserframe > 0)) && (laserstate == 0)) {
imove = 0;
laserstate = 1;
}
if (itimelimit > 0) {
itimeleft = Math.min(itimelimit - ((getTimer() / 1000) - starttime), itimelimit);
displaytime(itimeleft);
}
if (keylock == 1) {
if ((idir == "U") && (Key.isDown(38) == false)) {
keylock = 0;
}
if ((idir == "D") && (Key.isDown(40) == false)) {
keylock = 0;
}
if ((idir == "L") && (Key.isDown(37) == false)) {
keylock = 0;
}
if ((idir == "R") && (Key.isDown(39) == false)) {
keylock = 0;
}
}
if (tipwait > 0) {
tipwait--;
if (tipwait == 0) {
tipwindow.gotoAndPlay(45);
}
}
}
if (((gamestate == 0) && (help == 0)) && (paused == 0)) {
if (itimelimit > 0) {
displaytime(itimelimit);
}
if (((Key.isDown(38) || (Key.isDown(40))) || (Key.isDown(37))) || (Key.isDown(39))) {
starttime = (getTimer() - 10) / 1000;
gamestate = 1;
}
}
if ((gamestate <= 1) && (help == 0)) {
if (Key.isDown(81)) {
gametxt_paused.removeMovieClip();
gamestate = 4;
waitcount = 1;
delete game.onEnterFrame;
}
if (Key.isDown(82)) {
gametxt_paused.removeMovieClip();
gamestate = 6;
waitcount = 1;
delete game.onEnterFrame;
}
}
if (((help == 0) && (paused == 0)) && (gamestate <= 1)) {
if (Key.isDown(83)) {
slowmode = key_down(slowmode);
} else {
slowmode = key_up(slowmode);
}
if (slowmode == 4) {
slowcount = 0;
gameframe.txtslow = "Slow";
}
if (slowmode == 0) {
gameframe.txtslow = "";
}
}
if ((Key.isDown(80) && (pkeylock == 0)) && (help == 0)) {
if (paused == 0) {
paused = 1;
pkeylock = 1;
gameframe.gotoAndStop(8);
if ((levelhelpstr != undefined) && (levelhelpstr != "")) {
gameframe.pausedhelp.txthelptext.text = levelhelpstr;
gameframe.pausedhelp.txthelptext._visible = true;
} else {
gameframe.pausedhelp._visible = false;
}
gameframe.diamond._visible = false;
gameframe.clock._visible = false;
gameframe.gamestartkeys._visible = false;
savetime = getTimer() / 1000;
} else {
paused = 0;
pkeylock = 1;
gameframe.diamond._visible = true;
gameframe.clock._visible = true;
gameframe.gotoAndStop(3);
if (editor == 0) {
gameframe.gamestartkeys._visible = true;
gameframe.gamestartkeys.gotoAndStop(100);
helpkeyswait = 0;
_global.helpkeys = 0;
}
starttime = (starttime + (getTimer() / 1000)) - savetime;
}
}
if (((((pkeylock == 1) && (Key.isDown(80) == false)) && (Key.isDown(72) == false)) && (Key.isDown(37) == false)) && (Key.isDown(39) == false)) {
pkeylock = 0;
}
if ((selectedlevel > 4) && (editor == 0)) {
if (((Key.isDown(38) || (Key.isDown(40))) || (Key.isDown(37))) || (Key.isDown(39))) {
helpkeyswait = Math.min(125 * (selectedlevel - 4), 1500);
if (_global.helpkeys == 0) {
gameframe.gamestartkeys.gotoAndPlay(1);
}
}
if (helpkeyswait > 0) {
helpkeyswait--;
} else if (_global.helpkeys == 1) {
gameframe.gamestartkeys.gotoAndPlay(51);
}
}
if (tiplock == 1) {
if ((Key.isDown(32) == false) && (Key.isDown(13) == false)) {
tiplock = 0;
}
}
};
Frame 59
if (((((imove == 1) && (slowcount == 0)) && (gamestate == 1)) && (help == 0)) && (paused == 0)) {
if (imoveobj == 2) {
chgobj(cx, cy, 1, 1);
}
if (moveswitch == 1) {
moveswitch = 0;
moveswitch2.removeMovieClip();
g = 0;
while (g < 40) {
if ((iswitch[g][0] == cx) && (iswitch[g][1] == cy)) {
ox = iswitch[g][2];
oy = iswitch[g][3];
mo = iswitch[g][4];
if (mo == 41) {
game[(("BallX" + ox) + "Y") + oy]._visible = true;
}
if (mo != 41) {
game[(("ObjX" + ox) + "Y") + oy]._visible = true;
}
}
g++;
}
}
if (obj == 34) {
obj_teleport();
}
cx = cx + cdx;
cy = cy + cdy;
if (a_b[cx][cy] == 41) {
obj_ball();
}
obj = a[cx][cy];
if ((((imoveobj == 2) && (cx == scx)) && (cy == scy)) && (moveswitch != 3)) {
chgobj(cx - cdx, cy - cdy, 41, 1);
imoveobj = 1;
obj = 0;
}
if (obj == 3) {
obj_diamond();
}
if (obj == 4) {
obj_exit();
}
if (obj == 5) {
obj_mine();
}
if (((((obj >= 100) || (obj == 6)) || (obj == 39)) || (obj == 40)) || (limiter[cx][cy] == 69)) {
obj_wall();
obj = 100;
}
if ((obj >= 7) && (obj <= 14)) {
obj_arrow(obj);
}
if ((obj == 15) || (obj == 16)) {
obj_pushblock(obj);
}
if ((obj == 17) || (obj == 18)) {
obj_bounceback(obj);
}
if (obj == 19) {
obj_dissolver();
}
if ((obj == 20) || (obj == 21)) {
obj_switch(obj);
}
if (obj == 36) {
obj_ghost();
}
if ((obj == 37) || (obj == 38)) {
obj_glue(obj);
}
if ((obj >= 22) && (obj <= 25)) {
obj_key(obj);
}
if ((obj >= 26) && (obj <= 33)) {
obj_lock(obj);
}
if ((obj == 42) || (obj == 43)) {
obj_laserframe(obj);
}
if ((obj == 49) || (obj == 50)) {
obj_laser();
}
if ((obj >= 45) && (obj <= 48)) {
obj_lasercannon();
}
if ((obj >= 52) && (obj <= 59)) {
obj_wall();
}
if ((obj >= 61) && (obj <= 64)) {
obj_oneway(obj);
}
if (a[cx][cy] == 60) {
obj_moveswitch();
}
if (imoveobj == 1) {
game.cyad._x = (cx - 1) * 25;
game.cyad._y = (cy - 1) * 25;
if (laserframe > 0) {
game.laserframe._x = (cx - 1) * 25;
game.laserframe._y = (cy - 1) * 25;
}
if ((a[cx][cy] >= 49) && (a[cx][cy] <= 51)) {
cyaddeath();
}
}
if (((Key.isDown(16) && (imoveobj == 1)) && (laserframe > 0)) && (laserstate == 0)) {
laserstate = 1;
imove = 0;
}
if ((imoveobj == 2) && (balldeath == 0)) {
chgobj(cx, cy, 41, 1);
}
if (slowmode >= 4) {
slowcount = 10;
}
if ((imove == 0) and (imoveobj == 2)) {
moveswitch_update(41, moveswitchballx, moveswitchbally, cx, cy);
if ((a[cx][cy] >= 49) && (a[cx][cy] <= 51)) {
chgobj(cx, cy, 1, 1);
explosion(cx, cy);
}
imoveobj = 1;
cx = scx;
cy = scy;
if ((moveswitch == 0) && (a[cx][cy] == 60)) {
obj_moveswitch();
}
}
}
if ((slowcount > 0) && (laserstate == 0)) {
slowcount--;
}
if (crosshairs >= 4) {
game.crossv._x = ((cx - 1) * 25) + 12.5;
game.crossh._y = ((cy - 1) * 25) + 12.5;
}
if ((moveswitch > 0) && (imoveobj == 1)) {
domoveswitch();
}
Frame 60
if (waitcount > 0) {
waitcount--;
}
if ((gamestate == 2) && (saved == 0)) {
savegamestr = (savegamestr.substr(0, selectedlevel) + "1") + savegamestr.substr(selectedlevel + 2, savegamestr.length);
shared1.data.savecyad = savegamestr;
saved = 1;
gameframe.gamestatus.totalgamecomplete.text = percentage_game_complete();
}
if (gamestate <= 1) {
gotoAndPlay(_currentframe - 1);
}
if (waitcount == 0) {
if ((ifirst == 1) && (editor == 0)) {
ifirst = 0;
gameframe.clock.removeMovieClip();
gameframe.diamond.removeMovieClip();
gameframe.gotoAndStop(7);
}
if ((gamestate == 6) || (gamestate == 4)) {
game.removeMovieClip();
gameframe.txtslow = "";
gameframe.diamond.removeMovieClip();
gameframe.clock.removeMovieClip();
moveswitch2.removeMovieClip();
gameframe.txtdiamond = "";
gameframe.txt_second = "";
gameframe.txt_minute = "";
gameframe.txt_colon = "";
keylock = 1;
}
if (gamestate == 6) {
gotoAndPlay(_currentframe - 3);
}
if (gamestate == 4) {
keylock = 1;
if (editor == 1) {
edit._visible = true;
gotoAndPlay(_currentframe - 12);
} else {
attachMovie("gamestart", "gamestart", 70);
gamestart._x = 0;
gamestart._y = 0;
gotoAndPlay(_currentframe - 16);
}
}
if ((gamestate == 2) || (gamestate == 3)) {
if (editor == 1) {
if (gamestate == 2) {
game.removeMovieClip();
gameframe.txtslow = "";
edit._visible = true;
gamestate = 4;
} else {
gamestate = 6;
}
} else if ((Key.isDown(81) || (Key.isDown(32))) || (Key.isDown(13))) {
game.removeMovieClip();
removeMovieClip(gametxt_outcome);
if (gamestate == 2) {
count = 0;
nextlevel = -1;
g = 0;
while (g < totallevelcount) {
if ((levelstatus[g] != 2) && (count < 5)) {
levelstatus[g] = 1;
count++;
}
g++;
}
levelsopen = 0;
g = 0;
while (g < totallevelcount) {
if (levelstatus[g] > 0) {
levelsopen++;
}
g++;
}
selectedlevel = selectedlevel + 1;
}
if (Key.isDown(81)) {
gamestate = 4;
}
if (Key.isDown(32) || (Key.isDown(13))) {
if (selectedlevel >= totallevelcount) {
selectedlevel = totallevelcount - 1;
gamestate = 4;
} else {
gameframe.txtslow = "";
gameframe.diamond.removeMovieClip();
gameframe.clock.removeMovieClip();
gameframe.txtdiamond = "";
gameframe.txt_second = "";
gameframe.txt_minute = "";
gameframe.txt_colon = "";
g = 0;
while (g <= 9) {
iload[g] = ilevel[selectedlevel][g];
g++;
}
iload();
keylock = 1;
removeMovieClip(gametxt_outcome);
gotoAndPlay(_currentframe - 3);
}
}
}
}
}
Frame 61
gotoAndPlay(_currentframe - 1);
Symbol 9 MovieClip [flash] Frame 14
removeMovieClip(this);
Symbol 23 MovieClip [explosion] Frame 20
removeMovieClip(this);
Symbol 203 MovieClip [gametxt_fail] Frame 41
stop();
Symbol 205 MovieClip [gametxt_outoftime] Frame 41
stop();
Symbol 211 MovieClip [gametxt_success] Frame 41
stop();
Symbol 212 MovieClip [gamestart] Frame 14
removeMovieClip(this);
Symbol 224 MovieClip Frame 1
_global.helpkeys = -1;
Symbol 224 MovieClip Frame 50
_global.helpkeys = 1;
stop();
Symbol 224 MovieClip Frame 51
_global.helpkeys = -1;
Symbol 224 MovieClip Frame 100
_global.helpkeys = 0;
stop();
Symbol 242 MovieClip [bluebarfade] Frame 15
removeMovieClip(this);
Symbol 246 MovieClip [moveswitch] Frame 24
gotoAndPlay (1);
Symbol 251 MovieClip [tipwindow] Frame 1
tiptext._visible = false;
Symbol 251 MovieClip [tipwindow] Frame 20
tiptext._visible = true;
Symbol 251 MovieClip [tipwindow] Frame 44
gotoAndPlay (20);
Symbol 251 MovieClip [tipwindow] Frame 60
this.removeMovieClip();
Symbol 259 MovieClip Frame 30
if (Math.random() > 0.75) {
gotoAndPlay (1);
}
Symbol 259 MovieClip Frame 32
if (Math.random() > 0.75) {
gotoAndPlay (1);
}
Symbol 259 MovieClip Frame 34
if (Math.random() > 0.75) {
gotoAndPlay (1);
}
Symbol 259 MovieClip Frame 36
if (Math.random() > 0.75) {
gotoAndPlay (1);
}
Symbol 259 MovieClip Frame 38
gotoAndPlay (1);
Symbol 264 Button
on (release) {
gotoAndPlay(_currentframe + 2);
}