Frame 1
stop();
Frame 3
setProperty("origmenu", _visible , 0);
duplicateMovieClip ("origmenu", "menu", 312);
setProperty("menu", _visible , 0);
editing = "";
if (playcustom eq "1") {
doingstuff = "load";
editing = "1";
gotoAndStop (4);
tellTarget ("interpret") {
gotoAndPlay (2);
};
tellTarget ("bootup") {
gotoAndPlay (2);
};
} else {
doingstuff = "0";
map = "";
}
stop();
Frame 4
stop();
Frame 5
map = "";
orient = "";
a = 1;
do {
b = 1;
do {
map = (map + getProperty((("L_" + b) + "_") + a, _currentframe)) + ",";
t = String(getProperty((("L_" + b) + "_") + a, _rotation) / 90);
if (t eq "-1") {
t = "3";
}
orient = orient + t;
b = b + 1;
} while (mapx >= b);
a = a + 1;
} while (mapy >= a);
map = (((((((((((startx + "_") + starty) + "_") + startdir) + "_") + mapx) + "_") + mapy) + "_") + map) + "_") + orient;
Frame 7
removeMovieClip("selector");
b = 1;
do {
a = 1;
do {
removeMovieClip((("L_" + a) + "_") + b);
removeMovieClip((("B_" + a) + "_") + b);
removeMovieClip((("D_" + a) + "_") + b);
a = a + 1;
} while (mapx >= a);
b = b + 1;
} while (mapy >= b);
Frame 8
stop();
task = "Exit";
if (playcustom eq "1") {
task = "Edit";
}
Symbol 7 Button
on (release) {
getURL ("mailto:peterjford@btinternet.com");
}
Symbol 11 Button
on (release) {
nextFrame();
}
Symbol 13 Button
on (release) {
gotoAndPlay (3);
}
Symbol 15 Button
on (release) {
prevFrame();
}
Symbol 17 Button
on (release) {
level = 4;
gotoAndStop (8);
}
Symbol 18 Button
on (release) {
level = 5;
gotoAndStop (8);
}
Symbol 22 Button
on (release) {
level = 2;
gotoAndStop (8);
}
Symbol 23 Button
on (release) {
level = 3;
gotoAndStop (8);
}
Symbol 27 Button
on (release) {
if (../:doingstuff eq "0") {
if (../:editing eq "1") {
setProperty("../menu", _visible , 1);
Set("../:doingstuff", "exit");
tellTarget ("../menu") {
intent = "exit";
gotoAndStop ("wanttosave");
};
} else {
removeMovieClip("../menu");
tellTarget ("../") {
gotoAndPlay (1);
};
}
}
}
Symbol 28 Button
on (release) {
if (../:doingstuff eq "0") {
Set("../:doingstuff", "new");
setProperty("../menu", _visible , 1);
if (../:editing eq "1") {
tellTarget ("../menu") {
gotoAndStop ("wanttosave");
};
} else {
tellTarget ("../menu") {
gotoAndStop ("new");
};
}
}
}
Symbol 29 Button
on (release) {
if ((../:doingstuff eq "0") && (../:editing eq "1")) {
Set("../:doingstuff", "compiling");
setProperty("../menu", _visible , 1);
tellTarget ("../menu") {
gotoAndStop ("userinfo");
};
tellTarget ("../trackcheck") {
play();
};
}
}
Symbol 32 Button
on (release) {
if ((../:doingstuff eq "0") && (../:editing eq "1")) {
if (../:startx eq "notset") {
call("../browser:trackscan");
}
if (../:startx eq "notset") {
Set("../:doingstuff", "alert");
setProperty("../menu", _visible , 1);
tellTarget ("../menu") {
gotoAndStop ("nocorrect");
};
} else {
Set("../:doingstuff", "save");
call("../:save info");
setProperty("../menu", _visible , 1);
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (2);
};
tellTarget ("../menu") {
gotoAndStop ("save");
Set("../menu:map", ../:map);
};
}
}
}
Symbol 34 Button
on (release) {
if (../:doingstuff eq "0") {
Set("../:doingstuff", "load");
setProperty("../menu", _visible , 1);
if (../:editing eq "1") {
tellTarget ("../menu") {
gotoAndStop ("wanttosave");
};
} else {
tellTarget ("../menu") {
gotoAndStop ("load");
};
}
}
}
Symbol 44 Button
on (release) {
setProperty("../menu", _visible , 0);
Set("../:doingstuff", "0");
}
Symbol 51 Button
on (release) {
if (mapx eq "") {
mapx = Number(0);
}
if (mapy eq "") {
mapy = Number(0);
}
mapx = Number(mapx);
if (10 < mapx) {
mapx = Number(10);
}
mapy = Number(mapy);
if (10 < mapy) {
mapy = Number(10);
}
if ((1 < mapx) && (1 < mapy)) {
Set("../:mapx", Number(mapx));
Set("../:mapy", Number(mapy));
Set("../:doingstuff", "0");
if (../:editing eq "") {
tellTarget ("../") {
play();
};
}
tellTarget ("/bootup") {
play();
};
Set("../:startdir", "1");
Set("../:startx", "notset");
Set("../:starty", 50);
setProperty("../menu", _visible , 0);
}
}
Symbol 54 Button
on (release) {
errorpoint = "";
errors = "no";
if (map ne "") {
a = 1;
underscores = 0;
do {
b = substring(map, a, 1);
if (b eq "_") {
underscores = underscores + 1;
} else if (b ne ",") {
c = Number(b);
if (c eq "NaN") {
errors = "yes";
errorpoint = "Unacceptable characters - use only numbers , (comma) and _ (underscore)";
}
}
a = a + 1;
} while (length >= a);
if ((underscores = Number(6))) {
call("interpret:2");
map2 = map;
if (length(orient) != (mapx * mapy)) {
errors = "yes";
errorpoint = "Missing Orientation Data";
}
a = 1;
commas = 1;
do {
if ((substring(map, a, 2)) eq ",,") {
errors = "yes";
errorpoint = "consecutive commas";
}
if ((substring(map, a, 1)) eq ",") {
commas = commas + 1;
}
a = a + 1;
} while (a < (length(map) - 1));
if (commas != (mapx * mapy)) {
errors = "yes";
errorpoint = "Missing Map data";
}
if (errors eq "no") {
tellTarget ("../") {
if (editing eq "") {
play();
}
};
Set("../:mapx", Number(mapx));
Set("../:mapy", Number(mapy));
Set("../:map", map);
Set("../:orient", orient);
tellTarget ("../bootup") {
play();
};
Set("../:startx", Number(x));
Set("../:starty", Number(y));
Set("../:startdir", startdir);
setProperty("../menu", _visible , 0);
}
}
}
map = errorpoint;
}
Symbol 55 MovieClip Frame 1
stop();
Symbol 55 MovieClip Frame 2
a = length(../:map);
view = 1;
b = 1;
do {
start = view;
do {
view = view + 1;
} while ((substring(../:map, view, 1)) != "_");
Set("data" + b, substring(../:map, start, view - start));
view = view + 1;
b = b + 1;
} while (6 >= b);
Set("../:x", Number(data1));
Set("../:y", Number(data2));
Set("../:startdir", Number(data3));
Set("../:mapx", Number(data4));
Set("../:mapy", Number(data5));
Set("../:orient", substring(../:map, view, (a - view) + 1));
Set("../:map", String(data6));
Symbol 58 Button
on (release) {
if (../:doingstuff eq "exit") {
call("../:Remove");
tellTarget ("../") {
gotoAndStop (1);
};
removeMovieClip("../menu");
}
if (../:doingstuff eq "load") {
call("../:Remove");
gotoAndStop (2);
}
if (../:doingstuff eq "new") {
call("../:Remove");
gotoAndStop (1);
}
if (../:doingstuff eq "save") {
setProperty("../menu", _visible , 0);
Set("../:doingstuff", "0");
}
}
Symbol 60 Button
on (release) {
if (../:startx eq "notset") {
call("../browser:trackscan");
}
if (../:startx eq "notset") {
gotoAndStop (5);
} else {
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (2);
};
call("../:save info");
map = ../:map;
gotoAndStop (3);
}
}
Symbol 62 Button
on (release) {
call("../:Remove");
Set("../:editing", "0");
if (../:doingstuff eq "exit") {
tellTarget ("../") {
gotoAndStop (1);
};
removeMovieClip("../menu");
}
if (../:doingstuff eq "new") {
gotoAndStop (1);
}
if (../:doingstuff eq "load") {
call("../:Remove");
gotoAndStop (2);
}
}
Symbol 64 Button
on (release) {
setProperty("../menu", _visible , 0);
Set("../:doingstuff", "0");
}
Symbol 67 Button
on (release) {
setProperty("../menu", _visible , 0);
Set("../:doingstuff", "0");
}
Symbol 70 Button
on (release) {
setProperty("../menu", _visible , 0);
Set("../:doingstuff", "setstart");
}
Symbol 73 MovieClip Frame 1
stop();
Symbol 73 MovieClip Frame 10
a = 1;
c = 1;
view = 1;
do {
b = 1;
do {
start = view;
do {
view = view + 1;
} while ((substring(map, view, 1)) != ",");
Set("../:temp", Number(substring(map, start, view - start)));
view = view + 1;
setProperty((("../L_" + a) + "_") + b, _rotation , Number(substring(orient, c, 1)) * 90);
c = c + 1;
b = b + 1;
} while (mapx >= b);
a = a + 1;
} while (mapy >= a);
Symbol 74 MovieClip Frame 1
stop();
Symbol 74 MovieClip Frame 2
b = 1;
c = 1;
Set("../:wrongclick", 0);
Set("../:vx", Number(1));
Set("../:vy", Number(1));
scale = 100 * (320 / (100 * ../:mapx));
yscale = 100 * (420 / (100 * ../:mapy));
if (yscale < scale) {
scale = yscale;
}
if (100 < scale) {
scale = 100;
}
Set("../:scale", scale);
setProperty("../origland", _xscale , scale);
setProperty("../origland", _yscale , scale);
setProperty("../origland", _visible , 0);
setProperty("../origbut", _xscale , scale);
setProperty("../origbut", _yscale , scale);
setProperty("../origbut", _visible , 0);
setProperty("../origbox", _xscale , scale);
setProperty("../origbox", _yscale , scale);
setProperty("../origbox", _visible , 0);
duplicateMovieClip ("../s", "selector", (3 * (../:mapx * ../:mapy)) + 10);
setProperty("../s", _visible , 0);
setProperty("../selector", _xscale , scale);
setProperty("../selector", _yscale , scale);
setProperty("../selector", _x , 10 + (0.5 * scale));
setProperty("../selector", _y , 30 + (0.5 * scale));
duplicateMovieClip ("../sav", "save", (3 * (../:mapx * ../:mapy)) + 11);
setProperty("../sav", _visible , 0);
setProperty("../save", _visible , 0);
view = 1;
do {
a = 1;
do {
xpos = (10 + (scale * a)) - (0.5 * scale);
ypos = (30 + (scale * b)) - (0.5 * scale);
duplicateMovieClip ("../origland", (("L_" + a) + "_") + b, c);
setProperty((("../L_" + a) + "_") + b, _x , xpos);
setProperty((("../L_" + a) + "_") + b, _y , ypos);
if (../:doingstuff eq "load") {
start = view;
do {
view = view + 1;
} while ((substring(../:map, view, 1)) ne ",");
Set("../:temp", Number(substring(../:map, start, view - start)));
view = view + 1;
tellTarget ((("../L_" + a) + "_") + b) {
gotoAndStop(../:temp);
};
setProperty((("../L_" + a) + "_") + b, _rotation , Number(substring(../:orient, c, 1)) * 90);
}
duplicateMovieClip ("../origbut", (("B_" + a) + "_") + b, (c + (../:mapx * ../:mapy)) + 1);
setProperty((("../B_" + a) + "_") + b, _x , xpos);
setProperty((("../B_" + a) + "_") + b, _y , ypos);
duplicateMovieClip ("../origbox", (("D_" + a) + "_") + b, (c + ((2 * ../:mapx) * ../:mapy)) + 1);
setProperty((("../D_" + a) + "_") + b, _x , xpos);
setProperty((("../D_" + a) + "_") + b, _y , ypos);
Set(((("../B_" + a) + "_") + b) + ":numx", Number(a));
Set(((("../B_" + a) + "_") + b) + ":numy", Number(b));
a = a + 1;
c = c + 1;
} while (../:mapx >= a);
b = b + 1;
} while (../:mapy >= b);
if (../:doingstuff eq "load") {
tellTarget ((("../D_" + (1 + ((../:startx - 50) / 100))) + "_") + (1 + ((../:starty - 50) / 100))) {
gotoAndStop (2);
};
}
if (../:playcustom eq "1") {
gotoAndStop (1);
Set("../:playcustom", "0");
}
Set("../:doingstuff", "0");
Set("../:editing", "1");
Symbol 75 MovieClip Frame 1
stop();
Symbol 75 MovieClip Frame 2
function normalise(input, min, max) {
diff = (max - min) + 1;
if (max < input) {
input = input - diff;
}
if (input < min) {
input = input + diff;
}
return(input);
}
if (../:startx eq "notset") {
call("../browser:trackscan");
}
if (../:startx eq "notset") {
Set("../:doingstuff", "alert");
setProperty("../menu", _visible , 1);
tellTarget ("../menu") {
gotoAndStop ("nocorrect");
};
gotoAndStop (1);
} else {
if (editing eq "1") {
timeout = 0;
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (2);
};
}
if (../:editing eq "1") {
initx = ../:startx;
inity = ../:starty;
} else {
initx = ../:x;
inity = ../:y;
}
initx = (initx + 50) / 100;
inity = (inity + 50) / 100;
oldx = initx;
oldy = inity;
if (../:editing eq "1") {
temp = (("../L_" + initx) + "_") + inity;
call((temp + ":") + getProperty(temp, _currentframe));
rotation = getProperty(temp, _rotation) / 90;
} else {
call("../reference:" + eval ((("../:map_" + initx) + "_") + inity));
rotation = eval ((("../:orient_" + initx) + "_") + inity);
}
buffer = normalise(eval ("../:xs" + ../:startdir) + Number(rotation), 0, 3);
direction = (90 * buffer) / 57.296;
tarx = int((initx + Math.cos(direction)) + 0.001);
tary = int((inity + Math.sin(direction)) + 0.001);
tarx = normalise(tarx, 1, ../:mapx);
tary = normalise(tary, 1, ../:mapy);
}
Symbol 75 MovieClip Frame 3
if ((tarx == initx) && (tary == inity)) {
if (../:editing eq "1") {
Set("../:playcustom", "1");
Set("../:editing", "nope");
call("../:save info");
removeMovieClip("../menu");
tellTarget ("../") {
gotoAndPlay ("Remove");
};
gotoAndStop (1);
} else {
Set("../:lap", ../:lap + 1);
}
}
if (../:editing eq "1") {
temp = (("../L_" + tarx) + "_") + tary;
call((temp + ":") + getProperty(temp, _currentframe));
} else {
call("../reference:" + eval ((("../:map_" + tarx) + "_") + tary));
}
if (../:xs1 == -2) {
if ((tarx == ../:mapx) && (oldx == 1)) {
oldx = oldx + ../:mapx;
}
if ((tarx == 1) && (oldx == ../:mapx)) {
oldx = oldx - ../:mapx;
}
if ((tary == ../:mapy) && (oldy == 1)) {
oldy = oldy + ../:mapy;
}
if ((tary == 1) && (oldy == ../:mapy)) {
oldy = oldy - ../:mapy;
}
tx = tarx - oldx;
ty = tary - oldy;
oldx = tarx;
oldy = tary;
tarx = tarx + tx;
tary = tary + ty;
tarx = normalise(tarx, 1, ../:mapx);
tary = normalise(tary, 1, ../:mapy);
} else if (../:xs1 == -1) {
Set("../:vx", oldx);
Set("../:vy", oldy);
Set("../:doingstuff", "alert");
setProperty("../menu", _visible , 1);
setProperty("../selector", _x , (10 + (../:scale * oldx)) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * oldy)) - (0.5 * ../:scale));
tellTarget ("../menu") {
gotoAndStop ("levelerror");
};
gotoAndStop (1);
} else if (../:xs1 >= 0) {
if (../:editing eq "1") {
Set("../:xs1", ../:xs1 + (getProperty(temp, _rotation) / 90));
Set("../:xs2", ../:xs2 + (getProperty(temp, _rotation) / 90));
} else {
Set("../:xs1", Number(../:xs1) + Number(eval ((("../:orient_" + tarx) + "_") + tary)));
Set("../:xs2", Number(../:xs2) + Number(eval ((("../:orient_" + tarx) + "_") + tary)));
}
buffer = normalise(../:xs1, 0, 3);
direction = (90 * buffer) / 57.296;
tx1 = int((tarx + Math.cos(direction)) + 0.001);
ty1 = int((tary + Math.sin(direction)) + 0.001);
tx1 = normalise(tx1, 1, ../:mapx);
ty1 = normalise(ty1, 1, ../:mapy);
buffer = normalise(../:xs2, 0, 3);
direction = (90 * buffer) / 57.296;
tx2 = int((tarx + Math.cos(direction)) + 0.001);
ty2 = int((tary + Math.sin(direction)) + 0.001);
tx2 = normalise(tx2, 1, ../:mapx);
ty2 = normalise(ty2, 1, ../:mapy);
if ((oldx == tx1) && (oldy == ty1)) {
tx = tx2;
ty = ty2;
} else if ((oldx == tx2) && (oldy == ty2)) {
tx = tx1;
ty = ty1;
} else {
Set("../:vx", oldx);
Set("../:vy", oldy);
Set("../:doingstuff", "alert");
setProperty("../selector", _x , (10 + (../:scale * oldx)) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * oldy)) - (0.5 * ../:scale));
setProperty("../menu", _visible , 1);
tellTarget ("../menu") {
gotoAndStop ("levelerror");
};
gotoAndStop (1);
}
oldx = tarx;
oldy = tary;
tarx = tx;
tary = ty;
}
Symbol 75 MovieClip Frame 4
timeout = timeout + 1;
if (((2 * ../:mapx) * ../:mapy) < timeout) {
gotoAndStop (1);
Set("../:doingstuff", "alert");
tellTarget ("../menu") {
gotoAndPlay ("timeout");
};
}
gotoAndPlay (3);
Symbol 94 MovieClip Frame 1
stop();
Set("../:xs1", -1);
Set("../:xs2", -1);
Symbol 94 MovieClip Frame 2
Set("../:xs1", 1);
Set("../:xs2", 3);
Symbol 94 MovieClip Frame 3
Set("../:xs1", 1);
Set("../:xs2", 3);
Symbol 94 MovieClip Frame 4
Set("../:xs1", 1);
Set("../:xs2", 0);
Symbol 94 MovieClip Frame 5
Set("../:xs1", 2);
Set("../:xs2", 0);
Symbol 94 MovieClip Frame 6
Set("../:xs1", -2);
Set("../:xs2", -2);
Symbol 94 MovieClip Frame 7
Set("../:xs1", -1);
Set("../:xs2", -1);
Symbol 94 MovieClip Frame 8
Set("../:xs1", -1);
Set("../:xs2", -1);
Symbol 94 MovieClip Frame 9
Set("../:xs1", -1);
Set("../:xs2", -1);
Symbol 94 MovieClip Frame 10
Set("../:xs1", -1);
Set("../:xs2", -1);
Symbol 94 MovieClip Frame 11
Set("../:xs1", 1);
Set("../:xs2", 0);
Symbol 94 MovieClip Frame 12
Set("../:xs1", 1);
Set("../:xs2", 3);
Symbol 94 MovieClip Frame 13
Set("../:xs1", 1);
Set("../:xs2", 3);
Symbol 94 MovieClip Frame 14
Set("../:xs1", 1);
Set("../:xs2", 0);
Symbol 94 MovieClip Frame 15
Set("../:xs1", 2);
Set("../:xs2", 3);
Symbol 94 MovieClip Frame 16
Set("../:xs1", 1);
Set("../:xs2", 2);
Symbol 95 Button
on (release) {
if (../:doingstuff eq "setstart") {
temp = (("../L_" + numx) + "_") + numy;
call((temp + ":") + getProperty(temp, _currentframe));
if (0 < ../:xs1) {
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (1);
};
Set("../:startx", (numx * 100) - 50);
Set("../:starty", (numy * 100) - 50);
tellTarget ((("../D_" + numx) + "_") + numy) {
gotoAndStop (3);
};
temp = getProperty(temp, _rotation);
setProperty((("../D_" + numx) + "_") + numy, _rotation , (Number(temp) + (90 * eval ("../:xs" + ../:startdir))) + 90);
setProperty("../selector", _x , (10 + (../:scale * numx)) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * numy)) - (0.5 * ../:scale));
} else {
Set("../:wrongclick", ../:wrongclick + 1);
if (../:wrongclick == 3) {
Set("../:wrongclick", 0);
Set("../:doingstuff", "alert");
setProperty("../menu", _visible , 1);
tellTarget ("../menu") {
gotoAndStop ("positiontip");
};
}
}
}
if (../:doingstuff eq "0") {
Set("../:vx", numx);
Set("../:vy", numy);
setProperty("../selector", _x , (10 + (../:scale * numx)) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * numy)) - (0.5 * ../:scale));
}
}
Symbol 98 Button
on (release) {
if (../../:doingstuff eq "0") {
Set("../../:temp", which);
tellTarget ((("../../L_" + ../../:vx) + "_") + ../../:vy) {
gotoAndStop(../:temp);
};
if (../../:vx eq ((../../:startx + 50) / 100)) {
if (../../:vy eq ((../../:starty + 50) / 100)) {
if ((which = 1)) {
tellTarget ((("../../D_" + ((../../:startx + 50) / 100)) + "_") + ((../../:starty + 50) / 100)) {
gotoAndStop (1);
};
Set("../../:startx", "notset");
}
}
}
}
}
Symbol 103 Button
on (release) {
if (../:doingstuff eq "0") {
t = getProperty((("../L_" + ../:vx) + "_") + ../:vy, _rotation) + 90;
if (360 < t) {
t = t - 360;
}
setProperty((("../L_" + ../:vx) + "_") + ../:vy, _rotation , t);
}
if (../:doingstuff eq "setstart") {
if (../:startdir eq "1") {
Set("../:startdir", "2");
} else {
Set("../:startdir", "1");
}
temp = getProperty((("../L_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100), _rotation);
setProperty((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100), _rotation , (Number(temp) + (90 * eval ("../:xs" + ../:startdir))) + 90);
}
}
Symbol 104 Button
on (release) {
if (../:doingstuff eq "0") {
t = getProperty((("../L_" + ../:vx) + "_") + ../:vy, _rotation) - 90;
if (t < 0) {
t = t + 360;
}
setProperty((("../L_" + ../:vx) + "_") + ../:vy, _rotation , t);
}
if (../:doingstuff eq "setstart") {
if (../:startdir eq "1") {
Set("../:startdir", "2");
} else {
Set("../:startdir", "1");
}
temp = getProperty((("../L_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100), _rotation);
setProperty((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100), _rotation , (Number(temp) + (90 * eval ("../:xs" + ../:startdir))) + 90);
}
}
Symbol 105 Button
on (release) {
if (../:doingstuff eq "setstart") {
Set("../:doingstuff", "0");
setProperty("../selector", _x , (10 + (../:scale * ../:vx)) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * ../:vy)) - (0.5 * ../:scale));
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (2);
};
mode = "Start";
} else if (../:doingstuff eq "0") {
if (../:startx eq "notset") {
call("trackscan");
}
if (../:startx eq "notset") {
setProperty("../menu", _visible , 1);
Set("../:doingstuff", "alert");
tellTarget ("../menu") {
gotoAndStop ("nocorrect");
};
} else {
mode = "Edit";
Set("../:doingstuff", "setstart");
setProperty("../selector", _x , (10 + (../:scale * ((../:startx + 50) / 100))) - (0.5 * ../:scale));
setProperty("../selector", _y , (30 + (../:scale * ((../:starty + 50) / 100))) - (0.5 * ../:scale));
tellTarget ((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100)) {
gotoAndStop (3);
};
temp = String((("../L_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100));
call((temp + ":") + getProperty(temp, _currentframe));
temp = getProperty(temp, _rotation);
setProperty((("../D_" + ((../:startx + 50) / 100)) + "_") + ((../:starty + 50) / 100), _rotation , (Number(temp) + (90 * eval ("../:xs" + ../:startdir))) + 90);
}
}
}
Symbol 107 MovieClip Frame 1
setProperty("origscen", _visible , 0);
setProperty("origbut", _visible , 0);
mode = "Start";
b = 1;
c = 1;
do {
a = 1;
do {
duplicateMovieClip ("origscen", c, c);
tellTarget (c) {
gotoAndStop(../:c);
};
setProperty(c, _x , (a * 90) - 95);
setProperty(c, _y , (b * 90) - 95);
duplicateMovieClip ("origbut", "B" + c, c + 17);
Set(("B" + c) + ":which", c);
setProperty("B" + c, _x , (a * 90) - 95);
setProperty("B" + c, _y , (b * 90) - 95);
a = a + 1;
c = c + 1;
} while (4 >= a);
b = b + 1;
} while (4 >= b);
stop();
Symbol 107 MovieClip Frame 2
a = 1;
do {
b = 1;
do {
temp = String((("../L_" + a) + "_") + b);
call((temp + ":") + getProperty(temp, _currentframe));
if (0 < ../:xs1) {
Set("../:startx", (100 * a) - 50);
Set("../:starty", (100 * b) - 50);
break;
}
b = b + 1;
} while (../:mapy >= b);
if (-1 < ../:startx) {
break;
}
a = a + 1;
} while (../:mapx >= a);
Symbol 114 MovieClip Frame 1
stop();
Symbol 116 MovieClip Frame 1
stop();
Symbol 116 MovieClip Frame 2
Set("../:map", "11,2,3,14,8,1,1,7,11,2,11,15,15,8,1,7,4,5,11,7,15,16,8,8,3,7,7,1,8,5,8,8,12,8,11,11,8,12,8,8,13,8,2,2,8,13,8,8,2,8,11,11,8,3,8,8,2,8,8,8,15,14,8,8,11,13,12,5,16,8,8,1,8,7,8,8,8,1,1,1,");
Set("../:orient", "01110001331132010023101000003122210102232200223003320221211022303332120002323000");
Set("../:mapx", 8);
Set("../:mapy", 10);
Set("../:x", 150);
Set("../:y", 50);
Set("../:startdir", 2);
Symbol 116 MovieClip Frame 3
Set("../:map", "4,5,2,12,13,11,1,1,3,8,10,9,8,11,3,4,11,2,2,3,4,8,8,5,1,1,1,1,5,1,1,3,11,2,11,1,2,10,15,14,5,8,11,2,11,15,15,9,4,3,2,2,5,16,9,8,");
Set("../:orient", "00111100002103113111110100001002011000223331220133332110");
Set("../:mapx", 8);
Set("../:mapy", 7);
Set("../:x", 150);
Set("../:y", 50);
Set("../:startdir", 1);
Symbol 116 MovieClip Frame 4
Set("../:map", "4,5,2,6,2,2,2,11,3,11,11,11,11,11,11,2,11,11,11,2,11,2,2,2,3,4,11,2,2,11,11,6,1,5,2,11,11,11,2,11,11,11,11,11,2,2,11,11,2,11,3,4,5,11,11,3,11,11,1,5,4,3,5,4,");
Set("../:orient", "0030333100131010323120001103123001201032023200010011332232013322");
Set("../:mapx", 8);
Set("../:mapy", 8);
Set("../:x", 50);
Set("../:y", 50);
Set("../:startdir", 1);
Symbol 116 MovieClip Frame 5
Set("../:map", "1,11,2,3,4,1,11,11,1,5,11,6,6,2,11,11,6,6,2,11,1,2,11,2,11,");
Set("../:orient", "0331100101000323003100332");
Set("../:mapx", 5);
Set("../:mapy", 5);
Set("../:x", 50);
Set("../:y", 250);
Set("../:startdir", 1);
Symbol 116 MovieClip Frame 6
Set("../:map", "1,1,1,4,5,3,4,9,8,1,1,1,3,1,1,5,2,1,1,4,5,7,9,2,6,7,1,1,3,1,5,8,1,3,2,1,1,3,10,4,3,5,4,5,1,5,4,1,1,1,1,1,4,3,");
Set("../:orient", "000001102020000100000321030000310200020332230220000033");
Set("../:mapx", 9);
Set("../:mapy", 6);
Set("../:x", 650);
Set("../:y", 350);
Symbol 119 Button
on (keyPress "<Left>") {
if (acc != 0) {
if ((-8 < dpress) && (dpress < 0)) {
rot = rot - 2;
dpress = dpress - 1;
} else {
dpress = -10;
}
rot = rot - 3;
if (Number(rot) < 0) {
rot = Number(rot) + 360;
}
}
}
on (keyPress "<Right>") {
if (acc != 0) {
if ((0 < dpress) && (dpress < 8)) {
rot = rot + 2;
dpress = dpress + 1;
} else {
dpress = 10;
}
rot = Number(rot) + 3;
if (360 < Number(rot)) {
rot = rot - 360;
}
}
}
on (keyPress "<Up>") {
acc = acc - 2;
if (Number(acc) < Number(-6)) {
acc = -6;
}
}
on (keyPress "<Down>") {
acc = Number(acc) + 2;
if (6 < Number(acc)) {
acc = 6;
}
}
Symbol 126 MovieClip Frame 1
function encircle(a, min, max) {
if (max < a) {
return(a - max);
}
if (a < min) {
return(a + max);
}
return(a);
}
setProperty("reference", _visible , 0);
a = 0;
do {
t = a / 57.295;
Set("sin" + a, Math.sin(t));
Set("cos" + a, Math.cos(t));
a = a + 1;
} while (a < 360);
playcustom = ../:playcustom;
if (playcustom eq "1") {
map = ../:map;
call("interpret:2");
} else {
call("level:" + ../:level);
}
rot = 0;
acc = 0;
editing = "nope";
Symbol 126 MovieClip Frame 2
lap = 0;
a = 1;
c = 1;
view = 1;
do {
b = 1;
do {
start = view;
do {
view = view + 1;
} while ((substring(map, view, 1)) != ",");
Set((("map_" + b) + "_") + a, substring(map, start, view - start));
view = view + 1;
Set((("orient_" + b) + "_") + a, substring(orient, c, 1));
c = c + 1;
b = b + 1;
} while (mapx >= b);
a = a + 1;
} while (mapy >= a);
if (dave == 13) {
}
oldx = int(x / 100) + 1;
oldy = int(y / 100) + 1;
temp = eval ((("orient_" + oldx) + "_") + oldy);
call("reference:" + eval ((("map_" + oldx) + "_") + oldy));
rot = (eval ("xs" + startdir) * 90) + 90;
rot = (90 * (Number(temp) + eval ("xs" + startdir))) + 90;
call("mapper:init");
Symbol 126 MovieClip Frame 3
x = x - (acc * eval ("sin" + rot));
y = y + (acc * eval ("cos" + rot));
x = encircle(x, 0, 100 * mapx);
y = y + ym;
y = encircle(y, 0, 100 * mapy);
tx = int(x / 100) + 1;
ty = int(y / 100) + 1;
setProperty("window/rotate", _x , ((100 * tx) - 50) - x);
setProperty("window/rotate", _y , ((100 * ty) - 50) - y);
setProperty("window", _rotation , -rot);
if (dpress < 0) {
dpress = dpress + 1;
}
if (0 < dpress) {
dpress = dpress - 1;
}
if ((tx != currentx) or (ty != currenty)) {
currentx = tx;
currenty = ty;
a = 1;
b = -2;
do {
c = -2;
do {
tvx = tx + c;
tvx = encircle(tvx, 1, mapx);
tvy = ty + b;
tvy = encircle(tvy, 1, mapy);
temp = eval ((("map_" + tvx) + "_") + tvy);
tellTarget ("window/rotate/" + a) {
gotoAndStop(../../../:temp);
};
setProperty("window/rotate/" + a, _rotation , 90 * eval ((("orient_" + tvx) + "_") + tvy));
c = c + 1;
a = a + 1;
} while (2 >= c);
b = b + 1;
} while (2 >= b);
if ((mapper:tarx == tx) && (mapper:tary == ty)) {
call("mapper:coursetracker");
}
}
Symbol 126 MovieClip Frame 4
gotoAndPlay (3);
Symbol 136 MovieClip Frame 1
acc = (8 - ../main:acc) / 2;
tellTarget ("speedo") {
gotoAndStop(../:acc);
};
setProperty("../compass", _rotation , -../main:rot);
Symbol 136 MovieClip Frame 2
gotoAndPlay (1);
Symbol 140 Button
on (release) {
if (playcustom eq "1") {
gotoAndStop (3);
} else {
gotoAndStop (2);
}
}