Combined Code
movieClip 49 empty {
}
frame 1 {
function sitelock(urls_allowed) {
lock = true;
for (x in urls_allowed) {
if (_url.indexOf(urls_allowed[x]) > 0) {
lock = false;
}
}
if (lock) {
gotoAndStop('sitelock');
}
}
stop();
_quality = 'MEDIUM';
fscommand('allowscale', 'true');
fscommand('showmenu', 'false');
Stage.showMenu = false;
Stage.scaleMode = 'noScale';
_root.kongregateServices.connect();
var pct = 0;
var pressSpace = true;
var soundOn = true;
var startDelay = 0;
urls_allowed = ['arcadebomb', 'kongregate', 'newgrounds', '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 v2 = Math.round(pct) + '%';
startmsg = 'Loading... ' + v2;
} else {
pct = 100;
startmsg = 'Game loaded!';
}
if (pct == 100) {
startDelay += 1;
if (startDelay >= 30) {
gotoAndStop('resources');
}
}
};
}
// unknown tag 88 length 87
movieClip 53 char_name {
}
movieClip 55 {
}
instance of movieClip 55 {
onClipEvent (release) {
getURL('http://www.arcadebomb.com', '_blank');
}
}
movieClip 59 {
}
movieClip 60 {
}
movieClip 61 {
}
button 64 {
on (release) {
getURL('http://www.arcadebomb.com', '_blank');
}
}
// unknown tag 88 length 62
button 70 {
on (release) {
getURL('http://www.arcadebomb.com', '_blank');
}
}
// unknown tag 88 length 67
movieClip 76 {
}
frame 2 {
stop();
_level0.onEnterFrame = function () {
stop();
};
}
// unknown tag 88 length 83
frame 3 {
function toggleSound() {
if (soundOn) {
soundOn = false;
soundicon.gotoAndStop(2);
gSound = new Sound();
gSound.setVolume(0);
} else {
soundOn = true;
soundicon.gotoAndStop(1);
gSound = new Sound();
gSound.setVolume(100);
}
}
function displayLongTime(seconds) {
var v4 = 0;
var v1 = 0;
var v3 = 0;
if (seconds > 0) {
while (seconds >= 60) {
seconds -= 60;
v1 += 1;
}
}
v4 = seconds;
if (v1 > 0) {
while (v1 >= 60) {
v1 -= 60;
v3 += 1;
}
}
if (v1 < 10) {
v1 = '0' + v1;
}
if (v4 < 10) {
v4 = '0' + v4;
}
return v3 + ':' + v1 + ':' + v4;
}
function dd(ddnum) {
if (ddnum < 10) {
return '0' + ddnum;
} else {
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 v1 = dialogChar.shift();
if (v1 == undefined) {
dialogbox.char = 'Dr Frix';
} else {
dialogbox.char = v1;
}
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 += 1;
if (dialogCount >= dialogbox.fulltxt.length + 60) {
if (dialogList.length > 0) {
getDialog();
} else {
dialogbox.fulltxt = '';
dialogbox._visible = false;
}
}
}
}
function spawnProp(objname, pos_x, pos_y, lyroffset) {
if (propCount == undefined) {
propCount = 0;
}
var v4 = false;
var v3;
dind = 0;
while (dind <= propCount) {
var v1;
v1 = stage['prop' + dd(dind)];
if (v1.isDead) {
v4 = true;
v1.removeMovieClip();
stage.attachMovie(objname, 'prop' + dd(dind), dind + lyroffset);
v3 = stage['prop' + dd(dind)];
v3.isDead = false;
v3._visible = true;
v3.defLayer = dind + lyroffset;
v3.swapDepths(dind + lyroffset);
dind = propCount + 999;
}
++dind;
}
if (!v4) {
stage.attachMovie(objname, 'prop' + dd(propCount), propCount + lyroffset);
v3 = stage['prop' + dd(propCount)];
v3.isDead = false;
v3.index = propCount;
v3.defLayer = propCount + lyroffset;
propCount += 1;
}
v3._x = pos_x;
v3._y = pos_y;
v3.objname = objname;
return v3;
}
function spawnObject(objname, objclass, pos_x, pos_y, lyroffset) {
if (objCount == undefined) {
objCount = 0;
}
var v4 = false;
var v3;
dind = 0;
while (dind <= objCount) {
var v1;
v1 = stage['obj' + dd(dind)];
if (v1.isDead) {
v4 = true;
v1.removeMovieClip();
stage.attachMovie(objname, 'obj' + dd(dind), dind + lyroffset);
v3 = stage['obj' + dd(dind)];
v3.isDead = false;
v3._visible = true;
v3.defLayer = dind + lyroffset;
v3.swapDepths(dind + lyroffset);
dind = objCount + 999;
}
++dind;
}
if (!v4) {
stage.attachMovie(objname, 'obj' + dd(objCount), objCount + lyroffset);
v3 = stage['obj' + dd(objCount)];
v3.isDead = false;
v3.index = objCount;
v3.defLayer = objCount + lyroffset;
objCount += 1;
}
v3._x = pos_x;
v3._y = pos_y;
v3.objname = objname;
v3.objclass = objclass;
v3.dying = false;
return v3;
}
function removeObject(anyobj) {
anyobj.isDead = true;
anyobj._visible = false;
if (anyobj.index == objCount - 1) {
var v1 = objCount - 1;
while (v1 >= 1) {
var v2 = stage['obj' + dd(v1)];
if (v2.isDead) {
removeMovieClip(v2);
objCount -= 1;
} else {
v1 = -1;
}
--v1;
}
}
}
function attachEffect(anyped, effectname) {
if (fxCount == undefined) {
fxCount = 0;
}
stage.attachMovie(effectname, 'sfx' + dd(fxCount), fxCount + 10000);
var v1 = stage['sfx' + dd(fxCount)];
fxCount += 1;
if (fxCount > 20) {
fxCount = 0;
}
v1._x = anyped._x;
v1._y = anyped._y;
v1._rotation = randbtwn(0, 360);
lastFx = v1;
}
function floatWords(anyped, wordtxt) {
if (fxCount == undefined) {
fxCount = 0;
}
stage.attachMovie('floatwords', 'sfx' + dd(fxCount), fxCount + 10000);
var v1 = stage['sfx' + dd(fxCount)];
v1.word.txt = wordtxt;
fxCount += 1;
if (fxCount > 20) {
fxCount = 0;
}
v1._x = anyped._x;
v1._y = anyped._y - 20;
}
function generateRandomColor(rClip, rBase, gBase, bBase) {
var v5 = rBase;
var v6 = gBase;
var v4 = bBase;
var v2 = v5.toString(16);
if (v5 < 16) {
v2 = '0' + v2;
}
var v1 = v6.toString(16);
if (v6 < 16) {
v1 = '0' + v1;
}
var v3 = v4.toString(16);
if (v4 < 16) {
v3 = '0' + v3;
}
var v8 = v2 + v1 + v3;
var v7 = parseInt(v8, 16);
var v9 = new Color(rClip);
v9.setRGB(v7);
}
function spitOne(anyarray) {
var v1 = randbtwn(0, anyarray.length - 1);
var v3 = anyarray[v1];
anyarray.splice(v1, 1);
return v3;
}
mRn = Math.round;
mRd = Math.random;
mSq = Math.sqrt;
mPw = Math.pow;
mMx = Math.max;
mMn = Math.min;
mAt = Math.atan;
mPi = Math.PI;
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);
} else {
if (gameMode == 1) {
music.gotoAndStop('story');
} else {
music.gotoAndStop('game');
}
}
};
}
frame 3 {
stop();
_level0.onEnterFrame = function () {};
}
movieClip 88 intro_scene1 {
}
movieClip 90 skyline {
}
movieClip 92 {
}
movieClip 94 daughter_torso {
}
movieClip 97 military_leg_btm_001 {
}
movieClip 99 military_leg_top_001 {
}
movieClip 101 survivor_torso_001 {
}
movieClip 103 zombie_torso_001 {
}
movieClip 106 {
}
movieClip 113 {
frame 1 {
stop();
if (_level0.mapVariation % 54 == 0) {
_level0.mapVariation += 1;
}
gotoAndStop(_level0.mapVariation % 6 + 1);
_level0.mapVariation += _level0.mapVariation % 9;
}
}
movieClip 118 {
frame 1 {
stop();
gotoAndStop(_level0.mapVariation % 5 + 1);
_level0.mapVariation += _level0.mapVariation % 7;
}
}
movieClip 121 {
}
movieClip 127 gene_001 {
frame 1 {
stop();
gotoAndStop(_level0.mapVariation % 5 + 1);
_level0.mapVariation += _level0.mapVariation % 7;
}
}
movieClip 129 deco_001 {
}
movieClip 136 gene_002 {
frame 1 {
stop();
gotoAndStop(_level0.mapVariation % 5 + 1);
_level0.mapVariation += _level0.mapVariation % 7;
}
}
movieClip 140 deco_010 {
frame 1 {
stop();
}
}
movieClip 142 deco_003 {
}
movieClip 144 human_head_001 {
}
movieClip 146 {
}
movieClip 148 bullet_blt {
}
movieClip 153 {
frame 4 {
stop();
}
}
movieClip 156 fx_bullethit {
frame 4 {
removeMovieClip(this);
}
}
movieClip 158 bloodpool {
}
movieClip 160 {
}
movieClip 161 floatwords {
frame 15 {
removeMovieClip(this);
}
}
movieClip 163 stair_001 {
}
movieClip 165 stair_002 {
}
movieClip 168 {
}
movieClip 169 {
}
movieClip 174 {
}
movieClip 186 {
}
movieClip 187 subway_001 {
}
movieClip 189 deco_004 {
}
movieClip 192 {
}
movieClip 194 deco_005 {
}
movieClip 196 entrypoint1 {
}
movieClip 198 entrypoint2 {
}
movieClip 199 entrypoint3 {
}
movieClip 201 {
}
// unknown tag 88 length 70
movieClip 205 speechbox {
frame 50 {
removeMovieClip(this);
}
}
movieClip 207 human_leg_btm_001 {
}
movieClip 209 human_leg_top_001 {
}
movieClip 211 pchar_torso {
}
movieClip 213 pchar_head {
}
movieClip 215 pchar_arm_top {
}
movieClip 217 human_leg_btm_002 {
}
movieClip 219 human_leg_top_002 {
}
movieClip 221 human_leg_btm_003 {
}
movieClip 223 human_leg_top_003 {
}
movieClip 225 survivor_head_001 {
}
movieClip 227 survivor_arm_top_001 {
}
movieClip 229 zombie_arm_top_001 {
}
movieClip 231 {
}
movieClip 233 {
frame 1 {
stop();
}
}
movieClip 234 room01 {
}
movieClip 236 military_torso_001 {
}
movieClip 238 military_arm_top_001 {
}
movieClip 244 military_head_001 {
frame 1 {
stop();
gotoAndStop(_level0.randbtwn(1, 5));
}
}
movieClip 246 {
frame 1 {
stop();
}
}
movieClip 248 {
}
movieClip 252 {
}
movieClip 255 {
}
movieClip 256 {
}
movieClip 260 {
}
movieClip 261 deco_006 {
instance of movieClip 256 {
onClipEvent (load) {
this._rotation = -_level0.randbtwn(20, 160);
}
}
}
movieClip 263 deco_007 {
}
movieClip 265 {
}
movieClip 267 {
frame 1 {
stop();
}
}
movieClip 269 {
}
movieClip 271 {
}
movieClip 272 roomdeco_01 {
}
movieClip 275 {
}
movieClip 276 roomdeco_02 {
}
movieClip 280 roomdeco_03 {
frame 1 {
stop();
gotoAndStop(_level0.mapVariation % 3 + 1);
}
}
movieClip 282 roomdeco_04 {
}
movieClip 284 roomdeco_05 {
}
movieClip 291 {
frame 1 {
stop();
}
}
movieClip 295 {
frame 1 {
stop();
}
}
movieClip 297 {
}
movieClip 298 roomdeco_06 {
}
movieClip 301 roomdeco_07 {
frame 1 {
stop();
}
}
movieClip 303 roomdeco_08 {
}
movieClip 305 roomdeco_09 {
}
movieClip 307 roomdeco_10 {
}
movieClip 309 roomdeco_11 {
}
movieClip 311 {
frame 1 {
stop();
}
}
movieClip 313 {
}
movieClip 315 roomdeco_12 {
}
movieClip 323 roomdeco_13 {
frame 1 {
stop();
if (_level0.mapVariation % 54 == 0) {
_level0.mapVariation += 1;
}
if (_level0.scavenged[_level0.locNum]) {
gotoAndStop('empty');
} else {
gotoAndStop(_level0.mapVariation % 6 + 1);
}
_level0.mapVariation += _level0.mapVariation % 9;
}
}
movieClip 325 roomdeco_14 {
}
movieClip 327 {
}
movieClip 329 roomdeco_15 {
}
movieClip 331 roomdeco_16 {
}
movieClip 334 roomdeco_17 {
frame 1 {
stop();
}
}
movieClip 336 rope_ladder1 {
}
movieClip 337 rope_ladder2 {
}
movieClip 339 {
}
movieClip 341 {
}
movieClip 343 {
}
movieClip 346 {
frame 1 {
stop();
}
}
movieClip 348 {
}
movieClip 352 {
}
movieClip 353 fx_shell {
frame 6 {
removeMovieClip(this);
}
}
movieClip 358 {
}
movieClip 361 {
frame 1 {
stop();
}
}
movieClip 362 {
frame 1 {
stop();
}
frame 2 {
if (_parent._parent.weapon == 'rifle') {
gotoAndPlay('rifle_raise');
}
}
frame 8 {
stop();
}
frame 9 {
gotoAndPlay('gun_fire');
}
frame 13 {
gotoAndStop('gun_ready');
}
frame 22 {
if (_level0.weapons[1] == '') {
gotoAndStop('unarmed');
} else {
gotoAndStop('gun_ready');
}
}
frame 31 {
stop();
}
frame 32 {
gotoAndPlay('rifle_fire');
}
frame 35 {
gotoAndStop('gun_ready');
}
frame 40 {
_parent._parent.box._xscale = 200;
}
frame 42 {
_parent._parent.box._xscale = 100;
}
frame 46 {
gotoAndStop('gun_ready');
}
frame 47 {
_parent._parent.box._xscale = 100;
}
frame 47 {
gotoAndStop('gun_ready');
}
frame 120 {
gotoAndStop('zombie');
}
}
movieClip 364 {
}
movieClip 365 {
}
movieClip 367 survivor {
frame 1 {
gotoAndStop(_level0.mapVariation % 4 + 1);
if (_level0.clueTaken[_level0.locNum]) {
pip._visible = false;
}
}
}
movieClip 369 daughter_head {
}
movieClip 371 daughter_arm_top {
}
movieClip 373 survivor_head_002 {
}
movieClip 375 survivor_head_003 {
}
movieClip 377 survivor_head_004 {
}
movieClip 379 survivor_head_005 {
}
movieClip 381 survivor_head_006 {
}
movieClip 383 survivor_head_007 {
}
movieClip 385 survivor_head_008 {
}
movieClip 387 survivor_head_009 {
}
movieClip 389 survivor_head_010 {
}
movieClip 391 survivor_head_011 {
}
movieClip 393 survivor_head_012 {
}
movieClip 395 survivor_head_013 {
}
movieClip 397 survivor_head_014 {
}
movieClip 399 survivor_head_015 {
}
movieClip 401 survivor_head_016 {
}
movieClip 403 survivor_head_017 {
}
movieClip 405 survivor_head_018 {
}
movieClip 407 survivor_head_019 {
}
movieClip 409 survivor_head_020 {
}
movieClip 411 survivor_head_021 {
}
movieClip 413 survivor_head_022 {
}
movieClip 415 {
}
movieClip 417 survivor_head_023 {
instance shader of movieClip 415 {
onClipEvent (load) {
_level0.generateRandomColor(this, randbtwn(150, 200), randbtwn(150, 200), randbtwn(150, 200));
}
}
}
movieClip 419 {
}
movieClip 421 survivor_torso_002 {
}
movieClip 422 survivor_arm_top_002 {
}
movieClip 424 survivor_torso_003 {
}
movieClip 425 survivor_arm_top_003 {
}
movieClip 427 {
}
movieClip 429 survivor_torso_004 {
}
movieClip 431 {
}
movieClip 433 survivor_arm_top_004 {
}
movieClip 435 {
}
movieClip 437 survivor_torso_005 {
}
movieClip 439 {
}
movieClip 441 survivor_arm_top_005 {
}
movieClip 443 {
}
movieClip 445 survivor_torso_006 {
}
movieClip 447 {
}
movieClip 448 survivor_arm_top_006 {
}
movieClip 451 roomdeco_18 {
frame 1 {
stop();
}
}
movieClip 458 burning_head {
frame 9 {
if (burnloop == undefined) {
burnloop = 0;
}
burnloop += 1;
if (burnloop < 7) {
gotoAndPlay(1);
} else {
gotoAndStop(10);
}
}
}
movieClip 465 burning_torso {
frame 9 {
if (burnloop == undefined) {
burnloop = 0;
}
burnloop += 1;
if (burnloop < 7) {
gotoAndPlay(1);
} else {
gotoAndStop(10);
}
}
}
movieClip 467 burning_leg_btm {
}
movieClip 469 burning_leg_top {
}
movieClip 471 burning_arm_top {
}
movieClip 476 {
}
movieClip 477 {
}
movieClip 478 molotov {
instance of movieClip 477 {
onClipEvent (enterFrame) {
this._rotation += 24;
}
}
}
movieClip 480 frag {
}
movieClip 482 fx_fire {
frame 11 {
removeMovieClip(this);
}
}
movieClip 483 fire_lite {
}
movieClip 485 survivor_head_025 {
}
movieClip 487 survivor_head_026 {
}
movieClip 489 survivor_head_027 {
}
movieClip 491 survivor_head_028 {
}
movieClip 493 survivor_head_029 {
}
movieClip 495 survivor_head_030 {
}
movieClip 496 survivor_head_024 {
}
movieClip 498 survivor_head_033 {
}
movieClip 500 survivor_head_032 {
}
movieClip 502 survivor_head_031 {
}
movieClip 504 survivor_head_034 {
}
movieClip 506 {
}
movieClip 508 survivor_torso_007 {
}
movieClip 510 survivor_arm_top_007 {
}
movieClip 512 terrorist_torso {
}
movieClip 513 terrorist_arm_top {
}
movieClip 515 terrorist_head_002 {
}
movieClip 517 terrorist_head_001 {
}
movieClip 519 terrorist_leg_btm_001 {
}
movieClip 521 terrorist_leg_top_001 {
}
movieClip 523 terrorist_head_003 {
}
movieClip 525 convict_torso {
}
movieClip 527 convict_leg_btm_001 {
}
movieClip 529 convict_leg_top_001 {
}
movieClip 531 convict_head_001 {
}
movieClip 533 convict_arm_top {
}
movieClip 537 deco_008 {
instance of movieClip 256 {
onClipEvent (load) {
this._rotation = -_level0.randbtwn(20, 160);
}
}
}
movieClip 539 deco_009 {
}
movieClip 540 {
}
movieClip 541 {
frame 1 {
stop();
}
frame 2 {
if (_parent.walk) {
gotoAndPlay('walk');
}
}
frame 18 {
if (_parent.dying) {
gotoAndPlay('collapse1');
} else {
if (_parent.walk) {
gotoAndPlay('walk');
} else {
gotoAndPlay('run');
}
}
}
frame 23 {
_parent.rising = false;
stop();
}
frame 24 {
if (!_parent.crouch) {
gotoAndPlay('rise');
}
}
frame 27 {
if (!_parent.crouch) {
gotoAndPlay('rise');
}
}
frame 30 {
if (!_parent.crouch) {
gotoAndPlay('rise');
}
}
frame 33 {
if (!_parent.crouch) {
gotoAndPlay('rise');
}
}
frame 36 {
if (!_parent.crouch) {
gotoAndPlay(1);
} else {
gotoAndPlay('crouchwalk');
}
}
frame 41 {
_parent.rising = false;
gotoAndStop(1);
}
frame 42 {
if (!_parent.walk) {
gotoAndPlay('run');
}
}
frame 62 {
if (_parent.walk) {
gotoAndPlay('walk');
} else {
gotoAndPlay('run');
}
}
frame 73 {
stop();
}
frame 84 {
stop();
}
}
movieClip 542 {
frame 1 {
stop();
}
}
movieClip 543 body {
frame 10 {
gotoAndPlay(1);
}
frame 24 {
gotoAndPlay('crouchloop');
}
frame 30 {
this.crouch = false;
gotoAndPlay(1);
}
frame 41 {
stop();
}
frame 52 {
stop();
}
}
movieClip 546 pip_door {
frame 1 {
stop();
}
}
movieClip 548 mutant_torso_001 {
}
movieClip 550 zombie_head_001 {
}
movieClip 553 {
}
movieClip 556 deco_002 {
frame 1 {
stop();
}
}
movieClip 558 {
}
movieClip 559 pickup {
}
movieClip 561 car_004 {
}
movieClip 564 car_005 {
}
movieClip 567 car_006 {
}
movieClip 569 {
frame 1 {
stop();
if (_level0.mapVariation % 54 == 0) {
_level0.mapVariation += 1;
}
gotoAndStop(_level0.mapVariation % 6 + 1);
_level0.mapVariation += _level0.mapVariation % 9;
}
}
movieClip 570 {
}
movieClip 571 roomdeco_19 {
frame 1 {
stop();
}
}
movieClip 573 deco_012 {
frame 1 {
stop();
}
}
movieClip 576 {
}
movieClip 579 gene_003 {
}
movieClip 583 {
}
movieClip 585 deco_013 {
}
movieClip 587 mutant_leg_btm_001 {
}
movieClip 589 mutant_leg_top_001 {
}
movieClip 593 {
frame 2 {
stop();
}
}
movieClip 601 {
frame 1 {
stop();
}
}
movieClip 623 {
frame 1 {
stop();
}
}
movieClip 624 bbat {
}
movieClip 625 fireaxe {
}
movieClip 626 sword {
}
movieClip 627 wrench {
}
movieClip 628 shovel {
}
movieClip 629 hockey {
}
movieClip 630 guitar {
}
movieClip 631 cleaver {
}
movieClip 633 pipe {
}
movieClip 635 nightstick {
}
movieClip 636 plank {
}
movieClip 637 broom {
}
movieClip 638 teddy {
}
movieClip 640 umbrella {
}
movieClip 642 sledge {
}
movieClip 644 machete {
}
movieClip 645 pan {
}
movieClip 646 loaf {
}
movieClip 648 vase {
}
movieClip 650 fireext {
}
movieClip 651 crowbar {
}
movieClip 652 b92 {
frame 1 {
stop();
}
}
movieClip 653 deagle {
}
movieClip 654 357 {
}
movieClip 656 m16 {
frame 1 {
stop();
}
}
movieClip 658 ak47 {
}
movieClip 660 mp5 {
}
movieClip 662 m4 {
}
movieClip 664 uzi {
}
movieClip 666 m12 {
}
movieClip 668 spas {
}
movieClip 671 {
}
movieClip 673 chainsaw {
}
movieClip 674 gib_head {
}
movieClip 675 gib_arm {
}
movieClip 677 zombie_head_002 {
}
movieClip 679 zombie_head_003 {
}
movieClip 681 zombie_head_004 {
}
movieClip 683 zombie_head_005 {
}
movieClip 685 zombie_head_006 {
}
movieClip 687 zombie_head_007 {
}
movieClip 690 {
}
movieClip 697 {
}
movieClip 698 {
}
movieClip 700 intro_scene2 {
}
movieClip 707 intro_scene3 {
}
movieClip 712 intro_scene4 {
}
movieClip 717 {
}
movieClip 719 {
}
movieClip 721 car_001 {
}
movieClip 723 intro_scene5 {
}
movieClip 724 car_002 {
}
movieClip 726 {
}
movieClip 728 {
}
movieClip 730 car_003 {
}
movieClip 737 {
frame 1 {
stop();
}
}
movieClip 738 pickup2 {
}
movieClip 739 {
}
movieClip 740 roomdeco_20 {
}
movieClip 742 rpg {
}
movieClip 744 {
}
movieClip 746 bullet_RPG {
}
movieClip 750 {
}
movieClip 752 fx_bigexplosion {
frame 30 {
stop();
removeMovieClip(this);
}
}
movieClip 754 shears {
}
// unknown tag 88 length 74
movieClip 757 {
}
movieClip 761 {
frame 204 {
_level0.nextFrame();
}
}
movieClip 763 deco_011 {
}
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';
}
frame 4 {
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 += 1;
pda.txtbox.htmlText = questText[curQuest];
pda.txt2 = 'Entry #' + curQuest + '/' + (maxQuest - 1);
}
function createCity() {
evacSure = randbtwn(1, 25);
var v3 = 1;
while (v3 <= 25) {
var v2 = 5;
thisGroup = '';
if (gridTypes[v3] == 'base') {
thisGroup = 'cordon';
}
streetGroups[v3] = thisGroup;
var v1 = block_prev + 1;
while (v1 <= block_prev + v2) {
daughterHere = false;
if (v1 == daughterStreet) {
daughterHere = true;
}
createStreet(v1);
if (v1 < block_prev + v2) {
map_NumR[v1] = v1 + 1;
} else {
map_NumR[v1] = block_prev + 1;
}
if (v1 > block_prev + 1) {
map_NumL[v1] = v1 - 1;
} else {
map_NumL[v1] = block_prev + v2;
}
if (gridTypes[v3] == 'base') {
streetEliminated[v1] = true;
}
++v1;
}
block_prev += v2;
++v3;
}
terrorRoom1 = randbtwn(1, 3);
terrorRoom2 = terrorRoom1;
for (;;) {
if (!(terrorRoom2 == daughterRoom || terrorRoom2 == terrorRoom1)) break;
terrorRoom2 = randbtwn(20, roomsCreated);
}
terrorRoom3 = terrorRoom2;
for (;;) {
if (!(terrorRoom3 == daughterRoom || terrorRoom3 == terrorRoom2 || terrorRoom3 == terrorRoom1)) break;
terrorRoom3 = randbtwn(20, roomsCreated);
}
var v4 = 1;
while (v4 <= roomsCreated) {
createRoom(v4);
++v4;
}
terrorRoom1 += 150;
terrorRoom2 += 150;
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;
} else {
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);
while (tilesDone < 10) {
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) {
specialAdded = true;
} else {
decoNum = 1;
}
}
if (decoNum == 19) {
if (!special2Added) {
special2Added = true;
} else {
decoNum = 1;
}
}
addMapElement(150 + roomnum, 'roomdeco_' + dd(decoNum), tilesDone * 50);
}
}
}
}
}
}
}
}
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 v4 = false;
var v3 = false;
var v2 = false;
var v6 = false;
var v7 = false;
var v5 = false;
while (tilesDone < 11) {
if (streetnum == 61) {
addMapElement(streetnum, 'intro_scene1', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
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 += 11;
} else {
if (streetnum == 63) {
addMapElement(streetnum, 'intro_scene3', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
tilesDone += 11;
v2 = 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 += 1;
unopenedRooms[streetnum] += 1;
mapRoomNum[streetnum][tilesDone + 4] = 150 + roomsCreated;
addMapElement(streetnum, 'entrypoint1', 150);
roomsCreated += 1;
unopenedRooms[streetnum] += 1;
mapRoomNum[streetnum][tilesDone + 10] = 150 + roomsCreated;
addMapElement(streetnum, 'entrypoint2', 450);
tilesDone += 11;
} else {
if (streetnum == 65) {
addMapElement(streetnum, 'intro_scene5', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 11);
tilesDone += 11;
}
}
}
}
}
if (tilesDone >= 3 && !v2 && streetnum % 5 == 3) {
addMapElement(streetnum, 'subway_001', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 2;
v2 = true;
}
if (tilesDone >= 0 && !v6 && streetnum % 5 == 1 && thisGroup == 'cordon' || !v6 && randbtwn(1, 80) <= 1 && thisGroup != 'cordon') {
addMapElement(streetnum, 'deco_008', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 6;
v6 = true;
}
bPlaced = 0;
if (!v3) {
if (thisGroup == 'cordon') {
if (randbtwn(0, 10) <= 3 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_007', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone += 1;
}
}
if (!v7 && streetnum % 5 == 3 && randbtwn(1, 12) == 2 && tilesDone <= 9) {
addMapElement(streetnum, 'deco_011', tilesDone * 50);
setHeight(streetnum, tilesDone, true, false, 2);
tilesDone += 2;
v7 = true;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_003', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 3);
tilesDone += 3;
}
if (randbtwn(0, 12) <= 2 && !v5 && bPlaced < 2) {
bPlaced += 1;
v5 = true;
addMapElement(streetnum, 'deco_002', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone += 1;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_004', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone += 1;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_005', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone += 1;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_009', tilesDone * 50);
setHeight(streetnum, tilesDone, true, true, 1);
tilesDone += 1;
}
if (randbtwn(0, 12) <= 2 && !v5 && bPlaced < 2) {
bPlaced += 1;
v5 = true;
addMapElement(streetnum, 'deco_010', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 1);
tilesDone += 1;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_012', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 3);
tilesDone += 3;
}
if (randbtwn(0, 12) <= 2 && bPlaced < 2) {
bPlaced += 1;
addMapElement(streetnum, 'deco_013', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 4);
tilesDone += 4;
}
}
if (tilesDone >= 3 && !v2 && streetnum % 5 == 3) {
addMapElement(streetnum, 'subway_001', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 2;
v2 = true;
}
if (streetnum == daughterStreet) {
v3 = true;
}
if (!v3) {
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 += 1;
}
v3 = 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 += 1;
unopenedRooms[streetnum] += 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && daughterRoom == 0) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone += 4;
v4 = true;
v3 = false;
}
if (tilesDone >= 3 && !v2 && streetnum % 5 == 3) {
addMapElement(streetnum, 'subway_001', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 2;
v2 = 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 += 1;
unopenedRooms[streetnum] += 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && daughterRoom == 0) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone += 3;
v4 = true;
v3 = false;
}
if (tilesDone >= 3 && !v2 && streetnum % 5 == 3) {
addMapElement(streetnum, 'subway_001', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 2;
v2 = 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 += 1;
unopenedRooms[streetnum] += 1;
mapRoomNum[streetnum][tilesDone + 3] = 150 + roomsCreated;
roomstreet[roomsCreated] = streetnum;
if (daughterHere && daughterRoom == 0) {
daughterRoom = 150 + roomsCreated;
}
}
tilesDone += 5;
v4 = true;
v3 = false;
}
if (v4) {
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 += 1;
}
v4 = false;
}
if (tilesDone >= 3 && !v2 && streetnum % 5 == 3) {
addMapElement(streetnum, 'subway_001', tilesDone * 50);
setHeight(streetnum, tilesDone, false, false, 2);
tilesDone += 2;
v2 = 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 v1 = tilenum + 1;
while (v1 <= tilenum + numtiles) {
mapHeightMap2[streetnum][v1] = tilelevel2;
mapHeightMap3[streetnum][v1] = tilelevel3;
++v1;
}
}
function addMapElement(mapnum, elname, elpos) {
var v1 = mapElement[mapnum].length;
mapElement[mapnum][v1] = elname;
mapElPosition[mapnum][v1] = 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.\'');
} else {
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.\'');
} else {
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 v3 = spitOne(streetClues);
if (clueNum > 1) {
var v2 = spitOne(streetClues);
}
if (clueNum > 2) {
var v1 = spitOne(streetClues);
}
fsentence = sentence1[randbtwn(0, sentence1.length - 1)];
fsentence += sentence2[randbtwn(0, sentence2.length - 1)];
fsentence += sentence3[randbtwn(0, sentence3.length - 1)];
fsentence += '<font color=\'#00FF00\'>';
if (clueNum > 2) {
fsentence += v1 + '</font>, <font color=\'#00FF00\'>';
}
if (clueNum > 1) {
fsentence += v2 + '</font> or <font color=\'#00FF00\'>';
}
fsentence += v3 + '</font>.';
addPda(fsentence);
ss = 1;
while (ss <= 125) {
if (map_mapName[ss] == v3) {
streetEliminated[ss] = true;
}
if (clueNum > 1 && map_mapName[ss] == v2) {
streetEliminated[ss] = true;
}
if (clueNum > 2 && map_mapName[ss] == v1) {
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 += 1;
if (!surv1.alive) {
survBox = surv1;
} else {
if (!surv2.alive) {
survBox = surv2;
} else {
if (!surv2.alive) {
survBox = surv3;
}
}
}
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)]);
} else {
makeSpeech(pchar, 'I\'d better get the rest to safety first.');
}
}
}
var nerdook_skip = 0;
_level0.onEnterFrame = function () {
nerdook_skip += 1;
if (nerdook_skip >= 80) {
gotoAndStop('intro');
}
if (Key.isDown(32)) {
if (!pds) {
pds = true;
if (_level0.pct == 100) {
gotoAndStop('intro');
}
}
} else {
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 += 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 += 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;
}
frame 4 {
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 v1 = _level0.blackbar['pip' + pchar.hp];
v1.gotoAndStop(3);
}
function addHP() {
tp = 1;
while (tp <= 7) {
var v1 = _level0.blackbar['pip' + tp];
if (tp > pchar_maxhp) {
v1.gotoAndStop(4);
} else {
if (tp > pchar_hp) {
v1.gotoAndStop(3);
} else {
v1.gotoAndStop(1);
}
}
++tp;
}
}
function showHint(txt) {
addPda(txt);
showPda();
}
function elimBlock() {
blocknum = randbtwn(2, 25);
str_0 = (blocknum - 1) * 5;
var v2 = 'any street around <font color=\'#00FF00\'>' + map_mapName[str_0 + 3] + ' Station</font>.';
var v1 = 1;
while (v1 <= 5) {
streetEliminated[str_0 + v1] = true;
++v1;
}
return v2;
}
function newClues() {
var v4;
v4 = '';
clueNum = 3;
if (clueNum > streetClues.length) {
clueNum = streetClues.length;
}
var v3 = spitOne(streetClues);
if (clueNum > 1) {
var v2 = spitOne(streetClues);
}
if (clueNum > 2) {
var v1 = spitOne(streetClues);
}
if (clueNum > 2) {
v4 += v1 + ', ';
}
if (clueNum > 1) {
v4 += v2 + ' or ';
}
v4 += v3 + '.';
ss = 1;
while (ss <= 125) {
if (map_mapName[ss] == v3) {
streetEliminated[ss] = true;
}
if (clueNum > 1 && map_mapName[ss] == v2) {
streetEliminated[ss] = true;
}
if (clueNum > 2 && map_mapName[ss] == v1) {
streetEliminated[ss] = true;
}
++ss;
}
return v4;
}
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] + '.' + '\n' + '\n' + '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 v3 = Math.ceil(locNum / 5);
var v1 = (v3 - 1) * 5;
if (!gridStatus[v1 + 1] && !gridStatus[v1 + 2] && !gridStatus[v1 + 3] && !gridStatus[v1 + 4] && !gridStatus[v1 + 5]) {
var v2 = 'I\'ve successfully collected all the letters in this area. ';
qDone += 1;
v2 += '\rI discovered that that Anna was not seen at ' + elimBlock();
addPda(v2);
showPda();
}
}
function collectSupplies() {
gridStatus[locNum] = false;
var v3 = Math.ceil(locNum / 5);
var v1 = (v3 - 1) * 5;
if (!gridStatus[v1 + 1] && !gridStatus[v1 + 2] && !gridStatus[v1 + 3] && !gridStatus[v1 + 4] && !gridStatus[v1 + 5]) {
var v2 = 'I\'ve successfully collected all the supplies in the area. ';
qDone += 1;
v2 += '\rSome survivors inform me that that Anna was not seen at ' + elimBlock();
addPda(v2);
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 += 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 += 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 += 1;
}
function newMap(mapNum) {
locNum = mapNum;
roomRefreshed = false;
subwaySaid = false;
lastSurvivor = undefined;
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 v5 = 0;
while (v5 <= 12) {
streetTile[v5] = '';
streetLevel1[v5] = true;
streetLevel2[v5] = mapHeightMap2[mapNum][v5];
streetLevel3[v5] = mapHeightMap3[mapNum][v5];
++v5;
}
var v4 = 0;
while (v4 < mapElement[mapNum].length) {
var v1 = spawnProp(mapElement[mapNum][v4], mapElPosition[mapNum][v4], 350, 10);
generateRandomColor(v1.shader, clrR - 50, clrG - 50, clrB - 50);
generateRandomColor(v1.shader_dark, mRn((clrR - 50) / 3), mRn((clrG - 50) / 3), mRn((clrB - 50) / 3));
var v2 = Math.ceil((mapElPosition[mapNum][v4] + 1) / 50);
if (mapElement[mapNum][v4] == 'stair_001') {
streetTile[v2] = 'link21';
} else {
if (mapElement[mapNum][v4] == 'intro_scene1') {
streetTile[v2 + 3] = 'evac';
streetTile[v2 + 4] = 'evac';
streetTile[v2 + 5] = 'evac';
} else {
if (mapElement[mapNum][v4] == 'intro_scene2') {
streetTile[v2 + 3] = 'link21';
streetTile[v2 + 4] = 'melee';
roomItems[v2 + 4] = 'crowbar';
meleeBox = v1;
meleeBox.weaponName = 'Crowbar';
streetTile[v2 + 7] = 'weapon';
roomItems[v2 + 7] = 'b92';
gunBox = v1.gunBox;
gunBox.weaponName = 'Handgun';
streetTile[v2 + 9] = 'link21';
} else {
if (mapElement[mapNum][v4] == 'intro_scene4') {
streetTile[v2 + 5] = 'bin';
} else {
if (mapElement[mapNum][v4] == 'intro_scene5') {
streetTile[v2 + 8] = 'subway';
streetTile[v2 + 9] = 'subway';
} else {
if (mapElement[mapNum][v4] == 'stair_002') {
streetTile[v2] = 'link32';
} else {
if (mapElement[mapNum][v4] == 'rope_ladder1') {
streetTile[v2] = 'link21';
} else {
if (mapElement[mapNum][v4] == 'rope_ladder2') {
streetTile[v2] = 'link32';
} else {
if (mapElement[mapNum][v4] == 'deco_011') {
streetTile[v2] = 'board';
streetTile[v2 + 1] = 'board';
} else {
if (mapElement[mapNum][v4] == 'deco_002') {
bBox = v1;
streetTile[v2] = 'bin';
if (scavenged[mapNum]) {
bBox.gotoAndStop(2);
}
} else {
if (mapElement[mapNum][v4] == 'deco_006') {
streetTile[v2 + 1] = 'evac';
} else {
if (mapElement[mapNum][v4] == 'deco_007') {
streetTile[v2] = 'evac_sign';
} else {
if (mapElement[mapNum][v4] == 'deco_008') {
streetTile[v2 + 2] = 'special';
} else {
if (mapElement[mapNum][v4] == 'deco_010') {
bBox = v1;
streetTile[v2] = 'bin';
if (scavenged[mapNum]) {
bBox.gotoAndStop(2);
}
} else {
if (mapElement[mapNum][v4] == 'subway_001') {
streetTile[v2] = 'subway';
streetTile[v2 + 1] = 'subway';
} else {
if (mapElement[mapNum][v4] == 'entrypoint1') {
streetTile[v2] = 'entrypoint1';
addPip(v2, 1);
} else {
if (mapElement[mapNum][v4] == 'entrypoint2') {
streetTile[v2] = 'entrypoint2';
addPip(v2, 2);
} else {
if (mapElement[mapNum][v4] == 'entrypoint3') {
streetTile[v2] = 'entrypoint3';
addPip(v2, 3);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
++v4;
}
spawnPchar();
numZombies = map_zombies[mapNum];
respawnAll(mapNum);
if (numZombies == 0) {
rescueSurvivors();
}
} else {
subway_indicator.gotoAndStop(3);
if (!streetExplored[mapNum]) {
streetExplored[mapNum] = true;
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 v6 = spawnProp('room01', 0, pcharY, 10);
generateRandomColor(v6.shader, clrR, clrG, clrB);
var v5 = 0;
while (v5 <= 11) {
streetTile[v5] = '';
streetLevel1[v5] = false;
streetLevel2[v5] = false;
streetLevel3[v5] = false;
if (v5 >= 2 && v5 <= 10) {
if (pcharY == 350) {
streetLevel1[v5] = true;
streetTile[6] = 'entrypoint1';
v6.doorway.gotoAndStop(1);
}
if (pcharY == 250) {
streetLevel2[v5] = true;
streetTile[6] = 'entrypoint2';
v6.doorway.gotoAndStop(2);
}
if (pcharY == 150) {
streetLevel3[v5] = true;
streetTile[6] = 'entrypoint3';
v6.doorway.gotoAndStop(2);
}
}
++v5;
}
spawnPchar();
numZombies = map_zombies[mapNum];
respawnAll(roomNum);
if (numZombies == 0) {
rescueSurvivors();
}
var v4 = 0;
while (v4 < mapElement[roomNum].length) {
var v1 = spawnProp(mapElement[roomNum][v4], mapElPosition[roomNum][v4], pcharY, 10);
generateRandomColor(v1.shader, clrR - 50, clrG - 50, clrB - 50);
generateRandomColor(v1.shader_dark, mRn((clrR - 50) / 3), mRn((clrG - 50) / 3), mRn((clrB - 50) / 3));
var v2 = Math.ceil((mapElPosition[roomNum][v4] + 1) / 50);
if (mapElement[roomNum][v4] == 'roomdeco_12') {
specialBox = v1;
streetTile[v2] = 'weapon';
weaponType = mapVariation % 11;
if (weaponType == 0) {
v1.weaponName = 'Handgun';
roomItems[v2] = 'b92';
} else {
if (weaponType == 1) {
v1.weaponName = 'Submachine Gun';
roomItems[v2] = 'mp5';
} else {
if (weaponType == 2) {
v1.weaponName = 'Combat Rifle';
roomItems[v2] = 'm16';
} else {
if (weaponType == 3) {
v1.weaponName = 'Assault Rifle';
roomItems[v2] = 'ak47';
} else {
if (weaponType == 4) {
v1.weaponName = 'Combat Shotgun';
roomItems[v2] = 'm4';
} else {
if (weaponType == 5) {
v1.weaponName = 'Light SMG';
roomItems[v2] = 'uzi';
} else {
if (weaponType == 6) {
v1.weaponName = 'Shotgun';
roomItems[v2] = 'm12';
} else {
if (weaponType == 7) {
v1.weaponName = 'Auto Shotgun';
roomItems[v2] = 'spas';
} else {
if (weaponType == 8) {
v1.weaponName = 'Heavy Pistol';
roomItems[v2] = 'deagle';
} else {
if (weaponType == 9) {
v1.weaponName = 'Revolver';
roomItems[v2] = '357';
} else {
if (weaponType == 10) {
v1.weaponName = 'RPG Launcher';
roomItems[v2] = 'rpg';
}
}
}
}
}
}
}
}
}
}
}
v1.weapon.attachMovie(roomItems[v2], 'weapon', 0);
gunBox = v1;
} else {
if (mapElement[roomNum][v4] == 'roomdeco_20') {
specialBox = v1;
streetTile[v2] = 'weapon';
v1.weaponName = 'Molotov Cocktail';
roomItems[v2] = 'molotov';
gunBox = v1;
} else {
if (mapElement[roomNum][v4] == 'roomdeco_19') {
specialBox = v1;
streetTile[v2] = 'melee';
weaponType = mapVariation % 23;
if (weaponType == 0) {
v1.weaponName = 'Fire Axe';
roomItems[v2] = 'fireaxe';
} else {
if (weaponType == 1) {
v1.weaponName = 'Baseball bat';
roomItems[v2] = 'bbat';
} else {
if (weaponType == 2) {
v1.weaponName = 'Samurai Sword';
roomItems[v2] = 'sword';
} else {
if (weaponType == 3) {
v1.weaponName = 'Wrench';
roomItems[v2] = 'wrench';
} else {
if (weaponType == 4) {
v1.weaponName = 'Shovel';
roomItems[v2] = 'shovel';
} else {
if (weaponType == 5) {
v1.weaponName = 'Hockey Stick';
roomItems[v2] = 'hockey';
} else {
if (weaponType == 6) {
v1.weaponName = 'Electric Guitar';
roomItems[v2] = 'guitar';
} else {
if (weaponType == 7) {
v1.weaponName = 'Meat Cleaver';
roomItems[v2] = 'cleaver';
} else {
if (weaponType == 8) {
v1.weaponName = 'Lead Pipe';
roomItems[v2] = 'pipe';
} else {
if (weaponType == 9) {
v1.weaponName = 'Nightstick';
roomItems[v2] = 'nightstick';
} else {
if (weaponType == 10) {
v1.weaponName = 'Wooden Broom';
roomItems[v2] = 'broom';
} else {
if (weaponType == 11) {
v1.weaponName = 'Wooden Plank';
roomItems[v2] = 'plank';
} else {
if (weaponType == 12) {
v1.weaponName = 'Teddy Bear';
roomItems[v2] = 'teddy';
} else {
if (weaponType == 13) {
v1.weaponName = 'Umbrella';
roomItems[v2] = 'umbrella';
} else {
if (weaponType == 14) {
v1.weaponName = 'Sledgehammer';
roomItems[v2] = 'sledge';
} else {
if (weaponType == 15) {
v1.weaponName = 'Machete';
roomItems[v2] = 'machete';
} else {
if (weaponType == 16) {
v1.weaponName = 'Frying Pan';
roomItems[v2] = 'pan';
} else {
if (weaponType == 17) {
v1.weaponName = 'French Loaf';
roomItems[v2] = 'loaf';
} else {
if (weaponType == 18) {
v1.weaponName = 'Ming Vase';
roomItems[v2] = 'vase';
} else {
if (weaponType == 19) {
v1.weaponName = 'Fire Extinguisher';
roomItems[v2] = 'fireext';
} else {
if (weaponType == 20) {
v1.weaponName = 'Crowbar';
roomItems[v2] = 'crowbar';
} else {
if (weaponType == 21) {
v1.weaponName = 'Chainsaw';
roomItems[v2] = 'chainsaw';
} else {
if (weaponType == 22) {
v1.weaponName = 'Garden Shears';
roomItems[v2] = 'shears';
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
v1.weapon.attachMovie(roomItems[v2], 'weapon', 0);
meleeBox = v1;
} else {
if (mapElement[roomNum][v4] == 'roomdeco_07' || mapElement[roomNum][v4] == 'roomdeco_13') {
streetTile[v2] = 'bin';
if (scavenged[roomNum]) {
v1.gotoAndStop('empty');
}
bBox = v1;
} else {
if (mapElement[roomNum][v4] == 'roomdeco_10') {
streetTile[v2] = 'vending';
} else {
if (mapElement[roomNum][v4] == 'roomdeco_17') {
specialBox = v1;
if (scavenged[roomNum]) {
v1.gotoAndStop(2);
}
streetTile[v2] = 'medkit';
} else {
if (mapElement[roomNum][v4] == 'roomdeco_18') {
specialBox = v1;
streetTile[v2] = 'special';
} else {
if (mapElement[roomNum][v4] == 'survivor') {
sBox = v1;
if (roomNum == daughterRoom) {
if (!daughterFound) {
streetTile[v2] = '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 {
sBox.removeMovieClip();
}
} else {
if (roomNum == terrorRoom1 || roomNum == terrorRoom2 || roomNum == terrorRoom3) {
if (roomNum == terrorRoom1) {
streetTile[v2] = 'terror1';
sBox.head.attachMovie('terrorist_head_001', 'head', 0);
} else {
if (roomNum == terrorRoom2) {
streetTile[v2] = 'terror2';
sBox.head.attachMovie('terrorist_head_002', 'head', 0);
} else {
if (roomNum == terrorRoom3) {
streetTile[v2] = '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[v2] = '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);
}
}
}
}
}
}
}
}
}
}
++v4;
}
}
}
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 v2 = Math.ceil((anyobj._x + 1) / 50);
var v3 = 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;
}
} else {
if (!_level0['streetLevel' + v3][v2]) {
anyobj._y = 350;
}
}
}
function spawnZombie(spawn_x, spawn_y) {
var v1 = spawnObject('body', 'zombie', spawn_x, spawn_y, 500);
sTorso = 0;
v1.torso.gotoAndStop('zombie');
v1.torso.torso.attachMovie('zombie_torso_001', 'torso', 0);
v1.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);
v1.sTorso = sTorso;
v1.torso.torso.attachMovie('survivor_torso_0' + dd(sTorso), 'torso', 0);
v1.torso.arm.arm1.attachMovie('survivor_arm_top_0' + dd(sTorso), 'arm1', 0);
generateRandomColor(v1.torso.arm.arm1.arm1.shader, scR, scG, scB);
generateRandomColor(v1.torso.torso.torso.shader, scR, scG, scB);
}
legNum = randbtwn(1, 3);
v1.legNum = legNum;
v1.legs.legR1.attachMovie('human_leg_top_00' + legNum, 'leg', 0);
v1.legs.legR2.attachMovie('human_leg_btm_00' + legNum, 'leg', 0);
v1.legs.legL1.attachMovie('human_leg_top_00' + legNum, 'leg', 0);
v1.legs.legL2.attachMovie('human_leg_btm_00' + legNum, 'leg', 0);
v1.headNum = randbtwn(1, 7);
v1.torso.head.attachMovie('zombie_head_0' + dd(v1.headNum), 'head', 0);
v1.torso.arm.gotoAndStop('zombie');
v1.walk = true;
v1.legs.gotoAndStop('walk');
v1.ranged = false;
v1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
v1._xscale = -100;
}
v1.xspeed = randbtwn(0, 1) * v1._xscale / 100;
v1.hp = 1;
v1.owner = 2;
v1.hit = 0;
v1.cd_fire = 0;
v1.targetY = 0;
v1.handMutate = false;
if (locNum != 63) {
if (randbtwn(1, 15) <= 1) {
v1.torso.torso.attachMovie('mutant_torso_001', 'torso', 0);
v1.hp = 3;
}
if (randbtwn(1, 15) <= 1) {
v1.torso.arm.arm2.gotoAndStop(2);
v1.handMutate = true;
}
if (randbtwn(1, 15) <= 1) {
v1.legs.legR1.attachMovie('mutant_leg_top_001', 'leg', 0);
v1.legs.legR2.attachMovie('mutant_leg_btm_001', 'leg', 0);
v1.legs.legL1.attachMovie('mutant_leg_top_001', 'leg', 0);
v1.legs.legL2.attachMovie('mutant_leg_btm_001', 'leg', 0);
v1.legMutate = true;
}
}
if (v1._x < pchar._x) {
if (pchar._x - v1._x <= 100) {
v1._x -= 100;
}
}
if (v1._x > pchar._x) {
if (v1._x - pchar._x <= 100) {
v1._x += 100;
}
}
checkFloor(v1);
return v1;
}
function spawnPickup(spawn_x, spawn_y, anyroom) {
var v1 = spawnObject('pickup', 'pickup', spawn_x, spawn_y, 500);
checkFloor(v1);
v1.dying = false;
v1.owner = 1;
return v1;
}
function spawnPickup2(spawn_x, spawn_y, anyroom) {
var v1 = spawnObject('pickup2', 'pickup', spawn_x, spawn_y, 500);
checkFloor(v1);
v1.dying = false;
v1.owner = 1;
return v1;
}
function spawnFollower(folnum, spawn_x, spawn_y, anyroom) {
var v1 = spawnObject('body', 'human', spawn_x + 10 * folnum, spawn_y, 500);
currentGrid = Math.ceil(anyroom / 5);
currentType = gridTypes[currentGrid];
var v2 = _level0['surv' + folnum];
var v11 = v2.sHead;
var v6 = v2.sTorso;
var v3 = v2.legNum;
var v5 = v2.cR;
var v4 = v2.cG;
var v7 = v2.cB;
var v8 = v2.weapon;
var v9 = v2.weaponName;
var v10 = v2.cName;
v1.torso.torso.attachMovie('survivor_torso_0' + dd(v6), 'torso', 0);
v1.torso.arm.arm1.attachMovie('survivor_arm_top_0' + dd(v6), 'arm1', 0);
v1.legs.legR1.attachMovie('human_leg_top_00' + v3, 'leg', 0);
v1.legs.legR2.attachMovie('human_leg_btm_00' + v3, 'leg', 0);
v1.legs.legL1.attachMovie('human_leg_top_00' + v3, 'leg', 0);
v1.legs.legL2.attachMovie('human_leg_btm_00' + v3, 'leg', 0);
v1.torso.head.attachMovie('survivor_head_0' + dd(v11), 'head', 0);
v1.walk = true;
v1.ranged = true;
v1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
v1._xscale = -100;
}
v1.xspeed = randbtwn(0, 1) * v1._xscale / 100;
v1.hp = 3;
v1.owner = 3;
v1.hit = 0;
v1.cd_fire = 0;
v1.targetY = 0;
v1.weapon = v8;
v1.torso.arm.arm2.gotoAndStop(v8);
v1.weaponName = v9;
v1.torso.arm.arm2.weapon.attachMovie(v9, 'weapon', 0);
v1.torso.arm.gotoAndStop('gun_ready');
generateRandomColor(v1.torso.arm.arm1.arm1.shader, v5, v4, v7);
generateRandomColor(v1.torso.torso.torso.shader, v5, v4, v7);
v1.attachMovie('char_name', 'cname', 315);
v1.cname.txt = v10;
if (v1.weapon == 'melee') {
v1.ranged = false;
}
v1.escort = true;
v2.spawn = v1;
}
function spawnSurvivor(spawn_x, spawn_y, anyroom) {
var v1 = spawnObject('body', 'human', spawn_x, spawn_y, 500);
currentGrid = Math.ceil(anyroom / 5);
currentType = gridTypes[currentGrid];
if (currentType == 'base' || questStreet == anyroom && questType == 'zombies') {
v1.military = true;
v1.torso.torso.attachMovie('military_torso_001', 'torso', 0);
v1.torso.arm.arm1.attachMovie('military_arm_top_001', 'arm1', 0);
legNum = 1;
v1.legs.legR1.attachMovie('military_leg_top_00' + legNum, 'leg', 0);
v1.legs.legR2.attachMovie('military_leg_btm_00' + legNum, 'leg', 0);
v1.legs.legL1.attachMovie('military_leg_top_00' + legNum, 'leg', 0);
v1.legs.legL2.attachMovie('military_leg_btm_00' + legNum, 'leg', 0);
v1.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);
v1.torso.torso.attachMovie('survivor_torso_0' + dd(sTorso), 'torso', 0);
v1.torso.arm.arm1.attachMovie('survivor_arm_top_0' + dd(sTorso), 'arm1', 0);
generateRandomColor(v1.torso.arm.arm1.arm1.shader, scR, scG, scB);
generateRandomColor(v1.torso.torso.torso.shader, scR, scG, scB);
legNum = randbtwn(1, 3);
v1.legs.legR1.attachMovie('human_leg_top_00' + legNum, 'leg', 0);
v1.legs.legR2.attachMovie('human_leg_btm_00' + legNum, 'leg', 0);
v1.legs.legL1.attachMovie('human_leg_top_00' + legNum, 'leg', 0);
v1.legs.legL2.attachMovie('human_leg_btm_00' + legNum, 'leg', 0);
sHead = randbtwn(1, 34);
v1.torso.head.attachMovie('survivor_head_0' + dd(sHead), 'head', 0);
v1.military = false;
v1.cR = scR;
v1.cG = scG;
v1.cB = scB;
v1.sHead = sHead;
v1.sTorso = sTorso;
v1.legNum = legNum;
lastSurvivor = v1;
}
v1.walk = true;
v1.ranged = true;
v1._xscale = 100;
if (randbtwn(0, 10) <= 5) {
v1._xscale = -100;
}
v1.xspeed = randbtwn(0, 1) * v1._xscale / 100;
v1.hp = 3;
v1.owner = 3;
v1.hit = 0;
v1.cd_fire = 0;
v1.targetY = 0;
v1.torso.arm.arm2.gotoAndStop('pistol');
v1.weapon = 'pistol';
v1.weaponName = 'b92';
v1.torso.arm.gotoAndStop('gun_ready');
v1.torso.arm.arm2.weapon.attachMovie(v1.weaponName, 'weapon', 0);
if (!v1.military) {
v1.cName = randomNames[randbtwn(1, randomNames.length - 1)];
v1.attachMovie('char_name', 'cname', 315);
v1.cname.txt = v1.cName;
}
if (randbtwn(1, 10) <= 5) {
v1.torso.arm.arm2.gotoAndStop('rifle');
v1.weapon = 'rifle';
v1.torso.arm.gotoAndStop('rifle_raise');
var v2 = randbtwn(1, 7);
if (v2 == 1) {
v1.weaponName = 'm16';
} else {
if (v2 == 2) {
v1.weaponName = 'ak47';
} else {
if (v2 == 3) {
v1.weaponName = 'mp5';
} else {
if (v2 == 4) {
v1.weaponName = 'm4';
} else {
if (v2 == 5) {
v1.weaponName = 'uzi';
} else {
if (v2 == 6) {
v1.weaponName = 'm12';
} else {
if (v2 == 7) {
v1.weaponName = 'spas';
}
}
}
}
}
}
}
v1.torso.arm.arm2.weapon.attachMovie(v1.weaponName, 'weapon', 0);
} else {
if (randbtwn(1, 10) <= 5) {
var v2 = randbtwn(1, 2);
if (v2 == 1) {
v1.weaponName = 'deagle';
} else {
if (v2 == 2) {
v1.weaponName = '357';
}
}
v1.torso.arm.arm2.weapon.attachMovie(v1.weaponName, 'weapon', 0);
}
}
if (!v1.military) {
if (randbtwn(1, 10) <= 4) {
v1.ranged = false;
v1.weapon = 'melee';
v2 = randbtwn(1, 7);
if (v2 == 1) {
v1.weaponName = 'bbat';
} else {
if (v2 == 2) {
v1.weaponName = 'pipe';
} else {
if (v2 == 3) {
v1.weaponName = 'cleaver';
} else {
if (v2 == 4) {
v1.weaponName = 'plank';
} else {
if (v2 == 5) {
v1.weaponName = 'nightstick';
} else {
if (v2 == 6) {
v1.weaponName = 'sledge';
} else {
if (v2 == 7) {
v1.weaponName = 'machete';
}
}
}
}
}
}
}
v1.torso.arm.arm2.gotoAndStop('melee');
v1.torso.arm.arm2.weapon.attachMovie(v1.weaponName, 'weapon', 0);
}
}
checkFloor(v1);
return v1;
}
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 v2 = randbtwn(1, 7);
if (v2 == 1) {
thisConvict.weaponName = 'm16';
} else {
if (v2 == 2) {
thisConvict.weaponName = 'ak47';
} else {
if (v2 == 3) {
thisConvict.weaponName = 'mp5';
} else {
if (v2 == 4) {
thisConvict.weaponName = 'm4';
} else {
if (v2 == 5) {
thisConvict.weaponName = 'uzi';
} else {
if (v2 == 6) {
thisConvict.weaponName = 'm12';
} else {
if (v2 == 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';
}
}
}
} else {
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 v2 = words['words' + dd(wCount)];
v2.wordOwner = anyped;
v2._x = anyped._x;
v2._y = anyped._y;
v2.txt = anytxt;
wCount += 1;
if (wCount > 5) {
wCount = 0;
}
return v2;
}
function fireBullet(anyped, b_rot, b_dmg) {
var v1 = spawnObject('bullet_blt', 'bullet', anyped._x, anyped._y, 1000);
v1._x += 12 + anyped._xscale / 100;
v1._y -= 55;
if (anyped.crouch) {
v1._y += 15;
}
if (anyped.weapon == 'rifle') {
v1._y += 10;
}
v1.hp = 1;
v1.speed = 30;
v1.ownerPed = anyped;
v1.owner = anyped.owner;
v1._rotation = b_rot;
v1.dmg = b_dmg;
v1.missile = false;
v1.rocket = false;
v1.mtype = '';
if ((weapons[1] == 'm4' || weapons[1] == 'm12' || weapons[1] == 'spas') && anyped == pchar) {
v1.mtype = 'shotgun';
v1.hp = 6;
}
if (weapons[1] == 'rpg' && anyped == pchar) {
v1.attachMovie('bullet_RPG', 'bullet', 0);
v1.rocket = true;
v1.speed = 6;
snd_rocket.start();
}
return v1;
}
function splashRing(anysrc) {
rotationoffset = randbtwn(0, 180);
var v1 = 1;
while (v1 <= 5) {
newBlt = spawnObject('fire_lite', 'bullet', anysrc._x, anysrc._y - 10, 1000);
newBlt.hp = 15;
newBlt.speed = 5;
newBlt.owner = anysrc.owner;
newBlt._rotation = 72 * v1 + rotationoffset;
newBlt.missile = false;
newBlt.mtype = 'fire';
++v1;
}
}
function splashRing2(anysrc) {
rotationoffset = randbtwn(0, 180);
var v1 = 1;
while (v1 <= 5) {
newBlt = spawnObject('fire_lite', 'bullet', anysrc._x, anysrc._y - 10, 1000);
newBlt.hp = 30;
newBlt.speed = 6;
newBlt.owner = anysrc.owner;
newBlt._rotation = 72 * v1 + rotationoffset;
newBlt.missile = false;
newBlt.mtype = '';
++v1;
}
}
function throwMissile(mtype, anyped, b_rot, b_dmg) {
var v1 = spawnObject(mtype, 'bullet', anyped._x, anyped._y, 1000);
v1._x += 12 + anyped._xscale / 100;
v1._y -= 55;
if (anyped.crouch) {
v1._y += 15;
}
if (anyped.weapon == 'rifle') {
v1._y += 10;
}
v1.hp = 1;
v1.speed = 12;
v1.owner = anyped.owner;
v1._rotation = b_rot;
v1.dmg = b_dmg;
v1.missile = true;
v1.mtype = mtype;
return v1;
}
function gibPed(anyped) {
var v1;
if (randbtwn(1, 10) <= 4) {
v1 = spawnObject('gib_head', 'gib', anyped._x, anyped._y, 1000);
v1.head.attachMovie('zombie_head_0' + dd(anyped.headNum), 'head', 0);
v1.gibType = 'gib_head';
v1.gibNum = anyped.headNum;
anyped.torso.head._visible = false;
} else {
v1 = spawnObject('gib_arm', 'gib', anyped._x, anyped._y, 1000);
if (anyped.sTorso == 0) {
v1.arm1.attachMovie('zombie_arm_top_001', 'arm1', 0);
} else {
v1.arm1.attachMovie('survivor_arm_top_0' + dd(anyped.sTorso), 'arm1', 0);
}
anyped.torso.arm.arm1._visible = false;
anyped.torso.arm.arm2._visible = false;
v1.gibType = 'gib_arm';
v1.gibNum = anyped.sTorso;
}
v1._x += 12 + anyped._xscale / 100;
v1._y -= 55;
if (anyped.crouch) {
v1._y += 15;
}
v1.speed = randbtwn(6, 10);
v1.owner = anyped.owner;
v1._rotation = randbtwn(-45, -10);
if (anyped.killerPed._xscale < 0) {
v1._rotation = randbtwn(190, 225);
}
v1.missile = true;
v1.mtype = mtype;
return v1;
}
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);
} else {
if (anygib.gibType == 'gib_arm' && anygib.gibNum == 0) {
thisGib.arm1.attachMovie('zombie_arm_top_001', 'arm1', 0);
} else {
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();
} else {
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] -= 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);
}
}
} else {
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] -= randbtwn(1, 5);
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);
}
} else {
if (weaponsAmmo[1] > 0) {
if (pchar.cd_fire == 0) {
pchar.torso.arm.play();
holsterCount = 90;
pchar.cd_fire = 15;
weaponsAmmo[1] -= 1;
if (pchar._xscale == 100) {
fireBullet(pchar, +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);
}
} else {
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();
}
}
}
}
}
}
movieClip 769 {
}
movieClip 779 {
frame 30 {
stop();
}
}
instance of movieClip 779 {
onClipEvent (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;
while (cf <= 6) {
var v1 = _level0['comicframe' + cf];
if (thisFrame >= cf && v1._alpha < 100) {
v1._alpha += 1.5;
if (thisFrame > cf) {
v1._alpha = 100;
}
if (v1._alpha >= 100) {
if (thisFrame == cf) {
thisFrame += 1;
}
if (cf == 6) {
nextFrame();
}
}
}
++cf;
}
};
}
movieClip 783 {
}
movieClip 786 {
}
movieClip 789 {
}
movieClip 792 {
}
movieClip 796 {
}
movieClip 797 {
}
instance of movieClip 797 {
onClipEvent (keyPress '<Space>') {
_level0.thisFrame = 6;
}
}
frame 6 {
function weaponDisplay(wnum) {
var v2 = '';
v2 = weaponsName[wnum];
if (weaponsMaxAmmo[wnum] > 0) {
if (weaponsMaxAmmo[wnum] == 100) {
v2 += ' ' + weaponsAmmo[wnum] + '%';
return v2;
}
v2 += ' (' + weaponsAmmo[wnum] + '/' + weaponsMaxAmmo[wnum] + ')';
}
return v2;
}
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 v2 = Math.ceil((pchar._x + 1) / 50);
var v7 = Math.ceil((pchar._x + 12 * pchar._xscale / 100) / 50);
var v4 = 4 - mRn((pchar._y - 50) / 100);
pchar.currentTile = v2;
pchar.nextTile = v7;
pchar.vLevel = v4;
giantshadow._x = pchar._x;
giantshadow._y = pchar._y;
contextbox._x = pchar._x - 90;
contextbox._y = pchar._y - 110;
if (!pda._visible) {
if (pchar.targetY == 0) {
if (Key.isDown(37)) {
kl = true;
if (pchar.crouch) {
crouchBreak = 15;
}
if (_level0['streetLevel' + v4][v7] || v7 < 1) {
pchar._x -= gSpeed;
}
pchar._xscale = -100;
pchar.legs.play();
} else {
if (Key.isDown(39)) {
kr = true;
if (pchar.crouch) {
crouchBreak = 15;
}
if (_level0['streetLevel' + v4][v7] || v7 > 11) {
pchar._x += gSpeed;
}
pchar._xscale = 100;
pchar.legs.play();
} else {
if (!pchar.rising) {
if (!pchar.crouch) {
pchar.legs.gotoAndStop(1);
} else {
pchar.legs.gotoAndStop('crouchwalk');
}
}
}
}
}
} else {
if (!pchar.crouch) {
pchar.legs.gotoAndStop(1);
} else {
pchar.legs.gotoAndStop('crouchwalk');
}
if (Key.isDown(37)) {
if (!kl) {
kl = true;
if (shopMode) {
if (shopChoice > 1) {
snd_ding.start();
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 -= 1;
pda.txt = questText[curQuest];
pda.txt2 = 'Entry #' + curQuest + '/' + (maxQuest - 1);
}
}
}
} else {
kl = false;
}
if (Key.isDown(39)) {
if (!kr) {
kr = true;
if (shopMode) {
if (shopChoice < maxShopChoices) {
snd_ding.start();
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 += 1;
pda.txt = questText[curQuest];
pda.txt2 = 'Entry #' + curQuest + '/' + (maxQuest - 1);
}
}
}
} else {
kr = false;
}
}
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' && v4 <= 2) {
context = 'UP: <font color=\'#FFFF00\'>climb up/down</font>.';
} else {
if (tileName == 'link32' && v4 >= 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' && v4 == 1) {
context = 'UP: <font color=\'#FFFF00\'>enter</font>.';
} else {
if (tileName == 'entrypoint2' && v4 == 2) {
context = 'UP: <font color=\'#FFFF00\'>enter</font>.';
} else {
if (tileName == 'entrypoint3' && v4 == 3) {
context = 'UP: <font color=\'#FFFF00\'>enter</font>.';
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
if (!gamePaused) {
if (Key.isDown(38)) {
if (!p_search) {
p_search = true;
pchar.torso.arm.gotoAndPlay('search');
holsterCount = 0;
if (tileName == 'bin') {
if (!scavenged[locNum]) {
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] += 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 += cashAmt;
}
} else {
snd_soda.start();
makeSpeech(pchar, 'Nothing here: it\'s empty.');
}
} else {
if (tileName == 'entrypoint1' && v4 == 1 || tileName == 'entrypoint2' && v4 == 2 || tileName == 'entrypoint3' && v4 == 3) {
snd_door.start();
if (locNum == daughterRoom && !daughterFound) {
makeSpeech(pchar, 'I\'m not leaving her behind!');
} else {
if (!inRoom) {
inRoom = true;
roomX = pchar._x;
pcharY = pchar._y;
pchar_hp = pchar.hp;
roomNum = mapRoomNum[thisStreet][v2];
newMap(roomNum);
} else {
map_survivors[locNum] = 0;
inRoom = false;
pcharX = roomX;
pcharY = pchar._y;
pchar_hp = pchar.hp;
newMap(thisStreet);
}
}
} else {
if (tileName == 'evac') {
if (!daughterFound) {
snd_soda.start();
makeSpeech(pchar, 'I\'m not leaving without my daughter.');
} else {
gameWon = true;
gotoAndStop('end');
}
} else {
if (tileName == 'daughter') {
streetTile[v2] = '';
daughterFound = true;
spawnDaughter();
sBox.removeMovieClip();
makeSpeech(pchar, 'I\'ve got to get her back to the ferry!');
} else {
if (tileName == 'board') {
if (!noticeRead[locNum]) {
snd_btn.start();
readNotice();
noticeRead[locNum] = true;
} else {
makeSpeech(pchar, 'I\'ve already read the notice board.');
}
} 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]) {
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 += cashAmt;
floatWords(pchar, '+$' + cashAmt);
} else {
makeSpeech(pchar, 'There\'s nothing more to be found.');
}
} else {
if (tileName == 'survivor') {
if (!clueTaken[locNum]) {
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 += randbtwn(7, 10);
}
cash += cashAmt;
floatWords(pchar, '+$' + cashAmt);
} else {
if (randbtwn(1, 10) <= 5 && 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 += cashAmt;
}
}
} else {
makeSpeech(pchar, 'There\'s nothing more to be found.');
}
} else {
if (tileName == 'vending') {
if (pchar.hp < pchar_maxhp) {
if (cash >= 3) {
snd_cash.start();
cash -= 3;
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[v2];
empSlot = true;
rot = wbi - 1;
}
++wbi;
}
if (rot == 0) {
rot = 4;
}
if (!empSlot) {
weapons[1] = roomItems[v2];
}
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[v2];
empSlot = true;
rot = wbi - 1;
}
++wbi;
}
if (rot == 0) {
rot = 4;
}
if (!empSlot) {
weapons[1] = roomItems[v2];
}
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]) {
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 {
makeSpeech(pchar, 'Nothing here: it\'s empty.');
}
} 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 += 5;
pchar.legs.play();
} else {
if (pchar._y > pchar.targetY) {
pchar._y -= 5;
pchar.legs.play();
} else {
pchar.targetY = 0;
}
}
}
}
if (!gamePaused) {
if (pchar.cd_fire > 0) {
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 -= 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 -= 1;
}
if (deadCount > 0) {
deadCount -= 1;
if (deadCount == 10) {
gotoAndStop('end');
}
}
if (sectorAlertCountdown > 0) {
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)) {
if (!p_crouch) {
p_crouch = true;
pchar.rising = true;
if (!pchar.crouch) {
gSpeed = 1;
pchar.legs.gotoAndPlay('crouch');
pchar.gotoAndPlay('crouch');
pchar.crouch = true;
if (!sectorAlert) {
floatWords(pchar, 'hidden!');
}
} else {
if (pchar_walk) {
gSpeed = 2;
} else {
gSpeed = 4;
}
pchar.legs.gotoAndPlay('rise');
pchar.gotoAndPlay('rise');
}
}
} else {
p_crouch = false;
}
}
if (pchar.crouch && !sectorAlert && crouchBreak == 0) {
if (!pchar.shaded) {
pchar.shaded = true;
tclip = pchar.torso;
var v9 = new Color(pchar);
var v8 = new Object();
v8 = {'ra': '0', 'rb': '0', 'ga': '0', 'gb': '0', 'ba': '0', 'bb': '0', 'aa': '100', 'ab': '0'};
v9.setTransform(v8);
}
} else {
if (pchar.shaded) {
pchar.shaded = false;
tclip = pchar.torso;
var v9 = new Color(pchar);
var v8 = new Object();
v8 = {'ra': '100', 'rb': '0', 'ga': '100', 'gb': '0', 'ba': '100', 'bb': '0', 'aa': '100', 'ab': '0'};
v9.setTransform(v8);
}
}
if (crouchBreak > 0) {
crouchBreak -= 1;
if (crouchBreak == 0) {
if (pchar.crouch) {
if (!sectorAlert) {
floatWords(pchar, 'hidden!');
}
}
}
}
if (seconds == undefined) {
seconds = 0;
}
seconds += 1;
if (Key.isDown(13)) {
if (!pde) {
pde = true;
snd_ding.start();
pda._visible = !pda._visible;
gamePaused = pda._visible;
if (!pda._visible) {
pda.gotoAndStop(1);
shopMode = false;
} else {
showPda();
}
}
} 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 -= 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[v2] == '' && (pchar.vLevel == 1 && streetLevel2[v2] || pchar.vLevel == 2 && streetLevel3[v2])) {
snd_cash.start();
cash -= 5;
floatWords(pchar, '-$5');
makeSpeech(pchar, 'I can use this rope ladder to climb up.');
var v10 = spawnProp('rope_ladder1', (v2 - 1) * 50, pchar._y, 10);
if (pchar.vLevel == 1) {
addMapElement(locNum, 'rope_ladder1', (v2 - 1) * 50);
streetTile[v2] = 'link21';
} else {
if (pchar.vLevel == 2) {
addMapElement(locNum, 'rope_ladder2', (v2 - 1) * 50);
streetTile[v2] = '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;
while (obj_i <= objCount) {
var v1 = stage['obj' + dd(obj_i)];
if (!v1.isDead && !gamePaused) {
v2 = Math.ceil((v1._x + 1) / 50);
v7 = Math.ceil((v1._x + 12 * v1._xscale / 100) / 50);
v4 = 4 - mRn((v1._y - 50) / 100);
v1.currentTile = v2;
v1.vLevel = v4;
v1.cname._xscale = v1._xscale;
if (v1 == pchar) {
tileName = streetTile[v2];
}
v1.speech._xscale = v1._xscale;
if (pchar != null) {
if (pchar.hp <= 0) {
if (!pchar.dying) {
if (deadCount == 0) {
makeSpeech(pchar, 'Urgh!!');
deadCount = 60;
pchar.legs.swapDepths(1000);
var v6 = randbtwn(1, 2);
pchar.torso.arm.gotoAndStop('collapse' + v6);
pchar.gotoAndPlay('collapse' + v6);
pchar.legs.gotoAndPlay('collapse' + v6);
pchar.dying = true;
pchar = null;
}
}
}
}
if (v1.objclass == 'bullet' || v1.objclass == 'gib') {
var v5 = v1._rotation;
v5 = (v5 / 180) * mPi;
v1._x += v1.speed * mCo(v5) * v1._xscale / 100;
v1._y += v1.speed * mSi(v5) * v1._xscale / 100;
if (v1._x < -50 || v1._x > 550 || v1._y > 350 || v1._y < -50) {
v1.hp = 0;
if (v1.mtype == 'molotov' && v1._x > 0 && v1._x < 550) {
attachEffect(v1, 'fx_fire');
snd_molotov.start();
splashRing(v1);
}
if (v1.rocket && v1._x > 0 && v1._x < 550) {
snd_boom.start();
attachEffect(tempObj, 'fx_bigexplosion');
splashRing2(tempObj);
}
if (v1.objclass == 'gib' && v1._x > 0 && v1._x < 550) {
attachEffect(v1, 'fx_bullethit');
spawnProp('bloodpool', v1._x, v1._y, 10);
cloneGib(v1);
}
removeObject(v1);
} else {
if (inRoom) {
if (v1.mtype == 'molotov') {
if (v1._y > pchar._y || v1._x < 50 || v1._x > 500) {
v1._y = pchar._y;
v1.hp = 0;
attachEffect(v1, 'fx_fire');
snd_molotov.start();
splashRing(v1);
removeObject(v1);
}
}
if (v1.rocket) {
if (v1._y > pchar._y || v1._x < 50 || v1._x > 500) {
snd_boom.start();
attachEffect(tempObj, 'fx_bigexplosion');
splashRing2(tempObj);
v1._y = pchar._y;
v1.hp = 0;
removeObject(v1);
}
}
if (v1.objclass == 'gib') {
if (v1._y > pchar._y || v1._x < 50 || v1._x > 500) {
v1._y = pchar._y;
v1.hp = 0;
attachEffect(v1, 'fx_bullethit');
spawnProp('bloodpool', v1._x, v1._y, 10);
cloneGib(v1);
removeObject(v1);
}
}
}
}
if (v1.missile) {
if (v1._rotation <= 90 && v1._rotation > 270 || v1._rotation > -90 && v1._rotation <= 90) {
v1._rotation += 5;
} else {
v1._rotation -= 5;
}
}
if (v1.rocket) {
v1.speed *= 1.05;
v1._rotation += randbtwn(0, 8) - 4;
}
if (v1.mtype == 'fire' || v1.mtype == 'shotgun') {
v1.hp -= 1;
if (v1.hp == 0) {
removeObject(v1);
}
}
}
if (v1.objclass == 'zombie' || v1.objclass == 'human') {
if (v1._x < -50 || v1._x > 600) {
v1.hp = 0;
}
if (v1.hp <= 0) {
if (!v1.dying) {
v1.legs.swapDepths(1000);
v6 = randbtwn(1, 2);
v1.torso.arm.gotoAndStop('collapse' + v6);
v1.gotoAndPlay('collapse' + v6);
v1.legs.gotoAndPlay('collapse' + v6);
v1.dying = true;
if (v1.targetY != 0) {
v1.targetY = 0;
v1._y = (4 - v1.vLevel) * 100 + 50;
}
if (v1 == surv1.spawn) {
surv1.alive = false;
}
if (v1 == surv2.spawn) {
surv2.alive = false;
}
if (v1 == surv3.spawn) {
surv3.alive = false;
}
if (v1.objclass == 'zombie') {
zKills += 1;
numZombies -= 1;
if (randbtwn(1, 10) <= 4) {
gibPed(v1);
}
if (numZombies == 0) {
makeSpeech(pchar, 'That\'s the last of them.');
rescueSurvivors();
}
if (inRoom) {
map_zombies[locNum] -= 1;
}
} else {
if (v1.objclass == 'human') {
if (v1.owner == 4) {
cKills += 1;
gridStatus[mapNum] = false;
collectBounty(v1.killer, map_mapName[locNum]);
} else {
hKills += 1;
map_survivors[locNum] -= 1;
}
}
}
if (v1 == alertTarget) {
alertTarget = undefined;
sectorAlert = false;
}
}
} else {
if (v1.escort) {
if (streetTile[v2] == 'subway') {
if (v1 == surv1.spawn) {
surv1.alive = false;
} else {
if (v1 == surv2.spawn) {
surv2.alive = false;
} else {
if (v1 == surv3.spawn) {
surv3.alive = false;
}
}
}
partySize -= 1;
hRescued += 1;
floatWords(v1, 'survivor rescued!');
removeObject(v1);
}
if (thisStreet % 5 == 3 && v1.vLevel == 1 && !inRoom) {
if (pcharX > 275) {
v1.xspeed = -3.5;
v1._xscale = -100;
v1.walk = false;
} else {
v1.xspeed = 3.5;
v1._xscale = 100;
v1.walk = false;
}
}
}
if (v1.targetY == 0) {
if (v1.xspeed == 0) {
v1.legs.gotoAndStop(1);
} else {
if (_level0['streetLevel' + v4][v7] || v7 < 1) {
v1._x += v1.xspeed;
} else {
v1.xspeed = -v1.xspeed;
v1._xscale = -v1._xscale;
}
v1.legs.play();
}
}
if (!gamePaused) {
if (v1.cd_fire > 0) {
v1.cd_fire -= 1;
}
if (v1.hit > 0) {
v1.hit -= 1;
}
if (v1.holsterCount > 0 && v1.ranged) {
v1.holsterCount -= 1;
if (v1.holsterCount <= 0) {
v1.torso.arm.gotoAndPlay(10);
}
}
if (v1.cd_fire == 10) {
v1.melee = false;
}
}
if (seconds % 15 == 0) {
if (randbtwn(1, 5) == 1 && v1.objclass == 'zombie') {
v1.torso.arm.play();
zombieMoan();
}
goUp = false;
goDown = false;
if (v1 == dchar || v1.escort) {
if (pchar._y > v1._y) {
goUp = true;
} else {
if (pchar._y < v1._y) {
goDown = true;
}
}
}
if (randbtwn(1, 10) == 1) {
goUp = true;
goDown = true;
}
if (streetTile[v2] == 'link21') {
if (v1._y == 350 && goDown) {
v1.targetY = 250;
} else {
if (v1._y == 250 && goUp) {
v1.targetY = 350;
}
}
} else {
if (streetTile[v2] == 'link32') {
if (v1._y == 250 && goDown) {
v1.targetY = 150;
} else {
if (v1._y == 150 && goUp) {
v1.targetY = 250;
}
}
}
}
if (sectorAlert && v4 == pchar.vLevel && v1.objclass == 'zombie' && randbtwn(1, 10) <= 5) {
if (v1._x > alertTarget._x + 25) {
v1.xspeed = -3.5;
if (v1.legMutate) {
v1.xspeed = -6;
}
v1._xscale = -100;
v1.walk = false;
} else {
if (v1._x < alertTarget._x - 25) {
v1.xspeed = 3.5;
if (v1.legMutate) {
v1.xspeed = 6;
}
v1._xscale = 100;
v1.walk = false;
}
}
} else {
if (randbtwn(1, 10) == 3) {
if (!v1.crouch && !v1.dying) {
v1.legs.gotoAndPlay('walk');
}
if (randbtwn(1, 10) < 5) {
v1.xspeed = -2;
v1._xscale = -100;
v1.walk = true;
} else {
v1.xspeed = 2;
v1._xscale = 100;
v1.walk = true;
}
if (v1._x > 450) {
v1.xspeed = -2;
v1._xscale = -100;
v1.walk = true;
} else {
if (v1._x < 100) {
v1.xspeed = 2;
v1._xscale = 100;
v1.walk = true;
}
}
} else {
if (randbtwn(1, 10) == 3) {
v1.xspeed = 0;
if (!v1.crouch && !v1.dying) {
v1.legs.gotoAndStop(1);
}
}
}
}
if (v1 == dchar || v1.escort) {
if (v1._x > pchar._x + 100 || v1._x > 500) {
v1.xspeed = -4;
v1._xscale = -100;
v1.walk = false;
}
if (v1._x < pchar._x - 100 || v1._x < 50) {
v1.xspeed = 4;
v1._xscale = 100;
v1.walk = false;
}
}
}
if (!gamePaused) {
if (v1.targetY != 0) {
if (v1._y < v1.targetY) {
v1._y += 5;
v1.legs.play();
} else {
if (v1._y > v1.targetY) {
v1._y -= 5;
v1.legs.play();
} else {
v1.targetY = 0;
}
}
}
}
}
}
var v3 = 0;
while (v3 <= objCount) {
var tempObj = stage['obj' + dd(v3)];
if (v1 != tempObj) {
if (!v1.dying) {
if (!tempObj.dying) {
if (!tempObj.isDead) {
if (v1.ranged) {
if (v1.objclass == 'human') {
if (tempObj.objclass == 'human' && tempObj.owner == 4 && v1.owner == 3 || tempObj.objclass == 'zombie' || v1.owner == 4 && (tempObj == pchar || tempObj.objclass == 'human' && tempObj.owner == 3)) {
if (v1.cd_fire == 0) {
if (v1.vLevel == tempObj.vLevel) {
if (v1.currentTile > tempObj.currentTile && v1._xscale <= 0 || v1.currentTile <= tempObj.currentTile && v1._xscale > 0) {
if (v1.owner == 3) {
if (randbtwn(1, 10) <= 3) {
makeSpeech(v1, barks1[randbtwn(1, barks1.length - 1)]);
}
}
v1.torso.arm.play();
v1.cd_fire = 30;
v1.holsterCount = 90;
if (v1._xscale == 100) {
fireBullet(v1, +randbtwn(0, 14) - 7, 1);
} else {
fireBullet(v1, 180 + randbtwn(0, 14) - 7, 1);
}
_level0['snd_' + v1.weaponName].start();
alertTarget = v1;
v1.xspeed = 0;
if (!v1.crouch && !v1.dying) {
v1.legs.gotoAndStop(1);
}
} else {
if (randbtwn(1, 3) == 1 && seconds % 15 == 0) {
v1._xscale = -v1._xscale;
v1.xspeed = -v1.xspeed;
}
}
}
}
}
}
}
if (tempObj.box.hitTest(v1.box)) {
if (tempObj.objclass == 'pickup' && v1 == 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 != v1.owner) {
if (tempObj.objclass == 'bullet') {
if (!(tempObj.owner == 3 && v1 == pchar)) {
if (randbtwn(1, 10) <= hitChance[v1.owner]) {
attachEffect(tempObj, 'fx_bullethit');
if (v1.objclass == 'zombie') {
zombieMoan();
}
if (v1 == pchar) {
dropHP();
}
if (tempObj.owner == 1 && v1.owner == 3) {
makeSpeech(v1, warning[randbtwn(1, warning.length - 1)]);
}
v1.hp -= 1;
v1.killer = tempObj.owner;
v1.killerPed = tempObj.ownerPed;
if (tempObj.mtype == 'molotov') {
attachEffect(tempObj, 'fx_fire');
snd_molotov.start();
burnChar(v1);
v1.hp = 0;
splashRing(tempObj);
sectorAlert = true;
sectorAlertCountdown = 120;
alertTarget = pchar;
} else {
if (tempObj.mtype == 'fire') {
burnChar(v1);
v1.hp = 0;
}
}
if (tempObj.rocket) {
snd_boom.start();
attachEffect(tempObj, 'fx_bigexplosion');
splashRing2(tempObj);
}
if (tempObj.mtype != 'shotgun') {
removeObject(tempObj);
}
spawnProp('bloodpool', v1._x, v1._y, 10);
} else {
if (v1.owner != 3 && tempObj.mtype != 'fire') {
floatWords(tempObj, 'missed!');
}
}
}
} else {
if (v1.objclass == 'zombie' || v1.objclass == 'human' && v1.owner == 4 && (tempObj == pchar || tempObj.objclass == 'human')) {
if (tempObj.hit == 0 && (!tempObj.crouch || sectorAlert || crouchBreak > 0)) {
if (randbtwn(1, 10) <= 1) {
floatWords(tempObj, 'missed!');
if (tempObj.melee && !v1.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 && !v1.melee) {
attachEffect(v1, 'fx_bullethit');
v1.hit = 20;
v1.hp -= 1;
if (weapons[1] != 'chainsaw' || tempObj != pchar) {
tempObj.melee = false;
tempObj.box._xscale = 100;
}
v1.killer = tempObj.owner;
v1.killerPed = tempObj;
if (v1.objclass == 'zombie') {
zombieMoan();
}
spawnProp('bloodpool', v1._x, v1._y, 10);
if (tempObj == pchar) {
sectorAlert = true;
sectorAlertCountdown = 120;
alertTarget = pchar;
}
} else {
if (v1.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 (v1.objclass == 'zombie') {
zombieScreech();
}
v1.torso.arm.play();
attachEffect(tempObj, 'fx_bullethit');
tempObj.killer = v1.owner;
tempObj.killerPed = v1;
tempObj.hit = 20;
tempObj.hp -= 1;
spawnProp('bloodpool', tempObj._x, tempObj._y, 10);
}
}
}
}
}
}
}
}
}
}
}
}
++v3;
}
}
++obj_i;
}
};
}
movieClip 799 {
}
movieClip 801 stage {
}
movieClip 803 {
}
movieClip 807 {
}
movieClip 808 {
frame 23 {
gotoAndPlay(_level0.randbtwn(0, 18));
}
}
movieClip 809 {
frame 1 {
stop();
}
instance of movieClip 803 {
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
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 movieClip 803 {
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
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 movieClip 803 {
onClipEvent (load) {
this._xscale = _level0.randbtwn(100, 150);
this._yscale = _level0.randbtwn(50, 100);
}
onClipEvent (enterFrame) {
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);
}
}
}
}
movieClip 812 {
}
movieClip 813 {
}
movieClip 823 {
frame 1 {
stop();
}
}
movieClip 825 {
frame 1 {
stop();
}
}
movieClip 828 {
}
movieClip 830 {
}
movieClip 831 {
}
movieClip 834 {
}
movieClip 851 {
frame 1 {
stop();
}
}
movieClip 855 {
frame 1 {
stop();
}
}
movieClip 861 {
}
movieClip 862 {
}
movieClip 865 {
}
movieClip 866 {
frame 35 {
stop();
}
}
movieClip 872 {
frame 1 {
stop();
}
}
movieClip 875 {
frame 1 {
stop();
}
}
movieClip 878 {
frame 1 {
stop();
}
}
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] + '\n';
location_box.txt2 += map_mapName[firstStreet + 1] + '\n';
location_box.txt1 = map_mapName[firstStreet + 2] + '\n';
location_box.txt1 += 'Station';
location_box.txt3 = map_mapName[firstStreet + 3] + '\n';
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;
while (m < 9) {
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 v2 = 0;
var v1 = 0;
while (v1 <= 4) {
if (gridStatus[mStreet + v1]) {
v2 += 1;
}
++v1;
}
if (v2 == 0) {
_level0['prisoner' + mRn(m + 1)].nextFrame();
_level0['prisoner' + mRn(m + 1)].txt = '';
} else {
_level0['prisoner' + mRn(m + 1)].txt = 'x' + v2;
}
++m;
}
}
function regenerateLocation() {
firstStreet = mRn((subwayWidth + (subwayHeight - 1) * 5 - 1) * 5 + 1);
var v3 = subwayWidth + 5 * subwayHeight;
thisGroup = streetGroups[v3];
var v2 = firstStreet;
while (v2 <= firstStreet + 4) {
respawnZombies[v2];
scavenged[v2] = false;
++v2;
}
var v1 = 1;
while (v1 <= roomsCreated) {
if (scavenged[v1]) {
scavenged[v1] = false;
populateMap(v1);
}
++v1;
}
}
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 += 1;
}
if (surv2.alive) {
surv2.alive = false;
hRescued += 1;
}
if (surv3.alive) {
surv3.alive = false;
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 += 20;
}
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 += '%';
++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)) {
if (!sb_1) {
sb_1 = true;
if (subwayHeight < 5) {
subwayHeight += 1;
}
refreshSubway();
}
} else {
sb_1 = false;
}
if (Key.isDown(38)) {
if (!sb_2) {
sb_2 = true;
if (subwayHeight > 1) {
subwayHeight -= 1;
}
refreshSubway();
}
} else {
sb_2 = false;
}
if (!pda._visible) {
if (Key.isDown(37)) {
if (!sb_3) {
sb_3 = true;
if (subwayWidth > 1) {
subwayWidth -= 1;
}
refreshSubway();
}
} else {
sb_3 = false;
}
if (Key.isDown(39)) {
if (!sb_4) {
sb_4 = true;
if (subwayWidth < 5) {
subwayWidth += 1;
}
refreshSubway();
}
} else {
sb_4 = false;
}
} else {
if (Key.isDown(37)) {
if (!kl) {
kl = true;
if (curQuest > 1) {
snd_ding.start();
curQuest -= 1;
pda.txt = questText[curQuest];
pda.txt2 = 'Entry #' + curQuest + '/' + (maxQuest - 1);
}
}
} else {
kl = false;
}
if (Key.isDown(39)) {
if (!kr) {
kr = true;
if (curQuest < maxQuest - 1) {
snd_ding.start();
curQuest += 1;
pda.txt = questText[curQuest];
pda.txt2 = 'Entry #' + curQuest + '/' + (maxQuest - 1);
}
}
} else {
kr = false;
}
}
if (Key.isDown(32)) {
if (!sb_5) {
sb_5 = true;
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);
}
} else {
pde = false;
}
};
}
movieClip 881 {
}
movieClip 891 {
frame 1 {
stop();
}
}
movieClip 908 {
frame 1 {
stop();
}
}
movieClip 910 {
}
movieClip 914 {
frame 1 {
stop();
}
}
movieClip 916 {
frame 1 {
stop();
}
}
movieClip 919 {
}
movieClip 921 {
frame 1 {
stop();
}
}
movieClip 928 {
}
frame 8 {
stop();
stage.removeMovieClip();
blackbar.removeMovieClip();
topbar.removeMovieClip();
pDied = true;
pchar_hp = pchar_maxhp;
pcharX = 275;
pcharY = 350;
inRoom = false;
cash = mRn(cash / 2);
nuke_back._visible = false;
partySize = 0;
if (surv1.alive) {
surv1.alive = false;
}
if (surv2.alive) {
surv2.alive = false;
}
if (surv3.alive) {
surv3.alive = false;
}
if (gameWon) {
end_txt1 = 'Game complete!';
dCount = 'You found her!';
end_txt2 = 'Press Spacebar to continue!';
end_txt3 = 'Great job!';
} else {
end_txt1 = 'You were incapacitated.';
end_txt2 = 'Press Spacebar to respawn at the nearest subway station.';
end_txt3 = 'You will lose half of your cash!';
dTimes = 2;
deaths += 1;
dCount = '-' + dTimes + ' Hours';
hours += dTimes;
if (hours >= 36) {
hours = 36;
}
}
if (hours >= 36) {
nuke_back._visible = true;
end_txt1 = 'You failed to save her.';
dCount = 'City was nuked!';
end_txt2 = 'Press Spacebar to restart';
end_txt3 = 'Better luck next time!';
}
_level0.onEnterFrame = function () {
if (Key.isDown(32)) {
if (!sb_5) {
sb_5 = true;
isDead = false;
if (gameWon) {
gotoAndStop('credits');
} else {
if (hours >= 36) {
gotoAndStop('logo');
} else {
timeDisplay = 36 - hours + ' Hrs';
thisStreet = (Math.ceil(thisStreet / 5) - 1) * 5 + 3;
gotoAndStop('game');
isDead = true;
}
}
}
} else {
sb_5 = false;
}
};
}
movieClip 934 {
}
// unknown tag 88 length 64
button 942 {
on (release) {
getURL('http://www.arcadebomb.com', '_blank');
}
}
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 (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 += 1;
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 -= 1;
back_drop._alpha -= 1;
}
if (framecount >= 90) {
thisswitch += 1;
framecount = 0;
creditbox.txt = creditWords[thisswitch];
if (thisswitch == creditWords.length) {
gotoAndStop('resources');
}
}
};
}
movieClip 944 {
}
movieClip 947 {
}
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 += 1;
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 -= 1;
back_drop._alpha -= 1;
}
if (framecount >= 100) {
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');
}
}
};
}
movieClip 949 {
}
// unknown tag 88 length 64
movieClip 952 {
}
instance of movieClip 797 {
onClipEvent (keyPress '<Space>') {
if (_level0.thisswitch < _level0.creditWords.length - 1) {
_level0.thisswitch = _level0.creditWords.length - 1;
_level0.framecount = 0;
_level0.creditbox.txt = '';
_level0.gotoAndStop('game');
}
}
}