Frame 1
stop();
Instance of Symbol 143 MovieClip in Frame 1
onClipEvent (enterFrame) {
ifFrameLoaded (122) {
_root.gotoAndPlay("BootFrame");
}
}
Frame 2
Bushism = new Sound();
PowerPillSound = new Sound();
HuntMusic = new Sound();
MusicEnd = new Sound();
ScatterSound = new Sound();
IntroSounds = new Sound();
WallAlert = new Sound();
WallAlert.attachSound("WallAlert");
EatingSound = new Sound();
EatingSound.attachSound("EatingSound");
HealthPack = new Sound();
HealthPack.attachSound("HealthPack");
Frame 3
var BestScore = 537;
Frame 4
EatingSound.start(0, 1);
stop();
Frame 5
IntroSounds.attachSound("PacmanTune");
IntroSounds.start(0, 1);
if (BestScore > 537) {
gotoAndPlay (93);
} else {
gotoAndPlay (6);
}
Frame 93
if (BestScore <= 537) {
EatingSound.start(0, 1);
}
stop();
Frame 96
function Randomiser(range) {
return(Math.round((Math.random() * (range - 1)) + 1));
}
function PopUpPager(messagetext) {
PopUpMessage.thismessage = messagetext;
PopUpMessage.gotoAndPlay("StartDisplayFrame");
}
function WeightLivesLevels(LivesWeightMax, LevelsWeightMax) {
return(Math.round((((Math.min(4, Lives) - 1) / 3) * LivesWeightMax) + (((Math.min(NumberOfMaps, CurrentLevel) - 1) / NumberOfMaps) * LevelsWeightMax)));
}
function TurnL() {
Swoosh.setPan(-100);
Swoosh.start(0, 1);
pDc = leftD[pDc];
vx = dx[pDc];
vy = dy[pDc];
Blip._rotation = BlipAng[pDc];
Compass._rotation = CompassAng[pDc];
}
function TurnR() {
Swoosh.setPan(100);
Swoosh.start(0, 1);
pDc = rightD[pDc];
vx = dx[pDc];
vy = dy[pDc];
Blip._rotation = BlipAng[pDc];
Compass._rotation = CompassAng[pDc];
}
function CheckForSpace(x, y) {
var emptyspace = (!Map.hitTest(x, y, true));
return(emptyspace);
}
var NumberOfMaps = Map._totalframes;
var CurrentLevel = 1;
var Lives = 3;
var Score = 0;
var MaxHealth = 4;
var OneUpTarget = 10000;
var OneUpStep = 10000;
leftD = new Array();
leftD[1] = 8;
leftD[2] = 1;
leftD[4] = 2;
leftD[8] = 4;
rightD = new Array();
rightD[1] = 2;
rightD[2] = 4;
rightD[4] = 8;
rightD[8] = 1;
BlipAng = new Array();
BlipAng[1] = 0;
BlipAng[2] = 90;
BlipAng[4] = 180;
BlipAng[8] = 270;
CompassAng = new Array();
CompassAng[1] = 0;
CompassAng[2] = 270;
CompassAng[4] = 180;
CompassAng[8] = 90;
Kd = Key.isDown;
Kl = 37;
Kr = 39;
Frame 97
function InitialiseMapArray() {
var j = 0;
while (j < 23) {
M.push(new Array(23));
j++;
}
var x = 0;
while (x < 23) {
var y = 0;
while (y < 23) {
if (CheckForSpace(x, y)) {
M[x][y] = 2;
} else {
M[x][y] = 0;
}
y++;
}
x++;
}
}
function InitialiseCryptDoor() {
M[11][9] = 8;
M[11][10] = 9;
M[11][11] = 10;
}
function InitialiseGates() {
var i = 0;
while (i < 23) {
if (M[i][0] == 2) {
M[i][0] = 6;
M[i][1] = 7;
M[i][22] = 7;
M[i][21] = 1;
}
if (M[0][i] == 2) {
M[0][i] = 6;
M[1][i] = 7;
M[22][i] = 7;
M[21][i] = 1;
}
i++;
}
}
function InitialiseMapItem(totalnumber, itemcode) {
var i = 0;
while (i < totalnumber) {
do {
var x = Randomiser(21);
var y = Randomiser(21);
} while (((((((((M[x][y] != 2) || (M[x + 1][y] > 2)) || (M[x - 1][y] > 2)) || (M[x][y + 1] > 2)) || (M[x][y - 1] > 2)) || (M[x + 2][y] > 2)) || (M[x - 2][y] > 2)) || (M[x][y + 2] > 2)) || (M[x][y - 2] > 2));
M[x][y] = itemcode;
i++;
}
}
function InitialiseScatterPoints() {
ScatterPoints[0] = [3, 3];
ScatterPoints[1] = [3, 20];
ScatterPoints[2] = [20, 3];
ScatterPoints[3] = [20, 20];
var sp = 0;
while (sp < 3) {
do {
var ScatterPointX = ((ScatterPoints[sp][0] - 3) + Randomiser(5));
var ScatterPointY = ((ScatterPoints[sp][1] - 3) + Randomiser(5));
} while (M[ScatterPointX][ScatterPointY] != 0);
ScatterPoints[sp][0] = ScatterPointX;
ScatterPoints[sp][1] = ScatterPointY;
sp++;
}
}
function InitialiseScatterTimes() {
var timeAdjustUp = WeightLivesLevels(3, 6);
var timeAdjustDown = WeightLivesLevels(0, 3);
CountDown.ScatterTimes = new Array(9, 18 + timeAdjustUp, 9 - timeAdjustDown, 19 + timeAdjustUp, 8 - timeAdjustDown, 20 + timeAdjustUp, 7, 60 + timeAdjustUp);
}
function ResetScatter() {
CountDown.Clock = 0;
CountDown.ScatterIndex = 0;
CountDown.gotoAndPlay("ClockStart");
ScatterStart();
}
function ScatterStart() {
if (CountDown.ScatterIndex != 0) {
ScatterSound.attachSound("ScatterOn");
ScatterSound.start(0, 4);
}
Scatter = true;
var Corners = new Array(0, 1, 2, 3);
for (var e in Entity) {
var RandomIndex = (Randomiser(4 - e) - 1);
var thisScatterPoint = Corners[RandomIndex];
Entity[e].ScatterX = ScatterPoints[thisScatterPoint][0];
Entity[e].ScatterY = ScatterPoints[thisScatterPoint][1];
Corners.splice(RandomIndex, 1);
if (e == 0) {
if (e0.MoveStyle == "Walk") {
Entity[e].Scatter = true;
}
} else {
Entity[e].Scatter = true;
}
}
}
function ScatterStop() {
ScatterSound.attachSound("ScatterOff");
ScatterSound.start(0, 8);
Scatter = false;
for (var e in Entity) {
Entity[e].Scatter = false;
}
}
Frame 98
function InitialiseHUDpellets() {
var depthCount = 101;
var x = 0;
while (x < 23) {
var y = 0;
while (y < 23) {
if ((M[x][y] > 1) && (M[x][y] < 6)) {
depthCount++;
thisHUDpellet = HUDpellet.duplicateMovieClip((("HUDpellet_" + x) + "_") + y, depthCount);
thisHUDpellet._x = (3 * x) + mapX;
thisHUDpellet._y = (3 * y) + mapY;
switch (M[x][y]) {
case 3 :
thisHUDpellet._xscale = 300;
thisHUDpellet._yscale = 300;
myColor = new Color(thisHUDpellet);
myColor.setRGB(16711680);
break;
case 5 :
thisHUDpellet._xscale = 300;
thisHUDpellet._yscale = 300;
myColor = new Color(thisHUDpellet);
myColor.setRGB(16711935);
}
}
y++;
}
x++;
}
}
function CountPellets() {
var x = 0;
while (x < 23) {
var y = 0;
while (y < 23) {
if (M[x][y] == 2) {
PelletsMax++;
}
y++;
}
x++;
}
}
function CreateBeacon(thisEntity, e) {
var thisBeacon = (("e" + e) + "Beacon");
_root.attachMovie("Beacon", thisBeacon, 500 + e);
thisEntity.myBeacon = eval ("_root." + thisBeacon);
var thisBeacon = eval (thisBeacon);
thisBeacon._x = (3 * thisEntity.x) + mapX;
thisBeacon._y = (3 * thisEntity.y) + mapY;
thisBeacon.gotoAndPlay(e * 16);
}
function LoLiteBeacon(thisBeacon) {
thisBeacon._alpha = 80;
myColor = new Color(thisBeacon);
myColor.setRGB(65535);
}
function HiLiteBeacon(thisBeacon) {
thisBeacon._alpha = 100;
myColor = new Color(thisBeacon);
myColor.setRGB(65280);
}
function ClearScreen() {
var x = 0;
while (x < 23) {
var y = 0;
while (y < 23) {
removeMovieClip((("HUDpellet_" + x) + "_") + y);
y++;
}
x++;
}
var e = 0;
while (e < eCount) {
removeMovieClip("e" + e);
removeMovieClip(("e" + e) + "Beacon");
e++;
}
}
Frame 100
function InitialiseStemCells() {
var z = 0;
while (z < DrawDistance) {
eval ("StemCell" + z)._x = Centre_X;
eval ("StemCell" + z)._y = DepthCell_Y[z];
setProperty(eval ("StemCell" + z), _xscale , DepthCell_Mag[z]);
setProperty(eval ("StemCell" + z), _yscale , DepthCell_Mag[z]);
eval ("StemCell" + z).gotoAndStop(1);
z++;
}
}
var DrawDistance = 8;
var Centre_X = 300;
var DepthCell_Y = new Array(448, 334, 263, 217, 186, 166, 152, 144);
var Xoffset = new Array();
Xoffset[0] = [390, 210, 300];
Xoffset[1] = [360, 240, 300];
Xoffset[2] = [340, 260, 300];
Xoffset[3] = [327, 273, 300];
Xoffset[4] = [318, 282, 300];
Xoffset[5] = [312, 288, 300];
Xoffset[6] = [308, 292, 300];
Xoffset[7] = [305, 295, 300];
var DepthCell_Mag = new Array(150, 100, 67, 44, 30, 20, 13, 9);
var LW = new Array(LW0, LW1, LW2, LW3, LW4, LW5, LW6, LW7);
var RW = new Array(RW0, RW1, RW2, RW3, RW4, RW5, RW6, RW7);
Frame 101
function SoundEffect(Entity, SFX, loops) {
var relative_X = (Entity.x - px);
var relative_Y = (Entity.y - py);
var Distance_SQ = ((relative_X * relative_X) + (relative_Y * relative_Y));
if (Distance_SQ > HearDistanceSQ) {
return(false);
}
if (Distance_SQ == 0) {
var volume = 140;
var pan = 0;
} else {
var Distance = Math.sqrt(Distance_SQ);
var pan = Math.round((100 * ((relative_Y * vx) - (relative_X * vy))) / Distance);
var volume = VolumeLookup[Math.round(2 * Distance)];
}
SFX.setVolume(volume);
SFX.setPan(pan);
SFX.start(0, loops);
return(true);
}
function EntitySpeak(Entity, SFX) {
if (Entity.x == px) {
var relative_Y = (Entity.y - py);
var Distance = Math.abs(relative_Y);
if (Distance > HearDistance) {
return(false);
}
if (!losY(px, py, Entity.y)) {
return(false);
}
var pan = Math.round(((100 * relative_Y) * vx) / Distance);
} else if (Entity.y == py) {
var relative_X = (px - Entity.x);
var Distance = Math.abs(relative_X);
if (Distance > HearDistance) {
return(false);
}
if (!losX(py, px, Entity.x)) {
return(false);
}
var pan = Math.round(((100 * relative_X) * vy) / Distance);
} else {
return(false);
}
var volume = VolumeLookup[Math.round(2 * Distance)];
SFX.setVolume(volume);
SFX.setPan(pan);
return(true);
}
function losX(y, x1, x2) {
if (x2 > x1) {
var dx = 1;
} else {
var dx = -1;
}
do {
x1 = x1 + dx;
} while ((x1 != x2) && (M[x1][y] != 0));
if (x1 == x2) {
return(true);
}
return(false);
}
function losY(x, y1, y2) {
if (y2 > y1) {
var dy = 1;
} else {
var dy = -1;
}
do {
y1 = y1 + dy;
} while ((y1 != y2) && (M[x][y1] != 0));
if (y1 == y2) {
return(true);
}
return(false);
}
HearDistance = 12;
HearDistanceSQ = Math.pow(HearDistance, 2);
VolumeLookup = new Array(150, 120, 100, 83, 72, 63, 55, 47, 38, 33, 28, 23, 20, 16, 13, 11, 9, 8, 6, 5, 4, 3, 2, 1, 1);
Frame 103
function InitialiseNodeCodeArray() {
var j = 0;
while (j < 23) {
Nc.push(new Array(23));
j++;
}
var x = 0;
while (x < 23) {
var y = 0;
while (y < 23) {
if (M[x][y] == 0) {
var NodeCode = 0;
} else {
var upDirection = Math.min(1, M[x][y - 1]);
var rightDirection = Math.min(1, M[x + 1][y]);
var downDirection = Math.min(1, M[x][y + 1]);
var leftDirection = Math.min(1, M[x - 1][y]);
var NodeCode = ((((upDirection * Dc[0]) + (rightDirection * Dc[1])) + (downDirection * Dc[2])) + (leftDirection * Dc[3]));
}
if ((NodeCode == 5) || (NodeCode == 10)) {
NodeCode = 0;
}
Nc[x][y] = NodeCode;
y++;
}
x++;
}
}
var Dc = new Array(1, 2, 4, 8);
_global.Rc = new Array();
Rc[1] = 4;
Rc[2] = 8;
Rc[4] = 1;
Rc[8] = 2;
_global.dx = new Array();
_global.dy = new Array();
dx[0] = 0;
dy[0] = 0;
dx[1] = 0;
dy[1] = -1;
dx[2] = 1;
dy[2] = 0;
dx[4] = 0;
dy[4] = 1;
dx[8] = -1;
dy[8] = 0;
_global.Oc = new Array();
Oc[1] = [1];
Oc[2] = [2];
Oc[4] = [4];
Oc[8] = [8];
Oc[3] = [1, 2];
Oc[6] = [2, 4];
Oc[12] = [4, 8];
Oc[9] = [8, 1];
Oc[5] = [1, 4];
Oc[10] = [2, 8];
Oc[7] = [1, 2, 4];
Oc[14] = [2, 4, 8];
Oc[13] = [4, 8, 1];
Oc[11] = [8, 1, 2];
Frame 104
function StartGhostHunt(x, y) {
M[x][y] = 1;
removeMovieClip((("HUDpellet_" + x) + "_") + y);
PowerPillSound.attachSound("PowerPillStartSound");
PowerPillSound.start(0, 1);
Score = Score + 50;
if (GhostHunt) {
CountDown.CountDownTime = CountDownTime;
} else {
HuntMusic.attachSound("HuntMusic");
HuntMusic.start(0, 64);
GhostHunt = true;
PopUpPager("Catch the dead folks");
CountDown.CountDownTime = CountDownTime;
CountDown.gotoAndPlay("CountDownStart");
BushHead.gotoAndStop("Happy");
}
for (var e in Entity) {
if ((!Entity[e].Vulnerable) && (!Entity[e].Exorcised)) {
Entity[e].Vulnerable = true;
Entity[e]._alpha = 40;
HiLiteBeacon(eval (("e" + e) + "Beacon"));
Entity[e].gotoAndPlay("FleeStart");
}
}
}
function EndGhostHunt() {
HuntMusic.stop();
MusicEnd.attachSound("MusicEnd");
MusicEnd.onSoundComplete = RecordScratch();
MusicEnd.start(0, 1);
for (var e in Entity) {
if (Entity[e].Vulnerable && (!Entity[e].Exorcised)) {
Entity[e].Vulnerable = false;
Entity[e]._alpha = 70;
LoLiteBeacon(eval (("e" + e) + "Beacon"));
Entity[e].Dc = Rc[Entity[e].Dc];
Entity[e].gotoAndPlay("Hunt");
}
}
var HuntBonus = ((Math.pow(2, GhostTally) - 1) * 100);
Score = Score + HuntBonus;
PopUpPager((("Dead presidents: " + GhostTally) + " - Score bonus: ") + HuntBonus);
ResetGhostHunt();
}
function ResetGhostHunt() {
GhostHunt = false;
CountDown.gotoAndPlay("ClockStart");
BushHead.gotoAndStop("Scared");
GhostTally = 0;
}
function RecordScratch() {
PowerPillSound.attachSound("PowerPillEndSound" + Math.min(GhostTally, 3));
PowerPillSound.start(0, 1);
}
function Exorcise(thisEntity) {
thisEntity.gotoAndPlay("Exorcism");
thisEntity.Vulnerable = false;
thisEntity.Exorcised = true;
thisEntity.Sentence = Sentence;
GhostTally++;
Score = Score + 100;
}
function SinBin(thisEntity, thisSentence) {
thisEntity.gotoAndPlay("Sinbin");
thisEntity.Vulnerable = false;
thisEntity.Exorcised = true;
thisEntity.Sentence = thisSentence;
}
function Parole(thisEntity) {
thisEntity.Vulnerable = false;
thisEntity.Exorcised = false;
thisEntity.Sentence = 0;
thisEntity._alpha = 70;
thisEntity.Ready2Speak = true;
}
Frame 106
function HealthUp(x, y) {
HealthPack.start(0, 1);
Health = MaxHealth;
HealthMeter.gotoAndStop(("Health" + MaxHealth) + "Frame");
M[x][y] = 1;
removeMovieClip((("HUDpellet_" + x) + "_") + y);
}
function HealthDown(damage) {
if (PlayerAlive) {
Health = Math.max(Health - damage, 0);
HealthMeter.gotoAndStop(("Health" + Math.floor(Health)) + "Frame");
if (Health <= 0) {
PlayerAlive = false;
Lives--;
if (Lives < 1) {
GameOver = true;
}
_root.attachMovie("DeathScene", "DeathScene", 666);
}
}
return(undefined);
}
function MountDeathScene() {
var cryptExitDelay = (3 - WeightLivesLevels(1, 1));
var SinbinPenalties = new Array(1, cryptExitDelay + 1, (2 * cryptExitDelay) + 1);
for (var e in Entity) {
var RandomIndex = (Randomiser(SinbinPenalties.length) - 1);
SinBin(Entity[e], SinbinPenalties[RandomIndex]);
SinbinPenalties.splice(RandomIndex, 1);
}
RemoveBrewski();
ResetGhostHunt();
CountDown.stop();
stop();
}
function DismountDeathScene() {
removeMovieClip("DeathScene");
if (GameOver) {
gotoAndPlay (118);
} else {
PlayerAlive = true;
PopUpPager("Lives remaining: " + Lives);
Health = MaxHealth;
var updatemeter = (("Health" + MaxHealth) + "Frame");
HealthMeter.gotoAndStop(updatemeter);
if ((px == 11) && (py == 11)) {
py = 9;
}
play();
ResetScatter();
}
}
Frame 107
function EatPellet(x, y) {
EatingSound.start(0, 1);
Score = Score + 10;
PelletsEaten++;
M[x][y] = 1;
removeMovieClip((("HUDpellet_" + x) + "_") + y);
if (PelletsEaten == PelletsMax) {
LevelComplete = true;
gotoAndPlay (118);
}
}
function PlaceBrewski() {
M[NextBrewskiX][NextBrewskiY] = 4;
thisHUDpellet = HUDpellet.duplicateMovieClip((("HUDpellet_" + NextBrewskiX) + "_") + NextBrewskiY, 100);
thisHUDpellet._x = (3 * NextBrewskiX) + mapX;
thisHUDpellet._y = (3 * NextBrewskiY) + mapY;
thisHUDpellet._xscale = 300;
thisHUDpellet._yscale = 300;
myColor = new Color(thisHUDpellet);
myColor.setRGB(255);
BrewskiOnMap = true;
BrewskiX = NextBrewskiX;
BrewskiY = NextBrewskiY;
}
function DrinkBrewSki() {
BrewSki.attachSound("BrewSki" + BrewSkiCount);
BrewSki.start(0.05, 1);
var BrewSkiBonus = ((200 * BrewSkiCount) + 200);
PopUpPager(BrewSkiBonus + " Bonus Points");
Score = Score + BrewSkiBonus;
BrewSkiCount = Math.min(2, BrewSkiCount + 1);
M[BrewskiX][BrewskiY] = 1;
removeMovieClip((("HUDpellet_" + BrewskiX) + "_") + BrewskiY);
BrewskiOnMap = false;
}
function RemoveBrewski() {
if (BrewskiOnMap) {
M[BrewskiX][BrewskiY] = 1;
removeMovieClip((("HUDpellet_" + BrewskiX) + "_") + BrewskiY);
BrewskiOnMap = false;
BrewSkiCount = 0;
}
}
Frame 109
var MapNumber = (((CurrentLevel - 1) % NumberOfMaps) + 1);
Map.gotoAndStop(MapNumber);
Map._x = 0;
Map._y = 0;
Map._xscale = 100;
Map._yscale = 100;
var M = new Array();
InitialiseMapArray();
ScatterPoints = new Array();
InitialiseScatterPoints();
_global.Nc = new Array();
InitialiseNodeCodeArray();
InitialiseGates();
GateSound = new Sound();
GateSound.attachSound("GateSlam");
var OffGate = true;
InitialiseCryptDoor();
CryptSounds = new Sound();
_global.mapX = 89.5;
_global.mapY = 324.5;
Map._x = mapX;
Map._y = mapY;
Map._xscale = 300;
Map._yscale = 300;
Frame 110
var LevelComplete = false;
var GameOver = false;
var PlayerAlive = false;
GhostHunt = false;
var GhostTally = 0;
var Health = MaxHealth;
HealthMeter.gotoAndStop(("Health" + Health) + "Frame");
var px = 11;
var py = 11;
do {
py++;
} while (M[px][py] == 0);
pDc = 2;
vx = dx[pDc];
vy = dy[pDc];
Blip._x = (3 * px) + mapX;
Blip._y = (3 * py) + mapY;
Blip._rotation = BlipAng[pDc];
Compass._rotation = CompassAng[pDc];
M[px][py] = 1;
_root.attachMovie("e2", "e2", 2);
_root.attachMovie("e1", "e1", 1);
_root.attachMovie("e0", "e0", 0);
Entity = new Array(e2, e0, e1);
Frame 111
var CountDownTime = 8;
var PowerPillNumber = Math.max(4, 7 - Lives);
var HealthPackNumber = (6 - WeightLivesLevels(2, 2));
InitialiseMapItem(PowerPillNumber, 3);
InitialiseMapItem(HealthPackNumber, 5);
Sentence = 6 - WeightLivesLevels(2, 3);
var NextBrewskiX = px;
var NextBrewskiY = py;
var BrewskiOnMap = false;
BrewSki = new Sound();
var BrewSkiCount = 0;
InitialiseHUDpellets();
var PelletsEaten = 0;
var PelletsMax = 0;
CountPellets();
var ParTime = Math.ceil((PelletsMax - WeightLivesLevels(0, 48)) / 2);
CountDown.CruiseTime = PelletsMax - Math.ceil((PelletsMax / 100) * Math.min(66, (CurrentLevel * 2) + 5));
InitialiseStemCells();
Frame 112
var eCount = Entity.length;
var eL = new Array(e0, e1, e2);
if (CurrentLevel == 1) {
e1.Sentence = 4;
e0.Sentence = 7;
e2.Sentence = 8;
} else {
e1.Sentence = 2;
e0.Sentence = 4;
e2.Sentence = 6;
}
for (var e in Entity) {
Entity[e]._x = Centre_X;
Entity[e]._visible = false;
CreateBeacon(Entity[e], e);
Entity[e].Vulnerable = false;
Entity[e].Exorcised = true;
Entity[e].gotoAndPlay("GoToJail");
}
var lastCryptExit = getTimer();
Bushism.attachSound("BushStart" + (CurrentLevel % 12));
Bushism.onSoundComplete = function () {
gotoAndPlay (113);
};
Bushism.start();
stop();
Frame 113
var PlayerAlive = true;
var z = true;
Swoosh = new Sound(Blip);
Swoosh.attachSound("Swoosh");
Mouse.hide();
InitialiseScatterTimes();
ResetScatter();
if ((BestScore <= 537) && (CurrentLevel == 1)) {
PopUpPager((("Level " + CurrentLevel) + newline) + "Use the arrow keys to move");
} else {
PopUpPager("Level " + CurrentLevel);
}
startTime = getTimer();
Frame 115
var x = px;
var y = py;
var i = 0;
var eL = [e0, e1, e2];
var depth = 2;
do {
eval ("StemCell" + i).gotoAndStop(M[x][y]);
for (var e in eL) {
if ((x == eL[e].x) && (y == eL[e].y)) {
eL[e]._y = DepthCell_Y[i];
eL[e]._yscale = DepthCell_Mag[i];
eL[e]._xscale = DepthCell_Mag[i];
eL[e]._visible = true;
eL[e]._x = Xoffset[i][depth];
if (eL[e].getDepth() != depth) {
eL[e].swapDepths(depth);
}
depth--;
eL.splice(e, 1);
}
}
if (M[x + vy][y - vx] == 0) {
LW[i].gotoAndStop(1);
} else {
LW[i].gotoAndStop(2);
}
if (M[x - vy][y + vx] == 0) {
RW[i].gotoAndStop(1);
} else {
RW[i].gotoAndStop(2);
}
x = ((23 + vx) + x) % 23;
y = ((23 + vy) + y) % 23;
i++;
} while ((i < DrawDistance) && (M[x][y] != 0));
if (M[x][y] == 0) {
CW.gotoAndStop(i);
} else {
CW.gotoAndStop(9);
}
for (var e in eL) {
if (eL[e]._visible) {
eL[e]._visible = false;
}
}
var j = i;
while (j < DrawDistance) {
eval ("StemCell" + j).gotoAndStop(1);
j++;
}
Frame 116
if (Kd(38)) {
var Move = true;
if (((Loff && (Kd(Kl))) && (!Kd(Kr))) && (M[px + vy][py - vx] != 0)) {
TurnL();
var Loff = false;
var Move = false;
} else if (((Roff && (Kd(Kr))) && (!Kd(Kl))) && (M[px - vy][py + vx] != 0)) {
TurnR();
var Roff = false;
var Move = false;
}
if (Move) {
var x = (((23 + px) + vx) % 23);
var y = (((23 + py) + vy) % 23);
for (var e in Entity) {
if ((x == Entity[e].x) && (y == Entity[e].y)) {
var Move = false;
if (GhostHunt) {
if (Entity[e].Vulnerable) {
if (!Entity[e].Exorcised) {
Exorcise(Entity[e]);
}
}
}
}
}
}
} else if (Kd(40)) {
var Move = true;
var x = (((23 + px) - vx) % 23);
var y = (((23 + py) - vy) % 23);
for (var e in Entity) {
if ((x == Entity[e].x) && (y == Entity[e].y)) {
var Move = false;
}
}
} else {
var Move = false;
if (Roff && (Kd(Kr))) {
TurnR();
var Roff = false;
}
if (Loff && (Kd(Kl))) {
TurnL();
var Loff = false;
}
}
if (Move) {
if (M[x][y] != 0) {
if (z) {
px = x;
py = y;
Blip._x = (3 * px) + mapX;
Blip._y = (3 * py) + mapY;
var z = false;
} else {
var z = true;
}
} else if ((Kd(Kl) && (!Kd(Kr))) && (M[px + vy][py - vx] != 0)) {
TurnL();
} else if ((Kd(Kr) && (!Kd(Kl))) && (M[px - vy][py + vx] != 0)) {
TurnR();
} else {
WallAlert.start(0, 1);
}
} else {
var z = true;
}
Frame 117
switch (M[px][py]) {
case 1 :
break;
case 2 :
EatPellet(px, py);
break;
case 3 :
StartGhostHunt(px, py);
break;
case 4 :
DrinkBrewSki();
break;
case 5 :
if (Health < MaxHealth) {
HealthUp(px, py);
}
break;
case 6 :
if (OffGate) {
GateSound.start(0.1, 1);
var OffGate = false;
}
break;
case 7 :
var OffGate = true;
break;
case 8 :
if (ComeFromThreshold) {
CryptSounds.stop();
CryptSounds.attachSound("CryptSlam");
CryptSounds.start(0.05, 1);
}
var ComeFromMaze = true;
var ComeFromCrypt = false;
var ComeFromThreshold = false;
break;
case 9 :
if (ComeFromMaze) {
CryptSounds.stop();
CryptSounds.attachSound("CryptCreak");
CryptSounds.start(0.05, 1);
}
var ComeFromMaze = false;
var ComeFromCrypt = false;
var ComeFromThreshold = true;
break;
case 10 :
if (ComeFromThreshold) {
CryptSounds.stop();
CryptSounds.attachSound("CryptScream");
CryptSounds.start(0.02, 1);
}
var ComeFromMaze = false;
var ComeFromCrypt = true;
var ComeFromThreshold = false;
HealthDown(0.2);
}
if (!Kd(Kr)) {
var Roff = true;
}
if (!Kd(Kl)) {
var Loff = true;
}
gotoAndPlay (115);
Frame 118
finishTime = getTimer();
elapsedSeconds = Math.round((finishTime - startTime) / 1000);
stopAllSounds();
ClearScreen();
Mouse.show();
CompletionBonus = 0;
LivesBonus = 0;
TimeBonus = 0;
if (LevelComplete) {
CompletionBonus = 100 * CurrentLevel;
LivesBonus = 100 * Lives;
if (elapsedSeconds < (2 * ParTime)) {
TimeBonus = ((2 * ParTime) - elapsedSeconds) * 10;
}
if (elapsedSeconds < ParTime) {
TimeBonus = TimeBonus + ((ParTime - elapsedSeconds) * 20);
}
}
Score = Score + ((CompletionBonus + TimeBonus) + LivesBonus);
if (GameOver && (Score > BestScore)) {
BestScore = Score;
}
CompletionText = ("Level " + CurrentLevel) + " completed";
TimeTakenText = ("Time taken: " + elapsedSeconds) + " seconds";
TargetTimeText = ("Par: " + ParTime) + " seconds";
TotalScoreText = "Total Score: " + Score;
HighScoreText = "High Score: " + BestScore;
if (LevelComplete) {
gotoAndStop (119);
} else {
gotoAndStop (120);
}
((((", Lev: " + CurrentLevel) + ", Map: ") + MapNumber) + ", Health: ") + Health;
((((((((((((", Comrades = " + e0.Comrades.toString()) + ", var = ") + e0.testvar) + ", x = ") + e0.x) + ", y = ") + e0.y) + ", Exorc = ") + e0.Exorcised) + ", Vuln = ") + e0.Vulnerable) + ", Sent = ") + e0.Sentence;
((((((((((((((((" PelletsEaten: " + PelletsEaten) + ", PelletsMax: ") + PelletsMax) + ", Cruise:") + CountDown.CruiseTime) + ", Sent: ") + Sentence) + ", lastCryptExit: ") + lastCryptExit) + ", timer: ") + getTimer()) + ", Health: ") + HealthPackNumber) + ", Count: ") + CountDownTime) + ", ParTime = ") + ParTime;
Frame 119
Frame 120
if (CurrentLevel > NumberOfMaps) {
gotoAndStop (121);
} else {
stop();
}
Frame 121
stop();
Symbol 85 MovieClip [e2] Frame 1
var damage = 2.5;
CryptCreak = new Sound(this);
CryptCreak.attachSound("CryptCreak");
CryptSlam = new Sound(this);
CryptSlam.attachSound("CryptSlam");
MoveSound1 = new Sound(this);
MoveSound1.attachSound("FDR_Move");
MoveSound2 = new Sound(this);
MoveSound2.attachSound("FDR_MoveAlt");
attackSound = new Sound(this);
attackSound.attachSound("FDR_attack");
FleeSound = new Sound(this);
FleeSound.attachSound("FDR_Flee");
HauntSound = new Sound(this);
HauntSound.attachSound("FDR_Haunt");
PopSound = new Sound(this);
PopSound.attachSound("FDR_Pop");
Symbol 85 MovieClip [e2] Frame 2
function PathFind() {
if (Nc[x][y] != 0) {
var Tc = 0;
if (tx > 1) {
Tc = 2;
} else if (tx < -1) {
Tc = 8;
}
if (ty > 1) {
Tc = Tc + 4;
} else if (ty < -1) {
Tc = Tc + 1;
}
Tc = Tc & Nc[x][y];
if ((tx != 0) && (ty != 0)) {
Tc = Tc & (15 ^ Rc[Dc]);
}
if (Tc > 0) {
switch (Oc[Tc].length) {
case 1 :
Dc = Oc[Tc][0];
break;
case 2 :
Dc = Oc[Tc & (15 ^ Rc[Dc])][0];
}
} else {
switch (Oc[Nc[x][y]].length) {
case 1 :
Dc = Nc[x][y];
break;
case 2 :
Dc = Oc[Nc[x][y] & (15 ^ Rc[Dc])][0];
break;
case 3 :
if ((Nc[x][y] & Dc) != 0) {
break;
}
Dc = Oc[Nc[x][y]][0];
}
}
}
x = x + dx[Dc];
y = y + dy[Dc];
}
stop();
Symbol 85 MovieClip [e2] Frame 3
if (!Scatter) {
tx = _root.px - x;
ty = _root.py - y;
} else {
tx = ScatterX - x;
ty = ScatterY - y;
}
PathFind();
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
Symbol 85 MovieClip [e2] Frame 8
_root.SoundEffect(this, MoveSound1, 1);
Symbol 85 MovieClip [e2] Frame 13
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, HauntSound)) {
HauntSound.stop();
HauntSound.start(0.1, 1);
var Ready2Speak = false;
Scatter = false;
}
}
} else {
var Ready2Speak = true;
if (_root.Scatter) {
Scatter = true;
}
}
Symbol 85 MovieClip [e2] Frame 17
_root.SoundEffect(this, MoveSound2, 1);
Symbol 85 MovieClip [e2] Frame 21
tx = _root.px - x;
ty = _root.py - y;
if (Vulnerable) {
gotoAndPlay (73);
} else if (((Math.abs(tx) < 2) && (Math.abs(ty) < 2)) && ((tx == 0) || (ty == 0))) {
var pxLast = _root.px;
var pyLast = _root.py;
gotoAndPlay (22);
} else {
gotoAndPlay (3);
}
Symbol 85 MovieClip [e2] Frame 22
HauntSound.stop();
_root.SoundEffect(this, attackSound, 1);
Symbol 85 MovieClip [e2] Frame 27
if ((_root.px == pxLast) && (_root.py == pyLast)) {
_root.HealthDown(damage);
}
Symbol 85 MovieClip [e2] Frame 72
if ((_root.px == pxLast) && (_root.py == pyLast)) {
gotoAndPlay (22);
} else {
gotoAndPlay (3);
}
Symbol 85 MovieClip [e2] Frame 73
var Ready2Speak = true;
HauntSound.stop();
Dc = Rc[Dc];
Symbol 85 MovieClip [e2] Frame 78
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0.1, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 85 MovieClip [e2] Frame 95
tx = x - _root.px;
ty = y - _root.py;
if ((tx == 0) && (ty == 0)) {
Dc = Rc[Dc];
} else {
PathFind();
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
gotoAndPlay (96);
}
Symbol 85 MovieClip [e2] Frame 98
_root.SoundEffect(this, MoveSound2, 1);
Symbol 85 MovieClip [e2] Frame 100
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0.1, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 85 MovieClip [e2] Frame 103
_root.SoundEffect(this, MoveSound1, 1);
Symbol 85 MovieClip [e2] Frame 105
if (Exorcised) {
gotoAndPlay (127);
} else if (Vulnerable) {
gotoAndPlay (95);
} else {
gotoAndPlay (3);
}
Symbol 85 MovieClip [e2] Frame 106
Symbol 85 MovieClip [e2] Frame 125
gotoAndPlay (150);
Symbol 85 MovieClip [e2] Frame 127
Symbol 85 MovieClip [e2] Frame 146
FleeSound.stop();
_root.SoundEffect(this, PopSound, 1);
Symbol 85 MovieClip [e2] Frame 149
gotoAndPlay (150);
Symbol 85 MovieClip [e2] Frame 150
this._alpha = 0;
x = 11;
y = 12;
var Dc = 1;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
_root.LoLiteBeacon(myBeacon);
Symbol 85 MovieClip [e2] Frame 179
if (_root.PlayerAlive) {
Sentence--;
}
if (((Sentence > 0) || (getTimer() < (_root.lastCryptExit + 1500))) || ((_root.px == 11) && (_root.py == 11))) {
gotoAndPlay (151);
} else {
_root.lastCryptExit = getTimer();
}
Symbol 85 MovieClip [e2] Frame 180
this._alpha = 70;
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptCreak, 1);
}
x = 11;
y = 11;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
Symbol 85 MovieClip [e2] Frame 210
_root.Parole(this);
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptSlam, 1);
}
gotoAndPlay (3);
Symbol 103 MovieClip [e1] Frame 1
var damage = 0.75;
CryptCreak = new Sound(this);
CryptCreak.attachSound("CryptCreak");
CryptSlam = new Sound(this);
CryptSlam.attachSound("CryptSlam");
MoveSound1 = new Sound(this);
MoveSound1.attachSound("Abe_Move");
MoveSound2 = new Sound(this);
MoveSound2.attachSound("Abe_MoveAlt");
Punch = new Sound(this);
Punch.attachSound("Abe_Kick");
attackSound = new Sound(this);
attackSound.attachSound("Nixon_attack");
FleeSound = new Sound(this);
FleeSound.attachSound("Abe_Flee");
HauntSound = new Sound(this);
HauntSound.attachSound("Abe_Haunt");
PopSound = new Sound(this);
PopSound.attachSound("Abe_Pop");
Symbol 103 MovieClip [e1] Frame 2
function PathFind() {
if (Nc[x][y] != 0) {
var Tc = 0;
if (tx > 1) {
Tc = 2;
} else if (tx < -1) {
Tc = 8;
}
if (ty > 1) {
Tc = Tc + 4;
} else if (ty < -1) {
Tc = Tc + 1;
}
Tc = Tc & Nc[x][y];
if (Tc > 0) {
switch (Oc[Tc].length) {
case 1 :
Dc = Oc[Tc][0];
break;
case 2 :
Dc = Oc[Tc & (15 ^ Rc[Dc])][1];
}
} else {
switch (Oc[Nc[x][y]].length) {
case 1 :
Dc = Nc[x][y];
break;
case 2 :
Dc = Oc[Nc[x][y] & (15 ^ Rc[Dc])][0];
break;
case 3 :
if ((Nc[x][y] & Dc) != 0) {
break;
}
Dc = Oc[Nc[x][y]][1];
}
}
}
x = x + dx[Dc];
y = y + dy[Dc];
}
stop();
Symbol 103 MovieClip [e1] Frame 3
if (!Scatter) {
tx = _root.px - x;
ty = _root.py - y;
} else {
tx = ScatterX - x;
ty = ScatterY - y;
}
PathFind();
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
Symbol 103 MovieClip [e1] Frame 5
_root.SoundEffect(this, MoveSound1, 1);
Symbol 103 MovieClip [e1] Frame 9
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, HauntSound)) {
HauntSound.stop();
HauntSound.start(0.2, 1);
var Ready2Speak = false;
Scatter = false;
}
}
} else {
var Ready2Speak = true;
if (_root.Scatter) {
Scatter = true;
}
}
Symbol 103 MovieClip [e1] Frame 12
_root.SoundEffect(this, MoveSound2, 1);
Symbol 103 MovieClip [e1] Frame 15
tx = _root.px - x;
ty = _root.py - y;
if (Vulnerable) {
gotoAndPlay (39);
} else if (((Math.abs(tx) < 2) && (Math.abs(ty) < 2)) && ((tx == 0) || (ty == 0))) {
var pxLast = _root.px;
var pyLast = _root.py;
gotoAndPlay (16);
} else {
gotoAndPlay (3);
}
Symbol 103 MovieClip [e1] Frame 16
Symbol 103 MovieClip [e1] Frame 20
if ((_root.px == pxLast) && (_root.py == pyLast)) {
HauntSound.stop();
_root.SoundEffect(this, Punch, 1);
_root.HealthDown(damage);
} else {
gotoAndPlay (3);
}
Symbol 103 MovieClip [e1] Frame 28
if ((_root.px == pxLast) && (_root.py == pyLast)) {
_root.SoundEffect(this, Punch, 1);
_root.HealthDown(damage);
} else {
gotoAndPlay (3);
}
Symbol 103 MovieClip [e1] Frame 38
if ((_root.px == pxLast) && (_root.py == pyLast)) {
gotoAndPlay (16);
} else {
gotoAndPlay (3);
}
Symbol 103 MovieClip [e1] Frame 39
var Ready2Speak = true;
HauntSound.stop();
Dc = Rc[Dc];
Symbol 103 MovieClip [e1] Frame 44
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 103 MovieClip [e1] Frame 59
tx = x - _root.px;
ty = y - _root.py;
if ((tx == 0) && (ty == 0)) {
Dc = Rc[Dc];
} else {
PathFind();
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
gotoAndPlay (60);
}
Symbol 103 MovieClip [e1] Frame 64
_root.SoundEffect(this, MoveSound2, 1);
Symbol 103 MovieClip [e1] Frame 67
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 103 MovieClip [e1] Frame 70
_root.SoundEffect(this, MoveSound1, 1);
Symbol 103 MovieClip [e1] Frame 75
if (Exorcised) {
gotoAndPlay (112);
} else if (Vulnerable) {
gotoAndPlay (59);
} else {
gotoAndPlay (3);
}
Symbol 103 MovieClip [e1] Frame 76
Symbol 103 MovieClip [e1] Frame 110
gotoAndPlay (132);
Symbol 103 MovieClip [e1] Frame 112
FleeSound.stop();
_root.SoundEffect(this, PopSound, 1);
Symbol 103 MovieClip [e1] Frame 131
gotoAndPlay (132);
Symbol 103 MovieClip [e1] Frame 132
this._alpha = 0;
x = 11;
y = 12;
var Dc = 1;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
_root.LoLiteBeacon(myBeacon);
Symbol 103 MovieClip [e1] Frame 161
if (_root.PlayerAlive) {
Sentence--;
}
if (((Sentence > 0) || (getTimer() < (_root.lastCryptExit + 1500))) || ((_root.px == 11) && (_root.py == 11))) {
gotoAndPlay (133);
} else {
_root.lastCryptExit = getTimer();
}
Symbol 103 MovieClip [e1] Frame 162
this._alpha = 70;
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptCreak, 1);
}
x = 11;
y = 11;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
Symbol 103 MovieClip [e1] Frame 192
_root.Parole(this);
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptSlam, 1);
}
gotoAndPlay (3);
Symbol 124 MovieClip [e0] Frame 1
var damage = 0.5;
var MoveStyle = "Walk";
CryptCreak = new Sound(this);
CryptCreak.attachSound("CryptCreak");
CryptSlam = new Sound(this);
CryptSlam.attachSound("CryptSlam");
MoveSound = new Sound(this);
MoveSound.attachSound("FootSteps");
Punch = new Sound(this);
Punch.attachSound("Punch");
attackSound = new Sound(this);
attackSound.attachSound("Nixon_attack");
FleeSound = new Sound(this);
FleeSound.attachSound("Nixon_Flee");
HauntSound = new Sound(this);
HauntSound.attachSound("Nixon_Haunt");
CruiseStart = new Sound(this);
CruiseStart.attachSound("Nixon_CruiseStart");
HauntSound2 = new Sound(this);
HauntSound2.attachSound("Nixon_HauntCruise");
PopSound = new Sound(this);
PopSound.attachSound("Nixon_Pop");
Symbol 124 MovieClip [e0] Frame 2
function PathFind() {
if (Nc[x][y] != 0) {
var Tc = 0;
if (tx > 1) {
Tc = 2;
} else if (tx < -1) {
Tc = 8;
}
if (ty > 1) {
Tc = Tc + 4;
} else if (ty < -1) {
Tc = Tc + 1;
}
Tc = Tc & Nc[x][y];
if (Tc > 0) {
switch (Oc[Tc].length) {
case 1 :
Dc = Oc[Tc][0];
break;
case 2 :
Dc = Oc[Tc & (15 ^ Rc[Dc])][0];
}
} else {
switch (Oc[Nc[x][y]].length) {
case 1 :
Dc = Nc[x][y];
break;
case 2 :
Dc = Oc[Nc[x][y] & (15 ^ Rc[Dc])][0];
break;
case 3 :
if ((Nc[x][y] & Dc) != 0) {
break;
}
Dc = Oc[Nc[x][y]][0];
}
}
}
x = x + dx[Dc];
y = y + dy[Dc];
}
stop();
Symbol 124 MovieClip [e0] Frame 3
if (!Scatter) {
tx = _root.px - x;
ty = _root.py - y;
} else {
tx = ScatterX - x;
ty = ScatterY - y;
}
PathFind();
testvar = ((((((((((((((((((((((" name: " + this._name) + " movestyle: ") + MoveStyle) + " x: ") + x) + " y: ") + y) + " ScatX = ") + ScatterX) + ", ScatY = ") + ScatterY) + " Dc: ") + Dc) + " tx: ") + tx) + " ty: ") + ty) + " Tc: ") + Tc) + " Tc_raw: ") + Tc_raw) + " Nc: ") + Nc[x][y];
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
gotoAndPlay(MoveStyle);
Symbol 124 MovieClip [e0] Frame 6
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 11
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, HauntSound)) {
HauntSound.stop();
HauntSound.start(0.04, 1);
var Ready2Speak = false;
Scatter = false;
}
}
} else {
var Ready2Speak = true;
if (_root.Scatter) {
Scatter = true;
}
}
Symbol 124 MovieClip [e0] Frame 15
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 19
tx = _root.px - x;
ty = _root.py - y;
if (Vulnerable) {
gotoAndPlay (37);
} else if (((Math.abs(tx) < 2) && (Math.abs(ty) < 2)) && ((tx == 0) || (ty == 0))) {
var pxLast = _root.px;
var pyLast = _root.py;
var attackVoiced = false;
gotoAndPlay (20);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 20
if (!attackVoiced) {
HauntSound.stop();
_root.SoundEffect(this, attackSound, 1);
attackVoiced = true;
}
Symbol 124 MovieClip [e0] Frame 24
if ((_root.px == pxLast) && (_root.py == pyLast)) {
_root.SoundEffect(this, Punch, 1);
_root.HealthDown(damage);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 32
if ((_root.px == pxLast) && (_root.py == pyLast)) {
_root.SoundEffect(this, Punch, 1);
_root.HealthDown(damage);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 36
if ((_root.px == pxLast) && (_root.py == pyLast)) {
gotoAndPlay (20);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 37
var Ready2Speak = true;
HauntSound.stop();
Dc = Rc[Dc];
Symbol 124 MovieClip [e0] Frame 42
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 124 MovieClip [e0] Frame 56
tx = x - _root.px;
ty = y - _root.py;
if ((tx == 0) && (ty == 0)) {
Dc = Rc[Dc];
} else {
PathFind();
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
gotoAndPlay (57);
}
Symbol 124 MovieClip [e0] Frame 59
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 62
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, FleeSound)) {
FleeSound.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 124 MovieClip [e0] Frame 65
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 68
if (Exorcised) {
gotoAndPlay (100);
} else if (Vulnerable) {
gotoAndPlay (56);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 69
Symbol 124 MovieClip [e0] Frame 98
gotoAndPlay (119);
Symbol 124 MovieClip [e0] Frame 100
FleeSound.stop();
_root.SoundEffect(this, PopSound, 1);
Symbol 124 MovieClip [e0] Frame 118
gotoAndPlay (119);
Symbol 124 MovieClip [e0] Frame 119
this._alpha = 0;
x = 11;
y = 12;
var Dc = 1;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
_root.LoLiteBeacon(myBeacon);
Symbol 124 MovieClip [e0] Frame 148
if (_root.PlayerAlive) {
Sentence--;
}
if (((Sentence > 0) || (getTimer() < (_root.lastCryptExit + 1500))) || ((_root.px == 11) && (_root.py == 11))) {
gotoAndPlay (120);
} else {
_root.lastCryptExit = getTimer();
}
Symbol 124 MovieClip [e0] Frame 149
this._alpha = 70;
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptCreak, 1);
}
x = 11;
y = 11;
myBeacon._x = (3 * x) + mapX;
myBeacon._y = (3 * y) + mapY;
Symbol 124 MovieClip [e0] Frame 184
_root.Parole(this);
if (!((_root.px == 11) && (_root.py == 10))) {
_root.SoundEffect(this, CryptSlam, 1);
}
gotoAndPlay (3);
Symbol 124 MovieClip [e0] Frame 186
Symbol 124 MovieClip [e0] Frame 188
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 192
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, HauntSound2)) {
HauntSound2.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 124 MovieClip [e0] Frame 195
tx = _root.px - x;
ty = _root.py - y;
if (Vulnerable) {
gotoAndPlay (37);
} else if (((Math.abs(tx) < 2) && (Math.abs(ty) < 2)) && ((tx == 0) || (ty == 0))) {
var pxLast = _root.px;
var pyLast = _root.py;
var attackVoiced = false;
gotoAndPlay (20);
} else {
gotoAndPlay (3);
}
Symbol 124 MovieClip [e0] Frame 197
Symbol 124 MovieClip [e0] Frame 198
_root.SoundEffect(this, MoveSound, 2);
Symbol 124 MovieClip [e0] Frame 200
if ((x == _root.px) || (y == _root.py)) {
if (Ready2Speak) {
if (_root.EntitySpeak(this, HauntSound2)) {
HauntSound2.stop();
HauntSound2.start(0, 1);
var Ready2Speak = false;
}
}
} else {
var Ready2Speak = true;
}
Symbol 124 MovieClip [e0] Frame 202
tx = _root.px - x;
ty = _root.py - y;
if (Vulnerable) {
gotoAndPlay (37);
} else if (((Math.abs(tx) < 2) && (Math.abs(ty) < 2)) && ((tx == 0) || (ty == 0))) {
var pxLast = _root.px;
var pyLast = _root.py;
var attackVoiced = false;
gotoAndPlay (20);
} else {
gotoAndPlay (3);
}
Symbol 129 MovieClip Frame 1
CheneyTweet = new Sound(this);
Symbol 129 MovieClip Frame 2
if (!_root.GameOver) {
CheneyTweet.setVolume(100);
CheneyTweet.attachSound("CheneyTweet");
CheneyTweet.start(0, 3);
} else {
CheneyTweet.setVolume(30);
CheneyTweet.attachSound("CheneyTweet");
CheneyTweet.start(0, 3);
}
Symbol 129 MovieClip Frame 3
this._alpha = 100;
CheneyTweet.setPan(-100);
Symbol 129 MovieClip Frame 26
CheneyTweet.setPan(0);
Symbol 129 MovieClip Frame 52
this._alpha = 0;
CheneyTweet.setPan(100);
Symbol 129 MovieClip Frame 58
CheneyTweet.setPan(0);
Symbol 129 MovieClip Frame 62
if (_root.GameOver) {
CheneyTweet.setVolume(25);
}
gotoAndPlay (3);
Symbol 132 MovieClip Frame 1
CondiTweet = new Sound(this);
Symbol 132 MovieClip Frame 2
if (!_root.GameOver) {
CondiTweet.setVolume(100);
CondiTweet.attachSound("CondiTweet");
CondiTweet.start(0, 3);
} else {
CondiTweet.setVolume(20);
CondiTweet.attachSound("CondiTweet");
CondiTweet.start(0, 1);
}
Symbol 132 MovieClip Frame 3
this._alpha = 0;
CondiTweet.setPan(-100);
Symbol 132 MovieClip Frame 8
CondiTweet.setPan(0);
Symbol 132 MovieClip Frame 15
this._alpha = 100;
CondiTweet.setPan(100);
Symbol 132 MovieClip Frame 40
CondiTweet.setPan(0);
Symbol 132 MovieClip Frame 62
gotoAndPlay (3);
Symbol 133 MovieClip [DeathScene] Frame 1
_root.MountDeathScene();
this._x = 300;
this._y = 200;
var DeathLoopCount = 39;
Death = new Sound(this);
Symbol 133 MovieClip [DeathScene] Frame 2
stopAllSounds();
Death.attachSound("Death");
Death.onSoundComplete = function () {
gotoAndPlay (3);
if (_root.GameOver) {
_root.Bushism.attachSound("GO_RefusePlay");
_root.Bushism.onSoundComplete = function () {
_root.PopUpPager("No lives left");
};
_root.Bushism.start();
}
};
Death.start(0, 1);
stop();
Symbol 133 MovieClip [DeathScene] Frame 3
Symbol 133 MovieClip [DeathScene] Frame 6
DeathLoopCount--;
if (DeathLoopCount < 1) {
_root.DismountDeathScene();
stop();
} else {
gotoAndPlay (3);
}
Symbol 143 MovieClip Frame 1
PercentageLoaded = Math.floor((_root._framesloaded / _root._totalframes) * 100);
Symbol 149 Button
on (release) {
gotoAndPlay (5);
}
Symbol 153 Button
on (release) {
IntroSounds.stop();
gotoAndStop (94);
}
Symbol 167 MovieClip Frame 1
Swoosh = new Sound(this);
Swoosh.attachSound("Swoosh");
Strike = new Sound(this);
Strike.attachSound("Strike");
Swoosh.setVolume(120);
Swoosh.setPan(-100);
Swoosh.start(0, 1);
Symbol 167 MovieClip Frame 13
Swoosh.setVolume(110);
Swoosh.setPan(100);
Swoosh.start(0, 1);
Symbol 167 MovieClip Frame 36
Strike.setVolume(100);
Strike.setPan(0);
Strike.start(0, 1);
Symbol 167 MovieClip Frame 60
stop();
Symbol 168 MovieClip Frame 5
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 9
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 15
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 19
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 24
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 30
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 35
_root.EatingSound.start(0, 1);
Symbol 168 MovieClip Frame 43
stop();
Symbol 169 Button
on (release) {
gotoAndPlay (96);
}
Symbol 175 Button
on (release) {
gotoAndStop (95);
}
Symbol 186 Button
on (release) {
IntroSounds.attachSound("ScatterOn");
IntroSounds.start(0, 4);
}
Symbol 188 Button
on (release) {
IntroSounds.attachSound("ScatterOff");
IntroSounds.start(0, 8);
}
Symbol 190 Button
on (release) {
IntroSounds.attachSound("CruiseAlert");
IntroSounds.start(0, 3);
}
Symbol 198 MovieClip Frame 1
stop();
Symbol 198 MovieClip Frame 2
stop();
Symbol 207 MovieClip Frame 1
stop();
Symbol 207 MovieClip Frame 2
stop();
Symbol 207 MovieClip Frame 3
stop();
Symbol 207 MovieClip Frame 4
stop();
Symbol 207 MovieClip Frame 5
stop();
Symbol 207 MovieClip Frame 6
stop();
Symbol 207 MovieClip Frame 7
stop();
Symbol 207 MovieClip Frame 8
stop();
Symbol 207 MovieClip Frame 9
stop();
Symbol 213 MovieClip Frame 1
if (_parent._name == "StemCell0") {
gotoAndPlay (2);
}
stop();
Symbol 213 MovieClip Frame 2
if ((_root.py == 0) && (_root.vx != 0)) {
gotoAndPlay (3);
} else if ((_root.px == 0) && (_root.vy != 0)) {
gotoAndPlay (3);
} else {
gotoAndPlay (2);
}
Symbol 213 MovieClip Frame 3
if ((_root.py == 0) && (_root.vx != 0)) {
gotoAndPlay (3);
} else if ((_root.px == 0) && (_root.vy != 0)) {
gotoAndPlay (3);
} else {
gotoAndPlay (2);
}
Symbol 219 MovieClip Frame 1
if (_parent._name == "StemCell1") {
gotoAndStop (2);
} else if (_parent._name == "StemCell0") {
gotoAndPlay (3);
}
stop();
Symbol 219 MovieClip Frame 2
stop();
Symbol 219 MovieClip Frame 3
if (_root.vy == 1) {
gotoAndPlay (3);
} else {
gotoAndPlay (4);
}
Symbol 219 MovieClip Frame 4
if (_root.vy == 1) {
gotoAndPlay (3);
} else {
gotoAndPlay (4);
}
Symbol 220 MovieClip Frame 1
stop();
Symbol 220 MovieClip Frame 2
stop();
Symbol 220 MovieClip Frame 3
stop();
Symbol 220 MovieClip Frame 4
stop();
Symbol 220 MovieClip Frame 5
stop();
Symbol 220 MovieClip Frame 6
stop();
Symbol 220 MovieClip Frame 7
stop();
Symbol 220 MovieClip Frame 8
stop();
Symbol 220 MovieClip Frame 9
stop();
Symbol 220 MovieClip Frame 10
stop();
Symbol 252 MovieClip Frame 1
stop();
Symbol 252 MovieClip Frame 2
stop();
Symbol 252 MovieClip Frame 3
stop();
Symbol 252 MovieClip Frame 4
stop();
Symbol 252 MovieClip Frame 5
stop();
Symbol 252 MovieClip Frame 6
stop();
Symbol 255 MovieClip Frame 1
function ExtraLifeCheck() {
if (_root.Score >= _root.OneUpTarget) {
if (_root.Lives < 3) {
_root.OneUpTarget = _root.OneUpTarget + _root.OneUpStep;
} else {
_root.OneUpTarget = _root.OneUpTarget + (2 * _root.OneUpStep);
}
_root.Lives++;
ExtraMan.start(0, 7);
_root.PopUpPager(("1-up. Next life after " + _root.OneUpTarget) + " points");
LF = false;
}
}
function CruiseCheck() {
if (_root.PelletsEaten > CruiseTime) {
if (_root.Lives > 3) {
CruiseAlert.start(0, 6);
_root.e0.MoveStyle = "Crooze";
} else {
CruiseAlert.start(0, 3);
_root.e0.MoveStyle = "Cruise";
}
CF = false;
}
}
var LF = true;
var CF = true;
ExtraMan = new Sound(this);
ExtraMan.attachSound("ExtraMan");
CruiseAlert = new Sound(this);
CruiseAlert.attachSound("CruiseAlert");
stop();
Symbol 255 MovieClip Frame 8
if (LF) {
ExtraLifeCheck();
}
Symbol 255 MovieClip Frame 15
if (CF) {
CruiseCheck();
}
Symbol 255 MovieClip Frame 23
if (Clock >= ScatterTimes[ScatterIndex]) {
_root.RemoveBrewski();
if ((_root.NextBrewskiX != _root.px) && (_root.NextBrewskiY != _root.py)) {
_root.PlaceBrewski();
}
if (_root.M[_root.px][_root.py] < 3) {
_root.NextBrewskiX = _root.px;
_root.NextBrewskiY = _root.py;
}
if (_root.Scatter) {
_root.ScatterStop();
} else {
_root.ScatterStart();
}
ScatterIndex++;
if (ScatterIndex == ScatterTimes.length) {
ScatterIndex = 0;
}
var Clock = 0;
}
Symbol 255 MovieClip Frame 30
Clock++;
this.gotoAndPlay("ClockStart");
Symbol 255 MovieClip Frame 36
Symbol 255 MovieClip Frame 39
if (LF) {
ExtraLifeCheck();
}
Symbol 255 MovieClip Frame 48
if (CF) {
CruiseCheck();
}
Symbol 255 MovieClip Frame 50
Symbol 255 MovieClip Frame 59
CountDownTime--;
if (_root.Scatter) {
Clock++;
}
if (CountDownTime > 3) {
this.gotoAndPlay("CountDownStart");
} else {
this.gotoAndPlay("FlashingStart");
}
Symbol 255 MovieClip Frame 60
this._visible = false;
Symbol 255 MovieClip Frame 65
Symbol 255 MovieClip Frame 68
if (LF) {
ExtraLifeCheck();
}
Symbol 255 MovieClip Frame 74
this._visible = true;
Symbol 255 MovieClip Frame 80
if (CF) {
CruiseCheck();
}
Symbol 255 MovieClip Frame 82
Symbol 255 MovieClip Frame 88
CountDownTime--;
if (_root.Scatter) {
Clock++;
}
if (CountDownTime > 0) {
if (CountDownTime < 3) {
this.gotoAndPlay("FlashingStart");
} else {
this.gotoAndPlay("CountDownStart");
}
} else {
_root.EndGhostHunt();
this.gotoAndPlay("ClockStart");
}
Symbol 257 MovieClip Frame 1
this._visible = false;
stop();
Symbol 257 MovieClip Frame 2
this._visible = true;
Symbol 267 MovieClip Frame 1
stop();
Symbol 267 MovieClip Frame 2
stop();
Symbol 281 Button
on (release) {
CurrentLevel++;
gotoAndPlay (109);
}
Symbol 295 Button
on (release) {
if (CurrentLevel == 1) {
Bushism.attachSound("GO_DeadLev1");
} else if (BestScore == Score) {
Bushism.attachSound("GO_HiScore");
} else {
Bushism.attachSound("GO_GoodJob");
}
Bushism.onSoundComplete = function () {
gotoAndStop (5);
};
Bushism.start();
}
Symbol 296 Button
on (release) {
Bushism.attachSound("BushContact");
Bushism.onSoundComplete = function () {
gotoAndStop (122);
};
Bushism.start();
}
Symbol 308 Button
on (release) {
getURL ("mailto:president@whitehouse.gov");
}
Symbol 313 Button
on (release) {
Bushism.attachSound("GO_uDontQuit");
Bushism.onSoundComplete = function () {
gotoAndStop (5);
};
Bushism.start();
}
Symbol 322 Button
on (release) {
getURL ("mailto:listenupsucka@hotmail.com");
}