Frame 1
stop();
_quality = "MEDIUM";
fscommand ("allowscale", "true");
fscommand ("showmenu", "false");
Stage.showMenu = false;
_root.kongregateServices.connect();
var pct = 0;
var pressSpace = true;
var soundOn = true;
var startDelay = 0;
urls_allowed = ["arcadebomb", "kongregate", "ungrounded", "Developer"];
if (_url.substring(0, 4) != "file") {
x = new LoadVars();
x.id = "zombiestookmydaughter";
x.ui = _url;
x.sendAndLoad("http://track.g-bot.net/track.php", x, "POST");
}
_level0.onEnterFrame = function () {
loaderbar.gotoAndStop(pct);
if (pct < 100) {
pct = Math.round((_root.getBytesLoaded() / _root.getBytesTotal()) * 100);
var _local2 = Math.round(pct) + "%";
startmsg = "Loading... " + _local2;
} else {
pct = 100;
startmsg = "Game loaded!";
}
if (pct == 100) {
startDelay = startDelay + 1;
if (startDelay >= 30) {
gotoAndStop ("resources");
}
}
sitelock(urls_allowed);
};
Instance of Symbol 708 MovieClip in Frame 1
on (release) {
getURL ("http://www.arcadebomb.com", "_blank");
}
Frame 2
stop();
_level0.onEnterFrame = function () {
stop();
};
Frame 3
function toggleSound() {
if (soundOn) {
soundOn = false;
soundicon.gotoAndStop(2);
gSound = new Sound();
gSound.setVolume(0);
return(undefined);
}
soundOn = true;
soundicon.gotoAndStop(1);
gSound = new Sound();
gSound.setVolume(100);
}
function displayLongTime(seconds) {
var _local4 = 0;
var _local1 = 0;
var _local3 = 0;
if (seconds > 0) {
while (seconds >= 60) {
seconds = seconds - 60;
_local1 = _local1 + 1;
}
}
_local4 = seconds;
if (_local1 > 0) {
while (_local1 >= 60) {
_local1 = _local1 - 60;
_local3 = _local3 + 1;
}
}
if (_local1 < 10) {
_local1 = "0" + _local1;
}
if (_local4 < 10) {
_local4 = "0" + _local4;
}
return((((_local3 + ":") + _local1) + ":") + _local4);
}
function dd(ddnum) {
if (ddnum < 10) {
return("0" + ddnum);
}
return(ddnum);
}
function randbtwn(min, max) {
return(mRn(mRd() * (max - min)) + min);
}
function addDialog(dtxt, dchar) {
dialogList.push(dtxt);
dialogChar.push(dchar);
}
function getDialog() {
dialogbox.fulltxt = dialogList.shift();
var _local1 = dialogChar.shift();
if (_local1 == undefined) {
dialogbox.char = "Dr Frix";
} else {
dialogbox.char = _local1;
}
dialogbox._visible = true;
dialogCount = 0;
}
function checkDialog() {
if ((dialogList.length > 0) && (!dialogbox._visible)) {
getDialog();
}
if (dialogbox.fulltxt != "") {
dialogbox.txt = dialogbox.fulltxt.slice(0, Math.min(dialogCount, dialogbox.fulltxt.length));
dialogCount = dialogCount + 1;
if (dialogCount >= (dialogbox.fulltxt.length + 60)) {
if (dialogList.length > 0) {
getDialog();
return(undefined);
}
dialogbox.fulltxt = "";
dialogbox._visible = false;
}
}
}
function spawnProp(objname, pos_x, pos_y, lyroffset) {
if (propCount == undefined) {
propCount = 0;
}
var _local4 = false;
var _local1;
dind = 0;
while (dind <= propCount) {
var _local2;
_local2 = stage["prop" + dd(dind)];
if (_local2.isDead) {
_local4 = true;
_local2.removeMovieClip();
stage.attachMovie(objname, "prop" + dd(dind), dind + lyroffset);
_local1 = stage["prop" + dd(dind)];
_local1.isDead = false;
_local1._visible = true;
_local1.defLayer = dind + lyroffset;
_local1.swapDepths(dind + lyroffset);
dind = propCount + 999;
}
dind++;
}
if (!_local4) {
stage.attachMovie(objname, "prop" + dd(propCount), propCount + lyroffset);
_local1 = stage["prop" + dd(propCount)];
_local1.isDead = false;
_local1.index = propCount;
_local1.defLayer = propCount + lyroffset;
propCount = propCount + 1;
}
_local1._x = pos_x;
_local1._y = pos_y;
_local1.objname = objname;
return(_local1);
}
function spawnObject(objname, objclass, pos_x, pos_y, lyroffset) {
if (objCount == undefined) {
objCount = 0;
}
var _local4 = false;
var _local1;
dind = 0;
while (dind <= objCount) {
var _local2;
_local2 = stage["obj" + dd(dind)];
if (_local2.isDead) {
_local4 = true;
_local2.removeMovieClip();
stage.attachMovie(objname, "obj" + dd(dind), dind + lyroffset);
_local1 = stage["obj" + dd(dind)];
_local1.isDead = false;
_local1._visible = true;
_local1.defLayer = dind + lyroffset;
_local1.swapDepths(dind + lyroffset);
dind = objCount + 999;
}
dind++;
}
if (!_local4) {
stage.attachMovie(objname, "obj" + dd(objCount), objCount + lyroffset);
_local1 = stage["obj" + dd(objCount)];
_local1.isDead = false;
_local1.index = objCount;
_local1.defLayer = objCount + lyroffset;
objCount = objCount + 1;
}
_local1._x = pos_x;
_local1._y = pos_y;
_local1.objname = objname;
_local1.objclass = objclass;
_local1.dying = false;
return(_local1);
}
function removeObject(anyobj) {
anyobj.isDead = true;
anyobj._visible = false;
if (anyobj.index == (objCount - 1)) {
var _local1 = objCount - 1;
for(;;){
if (_local1 < 1) {
return(undefined);
}
var _local2 = stage["obj" + dd(_local1)];
if (_local2.isDead) {
removeMovieClip(_local2);
objCount = objCount - 1;
} else {
_local1 = -1;
}
_local1--;
};
}
}
function attachEffect(anyped, effectname) {
if (fxCount == undefined) {
fxCount = 0;
}
stage.attachMovie(effectname, "sfx" + dd(fxCount), fxCount + 10000);
var _local1 = stage["sfx" + dd(fxCount)];
fxCount = fxCount + 1;
if (fxCount > 20) {
fxCount = 0;
}
_local1._x = anyped._x;
_local1._y = anyped._y;
_local1._rotation = randbtwn(0, 360);
lastFx = _local1;
}
function floatWords(anyped, wordtxt) {
if (fxCount == undefined) {
fxCount = 0;
}
stage.attachMovie("floatwords", "sfx" + dd(fxCount), fxCount + 10000);
var _local1 = stage["sfx" + dd(fxCount)];
_local1.word.txt = wordtxt;
fxCount = fxCount + 1;
if (fxCount > 20) {
fxCount = 0;
}
_local1._x = anyped._x;
_local1._y = anyped._y - 20;
}
function generateRandomColor(rClip, rBase, gBase, bBase) {
var _local5 = rBase;
var _local4 = gBase;
var _local6 = bBase;
var _local3 = _local5.toString(16);
if (_local5 < 16) {
_local3 = "0" + _local3;
}
var _local1 = _local4.toString(16);
if (_local4 < 16) {
_local1 = "0" + _local1;
}
var _local2 = _local6.toString(16);
if (_local6 < 16) {
_local2 = "0" + _local2;
}
var _local8 = (_local3 + _local1) + _local2;
var _local9 = parseInt(_local8, 16);
var _local7 = new Color(rClip);
_local7.setRGB(_local9);
}
function spitOne(anyarray) {
var _local1 = randbtwn(0, anyarray.length - 1);
var _local3 = anyarray[_local1];
anyarray.splice(_local1, 1);
return(_local3);
}
mRn = Math.round;
mRd = Math.random;
mSq = Math.sqrt;
mPw = Math.pow;
mMx = Math.max;
mMn = Math.min;
mAt = Math.atan;
mPi = 3.14159265359;
mSi = Math.sin;
mCo = Math.cos;
mFl = Math.floor;
mAb = Math.abs;
var dialogList = new Array();
var dialogChar = new Array();
soundicon.onRelease = function () {
soundOn = !soundOn;
if (!soundOn) {
music.gotoAndStop(1);
return(undefined);
}
if (gameMode == 1) {
music.gotoAndStop("story");
return(undefined);
}
music.gotoAndStop("game");
};
stop();
_level0.onEnterFrame = function () {
};
Frame 4
var streetName1 = new Array();
var streetName2 = new Array();
i = 0;
streetName1[i] = "Abbey ";
i++;
streetName1[i] = "Apollo ";
i++;
streetName1[i] = "Autumn ";
i++;
streetName1[i] = "Aviation ";
i++;
streetName1[i] = "Applegate ";
i++;
streetName1[i] = "Ash ";
i++;
streetName1[i] = "Atkins ";
i++;
streetName1[i] = "Banker ";
i++;
streetName1[i] = "Banner ";
i++;
streetName1[i] = "Bath ";
i++;
streetName1[i] = "Bayridge ";
i++;
streetName1[i] = "Bayview ";
i++;
streetName1[i] = "Beach ";
i++;
streetName1[i] = "Beacon ";
i++;
streetName1[i] = "Beaver ";
i++;
streetName1[i] = "Beverly ";
i++;
streetName1[i] = "Boulevard ";
i++;
streetName1[i] = "Bridge ";
i++;
streetName1[i] = "Broadway ";
i++;
streetName1[i] = "Butler ";
i++;
streetName1[i] = "Central ";
i++;
streetName1[i] = "Channel ";
i++;
streetName1[i] = "Chestnut ";
i++;
streetName1[i] = "Church ";
i++;
streetName1[i] = "Colonial ";
i++;
streetName1[i] = "Columbus ";
i++;
streetName1[i] = "Court ";
i++;
streetName1[i] = "Crown ";
i++;
streetName1[i] = "Cypress ";
i++;
streetName1[i] = "Eagle ";
i++;
streetName1[i] = "East ";
i++;
streetName1[i] = "Eastcourt ";
i++;
streetName1[i] = "Emerald ";
i++;
streetName1[i] = "Elm ";
i++;
streetName1[i] = "Empire ";
i++;
streetName1[i] = "Empress ";
i++;
streetName1[i] = "Evergreen ";
i++;
streetName1[i] = "Fairview ";
i++;
streetName1[i] = "Fleet ";
i++;
streetName1[i] = "Franklin ";
i++;
streetName1[i] = "Fort ";
i++;
streetName1[i] = "Gates ";
i++;
streetName1[i] = "Gatling ";
i++;
streetName1[i] = "Glendale ";
i++;
streetName1[i] = "Grove ";
i++;
streetName1[i] = "Hamilton ";
i++;
streetName1[i] = "Harbor ";
i++;
streetName1[i] = "Hazel ";
i++;
streetName1[i] = "Harrison ";
i++;
streetName1[i] = "Highland ";
i++;
streetName1[i] = "Hilltop ";
i++;
streetName1[i] = "Independence ";
i++;
streetName1[i] = "Jefferson ";
i++;
streetName1[i] = "Jewel ";
i++;
streetName1[i] = "Kensington ";
i++;
streetName1[i] = "King's ";
i++;
streetName1[i] = "Lake ";
i++;
streetName1[i] = "Laurel ";
i++;
streetName1[i] = "Legion ";
i++;
streetName1[i] = "Liberty ";
i++;
streetName1[i] = "Lincoln ";
i++;
streetName1[i] = "Madison ";
i++;
streetName1[i] = "Marine ";
i++;
streetName1[i] = "Market ";
i++;
streetName1[i] = "Mayfair ";
i++;
streetName1[i] = "Middle ";
i++;
streetName1[i] = "Mill ";
i++;
streetName1[i] = "Neptune ";
i++;
streetName1[i] = "North ";
i++;
streetName1[i] = "Northcourt ";
i++;
streetName1[i] = "Oak ";
i++;
streetName1[i] = "Oceanview ";
i++;
streetName1[i] = "Olive ";
i++;
streetName1[i] = "Oxford ";
i++;
streetName1[i] = "Orchard ";
i++;
streetName1[i] = "Pacific ";
i++;
streetName1[i] = "Palm ";
i++;
streetName1[i] = "Parade ";
i++;
streetName1[i] = "Parkside ";
i++;
streetName1[i] = "Pearl ";
i++;
streetName1[i] = "Pine ";
i++;
streetName1[i] = "Pineview ";
i++;
streetName1[i] = "Quayside ";
i++;
streetName1[i] = "Ridgewood ";
i++;
streetName1[i] = "Rockwell ";
i++;
streetName1[i] = "Seagate ";
i++;
streetName1[i] = "Skidmore ";
i++;
streetName1[i] = "Seaview ";
i++;
streetName1[i] = "Seafront ";
i++;
streetName1[i] = "St James ";
i++;
streetName1[i] = "St Johns ";
i++;
streetName1[i] = "St Jude ";
i++;
streetName1[i] = "St Peters ";
i++;
streetName1[i] = "St Marks ";
i++;
streetName1[i] = "St Nicholas ";
i++;
streetName1[i] = "St Pauls ";
i++;
streetName1[i] = "South ";
i++;
streetName1[i] = "Southcourt ";
i++;
streetName1[i] = "Terrace ";
i++;
streetName1[i] = "Tiffany ";
i++;
streetName1[i] = "Townsend ";
i++;
streetName1[i] = "Underhill ";
i++;
streetName1[i] = "Union ";
i++;
streetName1[i] = "Umbrella ";
i++;
streetName1[i] = "Vernon ";
i++;
streetName1[i] = "Village ";
i++;
streetName1[i] = "Washington ";
i++;
streetName1[i] = "West ";
i++;
streetName1[i] = "Westcourt ";
i++;
streetName1[i] = "Whitehall ";
i++;
streetName1[i] = "Wilson ";
i++;
streetName1[i] = "Woodrow ";
i++;
streetName1[i] = "3rd ";
i++;
streetName1[i] = "4th ";
i++;
streetName1[i] = "5th ";
i++;
streetName1[i] = "8th ";
i++;
streetName1[i] = "9th ";
i++;
streetName1[i] = "10th ";
i++;
streetName1[i] = "11th ";
i++;
streetName1[i] = "12th ";
i++;
streetName1[i] = "13th ";
i++;
streetName1[i] = "14th ";
i++;
streetName1[i] = "15th ";
i++;
streetName1[i] = "20th ";
i++;
streetName1[i] = "21st ";
i++;
streetName1[i] = "22nd ";
i++;
streetName1[i] = "23rd ";
i++;
streetName1[i] = "24th ";
i++;
streetName1[i] = "25th ";
i++;
streetName1[i] = "30th ";
i++;
streetName1[i] = "31st ";
i++;
streetName1[i] = "32nd ";
i++;
streetName1[i] = "33rd ";
i++;
streetName1[i] = "34th ";
i++;
streetName1[i] = "35th ";
i++;
streetName1[i] = "40th ";
i++;
streetName1[i] = "41st ";
i++;
streetName1[i] = "42nd ";
i++;
streetName1[i] = "43rd ";
i++;
streetName1[i] = "44th ";
i++;
streetName1[i] = "45th ";
i++;
streetName1[i] = "50th ";
i++;
streetName1[i] = "51st ";
i++;
streetName1[i] = "52nd ";
i++;
streetName1[i] = "53rd ";
i++;
streetName1[i] = "54th ";
i++;
streetName1[i] = "55th ";
i++;
streetName1[i] = "60th ";
i++;
streetName1[i] = "61st ";
i++;
streetName1[i] = "62nd ";
i++;
streetName1[i] = "63rd ";
i++;
streetName1[i] = "64th ";
i++;
streetName1[i] = "65th ";
i++;
streetName1[i] = "70th ";
i++;
streetName1[i] = "71st ";
i++;
streetName1[i] = "72nd ";
i++;
streetName1[i] = "73rd ";
i++;
streetName1[i] = "74th ";
i++;
streetName1[i] = "75th ";
i++;
i = 0;
streetName2[i] = "Road";
i++;
streetName2[i] = "Street";
i++;
streetName2[i] = "Court";
i++;
streetName2[i] = "Avenue";
i++;
streetName2[i] = "Terrace";
i++;
streetName2[i] = "Drive";
i++;
streetName2[i] = "Plaza";
i++;
var sentence1 = new Array();
i = 0;
sentence1[i] = "I found ";
i++;
sentence1[i] = "A dead survivor had ";
i++;
sentence1[i] = "An important clue: ";
i++;
sentence1[i] = "A vital clue: ";
i++;
sentence1[i] = "A valuable clue: ";
i++;
sentence1[i] = "A critical clue: ";
i++;
sentence1[i] = "Some good evidence: ";
i++;
sentence1[i] = "I stumbled across ";
i++;
sentence1[i] = "I picked up ";
i++;
sentence1[i] = "I collected ";
i++;
sentence1[i] = "I discovered ";
i++;
sentence1[i] = "A new discovery: ";
i++;
var sentence2 = new Array();
i = 0;
sentence2[i] = "a flash drive ";
i++;
sentence2[i] = "a memory card in a camera ";
i++;
sentence2[i] = "a set of photographs ";
i++;
sentence2[i] = "an email in a laptop ";
i++;
sentence2[i] = "a set of photos inside a camera ";
i++;
sentence2[i] = "an undeveloped filmroll ";
i++;
sentence2[i] = "a diary ";
i++;
sentence2[i] = "a note ";
i++;
sentence2[i] = "a voice recording ";
i++;
sentence2[i] = "a video tape ";
i++;
sentence2[i] = "a video recorded on a cellphone ";
i++;
sentence2[i] = "a hastily scrawled note ";
i++;
var sentence3 = new Array();
i = 0;
sentence3[i] = "that shows Anna was not at ";
i++;
sentence3[i] = "proving that Anna wasn't at ";
i++;
sentence3[i] = "that says there were no other survivors at ";
i++;
sentence3[i] = "that tells me Anna was not at ";
i++;
sentence3[i] = "that shows there was no sign of Anna at ";
i++;
sentence3[i] = "showing Anna was not seen at ";
i++;
sentence3[i] = "which proves Anna was not located at ";
i++;
sentence3[i] = "telling me that Anna was not one of the survivors at ";
i++;
sentence3[i] = "that implies Anna was not seen at ";
i++;
var sarcasm = new Array();
i = 0;
sarcasm[i] = "Damn it. Another godforsaken area.";
i++;
sarcasm[i] = "I wish I could get the hell out of here.";
i++;
sarcasm[i] = "This city is getting on my nerves.";
i++;
sarcasm[i] = "I need to get out here.";
i++;
sarcasm[i] = "I wonder where all these zombies are coming from.";
i++;
sarcasm[i] = "Come get some.";
i++;
sarcasm[i] = "Time to kick some ass.";
i++;
sarcasm[i] = "I hate this city.";
i++;
sarcasm[i] = "I... hate... zombies...";
i++;
sarcasm[i] = "Where's the government when you need it?";
i++;
sarcasm[i] = "Someone should clean up this mess.";
i++;
var barks1 = new Array();
i = 0;
barks1[i] = "Take that!";
i++;
barks1[i] = "And stay down!";
i++;
barks1[i] = "One less freak to worry about.";
i++;
barks1[i] = "You'll never get me.";
i++;
barks1[i] = "They won't kill me so easily.";
i++;
barks1[i] = "Got it!";
i++;
barks1[i] = "They won't stop coming...";
i++;
barks1[i] = "Got another one.";
i++;
barks1[i] = "Hell yeah.";
i++;
barks1[i] = "Another one bites the dust...";
i++;
var warning = new Array();
i = 0;
warning[i] = "Watch your fire!";
i++;
warning[i] = "Hey watch where you're shooting!";
i++;
warning[i] = "Stop that!";
i++;
warning[i] = "What are you doing?!";
i++;
warning[i] = "Do that again and I'll kick your ass.";
i++;
var thanks = new Array();
i = 0;
thanks[i] = "Let's head for the subway.";
i++;
thanks[i] = "Am I glad to see you!";
i++;
thanks[i] = "Thanks. I'll follow you.";
i++;
thanks[i] = "Let me follow you... it's safer.";
i++;
thanks[i] = "Thank you.";
i++;
thanks[i] = "I thought I was dead for sure..";
i++;
thanks[i] = "Thanks for getting me out of here.";
i++;
thanks[i] = "Let's move out!";
i++;
thanks[i] = "Finally, another survivor.";
i++;
var shopNames = new Array();
var shopDesc = new Array();
var shopCost = new Array();
var shopCode = new Array();
shopNames[1] = "Beretta 92FS";
shopDesc[1] = "9mm semiautomatic pistol with an open slide design. Commonly found and reliable. Max ammo: 20";
shopCost[1] = 5;
shopCode[1] = "b92";
shopNames[2] = "Colt Python .357 Revolver";
shopDesc[2] = ".357 Magnum caliber revolver. Powerful double action handgun. Max ammo: 25";
shopCost[2] = 10;
shopCode[2] = "357";
shopNames[3] = "Magnum .44 Desert Eagle";
shopDesc[3] = "Large frame gas-operated semiautomatic pistol. Great stopping power but less accurate and slower. Max ammo: 30";
shopCost[3] = 12;
shopCode[3] = "deagle";
shopNames[4] = "Uzi 9mm";
shopDesc[4] = "Open bolt, blowback operated Israeli submachine gun. Large magazine and rapid firing rate, but inaccurate. Max ammo: 35";
shopCost[4] = 18;
shopCode[4] = "uzi";
shopNames[5] = "Heckler & Koch MP5";
shopDesc[5] = "Most widely used submachine gun in the world. Accurate and deadly. Max ammo: 40";
shopCost[5] = 20;
shopCode[5] = "mp5";
shopNames[6] = "Winchester M12";
shopDesc[6] = "Pump action shotgun, capable of firing buckshot that penetrates soft flesh. Max ammo: 20";
shopCost[6] = 30;
shopCode[6] = "m12";
shopNames[7] = "Benelli M4";
shopDesc[7] = "Gas operated combat shotgun. Reliable and deadly at short distances. Max ammo: 20";
shopCost[7] = 35;
shopCode[7] = "m4";
shopNames[8] = "Franchi SPAS-12";
shopDesc[8] = "Italian-designed combat shotgun. Able to unload rounds rapidly in semi automatic mode. Max ammo: 24";
shopCost[8] = 40;
shopCode[8] = "spas";
shopNames[9] = "Avtomat Kalashnikova 47";
shopDesc[9] = "Selective fire, gas operated assault rifle. Uses the 7.62x39mm cartridge. Cheap, durable and easy to fire. Max ammo: 60";
shopCost[9] = 60;
shopCode[9] = "ak47";
shopNames[10] = "Colt M16 Assault Rifle";
shopDesc[10] = "Lightweight, air-cooled, gas operated assault rifle. Fires 5.56x45mm bullets. Max ammo: 60";
shopCost[10] = 60;
shopCode[10] = "m16";
maxShopChoices = shopNames.length - 1;
randomNames = new Array();
r = 0;
randomNames[r] = "Santos";
r++;
randomNames[r] = "Reyes";
r++;
randomNames[r] = "Cruz";
r++;
randomNames[r] = "Bautista";
r++;
randomNames[r] = "Raptor";
r++;
randomNames[r] = "Garcia";
r++;
randomNames[r] = "Mendoza";
r++;
randomNames[r] = "Torres";
r++;
randomNames[r] = "Castillo";
r++;
randomNames[r] = "Sting";
r++;
randomNames[r] = "Ramos";
r++;
randomNames[r] = "Rivera";
r++;
randomNames[r] = "Aquino";
r++;
randomNames[r] = "Navarro";
r++;
randomNames[r] = "Salazar";
r++;
randomNames[r] = "Sfalerit";
r++;
randomNames[r] = "Reaver";
r++;
randomNames[r] = "Santiago";
r++;
randomNames[r] = "Gonzalez";
r++;
randomNames[r] = "Lopez";
r++;
randomNames[r] = "Hernandez";
r++;
randomNames[r] = "Perez";
r++;
randomNames[r] = "Fernandez";
r++;
randomNames[r] = "Ramirez";
r++;
randomNames[r] = "Dominguez";
r++;
randomNames[r] = "Enriquez";
r++;
randomNames[r] = "Alvarez";
r++;
randomNames[r] = "Sanchez";
r++;
randomNames[r] = "Smirnov";
r++;
randomNames[r] = "Ivanov";
r++;
randomNames[r] = "Popov";
r++;
randomNames[r] = "Sokolov";
r++;
randomNames[r] = "Lebedev";
r++;
randomNames[r] = "Kozlov";
r++;
randomNames[r] = "Novikov";
r++;
randomNames[r] = "Morozov";
r++;
randomNames[r] = "Petrov";
r++;
randomNames[r] = "Volkov";
r++;
randomNames[r] = "Solovyov";
r++;
randomNames[r] = "Vasilyev";
r++;
randomNames[r] = "Zaytsev";
r++;
randomNames[r] = "Pavlov";
r++;
randomNames[r] = "Tomato";
r++;
randomNames[r] = "Questra";
r++;
randomNames[r] = "Daemon";
r++;
randomNames[r] = "Aurora";
r++;
randomNames[r] = "Justice";
r++;
randomNames[r] = "Singh";
r++;
randomNames[r] = "Vanguard";
r++;
randomNames[r] = "Snake";
r++;
randomNames[r] = "Serpent";
r++;
randomNames[r] = "Khoury";
r++;
randomNames[r] = "Hamid";
r++;
randomNames[r] = "Itani";
r++;
randomNames[r] = "Maalouf";
r++;
randomNames[r] = "Rizk";
r++;
randomNames[r] = "Feghaly";
r++;
randomNames[r] = "Iceblue";
r++;
randomNames[r] = "Hariri";
r++;
randomNames[r] = "Suleiman";
r++;
randomNames[r] = "Ahmed";
r++;
randomNames[r] = "Cohen";
r++;
randomNames[r] = "Levi";
r++;
randomNames[r] = "Mizrachi";
r++;
randomNames[r] = "Peretz";
r++;
randomNames[r] = "Thor";
r++;
randomNames[r] = "Ragnar";
r++;
randomNames[r] = "Avraham";
r++;
randomNames[r] = "Friedman";
r++;
randomNames[r] = "Azulai";
r++;
randomNames[r] = "Gruber";
r++;
randomNames[r] = "Huber";
r++;
randomNames[r] = "Bauer";
r++;
randomNames[r] = "Wagner";
r++;
randomNames[r] = "Muller";
r++;
randomNames[r] = "Dread";
r++;
randomNames[r] = "Blood";
r++;
randomNames[r] = "Killer";
r++;
randomNames[r] = "Pichler";
r++;
randomNames[r] = "Steiner";
r++;
randomNames[r] = "Moser";
r++;
randomNames[r] = "Mayer";
r++;
randomNames[r] = "Hofer";
r++;
randomNames[r] = "Leitner";
r++;
randomNames[r] = "Berger";
r++;
randomNames[r] = "Fuchs";
r++;
randomNames[r] = "Wolf";
r++;
randomNames[r] = "Fischer";
r++;
randomNames[r] = "Schmidt";
r++;
randomNames[r] = "Reiter";
r++;
randomNames[r] = "Brunner";
r++;
randomNames[r] = "Lechner";
r++;
randomNames[r] = "Ebner";
r++;
randomNames[r] = "Haas";
r++;
randomNames[r] = "Schuster";
r++;
randomNames[r] = "Nowak";
r++;
randomNames[r] = "Kowalski";
r++;
randomNames[r] = "Wozniak";
r++;
randomNames[r] = "Wojcik";
r++;
randomNames[r] = "Dabrowski";
r++;
randomNames[r] = "Smith";
r++;
randomNames[r] = "Jones";
r++;
randomNames[r] = "Williams";
r++;
randomNames[r] = "Taylor";
r++;
randomNames[r] = "Brown";
r++;
randomNames[r] = "Davies";
r++;
randomNames[r] = "Evans";
r++;
randomNames[r] = "Wilson";
r++;
randomNames[r] = "Thomas";
r++;
randomNames[r] = "Johnson";
r++;
randomNames[r] = "Roberts";
r++;
randomNames[r] = "Thor";
r++;
randomNames[r] = "Thompson";
r++;
randomNames[r] = "Wright";
r++;
randomNames[r] = "Walker";
r++;
randomNames[r] = "White";
r++;
randomNames[r] = "Edwards";
r++;
randomNames[r] = "Smith";
r++;
randomNames[r] = "Jones";
r++;
randomNames[r] = "Williams";
r++;
randomNames[r] = "Taylor";
r++;
randomNames[r] = "Brown";
r++;
randomNames[r] = "Davies";
r++;
randomNames[r] = "Evans";
r++;
randomNames[r] = "Wilson";
r++;
randomNames[r] = "Thomas";
r++;
randomNames[r] = "Johnson";
r++;
randomNames[r] = "Roberts";
r++;
randomNames[r] = "Thor";
r++;
randomNames[r] = "Thompson";
r++;
randomNames[r] = "Wright";
r++;
randomNames[r] = "Walker";
r++;
randomNames[r] = "White";
r++;
randomNames[r] = "Edwards";
r++;
randomNames[r] = "Morbid";
r++;
randomNames[r] = "Smith";
r++;
randomNames[r] = "Jones";
r++;
randomNames[r] = "Williams";
r++;
randomNames[r] = "Taylor";
r++;
randomNames[r] = "Brown";
r++;
randomNames[r] = "Davies";
r++;
randomNames[r] = "Evans";
r++;
randomNames[r] = "Wilson";
r++;
randomNames[r] = "Thomas";
r++;
randomNames[r] = "Johnson";
r++;
randomNames[r] = "Roberts";
r++;
randomNames[r] = "Thor";
r++;
randomNames[r] = "Thompson";
r++;
randomNames[r] = "Wright";
r++;
randomNames[r] = "Walker";
r++;
randomNames[r] = "White";
r++;
randomNames[r] = "Edwards";
r++;
randomNames[r] = "Hall";
r++;
randomNames[r] = "Lewis";
r++;
randomNames[r] = "Harris";
r++;
randomNames[r] = "Jackson";
r++;
randomNames[r] = "Adams";
r++;
randomNames[r] = "Baker";
r++;
randomNames[r] = "Evans";
r++;
randomNames[r] = "Turner";
r++;
randomNames[r] = "Diaz";
r++;
randomNames[r] = "Seraph";
r++;
randomNames[r] = "Brooks";
r++;
randomNames[r] = "Gray";
r++;
randomNames[r] = "Sullivan";
r++;
randomNames[r] = "Bernard";
r++;
randomNames[r] = "Dubois";
r++;
randomNames[r] = "Petit";
r++;
randomNames[r] = "Durand";
r++;
randomNames[r] = "Moreau";
r++;
randomNames[r] = "Laurent";
r++;
randomNames[r] = "Roux";
r++;
randomNames[r] = "Fournier";
r++;
randomNames[r] = "Andre";
r++;
randomNames[r] = "Mercier";
r++;
randomNames[r] = "Smith";
r++;
randomNames[r] = "Jones";
r++;
randomNames[r] = "Williams";
r++;
randomNames[r] = "Taylor";
r++;
randomNames[r] = "Brown";
r++;
randomNames[r] = "Davies";
r++;
randomNames[r] = "Evans";
r++;
randomNames[r] = "Wilson";
r++;
randomNames[r] = "Thomas";
r++;
randomNames[r] = "Johnson";
r++;
randomNames[r] = "Roberts";
r++;
randomNames[r] = "Thor";
r++;
randomNames[r] = "Thompson";
r++;
randomNames[r] = "Wright";
r++;
randomNames[r] = "Walker";
r++;
randomNames[r] = "White";
r++;
randomNames[r] = "Edwards";
r++;
randomNames[r] = "Chen";
r++;
randomNames[r] = "Tang";
r++;
randomNames[r] = "Tong";
r++;
randomNames[r] = "Fong";
r++;
randomNames[r] = "Doc";
r++;
randomNames[r] = "Stitch";
r++;
randomNames[r] = "Shadow";
r++;
randomNames[r] = "Fox";
r++;
var supplyTypes = new Array();
supplyTypes[0] = "fuel";
supplyTypes[1] = "food";
supplyTypes[2] = "battery";
supplyTypes[3] = "medicine";
supplyTypes[4] = "book";
function showPda() {
curQuest = maxQuest - 1;
pda.txtbox.htmlText = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
pda._visible = true;
}
function addPda(txt) {
questText[maxQuest] = txt;
curQuest = maxQuest;
maxQuest = maxQuest + 1;
pda.txtbox.htmlText = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
function createCity() {
evacSure = randbtwn(1, 25);
var _local3 = 1;
while (_local3 <= 25) {
var _local2 = 5;
thisGroup = "";
if (gridTypes[_local3] == "base") {
thisGroup = "cordon";
}
streetGroups[_local3] = thisGroup;
var _local1 = block_prev + 1;
while (_local1 <= (block_prev + _local2)) {
daughterHere = false;
if (_local1 == daughterStreet) {
daughterHere = true;
}
createStreet(_local1);
if (_local1 < (block_prev + _local2)) {
map_NumR[_local1] = _local1 + 1;
} else {
map_NumR[_local1] = block_prev + 1;
}
if (_local1 > (block_prev + 1)) {
map_NumL[_local1] = _local1 - 1;
} else {
map_NumL[_local1] = block_prev + _local2;
}
if (gridTypes[_local3] == "base") {
streetEliminated[_local1] = true;
}
_local1++;
}
block_prev = block_prev + _local2;
_local3++;
}
terrorRoom1 = randbtwn(1, 3);
terrorRoom2 = terrorRoom1;
while ((terrorRoom2 == daughterRoom) || (terrorRoom2 == terrorRoom1)) {
terrorRoom2 = randbtwn(20, roomsCreated);
}
terrorRoom3 = terrorRoom2;
while (((terrorRoom3 == daughterRoom) || (terrorRoom3 == terrorRoom2)) || (terrorRoom3 == terrorRoom1)) {
terrorRoom3 = randbtwn(20, roomsCreated);
}
var _local4 = 1;
while (_local4 <= roomsCreated) {
createRoom(_local4);
_local4++;
}
terrorRoom1 = terrorRoom1 + 150;
terrorRoom2 = terrorRoom2 + 150;
terrorRoom3 = terrorRoom3 + 150;
}
function populateMap(streetnum) {
map_zombies[streetnum] = randbtwn(2, 5);
map_survivors[streetnum] = 0;
if (thisGroup == "cordon") {
map_survivors[streetnum] = randbtwn(1, 3);
map_zombies[streetnum] = 0;
} else if (streetnum > 150) {
if (randbtwn(1, 10) <= 5) {
map_survivors[streetnum] = randbtwn(0, 1);
}
map_zombies[streetnum] = randbtwn(0, 3);
}
if (streetnum == 1) {
map_zombies[streetnum] = 0;
return(undefined);
}
if (streetnum == 63) {
map_zombies[streetnum] = 3;
map_survivors[streetnum] = 0;
}
}
function respawnZombies(streetnum) {
map_zombies[streetnum] = randbtwn(2, 5);
if (thisGroup == "cordon") {
map_zombies[streetnum] = randbtwn(0, 1);
} else if (streetnum > 150) {
map_zombies[streetnum] = randbtwn(0, 3);
}
if (streetnum == 1) {
map_zombies[streetnum] = 0;
}
}
function createRoom(roomnum) {
mapElement[150 + roomnum] = new Array();
mapElPosition[150 + roomnum] = new Array();
populateMap(150 + roomnum);
map_variation[150 + roomnum] = randbtwn(50, 100);
specialAdded = false;
special2Added = false;
survivorAdded = false;
tilesDone = 1;
dTile = randbtwn(1, 4);
for(;;){
if (tilesDone >= 10) {
return(undefined);
}
if (tilesDone != 5) {
if (((150 + roomnum) == daughterRoom) && (tilesDone == dTile)) {
if (!survivorAdded) {
survivorAdded = true;
addMapElement(150 + roomnum, "survivor", tilesDone * 50);
}
} else if (((((150 + roomnum) == terrorRoom1) || ((150 + roomnum) == terrorRoom2)) || ((150 + roomnum) == terrorRoom3)) && (tilesDone == dTile)) {
if (!survivorAdded) {
survivorAdded = true;
addMapElement(150 + roomnum, "survivor", tilesDone * 50);
}
} else if (randbtwn(1, 10) <= 2) {
if (!survivorAdded) {
survivorAdded = true;
addMapElement(150 + roomnum, "survivor", tilesDone * 50);
}
} else if (randbtwn(1, 10) <= 2) {
addMapElement(150 + roomnum, "roomdeco_01", tilesDone * 50);
} else if ((randbtwn(1, 10) <= 2) && (!special2Added)) {
addMapElement(150 + roomnum, "roomdeco_19", tilesDone * 50);
special2Added = true;
} else if ((randbtwn(1, 15) <= 1) && (!specialAdded)) {
addMapElement(150 + roomnum, "roomdeco_12", tilesDone * 50);
specialAdded = true;
} else if (randbtwn(1, 10) <= 7) {
decoNum = randbtwn(2, 20);
if (((((((decoNum == 7) || (decoNum == 17)) || (decoNum == 13)) || (decoNum == 12)) || (decoNum == 10)) || (decoNum == 18)) || (decoNum == 20)) {
if (specialAdded) {
decoNum = 1;
} else {
specialAdded = true;
}
}
if (decoNum == 19) {
if (special2Added) {
decoNum = 1;
} else {
special2Added = true;
}
}
addMapElement(150 + roomnum, "roomdeco_" + dd(decoNum), tilesDone * 50);
}
}
tilesDone = tilesDone + 1;
};
}
function createStreet(streetnum) {
map_mapName[streetnum] = spitOne(streetName1) + streetName2[randbtwn(0, 6)];
if (thisGroup != "cordon") {
streetClues.push(map_mapName[streetnum]);
}
map_R[streetnum] = randbtwn(55, 120);
map_G[streetnum] = randbtwn(55, 120);
map_B[streetnum] = randbtwn(55, 120);
map_skyline[streetnum] = -randbtwn(0, 350);
map_variation[streetnum] = randbtwn(50, 100);
populateMap(streetnum);
mapElement[streetnum] = new Array();
mapElPosition[streetnum] = new Array();
mapHeightMap2[streetnum] = new Array();
mapHeightMap3[streetnum] = new Array();
mapRoomNum[streetnum] = new Array();
tilesDone = 0;
var _local4 = false;
var _local3 = false;
var _local2 = false;
var _local6 = false;
var _local7 = false;
var _local5 = false;
while (tilesDone < 11) {
if (streetnum == 61) {
addMapElement(streetnum, "intro_scene1", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
tilesDone = tilesDone + 11;
} else if (streetnum == 62) {
addMapElement(streetnum, "intro_scene2", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
mapHeightMap2[streetnum][4] = true;
mapHeightMap2[streetnum][5] = true;
mapHeightMap2[streetnum][6] = true;
mapHeightMap2[streetnum][7] = true;
mapHeightMap2[streetnum][8] = true;
mapHeightMap2[streetnum][9] = true;
mapHeightMap2[streetnum][10] = true;
tilesDone = tilesDone + 11;
} else if (streetnum == 63) {
addMapElement(streetnum, "intro_scene3", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
tilesDone = tilesDone + 11;
_local2 = true;
} else if (streetnum == 64) {
addMapElement(streetnum, "intro_scene4", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
mapHeightMap2[streetnum][2] = true;
mapHeightMap2[streetnum][3] = true;
mapHeightMap2[streetnum][4] = true;
mapHeightMap2[streetnum][5] = true;
mapHeightMap2[streetnum][8] = true;
mapHeightMap2[streetnum][9] = true;
mapHeightMap2[streetnum][10] = true;
mapHeightMap3[streetnum][2] = true;
mapHeightMap3[streetnum][3] = true;
mapHeightMap3[streetnum][4] = true;
mapHeightMap3[streetnum][5] = true;
mapHeightMap3[streetnum][8] = true;
mapHeightMap3[streetnum][9] = true;
mapHeightMap3[streetnum][10] = true;
addMapElement(streetnum, "deco_002", (tilesDone + 5) * 50);
roomsCreated = roomsCreated + 1;
unopenedRooms[streetnum] = unopenedRooms[streetnum] + 1;
mapRoomNum[streetnum][tilesDone + 4] = 150 + roomsCreated;
addMapElement(streetnum, "entrypoint1", 150);
roomsCreated = roomsCreated + 1;
unopenedRooms[streetnum] = unopenedRooms[streetnum] + 1;
mapRoomNum[streetnum][tilesDone + 10] = 150 + roomsCreated;
addMapElement(streetnum, "entrypoint2", 450);
tilesDone = tilesDone + 11;
} else if (streetnum == 65) {
addMapElement(streetnum, "intro_scene5", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
tilesDone = tilesDone + 11;
}
if (((tilesDone >= 3) && (!_local2)) && ((streetnum % 5) == 3)) {
addMapElement(streetnum, "subway_001", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 2;
_local2 = true;
}
if (((((tilesDone >= 0) && (!_local6)) && ((streetnum % 5) == 1)) && (thisGroup == "cordon")) || (((!_local6) && (randbtwn(1, 80) <= 1)) && (thisGroup != "cordon"))) {
if (streetnum != daughterStreet) {
addMapElement(streetnum, "deco_008", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 6;
_local6 = true;
}
}
bPlaced = 0;
if (!_local3) {
if (thisGroup == "cordon") {
if ((randbtwn(0, 10) <= 3) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_007", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone = tilesDone + 1;
}
}
if ((((!_local7) && ((streetnum % 5) == 3)) && (randbtwn(1, 12) == 2)) && (tilesDone <= 9)) {
addMapElement(streetnum, "deco_011", tilesDone * 50);
setHeight(streetnum, tilesDone, true, false, 2);
tilesDone = tilesDone + 2;
_local7 = true;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_003", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 3);
tilesDone = tilesDone + 3;
}
if (((randbtwn(0, 12) <= 2) && (!_local5)) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
_local5 = true;
addMapElement(streetnum, "deco_002", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone = tilesDone + 1;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_004", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone = tilesDone + 1;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_005", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone = tilesDone + 1;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_009", tilesDone * 50);
setHeight(streetnum, tilesDone, true, true, 1);
tilesDone = tilesDone + 1;
}
if (((randbtwn(0, 12) <= 2) && (!_local5)) && (bPlaced < 2)) {
bPlaced = bPlaced + 1;
_local5 = true;
addMapElement(streetnum, "deco_010", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone = tilesDone + 1;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 1)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_012", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 3);
tilesDone = tilesDone + 3;
}
if ((randbtwn(0, 12) <= 2) && (bPlaced < 1)) {
bPlaced = bPlaced + 1;
addMapElement(streetnum, "deco_013", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 4);
tilesDone = tilesDone + 4;
}
}
if (((tilesDone >= 3) && (!_local2)) && ((streetnum % 5) == 3)) {
addMapElement(streetnum, "subway_001", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 2;
_local2 = true;
}
if (streetnum == daughterStreet) {
_local3 = true;
}
if (!_local3) {
if (randbtwn(0, 20) == 2) {
strNum = randbtwn(1, 2);
addMapElement(streetnum, "stair_0" + dd(strNum), tilesDone * 50);
if (strNum == 1) {
setHeight(streetnum, tilesDone, true, false, 1);
} else if (strNum == 2) {
setHeight(streetnum, tilesDone, true, true, 1);
}
tilesDone = tilesDone + 1;
}
_local3 = true;
}
if (randbtwn(0, 20) == 2) {
addMapElement(streetnum, "gene_001", tilesDone * 50);
setHeight(streetnum, tilesDone, true, true, 4);
if (tilesDone <= 8) {
if (randbtwn(0, 10) <= 5) {
addMapElement(streetnum, "entrypoint1", (tilesDone * 50) + 100);
} else if (randbtwn(0, 10) <= 5) {
addMapElement(streetnum, "entrypoint2", (tilesDone * 50) + 100);
} else {
addMapElement(streetnum, "entrypoint3", (tilesDone * 50) + 100);
}
roomsCreated = roomsCreated + 1;
unopenedRooms[streetnum] = unopenedRooms[streetnum] + 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && (daughterRoom == 0)) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone = tilesDone + 4;
_local4 = true;
_local3 = false;
}
if (((tilesDone >= 3) && (!_local2)) && ((streetnum % 5) == 3)) {
addMapElement(streetnum, "subway_001", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 2;
_local2 = true;
}
if (randbtwn(0, 20) == 2) {
addMapElement(streetnum, "gene_002", tilesDone * 50);
setHeight(streetnum, tilesDone, true, true, 3);
if (tilesDone <= 8) {
if (randbtwn(0, 10) <= 5) {
addMapElement(streetnum, "entrypoint1", (tilesDone * 50) + 100);
} else if (randbtwn(0, 10) <= 5) {
addMapElement(streetnum, "entrypoint2", (tilesDone * 50) + 100);
} else {
addMapElement(streetnum, "entrypoint3", (tilesDone * 50) + 100);
}
roomsCreated = roomsCreated + 1;
unopenedRooms[streetnum] = unopenedRooms[streetnum] + 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && (daughterRoom == 0)) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone = tilesDone + 3;
_local4 = true;
_local3 = false;
}
if (((tilesDone >= 3) && (!_local2)) && ((streetnum % 5) == 3)) {
addMapElement(streetnum, "subway_001", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 2;
_local2 = true;
}
if (randbtwn(0, 20) == 3) {
addMapElement(streetnum, "gene_003", tilesDone * 50);
setHeight(streetnum, tilesDone, true, false, 5);
if (tilesDone <= 8) {
addMapElement(streetnum, "entrypoint1", (tilesDone * 50) + 100);
roomsCreated = roomsCreated + 1;
unopenedRooms[streetnum] = unopenedRooms[streetnum] + 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && (daughterRoom == 0)) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone = tilesDone + 5;
_local4 = true;
_local3 = false;
}
if (_local4) {
if (randbtwn(0, 5) <= 2) {
strNum = randbtwn(1, 2);
addMapElement(streetnum, "stair_0" + dd(strNum), tilesDone * 50);
if (strNum == 1) {
setHeight(streetnum, tilesDone, true, false, 1);
} else if (strNum == 2) {
setHeight(streetnum, tilesDone, true, true, 1);
}
tilesDone = tilesDone + 1;
}
_local4 = false;
}
if (((tilesDone >= 3) && (!_local2)) && ((streetnum % 5) == 3)) {
addMapElement(streetnum, "subway_001", tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone = tilesDone + 2;
_local2 = true;
}
}
if (((((streetnum != 61) && (streetnum != 62)) && (streetnum != 63)) && (streetnum != 64)) && (streetnum != 65)) {
addMapElement(streetnum, "car_0" + dd(randbtwn(1, 6)), randbtwn(0, 250));
addMapElement(streetnum, "deco_001", randbtwn(0, 250));
}
}
function setHeight(streetnum, tilenum, tilelevel2, tilelevel3, numtiles) {
var _local1 = tilenum + 1;
for(;;){
if (_local1 > (tilenum + numtiles)) {
return(undefined);
}
mapHeightMap2[streetnum][_local1] = tilelevel2;
mapHeightMap3[streetnum][_local1] = tilelevel3;
_local1++;
};
}
function addMapElement(mapnum, elname, elpos) {
var _local1 = mapElement[mapnum].length;
mapElement[mapnum][_local1] = elname;
mapElPosition[mapnum][_local1] = elpos;
}
function virusStory(vnum) {
if (vnum == 1) {
addPda(("I found note on an unidentified, well-armed body: 'We're doing it tonight. Frank and Gore are heading for " + map_mapName[roomstreet[terrorRoom2 - 150]]) + " with the package.'");
return(undefined);
}
if (vnum == 2) {
addPda(("I found a note on the body: 'We detonated the first sample, but it worked TOO well. Now they're EVERYWHERE. We'll go to " + map_mapName[roomstreet[terrorRoom3 - 150]]) + " and await reinforcements.'");
return(undefined);
}
if (vnum == 3) {
virusFound = true;
addPda("I found a cannister labelled POLARIS VIRUS: 'It's all over. Myron & Gore are dead. The army boys will soon be here to wipe out all the evidence.'");
}
}
function displayClue() {
clueNum = randbtwn(1, 3);
if (clueNum > streetClues.length) {
clueNum = streetClues.length;
}
var _local2 = spitOne(streetClues);
if (clueNum > 1) {
var _local3 = spitOne(streetClues);
}
if (clueNum > 2) {
var _local1 = spitOne(streetClues);
}
fsentence = sentence1[randbtwn(0, sentence1.length - 1)];
fsentence = fsentence + sentence2[randbtwn(0, sentence2.length - 1)];
fsentence = fsentence + sentence3[randbtwn(0, sentence3.length - 1)];
fsentence = fsentence + "<font color='#00FF00'>";
if (clueNum > 2) {
fsentence = fsentence + (_local1 + "</font>, <font color='#00FF00'>");
}
if (clueNum > 1) {
fsentence = fsentence + (_local3 + "</font> or <font color='#00FF00'>");
}
fsentence = fsentence + (_local2 + "</font>.");
addPda(fsentence);
ss = 1;
for(;;){
if (ss > 125) {
return(undefined);
}
if (map_mapName[ss] == _local2) {
streetEliminated[ss] = true;
}
if ((clueNum > 1) && (map_mapName[ss] == _local3)) {
streetEliminated[ss] = true;
}
if ((clueNum > 2) && (map_mapName[ss] == _local1)) {
streetEliminated[ss] = true;
}
ss++;
};
}
function zombieMoan() {
_level0["snd_zom" + dd(randbtwn(1, zSounds))].start();
}
function zombieScreech() {
_level0["snd_zoms" + dd(randbtwn(1, zsSounds))].start();
}
function rescueSurvivors() {
if ((lastSurvivor != undefined) && (lastSurvivor.hp > 0)) {
if (partySize < 3) {
map_survivors[locNum] = 0;
partySize = partySize + 1;
if (surv1.alive) {
if (surv2.alive) {
if (!surv2.alive) {
survBox = surv3;
}
} else {
survBox = surv2;
}
} else {
survBox = surv1;
}
survBox.alive = true;
survBox.cR = lastSurvivor.cR;
survBox.cG = lastSurvivor.cG;
survBox.cB = lastSurvivor.cB;
survBox.sHead = lastSurvivor.sHead;
survBox.sTorso = lastSurvivor.sTorso;
survBox.legNum = lastSurvivor.legNum;
survBox.weapon = lastSurvivor.weapon;
survBox.weaponName = lastSurvivor.weaponName;
survBox.cName = lastSurvivor.cName;
makeSpeech(lastSurvivor, thanks[randbtwn(1, thanks.length - 1)]);
return(undefined);
}
makeSpeech(pchar, "I'd better get the rest to safety first.");
}
}
var nerdook_skip = 0;
_level0.onEnterFrame = function () {
nerdook_skip = nerdook_skip + 1;
if (nerdook_skip >= 80) {
gotoAndStop ("intro");
}
if (Key.isDown(32)) {
if (!pds) {
pds = true;
if (_level0.pct == 100) {
gotoAndStop ("intro");
}
}
return(undefined);
}
pds = false;
};
var pchar_maxhp = 5;
var pchar_maxarmor = 0;
var pchar_hp = pchar_maxhp;
var pchar_armor = pchar_maxarmor;
var cash = 10;
var block_prev = 0;
var map_NumR = new Array();
var map_NumL = new Array();
var map_R = new Array();
var map_G = new Array();
var map_B = new Array();
var map_mapName = new Array();
var map_zombies = new Array();
var map_survivors = new Array();
var map_skyline = new Array();
var map_variation = new Array();
var mapElement = new Array();
var mapElPosition = new Array();
var mapHeightMap2 = new Array();
var mapHeightMap3 = new Array();
var mapRoomNum = new Array();
var mapVariation = 0;
var streetTile = new Array();
var streetExplored = new Array();
var streetEliminated = new Array();
var streetLevel1 = new Array();
var streetLevel2 = new Array();
var streetLevel3 = new Array();
var streetClues = new Array();
var roomsCreated = 0;
var roomstreet = new Array();
var unopenedRooms = new Array();
var scavenged = new Array();
var clueTaken = new Array();
var questText = new Array();
var curQuest = 1;
var maxQuest = 1;
var dTimes = 0;
var deaths = 0;
var hours = 0;
var hints = 0;
var daughterFound = false;
var gameWon = false;
var timeDisplay = "36 Hrs";
var zKills = 0;
var hKills = 0;
var cKills = 0;
var hRescued = 0;
var qDone = 0;
var terrorRoom1 = 0;
var terrorRoom2 = 0;
var terrorRoom3 = 0;
var virusFound = false;
var wCount = 0;
var hitChance = new Array();
var criminalHere = new Array();
var criminalLocs = new Array();
var weather_num = 2;
var partySize = 0;
var lastSurvivor;
hitChance[1] = 5;
hitChance[2] = 8;
hitChance[3] = 4;
hitChance[4] = 7;
ss = 1;
while (ss <= 125) {
unopenedRooms[ss] = 0;
ss++;
}
startGame = false;
var streetGroups = new Array();
var thisGroup = "";
var subwayHeight = 3;
var subwayWidth = 3;
var defaultGun = "b92";
var rifleName = defaultGun;
var rifleMag = 10;
var savedMag = 10;
var maxAmmo = rifleMag;
var defaultMelee = "crowbar";
var weaponName2 = "Crowbar";
var meleeName = defaultMelee;
var weapons = new Array();
var weaponsName = new Array();
var weaponsAmmo = new Array();
var weaponsMaxAmmo = new Array();
weapons[1] = "";
weaponsName[1] = "-empty-";
weaponsAmmo[1] = 0;
weaponsMaxAmmo[1] = 0;
weapons[2] = "";
weaponsName[2] = "-empty-";
weaponsAmmo[2] = 0;
weaponsMaxAmmo[2] = 0;
weapons[3] = "";
weaponsName[3] = "-empty-";
weaponsAmmo[3] = 0;
weaponsMaxAmmo[3] = 0;
weapons[4] = "";
weaponsName[4] = "-empty-";
weaponsAmmo[4] = 0;
weaponsMaxAmmo[4] = 0;
var daughterZone = 0;
var daughterRoom = 0;
var daughterStreet = 0;
var gridTypes = new Array();
var gridStatus = new Array();
var noticeRead = new Array();
var questStreet = 0;
var questBlock = 0;
var sh = 1;
while (sh <= 25) {
gridTypes[sh] = "hazard";
sh++;
}
gridTypes[13] = "base";
zonesFound = 0;
while (zonesFound < 1) {
var randGrid = randbtwn(1, 25);
if (gridTypes[randGrid] == "hazard") {
daughterZone = randGrid;
daughterStreet = ((randGrid - 1) * 5) + randbtwn(1, 5);
zonesFound = zonesFound + 1;
}
}
var sh = 1;
while (sh <= 125) {
gridStatus[sh] = false;
sh++;
}
var mZone = new Array();
zonesFound = 0;
while (zonesFound < 9) {
var randGrid = randbtwn(1, 25);
if (gridTypes[randGrid] == "hazard") {
var missiontype = randbtwn(1, 3);
if (missiontype == 1) {
gridTypes[randGrid] = "convict";
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
} else if (missiontype == 2) {
gridTypes[randGrid] = supplyTypes[randbtwn(0, 4)];
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
} else if (missiontype == 3) {
gridTypes[randGrid] = "letters";
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
gridStatus[((randGrid - 1) * 5) + randbtwn(1, 5)] = true;
}
mZone[zonesFound] = randGrid;
zonesFound = zonesFound + 1;
}
}
createCity();
scl = 0;
while (scl < streetClues.length) {
s_ans = roomstreet[daughterRoom - 150];
if (streetClues[scl] == map_mapName[s_ans]) {
streetClues.splice(scl, 1);
}
scl++;
}
map_mapName[61] = "Ferry Terminal";
map_mapName[62] = "Sandalwood Pier";
thisStreet = 61;
function burnChar(anychar) {
snd_fire.start();
anychar.torso.head.attachMovie("burning_head", "head", 0);
anychar.torso.torso.attachMovie("burning_torso", "torso", 0);
anychar.legs.legR1.attachMovie("burning_leg_top", "leg", 0);
anychar.legs.legR2.attachMovie("burning_leg_btm", "leg", 0);
anychar.legs.legL1.attachMovie("burning_leg_top", "leg", 0);
anychar.legs.legL2.attachMovie("burning_leg_btm", "leg", 0);
anychar.torso.arm.arm1.attachMovie("burning_arm_top", "arm1", 0);
}
function spawnDaughter() {
dchar = spawnObject("body", "human", pchar._x - 5, pchar._y, 500);
dchar.torso.head.attachMovie("daughter_head", "head", 0);
dchar.torso.torso.attachMovie("daughter_torso", "torso", 0);
dchar.torso.arm.arm1.attachMovie("daughter_arm_top", "arm1", 0);
dchar.legs.legR1.attachMovie("human_leg_top_001", "leg", 0);
dchar.legs.legR2.attachMovie("human_leg_btm_001", "leg", 0);
dchar.legs.legL1.attachMovie("human_leg_top_001", "leg", 0);
dchar.legs.legL2.attachMovie("human_leg_btm_001", "leg", 0);
dchar.crouch = false;
dchar.walk = true;
dchar.cd_fire = 0;
dchar.holsterCount = 0;
checkFloor(dchar);
dchar.owner = 1;
dchar.hp = 9999;
dchar.xspeed = 0;
dchar.ranged = true;
dchar.torso.arm.arm2.gotoAndStop("pistol");
dchar.weapon = "pistol";
dchar.weaponName = "b92";
dchar.torso.arm.gotoAndStop("gun_ready");
dchar.torso.arm.arm2.weapon.attachMovie(dchar.weaponName, "weapon", 0);
}
function spawnPchar() {
pchar = spawnObject("body", "char", pcharX, pcharY, 500);
pchar.torso.head.attachMovie("pchar_head", "head", 0);
pchar.torso.torso.attachMovie("pchar_torso", "torso", 0);
pchar.torso.arm.arm1.attachMovie("pchar_arm_top", "arm1", 0);
pchar.legs.legR1.attachMovie("human_leg_top_001", "leg", 0);
pchar.legs.legR2.attachMovie("human_leg_btm_001", "leg", 0);
pchar.legs.legL1.attachMovie("human_leg_top_001", "leg", 0);
pchar.legs.legL2.attachMovie("human_leg_btm_001", "leg", 0);
pchar.crouch = false;
pchar.walk = pchar_walk;
pchar.targetY = 0;
if (!pchar.walk) {
gSpeed = 4;
}
pchar.cd_fire = 0;
holsterCount = 0;
sectorAlert = false;
if (pDied) {
pDied = false;
makeSpeech(pchar, "Ugh. I'd better be more careful next time.");
} else if (locNum == daughterRoom) {
if (!daughterFound) {
addPda("I've found Anna. Now I need to get both of us back to the FERRY and get the hell out of this city.");
showPda();
}
} else if (((randbtwn(1, 10) <= 5) && (streetnum < 61)) || (streetnum > 65)) {
makeSpeech(pchar, sarcasm[randbtwn(0, sarcasm.length - 1)]);
}
checkFloor(pchar);
pchar.owner = 1;
pchar.hp = pchar_hp;
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
armWeapon(weapons[1]);
addHP();
if (daughterFound) {
spawnDaughter();
}
}
function dropHP() {
var _local1 = _level0.blackbar["pip" + pchar.hp];
_local1.gotoAndStop(3);
}
function addHP() {
tp = 1;
for(;;){
if (tp > 7) {
return(undefined);
}
var _local1 = _level0.blackbar["pip" + tp];
if (tp > pchar_maxhp) {
_local1.gotoAndStop(4);
} else if (tp > pchar_hp) {
_local1.gotoAndStop(3);
} else {
_local1.gotoAndStop(1);
}
tp++;
};
}
function showHint(txt) {
addPda(txt);
showPda();
}
function elimBlock() {
blocknum = randbtwn(1, 25);
str_0 = (blocknum - 1) * 5;
while (blocknum == daughterZone) {
blocknum = randbtwn(1, 25);
}
var _local2 = ("any street around <font color='#00FF00'>" + map_mapName[str_0 + 3]) + " Station</font>.";
var _local1 = 1;
while (_local1 <= 5) {
streetEliminated[str_0 + _local1] = true;
_local1++;
}
return(_local2);
}
function newClues() {
var _local1;
_local1 = "";
clueNum = 3;
if (clueNum > streetClues.length) {
clueNum = streetClues.length;
}
var _local3 = spitOne(streetClues);
if (clueNum > 1) {
var _local4 = spitOne(streetClues);
}
if (clueNum > 2) {
var _local2 = spitOne(streetClues);
}
if (clueNum > 2) {
_local1 = _local1 + (_local2 + ", ");
}
if (clueNum > 1) {
_local1 = _local1 + (_local4 + " or ");
}
_local1 = _local1 + (_local3 + ".");
ss = 1;
while (ss <= 125) {
if (map_mapName[ss] == _local3) {
streetEliminated[ss] = true;
}
if ((clueNum > 1) && (map_mapName[ss] == _local4)) {
streetEliminated[ss] = true;
}
if ((clueNum > 2) && (map_mapName[ss] == _local2)) {
streetEliminated[ss] = true;
}
ss++;
}
return(_local1);
}
function missingLetters() {
questStreet = randbtwn(6, 125);
questBlock = Math.ceil(questStreet / 5);
addPda(("A priest is collecting letters for family members of those who were killed. $3 will be paid per letter.\r\rThe first letter can be found at " + map_mapName[questStreet]) + ".");
showPda();
questVar = randbtwn(2, 4);
questType = "letters";
}
function killZombies() {
questStreet = randbtwn(6, 125);
questBlock = Math.ceil(questStreet / 5);
addPda((((("There is an urgent plea for backup at " + map_mapName[questStreet]) + ".") + newline) + newline) + "Head there immediately and help the survivors fend off a zombie swarm!");
showPda();
questVar = randbtwn(10, 15);
questType = "zombies";
}
function showWanted() {
questStreet = randbtwn(6, 125);
questBlock = Math.ceil(questStreet / 5);
addPda(("There is a notice offering a bounty of $15 for an escaped fugitive.\r\rThe prisoner was last spotted at " + map_mapName[questStreet]) + "!");
showPda();
questVar = 0;
questType = "criminal";
}
function readNotice() {
addPda("The various notices on the board tells me that Anna was not seen at " + elimBlock());
showPda();
}
function collectLetter() {
gridStatus[locNum] = false;
var _local3 = Math.ceil(locNum / 5);
var _local1 = (_local3 - 1) * 5;
if (((((!gridStatus[_local1 + 1]) && (!gridStatus[_local1 + 2])) && (!gridStatus[_local1 + 3])) && (!gridStatus[_local1 + 4])) && (!gridStatus[_local1 + 5])) {
var _local2 = "I've successfully collected all the letters in this area. ";
qDone = qDone + 1;
_local2 = _local2 + ("\rI discovered that that Anna was not seen at " + elimBlock());
addPda(_local2);
showPda();
}
}
function collectSupplies() {
gridStatus[locNum] = false;
var _local3 = Math.ceil(locNum / 5);
var _local1 = (_local3 - 1) * 5;
if (((((!gridStatus[_local1 + 1]) && (!gridStatus[_local1 + 2])) && (!gridStatus[_local1 + 3])) && (!gridStatus[_local1 + 4])) && (!gridStatus[_local1 + 5])) {
var _local2 = "I've successfully collected all the supplies in the area. ";
qDone = qDone + 1;
_local2 = _local2 + ("\rSome survivors inform me that that Anna was not seen at " + elimBlock());
addPda(_local2);
showPda();
}
}
function collectBounty(killer, loc) {
gridStatus[locNum] = false;
if (killer == 1) {
addPda(("I collected a bounty reward of $25 for eliminating the fugitive at " + loc) + ".");
cash = cash + 15;
floatWords(pchar, "+$25");
} else if (killer == 2) {
addPda(("The fugitive was killed by zombies at " + loc) + ".");
} else if (killer == 3) {
addPda(("Some survivors killed the fugitive at " + loc) + ".");
} else {
addPda(("The fugitive at " + loc) + " was killed.");
}
showPda();
qDone = qDone + 1;
}
function addPip(pip_x, pip_y) {
boxNum = Math.ceil(locNum % 5) - 1;
if (boxNum == -1) {
boxNum = 4;
}
pips.attachMovie("pip_door", "pip" + dd(pipCount), pipCount + 100);
thisPip = pips["pip" + dd(pipCount)];
thisPip._x = (boxNum * 30) + ((pip_x / 11) * 30);
thisPip._y = (3 - pip_y) * 10;
if (streetExplored[mapRoomNum[locNum][pip_x]]) {
thisPip.gotoAndStop(2);
}
pipCount = pipCount + 1;
}
function newMap(mapNum) {
locNum = mapNum;
roomRefreshed = false;
subwaySaid = false;
lastSurvivor = undefined;
_root.kongregateStats.submit("s3_zombiesKilled", zKills);
_root.kongregateStats.submit("s4_survivors", hRescued);
w_i = 0;
while (w_i <= 5) {
thisWord = words["words" + dd(w_i)];
thisWord.removeMovieClip();
w_i++;
}
if (mapNum < 150) {
mapflash.flash.mapName = map_mapName[locNum];
mapflash.flash.timeTxt = (36 - hours) + " hours remaining";
mapflash.gotoAndPlay(1);
roomItems = new Array();
if (((mapNum % 5) == 1) || ((mapNum % 5) == 2)) {
subway_indicator.gotoAndStop(1);
} else if ((mapNum % 5) == 3) {
subway_indicator.gotoAndStop(3);
} else if (((mapNum % 5) == 4) || ((mapNum % 5) == 0)) {
subway_indicator.gotoAndStop(2);
}
if ((mapNum > 60) && (mapNum < 65)) {
subway_indicator.gotoAndStop(1);
} else if (mapNum == 65) {
subway_indicator.gotoAndStop(3);
}
weather.gotoAndStop(weather_num);
if (!lockMap) {
streetExplored[mapNum] = true;
}
if (unopenedRooms[mapNum] == 0) {
streetEliminated[mapNum] = true;
}
blackbar.mapName = map_mapName[mapNum];
clrR = map_R[mapNum];
clrG = map_G[mapNum];
clrB = map_B[mapNum];
skyline._visible = true;
skyline._x = map_skyline[mapNum];
mapVariation = map_variation[mapNum];
generateRandomColor(sky, clrR, clrG, clrB);
tile1._x = randbtwn(0, 550);
stage.removeMovieClip();
objCount = 0;
propCount = 0;
stage2.attachMovie("stage", "stage", 100);
stage = stage2.stage;
pips.removeMovieClip();
pipCount = 0;
radar.pips.attachMovie("empty", "pips", 100);
pips = radar.pips.pips;
var _local6 = 0;
while (_local6 <= 12) {
streetTile[_local6] = "";
streetLevel1[_local6] = true;
streetLevel2[_local6] = mapHeightMap2[mapNum][_local6];
streetLevel3[_local6] = mapHeightMap3[mapNum][_local6];
_local6++;
}
var _local4 = 0;
while (_local4 < mapElement[mapNum].length) {
var _local3 = spawnProp(mapElement[mapNum][_local4], mapElPosition[mapNum][_local4], 350, 10);
generateRandomColor(_local3.shader, clrR - 50, clrG - 50, clrB - 50);
generateRandomColor(_local3.shader_dark, mRn((clrR - 50) / 3), mRn((clrG - 50) / 3), mRn((clrB - 50) / 3));
var _local2 = Math.ceil((mapElPosition[mapNum][_local4] + 1) / 50);
if (mapElement[mapNum][_local4] == "stair_001") {
streetTile[_local2] = "link21";
} else if (mapElement[mapNum][_local4] == "intro_scene1") {
streetTile[_local2 + 3] = "evac";
streetTile[_local2 + 4] = "evac";
streetTile[_local2 + 5] = "evac";
} else if (mapElement[mapNum][_local4] == "intro_scene2") {
streetTile[_local2 + 3] = "link21";
streetTile[_local2 + 4] = "melee";
roomItems[_local2 + 4] = "crowbar";
meleeBox = _local3;
meleeBox.weaponName = "Crowbar";
streetTile[_local2 + 7] = "weapon";
roomItems[_local2 + 7] = "b92";
gunBox = _local3.gunBox;
gunBox.weaponName = "Handgun";
streetTile[_local2 + 9] = "link21";
} else if (mapElement[mapNum][_local4] == "intro_scene4") {
streetTile[_local2 + 5] = "bin";
} else if (mapElement[mapNum][_local4] == "intro_scene5") {
streetTile[_local2 + 8] = "subway";
streetTile[_local2 + 9] = "subway";
} else if (mapElement[mapNum][_local4] == "stair_002") {
streetTile[_local2] = "link32";
} else if (mapElement[mapNum][_local4] == "rope_ladder1") {
streetTile[_local2] = "link21";
} else if (mapElement[mapNum][_local4] == "rope_ladder2") {
streetTile[_local2] = "link32";
} else if (mapElement[mapNum][_local4] == "deco_011") {
streetTile[_local2] = "board";
streetTile[_local2 + 1] = "board";
} else if (mapElement[mapNum][_local4] == "deco_002") {
bBox = _local3;
streetTile[_local2] = "bin";
if (scavenged[mapNum]) {
bBox.gotoAndStop(2);
}
} else if (mapElement[mapNum][_local4] == "deco_006") {
streetTile[_local2 + 1] = "evac";
} else if (mapElement[mapNum][_local4] == "deco_007") {
streetTile[_local2] = "evac_sign";
} else if (mapElement[mapNum][_local4] == "deco_008") {
streetTile[_local2 + 2] = "special";
} else if (mapElement[mapNum][_local4] == "deco_010") {
bBox = _local3;
streetTile[_local2] = "bin";
if (scavenged[mapNum]) {
bBox.gotoAndStop(2);
}
} else if (mapElement[mapNum][_local4] == "subway_001") {
streetTile[_local2] = "subway";
streetTile[_local2 + 1] = "subway";
} else if (mapElement[mapNum][_local4] == "entrypoint1") {
streetTile[_local2] = "entrypoint1";
addPip(_local2, 1);
} else if (mapElement[mapNum][_local4] == "entrypoint2") {
streetTile[_local2] = "entrypoint2";
addPip(_local2, 2);
} else if (mapElement[mapNum][_local4] == "entrypoint3") {
streetTile[_local2] = "entrypoint3";
addPip(_local2, 3);
}
_local4++;
}
spawnPchar();
numZombies = map_zombies[mapNum];
respawnAll(mapNum);
if (numZombies == 0) {
rescueSurvivors();
}
return(undefined);
}
subway_indicator.gotoAndStop(3);
if (!streetExplored[mapNum]) {
streetExplored[mapNum] = true;
unopenedRooms[roomstreet[mapNum - 150]] = unopenedRooms[roomstreet[mapNum - 150]] - 1;
}
weather.gotoAndStop(3);
clrR = map_R[thisStreet];
clrG = map_G[thisStreet];
clrB = map_B[thisStreet];
skyline._visible = false;
mapVariation = map_variation[roomNum];
roomItems = new Array();
generateRandomColor(sky, 0, 0, 0);
tile1._x = randbtwn(0, 550);
stage.removeMovieClip();
objCount = 0;
propCount = 0;
stage2.attachMovie("stage", "stage", 100);
stage = stage2.stage;
pcharX = 275;
var _local7 = spawnProp("room01", 0, pcharY, 10);
generateRandomColor(_local7.shader, clrR, clrG, clrB);
var _local6 = 0;
while (_local6 <= 11) {
streetTile[_local6] = "";
streetLevel1[_local6] = false;
streetLevel2[_local6] = false;
streetLevel3[_local6] = false;
if ((_local6 >= 2) && (_local6 <= 10)) {
if (pcharY == 350) {
streetLevel1[_local6] = true;
streetTile[6] = "entrypoint1";
_local7.doorway.gotoAndStop(1);
}
if (pcharY == 250) {
streetLevel2[_local6] = true;
streetTile[6] = "entrypoint2";
_local7.doorway.gotoAndStop(2);
}
if (pcharY == 150) {
streetLevel3[_local6] = true;
streetTile[6] = "entrypoint3";
_local7.doorway.gotoAndStop(2);
}
}
_local6++;
}
spawnPchar();
numZombies = map_zombies[mapNum];
respawnAll(roomNum);
if (numZombies == 0) {
rescueSurvivors();
}
var _local4 = 0;
for(;;){
if (_local4 >= mapElement[roomNum].length) {
return(undefined);
}
var _local3 = spawnProp(mapElement[roomNum][_local4], mapElPosition[roomNum][_local4], pcharY, 10);
generateRandomColor(_local3.shader, clrR - 50, clrG - 50, clrB - 50);
generateRandomColor(_local3.shader_dark, mRn((clrR - 50) / 3), mRn((clrG - 50) / 3), mRn((clrB - 50) / 3));
var _local2 = Math.ceil((mapElPosition[roomNum][_local4] + 1) / 50);
if (mapElement[roomNum][_local4] == "roomdeco_12") {
specialBox = _local3;
streetTile[_local2] = "weapon";
weaponType = mapVariation % 11;
if (weaponType == 0) {
_local3.weaponName = "Handgun";
roomItems[_local2] = "b92";
} else if (weaponType == 1) {
_local3.weaponName = "Submachine Gun";
roomItems[_local2] = "mp5";
} else if (weaponType == 2) {
_local3.weaponName = "Combat Rifle";
roomItems[_local2] = "m16";
} else if (weaponType == 3) {
_local3.weaponName = "Assault Rifle";
roomItems[_local2] = "ak47";
} else if (weaponType == 4) {
_local3.weaponName = "Combat Shotgun";
roomItems[_local2] = "m4";
} else if (weaponType == 5) {
_local3.weaponName = "Light SMG";
roomItems[_local2] = "uzi";
} else if (weaponType == 6) {
_local3.weaponName = "Shotgun";
roomItems[_local2] = "m12";
} else if (weaponType == 7) {
_local3.weaponName = "Auto Shotgun";
roomItems[_local2] = "spas";
} else if (weaponType == 8) {
_local3.weaponName = "Heavy Pistol";
roomItems[_local2] = "deagle";
} else if (weaponType == 9) {
_local3.weaponName = "Revolver";
roomItems[_local2] = "357";
} else if (weaponType == 10) {
_local3.weaponName = "RPG Launcher";
roomItems[_local2] = "rpg";
}
_local3.weapon.attachMovie(roomItems[_local2], "weapon", 0);
gunBox = _local3;
} else if (mapElement[roomNum][_local4] == "roomdeco_20") {
specialBox = _local3;
streetTile[_local2] = "weapon";
_local3.weaponName = "Molotov Cocktail";
roomItems[_local2] = "molotov";
gunBox = _local3;
} else if (mapElement[roomNum][_local4] == "roomdeco_19") {
specialBox = _local3;
streetTile[_local2] = "melee";
weaponType = mapVariation % 23;
if (weaponType == 0) {
_local3.weaponName = "Fire Axe";
roomItems[_local2] = "fireaxe";
} else if (weaponType == 1) {
_local3.weaponName = "Baseball bat";
roomItems[_local2] = "bbat";
} else if (weaponType == 2) {
_local3.weaponName = "Samurai Sword";
roomItems[_local2] = "sword";
} else if (weaponType == 3) {
_local3.weaponName = "Wrench";
roomItems[_local2] = "wrench";
} else if (weaponType == 4) {
_local3.weaponName = "Shovel";
roomItems[_local2] = "shovel";
} else if (weaponType == 5) {
_local3.weaponName = "Hockey Stick";
roomItems[_local2] = "hockey";
} else if (weaponType == 6) {
_local3.weaponName = "Electric Guitar";
roomItems[_local2] = "guitar";
} else if (weaponType == 7) {
_local3.weaponName = "Meat Cleaver";
roomItems[_local2] = "cleaver";
} else if (weaponType == 8) {
_local3.weaponName = "Lead Pipe";
roomItems[_local2] = "pipe";
} else if (weaponType == 9) {
_local3.weaponName = "Nightstick";
roomItems[_local2] = "nightstick";
} else if (weaponType == 10) {
_local3.weaponName = "Wooden Broom";
roomItems[_local2] = "broom";
} else if (weaponType == 11) {
_local3.weaponName = "Wooden Plank";
roomItems[_local2] = "plank";
} else if (weaponType == 12) {
_local3.weaponName = "Teddy Bear";
roomItems[_local2] = "teddy";
} else if (weaponType == 13) {
_local3.weaponName = "Umbrella";
roomItems[_local2] = "umbrella";
} else if (weaponType == 14) {
_local3.weaponName = "Sledgehammer";
roomItems[_local2] = "sledge";
} else if (weaponType == 15) {
_local3.weaponName = "Machete";
roomItems[_local2] = "machete";
} else if (weaponType == 16) {
_local3.weaponName = "Frying Pan";
roomItems[_local2] = "pan";
} else if (weaponType == 17) {
_local3.weaponName = "French Loaf";
roomItems[_local2] = "loaf";
} else if (weaponType == 18) {
_local3.weaponName = "Ming Vase";
roomItems[_local2] = "vase";
} else if (weaponType == 19) {
_local3.weaponName = "Fire Extinguisher";
roomItems[_local2] = "fireext";
} else if (weaponType == 20) {
_local3.weaponName = "Crowbar";
roomItems[_local2] = "crowbar";
} else if (weaponType == 21) {
_local3.weaponName = "Chainsaw";
roomItems[_local2] = "chainsaw";
} else if (weaponType == 22) {
_local3.weaponName = "Garden Shears";
roomItems[_local2] = "shears";
}
_local3.weapon.attachMovie(roomItems[_local2], "weapon", 0);
meleeBox = _local3;
} else if ((mapElement[roomNum][_local4] == "roomdeco_07") || (mapElement[roomNum][_local4] == "roomdeco_13")) {
streetTile[_local2] = "bin";
if (scavenged[roomNum]) {
_local3.gotoAndStop("empty");
}
bBox = _local3;
} else if (mapElement[roomNum][_local4] == "roomdeco_10") {
streetTile[_local2] = "vending";
} else if (mapElement[roomNum][_local4] == "roomdeco_17") {
specialBox = _local3;
if (scavenged[roomNum]) {
_local3.gotoAndStop(2);
}
streetTile[_local2] = "medkit";
} else if (mapElement[roomNum][_local4] == "roomdeco_18") {
specialBox = _local3;
streetTile[_local2] = "special";
} else if (mapElement[roomNum][_local4] == "survivor") {
sBox = _local3;
if (roomNum == daughterRoom) {
if (daughterFound) {
sBox.removeMovieClip();
} else {
streetTile[_local2] = "daughter";
sBox.head.attachMovie("daughter_head", "head", 0);
sBox.torso.attachMovie("daughter_torso", "torso", 0);
sBox.arm.gotoAndStop("idle");
sBox.arm.arm1.attachMovie("daughter_arm_top", "arm1", 0);
legNum = 1;
sBox.legR1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
sBox.legR2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
sBox.legL1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
sBox.legL2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
}
} else if (((roomNum == terrorRoom1) || (roomNum == terrorRoom2)) || (roomNum == terrorRoom3)) {
if (roomNum == terrorRoom1) {
streetTile[_local2] = "terror1";
sBox.head.attachMovie("terrorist_head_001", "head", 0);
} else if (roomNum == terrorRoom2) {
streetTile[_local2] = "terror2";
sBox.head.attachMovie("terrorist_head_002", "head", 0);
} else if (roomNum == terrorRoom3) {
streetTile[_local2] = "terror3";
sBox.head.attachMovie("terrorist_head_003", "head", 0);
}
sBox.torso.attachMovie("terrorist_torso", "torso", 0);
sBox.arm.gotoAndStop("idle");
sBox.arm.arm1.attachMovie("terrorist_arm_top", "arm1", 0);
legNum = 1;
sBox.legR1.attachMovie("terrorist_leg_top_00" + legNum, "leg", 0);
sBox.legR2.attachMovie("terrorist_leg_btm_00" + legNum, "leg", 0);
sBox.legL1.attachMovie("terrorist_leg_top_00" + legNum, "leg", 0);
sBox.legL2.attachMovie("terrorist_leg_btm_00" + legNum, "leg", 0);
} else {
streetTile[_local2] = "survivor";
sHead = (mapVariation % 34) + 1;
scR = mapVariation % 200;
scG = mapVariation % 200;
scB = mapVariation % 200;
sBox.head.attachMovie("survivor_head_0" + dd(sHead), "head", 0);
sTorso = (mapVariation % 7) + 1;
sBox.torso.attachMovie("survivor_torso_0" + dd(sTorso), "torso", 1);
sBox.arm.gotoAndStop("idle");
sBox.arm.arm1.attachMovie("survivor_arm_top_0" + dd(sTorso), "arm1", 2);
generateRandomColor(sBox.arm.arm1.arm1.shader, scR, scG, scB);
generateRandomColor(sBox.torso.torso.shader, scR, scG, scB);
legNum = (mapVariation % 3) + 1;
sBox.legR1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
sBox.legR2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
sBox.legL1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
sBox.legL2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
}
}
_local4++;
};
}
function armWeapon(weapname) {
if (((weapname == "b92") || (weapname == "deagle")) || (weapname == "357")) {
pchar.weapon = "pistol";
} else if (weapname == "molotov") {
pchar.weapon = "bomb";
} else {
pchar.weapon = "rifle";
}
if (weapname == "") {
weaponName = "-empty-";
pchar.torso.arm.arm2.gotoAndStop("unarmed");
pchar.torso.arm.gotoAndStop("unarmed");
maxAmmo = 0;
}
if (weapname == "fireaxe") {
weaponName = "Fire Axe";
maxAmmo = 100;
} else if (weapname == "bbat") {
weaponName = "Baseball Bat";
maxAmmo = 100;
} else if (weapname == "sword") {
weaponName = "Samurai Sword";
maxAmmo = 100;
} else if (weapname == "wrench") {
weaponName = "Wrench";
maxAmmo = 100;
} else if (weapname == "shovel") {
weaponName = "Shovel";
maxAmmo = 100;
} else if (weapname == "hockey") {
weaponName = "Hockey Stick";
maxAmmo = 100;
} else if (weapname == "guitar") {
weaponName = "Electric Guitar";
maxAmmo = 100;
} else if (weapname == "cleaver") {
weaponName = "Meat Cleaver";
maxAmmo = 100;
} else if (weapname == "pipe") {
weaponName = "Lead Pipe";
maxAmmo = 100;
} else if (weapname == "plank") {
weaponName = "Wooden Plank";
maxAmmo = 100;
} else if (weapname == "nightstick") {
weaponName = "Nightstick";
maxAmmo = 100;
} else if (weapname == "broom") {
weaponName = "Wooden Broom";
maxAmmo = 100;
} else if (weapname == "teddy") {
weaponName = "Teddy Bear";
maxAmmo = 100;
} else if (weapname == "umbrella") {
weaponName = "Umbrella";
maxAmmo = 100;
} else if (weapname == "sledge") {
weaponName = "Sledgehammer";
maxAmmo = 100;
} else if (weapname == "machete") {
weaponName = "Machete";
maxAmmo = 100;
} else if (weapname == "pan") {
weaponName = "Frying Pan";
maxAmmo = 100;
} else if (weapname == "loaf") {
weaponName = "French Loaf";
maxAmmo = 100;
} else if (weapname == "vase") {
weaponName = "Ming Vase";
maxAmmo = 100;
} else if (weapname == "fireext") {
weaponName = "Fire Extinguisher";
maxAmmo = 100;
} else if (weapname == "crowbar") {
weaponName = "Crowbar";
maxAmmo = 100;
} else if (weapname == "chainsaw") {
weaponName = "Chainsaw";
maxAmmo = 100;
} else if (weapname == "shears") {
weaponName = "Garden Shears";
maxAmmo = 100;
} else if (weapname == "b92") {
weaponName = "Handgun";
maxAmmo = 10;
} else if (weapname == "357") {
weaponName = "Revolver";
maxAmmo = 12;
} else if (weapname == "deagle") {
weaponName = "Heavy Pistol";
maxAmmo = 16;
} else if (weapname == "uzi") {
weaponName = "Light SMG";
maxAmmo = 25;
} else if (weapname == "mp5") {
weaponName = "Submachine Gun";
maxAmmo = 30;
} else if (weapname == "m12") {
weaponName = "Shotgun";
maxAmmo = 12;
} else if (weapname == "m4") {
weaponName = "Combat Shotgun";
maxAmmo = 12;
} else if (weapname == "spas") {
weaponName = "Auto Shotgun";
maxAmmo = 12;
} else if (weapname == "ak47") {
weaponName = "Assault Rifle";
maxAmmo = 30;
} else if (weapname == "m16") {
weaponName = "Combat Rifle";
maxAmmo = 30;
} else if (weapname == "rpg") {
weaponName = "RPG Launcher";
maxAmmo = 6;
} else if (weapname == "molotov") {
weaponName = "Molotov Cocktail";
maxAmmo = 5;
}
if (maxAmmo == 100) {
pchar.weapon = "melee";
}
pchar.weaponName = weaponName;
weapons[1] = weapname;
weaponsName[1] = weaponName;
weaponsMaxAmmo[1] = maxAmmo;
if (maxAmmo > 0) {
pchar.torso.arm.arm2.gotoAndStop(pchar.weapon);
pchar.torso.arm.arm2.weapon.attachMovie(weapname, "weapon", 0);
pchar.torso.arm.gotoAndStop("gun_ready");
blackbar.rifle.gotoAndStop(weapname);
}
}
function checkFloor(anyobj) {
var _local3 = Math.ceil((anyobj._x + 1) / 50);
var _local2 = 4 - mRn((anyobj._y - 50) / 100);
if (inRoom) {
anyobj._y = pcharY;
if (anyobj._x < 50) {
anyobj._x = 75;
}
if (anyobj._x > 500) {
anyobj._x = 475;
}
return(undefined);
}
if (_level0["streetLevel" + _local2][_local3]) {
return(undefined);
}
anyobj._y = 350;
}
function spawnZombie(spawn_x, spawn_y) {
var _local1 = spawnObject("body", "zombie", spawn_x, spawn_y, 500);
sTorso = 0;
_local1.torso.gotoAndStop("zombie");
_local1.torso.torso.attachMovie("zombie_torso_001", "torso", 0);
_local1.torso.arm.arm1.attachMovie("zombie_arm_top_001", "arm1", 0);
scR = randbtwn(40, 120);
scG = randbtwn(40, 120);
scB = randbtwn(40, 120);
if (randbtwn(1, 10) <= 8) {
sTorso = randbtwn(1, 7);
_local1.sTorso = sTorso;
_local1.torso.torso.attachMovie("survivor_torso_0" + dd(sTorso), "torso", 0);
_local1.torso.arm.arm1.attachMovie("survivor_arm_top_0" + dd(sTorso), "arm1", 0);
generateRandomColor(_local1.torso.arm.arm1.arm1.shader, scR, scG, scB);
generateRandomColor(_local1.torso.torso.torso.shader, scR, scG, scB);
}
legNum = randbtwn(1, 3);
_local1.legNum = legNum;
_local1.legs.legR1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
_local1.legs.legR2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
_local1.legs.legL1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
_local1.legs.legL2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
_local1.headNum = randbtwn(1, 7);
_local1.torso.head.attachMovie("zombie_head_0" + dd(_local1.headNum), "head", 0);
_local1.torso.arm.gotoAndStop("zombie");
_local1.walk = true;
_local1.legs.gotoAndStop("walk");
_local1.ranged = false;
_local1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
_local1._xscale = -100;
}
_local1.xspeed = (randbtwn(0, 1) * _local1._xscale) / 100;
_local1.hp = 1;
_local1.owner = 2;
_local1.hit = 0;
_local1.cd_fire = 0;
_local1.targetY = 0;
_local1.handMutate = false;
if (locNum != 63) {
if (randbtwn(1, 15) <= 1) {
_local1.torso.torso.attachMovie("mutant_torso_001", "torso", 0);
_local1.hp = 3;
}
if (randbtwn(1, 15) <= 1) {
_local1.torso.arm.arm2.gotoAndStop(2);
_local1.handMutate = true;
}
if (randbtwn(1, 15) <= 1) {
_local1.legs.legR1.attachMovie("mutant_leg_top_001", "leg", 0);
_local1.legs.legR2.attachMovie("mutant_leg_btm_001", "leg", 0);
_local1.legs.legL1.attachMovie("mutant_leg_top_001", "leg", 0);
_local1.legs.legL2.attachMovie("mutant_leg_btm_001", "leg", 0);
_local1.legMutate = true;
}
}
if (_local1._x < pchar._x) {
if ((pchar._x - _local1._x) <= 100) {
_local1._x = _local1._x - 100;
}
}
if (_local1._x > pchar._x) {
if ((_local1._x - pchar._x) <= 100) {
_local1._x = _local1._x + 100;
}
}
checkFloor(_local1);
return(_local1);
}
function spawnPickup(spawn_x, spawn_y, anyroom) {
var _local1 = spawnObject("pickup", "pickup", spawn_x, spawn_y, 500);
checkFloor(_local1);
_local1.dying = false;
_local1.owner = 1;
return(_local1);
}
function spawnPickup2(spawn_x, spawn_y, anyroom) {
var _local1 = spawnObject("pickup2", "pickup", spawn_x, spawn_y, 500);
checkFloor(_local1);
_local1.dying = false;
_local1.owner = 1;
return(_local1);
}
function spawnFollower(folnum, spawn_x, spawn_y, anyroom) {
var _local1 = spawnObject("body", "human", spawn_x + (10 * folnum), spawn_y, 500);
currentGrid = Math.ceil(anyroom / 5);
currentType = gridTypes[currentGrid];
var _local2 = _level0["surv" + folnum];
var _local10 = _local2.sHead;
var _local7 = _local2.sTorso;
var _local3 = _local2.legNum;
var _local8 = _local2.cR;
var _local9 = _local2.cG;
var _local6 = _local2.cB;
var _local5 = _local2.weapon;
var _local4 = _local2.weaponName;
var _local11 = _local2.cName;
_local1.torso.torso.attachMovie("survivor_torso_0" + dd(_local7), "torso", 0);
_local1.torso.arm.arm1.attachMovie("survivor_arm_top_0" + dd(_local7), "arm1", 0);
_local1.legs.legR1.attachMovie("human_leg_top_00" + _local3, "leg", 0);
_local1.legs.legR2.attachMovie("human_leg_btm_00" + _local3, "leg", 0);
_local1.legs.legL1.attachMovie("human_leg_top_00" + _local3, "leg", 0);
_local1.legs.legL2.attachMovie("human_leg_btm_00" + _local3, "leg", 0);
_local1.torso.head.attachMovie("survivor_head_0" + dd(_local10), "head", 0);
_local1.walk = true;
_local1.ranged = true;
_local1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
_local1._xscale = -100;
}
_local1.xspeed = (randbtwn(0, 1) * _local1._xscale) / 100;
_local1.hp = 50000;
_local1.owner = 3;
_local1.hit = 0;
_local1.cd_fire = 0;
_local1.targetY = 0;
_local1.weapon = _local5;
_local1.torso.arm.arm2.gotoAndStop(_local5);
_local1.weaponName = _local4;
_local1.torso.arm.arm2.weapon.attachMovie(_local4, "weapon", 0);
_local1.torso.arm.gotoAndStop("gun_ready");
generateRandomColor(_local1.torso.arm.arm1.arm1.shader, _local8, _local9, _local6);
generateRandomColor(_local1.torso.torso.torso.shader, _local8, _local9, _local6);
_local1.attachMovie("char_name", "cname", 315);
_local1.cname.txt = _local11;
if (_local1.weapon == "melee") {
_local1.ranged = false;
}
_local1.escort = true;
_local2.spawn = _local1;
}
function spawnSurvivor(spawn_x, spawn_y, anyroom) {
var _local1 = spawnObject("body", "human", spawn_x, spawn_y, 500);
currentGrid = Math.ceil(anyroom / 5);
currentType = gridTypes[currentGrid];
if ((currentType == "base") || ((questStreet == anyroom) && (questType == "zombies"))) {
_local1.military = true;
_local1.torso.torso.attachMovie("military_torso_001", "torso", 0);
_local1.torso.arm.arm1.attachMovie("military_arm_top_001", "arm1", 0);
legNum = 1;
_local1.legs.legR1.attachMovie("military_leg_top_00" + legNum, "leg", 0);
_local1.legs.legR2.attachMovie("military_leg_btm_00" + legNum, "leg", 0);
_local1.legs.legL1.attachMovie("military_leg_top_00" + legNum, "leg", 0);
_local1.legs.legL2.attachMovie("military_leg_btm_00" + legNum, "leg", 0);
_local1.torso.head.attachMovie("military_head_001", "head", 0);
} else {
scR = randbtwn(60, 190);
scG = randbtwn(60, 190);
scB = randbtwn(60, 190);
sTorso = randbtwn(1, 7);
_local1.torso.torso.attachMovie("survivor_torso_0" + dd(sTorso), "torso", 0);
_local1.torso.arm.arm1.attachMovie("survivor_arm_top_0" + dd(sTorso), "arm1", 0);
generateRandomColor(_local1.torso.arm.arm1.arm1.shader, scR, scG, scB);
generateRandomColor(_local1.torso.torso.torso.shader, scR, scG, scB);
legNum = randbtwn(1, 3);
_local1.legs.legR1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
_local1.legs.legR2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
_local1.legs.legL1.attachMovie("human_leg_top_00" + legNum, "leg", 0);
_local1.legs.legL2.attachMovie("human_leg_btm_00" + legNum, "leg", 0);
sHead = randbtwn(1, 34);
_local1.torso.head.attachMovie("survivor_head_0" + dd(sHead), "head", 0);
_local1.military = false;
_local1.cR = scR;
_local1.cG = scG;
_local1.cB = scB;
_local1.sHead = sHead;
_local1.sTorso = sTorso;
_local1.legNum = legNum;
lastSurvivor = _local1;
}
_local1.walk = true;
_local1.ranged = true;
_local1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
_local1._xscale = -100;
}
_local1.xspeed = (randbtwn(0, 1) * _local1._xscale) / 100;
_local1.hp = 50000;
_local1.owner = 3;
_local1.hit = 0;
_local1.cd_fire = 0;
_local1.targetY = 0;
_local1.torso.arm.arm2.gotoAndStop("pistol");
_local1.weapon = "pistol";
_local1.weaponName = "b92";
_local1.torso.arm.gotoAndStop("gun_ready");
_local1.torso.arm.arm2.weapon.attachMovie(_local1.weaponName, "weapon", 0);
if (!_local1.military) {
_local1.cName = randomNames[randbtwn(1, randomNames.length - 1)];
_local1.attachMovie("char_name", "cname", 315);
_local1.cname.txt = _local1.cName;
}
if (randbtwn(1, 10) <= 5) {
_local1.torso.arm.arm2.gotoAndStop("rifle");
_local1.weapon = "rifle";
_local1.torso.arm.gotoAndStop("rifle_raise");
__reg2 = randbtwn(1, 7);
if (__reg2 == 1) {
_local1.weaponName = "m16";
} else if (__reg2 == 2) {
_local1.weaponName = "ak47";
} else if (__reg2 == 3) {
_local1.weaponName = "mp5";
} else if (__reg2 == 4) {
_local1.weaponName = "m4";
} else if (__reg2 == 5) {
_local1.weaponName = "uzi";
} else if (__reg2 == 6) {
_local1.weaponName = "m12";
} else if (__reg2 == 7) {
_local1.weaponName = "spas";
}
_local1.torso.arm.arm2.weapon.attachMovie(_local1.weaponName, "weapon", 0);
} else if (randbtwn(1, 10) <= 5) {
var __reg2 = randbtwn(1, 2);
if (__reg2 == 1) {
_local1.weaponName = "deagle";
} else if (__reg2 == 2) {
_local1.weaponName = "357";
}
_local1.torso.arm.arm2.weapon.attachMovie(_local1.weaponName, "weapon", 0);
}
if (!_local1.military) {
if (randbtwn(1, 10) <= 4) {
_local1.ranged = false;
_local1.weapon = "melee";
__reg2 = randbtwn(1, 7);
if (__reg2 == 1) {
_local1.weaponName = "bbat";
} else if (__reg2 == 2) {
_local1.weaponName = "pipe";
} else if (__reg2 == 3) {
_local1.weaponName = "cleaver";
} else if (__reg2 == 4) {
_local1.weaponName = "plank";
} else if (__reg2 == 5) {
_local1.weaponName = "nightstick";
} else if (__reg2 == 6) {
_local1.weaponName = "sledge";
} else if (__reg2 == 7) {
_local1.weaponName = "machete";
}
_local1.torso.arm.arm2.gotoAndStop("melee");
_local1.torso.arm.arm2.weapon.attachMovie(_local1.weaponName, "weapon", 0);
}
}
checkFloor(_local1);
return(_local1);
}
function respawnAll(anyloc) {
numZoms = 1;
while (numZoms <= map_zombies[anyloc]) {
spawnZombie(randbtwn(70, 480), (randbtwn(1, 3) * 100) + 50);
numZoms++;
}
nSur = 1;
while (nSur <= map_survivors[anyloc]) {
spawnSurvivor(randbtwn(70, 480), (randbtwn(1, 3) * 100) + 50, anyloc);
nSur++;
}
nSur = 1;
while (nSur <= 3) {
survBox = _level0["surv" + nSur];
if (survBox.alive) {
spawnFollower(nSur, pcharX, pchar._y, anyloc);
}
nSur++;
}
if (gridStatus[anyloc]) {
if (gridTypes[Math.ceil(locNum / 5)] == "convict") {
thisConvict = spawnSurvivor((mapVariation % 8) + 100, (((mapVariation % 3) + 1) * 100) + 50, anyloc);
thisConvict.owner = 4;
thisConvict.hp = 5;
thisConvict.torso.head.attachMovie("terrorist_head_0" + dd(randbtwn(1, 3)), "head", 0);
thisConvict.torso.torso.attachMovie("convict_torso", "torso", 0);
thisConvict.torso.arm.arm1.attachMovie("convict_arm_top", "arm1", 0);
thisConvict.legs.legR1.attachMovie("convict_leg_top_001", "leg", 0);
thisConvict.legs.legR2.attachMovie("convict_leg_btm_001", "leg", 0);
thisConvict.legs.legL1.attachMovie("convict_leg_top_001", "leg", 0);
thisConvict.legs.legL2.attachMovie("convict_leg_btm_001", "leg", 0);
thisConvict.torso.arm.arm2.gotoAndStop("rifle");
thisConvict.weapon = "rifle";
thisConvict.torso.arm.gotoAndStop("rifle_raise");
var _local2 = randbtwn(1, 7);
if (_local2 == 1) {
thisConvict.weaponName = "m16";
} else if (_local2 == 2) {
thisConvict.weaponName = "ak47";
} else if (_local2 == 3) {
thisConvict.weaponName = "mp5";
} else if (_local2 == 4) {
thisConvict.weaponName = "m4";
} else if (_local2 == 5) {
thisConvict.weaponName = "uzi";
} else if (_local2 == 6) {
thisConvict.weaponName = "m12";
} else if (_local2 == 7) {
thisConvict.weaponName = "spas";
}
thisConvict.torso.arm.arm2.weapon.attachMovie(thisConvict.weaponName, "weapon", 0);
} else if (gridTypes[Math.ceil(locNum / 5)] == "letters") {
thisLetter = spawnPickup((mapVariation % 8) + 100, (((mapVariation % 3) + 1) * 100) + 50, anyloc);
thisLetter.pickuptype = "letter";
} else if (((((gridTypes[Math.ceil(locNum / 5)] == "fuel") || (gridTypes[Math.ceil(locNum / 5)] == "food")) || (gridTypes[Math.ceil(locNum / 5)] == "battery")) || (gridTypes[Math.ceil(locNum / 5)] == "medicine")) || (gridTypes[Math.ceil(locNum / 5)] == "book")) {
thisLetter = spawnPickup2((mapVariation % 8) + 100, (((mapVariation % 3) + 1) * 100) + 50, anyloc);
thisLetter.icon.gotoAndStop(gridTypes[Math.ceil(locNum / 5)]);
thisLetter.objclass = "pickup";
thisLetter.pickuptype = "supplies";
}
return(undefined);
}
if (questType == "zombies") {
questVar = randbtwn(10, 15);
}
}
function makeSpeech(anyped, anytxt) {
if (wCount == undefined) {
wCount = 0;
}
w_i = 0;
while (w_i <= 5) {
tmpWord = words["words" + dd(w_i)];
if (tmpWord.wordOwner == anyped) {
tmpWord.removeMovieClip();
}
w_i++;
}
words.attachMovie("speechbox", "words" + dd(wCount), wCount + 100);
var _local2 = words["words" + dd(wCount)];
_local2.wordOwner = anyped;
_local2._x = anyped._x;
_local2._y = anyped._y;
_local2.txt = anytxt;
wCount = wCount + 1;
if (wCount > 5) {
wCount = 0;
}
return(_local2);
}
function fireBullet(anyped, b_rot, b_dmg) {
var _local1 = spawnObject("bullet_blt", "bullet", anyped._x, anyped._y, 1000);
_local1._x = _local1._x + (12 + (anyped._xscale / 100));
_local1._y = _local1._y - 55;
if (anyped.crouch) {
_local1._y = _local1._y + 15;
}
if (anyped.weapon == "rifle") {
_local1._y = _local1._y + 10;
}
_local1.hp = 1;
_local1.speed = 30;
_local1.ownerPed = anyped;
_local1.owner = anyped.owner;
_local1._rotation = b_rot;
_local1.dmg = b_dmg;
_local1.missile = false;
_local1.rocket = false;
_local1.mtype = "";
if ((((weapons[1] == "m4") || (weapons[1] == "m12")) || (weapons[1] == "spas")) && (anyped == pchar)) {
_local1.mtype = "shotgun";
_local1.hp = 6;
}
if ((weapons[1] == "rpg") && (anyped == pchar)) {
_local1.attachMovie("bullet_RPG", "bullet", 0);
_local1.rocket = true;
_local1.speed = 6;
snd_rocket.start();
}
return(_local1);
}
function splashRing(anysrc) {
rotationoffset = randbtwn(0, 180);
var _local1 = 1;
for(;;){
if (_local1 > 5) {
return(undefined);
}
newBlt = spawnObject("fire_lite", "bullet", anysrc._x, anysrc._y - 10, 1000);
newBlt.hp = 15;
newBlt.speed = 5;
newBlt.owner = anysrc.owner;
newBlt._rotation = (72 * _local1) + rotationoffset;
newBlt.missile = false;
newBlt.mtype = "fire";
_local1++;
};
}
function splashRing2(anysrc) {
rotationoffset = randbtwn(0, 180);
var _local1 = 1;
for(;;){
if (_local1 > 5) {
return(undefined);
}
newBlt = spawnObject("fire_lite", "bullet", anysrc._x, anysrc._y - 10, 1000);
newBlt.hp = 30;
newBlt.speed = 6;
newBlt.owner = anysrc.owner;
newBlt._rotation = (72 * _local1) + rotationoffset;
newBlt.missile = false;
newBlt.mtype = "";
_local1++;
};
}
function throwMissile(mtype, anyped, b_rot, b_dmg) {
var _local1 = spawnObject(mtype, "bullet", anyped._x, anyped._y, 1000);
_local1._x = _local1._x + (12 + (anyped._xscale / 100));
_local1._y = _local1._y - 55;
if (anyped.crouch) {
_local1._y = _local1._y + 15;
}
if (anyped.weapon == "rifle") {
_local1._y = _local1._y + 10;
}
_local1.hp = 1;
_local1.speed = 12;
_local1.owner = anyped.owner;
_local1._rotation = b_rot;
_local1.dmg = b_dmg;
_local1.missile = true;
_local1.mtype = mtype;
return(_local1);
}
function gibPed(anyped) {
var _local1;
if (randbtwn(1, 10) <= 4) {
_local1 = spawnObject("gib_head", "gib", anyped._x, anyped._y, 1000);
_local1.head.attachMovie("zombie_head_0" + dd(anyped.headNum), "head", 0);
_local1.gibType = "gib_head";
_local1.gibNum = anyped.headNum;
anyped.torso.head._visible = false;
} else {
_local1 = spawnObject("gib_arm", "gib", anyped._x, anyped._y, 1000);
if (anyped.sTorso == 0) {
_local1.arm1.attachMovie("zombie_arm_top_001", "arm1", 0);
} else {
_local1.arm1.attachMovie("survivor_arm_top_0" + dd(anyped.sTorso), "arm1", 0);
}
anyped.torso.arm.arm1._visible = false;
anyped.torso.arm.arm2._visible = false;
_local1.gibType = "gib_arm";
_local1.gibNum = anyped.sTorso;
}
_local1._x = _local1._x + (12 + (anyped._xscale / 100));
_local1._y = _local1._y - 55;
if (anyped.crouch) {
_local1._y = _local1._y + 15;
}
_local1.speed = randbtwn(6, 10);
_local1.owner = anyped.owner;
_local1._rotation = randbtwn(-45, -10);
if (anyped.killerPed._xscale < 0) {
_local1._rotation = randbtwn(190, 225);
}
_local1.missile = true;
_local1.mtype = mtype;
return(_local1);
}
function cloneGib(anygib) {
thisGib = spawnProp(anygib.gibType, anygib._x, anygib._y, 25);
thisGib._rotation = anygib._rotation;
thisGib.gotoAndStop(randbtwn(1, 20));
if (anygib.gibType == "gib_head") {
thisGib.head.attachMovie("zombie_head_0" + dd(anygib.gibNum), "head", 0);
return(undefined);
}
if ((anygib.gibType == "gib_arm") && (anygib.gibNum == 0)) {
thisGib.arm1.attachMovie("zombie_arm_top_001", "arm1", 0);
return(undefined);
}
if ((anygib.gibType == "gib_arm") && (anygib.gibNum > 0)) {
thisGib.arm1.attachMovie("survivor_arm_top_0" + dd(anygib.gibNum), "arm1", 0);
}
}
function fireWeapon() {
if (weapons[1] == "") {
makeSpeech(pchar, "I need a weapon!");
nextWeapon();
return(undefined);
}
if (weapons[1] == "molotov") {
if (pchar.cd_fire == 0) {
if (weaponsAmmo[1] > 0) {
if (pchar._xscale > 0) {
throwMissile("molotov", pchar, (-45 + randbtwn(0, 10)) - 5, 1);
} else {
throwMissile("molotov", pchar, (-135 + randbtwn(0, 10)) - 5, 1);
}
weaponsAmmo[1] = weaponsAmmo[1] - 1;
pchar.cd_fire = 15;
pchar.torso.arm.gotoAndPlay("melee");
if (weaponsAmmo[1] == 0) {
floatWords(pchar, "no more molotovs!");
weapons[1] = "";
weaponsName[1] = "-empty-";
weaponsAmmo[1] = 0;
weaponsMaxAmmo[1] = 0;
nextWeapon();
}
blackbar.weaponName1 = weaponDisplay(1);
}
}
return(undefined);
}
if (weaponsMaxAmmo[1] == 100) {
if (pchar.cd_fire == 0) {
snd_melee.start();
pchar.melee = true;
pchar.cd_fire = 15;
pchar.torso.arm.gotoAndPlay("melee");
if (weapons[1] == "chainsaw") {
snd_chainsaw.start();
}
oriAmmo = weaponsAmmo[1];
weaponsAmmo[1] = weaponsAmmo[1] - randbtwn(5, 7);
if (weaponsAmmo[1] <= 0) {
weapons[1] = "";
weaponsName[1] = "-empty-";
weaponsAmmo[1] = 0;
weaponsMaxAmmo[1] = 0;
nextWeapon();
} else if ((oriAmmo > 25) && (weaponsAmmo[1] <= 25)) {
floatWords(pchar, "weapon at 25%");
} else if ((oriAmmo > 50) && (weaponsAmmo[1] <= 50)) {
floatWords(pchar, "weapon at 50%");
} else if ((oriAmmo > 75) && (weaponsAmmo[1] <= 75)) {
floatWords(pchar, "weapon at 75%");
}
blackbar.weaponName1 = weaponDisplay(1);
}
return(undefined);
}
if (weaponsAmmo[1] > 0) {
if (pchar.cd_fire == 0) {
pchar.torso.arm.play();
holsterCount = 90;
pchar.cd_fire = 15;
weaponsAmmo[1] = weaponsAmmo[1] - 1;
if (pchar._xscale == 100) {
fireBullet(pchar, (0 + randbtwn(0, 14)) - 7, 1);
} else {
fireBullet(pchar, (180 + randbtwn(0, 14)) - 7, 1);
}
_level0["snd_" + weapons[1]].start();
sectorAlert = true;
sectorAlertCountdown = 120;
alertTarget = pchar;
if (weaponsAmmo[1] == 0) {
floatWords(pchar, "out of ammo!");
} else if (weaponsAmmo[1] <= 3) {
floatWords(pchar, "low ammo!");
}
blackbar.weaponName1 = weaponDisplay(1);
}
return(undefined);
}
if (weaponsMaxAmmo[1] == 100) {
floatWords(pchar, "weapon broken!");
weapons[1] = "";
weaponsName[1] = "-empty-";
weaponsAmmo[1] = 0;
weaponsMaxAmmo[1] = 0;
} else {
floatWords(pchar, "out of ammo!");
}
nextWeapon();
}
Instance of Symbol 790 MovieClip in Frame 4
on (release) {
getURL ("http://www.kongregate.com/accounts/nerdook", "_blank");
}
Frame 5
cf = 1;
while (cf <= 6) {
_level0["comicframe" + cf]._alpha = 0;
cf++;
}
thisFrame = 1;
_level0.onEnterFrame = function () {
cf = 1;
for(;;){
if (cf > 6) {
return(undefined);
}
var _local1 = _level0["comicframe" + cf];
if ((thisFrame >= cf) && (_local1._alpha < 100)) {
_local1._alpha = _local1._alpha + 1.5;
if (thisFrame > cf) {
_local1._alpha = 100;
}
if (_local1._alpha >= 100) {
if (thisFrame == cf) {
thisFrame = thisFrame + 1;
}
if (cf == 6) {
nextFrame();
}
}
}
cf++;
};
};
Instance of Symbol 810 MovieClip in Frame 5
on (keyPress "<Space>") {
_level0.thisFrame = 6;
}
Frame 6
function weaponDisplay(wnum) {
var _local1 = "";
_local1 = weaponsName[wnum];
if (weaponsMaxAmmo[wnum] > 0) {
if (weaponsMaxAmmo[wnum] == 100) {
_local1 = _local1 + ((" " + weaponsAmmo[wnum]) + "%");
} else {
_local1 = _local1 + ((((" (" + weaponsAmmo[wnum]) + "/") + weaponsMaxAmmo[wnum]) + ")");
}
}
return(_local1);
}
function nextWeapon() {
weapons[5] = weapons[1];
weaponsName[5] = weaponsName[1];
weaponsAmmo[5] = weaponsAmmo[1];
weaponsMaxAmmo[5] = weaponsMaxAmmo[1];
wnum = 1;
while (wnum <= 4) {
weapons[wnum] = weapons[wnum + 1];
weaponsName[wnum] = weaponsName[wnum + 1];
weaponsAmmo[wnum] = weaponsAmmo[wnum + 1];
weaponsMaxAmmo[wnum] = weaponsMaxAmmo[wnum + 1];
wnum++;
}
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
armWeapon(weapons[1]);
if (weaponsMaxAmmo[1] == 100) {
pchar.torso.arm.gotoAndStop(1);
}
if ((((weapons[1] != "") || (weapons[2] != "")) || (weapons[3] != "")) || (weapons[4] != "")) {
if (weapons[1] == "") {
nextWeapon();
}
}
}
snd_b92 = new Sound(this);
snd_b92.attachSound("b92_snd");
snd_ak47 = new Sound(this);
snd_ak47.attachSound("ak47_snd");
snd_mp5 = new Sound(this);
snd_mp5.attachSound("mp5_snd");
snd_m16 = new Sound(this);
snd_m16.attachSound("m16_snd");
snd_m4 = new Sound(this);
snd_m4.attachSound("m4_snd");
snd_uzi = new Sound(this);
snd_uzi.attachSound("uzi_snd");
snd_m12 = new Sound(this);
snd_m12.attachSound("m12_snd");
snd_spas = new Sound(this);
snd_spas.attachSound("spas_snd");
snd_deagle = new Sound(this);
snd_deagle.attachSound("deagle_snd");
snd_357 = new Sound(this);
snd_357.attachSound("357_snd");
snd_splat = new Sound(this);
snd_splat.attachSound("splat");
snd_chainsaw = new Sound(this);
snd_chainsaw.attachSound("chainsaw_snd");
snd_rocket = new Sound(this);
snd_rocket.attachSound("rocket_snd");
snd_boom = new Sound(this);
snd_boom.attachSound("poof-boom");
pda.txtbox.html = true;
contextbox.html = true;
zSounds = 15;
zs = 1;
while (zs <= zSounds) {
_level0["snd_zom" + dd(zs)] = new Sound(this);
_level0["snd_zom" + dd(zs)].attachSound("zom" + dd(zs));
zs++;
}
zsSounds = 8;
zs = 1;
while (zs <= zsSounds) {
_level0["snd_zoms" + dd(zs)] = new Sound(this);
_level0["snd_zoms" + dd(zs)].attachSound("zoms" + dd(zs));
zs++;
}
snd_btn = new Sound(this);
snd_btn.attachSound("btn_down");
snd_reload = new Sound(this);
snd_reload.attachSound("reload_snd");
snd_cash = new Sound(this);
snd_cash.attachSound("cashregister");
snd_ding = new Sound(this);
snd_ding.attachSound("ding");
snd_door = new Sound(this);
snd_door.attachSound("door2");
snd_soda = new Sound(this);
snd_soda.attachSound("sodamachine");
snd_melee = new Sound(this);
snd_melee.attachSound("swordclash");
snd_molotov = new Sound(this);
snd_molotov.attachSound("molotov2");
snd_fire = new Sound(this);
snd_fire.attachSound("firesnd");
var pcharX = 275;
var pcharY = 350;
var pchar_walk = false;
var gSpeed = 4;
var holsterCount;
var sectorAlert = false;
var sectorAlertCountdown = 0;
var numZombies = 0;
var alertTarget = undefined;
var crouchBreak = 0;
var gamePaused = false;
var inRoom = false;
var shopMode = false;
deadCount = 0;
var pds = true;
pda._visible = false;
if (!startGame) {
snd_btn.start();
addPda("I arrived in the city this morning. It's like a war zone here... everything's gone to hell. I need to find Anna and get her out of here.");
curQuest = 1;
startGame = true;
}
lockMap = false;
newMap(thisStreet);
_level0.onEnterFrame = function () {
var _local2 = Math.ceil((pchar._x + 1) / 50);
var _local6 = Math.ceil((pchar._x + ((12 * pchar._xscale) / 100)) / 50);
var _local4 = 4 - mRn((pchar._y - 50) / 100);
pchar.currentTile = _local2;
pchar.nextTile = _local6;
pchar.vLevel = _local4;
giantshadow._x = pchar._x;
giantshadow._y = pchar._y;
contextbox._x = pchar._x - 90;
contextbox._y = pchar._y - 110;
if (pda._visible) {
if (pchar.crouch) {
pchar.legs.gotoAndStop("crouchwalk");
} else {
pchar.legs.gotoAndStop(1);
}
if (Key.isDown(37) || (Key.isDown(65))) {
if (!kl) {
kl = true;
if (shopMode) {
if (shopChoice > 1) {
snd_ding.start();
shopChoice = shopChoice - 1;
pda.weapon.gotoAndStop(shopCode[shopChoice]);
pda.wName = shopNames[shopChoice];
pda.wDesc = shopDesc[shopChoice];
pda.wChoice = ("Press Spacebar to purchase ($" + shopCost[shopChoice]) + ")";
}
} else if (curQuest > 1) {
snd_ding.start();
curQuest = curQuest - 1;
pda.txt = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
}
} else {
kl = false;
}
if (Key.isDown(39) || (Key.isDown(68))) {
if (!kr) {
kr = true;
if (shopMode) {
if (shopChoice < maxShopChoices) {
snd_ding.start();
shopChoice = shopChoice + 1;
pda.weapon.gotoAndStop(shopCode[shopChoice]);
pda.wName = shopNames[shopChoice];
pda.wDesc = shopDesc[shopChoice];
pda.wChoice = ("Press Spacebar to purchase ($" + shopCost[shopChoice]) + ")";
}
} else if (curQuest < (maxQuest - 1)) {
snd_ding.start();
curQuest = curQuest + 1;
pda.txt = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
}
} else {
kr = false;
}
} else if (pchar.targetY == 0) {
if (Key.isDown(37) || (Key.isDown(65))) {
kl = true;
if (pchar.crouch) {
crouchBreak = 15;
}
if (_level0["streetLevel" + _local4][_local6] || (_local6 < 1)) {
pchar._x = pchar._x - gSpeed;
}
pchar._xscale = -100;
pchar.legs.play();
} else if (Key.isDown(39) || (Key.isDown(68))) {
kr = true;
if (pchar.crouch) {
crouchBreak = 15;
}
if (_level0["streetLevel" + _local4][_local6] || (_local6 > 11)) {
pchar._x = pchar._x + gSpeed;
}
pchar._xscale = 100;
pchar.legs.play();
} else if (!pchar.rising) {
if (pchar.crouch) {
pchar.legs.gotoAndStop("crouchwalk");
} else {
pchar.legs.gotoAndStop(1);
}
}
}
if (pchar._x < 0) {
pcharX = 540;
pcharY = pchar._y;
pchar_hp = pchar.hp;
thisStreet = map_NumL[thisStreet];
newMap(thisStreet);
} else if (pchar._x > 550) {
pcharX = 10;
pcharY = pchar._y;
pchar_hp = pchar.hp;
thisStreet = map_NumR[thisStreet];
newMap(thisStreet);
}
if (!gamePaused) {
if (Key.isDown(77)) {
if (!mutes) {
mutes = true;
toggleSound();
if (!soundOn) {
makeSpeech(pchar, "Hm, it's strangely silent.");
}
}
} else {
mutes = false;
}
}
context = "";
if ((tileName == "link21") && (_local4 <= 2)) {
context = "UP: <font color='#FFFF00'>climb up/down</font>.";
} else if ((tileName == "link32") && (_local4 >= 2)) {
context = "UP: <font color='#FFFF00'>climb up/down</font>.";
} else if (tileName == "bin") {
context = "UP: <font color='#FFFF00'>search</font>.";
} else if (((tileName == "terror1") || (tileName == "terror2")) || (tileName == "terror3")) {
context = "UP: <font color='#FFFF00'>search</font>.";
} else if (tileName == "evac") {
context = "UP: <font color='#FFFF00'>Ferry</font>.";
} else if (tileName == "weapon") {
if (gunBox.weapon._visible) {
if ((((weapons[1] == "") || (weapons[2] == "")) || (weapons[3] == "")) || (weapons[4] == "")) {
context = ("UP: <font color='#00FF00'>" + gunBox.weaponName) + "</font>.";
} else {
context = ((("UP: replace <font color='#FF0000'>" + weaponsName[1]) + "</font> with <font color='#00FF00'>") + gunBox.weaponName) + "</font>";
}
}
} else if (tileName == "melee") {
if (meleeBox.weapon._visible) {
if ((((weapons[1] == "") || (weapons[2] == "")) || (weapons[3] == "")) || (weapons[4] == "")) {
contextbox.htmlText = ("UP: <font color='#00FF00'>" + meleeBox.weaponName) + "</font>.";
} else {
contextbox.htmlText = ((("UP: replace <font color='#FF0000'>" + weaponsName[1]) + "</font> with <font color='#00FF00'>") + meleeBox.weaponName) + "</font>";
}
}
} else if (tileName == "vending") {
context = "UP: <font color='#FFFF00'>Vending Machine</font> ($3).";
} else if (tileName == "special") {
context = "UP: <font color='#00FF00'>ammunition</font>.";
} else if (tileName == "subway") {
context = "UP: <font color='#FFFF00'>Subway</font>.";
if (!subwaySaid) {
subwaySaid = true;
makeSpeech(pchar, "I can use the subway to travel around the city.");
}
} else if (tileName == "medkit") {
context = "UP: <font color='#00FF00'>Medicine Cabinet</font>.";
} else if (tileName == "board") {
context = "UP: <font color='#FFFF00'>Notice Board</font>.";
} else if (tileName == "survivor") {
context = "UP: <font color='#FFFF00'>search</font>.";
} else if ((tileName == "entrypoint1") && (_local4 == 1)) {
context = "UP: <font color='#FFFF00'>enter</font>.";
} else if ((tileName == "entrypoint2") && (_local4 == 2)) {
context = "UP: <font color='#FFFF00'>enter</font>.";
} else if ((tileName == "entrypoint3") && (_local4 == 3)) {
context = "UP: <font color='#FFFF00'>enter</font>.";
}
if (!gamePaused) {
if (Key.isDown(38) || (Key.isDown(87))) {
if (!p_search) {
p_search = true;
pchar.torso.arm.gotoAndPlay("search");
holsterCount = 0;
if (tileName == "bin") {
if (scavenged[locNum]) {
snd_soda.start();
makeSpeech(pchar, "Nothing here: it's empty.");
} else {
scavenged[locNum] = true;
bBox.gotoAndStop(2);
bBox.gotoAndStop("empty");
randSlot = 1;
if (randbtwn(1, 5) == 2) {
makeSpeech(pchar, "There's a box of ammo in here.");
snd_reload.start();
ammoAmt = randbtwn(3, 7);
wslot = 1;
while (wslot <= 4) {
if ((weaponsAmmo[wslot] < weaponsMaxAmmo[wslot]) && (weaponsMaxAmmo[wslot] < 100)) {
weaponsAmmo[wslot] = weaponsAmmo[wslot] + ammoAmt;
if (weaponsAmmo[wslot] > weaponsMaxAmmo[wslot]) {
weaponsAmmo[wslot] = weaponsMaxAmmo[wslot];
}
}
wslot++;
}
floatWords(pchar, "+ammo");
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
} else {
makeSpeech(pchar, "Hm. This might be useful.");
snd_cash.start();
cashAmt = randbtwn(1, 5);
floatWords(pchar, "+$" + cashAmt);
cash = cash + cashAmt;
}
}
} else if ((((tileName == "entrypoint1") && (_local4 == 1)) || ((tileName == "entrypoint2") && (_local4 == 2))) || ((tileName == "entrypoint3") && (_local4 == 3))) {
snd_door.start();
if ((locNum == daughterRoom) && (!daughterFound)) {
makeSpeech(pchar, "I'm not leaving her behind!");
} else if (inRoom) {
map_survivors[locNum] = 0;
inRoom = false;
pcharX = roomX;
pcharY = pchar._y;
pchar_hp = pchar.hp;
newMap(thisStreet);
} else {
inRoom = true;
roomX = pchar._x;
pcharY = pchar._y;
pchar_hp = pchar.hp;
roomNum = mapRoomNum[thisStreet][_local2];
newMap(roomNum);
}
} else if (tileName == "evac") {
if (daughterFound) {
gameWon = true;
gotoAndStop ("end");
} else {
snd_soda.start();
makeSpeech(pchar, "I'm not leaving without my daughter.");
}
} else if (tileName == "daughter") {
streetTile[_local2] = "";
daughterFound = true;
spawnDaughter();
sBox.removeMovieClip();
makeSpeech(pchar, "I've got to get her back to the ferry!");
} else if (tileName == "board") {
if (noticeRead[locNum]) {
makeSpeech(pchar, "I've already read the notice board.");
} else {
snd_btn.start();
readNotice();
noticeRead[locNum] = true;
}
} else if (tileName == "special") {
makeSpeech(pchar, "It's a large crate of ammunition.");
snd_reload.start();
ammoAmt = 1;
wslot = 1;
while (wslot <= 4) {
if ((weaponsAmmo[wslot] < weaponsMaxAmmo[wslot]) && (weaponsMaxAmmo[wslot] < 100)) {
weaponsAmmo[wslot] = weaponsMaxAmmo[wslot];
}
wslot++;
}
floatWords(pchar, "+ammo");
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
} else if (((tileName == "terror1") || (tileName == "terror2")) || (tileName == "terror3")) {
if (clueTaken[locNum]) {
makeSpeech(pchar, "There's nothing more to be found.");
} else {
snd_btn.start();
sBox.pip._visible = false;
clueTaken[locNum] = true;
cashAmt = randbtwn(10, 15);
if (tileName == "terror1") {
virusStory(1);
} else if (tileName == "terror2") {
virusStory(2);
} else if (tileName == "terror3") {
virusStory(3);
}
pda._visible = true;
cash = cash + cashAmt;
floatWords(pchar, "+$" + cashAmt);
}
} else if (tileName == "survivor") {
if (clueTaken[locNum]) {
makeSpeech(pchar, "There's nothing more to be found.");
} else {
sBox.pip._visible = false;
clueTaken[locNum] = true;
if (randbtwn(1, 10) <= 7) {
snd_btn.start();
cashAmt = randbtwn(1, 7);
if (streetClues.length > 0) {
displayClue();
pda._visible = true;
} else {
makeSpeech(pchar, "Hm. This might be useful.");
cashAmt = cashAmt + randbtwn(7, 10);
}
cash = cash + cashAmt;
floatWords(pchar, "+$" + cashAmt);
} else if ((randbtwn(1, 10) <= 5) && (pchar.hp < pchar_hp)) {
pchar_hp = pchar_hp + 1;
pchar.hp = pchar_hp;
addHP();
floatWords(pchar, "+1hp");
makeSpeech(pchar, "I found a bottle of painkillers.");
} else {
makeSpeech(pchar, "There's some money in the wallet.");
snd_cash.start();
cashAmt = randbtwn(1, 5);
floatWords(pchar, "+$" + cashAmt);
cash = cash + cashAmt;
}
}
} else if (tileName == "vending") {
if (pchar.hp < pchar_maxhp) {
if (cash >= 3) {
snd_cash.start();
cash = cash - 3;
pchar_hp = pchar_hp + 1;
pchar.hp = pchar_hp;
addHP();
floatWords(pchar, "-$3");
makeSpeech(pchar, "*gulp* Mmm.");
} else {
makeSpeech(pchar, "I don't have enough money.");
}
} else {
snd_soda.start();
makeSpeech(pchar, "I don't need a drink at the moment.");
}
} else if (tileName == "evac_sign") {
makeSpeech(pchar, "'Keep calm and proceed to the ferry terminal.'");
} else if (tileName == "weapon") {
if (gunBox.weapon._visible) {
empSlot = false;
rot = 4;
wbi = 1;
while (wbi <= 4) {
if ((weapons[wbi] == "") && (!empSlot)) {
weapons[wbi] = roomItems[_local2];
empSlot = true;
rot = wbi - 1;
}
wbi++;
}
if (rot == 0) {
rot = 4;
}
if (!empSlot) {
weapons[1] = roomItems[_local2];
}
ri = 1;
while (ri <= rot) {
nextWeapon();
ri++;
}
gunBox.weapon._visible = false;
gunBox.pip._visible = false;
weaponsAmmo[1] = weaponsMaxAmmo[1];
snd_reload.start();
makeSpeech(pchar, "This will come in real handy!");
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
}
} else if (tileName == "melee") {
if (meleeBox.weapon._visible) {
empSlot = false;
rot = 4;
wbi = 1;
while (wbi <= 4) {
if ((weapons[wbi] == "") && (!empSlot)) {
weapons[wbi] = roomItems[_local2];
empSlot = true;
rot = wbi - 1;
}
wbi++;
}
if (rot == 0) {
rot = 4;
}
if (!empSlot) {
weapons[1] = roomItems[_local2];
}
ri = 1;
while (ri <= rot) {
nextWeapon();
ri++;
}
meleeBox.weapon._visible = false;
meleeBox.pip._visible = false;
snd_btn.start();
makeSpeech(pchar, "This'll make a nice weapon.");
weaponsAmmo[1] = 100;
pchar.torso.arm.gotoAndStop(1);
blackbar.weaponName1 = weaponDisplay(1);
blackbar.weaponName2 = weaponDisplay(2);
blackbar.weaponName3 = weaponDisplay(3);
blackbar.weaponName4 = weaponDisplay(4);
}
} else if (tileName == "medkit") {
if (scavenged[locNum]) {
makeSpeech(pchar, "Nothing here: it's empty.");
} else if (pchar.hp < pchar_maxhp) {
snd_btn.start();
scavenged[locNum] = true;
makeSpeech(pchar, "Ah, much better.");
floatWords(pchar, "healed!");
pchar_hp = pchar_maxhp;
pchar.hp = pchar_hp;
addHP();
specialBox.gotoAndStop(2);
} else {
makeSpeech(pchar, "I should save it for later.");
}
} else if (tileName == "subway") {
pchar_hp = pchar.hp;
gotoAndStop ("subway");
} else if (tileName == "link21") {
if (pchar._y == 350) {
pchar.targetY = 250;
} else if (pchar._y == 250) {
pchar.targetY = 350;
}
} else if (tileName == "link32") {
if (pchar._y == 250) {
pchar.targetY = 150;
} else if (pchar._y == 150) {
pchar.targetY = 250;
}
}
}
} else {
p_search = false;
}
}
if (!gamePaused) {
if (pchar.targetY != 0) {
if (pchar._y < pchar.targetY) {
pchar._y = pchar._y + 5;
pchar.legs.play();
} else if (pchar._y > pchar.targetY) {
pchar._y = pchar._y - 5;
pchar.legs.play();
} else {
pchar.targetY = 0;
}
}
}
if (!gamePaused) {
if (pchar.cd_fire > 0) {
pchar.cd_fire = pchar.cd_fire - 1;
if (pchar.cd_fire == 10) {
pchar.melee = false;
}
}
}
if (!gamePaused) {
if (Key.isDown(67)) {
if (!p_change) {
p_change = true;
nextWeapon();
}
} else {
p_change = false;
}
}
if (holsterCount > 0) {
holsterCount = holsterCount - 1;
if (holsterCount <= 0) {
pchar.torso.arm.gotoAndPlay(10);
if (weapons[1] == "") {
pchar.torso.arm.gotoAndPlay("unarmed");
}
}
}
if (!gamePaused) {
if (pchar.hit == undefined) {
pchar.hit = 0;
}
if (pchar.hit > 0) {
pchar.hit = pchar.hit - 1;
}
if (deadCount > 0) {
deadCount = deadCount - 1;
if (deadCount == 10) {
gotoAndStop ("end");
}
}
if (sectorAlertCountdown > 0) {
sectorAlertCountdown = sectorAlertCountdown - 1;
if (sectorAlertCountdown == 0) {
sectorAlert = false;
}
alert._visible = true;
alert.timetxt = "0:0" + mRn(sectorAlertCountdown / 30);
} else {
alert._visible = false;
}
if (!sectorAlert) {
alert._visible = false;
}
}
if (!gamePaused) {
if (Key.isDown(40) || (Key.isDown(83))) {
if (!p_crouch) {
p_crouch = true;
pchar.rising = true;
if (pchar.crouch) {
if (pchar_walk) {
gSpeed = 2;
} else {
gSpeed = 4;
}
pchar.legs.gotoAndPlay("rise");
pchar.gotoAndPlay("rise");
} else {
gSpeed = 1;
pchar.legs.gotoAndPlay("crouch");
pchar.gotoAndPlay("crouch");
pchar.crouch = true;
if (!sectorAlert) {
floatWords(pchar, "hidden!");
}
}
}
} else {
p_crouch = false;
}
}
if ((pchar.crouch && (!sectorAlert)) && (crouchBreak == 0)) {
if (!pchar.shaded) {
pchar.shaded = true;
tclip = pchar.torso;
__reg9 = new Color(pchar);
__reg8 = new Object();
__reg8 = {ra:"0", rb:"0", ga:"0", gb:"0", ba:"0", bb:"0", aa:"100", ab:"0"};
__reg9.setTransform(__reg8);
}
} else if (pchar.shaded) {
pchar.shaded = false;
tclip = pchar.torso;
var __reg9 = new Color(pchar);
var __reg8 = new Object();
__reg8 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
__reg9.setTransform(__reg8);
}
if (crouchBreak > 0) {
crouchBreak = crouchBreak - 1;
if (crouchBreak == 0) {
if (pchar.crouch) {
if (!sectorAlert) {
floatWords(pchar, "hidden!");
}
}
}
}
if (seconds == undefined) {
seconds = 0;
}
seconds = seconds + 1;
if (Key.isDown(13)) {
if (!pde) {
pde = true;
snd_ding.start();
pda._visible = !pda._visible;
gamePaused = pda._visible;
if (pda._visible) {
showPda();
} else {
pda.gotoAndStop(1);
shopMode = false;
}
}
} else {
pde = false;
}
if (pda._visible) {
gamePaused = true;
pda.ar1.gotoAndStop(2);
pda.ar2.gotoAndStop(2);
if (shopMode) {
if (shopChoice == 1) {
pda.ar1.gotoAndStop(1);
}
if (shopChoice == maxShopChoices) {
pda.ar2.gotoAndStop(1);
}
} else {
if (curQuest == 1) {
pda.ar1.gotoAndStop(1);
}
if (curQuest == (maxQuest - 1)) {
pda.ar2.gotoAndStop(1);
}
}
}
if (Key.isDown(32)) {
if (!pds) {
pds = true;
if (pda._visible) {
pda._visible = false;
gamePaused = false;
pda.gotoAndStop(1);
if (shopMode) {
shopMode = false;
if (cash >= shopCost[shopChoice]) {
if (maxAmmo == 0) {
blackbar.weaponName2 = blackbar.weaponName;
weaponName2 = blackbar.weaponName2;
}
cash = cash - shopCost[shopChoice];
snd_cash.start();
defaultGun = shopCode[shopChoice];
armWeapon(shopCode[shopChoice]);
floatWords(pchar, "-$" + shopCost[shopChoice]);
blackbar.ammoMag = maxAmmo;
rifleMag = maxAmmo;
} else {
snd_soda.start();
makeSpeech(pchar, "I need more money to buy that.");
}
}
} else {
fireWeapon();
}
}
} else {
pds = false;
}
if (Key.isDown(88) && (!gamePaused)) {
if (!u2) {
u2 = true;
if (cash >= 5) {
if (((streetTile[_local2] == "") && ((pchar.vLevel == 1) && (streetLevel2[_local2]))) || ((pchar.vLevel == 2) && (streetLevel3[_local2]))) {
snd_cash.start();
cash = cash - 5;
floatWords(pchar, "-$5");
makeSpeech(pchar, "I can use this rope ladder to climb up.");
var _local15 = spawnProp("rope_ladder1", (_local2 - 1) * 50, pchar._y, 10);
if (pchar.vLevel == 1) {
addMapElement(locNum, "rope_ladder1", (_local2 - 1) * 50);
streetTile[_local2] = "link21";
} else if (pchar.vLevel == 2) {
addMapElement(locNum, "rope_ladder2", (_local2 - 1) * 50);
streetTile[_local2] = "link32";
}
} else {
makeSpeech(pchar, "I can't use the rope ladder here.");
}
} else {
makeSpeech(pchar, "I need $5 for the rope ladder.");
}
}
} else {
u2 = false;
}
blackbar.cashDisplay = "$" + cash;
if (!inRoom) {
boxNum = (locNum % 5) - 1;
if (boxNum == -1) {
boxNum = 4;
}
radar.head._x = (boxNum * 30) + ((pchar._x / 550) * 30);
radar.head._y = (((pchar._y - 50) / 100) - 1) * 10;
if (!roomRefreshed) {
roomRefreshed = true;
sn = ((Math.ceil(locNum / 5) - 1) * 5) + 1;
snt = 1;
while (snt <= 5) {
radar["box" + snt]._alpha = 25;
radar["box" + snt].gotoAndStop(4);
if (streetExplored[(sn + snt) - 1]) {
radar["box" + snt].gotoAndStop(3);
}
if (streetEliminated[(sn + snt) - 1]) {
radar["box" + snt].gotoAndStop(2);
}
snt++;
}
}
radar["box" + mRn(boxNum + 1)]._alpha = 100;
}
w_i = 0;
while (w_i <= 5) {
thisWord = words["words" + dd(w_i)];
thisWord._x = thisWord.wordOwner._x;
thisWord._y = thisWord.wordOwner._y;
w_i++;
}
obj_i = 0;
for(;;){
if (obj_i > objCount) {
return(undefined);
}
var _local1 = stage["obj" + dd(obj_i)];
if ((!_local1.isDead) && (!gamePaused)) {
_local2 = Math.ceil((_local1._x + 1) / 50);
_local6 = Math.ceil((_local1._x + ((12 * _local1._xscale) / 100)) / 50);
_local4 = 4 - mRn((_local1._y - 50) / 100);
_local1.currentTile = _local2;
_local1.vLevel = _local4;
_local1.cname._xscale = _local1._xscale;
if (_local1 == pchar) {
tileName = streetTile[_local2];
}
_local1.speech._xscale = _local1._xscale;
if (pchar != null) {
if (pchar.hp <= 0) {
if (!pchar.dying) {
if (deadCount == 0) {
}
}
}
}
if ((_local1.objclass == "bullet") || (_local1.objclass == "gib")) {
var _local5 = _local1._rotation;
_local5 = (_local5 / 180) * mPi;
_local1._x = _local1._x + (((_local1.speed * mCo(_local5)) * _local1._xscale) / 100);
_local1._y = _local1._y + (((_local1.speed * mSi(_local5)) * _local1._xscale) / 100);
if ((((_local1._x < -50) || (_local1._x > 550)) || (_local1._y > 350)) || (_local1._y < -50)) {
_local1.hp = 0;
if (((_local1.mtype == "molotov") && (_local1._x > 0)) && (_local1._x < 550)) {
attachEffect(_local1, "fx_fire");
snd_molotov.start();
splashRing(_local1);
}
if ((_local1.rocket && (_local1._x > 0)) && (_local1._x < 550)) {
snd_boom.start();
attachEffect(tempObj, "fx_bigexplosion");
splashRing2(tempObj);
}
if (((_local1.objclass == "gib") && (_local1._x > 0)) && (_local1._x < 550)) {
attachEffect(_local1, "fx_bullethit");
spawnProp("bloodpool", _local1._x, _local1._y, 10);
cloneGib(_local1);
}
removeObject(_local1);
} else if (inRoom) {
if (_local1.mtype == "molotov") {
if (((_local1._y > pchar._y) || (_local1._x < 50)) || (_local1._x > 500)) {
_local1._y = pchar._y;
_local1.hp = 0;
attachEffect(_local1, "fx_fire");
snd_molotov.start();
splashRing(_local1);
removeObject(_local1);
}
}
if (_local1.rocket) {
if (((_local1._y > pchar._y) || (_local1._x < 50)) || (_local1._x > 500)) {
snd_boom.start();
attachEffect(tempObj, "fx_bigexplosion");
splashRing2(tempObj);
_local1._y = pchar._y;
_local1.hp = 0;
removeObject(_local1);
}
}
if (_local1.objclass == "gib") {
if (((_local1._y > pchar._y) || (_local1._x < 50)) || (_local1._x > 500)) {
_local1._y = pchar._y;
_local1.hp = 0;
attachEffect(_local1, "fx_bullethit");
spawnProp("bloodpool", _local1._x, _local1._y, 10);
cloneGib(_local1);
removeObject(_local1);
}
}
}
if (_local1.missile) {
if (((_local1._rotation <= 90) && (_local1._rotation > 270)) || ((_local1._rotation > -90) && (_local1._rotation <= 90))) {
_local1._rotation = _local1._rotation + 5;
} else {
_local1._rotation = _local1._rotation - 5;
}
}
if (_local1.rocket) {
_local1.speed = _local1.speed * 1.05;
_local1._rotation = _local1._rotation + (randbtwn(0, 8) - 4);
}
if ((_local1.mtype == "fire") || (_local1.mtype == "shotgun")) {
_local1.hp = _local1.hp - 1;
if (_local1.hp == 0) {
removeObject(_local1);
}
}
}
if ((_local1.objclass == "zombie") || (_local1.objclass == "human")) {
if ((_local1._x < -50) || (_local1._x > 600)) {
_local1.hp = 0;
}
if (_local1.hp <= 0) {
if (!_local1.dying) {
_local1.legs.swapDepths(1000);
__reg6 = randbtwn(1, 2);
_local1.torso.arm.gotoAndStop("collapse" + __reg6);
_local1.gotoAndPlay("collapse" + __reg6);
_local1.legs.gotoAndPlay("collapse" + __reg6);
_local1.dying = true;
if (_local1.targetY != 0) {
_local1.targetY = 0;
_local1._y = ((4 - _local1.vLevel) * 100) + 50;
}
if (_local1 == surv1.spawn) {
surv1.alive = false;
}
if (_local1 == surv2.spawn) {
surv2.alive = false;
}
if (_local1 == surv3.spawn) {
surv3.alive = false;
}
if (_local1.objclass == "zombie") {
zKills = zKills + 1;
numZombies = numZombies - 1;
if (randbtwn(1, 10) <= 4) {
gibPed(_local1);
}
if (numZombies == 0) {
makeSpeech(pchar, "That's the last of them.");
rescueSurvivors();
}
if (inRoom) {
map_zombies[locNum] = map_zombies[locNum] - 1;
}
} else if (_local1.objclass == "human") {
if (_local1.owner == 4) {
cKills = cKills + 1;
gridStatus[mapNum] = false;
collectBounty(_local1.killer, map_mapName[locNum]);
} else {
hKills = hKills + 1;
map_survivors[locNum] = map_survivors[locNum] - 1;
}
}
if (_local1 == alertTarget) {
alertTarget = undefined;
sectorAlert = false;
}
}
} else {
!_local1.escort;
if (_local1.targetY == 0) {
if (_local1.xspeed == 0) {
_local1.legs.gotoAndStop(1);
} else {
if (_level0["streetLevel" + _local4][_local6] || (_local6 < 1)) {
_local1._x = _local1._x + _local1.xspeed;
} else {
_local1.xspeed = -_local1.xspeed;
_local1._xscale = -_local1._xscale;
}
_local1.legs.play();
}
}
if (!gamePaused) {
if (_local1.cd_fire > 0) {
_local1.cd_fire = _local1.cd_fire - 1;
}
if (_local1.hit > 0) {
_local1.hit = _local1.hit - 1;
}
if ((_local1.holsterCount > 0) && (_local1.ranged)) {
_local1.holsterCount = _local1.holsterCount - 1;
if (_local1.holsterCount <= 0) {
_local1.torso.arm.gotoAndPlay(10);
}
}
if (_local1.cd_fire == 10) {
_local1.melee = false;
}
}
if ((seconds % 15) == 0) {
if ((randbtwn(1, 5) == 1) && (_local1.objclass == "zombie")) {
_local1.torso.arm.play();
zombieMoan();
}
goUp = false;
goDown = false;
if ((_local1 == dchar) || (_local1.escort)) {
if (pchar._y > _local1._y) {
goUp = true;
} else if (pchar._y < _local1._y) {
goDown = true;
}
}
if (randbtwn(1, 10) == 1) {
goUp = true;
goDown = true;
}
if (streetTile[_local2] == "link21") {
if ((_local1._y == 350) && (goDown)) {
_local1.targetY = 250;
} else if ((_local1._y == 250) && (goUp)) {
_local1.targetY = 350;
}
} else if (streetTile[_local2] == "link32") {
if ((_local1._y == 250) && (goDown)) {
_local1.targetY = 150;
} else if ((_local1._y == 150) && (goUp)) {
_local1.targetY = 250;
}
}
if (((sectorAlert && (_local4 == pchar.vLevel)) && (_local1.objclass == "zombie")) && (randbtwn(1, 10) <= 5)) {
if (_local1._x > (alertTarget._x + 25)) {
_local1.xspeed = -3.5;
if (_local1.legMutate) {
_local1.xspeed = -6;
}
_local1._xscale = -100;
_local1.walk = false;
} else if (_local1._x < (alertTarget._x - 25)) {
_local1.xspeed = 3.5;
if (_local1.legMutate) {
_local1.xspeed = 6;
}
_local1._xscale = 100;
_local1.walk = false;
}
} else if (randbtwn(1, 10) == 3) {
if ((!_local1.crouch) && (!_local1.dying)) {
_local1.legs.gotoAndPlay("walk");
}
if (randbtwn(1, 10) < 5) {
_local1.xspeed = -2;
_local1._xscale = -100;
_local1.walk = true;
} else {
_local1.xspeed = 2;
_local1._xscale = 100;
_local1.walk = true;
}
if (_local1._x > 450) {
_local1.xspeed = -2;
_local1._xscale = -100;
_local1.walk = true;
} else if (_local1._x < 100) {
_local1.xspeed = 2;
_local1._xscale = 100;
_local1.walk = true;
}
} else if (randbtwn(1, 10) == 3) {
_local1.xspeed = 0;
if ((!_local1.crouch) && (!_local1.dying)) {
_local1.legs.gotoAndStop(1);
}
}
if ((_local1 == dchar) || (_local1.escort)) {
if ((_local1._x > (pchar._x + 100)) || (_local1._x > 500)) {
_local1.xspeed = -4;
_local1._xscale = -100;
_local1.walk = false;
}
if ((_local1._x < (pchar._x - 100)) || (_local1._x < 50)) {
_local1.xspeed = 4;
_local1._xscale = 100;
_local1.walk = false;
}
}
}
if (!gamePaused) {
if (_local1.targetY != 0) {
if (_local1._y < _local1.targetY) {
_local1._y = _local1._y + 5;
_local1.legs.play();
} else if (_local1._y > _local1.targetY) {
_local1._y = _local1._y - 5;
_local1.legs.play();
} else {
_local1.targetY = 0;
}
}
}
}
}
var _local3 = 0;
while (_local3 <= objCount) {
var tempObj = stage["obj" + dd(_local3)];
if (_local1 != tempObj) {
if (!_local1.dying) {
if (!tempObj.dying) {
if (!tempObj.isDead) {
if (_local1.ranged) {
if (_local1.objclass == "human") {
if ((((((tempObj.objclass == "human") && (tempObj.owner == 4)) && (_local1.owner == 3)) || (tempObj.objclass == "zombie")) || ((_local1.owner == 4) && (tempObj == pchar))) || ((tempObj.objclass == "human") && (tempObj.owner == 3))) {
if (_local1.cd_fire == 0) {
if (_local1.vLevel == tempObj.vLevel) {
if (((_local1.currentTile > tempObj.currentTile) && (_local1._xscale <= 0)) || ((_local1.currentTile <= tempObj.currentTile) && (_local1._xscale > 0))) {
if (_local1.owner == 3) {
if (randbtwn(1, 10) <= 3) {
makeSpeech(_local1, barks1[randbtwn(1, barks1.length - 1)]);
}
}
_local1.torso.arm.play();
_local1.cd_fire = 30;
_local1.holsterCount = 90;
if (_local1._xscale == 100) {
fireBullet(_local1, (0 + randbtwn(0, 14)) - 7, 1);
} else {
fireBullet(_local1, (180 + randbtwn(0, 14)) - 7, 1);
}
_level0["snd_" + _local1.weaponName].start();
alertTarget = _local1;
_local1.xspeed = 0;
if ((!_local1.crouch) && (!_local1.dying)) {
_local1.legs.gotoAndStop(1);
}
} else if ((randbtwn(1, 3) == 1) && ((seconds % 15) == 0)) {
_local1._xscale = -_local1._xscale;
_local1.xspeed = -_local1.xspeed;
}
}
}
}
}
}
if (tempObj.box.hitTest(_local1.box)) {
if ((tempObj.objclass == "pickup") && (_local1 == pchar)) {
if (tempObj.pickuptype == "letter") {
snd_btn.start();
collectLetter();
floatWords(tempObj, "letter collected!");
removeObject(tempObj);
} else if (tempObj.pickuptype == "supplies") {
snd_btn.start();
collectSupplies();
floatWords(tempObj, "supplies collected!");
removeObject(tempObj);
}
} else if (tempObj.owner != _local1.owner) {
if (tempObj.objclass == "bullet") {
if (!((tempObj.owner == 3) && (_local1 == pchar))) {
if ((randbtwn(1, 10) <= hitChance[_local1.owner]) && (!((tempObj.owner == 1) && (_local1.owner == 3)))) {
attachEffect(tempObj, "fx_bullethit");
if (_local1.objclass == "zombie") {
zombieMoan();
}
if (_local1 == pchar) {
dropHP();
}
if ((tempObj.owner == 1) && (_local1.owner == 3)) {
makeSpeech(_local1, warning[randbtwn(1, warning.length - 1)]);
}
_local1.hp = _local1.hp - 1;
_local1.killer = tempObj.owner;
_local1.killerPed = tempObj.ownerPed;
if (tempObj.mtype == "molotov") {
attachEffect(tempObj, "fx_fire");
snd_molotov.start();
burnChar(_local1);
_local1.hp = 0;
splashRing(tempObj);
sectorAlert = true;
sectorAlertCountdown = 120;
alertTarget = pchar;
} else if (tempObj.mtype == "fire") {
burnChar(_local1);
_local1.hp = 0;
}
if (tempObj.rocket) {
snd_boom.start();
attachEffect(tempObj, "fx_bigexplosion");
splashRing2(tempObj);
}
if (tempObj.mtype != "shotgun") {
removeObject(tempObj);
}
spawnProp("bloodpool", _local1._x, _local1._y, 10);
} else if ((_local1.owner != 3) && (tempObj.mtype != "fire")) {
floatWords(tempObj, "missed!");
}
}
} else if (((_local1.objclass == "zombie") || (((_local1.objclass == "human") && (_local1.owner == 4)) && (tempObj == pchar))) || (tempObj.objclass == "human")) {
if ((((tempObj.hit == 0) && (!tempObj.crouch)) || sectorAlert) || (crouchBreak > 0)) {
if ((randbtwn(1, 10) <= 1) && (tempObj != pchar)) {
floatWords(tempObj, "missed!");
if (tempObj.melee && (!_local1.melee)) {
tembObj.melee = false;
tempObj.box._xscale = 100;
} else {
tempObj.hit = 10;
}
} else {
snd_splat.start();
if ((((tempObj.owner == 3) || (tempObj.owner == 4)) && (!tempObj.ranged)) && (tempObj.cd_fire == 0)) {
tempObj.cd_fire = 30;
tempObj.melee = true;
tempObj.torso.arm.gotoAndPlay("melee");
}
if (tempObj.melee && (!_local1.melee)) {
attachEffect(_local1, "fx_bullethit");
_local1.hit = 20;
_local1.hp = _local1.hp - 1;
if ((weapons[1] != "chainsaw") || (tempObj != pchar)) {
tempObj.melee = false;
tempObj.box._xscale = 100;
}
_local1.killer = tempObj.owner;
_local1.killerPed = tempObj;
if (_local1.objclass == "zombie") {
zombieMoan();
}
spawnProp("bloodpool", _local1._x, _local1._y, 10);
if (tempObj == pchar) {
sectorAlert = true;
sectorAlertCountdown = 120;
alertTarget = pchar;
}
} else {
if (_local1.handMutate) {
tempObj.hp = 0;
if (tempObj == pchar) {
blackbar.pip1.gotoAndStop(3);
blackbar.pip2.gotoAndStop(3);
blackbar.pip3.gotoAndStop(3);
blackbar.pip4.gotoAndStop(3);
blackbar.pip5.gotoAndStop(3);
}
}
if (tempObj == pchar) {
dropHP();
}
if (_local1.objclass == "zombie") {
zombieScreech();
}
_local1.torso.arm.play();
attachEffect(tempObj, "fx_bullethit");
tempObj.killer = _local1.owner;
tempObj.killerPed = _local1;
tempObj.hit = 20;
tempObj.hp = tempObj.hp - 1;
spawnProp("bloodpool", tempObj._x, tempObj._y, 10);
}
}
}
}
}
}
}
}
}
}
_local3++;
}
}
obj_i++;
};
};
Frame 7
function refreshSubway() {
activeTile._alpha = 25;
activeTile = _level0[(("tile" + subwayWidth) + "") + subwayHeight];
location_box._x = activeTile._x;
location_box._y = activeTile._y;
activeTile._alpha = 80;
vCost = mAb(oriWidth - subwayWidth);
hCost = mAb(oriHeight - subwayHeight);
mCost = 1;
if ((subwayWidth == oriWidth) && (subwayHeight == oriHeight)) {
mCost = 0;
}
if ((vCost > 1) || (hCost > 1)) {
mCost = 2;
}
if (mCost == 1) {
location_box.txt4 = mCost + "Hr";
} else {
location_box.txt4 = mCost + "Hrs";
}
firstStreet = mRn((((subwayWidth + ((subwayHeight - 1) * 5)) - 1) * 5) + 1);
location_box.txt2 = map_mapName[firstStreet] + newline;
location_box.txt2 = location_box.txt2 + (map_mapName[firstStreet + 1] + newline);
location_box.txt1 = map_mapName[firstStreet + 2] + newline;
location_box.txt1 = location_box.txt1 + "Station";
location_box.txt3 = map_mapName[firstStreet + 3] + newline;
location_box.txt3 = location_box.txt3 + map_mapName[firstStreet + 4];
location_box.box1.gotoAndStop(1);
location_box.box2.gotoAndStop(1);
location_box.box3.gotoAndStop(1);
location_box.box4.gotoAndStop(1);
location_box.box5.gotoAndStop(1);
location_box.txt5 = "";
gridindex = subwayWidth + ((subwayHeight - 1) * 5);
if (streetExplored[firstStreet]) {
location_box.box1.gotoAndStop(2);
}
if (streetExplored[firstStreet + 1]) {
location_box.box2.gotoAndStop(2);
}
if (streetExplored[firstStreet + 2]) {
location_box.box3.gotoAndStop(2);
}
if (streetExplored[firstStreet + 3]) {
location_box.box4.gotoAndStop(2);
}
if (streetExplored[firstStreet + 4]) {
location_box.box5.gotoAndStop(2);
}
if (streetEliminated[firstStreet]) {
location_box.box1.gotoAndStop(3);
}
if (streetEliminated[firstStreet + 1]) {
location_box.box2.gotoAndStop(3);
}
if (streetEliminated[firstStreet + 2]) {
location_box.box3.gotoAndStop(3);
}
if (streetEliminated[firstStreet + 3]) {
location_box.box4.gotoAndStop(3);
}
if (streetEliminated[firstStreet + 4]) {
location_box.box5.gotoAndStop(3);
}
m = 0;
for(;;){
if (m >= 9) {
return(undefined);
}
mZoneNum = mZone[m];
mWidth = mZoneNum % 5;
if (mWidth == 0) {
mWidth = 5;
}
mHeight = Math.ceil(mZoneNum / 5);
mStreet = mRn((((mWidth + ((mHeight - 1) * 5)) - 1) * 5) + 1);
mTile = _level0[(("tile" + mWidth) + "") + mHeight];
_level0["prisoner" + mRn(m + 1)]._x = mTile._x;
_level0["prisoner" + mRn(m + 1)]._y = mTile._y;
_level0["prisoner" + mRn(m + 1)].gotoAndStop(gridTypes[mZoneNum]);
var _local2 = 0;
var _local1 = 0;
while (_local1 <= 4) {
if (gridStatus[mStreet + _local1]) {
_local2 = _local2 + 1;
}
_local1++;
}
if (_local2 == 0) {
_level0["prisoner" + mRn(m + 1)].nextFrame();
_level0["prisoner" + mRn(m + 1)].txt = "";
} else {
_level0["prisoner" + mRn(m + 1)].txt = "x" + _local2;
}
m++;
};
}
function regenerateLocation() {
firstStreet = mRn((((subwayWidth + ((subwayHeight - 1) * 5)) - 1) * 5) + 1);
var _local3 = subwayWidth + (5 * subwayHeight);
thisGroup = streetGroups[_local3];
var _local2 = firstStreet;
while (_local2 <= (firstStreet + 4)) {
respawnZombies[_local2];
scavenged[_local2] = false;
_local2++;
}
var _local1 = 1;
for(;;){
if (_local1 > roomsCreated) {
return(undefined);
}
if (scavenged[_local1]) {
scavenged[_local1] = false;
populateMap(_local1);
}
_local1++;
};
}
stage.removeMovieClip();
blackbar.mapName = "";
timeDisplay = (36 - hours) + " Hrs";
if (hours >= 36) {
gotoAndStop ("end");
}
oriWidth = subwayWidth;
oriHeight = subwayHeight;
curTile = _level0[(("tile" + subwayWidth) + "") + subwayHeight];
subway_head._x = curTile._x;
subway_head._y = curTile._y;
gamePaused = false;
pda._visible = false;
partySize = 0;
if (surv1.alive) {
surv1.alive = false;
hRescued = hRescued + 1;
}
if (surv2.alive) {
surv2.alive = false;
hRescued = hRescued + 1;
}
if (surv3.alive) {
surv3.alive = false;
hRescued = hRescued + 1;
}
if (questStreet == 0) {
subway_crim._visible = false;
} else {
crimWidth = questBlock % 5;
if (crimWidth == 0) {
crimWidth = 5;
}
crimHeight = Math.ceil(questBlock / 5);
crimTile = _level0[(("tile" + crimWidth) + "") + crimHeight];
subway_crim._x = crimTile._x;
subway_crim._y = crimTile._y;
subway_crim.sName = map_mapName[questStreet];
}
w_i = 0;
while (w_i <= 5) {
thisWord = words["words" + dd(w_i)];
thisWord.removeMovieClip();
w_i++;
}
swx = 1;
while (swx <= 5) {
swy = 1;
while (swy <= 5) {
tempTile = _level0[(("tile" + swx) + "") + swy];
tempTile.gotoAndStop(gridTypes[swx + ((swy - 1) * 5)]);
tempTile.pct = 0;
st_no = mRn((((swx + ((swy - 1) * 5)) - 1) * 5) + 1);
ss = 1;
while (ss <= 5) {
if (streetEliminated[st_no]) {
tempTile.pct = tempTile.pct + 20;
}
st_no = st_no + 1;
ss++;
}
if ((tempTile.pct == 0) && (gridTypes[swx + ((swy - 1) * 5)] != "base")) {
tempTile.gotoAndStop("unknown");
} else if ((tempTile.pct == 100) && (gridTypes[swx + ((swy - 1) * 5)] != "base")) {
tempTile.gotoAndStop("clear");
} else if ((tempTile.pct >= 60) && (gridTypes[swx + ((swy - 1) * 5)] != "base")) {
tempTile.gotoAndStop("yellow");
}
tempTile.pct = tempTile.pct + "%";
swy++;
}
swx++;
}
sb_1 = true;
sb_2 = true;
sb_3 = true;
sb_4 = true;
sb_5 = true;
refreshSubway();
_level0.onEnterFrame = function () {
if (Key.isDown(40) || (Key.isDown(83))) {
if (!sb_1) {
sb_1 = true;
if (subwayHeight < 5) {
subwayHeight = subwayHeight + 1;
}
refreshSubway();
}
} else {
sb_1 = false;
}
if (Key.isDown(38) || (Key.isDown(87))) {
if (!sb_2) {
sb_2 = true;
if (subwayHeight > 1) {
subwayHeight = subwayHeight - 1;
}
refreshSubway();
}
} else {
sb_2 = false;
}
if (pda._visible) {
if (Key.isDown(37) || (Key.isDown(65))) {
if (!kl) {
kl = true;
if (curQuest > 1) {
snd_ding.start();
curQuest = curQuest - 1;
pda.txt = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
}
} else {
kl = false;
}
if (Key.isDown(39) || (Key.isDown(68))) {
if (!kr) {
kr = true;
if (curQuest < (maxQuest - 1)) {
snd_ding.start();
curQuest = curQuest + 1;
pda.txt = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
}
} else {
kr = false;
}
} else {
if (Key.isDown(37) || (Key.isDown(65))) {
if (!sb_3) {
sb_3 = true;
if (subwayWidth > 1) {
subwayWidth = subwayWidth - 1;
}
refreshSubway();
}
} else {
sb_3 = false;
}
if (Key.isDown(39) || (Key.isDown(68))) {
if (!sb_4) {
sb_4 = true;
if (subwayWidth < 5) {
subwayWidth = subwayWidth + 1;
}
refreshSubway();
}
} else {
sb_4 = false;
}
}
if (Key.isDown(32)) {
if (!sb_5) {
sb_5 = true;
hours = hours + mCost;
timeDisplay = (36 - hours) + " Hrs";
if (hours >= 36) {
hours = 36;
gotoAndStop ("end");
} else {
weather_num = randbtwn(1, 2);
thisStreet = firstStreet + 2;
if (thisStreet == 63) {
thisStreet = 65;
}
gotoAndStop ("game");
if ((subwayWidth != oriWidth) && (subwayHeight != oriHeight)) {
regenerateLocation();
}
}
}
} else {
sb_5 = false;
}
if (Key.isDown(13)) {
if (!pde) {
pde = true;
snd_ding.start();
pda._visible = !pda._visible;
gamePaused = pda._visible;
pda.txt = questText[curQuest];
pda.txt2 = (("Entry #" + curQuest) + "/") + (maxQuest - 1);
}
return(undefined);
}
pde = false;
};
Frame 8
Frame 9
framecount = 0;
thisswitch = 1;
newMap(randbtwn(1, 50));
stage.attachMovie("skyline", "skyline", 0);
stage.skyline._y = 100;
var creditWords = new Array();
i = 1;
creditWords[i] = "ZOMBIES TOOK MY DAUGHTER!";
i++;
creditWords[i] = "a nerdook production";
i++;
creditWords[i] = "art & coding: nerdook";
i++;
creditWords[i] = "music by: struluckt";
i++;
creditWords[i] = "lead tester: iceblue";
i++;
creditWords[i] = "thanks: yusri, ch3n";
i++;
creditWords[i] = "special thanks: carrot";
i++;
creditWords[i] = ("Time taken: " + hours) + " hours";
i++;
creditWords[i] = "Zombies killed: " + zKills;
i++;
creditWords[i] = "Criminals killed: " + cKills;
i++;
creditWords[i] = "Quests completed: " + qDone;
i++;
creditWords[i] = "Survivors rescued: " + hRescued;
i++;
creditWords[i] = "Total deaths: " + deaths;
i++;
if (gameWon) {
_root.kongregateStats.submit("s1_gameComplete", 1);
_root.kongregateStats.submit("s2_timeLeft", 36 - hours);
_root.kongregateStats.submit("s3_zombiesKilled", zKills);
_root.kongregateStats.submit("s4_survivors", hRescued);
_root.kongregateStats.submit("s5_deaths", deaths);
}
if (virusFound) {
creditWords[i] = "Virus Found: Yes";
i++;
} else {
creditWords[i] = "Virus Found: No";
i++;
}
creditWords[i] = "THANK YOU for playing!";
i++;
creditWords[i] = "-the end-";
i++;
creditWords[i] = "";
i++;
creditbox.txt = creditWords[1];
pchar._visible = false;
dchar._visible = false;
stage2._y = -120;
_level0.onEnterFrame = function () {
framecount = framecount + 1;
stage2._y = stage2._y + 2;
if (framecount >= 80) {
stage2._y = -120;
newMap(randbtwn(1, 125));
stage.attachMovie("skyline", "skyline", 0);
stage.skyline._y = 120;
pchar._visible = false;
dchar._visible = false;
creditbox._x = randbtwn(0, 110);
creditbox._y = randbtwn(0, 320);
}
if (thisswitch == (creditWords.length - 1)) {
stage2._alpha = stage2._alpha - 1;
back_drop._alpha = back_drop._alpha - 1;
}
if (framecount >= 90) {
thisswitch = thisswitch + 1;
framecount = 0;
creditbox.txt = creditWords[thisswitch];
if (thisswitch == creditWords.length) {
gotoAndStop ("resources");
}
}
};
Frame 10
framecount = 0;
thisswitch = 1;
lockMap = true;
newMap(randbtwn(1, 50));
stage.attachMovie("skyline", "skyline", 0);
stage.skyline._y = 120;
var creditWords = new Array();
i = 1;
creditWords[i] = "ZOMBIES TOOK MY DAUGHTER!";
i++;
creditWords[i] = "a nerdook production";
i++;
creditWords[i] = "The nightmare started a week ago.";
i++;
creditWords[i] = "A mysterious infection hit the city, turning everyone into mindless zombies.";
i++;
creditWords[i] = "My daughter, Anna was in the city when it happened.";
i++;
creditWords[i] = "Is she still alive?";
i++;
creditWords[i] = "I'm going to the city to find out.";
i++;
creditWords[i] = "I must find Anna.";
i++;
creditWords[i] = "I will get her back.";
i++;
creditWords[i] = "";
i++;
creditbox.txt = creditWords[1];
pchar._visible = false;
dchar._visible = false;
creditbox._xscale = 175;
creditbox._yscale = 175;
stage2._y = -120;
_level0.onEnterFrame = function () {
framecount = framecount + 1;
stage2._y = stage2._y + 2;
if (framecount >= 90) {
stage2._y = -120;
newMap(randbtwn(1, 125));
stage.attachMovie("skyline", "skyline", 0);
stage.skyline._y = 120;
pchar._visible = false;
dchar._visible = false;
creditbox._x = randbtwn(0, 110);
creditbox._y = randbtwn(0, 280);
}
if (thisswitch == (creditWords.length - 1)) {
stage2._alpha = stage2._alpha - 1;
back_drop._alpha = back_drop._alpha - 1;
}
if (framecount >= 100) {
thisswitch = thisswitch + 1;
framecount = 0;
creditbox.txt = creditWords[thisswitch];
if (thisswitch == (creditWords.length - 3)) {
creditbox._xscale = 150;
creditbox._yscale = 150;
} else if (thisswitch == (creditWords.length - 2)) {
creditbox._xscale = 200;
creditbox._yscale = 200;
} else {
creditbox._xscale = 100;
creditbox._yscale = 100;
}
if (thisswitch == creditWords.length) {
gotoAndStop ("game");
}
}
};
Instance of Symbol 810 MovieClip in Frame 10
on (keyPress "<Space>") {
if (_level0.thisswitch < (_level0.creditWords.length - 1)) {
_level0.thisswitch = _level0.creditWords.length - 1;
_level0.framecount = 0;
_level0.creditbox.txt = "";
_level0.gotoAndStop("game");
}
}
Symbol 63 MovieClip [fx_bigexplosion] Frame 30
stop();
removeMovieClip(this);
Symbol 81 MovieClip Frame 1
stop();
Symbol 130 MovieClip Frame 1
stop();
if ((_level0.mapVariation % 54) == 0) {
_level0.mapVariation = _level0.mapVariation + 1;
}
gotoAndStop((_level0.mapVariation % 6) + 1);
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 9);
Symbol 145 MovieClip Frame 1
stop();
gotoAndStop((_level0.mapVariation % 5) + 1);
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 7);
Symbol 154 MovieClip [gene_001] Frame 1
stop();
gotoAndStop((_level0.mapVariation % 5) + 1);
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 7);
Symbol 161 MovieClip [gene_002] Frame 1
stop();
gotoAndStop((_level0.mapVariation % 5) + 1);
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 7);
Symbol 196 MovieClip [b92] Frame 1
stop();
Symbol 217 MovieClip Frame 1
stop();
Symbol 240 MovieClip [m16] Frame 1
stop();
Symbol 296 MovieClip [deco_012] Frame 1
stop();
Symbol 298 MovieClip Frame 1
stop();
if ((_level0.mapVariation % 54) == 0) {
_level0.mapVariation = _level0.mapVariation + 1;
}
gotoAndStop((_level0.mapVariation % 6) + 1);
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 9);
Symbol 300 MovieClip Frame 1
stop();
Symbol 302 MovieClip [roomdeco_19] Frame 1
stop();
Symbol 312 MovieClip [deco_002] Frame 1
stop();
Symbol 319 MovieClip [pip_door] Frame 1
stop();
Symbol 325 MovieClip Frame 1
stop();
Symbol 325 MovieClip Frame 2
if (_parent.walk) {
gotoAndPlay ("walk");
}
Symbol 325 MovieClip Frame 18
if (_parent.dying) {
gotoAndPlay ("collapse1");
} else if (_parent.walk) {
gotoAndPlay ("walk");
} else {
gotoAndPlay ("run");
}
Symbol 325 MovieClip Frame 23
_parent.rising = false;
stop();
Symbol 325 MovieClip Frame 24
if (!_parent.crouch) {
gotoAndPlay ("rise");
}
Symbol 325 MovieClip Frame 27
if (!_parent.crouch) {
gotoAndPlay ("rise");
}
Symbol 325 MovieClip Frame 30
if (!_parent.crouch) {
gotoAndPlay ("rise");
}
Symbol 325 MovieClip Frame 33
if (!_parent.crouch) {
gotoAndPlay ("rise");
}
Symbol 325 MovieClip Frame 36
if (_parent.crouch) {
gotoAndPlay ("crouchwalk");
} else {
gotoAndPlay (1);
}
Symbol 325 MovieClip Frame 41
_parent.rising = false;
gotoAndStop (1);
Symbol 325 MovieClip Frame 42
if (!_parent.walk) {
gotoAndPlay ("run");
}
Symbol 325 MovieClip Frame 62
if (_parent.walk) {
gotoAndPlay ("walk");
} else {
gotoAndPlay ("run");
}
Symbol 325 MovieClip Frame 73
stop();
Symbol 325 MovieClip Frame 84
stop();
Symbol 333 MovieClip Frame 1
stop();
Symbol 341 MovieClip Frame 1
stop();
Symbol 346 MovieClip [fx_shell] Frame 6
removeMovieClip(this);
Symbol 352 MovieClip Frame 1
stop();
Symbol 352 MovieClip Frame 2
if (_parent._parent.weapon == "rifle") {
gotoAndPlay ("rifle_raise");
}
Symbol 352 MovieClip Frame 8
stop();
Symbol 352 MovieClip Frame 9
gotoAndPlay ("gun_fire");
Symbol 352 MovieClip Frame 13
gotoAndStop ("gun_ready");
Symbol 352 MovieClip Frame 22
if (_level0.weapons[1] == "") {
gotoAndStop ("unarmed");
} else {
gotoAndStop ("gun_ready");
}
Symbol 352 MovieClip Frame 31
stop();
Symbol 352 MovieClip Frame 32
gotoAndPlay ("rifle_fire");
Symbol 352 MovieClip Frame 35
gotoAndStop ("gun_ready");
Symbol 352 MovieClip Frame 40
_parent._parent.box._xscale = 200;
Symbol 352 MovieClip Frame 42
_parent._parent.box._xscale = 100;
Symbol 352 MovieClip Frame 46
gotoAndStop ("gun_ready");
Symbol 352 MovieClip Frame 47
_parent._parent.box._xscale = 100;
gotoAndStop ("gun_ready");
Symbol 352 MovieClip Frame 120
gotoAndStop ("zombie");
Symbol 353 MovieClip Frame 1
stop();
Symbol 354 MovieClip [body] Frame 10
gotoAndPlay (1);
Symbol 354 MovieClip [body] Frame 24
gotoAndPlay ("crouchloop");
Symbol 354 MovieClip [body] Frame 30
this.crouch = false;
gotoAndPlay (1);
Symbol 354 MovieClip [body] Frame 41
stop();
Symbol 354 MovieClip [body] Frame 52
stop();
Instance of Symbol 361 MovieClip in Symbol 376 MovieClip [deco_008] Frame 1
onClipEvent (load) {
this._rotation = -_level0.randbtwn(20, 160);
}
Symbol 427 MovieClip [fx_fire] Frame 11
removeMovieClip(this);
Instance of Symbol 431 MovieClip in Symbol 432 MovieClip [molotov] Frame 1
onClipEvent (enterFrame) {
this._rotation = this._rotation + 24;
}
Symbol 445 MovieClip [burning_torso] Frame 9
if (burnloop == undefined) {
burnloop = 0;
}
burnloop = burnloop + 1;
if (burnloop < 7) {
gotoAndPlay (1);
} else {
gotoAndStop (10);
}
Symbol 452 MovieClip [burning_head] Frame 9
if (burnloop == undefined) {
burnloop = 0;
}
burnloop = burnloop + 1;
if (burnloop < 7) {
gotoAndPlay (1);
} else {
gotoAndStop (10);
}
Symbol 455 MovieClip [roomdeco_18] Frame 1
stop();
Instance of Symbol 487 MovieClip "shader" in Symbol 489 MovieClip [survivor_head_023] Frame 1
onClipEvent (load) {
_level0.generateRandomColor(this, randbtwn(150, 200), randbtwn(150, 200), randbtwn(150, 200));
}
Symbol 537 MovieClip [survivor] Frame 1
gotoAndStop((_level0.mapVariation % 4) + 1);
if (_level0.clueTaken[_level0.locNum]) {
pip._visible = false;
}
Symbol 543 MovieClip [roomdeco_17] Frame 1
stop();
Symbol 558 MovieClip [roomdeco_13] Frame 1
stop();
if ((_level0.mapVariation % 54) == 0) {
_level0.mapVariation = _level0.mapVariation + 1;
}
if (_level0.scavenged[_level0.locNum]) {
gotoAndStop ("empty");
} else {
gotoAndStop((_level0.mapVariation % 6) + 1);
}
_level0.mapVariation = _level0.mapVariation + (_level0.mapVariation % 9);
Symbol 560 MovieClip Frame 1
stop();
Symbol 573 MovieClip [roomdeco_07] Frame 1
stop();
Symbol 580 MovieClip Frame 1
stop();
Symbol 584 MovieClip Frame 1
stop();
Symbol 595 MovieClip [roomdeco_03] Frame 1
stop();
gotoAndStop((_level0.mapVariation % 3) + 1);
Instance of Symbol 361 MovieClip in Symbol 607 MovieClip [deco_006] Frame 1
onClipEvent (load) {
this._rotation = -_level0.randbtwn(20, 160);
}
Symbol 613 MovieClip [military_head_001] Frame 1
stop();
gotoAndStop(_level0.randbtwn(1, 5));
Symbol 623 MovieClip Frame 1
stop();
Symbol 652 MovieClip [speechbox] Frame 50
removeMovieClip(this);
Symbol 667 MovieClip [floatwords] Frame 15
removeMovieClip(this);
Symbol 672 MovieClip Frame 4
stop();
Symbol 675 MovieClip [fx_bullethit] Frame 4
removeMovieClip(this);
Symbol 682 MovieClip [deco_010] Frame 1
stop();
Symbol 717 Button
on (release) {
getURL ("http://www.arcadebomb.com", "_blank");
}
Symbol 723 Button
on (release) {
getURL ("http://www.arcadebomb.com", "_blank");
}
Symbol 742 MovieClip Frame 2
stop();
Symbol 750 MovieClip Frame 1
stop();
Symbol 757 MovieClip Frame 1
stop();
Symbol 774 MovieClip Frame 204
_level0.nextFrame();
Symbol 790 MovieClip Frame 30
stop();
Symbol 820 MovieClip Frame 23
gotoAndPlay(_level0.randbtwn(0, 18));
Symbol 821 MovieClip Frame 1
stop();
Instance of Symbol 815 MovieClip in Symbol 821 MovieClip Frame 1
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
this._x = this._x - 0.6;
if (this._x < -100) {
this._x = _level0.randbtwn(600, 650);
this._y = _level0.randbtwn(10, 80);
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
}
Instance of Symbol 815 MovieClip in Symbol 821 MovieClip Frame 1
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
this._x = this._x - 0.5;
if (this._x < -100) {
this._x = _level0.randbtwn(600, 650);
this._y = _level0.randbtwn(10, 80);
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
}
Instance of Symbol 815 MovieClip in Symbol 821 MovieClip Frame 1
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
this._x = this._x - 0.7;
if (this._x < -100) {
this._x = _level0.randbtwn(600, 650);
this._y = _level0.randbtwn(10, 80);
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
}
Symbol 836 MovieClip Frame 1
stop();
Symbol 838 MovieClip Frame 1
stop();
Symbol 866 MovieClip Frame 1
stop();
Symbol 870 MovieClip Frame 1
stop();
Symbol 881 MovieClip Frame 35
stop();
Symbol 887 MovieClip Frame 1
stop();
Symbol 890 MovieClip Frame 1
stop();
Symbol 893 MovieClip Frame 1
stop();
Symbol 906 MovieClip Frame 1
stop();
Symbol 924 MovieClip Frame 1
stop();
Symbol 930 MovieClip Frame 1
stop();
Symbol 932 MovieClip Frame 1
stop();
Symbol 937 MovieClip Frame 1
stop();
Symbol 961 Button
on (release) {
getURL ("http://www.arcadebomb.com", "_blank");
}