Frame 1
flash = "4";
if (flash == "4") {
ifFrameLoaded (5) {
gotoAndStop (5);
}
}
Frame 2
ifFrameLoaded (5) {
if (flash == "4") {
gotoAndStop (5);
} else {
gotoAndStop (4);
}
}
Frame 3
gotoAndPlay (2);
Frame 5
Set("/:server", "NONE");
Set("/:room", "10");
Set("/:dir", "5");
Set("/:pop", "1");
Set("/:depth", "2");
Set("/:character", "1");
Set("/:password", "");
Set("/:response", "");
startDrag ("mouse", true, "10", "10", "590", "390");
stop();
Frame 8
Set("/:name", "");
Frame 11
ifFrameLoaded (1) {
gotoAndPlay (20);
}
Frame 12
gotoAndPlay (11);
Frame 21
duplicateMovieClip ("/world/player", /:name, "1");
Set("/:playerlist", /:name add "~");
tellTarget ("/update") {
gotoAndPlay ("update");
}
Frame 22
if (/:action eq "skip") {
gotoAndStop("room" add /:room);
}
Frame 23
gotoAndPlay (22);
Frame 30
stop();
Frame 31
stop();
Frame 32
stop();
Symbol 8 Button
on (release) {
getURL ("http://www.rocketsnail.com/", "_blank");
}
Symbol 21 Button
on (release) {
getURL ("http://www.rocketsnail.com/", "_blank");
}
Symbol 26 Button
on (release) {
getURL ("http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash", "_blank");
}
Symbol 28 MovieClip Frame 1
stop();
Symbol 28 MovieClip Frame 2
action = /:login;
name = /:name;
password = /:password;
room = /:room;
Set(/:name, /:update);
trace(/:login add " is connecting to the server");
Symbol 28 MovieClip Frame 3
action = "update";
name = /:name;
key = /:key;
room = /:room;
Set(/:name, /:update);
Symbol 28 MovieClip Frame 4
action = "drop";
name = /:name;
key = /:key;
room = /:room;
Symbol 29 MovieClip Frame 1
stop();
Symbol 29 MovieClip Frame 2
trace("Converting String into upper and lowercase letters");
caseword = "";
char = "";
space = "1";
n = "1";
while (length(lowword) >= n) {
char = substring(lowword, n, "1");
if ((char eq " ") and (space == "0")) {
caseword = caseword add char;
space = "1";
} else if ((char ne " ") and (space == "1")) {
Char = chr(ord(Char) - "32");
caseword = caseword add char;
space = "0";
} else if (char ne " ") {
caseword = caseword add char;
space = "0";
}
n = n + "1";
}
Set("/:string", caseword);
trace("New string: " add /:string);
Symbol 29 MovieClip Frame 3
trace("Convert string to lowercase");
n = "1";
lowword = "";
while (length(/:string) >= n) {
char = substring(/:string, n, "1");
if ((ord(char) >= ord("A")) and (ord("Z") >= ord(char))) {
char = chr(ord(char) + "32");
}
lowword = lowword add char;
n = n + "1";
}
Symbol 29 MovieClip Frame 4
trace("Removing spaces and symbols from lowercase string");
n = "1";
temp = "";
while (length(lowword) >= n) {
char = substring(lowword, n, "1");
if (((ord(char) >= ord("a")) and (ord("z") >= ord(char))) or (char eq " ")) {
temp = temp add char;
}
n = n + "1";
}
lowword = temp;
Symbol 29 MovieClip Frame 6
if ("0" < length(chat)) {
if (chat eq "/penguin") {
character = "1";
} else if (chat eq "/snowcat") {
character = "3";
} else if ((chat eq "/santa") and (/:character >= "8")) {
character = "8";
} else if ((chat eq "/snail") and (/:character >= "8")) {
character = "9";
} else {
location = substring(/:update, "1", "6");
Set("/:update", (((/:location add /:dir) add /:character) add "0") add /:chat);
tellTarget ("/update") {
gotoAndPlay ("skip");
};
call("/actions:update");
trace("UPDATE: " add /:update);
}
chat = "";
}
Symbol 30 MovieClip Frame 1
stop();
Symbol 30 MovieClip Frame 3
trace("Checking for New Players to Add");
while ("0" < length(/:players)) {
n = "1";
while ((substring(/:players, n, "1")) ne "~") {
n = n + "1";
}
Set("/:nplayer", substring(/:players, "1", n - "1"));
Set("/:players", substring(/:players, n + "1", length(/:players)));
trace("Checking Player: " add /:nplayer);
Set("/:action", "add");
if (/:nplayer eq (substring(/:PlayerList, "1", length(/:nplayer)))) {
Set("/:action", "none");
} else if (length(/:playerlist) >= length(/:nplayer)) {
m = "1";
while ((length(/:playerlist) - length(/:nplayer)) >= m) {
m = m + "1";
if ((substring(/:playerlist, m, length(/:nplayer))) eq /:nplayer) {
Set("/:action", "none");
}
}
}
if ((/:Action eq "add") and ("2" < length(/:nplayer))) {
trace("Adding New Player");
duplicateMovieClip ("/world/player", /:nplayer, /:depth);
call("/log:sort");
Set("/log:log1", /:nplayer add " has entered the World");
Set("/:depth", /:depth + "1");
Set("/:pop", /:pop + "1");
Set("/:playerlist", (/:playerlist add /:nplayer) add "~");
}
}
Set("/:action", "done");
Set("/:nplayer", "");
Set("/:players", /:lastplayers);
Symbol 30 MovieClip Frame 4
trace("Checking for Dropped Players");
while ("0" < length(/:PlayerCheck)) {
n = "1";
while ((substring(/:PlayerCheck, n, "1")) ne "~") {
n = n + "1";
}
Set("/:nplayer", substring(/:PlayerCheck, "1", n - "1"));
Set("/:PlayerCheck", substring(/:PlayerCheck, n + "1", length(/:PlayerCheck)));
trace("Checking Player: " add /:nplayer);
Set("/:action", "delete");
if (/:nplayer eq (substring(/:players, "1", length(/:nplayer)))) {
Set("/:action", "none");
} else if (length(/:players) >= length(/:nplayer)) {
m = "1";
while ((length(/:players) - length(/:nplayer)) >= m) {
m = m + "1";
if ((substring(/:players, m, length(/:nplayer))) eq /:nplayer) {
Set("/:action", "none");
}
}
}
if (((/:Action eq "delete") and ("2" < length(/:nplayer))) and (/:nplayer ne /:name)) {
trace("Dropping Player");
call("/log:sort");
Set("/log:log1", /:nplayer add " has left the World");
Set("/:pop", /:pop - "1");
tellTarget ("/world/" add /:nplayer) {
gotoAndPlay ("drop");
};
} else {
Set("/:PlayerList", (/:PlayerList add /:nplayer) add "~");
}
}
Set("/:nplayer", "");
Set("/:PlayerCheck", "");
Symbol 31 MovieClip Frame 1
stop();
Symbol 31 MovieClip Frame 2
location = substring(/:update, "1", "6");
chat = substring(/:update, "10", length(/:update) - "9");
Set("/:update", (((location add /:dir) add /:character) add "0") add chat);
Set("/:action", "update");
call("/server:update");
Symbol 31 MovieClip Frame 10
if (/:lastplayers ne /:players) {
Set("/:lastplayers", /:players);
Set("/:playercheck", /:playerList);
Set("/:playerlist", "");
call("/setup:drop");
call("/setup:add");
}
Symbol 31 MovieClip Frame 11
Set("/:action", "skip");
Symbol 31 MovieClip Frame 86
gotoAndPlay (2);
Symbol 33 Button
on (release) {
x = int(_x);
y = int(_y);
if (x < "10") {
x = "00" add x;
} else if (x < "100") {
x = "0" add x;
}
if (y < "10") {
y = "00" add y;
} else if (y < "100") {
y = "0" add y;
}
chat = substring(/:update, "10", length(/:update) - "9");
Set("/:update", ((((x add y) add /:dir) add /:character) add "0") add chat);
tellTarget ("/update") {
gotoAndPlay ("skip");
};
call("/server:update");
tellTarget (("/world/" add /:name) add "/selection") {
gotoAndStop (1);
};
trace("UPDATE: " add /:update);
gotoAndStop (1);
}
Symbol 34 MovieClip Frame 1
stop();
Symbol 35 Button
on (release) {
Set("/:password", "");
Set("/:response", "");
gotoAndStop (5);
}
Symbol 39 Button
on (release, keyPress "<Enter>") {
if ("1" < length(name)) {
Set("/:name", name);
Set("/:string", name);
call("/actions:lowercase");
call("/actions:removesymbols");
call("/actions:upperlowercase");
Set("/:name", string);
if (("1" < length(name)) and (name ne "Chat")) {
Set("/:login", "newplayer");
x = random("400") + "100";
y = random("200") + "100";
Set("/:update", (x add y) add "510");
gotoAndPlay (11);
} else {
gotoAndStop (8);
}
}
}
Symbol 41 Button
on (release) {
Set("/:room", "10");
gotoAndStop (1);
}
Symbol 43 Button
on (release) {
Set("/:room", "11");
gotoAndStop (2);
}
Symbol 44 Button
on (release) {
Set("/:room", "12");
gotoAndStop (3);
}
Symbol 47 MovieClip Frame 1
if (/:room == "12") {
gotoAndStop (3);
} else if (/:room == "11") {
gotoAndStop (2);
} else {
stop();
}
Symbol 53 Button
on (release) {
if ((getProperty("../", _currentframe) < "15") and (getProperty("../", _name) eq /:name)) {
tellTarget ("/mouse") {
gotoAndStop (2);
};
gotoAndPlay (2);
}
}
Symbol 55 Button
on (release) {
tellTarget ("/mouse") {
gotoAndStop (1);
};
gotoAndStop (1);
}
Symbol 56 MovieClip Frame 1
stop();
Symbol 56 MovieClip Frame 2
distx = int(getProperty("/mouse", _x) - getProperty("../", _x));
disty = int(getProperty("../", _y) - getProperty("/mouse", _y));
if (("0" < disty) and ("0" < distx)) {
if (distx < (disty / "2")) {
Set("/:dir", "1");
tellTarget ("../character/sprites") {
gotoAndStop (11);
};
} else if (disty < (distx / "2")) {
Set("/:dir", "3");
tellTarget ("../character/sprites") {
gotoAndStop (13);
};
} else {
Set("/:dir", "2");
tellTarget ("../character/sprites") {
gotoAndStop (12);
};
}
}
if ((disty < "0") and ("0" < distx)) {
disty = disty - (disty + disty);
if (distx < (disty / "2")) {
Set("/:dir", "5");
tellTarget ("../character/sprites") {
gotoAndStop (15);
};
} else if (disty < (distx / "2")) {
Set("/:dir", "3");
tellTarget ("../character/sprites") {
gotoAndStop (13);
};
} else {
Set("/:dir", "4");
tellTarget ("../character/sprites") {
gotoAndStop (14);
};
}
}
if ((disty < "0") and (distx < "0")) {
if ((disty / "2") < distx) {
Set("/:dir", "5");
tellTarget ("../character/sprites") {
gotoAndStop (15);
};
} else if ((distx / "2") < disty) {
Set("/:dir", "7");
tellTarget ("../character/sprites") {
gotoAndStop (17);
};
} else {
Set("/:dir", "6");
tellTarget ("../character/sprites") {
gotoAndStop (16);
};
}
}
if (("0" < disty) and (distx < "0")) {
distx = distx - (distx + distx);
if (disty < (distx / "2")) {
Set("/:dir", "7");
tellTarget ("../character/sprites") {
gotoAndStop (17);
};
} else if (distx < (disty / "2")) {
Set("/:dir", "1");
tellTarget ("../character/sprites") {
gotoAndStop (11);
};
} else {
Set("/:dir", "8");
tellTarget ("../character/sprites") {
gotoAndStop (18);
};
}
}
if ((distx == "0") or (disty == "0")) {
Set("/:dir", "5");
tellTarget ("../character/sprites") {
gotoAndStop (15);
};
}
Symbol 56 MovieClip Frame 3
gotoAndPlay (2);
Symbol 112 MovieClip Frame 10
stop();
Symbol 113 MovieClip Frame 15
stop();
Symbol 116 MovieClip Frame 1
stop();
Symbol 116 MovieClip Frame 160
say = "";
Set("/:update", substring(/:update, "1", "9"));
gotoAndStop (1);
Symbol 138 MovieClip Frame 10
gotoAndStop (15);
Symbol 138 MovieClip Frame 15
stop();
Symbol 140 MovieClip Frame 1
stop();
name = ../:name;
Symbol 141 MovieClip Frame 1
name = _name;
if (_name eq /:name) {
update = /:update;
} else {
update = eval ("/:" add name);
setProperty("selection", _visible , "0");
}
_x = (substring(update, "1", "3"));
_y = (substring(update, "4", "3"));
character = substring(update, "8", "1");
tellTarget ("character") {
gotoAndStop(../:character);
};
lastupdate = update;
lastchat = substring(update, "10", length(update) - "9");
lastmove = substring(update, "1", "6");
speed = "5";
Symbol 141 MovieClip Frame 10
if (_name eq /:name) {
update = /:update;
} else {
update = eval ("/:" add name);
}
if (lastupdate ne update) {
if (character ne (substring(update, "8", "1"))) {
character = substring(update, "8", "1");
tellTarget ("character") {
gotoAndStop(../:character);
};
}
dir = substring(update, "7", "1");
tellTarget ("character/sprites") {
gotoAndStop(../../:dir + "10");
};
chat = substring(update, "10", length(update) - "9");
if ((lastchat ne chat) and (length(chat) >= "1")) {
if (((substring(chat, "1", "1")) eq "/") and (getProperty("character", _currentframe) >= "8")) {
if (chat eq ("/" add /:name)) {
if (/:character == "1") {
Set("/:character", "3");
} else {
Set("/:character", "1");
}
}
} else {
tellTarget ("character/chat") {
gotoAndPlay (1);
};
Set("character/chat:say", chat);
call("/log:sort");
Set("/log:log1", (name add " says: ") add chat);
}
lastchat = chat;
}
if (lastmove ne (substring(update, "1", "6"))) {
gotoAndPlay (20);
lastmove = substring(update, "1", "6");
}
lastupdate = update;
}
Symbol 141 MovieClip Frame 11
gotoAndPlay (10);
Symbol 141 MovieClip Frame 20
x = substring(update, "1", "3");
y = substring(update, "4", "3");
distx = x - _x;
disty = _y - y;
input = (distx * distx) + (disty * disty);
call("sqrt");
distance = output / speed;
movex = distx / distance;
movey = disty / distance;
tellTarget ("character/sprites") {
gotoAndStop(../../:dir + "20");
}
Symbol 141 MovieClip Frame 21
if ("0" >= distance) {
tellTarget ("character/sprites") {
gotoAndPlay(../../:dir + "10");
stop();
};
gotoAndPlay (10);
} else {
newx = _x + movex;
newy = _y - movey;
_x = newx;
_y = newy;
distance = distance - "1";
}
Symbol 141 MovieClip Frame 22
gotoAndPlay (21);
Symbol 141 MovieClip Frame 30
Set("/character:name", "");
tellTarget ("character/sprites") {
gotoAndStop ("drop");
}
Symbol 141 MovieClip Frame 40
removeMovieClip("");
Symbol 141 MovieClip Frame 41
z = "1";
i = "0";
while (i < "20") {
z = z - (((z * z) - input) / ("2" * z));
i = i + "1";
}
output = z;
Symbol 142 MovieClip Frame 1
setProperty("player", _visible , "0");
stop();
Symbol 145 Button
on (release, keyPress "<Enter>") {
if ("0" < length(chat)) {
location = substring(/:update, "1", "6");
Set("/:update", (((/:location add /:dir) add /:character) add "0") add /:chat);
call("/actions:update");
trace("UPDATE: " add /:update);
chat = "";
}
}
on (rollOver) {
help1 = "Chat with other players";
}
on (rollOut) {
help1 = "";
}
Symbol 149 Button
on (release) {
if (getProperty("/log", _visible) == "1") {
setProperty("/log", _y , "-100");
setProperty("/log", _visible , "0");
} else {
setProperty("/log", _y , "52");
setProperty("/log", _visible , "1");
}
}
on (rollOver) {
help1 = "View current log";
}
on (rollOut) {
help1 = "";
}
Symbol 156 Button
on (release) {
Set("/:room", "10");
tellTarget ("/") {
gotoAndPlay ("setup");
};
gotoAndStop (1);
}
Symbol 157 Button
on (release) {
Set("/:room", "11");
tellTarget ("/") {
gotoAndPlay ("setup");
};
gotoAndStop (2);
}
Symbol 158 Button
on (release) {
Set("/:room", "12");
tellTarget ("/") {
gotoAndPlay ("setup");
};
gotoAndStop (3);
}
Symbol 159 MovieClip Frame 1
if (/:room == "12") {
gotoAndStop (3);
} else if (/:room == "11") {
gotoAndStop (2);
} else {
stop();
}
Symbol 160 MovieClip Frame 1
stop();
Symbol 160 MovieClip Frame 2
Set("/log:log5", /log:log4);
Set("/log:log4", /log:log3);
Set("/log:log3", /log:log2);
Set("/log:log2", /log:log1);
Symbol 161 Button
on (release) {
tellTarget ("/update") {
gotoAndStop (1);
};
call("/actions:drop");
response = "";
help1 = "";
help2 = "";
password = "";
players = "";
lastplayers = "";
playerlist = "";
log = "";
gotoAndStop (6);
}
on (rollOver) {
help2 = "Disconnect";
}
on (rollOut) {
help2 = "";
}
Symbol 164 Button
on (release) {
if (_highquality == "1") {
_highquality = "0";
} else {
_highquality = "1";
}
}
on (rollOver) {
help1 = "Toggle Resolution";
}
on (rollOut) {
help1 = "";
}
Symbol 168 Button
on (release) {
if (character == "1") {
character = "3";
} else {
character = "1";
}
}