Frame 1
stop();
Instance of Symbol 32 MovieClip [Play Button] "PlayMe" in Frame 1
onClipEvent (load) {
stop();
onMe = false;
_visible = false;
_xscale = 30;
_yscale = 30;
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_visible)) {
onMe = true;
gotoAndStop (2);
} else {
onMe = false;
gotoAndStop (1);
}
if (_root.SwordMask._currentframe == 101) {
_visible = true;
}
if (_visible && (_xscale < 100)) {
if (_xscale < 80) {
_xscale = (_xscale + 10);
_yscale = (_yscale + 10);
} else {
_xscale = (_xscale + 5);
_yscale = (_yscale + 5);
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_level0.play();
}
}
Instance of Symbol 29 MovieClip [Blanket of Goo] "GooBlanket" in Frame 1
onClipEvent (load) {
this.setMask(_root.SwordMask);
}
Instance of Symbol 136 MovieClip "SwordMask" in Frame 1
onClipEvent (load) {
stop();
}
onClipEvent (enterFrame) {
TotalNeeded = _level0.getBytesTotal();
HowMuchDone = _level0.getBytesLoaded();
PercentDone = int((HowMuchDone / TotalNeeded) * 100) + 1;
gotoAndStop(PercentDone);
}
Instance of Symbol 140 MovieClip "LoadingMarker" in Frame 1
onClipEvent (load) {
_xscale = 75;
_yscale = 75;
startingX = _x;
startingY = _y;
}
onClipEvent (enterFrame) {
Progress = _root.SwordMask._currentframe - 1;
if (Progress < 22) {
_x = (startingX + (20 * ((21 - Progress) / 21)));
} else if (Progress < 44) {
_x = (startingX + (20 * ((Progress - 21) / 22)));
} else {
_x = ((startingX + 20) + (155 * ((Progress - 43) / 57)));
}
_y = (startingY - (320 * (Progress / 100)));
}
Frame 3
stop();
Instance of Symbol 1055 MovieClip "innocuousLogo" in Frame 3
onClipEvent (load) {
_xscale = 90;
_yscale = 90;
throughOnce = false;
myAmb = new Sound(this);
myAmb.attachSound("LogoAmb");
myAmb.start(0);
myHit = new Sound(this);
myHit.attachSound("LogoHit");
}
onClipEvent (unload) {
myAmb.stop();
}
onClipEvent (enterFrame) {
if (_currentframe == 330) {
throughOnce = true;
}
if (throughOnce) {
if (_currentframe == 64) {
_visible = false;
}
} else if (_currentframe == 200) {
myHit.start(0);
}
}
Instance of Symbol 1058 MovieClip "ForAnd" in Frame 3
onClipEvent (load) {
_alpha = 0;
framesExisted = 0;
}
onClipEvent (enterFrame) {
if (_root.innocuousLogo._visible == false) {
if (framesExisted < 150) {
if (_alpha < 100) {
_alpha = (_alpha + 10);
}
} else if (framesExisted < 210) {
if (_alpha > 0) {
_alpha = (_alpha - 10);
}
} else {
_level0.nextFrame();
}
framesExisted++;
}
}
Instance of Symbol 1061 MovieClip "MadNonnieLogo" in Frame 3
onClipEvent (load) {
_alpha = 0;
framesExisted = 0;
_xscale = 40;
_yscale = 40;
}
onClipEvent (mouseDown) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_alpha > 50)) {
getURL ("http://www.MadNonnie.com", "blank");
}
}
onClipEvent (enterFrame) {
if (_root.innocuousLogo._visible == false) {
if (framesExisted < 150) {
if (_alpha < 100) {
_alpha = (_alpha + 5);
_xscale = (_xscale + 3);
_yscale = (_yscale + 3);
}
} else if (framesExisted < 210) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
}
}
framesExisted++;
}
}
Instance of Symbol 1063 MovieClip "NewgroundsLogo" in Frame 3
onClipEvent (load) {
_alpha = 0;
framesExisted = 0;
_xscale = 40;
_yscale = 40;
}
onClipEvent (mouseDown) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_alpha > 50)) {
getURL ("http://www.Newgrounds.com", "blank");
}
}
onClipEvent (enterFrame) {
if (_root.innocuousLogo._visible == false) {
if (framesExisted < 150) {
if (_alpha < 100) {
_alpha = (_alpha + 5);
_xscale = (_xscale + 3);
_yscale = (_yscale + 3);
}
} else if (framesExisted < 210) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
}
}
framesExisted++;
}
}
Instance of Symbol 1065 MovieClip [Disclaimer] "Disclaim" in Frame 4
onClipEvent (load) {
_alpha = 0;
framesExisted = 0;
}
onClipEvent (enterFrame) {
if (framesExisted < 100) {
_alpha = (_alpha+1);
} else if ((framesExisted > 200) && (framesExisted < 300)) {
_alpha = (_alpha-1);
} else if (framesExisted >= 300) {
_level0.nextFrame();
}
framesExisted++;
}
Frame 5
stop();
if (!RanOnce) {
_global.interval = 30;
_global.spawnLimit = 12;
_global.showFPS = false;
_global.musicMode = "On";
_global.floorMode = "Random";
subMenu = false;
_global.RanOnce = true;
_global.EnemiesSeen = new Array();
_global.EnemiesSeen.push("Gloople");
_global.EnemiesKilled = new Array();
_global.EnemiesKilled.push("Gloople");
_global.gameMode = null;
_global.GameTime = 0;
_global.PracticeEnemies = new Array();
_global.PracticeEnemies.push("Gloople");
_global.activeEnemies = new Array();
_global.EnemySet = new Array();
_global.EnemySet.push("Gloople");
_global.NestSize = 0;
_global.KillsLeft = 0;
_global.BountyRunHighScore = 0;
_global.SingleNestHighScore = 0;
_global.Rematch = false;
_global.RematchesLeft = 0;
_global.RazorGlaiveUnlocked = false;
_global.RazorGlaiveEquipped = false;
_global.SearchArray = function (ArraytoSearch, ItemtoFind) {
x = 0;
while (x < ArraytoSearch.length) {
if (ArraytoSearch[x] == ItemtoFind) {
return(x);
}
x++;
}
return(null);
};
mySound = new Sound();
_global.MakeNoise = function (NoisetoMake, startAt) {
mySound.attachSound(NoisetoMake);
mySound.start(startAt);
};
Music = new Sound(_root);
_global.lastSong = "";
_global.playSong = function (WhatSong) {
if (WhatSong != "tellMeAgain") {
Music.stop();
if (musicMode != "Off") {
Songname = _global.lastSong;
if (WhatSong == "juke") {
while (Songname == _global.lastSong) {
songPicker = int(Math.random() * 12) + 1;
switch (songPicker) {
case 1 :
Songname = "Invisible Walls";
break;
case 2 :
Songname = "Accelerated Lifestyle";
break;
case 3 :
Songname = "Double the Daily Dose";
break;
case 4 :
Songname = "Habitual Ritual";
break;
case 5 :
Songname = "Weekend Amnesia";
break;
case 6 :
Songname = "City Lights at Night";
break;
case 7 :
Songname = "Mind Mapping";
break;
case 8 :
Songname = "Ventus Solaris";
break;
case 9 :
Songname = "As We May Think";
break;
case 10 :
Songname = "Biomythos";
break;
case 11 :
Songname = "Obscure Terrain";
break;
case 12 :
Songname = "Effects of Elevation";
}
}
Music.attachSound(Songname);
_global.lastSong = Songname;
} else {
Music.attachSound(WhatSong);
_global.lastSong = WhatSong;
}
Music.onSoundComplete = function () {
_global.playSong("juke");
};
Music.start();
if (_root._currentframe < 7) {
_root.attachMovie("Jukebox Backdrop", "jukeboxBack", 6649);
with (_root.jukeboxBack) {
_x = 30;
_y = 30;
}
}
_root.attachMovie("Jukebox Display", "Jukebox", 6650);
with (_root.Jukebox) {
_x = 30;
_y = 30;
}
}
} else {
if (_root._currentframe < 7) {
_root.attachMovie("Jukebox Backdrop", "jukeboxBack", 6649);
with (_root.jukeboxBack) {
_x = 30;
_y = 30;
}
}
_root.attachMovie("Jukebox Display", "Jukebox", 6650);
with (_root.Jukebox) {
_x = 30;
_y = 30;
}
}
};
}
_global.playSong("Ventus Solaris");
Instance of Symbol 1085 MovieClip "Practice" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "Play freely with any or all of the Glooples that you have previously defeated";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_root.attachMovie("Practice Plate", "PracticeMenu", 1000);
with (_root.PracticeMenu) {
_x = 275;
_y = 205;
}
_root.subMenu = true;
}
}
Instance of Symbol 1108 MovieClip "SingleNest" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "Fight through a single Gloople nest with the goal of reducing the Gloople numbers to 0 before dying";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_global.gameMode = "Single";
switch (interval) {
case 15 :
breedsInNest = 5;
_global.NestSize = 200;
break;
case 30 :
breedsInNest = 8;
_global.NestSize = 350;
break;
case 60 :
breedsInNest = 11;
_global.NestSize = 500;
}
while (EnemySet.length < breedsInNest) {
if (EnemySet.length < 5) {
switch (int(Math.random() * 4) + 1) {
case 1 :
if (SearchArray(EnemySet, "Stickie") == null) {
EnemySet.push("Stickie");
}
break;
case 2 :
if (SearchArray(EnemySet, "Biter") == null) {
EnemySet.push("Biter");
}
break;
case 3 :
if (SearchArray(EnemySet, "Meltie") == null) {
EnemySet.push("Meltie");
}
break;
case 4 :
if (SearchArray(EnemySet, "Clutter") != null) {
break;
}
EnemySet.push("Clutter");
}
} else if (EnemySet.length < 9) {
switch (int(Math.random() * 4) + 1) {
case 1 :
if (SearchArray(EnemySet, "Sharp") == null) {
EnemySet.push("Sharp");
}
break;
case 2 :
if (SearchArray(EnemySet, "Inkie") == null) {
EnemySet.push("Inkie");
}
break;
case 3 :
if (SearchArray(EnemySet, "Grinder") == null) {
EnemySet.push("Grinder");
}
break;
case 4 :
if (SearchArray(EnemySet, "Fuzzle") != null) {
break;
}
EnemySet.push("Fuzzle");
}
} else {
switch (int(Math.random() * 2) + 1) {
case 1 :
if (SearchArray(EnemySet, "Torchie") == null) {
EnemySet.push("Torchie");
}
break;
case 2 :
if (SearchArray(EnemySet, "Frostie") != null) {
break;
}
EnemySet.push("Frostie");
}
}
}
_level0.nextFrame();
}
}
Instance of Symbol 1129 MovieClip "BountyRun" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "Dive into an endless Gloople nest in an attempt to collect the highest bounty score possible - the longer you last, the more Glooples will join the battle";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_global.gameMode = "Bounty";
while (EnemySet.length < 11) {
if (EnemySet.length < 5) {
switch (int(Math.random() * 4) + 1) {
case 1 :
if (SearchArray(EnemySet, "Stickie") == null) {
EnemySet.push("Stickie");
}
break;
case 2 :
if (SearchArray(EnemySet, "Biter") == null) {
EnemySet.push("Biter");
}
break;
case 3 :
if (SearchArray(EnemySet, "Meltie") == null) {
EnemySet.push("Meltie");
}
break;
case 4 :
if (SearchArray(EnemySet, "Clutter") != null) {
break;
}
EnemySet.push("Clutter");
}
} else if (EnemySet.length < 9) {
switch (int(Math.random() * 4) + 1) {
case 1 :
if (SearchArray(EnemySet, "Sharp") == null) {
EnemySet.push("Sharp");
}
break;
case 2 :
if (SearchArray(EnemySet, "Inkie") == null) {
EnemySet.push("Inkie");
}
break;
case 3 :
if (SearchArray(EnemySet, "Grinder") == null) {
EnemySet.push("Grinder");
}
break;
case 4 :
if (SearchArray(EnemySet, "Fuzzle") != null) {
break;
}
EnemySet.push("Fuzzle");
}
} else {
switch (int(Math.random() * 2) + 1) {
case 1 :
if (SearchArray(EnemySet, "Torchie") == null) {
EnemySet.push("Torchie");
}
break;
case 2 :
if (SearchArray(EnemySet, "Frostie") != null) {
break;
}
EnemySet.push("Frostie");
}
}
}
_level0.nextFrame();
}
}
Instance of Symbol 1146 MovieClip "Options" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "Modify gameplay and technical settings";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_root.attachMovie("Option Menu", "OptionMenu", 1000);
with (_root.OptionMenu) {
_x = 250;
_y = 250;
}
_root.subMenu = true;
}
}
Instance of Symbol 1165 MovieClip "Beastiary" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "View information on each type of Gloople you have encountered so far";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_root.attachMovie("Beastiary Plate", "BeastiaryMenu", 1000);
with (_root.BeastiaryMenu) {
_x = 275;
_y = 205;
}
_root.subMenu = true;
}
}
Instance of Symbol 1167 MovieClip "MainTitle" in Frame 5
onClipEvent (load) {
widthGoal = 100;
heightGoal = 100;
}
onClipEvent (enterFrame) {
if (int(_xscale) == widthGoal) {
widthGoal = int(Math.random() * 80) + 60;
} else if (int(_xscale) < widthGoal) {
_xscale = (_xscale + 0.1);
} else {
_xscale = (_xscale - 0.1);
}
if (int(_yscale) == heightGoal) {
heightGoal = int(Math.random() * 80) + 60;
} else if (int(_yscale) < heightGoal) {
_yscale = (_yscale + 0.1);
} else {
_yscale = (_yscale - 0.1);
}
}
Instance of Symbol 1169 MovieClip "InfoBox" in Frame 5
onClipEvent (load) {
this.addProperty("tipText", this.getTipText, this.setTipText);
tipText = null;
_alpha = 0;
showingCreds = false;
timeRemaining = 0;
framesRunning = 1;
currentCred = 1;
infoTextFormat = new TextFormat();
infoTextFormat.font = "Cooper Black";
infoTextFormat.color = 39168;
infoTextFormat.size = 14;
infoTextFormat.align = "center";
credTextFormat = new TextFormat();
credTextFormat.font = "Cooper Black";
credTextFormat.color = 16777215 /* 0xFFFFFF */;
credTextFormat.size = 12;
credTextFormat.align = "center";
this.createTextField("infoText", this.getDepth + 1, 0, 0, this._width, this._height);
infoText.embedFonts = true;
infoText.wordWrap = true;
infoText.selectable = false;
}
onClipEvent (enterFrame) {
framesRunning++;
if (tipText != null) {
infoText.text = tipText;
showingCreds = false;
infoText.setTextFormat(infoTextFormat);
if (_alpha < 100) {
_alpha = (_alpha + 25);
}
} else if (showingCreds == false) {
if (_alpha > 0) {
_alpha = (_alpha - 25);
} else {
infoText.text = "";
if (int(framesRunning / 10) == (framesRunning / 10)) {
showingCreds = true;
}
}
} else {
if ((timeRemaining == 0) && (infoText.text == "")) {
switch (currentCred) {
case 1 :
infoText.text = "Designed, Coded, Drawn and Animated by\rCaleb Rhodes\rinnocuousGames@gmail.com";
break;
case 2 :
infoText.text = "Music excerpted from\rRevolution Void\r(check them out at Jamendo.com)";
break;
case 3 :
infoText.text = "Sound Effects by\rJanus Professional\r(and other misc. sounds)";
}
currentCred++;
if (currentCred == 4) {
currentCred = 1;
}
infoText.setTextFormat(credTextFormat);
timeRemaining = 180;
} else if (timeRemaining > 8) {
if (_alpha < 100) {
_alpha = (_alpha + 25);
}
} else if (timeRemaining > 0) {
if (_alpha > 0) {
_alpha = (_alpha - 25);
}
} else {
infoText.text = "";
showingCreds = false;
}
if (timeRemaining > 0) {
timeRemaining--;
}
}
}
onClipEvent (keyDown) {
if (Key.getCode() == 78) {
_global.playSong("juke");
}
if (Key.getCode() == 77) {
_global.playSong("tellMeAgain");
}
}
Instance of Symbol 1173 MovieClip [High Scores] "Scoreboard" in Frame 5
onClipEvent (load) {
_xscale = 70;
_yscale = 70;
_alpha = 0;
}
onClipEvent (enterFrame) {
if ((_global.SingleNestHighScore == 0) && (_global.BountyRunHighScore == 0)) {
_alpha = 0;
} else {
_alpha = 100;
}
}
Instance of Symbol 770 MovieClip [Weapon Select] "WeaponSelect" in Frame 5
onClipEvent (load) {
_visible = false;
_xscale = 80;
_yscale = 80;
}
onClipEvent (enterFrame) {
if (_global.RazorGlaiveUnlocked) {
_visible = true;
}
}
Instance of Symbol 1200 MovieClip "Instructions" in Frame 5
onClipEvent (load) {
stop();
onMe = false;
myTipText = "Review controls and basics of how to play the game";
}
onClipEvent (enterFrame) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
if (_currentframe != 16) {
play();
} else {
stop();
}
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
if (_currentframe != 1) {
play();
} else {
stop();
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
_root.attachMovie("Instruction Plate", "InstructionMenu", 1000);
with (_root.InstructionMenu) {
_x = 275;
_y = 205;
}
_root.subMenu = true;
}
}
Instance of Symbol 1204 MovieClip "HintBox" in Frame 6
onClipEvent (load) {
myText = null;
_global.unbuildTo = null;
dataTextFormat = new TextFormat();
dataTextFormat.font = "Cooper Black";
dataTextFormat.color = 39168;
dataTextFormat.size = 14;
dataTextFormat.align = "center";
this.createTextField("dataText", this.getDepth + 1, 0, 0, this._width, this._height);
dataText.embedFonts = true;
dataText.wordWrap = true;
dataText.selectable = false;
switch (_global.gameMode) {
case "Practice" :
hintPick = int((Math.random() * (PracticeEnemies.length + 1)) + 1);
switch (hintPick) {
case 1 :
hintCatagory = "General";
break;
default :
hintCatagory = PracticeEnemies[hintPick - 2];
}
break;
default :
hintPick = int((Math.random() * (EnemiesSeen.length + 2)) + 1);
switch (hintPick) {
case 1 :
hintCatagory = "General";
break;
case 2 :
hintCatagory = _global.gameMode;
break;
default :
hintCatagory = EnemiesSeen[hintPick - 3];
}
}
}
onClipEvent (enterFrame) {
if (myText == null) {
switch (hintCatagory) {
case "General" :
switch (int(Math.random() * 11) + 1) {
case 1 :
myText = "Coax troublesome Glooples into moving out of the play area - they'll be eliminated from play. You will not score for them, however, and there are a few Glooples that this won't work on.";
break;
case 2 :
myText = "Be very careful around the edges of the play area, a Gloople may come in from the edges and leave you too little time to get out of the way.";
break;
case 3 :
myText = "Sometimes it's a better idea to just try and stay out of the way for a moment than to swing wildly - that brief second of immobility may be your demise.";
break;
case 4 :
myText = "Most anything a Gloople can toss at you can be batted away, so if getting out of the way isn't an option, take a swing at it.";
break;
case 5 :
myText = "Avoid swinging at anything too hard to damage - if your weapon bounces off, you'll be stunned for a moment. Make sure your whole swing arc is clear of obstructions.";
break;
case 6 :
myText = "When you swing the SplatMaster3000, you create a wide killzone in front of you that lasts a tiny bit longer than you may think that it does. This means you can swing a bit early and let an enemy \"run into\" your swing from outside your actual reach.";
break;
case 7 :
myText = "To splat a Gloople, make sure you get most of it in your swing arc - just grazing the edge of it won't count.";
break;
case 8 :
myText = "The Spawn Limit option in the Options menu determines the general maximum number of glooples allowed onscreen at a time - this isn't an absolute limit, but turning it down will make the game a little easier and run a little better (and vice versa).";
break;
case 9 :
myText = "The Game Length setting in the Options menu is more or less a difficulty setting. Long Single Nests are harder than short ones, but a short Bounty Run is harder than a long one (It's short because you'll probably die pretty quickly).";
break;
case 10 :
myText = "Stay aware of where your swing arc is going to be before you attack. If there's a danger you might hit something you need to avoid, try using the corners of the arc instead of the broad part in front of you.";
break;
case 11 :
myText = "The closer you keep the cursor to the character, the more quickly you'll be able to make fine movements, and the more control you'll have over your facing and swings.";
}
break;
case "Single" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "As you near the end of the Nest, there is a chance that you'll come across a particularly dangerous Gloople. This is much more likely the longer your Game Length is set to.";
break;
case 2 :
myText = "It doesn't matter what type of Gloople you splat, each kill counts down the nest by one, so go for the easy targets when you can - they count just as much as the real problem Glooples do.";
break;
case 3 :
myText = "The Game Length setting determines the number of Glooples you'll have to kill to clear the nest. The longer the game, the more types of Glooples will show up by the end, and the harder time you'll have.";
break;
case 4 :
myText = "You don't need to try and splat every single Gloople; the ones that get away don't count against you in any way and the Glooples will keep coming until you've met the quota.";
}
break;
case "Bounty" :
switch (int(Math.random() * 3) + 1) {
case 1 :
myText = "Try to catch as many Glooples in a single swing as you can. Not only will this leave you vulnerable less often, but each additional Gloople acts as a bounty multiplier.";
break;
case 2 :
myText = "More high point value Glooples in one swing means a higher base value for the multiplier to be applied to. Three Biters are far more valuable than three Glooples.";
break;
case 3 :
myText = "The Game Length setting for a Bounty Run determines how quickly new types of Glooples begin to appear. Shorter games have shorter intervals between new (and harder) Glooples being added to the fray.";
}
break;
case "Gloople" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "Green Glooples can't directly hurt you, but letting them bump into you will knock you off balance for a moment and give something worse a chance to strike.";
break;
case 2 :
myText = "Glooples can stick together and form larger Glooples if you allow them to touch, although it only happens occasionally.";
break;
case 3 :
myText = "Regular Glooples are subject to more or less all of the same dangers as you are - keep an eye on them when something new shows up. If it kills the Glooples, it'll probably do the same to you!";
break;
case 4 :
myText = "Green Glooples are plentiful, don't put yourself in danger trying to chase one down, and don't hesitate to use them as cover between yourself and something dangerous (although it may not do much good.)";
}
break;
case "Biter" :
switch (int(Math.random() * 3) + 1) {
case 1 :
myText = "Biters are quick, but they can only lunge in a straight line, and they can't stop. Wait for it to pounce, and then either splat it or step out of the way.";
break;
case 2 :
myText = "A Biter can't lunge (or hurt you) if it's gummed up in Stickie goo, so use the opportunity to splat it safely, or clean up some other threats.";
break;
case 3 :
myText = "Although it's very rare, Biters can glom together to form a very scary gloople - don't let them touch too often.";
}
break;
case "Stickie" :
switch (int(Math.random() * 5) + 1) {
case 1 :
myText = "Stickies will pop when they touch anything, but they move completely straight so you can't steer them into things. Better to splat them and leave the goo as a trap or protective barrier.";
break;
case 2 :
myText = "Stickie goo is a great insulator, and though it gums you up and slows you down, it will keep you from catching fire or being stuck in ice.";
break;
case 3 :
myText = "When a Stickie enters the play field, it always aims for you. If you stay in one place while there are Stickies around, you'll eventually be bogged down.";
break;
case 4 :
myText = "Big things are just too large and heavy to be slowed down (any more than they are) by Stickie goo, don't count an any help there.";
break;
case 5 :
myText = "Certain Glooples have the ability to shake off Stickie goo more quickly than others, so keep on eye on those that don't seem to be affected as long as you'd hoped.";
}
break;
case "Meltie" :
switch (int(Math.random() * 5) + 1) {
case 1 :
myText = "While Meltie acid makes short work of a lot of Glooples, there are some who are too well protected to be hurt by it.";
break;
case 2 :
myText = "Be very careful when splatting a Meltie: just because you hit it doesn't mean it can't splash toward you. Take note of the direction things splat when you hit them, and catch Melties on the correct side.";
break;
case 3 :
myText = "Meltie acid lasts a while, so use them as defensive barriers while you can - most Glooples can't cross it safely.";
break;
case 4 :
myText = "Right when a gloople gets caught in Meltie acid, there's a very brief time when it's stuck but not quite dissolved when you can still splat it and get the credit.";
break;
case 5 :
myText = "Melties will gently curve toward you while traveling. Use this to your advantage and steer them into threats you don't want to deal with - or can't.";
}
break;
case "Inkie" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "Don't let an Inkie touch you - their thick black goo will blind you for more than long enough to get you killed.";
break;
case 2 :
myText = "It's a good idea to steer clear of Inkie splats. It won't hurt you directly, but it'll cause you to slide a short way without any control - it takes a little luck to come out okay.";
break;
case 3 :
myText = "Inkie ink pools are very flammable, and if lit on fire will create a big, long-burning fire. Anything caught in the blaze will go up as well.";
break;
case 4 :
myText = "Under no circumstances should you let an Inkie get anywhere near a fire (don't worry about the little flames, though). If lit before they splat, they detonate and take out everything around them.";
}
break;
case "Clutter" :
switch (int(Math.random() * 7) + 1) {
case 1 :
myText = "A Clutter will never intentionally get anywhere near you - you'll have to take the fight to them. But don't let them get you into trouble trying to chase them down.";
break;
case 2 :
myText = "Because of the way Clutters avoid you, don't be ashamed to just \"push\" them off of the edge of the play area. It's easy, and we all do it. You don't score, but they're out of the way.";
break;
case 3 :
myText = "If you swing immediately after a swing that kills an adult Clutter, you'll usually mop up the babies it drops as well (and get a pretty good score for it, as well). Just don't do this at the expense of watching your back.";
break;
case 4 :
myText = "You can really ignore baby Clutters safely for a while - it takes them a short time to grow up, and until then they aren't a threat. Just make sure you get to them before they reach full size.";
break;
case 5 :
myText = "Most of the time you're better off just stepping out of the way of spit baby Clutters rather than swatting them. They splat when they hit the ground anyway. If you do splat them, though, they're worth as much as any small Clutter.";
break;
case 6 :
myText = "If you get a baby Clutter stuck to you, you can shake them off quickly by spinning around in circles as fast as you can.";
break;
case 7 :
myText = "Having more than one baby Clutter stuck to you is a serious problem because it begins to slow you down a lot, and can sometimes keep you from swinging. Shake them off as soon as you can.";
}
break;
case "Sharp" :
switch (int(Math.random() * 6) + 1) {
case 1 :
myText = "You can't take a Sharp head-on, with it's spines out it's pretty much invulnerable. Get around behind it, and it'll let it's guard down.";
case 2 :
myText = "More often than you'd like, the best way to deal with a Sharp is just to bat it out of the play area. You don't get credit for it, but you don't have to deal with it either.";
break;
case 3 :
myText = "Sharps are clever enough that, if they see a hazard in front of them, they'll put their spines out. This goes for you, a dangerous pool, or any other Gloople, really.";
break;
case 4 :
myText = "With their spines out, a Sharp is immune to the effect of any standing hazardous pool. Don't rely on defensively placed goo splats keeping Sharps off your back.";
break;
case 5 :
myText = "Sharps can splat a lot of glooples, and a well placed swat can send them into some other unpleasantness that you'd rather not deal with.";
break;
case 6 :
myText = "Continuously whacking at a Sharp won't work - if they take a smack, no matter which way they're facing, they'll leave their spines out for a few seconds.";
}
break;
case "Grinder" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "Most of the time the best thing you can do about a Grinder is get out of the way. On the bright side, they demolish basically anything they roll over.";
break;
case 2 :
myText = "Grinders try and steer very subtly toward you, so it's possible to guide them into other threats (or each other, which is a different matter altogether).";
break;
case 3 :
myText = "Even if you find a way to weaken a Grinder's stony skin enough that you can hurt it, they still take a ton of punishment. Killing one is an impressive achievement.";
break;
case 4 :
myText = "Grinders are big, and so is your swing area. Be very cautious when swinging anywhere around a Grinder - if you hit it at all, you'll bounce off and be stunned for a couple of seconds.";
}
break;
case "Fuzzle" :
switch (int(Math.random() * 5) + 1) {
case 1 :
myText = "Like a Super-biter, a Fuzzle is better in pretty much every way. Give them your full attention when they show up.";
break;
case 2 :
myText = "Be persistent when trying to splat a Fuzzle. If you knock off all of their fur, and then give them a few seconds, they'll grow it back and be just as tough as when they started. Make sure you get that last swing in when you can.";
break;
case 3 :
myText = "When you've got a Fuzzle down to it's skin, it won't try and bite you and instead will try to run away for a while. If you're really in trouble, you can use this time to deal with something else - just don't take too long. It'll be back.";
break;
case 4 :
myText = "It's easy to tell when a Fuzzle's about to lunge, it hunkers down and crawls for a couple of seconds first. Be careful though, while it's getting ready to jump it can adjust it's aim very quickly";
break;
case 5 :
myText = "Fuzzles are even resistant to many of the hazardous splats - they still have an effect, but it's not as severe as with other glooples.";
}
break;
case "Torchie" :
switch (int(Math.random() * 5) + 1) {
case 1 :
myText = "Do not, under any circumstances, attack a Torchie while it's on fire - this is instant death, as the little beast will explode and take you with it.";
break;
case 2 :
myText = "Once a Torchie has gone out, make sure you kill it before it has a chance to get into any flame. If it does, it will re-light itself and be just as dangerous as before. You can stomp out the little fires it leaves behind to take out some insurance against this happening.";
break;
case 3 :
myText = "Torchies light almost anything they bump into on fire. This is the end of a lot of glooples, but not before they have the chance to spread the fire themselves. Don't touch anything on fire, or you'll join them.";
break;
case 4 :
myText = "As dangerous as they are, a lot of things can extinguish a Torchie and make it an easy target. Try and use one of these methods if you don't feel like waiting for it to go out on it's own.";
break;
case 5 :
myText = "Should you catch fire, you have a few seconds of panicky running about to try and put yourself out. The same things that put out most fires will work on you (although acid is not recommended).";
}
break;
case "Oozle" :
switch (int(Math.random() * 2) + 1) {
case 1 :
myText = "Don't stand in front of an Oozle while trying to splat it. While you may get off a swing, you won't slow it down, and it'll just roll over you while you're getting ready to swing again.";
break;
case 2 :
myText = "It's a good idea to take care of Oozles wherever they pop up. Letting them hang around gives them a chance to glom together with another Green Gloople and make your life harder.";
}
break;
case "Gray" :
switch (int(Math.random() * 3) + 1) {
case 1 :
myText = "Most of the time it's useless to take a swing at a Gray, they can harden into a ball of steel faster than you can get your SplatMaster3000 into them. You'll have to wait for them to concentrate on something else before you get the chance to hurt them.";
break;
case 2 :
myText = "As lethal as the Gray's tendril lance is, it's pretty easy to avoid. Mainly try not to get stunned or staggered while one is around and keep your eye on it, and you should be okay.";
break;
case 3 :
myText = "If you have a Gray bearing down on you, but need to take a swing, it is possible to deflect it's lance with your attack. Just make sure you time it right.";
}
break;
case "Frostie" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "The blast of frozen air from a burst Frostie is bigger than the reach of your SplatMaster3000. If you don't want to be frozen at all, just dodge, don't swing.";
break;
case 2 :
myText = "How long you're frozen is a direct result of how far you were from the Frostie when it popped. If it hit you, you're in trouble. If you splatted it from as far away as you could manage, you'll be stuck for a couple of seconds at most.";
break;
case 3 :
myText = "Frostie hit you, and you're frozen good? Try wiggling up and down, you'll break it much faster that way.";
break;
case 4 :
myText = "Anything frozen (including you) can be destroyed by just bumping into it. On the other hand, you don't score for breaking frozen Glooples.";
}
break;
case "Amalgam" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "Persistence is the key when you have an Amalgam after you. Keep swinging, and keep in mind that every absorbed Gloople is another swing you have to make.";
break;
case 2 :
myText = "It's not as important to immediately chase down small Amalgam that break off of the big one when you attack it - they can't hurt you until they get bigger.";
break;
case 3 :
myText = "The old \"lure it into moving out of the play area\" trick won't work an Amalgam, they stay in the game even if they cross the border. You have to kill them all.";
break;
case 4 :
myText = "Every time you land a hit on an Amalgam, you stun it for just about long enough to get another swing in. You can't stand right in front of it, but you can get in quite a few swipes before you'll even have to move if you get along side one.";
}
break;
case "VoidEater" :
switch (int(Math.random() * 4) + 1) {
case 1 :
myText = "With a Void Eater on your hands, your main concern should be staying away from it. Most of what it does will try and draw you close enough for it to blast you into oblivion, so focus on keeping your distance and wait for your chance.";
break;
case 2 :
myText = "It's very possible that a Void Eater could form right next to you and blast you with a shockwave before you even have a chance to react to it. The solution? Don't leave Grays hanging around.";
break;
case 3 :
myText = "A Void Eater's density beam has a much more powerful gravity effect than it's gravity well. If you aren't well out of the way when it starts, you're probably doomed.";
break;
case 4 :
myText = "You can tell the killzone around a Void Eater by where the Glooples are getting annihilated.";
}
break;
case "Horror" :
switch (int(Math.random() * 5) + 1) {
case 1 :
myText = "Don't try to attack a Horror directly. Doing so is almost certainly your undoing, as it's way to hard for your SplatMaster3000 to damage, and in the time it takes you to recover from the recoil it will have already turned you into kibble.";
break;
case 2 :
myText = "Horrors move fast enough that you'll have enough to do just trying to keep it from mowing you down in your tracks. Step around the side of it as close as you dare, and you'll force it to make a bit of a \"U\" turn and buy yourself a little time.";
break;
case 3 :
myText = "It's basically impossible to know when a Horror is going to fling off a bunch of it's deadly little teeth, although it normally reserves this move for when you're too far for it to just roll over you and turn you into mulch. On the other hand, a Horror will never send it's disks after you unless you're well away from it.";
break;
case 4 :
myText = "Horror teeth that it flings off of it's body aren't too hard to dodge, but if you have to you can just bat them out of the air. Also, keep track of any Green Glooples in the way: if they get hit, they'll mutate into a Biter and come after you.";
break;
case 5 :
myText = "When a Horror sends it's disks after you, it becomes a bit more paranoid and makes an effort to keep a little distance from you. Don't let it draw you in long enough for the disks to come back around and slice you in half.";
}
break;
case "Queen" :
switch (int(Math.random() * 6) + 1) {
case 1 :
myText = "Don't let Queen larva hang around. You can splat them or just step on them, but leaving them alive means that if you manage to outmaneuver the Queen and get that killing blow, another one may pop up right behind her.";
break;
case 2 :
myText = "If you should kill a Queen and notice a larva still crawling around, get it as fast as you can. It can't spawn a new Queen unless it gets to a Gloople host, and it will be trying it's hardest to do just that.";
break;
case 3 :
myText = "The Queen's long reach and ability to lunge makes her very difficult to dodge. Sometimes your best bet is to swing into her in an attempt to parry. She'll do the same to you, after all.";
break;
case 4 :
myText = "Because the Queen is cautious and will dodge away any time you make a swipe at her, it's possible to bully her around a bit if you need a moment to collect yourself. Just make sure you don't get caught swinging at nothing when she decides to pounce.";
break;
case 5 :
myText = "It's always best to keep your distance when you can while fighting a Queen. The best time to strike her is during a lunge, and if you get in tight, remember: She has two huge sharp cutting thingies. You only have one.";
break;
case 6 :
myText = "Should you be fighting a Queen and actually bump into one another (usually by way of you both missing one another) you can probably expect to get creamed immediately. She's much quicker at reacting to that sort of situation than you are.";
}
break;
case "RazorQueen" :
switch (int(Math.random() * 10) + 1) {
case 1 :
myText = "The fact that you've seen a Razor Queen at all should make you proud. In that \"What the heck is tha-Ow. I died.\" sort of way";
break;
case 2 :
myText = "When the Razor Queen digs her claws into the ground, you'd do well to put some distance between you and her. She starts to attack at range, and if you can't keep your eye on her and do some fancy footwork, you're not going to survive it.";
break;
case 3 :
myText = "Like most things, the quills a Razor Queen launches from her body can be destroyed by slashing them. However, because this keeps you from moving, it's best to only do this if you really need to.";
break;
case 4 :
myText = "The Razor Queen has five huge blades to your one. Trying to swing at her when she's not left herself open is blatant suicide.";
break;
case 5 :
myText = "The spiny larva a Razor Queen spawns while she's chasing you around will explode if you get near enough, but it takes them a second. If you step in and then move away, you should be able to get rid of them safely without having to swing.";
break;
case 6 :
myText = "The digging razor mites that a Razor Queen will spit while dug in are, safe from attack while underground. However, they come up to lunge very predictably, and you should take the opportunity to kill them, lest they circle around and surprise you.";
break;
case 7 :
myText = "When a Razor Queen spits a spine jack, she lobs it through the air. As long as you aren't nearby when it lands, you can walk safely under it while it's airborne.";
break;
case 8 :
myText = "A spine jack stuck in the ground can really help you survive a Razor Queen's bombardment - the quills she launches will break when they hit it, and airborne razor mites will bounce off of it. Watch carefully though - mites can burrow under it, and the spine jack will break eventually";
break;
case 9 :
myText = "Like most glooples with distance-covering attacks, a Razor Queen will only lunge if you're far enough away for her to need to.";
break;
case 10 :
myText = "If a Razor Queen has littered the screen with so many spine jacks you can't move around well, you can break them down with enough hits. This takes some time though - make sure you have it to spare.";
}
}
dataText.text = myText;
dataText.setTextFormat(dataTextFormat);
dataText._width = dataText._width - 1;
}
}
onClipEvent (mouseDown) {
_level0.nextFrame();
}
Instance of Symbol 1206 MovieClip "PointMark" in Frame 7
onClipEvent (load) {
if (_name != "PointMark") {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnMode", this.getTurnMode, this.setTurnMode);
this.addProperty("pointsOnSwing", this.getPointsOnSwing, this.setPointsOnSwing);
this.addProperty("killsOnSwing", this.getKillsOnSwing, this.setKillsOnSwing);
this.addProperty("clutters", this.getClutters, this.setClutters);
this.addProperty("frozenFrames", this.getFrozenFrames, this.setFrozenFrames);
pointsOnSwing = 0;
killsOnSwing = 0;
speed = 5;
topSpeed = 5;
clutters = 0;
if (_global.RazorGlaiveEquipped) {
speed = 4;
topSpeed = 4;
}
frozenFrames = 0;
wiggleTo = "up";
_visible = false;
turnMode = true;
_global.HeroAction = "none";
_global.justHit = null;
_global.Score = 0;
_global.HeroKilled = false;
} else {
duplicateMovieClip (this, "HeroPointer", 20);
_root.HeroPointer._x = 222;
_root.HeroPointer._y = 183;
}
}
onClipEvent (mouseDown) {
if (_name != "PointMark") {
if ((_global.HeroAction == "none") && ((_global.ClearTime == 0) || (_global.gameMode != "Single"))) {
if ((clutters < 2) || ((int(Math.random() * 10) + 1) > clutters)) {
_global.HeroAction = "attacking";
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroSlashRazor, "HeroSlashin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroSlash, "HeroSlashin", _global.heroDepth++);
}
with (_root.HeroSlashin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.MakeNoise("Swing");
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
} else {
_global.justHit = this;
}
}
}
}
onClipEvent (enterFrame) {
if (_name != "PointMark") {
if ((killsOnSwing > 1) && (_global.HeroAction != "attacking")) {
CP = String(random(100));
duplicateMovieClip (_root.Bounty, (_name + "Multi") + CP, _global.markDepth++);
setProperty((("_root." + _name) + "Multi") + CP, _x , this._x);
setProperty((("_root." + _name) + "Multi") + CP, _y , this._y);
BountyObject = eval ((("_root." + _name) + "Multi") + CP);
BountyObject.bounty = "x" + String(killsOnSwing);
pointsOnSwing = pointsOnSwing * killsOnSwing;
}
if ((killsOnSwing > 0) && (_global.HeroAction != "attacking")) {
_global.Score = _global.Score + pointsOnSwing;
CP = String(random(300));
duplicateMovieClip (_root.Bounty, (_name + "Plus") + CP, _global.markDepth++);
setProperty((("_root." + _name) + "Plus") + CP, _x , _root.ScoreDisplay._x - 20);
setProperty((("_root." + _name) + "Plus") + CP, _y , _root.ScoreDisplay._y);
BountyObject = eval ((("_root." + _name) + "Plus") + CP);
BountyObject.bounty = "+" + String(pointsOnSwing);
killsOnSwing = 0;
pointsOnSwing = 0;
}
if (_global.HeroAction == "melted") {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (eval (_root.HeroStagger) != undefined) {
removeMovieClip(_root.HeroStagger);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.HeroMelt, "HeroMelting", _global.effectDepth++);
with (_root.HeroMelting) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
}
if (_global.HeroAction == "frozen") {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (eval (_root.HeroStagger) != undefined) {
removeMovieClip(_root.HeroStagger);
}
if (eval (_root.HeroOnFire) != undefined) {
removeMovieClip(_root.HeroOnFire);
}
if (eval (_root.HeroOnIce) == undefined) {
duplicateMovieClip (_root.HeroFrozen, "HeroOnIce", _global.heroDepth++);
}
with (_root.HeroOnIce) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
if (_global.HeroAction == "flamed") {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (eval (_root.HeroStagger) != undefined) {
removeMovieClip(_root.HeroStagger);
}
if (eval (_root.HeroOnFire) == undefined) {
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroFlamingRazor, "HeroOnFire", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroFlaming, "HeroOnFire", _global.heroDepth++);
}
}
with (_root.HeroOnFire) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
if (_global.HeroAction == "burned") {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (eval (_root.HeroStagger) != undefined) {
removeMovieClip(_root.HeroStagger);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.HeroBurn, "HeroBurning", _global.effectDepth++);
with (_root.HeroBurning) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
}
if (_global.HeroAction == "bounceback") {
if (eval (_root.HeroBounce) == undefined) {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (eval (_root.HeroStagger) != undefined) {
removeMovieClip(_root.HeroStagger);
}
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroBouncebackRazor, "HeroBounce", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroBounceback, "HeroBounce", _global.heroDepth++);
}
with (_root.HeroBounce) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
}
if (_global.justHit != null) {
if (HeroAction == "frozen") {
targetEnemy = _global.justHit;
_global.justHit = null;
removeMovieClip(_root.HeroOnIce);
duplicateMovieClip (_root.SwordCold, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
iceNum = int(Math.random() * 6) + 8;
toKillX = targetEnemy._x - _x;
toKillY = targetEnemy._y - _y;
brokeTo = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
_global.MakeNoise("HeroIcebreak");
ice = 1;
while (ice < iceNum) {
IceName = (("_root." + this._name) + "Ice") + ice;
duplicateMovieClip (eval ("_root.Ice" + String(random(3) + 1)), (this._name + "Ice") + Ice, _global.effectDepth++);
setProperty(IceName, _rotation , (brokeTo + int(Math.random() * 100)) - 59);
setProperty(IceName, _x , this._x);
setProperty(IceName, _xscale , 150);
setProperty(IceName, _y , this._y);
setProperty(IceName, _yscale , 150);
ice++;
}
targetEnemy = null;
_global.HeroKilled = true;
this.removeMovieClip();
} else if (((_global.justHit._name.slice(0, 5) == "Oozle") || ((_global.justHit._name.slice(0, 4) == "Gray") && (_global.justHit.action == "none"))) || ((_global.justHit._name.slice(0, 7) == "Amalgam") && (_global.justHit._xscale > 70))) {
_global.MakeNoise("Glom");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "absorbed";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.HeroAbsorbed, targetEnemy._name + "Hero", _global.effectDepth++);
with (eval (("_root." + targetEnemy._name) + "Hero")) {
_x = targetEnemy._x;
_y = targetEnemy._y;
_rotation = targetEnemy._rotation;
}
targetEnemy._xscale = 120;
targetEnemy._yscale = 120;
targetEnemy._alpha = 75;
targetEnemy = null;
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 5) == "Biter") && (_global.justHit.lunging == true)) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "mangled";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 5) == "Sharp") && (_global.justHit.spines == true)) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "impaled";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
splats = 1;
while (splats < 4) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (targetEnemy._rotation + int(Math.random() * 180)) - 89);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
splats++;
}
_global.HeroKilled = true;
removeMovieClip(targetEnemy);
this.removeMovieClip();
} else if (_global.justHit._name.slice(0, 7) == "Grinder") {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "squashed";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
splats = 1;
while (splats < 6) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (targetEnemy._rotation + int(Math.random() * 180)) - 89);
setProperty(BloodName, _x , (this._x + int(Math.random() * 30)) - 15);
setProperty(BloodName, _y , (this._y + int(Math.random() * 30)) - 15);
splats++;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 6) == "Fuzzle") && (_global.justHit.lunging == true)) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "chowed";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 4) == "Gray") && (_global.justHit.lancing)) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "speared";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.justHit.exploded && (Math.sqrt(Math.pow(_x - justHit._x, 2) + Math.pow(_y - justHit._y, 2)) < 150)) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "gibbed";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
toBlastX = _x - targetEnemy._x;
toBlastY = _y - targetEnemy._y;
blastDir = (-Math.atan2(toBlastX, toBlastY)) / (Math.PI/180);
blastDir = blastDir - 180;
gibsNum = int(Math.random() * 5) + 6;
gibs = 1;
while (gibs < gibsNum) {
GibName = (("_root." + this._name) + "Gib") + gibs;
duplicateMovieClip (eval ("_root.Gib" + String(random(3) + 1)), (this._name + "Gib") + gibs, _global.effectDepth++);
setProperty(GibName, _rotation , blastDir + (int(Math.random() * 20) - 40));
setProperty(GibName, _x , this._x);
setProperty(GibName, _y , this._y);
gibs++;
}
splats = 1;
while (splats < 4) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (blastDir + int(Math.random() * 40)) - 20);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
setProperty(BloodName, _xscale , 50);
setProperty(BloodName, _yscale , 50);
splats++;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 4) == "Void") && (_global.justHit.action == "shoot")) {
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "disintigrated";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.justHit.hook || _global.justHit.spike) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "hooked";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
deltaE_x = _x - targetEnemy._x;
deltaE_y = _y - targetEnemy._y;
enemyDir = (-Math.atan2(deltaE_x, deltaE_y)) / (Math.PI/180);
b = 1;
while (b < 4) {
BloodName = (("_root." + this._name) + "Blood") + b;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + b, _global.effectDepth++);
setProperty(BloodName, _rotation , ((enemyDir + 180) + int(Math.random() * 40)) - 20);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _xscale , 40);
setProperty(BloodName, _y , this._y);
setProperty(BloodName, _yscale , 40);
b++;
}
if (targetEnemy.hook) {
duplicateMovieClip (_root.HeroHooked, "HeroTagged", _global.effectDepth++);
} else {
duplicateMovieClip (_root.HeroSpiked, "HeroTagged", _global.effectDepth++);
}
with (_root.HeroTagged) {
_x = this._x;
_y = this._y;
_rotation = enemyDir;
if (targetEnemy.spike) {
_rotation = _rotation + 180;
}
}
_global.HeroKilled = true;
removeMovieClip(targetEnemy);
this.removeMovieClip();
} else if (_global.justHit.quill) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "stapled";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
removeMovieClip(targetEnemy);
this.removeMovieClip();
} else if (_global.justHit.mite) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "split";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
x = 1;
while (x < 3) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + x)) {
_x = this._x;
_y = this._y;
_rotation = (this._rotation + int(Math.random() * 40)) - 179;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + x));
BloodColor.setRGB(11800592);
x++;
}
x = 1;
while (x < 3) {
duplicateMovieClip (_root.HeroHalf, (this._name + "BodyHalf") + x, _global.heroDepth++);
with (eval ((("_root." + _name) + "BodyHalf") + x)) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
x++;
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.justHit.hedgehog == "Crush") {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "piked";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
b = 1;
while (b < 4) {
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + b, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + b);
with (BloodName) {
_rotation = int(Math.random() * 360) - 179;
_x = this._x;
_y = this._y;
}
b++;
}
x = 1;
while (x < 4) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + x)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + x));
BloodColor.setRGB(11800592);
x++;
}
duplicateMovieClip (_root.HeroMangled, this._name + "Body", _global.heroDepth++);
with (eval (("_root." + _name) + "Body")) {
_x = targetEnemy._x;
_y = targetEnemy._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.justHit.hedgehog == "Ground") {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "piked";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.justHit.disk || _global.justHit.claw) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "sliced";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
deltaE_x = _x - targetEnemy._x;
deltaE_y = _y - targetEnemy._y;
enemyDir = (-Math.atan2(deltaE_x, deltaE_y)) / (Math.PI/180);
b = 1;
while (b < 3) {
BloodName = (("_root." + this._name) + "Blood") + b;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + b, _global.effectDepth++);
setProperty(BloodName, _rotation , ((enemyDir + 180) + int(Math.random() * 40)) - 20);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
b++;
}
if (int(Math.random() * 2) == 1) {
duplicateMovieClip (_root.HeroBisect, "HeroBisected", _global.effectDepth++);
with (_root.HeroBisected) {
_x = this._x;
_y = this._y;
_rotation = enemyDir;
}
duplicateMovieClip (_root.HeroTorso, "MyTorso", _global.effectDepth++);
with (_root.MyTorso) {
_x = this._x;
_y = this._y;
_rotation = enemyDir + (int(Math.random() * 120) - 60);
}
} else {
duplicateMovieClip (_root.HeroDecapitate, "HeroDecapitated", _global.effectDepth++);
with (_root.HeroDecapitated) {
_x = this._x;
_y = this._y;
_rotation = enemyDir;
}
duplicateMovieClip (_root.HeroHead, "MyHead", _global.effectDepth++);
with (_root.MyHead) {
_x = this._x;
_y = this._y;
_rotation = enemyDir + (int(Math.random() * 120) - 60);
}
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if ((_global.justHit._name.slice(0, 6) == "Horror") && (_global.justHit.action != "collect")) {
_global.MakeNoise("Wound");
targetEnemy = _global.justHit;
_global.justHit = null;
if (_global.HeroAction == "staggered") {
removeMovieClip(_root.HeroStagger);
}
_global.HeroAction = "splattered";
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
duplicateMovieClip (_root.Sword, "mySword", _global.backgroundDepth++);
with (_root.mySword) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
deltaE_x = _x - targetEnemy._x;
deltaE_y = _y - targetEnemy._y;
enemyRotation = (-Math.atan2(deltaE_x, deltaE_y)) / (Math.PI/180);
splats = 1;
while (splats < 6) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , ((enemyRotation + 180) + int(Math.random() * 180)) - 89);
setProperty(BloodName, _x , (this._x + int(Math.random() * 30)) - 15);
setProperty(BloodName, _y , (this._y + int(Math.random() * 30)) - 15);
splats++;
}
splats = 1;
while (splats < 4) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = ((enemyRotation + 180) + int(Math.random() * 180)) - 89;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + splats));
BloodColor.setRGB(11800592);
splats++;
}
gibsNum = int(Math.random() * 6) + 8;
gibs = 1;
while (gibs < gibsNum) {
GibName = (("_root." + this._name) + "Gib") + gibs;
duplicateMovieClip (eval ("_root.Gib" + String(random(3) + 1)), (this._name + "Gib") + gibs, _global.effectDepth++);
setProperty(GibName, _rotation , ((enemyRotation + 180) + int(Math.random() * 180)) - 89);
setProperty(GibName, _x , this._x);
setProperty(GibName, _y , this._y);
gibs++;
}
_global.HeroKilled = true;
this.removeMovieClip();
} else if (_global.HeroAction != "flamed") {
targetEnemy = _global.justHit;
_global.justHit = null;
deltaE_x = _x - targetEnemy._x;
deltaE_y = _y - targetEnemy._y;
enemyRotation = (-Math.atan2(deltaE_x, deltaE_y)) / (Math.PI/180);
degreesToEnemy = enemyRotation - _rotation;
if (degreesToEnemy < 0) {
degreesToEnemy = degreesToEnemy + 360;
}
StaggerLink = "_root.HeroStagger";
if (_global.HeroAction != "staggered") {
if (eval (_root.HeroWalkin) != undefined) {
removeMovieClip(_root.HeroWalkin);
}
if (eval (_root.HeroSlashin) != undefined) {
removeMovieClip(_root.HeroSlashin);
}
if (degreesToEnemy < 46) {
StaggerLink = StaggerLink + "Down";
} else if (degreesToEnemy < 136) {
StaggerLink = StaggerLink + "Left";
} else if (degreesToEnemy < 226) {
StaggerLink = StaggerLink + "Up";
} else if (degreesToEnemy < 316) {
StaggerLink = StaggerLink + "Right";
} else {
StaggerLink = StaggerLink + "Down";
}
if (_global.RazorGlaiveEquipped) {
StaggerLink = StaggerLink + "Razor";
}
duplicateMovieClip (eval (StaggerLink), "HeroStagger", _global.heroDepth++);
setProperty(_root.HeroStagger, _x , this._x);
setProperty(_root.HeroStagger, _y , this._y);
setProperty(_root.HeroStagger, _rotation , this._rotation);
_global.MakeNoise("Oomph");
}
_global.HeroAction = "staggered";
}
}
if (_global.HeroAction == "none") {
if (eval (_root.HeroWalkin) == undefined) {
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroWalkRazor, "HeroWalkin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroWalk, "HeroWalkin", _global.heroDepth++);
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
gotoSpotX = _root._xmouse;
gotoSpotY = _root._ymouse;
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (turnMode) {
_rotation = targetRotation;
}
if (speed > topSpeed) {
speed = topSpeed;
}
if (speed < 0) {
speed = 0;
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) {
_root.HeroWalkin.play();
ProjPosY = _y - (speed * Math.cos(_rotation * (Math.PI/180)));
if ((ProjPosY > 0) && (ProjPosY < 400)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
} else if (ProjPosY <= 0) {
_y = 1;
} else {
_y = 399;
}
ProjPosX = _x + (speed * Math.sin(_rotation * (Math.PI/180)));
if ((ProjPosX > 0) && (ProjPosX < 550)) {
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else if (ProjPosX <= 0) {
_x = 1;
} else {
_x = 549;
}
} else {
_root.HeroWalkin.stop();
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
} else if (_global.HeroAction == "attacking") {
if (_root.HeroSlashin._currentframe == _root.HeroSlashin._totalframes) {
removeMovieClip(_root.HeroSlashin);
_global.HeroAction = "none";
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroWalkRazor, "HeroWalkin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroWalk, "HeroWalkin", _global.heroDepth++);
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
if (killsOnSwing > 1) {
CP = String(random(100));
duplicateMovieClip (_root.Bounty, (_name + "Multi") + CP, _global.markDepth++);
setProperty((("_root." + _name) + "Multi") + CP, _x , this._x);
setProperty((("_root." + _name) + "Multi") + CP, _y , this._y);
BountyObject = eval ((("_root." + _name) + "Multi") + CP);
BountyObject.bounty = "x" + String(killsOnSwing);
pointsOnSwing = pointsOnSwing * killsOnSwing;
}
if (killsOnSwing > 0) {
_global.Score = _global.Score + pointsOnSwing;
CP = String(random(100));
duplicateMovieClip (_root.Bounty, (_name + "Plus") + CP, _global.markDepth++);
setProperty((("_root." + _name) + "Plus") + CP, _x , _root.ScoreDisplay._x - 20);
setProperty((("_root." + _name) + "Plus") + CP, _y , _root.ScoreDisplay._y);
BountyObject = eval ((("_root." + _name) + "Plus") + CP);
BountyObject.bounty = "+" + String(pointsOnSwing);
}
killsOnSwing = 0;
pointsOnSwing = 0;
}
} else if (_global.HeroAction == "staggered") {
if (_root.HeroStagger._currentframe == 40) {
removeMovieClip(_root.HeroStagger);
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroWalkRazor, "HeroWalkin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroWalk, "HeroWalkin", _global.heroDepth++);
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroAction = "none";
}
} else if (_global.HeroAction == "bounceback") {
if (_root.HeroBounce._currentframe == 30) {
removeMovieClip(_root.HeroBounce);
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroWalkRazor, "HeroWalkin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroWalk, "HeroWalkin", _global.heroDepth++);
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroAction = "none";
}
} else if (_global.HeroAction == "flamed") {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (turnMode) {
_rotation = targetRotation;
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) {
ProjPosY = _y - (speed * Math.cos(_rotation * (Math.PI/180)));
if ((ProjPosY > 0) && (ProjPosY < 400)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
} else if (ProjPosY <= 0) {
_y = 1;
} else {
_y = 399;
}
ProjPosX = _x + (speed * Math.sin(_rotation * (Math.PI/180)));
if ((ProjPosX > 0) && (ProjPosX < 550)) {
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else if (ProjPosX <= 0) {
_x = 1;
} else {
_x = 549;
}
} else {
gotoSpotX = _root._xmouse + (int(Math.random() * 100) - 50);
gotoSpotY = _root._ymouse + (int(Math.random() * 100) - 50);
}
} else if (_global.HeroAction == "frozen") {
if (frozenFrames > 0) {
if ((wiggleTo == "up") && (_root._ymouse < (_y - 5))) {
_y = (_y - 4);
frozenFrames = frozenFrames - 5;
wiggleTo = "down";
} else if ((wiggleTo == "down") && (_root._ymouse > (_y + 5))) {
_y = (_y + 4);
frozenFrames = frozenFrames - 5;
wiggleTo = "up";
}
frozenFrames--;
} else {
iceNum = int(Math.random() * 6) + 8;
ice = 1;
while (ice < iceNum) {
Spread = int(Math.random() * 100);
IceName = ((("_root." + this._name) + "Ice") + ice) + Spread;
duplicateMovieClip (eval ("_root.Ice" + String(random(3) + 1)), ((this._name + "Ice") + ice) + Spread, _global.effectDepth++);
setProperty(IceName, _rotation , int(Math.random() * 360) - 179);
setProperty(IceName, _x , this._x);
setProperty(IceName, _y , this._y);
ice++;
}
_global.MakeNoise("Icebreak" + (int(Math.random() * 3) + 1));
removeMovieClip(_root.HeroOnIce);
if (_global.RazorGlaiveEquipped) {
duplicateMovieClip (_root.HeroWalkRazor, "HeroWalkin", _global.heroDepth++);
} else {
duplicateMovieClip (_root.HeroWalk, "HeroWalkin", _global.heroDepth++);
}
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.HeroAction = "none";
}
}
if (eval (_root.HeroWalkin) != undefined) {
with (_root.HeroWalkin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
if (eval (_root.HeroSlashin) != undefined) {
with (_root.HeroSlashin) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
with (_root.HeroSwing) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
if (_global.HeroAction == "staggered") {
with (_root.HeroStagger) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
if (_global.HeroAction == "frozen") {
with (_root.HeroOnIce) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
}
}
Instance of Symbol 1208 MovieClip "SpawnPoint" in Frame 7
onClipEvent (load) {
function SearchArray(ArraytoSearch, ItemtoFind) {
x = 0;
while (x < ArraytoSearch.length) {
if (ArraytoSearch[x] == ItemtoFind) {
return(x);
}
x++;
}
return(null);
}
this.addProperty("ChildCounter", this.getChildCounter, this.setChildCounter);
noBoss = false;
noBossTime = 0;
ChildCounter = 0;
_global.framesElapsed = 0;
_global.QueenRevive = false;
_global.Enemies = new Array();
_global.Hazards = new Array();
_global.activeEnemies = new Array();
_global.backgroundDepth = 50;
_global.markDepth = 1000;
_global.effectDepth = 2000;
_global.baddieDepth = 3000;
_global.heroDepth = 4000;
_global.capDepth = 5000;
if (_global.floorMode == "Random") {
_root.attachMovie("Backdrop" + (int(Math.random() * 8) + 2), "Backdrop", _global.backgroundDepth++);
} else {
_root.attachMovie("Backdrop1", "Backdrop", _global.backgroundDepth++);
}
with (_root.Backdrop) {
_x = 275;
_y = 200;
}
if (_global.Rematch) {
_global.activeEnemies.push("RazorQueen");
}
}
onClipEvent (keyDown) {
if ((Key.getCode() == 32) && (_global.gameMode == "Practice")) {
_global.unbuildTo = "Menu";
}
if (Key.getCode() == 88) {
_global.unbuildTo = "Menu";
}
if (Key.getCode() == 78) {
_global.playSong("juke");
}
if (Key.getCode() == 77) {
_global.playSong("tellMeAgain");
}
}
onClipEvent (enterFrame) {
_global.GameTime = int(_global.framesElapsed / 30);
if (!HeroKilled) {
_global.framesElapsed++;
}
x = 1;
while (x <= _global.activeEnemies.length) {
if (HeroKilled) {
break;
}
spawnType = _global.activeEnemies[x - 1];
switch (spawnType) {
case "Gloople" :
spawnRate = 40;
break;
case "Oozle" :
spawnRate = 5;
break;
case "Stickie" :
spawnRate = 6;
break;
case "Biter" :
spawnRate = 5;
break;
case "Meltie" :
spawnRate = 4;
break;
case "Sharp" :
spawnRate = 2;
break;
case "Clutter" :
spawnRate = 3;
break;
case "Inkie" :
spawnRate = 4;
break;
case "Grinder" :
spawnRate = 2;
break;
case "Gray" :
spawnRate = 0;
break;
case "Fuzzle" :
spawnRate = 3;
break;
case "Torchie" :
spawnRate = 2;
break;
case "Frostie" :
spawnRate = 2;
break;
case "Amalgam" :
spawnRate = 0;
break;
case "Queen" :
spawnRate = 0;
break;
case "Horror" :
spawnRate = 0;
break;
case "VoidEater" :
spawnRate = 0;
break;
case "RazorQueen" :
spawnRate = 0;
}
if (_global.gameMode == "Practice") {
if (((_global.PracticeEnemies.length < 8) && (spawnRate < 3)) && (spawnRate != 0)) {
spawnRate = 3;
}
if (((_global.PracticeEnemies.length < 5) && (spawnRate < 5)) && (spawnRate != 0)) {
spawnRate = 5;
}
if (((_global.PracticeEnemies.length < 3) && (spawnRate < 7)) && (spawnRate != 0)) {
spawnRate = 7;
}
if (((_global.PracticeEnemies.length == 1) && (spawnRate < 10)) && (spawnRate != 0)) {
spawnRate = 10;
}
}
if (((((int(Math.random() * 1000) + 1) < spawnRate) && (_global.Enemies.length < _global.spawnLimit)) || (spawnRate == 0)) || (((_global.gameMode == "Practice") && (Enemies.length == 0)) && (int(Math.random() * 10) == 1))) {
if (_global.gameMode == "Single") {
if (_global.Enemies.length >= _global.KillsLeft) {
break;
}
}
if (_global.gameMode != "Practice") {
RazorQueenisOut = false;
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 5) == "Razor") {
RazorQueenisOut = true;
}
x++;
}
if (RazorQueenisOut) {
break;
}
}
GloopleName = ("_root." + spawnType) + String(ChildCounter);
duplicateMovieClip (eval ("_root." + spawnType), spawnType + String(ChildCounter), _global.baddieDepth++);
switchVar = int(Math.random() * 4) + 1;
switch (switchVar) {
case 1 :
default :
setProperty(GloopleName, _x , -5);
setProperty(GloopleName, _y , int(Math.random() * 399) + 1);
if ((spawnRate == 0) || (spawnType == "Oozle")) {
setProperty(GloopleName, _rotation , 90);
}
break;
case 2 :
setProperty(GloopleName, _x , 555);
setProperty(GloopleName, _y , int(Math.random() * 399) + 1);
if ((spawnRate == 0) || (spawnType == "Oozle")) {
setProperty(GloopleName, _rotation , -90);
}
break;
case 3 :
setProperty(GloopleName, _y , -5);
setProperty(GloopleName, _x , int(Math.random() * 549) + 1);
if ((spawnRate == 0) || (spawnType == "Oozle")) {
setProperty(GloopleName, _rotation , 180);
}
break;
case 4 :
setProperty(GloopleName, _y , 405);
setProperty(GloopleName, _x , int(Math.random() * 549) + 1);
if (!((spawnRate == 0) || (spawnType == "Oozle"))) {
break;
}
setProperty(GloopleName, _rotation , 0);
}
_global.Enemies.push(spawnType + String(ChildCounter));
if (SearchArray(EnemiesSeen, spawnType) == null) {
EnemiesSeen.push(spawnType);
}
ChildCounter++;
if (spawnRate == 0) {
_global.activeEnemies.splice(SearchArray(_global.activeEnemies, spawnType), 1);
}
}
x++;
}
if (_global.backgroundDepth > 980) {
_global.backgroundDepth = 50;
}
if (_global.markDepth > 1980) {
_global.markDepth = 1000;
}
if (_global.effectDepth > 2980) {
_global.effectDepth = 2000;
}
if (_global.baddieDepth > 3980) {
_global.baddieDepth = 3000;
}
if (_global.heroDepth > 4980) {
_global.heroDepth = 4000;
}
if (_global.capDepth > 5980) {
_global.capDepth = 5000;
}
noBoss = true;
x = 0;
while (x < _global.Enemies.length) {
if ((Enemies[x].slice(0, 5) == "Queen") || (Enemies[x].slice(0, 5) == "Amalg")) {
noBoss = false;
}
x++;
}
if (noBoss) {
noBossTime++;
} else {
noBossTime = 0;
}
if (noBossTime == 300) {
QueenRevive = false;
_global.BossOnDeck = false;
}
}
Instance of Symbol 1211 MovieClip "HeroSwing" in Frame 7
onClipEvent (load) {
_visible = false;
if (_global.RazorGlaiveEquipped) {
_xscale = 150;
_yscale = 150;
}
}
Instance of Symbol 971 MovieClip [Splat2] "Splat2" in Frame 7
onClipEvent (load) {
if (_name == "Splat2") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 32) {
stop();
this.removeMovieClip();
}
}
Instance of Symbol 985 MovieClip [Splat3] "Splat3" in Frame 7
onClipEvent (load) {
if (_name == "Splat3") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 32) {
stop();
this.removeMovieClip();
}
}
Instance of Symbol 1215 MovieClip "StickyMark" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "StickyMark") {
mommy = true;
} else {
_visible = false;
framesSitting = 0;
daddySplat = eval ("_root." + _name.slice(0, _name.length - 10));
_rotation = daddySplat._rotation;
_global.Hazards.push(_name);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (daddySplat._currentframe == 5) {
daddySplat.stop();
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
if (_root.HeroPointerGoo == undefined) {
duplicateMovieClip (_root.Goo, "HeroPointerGoo", _global.capDepth++);
_global.MakeNoise("Goo");
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 5) == "Oozle") {
} else if (_global.Enemies[x].slice(0, 4) == "Gray") {
} else if (_global.Enemies[x].slice(0, 7) == "Grinder") {
} else if (_global.Enemies[x].slice(0, 4) == "Void") {
} else if (_global.Enemies[x].slice(0, 6) == "Horror") {
} else if (_global.Enemies[x].slice(0, 7) == "Amalgam") {
} else if (_global.Enemies[x].slice(0, 5) == "Queen") {
} else if (_global.Enemies[x].slice(0, 5) == "Razor") {
} else {
targetEnemy = eval ("_root." + _global.Enemies[x]);
if ((targetEnemy._name.slice(0, 5) == "Sharp") && targetEnemy.spines) {
} else if (hitTest(targetEnemy._x, targetEnemy._y, true)) {
if (eval (("_root." + targetEnemy._name) + "Goo") == undefined) {
duplicateMovieClip (_root.Goo, targetEnemy._name + "Goo", _global.capDepth++);
_global.MakeNoise("Goo");
}
}
}
x++;
}
}
framesSitting++;
if (framesSitting >= 155) {
daddySplat.play();
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
}
}
Instance of Symbol 1227 MovieClip "Goo" in Frame 7
onClipEvent (load) {
if (_name == "Goo") {
stop();
} else {
framesExisted = 0;
hostObject = eval ("_root." + _name.slice(0, _name.length - 3));
if (hostObject._name.slice(0, 7) == "Clutter") {
_xscale = hostObject._xscale;
_yscale = hostObject._yscale;
}
}
}
onClipEvent (enterFrame) {
if (_name != "Goo") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
if (_currentframe == 12) {
if (hostObject._name != "HeroPointer") {
hostObject.speed = hostObject.speed / 2;
} else {
hostObject.speed = hostObject.speed - 2.5;
}
}
if ((_currentframe == 30) && (hostObject._name.slice(0, 6) == "Meltie")) {
_global.MakeNoise("Sizzle");
gotoAndPlay (41);
}
if ((_currentframe == 30) && (hostObject._name.slice(0, 7) == "Frostie")) {
iceNum = 4;
ice = 1;
while (ice < iceNum) {
IceName = (("_root." + this._name) + "Ice") + ice;
duplicateMovieClip (eval ("_root.Ice" + String(random(3) + 1)), (this._name + "Ice") + Ice, _global.effectDepth++);
setProperty(IceName, _rotation , (this._rotation + int(Math.random() * 100)) - 59);
setProperty(IceName, _x , this._x);
setProperty(IceName, _y , this._y);
ice++;
}
gotoAndPlay (55);
}
if ((_currentframe == 40) && (framesExisted < 166)) {
gotoAndPlay (16);
}
framesExisted++;
if (_currentframe == 55) {
if (hostObject._name != "HeroPointer") {
hostObject.speed = hostObject.speed * 2;
} else {
hostObject.speed = hostObject.speed + 2.5;
}
removeMovieClip(this);
}
}
}
Instance of Symbol 1229 MovieClip "Bounty" in Frame 7
onClipEvent (load) {
if ((_name != "Bounty") && (_global.gameMode != "Practice")) {
this.addProperty(bounty, getBounty, setBounty);
_visible = false;
framesExisted = 0;
pointTextFormat = new TextFormat();
pointTextFormat.font = "Cooper Black";
pointTextFormat.color = 0;
pointTextFormat.size = 20;
pointTextFormat.align = "left";
_root.createTextField(_name + "Text", _global.capDepth++, this._x, this._y, 100, 35);
pointText = eval (("_root." + _name) + "Text");
pointText.embedFonts = true;
pointText.selectable = false;
} else if (_global.gameMode == "Practice") {
removeMovieClip(this);
}
}
onClipEvent (enterFrame) {
if ((_name != "Bounty") && (_global.gameMode != "Practice")) {
if (framesExisted < 40) {
if (bounty == 0) {
pointText.removeTextField();
removeMovieClip(this);
}
if (framesExisted == 0) {
pointText.text = bounty;
pointText.setTextFormat(pointTextFormat);
leadingChar = bounty.slice(0, 1);
if ((leadingChar != "x") && (leadingChar != "+")) {
_root.HeroPointer.pointsOnSwing = _root.HeroPointer.pointsOnSwing + bounty;
_root.HeroPointer.killsOnSwing++;
if ((gameMode == "Single") && (KillsLeft > 0)) {
_global.KillsLeft--;
}
}
}
_y = (_y - 0.5);
pointText._x = this._x - 5;
pointText._y = this._y - 5;
framesExisted++;
} else {
pointText.removeTextField();
removeMovieClip(this);
}
}
}
Instance of Symbol 1231 MovieClip "ScoreDisplay" in Frame 7
onClipEvent (load) {
if (_global.gameMode != "Practice") {
lastScore = 0;
sinceChanged = 0;
_visible = false;
scoreTextFormat = new TextFormat();
scoreTextFormat.font = "Cooper Black";
scoreTextFormat.color = 0;
scoreTextFormat.size = 26;
scoreTextFormat.align = "left";
_root.createTextField("scoreText", 7000, this._x, this._y, 100, 20);
scoreText = _root.scoreText;
scoreText.embedFonts = true;
scoreText.selectable = false;
}
}
onClipEvent (enterFrame) {
if (_global.gameMode != "practice") {
if ((!HeroKilled) && ((_global.ClearTime < 110) || (_global.gameMode != "Single"))) {
if (_global.Score > lastScore) {
scoreText.text = String(_global.Score);
scoreText.setTextFormat(scoreTextFormat);
scoreText._alpha = 100;
lastScore = _global.Score;
sinceChanged = 0;
} else if ((sinceChanged > 60) && ((_global.KillsLeft > 0) || (_global.gameMode != "Single"))) {
if (scoreText._alpha > 0) {
scoreText._alpha--;
}
} else {
sinceChanged++;
}
} else {
scoreText._alpha = 100;
}
dist_x = _x - _root.HeroPointer._x;
dist_y = _y - _root.HeroPointer._y;
if ((Math.sqrt((dist_x * dist_x) + (dist_y * dist_y)) < 50) && (scoreText._alpha > 50)) {
scoreText._alpha = 50;
}
}
}
Instance of Symbol 1234 MovieClip "Sword" in Frame 7
onClipEvent (load) {
if (_global.RazorGlaiveEquipped) {
gotoAndStop (2);
} else {
gotoAndStop (1);
}
}
Instance of Symbol 1251 MovieClip "HeroAbsorbed" in Frame 7
onClipEvent (load) {
if (_name == "HeroAbsorbed") {
stop();
} else {
hostObject = eval ("_root." + _name.slice(0, _name.length - 4));
}
}
onClipEvent (enterFrame) {
if (_name != "HeroAbsorbed") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
}
}
Instance of Symbol 514 MovieClip "Meltie" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Meltie") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 3;
turnSpeed = 1;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = 275;
gotoSpotY = 200;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
objectHitX = null;
objectHitY = null;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (((_currentframe == 20) || (_currentframe == 40)) || (_currentframe == 60)) {
switch (_currentframe) {
case 20 :
bubbleRotation = _rotation + 45;
break;
case 40 :
bubbleRotation = _rotation - 90;
break;
case 60 :
bubbleRotation = _rotation - 180;
}
if (bubbleRotation > 179) {
bubbleRotation = bubbleRotation - 360;
}
if (bubbleRotation < -180) {
bubbleRotation = bubbleRotation + 360;
}
PopName = (("_root." + this._name) + "Pop") + _currentframe;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), (this._name + "Pop") + _currentframe, _global.effectDepth++);
setProperty(PopName, _rotation , bubbleRotation);
setProperty(PopName, _x , this._x + (10 * Math.sin(bubbleRotation * (Math.PI/180))));
setProperty(PopName, _y , this._y - (10 * Math.cos(bubbleRotation * (Math.PI/180))));
setProperty(PopName, _xscale , 30);
setProperty(PopName, _yscale , 30);
PopColor = new Color(eval (PopName));
PopColor.setRGB(15898925);
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15898925);
duplicateMovieClip (_root.AcidMark, this._name + "SplatAcidMark", _global.markDepth++);
with (eval (SplatName + "AcidMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_global.MakeNoise("Sizzle");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 10;
if (SearchArray(EnemiesKilled, "Meltie") == null) {
EnemiesKilled.push("Meltie");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15898925);
duplicateMovieClip (_root.AcidMark, this._name + "SplatAcidMark", _global.markDepth++);
with (eval (SplatName + "AcidMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_global.MakeNoise("Sizzle");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
objectHitX = _root.HeroPointer._x;
objectHitY = _root.HeroPointer._y;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
objectHitX = hitTarget._x;
objectHitY = hitTarget._y;
break;
}
}
x++;
}
}
if ((objectHitX != null) && (objectHitY != null)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (-Math.atan2(_x - objectHitX, _y - objectHitY)) / (Math.PI/180));
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15898925);
duplicateMovieClip (_root.AcidMark, this._name + "SplatAcidMark", _global.markDepth++);
with (eval (SplatName + "AcidMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_global.MakeNoise("Sizzle");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 1255 MovieClip "AcidMark" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "AcidMark") {
mommy = true;
} else {
_visible = false;
framesSitting = 0;
daddySplat = eval ("_root." + _name.slice(0, _name.length - 8));
_rotation = daddySplat._rotation;
_global.Hazards.push(_name);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (daddySplat._currentframe == 5) {
daddySplat.stop();
}
if (daddySplat._currentframe == 5) {
if (int(framesSitting / 10) == (framesSitting / 10)) {
BubbleName = (("_root." + _name) + "Bubble") + _global.effectDepth;
duplicateMovieClip (_root.AcidBubble, (this._name + "Bubble") + _global.effectDepth, _global.effectDepth++);
BubbleDistance = int(Math.random() * 60);
BubbleOffset = (_rotation + int(Math.random() * 40)) - 20;
setProperty(BubbleName, _x , this._x + (BubbleDistance * Math.sin(BubbleOffset * (Math.PI/180))));
setProperty(BubbleName, _y , this._y - (BubbleDistance * Math.cos(BubbleOffset * (Math.PI/180))));
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.HeroAction = "melted";
_global.MakeNoise("Sizzle");
} else {
x = 0;
for ( ; x < _global.Enemies.length ; x++) {
if (_global.Enemies[x].slice(0, 6) == "Meltie") {
} else if (_global.Enemies[x].slice(0, 7) == "Torchie") {
} else if (_global.Enemies[x].slice(0, 4) == "Void") {
} else if (_global.Enemies[x].slice(0, 6) == "Horror") {
} else if (_global.Enemies[x].slice(0, 5) == "Queen") {
} else if (_global.Enemies[x].slice(0, 5) == "Razor") {
} else {
targetEnemy = eval ("_root." + _global.Enemies[x]);
if ((targetEnemy._name.slice(0, 5) == "Sharp") && targetEnemy.spines) {
} else if ((targetEnemy._name.slice(0, 5) == "Amalg") && (targetEnemy.burnProtection > 0)) {
} else if (hitTest(targetEnemy._x, targetEnemy._y, true)) {
if (targetEnemy._name.slice(0, 7) == "Grinder") {
targetEnemy.acidized = true;
} else if (targetEnemy._name.slice(0, 7) == "Amalgam") {
if (targetEnemy._xscale > 60) {
targetEnemy._xscale = targetEnemy._xscale - 10;
targetEnemy._yscale = targetEnemy._yscale - 10;
targetEnemy.burnProtection = 60;
_global.MakeNoise("Sizzle");
x = 1;
while (x < 3) {
duplicateMovieClip (_root.WhiteSmoke, (_name + "Smoke") + x, _global.capDepth++);
with (eval ((("_root." + _name) + "Smoke") + x)) {
_x = (targetEnemy._x + int(Math.random() * 60)) - 30;
_y = (targetEnemy._y + int(Math.random() * 60)) - 30;
}
x++;
}
continue;
}
} else if (targetEnemy._name.slice(0, 6) == "Fuzzle") {
if (targetEnemy.gracePeriod > 0) {
continue;
}
if (targetEnemy.fuzz != undefined) {
if (eval (("_root." + targetEnemy._name) + "Flame") == undefined) {
if (eval (("_root." + targetEnemy._name) + "Goo") != undefined) {
continue;
}
duplicateMovieClip (_root.Flames, targetEnemy._name + "Flame", _global.capDepth++);
}
} else if (eval (("_root." + targetEnemy._name) + "GloopleMelt") == undefined) {
targetEnemy.gotoAndStop(1);
duplicateMovieClip (_root.GloopleMelt, targetEnemy._name + "GloopleMelt", _global.capDepth++);
_global.MakeNoise("Sizzle");
}
} else if (eval (("_root." + targetEnemy._name) + "GloopleMelt") == undefined) {
targetEnemy.gotoAndStop(1);
duplicateMovieClip (_root.GloopleMelt, targetEnemy._name + "GloopleMelt", _global.capDepth++);
_global.MakeNoise("Sizzle");
}
}
}
}
}
framesSitting++;
if (framesSitting >= 155) {
daddySplat.play();
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
}
}
Instance of Symbol 1260 MovieClip "GloopleMelt" in Frame 7
onClipEvent (load) {
if (_name == "GloopleMelt") {
stop();
} else {
hostObject = eval ("_root." + _name.slice(0, _name.length - 11));
}
}
onClipEvent (enterFrame) {
if (_name != "GloopleMelt") {
_x = hostObject._x;
_y = hostObject._y;
if (_currentframe == 2) {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
if ((hostObject._name.slice(0, 5) == "Oozle") || (hostObject._name.slice(0, 4) == "Gray")) {
_xscale = 170;
_yscale = 170;
}
if (hostObject._name.slice(0, 7) == "Clutter") {
_xscale = hostObject._xscale;
_yscale = hostObject._yscale;
}
hostObject.gotoAndStop(1);
hostObject.speed = 1;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hostObject._name), 1);
}
if (_currentframe == 41) {
removeMovieClip(hostObject);
}
if (_currentframe == 81) {
removeMovieClip(this);
}
if (int(_currentframe / 5) == (_currentframe / 5)) {
BubbleName = (("_root." + _name) + "Bubble") + _global.capDepth;
duplicateMovieClip (_root.AcidBubble, (this._name + "Bubble") + _global.capDepth, _global.capDepth++);
BubbleDistance = int(Math.random() * 20);
BubbleOffset = int(Math.random() * 359) - 180;
setProperty(BubbleName, _x , this._x + (BubbleDistance * Math.sin(BubbleOffset * (Math.PI/180))));
setProperty(BubbleName, _y , this._y - (BubbleDistance * Math.cos(BubbleOffset * (Math.PI/180))));
}
}
}
Instance of Symbol 1289 MovieClip "HeroMelt" in Frame 7
onClipEvent (load) {
if (_name == "HeroMelt") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe < 81) {
if (int(_currentframe / 5) == (_currentframe / 5)) {
BubbleName = (("_root." + _name) + "Bubble") + _global.capDepth;
duplicateMovieClip (_root.AcidBubble, (this._name + "Bubble") + _global.capDepth, _global.capDepth++);
BubbleDistance = int(Math.random() * 20);
BubbleOffset = int(Math.random() * 359) - 180;
setProperty(BubbleName, _x , this._x + (BubbleDistance * Math.sin(BubbleOffset * (Math.PI/180))));
setProperty(BubbleName, _y , this._y - (BubbleDistance * Math.cos(BubbleOffset * (Math.PI/180))));
}
}
if (_currentframe == 121) {
stop();
}
}
Instance of Symbol 1296 MovieClip "BloodPrint" in Frame 7
onClipEvent (load) {
if (_name == "BloodPrint") {
stop();
}
}
Instance of Symbol 501 MovieClip "Inkie" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Inkie") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("exploded", this.getExploded, this.setExploded);
killedBy = null;
exploded = false;
speed = 4;
turnSpeed = 2;
duplicateMovieClip (_root.InkTrail, this._name + "Trail", _global.effectDepth++);
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = 275;
gotoSpotY = 200;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
objectHitX = null;
objectHitY = null;
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (exploded) {
removeMovieClip(this);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (eval (("_root." + _name) + "Flame") != undefined) {
exploded = true;
_global.MakeNoise("Explode");
if (eval (("_root." + _name) + "Shockwave") != undefined) {
removeMovieClip(_root.fakeBackdrop);
removeMovieClip(eval (("_root." + _name) + "Shockwave"));
}
duplicateMovieClip (_root.VoidPulse, _name + "Shockwave", _global.effectDepth++);
with (eval (("_root." + _name) + "Shockwave")) {
_x = this._x;
_y = this._y;
}
duplicateMovieClip (_root.Blastmark, this._name + "Blastmark", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Blastmark")) {
_x = this._x;
_y = this._y;
}
duplicateMovieClip (_root.Blackout, this._name + "Bright", 6000);
with (eval (("_root." + this._name) + "Bright")) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
}
BlinkColor = new Color(eval (("_root." + this._name) + "Bright"));
BlinkColor.setRGB(16777215);
x = 1;
while (x < 5) {
FireName = (("_root." + this._name) + "Fire") + littleFires;
duplicateMovieClip (_root.SmallFire, (this._name + "Fire") + littleFires, _global.effectDepth++);
setProperty(FireName, _x , (this._x + int(Math.random() * 160)) - 80);
setProperty(FireName, _y , (this._y + int(Math.random() * 160)) - 80);
littleFires++;
x++;
}
ashpuffs = int(Math.random() * 3) + 2;
x = 0;
while (x < ashpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Ash") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Ash") + x)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
AshColor = new Color(eval ((("_root." + this._name) + "Ash") + x));
AshColor.setRGB(0);
x++;
}
FireName = ("_root." + this._name) + "BigFire";
duplicateMovieClip (_root.BigFire, this._name + "BigFire", _global.effectDepth++);
setProperty(FireName, _x , this._x);
setProperty(FireName, _y , this._y);
if ((eval (_root.HeroPointer) != undefined) && (_global.justHit == null)) {
_global.justHit = this;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
toTargetX = _x - hitTarget._x;
toTargetY = _y - hitTarget._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
hitTarget.killedBy = this;
} else {
hitTarget._y = hitTarget._y - (30 * Math.cos(targetDirection * (Math.PI/180)));
hitTarget._x = hitTarget._x + (30 * Math.sin(targetDirection * (Math.PI/180)));
hitTarget._rotation = targetDirection;
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 5) == "Razor") {
toTargetX = _x - targetHazard._x;
toTargetY = _y - targetHazard._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
targetHazard.killedBy = this;
}
}
x++;
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(0);
duplicateMovieClip (_root.OilMark, this._name + "SplatOilMark", _global.markDepth++);
with (eval (SplatName + "OilMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 8;
if (SearchArray(EnemiesKilled, "Inkie") == null) {
EnemiesKilled.push("Inkie");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(0);
duplicateMovieClip (_root.OilMark, this._name + "SplatOilMark", _global.markDepth++);
with (eval (SplatName + "OilMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
objectHitX = _root.HeroPointer._x;
objectHitY = _root.HeroPointer._y;
_global.justHit = this;
duplicateMovieClip (_root.Blackout, this._name + "Blackout", 6000);
with (eval (("_root." + this._name) + "Blackout")) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
objectHitX = hitTarget._x;
objectHitY = hitTarget._y;
break;
}
}
x++;
}
}
if ((objectHitX != null) && (objectHitY != null)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (-Math.atan2(_x - objectHitX, _y - objectHitY)) / (Math.PI/180));
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(0);
duplicateMovieClip (_root.OilMark, this._name + "SplatOilMark", _global.markDepth++);
with (eval (SplatName + "OilMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 1297 MovieClip "InkTrail" in Frame 7
onClipEvent (load) {
if (_name == "InkTrail") {
mommy = true;
} else {
mommy = false;
this.lineStyle(6, 0, 100);
hostObject = eval ("_root." + _name.slice(0, _name.length - 5));
_x = 0;
_y = 0;
notset = true;
if (eval (hostObject) != undefined) {
this.moveTo(hostObject._x, hostObject._y);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (eval (hostObject) == undefined) {
_alpha = (_alpha - 1);
} else if (((hostObject._y > 0) && (hostObject._x > 0)) || (notset)) {
this.lineTo(hostObject._x, hostObject._y);
notset = false;
}
if (_alpha <= 0) {
removeMovieClip(this);
}
}
}
Instance of Symbol 1301 MovieClip "OilMark" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "OilMark") {
mommy = true;
} else {
_visible = false;
framesSitting = 0;
this.addProperty("onFire", this.getOnFire, this.setOnFire);
onFire = false;
daddySplat = eval ("_root." + _name.slice(0, _name.length - 7));
_rotation = daddySplat._rotation;
_global.Hazards.push(_name);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (daddySplat._currentframe == 5) {
daddySplat.stop();
}
if (onFire) {
ignitePointY = _y - (30 * Math.cos(_rotation * (Math.PI/180)));
ignitePointX = _x + (30 * Math.sin(_rotation * (Math.PI/180)));
FireName = ("_root." + this._name) + "Fire";
duplicateMovieClip (_root.BigFire, this._name + "Fire", _global.effectDepth++);
setProperty(FireName, _x , ignitePointX);
setProperty(FireName, _y , ignitePointY);
daddySplat.play();
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
if (_root.HeroPointerSlickTag == undefined) {
duplicateMovieClip (_root.SlickTag, "HeroPointerSlickTag", _global.markDepth++);
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 5) == "Inkie") {
} else if (_global.Enemies[x].slice(0, 7) == "Grinder") {
} else if (_global.Enemies[x].slice(0, 7) == "Torchie") {
} else if (_global.Enemies[x].slice(0, 4) == "Void") {
} else if (_global.Enemies[x].slice(0, 5) == "Razor") {
} else {
targetEnemy = eval ("_root." + _global.Enemies[x]);
if ((targetEnemy._name.slice(0, 5) == "Sharp") && (targetEnemy.spines)) {
} else if (hitTest(targetEnemy._x, targetEnemy._y, true)) {
if (eval (("_root." + targetEnemy._name) + "SlickTag") == undefined) {
duplicateMovieClip (_root.SlickTag, targetEnemy._name + "SlickTag", _global.markDepth++);
}
}
}
x++;
}
}
framesSitting++;
if (framesSitting >= 155) {
daddySplat.play();
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
}
}
Instance of Symbol 1303 MovieClip "SlickTag" in Frame 7
onClipEvent (load) {
if (_name == "SlickTag") {
} else {
_visible = false;
framesExisted = 0;
hostObject = eval ("_root." + _name.slice(0, _name.length - 8));
hostTurnSpeed = 0;
hostSpeed = 0;
}
}
onClipEvent (enterFrame) {
if (_name != "SlickTag") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
if (framesExisted == 0) {
if (hostObject._name != "HeroPointer") {
if (hostObject._name.slice(0, 5) != "Frost") {
hostSpeed = hostObject.speed;
hostObject.speed = 3;
}
hostTurnSpeed = hostObject.turnSpeed;
hostObject.turnSpeed = 0;
} else if (hostObject.fuzz < 1) {
hostSpeed = hostObject.speed;
hostObject.speed = 3;
hostObject.turnMode = false;
}
}
if (framesExisted == 1) {
duplicateMovieClip (_root.InkTrail, _name + "Trail", _global.effectDepth++);
}
if (framesExisted >= 60) {
if (hostObject._name != "HeroPointer") {
if (hostObject._name.slice(0, 5) != "Frost") {
hostObject.speed = hostSpeed;
}
hostObject.turnSpeed = hostTurnSpeed;
} else if (hostObject.fuzz < 1) {
hostObject.speed = hostSpeed;
hostObject.turnMode = true;
}
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 327 MovieClip "Fuzzle" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
fuzzRecover = 0;
recoil = 0;
if (_name == "Fuzzle") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("lunging", this.getLunging, null);
this.addProperty("fuzz", this.getFuzz, this.setFuzz);
killedBy = null;
lunging = false;
speed = 4;
turnSpeed = 4;
fuzz = 2;
furDecal = 0;
if ((((_x < 0) || (_x > 550)) || (_y < 0)) || (_y > 400)) {
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
}
if (eval (_root.HeroPointer) == undefined) {
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
myFire = eval (("_root." + _name) + "Flame");
if (eval (myFire) != undefined) {
if (myFire._currentframe > 30) {
duplicateMovieClip (_root.BlackSmoke, _name + "BSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "BSmoke")) {
_x = this._x;
_y = this._y;
}
removeMovieClip(myFire);
duplicateMovieClip (_root.FuzzleHairless, _name + "Hairless", _global.baddieDepth++);
myFuzzle = eval (("_root." + _name) + "Hairless");
with (myFuzzle) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
}
}
if (fuzzRecover > 0) {
fuzzRecover--;
}
if ((fuzz < 2) && (fuzzRecover == 0)) {
fuzz++;
}
if (recoil > 0) {
recoil--;
}
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (recoil == 0)) {
if (_global.RazorGlaiveEquipped) {
FuzzName = (("_root." + this._name) + "Fuzz") + furDecal;
duplicateMovieClip (_root.FuzzPuff, (this._name + "Fuzz") + (furDecal++), _global.effectDepth++);
setProperty(FuzzName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(FuzzName, _x , this._x);
setProperty(FuzzName, _y , this._y);
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13806391);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 14;
if (SearchArray(EnemiesKilled, "Fuzzle") == null) {
EnemiesKilled.push("Fuzzle");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (fuzz == 1) {
FuzzName = (("_root." + this._name) + "Fuzz") + furDecal;
duplicateMovieClip (_root.FuzzPuff, (this._name + "Fuzz") + (furDecal++), _global.effectDepth++);
setProperty(FuzzName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(FuzzName, _x , this._x);
setProperty(FuzzName, _y , this._y);
_global.MakeNoise("Slice");
_rotation = ((_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
duplicateMovieClip (_root.FuzzleHairless, _name + "Hairless", _global.baddieDepth++);
myFuzzle = eval (("_root." + _name) + "Hairless");
with (myFuzzle) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
} else {
FuzzName = (("_root." + this._name) + "Fuzz") + furDecal;
duplicateMovieClip (_root.FuzzPuff, (this._name + "Fuzz") + (furDecal++), _global.effectDepth++);
setProperty(FuzzName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(FuzzName, _x , this._x);
setProperty(FuzzName, _y , this._y);
_global.MakeNoise("Slice");
fuzz--;
fuzzRecover = 120;
recoil = 20;
_rotation = ((_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
speedBoost = 3;
lunging = false;
if (_currentframe > 85) {
speed = speed / 2;
} else if (_currentframe > 61) {
speed = speed * 2;
}
gotoAndPlay (1);
}
}
}
}
if ((killedBy != null) && (recoil == 0)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
if ((killedBy._name.slice(0, 7) == "Grinder") || (killedBy.exploded)) {
FuzzName = (("_root." + this._name) + "Fuzz") + furDecal;
duplicateMovieClip (_root.FuzzPuff, (this._name + "Fuzz") + (furDecal++), _global.effectDepth++);
setProperty(FuzzName, _rotation , killDir);
setProperty(FuzzName, _x , this._x);
setProperty(FuzzName, _y , this._y);
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13806391);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
FuzzName = (("_root." + this._name) + "Fuzz") + furDecal;
duplicateMovieClip (_root.FuzzPuff, (this._name + "Fuzz") + (furDecal++), _global.effectDepth++);
setProperty(FuzzName, _rotation , killDir);
setProperty(FuzzName, _x , this._x);
setProperty(FuzzName, _y , this._y);
_global.MakeNoise("Slice");
fuzz--;
fuzzRecover = 120;
justBounced = 8;
recoil = 20;
bouncedOffX = killedBy._x;
bouncedOffY = killedBy._y;
}
}
if ((justBounced == 0) || (killedBy != null)) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (!lunging) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
_global.justHit = this;
duplicateMovieClip (_root.HeroChow, _name + "Chowing", _global.heroDepth++);
myChow = eval (("_root." + _name) + "Chowing");
with (myChow) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if (!lunging) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
hitTarget.killedBy = this;
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
killedBy = null;
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if ((_rotation != targetRotation) && (!lunging)) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - ((speed + speedBoost) * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + ((speed + speedBoost) * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (((!lunging) && (speed == 4)) && (eval (_root.HeroPointer) != undefined)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 120) {
if (Math.abs(_rotation - targetRotation) < 20) {
speed = speed * 0.5;
gotoAndPlay (62);
}
}
}
if (_currentframe == 86) {
speed = speed * 4;
lunging = true;
_global.MakeNoise("FuzzGrowl");
} else if (_currentframe == 106) {
speed = speed / 2;
lunging = false;
} else if (_currentframe == 61) {
gotoAndPlay (1);
}
}
}
Instance of Symbol 1332 MovieClip "FuzzleHairless" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
fuzzRecover = 120;
gracePeriod = 20;
if (_name == "FuzzleHairless") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("gracePeriod", this.getGracePeriod, null);
killedBy = null;
speed = 4;
turnSpeed = 4;
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (fuzzRecover > 0) {
fuzzRecover--;
}
if (gracePeriod > 0) {
gracePeriod--;
}
if ((_global.HeroAction == "attacking") && (gracePeriod == 0)) {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13806391);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 14;
if (SearchArray(EnemiesKilled, "Fuzzle") == null) {
EnemiesKilled.push("Fuzzle");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if ((killedBy != null) & (gracePeriod == 0)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13806391);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if ((fuzzRecover == 0) && (_currentframe < 41)) {
gotoAndPlay (41);
}
if (_currentframe == 40) {
gotoAndPlay (1);
} else if (_currentframe == 81) {
duplicateMovieClip (_root.Fuzzle, _name.slice(0, _name.length - 8), _global.baddieDepth++);
myFuzzle = eval ("_root." + _name.slice(0, _name.length - 8));
with (myFuzzle) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_global.Enemies.push(_name.slice(0, _name.length - 8));
_visible = false;
removeMovieClip(this);
}
}
}
Instance of Symbol 1431 MovieClip "HeroChow" in Frame 7
onClipEvent (load) {
if (_name == "HeroChow") {
stop();
} else {
speed = 4;
playsthrough = 0;
splats = 0;
daddyFuzzle = eval ("_root." + _name.slice(0, _name.length - 7));
}
}
onClipEvent (enterFrame) {
if (_name != "HeroChow") {
if (_currentframe == 2) {
x = 1;
while (x < 3) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (this._rotation + int(Math.random() * 40)) - 20);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _xscale , 40);
setProperty(BloodName, _y , this._y);
setProperty(BloodName, _yscale , 40);
splats++;
x++;
}
}
if (_currentframe == 3) {
removeMovieClip(daddyFuzzle);
}
if (_currentframe < 15) {
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
this.removeMovieClip();
}
}
if ((_currentframe == 47) || (_currentframe == 77)) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (this._rotation + int(Math.random() * 120)) - 50);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
splats++;
_global.MakeNoise("FuzzBite" + (int(Math.random() * 2) + 1));
}
if ((_currentframe == 55) || (_currentframe == 85)) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (this._rotation + int(Math.random() * 50)) - 180);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
splats++;
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = (this._rotation + int(Math.random() * 360)) - 180;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + (splats++)));
BloodColor.setRGB(11800592);
_global.MakeNoise("Rend");
}
if ((_currentframe == 72) && (playsthrough < 2)) {
gotoAndPlay (42);
playsthrough++;
}
if ((_currentframe == 110) && (playsthrough == 2)) {
stop();
duplicateMovieClip (_root.HeroChowed, "DeadHero", _global.effectDepth++);
with (_root.DeadHero) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.Fuzzle, "Fuzzle00", _global.baddieDepth++);
with (_root.Fuzzle00) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
removeMovieClip(this);
}
}
}
Instance of Symbol 1438 MovieClip "OozleGlom" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "OozleGlom") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 1;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 1;
duplicateMovieClip (_root.Oozle, "Oozle" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Oozle" + _name.slice(4));
with (eval ("_root.Oozle" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._x;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
hitTarget.killedBy = this;
}
}
x++;
}
}
if (justBounced != 0) {
BoingNoise = new Sound();
BoingNoise.attachSound("Boing Sound");
BoingNoise.onSoundComplete = function () {
BoingNoise.stop();
};
BoingNoise.start();
if (_x > bouncedOffX) {
gotoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
gotoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
gotoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
gotoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (gotoSpotX > 275) {
gotoSpotX = 555;
} else {
gotoSpotX = -5;
}
} else if (gotoSpotY > 200) {
gotoSpotY = 405;
} else {
gotoSpotY = -5;
}
}
} else {
justBounced--;
}
if (justBounced > 0) {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_currentframe == 31) {
duplicateMovieClip (_root.Gray, "Gray" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Gray" + _name.slice(4));
with (eval ("_root.Gray" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 455 MovieClip "Gray" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Gray") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("health", this.getHealth, this.setHealth);
this.addProperty("hazard", this.getHazard, this.setHazard);
this.addProperty("action", this.getAction, this.setAction);
health = 3;
recoil = 0;
speed = 2;
turnSpeed = 2;
action = "none";
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
if (SearchArray(EnemiesSeen, "Gray") == null) {
EnemiesSeen.push("Gray");
}
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (recoil > 0) {
recoil--;
if (recoil == 18) {
action = "none";
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (recoil == 0)) {
if (action != "gaurd") {
health--;
recoil = 20;
action = "stun";
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(9803157);
if ((health == 0) || (_global.RazorGlaiveEquipped)) {
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(9803157);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 35;
if (SearchArray(EnemiesKilled, "Gray") == null) {
EnemiesKilled.push("Gray");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
_global.MakeNoise("Slice");
}
} else {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((hitTarget._name.slice(0, 7) == "Gloople") && ((int(Math.random() * 100) + 1) < 11)) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
duplicateMovieClip (_root.GrayGlom, "Glom" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Glom" + _name.slice(4));
Glommie = eval ("_root.Glom" + _name.slice(4));
with (Glommie) {
_x = this._x;
_y = this._y;
_rotation = (-Math.atan2(this._x - hitTarget._x, this._y - hitTarget._y)) / (Math.PI/180);
}
_global.MakeNoise("Glom");
removeMovieClip(hitTarget);
this.removeMovieClip();
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
if (killedBy != null) {
if ((((((killedBy._name.slice(0, 5) == "Sharp") || (killedBy._name.slice(0, 4) == "Gray")) || (killedBy._name.slice(0, 7) == "Grinder")) || (killedBy.exploded)) || (killedBy._name.slice(0, 6) == "Horror")) || (killedBy.claw)) {
if (action != "gaurd") {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(9803157);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
killedBy = null;
}
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
hazard = false;
toHazardX = _x - _root.HeroPointer._x;
toHazardY = _y - _root.HeroPointer._y;
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 100) {
if (_global.HeroAction == "attacking") {
hazard = true;
}
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hazTarget = eval ("_root." + _global.Enemies[x]);
if ((hazTarget._name.slice(0, 5) == "Sharp") || (hazTarget._name.slice(0, 7) == "Grinder")) {
toHazardX = _x - hazTarget._x;
toHazardY = _y - hazTarget._y;
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 100) {
hazard = true;
}
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 6) == "Meltie") {
p = 10;
while (p < 70) {
ProjPathX = _x + (p * Math.sin(_rotation * (Math.PI/180)));
ProjPathY = _y - (p * Math.cos(_rotation * (Math.PI/180)));
if (targetHazard.hitTest(ProjPathX, ProjPathY, false)) {
hazard = true;
}
p = p + 10;
}
}
x++;
}
if (((action == "none") && (eval (_root.HeroPointer) != undefined)) && (_currentframe < 55)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 210) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > 120) {
if (Math.abs(_rotation - targetRotation) < 20) {
gotoAndPlay (101);
}
}
}
}
if (((hazard == true) && ((action == "none") || (action == "reel"))) && ((_currentframe < 55) || (_currentframe > 92))) {
gotoAndPlay (55);
speed = 1;
}
if ((_currentframe > 55) && (_currentframe < 93)) {
speed = 0;
action = "gaurd";
}
if ((_currentframe > 92) && (_currentframe < 100)) {
speed = 1;
action = "none";
}
if (((_currentframe == 51) || (_currentframe == 100)) || (_currentframe == 140)) {
speed = 2;
turnSpeed = 2;
action = "none";
gotoAndPlay (11);
}
if ((_currentframe > 100) && (_currentframe < 126)) {
speed = 1;
action = "none";
}
if ((_currentframe == 126) && (action == "none")) {
speed = 0;
turnSpeed = 0;
stop();
action = "lance";
duplicateMovieClip (_root.GrayTip, _name + "Tip", _global.baddieDepth++);
with (eval (("_root." + _name) + "Tip")) {
_y = this._y - (25 * Math.cos(this._rotation * (Math.PI/180)));
_x = this._x + (25 * Math.sin(this._rotation * (Math.PI/180)));
_rotation = this._rotation;
}
_global.MakeNoise("GraySpear");
}
if ((_currentframe == 126) && (action == "reel")) {
gotoAndStop (127);
}
if ((_currentframe == 127) && (action == "none")) {
speed = 1;
turnSpeed = 2;
play();
}
if (action == "stun") {
gotoAndPlay (1);
}
}
}
Instance of Symbol 1442 MovieClip "GrayBit" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "GrayTip") {
mommy = true;
stop();
} else {
gotoAndStop (1);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (_currentframe == 16) {
this.removeMovieClip();
}
}
}
Instance of Symbol 1446 MovieClip "GrayTip" in Frame 7
onClipEvent (load) {
mommy = false;
gotoSpotX = null;
gotoSpotY = null;
if (_name == "GrayTip") {
mommy = true;
stop();
} else {
this.addProperty("lancing", this.getLancing, null);
killedBy = null;
lancing = true;
bowing = false;
reeling = false;
speed = 8;
framesExisted = 0;
tendrilBits = 0;
buildAtY = _y - (speed * Math.cos(_rotation * (Math.PI/180)));
buildAtX = _x + (speed * Math.sin(_rotation * (Math.PI/180)));
daddyGray = eval ("_root." + _name.slice(0, _name.length - 3));
bankName = daddyGray._name;
heroSpeared = null;
gotoAndStop (1);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (gotoSpotX == null) {
gotoSpotX = _x + (210 * Math.sin(_rotation * (Math.PI/180)));
gotoSpotY = _y - (210 * Math.cos(_rotation * (Math.PI/180)));
}
if (((eval (daddyGray) == undefined) || (daddyGray.action == "stun")) || (daddyGray.action == "gaurd")) {
lancing = false;
bowing = false;
reeling = false;
x = 0;
while (x < tendrilBits) {
BitName = eval ((("_root." + bankName) + "Bit") + x);
BitName.play();
x++;
}
play();
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
lancing = false;
bowing = true;
framesExisted = 0;
daddyGray.action = "reel";
_global.HeroAction = "bounceback";
}
}
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (lancing) {
_visible = false;
duplicateMovieClip (_root.HeroSpear, daddyGray._name + "HeroSpear", _global.heroDepth++);
heroSpeared = eval (("_root." + daddyGray._name) + "HeroSpear");
with (heroSpeared) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.justHit = this;
} else {
_global.justHit = this;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != daddyGray._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if ((hitTarget._name.slice(0, 7) == "Grinder") || ((hitTarget._name.slice(0, 4) == "Gray") && (hitTarget.action == "guard"))) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
if (lancing) {
lancing = false;
bowing = true;
framesExisted = 0;
daddyGray.action = "reel";
}
} else if ((hitTarget._name.slice(0, 5) == "Sharp") && (hitTarget.spines)) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
if (lancing) {
lancing = false;
bowing = true;
framesExisted = 0;
daddyGray.action = "reel";
}
hitTarget.killedBy = this;
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
if (lancing) {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
x = 0;
while (x < tendrilBits) {
BitName = (("_root." + daddyGray._name) + "Bit") + x;
with (eval (BitName)) {
_y = _y - (speed * Math.cos(_rotation * (Math.PI/180)));
_x = _x + (speed * Math.sin(_rotation * (Math.PI/180)));
}
x++;
}
} else {
lancing = false;
bowing = true;
framesExisted = 0;
daddyGray.action = "reel";
_global.MakeNoise("GraySnap");
}
} else if (bowing) {
if (framesExisted < 11) {
speed = 4;
gotoSpotX = daddyGray._x;
gotoSpotY = daddyGray._y;
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
moveRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_y = (_y - (speed * Math.cos(moveRotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveRotation * (Math.PI/180))));
position = "leftout";
x = 0;
while (x < tendrilBits) {
dirRotation = moveRotation;
BitName = eval ((("_root." + daddyGray._name) + "Bit") + x);
if (eval ((("_root." + daddyGray._name) + "Bit") + x) == undefined) {
tendrilBits--;
} else {
with (BitName) {
switch (position) {
case "leftout" :
_rotation = _rotation - 4.5;
position = "leftfull";
break;
case "leftfull" :
dirRotation = dirRotation - 20;
position = "leftin";
break;
case "leftin" :
dirRotation = dirRotation - 20;
_rotation = _rotation + 4.5;
position = "leftbridge";
break;
case "leftbridge" :
_rotation = _rotation + 0;
position = "rightout";
speed = speed - 0.5;
break;
case "rightout" :
_rotation = _rotation + 4.5;
position = "rightfull";
break;
case "rightfull" :
dirRotation = dirRotation + 20;
position = "rightin";
break;
case "rightin" :
dirRotation = dirRotation + 20;
_rotation = _rotation - 4.5;
position = "rightbridge";
break;
case "rightbridge" :
_rotation = _rotation - 0;
position = "leftout";
speed = speed - 0.5;
}
_y = _y - (speed * Math.cos(dirRotation * (Math.PI/180)));
_x = _x + (speed * Math.sin(dirRotation * (Math.PI/180)));
}
if (daddyGray.hitTest(BitName._x, BitName._y, true)) {
BitName.removeMovieClip();
tendrilBits--;
}
}
x++;
}
} else {
bowing = false;
reeling = true;
_global.MakeNoise("GrayRetract");
}
} else if (reeling == true) {
speed = 4;
nextBit = eval (("_root." + daddyGray._name) + "Bit1");
if (nextBit == undefined) {
gotoSpotX = daddyGray._x;
gotoSpotY = daddyGray._y;
} else {
gotoSpotX = nextBit._x;
gotoSpotY = nextBit._y;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
moveRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_y = (_y - (speed * Math.cos(moveRotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveRotation * (Math.PI/180))));
_rotation = (moveRotation - 180);
x = 0;
while (x < tendrilBits) {
dirRotation = moveRotation;
BitName = eval ((("_root." + daddyGray._name) + "Bit") + x);
if (eval ((("_root." + daddyGray._name) + "Bit") + x) == undefined) {
tendrilBits--;
} else {
with (BitName) {
nextBit = eval ((("_root." + daddyGray._name) + "Bit") + (x + 1));
if (nextBit == undefined) {
gotoSpotX = daddyGray._x;
gotoSpotY = daddyGray._y;
} else {
gotoSpotX = nextBit._x;
gotoSpotY = nextBit._y;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
moveRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_y = _y - (speed * Math.cos(moveRotation * (Math.PI/180)));
_x = _x + (speed * Math.sin(moveRotation * (Math.PI/180)));
_rotation = moveRotation - 180;
}
if (daddyGray.hitTest(BitName._x, BitName._y, true)) {
BitName.removeMovieClip();
tendrilBits--;
}
}
x++;
}
if (daddyGray.hitTest(_x, _y, true)) {
x = 0;
while (x < 15) {
BitName = (("_root." + daddyGray._name) + "Bit") + x;
if (eval (BitName) != undefined) {
removeMovieClip(eval (BitName));
}
x++;
}
if (heroSpeared != null) {
removeMovieClip(heroSpeared);
_global.MakeNoise("Glom");
duplicateMovieClip (_root.HeroSpearAbsorbed, daddyGray._name + "Hero", _global.effectDepth++);
with (eval (("_root." + daddyGray._name) + "Hero")) {
_x = daddyGray._x;
_y = daddyGray._y;
_rotation = daddyGray._rotation;
}
daddyGray._xscale = 120;
daddyGray._yscale = 120;
daddyGray._alpha = 75;
}
daddyGray.action = "none";
removeMovieClip(this);
}
}
if (lancing && (int(framesExisted / 2) == (framesExisted / 2))) {
BitName = (("_root." + daddyGray._name) + "Bit") + tendrilBits;
duplicateMovieClip (_root.GrayBit, (daddyGray._name + "Bit") + tendrilBits, _global.effectDepth++);
with (eval (BitName)) {
_x = buildAtX;
_y = buildAtY;
_rotation = this._rotation;
bitNumber = tendrilBits;
}
tendrilBits++;
}
framesExisted++;
if (_currentframe == 16) {
removeMovieClip(heroSpeared);
removeMovieClip(this);
}
if (heroSpeared != null) {
heroSpeared._x = this._x;
heroSpeared._y = this._y;
heroSpeared._rotation = this._rotation;
}
}
}
Instance of Symbol 1462 MovieClip "HeroSpear" in Frame 7
onClipEvent (load) {
if (_name == "HeroSpear") {
stop();
} else {
splats = 0;
daddyGray = eval ("_root." + _name.slice(0, _name.length - 9));
}
}
onClipEvent (enterFrame) {
if (_name != "HeroSpear") {
if (_currentframe == 2) {
x = 1;
while (x < 3) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , (this._rotation + int(Math.random() * 40)) - 20);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _xscale , 40);
setProperty(BloodName, _y , this._y);
setProperty(BloodName, _yscale , 40);
splats++;
x++;
}
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = this._rotation - 180;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + (splats++)));
BloodColor.setRGB(11800592);
}
if ((_currentframe == 11) && (daddyGray.action == "lance")) {
stop();
}
if ((_currentframe == 11) && (daddyGray.action == "reel")) {
play();
}
if (_currentframe == 21) {
stop();
}
}
}
Instance of Symbol 1494 MovieClip "HeroSpearAbsorbed" in Frame 7
onClipEvent (load) {
if (_name == "HeroSpearAbsorbed") {
stop();
} else {
hostObject = eval ("_root." + _name.slice(0, _name.length - 4));
}
}
onClipEvent (enterFrame) {
if (_name != "HeroSpearAbsorbed") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
}
}
Instance of Symbol 607 MovieClip "Torchie" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Torchie") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("burning", this.getBurning, this.setBurning);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("exploded", this.getExploded, this.setExploded);
killedBy = null;
exploded = false;
speed = 4;
turnSpeed = 2;
justBounced = 0;
burning = true;
littleFires = 0;
framesBurned = 0;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = 275;
gotoSpotY = 200;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
objectHitX = null;
objectHitY = null;
if ((((_x == -5) || (_x == 555)) || (_y == -5)) || (_y == 405)) {
duplicateMovieClip (_root.Flames, _name + "Flame", _global.capDepth++);
myFire = eval (("_root." + _name) + "Flame");
stop();
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (exploded) {
removeMovieClip(this);
}
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (myFire) == undefined) {
burning = false;
framesBurned = 0;
play();
} else {
gotoAndStop (1);
burning = true;
if ((framesBurned > 120) && (int(Math.random() * 100) == 1)) {
duplicateMovieClip (_root.WhiteSmoke, _name + "WSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "WSmoke")) {
_x = this._x;
_y = this._y;
}
removeMovieClip(myFire);
}
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (burning) {
if (int(framesBurned / 8) == (framesBurned / 8)) {
FireName = (("_root." + this._name) + "Fire") + littleFires;
duplicateMovieClip (_root.SmallFire, (this._name + "Fire") + littleFires, _global.effectDepth++);
setProperty(FireName, _x , this._x);
setProperty(FireName, _y , this._y);
littleFires++;
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
if (burning) {
exploded = true;
_global.MakeNoise("Explode");
if (eval (("_root." + _name) + "Shockwave") != undefined) {
removeMovieClip(_root.fakeBackdrop);
removeMovieClip(eval (("_root." + _name) + "Shockwave"));
}
duplicateMovieClip (_root.VoidPulse, _name + "Shockwave", _global.effectDepth++);
with (eval (("_root." + _name) + "Shockwave")) {
_x = this._x;
_y = this._y;
}
duplicateMovieClip (_root.Blastmark, this._name + "Blastmark", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Blastmark")) {
_x = this._x;
_y = this._y;
}
duplicateMovieClip (_root.Blackout, this._name + "Bright", 6000);
with (eval (("_root." + this._name) + "Bright")) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
}
BlinkColor = new Color(eval (("_root." + this._name) + "Bright"));
BlinkColor.setRGB(16777215);
x = 1;
while (x < 5) {
FireName = (("_root." + this._name) + "Fire") + littleFires;
duplicateMovieClip (_root.SmallFire, (this._name + "Fire") + littleFires, _global.effectDepth++);
setProperty(FireName, _x , (this._x + int(Math.random() * 160)) - 80);
setProperty(FireName, _y , (this._y + int(Math.random() * 160)) - 80);
littleFires++;
x++;
}
ashpuffs = int(Math.random() * 3) + 2;
x = 0;
while (x < ashpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Ash") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Ash") + x)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
AshColor = new Color(eval ((("_root." + this._name) + "Ash") + x));
AshColor.setRGB(0);
x++;
}
FireName = ("_root." + this._name) + "BigFire";
duplicateMovieClip (_root.BigFire, this._name + "BigFire", _global.effectDepth++);
setProperty(FireName, _x , this._x);
setProperty(FireName, _y , this._y);
if ((eval (_root.HeroPointer) != undefined) && (_global.justHit == null)) {
_global.justHit = this;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
toTargetX = _x - hitTarget._x;
toTargetY = _y - hitTarget._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
hitTarget.killedBy = this;
} else {
hitTarget._y = hitTarget._y - (30 * Math.cos(targetDirection * (Math.PI/180)));
hitTarget._x = hitTarget._x + (30 * Math.sin(targetDirection * (Math.PI/180)));
hitTarget._rotation = targetDirection;
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 5) == "Razor") {
toTargetX = _x - targetHazard._x;
toTargetY = _y - targetHazard._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
targetHazard.killedBy = this;
}
}
x++;
}
} else {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(8207650);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 28;
if (SearchArray(EnemiesKilled, "Torchie") == null) {
EnemiesKilled.push("Torchie");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
}
if (killedBy != null) {
if (burning) {
exploded = true;
_global.MakeNoise("Explode");
duplicateMovieClip (_root.Blackout, this._name + "Bright", 6000);
with (eval (("_root." + this._name) + "Bright")) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
}
BlinkColor = new Color(eval (("_root." + this._name) + "Bright"));
BlinkColor.setRGB(16777215);
x = 1;
while (x < 5) {
FireName = (("_root." + this._name) + "Fire") + littleFires;
duplicateMovieClip (_root.SmallFire, (this._name + "Fire") + littleFires, _global.effectDepth++);
setProperty(FireName, _x , (this._x + int(Math.random() * 160)) - 80);
setProperty(FireName, _y , (this._y + int(Math.random() * 160)) - 80);
littleFires++;
x++;
}
duplicateMovieClip (_root.Blastmark, this._name + "Blastmark", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Blastmark")) {
_x = this._x;
_y = this._y;
}
ashpuffs = int(Math.random() * 3) + 2;
x = 0;
while (x < ashpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Ash") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Ash") + x)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
AshColor = new Color(eval ((("_root." + this._name) + "Ash") + x));
AshColor.setRGB(0);
x++;
}
FireName = ("_root." + this._name) + "BigFire";
duplicateMovieClip (_root.BigFire, this._name + "BigFire", _global.effectDepth++);
setProperty(FireName, _x , this._x);
setProperty(FireName, _y , this._y);
if ((eval (_root.HeroPointer) != undefined) && (_global.justHit == null)) {
_global.justHit = this;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
toTargetX = _x - hitTarget._x;
toTargetY = _y - hitTarget._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
hitTarget.killedBy = this;
} else {
hitTarget._y = hitTarget._y - (30 * Math.cos(targetDirection * (Math.PI/180)));
hitTarget._x = hitTarget._x + (30 * Math.sin(targetDirection * (Math.PI/180)));
hitTarget._rotation = targetDirection;
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 5) == "Razor") {
toTargetX = _x - targetHazard._x;
toTargetY = _y - targetHazard._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 250) {
targetHazard.killedBy = this;
}
}
x++;
}
} else {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(8207650);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
if (burning) {
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
if (burning) {
}
break;
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (burning) {
framesBurned++;
}
}
}
Instance of Symbol 1499 MovieClip "GloopleBurn" in Frame 7
onClipEvent (load) {
if (_name == "GloopleBurn") {
stop();
} else {
hostObject = eval ("_root." + _name.slice(0, _name.length - 11));
}
}
onClipEvent (enterFrame) {
if (_name != "GloopleBurn") {
_x = hostObject._x;
_y = hostObject._y;
if (_currentframe == 2) {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
if ((hostObject._name.slice(0, 5) == "Oozle") || (hostObject._name.slice(0, 4) == "Gray")) {
_xscale = 170;
_yscale = 170;
}
if (hostObject._name.slice(0, 7) == "Clutter") {
_xscale = hostObject._xscale;
_yscale = hostObject._yscale;
}
if (hostObject._name.slice(0, 7) == "Amalgam") {
_xscale = (hostObject._xscale + 70);
_yscale = (hostObject._yscale + 70);
}
hostObject.gotoAndStop(1);
hostObject.speed = 1;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hostObject._name), 1);
}
if (_currentframe == 41) {
removeMovieClip(hostObject);
duplicateMovieClip (_root.BlackSmoke, _name + "BSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "BSmoke")) {
_x = this._x;
_y = this._y;
}
}
if (_currentframe == 81) {
removeMovieClip(this);
}
}
}
Instance of Symbol 1501 MovieClip "Gib1" in Frame 7
onClipEvent (load) {
if (_name != "Gib1") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 20) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Gib1") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
framesAtSpeed++;
}
}
}
Instance of Symbol 1503 MovieClip "Gib2" in Frame 7
onClipEvent (load) {
if (_name != "Gib2") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 20) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Gib2") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
framesAtSpeed++;
}
}
}
Instance of Symbol 1505 MovieClip "Gib3" in Frame 7
onClipEvent (load) {
if (_name != "Gib3") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 20) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Gib3") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
framesAtSpeed++;
}
}
}
Instance of Symbol 493 MovieClip "Horror" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Horror") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("action", this.getAction, this.setAction);
speed = 1;
turnSpeed = 1;
justBounced = 0;
action = "none";
hookCount = 10;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
myWhine = new Sound(this);
myWhine.attachSound("HorrorAmb");
myWhine.start(0, 100);
if (SearchArray(EnemiesSeen, "Horror") == null) {
EnemiesSeen.push("Horror");
}
}
}
onClipEvent (unload) {
myWhine.stop();
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
if (action == "collect") {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
_global.MakeNoise("HorrorKill");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 50;
if (SearchArray(EnemiesKilled, "Horror") == null) {
EnemiesKilled.push("Horror");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, false)) {
_global.justHit = this;
} else if (justBounced == 0) {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, false)) {
if (((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
hitTarget.killedBy = this;
}
}
x++;
}
} else if (justBounced == 8) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
justBounced--;
} else {
justBounced--;
}
if (killedBy != null) {
if (action != "collect") {
if ((killedBy._name.slice(0, 7) == "Grinder") || (killedBy.claw)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
killedBy = null;
}
} else {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (((action == "collect") && (speed == 0)) && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 100)) {
if ((((_y > 10) && (_y < 390)) && (_x > 10)) && (_x < 540)) {
_y = (_y - (2 * Math.cos((_rotation + 180) * (Math.PI/180))));
_x = (_x + (2 * Math.sin((_rotation + 180) * (Math.PI/180))));
}
}
if ((((action == "none") && (eval (_root.HeroPointer) != undefined)) && (_currentframe < 71)) && (_currentframe > 40)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 70) {
if (int(Math.random() * 100) == 1) {
gotoAndPlay (102);
_global.MakeNoise("HorrorHooks");
}
}
}
if ((((action == "none") && (eval (_root.HeroPointer) != undefined)) && (_currentframe < 71)) && (_currentframe > 40)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 150) {
if (int(Math.random() * 100) == 1) {
gotoAndPlay (72);
_global.MakeNoise("HorrorSplit");
myWhine.stop();
myWhine.attachSound("HorrorDisk");
myWhine.start(0, 100);
}
}
}
if ((_currentframe == 21) || (_currentframe == 72)) {
speed = 2;
turnSpeed = 2;
} else if (_currentframe == 31) {
speed = 3;
turnSpeed = 3;
}
if (_currentframe == 76) {
speed = 1;
turnSpeed = 1;
h = 1;
while (h < 5) {
duplicateMovieClip (_root.HorrorDisk, (_name + "Disk") + h, _global.baddieDepth++);
myDisk = eval ((("_root." + _name) + "Disk") + h);
diskRotation = (_rotation + ((h - 1) * 90)) + 45;
with (myDisk) {
_y = this._y - (20 * Math.cos(hookRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(hookRotation * (Math.PI/180)));
_rotation = diskRotation;
}
h++;
}
action = "collect";
}
if (_currentframe == 91) {
speed = 0;
disksBack = 0;
stop();
h = 1;
while (h < 5) {
myDisk = eval ((("_root." + _name) + "Disk") + h);
toDiskX = _x - myDisk._x;
toDiskY = _y - myDisk._y;
if (Math.sqrt((toDiskX * toDiskX) + (toDiskY * toDiskY)) <= 15) {
disksBack++;
}
h++;
}
if (disksBack == 4) {
speed = 1;
action = "none";
play();
removeMovieClip(eval (("_root." + _name) + "Disk1"));
removeMovieClip(eval (("_root." + _name) + "Disk2"));
removeMovieClip(eval (("_root." + _name) + "Disk3"));
removeMovieClip(eval (("_root." + _name) + "Disk4"));
}
}
if (_currentframe == 101) {
gotoAndPlay (1);
myWhine.stop();
myWhine.attachSound("HorrorAmb");
myWhine.start(0, 100);
}
if (_currentframe == 102) {
h = 1;
while (h < 9) {
duplicateMovieClip (_root.HorrorHook, (_name + "Hook") + hookCount, _global.capDepth++);
myHook = eval ((("_root." + _name) + "Hook") + hookCount);
hookRotation = _rotation + ((h - 1) * 45);
with (myHook) {
_y = this._y - (30 * Math.cos(hookRotation * (Math.PI/180)));
_x = this._x + (30 * Math.sin(hookRotation * (Math.PI/180)));
_rotation = hookRotation;
}
hookCount++;
if (hookCount > 99) {
hookCount = 10;
}
h++;
}
}
if ((_currentframe == 71) || (_currentframe == 131)) {
action = "none";
speed = 3;
turnSpeed = 3;
gotoAndPlay (41);
}
}
}
Instance of Symbol 1511 MovieClip "HorrorDisk" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "HorrorDisk") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("disk", this.getDisk, null);
disk = true;
killedBy = null;
wayBack = false;
speed = 8;
turnSpeed = 6;
speedBoost = 0;
beenDead = 0;
daddyHorror = eval ("_root." + _name.slice(0, _name.length - 5));
gotoAndStop (1);
moveDirection = _rotation;
justStruck = 0;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = (_root.HeroPointer._x + int(Math.random() * 80)) - 40;
gotoSpotY = (_root.HeroPointer._y + int(Math.random() * 80)) - 40;
} else {
gotoSpotX = 275;
gotoSpotY = 200;
}
framesExisted = 0;
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (!stuck)) {
if (beenDead == 0) {
_rotation = (_rotation + 30);
if (framesExisted > 120) {
wayBack = true;
turnSpeed = 30;
}
}
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (justStruck > 0) {
justStruck--;
}
if (wayBack) {
gotoSpotX = daddyHorror._x;
gotoSpotY = daddyHorror._y;
}
if ((eval (daddyHorror) == undefined) || (beenDead > 0)) {
if (beenDead == 0) {
play();
speed = 0;
turnSpeed = 0;
speedBoost = 0;
} else if (beenDead < 150) {
if (_currentframe == 31) {
stop();
}
} else if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
beenDead++;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
if ((justStruck == 0) && (beenDead == 0)) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
moveDirection = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
speedBoost = 3;
justStruck = 20;
}
}
}
}
if (beenDead == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != daddyHorror._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, false)) {
if (((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) || (hitTarget._name.slice(0, 5) == "Queen")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
moveDirection = moveDirection - 180;
speedBoost = 3;
justStruck = 5;
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
if (moveDirection != targetRotation) {
if ((moveDirection >= 0) && (targetRotation >= 0)) {
if (moveDirection > targetRotation) {
if ((moveDirection - targetRotation) > turnSpeed) {
moveDirection = moveDirection - turnSpeed;
} else {
moveDirection = targetRotation;
}
} else if ((targetRotation - moveDirection) > turnSpeed) {
moveDirection = moveDirection + turnSpeed;
} else {
moveDirection = targetRotation;
}
} else if ((moveDirection < 0) && (targetRotation < 0)) {
if (moveDirection > targetRotation) {
if ((moveDirection - targetRotation) > turnSpeed) {
moveDirection = moveDirection - turnSpeed;
} else {
moveDirection = targetRotation;
}
} else if ((targetRotation - moveDirection) > turnSpeed) {
moveDirection = moveDirection + turnSpeed;
} else {
moveDirection = targetRotation;
}
} else if (moveDirection > targetRotation) {
if (moveDirection < (targetRotation + 180)) {
moveDirection = moveDirection - turnSpeed;
} else {
moveDirection = moveDirection + turnSpeed;
}
} else if (moveDirection > (targetRotation - 180)) {
moveDirection = moveDirection + turnSpeed;
} else {
moveDirection = moveDirection - turnSpeed;
}
}
if (beenDead == 0) {
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 30) {
if (!wayBack) {
gotoSpotX = daddyHorror._x;
gotoSpotY = daddyHorror._y;
wayBack = true;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 15) {
speed = 0.5;
} else {
speed = 8;
}
} else {
speed = 8;
}
}
framesExisted++;
}
}
Instance of Symbol 1514 MovieClip "HorrorHook" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "HorrorHook") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("hook", this.getHook, null);
hook = true;
killedBy = null;
framesLoose = 0;
speed = 10;
moveDirection = _rotation;
daddyHorror = eval ("_root." + _name.slice(0, _name.length - 6));
gotoAndStop (1);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (framesLoose < 30) {
_rotation = (_rotation + 30);
}
if (framesLoose > 0) {
if (framesLoose < 30) {
speed = 3;
} else if (framesLoose < 90) {
speed = 0;
} else {
removeMovieClip(this);
}
framesLoose++;
}
if ((_global.HeroAction == "attacking") && (framesLoose == 0)) {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatDir = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , SplatDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("LilSplat");
moveDirection = SplatDir;
gotoAndStop (2);
framesLoose++;
}
}
}
if (framesLoose == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != daddyHorror._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, false)) {
Hit = hitTarget._name.slice(0, 4);
if (((((((((Hit == "Bite") || ((Hit == "Shar") && (hitTarget.spines))) || (Hit == "Grin")) || (Hit == "Oozl")) || (Hit == "Gray")) || (Hit == "Void")) || (Hit == "Horr")) || (Hit == "Quee")) || ((Hit == "Amal") && (hitTarget._xscale > 70))) {
SplatDir = _rotation - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , SplatDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("LilSplat");
moveDirection = SplatDir;
gotoAndStop (2);
framesLoose++;
} else {
hitTarget.gotoAndStop(1);
duplicateMovieClip (_root.BiterMorph, hitTarget._name + "Morph", _global.capDepth++);
removeMovieClip(this);
}
}
}
x++;
}
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
} else {
_visible = false;
this.removeMovieClip();
}
}
}
Instance of Symbol 1519 MovieClip "BiterMorph" in Frame 7
onClipEvent (load) {
if (_name == "BiterMorph") {
stop();
} else {
hostObject = eval ("_root." + _name.slice(0, _name.length - 5));
}
}
onClipEvent (enterFrame) {
if (_name != "BiterMorph") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
if (_currentframe == 31) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hostObject._name), 1);
removeMovieClip(hostObject);
duplicateMovieClip (_root.Biter, "Biter" + _root.SpawnPoint.ChildCounter, _global.baddieDepth++);
with (eval ("_root.Biter" + _root.SpawnPoint.ChildCounter)) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.push("Biter" + _root.SpawnPoint.ChildCounter);
_root.SpawnPoint.ChildCounter++;
removeMovieClip(this);
}
}
}
Instance of Symbol 1529 MovieClip "HeroHooked" in Frame 7
onClipEvent (load) {
if (_name == "HeroHooked") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroHooked") {
if (_currentframe == 15) {
stop();
} else {
_y = (_y - (3 * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (3 * Math.sin(_rotation * (Math.PI/180))));
}
}
}
Instance of Symbol 1538 MovieClip "HeroBisect" in Frame 7
onClipEvent (load) {
if (_name == "HeroBisect") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroBisect") {
if (_currentframe == 15) {
stop();
}
}
}
Instance of Symbol 1546 MovieClip "HeroDecapitate" in Frame 7
onClipEvent (load) {
if (_name == "HeroDecapitate") {
stop();
splat = false;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroDecapitate") {
if (_currentframe == 15) {
stop();
if (!splat) {
BloodName = ("_root." + this._name) + "Blood";
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), this._name + "Blood", _global.effectDepth++);
setProperty(BloodName, _rotation , this._rotation);
setProperty(BloodName, _x , this._x + (10 * Math.sin(_rotation * (Math.PI/180))));
setProperty(BloodName, _xscale , 40);
setProperty(BloodName, _y , this._y - (10 * Math.cos(_rotation * (Math.PI/180))));
setProperty(BloodName, _yscale , 40);
splat = true;
}
} else {
_y = (_y - (3 * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (3 * Math.sin(_rotation * (Math.PI/180))));
}
}
}
Instance of Symbol 1551 MovieClip "HeroHead" in Frame 7
onClipEvent (load) {
if (_name != "HeroHead") {
flyRange = int(Math.random() * 10) + 5;
speed = 4;
framesAtSpeed = 0;
prints = 0;
} else {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroHead") {
if (speed != 0) {
if (_currentframe == 30) {
duplicateMovieClip (_root.BloodPrint, (_name + "print") + prints, _global.backgroundDepth++);
with (eval ((("_root." + _name) + "print") + prints)) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
gotoAndStop(6);
}
prints++;
}
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 0.5;
framesAtSpeed = 0;
}
framesAtSpeed++;
} else {
stop();
}
}
}
Instance of Symbol 1556 MovieClip "HeroTorso" in Frame 7
onClipEvent (load) {
if (_name == "HeroTorso") {
stop();
} else {
speed = int(Math.random() * 3) + 2;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroTorso") {
if (_currentframe == 15) {
stop();
if (speed > 0) {
BloodName = ("_root." + this._name) + "Blood";
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), this._name + "Blood", _global.effectDepth++);
setProperty(BloodName, _rotation , _rotation + 180);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _xscale , 40);
setProperty(BloodName, _y , this._y);
setProperty(BloodName, _yscale , 40);
speed = 0;
}
} else {
_y = (_y - (Speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (Speed * Math.sin(_rotation * (Math.PI/180))));
}
}
}
Instance of Symbol 278 MovieClip "Frostie" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Frostie") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
killedBy = null;
framesExisted = 0;
speed = 6;
turnSpeed = 4;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = 275;
gotoSpotY = 200;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
objectHitX = null;
objectHitY = null;
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (int(framesExisted / 3) == (framesExisted / 3)) {
FrostName = (("_root." + this._name) + "Frost") + littleFrosts;
duplicateMovieClip (_root.Frost, (this._name + "Frost") + littleFrosts, _global.effectDepth++);
setProperty(FrostName, _x , this._x);
setProperty(FrostName, _y , this._y);
littleFrosts++;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16777215);
duplicateMovieClip (_root.ColdBurst, this._name + "ColdBurst", _global.capDepth++);
with (eval (("_root." + _name) + "ColdBurst")) {
_x = this._x;
_y = this._y;
}
_global.MakeNoise("Splat");
_global.MakeNoise("FrostiePop");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 8;
if (SearchArray(EnemiesKilled, "Frostie") == null) {
EnemiesKilled.push("Frostie");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16777215);
duplicateMovieClip (_root.ColdBurst, this._name + "ColdBurst", _global.capDepth++);
with (eval (("_root." + _name) + "ColdBurst")) {
_x = this._x;
_y = this._y;
}
_global.MakeNoise("Splat");
_global.MakeNoise("FrostiePop");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
objectHitX = _root.HeroPointer._x;
objectHitY = _root.HeroPointer._y;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
objectHitX = hitTarget._x;
objectHitY = hitTarget._y;
break;
}
}
x++;
}
}
if (((eval (("_root." + _name) + "Flame") != undefined) || (eval (("_root." + _name) + "Morph") != undefined)) || (eval (("_root." + _name) + "GloopleMelt") != undefined)) {
objectHitY = _y - (5 * Math.cos(_rotation * (Math.PI/180)));
objectHitX = _x + (5 * Math.sin(_rotation * (Math.PI/180)));
}
if ((objectHitX != null) && (objectHitY != null)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (-Math.atan2(_x - objectHitX, _y - objectHitY)) / (Math.PI/180));
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16777215);
duplicateMovieClip (_root.ColdBurst, this._name + "ColdBurst", _global.capDepth++);
with (eval (("_root." + _name) + "ColdBurst")) {
_x = this._x;
_y = this._y;
}
_global.MakeNoise("Splat");
_global.MakeNoise("FrostiePop");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
framesExisted++;
}
}
Instance of Symbol 853 MovieClip [Frost] "Frost" in Frame 7
onClipEvent (load) {
if (_name != "Frost") {
framesExisted = 0;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "Frost") {
if (framesExisted < 30) {
this._xscale--;
this._yscale--;
} else if (framesExisted > 59) {
this._alpha = this._alpha - 10;
}
if (_alpha <= 0) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1558 MovieClip "ColdBurst" in Frame 7
onClipEvent (load) {
if (_name != "ColdBurst") {
framesExisted = 0;
littleFrosts = 0;
this._xscale = 1000;
this._yscale = 1000;
this._alpha = 50;
_global.Hazards.push(_name);
}
}
onClipEvent (enterFrame) {
if (_name != "ColdBurst") {
if (framesExisted < 6) {
this._xscale = this._xscale + 100;
this._yscale = this._yscale + 100;
if (framesExisted > 2) {
this._alpha = this._alpha - 20;
}
} else {
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
f = 1;
while (f < 6) {
setOutDir = int(Math.random() * 360) - 179;
setOutDist = int(Math.random() * 100) + 1;
FrostName = (("_root." + this._name) + "Frost") + littleFrosts;
duplicateMovieClip (_root.Frost, (this._name + "Frost") + littleFrosts, _global.effectDepth++);
setProperty(FrostName, _x , this._x + (setOutDist * Math.sin(setOutDir * (Math.PI/180))));
setProperty(FrostName, _y , this._y - (setOutDist * Math.cos(setOutDir * (Math.PI/180))));
littleFrosts++;
f++;
}
if (framesExisted == 2) {
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
if (_root.HeroPointerGoo == undefined) {
_global.HeroAction = "frozen";
toHero_x = _x - _root.HeroPointer._x;
toHero_y = _y - _root.HeroPointer._y;
heroDist = Math.sqrt((toHero_x * toHero_x) + (toHero_y * toHero_y));
_root.HeroPointer.frozenFrames = 120 - heroDist;
}
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 4) == "Void") {
} else if (_global.Enemies[x].slice(0, 7) == "Frostie") {
} else if (_global.Enemies[x].slice(0, 7) == "Grinder") {
} else if (_global.Enemies[x].slice(0, 5) == "Queen") {
} else if (_global.Enemies[x].slice(0, 5) == "Razor") {
} else if (eval (("_root." + _global.Enemies[x]) + "Goo") != undefined) {
} else {
targetEnemy = eval ("_root." + _global.Enemies[x]);
if ((targetEnemy._name.slice(0, 7) == "Torchie") && targetEnemy.burning) {
} else if (hitTest(targetEnemy._x, targetEnemy._y, true)) {
if (targetEnemy._name.slice(targetEnemy._name.length - 6) != "Frozen") {
duplicateMovieClip (_root.Frozen, targetEnemy._name + "Frozen", _global.effectDepth++);
with (eval (("_root." + targetEnemy._name) + "Frozen")) {
_x = targetEnemy._x;
_y = targetEnemy._y;
_rotation = targetEnemy._rotation;
if (((targetEnemy._name.slice(0, 5) == "Oozle") || (targetEnemy._name.slice(0, 4) == "Gray")) || (targetEnemy._name.slice(0, 6) == "Horror")) {
_xscale = 170;
_yscale = 170;
} else if (targetEnemy._name.slice(0, 7) == "Clutter") {
_xscale = targetEnemy._xscale;
_yscale = targetEnemy._yscale;
} else if (targetEnemy._name.slice(0, 7) == "Amalgam") {
_xscale = targetEnemy._xscale + 70;
_xscale = targetEnemy._yscale + 70;
}
}
}
}
}
x++;
}
}
framesExisted++;
}
}
Instance of Symbol 1561 MovieClip "Frozen" in Frame 7
onClipEvent (load) {
if (_name == "Frozen") {
stop();
} else {
stop();
framesExisted = 0;
hostObject = eval ("_root." + _name.slice(0, _name.length - 6));
hostName = hostObject._name;
numDigs = 0;
brokeTo = null;
gimpedHorror = false;
if (hostName.slice(hostName.length - 4) != Number(hostName.slice(hostName.length - 4))) {
if (hostName.slice(hostName.length - 3) != Number(hostName.slice(hostName.length - 3))) {
if (hostName.slice(hostName.length - 2) != Number(hostName.slice(hostName.length - 2))) {
numDigs = 1;
} else {
numDigs = 2;
}
} else {
numDigs = 3;
}
} else {
numDigs = 4;
}
hostArch = "_root." + hostName.slice(0, hostName.length - numDigs);
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hostName), 1);
removeMovieClip(hostObject);
_global.Enemies.push(_name);
if (hostArch == "_root.Meltie") {
framesExisted = 60;
}
}
}
onClipEvent (enterFrame) {
if (_name != "Frozen") {
if (_currentframe == 1) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
brokeTo = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
}
}
}
if (killedBy != null) {
toKillX = killedBy._x - _x;
toKillY = killedBy._y - _y;
brokeTo = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
toKillX = _root.HeroPointer._x - _x;
toKillY = _root.HeroPointer._y - _y;
brokeTo = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
toKillX = hitTarget._x - _x;
toKillY = hitTarget._y - _y;
brokeTo = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
}
}
x++;
}
}
if (broketo != null) {
iceNum = int(Math.random() * 6) + 8;
if (_xscale > 101) {
iceNum = iceNum + 5;
}
ice = 1;
while (ice < iceNum) {
IceName = (("_root." + this._name) + "Ice") + ice;
duplicateMovieClip (eval ("_root.Ice" + String(random(3) + 1)), (this._name + "Ice") + Ice, _global.effectDepth++);
setProperty(IceName, _rotation , (brokeTo + int(Math.random() * 100)) - 59);
setProperty(IceName, _x , this._x);
setProperty(IceName, _y , this._y);
ice++;
}
FrostName = ("_root." + this._name) + "Frost";
duplicateMovieClip (_root.Frost, this._name + "Frost", _global.effectDepth++);
setProperty(FrostName, _x , this._x);
setProperty(FrostName, _y , this._y);
_global.MakeNoise("Icebreak" + (int(Math.random() * 3) + 1));
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
removeMovieClip(this);
}
}
if (framesExisted > 120) {
play();
}
if (_currentframe == 10) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
duplicateMovieClip (eval (hostArch), hostName, _global.baddieDepth++);
hostObject = eval ("_root." + hostName);
hostObject._x = this._x;
hostObject._y = this._y;
hostObject._rotation = this._rotation;
if (hostArch == "_root.Clutter") {
hostObject._xscale = this._xscale;
hostObject._yscale = this._yscale;
}
_global.Enemies.push(hostName);
_global.Hazards.push(_name.slice(2));
} else if (_currentframe == 31) {
stop();
if (framesExisted > 200) {
_alpha = (_alpha - 5);
}
}
if (_alpha <= 0) {
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name.slice(2)), 1);
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1563 MovieClip "Ice1" in Frame 7
onClipEvent (load) {
if (_name != "Ice1") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 15) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Ice1") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed > 90) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
framesAtSpeed++;
}
}
Instance of Symbol 1565 MovieClip "Ice2" in Frame 7
onClipEvent (load) {
if (_name != "Ice2") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 15) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Ice2") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed > 90) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
framesAtSpeed++;
}
}
Instance of Symbol 1567 MovieClip "Ice3" in Frame 7
onClipEvent (load) {
if (_name != "Ice3") {
flyRange = int(Math.random() * 6) + 1;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
rotateSpeed = int(Math.random() * 15) + 6;
}
}
onClipEvent (enterFrame) {
if (_name != "Ice3") {
if (speed != 0) {
_rotation = (_rotation + rotateSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed > 90) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
framesAtSpeed++;
}
}
Instance of Symbol 1570 MovieClip "SwordCold" in Frame 7
onClipEvent (load) {
if (_global.RazorGlaiveEquipped) {
gotoAndStop (2);
} else {
gotoAndStop (1);
}
}
Instance of Symbol 1573 MovieClip "HeroFrozen" in Frame 7
onClipEvent (load) {
if (_global.RazorGlaiveEquipped) {
gotoAndStop (2);
} else {
gotoAndStop (1);
}
}
Instance of Symbol 1575 MovieClip "FPSdisplay" in Frame 7
onClipEvent (load) {
FramesThisSecond = 0;
ThisSecond = 0;
LastSecond = 0;
_visible = false;
_root.createTextField("FPSText", _global.capDepth++, this._x, this._y, 20, 10);
myText = _root.FPSText;
}
onClipEvent (enterFrame) {
if (!_global.showFPS) {
myText._visible = false;
}
if (myText.autoSize != "right") {
myText.text = " ";
myText.type = "dynamic";
myText.autoSize = "right";
myText._alpha = 75;
myText.selectable = false;
myFormat = new TextFormat();
myFormat.font = "Arial";
myFormat.Color = 0;
myFormat.size = 18;
myFormat.bold = true;
myText.setTextFormat(myFormat);
myText.setNewTextFormat(myFormat);
}
FramesThisSecond++;
ThisSecond = getTimer();
if (ThisSecond >= ((LastSecond * 1000) + 1000)) {
myText.text = String(FramesThisSecond);
myText.Color = 16777215 /* 0xFFFFFF */;
FramesThisSecond = 0;
LastSecond = Math.round(ThisSecond / 1000);
} else {
myText.Color = 0;
}
}
Instance of Symbol 235 MovieClip "Amalgam" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Amalgam") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("burnProtection", this.getBurnProtection, this.setBurnProtection);
recoil = 20;
stuffEaten = 0;
justBounced = 0;
burnProtection = 0;
speed = 3;
turnSpeed = 4;
Splitting = false;
if ((eval (_root.HeroPointer) != undefined) && (_xscale > 70)) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = int(Math.random() * 490) + 26;
gotoSpotY = int(Math.random() * 340) + 26;
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if ((eval (_root.HeroPointer) != undefined) && (_xscale > 70)) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
speed = 3 + (0.1 * ((100 - _xscale) / 5));
turnSpeed = 4 + (0.2 * ((100 - _xscale) / 5));
if (turnSpeed < 1) {
turnSpeed = 1;
}
if (burnProtection > 0) {
burnProtection--;
}
if (recoil > 0) {
recoil--;
speed = speed / 2;
turnSpeed = turnSpeed / 2;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (recoil == 0)) {
recoil = 20;
_xscale = (_xscale - 10);
_yscale = (_yscale - 10);
if (_global.RazorGlaiveEquipped) {
_xscale = (_xscale - 10);
_yscale = (_yscale - 10);
}
SplatNum = "Splat" + String(random(20));
SplatName = ("_root." + this._name) + SplatNum;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + SplatNum, _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(11589714);
_global.MakeNoise("Slice");
if (_xscale == 70) {
gotoSpotX = int(Math.random() * 490) + 26;
gotoSpotY = int(Math.random() * 340) + 26;
}
if (_xscale < 50) {
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 30;
if (SearchArray(EnemiesKilled, "Amalgam") == null) {
EnemiesKilled.push("Amalgam");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else if (_xscale >= 70) {
if ((int(Math.random() * 2) + 1) == 1) {
SpitDir = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
KidName = "Amalgam" + String(_root.SpawnPoint.ChildCounter++);
duplicateMovieClip (_root.Amalgam, KidName, _global.baddieDepth++);
with (eval ("_root." + KidName)) {
_x = this._x + ((_xscale - 50) * Math.sin(SpitDir * (Math.PI/180)));
_y = this._y - ((_xscale - 50) * Math.cos(SpitDir * (Math.PI/180)));
_xscale = 50;
_yscale = 50;
_rotation = SpitDir;
}
_global.Enemies.push(KidName);
}
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
if (_xscale > 70) {
_global.justHit = this;
} else if (justBounced == 0) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
TouchWhat = hitTarget._name.slice(0, 4);
if (((((TouchWhat == "Quee") || (TouchWhat == "Grin")) || (TouchWhat == "Void")) || (TouchWhat == "Horr")) || (((TouchWhat == "Amal") && (hitTarget._xscale > 90)) && (_xscale > 90))) {
if (justBounced == 0) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
}
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
duplicateMovieClip (_root.Absorbing, "Yum" + String(stuffEaten), _global.effectDepth++);
Slurp = eval ("_root.Yum" + String(stuffEaten++));
with (Slurp) {
_x = hitTarget._x;
_y = hitTarget._y;
_rotation = (-Math.atan2(this._x - hitTarget._x, this._y - hitTarget._y)) / (Math.PI/180);
}
if ((TouchWhat == "Gray") || (TouchWhat == "Oozl")) {
with (Slurp) {
_xscale = 170;
_yscale = 170;
}
}
_global.MakeNoise("Glom");
_xscale = (_xscale + 10);
_yscale = (_yscale + 10);
if (((TouchWhat == "Gray") || (TouchWhat == "Oozl")) || ((TouchWhat == "Amal") && (hitTarget._xscale > 70))) {
_xscale = (_xscale + 20);
_yscale = (_yscale + 20);
}
removeMovieClip(hitTarget);
}
}
}
x++;
}
}
if (killedBy != null) {
killName = killedBy._name.slice(0, 4);
if (((((killName == "Horr") || (killedBy.exploded)) || (killedBy.claw)) || (killName == "Grin")) || (killName == "Razo")) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
if (_xscale > 70) {
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(11589714);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
} else {
SplatNum = "Splat" + String(random(20));
SplatName = ("_root." + this._name) + SplatNum;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + SplatNum, _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(11589714);
_global.MakeNoise("Splat");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
if ((justBounced != 0) && (bouncedOffX != null)) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
bouncedOffX = null;
} else if (justBounced > 0) {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 490) + 26;
gotoSpotY = int(Math.random() * 340) + 26;
}
if (_currentframe == 61) {
if ((_xscale > 130) && ((int(Math.random() * 5) + 1) == 1)) {
Splitting = true;
} else {
gotoAndPlay (1);
}
}
if (_currentframe == 81) {
SplatNum = "Splat" + String(random(20));
SplatName = ("_root." + this._name) + SplatNum;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + SplatNum, _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(11589714);
_global.MakeNoise("Splat");
SpitDir = _rotation + 90;
newSize = _xscale * 0.8;
newSize = int(newSize / 5) * 5;
KidName = "Amalgam" + String(_root.SpawnPoint.ChildCounter++);
duplicateMovieClip (_root.Amalgam, KidName, _global.baddieDepth++);
with (eval ("_root." + KidName)) {
_x = this._x + ((newSize / 2) * Math.sin(SpitDir * (Math.PI/180)));
_y = this._y - ((newSize / 2) * Math.cos(SpitDir * (Math.PI/180)));
_xscale = newSize;
_yscale = newSize;
_rotation = SpitDir;
}
_global.Enemies.push(KidName);
_rotation = (_rotation - 90);
_xscale = newSize;
_yscale = newSize;
_x = (_x + ((oldSize / 2) * Math.sin(_rotation * (Math.PI/180))));
_y = (_y - ((oldSize / 2) * Math.cos(_rotation * (Math.PI/180))));
Splitting = false;
gotoAndPlay (1);
}
}
}
Instance of Symbol 1578 MovieClip "Absorbing" in Frame 7
onClipEvent (load) {
if (_name == "Absorbing") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "Absorbing") {
if (_currentframe == 16) {
removeMovieClip(this);
}
}
}
Instance of Symbol 1592 MovieClip "QueenLarva" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "QueenLarva") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
killedBy = null;
nearTarget = 0;
speed = 1;
turnSpeed = 2;
_rotation = (int(Math.random() * 360) - 179);
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 6));
gotoSpotX = 275;
gotoSpotY = 200;
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (int(Math.random() * 200) == 1) {
_global.MakeNoise("LarvaSpawn");
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
_global.MakeNoise("LarvaCrunch");
mommyQueen.larva--;
this.removeMovieClip();
}
}
}
nearTarget = 1000;
if (_root.HeroPointer.hitTest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
_global.MakeNoise("LarvaCrunch");
mommyQueen.larva--;
this.removeMovieClip();
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
Targ = hitTarget._name.slice(0, 4);
if (hitTarget.hitTest(_x, _y, false)) {
if (((((((Targ == "Grin") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (Targ == "Horr")) || (Targ == "Quee")) || (Targ == "Razo")) || (Targ == "Void")) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
_global.MakeNoise("LarvaCrunch");
mommyQueen.larva--;
this.removeMovieClip();
} else if (eval (("_root." + hitTarget._name) + "Seed") == undefined) {
duplicateMovieClip (_root.QueenSeed, hitTarget._name + "Seed", _global.effectDepth++);
seedName = eval (("_root." + hitTarget._name) + "Seed");
seedName.mommyQueen = mommyQueen;
hitTarget._alpha = 70;
mommyQueen.larva--;
this.removeMovieClip();
}
} else if (((((Targ != "Grin") && (Targ != "Horr")) && (Targ != "Gray")) && (Targ != "Razo")) && (Targ != "Void")) {
deltaX = _x - hitTarget._x;
deltaY = _y - hitTarget._y;
toGloople = Math.sqrt((deltaX * deltaX) + (deltaY * deltaY));
if (toGloople < nearTarget) {
gotoSpotX = hitTarget._x;
gotoSpotY = hitTarget._y;
nearTarget = toGloople;
}
}
}
x++;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
mommyQueen.larva--;
this.removeMovieClip();
}
}
}
Instance of Symbol 1594 MovieClip "GameControl" in Frame 7
onClipEvent (load) {
deadFor = null;
GlooplesInGame = 0;
_global.BossOnDeck = false;
frameInterval = interval * 30;
UserClicked = false;
SwordUnlockStatus = 0;
if (_global.RazorGlaiveUnlocked) {
SwordUnlockStatus = 2;
}
if (_global.gameMode == "Single") {
_global.KillsLeft = _global.NestSize;
foundQueen = false;
_global.ClearTime = 0;
_root.attachMovie("Nest Counter", "NestCount", 6500);
with (_root.NestCount) {
_x = 135;
_y = 380;
}
}
if (_global.gameMode == "Practice") {
_root.attachMovie("To Exit Practice", "ExitSign", 6500);
with (_root.ExitSign) {
_x = 270;
_y = 380;
ExitBlink = true;
}
}
_global.playSong("juke");
}
onClipEvent (mouseDown) {
if (ClearTime > 160) {
UserClicked = true;
}
}
onClipEvent (enterFrame) {
if (_global.RazorGlaiveUnlocked && (SwordUnlockStatus == 0)) {
SwordUnlockStatus = 1;
}
switch (_global.gameMode) {
case "Bounty" :
if ((GameTime > (interval * GlooplesInGame)) && (GlooplesInGame < _global.EnemySet.length)) {
_global.activeEnemies.push(_global.EnemySet[GlooplesInGame]);
GlooplesInGame++;
}
if (GlooplesInGame > (_global.EnemySet.length / 2)) {
if (((int(framesElapsed / frameInterval) == (framesElapsed / frameInterval)) && (!_global.BossOnDeck)) && (int(Math.random() * 15) == 1)) {
_global.activeEnemies.push("Amalgam");
_global.BossOnDeck = true;
}
}
if (GlooplesInGame == _global.EnemySet.length) {
if (((int(framesElapsed / (frameInterval * 2)) == (framesElapsed / (frameInterval * 2))) && (!_global.BossOnDeck)) && (int(Math.random() * 5) == 1)) {
if ((_global.EnemiesSeen.length >= 17) && ((int(Math.random() * 100) + 1) <= 20)) {
_global.activeEnemies.push("RazorQueen");
} else {
_global.activeEnemies.push("Queen");
}
_global.BossOnDeck = true;
}
}
break;
case "Single" :
if ((GameTime > (30 * GlooplesInGame)) && (GlooplesInGame < _global.EnemySet.length)) {
_global.activeEnemies.push(_global.EnemySet[GlooplesInGame]);
GlooplesInGame++;
}
if (KillsLeft < (NestSize / 2)) {
if (((int(framesElapsed / frameInterval) == (framesElapsed / frameInterval)) && (!_global.BossOnDeck)) && (int(Math.random() * 15) == 1)) {
_global.activeEnemies.push("Amalgam");
_global.BossOnDeck = true;
}
}
if (KillsLeft <= (NestSize / 10)) {
if (((((framesElapsed / 30) == (GameTime + 1)) && (!foundQueen)) && (int(Math.random() * 400) < (interval / 10))) && (!_global.BossOnDeck)) {
if ((_global.EnemiesSeen.length >= 17) && ((int(Math.random() * 100) + 1) <= 35)) {
_global.activeEnemies.push("RazorQueen");
} else {
_global.activeEnemies.push("Queen");
}
_global.BossOnDeck = true;
foundQueen = true;
}
}
if ((KillsLeft == 0) && (_global.Enemies.length == 0)) {
if (ClearTime == 0) {
_root.attachMovie("Clear Message", "AllClear", 7001);
with (_root.AllClear) {
_x = 270;
_y = 180;
_alpha = 0;
}
_global.MakeNoise("Victory!");
} else if (ClearTime == 60) {
clearBonus = interval * 20;
_global.Score = _global.Score + clearBonus;
CP = String(random(300));
duplicateMovieClip (_root.Bounty, (_name + "Plus") + CP, _global.markDepth++);
setProperty((("_root." + _name) + "Plus") + CP, _x , _root.ScoreDisplay._x - 20);
setProperty((("_root." + _name) + "Plus") + CP, _y , _root.ScoreDisplay._y);
BountyObject = eval ((("_root." + _name) + "Plus") + CP);
BountyObject.bounty = "+" + String(clearBonus);
_root.attachMovie("Nest Clear Bonus", "BonusPoints", 7002);
with (_root.BonusPoints) {
_x = 270;
_y = 100;
}
_global.MakeNoise("Kaching");
} else if (ClearTime == 90) {
if (SwordUnlockStatus == 1) {
_root.attachMovie("New Weapon Unlocked!", "NewWeapon", 7004);
with (_root.NewWeapon) {
_x = 270;
_y = 50;
}
}
} else if (ClearTime == 130) {
if (_global.Score > _global.SingleNestHighScore) {
_global.SingleNestHighScore = _global.Score;
_root.attachMovie("New High Score!", "NewHigh", 7005);
with (_root.NewHigh) {
_x = 270;
_y = 280;
}
}
} else if (ClearTime == 160) {
_root.attachMovie("Click to Exit", "ClickExit", 7007);
with (_root.ClickExit) {
_x = 270;
_y = 380;
}
} else if (ClearTime > 160) {
if (UserClicked) {
_global.unbuildTo = "Menu";
}
if (ExitBlink) {
if (_root.ClickExit._alpha > 0) {
_root.ClickExit._alpha = _root.ClickExit._alpha - 2;
} else {
ExitBlink = false;
}
} else if (_root.ClickExit._alpha < 100) {
_root.ClickExit._alpha = _root.ClickExit._alpha + 2;
} else {
ExitBlink = true;
}
}
if (_root.AllClear._alpha < 100) {
_root.AllClear._alpha = _root.AllClear._alpha + 5;
_root.NestCount._alpha = _root.NestCount._alpha - 5;
}
_global.ClearTime++;
}
break;
case "Practice" :
if (!SetPracticeFoes) {
x = 1;
while (x <= _global.PracticeEnemies.length) {
_global.activeEnemies.push(_global.PracticeEnemies[x - 1]);
x++;
}
SetPracticeFoes = true;
_global.BossOnDeck = true;
} else if ((framesElapsed / 150) == int(framesElapsed / 150)) {
x = 1;
while (x <= _global.PracticeEnemies.length) {
switch (PracticeEnemies[x - 1]) {
case "RazorQueen" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 5) == "Razor") {
remake = false;
}
y++;
}
if (remake) {
_global.activeEnemies.push("RazorQueen");
}
break;
case "Queen" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 5) == "Queen") {
remake = false;
}
y++;
}
if (remake) {
if (!BossOnDeck) {
_global.activeEnemies.push("Queen");
_global.BossOnDeck = true;
}
}
break;
case "VoidEater" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 4) == "Void") {
remake = false;
}
y++;
}
if (remake) {
_global.activeEnemies.push("VoidEater");
}
break;
case "Amalgam" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 7) == "Amalgam") {
remake = false;
}
y++;
}
if (remake) {
_global.activeEnemies.push("Amalgam");
}
break;
case "Horror" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 6) == "Horror") {
remake = false;
}
y++;
}
if (remake) {
_global.activeEnemies.push("Horror");
}
break;
case "Gray" :
remake = true;
y = 0;
while (y < Enemies.length) {
if (Enemies[y].slice(0, 4) == "Gray") {
remake = false;
}
y++;
}
if (!remake) {
break;
}
_global.activeEnemies.push("Gray");
}
x++;
}
}
if (ExitBlink) {
if (_root.ExitSign._alpha > 0) {
_root.ExitSign._alpha = _root.ExitSign._alpha - 2;
} else {
ExitBlink = false;
}
} else if (_root.ExitSign._alpha < 100) {
_root.ExitSign._alpha = _root.ExitSign._alpha + 2;
} else {
ExitBlink = true;
}
}
if (HeroKilled) {
if (deadFor == null) {
deadFor = 100;
}
if ((deadFor == 100) && (_global.gameMode != "Practice")) {
RazorQueenisOut = false;
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 5) == "Razor") {
RazorQueenisOut = true;
}
x++;
}
if (RazorQueenisOut) {
if (_global.Rematch) {
_global.RematchesLeft--;
} else {
_global.RematchesLeft = 3;
}
} else {
_global.RematchesLeft = 0;
}
_global.Rematch = false;
}
if ((gameMode == "Single") && (deadFor == 40)) {
if (_global.Score > _global.SingleNestHighScore) {
_global.SingleNestHighScore = _global.Score;
_root.attachMovie("New High Score!", "NewHigh", 7005);
with (_root.NewHigh) {
_x = 270;
_y = 280;
}
}
}
if (((gameMode == "Single") && (deadFor == 70)) && (SwordUnlockStatus == 1)) {
_root.attachMovie("New Weapon Unlocked!", "NewWeapon", 7004);
with (_root.NewWeapon) {
_x = 270;
_y = 50;
}
}
if ((gameMode == "Bounty") && (deadFor == 40)) {
if (_global.Score > _global.BountyRunHighScore) {
_global.BountyRunHighScore = _global.Score;
_root.attachMovie("New High Score!", "NewHigh", 7005);
with (_root.NewHigh) {
_x = 270;
_y = 280;
}
}
}
if (((gameMode == "Bounty") && (deadFor == 70)) && (SwordUnlockStatus == 1)) {
_root.attachMovie("New Weapon Unlocked!", "NewWeapon", 7004);
with (_root.NewWeapon) {
_x = 270;
_y = 50;
}
}
if (deadFor > 0) {
deadFor--;
} else if (eval (_root.DeathPop) == undefined) {
_root.attachMovie("Death Popup", "DeathPop", 7001);
with (_root.DeathPop) {
_x = 270;
_y = 200;
}
}
}
if (_global.unbuildTo != null) {
x = 1;
while (x < 7100) {
_root.createEmptyMovieClip("Cleaner", x);
removeMovieClip(_root.Cleaner);
x++;
}
_global.Enemies.splice(0);
_global.Hazards.splice(0);
_global.activeEnemies.splice(0);
_global.GameTime = 0;
soundkill = new Sound();
soundkill.stop();
if (unbuildTo == "Menu") {
_global.unbuildTo = null;
_level0.gotoAndStop(5);
} else {
_global.unbuildTo = null;
_level0.prevFrame();
}
}
x = 0;
while (x < _global.Enemies.length) {
if (eval ("_root." + _global.Enemies[x]) == undefined) {
_global.Enemies.splice(x, 1);
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
if (eval ("_root." + _global.Hazards[x]) == undefined) {
_global.Hazards.splice(x, 1);
}
x++;
}
}
Instance of Symbol 1596 MovieClip "GroundPebble" in Frame 7
onClipEvent (load) {
if (_name != "GroundPebble") {
flyRange = int(Math.random() * 10) + 5;
speed = 4;
framesAtSpeed = 0;
moveDirection = _rotation;
myScale = int(Math.random() * 30) + 50;
_xscale = myScale;
_yscale = myScale;
}
}
onClipEvent (enterFrame) {
if (_name != "GroundPebble") {
if (speed == 4) {
}
if (speed != 0) {
if ((_rotation + 20) > 179) {
_rotation = (_rotation - 340);
} else {
_rotation = (_rotation + 20);
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 30) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 1598 MovieClip "GroundDust" in Frame 7
onClipEvent (load) {
if (_name != "GroundDust") {
framesExisted = 0;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "GroundDust") {
if (_alpha == 100) {
_alpha = 50;
}
if (framesExisted < 100) {
if ((framesExisted / 5) == int(framesExisted / 5)) {
this._xscale++;
this._yscale++;
}
this._x = this._x + 1;
this._y = this._y - 1;
if (framesExisted > 89) {
this._alpha = this._alpha - 5;
}
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1600 MovieClip "RazorQuill" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorQuill") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("quill", this.getQuill, null);
quill = true;
this.addProperty("claw", this.getClaw, null);
claw = true;
killedBy = null;
framesExisted = 0;
speed = 0;
Loose = false;
_yscale = 40;
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 7));
myAim = _rotation - mommyQueen._rotation;
if (myAim > 180) {
myAim = myAim - 360;
}
if (myAim < 180) {
myAim = myAim + 360;
}
if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
ColPtY = _y - (18 * Math.cos(_rotation * (Math.PI/180)));
ColPtX = _x + (18 * Math.sin(_rotation * (Math.PI/180)));
if (!Loose) {
_y = mommyQueen._y;
_x = mommyQueen._x;
_rotation = (mommyQueen._rotation + myAim);
if (framesExisted < 30) {
_yscale = (_yscale + 2);
} else if (framesExisted == 45) {
duplicateMovieClip (_root.QuillPop, _name + "Pop", _global.effectDepth++);
with (eval (("_root." + _name) + "Pop")) {
_x = ColPtX;
_y = ColPtY;
_rotation = this._rotation;
}
_global.MakeNoise("LilSplat");
Loose = true;
speed = 15;
_yscale = 100;
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(ColPtX, ColPtY, true)) {
if (Loose) {
pieces = int(Math.random() * 2) + 3;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + x)) {
_x = (ColPtX + int(Math.random() * 20)) - 10;
_y = (ColPtY + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation + 80);
setProperty(SparkName, _x , ColPtX);
setProperty(SparkName, _y , ColPtY);
_global.MakeNoise("Shatter");
this.removeMovieClip();
} else {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , ColPtX);
setProperty(SparkName, _y , ColPtY);
_global.MakeNoise("Clang");
_global.HeroAction = "bounceback";
}
}
}
}
if (_root.HeroPointer.hitTest(ColPtX, ColPtY, true)) {
if (Loose) {
_global.justHit = this;
duplicateMovieClip (_root.HeroQuilled, _name + "Hit", _global.heroDepth++);
myHit = eval (("_root." + _name) + "Hit");
with (myHit) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(ColPtX, ColPtY, true)) {
Hit = hitTarget._name.slice(0, 4);
if (((hitTarget.spines || (Hit == "Grin")) || ((Hit == "Gray") && (hitTarget.action == "gaurd"))) || ((Hit == "Horr") && (hitTarget.action != "collect"))) {
_rotation = (_rotation - 180);
pieces = int(Math.random() * 2) + 3;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + x)) {
_x = (ColPtX + int(Math.random() * 20)) - 10;
_y = (ColPtY + int(Math.random() * 20)) - 10;
_rotation = (this._rotation + int(Math.random() * 90)) - 45;
}
x++;
}
_global.MakeNoise("Shatter");
this.removeMovieClip();
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
_rotation = (_rotation - 180);
pieces = int(Math.random() * 2) + 3;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + x)) {
_x = (ColPtX + int(Math.random() * 20)) - 10;
_y = (ColPtY + int(Math.random() * 20)) - 10;
_rotation = (this._rotation + int(Math.random() * 90)) - 45;
}
x++;
}
targetHazard.Health--;
_global.MakeNoise("Shatter");
this.removeMovieClip();
}
}
x++;
}
}
if (Loose) {
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_visible = false;
this.removeMovieClip();
}
}
framesExisted++;
}
}
Instance of Symbol 1612 MovieClip "QuillPop" in Frame 7
onClipEvent (load) {
if (_name == "QuillPop") {
stop();
} else if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
}
onClipEvent (enterFrame) {
if (_currentframe == 12) {
removeMovieClip(this);
}
}
Instance of Symbol 1614 MovieClip "BoneChip1" in Frame 7
onClipEvent (load) {
if (_name != "BoneChip1") {
flyRange = int(Math.random() * 8) + 5;
speed = int(Math.random() * 3) + 3;
framesAtSpeed = 0;
moveDirection = _rotation;
if (int(Math.random() * 2) == 0) {
Clockwise = true;
}
if (int(Math.random() * 2) == 0) {
_xscale = -100;
}
}
}
onClipEvent (enterFrame) {
if (_name != "BoneChip1") {
if (speed != 0) {
if (Clockwise) {
_rotation = (_rotation + (speed * 15));
} else {
_rotation = (_rotation - (speed * 15));
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 90) {
_alpha = (_alpha - 5);
}
if (_alpha <= 0) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 1616 MovieClip "BoneChip2" in Frame 7
onClipEvent (load) {
if (_name != "BoneChip2") {
flyRange = int(Math.random() * 8) + 5;
speed = int(Math.random() * 3) + 3;
framesAtSpeed = 0;
moveDirection = _rotation;
if (int(Math.random() * 2) == 0) {
Clockwise = true;
}
if (int(Math.random() * 2) == 0) {
_xscale = -100;
}
}
}
onClipEvent (enterFrame) {
if (_name != "BoneChip2") {
if (speed != 0) {
if (Clockwise) {
_rotation = (_rotation + (speed * 15));
} else {
_rotation = (_rotation - (speed * 15));
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 90) {
_alpha = (_alpha - 5);
}
if (_alpha <= 0) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 1625 MovieClip "RazorMite" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
overheadObstruction = false;
if (_name == "RazorMite") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("mite", this.getMite, null);
mite = true;
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("inGround", this.getInGround, null);
killedBy = null;
inGround = false;
surfaceFrames = 0;
burrowFrames = 0;
_xscale = 70;
_yscale = 70;
impacts = 0;
swells = 0;
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 6));
mySound = new Sound(this);
mySound.attachSound("Grind");
}
onClipEvent (unload) {
mySound.stop();
}
onClipEvent (enterFrame) {
if (!mommy) {
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
overheadObstruction = false;
if (!inGround) {
speed = 10;
turnSpeed = 0;
if (surfaceFrames < 8) {
_xscale = (_xscale + 5);
_yscale = (_yscale + 5);
surfaceFrames++;
} else if (surfaceFrames < 16) {
_xscale = (_xscale - 5);
_yscale = (_yscale - 5);
surfaceFrames++;
} else {
_visible = false;
inGround = true;
surfaceFrames = 0;
impacts++;
duplicateMovieClip (_root.GroundHole, (this._name + "Hole") + impacts, _global.markDepth++);
with (eval ((("_root." + this._name) + "Hole") + impacts)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
Pebbles = int(Math.random() * 4) + 2;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, ((this._name + "Pebble") + x) + impacts, _global.effectDepth++);
with (eval (((("_root." + this._name) + "Pebble") + x) + impacts)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dustpuffs = int(Math.random() * 2) + 1;
x = 0;
while (x < Dustpuffs) {
duplicateMovieClip (_root.GroundDust, ((this._name + "Dust") + x) + impacts, _global.capDepth++);
with (eval (((("_root." + this._name) + "Dust") + x) + impacts)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3) + 3;
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, ((this._name + "Dirt") + x) + impacts, _global.effectDepth++);
with (eval (((("_root." + this._name) + "Dirt") + x) + impacts)) {
_x = (this._x + int(Math.random() * 10)) - 5;
_y = (this._y + int(Math.random() * 10)) - 5;
_rotation = (this._rotation + int(Math.random() * 180)) - 90;
}
x++;
}
speed = 4;
turnSpeed = 5;
_global.MakeNoise("SharpsIn");
_global.MakeNoise("GrinderHurt");
mySound.start(0, 100);
}
} else {
burrowFrames++;
}
if (inGround && (burrowFrames > 0)) {
if (int(burrowFrames / 7) == (burrowFrames / 7)) {
duplicateMovieClip (_root.GroundMound, (this._name + "Swell") + swells, _global.markDepth++);
with (eval ((("_root." + this._name) + "Swell") + swells)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
swells++;
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (!inGround)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 70);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 70);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
teeth = int(Math.random() * 3) + 1;
x = 1;
while (x <= teeth) {
duplicateMovieClip ("_root.ShedTooth", (this._name + "Tooth") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Tooth") + x)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
pieces = int(Math.random() * 2) + 2;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + x)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation + 80);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_global.MakeNoise("LilSplat");
mommyQueen.mites--;
this.removeMovieClip();
}
}
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (!inGround) {
_global.justHit = this;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
hitWhat = hitTarget._name.slice(0, 4);
if ((((hitWhat == "Grin") || ((hitWhat == "Horr") && (hitTarget.action == "none"))) || ((hitWhat == "Gray") && (hitTarget.action == "guard"))) || (hitTarget.spines)) {
if (!inGround) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
overheadObstruction = true;
} else if (!inGround) {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
if (!inGround) {
justBounced = 8;
targetHazard.Health--;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
overheadObstruction = true;
}
}
x++;
}
if (justBounced != 0) {
_global.MakeNoise("Clang");
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
with (eval (SparkName)) {
_rotation = this._rotation;
_x = this._x;
_y = this._y;
}
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 5) == "Razor") {
p = 10;
while (p < 30) {
ProjPathX = _x + (p * Math.sin(_rotation * (Math.PI/180)));
ProjPathY = _y - (p * Math.cos(_rotation * (Math.PI/180)));
if (targetHazard.hitTest(ProjPathX, ProjPathY, false)) {
overheadObstruction = true;
}
p = p + 10;
}
}
x++;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if ((_rotation != targetRotation) && (inGround)) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (inGround && (eval (_root.HeroPointer) != undefined)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 90) {
if ((Math.abs(_rotation - targetRotation) < 15) && (!overheadObstruction)) {
inGround = false;
_visible = true;
burrowFrames = 0;
impacts++;
duplicateMovieClip (_root.GroundHole, (this._name + "Hole") + impacts, _global.markDepth++);
with (eval ((("_root." + this._name) + "Hole") + impacts)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
Pebbles = int(Math.random() * 4) + 2;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, ((this._name + "Pebble") + x) + impacts, _global.effectDepth++);
with (eval (((("_root." + this._name) + "Pebble") + x) + impacts)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dustpuffs = int(Math.random() * 2) + 1;
x = 0;
while (x < Dustpuffs) {
duplicateMovieClip (_root.GroundDust, ((this._name + "Dust") + x) + impacts, _global.capDepth++);
with (eval (((("_root." + this._name) + "Dust") + x) + impacts)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3) + 3;
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, ((this._name + "Dirt") + x) + impacts, _global.effectDepth++);
with (eval (((("_root." + this._name) + "Dirt") + x) + impacts)) {
_x = (this._x + int(Math.random() * 10)) - 5;
_y = (this._y + int(Math.random() * 10)) - 5;
_rotation = (this._rotation + int(Math.random() * 180)) - 90;
}
x++;
}
mySound.stop();
_global.MakeNoise("GrinderHurt");
_global.MakeNoise("Mite Jump");
}
}
}
}
}
Instance of Symbol 1627 MovieClip "GroundMound" in Frame 7
onClipEvent (load) {
if (_name != "GroundMound") {
framesExisted = 0;
_alpha = 0;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "GroundMound") {
if (framesExisted < 80) {
if (_alpha < 100) {
_alpha = (_alpha + 25);
}
if (framesExisted < 10) {
_xscale = (_xscale + 2);
_yscale = (_yscale + 2);
} else if (framesExisted < 20) {
_xscale = (_xscale - 2);
_yscale = (_yscale - 2);
}
} else if (_alpha > 0) {
_alpha = (_alpha - 10);
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1629 MovieClip "GroundHole" in Frame 7
onClipEvent (load) {
if (_name != "GroundHole") {
framesExisted = 0;
_xscale = 50;
_yscale = 50;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "GroundHole") {
if (framesExisted < 120) {
if (framesExisted < 5) {
_xscale = (_xscale + 10);
_yscale = (_yscale + 10);
}
} else if (_xscale > 10) {
_xscale = (_xscale - 10);
_yscale = (_yscale - 10);
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1642 MovieClip "RazorMaw" in Frame 7
onClipEvent (load) {
if (_name == "RazorMaw") {
stop();
} else {
this.addProperty("task", this.getTask, this.setTask);
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 3));
started = false;
pause = 0;
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "RazorMaw") {
if (eval (mommyQueen) == undefined) {
removeMovieClip(this);
}
_rotation = mommyQueen._rotation;
_x = mommyQueen._x;
_y = mommyQueen._y;
ColPtY = _y - (20 * Math.cos(_rotation * (Math.PI/180)));
ColPtX = _x + (20 * Math.sin(_rotation * (Math.PI/180)));
switch (task) {
case "mite" :
if (!started) {
gotoAndPlay (1);
started = true;
} else if (_currentframe == 5) {
if (pause == 0) {
duplicateMovieClip (_root.RazorMite, (mommyQueen._name + "Mite") + mommyQueen.miteCounter, _global.capDepth++);
with (eval ((("_root." + mommyQueen._name) + "Mite") + mommyQueen.miteCounter)) {
_x = ColPtX;
_y = ColPtY;
_rotation = this._rotation;
}
mommyQueen.miteCounter++;
mommyQueen.mites++;
if (mommyQueen.miteCounter == 80) {
mommyQueen.miteCounter = 10;
}
duplicateMovieClip (_root.GroundDirt, this._name + "Spit", _global.effectDepth++);
with (eval (("_root." + this._name) + "Spit")) {
_x = ColPtX;
_y = ColPtY;
_rotation = this._rotation;
}
SpitColor = new Color(eval (("_root." + this._name) + "Spit"));
SpitColor.setRGB(3560301);
stop();
pause++;
} else if (pause > 10) {
play();
} else {
pause++;
}
} else if (_currentframe == 20) {
removeMovieClip(this);
}
case "hedgehog" :
if (!started) {
gotoAndPlay (1);
started = true;
} else if (_currentframe == 5) {
if (pause == 0) {
duplicateMovieClip (_root.RazorHedgehog, (mommyQueen._name + "Hog") + mommyQueen.hogs, _global.capDepth++);
with (eval ((("_root." + mommyQueen._name) + "Hog") + mommyQueen.hogs)) {
_x = ColPtX;
_y = ColPtY;
_rotation = this._rotation;
}
mommyQueen.hogs++;
duplicateMovieClip (_root.GroundDirt, this._name + "Spit", _global.effectDepth++);
with (eval (("_root." + this._name) + "Spit")) {
_x = ColPtX;
_y = ColPtY;
_rotation = this._rotation;
}
SpitColor = new Color(eval (("_root." + this._name) + "Spit"));
SpitColor.setRGB(3560301);
stop();
pause++;
} else if (pause > 15) {
play();
} else {
pause++;
}
} else {
if (_currentframe != 20) {
break;
}
removeMovieClip(this);
}
}
}
}
Instance of Symbol 1653 MovieClip "RazorHedgehog" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "RazorHedgehog") {
mommy = true;
stop();
} else {
this.addProperty("hedgehog", this.getHedgehog, null);
hedgehog = "Stun";
this.addProperty("claw", this.getClaw, null);
claw = true;
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("Health", this.getHealth, this.setHealth);
killedBy = null;
Planted = false;
flightFrames = 0;
Health = 5;
chips = 1;
speed = int(3 * (Math.sqrt(((_x - _root.HeroPointer._x) * (_x - _root.HeroPointer._x)) + ((_y - _root.HeroPointer._y) * (_y - _root.HeroPointer._y))) / 100));
speed = speed + ((int(Math.random() * 3) + 1) * 0.5);
gotoAndPlay(int(Math.random() * 10) + 1);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
claw = true;
if (Planted && (hedgehog != "Crush")) {
hedgehog = "Ground";
} else {
hedgehog = "Stun";
}
if (!Planted) {
if (flightFrames < 15) {
_xscale = (_xscale + 5);
_yscale = (_yscale + 5);
flightFrames++;
} else if (flightFrames < 30) {
_xscale = (_xscale - 5);
_yscale = (_yscale - 5);
flightFrames++;
} else {
Planted = true;
stop();
flightFrames = 0;
duplicateMovieClip (_root.GroundCrack, this._name + "Crack", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Crack")) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
gotoAndPlay(((int(Math.random() * 3) + 1) * 2) - 1);
}
Pebbles = int(Math.random() * 4) + 4;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, ((this._name + "Pebble") + x) + impacts, _global.effectDepth++);
with (eval (((("_root." + this._name) + "Pebble") + x) + impacts)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dustpuffs = int(Math.random() * 2) + 1;
x = 0;
while (x < Dustpuffs) {
duplicateMovieClip (_root.GroundDust, ((this._name + "Dust") + x) + impacts, _global.capDepth++);
with (eval (((("_root." + this._name) + "Dust") + x) + impacts)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3) + 3;
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Dirt") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Dirt") + x)) {
_x = (this._x + int(Math.random() * 10)) - 5;
_y = (this._y + int(Math.random() * 10)) - 5;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
speed = 0;
_global.MakeNoise("GrinderHurt");
_global.MakeNoise("Impact");
if (int(Math.random() * 2) == 1) {
_global.MakeNoise("Pebble");
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
hedgehog = "Crush";
_global.justHit = this;
} else if (Math.sqrt(((_x - _root.HeroPointer._x) * (_x - _root.HeroPointer._x)) + ((_y - _root.HeroPointer._y) * (_y - _root.HeroPointer._y))) < 40) {
claw = false;
_global.justHit = this;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, false)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
_global.Hazards.push(_name);
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (Planted)) {
if ((Health > 1) && (!_global.RazorGlaiveEquipped)) {
pieces = int(Math.random() * 3) + int((7 - Health) / 2);
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation - int(Math.random() * 140)) + 70;
}
x++;
}
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation + 80);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
Health--;
_global.HeroAction = "bounceback";
} else {
pieces = int(Math.random() * 3) + 4;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
pieces = int(Math.random() * 2) + 2;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
_xscale = 150;
_yscale = 150;
}
x++;
}
_global.MakeNoise("Shatter");
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
}
}
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (Planted && (hedgehog == "Ground")) {
_global.justHit = this;
duplicateMovieClip (_root.HeroPiked, _name + "Hit", _global.capDepth++);
myHit = eval (("_root." + _name) + "Hit");
with (myHit) {
_x = this._x;
_y = this._y;
_rotation = (-Math.atan2(_x - _root.HeroPointer._x, _y - _root.HeroPointer._y)) / (Math.PI/180);
}
}
} else if (Planted) {
x = 0;
while (x < _global.Enemies.length) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
Hit = hitTarget._name.slice(0, 4);
if (((Hit == "Grin") || ((Hit == "Horr") && (hitTarget.action != "collect"))) || (hitTarget.claw)) {
pieces = int(Math.random() * 3) + 4;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 360)) - 179;
}
x++;
}
pieces = int(Math.random() * 2) + 2;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 360)) - 179;
_xscale = 150;
_yscale = 150;
}
x++;
}
_global.MakeNoise("Shatter");
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
} else {
hitTarget.killedBy = this;
}
}
x++;
}
}
if ((killedBy != null) || (Health <= 0)) {
pieces = int(Math.random() * 3) + 4;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 360)) - 179;
}
x++;
}
pieces = int(Math.random() * 2) + 2;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + chips, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + (chips++))) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 360)) - 179;
_xscale = 150;
_yscale = 150;
}
x++;
}
_global.MakeNoise("Shatter");
_global.Hazards.splice(_root.SpawnPoint.SearchArray(_global.Hazards, _name), 1);
removeMovieClip(this);
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
removeMovieClip(this);
}
}
}
Instance of Symbol 1669 MovieClip "HeroQuilled" in Frame 7
onClipEvent (load) {
if (_name == "HeroQuilled") {
stop();
} else {
speed = 6;
splats = 0;
pauseFor = 6;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroQuilled") {
if (_currentframe == 2) {
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) - 200;
_x = this._x;
_xscale = 40;
_y = this._y;
_yscale = 40;
}
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = (this._rotation + int(Math.random() * 40)) - 200;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + (splats++)));
BloodColor.setRGB(11800592);
}
if (_currentframe < 20) {
if (_currentframe == 12) {
speed = 4;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
this.removeMovieClip();
}
if (_currentframe == 11) {
if (pauseFor > 0) {
stop();
pauseFor--;
} else {
play();
}
}
} else if (_currentframe == 20) {
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) - 20;
_x = this._x;
_y = this._y;
}
x = 1;
while (x < 3) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = (this._rotation + int(Math.random() * 80)) - 40;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + (splats++)));
BloodColor.setRGB(11800592);
x++;
}
} else if (_currentframe == 30) {
stop();
}
}
}
Instance of Symbol 1680 MovieClip "RazorLarva" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorLarva") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
killedBy = null;
huntHero = false;
speed = 1;
turnSpeed = 2;
spikeCounter = 0;
_rotation = (int(Math.random() * 360) - 179);
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 6));
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (eval (_root.HeroPointer) != undefined) {
if (Math.sqrt(Math.pow(_x - _root.HeroPointer._x, 2) + Math.pow(_y - _root.HeroPointer._y, 2)) < 150) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
huntHero = true;
} else if (huntHero) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
huntHero = false;
}
}
if (int(Math.random() * 100) == 1) {
_global.MakeNoise("Spiny Chirp");
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 80);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 80);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
pieces = int(Math.random() * 3) + 3;
x = 1;
while (x <= pieces) {
duplicateMovieClip (eval ("_root.BoneChip" + String(random(2) + 1)), (this._name + "Chip") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "Chip") + x)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation + 80);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_global.MakeNoise("LilSplat");
mommyQueen.larva--;
this.removeMovieClip();
}
}
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
Targ = hitTarget._name.slice(0, 4);
if (hitTarget.hitTest(_x, _y, false)) {
if (((((Targ == "Grin") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (Targ == "Horr")) || (Targ == "Quee")) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
_global.MakeNoise("LarvaCrunch");
mommyQueen.larva--;
this.removeMovieClip();
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
} else {
mommyQueen.larva--;
this.removeMovieClip();
}
if (huntHero && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 100)) {
if (_currentframe < 26) {
gotoAndPlay (26);
speed = 0;
turnSpeed = 0;
_global.MakeNoise("Spiny Pressure");
}
} else if (_currentframe == 25) {
gotoAndPlay (1);
}
if (_currentframe == 40) {
facing = 0;
while (facing < 4) {
Spikes = int(Math.random() * 3) + 3;
x = 0;
while (x <= Spikes) {
duplicateMovieClip (_root.RazorSpike, (this._name + "Spike") + spikeCounter, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spike") + spikeCounter)) {
_x = this._x;
_y = this._y;
_rotation = (int(Math.random() * 90) - 45) + (90 * facing);
}
spikeCounter++;
x++;
}
facing++;
}
SplatName = ("_root." + this._name) + "Pop";
duplicateMovieClip (_root.RazorLarvaPop, this._name + "Pop", _global.effectDepth++);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Spiny Pop");
mommyQueen.larva--;
this.removeMovieClip();
}
}
}
Instance of Symbol 1682 MovieClip [Razor Spike] "RazorSpike" in Frame 7
onClipEvent (load) {
if (_name != "RazorSpike") {
this.addProperty("spike", this.getSpike, null);
spike = true;
flyRange = int(Math.random() * 6) + 10;
speed = 6;
framesAtSpeed = 0;
moveDirection = _rotation;
myScale = int(Math.random() * 30) + 100;
_xscale = myScale;
_yscale = myScale;
}
}
onClipEvent (enterFrame) {
if (_name != "RazorSpike") {
if (speed != 0) {
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
if (speed > 2) {
speed = speed / 2;
framesAtSpeed = 0;
_yscale = (_yscale - 30);
} else {
speed = 0;
}
}
if (_root.HeroPointer.hitTest(_x, _y, true) && (speed > 2)) {
_global.justHit = this;
}
} else if (framesAtSpeed >= 30) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 1688 MovieClip "HeroSpiked" in Frame 7
onClipEvent (load) {
if (_name == "HeroSpiked") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroSpiked") {
if (_currentframe == 15) {
stop();
} else {
_y = (_y - (3 * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (3 * Math.sin(_rotation * (Math.PI/180))));
}
}
}
Instance of Symbol 1809 MovieClip [Lil Guy Flaming Razor] "HeroFlamingRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroFlamingRazor") {
stop();
} else {
framesExisted = 0;
putOut = false;
smokies = 0;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroFlamingRazor") {
if ((eval (_root.HeroPointer) == undefined) && (_currentframe < 92)) {
removeMovieClip(this);
}
if (eval (_root.HeroPointer) != undefined) {
_x = _root.HeroPointer._x;
_y = _root.HeroPointer._y;
_rotation = _root.HeroPointer._rotation;
}
if ((_currentframe > 30) && (_currentframe < 92)) {
if (int(framesExisted / 20) == (framesExisted / 20)) {
duplicateMovieClip (_root.BlackSmoke, (_name + "Smoke") + smokies, _global.capDepth++);
with (eval ((("_root." + _name) + "Smoke") + smokies)) {
_x = this._x;
_y = this._y;
}
smokies++;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != hostObject._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if (eval (("_root." + hitTarget._name) + "Flame") == undefined) {
if (eval (("_root." + hitTarget._name) + "Goo") != undefined) {
} else if (hitTarget._name.slice(0, 7) == "Stickie") {
} else if (hitTarget._name.slice(0, 7) == "Grinder") {
} else {
duplicateMovieClip (_root.Flames, hitTarget._name + "Flame", _global.capDepth++);
GloopleFire = eval (("_root." + hitTarget._name) + "Flame");
if ((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) {
with (GloopleFire) {
_xscale = 170;
_yscale = 170;
}
}
}
}
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Inkie") {
targetHazard.onFire = true;
} else {
p = 1;
while (p < 4) {
duplicateMovieClip (_root.WhiteSmoke, (_name + "WSmoke") + p, _global.capDepth++);
with (eval ((("_root." + _name) + "WSmoke") + p)) {
_x = this._x;
_y = this._y;
}
p++;
}
_global.HeroAction = "none";
removeMovieClip(this);
}
}
x++;
}
}
if ((_currentframe == 91) && (framesExisted < 200)) {
gotoAndPlay (31);
}
if (_currentframe == 92) {
if (!putOut) {
_global.HeroAction = "burned";
}
}
if (_currentframe == 130) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 1811 MovieClip "Blastmark" in Frame 7
onClipEvent (load) {
_rotation = (int(Math.random() * 360) - 180);
if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
}
Instance of Symbol 957 MovieClip [Splat1] "Splat1" in Frame 7
onClipEvent (load) {
if (_name == "Splat1") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 32) {
stop();
this.removeMovieClip();
}
}
Instance of Symbol 1817 MovieClip "Blood1" in Frame 7
onClipEvent (load) {
if (_name == "Blood1") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 5) {
stop();
}
}
Instance of Symbol 1823 MovieClip "Blood2" in Frame 7
onClipEvent (load) {
if (_name == "Blood2") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 5) {
stop();
}
}
Instance of Symbol 1829 MovieClip "Blood3" in Frame 7
onClipEvent (load) {
if (_name == "Blood3") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 5) {
stop();
}
}
Instance of Symbol 1831 MovieClip "MoltenStone" in Frame 7
onClipEvent (load) {
if (_name != "MoltenStone") {
flyRange = int(Math.random() * 4) + 2;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
}
}
onClipEvent (enterFrame) {
if (_name != "MoltenStone") {
if (speed == 8) {
if (int(Math.random() * 30) == 1) {
_global.MakeNoise("Pebble");
}
}
if (speed != 0) {
if ((_rotation + 20) > 179) {
_rotation = (_rotation - 340);
} else {
_rotation = (_rotation + 20);
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 30) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 1833 MovieClip "Stone" in Frame 7
onClipEvent (load) {
if (_name != "Stone") {
flyRange = int(Math.random() * 4) + 2;
speed = 8;
framesAtSpeed = 0;
moveDirection = _rotation;
}
}
onClipEvent (enterFrame) {
if (_name != "Stone") {
if (speed == 8) {
if (int(Math.random() * 30) == 1) {
_global.MakeNoise("Pebble");
}
}
if (speed != 0) {
if ((_rotation + 20) > 179) {
_rotation = (_rotation - 340);
} else {
_rotation = (_rotation + 20);
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 30) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 335 MovieClip "Gloople" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "Gloople") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
killedBy = null;
speed = 3;
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 1;
if (SearchArray(EnemiesKilled, "Gloople") == null) {
EnemiesKilled.push("Gloople");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if ((hitTarget._name.slice(0, 7) == "Gloople") && ((int(Math.random() * 100) + 1) < 6)) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
duplicateMovieClip (_root.GloopleGlom, "Glom" + _name.slice(7), _global.baddieDepth++);
_global.Enemies.push("Glom" + _name.slice(7));
Glommie = eval ("_root.Glom" + _name.slice(7));
with (Glommie) {
_x = this._x;
_y = this._y;
_rotation = (-Math.atan2(this._x - hitTarget._x, this._y - hitTarget._y)) / (Math.PI/180);
}
_global.MakeNoise("Glom");
removeMovieClip(hitTarget);
this.removeMovieClip();
} else if (hitTarget._name.slice(0, 4) != "Amal") {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
gotoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
gotoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
gotoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
gotoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (gotoSpotX > 275) {
gotoSpotX = 555;
} else {
gotoSpotX = -5;
}
} else if (gotoSpotY > 200) {
gotoSpotY = 405;
} else {
gotoSpotY = -5;
}
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 597 MovieClip "Stickie" in Frame 7
onClipEvent (load) {
mommy = false;
hasMoved = false;
if (_name == "Stickie") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 3;
if (eval (_root.HeroPointer) != undefined) {
pathSpotX = _root.HeroPointer._x;
pathSpotY = _root.HeroPointer._y;
} else {
pathSpotX = 275;
pathSpotY = 200;
}
objectHitX = null;
objectHitY = null;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15329345);
duplicateMovieClip (_root.StickyMark, this._name + "SplatStickyMark", _global.markDepth++);
with (eval (SplatName + "StickyMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 3;
if (SearchArray(EnemiesKilled, "Stickie") == null) {
EnemiesKilled.push("Stickie");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15329345);
duplicateMovieClip (_root.StickyMark, this._name + "SplatStickyMark", _global.markDepth++);
with (eval (SplatName + "StickyMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
objectHitX = _root.HeroPointer._x;
objectHitY = _root.HeroPointer._y;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
objectHitX = hitTarget._x;
objectHitY = hitTarget._y;
break;
}
}
x++;
}
}
if ((objectHitX != null) && (objectHitY != null)) {
SplatName = ("_root." + this._name) + "Splat";
SplatNum = int(Math.random() * 3) + 1;
duplicateMovieClip (eval ("_root.Splat" + SplatNum), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (-Math.atan2(_x - objectHitX, _y - objectHitY)) / (Math.PI/180));
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15329345);
duplicateMovieClip (_root.StickyMark, this._name + "SplatStickyMark", _global.markDepth++);
with (eval (SplatName + "StickyMark")) {
_x = this._x;
_y = this._y;
gotoAndStop(SplatNum);
}
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (!hasMoved) {
delta_x = _x - pathSpotX;
delta_y = _y - pathSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
hasMoved = true;
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 1837 MovieClip "GloopleGlom" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "GloopleGlom") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 1;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatName = ("_root." + this._name) + "Splat2";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat2", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x + 10);
setProperty(SplatName, _y , this._y + 10);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 2;
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killdir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._x;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
}
if (justBounced != 0) {
BoingNoise = new Sound();
BoingNoise.attachSound("Boing Sound");
BoingNoise.onSoundComplete = function () {
BoingNoise.stop();
};
BoingNoise.start();
if (_x > bouncedOffX) {
gotoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
gotoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
gotoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
gotoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (gotoSpotX > 275) {
gotoSpotX = 555;
} else {
gotoSpotX = -5;
}
} else if (gotoSpotY > 200) {
gotoSpotY = 405;
} else {
gotoSpotY = -5;
}
}
} else {
justBounced--;
}
if (justBounced > 0) {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_currentframe == 31) {
duplicateMovieClip (_root.Oozle, "Oozle" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Oozle" + _name.slice(4));
with (eval ("_root.Oozle" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 522 MovieClip "Oozle" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Oozle") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("health", this.getHealth, this.setHealth);
health = 3;
recoil = 0;
lilSplats = 0;
speed = 2;
turnSpeed = 2;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
if (SearchArray(EnemiesSeen, "Oozle") == null) {
EnemiesSeen.push("Oozle");
}
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (recoil > 0) {
recoil--;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (recoil == 0)) {
health--;
recoil = 20;
SplatName = (("_root." + this._name) + "Splat") + lilSplats;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), (this._name + "Splat") + (lilSplats++), _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
if ((health == 0) || (_global.RazorGlaiveEquipped)) {
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 15;
if (SearchArray(EnemiesKilled, "Oozle") == null) {
EnemiesKilled.push("Oozle");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
_global.MakeNoise("Slice");
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((hitTarget._name.slice(0, 7) == "Gloople") && ((int(Math.random() * 100) + 1) < 11)) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
duplicateMovieClip (_root.OozleGlom, "Glom" + _name.slice(5), _global.baddieDepth++);
_global.Enemies.push("Glom" + _name.slice(5));
Glommie = eval ("_root.Glom" + _name.slice(5));
with (Glommie) {
_x = this._x;
_y = this._y;
_rotation = (-Math.atan2(this._x - hitTarget._x, this._y - hitTarget._y)) / (Math.PI/180);
}
_global.MakeNoise("Glom");
removeMovieClip(hitTarget);
this.removeMovieClip();
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
if (killedBy != null) {
killName = killedBy._name.slice(0, 4);
if (((((((killName == "Oozl") || (killName == "Shar")) || (killName == "Grin")) || (killName == "Gray")) || (killedBy.exploded)) || (killName == "Horr")) || (killedBy.claw)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
}
}
Instance of Symbol 259 MovieClip "Biter" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "Biter") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("lunging", this.getLunging, null);
killedBy = null;
lunging = false;
speed = 4;
turnSpeed = 3;
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
if (eval (_root.HeroPointer) == undefined) {
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 8;
if (SearchArray(EnemiesKilled, "Biter") == null) {
EnemiesKilled.push("Biter");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (!lunging) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
_global.justHit = this;
removeMovieClip(myLunge);
duplicateMovieClip (_root.HeroMangle, _name + "Mangling", _global.heroDepth++);
myMangler = eval (("_root." + _name) + "Mangling");
with (myMangler) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if ((hitTarget._name.slice(0, 5) == "Biter") && ((int(Math.random() * 100) + 1) < 11)) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
duplicateMovieClip (_root.BiterGlom, "Glom" + _name.slice(5), _global.baddieDepth++);
_global.Enemies.push("Glom" + _name.slice(5));
Glommie = eval ("_root.Glom" + _name.slice(5));
with (Glommie) {
_x = this._x;
_y = this._y;
_rotation = (-Math.atan2(this._x - hitTarget._x, this._y - hitTarget._y)) / (Math.PI/180);
}
_global.MakeNoise("Glom");
removeMovieClip(hitTarget);
this.removeMovieClip();
} else {
if (!lunging) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
if (hitTarget._name.slice(0, 5) != "Oozle") {
hitTarget.killedBy = this;
}
}
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if ((_rotation != targetRotation) && (!lunging)) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (((!lunging) && (speed == 4)) && (eval (_root.HeroPointer) != undefined)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 120) {
if (Math.abs(_rotation - targetRotation) < 20) {
_visible = false;
duplicateMovieClip (_root.BiterLunge, _name + "Lunge", _global.baddieDepth++);
myLunge = eval (("_root." + _name) + "Lunge");
with (myLunge) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
speed = speed * 1.5;
lunging = true;
_global.MakeNoise("BiterGrowl" + (int(Math.random() * 3) + 1));
}
}
}
if (lunging && (myLunge._currentFrame == 20)) {
removeMovieClip(myLunge);
_visible = true;
speed = speed / 1.5;
lunging = false;
}
}
}
Instance of Symbol 1858 MovieClip "BiterLunge" in Frame 7
onClipEvent (load) {
if (_name == "BiterLunge") {
stop();
} else {
daddyBiter = eval ("_root." + _name.slice(0, _name.length - 5));
}
}
onClipEvent (enterFrame) {
if (_name != "BiterLunge") {
if (eval (daddyBiter) == undefined) {
removeMovieClip(this);
}
_x = daddyBiter._x;
_y = daddyBiter._y;
_rotation = daddyBiter._rotation;
}
}
Instance of Symbol 1905 MovieClip "HeroMangle" in Frame 7
onClipEvent (load) {
if (_name == "HeroMangle") {
stop();
} else {
speed = 4;
playsthrough = 0;
splats = 0;
daddyBiter = eval ("_root." + _name.slice(0, _name.length - 8));
}
}
onClipEvent (enterFrame) {
if (_name != "HeroMangle") {
if (_currentframe == 4) {
removeMovieClip(daddyBiter);
}
if (_currentframe < 16) {
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
this.removeMovieClip();
}
}
if ((_currentframe == 25) || (_currentframe == 40)) {
BloodName = (("_root." + this._name) + "Blood") + splats;
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
setProperty(BloodName, _rotation , int(Math.random() * 360) - 180);
setProperty(BloodName, _x , this._x);
setProperty(BloodName, _y , this._y);
splats++;
_global.MakeNoise("Wound");
}
if ((_currentframe == 46) && (playsthrough < 3)) {
gotoAndPlay (16);
playsthrough++;
} else if (playsthrough == 3) {
stop();
duplicateMovieClip (_root.HeroMangled, "DeadHero", _global.effectDepth++);
with (_root.DeadHero) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
duplicateMovieClip (_root.Biter, "Biter00", _global.baddieDepth++);
with (_root.Biter00) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
removeMovieClip(this);
}
}
}
Instance of Symbol 1910 MovieClip "AcidBubble" in Frame 7
onClipEvent (load) {
if (_name == "AcidBubble") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 20) {
bubbleRotation = int(Math.random() * 359) - 180;
PopName = (("_root." + this._name) + "Pop") + _currentframe;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), (this._name + "Pop") + _currentframe, _global.effectDepth++);
setProperty(PopName, _rotation , bubbleRotation);
setProperty(PopName, _x , this._x);
setProperty(PopName, _y , this._y);
setProperty(PopName, _xscale , 30);
setProperty(PopName, _yscale , 30);
PopColor = new Color(eval (PopName));
PopColor.setRGB(15898925);
removeMovieClip(this);
}
}
Instance of Symbol 590 MovieClip "Sharp" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
justStruck = 0;
rattled = 0;
if (_name == "Sharp") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("hazard", this.getHazard, setHazard);
this.addProperty("spines", this.getSpines, null);
killedBy = null;
spines = false;
hazard = false;
speed = 3;
turnSpeed = 3;
speedBoost = 0;
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
if (eval (_root.HeroPointer) == undefined) {
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
if (justStruck == 0) {
if ((!spines) || (_global.RazorGlaiveEquipped)) {
if (spines) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
}
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(4776397);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 12;
if (SearchArray(EnemiesKilled, "Sharp") == null) {
EnemiesKilled.push("Sharp");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_rotation = ((_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
speedBoost = 3;
justStruck = 20;
rattled = 50;
}
}
}
}
}
if (justStruck > 0) {
justStruck--;
}
if ((killedBy != null) && (!spines)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(4776397);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else if (killedBy != null) {
if (killedBy.exploded) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(4776397);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
_rotation = ((killedBy._rotation + int(Math.random() * 61)) + 30);
speedBoost = 3;
justStruck = 20;
rattled = 50;
killedBy = null;
}
}
if (justBounced == 0) {
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
if (!spines) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
_global.justHit = this;
duplicateMovieClip (_root.HeroImpaled, _name + "Impale", _global.heroDepth++);
myImpale = eval (("_root." + _name) + "Impale");
with (myImpale) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if (!spines) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
if (((hitTarget._name.slice(0, 5) == "Sharp") && (hitTarget.spines)) || (hitTarget._name.slice(0, 7) == "Grinder")) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
hitTarget.killedBy = this;
}
}
x++;
}
}
if (justBounced != 0) {
if (spines) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
} else {
_global.MakeNoise("Boing");
}
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - ((speed + speedBoost) * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + ((speed + speedBoost) * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (hazard) {
if (_currentframe < 42) {
gotoAndPlay (42);
}
if (_currentframe == 76) {
gotoAndPlay (56);
}
} else if (_currentframe == 41) {
gotoAndPlay (1);
}
hazard = false;
if (_currentframe == 45) {
_global.MakeNoise("SharpsOut");
}
if (_currentframe == 77) {
_global.MakeNoise("SharpsIn");
}
if (eval (("_root." + _name) + "Flame") != undefined) {
gotoAndStop (1);
}
if (eval (("_root." + _name) + "Goo") != undefined) {
gotoAndStop (1);
}
if (eval (("_root." + _name) + "Morph") != undefined) {
gotoAndStop (1);
}
if (eval (("_root." + _name) + "GloopleBurn") != undefined) {
gotoAndStop (1);
}
if (eval (("_root." + _name) + "GloopleMelt") != undefined) {
gotoAndStop (1);
}
toHazardX = _x - _root.HeroPointer._x;
toHazardY = _y - _root.HeroPointer._y;
hazardRotation = (-Math.atan2(toHazardX, toHazardY)) / (Math.PI/180);
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 200) {
if (Math.abs(_rotation - hazardRotation) < 60) {
hazard = true;
}
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hazTarget = eval ("_root." + _global.Enemies[x]);
toHazardX = _x - hazTarget._x;
toHazardY = _y - hazTarget._y;
hazardRotation = (-Math.atan2(toHazardX, toHazardY)) / (Math.PI/180);
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 100) {
if (Math.abs(_rotation - hazardRotation) < 30) {
hazard = true;
}
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
p = 10;
while (p < 70) {
ProjPathX = _x + (p * Math.sin(_rotation * (Math.PI/180)));
ProjPathY = _y - (p * Math.cos(_rotation * (Math.PI/180)));
if (targetHazard.hitTest(ProjPathX, ProjPathY, false)) {
hazard = true;
}
p = p + 10;
}
x++;
}
if (rattled > 0) {
hazard = true;
rattled--;
}
if ((_currentframe < 46) || (_currentframe > 89)) {
spines = false;
turnspeed = 3;
} else {
spines = true;
turnspeed = 2;
}
}
}
Instance of Symbol 1919 MovieClip "Sparks" in Frame 7
onClipEvent (load) {
if (_name == "Sparks") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == _totalframes) {
removeMovieClip(this);
}
}
Instance of Symbol 1966 MovieClip "HeroImpaled" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
printcount = 0;
if (_name == "HeroImpaled") {
mommy = true;
stop();
} else {
killedBy = null;
spines = true;
speed = 3;
turnSpeed = 3;
_global.Enemies.push(_name);
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (justBounced == 0) {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((hitTarget._name.slice(0, 5) == "Sharp") && (hitTarget.spines)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
hitTarget.killedBy = this;
}
}
x++;
}
if (justBounced != 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
ClangNoise = new Sound();
ClangNoise.attachSound("Sword Clang Sound");
ClangNoise.onSoundComplete = function () {
ClangNoise.stop();
};
ClangNoise.start();
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - ((speed + speedBoost) * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + ((speed + speedBoost) * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if ((_currentframe == 6) && (printcount < 6)) {
printName = (("_root." + _name) + "Bloodprint") + printcount;
duplicateMovieClip (_root.BloodPrint, (_name + "Bloodprint") + (printcount++), _global.effectDepth++);
with (eval (printName)) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
gotoAndStop(printcount);
}
}
}
}
Instance of Symbol 274 MovieClip "Clutter" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
spitting = false;
spitDelay = 0;
if (_name == "Clutter") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("little", this.getLittle, null);
killedBy = null;
little = false;
orbitDir = "left";
speed = 4;
turnSpeed = 4;
driftChange = 0;
lockX = false;
lockY = false;
posture = "search";
spitBabies = 10;
beenLittle = 0;
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
moveRotation = _rotation;
if (eval (_root.HeroPointer) == undefined) {
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (_xscale < 95) {
little = true;
} else {
little = false;
}
if ((_global.HeroAction == "attacking") && ((!little) || (beenLittle > 10))) {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , this._xscale);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , this._yscale);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
if (!little) {
littleClutters = int(Math.random() * 3) + 2;
x = 1;
while (x < littleClutters) {
ClutterNum = _root.SpawnPoint.ChildCounter;
ClutterName = "_root.Clutter" + String(ClutterNum);
duplicateMovieClip (_root.Clutter, "Clutter" + String(ClutterNum), _global.baddieDepth++);
with (eval (ClutterName)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_xscale = 40;
_y = (this._y + int(Math.random() * 20)) - 10;
_yscale = 40;
_rotation = this._rotation - ((180 + int(Math.random() * 40)) - 20);
}
_global.Enemies.push("Clutter" + String(ClutterNum));
_root.SpawnPoint.ChildCounter++;
x++;
}
}
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
if (!little) {
BountyObject.bounty = 8;
if (SearchArray(EnemiesKilled, "Clutter") == null) {
EnemiesKilled.push("Clutter");
}
_global.MakeNoise("Splat");
} else {
BountyObject.bounty = 3;
_global.MakeNoise("LilSplat");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , this._xscale);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , this._yscale);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
_global.MakeNoise("Splat");
if (!little) {
littleClutters = int(Math.random() * 3) + 2;
x = 1;
while (x < littleClutters) {
ClutterNum = _root.SpawnPoint.ChildCounter;
ClutterName = "_root.Clutter" + String(ClutterNum);
duplicateMovieClip (_root.Clutter, "Clutter" + String(ClutterNum), _global.baddieDepth++);
with (eval (ClutterName)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_xscale = 40;
_y = (this._y + int(Math.random() * 20)) - 10;
_yscale = 40;
_rotation = this._rotation - ((180 + int(Math.random() * 40)) - 20);
}
_global.Enemies.push("Clutter" + String(ClutterNum));
_root.SpawnPoint.ChildCounter++;
x++;
}
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (!little) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._y;
_global.justHit = this;
} else {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffX = _root.HeroPointer._y;
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
if (posture != "drift") {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if ((eval (_root.HeroPointer) != undefined) && (posture != "leave")) {
toHero_x = _x - _root.HeroPointer._x;
toHero_y = _y - _root.HeroPointer._y;
heroDist = Math.sqrt((toHero_x * toHero_x) + (toHero_y * toHero_y));
if (!little) {
if (heroDist > 160) {
posture = "search";
} else if ((heroDist <= 160) && (heroDist > 140)) {
posture = "orbit";
} else {
posture = "flee";
}
} else if (heroDist > 140) {
if ((posture != "drift") || (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed)) {
gotoSpotX = int(Math.random() * 500) + 26;
gotoSpotY = int(Math.random() * 350) + 26;
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
}
posture = "drift";
} else {
posture = "flee";
}
} else if (posture != "leave") {
posture = "search";
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
}
CluttersOnScreen = 0;
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x].slice(0, 7) == "Clutter") {
CluttersOnScreen++;
}
x++;
}
if (CluttersOnScreen >= (_global.spawnLimit * 0.7)) {
if (int(Math.random() * 130) == 1) {
posture = "leave";
}
} else if (posture == "leave") {
posture = "flee";
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
switch (posture) {
case "search" :
moveRotation = _rotation;
throttle = speed;
break;
case "orbit" :
throttle = speed / 2;
if (driftChange > 60) {
if ((int(Math.random() * 2) + 1) == 1) {
orbitDir = "left";
} else {
orbitDir = "right";
}
driftChange = 0;
}
if ((orbitDir = "left")) {
moveRotation = targetRotation - (int(Math.random() * 20) + 80);
} else {
moveRotation = targetRotation + (int(Math.random() * 20) + 80);
}
break;
case "flee" :
case "leave" :
if (driftChange > 10) {
moveRotation = targetRotation - (int(Math.random() * 20) - 170);
driftChange = 0;
}
if (!little) {
throttle = speed / 2;
} else {
throttle = speed * 0.75;
}
driftChange++;
break;
case "drift" :
moveRotation = _rotation;
throttle = speed * 0.75;
}
if (moveRotation > 179) {
moveRotation = moveRotation - 360;
}
if (moveRotation < -180) {
moveRotation = moveRotation + 360;
}
driftChange++;
if (posture != "leave") {
if ((((_y < 10) || (_y > 390)) && (heroDist > 100)) && ((posture == "flee") || (posture == "orbit"))) {
lockY = true;
} else {
lockY = false;
}
if ((((_x < 10) || (_x > 540)) && (heroDist > 100)) && ((posture == "flee") || (posture == "orbit"))) {
lockX = true;
} else {
lockX = false;
}
}
if (((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) && (!spitting)) {
if (((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) || (posture == "flee")) || (posture == "leave")) {
if (!lockY) {
_y = (_y - (throttle * Math.cos(moveRotation * (Math.PI/180))));
}
if (!lockX) {
_x = (_x + (throttle * Math.sin(moveRotation * (Math.PI/180))));
}
}
} else if (!spitting) {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (little) {
beenLittle++;
}
if ((little && (beenLittle > 150)) && (_currentframe == 2)) {
this._xscale = this._xscale + 10;
this._yscale = this._yscale + 10;
}
if ((!little) && (eval (_root.HeroPointer) != undefined)) {
if ((heroDist < 156) && (posture == "orbit")) {
if ((_rotation == targetRotation) && (spitDelay == 0)) {
gotoAndPlay (81);
spitting = true;
spitDelay = 60;
}
}
}
if (spitDelay > 0) {
spitDelay--;
}
if (_currentframe == 80) {
gotoAndPlay (1);
} else if (_currentframe == 101) {
BabyName = (("_root." + this._name) + "Spit") + spitBabies;
duplicateMovieClip (_root.ClutterSpit, (this._name + "Spit") + spitBabies, _global.baddieDepth++);
setProperty(BabyName, _rotation , this._rotation);
setProperty(BabyName, _x , this._x);
setProperty(BabyName, _y , this._y);
if (spitBabies < 99) {
spitBabies++;
} else {
spitBabies = 10;
}
_global.MakeNoise("Spit");
} else if (_currentframe == 111) {
spitting = false;
}
}
}
Instance of Symbol 1969 MovieClip "ClutterSpit" in Frame 7
onClipEvent (load) {
mommy = false;
gotoSpotX = null;
gotoSpotY = null;
if (_name == "ClutterSpit") {
mommy = true;
stop();
} else {
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
killedBy = null;
stuck = false;
speed = 8;
priorRotation = 0;
totalRotation = 0;
daddyClutter = eval ("_root." + _name.slice(0, _name.length - 6));
gotoAndStop (1);
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (!stuck)) {
if (gotoSpotX == null) {
gotoSpotX = _x + (170 * Math.sin(_rotation * (Math.PI/180)));
gotoSpotY = _y - (170 * Math.cos(_rotation * (Math.PI/180)));
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
_global.MakeNoise("LilSplat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 3;
_visible = false;
this.removeMovieClip();
}
}
}
if (killedBy != null) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killedBy._rotation);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
_global.MakeNoise("LilSplat");
_visible = false;
this.removeMovieClip();
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
play();
stuck = true;
stuck_x = _root.HeroPointer._x - this._x;
stuck_y = _root.HeroPointer._y - this._y;
stuckRotation = (-Math.atan2(stuck_x, stuck_y)) / (Math.PI/180);
offHeroRotation = stuckRotation - _root.HeroPointer._rotation;
_root.HeroPointer.clutters = _root.HeroPointer.clutters + 1;
_root.HeroPointer.speed = _root.HeroPointer.speed - 1;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != daddyClutter._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, false)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killedBy._rotation);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
_global.MakeNoise("LilSplat");
_visible = false;
this.removeMovieClip();
}
}
x++;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > speed) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(13781982);
_global.MakeNoise("LilSplat");
_visible = false;
this.removeMovieClip();
}
} else if ((!mommy) && (stuck)) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
if (_currentframe == 10) {
stop();
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
myRotation = _root.HeroPointer._rotation + offHeroRotation;
if (myRotation > 179) {
myRotation = myRotation - 360;
}
if (myRotation < -180) {
myRotation = myRotation + 360;
}
this._x = gotoSpotX + (10 * Math.sin(myRotation * (Math.PI/180)));
this._y = gotoSpotY - (10 * Math.cos(myRotation * (Math.PI/180)));
this._rotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (Math.abs(_rotation - priorRotation) < 190) {
totalRotation = totalRotation + Math.abs(_rotation - priorRotation);
}
priorRotation = _rotation;
if ((totalRotation >= 3000) || (eval (_root.HeroPointer) == undefined)) {
_root.HeroPointer.clutters = _root.HeroPointer.clutters - 1;
_root.HeroPointer.speed = _root.HeroPointer.speed + 1;
ClutterNum = _root.SpawnPoint.ChildCounter;
ClutterName = "_root.Clutter" + String(ClutterNum);
duplicateMovieClip (_root.Clutter, "Clutter" + String(ClutterNum), _global.baddieDepth++);
with (eval (ClutterName)) {
_x = this._x;
_xscale = 40;
_y = this._y;
_yscale = 40;
_rotation = this._rotation - 180;
}
_global.Enemies.push("Clutter" + String(ClutterNum));
_root.SpawnPoint.ChildCounter++;
this.removeMovieClip();
}
}
}
Instance of Symbol 462 MovieClip "Grinder" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
rockCounter = 0;
if (_name == "Grinder") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("acidized", this.getAcidized, this.setAcidized);
killedBy = null;
acidized = false;
speed = 2.5;
turnSpeed = 0.7;
switch (_x) {
case -5 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
case 555 :
if (_y < 200) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
} else {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
}
break;
default :
if (_y == -5) {
if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = 405;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = 405;
}
} else if (_x < 275) {
if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = 555;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 550) + 1;
gotoSpotY = -5;
}
} else if ((int(Math.random() * 3) + 1) == 1) {
gotoSpotX = -5;
gotoSpotY = int(Math.random() * 400) + 1;
} else {
gotoSpotX = int(Math.random() * 500) + 1;
gotoSpotY = -5;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
_rotation = ((-Math.atan2(delta_x, delta_y)) / (Math.PI/180));
if (eval (_root.HeroPointer) == undefined) {
if (_root.SpawnPoint.SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
}
myGrind = new Sound(this);
myGrind.attachSound("Grind");
myGrind.start(0, 10);
}
}
onClipEvent (unload) {
myGrind.stop();
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (acidized) {
_global.MakeNoise("Sizzle");
x = 1;
while (x < 5) {
duplicateMovieClip (_root.WhiteSmoke, (_name + "Smoke") + x, _global.capDepth++);
with (eval ((("_root." + _name) + "Smoke") + x)) {
_x = (this._x + int(Math.random() * 60)) - 30;
_y = (this._y + int(Math.random() * 60)) - 30;
}
x++;
}
duplicateMovieClip (_root.GrinderCracked, _name + "Cracked", _global.baddieDepth++);
myGrinder = eval (("_root." + _name) + "Cracked");
with (myGrinder) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 6) && (_root.HeroSlashin._currentframe < 14)) {
distance_x = _x - _root.HeroSwing._x;
distance_y = _y - _root.HeroSwing._y;
adjustedRotation = (-Math.atan2(distance_x, distance_y)) / (Math.PI/180);
impactPointY = _y - (25 * Math.cos(adjustedRotation * (Math.PI/180)));
impactPointX = _x + (25 * Math.sin(adjustedRotation * (Math.PI/180)));
if (_root.HeroSwing.hittest(impactPointX, impactPointY, true)) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , _root.HeroPointer._rotation - 90);
setProperty(SparkName, _x , ImpactPointX);
setProperty(SparkName, _y , ImpactPointY);
_global.MakeNoise("Clang");
_global.HeroAction = "bounceback";
if (_global.RazorGlaiveEquipped) {
_global.MakeNoise("Pebble");
_global.MakeNoise("GrindRumble", 1.2);
debrisNum = int(Math.random() * 5) + 4;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
if ((int(Math.random() * 2) + 1) == 1) {
setProperty(RockName, _rotation , this._rotation + (int(Math.random() * 40) + 70));
} else {
setProperty(RockName, _rotation , this._rotation - (int(Math.random() * 40) + 70));
}
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , impactPointX);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , impactPointY);
setProperty(RockName, _yscale , rockScale);
x++;
}
_rotation = ((_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
duplicateMovieClip (_root.GrinderCracked, _name + "Cracked", _global.baddieDepth++);
myGrinder = eval (("_root." + _name) + "Cracked");
with (myGrinder) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
}
}
}
}
if (killedBy != null) {
if (killedBy._name.slice(0, 7) == "Grinder") {
justBounced = 8;
bouncedOffX = killedBy._x;
bouncedOffY = killedBy._y;
} else if (killedBy.exploded) {
toBlastX = _x - killedBy._x;
toBlastY = _y - killedBy._y;
blastDir = (-Math.atan2(toBlastX, toBlastY)) / (Math.PI/180);
blastDir = blastDir - 180;
debrisNum = int(Math.random() * 5) + 4;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
setProperty(RockName, _rotation , blastDir - (int(Math.random() * 40) + 70));
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , this._x);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , this._y);
setProperty(RockName, _yscale , rockScale);
x++;
}
duplicateMovieClip (_root.GrinderCracked, _name + "Cracked", _global.baddieDepth++);
myGrinder = eval (("_root." + _name) + "Cracked");
with (myGrinder) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
} else {
killedBy = null;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
if ((justBounced == 0) || (killedBy != null)) {
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if ((hitTarget._name.slice(0, 7) != "Grinder") && (!((hitTarget._name.slice(0, 4) == "Gray") && (hitTarget.action == "gaurd")))) {
if (hitTest(hitTarget._x, hitTarget._y, true)) {
hitTarget.killedBy = this;
}
} else {
distance_x = hitTarget._x - _x;
distance_y = hitTarget._y - _y;
adjustedRotation = (-Math.atan2(distance_x, distance_y)) / (Math.PI/180);
if (hitTarget._name.slice(0, 4) == "Grin") {
impactDistance = 25;
} else {
impactDistance = 5;
}
impactPointY = hitTarget._y - (impactDistance * Math.cos(adjustedRotation * (Math.PI/180)));
impactPointX = hitTarget._x + (impactDistance * Math.sin(adjustedRotation * (Math.PI/180)));
if (hitTest(impactPointX, impactPointY, true)) {
hitTarget.killedBy = this;
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
}
x++;
}
}
if ((justBounced != 0) || (killedBy != null)) {
_global.MakeNoise("Pebble");
_global.MakeNoise("GrindRumble", 1.2);
debrisNum = int(Math.random() * 5) + 4;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
if ((int(Math.random() * 2) + 1) == 1) {
setProperty(RockName, _rotation , this._rotation + (int(Math.random() * 40) + 70));
} else {
setProperty(RockName, _rotation , this._rotation - (int(Math.random() * 40) + 70));
}
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , impactPointX);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , impactPointY);
setProperty(RockName, _yscale , rockScale);
x++;
}
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
duplicateMovieClip (_root.GrinderCracked, _name + "Cracked", _global.baddieDepth++);
myGrinder = eval (("_root." + _name) + "Cracked");
with (myGrinder) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
_visible = false;
removeMovieClip(this);
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -16) && (_x > -16)) && (_y < 416)) && (_x < 566)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 1973 MovieClip "GrinderCracked" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
recoil = 0;
rockCounter = 0;
if (_name == "GrinderCracked") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("health", this.getHealth, this.setHealth);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("killedBy", this.getKilledBy, this.setKilledBy);
this.addProperty("acidized", this.getAcidized, this.setAcidized);
killedBy = null;
health = 5;
speed = 2;
turnSpeed = 0.5;
_global.Enemies.push(_name);
myGrind = new Sound(this);
myGrind.attachSound("Grind");
myGrind.start(0, 10);
}
}
onClipEvent (unload) {
myGrind.stop();
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
if (recoil > 0) {
recoil--;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 6) && (_root.HeroSlashin._currentframe < 14)) {
distance_x = _x - _root.HeroSwing._x;
distance_y = _y - _root.HeroSwing._y;
adjustedRotation = (-Math.atan2(distance_x, distance_y)) / (Math.PI/180);
impactPointY = _y - (25 * Math.cos(adjustedRotation * (Math.PI/180)));
impactPointX = _x + (25 * Math.sin(adjustedRotation * (Math.PI/180)));
if (_root.HeroSwing.hittest(impactPointX, impactPointY, true) && (recoil == 0)) {
health--;
recoil = 20;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , impactPointX);
setProperty(SplatName, _y , impactPointY);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15884813);
if ((health == 0) || (_global.RazorGlaiveEquipped)) {
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 230);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 230);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(15884813);
debrisNum = int(Math.random() * 5) + 10;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
setProperty(RockName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , impactPointX);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , impactPointY);
setProperty(RockName, _yscale , rockScale);
x++;
}
_global.MakeNoise("GrinderKill");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 100;
if (SearchArray(EnemiesKilled, "Grinder") == null) {
EnemiesKilled.push("Grinder");
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
_global.MakeNoise("Slice");
_global.MakeNoise("GrinderHurt");
debrisNum = int(Math.random() * 5) + 4;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
setProperty(RockName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , impactPointX);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , impactPointY);
setProperty(RockName, _yscale , rockScale);
x++;
}
}
}
}
}
if (killedBy != null) {
if (killedBy._name.slice(0, 7) != "Grinder") {
justBounced = 8;
bouncedOffX = killedBy._x;
bouncedOffY = killedBy._y;
} else if (killedBy.exploded) {
toBlastX = _x - killedBy._x;
toBlastY = _y - killedBy._y;
blastDir = (-Math.atan2(toBlastX, toBlastY)) / (Math.PI/180);
blastDir = blastDir - 180;
debrisNum = int(Math.random() * 5) + 10;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
setProperty(RockName, _rotation , blastDir - (int(Math.random() * 40) + 70));
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , this._x);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , this._y);
setProperty(RockName, _yscale , rockScale);
x++;
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
killedBy = null;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
if (justBounced == 0) {
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if ((hitTarget._name.slice(0, 7) != "Grinder") && (!((hitTarget._name.slice(0, 4) == "Gray") && (hitTarget.action == "gaurd")))) {
if (hitTest(hitTarget._x, hitTarget._y, true)) {
hitTarget.killedBy = this;
}
} else {
distance_x = hitTarget._x - _x;
distance_y = hitTarget._y - _y;
adjustedRotation = (-Math.atan2(distance_x, distance_y)) / (Math.PI/180);
if (hitTarget._name.slice(0, 4) == "Grin") {
impactDistance = 25;
} else {
impactDistance = 5;
}
impactPointY = hitTarget._y - (impactDistance * Math.cos(adjustedRotation * (Math.PI/180)));
impactPointX = hitTarget._x + (impactDistance * Math.sin(adjustedRotation * (Math.PI/180)));
if (hitTest(impactPointX, impactPointY, true)) {
hitTarget.killedBy = this;
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
}
x++;
}
}
if (justBounced != 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , this._rotation);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Pebble");
_global.MakeNoise("GrindRumble", 1.2);
debrisNum = int(Math.random() * 5) + 4;
x = 0;
while (x < debrisNum) {
if ((int(Math.random() * 3) + 1) != 1) {
rockType = "_root.Stone";
} else {
rockType = "_root.MoltenStone";
}
RockName = (this._name + "Stone") + int(Math.random() * 1000);
duplicateMovieClip (eval (rockType), RockName, _global.effectDepth++);
RockName = "_root." + RockName;
if ((int(Math.random() * 2) + 1) == 1) {
setProperty(RockName, _rotation , this._rotation + (int(Math.random() * 40) + 70));
} else {
setProperty(RockName, _rotation , this._rotation - (int(Math.random() * 40) + 70));
}
rockScale = int(Math.random() * 40) + 40;
setProperty(RockName, _x , impactPointX);
setProperty(RockName, _xscale , rockScale);
setProperty(RockName, _y , impactPointY);
setProperty(RockName, _yscale , rockScale);
x++;
}
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
}
} else {
justBounced--;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 1986 MovieClip "FuzzPuff" in Frame 7
onClipEvent (load) {
if (_name == "FuzzPuff") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 31) {
stop();
_alpha = (_alpha - 5);
if (_alpha <= 0) {
this.removeMovieClip();
}
}
}
Instance of Symbol 2027 MovieClip "SmallFire" in Frame 7
onClipEvent (load) {
if (_name != "SmallFire") {
framesExisted = 0;
putOut = false;
} else {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "SmallFire") {
if ((_currentframe == 60) && (framesExisted < 150)) {
gotoAndPlay (20);
}
if ((_currentframe > 19) && (_currentframe < 61)) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
putOut = true;
}
}
}
if (_root.HeroPointer.hitTest(_x, _y, true)) {
putOut = true;
} else {
x = 0;
while (x < _global.Enemies.length) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if (eval (("_root." + hitTarget._name) + "Flame") == undefined) {
if ((hitTarget._name.slice(0, 7) == "Torchie") && (eval (("_root." + hitTarget._name) + "Goo") == undefined)) {
duplicateMovieClip (_root.Flames, hitTarget._name + "Flame", _global.capDepth++);
} else {
putOut = true;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Inkie") {
targetHazard.onFire = true;
} else {
putOut = true;
}
}
x++;
}
}
if (putOut) {
duplicateMovieClip (_root.WhiteSmoke, _name + "WSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "WSmoke")) {
_x = this._x;
_y = this._y;
}
removeMovieClip(this);
}
if (_currentframe == 87) {
duplicateMovieClip (_root.BlackSmoke, _name + "BSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "BSmoke")) {
_x = this._x;
_y = this._y;
}
}
if (_currentframe == 90) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2029 MovieClip "BlackSmoke" in Frame 7
onClipEvent (load) {
if (_name != "BlackSmoke") {
framesExisted = 0;
this._xscale = 30;
this._yscale = 30;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "BlackSmoke") {
if (framesExisted < 100) {
this._xscale++;
this._yscale++;
this._x = this._x + 0.5;
this._y = this._y - 0.5;
if (framesExisted > 89) {
this._alpha = this._alpha - 10;
}
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2031 MovieClip "WhiteSmoke" in Frame 7
onClipEvent (load) {
if (_name != "WhiteSmoke") {
framesExisted = 0;
this._xscale = 30;
this._yscale = 30;
this._rotation = int(Math.random() * 360) - 180;
}
}
onClipEvent (enterFrame) {
if (_name != "WhiteSmoke") {
if (framesExisted < 100) {
this._xscale++;
this._yscale++;
this._x = this._x + 0.5;
this._y = this._y - 0.5;
if (framesExisted > 89) {
this._alpha = this._alpha - 10;
}
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 920 MovieClip [Gloople Flame] "Flames" in Frame 7
onClipEvent (load) {
if (_name == "Flames") {
stop();
} else {
framesExisted = 0;
TorchieFlame = false;
hostObject = eval ("_root." + _name.slice(0, _name.length - 5));
if (hostObject._name.slice(0, 7) == "Torchie") {
TorchieFlame = true;
}
_global.MakeNoise("Lit");
}
}
onClipEvent (enterFrame) {
if (_name != "Flames") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
if ((_currentframe == 2) && (!TorchieFlame)) {
hostObject.speed = 2;
}
if ((_currentframe > 29) && (_currentframe < 101)) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (_global.HeroAction != "flamed") {
if (_root.HeroPointerGoo == undefined) {
_global.HeroAction = "flamed";
}
}
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != hostObject._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if (eval (("_root." + hitTarget._name) + "Flame") == undefined) {
if (eval (("_root." + hitTarget._name) + "Goo") != undefined) {
} else if (hitTarget._name.slice(0, 7) == "Stickie") {
} else if (hitTarget._name.slice(0, 7) == "Grinder") {
} else if (hitTarget._name.slice(0, 4) == "Void") {
} else if (hitTarget._name.slice(0, 6) == "Horror") {
} else if (hitTarget._name.slice(0, 5) == "Queen") {
} else if (hitTarget._name.slice(0, 5) == "Razor") {
} else {
duplicateMovieClip (_root.Flames, hitTarget._name + "Flame", _global.capDepth++);
GloopleFire = eval (("_root." + hitTarget._name) + "Flame");
if ((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) {
with (GloopleFire) {
_xscale = 170;
_yscale = 170;
}
} else if (hitTarget._name.slice(0, 7) == "Clutter") {
with (GloopleFire) {
_xscale = hitTarget._xscale;
_yscale = hitTarget._yscale;
}
} else if (hitTarget._name.slice(0, 7) == "Amalgam") {
with (GloopleFire) {
_xscale = hitTarget._xscale + 70;
_yscale = hitTarget._yscale + 70;
}
}
}
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Inkie") {
targetHazard.onFire = true;
} else {
duplicateMovieClip (_root.WhiteSmoke, _name + "WSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "WSmoke")) {
_x = this._x;
_y = this._y;
}
removeMovieClip(this);
}
}
x++;
}
}
if ((_currentframe == 100) && (TorchieFlame)) {
gotoAndPlay (30);
}
if ((_currentframe == 100) && (!TorchieFlame)) {
hostObject.gotoAndStop(1);
duplicateMovieClip (_root.GloopleBurn, hostObject._name + "GloopleBurn", _global.capDepth++);
}
if (_currentframe == 130) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2184 MovieClip "BigFire" in Frame 7
onClipEvent (load) {
if (_name != "BigFire") {
framesExisted = 0;
putOut = false;
smokies = 0;
flameSound = new Sound(this);
flameSound.attachSound("BigFire");
flameSound.start(0, 5);
} else {
stop();
}
}
onClipEvent (unload) {
flameSound.stop();
}
onClipEvent (enterFrame) {
if (_name != "BigFire") {
if ((_currentframe == 121) && (framesExisted < 300)) {
gotoAndPlay (41);
}
if (int(framesExisted / 20) == (framesExisted / 20)) {
duplicateMovieClip (_root.BlackSmoke, (_name + "Smoke") + smokies, _global.capDepth++);
with (eval ((("_root." + _name) + "Smoke") + smokies)) {
_x = (this._x + int(Math.random() * 40)) + 10;
_y = (this._y + int(Math.random() * 40)) - 70;
}
smokies++;
}
if ((_currentframe > 40) && (_currentframe < 122)) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
if (_global.HeroAction != "flamed") {
if (_root.HeroPointerGoo == undefined) {
_global.HeroAction = "flamed";
}
}
} else {
x = 0;
while (x < _global.Enemies.length) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if (eval (("_root." + hitTarget._name) + "Flame") == undefined) {
if (eval (("_root." + hitTarget._name) + "Goo") != undefined) {
} else if (hitTarget._name.slice(0, 7) == "Stickie") {
} else if (hitTarget._name.slice(0, 7) == "Grinder") {
} else if (hitTarget._name.slice(0, 6) == "Horror") {
} else if (hitTarget._name.slice(0, 4) == "Void") {
} else if (hitTarget._name.slice(0, 5) == "Queen") {
} else if (hitTarget._name.slice(0, 5) == "Razor") {
} else {
duplicateMovieClip (_root.Flames, hitTarget._name + "Flame", _global.capDepth++);
GloopleFire = eval (("_root." + hitTarget._name) + "Flame");
if ((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) {
with (GloopleFire) {
_xscale = 170;
_yscale = 170;
}
} else if (hitTarget._name.slice(0, 7) == "Clutter") {
with (GloopleFire) {
_xscale = hitTarget._xscale;
_yscale = hitTarget._yscale;
}
} else if (hitTarget._name.slice(0, 7) == "Amalgam") {
with (GloopleFire) {
_xscale = hitTarget._xscale + 70;
_yscale = hitTarget._yscale + 70;
}
}
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Inkie") {
targetHazard.onFire = true;
} else {
putOut = true;
x = 1;
while (x < 5) {
duplicateMovieClip (_root.WhiteSmoke, (_name + "WSmoke") + x, _global.capDepth++);
with (eval ((("_root." + _name) + "WSmoke") + x)) {
_x = (this._x + int(Math.random() * 40)) + 10;
_y = (this._y + int(Math.random() * 40)) - 70;
}
x++;
}
gotoAndPlay (122);
}
}
x++;
}
}
if ((_currentframe == 160) || ((_currentframe == 25) && (!putOut))) {
x = 1;
while (x < 5) {
duplicateMovieClip (_root.BlackSmoke, (_name + "BSmoke") + x, _global.capDepth++);
with (eval ((("_root." + _name) + "BSmoke") + x)) {
_x = (this._x + int(Math.random() * 40)) + 10;
_y = (this._y + int(Math.random() * 40)) - 70;
}
x++;
}
}
if (_currentframe == 170) {
removeMovieClip(this);
flameSound.stop();
}
framesExisted++;
}
}
Instance of Symbol 2307 MovieClip "HeroFlaming" in Frame 7
onClipEvent (load) {
if (_name == "HeroFlaming") {
stop();
} else {
framesExisted = 0;
putOut = false;
smokies = 0;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroFlaming") {
if ((eval (_root.HeroPointer) == undefined) && (_currentframe < 92)) {
removeMovieClip(this);
}
if (eval (_root.HeroPointer) != undefined) {
_x = _root.HeroPointer._x;
_y = _root.HeroPointer._y;
_rotation = _root.HeroPointer._rotation;
}
if ((_currentframe > 30) && (_currentframe < 92)) {
if (int(framesExisted / 20) == (framesExisted / 20)) {
duplicateMovieClip (_root.BlackSmoke, (_name + "Smoke") + smokies, _global.capDepth++);
with (eval ((("_root." + _name) + "Smoke") + smokies)) {
_x = this._x;
_y = this._y;
}
smokies++;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != hostObject._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
if (eval (("_root." + hitTarget._name) + "Flame") == undefined) {
if (eval (("_root." + hitTarget._name) + "Goo") != undefined) {
} else if (hitTarget._name.slice(0, 7) == "Stickie") {
} else if (hitTarget._name.slice(0, 7) == "Grinder") {
} else {
duplicateMovieClip (_root.Flames, hitTarget._name + "Flame", _global.capDepth++);
GloopleFire = eval (("_root." + hitTarget._name) + "Flame");
if ((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) {
with (GloopleFire) {
_xscale = 170;
_yscale = 170;
}
}
}
}
}
}
x++;
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Inkie") {
targetHazard.onFire = true;
} else {
p = 1;
while (p < 4) {
duplicateMovieClip (_root.WhiteSmoke, (_name + "WSmoke") + p, _global.capDepth++);
with (eval ((("_root." + _name) + "WSmoke") + p)) {
_x = this._x;
_y = this._y;
}
p++;
}
_global.HeroAction = "none";
removeMovieClip(this);
}
}
x++;
}
}
if ((_currentframe == 91) && (framesExisted < 200)) {
gotoAndPlay (31);
}
if (_currentframe == 92) {
if (!putOut) {
_global.HeroAction = "burned";
}
}
if (_currentframe == 130) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2330 MovieClip "HeroBurn" in Frame 7
onClipEvent (load) {
if (_name == "HeroBurn") {
stop();
}
}
onClipEvent (enterFrame) {
if (_currentframe == 81) {
duplicateMovieClip (_root.BlackSmoke, _name + "BSmoke", _global.capDepth++);
with (eval (("_root." + _name) + "BSmoke")) {
_x = this._x;
_y = this._y;
}
}
if (_currentframe == 121) {
stop();
}
}
Instance of Symbol 733 MovieClip "VoidEater" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "VoidEater") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("exploded", this.getExploded, null);
speed = 1;
turnSpeed = 1;
action = "none";
proximity = false;
chargedUp = 0;
pulseDown = 0;
exploded = false;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
if (SearchArray(EnemiesSeen, "VoidEater") == null) {
EnemiesSeen.push("VoidEater");
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (exploded) {
exploded = false;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(8589215);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 50;
if (SearchArray(EnemiesKilled, "VoidEater") == null) {
EnemiesKilled.push("VoidEater");
}
removeMovieClip(eval (myDim));
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
hitTarget.killedBy = this;
}
}
x++;
}
}
if (killedBy != null) {
if ((((killedBy._name.slice(0, 5) == "Sharp") || (killedBy._name.slice(0, 7) == "Grinder")) || (killedBy.exploded)) || (killedBy.claw)) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(8589215);
_global.MakeNoise("Splat");
removeMovieClip(eval (myDim));
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
proximity = false;
if ((action == "none") || (action == "grav")) {
toHazardX = _x - _root.HeroPointer._x;
toHazardY = _y - _root.HeroPointer._y;
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 120) {
proximity = true;
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hazTarget = eval ("_root." + _global.Enemies[x]);
toHazardX = _x - hazTarget._x;
toHazardY = _y - hazTarget._y;
if (Math.sqrt((toHazardX * toHazardX) + (toHazardY * toHazardY)) <= 50) {
proximity = true;
}
}
x++;
}
}
if ((((action == "none") && (eval (_root.HeroPointer) != undefined)) && (!proximity)) && (_currentframe < 71)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 200) {
if ((Math.abs(_rotation - targetRotation) < 20) && (int(Math.random() * 10) == 1)) {
gotoAndPlay (81);
}
}
}
if ((((action == "none") && (!proximity)) && (int(Math.random() * 60) == 1)) && (_currentframe < 71)) {
action = "grav";
gotoAndPlay (71);
}
if ((proximity && (_currentframe < 71)) && (pulseDown == 0)) {
action == "none";
gotoAndPlay (71);
}
if (_currentframe == 78) {
stop();
speed = 0;
turnspeed = 0;
if ((action == "none") || (action == "grav")) {
if (_xscale > 20) {
_xscale = (_xscale - 20);
_yscale = (_yscale - 20);
} else if (action == "none") {
action = "pulse";
pulseDown = 20;
exploded = true;
if (eval (("_root." + _name) + "Pulse") != undefined) {
removeMovieClip(_root.fakeBackdrop);
removeMovieClip(eval (("_root." + _name) + "Pulse"));
}
duplicateMovieClip (_root.VoidPulse, _name + "Pulse", _global.effectDepth++);
with (eval (("_root." + _name) + "Pulse")) {
_x = this._x;
_y = this._y;
}
_global.MakeNoise("VoidPulse");
if ((eval (_root.HeroPointer) != undefined) && (_global.justHit == null)) {
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 120) {
_global.justHit = this;
}
}
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
toTargetX = _x - hitTarget._x;
toTargetY = _y - hitTarget._y;
targetDirection = (-Math.atan2(toTargetX, toTargetY)) / (Math.PI/180);
if (Math.sqrt((toTargetX * toTargetX) + (toTargetY * toTargetY)) <= 150) {
hitTarget.killedBy = this;
}
}
x++;
}
} else if (action == "grav") {
if (eval (("_root." + _name) + "Spiral") == undefined) {
duplicateMovieClip (_root.VoidSpiral, _name + "Spiral", _global.effectDepth++);
with (eval (("_root." + _name) + "Spiral")) {
_x = this._x;
_y = this._y;
}
}
myDim = ("_root." + _name) + "Dim";
if (eval (myDim) == undefined) {
duplicateMovieClip (_root.Blackout, _name + "Dim", 6000);
with (eval (myDim)) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
_alpha = 20;
}
}
if (_root.HeroPointer != undefined) {
toMyX = _root.HeroPointer._x - _x;
toMyY = _root.HeroPointer._y - _y;
toMyDir = (-Math.atan2(toMyX, toMyY)) / (Math.PI/180);
_root.HeroPointer._y = _root.HeroPointer._y - (4 * Math.cos(toMyDir * (Math.PI/180)));
_root.HeroPointer._x = _root.HeroPointer._x + (4 * Math.sin(toMyDir * (Math.PI/180)));
}
x = 0;
while (x < _global.Enemies.length) {
if ((_global.Enemies[x] != _name) && (_global.Enemies[x].slice(0, 7) != "Grinder")) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if ((hitTarget._name.slice(0, 4) == "Gray") && (hitTarget.action != "none")) {
break;
}
toMyX = hitTarget._x - _x;
toMyY = hitTarget._y - _y;
toMyDir = (-Math.atan2(toMyX, toMyY)) / (Math.PI/180);
hitTarget._y = hitTarget._y - (4 * Math.cos(toMyDir * (Math.PI/180)));
hitTarget._x = hitTarget._x + (4 * Math.sin(toMyDir * (Math.PI/180)));
}
x++;
}
if (proximity && (pulseDown == 0)) {
removeMovieClip(eval (myDim));
removeMovieClip(eval (("_root." + _name) + "Spiral"));
action = "none";
}
}
} else if (action == "pulse") {
if (_xscale < 100) {
_xscale = (_xscale + 20);
_yscale = (_yscale + 20);
} else {
speed = 1;
turnSpeed = 1;
action = "none";
gotoAndPlay (1);
}
}
}
if (_currentframe == 107) {
if (chargedUp == 0) {
stop();
speed = 0;
turnSpeed = 0;
action = "charge";
chargePointY = _y - (20 * Math.cos(_rotation * (Math.PI/180)));
chargePointX = _x + (20 * Math.sin(_rotation * (Math.PI/180)));
myDim = ("_root." + _name) + "Dim";
if (eval (myDim) == undefined) {
duplicateMovieClip (_root.Blackout, _name + "Dim", 6000);
with (eval (myDim)) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
_alpha = 20;
}
}
chargedUp++;
} else if (chargedUp < 45) {
if (int(chargedUp / 5) == (chargedUp / 5)) {
chargeDir = (_rotation + int(Math.random() * 180)) - 90;
duplicateMovieClip (_root.VoidBall, (_name + "Charge") + chargedUp, _global.effectDepth++);
myCharge = eval ((("_root." + _name) + "Charge") + chargedUp);
with (myCharge) {
_y = chargePointY - (50 * Math.cos(chargeDir * (Math.PI/180)));
_x = chargePointX + (50 * Math.sin(chargeDir * (Math.PI/180)));
_rotation = chargeDir - 180;
}
}
chargedUp++;
} else {
removeMovieClip(eval (myDim));
chargedUp = 0;
play();
}
}
if (_currentframe == 109) {
stop();
if (action == "charge") {
duplicateMovieClip (_root.VoidBeam, _name + "Beam", _global.effectDepth++);
myBeam = eval (("_root." + _name) + "Beam");
with (myBeam) {
_y = this._y - (10 * Math.cos(this._rotation * (Math.PI/180)));
_x = this._x + (10 * Math.sin(this._rotation * (Math.PI/180)));
_rotation = this._rotation;
_yscale = 4000;
}
action = "shoot";
} else if (eval (myBeam) == undefined) {
speed = 1;
turnSpeed = 1;
action = "none";
play();
}
}
if (_currentframe == 70) {
gotoAndPlay (11);
}
if (_currentframe == 117) {
gotoAndPlay (1);
}
if (pulseDown > 0) {
pulseDown--;
}
}
}
Instance of Symbol 2334 MovieClip "GrayGlom" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "GrayGlom") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 1;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 1;
duplicateMovieClip (_root.Gray, "Gray" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Gray" + _name.slice(4));
with (eval ("_root.Gray" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
_global.MakeNoise("Splat");
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 170);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 170);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(9803157);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._x;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
hitTarget.killedBy = this;
}
}
x++;
}
}
if (justBounced != 0) {
BoingNoise = new Sound();
BoingNoise.attachSound("Boing Sound");
BoingNoise.onSoundComplete = function () {
BoingNoise.stop();
};
BoingNoise.start();
if (_x > bouncedOffX) {
gotoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
gotoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
gotoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
gotoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (gotoSpotX > 275) {
gotoSpotX = 555;
} else {
gotoSpotX = -5;
}
} else if (gotoSpotY > 200) {
gotoSpotY = 405;
} else {
gotoSpotY = -5;
}
}
} else {
justBounced--;
}
if (justBounced > 0) {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_currentframe == 31) {
duplicateMovieClip (_root.VoidEater, "VoidEater" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("VoidEater" + _name.slice(4));
with (eval ("_root.VoidEater" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 2336 MovieClip "VoidPulse" in Frame 7
onClipEvent (load) {
if (_name != "VoidPulse") {
framesExisted = 0;
duplicateMovieClip (_root.Backdrop, "fakeBackdrop", _global.backgroundDepth++);
_root.fakeBackdrop._xscale = 105;
_root.fakeBackdrop._yscale = 105;
_root.fakeBackdrop.setMask(this);
}
}
onClipEvent (enterFrame) {
if (_name != "VoidPulse") {
if (framesExisted < 30) {
this._xscale = this._xscale + 60;
this._yscale = this._yscale + 60;
} else {
removeMovieClip(_root.fakeBackdrop);
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2338 MovieClip "VoidSpiral" in Frame 7
onClipEvent (load) {
if (_name != "VoidSpiral") {
_alpha = 50;
voidSound = new Sound(this);
voidSound.attachSound("VoidField");
voidSound.start(0, 15);
}
}
onClipEvent (unload) {
voidSound.stop();
}
onClipEvent (enterFrame) {
if (_name != "VoidSpiral") {
_rotation = (_rotation+1);
}
}
Instance of Symbol 2340 MovieClip "VoidBall" in Frame 7
onClipEvent (load) {
if (_name != "VoidBall") {
framesExisted = 0;
_global.MakeNoise("VoidCharge");
}
}
onClipEvent (enterFrame) {
if (_name != "VoidBall") {
if (framesExisted < 20) {
_xscale = (_xscale - 5);
_yscale = (_yscale - 5);
_y = (_y - (3 * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (3 * Math.sin(_rotation * (Math.PI/180))));
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2344 MovieClip "VoidBeam" in Frame 7
onClipEvent (load) {
if (_name != "VoidBeam") {
framesExisted = 0;
hostObject = eval ("_root." + _name.slice(0, _name.length - 4));
beamSound = new Sound(this);
beamSound.attachSound("VoidBeam");
beamSound.start(0, 3);
} else {
stop();
}
}
onClipEvent (unload) {
beamSound.stop();
}
onClipEvent (enterFrame) {
if (_name != "VoidBeam") {
if (eval (hostObject) == undefined) {
removeMovieClip(this);
}
if (framesExisted < 90) {
if (_root.HeroPointer != undefined) {
movingForward = true;
dragToX = _x;
dragToY = _y;
testAtX = _x + (20 * Math.sin(_rotation * (Math.PI/180)));
testAtY = _y - (20 * Math.cos(_rotation * (Math.PI/180)));
m = 0;
while (m < 15) {
dragDifX = dragToX - _root.HeroPointer._x;
dragDifY = dragToY - _root.HeroPointer._y;
dragToDist = Math.sqrt((dragDifX * dragDifX) + (dragDifY * dragDifY));
testDifX = testAtX - _root.HeroPointer._x;
testDifY = testAtY - _root.HeroPointer._y;
testAtDist = Math.sqrt((testDifX * testDifX) + (testDifY * testDifY));
if (testAtDist < dragToDist) {
dragToX = testAtX;
dragToY = testAtY;
if (movingForward) {
testAtX = testAtX + (20 * Math.sin(_rotation * (Math.PI/180)));
testAtY = testAtY - (20 * Math.cos(_rotation * (Math.PI/180)));
} else {
testAtX = testAtX + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = testAtY - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
}
} else if (movingForward && (dragToX == _x)) {
movingForward = false;
testAtX = _x + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = _y - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
} else {
m = 20;
}
if (!hitTest(testAtX, testAtY, true)) {
if (movingForward && (dragToX == _x)) {
movingForward = false;
testAtX = _x + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = _y - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
} else {
m = 20;
}
}
m++;
}
toMyX = _root.HeroPointer._x - dragToX;
toMyY = _root.HeroPointer._y - dragToY;
toMyDir = (-Math.atan2(toMyX, toMyY)) / (Math.PI/180);
_root.HeroPointer._y = _root.HeroPointer._y - (6 * Math.cos(toMyDir * (Math.PI/180)));
_root.HeroPointer._x = _root.HeroPointer._x + (6 * Math.sin(toMyDir * (Math.PI/180)));
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = hostObject;
duplicateMovieClip (_root.HeroDisintigrate, "HeroDisInt", _global.effectDepth++);
with (_root.HeroDisInt) {
_x = _root.HeroPointer._x;
_y = _root.HeroPointer._y;
_rotation = toMyDir;
}
}
}
x = 0;
while (x < _global.Enemies.length) {
if ((_global.Enemies[x] != hostObject._name) && (_global.Enemies[x].slice(0, 7) != "Grinder")) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if ((hitTarget._name.slice(0, 4) == "Gray") && (hitTarget.action != "none")) {
break;
}
movingForward = true;
dragToX = _x;
dragToY = _y;
testAtX = _x + (20 * Math.sin(_rotation * (Math.PI/180)));
testAtY = _y - (20 * Math.cos(_rotation * (Math.PI/180)));
m = 0;
while (m < 15) {
dragDifX = dragToX - hitTarget._x;
dragDifY = dragToY - hitTarget._y;
dragToDist = Math.sqrt((dragDifX * dragDifX) + (dragDifY * dragDifY));
testDifX = testAtX - hitTarget._x;
testDifY = testAtY - hitTarget._y;
testAtDist = Math.sqrt((testDifX * testDifX) + (testDifY * testDifY));
if (testAtDist < dragToDist) {
dragToX = testAtX;
dragToY = testAtY;
if (movingForward) {
testAtX = testAtX + (20 * Math.sin(_rotation * (Math.PI/180)));
testAtY = testAtY - (20 * Math.cos(_rotation * (Math.PI/180)));
} else {
testAtX = testAtX + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = testAtY - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
}
} else if (movingForward && (dragToX == _x)) {
movingForward = false;
testAtX = _x + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = _y - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
} else {
m = 20;
}
if (!hitTest(testAtX, testAtY, true)) {
if (movingForward && (dragToX == _x)) {
movingForward = false;
testAtX = _x + (20 * Math.sin((_rotation - 180) * (Math.PI/180)));
testAtY = _y - (20 * Math.cos((_rotation - 180) * (Math.PI/180)));
} else {
m = 20;
}
}
m++;
}
toMyX = hitTarget._x - dragToX;
toMyY = hitTarget._y - dragToY;
toMyDir = (-Math.atan2(toMyX, toMyY)) / (Math.PI/180);
if (((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) || ((hitTarget._name.slice(0, 6) == "Horror") && (hitTarget.action != "collect"))) {
hitTarget._y = hitTarget._y - (2 * Math.cos(toMyDir * (Math.PI/180)));
hitTarget._x = hitTarget._x + (2 * Math.sin(toMyDir * (Math.PI/180)));
} else {
hitTarget._y = hitTarget._y - (6 * Math.cos(toMyDir * (Math.PI/180)));
hitTarget._x = hitTarget._x + (6 * Math.sin(toMyDir * (Math.PI/180)));
}
if (hitTest(hitTarget._x, hitTarget._y, true)) {
duplicateMovieClip (_root.GloopleDisintigrate, hitTarget._name + "DisInt", _global.effectDepth++);
with (eval (("_root." + hitTarget._name) + "DisInt")) {
_x = hitTarget._x;
_y = hitTarget._y;
_rotation = toMyDir;
if (((hitTarget._name.slice(0, 5) == "Oozle") || (hitTarget._name.slice(0, 4) == "Gray")) || ((hitTarget._name.slice(0, 6) == "Horror") && (hitTarget.action != "collect"))) {
_xscale = 170;
_yscale = 170;
}
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, hitTarget._name), 1);
removeMovieClip(hitTarget);
}
}
x++;
}
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2380 MovieClip "GloopleDisintigrate" in Frame 7
onClipEvent (load) {
if (_name == "GloopleDisintigrate") {
stop();
} else {
_global.MakeNoise("Disintigrate");
}
}
onClipEvent (enterFrame) {
if (_name != "GloopleDisintigrate") {
if (_currentframe == 45) {
removeMovieClip(this);
}
}
}
Instance of Symbol 2402 MovieClip "HeroDisintigrate" in Frame 7
onClipEvent (load) {
if (_name == "HeroDisintigrate") {
stop();
} else {
_global.MakeNoise("Disintigrate");
}
}
onClipEvent (enterFrame) {
if (_name != "HeroDisintigrate") {
if (_currentframe == 38) {
removeMovieClip(this);
}
}
}
Instance of Symbol 2422 MovieClip "BiterGlom" in Frame 7
onClipEvent (load) {
mommy = false;
justBounced = 0;
if (_name == "BiterGlom") {
mommy = true;
stop();
}
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
speed = 1;
}
onClipEvent (enterFrame) {
if (!mommy) {
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
SplatName = ("_root." + this._name) + "Splat2";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat2", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x + 10);
setProperty(SplatName, _y , this._y + 10);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 16;
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (killedBy != null) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killdir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(2781657);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (justBounced == 0) {
if (_root.HeroPointer.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = _root.HeroPointer._x;
bouncedOffY = _root.HeroPointer._x;
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTarget.hitTest(_x, _y, true)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
}
if (justBounced != 0) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
gotoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
gotoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
gotoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
gotoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (gotoSpotX > 275) {
gotoSpotX = 555;
} else {
gotoSpotX = -5;
}
} else if (gotoSpotY > 200) {
gotoSpotY = 405;
} else {
gotoSpotY = -5;
}
}
} else {
justBounced--;
}
if (justBounced > 0) {
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
_rotation = targetRotation;
}
if ((((_y > -6) && (_x > -6)) && (_y < 406)) && (_x < 556)) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
} else {
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
if (_currentframe == 31) {
duplicateMovieClip (_root.Horror, "Horror" + _name.slice(4), _global.baddieDepth++);
_global.Enemies.push("Horror" + _name.slice(4));
with (eval ("_root.Horror" + _name.slice(4))) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
Instance of Symbol 528 MovieClip "Queen" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "Queen") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("wisps", this.getWisps, this.setWisps);
this.addProperty("larva", this.getLarva, this.setLarva);
speed = 3;
turnSpeed = 4;
justBounced = 0;
justSwung = 0;
stop();
action = "prowl";
lungeFrames = 0;
larva = 0;
_global.QueenRevive = false;
LeftClaw = null;
RightClaw = null;
wisps = 0;
wispCounter = 0;
wigglers = 0;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
duplicateMovieClip (_root.QueenClaw, _name + "ClawL", _global.baddieDepth++);
LeftClaw = eval (("_root." + _name) + "ClawL");
ClawRotation = _rotation - 135;
with (LeftClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
duplicateMovieClip (_root.QueenClaw, _name + "ClawR", _global.baddieDepth++);
RightClaw = eval (("_root." + _name) + "ClawR");
ClawRotation = _rotation + 135;
with (RightClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (action != "lunge") {
turnSpeed = 4;
if (eval (_root.HeroPointer) != undefined) {
toHero = Math.sqrt((delta_x * delta_x) + (delta_y * delta_y));
if (toHero <= 150) {
speed = 2;
if (toHero <= 100) {
speed = 1;
if (toHero <= 50) {
speed = 0.5;
}
}
} else {
speed = 3;
}
} else {
speed = 3;
}
} else {
speed = 10;
turnSpeed = 0;
lungeFrames++;
}
if ((wisps < 10) && (int(Math.random() * 5) == 1)) {
duplicateMovieClip (_root.QueenWisp, (_name + "Wisp") + wispCounter, _global.effectDepth++);
wisps++;
wispCounter++;
if (wispCounter == 10) {
wispCounter = 0;
}
}
if (int(Math.random() * 20) == 1) {
duplicateMovieClip (_root.QueenWiggler, (_name + "Wiggler") + wigglers, _global.effectDepth++);
with (eval ((("_root." + _name) + "Wiggler") + wigglers)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
}
wigglers++;
}
if ((larva < 5) && (int(Math.random() * 100) == 1)) {
LarvaName = null;
useNum = 0;
while (useNum < 10) {
if (eval ((("_root." + _name) + "Larva") + useNum) == undefined) {
LarvaName = (_name + "Larva") + useNum;
break;
}
useNum++;
}
if (LarvaName == null) {
} else {
duplicateMovieClip (_root.QueenLarva, LarvaName, _global.markDepth++);
with (eval ("_root." + LarvaName)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
}
larva++;
_global.MakeNoise("LarvaSpawn");
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206129);
_global.MakeNoise("Splat");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 75;
if (SearchArray(EnemiesKilled, "Queen") == null) {
EnemiesKilled.push("Queen");
}
_visible = false;
_global.QueenRevive = true;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, false)) {
_global.justHit = this;
justBounced = 8;
bouncedOffX = HeroPointer._x;
bouncedOffY = HeroPointer._y;
} else if (justBounced == 0) {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, false)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
} else if (justBounced == 8) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
justBounced--;
} else {
justBounced--;
}
if (killedBy != null) {
if ((((killedBy._name.slice(0, 7) == "Grinder") || (killedBy.exploded)) || (killedBy._name.slice(0, 6) == "Horror")) || (killedBy._name.slice(0, 5) == "Razor")) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206129);
_global.MakeNoise("Splat");
_visible = false;
_global.QueenRevive = true;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
killedBy = null;
}
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
if (((action == "prowl") || (action == "swing")) && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 100)) {
if (((_global.HeroAction == "attacking") && (_currentframe == 1)) && (_root.HeroSlashin._currentframe < 14)) {
action = "dodge";
gotoAndPlay (1);
}
if (((justSwung == 0) && (eval (_root.HeroPointer) != undefined)) && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 20)) {
action = "dodge";
gotoAndPlay (1);
}
}
if ((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 100)) {
if ((Math.abs(_rotation - targetRotation) < 100) && (justSwung == 0)) {
if ((int(Math.random() * 2) == 1) && (Math.abs(_rotation - LeftClaw._rotation) < 20)) {
LeftClaw.action = "swipe";
action = "swing";
justSwung = justSwung + (int(Math.random() * 50) + 15);
_global.MakeNoise("Swing");
} else if (Math.abs(_rotation - RightClaw._rotation) < 20) {
RightClaw.action = "swipe";
action = "swing";
justSwung = justSwung + (int(Math.random() * 50) + 15);
_global.MakeNoise("Swing");
}
}
}
if ((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 300)) {
if ((Math.abs(_rotation - targetRotation) < 50) && (justSwung == 0)) {
if ((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 100) && (_global.HeroAction != "attacking")) {
if ((int(Math.random() * 2) == 1) && (Math.abs(_rotation - LeftClaw._rotation) < 20)) {
LeftClaw.action = "swipe";
action = "lunge";
justSwung = justSwung + (int(Math.random() * 60) + 25);
_rotation = (_rotation - 10);
_global.MakeNoise("Swing");
} else if (Math.abs(_rotation - RightClaw._rotation) < 20) {
RightClaw.action = "swipe";
action = "lunge";
justSwung = justSwung + (int(Math.random() * 60) + 25);
_rotation = (_rotation + 10);
_global.MakeNoise("Swing");
}
}
}
}
if (justSwung > 0) {
justSwung--;
}
if ((action == "prowl") || (action == "lunge")) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
} else if (action == "dodge") {
_rotation = targetRotation;
_y = (_y - (12 * Math.cos((_rotation + 180) * (Math.PI/180))));
_x = (_x + (12 * Math.sin((_rotation + 180) * (Math.PI/180))));
}
if (lungeFrames == 10) {
action = "swing";
lungeFrames = 0;
}
if (_currentframe == 10) {
action = "prowl";
}
if (_currentframe == 30) {
gotoAndStop (1);
}
}
}
Instance of Symbol 2425 MovieClip "QueenClaw" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "QueenClaw") {
mommy = true;
stop();
} else {
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("claw", this.getClaw, null);
claw = true;
killedBy = null;
beenDead = 0;
action = "none";
turnSpeed = 4;
speedBoost = 0;
Right = false;
sLoc = 0;
swipeFrames = 0;
stop();
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 5));
gotoAndStop (1);
moveDirection = _rotation;
justStruck = 0;
if (_name.slice(_name.length - 1, _name.length) == "R") {
Right = true;
_xscale = -100;
}
duplicateMovieClip (_root.QueenArm, _name + "Arm", _global.baddieDepth++);
myArm = eval (("_root." + _name) + "Arm");
with (myArm) {
_y = this._y;
_x = this._x;
_rotation = this._rotation;
}
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (beenDead == 0)) {
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (justStruck > 0) {
justStruck--;
}
deltaQ_x = _x - mommyQueen._x;
deltaQ_y = _y - mommyQueen._y;
toQueen = Math.sqrt((deltaQ_x * deltaQ_x) + (deltaQ_y * deltaQ_y));
speed = int(toQueen / 10);
if (action == "swipe") {
speed = 7;
swipeFrames++;
}
if (mommyQueen.action == "lunge") {
speed = 12;
}
if ((action == "none") || ((action == "pull") && (toQueen > 50))) {
if (Right) {
zoneOff = mommyQueen._rotation + (int(Math.random() * 90) + 45);
} else {
zoneOff = mommyQueen._rotation - (int(Math.random() * 90) + 45);
}
gotoSpotX = mommyQueen._x + ((int(Math.random() * 10) + 10) * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = mommyQueen._y - ((int(Math.random() * 10) + 10) * Math.cos(zoneOff * (Math.PI/180)));
action = "pull";
} else if (action == "swipe") {
if (!Right) {
if (sLoc == 0) {
swipeRot = mommyQueen._rotation + 90;
} else {
swipeRot = mommyQueen._rotation;
}
} else if (sLoc == 0) {
swipeRot = mommyQueen._rotation - 90;
} else {
swipeRot = mommyQueen._rotation;
}
gotoSpotX = mommyQueen._x + (30 * Math.sin(swipeRot * (Math.PI/180)));
gotoSpotY = mommyQueen._y - (30 * Math.cos(swipeRot * (Math.PI/180)));
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true)) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
moveDirection = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
speedBoost = 3;
justStruck = 5;
if (action == "swipe") {
action = "none";
sLoc = 0;
swipeFrames = 0;
mommyQueen.action = "prowl";
}
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
moveDirection = moveDirection - 180;
speedBoost = 3;
justStruck = 5;
if (action == "swipe") {
action = "none";
sLoc = 0;
swipeFrames = 0;
mommyQueen.action = "prowl";
}
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard.hitTest(_x, _y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (justStruck == 0) {
moveDirection = targetRotation;
}
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
if (mommyQueen._currentframe != 1) {
turnSpeed = 30;
} else {
turnSpeed = 4;
}
if (beenDead == 0) {
if (action != "swipe") {
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
} else if (Right) {
_rotation = (_rotation + 15);
} else {
_rotation = (_rotation - 15);
}
}
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 5) {
if (action == "swipe") {
if (sLoc < 2) {
sLoc++;
} else if (swipeFrames >= 17) {
action = "none";
sLoc = 0;
swipeFrames = 0;
mommyQueen.action = "prowl";
}
} else {
action = "none";
}
}
if (((mommyQueen.action != "swing") && (mommyQueen.action != "lunge")) && (action == "swipe")) {
action = "none";
sLoc = 0;
swipeFrames = 0;
}
armRotate = (-Math.atan2(deltaQ_x, deltaQ_y)) / (Math.PI/180);
if (eval (mommyQueen) != undefined) {
with (myArm) {
_x = this._x + ((toQueen / 2) * Math.sin(armRotate * (Math.PI/180)));
_y = this._y - ((toQueen / 2) * Math.cos(armRotate * (Math.PI/180)));
}
}
if (eval (mommyQueen) == undefined) {
SplatName = ("_root." + myArm._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), myArm._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , int(Math.random() * 360) - 179);
setProperty(SplatName, _x , myArm._x);
setProperty(SplatName, _xscale , 60);
setProperty(SplatName, _y , myArm._y);
setProperty(SplatName, _yscale , 60);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
_global.MakeNoise("LilSplat");
myArm.removeMovieClip();
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation - 130);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(16206387);
if (action == "swipe") {
turnSpeed = 15;
}
if (_rotation > targetRotation) {
turnSpeed = turnSpeed * -1;
}
if (speed > 15) {
speed = 15;
}
beenDead++;
}
} else if (!mommy) {
gotoAndStop (2);
_rotation = (_rotation + turnSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
beenDead++;
if (speed > 0) {
speed = speed - 1;
} else {
speed = 0;
}
if (Math.abs(turnSpeed) > 0) {
if (turnSpeed > 0) {
turnSpeed = turnSpeed - 1;
}
if (turnSpeed < 0) {
turnSpeed = turnSpeed + 1;
}
} else {
turnSpeed = 0;
}
if (beenDead > 200) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
}
}
Instance of Symbol 943 MovieClip [Queen Wisp] "QueenWisp" in Frame 7
onClipEvent (load) {
if (_name == "QueenWisp") {
stop();
} else {
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 5));
whereOnSkin = int(Math.random() * 359) - 180;
if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
}
}
onClipEvent (enterFrame) {
if (_currentframe == 56) {
mommyQueen.wisps--;
removeMovieClip(this);
} else if (_name != "QueenWisp") {
if (eval (mommyQueen) == undefined) {
removeMovieClip(this);
}
_rotation = (mommyQueen._rotation + whereOnSkin);
_x = (mommyQueen._x + (10 * Math.sin(_rotation * (Math.PI/180))));
_y = (mommyQueen._y - (10 * Math.cos(_rotation * (Math.PI/180))));
}
}
Instance of Symbol 2453 MovieClip "QueenWiggler" in Frame 7
onClipEvent (load) {
if (_name != "QueenWiggler") {
framesExisted = 0;
mySize = int(Math.random() * 50) + 50;
_rotation = (int(Math.random() * 360) - 180);
_xscale = mySize;
_yscale = mySize;
if (int(Math.random() * 2) == 1) {
_xscale = (_xscale * -1);
}
} else {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "QueenWiggler") {
if (framesExisted > 239) {
this._alpha = this._alpha - 10;
}
if (_alpha <= 0) {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2476 MovieClip "QueenSeed" in Frame 7
onClipEvent (load) {
if (_name == "QueenSeed") {
stop();
} else {
this.addProperty("mommyQueen", this.getMommyQueen, this.setMommyQueen);
stop();
hostObject = eval ("_root." + _name.slice(0, _name.length - 4));
}
}
onClipEvent (enterFrame) {
if (_name != "QueenSeed") {
if ((eval (hostObject) == undefined) && (_currentframe < 21)) {
removeMovieClip(this);
}
if (_currentframe < 21) {
_x = hostObject._x;
_y = hostObject._y;
_rotation = hostObject._rotation;
}
if (((eval (mommyQueen) == undefined) && (_global.QueenRevive == true)) && (eval (hostObject) != undefined)) {
play();
_global.QueenRevive = false;
_global.BossOnDeck = true;
_global.MakeNoise("QueenHatch");
}
if (_currentframe == 21) {
hostObject.killedBy = this;
}
if (_currentframe == 61) {
duplicateMovieClip (_root.Queen, "Queen" + _root.SpawnPoint.ChildCounter, _global.baddieDepth++);
mommyQueen = eval ("_root.Queen" + _root.SpawnPoint.ChildCounter);
_global.Enemies.push("Queen" + _root.SpawnPoint.ChildCounter);
_root.SpawnPoint.ChildCounter++;
with (mommyQueen) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
this.removeMovieClip();
}
}
}
Instance of Symbol 532 MovieClip "RazorQueen" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorQueen") {
mommy = true;
stop();
} else {
this.addProperty("speed", this.getSpeed, this.setSpeed);
this.addProperty("turnSpeed", this.getTurnSpeed, this.setTurnSpeed);
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("mode", this.getMode, this.setMode);
this.addProperty("larva", this.getLarva, this.setLarva);
this.addProperty("mites", this.getMites, this.setMites);
this.addProperty("hogs", this.getHogs, this.setHogs);
this.addProperty("miteCounter", this.getMiteCounter, this.setMiteCounter);
this.addProperty("teeth", this.getTeeth, this.setTeeth);
this.addProperty("health", this.getHealth, this.setHealth);
health = 5;
recoil = 0;
lilSplats = 0;
if (_global.RazorGlaiveEquipped) {
health = 2;
}
speed = 2;
turnSpeed = 2;
justBounced = 0;
justSwung = 0;
justSwitched = 300;
spinClockwise = true;
stop();
action = "prowl";
mode = "melee";
lungeFrames = 0;
larva = 0;
lashLag = 0;
mites = 0;
miteCounter = 10;
hogs = 10;
LeftForClaw = null;
RightForClaw = null;
LeftDuClaw = null;
RightDuClaw = null;
teeth = 0;
toothCounter = 10;
quillCounter = 10;
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
} else {
gotoSpotX = _x + 20;
gotoSpotY = _y + 20;
}
duplicateMovieClip (_root.RazorForClaw, _name + "FClawL", _global.baddieDepth++);
LeftForClaw = eval (("_root." + _name) + "FClawL");
ClawRotation = _rotation - 45;
with (LeftForClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
duplicateMovieClip (_root.RazorForClaw, _name + "FClawR", _global.baddieDepth++);
RightForClaw = eval (("_root." + _name) + "FClawR");
ClawRotation = _rotation + 45;
with (RightForClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
duplicateMovieClip (_root.RazorDuClaw, _name + "DClawL", _global.baddieDepth++);
LeftDuClaw = eval (("_root." + _name) + "DClawL");
ClawRotation = _rotation - 135;
with (LeftDuClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
duplicateMovieClip (_root.RazorDuClaw, _name + "DClawR", _global.baddieDepth++);
RightDuClaw = eval (("_root." + _name) + "DClawR");
ClawRotation = _rotation + 135;
with (RightDuClaw) {
_y = this._y - (20 * Math.cos(ClawRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(ClawRotation * (Math.PI/180)));
_rotation = this._rotation;
}
duplicateMovieClip (_root.RazorTail, _name + "Tail1", _global.baddieDepth++);
myTail = eval (("_root." + _name) + "Tail1");
TailRotation = _rotation + 180;
with (myTail) {
_y = this._y - (20 * Math.cos(TailRotation * (Math.PI/180)));
_x = this._x + (20 * Math.sin(TailRotation * (Math.PI/180)));
_rotation = this._rotation;
}
}
}
onClipEvent (enterFrame) {
if (!mommy) {
if (SearchArray(_global.Enemies, _name) == null) {
_global.Enemies.push(_name);
}
if (eval (_root.HeroPointer) != undefined) {
gotoSpotX = _root.HeroPointer._x;
gotoSpotY = _root.HeroPointer._y;
}
if (justSwitched > 0) {
justSwitched--;
}
if (recoil > 0) {
recoil--;
}
if (mode == "melee") {
if ((action == "prowl") || (action == "pause")) {
turnSpeed = 2;
if (eval (_root.HeroPointer) != undefined) {
toHero = Math.sqrt((delta_x * delta_x) + (delta_y * delta_y));
if (toHero <= 150) {
speed = 1;
if (toHero <= 100) {
speed = 0.5;
if (toHero <= 50) {
speed = 0.2;
}
}
} else {
speed = 2;
}
} else {
speed = 2;
}
} else if (action == "lunge") {
speed = 7;
turnSpeed = 0;
} else if (action == "lash") {
speed = 0;
turnSpeed = 4;
}
} else if (mode == "turret") {
speed = 0;
turnSpeed = 2;
} else {
speed = 0;
turnSpeed = 0;
}
if (((teeth < 10) && ((int(Math.random() * 20) == 1) && (mode == "melee"))) || ((int(Math.random() * 50) == 1) && (mode == "turret"))) {
duplicateMovieClip (_root.RazorTooth, (_name + "Tooth") + toothCounter, _global.capDepth++);
with (eval ((("_root." + _name) + "Tooth") + toothCounter)) {
_x = this._x;
_y = this._y;
_rotation = int(Math.random() * 359) - 180;
}
teeth++;
toothCounter++;
if (toothCounter == 80) {
toothCounter = 10;
}
}
if (((larva < 2) && (int(Math.random() * 400) == 1)) && (mode == "melee")) {
LarvaName = null;
useNum = 0;
while (useNum < 10) {
if (eval ((("_root." + _name) + "Larva") + useNum) == undefined) {
LarvaName = (_name + "Larva") + useNum;
break;
}
useNum++;
}
if (LarvaName == null) {
} else {
duplicateMovieClip (_root.RazorLarva, LarvaName, _global.effectDepth++);
with (eval ("_root." + LarvaName)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
}
larva++;
}
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (_root.HeroSwing.hittest(_x, _y, true) && (recoil == 0)) {
health--;
recoil = 20;
SplatName = (("_root." + this._name) + "Splat") + lilSplats;
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), (this._name + "Splat") + (lilSplats++), _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
if (health == 0) {
SplatName = ("_root." + this._name) + "BigSplat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "BigSplat", _global.effectDepth++);
setProperty(SplatName, _rotation , (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 130);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 130);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
_global.MakeNoise("Pop");
_global.MakeNoise("Splash");
duplicateMovieClip (_root.Bounty, _name + "Bounty", _global.markDepth++);
setProperty(("_root." + _name) + "Bounty", _x , this._x);
setProperty(("_root." + _name) + "Bounty", _y , this._y);
BountyObject = eval (("_root." + _name) + "Bounty");
BountyObject.bounty = 500;
if (SearchArray(EnemiesKilled, "RazorQueen") == null) {
EnemiesKilled.push("RazorQueen");
}
if (!_global.RazorGlaiveUnlocked) {
_global.RazorGlaiveUnlocked = true;
}
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
_global.MakeNoise("Slice");
struckTeeth = int(Math.random() * 4) + 3;
x = 1;
while (x <= struckTeeth) {
duplicateMovieClip ("_root.ShedTooth", (this._name + "sTooth") + x, _global.effectDepth++);
with (eval ((("_root." + _name) + "sTooth") + x)) {
_x = (this._x + int(Math.random() * 20)) - 10;
_y = (this._y + int(Math.random() * 20)) - 10;
_rotation = (_root.HeroPointer._rotation + int(Math.random() * 140)) + 70;
}
x++;
}
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, false)) {
if (justBounced == 0) {
_global.justHit = this;
justBounced = 8;
bouncedOffX = HeroPointer._x;
bouncedOffY = HeroPointer._y;
}
} else if (justBounced == 0) {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != _name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, false)) {
justBounced = 8;
bouncedOffX = hitTarget._x;
bouncedOffY = hitTarget._y;
break;
}
}
x++;
}
} else if (justBounced == 8) {
_global.MakeNoise("Boing");
if (_x > bouncedOffX) {
BouncetoSpotX = (int(Math.random() * (550 - _x)) + _x) + 20;
} else {
BouncetoSpotX = int(Math.random() * _x) - 19;
}
if (_y > bouncedOffY) {
BouncetoSpotY = (int(Math.random() * (400 - _y)) + _y) + 20;
} else {
BouncetoSpotY = int(Math.random() * _y) - 19;
}
delta_bounceX = Math.abs(_x - bouncedOffX);
delta_bounceY = Math.abs(_y - bouncedOffY);
if (delta_bounceX > delta_bounceY) {
if (BouncetoSpotX > 275) {
BouncetoSpotX = 555;
} else {
BouncetoSpotX = -5;
}
} else if (BouncetoSpotY > 200) {
BouncetoSpotY = 405;
} else {
BouncetoSpotY = -5;
}
_rotation = ((-Math.atan2(_x - BouncetoSpotX, _y - BouncetoSpotY)) / (Math.PI/180));
justBounced--;
} else {
justBounced--;
}
if (killedBy != null) {
if (((killedBy._name.slice(0, 7) == "Grinder") || (killedBy.exploded)) || (killedBy._name.slice(0, 6) == "Horror")) {
toKillX = _x - killedBy._x;
toKillY = _y - killedBy._y;
killDir = (-Math.atan2(toKillX, toKillY)) / (Math.PI/180);
killDir = killDir - 180;
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , killDir);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _y , this._y);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
_global.MakeNoise("Splat");
_visible = false;
_global.Enemies.splice(_root.SpawnPoint.SearchArray(_global.Enemies, _name), 1);
this.removeMovieClip();
} else {
killedBy = null;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (hitTest(targetHazard._x, targetHazard._y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (action != "lash") {
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
} else if (spinClockwise) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
if (mode == "turret") {
if (int(Math.random() * 20) == 1) {
duplicateMovieClip (_root.RazorQuill, (_name + "Quill") + quillCounter, _global.effectDepth++);
quillRotation = (targetRotation + int(Math.random() * 70)) - 35;
if (quillRotation > 180) {
quillRotation = quillRotation - 360;
}
if (quillRotation < 180) {
quillRotation = quillRotation + 360;
}
with (eval ((("_root." + _name) + "Quill") + quillCounter)) {
_x = this._x;
_y = this._y;
_rotation = quillRotation;
}
quillCounter++;
if (quillCounter == 80) {
quillCounter = 10;
}
}
}
if (((mode == "melee") && (action == "prowl")) && (justSwung == 0)) {
if (((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 100) && (int(Math.random() * 200) == 1)) && (justSwitched == 0)) {
LeftForClaw.action = "entrench";
RightForClaw.action = "entrench";
LeftDuClaw.action = "entrench";
RightDuClaw.action = "entrench";
mode = "turret";
action = "track";
justSwitched = 300;
}
} else if (((mode == "turret") && (action == "track")) && (eval (("_root." + _name) + "Maw") == undefined)) {
if (((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 100) && (int(Math.random() * 200) == 1)) && (justSwitched == 0)) {
LeftForClaw.action = "digup";
RightForClaw.action = "digup";
LeftDuClaw.action = "digup";
RightDuClaw.action = "digup";
mode = "melee";
action = "prowl";
justSwitched = 300;
}
}
if (eval (_root.HeroPointer) != undefined) {
if (mode == "turret") {
if ((((int(Math.random() * 250) == 1) && (mites < 2)) && (Math.abs(_rotation - targetRotation) < 45)) && (eval (("_root." + _name) + "Maw") == undefined)) {
duplicateMovieClip (_root.RazorMaw, _name + "Maw", _global.baddieDepth++);
myMaw = eval (("_root." + _name) + "Maw");
with (myMaw) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
myMaw.task = "mite";
_global.MakeNoise("Razor Spit");
}
Hedgehogs = 0;
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (targetHazard._name.slice(0, 5) == "Razor") {
Hedgehogs++;
}
x++;
}
if ((((int(Math.random() * 250) == 1) && (Math.abs(_rotation - targetRotation) < 45)) && (eval (("_root." + _name) + "Maw") == undefined)) && (Hedgehogs < 4)) {
duplicateMovieClip (_root.RazorMaw, _name + "Maw", _global.baddieDepth++);
myMaw = eval (("_root." + _name) + "Maw");
with (myMaw) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
myMaw.task = "hedgehog";
_global.MakeNoise("Razor Spit");
}
}
if (mode == "melee") {
if ((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 150)) {
if ((Math.abs(_rotation - targetRotation) < 45) && (justSwung == 0)) {
if ((_rotation > targetRotation) || ((_rotation == targetRotation) && (int(Math.random() * 2) == 0))) {
if (LeftForClaw.action == "none") {
LeftForClaw.action = "jab";
justSwung = justSwung + (int(Math.random() * 50) + 15);
_global.MakeNoise("Swing");
}
} else if (RightForClaw.action == "none") {
RightForClaw.action = "jab";
justSwung = justSwung + (int(Math.random() * 50) + 15);
_global.MakeNoise("Swing");
}
}
}
if ((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 180)) {
if ((Math.abs(_rotation - targetRotation) < 85) && (justSwung == 0)) {
if (((_rotation >= targetRotation) && (Math.abs(_rotation - LeftDuClaw._rotation) < 30)) && (LeftDuClaw.action == "none")) {
LeftDuClaw.action = "swipe";
justSwung = justSwung + (int(Math.random() * 40) + 35);
_global.MakeNoise("Swing");
} else if (((_rotation <= targetRotation) && (Math.abs(_rotation - RightDuClaw._rotation) < 30)) && (RightDuClaw.action == "none")) {
RightDuClaw.action = "swipe";
justSwung = justSwung + (int(Math.random() * 40) + 35);
_global.MakeNoise("Swing");
}
}
}
if (((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 150)) && (justSwung == 0)) {
if (((Math.abs(_rotation - targetRotation) > 50) && (justSwung == 0)) && (lashLag == 0)) {
if ((_rotation > targetRotation) || ((_rotation == targetRotation) && (int(Math.random() * 2) == 0))) {
spinClockwise = true;
action = "lash";
lashLag = 120;
} else {
spinClockwise = false;
action = "lash";
lashLag = 120;
}
}
}
if ((action == "prowl") && (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 225)) {
if ((Math.abs(_rotation - targetRotation) < 20) && (justSwung == 0)) {
if ((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 180) && (_global.HeroAction != "attacking")) {
if ((LeftForClaw.action == "none") && (RightForClaw.action == "none")) {
action = "pause";
LeftForClaw.action = "backswing";
RightForClaw.action = "backswing";
justSwung = justSwung + (int(Math.random() * 60) + 30);
lungeFrames = 0;
}
}
}
}
}
}
if (action == "pause") {
lungeFrames++;
if (lungeFrames == 21) {
action = "lunge";
lungeFrames = 0;
_global.MakeNoise("Swing");
}
} else if (action == "lunge") {
lungeFrames++;
if (lungeFrames == 21) {
action = "prowl";
lungeFrames = 0;
}
} else if (action == "lash") {
lungeFrames++;
if (lungeFrames == 91) {
action = "prowl";
lungeFrames = 0;
}
}
if (justSwung > 0) {
justSwung--;
}
if (lashLag > 0) {
lashLag--;
}
if ((action == "prowl") || (action == "lunge")) {
_y = (_y - (speed * Math.cos(_rotation * (Math.PI/180))));
_x = (_x + (speed * Math.sin(_rotation * (Math.PI/180))));
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= speed) {
gotoSpotX = int(Math.random() * 540) + 6;
gotoSpotY = int(Math.random() * 390) + 6;
}
} else if (action == "dodge") {
_rotation = targetRotation;
_y = (_y - (12 * Math.cos((_rotation + 180) * (Math.PI/180))));
_x = (_x + (12 * Math.sin((_rotation + 180) * (Math.PI/180))));
}
}
}
Instance of Symbol 15 MovieClip [RazorQueen Tail] "RazorTail" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorTail") {
mommy = true;
stop();
} else {
this.addProperty("action", this.getAction, this.setAction);
killedBy = null;
beenDead = 0;
action = "none";
turnSpeed = 6;
speedBoost = 0;
sLoc = 0;
stretch = 10;
swipeFrames = 0;
stop();
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 5));
gotoAndStop (1);
moveDirection = _rotation;
SegNumber = Number(_name.slice(_name.length - 1, _name.length));
if (SegNumber == 1) {
Anchor = mommyQueen;
} else {
Anchor = eval ((("_root." + mommyQueen._name) + "Tail") + (SegNumber - 1));
}
if (SegNumber < 4) {
duplicateMovieClip (_root.RazorTail, (mommyQueen._name + "Tail") + (SegNumber + 1), _global.baddieDepth++);
nextSeg = eval ((("_root." + mommyQueen._name) + "Tail") + (SegNumber + 1));
with (nextSeg) {
_y = this._y - (10 * Math.cos((this._rotation - 180) * (Math.PI/180)));
_x = this._x + (10 * Math.sin((this._rotation - 180) * (Math.PI/180)));
_rotation = this._rotation;
}
}
if (SegNumber == 4) {
duplicateMovieClip (_root.RazorBlade, mommyQueen._name + "Blade", _global.baddieDepth++);
myBlade = eval (("_root." + mommyQueen._name) + "Blade");
with (myBlade) {
_y = this._y - (10 * Math.cos((this._rotation - 180) * (Math.PI/180)));
_x = this._x + (10 * Math.sin((this._rotation - 180) * (Math.PI/180)));
_rotation = this._rotation;
}
}
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (beenDead == 0)) {
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if ((mommyQueen.action == "lash") || (mommyQueen.mode == "turret")) {
stretch = 30;
} else {
stretch = 10;
}
zoneOff = Anchor._rotation - 180;
gotoSpotX = Anchor._x + (stretch * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = Anchor._y - (stretch * Math.cos(zoneOff * (Math.PI/180)));
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
toSpot = Math.sqrt((delta_x * delta_x) + (delta_y * delta_y));
speed = int(toSpot / 10);
if ((mommyQueen.action == "lunge") || (mommyQueen.action == "lash")) {
speed = speed * 2;
}
if (toSpot < speed) {
speed = toSpot;
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
moveDirection = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
deltaQ_x = _x - Anchor._x;
deltaQ_y = _y - Anchor._y;
_rotation = ((-Math.atan2(deltaQ_x, deltaQ_y)) / (Math.PI/180));
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
if (eval (mommyQueen) == undefined) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation - 130);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
if (action == "swipe") {
turnSpeed = 15;
}
if (_rotation > targetRotation) {
turnSpeed = turnSpeed * -1;
}
if (speed > 15) {
speed = 15;
}
beenDead++;
}
} else if (!mommy) {
if (_currentframe != 2) {
moveDirection = int(Math.random() * 360) - 180;
speed = int(Math.random() * 4);
turnSpeed = int(Math.random() * 25);
if (int(Math.random() * 2) == 1) {
turnSpeed = turnSpeed * -1;
}
}
gotoAndStop (2);
_rotation = (_rotation + turnSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
beenDead++;
if (speed > 0) {
speed = speed - 1;
} else {
speed = 0;
}
if (Math.abs(turnSpeed) > 0) {
if (turnSpeed > 0) {
turnSpeed = turnSpeed - 0.5;
}
if (turnSpeed < 0) {
turnSpeed = turnSpeed + 0.5;
}
} else {
turnSpeed = 0;
}
if (beenDead > 200) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
}
}
Instance of Symbol 2480 MovieClip "RazorForClaw" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorForClaw") {
mommy = true;
stop();
} else {
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("claw", this.getClaw, null);
claw = true;
killedBy = null;
beenDead = 0;
action = "none";
turnSpeed = 4;
speedBoost = 0;
Right = false;
sLoc = 0;
stop();
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 6));
gotoAndStop (1);
moveDirection = _rotation;
justStruck = 0;
if (_name.slice(_name.length - 1, _name.length) == "R") {
Right = true;
_xscale = -100;
}
duplicateMovieClip (_root.RazorArm, _name + "Arm", _global.baddieDepth++);
myArm = eval (("_root." + _name) + "Arm");
with (myArm) {
_y = this._y;
_x = this._x;
_rotation = this._rotation;
}
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (beenDead == 0)) {
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (justStruck > 0) {
justStruck--;
}
deltaQ_x = _x - gotoSpotX;
deltaQ_y = _y - gotoSpotY;
toSpot = Math.sqrt((deltaQ_x * deltaQ_x) + (deltaQ_y * deltaQ_y));
speed = int(toSpot / 4);
if (action == "jab") {
speed = speed * 2;
}
if (action == "placed") {
speed = 0;
}
switch (action) {
case "none" :
case "draw" :
case "digup" :
zoneOff = 55;
zoneDist = 30;
break;
case "jab" :
zoneOff = 15;
zoneDist = 50;
break;
case "backswing" :
zoneOff = 80;
zoneDist = 40;
break;
case "swing" :
zoneOff = 5;
zoneDist = 80;
break;
case "entrench" :
zoneOff = 45;
zoneDist = 50;
}
if (Right) {
zoneOff = mommyQueen._rotation + zoneOff;
} else {
zoneOff = mommyQueen._rotation - zoneOff;
}
gotoSpotX = mommyQueen._x + (zoneDist * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = mommyQueen._y - (zoneDist * Math.cos(zoneOff * (Math.PI/180)));
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
if (Right) {
radialAdjust = _rotation - 10;
} else {
radialAdjust = _rotation + 10;
}
if (radialAdjust > 180) {
radialAdjust = radialAdjust - 360;
}
if (radialAdjust < -180) {
radialAdjust = radialAdjust + 360;
}
if (action == "placed") {
ColPtExt = 25;
} else {
ColPtExt = 40;
}
ColPtY = _y - (ColPtExt * Math.cos(radialAdjust * (Math.PI/180)));
ColPtX = _x + (ColPtExt * Math.sin(radialAdjust * (Math.PI/180)));
if (_root.HeroSwing.hittest(ColPtX, ColPtY, true)) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , ColPtX);
setProperty(SparkName, _y , ColPtY);
_global.MakeNoise("Clang");
if (action != "placed") {
moveDirection = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
speedBoost = 3;
justStruck = 5;
if (action != "draw") {
action = "draw";
sLoc = 0;
}
}
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
if (action != "placed") {
moveDirection = moveDirection - 180;
speedBoost = 3;
justStruck = 5;
if (action != "draw") {
action = "draw";
sLoc = 0;
}
}
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (hitTest(targetHazard._x, targetHazard._y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (justStruck == 0) {
moveDirection = targetRotation;
}
if (((action == "none") || (action == "draw")) || (action == "digup")) {
if (Right) {
targetRotation = mommyQueen._rotation - 10;
} else {
targetRotation = mommyQueen._rotation + 10;
}
} else if (action == "jab") {
if (Right) {
targetRotation = mommyQueen._rotation + 80;
} else {
targetRotation = mommyQueen._rotation - 80;
}
} else if (action == "backswing") {
if (Right) {
targetRotation = mommyQueen._rotation + 90;
} else {
targetRotation = mommyQueen._rotation - 90;
}
} else if (action == "entrench") {
if (Right) {
targetRotation = mommyQueen._rotation + 45;
} else {
targetRotation = mommyQueen._rotation - 45;
}
} else if (action == "placed") {
targetRotation = _rotation;
}
if (targetRotation > 180) {
targetRotation = targetRotation - 360;
}
if (targetRotation < -180) {
targetRotation = targetRotation + 360;
}
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
if (action == "jab") {
turnSpeed = 8;
} else {
turnSpeed = 4;
}
if (beenDead == 0) {
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) > 5) {
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
} else if (action == "draw") {
action = "none";
} else if (action == "entrench") {
action = "placed";
}
if (action == "jab") {
if (sLoc < 15) {
sLoc++;
} else {
action = "draw";
sLoc = 0;
}
}
if (action == "backswing") {
if (sLoc < 20) {
sLoc++;
} else {
action = "swing";
sLoc = 0;
}
}
if (action == "swing") {
if (sLoc < 20) {
sLoc++;
} else {
action = "draw";
sLoc = 0;
}
}
deltaQ_x = _x - mommyQueen._x;
deltaQ_y = _y - mommyQueen._y;
toQueen = Math.sqrt((deltaQ_x * deltaQ_x) + (deltaQ_y * deltaQ_y));
armRotate = (-Math.atan2(deltaQ_x, deltaQ_y)) / (Math.PI/180);
if (eval (mommyQueen) != undefined) {
with (myArm) {
_x = this._x + ((toQueen * 0.25) * Math.sin(armRotate * (Math.PI/180)));
_y = this._y - ((toQueen * 0.25) * Math.cos(armRotate * (Math.PI/180)));
}
}
if ((action == "entrench") || (action == "placed")) {
if (_currentframe == 1) {
if (Math.abs(_xscale > 30)) {
if (Right) {
_xscale = (_xscale + 5);
} else {
_xscale = (_xscale - 5);
}
} else {
if (Right) {
_xscale = -100;
} else {
_xscale = 100;
}
gotoAndStop (2);
}
} else if (((_currentframe == 2) && (action == "placed")) && (_yscale == 100)) {
_yscale = 80;
ePointX = _x + (40 * Math.sin(_rotation * (Math.PI/180)));
ePointY = _y - (40 * Math.cos(_rotation * (Math.PI/180)));
duplicateMovieClip (_root.GroundCrack, this._name + "Crack", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Crack")) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
gotoAndPlay(((int(Math.random() * 3) + 1) * 2) - 1);
}
Pebbles = int(Math.random() * 3) + 1;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, (this._name + "Pebble") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Pebble") + x)) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dustpuffs = int(Math.random() * 2);
x = 0;
while (x < Dustpuffs) {
duplicateMovieClip (_root.GroundDust, (this._name + "Dust") + x, _global.capDepth++);
with (eval ((("_root." + this._name) + "Dust") + x)) {
_x = (ePointX + int(Math.random() * 20)) - 10;
_y = (ePointY + int(Math.random() * 20)) - 10;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3);
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Dirt") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Dirt") + x)) {
_x = (ePointX + int(Math.random() * 10)) - 5;
_y = (ePointY + int(Math.random() * 10)) - 5;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
_global.MakeNoise("GrinderHurt");
_global.MakeNoise("SharpsIn");
if (int(Math.random() * 2) == 1) {
_global.MakeNoise("Pebble");
}
_x = (_x + (10 * Math.sin(armRotate * (Math.PI/180))));
_y = (_y - (10 * Math.cos(armRotate * (Math.PI/180))));
}
}
if (action == "digup") {
if (_currentframe == 2) {
gotoAndStop (1);
if (Right) {
_xscale = -30;
} else {
_xscale = 30;
}
_yscale = 100;
ePointX = _x + (40 * Math.sin(_rotation * (Math.PI/180)));
ePointY = _y - (40 * Math.cos(_rotation * (Math.PI/180)));
Pebbles = int(Math.random() * 3) + 1;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, (this._name + "Pebble") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Pebble") + x)) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3);
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Dirt") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Dirt") + x)) {
_x = (ePointX + int(Math.random() * 10)) - 5;
_y = (ePointY + int(Math.random() * 10)) - 5;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
if (int(Math.random() * 2) == 1) {
_global.MakeNoise("Pebble");
}
_global.MakeNoise("SharpsOut");
} else if ((_currentframe == 1) && (Math.abs(_xscale) < 100)) {
if (Right) {
_xscale = (_xscale - 5);
} else {
_xscale = (_xscale + 5);
}
if (Math.abs(_xscale) == 100) {
action = "none";
}
}
}
if (eval (mommyQueen) == undefined) {
SplatName = ("_root." + myArm._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), myArm._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , int(Math.random() * 360) - 179);
setProperty(SplatName, _x , myArm._x);
setProperty(SplatName, _xscale , 60);
setProperty(SplatName, _y , myArm._y);
setProperty(SplatName, _yscale , 60);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
_global.MakeNoise("LilSplat");
myArm.removeMovieClip();
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation - 130);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
if (action == "swipe") {
turnSpeed = 15;
}
if (_rotation > targetRotation) {
turnSpeed = turnSpeed * -1;
}
if (speed > 15) {
speed = 15;
}
beenDead++;
}
} else if (!mommy) {
if (_currentframe != 3) {
moveDirection = int(Math.random() * 360) - 180;
turnSpeed = int(Math.random() * 18);
if (int(Math.random() * 2) == 1) {
turnSpeed = turnSpeed * -1;
}
}
gotoAndStop (3);
_rotation = (_rotation + turnSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
beenDead++;
if (speed > 0) {
speed = speed - 1;
} else {
speed = 0;
}
if (Math.abs(turnSpeed) > 0) {
if (turnSpeed > 0) {
turnSpeed = turnSpeed - 1;
}
if (turnSpeed < 0) {
turnSpeed = turnSpeed + 1;
}
} else {
turnSpeed = 0;
}
if (beenDead > 200) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
}
}
Instance of Symbol 2484 MovieClip "RazorDuClaw" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorDuClaw") {
mommy = true;
stop();
} else {
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("claw", this.getClaw, null);
claw = true;
killedBy = null;
beenDead = 0;
action = "none";
turnSpeed = 6;
speedBoost = 0;
Right = false;
sLoc = 0;
swipeFrames = 0;
stop();
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 6));
gotoAndStop (1);
moveDirection = _rotation;
justStruck = 0;
if (_name.slice(_name.length - 1, _name.length) == "R") {
Right = true;
_xscale = -100;
}
duplicateMovieClip (_root.RazorArm, _name + "Arm", _global.baddieDepth++);
myArm = eval (("_root." + _name) + "Arm");
with (myArm) {
_y = this._y;
_x = this._x;
_rotation = this._rotation;
}
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (beenDead == 0)) {
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (justStruck > 0) {
justStruck--;
}
deltaQ_x = _x - mommyQueen._x;
deltaQ_y = _y - mommyQueen._y;
toQueen = Math.sqrt((deltaQ_x * deltaQ_x) + (deltaQ_y * deltaQ_y));
speed = int(toQueen / 20);
if (action == "swipe") {
speed = 6;
}
if ((action == "entrench") && (speed < 2)) {
speed = 2;
}
if (action == "placed") {
speed = 0;
}
if (((action == "none") || (action == "digup")) || ((action == "pull") && (toQueen > 70))) {
if (Right) {
zoneOff = mommyQueen._rotation + (int(Math.random() * 30) + 90);
} else {
zoneOff = mommyQueen._rotation - (int(Math.random() * 30) + 90);
}
if (zoneOff > 180) {
zoneOff = zoneOff - 360;
}
if (zoneOff < -180) {
zoneOff = zoneOff + 360;
}
gotoSpotX = mommyQueen._x + ((int(Math.random() * 10) + 20) * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = mommyQueen._y - ((int(Math.random() * 10) + 20) * Math.cos(zoneOff * (Math.PI/180)));
if (action != "digup") {
action = "pull";
}
} else if (action == "swipe") {
if (!Right) {
if (sLoc == 0) {
swipeRot = mommyQueen._rotation + 45;
} else {
swipeRot = mommyQueen._rotation - 25;
}
} else if (sLoc == 0) {
swipeRot = mommyQueen._rotation - 45;
} else {
swipeRot = mommyQueen._rotation + 25;
}
if (swipeRot > 180) {
swipeRot = swipeRot - 360;
}
if (swipeRot < -180) {
swipeRot = swipeRot + 360;
}
gotoSpotX = mommyQueen._x + (50 * Math.sin(swipeRot * (Math.PI/180)));
gotoSpotY = mommyQueen._y - (50 * Math.cos(swipeRot * (Math.PI/180)));
swipeFrames++;
} else if (action == "entrench") {
if (Right) {
zoneOff = mommyQueen._rotation + 135;
} else {
zoneOff = mommyQueen._rotation - 135;
}
if (zoneOff > 180) {
zoneOff = zoneOff - 360;
}
if (zoneOff < -180) {
zoneOff = zoneOff + 360;
}
gotoSpotX = mommyQueen._x + (50 * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = mommyQueen._y - (50 * Math.cos(zoneOff * (Math.PI/180)));
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
radialAdjust = _rotation - 180;
if (radialAdjust > 180) {
radialAdjust = radialAdjust - 360;
}
if (radialAdjust < -180) {
radialAdjust = radialAdjust + 360;
}
if (action == "placed") {
ColPtExt = 45;
} else {
ColPtExt = 90;
}
ColPtY = _y - (ColPtExt * Math.cos(radialAdjust * (Math.PI/180)));
ColPtX = _x + (ColPtExt * Math.sin(radialAdjust * (Math.PI/180)));
if (_root.HeroSwing.hittest(ColPtX, ColPtY, true)) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , ColPtX);
setProperty(SparkName, _y , ColPtY);
_global.MakeNoise("Clang");
if (action != "placed") {
moveDirection = (_root.HeroPointer._rotation + int(Math.random() * 61)) + 30;
speedBoost = 3;
justStruck = 5;
if (action == "swipe") {
action = "none";
sLoc = 0;
swipeFrames = 0;
}
}
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
if (action != "placed") {
moveDirection = moveDirection - 180;
speedBoost = 3;
justStruck = 5;
if (action == "swipe") {
action = "none";
sLoc = 0;
swipeFrames = 0;
}
}
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (hitTest(targetHazard._x, targetHazard._y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
targetRotation = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (justStruck == 0) {
moveDirection = targetRotation;
}
if (action == "entrench") {
if (Right) {
targetRotation = mommyQueen._rotation - 45;
} else {
targetRotation = mommyQueen._rotation + 45;
}
if (targetRotation > 180) {
targetRotation = targetRotation - 360;
}
if (targetRotation < -180) {
targetRotation = targetRotation + 360;
}
}
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
if (beenDead == 0) {
if ((((action == "pull") || (action == "none")) || (action == "digup")) || (action == "entrench")) {
if (_rotation != targetRotation) {
if ((_rotation >= 0) && (targetRotation >= 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((_rotation < 0) && (targetRotation < 0)) {
if (_rotation > targetRotation) {
if ((_rotation - targetRotation) > turnSpeed) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = targetRotation;
}
} else if ((targetRotation - _rotation) > turnSpeed) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = targetRotation;
}
} else if (_rotation > targetRotation) {
if (_rotation < (targetRotation + 180)) {
_rotation = (_rotation - turnSpeed);
} else {
_rotation = (_rotation + turnSpeed);
}
} else if (_rotation > (targetRotation - 180)) {
_rotation = (_rotation + turnSpeed);
} else {
_rotation = (_rotation - turnSpeed);
}
}
} else if (action == "swipe") {
if (Right) {
_rotation = (_rotation + 9);
} else {
_rotation = (_rotation - 9);
}
}
}
if ((Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) >= 5) || (action == "swipe")) {
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
} else if (action == "entrench") {
_y = gotoSpotY;
_x = gotoSpotX;
}
if (Math.sqrt((delta_x * delta_x) + (delta_y * delta_y)) <= 5) {
if (action == "swipe") {
if (sLoc < 2) {
sLoc++;
} else if (swipeFrames >= 15) {
action = "none";
sLoc = 0;
swipeFrames = 0;
}
} else if (action == "pull") {
action = "none";
} else if (action == "entrench") {
action = "placed";
}
}
armRotate = (-Math.atan2(deltaQ_x, deltaQ_y)) / (Math.PI/180);
if (eval (mommyQueen) != undefined) {
with (myArm) {
_x = this._x + ((toQueen / 2) * Math.sin(armRotate * (Math.PI/180)));
_y = this._y - ((toQueen / 2) * Math.cos(armRotate * (Math.PI/180)));
}
}
if ((action == "entrench") || (action == "placed")) {
if (_currentframe == 1) {
if (Math.abs(_xscale > 30)) {
if (Right) {
_xscale = (_xscale + 5);
} else {
_xscale = (_xscale - 5);
}
} else {
if (Right) {
_xscale = -100;
} else {
_xscale = 100;
}
gotoAndStop (2);
}
} else if (((_currentframe == 2) && (action == "placed")) && (_yscale == 100)) {
_yscale = 80;
ePointX = _x - (60 * Math.sin(_rotation * (Math.PI/180)));
ePointY = _y + (60 * Math.cos(_rotation * (Math.PI/180)));
duplicateMovieClip (_root.GroundCrack, this._name + "Crack", _global.backgroundDepth++);
with (eval (("_root." + this._name) + "Crack")) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
gotoAndPlay(((int(Math.random() * 3) + 1) * 2) - 1);
}
Pebbles = int(Math.random() * 3) + 1;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, (this._name + "Pebble") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Pebble") + x)) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dustpuffs = int(Math.random() * 2);
x = 0;
while (x < Dustpuffs) {
duplicateMovieClip (_root.GroundDust, (this._name + "Dust") + x, _global.capDepth++);
with (eval ((("_root." + this._name) + "Dust") + x)) {
_x = (ePointX + int(Math.random() * 20)) - 10;
_y = (ePointY + int(Math.random() * 20)) - 10;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3);
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Dirt") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Dirt") + x)) {
_x = (ePointX + int(Math.random() * 10)) - 5;
_y = (ePointY + int(Math.random() * 10)) - 5;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
_global.MakeNoise("GrinderHurt");
_global.MakeNoise("SharpsIn");
if (int(Math.random() * 2) == 1) {
_global.MakeNoise("Pebble");
}
_x = (_x + (10 * Math.sin(armRotate * (Math.PI/180))));
_y = (_y - (10 * Math.cos(armRotate * (Math.PI/180))));
}
}
if (action == "digup") {
if (_currentframe == 2) {
gotoAndStop (1);
if (Right) {
_xscale = -30;
} else {
_xscale = 30;
}
_yscale = 100;
ePointX = _x + (60 * Math.sin(_rotation * (Math.PI/180)));
ePointY = _y - (60 * Math.cos(_rotation * (Math.PI/180)));
Pebbles = int(Math.random() * 3) + 1;
x = 0;
while (x <= Pebbles) {
duplicateMovieClip (_root.GroundPebble, (this._name + "Pebble") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Pebble") + x)) {
_x = ePointX;
_y = ePointY;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
Dirtpuffs = int(Math.random() * 3);
x = 0;
while (x < Dirtpuffs) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Dirt") + x, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Dirt") + x)) {
_x = (ePointX + int(Math.random() * 10)) - 5;
_y = (ePointY + int(Math.random() * 10)) - 5;
_rotation = int(Math.random() * 360) - 179;
}
x++;
}
_global.MakeNoise("SharpsOut");
if (int(Math.random() * 2) == 1) {
_global.MakeNoise("Pebble");
}
} else if ((_currentframe == 1) && (Math.abs(_xscale) < 100)) {
if (Right) {
_xscale = (_xscale - 5);
} else {
_xscale = (_xscale + 5);
}
if (Math.abs(_xscale) == 100) {
action = "none";
}
}
}
if (eval (mommyQueen) == undefined) {
SplatName = ("_root." + myArm._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), myArm._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , int(Math.random() * 360) - 179);
setProperty(SplatName, _x , myArm._x);
setProperty(SplatName, _xscale , 60);
setProperty(SplatName, _y , myArm._y);
setProperty(SplatName, _yscale , 60);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
_global.MakeNoise("LilSplat");
myArm.removeMovieClip();
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation - 130);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
if (action == "swipe") {
turnSpeed = 15;
}
if (_rotation > targetRotation) {
turnSpeed = turnSpeed * -1;
}
if (speed > 15) {
speed = 15;
}
beenDead++;
}
} else if (!mommy) {
if (_currentframe != 3) {
moveDirection = int(Math.random() * 360) - 180;
turnSpeed = int(Math.random() * 15);
if (int(Math.random() * 2) == 1) {
turnSpeed = turnSpeed * -1;
}
}
gotoAndStop (3);
_rotation = (_rotation + turnSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
beenDead++;
if (speed > 0) {
speed = speed - 1;
} else {
speed = 0;
}
if (Math.abs(turnSpeed) > 0) {
if (turnSpeed > 0) {
turnSpeed = turnSpeed - 1;
}
if (turnSpeed < 0) {
turnSpeed = turnSpeed + 1;
}
} else {
turnSpeed = 0;
}
if (beenDead > 200) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
}
}
Instance of Symbol 12 MovieClip [RazorQueen Blade] "RazorBlade" in Frame 7
onClipEvent (load) {
mommy = false;
if (_name == "RazorBlade") {
mommy = true;
stop();
} else {
this.addProperty("action", this.getAction, this.setAction);
this.addProperty("claw", this.getClaw, null);
claw = true;
killedBy = null;
beenDead = 0;
action = "none";
turnSpeed = 6;
speedBoost = 0;
sLoc = 0;
stretch = 10;
swipeFrames = 0;
stop();
justStruck = 0;
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 5));
gotoAndStop (1);
moveDirection = _rotation;
Anchor = eval (("_root." + mommyQueen._name) + "Tail4");
}
}
onClipEvent (enterFrame) {
if ((!mommy) && (beenDead == 0)) {
if (speedBoost > 0) {
speedBoost = speedBoost - 0.5;
}
if (justStruck > 0) {
justStruck--;
}
if ((mommyQueen.action == "lash") || (mommyQueen.mode == "turret")) {
stretch = 30;
} else {
stretch = 10;
}
zoneOff = Anchor._rotation - 180;
gotoSpotX = Anchor._x + (stretch * Math.sin(zoneOff * (Math.PI/180)));
gotoSpotY = Anchor._y - (stretch * Math.cos(zoneOff * (Math.PI/180)));
delta_x = _x - gotoSpotX;
delta_y = _y - gotoSpotY;
toSpot = Math.sqrt((delta_x * delta_x) + (delta_y * delta_y));
speed = int(toSpot / 10);
if ((mommyQueen.action == "lunge") || (mommyQueen.action == "lash")) {
speed = speed * 2;
}
if (toSpot < speed) {
speed = toSpot;
}
if (_global.HeroAction == "attacking") {
if ((_root.HeroSlashin._currentframe > 4) && (_root.HeroSlashin._currentframe < 14)) {
radialAdjust = _rotation - 180;
if (radialAdjust > 180) {
radialAdjust = radialAdjust - 360;
}
if (radialAdjust < -180) {
radialAdjust = radialAdjust + 360;
}
ColPtY = _y - (50 * Math.cos(radialAdjust * (Math.PI/180)));
ColPtX = _x + (50 * Math.sin(radialAdjust * (Math.PI/180)));
if (_root.HeroSwing.hittest(ColPtX, ColPtY, true)) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , ColPtX);
setProperty(SparkName, _y , ColPtY);
_global.MakeNoise("Clang");
justStruck = 5;
_global.HeroAction = "bounceback";
}
}
}
}
if (hitTest(_root.HeroPointer._x, _root.HeroPointer._y, true)) {
_global.justHit = this;
} else {
x = 0;
while (x < _global.Enemies.length) {
if (_global.Enemies[x] != mommyQueen._name) {
hitTarget = eval ("_root." + _global.Enemies[x]);
if (hitTest(hitTarget._x, hitTarget._y, true)) {
if ((((hitTarget._name.slice(0, 7) == "Grinder") || (hitTarget.spines)) || (hitTarget.action == "gaurd")) || (hitTarget._name.slice(0, 6) == "Horror")) {
if (justStruck == 0) {
SparkName = ("_root." + this._name) + "Sparks";
duplicateMovieClip (_root.Sparks, this._name + "Sparks", _global.effectDepth++);
setProperty(SparkName, _rotation , moveDirection);
setProperty(SparkName, _x , this._x);
setProperty(SparkName, _y , this._y);
_global.MakeNoise("Clang");
justStruck = 5;
}
} else {
hitTarget.killedBy = this;
}
}
}
x++;
}
}
x = 0;
while (x < _global.Hazards.length) {
targetHazard = eval ("_root." + _global.Hazards[x]);
if (hitTest(targetHazard._x, targetHazard._y, true)) {
if (targetHazard._name.slice(0, 5) == "Razor") {
targetHazard.killedBy = this;
}
}
x++;
}
moveDirection = (-Math.atan2(delta_x, delta_y)) / (Math.PI/180);
if (moveDirection > 180) {
moveDirection = moveDirection - 360;
}
if (moveDirection < -180) {
moveDirection = moveDirection + 360;
}
deltaQ_x = _x - Anchor._x;
deltaQ_y = _y - Anchor._y;
_rotation = ((-Math.atan2(deltaQ_x, deltaQ_y)) / (Math.PI/180));
_y = (_y - ((speedBoost + speed) * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + ((speedBoost + speed) * Math.sin(moveDirection * (Math.PI/180))));
if (eval (mommyQueen) == undefined) {
SplatName = ("_root." + this._name) + "Splat";
duplicateMovieClip (eval ("_root.Splat" + String(random(3) + 1)), this._name + "Splat", _global.effectDepth++);
setProperty(SplatName, _rotation , this._rotation - 130);
setProperty(SplatName, _x , this._x);
setProperty(SplatName, _xscale , 40);
setProperty(SplatName, _y , this._y);
setProperty(SplatName, _yscale , 40);
SplatColor = new Color(eval (SplatName));
SplatColor.setRGB(3560301);
if (action == "swipe") {
turnSpeed = 15;
}
if (_rotation > targetRotation) {
turnSpeed = turnSpeed * -1;
}
if (speed > 15) {
speed = 15;
}
beenDead++;
}
} else if (!mommy) {
if (_currentframe != 2) {
moveDirection = int(Math.random() * 360) - 180;
speed = int(Math.random() * 2);
turnSpeed = int(Math.random() * 10);
if (int(Math.random() * 2) == 1) {
turnSpeed = turnSpeed * -1;
}
}
gotoAndStop (2);
_rotation = (_rotation + turnSpeed);
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
beenDead++;
if (speed > 0) {
speed = speed - 0.5;
} else {
speed = 0;
}
if (Math.abs(turnSpeed) > 0) {
if (turnSpeed > 0) {
turnSpeed = turnSpeed - 0.5;
}
if (turnSpeed < 0) {
turnSpeed = turnSpeed + 0.5;
}
} else {
turnSpeed = 0;
}
if (beenDead > 200) {
if (_alpha > 0) {
_alpha = (_alpha - 5);
} else {
removeMovieClip(this);
}
}
}
}
Instance of Symbol 2488 MovieClip [Shed Tooth] "ShedTooth" in Frame 7
onClipEvent (load) {
if (_name != "ShedTooth") {
flyRange = int(Math.random() * 6) + 6;
speed = 3;
framesAtSpeed = 0;
moveDirection = _rotation;
if (int(Math.random() * 2) == 0) {
Clockwise = true;
}
}
}
onClipEvent (enterFrame) {
if (_name != "ShedTooth") {
if (speed != 0) {
if (Clockwise) {
_rotation = (_rotation + (speed * 15));
} else {
_rotation = (_rotation - (speed * 15));
}
_y = (_y - (speed * Math.cos(moveDirection * (Math.PI/180))));
_x = (_x + (speed * Math.sin(moveDirection * (Math.PI/180))));
if (framesAtSpeed >= flyRange) {
speed = speed - 1;
framesAtSpeed = 0;
}
} else if (framesAtSpeed >= 90) {
_alpha = (_alpha - 5);
}
if (_alpha <= 0) {
removeMovieClip(this);
}
framesAtSpeed++;
}
}
Instance of Symbol 987 MovieClip [Razor Tooth] "RazorTooth" in Frame 7
onClipEvent (load) {
if (_name != "RazorTooth") {
_xscale = 50;
_yscale = 50;
offSet = int(Math.random() * 5) + 1;
mommyQueen = eval ("_root." + _name.slice(0, _name.length - 7));
if (int(Math.random() * 2) == 1) {
_xscale = -50;
}
}
}
onClipEvent (enterFrame) {
if (_name != "RazorTooth") {
if (_yscale < 100) {
if (_xscale < 0) {
_xscale = (_xscale - 5);
} else {
_xscale = (_xscale + 5);
}
_yscale = (_yscale + 5);
offSet = offSet + 0.2;
} else if (offSet < 16) {
offSet = offSet + 0.5;
} else {
mommyQueen.teeth--;
duplicateMovieClip (_root.ShedTooth, _name + "Shed", _global.effectDepth++);
with (eval (("_root." + _name) + "Shed")) {
_x = this._x;
_y = this._y;
_rotation = this._rotation;
}
removeMovieClip(this);
}
_y = (mommyQueen._y - (offSet * Math.cos(_rotation * (Math.PI/180))));
_x = (mommyQueen._x + (offSet * Math.sin(_rotation * (Math.PI/180))));
}
}
Instance of Symbol 2495 MovieClip [Ground Crack] "GroundCrack" in Frame 7
onClipEvent (load) {
framesExisted = 0;
}
onClipEvent (enterFrame) {
if (_name != "GroundCrack") {
if (_alpha > 0) {
if (framesExisted > 900) {
_alpha = (_alpha+1);
}
} else {
removeMovieClip(this);
}
framesExisted++;
}
}
Instance of Symbol 2501 MovieClip "GroundDirt" in Frame 7
onClipEvent (load) {
if (_name == "GroundDirt") {
stop();
} else if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
}
onClipEvent (enterFrame) {
if (_currentframe == 21) {
stop();
_alpha = (_alpha - 5);
if (_alpha <= 0) {
this.removeMovieClip();
}
}
}
Instance of Symbol 2510 MovieClip "HeroPiked" in Frame 7
onClipEvent (load) {
if (_name == "HeroPiked") {
stop();
} else {
splats = 0;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroPiked") {
if (_currentframe == 2) {
x = 1;
while (x < 3) {
duplicateMovieClip (_root.GroundDirt, (this._name + "Spray") + splats, _global.effectDepth++);
with (eval ((("_root." + this._name) + "Spray") + splats)) {
_x = this._x;
_y = this._y;
_rotation = (this._rotation + int(Math.random() * 80)) - 40;
}
BloodColor = new Color(eval ((("_root." + this._name) + "Spray") + (splats++)));
BloodColor.setRGB(11800592);
x++;
}
} else if (_currentframe == 15) {
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) - 20;
_x = this._x;
_y = this._y;
}
} else if (_currentframe == 45) {
stop();
}
}
}
Instance of Symbol 2524 MovieClip "HeroHalf" in Frame 7
onClipEvent (load) {
if (_name == "HeroHalf") {
stop();
} else {
splats = 0;
if (_name.slice(_name.length - 1, _name.length) == "2") {
_xscale = -100;
}
Method = int(Math.random() * 3) + 1;
}
}
onClipEvent (enterFrame) {
if (_name != "HeroHalf") {
switch (Method) {
case 1 :
if (_currentframe == 31) {
SplatPtY = _y - (25 * Math.cos((_rotation - (90 * (_xscale / 100))) * (Math.PI / 180)));
SplatPtX = _x + (25 * Math.sin((_rotation - (90 * (_xscale / 100))) * (Math.PI / 180)));
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) - 200;
_x = SplatPtX;
_y = SplatPtY;
}
} else if (_currentframe == 45) {
stop();
}
break;
case 2 :
if (_currentframe == 2) {
gotoAndPlay (46);
} else if (_currentframe == 66) {
SplatPtY = _y - (25 * Math.cos((_rotation - 180) * (Math.PI / 180)));
SplatPtX = _x + (25 * Math.sin((_rotation - 180) * (Math.PI / 180)));
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) + (70 * (this._xscale / 100));
_x = SplatPtX;
_y = SplatPtY;
}
} else if (_currentframe == 80) {
stop();
}
break;
case 3 :
if (_currentframe == 2) {
gotoAndPlay (81);
} else if (_currentframe == 96) {
SplatPtY = _y - (25 * Math.cos(_rotation * (Math.PI / 180)));
SplatPtX = _x + (25 * Math.sin(_rotation * (Math.PI / 180)));
duplicateMovieClip (eval ("_root.Blood" + String(random(3) + 1)), (this._name + "Blood") + splats, _global.effectDepth++);
BloodName = eval ((("_root." + this._name) + "Blood") + (splats++));
with (BloodName) {
_rotation = (this._rotation + int(Math.random() * 40)) + (70 * (this._xscale / 100));
_x = SplatPtX;
_y = SplatPtY;
}
} else {
if (_currentframe != 111) {
break;
}
stop();
}
}
}
}
Instance of Symbol 2537 MovieClip [Razor Larva Pop] "RazorLarvaPop" in Frame 7
onClipEvent (load) {
if (_name == "RazorLarvaPop") {
stop();
} else {
if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
_rotation = (int(Math.random() * 360) - 179);
}
}
onClipEvent (enterFrame) {
if (_currentframe == 12) {
removeMovieClip(this);
}
}
Instance of Symbol 1019 MovieClip "HeroSlash" in Frame 7
onClipEvent (load) {
if (_name == "HeroSlash") {
stop();
}
}
Instance of Symbol 997 MovieClip "HeroWalk" in Frame 7
onClipEvent (load) {
if (_name == "HeroWalk") {
stop();
}
}
Instance of Symbol 2541 MovieClip "HeroStaggerUp" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerUp") {
stop();
}
}
Instance of Symbol 2545 MovieClip "HeroStaggerRight" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerRight") {
stop();
}
}
Instance of Symbol 2549 MovieClip "HeroStaggerLeft" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerLeft") {
stop();
}
}
Instance of Symbol 2553 MovieClip "HeroStaggerDown" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerDown") {
stop();
}
}
Instance of Symbol 2560 MovieClip "HeroBounceback" in Frame 7
onClipEvent (load) {
if (_name == "HeroBounceback") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroBounceback") {
if (_global.HeroAction != "bounceback") {
removeMovieClip(this);
}
}
}
Instance of Symbol 2566 MovieClip [Lil Guy Walkin Razor] "HeroWalkRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroWalkRazor") {
stop();
}
}
Instance of Symbol 2577 MovieClip [Lil Guy Slash Razor] "HeroSlashRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroSlashRazor") {
stop();
}
}
Instance of Symbol 2579 MovieClip [Lil Guy Stagger Down Razor] "HeroStaggerDownRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerDownRazor") {
stop();
}
}
Instance of Symbol 2582 MovieClip [Lil Guy Stagger Left Razor] "HeroStaggerLeftRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerLeftRazor") {
stop();
}
}
Instance of Symbol 2585 MovieClip [Lil Guy Stagger Right Razor] "HeroStaggerRightRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerRightRazor") {
stop();
}
}
Instance of Symbol 2586 MovieClip [Lil Guy Stagger Up Razor] "HeroStaggerUpRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroStaggerUpRazor") {
stop();
}
}
Instance of Symbol 2588 MovieClip [Lil Guy Bounce Back Razor] "HeroBouncebackRazor" in Frame 7
onClipEvent (load) {
if (_name == "HeroBouncebackRazor") {
stop();
}
}
onClipEvent (enterFrame) {
if (_name != "HeroBouncebackRazor") {
if (_global.HeroAction != "bounceback") {
removeMovieClip(this);
}
}
}
Instance of Symbol 2591 MovieClip "Blackout" in Frame 7
onClipEvent (load) {
if (_name != "Blackout") {
framesExisted = 0;
Blink = false;
Fade = false;
if (_name.slice(_name.length - 6) == "Bright") {
Blink = true;
}
if (_name.slice(_name.length - 3) == "Dim") {
Fade = false;
}
if (_name.slice(0, 4) == "Work") {
_alpha = 60;
}
}
}
onClipEvent (enterFrame) {
if (((_name != "Blackout") && (!Blink)) && (!Fade)) {
if (framesExisted > 90) {
if (_alpha > 0) {
_alpha = (_alpha-1);
} else {
removeMovieClip(this);
}
} else {
framesExisted++;
}
} else if (Blink) {
_alpha = (_alpha - 20);
if (_alpha <= 0) {
removeMovieClip(this);
}
}
}
Symbol 9 MovieClip [Clear Message] Frame 1
myApplause = new Sound(this);
myApplause.attachSound("Cheers");
myApplause.start();
Symbol 9 MovieClip [Clear Message] Frame 61
stop();
Symbol 23 MovieClip [Jukebox Backdrop] Frame 47
stop();
Instance of Symbol 26 MovieClip "Light Wash" in Symbol 29 MovieClip [Blanket of Goo] Frame 1
onClipEvent (load) {
xvel = 0;
yvel = 0;
xtime = 0;
ytime = 0;
xchange = 0;
ychange = 0;
xscroll = int(Math.random() * 5) - 2;
yscroll = int(Math.random() * 7) - 3;
}
onClipEvent (enterFrame) {
if ((_x > -200) && (_x < 300)) {
if (xtime == xchange) {
xscroll = int(Math.random() * 5) - 2;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
}
} else if ((_x <= -200) && (xscroll <= 0)) {
xscroll = int(Math.random() * 3) + 1;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
} else if ((_x >= 300) && (xscroll >= 0)) {
xscroll = int(Math.random() * 3) - 3;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
}
if (xvel > xscroll) {
xvel = xvel - 0.2;
} else if (xvel < xscroll) {
xvel = xvel + 0.2;
}
_x = (_x + xvel);
xtime++;
if ((_y > -300) && (_y < 400)) {
if (ytime == ychange) {
yscroll = int(Math.random() * 7) - 3;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
}
} else if ((_y <= -300) && (yscroll <= 0)) {
yscroll = int(Math.random() * 4) + 1;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
} else if ((_y >= 400) && (yscroll >= 0)) {
yscroll = int(Math.random() * 4) - 4;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
}
if (yvel > yscroll) {
yvel = yvel - 0.2;
} else if (yvel < yscroll) {
yvel = yvel + 0.2;
}
_y = (_y + yvel);
ytime++;
}
Instance of Symbol 28 MovieClip "Dark wash" in Symbol 29 MovieClip [Blanket of Goo] Frame 1
onClipEvent (load) {
xvel = 0;
yvel = 0;
xtime = 0;
ytime = 0;
xchange = 0;
ychange = 0;
xscroll = int(Math.random() * 5) - 2;
yscroll = int(Math.random() * 7) - 3;
}
onClipEvent (enterFrame) {
if ((_x > -200) && (_x < 300)) {
if (xtime == xchange) {
xscroll = int(Math.random() * 5) - 2;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
}
} else if ((_x <= -200) && (xscroll <= 0)) {
xscroll = int(Math.random() * 3) + 1;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
} else if ((_x >= 300) && (xscroll >= 0)) {
xscroll = int(Math.random() * 3) - 3;
xtime = 0;
xchange = int(Math.random() * 90) + 60;
}
if (xvel > xscroll) {
xvel = xvel - 0.2;
} else if (xvel < xscroll) {
xvel = xvel + 0.2;
}
_x = (_x + xvel);
xtime++;
if ((_y > -300) && (_y < 400)) {
if (ytime == ychange) {
yscroll = int(Math.random() * 7) - 3;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
}
} else if ((_y <= -300) && (yscroll <= 0)) {
yscroll = int(Math.random() * 4) + 1;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
} else if ((_y >= 400) && (yscroll >= 0)) {
yscroll = int(Math.random() * 4) - 4;
ytime = 0;
ychange = int(Math.random() * 90) + 60;
}
if (yvel > yscroll) {
yvel = yvel - 0.2;
} else if (yvel < yscroll) {
yvel = yvel + 0.2;
}
_y = (_y + yvel);
ytime++;
}
Instance of Symbol 138 MovieClip "Percentage" in Symbol 140 MovieClip Frame 1
onClipEvent (load) {
loadingTextFormat = new TextFormat();
loadingTextFormat.font = "Cooper Black";
loadingTextFormat.color = 16777215 /* 0xFFFFFF */;
loadingTextFormat.size = 24;
loadingTextFormat.align = "right";
this.createTextField("loadingText", 1, 0, 0, this._width, this._height);
loadingText.embedFonts = true;
loadingText.selectable = false;
}
onClipEvent (enterFrame) {
TotalNeeded = _level0.getBytesTotal();
HowMuchDone = _level0.getBytesLoaded();
loadingText.text = int((HowMuchDone / TotalNeeded) * 100);
loadingText.setTextFormat(loadingTextFormat);
}
Instance of Symbol 164 MovieClip "DeathTime" in Symbol 176 MovieClip [Death Popup] Frame 1
onClipEvent (load) {
TimeLeft = 900;
deadTextFormat = new TextFormat();
deadTextFormat.font = "Cooper Black";
deadTextFormat.color = 0;
deadTextFormat.size = 24;
deadTextFormat.align = "center";
this.createTextField("deadText", 1, 0, 0, this._width, this._height);
deadText.embedFonts = true;
deadText.selectable = false;
}
onClipEvent (enterFrame) {
deadText.text = ":" + int(TimeLeft / 30);
deadText.setTextFormat(deadTextFormat);
TimeLeft--;
if (TimeLeft == 0) {
_global.unbuildTo = "Menu";
}
}
Instance of Symbol 167 MovieClip "Retry" in Symbol 176 MovieClip [Death Popup] Frame 1
onClipEvent (load) {
stop();
}
on (rollOver) {
gotoAndStop (2);
}
on (rollOut) {
gotoAndStop (1);
}
on (press) {
_global.unbuildTo = "Hint";
}
Instance of Symbol 170 MovieClip "Menu" in Symbol 176 MovieClip [Death Popup] Frame 1
onClipEvent (load) {
stop();
}
on (rollOver) {
gotoAndStop (2);
}
on (rollOut) {
gotoAndStop (1);
}
on (press) {
_global.unbuildTo = "Menu";
}
Instance of Symbol 175 MovieClip [Rematch Button] "Rematch" in Symbol 176 MovieClip [Death Popup] Frame 1
onClipEvent (load) {
stop();
if (_global.RematchesLeft == 0) {
_visible = false;
}
}
on (rollOver) {
switch (_global.RematchesLeft) {
case 3 :
gotoAndStop (2);
break;
case 2 :
gotoAndStop (3);
break;
case 1 :
gotoAndStop (4);
}
}
on (rollOut) {
gotoAndStop (1);
}
on (press) {
if (_global.RematchesLeft > 0) {
_global.Rematch = true;
_global.unbuildTo = "Hint";
}
}
Instance of Symbol 185 MovieClip [FireworkVis] "Work" in Symbol 186 MovieClip [Firework] Frame 1
onClipEvent (load) {
stop();
(flyframes = 0);
(popframes = 0);
speed = 3 + int(Math.random() * 3);
flyTo = int(Math.random() * 20) + 30;
listTo = int(Math.random() * 3) - 1;
FireworkColor = new Color(this);
Colorswitcher = int(Math.random() * 7) + 1;
switch (Colorswitcher) {
case 1 :
FireworkColor.setRGB(15674384);
break;
case 2 :
FireworkColor.setRGB(15855725);
break;
case 3 :
FireworkColor.setRGB(5592814);
break;
case 4 :
FireworkColor.setRGB(15880683);
break;
case 5 :
FireworkColor.setRGB(2744407);
break;
case 6 :
FireworkColor.setRGB(16756491);
break;
case 7 :
FireworkColor.setRGB(16777215);
}
_global.MakeNoise("Fireworklight");
}
onClipEvent (enterFrame) {
if (flyframes < flyTo) {
_parent._rotation = _parent._rotation + listTo;
_parent._y = _parent._y - (speed * Math.cos(_parent._rotation * (Math.PI/180)));
_parent._x = _parent._x + (speed * Math.sin(_parent._rotation * (Math.PI/180)));
flyframes++;
} else if (popframes == 0) {
_parent._rotation = int(Math.random() * 360) - 179;
nextFrame();
_global.MakeNoise("Firework" + (int(Math.random() * 2) + 1));
duplicateMovieClip (_root.Blackout, this._name + "Bright", 7095);
with (eval (("_root." + this._name) + "Bright")) {
_x = 275;
_y = 200;
_xscale = 1000;
_yscale = 1000;
}
FlashColor = new Color(eval (("_root." + this._name) + "Bright"));
FlashColor.setRGB(FireworkColor.getRGB());
popframes++;
} else if (popframes < 6) {
_parent._xscale = _parent._xscale + 10;
_parent._yscale = _parent._yscale + 10;
popframes++;
} else {
_parent._y = _parent._y + 0.5;
if (popframes >= 40) {
if (_currentframe < 8) {
nextFrame();
} else {
removeMovieClip(_parent);
}
}
popframes++;
}
}
Instance of Symbol 189 MovieClip "theBoss" in Symbol 192 MovieClip [Jukebox Display] Frame 1
onClipEvent (load) {
framesExisted = 0;
}
onClipEvent (enterFrame) {
if (framesExisted > 120) {
if (_parent._alpha <= 0) {
if (eval (_root.jukeboxBack) != undefined) {
removeMovieClip(_root.jukeboxBack);
}
removeMovieClip(_parent);
} else {
_parent._alpha = _parent._alpha - 2;
if (eval (_root.jukeboxBack) != undefined) {
_root.jukeboxBack._alpha = _root.jukeboxBack._alpha - 1;
}
}
}
framesExisted++;
}
Instance of Symbol 191 MovieClip "SongTitle" in Symbol 192 MovieClip [Jukebox Display] Frame 1
onClipEvent (load) {
SongTextFormat = new TextFormat();
SongTextFormat.font = "Cooper Black";
SongTextFormat.color = 0;
SongTextFormat.size = 18;
SongTextFormat.align = "left";
this.createTextField("SongText", 1, 0, 0, this._width, this._height);
SongText.embedFonts = true;
SongText.selectable = false;
}
onClipEvent (enterFrame) {
SongText.text = _global.lastSong;
SongText.setTextFormat(SongTextFormat);
}
Instance of Symbol 138 MovieClip "ClearBonusShadow" in Symbol 195 MovieClip [Nest Clear Bonus] Frame 1
onClipEvent (load) {
ClearTextFormat = new TextFormat();
ClearTextFormat.font = "Cooper Black";
ClearTextFormat.color = 39168;
ClearTextFormat.size = 26;
ClearTextFormat.align = "center";
this.createTextField("ClearText", 1, 0, 0, this._width, this._height);
ClearText.embedFonts = true;
ClearText.selectable = false;
ClearText.text = interval * 20;
ClearText.setTextFormat(ClearTextFormat);
}
Instance of Symbol 138 MovieClip "ClearBonus" in Symbol 195 MovieClip [Nest Clear Bonus] Frame 1
onClipEvent (load) {
ClearTextFormat = new TextFormat();
ClearTextFormat.font = "Cooper Black";
ClearTextFormat.color = 0;
ClearTextFormat.size = 26;
ClearTextFormat.align = "center";
this.createTextField("ClearText", 1, 0, 0, this._width, this._height);
ClearText.embedFonts = true;
ClearText.selectable = false;
ClearText.text = interval * 20;
ClearText.setTextFormat(ClearTextFormat);
totalSparkles = int(Math.random() * 40) + 20;
x = 10;
while (x <= totalSparkles) {
_root.attachMovie("Sparkle", "Sparky" + x, 7100 + x);
MySparkle = eval ("_root.Sparky" + x);
with (MySparkle) {
_x = (this._parent._x + int(Math.random() * 280)) - 140;
_y = (this._parent._y + int(Math.random() * 40)) - 20;
}
SparkleColor = new Color(eval ("_root.Sparky" + x));
Colorswitcher = int(Math.random() * 3) + 1;
switch (Colorswitcher) {
case 1 :
SparkleColor.setRGB(3384627);
break;
case 2 :
SparkleColor.setRGB(7459441);
break;
case 3 :
SparkleColor.setRGB(16777215);
}
x++;
}
}
Instance of Symbol 138 MovieClip "Gloople Counter" in Symbol 198 MovieClip [Nest Counter] Frame 1
onClipEvent (load) {
killTextFormat = new TextFormat();
killTextFormat.font = "Cooper Black";
killTextFormat.color = 0;
killTextFormat.size = 24;
killTextFormat.align = "center";
this.createTextField("killText", 1, 0, 0, this._width, this._height);
killText.embedFonts = true;
killText.selectable = false;
}
onClipEvent (enterFrame) {
killText.text = _global.KillsLeft;
killText.setTextFormat(killTextFormat);
}
Instance of Symbol 201 MovieClip [New High Score Text] "HighScoreText" in Symbol 202 MovieClip [New High Score!] Frame 1
onClipEvent (load) {
Fireworks = 10;
framesExisted = 0;
}
onClipEvent (enterFrame) {
if (framesExisted < 180) {
if (int(Math.random() * 10) == 1) {
_root.attachMovie("Firework", "Work" + Fireworks, 7050 + Fireworks);
MyFirework = eval ("_root.Work" + Fireworks);
with (MyFirework) {
_rotation = int(Math.random() * 60) - 30;
_x = (this._parent._x + int(Math.random() * 200)) - 100;
_y = (this._parent._y + int(Math.random() * 50)) - 25;
}
Fireworks++;
}
}
framesExisted++;
}
Instance of Symbol 206 MovieClip "NewWeaponText" in Symbol 207 MovieClip [New Weapon Unlocked!] Frame 1
onClipEvent (load) {
framesExisted = 0;
totalSparkles = int(Math.random() * 40) + 20;
}
onClipEvent (enterFrame) {
if (_currentframe == 30) {
x = 10;
while (x <= totalSparkles) {
_root.attachMovie("Sparkle", "Spark" + x, 7100 + x);
MySparkle = eval ("_root.Spark" + x);
with (MySparkle) {
_x = (this._parent._x + int(Math.random() * 280)) - 140;
_y = (this._parent._y + int(Math.random() * 40)) - 20;
}
SparkleColor = new Color(eval ("_root.Spark" + x));
Colorswitcher = int(Math.random() * 3) + 1;
switch (Colorswitcher) {
case 1 :
SparkleColor.setRGB(16776960);
break;
case 2 :
SparkleColor.setRGB(16306230);
break;
case 3 :
SparkleColor.setRGB(16777215);
}
x++;
}
} else if (_currentframe == 31) {
stop();
}
framesExisted++;
}
Instance of Symbol 209 MovieClip [SparkleVis] "Sparley" in Symbol 210 MovieClip [Sparkle] Frame 1
onClipEvent (load) {
stop();
framesExisted = 0;
speed = 0.5 + (int(Math.random() * 6) * 0.5);
life = int(Math.random() * 40) + 50;
spin = int(Math.random() * 50) - 25;
heading = int(Math.random() * 120) - 60;
newScale = int(Math.random() * 40) + 10;
_parent._rotation = _parent._rotation - 180;
_parent._rotation = _parent._rotation + heading;
_parent._xscale = newScale;
_parent._yscale = newScale;
}
onClipEvent (enterFrame) {
if ((_parent._rotation > -180) && (_parent._rotation < 0)) {
_parent._rotation = _parent._rotation - 1;
} else if ((_parent._rotation < 180) && (_parent._rotation > 0)) {
_parent._rotation = _parent._rotation + 1;
}
_parent._y = _parent._y - (speed * Math.cos(_parent._rotation * (Math.PI/180)));
_parent._x = _parent._x + (speed * Math.sin(_parent._rotation * (Math.PI/180)));
_rotation = (_rotation + spin);
if (framesExisted >= life) {
if (_parent._xscale > 5) {
_parent._xscale = _parent._xscale - 1;
_parent._yscale = _parent._yscale - 1;
} else {
removeMovieClip(_parent);
}
}
framesExisted++;
}
Symbol 224 MovieClip [Beastiary Plate] Frame 1
stop();
_global.selectedGloople = null;
Instance of Symbol 216 MovieClip "GoBack" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
_root.subMenu = false;
_root.BeastiaryMenu.removeMovieClip();
}
Instance of Symbol 223 MovieClip [Tile] "TileGloople" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Gloople") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Gloople", "InfoGloople", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Gloople";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileStickie" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Stickie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Stickie", "InfoStickie", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Stickie";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileBiter" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Biter") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Biter", "InfoBiter", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Biter";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileMeltie" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Meltie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Meltie", "InfoMeltie", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Meltie";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileSharp" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Sharp") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Sharp", "InfoSharp", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Sharp";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileClutter" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Clutter") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Clutter", "InfoClutter", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Clutter";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileInkie" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Inkie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Inkie", "InfoInkie", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Inkie";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileGrinder" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Grinder") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Grinder", "InfoGrinder", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Grinder";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileFuzzle" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Fuzzle") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Fuzzle", "InfoFuzzle", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Fuzzle";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileOozle" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Oozle") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Oozle", "InfoOozle", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Oozle";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileTorchie" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Torchie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Torchie", "InfoTorchie", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Torchie";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileFrostie" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Frostie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Frostie", "InfoFrostie", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Frostie";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileGray" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Gray") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Gray", "InfoGray", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Gray";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileAmalgam" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Amalgam") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Amalgam", "InfoAmalgam", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Amalgam";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileHorror" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Horror") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Horror", "InfoHorror", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Horror";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileVoidEater" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "VoidEater") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info VoidEater", "InfoVoidEater", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "VoidEater";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileQueen" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesSeen, "Queen") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Queen", "InfoQueen", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "Queen";
}
}
Instance of Symbol 223 MovieClip [Tile] "TileRazorQueen" in Symbol 224 MovieClip [Beastiary Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
_visible = false;
if (SearchArray(EnemiesSeen, "RazorQueen") == null) {
tileLit = false;
} else {
tileLit = true;
_visible = true;
attachMovie("Info RazorQueen", "InfoRazorQueen", 1);
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if ((onMe && (tileLit)) && (_global.selectedGloople == null)) {
_root.BeastiaryMenu.attachMovie("Data Panel", "DataPanel", 40);
_global.selectedGloople = "RazorQueen";
}
}
Symbol 228 MovieClip [Data Panel] Frame 1
attachMovie("Info " + _global.selectedGloople, "InfoProfile", 1);
with (InfoProfile) {
_x = _x - 170;
_y = _y - 150;
}
headerTextFormat = new TextFormat();
headerTextFormat.font = "Cooper Black";
headerTextFormat.color = 39168;
headerTextFormat.size = 24;
headerTextFormat.align = "center";
this.createTextField("headerText", 3, -80, -175, 200, 50);
headerText.embedFonts = true;
headerText.wordWrap = true;
headerText.selectable = false;
headerText.text = _global.selectedGloople;
headerText.setTextFormat(headerTextFormat);
_parent.detailOpen = true;
stop();
Instance of Symbol 216 MovieClip "BackButton" in Symbol 228 MovieClip [Data Panel] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
_global.selectedGloople = null;
_root.BeastiaryMenu.DataPanel.removeMovieClip();
}
Instance of Symbol 227 MovieClip [Data Display] "Display" in Symbol 228 MovieClip [Data Panel] Frame 1
onClipEvent (load) {
myText = null;
dataTextFormat = new TextFormat();
dataTextFormat.font = "Cooper Black";
dataTextFormat.color = 39168;
dataTextFormat.size = 12;
dataTextFormat.align = "left";
this.createTextField("dataText", this.getDepth + 1, 0, 0, this._width, this._height);
dataText.embedFonts = true;
dataText.wordWrap = true;
dataText.selectable = false;
}
onClipEvent (enterFrame) {
if (myText == null) {
switch (_global.selectedGloople) {
case "Gloople" :
myText = " The Gloople, or Green Gloople, is by far the most common and simplest type of Gloople. Normally the first encountered, and the first sign of a Gloople infestation. Glooples are composed of a thick, celluloid membrane which contains a highly complex gelatinous mass of enzymes, proteins, synaptic fibers and numerous other fluid components. Glooples are hydraulic organisms and rely on internal pressurization to maintain living functions, although unlike most organisms they are alcohol rather than water-based.\r\r The Green Gloople is a worker of sorts and is ";
myText = myText + "normally found absorbing either small bits of food or burrowing out the chambers or tunnels of the nest (again by absorbing small bits of impediment and carrying them away). The normal Gloople has very little intelligence, able only to follow the simplest directives of the nest. They are of generally very little threat, and posses no means of inflicting harm on a human as the membranes which surround them are only able to absorb small objects. However, a Gloople is seldom if ever alone, and upon encountering one be wary of other, more hazardous varieties which ";
myText = myText + "are sure to be nearby.\r\r As very simple but massive organisms, Glooples are capable of a kind of reverse mitosis - combining by mutual absorption to create a larger and more complex organism.";
break;
case "Stickie" :
myText = " Stickies possess much of the same composition as Green Glooples, and very little additional behavioral functionality. They possess a much thinner outer membrane and a thick, viscous binding agent in their organic plasm. When a Stickie comes in contact with anything solid, they burst and release this adhesive goo. This acts as both a defensive measure to obstruct threats to the nest, and as a tool to aid more deadly Glooples in catching prey.\r\r Stickie goo is a very effective substance at restricting movement and also has insulative properties. The goo, ";
myText = myText + "however, like most Gloople composition, breaks down after only a short time due to open-air exposure and friction, and is in no way permanent. Behaviorally, the Nest simply directs the closest Stickie toward whatever it wishes to gum up - the Stickies have very little ability to make fine adjustments to their course of travel and lack any sort of observational skills.";
break;
case "Biter" :
myText = " Regardless of how deep one gets into a Gloople nest, one of the most dangerous Glooples will always be the Biter. Neither rare nor passive in any sense, the Biter is the primary hunting mechanism of a Gloople nest.\r\r Very similar to Green Glooples in organic composition, the Biters are equipped with much more complex and well developed synaptic fiber clusters and the ability to grow shaped, keratinous protrusions connected to the central mass by sinuous tensile strands. The \"teeth\" calcify within the body of the Biter over only a few hours, so those that are";
myText = myText + " broken away are quickly replaced. Biters have thicker and more durable outer membranes suited to anchoring it's teeth while biting. Because of this tougher membrane, Biters are unable to absorb small matter into their bodies, but their greater musculature does allow them to make short distance lunges in an attempt to snag or pin down prey.\r\r Due to their physiology and role in the nest, Biters are very aggressive and very persistent at pursuing prey or threats to the nest. The vast majority of human injuries are due to these Glooples. In addition, some experts speculate ";
myText = myText + "that because of their similarly rudimentary organic composition to that of a common Green Gloople, it may be possible that they are also capable of reverse mitosis.";
break;
case "Meltie" :
myText = " All Gloople's internal organic compounds are slightly acidic, though most at only a very minor level. Melties, however, possess an extremely voracious acid within their bodies, held back by only a thin protective membrane. Though they are more complex organisms than the common Gloople, they are incapable of complex behavior, presumably due to the fact that their synaptic and biomechanical components require such specific and extensive protective coatings and structures to be able to function within the deadly acid that composes their fluids.\r\r Like Stickies,";
myText = myText + "the Meltie's behavior patterns are primarily to move toward whatever threat or target the nest has identified. Melties are not particularly rare, and their highly caustic fluids are more than potent enough to be fatal to any human, and as such they are a great threat to any venturing into a nest. However, very few other Glooples are as well-protected from this acid as the Meltie itself is, and as such a burst Meltie can cause havoc among other Glooples as readily as it can human intruders.\r\r In any case, extreme caution is advised anywhere in the vicinity of one of these ";
myText = myText + "acid \"bombs\", and the appearance of one should always garner caution and one's full attention.";
break;
case "Sharp" :
myText = " Sharps are generally found to be a defensive tool of the nest rather than a function of hunting or utility. This Gloople has the ability to both shape and harden it's outer membrane in response to it's surroundings, and is one of the more externally aware and perceptive Glooples to be discovered. When threatened or approaching a threat, the Sharp coils internal threads of sinuous tissue and thrusts these out against it's outer membrane causing spiny protrusions. At the same time, it's skin is hardened into a shell-like enamel which produces several spear shaped points.";
myText = myText + "\r\r The Sharp responds in this way to any dangerous stimuli it encounters, and while in this form is very durable. Once the hazard is no longer present, the Sharp returns to it's usual shape. Sharps are fairly agile and will continue to follow and attempted to skewer any threat they can identify until destroyed or driven away.";
break;
case "Inkie" :
myText = " Like Stickies, Inkies are designed to travel toward a target and burst themselves by contact, rupturing their fragile outer membranes to release the fluid contents of their bodies. Unlike Stickies, however, Inkies are composed of a substance very similar to petrol. The resulting area after an Inkie has burst is left extremely slick and difficult to move dexterously through.\r\r In addition, while all Glooples are somewhat flammable due to the alcohol base of their liquid components, Inkies are especially so, and their ink, if ignited will burn for an extended ";
myText = myText + "period or may even combust if adequately compressed. Any Inkie within the proximity of open flame should be carefully avoided.";
break;
case "Clutter" :
myText = " Simple organisms are noted for their ability to reproduce by self-duplication, normally in the form of mitosis. However, most Glooples do not exhibit this trait. The Clutter, however, has the ability to produce similar organisms to itself at an alarming rate and even uses them as a method of bringing down threats to the nest. A Clutter is a veritable duplicate factory, and is in the constant stages of bearing small versions of itself within it's body. These \"babies\" develop very rapidly within the protective confines of their parent Gloople, and upon completion";
myText = myText + " are projected at foes from a distance.\r\r Clutter spawn are considerably sticky after being freshly jettisoned from the bodies of fully grown Clutters, and tend to stick to and impair an intruding threat to the nest. Baby Clutters cling well and their bulk and weight will eventually burden down an opponent, particularly if several siblings are attached as well. Even if shaken free, these infant Glooples begin a process of very rapid growth and can reach full size and adulthood in mere moments - where they can then produce spawn of their own.\r\r Even if destroyed, an ";
myText = myText + "adult Clutter is a threat. As it's outer membrane is breached, any developed spawn within it's body are freed to immediately begin growth into adults. In addition, Clutters are cautious and observant enough to try and stay out of reach of any potential threats.";
break;
case "Fuzzle" :
myText = " A peculiarity among Glooples, the Fuzzle is possibly the least like any other Gloople that has been previously observed. The Fuzzle's outer membrane is extremely thick, more like a tough hide than the filmy membrane of it's relatives. Additionally, the Fuzzle grows a thick coat of fur around the whole of it's body, which gives it additional protection from harm. These elements make the Fuzzle exceptionally tough compared to other Glooples of it's size.\r\r This durability is matched by a much more advanced mandible, which mimics the jaw of a more typical creature, complete with ";
myText = myText + "teeth. Fuzzles are capable of longer-distance lunges and more precise movements than it's simpler cousin, the Biter. Even mutual hazards such as pools of acid, open flame and damage from other hostile Glooples cannot immediately dissuade a Fuzzle from it's prey.\r\r Even more alarming is that, as it is wounded and it's coat is damaged, the Fuzzle will attempt to avoid any further threats for a short time. This allows it's exceptionally high metabolic rate to regrow it's coat in only a matter of moments, restoring any lost durability it may have suffered.\r\r An extremely ";
myText = myText + "dangerous Gloople and a much more advanced hunting machine than it's predecessor, Fuzzles should be dealt with quickly and carefully.";
break;
case "Oozle" :
myText = " The result of the peculiar quality of reverse-mitosis which Glooples exhibit, the Oozle is the compounding of two compatible common Glooples into a single, much larger and more complex organism. The Oozle, firstly, is of adequate size to absorb threats as large as humans. Thus, their behavior is also somewhat altered in that they are able to actively pursue such a target in an attempt to simply come in contact with and absorb it.\r\r Because the Oozle is much more massive and it's external membrane is much thicker than it's smaller components, much more trauma is required to ";
myText = myText + "the Oozle's outer skin in order to breach it. The Oozle's lumbering mass is generally not disturbed by much of any type of damage to it's body - even that which is significant to do it harm. Therefore, it is wise for any attempting to attack this brute to do so from behind, as it's large size also adversely affects it's movement speed.";
break;
case "Grinder" :
myText = " Grinders are more similar to their much smaller relatives than it may first appear. This Gloople secrets from it's outer membrane an extremely powerful adhesive which slowly solidifies to a mineral hardness. The Grinder uses this sticky secretion to collect various pieces of rock loosened or dug out during the excavation of the nest. These fragments of stone collect and compress into tight layers as more of the thick adhesive seeps around the cracks and collects more stone. Once the Grinder has reached a certain density, it ceases to produce the organic glue and actively ";
myText = myText + "facilitates the continued compacting of it's stony shell by constantly rolling through rock beds.\r\r At this stage, the Grinder begins to heat up greatly at it's core, and this intense heat in addition to the tight compression of the inner layers of stone causes the deepest layers to become slightly molten and gain the ability to shift with the momentum of the Grinder.\r\r Not particularly aggressive, the Grinders in a nest are generally used to bash apart any obstructions during the construction of a nest, or to simply crush anything which might threaten the nest. Though not ";
myText = myText + " particularly fast, a Grinder's speed can be surprising, and it's incredibly hard shell makes it all but invulnerable to harm while the stone is intact. The best course of action is generally to move out of the way as soon as possible.";
break;
case "Torchie" :
myText = " Torchies have developed a much purer composition of their alcohol-based organic fluids than any other known variety of Gloople, as well as a very effective method of utilizing this quality. A Torchie's outer skin is considerably more flame resistant than it's cousins and indeed vents a constant flow of the flammable liquid through pores in this membrane. The Torchie is then able to trigger a sudden and volatile chemical reaction in a gland on it's surface which combusts and sheathes the organism in flame.\r\r So \"armed\", the Torchie is then able to spread this flame to anything ";
myText = myText + "remotely flammable by spreading it's burning liquid onto touched surfaces. The constant flow of fuel around the surface of the Torchie keeps the flame lit with fair consistency, although the fire has been observed to go out after an extended period of time. Once lit, the Torchie's behavior patterns seem to focus on coming in contact with as much matter as possible and spreading any existing fires. Once extinguished, however, it appears that the ignition gland becomes exhausted after a single use, and the Gloople must either flee or find an alternate source of ignition to re-light ";
myText = myText + "itself.\r\r It has been unfortunately observed that breaching a Torchie's outer skin while it is alight has the cataclysmic result of igniting the Gloople's entire payload at once, and such action is strongly discouraged.";
break;
case "Frostie" :
myText = " A biological mystery, the Frostie is a strange and very dangerous result of a nest's development. This gloople produces in large quantities an extremely highly compressed, low-density fluid which it stores in a layer of insulated cells just inside it's outer membrane. This fluid leaks constantly from the porous skin of the Frostie and creates a thin layer of frozen water vapor around the organism. Like many other breeds of Gloople, the Frostie's purpose in existence is to come in direct contact with a threat or predatory target of the nest and breach itself. In doing so, the ";
myText = myText + "Frostie's stores of super cooled fluid are released violently in a cloud of freezing vapor. The result is a thick coating of solid ice around everything in the area.\r\r Some quality of the Frostie, possibly the fact that it is surrounded in a constantly-shifting area of frost, makes it the fastest moving Gloople to be currently observed. These hazards are difficult to avoid, and there does not seem to be any completely safe way of disposing of them without being at least somewhat effected by their dramatic detonation. Caution and advanced preparation are advised to any ";
myText = myText + "with intentions of damaging one of these bizarre organisms.";
break;
case "Gray" :
myText = " Further mutual absorption of the common Gloople seems to lend a progressively more developed and sinister organism. The Gray maintains the advantages of size, but it's additional density and cellular complexity gives it a much harder and still quite mutable outer membrane, which it uses in both a defensive and offensive capacity.\r\r Just as resilient as it's simpler cousin the Oozle, the Grey gains considerable traits of perception and stimulus response. When directly threatened, the Gray hardens it's outer skin into an almost steel-strong shell that appears to be impenetrable.";
myText = myText + " In this form, while the Gloople is unable of any type of locomotion, any type of attack is ineffective against it. The Gray has also developed this quality into a weapon, by extending a long thread of it's substance and hardening it's tip into this same metallic structure, the Gloople thrusts forward a lance capable of impaling it's enemies from a distance with deadly accuracy.\r\r With this organism's exceptional defensive ability and long-reaching offensive potential, those looking to deal with it by force would be well advised to seek an opportunity during which the Gray would be ";
myText = myText + "unable to quickly react in order to strike successfully.";
break;
case "VoidEater" :
myText = " An incredible organism that seems to bend the rules of biology and physics alike, the Void Eater is a phenomenal threat to any intruder into a Gloople nest. Apparently with the compounding and compression of numerous already-dense simple organisms, the final product gains the uncanny ability to manipulate gravitational fields on a frightening scale. One could not even begin to guess at the physiology of such an organism, and a sample has never been recovered for study (if such study would even be possible).\r\r What is known is that the Void Eater is able to produce powerful ";
myText = myText + "gravity wells by further compressing it's form into a tiny point, thus drawing any and all nearby objects toward it. When any such object approaches within the vicinity of the Void Eater, the organism is capable of creating an incredibly destructive shockwave by rapidly compressing and decompressing it's mass. This shockwave decimates anything nearby with explosive force in an instant. How any prospective attacker would even approach this creature is questionable.\r\r In addition to this, it has been reported that in a truly baffling show of force, the Void Eater is able to use ";
myText = myText + "a moment to collect and compress local particles and then project this incredibly dense material in a type of \"density stream\" which would draw in and obliterate any nearby matter. Avoid at all costs.";
break;
case "Amalgam" :
myText = " An occasional mutation within the genetic structure of the common Gloople has been observed to cause the development of this type of cellulophagic aberration, which has been labeled the Amalgam. This organism seems to be as much a threat to the nest that spawned it as it is to any human intruders, although the nest still seems to be able to direct it against any foes which present themselves. The Amalgam has a constantly mutating structure and in fact is a maelstrom of self-consuming and self dividing cells.\r\r When this mass comes in contact with any external organic mass, such as";
myText = myText + " another Gloople or a human intruder, it immediately and very rapidly breaks down each and every cell to it's most basic components and integrates the biomass into it's own, growing in size but not complexity. As the Amalgam consumes and grows to a certain size, it spontaneously divides into two identical organisms, which then continue on their quest to rampantly consume any available living matter. Because the Amalgam, unlike any other known Gloople, is a decentralized organism and possesses no discernable anatomical or physiological parts, it is very difficult to destroy. Even ";
myText = myText + " massive trauma only destroys some of the organisms cells, and will sometimes cause the sudden separation of a smaller Amalgam from the main mass. Fortunately, the Amalgam can only consume living things of it's own size or smaller.";
break;
case "Horror" :
myText = " Reverse mitosis, normally observed between common Glooples, lends much more dangerous organisms. Biters, an already very dangerous Gloople, are clearly capable of this feat as well, and doing so produces one of the deadliest Glooples ever cataloged - the Horror. With increased mass, more developed behavior and an unmatched arsenal of biological weaponry, the Horror is a nightmare to any human attempting to confront it. While a Biter is generally able to expose only a few of it's keratinous teeth at any time, the Horror can expose and utilize a huge number of these sharp extrusions ";
myText = myText + "all at once.\r\r Constantly surrounded by rapidly rotating tracks of these teeth, the Horror needs to do little more than drive itself into most foes to shred them into unrecognizable ribbons. Unfortunately, this terror is able to release a row of these teeth at will and allow them to fly at deadly velocity away from it's body to bury into any unprepared opponent. What's worse, these loosed teeth are seeded with a powerful genetic spore which, if buried into the mass of a common Gloople, triggers a rapid mutation of that organism into a Biter.\r\r The Horror is also capable of a sort";
myText = myText + " of controlled division, during which it casts out a group of subordinate toothy disks at it's prey which then return and recombine into the creature. Use all available measures to prevent such a creature from forming.";
break;
case "Queen" :
myText = " Once a nest reaches a certain size and maturity, through a process not well understood, a single Queen forms. This organism exhibits much more complex behavioral patterns and perception than other Glooples. It is not clear if the Queen actually directs the actions of the nest or is simply an extension of the nest as a whole.\r\r The Queen's biology is also exceptional in that she is possessed of a pair of extremely large blade-like limbs which are most often drug behind her as she moves. However, when threatened the queen is able to make deft swipes and lunges with these lethal ";
myText = myText + "instruments with precision enough to match the most skilled of human equivalents. The chitinous construction of these blades is iron-hard yet light enough to be very quickly swung.\r\r In addition to this swordsmanship, the Queen constantly produces and releases small larva when she is threatened. If these larva come in contact with a viable Gloople host, they infest and lie dormant inside until the host is destroyed or travels outside of the influence of the Queen. Should the Queen be destroyed while one of these larval pods remains within her reach, a chemical signal is received ";
myText = myText + "and the pupa bursts violently free of it's host and develops with incredible alacrity into a battle-ready duplicate of the felled Queen. Engaging a Queen in combat is incredibly dangerous.";
break;
case "RazorQueen" :
myText = " Very rarely, a nest that reaches a level of maturity in which a Queen is born will have an unusually high concentration of Biters among it's populous. Through a specific mutation due to the prevalence of Biter genes in the nest, a Razor Queen, or Biter Queen, may be born. An organism of remarkable complexity and elegant lethality, such an aberrant queen is an almost insurmountable opponent.\r\r The Razor Queen seems to combine properties of several other types of Glooples. Like a Queen, her primary method of attack and defense are";
myText = myText + " pairs of massive bladed limbs which she wields in much the same way, raking and slashing at potential enemies. Like Biters, she constantly produces a hard, keratinous material at an extremely high rate which she uses to form various projectiles, and sheds the excess as teeth from her body. Worse, she appears to be able to use an advanced form of the Queen's larva-producing ability to create subordinate organisms adorned with these bladelike spines.\r\r";
myText = myText + " Worse, the Razor Queen is extremely well protected, and opportunities for attack are rare. The Razor Queen is the most dangerous enemy one could potentially face in any nest.";
}
dataText.text = myText;
dataText.setTextFormat(dataTextFormat);
dataText._width = dataText._width - 1;
}
}
Instance of Symbol 235 MovieClip "Model" in Symbol 237 MovieClip [Info Amalgam] Frame 1
onClipEvent (enterFrame) {
if (_currentframe == 61) {
gotoAndPlay (1);
}
}
Instance of Symbol 274 MovieClip "Model" in Symbol 276 MovieClip [Info Clutter] Frame 1
onClipEvent (enterFrame) {
if (_currentframe == 81) {
gotoAndPlay (1);
}
}
Instance of Symbol 278 MovieClip "Model" in Symbol 280 MovieClip [Info Frostie] Frame 1
onClipEvent (load) {
frosts = 0;
frostCounter = 0;
}
onClipEvent (enterFrame) {
if ((frosts < 10) && (int(Math.random() * 5) == 1)) {
attachMovie("Frost", "Frost" + frostCounter, frostCounter);
with (eval ("Frost" + frostCounter)) {
_rotation = _rotation + int(Math.random() * 360);
_x = _x + (int(Math.random() * 30) - 15);
_y = _y + (int(Math.random() * 30) - 15);
}
frosts++;
frostCounter++;
if (frostCounter == 10) {
frostCounter = 0;
}
}
x = 0;
while (x < 10) {
lookFrost = eval ("Frost" + x);
if (lookFrost != null) {
if ((lookFrost._xscale == 60) && (int(Math.random() * 10) == 1)) {
lookFrost.removeMovieClip();
frosts--;
}
if (lookFrost._xscale > 60) {
lookFrost._xscale = lookFrost._xscale - 2;
lookFrost._yscale = lookFrost._yscale - 2;
}
}
x++;
}
}
Instance of Symbol 327 MovieClip "Model" in Symbol 329 MovieClip [Info Fuzzle] Frame 1
onClipEvent (enterFrame) {
if ((_currentframe == 61) && (int(Math.random() * 5) != 1)) {
gotoAndPlay (1);
}
}
Instance of Symbol 455 MovieClip "Model" in Symbol 457 MovieClip [Info Gray] Frame 1
onClipEvent (enterFrame) {
if ((_currentframe == 51) && (int(Math.random() * 5) != 1)) {
gotoAndPlay (11);
}
if (_currentframe == 95) {
gotoAndPlay (2);
}
}
Instance of Symbol 493 MovieClip "Model" in Symbol 495 MovieClip [Info Horror] Frame 1
onClipEvent (enterFrame) {
if (_currentframe == 71) {
gotoAndPlay (41);
}
}
Instance of Symbol 514 MovieClip "Model" in Symbol 516 MovieClip [Info Meltie] Frame 1
onClipEvent (enterFrame) {
if (((_currentframe == 20) || (_currentframe == 40)) || (_currentframe == 60)) {
switch (_currentframe) {
case 20 :
bubbleRotation = _rotation + 45;
break;
case 40 :
bubbleRotation = _rotation - 90;
break;
case 60 :
bubbleRotation = _rotation - 180;
}
if (bubbleRotation > 179) {
bubbleRotation = bubbleRotation - 360;
}
if (bubbleRotation < -180) {
bubbleRotation = bubbleRotation + 360;
}
PopName = (("_root." + this._name) + "Pop") + _currentframe;
attachMovie("Splat" + String(random(3) + 1), "Pop" + _currentframe, _currentframe);
with (eval ("Pop" + _currentframe)) {
_rotation = bubbleRotation;
_x = _x + (10 * Math.sin(bubbleRotation * (Math.PI/180)));
_y = _y - (10 * Math.cos(bubbleRotation * (Math.PI/180)));
_xscale = 30;
_yscale = 30;
PopColor = new Color(eval ("Pop" + this._currentframe));
PopColor.setRGB(15898925);
}
}
x = 20;
while (x < 80) {
popName = eval ("Pop" + x);
if (popName != null) {
if (popName._currentframe == 32) {
popName.removeMovieClip();
}
}
x = x + 20;
}
}
Instance of Symbol 528 MovieClip "Model" in Symbol 530 MovieClip [Info Queen] Frame 1
onClipEvent (load) {
stop();
wisps = 0;
wispCounter = 0;
}
onClipEvent (enterFrame) {
if ((wisps < 10) && (int(Math.random() * 5) == 1)) {
attachMovie("Queen Wisp", "Wisp" + wispCounter, wispCounter);
with (eval ("Wisp" + wispCounter)) {
whereOnSkin = int(Math.random() * 359) - 180;
if (int(Math.random() * 2) == 1) {
_xscale = -100;
}
_rotation = this._rotation + whereOnSkin;
_x = _x + (10 * Math.sin(_rotation * (Math.PI/180)));
_y = _y - (10 * Math.cos(_rotation * (Math.PI/180)));
}
wisps++;
wispCounter++;
if (wispCounter == 10) {
wispCounter = 0;
}
}
x = 0;
while (x < 10) {
lookWisp = eval ("Wisp" + x);
if (lookWisp != null) {
if (lookWisp._currentframe == 56) {
lookWisp.removeMovieClip();
wisps--;
}
}
x++;
}
}
Instance of Symbol 532 MovieClip "Model" in Symbol 534 MovieClip [Info RazorQueen] Frame 1
onClipEvent (load) {
stop();
teeth = 0;
toothCounter = 0;
}
onClipEvent (enterFrame) {
if ((teeth < 10) && (int(Math.random() * 20) == 1)) {
attachMovie("Razor Tooth", "Tooth" + toothCounter, toothCounter);
with (eval ("Tooth" + toothCounter)) {
whereOnSkin = int(Math.random() * 359) - 180;
_yscale = 50;
if (int(Math.random() * 2) == 1) {
_xscale = -50;
} else {
_xscale = 50;
}
_rotation = _rotation + whereOnSkin;
_x = _x + (2 * Math.sin(_rotation * (Math.PI/180)));
_y = _y - (2 * Math.cos(_rotation * (Math.PI/180)));
}
teeth++;
toothCounter++;
if (toothCounter == 10) {
toothCounter = 0;
}
}
x = 0;
while (x < 10) {
lookTooth = eval ("Tooth" + x);
if (lookTooth != null) {
with (lookTooth) {
toHost_x = _x - this._x;
toHost_y = _y - this._y;
offSet = Math.sqrt((toHost_x * toHost_x) + (toHost_y * toHost_y));
if (_yscale < 100) {
if (_xscale < 0) {
_xscale = _xscale - 5;
} else {
_xscale = _xscale + 5;
}
_yscale = _yscale + 5;
_y = _y - (0.2 * Math.cos(_rotation * (Math.PI/180)));
_x = _x + (0.2 * Math.sin(_rotation * (Math.PI/180)));
} else if (_yscale < 105) {
_yscale = _yscale + 0.2;
_y = _y - (0.5 * Math.cos(_rotation * (Math.PI/180)));
_x = _x + (0.5 * Math.sin(_rotation * (Math.PI/180)));
} else {
this.teeth--;
lookTooth.removeMovieClip();
}
}
}
x++;
}
}
Instance of Symbol 590 MovieClip "Model" in Symbol 591 MovieClip [Info Sharp] Frame 1
onClipEvent (enterFrame) {
if ((_currentframe == 41) && (int(Math.random() * 3) != 1)) {
gotoAndPlay (1);
}
if ((_currentframe == 76) && (int(Math.random() * 3) != 1)) {
gotoAndPlay (56);
}
}
Instance of Symbol 607 MovieClip "Model" in Symbol 609 MovieClip [Info Torchie] Frame 1
onClipEvent (enterFrame) {
if (((_currentframe == 1) && (int(Math.random() * 4) == 1)) && (eval (myFlame) == null)) {
attachMovie("Gloople Flame", "myFlame", 1);
myFlame._rotation = myFlame._rotation - 180;
}
if (eval (myFlame) != null) {
if (myFlame._currentframe == 130) {
myFlame.removeMovieClip();
}
if ((myFlame._currentframe == 100) && (int(Math.random() * 5) != 1)) {
myFlame.gotoAndPlay(30);
}
}
}
Instance of Symbol 733 MovieClip "Model" in Symbol 736 MovieClip [Info VoidEater] Frame 1
onClipEvent (enterFrame) {
if (_currentframe == 70) {
gotoAndPlay (11);
}
}
Instance of Symbol 747 MovieClip "QualityDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_quality == "BEST") {
_quality = "HIGH";
} else if (_quality == "HIGH") {
_quality = "MEDIUM";
} else if (_quality == "MEDIUM") {
_quality = "LOW";
}
_parent.QualitySetting.text = _quality;
}
Instance of Symbol 747 MovieClip "SpawnDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.spawnLimit > 8) {
_global.spawnLimit--;
_parent.SpawnSetting.text = _global.spawnLimit;
}
}
Instance of Symbol 747 MovieClip "LengthDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_parent.LengthSetting.text == "Long") {
_parent.LengthSetting.text = "Normal";
_global.interval = 30;
} else if (_global.gameLengthDisp == "Normal") {
_parent.LengthSetting.text = "Short";
_global.interval = 15;
}
}
Instance of Symbol 747 MovieClip "FPSDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.showFPS) {
_global.showFPS = false;
_parent.FPSSetting.text = "Off";
}
}
Instance of Symbol 747 MovieClip "QualityUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_quality == "LOW") {
_quality = "MEDIUM";
} else if (_quality == "MEDIUM") {
_quality = "HIGH";
} else if (_quality == "HIGH") {
_quality = "BEST";
}
_parent.QualitySetting.text = _quality;
}
Instance of Symbol 747 MovieClip "SpawnUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.spawnLimit < 20) {
_global.spawnLimit++;
_parent.SpawnSetting.text = _global.spawnLimit;
}
}
Instance of Symbol 747 MovieClip "LengthUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_parent.LengthSetting.text == "Short") {
_parent.LengthSetting.text = "Normal";
_global.interval = 30;
} else if (_parent.LengthSetting.text == "Normal") {
_parent.LengthSetting.text = "Long";
_global.interval = 60;
}
}
Instance of Symbol 747 MovieClip "FPSUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (!_global.showFPS) {
_global.showFPS = true;
_parent.FPSSetting.text = "On";
}
}
Instance of Symbol 216 MovieClip "OptionBack" in Symbol 752 MovieClip [Option Menu] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
_root.subMenu = false;
_root.OptionMenu.removeMovieClip();
}
Instance of Symbol 747 MovieClip "MusicDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.musicMode == "On") {
_global.musicMode = "Off";
_global.playSong("juke");
}
_parent.MusicSetting.text = _global.musicMode;
}
Instance of Symbol 747 MovieClip "MusicUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.musicMode == "Off") {
_global.musicMode = "On";
_global.playSong("juke");
}
_parent.MusicSetting.text = _global.musicMode;
}
Instance of Symbol 747 MovieClip "BackdropsDown" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.floorMode == "Random") {
_global.floorMode = "Simple";
}
_parent.FloorSetting.text = _global.floorMode;
}
Instance of Symbol 747 MovieClip "BackdropsUp" in Symbol 752 MovieClip [Option Menu] Frame 1
on (press) {
if (_global.floorMode == "Simple") {
_global.floorMode = "Random";
}
_parent.FloorSetting.text = _global.floorMode;
}
Symbol 758 MovieClip [Practice Plate] Frame 1
stop();
_global.selectedGloople = null;
Instance of Symbol 216 MovieClip "GoBack" in Symbol 758 MovieClip [Practice Plate] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
_root.subMenu = false;
_root.PracticeMenu.removeMovieClip();
}
Instance of Symbol 223 MovieClip [Tile] "TileGloople" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Gloople") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Gloople", "Profile", 1);
if (SearchArray(PracticeEnemies, "Gloople") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Gloople") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Gloople"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Gloople");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileStickie" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Stickie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Stickie", "Profile", 1);
if (SearchArray(PracticeEnemies, "Stickie") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Stickie") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Stickie"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Stickie");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileBiter" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Biter") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Biter", "Profile", 1);
if (SearchArray(PracticeEnemies, "Biter") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Biter") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Biter"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Biter");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileMeltie" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Meltie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Meltie", "Profile", 1);
if (SearchArray(PracticeEnemies, "Meltie") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Meltie") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Meltie"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Meltie");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileSharp" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Sharp") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Sharp", "Profile", 1);
if (SearchArray(PracticeEnemies, "Sharp") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Sharp") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Sharp"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Sharp");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileClutter" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Clutter") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Clutter", "Profile", 1);
if (SearchArray(PracticeEnemies, "Clutter") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Clutter") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Clutter"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Clutter");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileInkie" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Inkie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Inkie", "Profile", 1);
if (SearchArray(PracticeEnemies, "Inkie") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Inkie") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Inkie"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Inkie");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileGrinder" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Grinder") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Grinder", "Profile", 1);
if (SearchArray(PracticeEnemies, "Grinder") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, true)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Grinder") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Grinder"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Grinder");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileFuzzle" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Fuzzle") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Fuzzle", "Profile", 1);
if (SearchArray(PracticeEnemies, "Fuzzle") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Fuzzle") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Fuzzle"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Fuzzle");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileOozle" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Oozle") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Oozle", "Profile", 1);
if (SearchArray(PracticeEnemies, "Oozle") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Oozle") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Oozle"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Oozle");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileTorchie" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Torchie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Torchie", "Profile", 1);
if (SearchArray(PracticeEnemies, "Torchie") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Torchie") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Torchie"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Torchie");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileFrostie" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Frostie") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Frostie", "Profile", 1);
if (SearchArray(PracticeEnemies, "Frostie") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Frostie") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Frostie"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Frostie");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileGray" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Gray") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Gray", "Profile", 1);
if (SearchArray(PracticeEnemies, "Gray") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Gray") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Gray"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Gray");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileAmalgam" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Amalgam") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Amalgam", "Profile", 1);
if (SearchArray(PracticeEnemies, "Amalgam") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Amalgam") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Amalgam"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Amalgam");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileHorror" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Horror") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Horror", "Profile", 1);
if (SearchArray(PracticeEnemies, "Horror") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Horror") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Horror"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Horror");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileVoidEater" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "VoidEater") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info VoidEater", "Profile", 1);
if (SearchArray(PracticeEnemies, "VoidEater") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "VoidEater") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "VoidEater"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("VoidEater");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileQueen" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
if (SearchArray(EnemiesKilled, "Queen") == null) {
tileLit = false;
} else {
tileLit = true;
attachMovie("Info Queen", "Profile", 1);
if (SearchArray(PracticeEnemies, "Queen") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "Queen") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "Queen"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("Queen");
}
}
}
Instance of Symbol 223 MovieClip [Tile] "TileRazorQueen" in Symbol 758 MovieClip [Practice Plate] Frame 1
onClipEvent (load) {
stop();
onMe = false;
_visible = false;
if (SearchArray(EnemiesKilled, "RazorQueen") == null) {
tileLit = false;
} else {
tileLit = true;
_visible = true;
attachMovie("Info RazorQueen", "Profile", 1);
if (SearchArray(PracticeEnemies, "RazorQueen") == null) {
attachMovie("Tile Shader", "Shader", 2);
}
}
}
onClipEvent (enterFrame) {
if (tileLit) {
if (hitTest(_root._xmouse, _root._ymouse, false)) {
onMe = true;
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_currentframe == 41) {
gotoAndPlay (1);
}
} else {
onMe = false;
play();
if (_currentframe == 41) {
gotoAndStop (1);
}
if (_currentframe == 1) {
stop();
}
}
} else {
gotoAndStop (42);
}
}
onClipEvent (mouseDown) {
if (onMe && (tileLit)) {
if (SearchArray(PracticeEnemies, "RazorQueen") != null) {
attachMovie("Tile Shader", "Shader", 2);
_global.PracticeEnemies.splice(SearchArray(_global.PracticeEnemies, "RazorQueen"), 1);
} else {
Shader.removeMovieClip();
_global.PracticeEnemies.push("RazorQueen");
}
}
}
Instance of Symbol 757 MovieClip "GoButton" in Symbol 758 MovieClip [Practice Plate] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
if (PracticeEnemies.length > 0) {
_global.gameMode = "Practice";
_root.subMenu = false;
_level0.nextFrame();
_root.PracticeMenu.removeMovieClip();
}
}
Instance of Symbol 765 MovieClip [SwordButton RazorGlaive] "RazorglaiveButton" in Symbol 770 MovieClip [Weapon Select] Frame 1
onClipEvent (load) {
stop();
onMe = false;
myTipText = "The Razor Glaive is an exceedingly powerful weapon with a wide swing arc. Exceptional density and size lend great reach and destructive power, but at the cost of mobility";
if (!_global.RazorGlaiveEquipped) {
_xscale = 70;
_yscale = 70;
gotoAndStop (21);
}
}
onClipEvent (enterFrame) {
if (_global.RazorGlaiveUnlocked) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
}
if (!_global.RazorGlaiveEquipped) {
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_xscale > 70) {
_xscale = (_xscale - 2);
_yscale = (_yscale - 2);
}
} else {
if (_currentframe != 1) {
play();
} else {
stop();
}
if (_xscale < 100) {
_xscale = (_xscale + 2);
_yscale = (_yscale + 2);
}
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
if (!_global.RazorGlaiveEquipped) {
_global.RazorGlaiveEquipped = true;
}
}
}
Instance of Symbol 769 MovieClip [SwordButton Splatmaster] "SplatmasterButton" in Symbol 770 MovieClip [Weapon Select] Frame 1
onClipEvent (load) {
stop();
onMe = false;
myTipText = "The Splatmaster 3000 is the standard Gloople population control device. Very effective at eliminating typical threats and durable enough to withstand protracted use";
if (_global.RazorGlaiveEquipped) {
_xscale = 70;
_yscale = 70;
gotoAndStop (21);
}
}
onClipEvent (enterFrame) {
if (_global.RazorGlaiveUnlocked) {
if (hitTest(_root._xmouse, _root._ymouse, false) && (_root.subMenu == false)) {
onMe = true;
_root.infoBox.tipText = myTipText;
} else {
onMe = false;
if (_root.infoBox.tipText == myTipText) {
_root.infoBox.tipText = null;
}
}
if (_global.RazorGlaiveEquipped) {
if (_currentframe != 21) {
play();
} else {
stop();
}
if (_xscale > 70) {
_xscale = (_xscale - 2);
_yscale = (_yscale - 2);
}
} else {
if (_currentframe != 1) {
play();
} else {
stop();
}
if (_xscale < 100) {
_xscale = (_xscale + 2);
_yscale = (_yscale + 2);
}
}
}
}
onClipEvent (mouseDown) {
if (onMe) {
if (_global.RazorGlaiveEquipped) {
_global.RazorGlaiveEquipped = false;
}
}
}
Symbol 783 MovieClip [Music Exporter] Frame 1
stop();
Symbol 851 MovieClip [Sound Exporter] Frame 1
stop();
Symbol 1028 MovieClip [Instruction Plate] Frame 1
stop();
Instance of Symbol 216 MovieClip "GoBack" in Symbol 1028 MovieClip [Instruction Plate] Frame 1
on (rollOver) {
_xscale = 110;
_yscale = 110;
}
on (rollOut) {
_xscale = 100;
_yscale = 100;
}
on (press) {
_root.subMenu = false;
_root.InstructionMenu.removeMovieClip();
}
Instance of Symbol 1084 MovieClip "Shader" in Symbol 1085 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Instance of Symbol 1107 MovieClip "Shader" in Symbol 1108 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Instance of Symbol 1128 MovieClip "Shader" in Symbol 1129 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Instance of Symbol 1145 MovieClip "Shader" in Symbol 1146 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Instance of Symbol 1164 MovieClip "Shader" in Symbol 1165 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Instance of Symbol 138 MovieClip "SNHS" in Symbol 1173 MovieClip [High Scores] Frame 1
onClipEvent (load) {
SNHSTextFormat = new TextFormat();
SNHSTextFormat.font = "Cooper Black";
SNHSTextFormat.color = 39168;
SNHSTextFormat.size = 18;
SNHSTextFormat.align = "center";
this.createTextField("SNHSText", 1, 0, 0, this._width, this._height);
SNHSText.embedFonts = true;
SNHSText.selectable = false;
}
onClipEvent (enterFrame) {
SNHSText.text = _global.SingleNestHighScore;
SNHSText.setTextFormat(SNHSTextFormat);
}
Instance of Symbol 138 MovieClip "BRHS" in Symbol 1173 MovieClip [High Scores] Frame 1
onClipEvent (load) {
BRHSTextFormat = new TextFormat();
BRHSTextFormat.font = "Cooper Black";
BRHSTextFormat.color = 39168;
BRHSTextFormat.size = 18;
BRHSTextFormat.align = "center";
this.createTextField("BRHSText", 1, 0, 0, this._width, this._height);
BRHSText.embedFonts = true;
BRHSText.selectable = false;
}
onClipEvent (enterFrame) {
BRHSText.text = _global.BountyRunHighScore;
BRHSText.setTextFormat(BRHSTextFormat);
}
Instance of Symbol 1199 MovieClip "Shader" in Symbol 1200 MovieClip Frame 1
onClipEvent (enterFrame) {
gotoAndStop(_parent._currentframe);
}
Symbol 2495 MovieClip [Ground Crack] Frame 2
stop();
Symbol 2495 MovieClip [Ground Crack] Frame 4
stop();
Symbol 2495 MovieClip [Ground Crack] Frame 6
stop();