Frame 2
function someFunction() {
getURL ("http://jacobgrahn.com/", _blank);
}
newMenu = new ContextMenu();
newMenu.hideBuiltInItems();
menuButton = new ContextMenuItem("Jacob Grahn", someFunction);
newMenu.customItems.push(menuButton);
_root.menu = newMenu;
compInfo = getVersion();
spaceChar = compInfo.indexOf(" ");
versionNum = compInfo.charAt(spaceChar + 1);
if (((versionNum == "8") || (versionNum == "9")) || (versionNum == "1")) {
play();
} else {
bCover._visible = false;
lText._visible = false;
stop();
}
Frame 3
stop();
Frame 5
function inforceWalls(xPos, yPos, path) {
tempDist = bounceDist;
xTemp = xPos;
yTemp = yPos;
while (_root.cam.walls.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true)) {
xPos = xTemp;
yPos = yTemp;
if (tempDist > 30) {
break;
}
xPos = xPos + ((Math.random() * tempDist) - (tempDist / 2));
yPos = yPos + ((Math.random() * tempDist) - (tempDist / 2));
tempDist = tempDist + 10;
}
path._x = xPos;
path._y = yPos;
}
function detectGAttack(xPos, yPos, path) {
isHit = false;
if (_root.cam.gAttack.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true)) {
isHit = true;
tempDist = bounceDist;
xTemp = xPos;
yTemp = yPos;
while (_root.cam.gAttack.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true) || (_root.cam.walls.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true))) {
xPos = xTemp;
yPos = yTemp;
if (tempDist > 40) {
break;
}
xPos = xPos + ((Math.random() * tempDist) - (tempDist / 2));
yPos = yPos + ((Math.random() * tempDist) - (tempDist / 2));
tempDist = tempDist + 10;
}
path._x = xPos;
path._y = yPos;
}
return(isHit);
}
function detectBAttack(xPos, yPos, path) {
isHit = false;
if (_root.cam.bAttack.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true)) {
isHit = true;
tempDist = bounceDist;
xTemp = xPos;
yTemp = yPos;
while (_root.cam.bAttack.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true) || (_root.cam.walls.hitTest(xPos + _root.cam._x, yPos + _root.cam._y, true))) {
xPos = xTemp;
yPos = yTemp;
if (tempDist > 40) {
break;
}
xPos = xPos + ((Math.random() * tempDist) - (tempDist / 2));
yPos = yPos + ((Math.random() * tempDist) - (tempDist / 2));
tempDist = tempDist + 10;
}
path._x = xPos;
path._y = yPos;
}
return(isHit);
}
function findAngle(xDis, yDis) {
radians = Math.atan2(yDis, xDis);
degrees = Math.round((radians * 180) / Math.PI);
return(degrees + 90);
}
function magicLevel() {
if (currentMagicLevel > 601) {
currentMagicLevel = 500;
}
return(currentMagicLevel++);
}
function nextTest(target) {
if (target.hitTest(_root.cam.kimblis)) {
clearInterval(target.timer);
target.play();
} else {
clearInterval(target.timer);
xDist = Math.abs(target._x - _root.cam.kimblis._x);
yDist = Math.abs(target._y - _root.cam.kimblis._y);
if (xDist > yDist) {
dist = xDist;
} else {
dist = yDist;
}
target.timer = setInterval(_root.nextTest, (dist / 0.25) + 56, target);
}
}
function changeMusic(song) {
if ((_root.musicVolume >= 5) && (song != "mute")) {
song.stop();
song.start(0, 1000);
song.setVolume(0);
inc = _root.musicVolume / _root.musicFade;
vol = _root.musicVolume;
this.onEnterFrame = function () {
vol = vol - inc;
menuLoop.setVolume(vol);
victoryLoop.setVolume(vol);
exciteLoop.setVolume(vol);
spookyLoop.setVolume(vol);
darkLoop.setVolume(vol);
song.setVolume(musicVolume - vol);
if (vol <= 0) {
song.setVolume(musicVolume);
if (song != menuLoop) {
menuLoop.stop();
}
if (song != victoryLoop) {
victoryLoop.stop();
}
if (song != exciteLoop) {
exciteLoop.stop();
}
if (song != spookyLoop) {
spookyLoop.stop();
}
if (song != darkLoop) {
darkLoop.stop();
}
delete this.onEnterFrame;
}
};
} else {
menuLoop.stop();
victoryLoop.stop();
exciteLoop.stop();
spookyLoop.stop();
darkLoop.stop();
}
}
function changeMusicHalf(song) {
if ((_root.musicVolume >= 5) && (song != "mute")) {
song.stop();
song.start(0, 1000);
song.setVolume(0);
inc = (_root.musicVolume / _root.musicFade) / 2;
vol = _root.musicVolume / 2;
this.onEnterFrame = function () {
vol = vol - inc;
menuLoop.setVolume(vol);
victoryLoop.setVolume(vol);
exciteLoop.setVolume(vol);
spookyLoop.setVolume(vol);
darkLoop.setVolume(vol);
song.setVolume((musicVolume / 2) - vol);
if (vol <= 0) {
song.setVolume(musicVolume / 2);
if (song != menuLoop) {
menuLoop.stop();
}
if (song != victoryLoop) {
victoryLoop.stop();
}
if (song != exciteLoop) {
exciteLoop.stop();
}
if (song != spookyLoop) {
spookyLoop.stop();
}
if (song != darkLoop) {
darkLoop.stop();
}
delete this.onEnterFrame;
}
};
} else {
menuLoop.stop();
victoryLoop.stop();
exciteLoop.stop();
spookyLoop.stop();
darkLoop.stop();
}
}
function chooseTarget(path) {
if (path.victim == _root.cam.kimblis) {
if (_root.cam.girl != undefined) {
path.victim = _root.cam.girl;
} else {
path.victim = _root.cam.kimblis;
}
} else {
path.victim = _root.cam.kimblis;
}
if (path.stillHere != true) {
clearInterval(path.timer);
} else {
clearInterval(path.timer);
path.timer = setInterval(_root.chooseTarget, Math.random() * 30000, path);
}
}
function clearText() {
if (_root.missionText != _root.lastMissionText) {
_root.lastMissionText = _root.missionText;
} else {
_root.missionText = "";
}
}
function endLevel() {
_root.kimblisLevelB = _root.kimblisLevel;
_root.swordLevelB = _root.swordLevel;
_root.airBlastLevelB = _root.airBlastLevel;
_root.healLevelB = _root.healLevel;
_root.windSwordLevelB = _root.windSwordLevel;
_root.windLevelB = _root.windLevel;
_root.twisterLevelB = _root.twisterLevel;
_root.shockwaveLevelB = _root.shockwaveLevel;
_root.maxLifeB = _root.maxLife;
_root.maxMagicB = _root.maxMagic;
_root.upgradePointsB = _root.upgradePoints;
_root.lifePotionCountB = _root.lifePotionCount;
_root.magicPotionCountB = _root.magicPotionCount;
}
function restartLevel() {
_root.kimblisLevel = _root.kimblisLevelB;
_root.swordLevel = _root.swordLevelB;
_root.airBlastLevel = _root.airBlastLevelB;
_root.healLevel = _root.healLevelB;
_root.windSwordLevel = _root.windSwordLevelB;
_root.windLevel = _root.windLevelB;
_root.twisterLevel = _root.twisterLevelB;
_root.shockwaveLevel = _root.shockwaveLevelB;
_root.maxLife = _root.maxLifeB;
_root.maxMagic = _root.maxMagicB;
_root.upgradePoints = _root.upgradePointsB;
_root.lifePotionCount = _root.lifePotionCountB;
_root.magicPotionCount = _root.magicPotionCountB;
_root.gotoAndPlay("levelUp");
}
function switchToSword() {
_root.attackPower = 0.5 + (0.5 * _root.swordLevel);
_root.magicSword = false;
_root.attackMethod = "sword";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.sword._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.sword._width;
}
function switchToMagicSword() {
_root.attackPower = 0.5 + (0.5 * _root.swordLevel);
_root.magicSword = true;
_root.attackMethod = "sword";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.magicSword._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.magicSword._width;
}
function switchToAirBlast() {
_root.attackPower = (0.5 * _root.airBlastLevel) / 2;
_root.attackMethod = "airBlast";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.airBlast._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.airBlast._width;
}
function switchToTwister() {
_root.attackPower = 0.25 * _root.twisterLevel;
_root.attackMethod = "twister";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.twister._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.twister._width;
}
function switchToWind() {
_root.attackPower = 0.25;
_root.attackMethod = "wind";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.wind._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.wind._width;
}
function switchToHeal() {
_root.attackMethod = "heal";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.heal._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.heal._width;
}
function switchToShockwave() {
_root.attackPower = 0.5 * _root.shockwaveLevel;
_root.attackMethod = "shockwave";
_root.sideMenu.attackButtons.shine._x = _root.sideMenu.attackButtons.shockwave._x;
_root.sideMenu.attackButtons.shine._width = _root.sideMenu.attackButtons.shockwave._width;
}
function callMoreBaddies() {
if (_root.cam.kimblis._x < 50) {
if (_root.orcCount < 2) {
w = _root.cam.baddies.attachMovie("orc", "orc" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
w._x = _root.cam.kimblis._x + 300;
w._y = (_root.cam.kimblis._y + (Math.random() * 600)) - 300;
if (_root.cam.walls.hitTest(w._x, w._y, true)) {
w._x = 366;
w._y = 373;
}
}
if (_root.batCount < 2) {
f = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
if (Math.random() > 0.7) {
f._x = 366;
f._y = 373;
} else if (Math.random() > 0.7) {
f._x = 429;
f._y = 210;
} else {
f._x = 386;
f._y = 373;
}
}
}
}
function setDifficulty() {
if (difficulty == "hard") {
maxMagic = 50;
maxLife = 50;
girlLife = 50;
maxGirlLife = 50;
batLife = 3;
batAttackDist = 150;
batFlySpeed = 15;
batAttackSpeed = 18;
orcLife = 10;
mageAttackDist = 200;
} else if (difficulty == "normal") {
maxMagic = 75;
maxLife = 75;
girlLife = 75;
maxGirlLife = 75;
batLife = 2;
batAttackDist = 150;
batFlySpeed = 14;
batAttackSpeed = 17;
orcLife = 8;
mageAttackDist = 175;
} else if (difficulty == "easy") {
maxMagic = 100;
maxLife = 100;
girlLife = 100;
maxGirlLife = 100;
batLife = 1;
batAttackDist = 150;
batFlySpeed = 13;
batAttackSpeed = 16;
orcLife = 6;
mageAttackDist = 125;
}
}
function heal() {
if (_root.lifePotionCount > 0) {
if ((_root.life < _root.maxLife) || (_root.girlLife < _root.maxGirlLife)) {
_root.lifePotionCount--;
_root.life = _root.life + 50;
_root.girlLife = _root.girlLife + 50;
if (_root.life > _root.maxLife) {
_root.life = _root.maxLife;
}
if (_root.girlLife > _root.maxGirlLife) {
_root.girlLife = _root.maxGirlLife;
}
this.sideMenu.lifePotion.sLoop.setVolume(_root.soundVolume);
this.sideMenu.lifePotion.sLoop.start(0, 1);
this.sideMenu.lifePotion.prevFrame();
}
}
}
function healMagic() {
if (_root.magicPotionCount > 0) {
if (_root.magic < _root.maxMagic) {
_root.magicPotionCount--;
_root.magic = _root.magic + 50;
if (_root.magic > _root.maxMagic) {
_root.magic = _root.maxMagic;
}
this.sideMenu.magicPotion.sLoop.setVolume(_root.soundVolume);
this.sideMenu.magicPotion.sLoop.start(0, 1);
this.sideMenu.magicPotion.prevFrame();
}
}
}
function buttonClick() {
clickSound.setVolume(_root.soundVolume);
clickSound.start(0, 1);
}
function buttonRoll() {
rollSound.setVolume(_root.soundVolume / 8);
rollSound.start(0, 1);
}
stop();
qualityLevel = "AUTOHIGH";
detail = "high";
res = 100;
difficulty = "normal";
musicVolume = 100;
soundVolume = 100;
upKey = 87;
downKey = 83;
rightKey = 68;
leftKey = 65;
healthPKey = 69;
magicPKey = 81;
frameRate = 15;
bounceDist = 5;
cheatEnabled = false;
cheatOn = true;
cheated = false;
musicFade = 15;
this.createEmptyMovieClip("menuHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("bgHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("spookyHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("victoryHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("exciteHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("levelUpHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("darkHolder", this.getNextHighestDepth());
menuLoop = new Sound(this.menuHolder);
bgLoop = new Sound(this.bgHolder);
exciteLoop = new Sound(this.exciteHolder);
spookyLoop = new Sound(this.spookyHolder);
victoryLoop = new Sound(this.victoryHolder);
levelUpMusic = new Sound(this.levelUpHolder);
darkLoop = new Sound(this.darkHolder);
menuLoop.attachSound("menuMusic");
bgLoop.attachSound("bgMusic");
exciteLoop.attachSound("exciteMusic");
spookyLoop.attachSound("spookyMusic");
victoryLoop.attachSound("victoryMusic");
levelUpMusic.attachSound("levelUpMusic");
darkLoop.attachSound("darkMusic");
currentSong = _root.victoryLoop;
this.createEmptyMovieClip("clickHolder", this.getNextHighestDepth());
this.createEmptyMovieClip("rollHolder", this.getNextHighestDepth());
clickSound = new Sound(_root.clickHolder);
clickSound.attachSound("beepSound");
rollSound = new Sound(_root.rollHolder);
rollSound.attachSound("buttonRollOverSound");
currentMagicLevel = 500;
textTimer = setInterval(clearText, 10000);
Frame 6
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
changeMusic(menuLoop);
setDifficulty();
magicPotionCount = 1;
lifePotionCount = 1;
upgradePoints = 2;
kimblisLevel = 1;
swordLevel = 1;
airBlastLevel = 0;
healLevel = 0;
windSwordLevel = 0;
windLevel = 0;
twisterLevel = 0;
shockwaveLevel = 0;
upgradePointsB = upgradePoints;
kimblisLevelB = kimblisLevel;
swordLevelB = swordLevel;
airBlastLevelB = airBlastLevel;
healLevelB = healLevel;
windSwordLevelB = windSwordLevel;
windLevelB = windLevel;
twisterLevelB = twisterLevel;
shockwaveLevelB = shockwaveLevel;
maxLifeB = maxLife;
maxMagicB = maxMagic;
lifePotionCountB = lifePotionCount;
magicPotionCountB = magicPotionCount;
levelUpExtra = 0;
magic = maxMagic;
magicRecover = 0.2;
life = maxLife;
attackPower = 1;
weopon = "oldSword";
usingMagic = false;
ready = true;
attack = true;
attackMethod = "sword";
carryCost = 0.15;
windBlastCost = 30;
twisterCost = 1;
twisterInitCost = 30;
magicSwordCost = 30;
magicSword = false;
maxWindDist = 10;
windSpread = 1.1;
windGrow = 0.1;
windBend = 4;
windHold = 30;
windCost = 2;
healSpeed = 0.5;
healStartCost = 15;
healCost = 2;
orcMoveSpeed = 9;
orcRotateSpeed = 5;
orcJumpSpeed = 25;
orcSeeDist = 1000;
orcAttackDist = 85;
mageSpeed = 4;
mageAreaW = 1954;
mageAreaH = 2700;
mageAreaX = -857;
mageAreaY = -2163;
golemRotateSpeed = 10;
golemAttackDist = 200;
Frame 7
stop();
Frame 8
stop();
Frame 9
stop();
Frame 10
stop();
Frame 11
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.changeMusic(dud);
_root.levelUpMusic.start(0, 1);
_root.levelUpMusic.setVolume(_root.musicVolume);
_root.levelUpMusic.onSoundComplete = function () {
_root.changeMusic(_root.spookyLoop);
delete _root.levelUpMusic.onSoundComplete;
};
Frame 12
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
if (_root.currentSong != _root.spookyLoop) {
_root.changeMusic(_root.spookyLoop);
}
Frame 13
stop();
delete _root.levelUpMusic.onSoundComplete;
if (res == 75) {
_root._xscale = 75;
_root._yscale = 75;
_root._x = 81.3;
_root._y = 68.8;
smallTextBox._visible = false;
medTextBox._visible = true;
bigTextBox._visible = false;
} else if (res == 50) {
_root._xscale = 50;
_root._yscale = 50;
_root._x = 162.5;
_root._y = 137.5;
smallTextBox._visible = false;
medTextBox._visible = false;
bigTextBox._visible = true;
} else {
smallTextBox._visible = true;
medTextBox._visible = false;
bigTextBox._visible = false;
}
missionText = "";
lastMissionText = "";
_root._quality = qualityLevel;
_root.magic = _root.maxMagic;
_root.life = _root.maxLife;
_root.girlLife = _root.maxGirlLife;
_root.ready = true;
_root.attack = true;
_root.usingMagic = false;
batCount = 0;
orcCount = 0;
mageCount = 0;
Frame 14
stop();
Frame 15
stop();
Frame 16
stop();
_root.currentSong = _root.spookyLoop;
_root.changeMusicHalf(_root.spookyLoop);
_root._quality = "AUTOHIGH";
_root._xscale = 75;
_root._yscale = 75;
_root._x = 81.3;
_root._y = 68.8;
Frame 17
stop();
_root.currentSong = _root.spookyLoop;
_root.changeMusicHalf(_root.spookyLoop);
_root._quality = "AUTOHIGH";
_root._xscale = 75;
_root._yscale = 75;
_root._x = 81.3;
_root._y = 68.8;
Frame 18
stop();
_root.currentSong = _root.spookyLoop;
_root.changeMusicHalf(_root.spookyLoop);
_root._quality = "AUTOHIGH";
_root._xscale = 75;
_root._yscale = 75;
_root._x = 81.3;
_root._y = 68.8;
Frame 19
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.changeMusic(dud);
_root.cheatEnabled = true;
Frame 20
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.changeMusic(dud);
Frame 21
stop();
Symbol 8 Button
on (release) {
getURL ("http://macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash&promoid=BIOX", _blank);
}
Symbol 27 Button
on (release) {
getURL ("http://armorgames.com/", _blank);
}
Symbol 33 Button
on (release) {
getURL ("http://jacobgrahn.com/", _blank);
}
Symbol 34 MovieClip Frame 1
loadingBox = 0;
stop();
this.onEnterFrame = function () {
loaded = _root.getBytesLoaded();
total = _root.getBytesTotal();
dec = loaded / total;
percent = dec * 100;
this.black._alpha = 100 - percent;
loadingBox = "percent loaded: " + Math.round(percent);
if (loaded == total) {
this.play();
delete this.onEnterFrame;
}
};
Symbol 34 MovieClip Frame 21
stop();
_root.gotoAndStop("intro");
Symbol 43 MovieClip Frame 1
moveSpeed = _root.batFlySpeed;
this.onEnterFrame = function () {
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
this._parent._rotation = _root.findAngle(xDist, yDist) + 180;
if ((Math.abs(this._parent._x - this._parent.victim._x) > _root.batAttackDist) || (Math.abs(this._parent._y - this._parent.victim._y) > _root.batAttackDist)) {
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._parent._x + xSpeed) + _root.cam._x, (this._parent._y + ySpeed) + _root.cam._y, true)) {
this._parent._x = this._parent._x + xSpeed;
this._parent._y = this._parent._y + ySpeed;
} else {
this._parent.gotoAndStop("free");
}
}
};
Symbol 43 MovieClip Frame 6
if (!((Math.abs(this._parent._x - this._parent.victim._x) > _root.batAttackDist) || (Math.abs(this._parent._y - this._parent.victim._y) > _root.batAttackDist))) {
this._parent.gotoAndStop("attack");
}
if (Math.random() > 0.9) {
this._parent.gotoAndStop("attack");
}
Symbol 49 MovieClip Frame 1
if (Math.random() > 0.5) {
this.gotoAndStop(7);
}
Symbol 49 MovieClip Frame 7
stop();
moveSpeed = _root.batAttackSpeed;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
counter = Math.random() * 75;
this.onEnterFrame = function () {
counter--;
if (_root.cam.walls.hitTest((this._parent._x + xSpeed) + _root.cam._x, (this._parent._y + ySpeed) + _root.cam._y, true) || (counter < 0)) {
this._parent.gotoAndStop("back");
} else {
this._parent._x = this._parent._x + xSpeed;
this._parent._y = this._parent._y + ySpeed;
s = _root.cam.bAttack.attachMovie("batAttackHitArea_mc", "bat" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
s._x = this._parent._x;
s._y = this._parent._y;
s._rotation = this._parent._rotation;
}
};
Symbol 50 MovieClip Frame 1
moveSpeed = _root.batFlySpeed;
this.onEnterFrame = function () {
xDist = this._parent._x - _root.cam.kimblis._x;
yDist = this._parent._y - _root.cam.kimblis._y;
this._parent._rotation = _root.findAngle(xDist, yDist) + 180;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
if (_root.cam.walls.hitTest((this._parent._x - xSpeed) + _root.cam._x, (this._parent._y - ySpeed) + _root.cam._y, true)) {
this._parent.gotoAndStop("fly");
} else {
this._parent._x = this._parent._x - xSpeed;
this._parent._y = this._parent._y - ySpeed;
}
};
Symbol 50 MovieClip Frame 6
if (Math.random() > 0.5) {
this._parent.gotoAndStop("fly");
}
Symbol 55 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound(("batHurt" + Math.ceil(Math.random() * 3)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
this._parent.victim = _root.cam.kimblis;
b = _root.cam.bg.attachMovie("greenBloodSplatter", "blood" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
b._x = this._parent._x;
b._y = this._parent._y;
b._rotation = (Math.random() * 360) - 180;
b._xscale = 50;
b._yscale = 50;
Symbol 55 MovieClip Frame 5
if (this._parent.life < 0) {
delete this._parent.onEnterFrame;
this._parent.gotoAndStop("dead");
} else if (Math.random() > 0.5) {
this._parent.gotoAndStop("fly");
} else {
this._parent.gotoAndStop("back");
}
Symbol 56 MovieClip Frame 1
moveSpeed = _root.batFlySpeed;
this._parent._rotation = (Math.random() * 360) - 180;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
this.onEnterFrame = function () {
if (!_root.cam.walls.hitTest((this._parent._x + xSpeed) + _root.cam._x, this._parent._y + _root.cam._y, true)) {
this._parent._x = this._parent._x + xSpeed;
} else if (!_root.cam.walls.hitTest(this._parent._x + _root.cam._x, (this._parent._y + ySpeed) + _root.cam._y, true)) {
this._parent._y = this._parent._y + ySpeed;
} else {
this._rotation = (Math.random() * 360) - 180;
}
};
Symbol 56 MovieClip Frame 6
if (!((Math.abs(this._parent._x - this._parent.victim._x) > _root.batAttackDist) || (Math.abs(this._parent._y - this._parent.victim._y) > _root.batAttackDist))) {
this._parent.gotoAndStop("attack");
} else {
this._parent.gotoAndStop("fly");
}
Symbol 57 MovieClip [bat] Frame 1
life = _root.batLife;
_root.batCount++;
victim = _root.cam.kimblis;
stillHere = true;
this.onEnterFrame = function () {
if (_root.detectGAttack(this._x, this._y, this)) {
this.life = this.life - _root.attackPower;
this.gotoAndStop("hurt");
}
};
timer = setInterval(_root.chooseTarget, Math.random() * 20000, this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 57 MovieClip [bat] Frame 2
stop();
Symbol 57 MovieClip [bat] Frame 3
stop();
Symbol 57 MovieClip [bat] Frame 4
stop();
Symbol 57 MovieClip [bat] Frame 5
stop();
Symbol 57 MovieClip [bat] Frame 6
stop();
_root.inforceWalls(this._x, this._y, this);
Symbol 57 MovieClip [bat] Frame 7
stop();
_root.batCount--;
victim = _root.cam.kimblis;
xDist = this._x - this.victim._x;
yDist = this._y - this.victim._y;
this._rotation = ((Math.random() * 40) + _root.findAngle(xDist, yDist)) + 160;
m = _root.cam.bg.attachMovie("batDead_mc", "body" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._x;
m._y = this._y;
m._rotation = this._rotation;
clearInterval(timer);
this.removeMovieClip();
Symbol 58 MovieClip [batAttackHitArea_mc] Frame 2
this.removeMovieClip();
Symbol 87 MovieClip [batDead_mc] Frame 1
sLoop = new Sound(this);
sLoop.attachSound("batDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
moveSpeed = 10;
radians = (this._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
this.onEnterFrame = function () {
this._x = this._x - (moveSpeed * Math.cos(radians));
this._y = this._y - (moveSpeed * Math.sin(radians));
moveSpeed--;
if (moveSpeed <= 0) {
delete this.onEnterFrame;
}
};
Symbol 87 MovieClip [batDead_mc] Frame 36
stop();
Symbol 108 MovieClip Frame 1
range = _root.orcSeeDist;
this.onEnterFrame = function () {
if ((Math.abs(this._parent._x - this._parent.victim._x) < range) && (Math.abs(this._parent._y - this._parent.victim._y) < range)) {
this._parent.gotoAndStop("startled");
} else if (Math.random() > 0.9) {
this._parent.gotoAndStop("mosey");
}
};
Symbol 109 MovieClip Frame 1
moveSpeed = _root.orcMoveSpeed;
moveDist = 45;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xDist = moveDist * Math.cos(radians);
yDist = moveDist * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) - xDist, (this._parent._y + _root.cam._y) - yDist, true)) {
this.onEnterFrame = function () {
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
this._parent._x = this._parent._x - (moveSpeed * Math.cos(radians));
this._parent._y = this._parent._y - (moveSpeed * Math.sin(radians));
};
}
Symbol 109 MovieClip Frame 6
delete this.onEnterFrame;
rotSpeed = 20;
moveSpeed = 3;
randNum = 0;
decay = 1.1;
range = _root.orcSeeDist;
this.onEnterFrame = function () {
randNum = randNum + ((Math.random() * rotSpeed) - (rotSpeed / 2));
this._parent._rotation = this._parent._rotation + randNum;
randNum = randNum / decay;
};
Symbol 109 MovieClip Frame 13
delete this.onEnterFrame;
this._parent.gotoAndStop("stand");
Symbol 110 MovieClip Frame 1
moveSpeed = _root.orcMoveSpeed;
moveDist = 45;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xDist = moveDist * Math.cos(radians);
yDist = moveDist * Math.sin(radians);
if ((!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) - xDist, (this._parent._y + _root.cam._y) - yDist, true)) && ((Math.abs(this._parent._x - this._parent.victim._x) > _root.orcAttackDist) || (Math.abs(this._parent._y - this._parent.victim._y) > _root.orcAttackDist))) {
this.onEnterFrame = function () {
this._parent._x = this._parent._x - (moveSpeed * Math.cos(radians));
this._parent._y = this._parent._y - (moveSpeed * Math.sin(radians));
};
} else {
rotateSpeed = _root.orcRotateSpeed;
this.onEnterFrame = function () {
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
gotoAngle = _root.findAngle(xDist, yDist);
if (gotoAngle > 180) {
gotoAngle = gotoAngle - 360;
}
angleDist = this._parent._rotation - gotoAngle;
if (Math.abs(angleDist) > 180) {
angleDist = 180 - angleDist;
}
this._parent._rotation = this._parent._rotation - (angleDist / rotateSpeed);
};
this.gotoAndPlay(13);
}
Symbol 110 MovieClip Frame 6
delete this.onEnterFrame;
rotateSpeed = _root.orcRotateSpeed;
this.onEnterFrame = function () {
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
gotoAngle = _root.findAngle(xDist, yDist);
if (gotoAngle > 180) {
gotoAngle = gotoAngle - 360;
}
angleDist = this._parent._rotation - gotoAngle;
if (Math.abs(angleDist) > 180) {
angleDist = 180 - angleDist;
}
this._parent._rotation = this._parent._rotation - (angleDist / rotateSpeed);
};
Symbol 110 MovieClip Frame 19
delete this.onEnterFrame;
if ((Math.abs(this._parent._x - this._parent.victim._x) > _root.orcSeeDist) || (Math.abs(this._parent._y - this._parent.victim._y) > _root.orcSeeDist)) {
this._parent.gotoAndStop("stand");
} else if ((Math.abs(this._parent._x - this._parent.victim._x) < _root.orcAttackDist) && (Math.abs(this._parent._y - this._parent.victim._y) < _root.orcAttackDist)) {
this._parent.gotoAndStop("attack");
} else if (Math.random() > 0.8) {
this._parent.gotoAndStop("leap");
} else if (Math.random() > 0.9) {
this._parent.gotoAndStop("stepRight");
} else if (Math.random() > 0.9) {
this._parent.gotoAndStop("stepLeft");
}
Symbol 111 MovieClip Frame 1
this.onEnterFrame = function () {
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
this._parent._rotation = _root.findAngle(xDist, yDist);
};
Symbol 111 MovieClip Frame 12
delete this.onEnterFrame;
if (Math.random() > 0.5) {
this._parent.gotoAndStop("walk");
} else {
this._parent.gotoAndStop("leap");
}
Symbol 112 MovieClip Frame 1
moveSpeed = _root.orcJumpSpeed;
distTot = 225;
radians = (this._parent._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xTot = distTot * Math.cos(radians);
yTot = distTot * Math.sin(radians);
p = _root.cam.bAttack.attachMovie("orcLeapArea", "damage" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
p._x = this._parent._x;
p._y = this._parent._y;
p._rotation = this._parent._rotation;
if (!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) - xTot, (this._parent._y + _root.cam._y) - yTot, true)) {
this.onEnterFrame = function () {
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) - xSpeed, (this._parent._y + _root.cam._y) - ySpeed, true)) {
this._parent._x = this._parent._x - xSpeed;
this._parent._y = this._parent._y - ySpeed;
p._x = this._parent._x;
p._y = this._parent._y;
p._rotation = this._parent._rotation;
} else {
removeMovieClip(p);
this._parent.gotoAndStop("walk");
}
};
} else {
removeMovieClip(p);
this._parent.gotoAndStop("walk");
}
this.onUnload = function () {
removeMovieClip(p);
};
Symbol 112 MovieClip Frame 10
delete this.onEnterFrame;
removeMovieClip(p);
this._parent.gotoAndStop("walk");
Symbol 114 MovieClip Frame 1
if (Math.random() > 0.7) {
this.gotoAndPlay(5);
}
Symbol 114 MovieClip Frame 8
c = _root.cam.bAttack.attachMovie("orcAttackArea", "damage" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
c._x = this._parent._x;
c._y = this._parent._y;
c._rotation = this._parent._rotation;
Symbol 114 MovieClip Frame 16
delete this.onEnterFrame;
if (Math.random() > 0.8) {
this._parent.gotoAndStop("stepLeft");
} else if (Math.random() > 0.8) {
this._parent.gotoAndStop("stepRight");
} else if (Math.random() > 0.4) {
this._parent.gotoAndStop("walk");
} else {
this._parent.gotoAndStop("leap");
}
Symbol 115 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound(("orcHurt" + Math.ceil(Math.random() * 3)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
m = _root.cam.bg.attachMovie("bloodSplatter", "splatter" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
this._parent.victim = _root.cam.kimblis;
Symbol 115 MovieClip Frame 5
if (this._parent.life <= 0) {
delete this._parent.onEnterFrame;
this._parent.gotoAndStop("die");
} else if (Math.random() > 0.5) {
this._parent.gotoAndStop("walk");
} else {
this._parent.gotoAndStop("leap");
}
Symbol 116 MovieClip Frame 1
moveSpeed = 10;
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._parent._rotation = angle + 90;
xSpeed = moveSpeed * Math.cos(radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(radians + (Math.PI/2));
this.onEnterFrame = function () {
if (!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) - xSpeed, (this._parent._y + _root.cam._y) - ySpeed, true)) {
this._parent._x = this._parent._x - xSpeed;
this._parent._y = this._parent._y - ySpeed;
}
};
Symbol 116 MovieClip Frame 9
delete this.onEnterFrame;
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._parent._rotation = angle + 90;
if (Math.random() > 0.5) {
this._parent.gotoAndPlay("walk");
}
Symbol 117 MovieClip Frame 1
moveSpeed = 10;
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._parent._rotation = angle + 90;
xSpeed = moveSpeed * Math.cos(radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(radians + (Math.PI/2));
this.onEnterFrame = function () {
if (!_root.cam.walls.hitTest((this._parent._x + _root.cam._x) + xSpeed, (this._parent._y + _root.cam._y) + ySpeed, true)) {
this._parent._x = this._parent._x + xSpeed;
this._parent._y = this._parent._y + ySpeed;
}
};
Symbol 117 MovieClip Frame 9
delete this.onEnterFrame;
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._parent._rotation = angle + 90;
if (Math.random() > 0.5) {
this._parent.gotoAndPlay("stepLeft");
}
if (Math.random() > 0.5) {
this._parent.gotoAndPlay("walk");
}
Symbol 118 MovieClip [orc] Frame 1
life = _root.orcLife;
_root.orcCount++;
victim = _root.cam.kimblis;
stillHere = true;
this.onEnterFrame = function () {
if (_root.detectGAttack(this._x, this._y, this)) {
this.life = this.life - _root.attackPower;
this.gotoAndStop("hurt");
}
};
timer = setInterval(_root.chooseTarget, Math.random() * 20000, this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 118 MovieClip [orc] Frame 2
stop();
Symbol 118 MovieClip [orc] Frame 3
stop();
Symbol 118 MovieClip [orc] Frame 4
stop();
Symbol 118 MovieClip [orc] Frame 5
stop();
Symbol 118 MovieClip [orc] Frame 6
stop();
Symbol 118 MovieClip [orc] Frame 7
stop();
Symbol 118 MovieClip [orc] Frame 8
stop();
Symbol 118 MovieClip [orc] Frame 9
stop();
Symbol 118 MovieClip [orc] Frame 10
stop();
Symbol 118 MovieClip [orc] Frame 11
stop();
g = _root.cam.bg.attachMovie("orcDie", "deadOrc" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
g._x = this._x;
g._y = this._y;
g._rotation = this._rotation;
clearInterval(timer);
_root.orcCount--;
this.removeMovieClip();
Symbol 120 MovieClip [orcAttackArea] Frame 4
this.removeMovieClip();
Symbol 125 MovieClip [orcDie] Frame 1
sLoop = new Sound(this);
sLoop.attachSound("orcDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 125 MovieClip [orcDie] Frame 11
stop();
Symbol 126 MovieClip [orcLeapArea] Frame 16
this.removeMovieClip();
Symbol 128 MovieClip [kimblisSwordDamage] Frame 2
this.removeMovieClip();
Symbol 134 MovieClip [grassBit_mc] Frame 1
this._rotation = (Math.random() * 360) - 180;
this.gotoAndStop(Math.ceil(Math.random() * 5));
Symbol 141 MovieClip [airBlast] Frame 1
moveSpeed = 20;
life = 25;
accel = 0.2;
beginMove = 40;
maxSpeed = 20;
degrees = this._rotation;
radians = (degrees * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
this._x = this._x + (beginMove * Math.cos(radians));
this._y = this._y + (beginMove * Math.sin(radians));
this._rotation = Math.random(360) - 180;
Symbol 141 MovieClip [airBlast] Frame 9
stop();
s = _root.cam.gAttack.attachMovie("airBlastDamage", "damage" + _root.cam.gAttack.getNextHighestDepth(), _root.cam.gAttack.getNextHighestDepth());
s._x = this._x;
s._y = this._y;
this.onEnterFrame = function () {
life--;
this._y = this._y + ySpeed;
this._x = this._x + xSpeed;
s._x = this._x;
s._y = this._y;
if ((_root.cam.walls.hitTest((this._x + xSpeed) + _root.cam._x, (this._y + ySpeed) + _root.cam._y, true) || (_root.cam.baddies.hitTest((this._x + xSpeed) + _root.cam._x, (this._y + ySpeed) + _root.cam._y, true))) || (life <= 0)) {
s.play();
play();
delete this.onEnterFrame;
}
};
Symbol 141 MovieClip [airBlast] Frame 16
removeMovieClip(s);
this.removeMovieClip();
Symbol 143 MovieClip [airBlastDamage] Frame 1
stop();
Symbol 143 MovieClip [airBlastDamage] Frame 9
this.removeMovieClip();
Symbol 150 MovieClip [healAnim_mc] Frame 1
sLoop = new Sound(this);
sLoop.attachSound("healSound");
sLoop.setVolume(0);
sLoop.start(0, 999);
currentVol = 0;
volInc = _root.soundVolume / 25;
this.onEnterFrame = function () {
currentVol = currentVol + volInc;
if (currentVol > _root.soundVolume) {
currentVol = _root.soundVolume;
}
sLoop.setVolume(currentVol);
this._rotation = this._rotation + 11;
if (_root.life < _root.maxLife) {
_root.life = _root.life + _root.healSpeed;
if (_root.life > _root.maxLife) {
_root.life = _root.maxLife;
}
}
if (this.hitTest(_root.cam.girl)) {
if (_root.girlLife < _root.maxGirlLife) {
_root.girlLife = _root.girlLife + _root.healSpeed;
if (_root.girlLife > _root.maxGirlLife) {
_root.girlLife = _root.maxGirlLife;
}
}
}
};
this.onUnload = function () {
sLoop.stop();
};
Symbol 150 MovieClip [healAnim_mc] Frame 55
stop();
Symbol 150 MovieClip [healAnim_mc] Frame 56
stop();
delete this.onEnterFrame;
decSpeed = this._alpha / 10;
volInc = currentVolume / 10;
this.onEnterFrame = function () {
currentVol = currentVol - volInc;
sLoop.setVolume(currentVol);
this._alpha = this._alpha - decSpeed;
if (this._alpha <= 0) {
sLoop.stop();
this.removeMovieClip();
}
};
Symbol 153 MovieClip [shockwave] Frame 1
temp = _root.attackPower * 100;
if (temp > 100) {
temp = 100;
}
this._alpha = temp;
sLoop = new Sound(this);
sLoop.attachSound("sonicBoomSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0.25, 1);
Symbol 153 MovieClip [shockwave] Frame 19
this.removeMovieClip();
Symbol 155 MovieClip [shockwaveArea] Frame 19
this.removeMovieClip();
Symbol 158 MovieClip [streak] Frame 9
this.removeMovieClip();
Symbol 161 MovieClip [swordWind] Frame 11
this.removeMovieClip();
Symbol 165 MovieClip Frame 2
this._parent.removeMovieClip();
Symbol 169 MovieClip Frame 2
this._parent.removeMovieClip();
Symbol 170 MovieClip [dirt] Frame 1
this.onEnterFrame = function () {
if (_root.frameRate < 15) {
this.removeMovieClip();
}
};
this.stop();
this.gotoAndStop(Math.ceil(Math.random() * 2));
Symbol 170 MovieClip [dirt] Frame 2
this.stop();
Symbol 174 MovieClip Frame 7
stop();
Symbol 175 MovieClip [twister] Frame 1
sLoop = new Sound(this);
sLoop.attachSound("twisterSound");
sLoop.start(0, 10);
sLoop.setVolume(0);
volumeInc = _root.soundVolume / 20;
currentVolume = 0;
lag = 15;
hold = 1.5;
buffer = 20;
this.t1._rotation = (Math.random() * 360) - 180;
xLast = this.t1._x;
yLast = this.t1._y;
force = 0;
eye = _root.cam.gAttack.attachMovie("twisterCenter", "twisterCenter" + _root.cam.gAttack.getNextHighestDepth(), _root.cam.gAttack.getNextHighestDepth());
this.onEnterFrame = function () {
currentVolume = currentVolume + volumeInc;
if (currentVolume > _root.soundVolume) {
currentVolume = _root.soundVolume;
}
sLoop.setVolume(currentVolume);
force = force + 5;
if (force > 100) {
force = 100;
}
this.t1._rotation = this.t1._rotation + 51;
xSpeed = (this.t1._x - (_root._xmouse - _root.cam._x)) / lag;
ySpeed = (this.t1._y - (_root._ymouse - _root.cam._y)) / lag;
if ((!_root.cam.walls.hitTest(((this.t1._x + _root.cam._x) - xSpeed) + buffer, this.t1._y + _root.cam._y, true)) && (!_root.cam.walls.hitTest(((this.t1._x + _root.cam._x) - xSpeed) - buffer, this.t1._y + _root.cam._y, true))) {
if ((!_root.cam.baddies.hitTest(((this.t1._x + _root.cam._x) - xSpeed) + buffer, this.t1._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest(((this.t1._x + _root.cam._x) - xSpeed) - buffer, this.t1._y + _root.cam._y, true))) {
this.t1._x = this.t1._x - xSpeed;
}
}
if ((!_root.cam.walls.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) + buffer, true)) && (!_root.cam.walls.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) - buffer, true))) {
if ((!_root.cam.baddies.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) + buffer, true)) && (!_root.cam.baddies.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) - buffer, true))) {
this.t1._y = this.t1._y - ySpeed;
}
}
this.t2._rotation = this.t2._rotation + 48;
this.t2._x = this.t2._x - ((this.t2._x - this.t1._x) / hold);
this.t2._y = this.t2._y - ((this.t2._y - this.t1._y) / hold);
this.t3._rotation = this.t3._rotation + 45;
this.t3._x = this.t3._x - ((this.t3._x - this.t2._x) / hold);
this.t3._y = this.t3._y - ((this.t3._y - this.t2._y) / hold);
this.t4._rotation = this.t4._rotation + 42;
this.t4._x = this.t4._x - ((this.t4._x - this.t3._x) / hold);
this.t4._y = this.t4._y - ((this.t4._y - this.t3._y) / hold);
this.t5._rotation = this.t5._rotation + 39;
this.t5._x = this.t5._x - ((this.t5._x - this.t4._x) / hold);
this.t5._y = this.t5._y - ((this.t5._y - this.t4._y) / hold);
this.t6._rotation = this.t6._rotation + 36;
this.t6._x = this.t6._x - ((this.t6._x - this.t5._x) / hold);
this.t6._y = this.t6._y - ((this.t6._y - this.t5._y) / hold);
this.t7._rotation = this.t7._rotation + 33;
this.t7._x = this.t7._x - ((this.t7._x - this.t6._x) / hold);
this.t7._y = this.t7._y - ((this.t7._y - this.t6._y) / hold);
this.t8._rotation = this.t8._rotation + 30;
this.t8._x = this.t8._x - ((this.t8._x - this.t7._x) / hold);
this.t8._y = this.t8._y - ((this.t8._y - this.t7._y) / hold);
this.t9._rotation = this.t9._rotation + 27;
this.t9._x = this.t9._x - ((this.t9._x - this.t8._x) / hold);
this.t9._y = this.t9._y - ((this.t9._y - this.t8._y) / hold);
this.t10._rotation = this.t10._rotation + 24;
this.t10._x = this.t10._x - ((this.t10._x - this.t9._x) / hold);
this.t10._y = this.t10._y - ((this.t10._y - this.t9._y) / hold);
eye._x = this.t1._x;
eye._y = this.t1._y;
eye._rotation = eye._rotation + 9;
e = _root.cam.magic.attachMovie("dirt", "dirt" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
e._x = this.t1._x;
e._y = this.t1._y;
e._rotation = (Math.random() * 360) - 180;
e._alpha = force;
};
this.onUnload = function () {
sLoop.stop();
removeMovieClip(eye);
};
Symbol 175 MovieClip [twister] Frame 3
this.t2._rotation = (Math.random() * 360) - 180;
this.t2._x = this.t1._x;
this.t2._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 5
this.t3._rotation = (Math.random() * 360) - 180;
this.t3._x = this.t1._x;
this.t3._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 7
this.t4._rotation = (Math.random() * 360) - 180;
this.t4._x = this.t1._x;
this.t4._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 9
this.t5._rotation = (Math.random() * 360) - 180;
this.t5._x = this.t1._x;
this.t5._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 11
this.t6._rotation = (Math.random() * 360) - 180;
this.t6._x = this.t1._x;
this.t6._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 13
this.t7._rotation = (Math.random() * 360) - 180;
this.t7._x = this.t1._x;
this.t7._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 15
this.t8._rotation = (Math.random() * 360) - 180;
this.t8._x = this.t1._x;
this.t8._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 18
this.t9._rotation = (Math.random() * 360) - 180;
this.t9._x = this.t1._x;
this.t9._y = this.t1._y;
Symbol 175 MovieClip [twister] Frame 21
this.t10._rotation = (Math.random() * 360) - 180;
this.t10._x = this.t1._x;
this.t10._y = this.t1._y;
stop();
Symbol 175 MovieClip [twister] Frame 22
delete this.onEnterFrame;
currentVolume = _root.soundVolume;
volumeDec = _root.soundVolume / 10;
this.onEnterFrame = function () {
currentVolume = currentVolume - volumeDec;
sLoop.setVolume(currentVolume);
force = force - 10;
this.t1._rotation = this.t1._rotation + 51;
xSpeed = (this.t1._x - (_root._xmouse - _root.cam._x)) / lag;
ySpeed = (this.t1._y - (_root._ymouse - _root.cam._y)) / lag;
if ((!_root.cam.walls.hitTest(((this.t1._x + _root.cam._x) - xSpeed) + buffer, this.t1._y + _root.cam._y, true)) && (!_root.cam.walls.hitTest(((this.t1._x + _root.cam._x) - xSpeed) - buffer, this.t1._y + _root.cam._y, true))) {
if ((!_root.cam.baddies.hitTest(((this.t1._x + _root.cam._x) - xSpeed) + buffer, this.t1._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest(((this.t1._x + _root.cam._x) - xSpeed) - buffer, this.t1._y + _root.cam._y, true))) {
this.t1._x = this.t1._x - xSpeed;
}
}
if ((!_root.cam.walls.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) + buffer, true)) && (!_root.cam.walls.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) - buffer, true))) {
if ((!_root.cam.baddies.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) + buffer, true)) && (!_root.cam.baddies.hitTest(this.t1._x + _root.cam._x, ((this.t1._y + _root.cam._y) - ySpeed) - buffer, true))) {
this.t1._y = this.t1._y - ySpeed;
}
}
this.t2._rotation = this.t2._rotation + 48;
this.t2._x = this.t2._x - ((this.t2._x - this.t1._x) / hold);
this.t2._y = this.t2._y - ((this.t2._y - this.t1._y) / hold);
this.t3._rotation = this.t3._rotation + 45;
this.t3._x = this.t3._x - ((this.t3._x - this.t2._x) / hold);
this.t3._y = this.t3._y - ((this.t3._y - this.t2._y) / hold);
this.t4._rotation = this.t4._rotation + 42;
this.t4._x = this.t4._x - ((this.t4._x - this.t3._x) / hold);
this.t4._y = this.t4._y - ((this.t4._y - this.t3._y) / hold);
this.t5._rotation = this.t5._rotation + 39;
this.t5._x = this.t5._x - ((this.t5._x - this.t4._x) / hold);
this.t5._y = this.t5._y - ((this.t5._y - this.t4._y) / hold);
this.t6._rotation = this.t6._rotation + 36;
this.t6._x = this.t6._x - ((this.t6._x - this.t5._x) / hold);
this.t6._y = this.t6._y - ((this.t6._y - this.t5._y) / hold);
this.t7._rotation = this.t7._rotation + 33;
this.t7._x = this.t7._x - ((this.t7._x - this.t6._x) / hold);
this.t7._y = this.t7._y - ((this.t7._y - this.t6._y) / hold);
this.t8._rotation = this.t8._rotation + 30;
this.t8._x = this.t8._x - ((this.t8._x - this.t7._x) / hold);
this.t8._y = this.t8._y - ((this.t8._y - this.t7._y) / hold);
this.t9._rotation = this.t9._rotation + 27;
this.t9._x = this.t9._x - ((this.t9._x - this.t8._x) / hold);
this.t9._y = this.t9._y - ((this.t9._y - this.t8._y) / hold);
this.t10._rotation = this.t10._rotation + 24;
this.t10._x = this.t10._x - ((this.t10._x - this.t9._x) / hold);
this.t10._y = this.t10._y - ((this.t10._y - this.t9._y) / hold);
eye._x = this.t1._x;
eye._y = this.t1._y;
eye._rotation = eye._rotation + 9;
e = _root.cam.magic.attachMovie("dirt", "dirt" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
e._x = this.t1._x;
e._y = this.t1._y;
e._rotation = (Math.random() * 360) - 180;
e._alpha = force;
};
Symbol 175 MovieClip [twister] Frame 30
sLoop.stop();
removeMovieClip(eye);
removeMovieClip(this);
Symbol 180 MovieClip [wind] Frame 2
stop();
hold = (this._yscale * _root.windHold) / 100;
xLast = this._x;
if (this._parent.segCount < this._parent.maxCount) {
this._parent.segCount++;
dist = (20 * this._yscale) / 95;
w = _parent.path.attachMovie("wind", "wind" + _parent.path.getNextHighestDepth(), _parent.path.getNextHighestDepth());
w._rotation = this._rotation;
w._y = this._y + dist;
w._xscale = this._xscale * (_root.windSpread + _root.windGrow);
w._yscale = this._yscale * _root.windSpread;
w._alpha = this._alpha - (100 / _root.maxWindDist);
this.onEnterFrame = function () {
moved = this._x - xLast;
bend = (Math.random() * _root.windBend) - (_root.windBend / 2);
w._x = w._x + (moved + bend);
w._x = (this._x + w._x) / 2;
if ((this._x - w._x) > hold) {
w._x = this._x + hold;
}
if ((this._x - w._x) < (-hold)) {
w._x = this._x - hold;
}
xLast = this._x;
};
} else {
this.onUnload = function () {
removeMovieClip(this._parent);
};
}
Symbol 180 MovieClip [wind] Frame 4
stop();
w.gotoAndPlay("unload");
this.removeMovieClip();
Symbol 183 MovieClip [windHolder] Frame 1
stop();
wind._xscale = 40;
wind._yscale = 40;
segCount = 0;
maxCount = _root.maxWindDist;
path = this;
Symbol 193 MovieClip Frame 46
this._parent.removeMovieClip();
Symbol 205 MovieClip Frame 1
rightArm.gotoAndPlay(14);
Symbol 211 MovieClip Frame 1
stop();
leftThigh.gotoAndPlay(14);
Symbol 216 MovieClip [mage] Frame 1
_root.mageCount++;
Symbol 216 MovieClip [mage] Frame 2
stop();
delete this.onEnterFrame;
rotSpeed = 5;
moveSpeed = 4;
randNum = 0;
decay = 0.75;
alphaChange = 15;
targetDist = 800;
attackDist = _root.mageAttackDist;
target = _root.cam.kimblis;
segNum = 0;
maxSegs = 50;
segX = new Array();
segY = new Array();
segLag = new Array();
segAlpha = new Array();
curAlpha = 50;
lineHolder = _root.cam.magic.createEmptyMovieClip("lineHolder" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
this.onEnterFrame = function () {
this._alpha = this._alpha + ((Math.random() * alphaChange) - (alphaChange / 2));
if (this._alpha > 100) {
this._alpha = 100;
} else if (this._alpha <= 0) {
this._alpha = 10;
this._x = (target._x + (Math.random() * targetDist)) - (targetDist / 2);
this._y = (target._y + (Math.random() * targetDist)) - (targetDist / 2);
}
randNum = randNum + ((Math.random() * rotSpeed) - (rotSpeed / 2));
this._rotation = this._rotation + randNum;
randNum = randNum * decay;
radians = (this._rotation * Math.PI) / 180;
radians = radians + Math.PI;
this._x = this._x + (moveSpeed * Math.cos(radians));
this._y = this._y + (moveSpeed * Math.sin(radians));
if ((Math.abs(this._x - target._x) < attackDist) && (Math.abs(this._y - target._y) < attackDist)) {
segX[segNum] = this._x;
segY[segNum] = this._y;
segLag[segNum] = 50;
segAlpha[segNum] = this._alpha;
segNum++;
if (segNum >= 50) {
segNum = 0;
}
startLife++;
if (startLife > maxLife) {
startLife = maxLife;
}
}
lineHolder.clear();
i = 49;
while (i >= 0) {
if (segAlpha[i] > 5) {
segAlpha[i]--;
segX[i] = segX[i] - ((segX[i] - _root.cam.kimblis._x) / segLag[i]);
segY[i] = segY[i] - ((segY[i] - _root.cam.kimblis._y) / segLag[i]);
m = _root.cam.bAttack.attachMovie("mageAttack", "orb" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
m._x = segX[i];
m._y = segY[i];
lineHolder.lineStyle(10, "0x000000", segAlpha[i]);
lineHolder.moveTo(segX[i], segY[i]);
lineHolder.lineTo(segX[i] + 0.1, segY[i]);
segLag[i] = segLag[i] * 0.95;
}
i--;
}
if (_root.cam.gAttack.hitTest(this._x + _root.cam._x, this._y + _root.cam._y, true)) {
if ((_root.attackMethod == "sword") && (_root.weopon == "magSword")) {
this.gotoAndPlay("die");
} else {
_root.missionText = "Your attacks pass right through them...";
if (_root.cam.orcSpoken == false) {
_root.cam.orcSpoken = true;
sLoop = new Sound(this);
sLoop.attachSound("myAttacksPassSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
}
}
};
Symbol 216 MovieClip [mage] Frame 3
delete this.onEnterFrame;
lineHolder.clear();
ammount = 3;
num = 0;
sLoop = new Sound(this);
sLoop.attachSound("ghostDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
this.onEnterFrame = function () {
num = num + ammount;
while (num >= 1) {
num--;
w = _root.cam.bg.attachMovie("streak", "streak" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
w._x = this._x;
w._y = this._y;
w._rotation = (Math.random() * 360) - 180;
}
};
Symbol 216 MovieClip [mage] Frame 13
delete this.onEnterFrame;
Symbol 216 MovieClip [mage] Frame 22
_root.mageCount--;
removeMovieClip(this);
stop();
Symbol 217 MovieClip [mageAttack] Frame 1
removeMovieClip(this);
Symbol 220 MovieClip [girlMagic] Frame 1
this.onEnterFrame = function () {
this._x = _root.cam.girl._x;
this._y = _root.cam.girl._y;
m1._rotation = (Math.random() * 360) - 180;
m2._rotation = (Math.random() * 360) - 180;
randNum = Math.random() * 100;
m1._xscale = randNum;
m1._yscale = randNum;
randNum = Math.random() * 100;
m2._xscale = randNum;
m2._yscale = randNum;
m1._alpha = Math.random() * 100;
m2._alpha = Math.random() * 100;
};
Symbol 220 MovieClip [girlMagic] Frame 41
removeMovieClip(this);
Symbol 224 MovieClip [magicRock] Frame 1
stop();
this.anim.gotoAndPlay(Math.ceil(Math.random() * 12));
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 224 MovieClip [magicRock] Frame 2
clearInterval(timer);
_root.cam.magicRock++;
_root.missionText = ("You picked up a white orb, you have " + _root.cam.magicRock) + " remaining";
sLoop = new Sound(this);
sLoop.attachSound("ballPickUpSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 224 MovieClip [magicRock] Frame 9
stop();
Symbol 253 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound(("golemAttack" + Math.ceil(Math.random() * 4)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 253 MovieClip Frame 7
f = _root.cam.bAttack.attachMovie("golemFastAttackArea1", "ouch" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
f._x = this._parent._x;
f._y = this._parent._y;
f._rotation = this._parent._rotation;
f._xscale = 150;
f._yscale = 150;
sLoop = new Sound(this);
sLoop.attachSound(("golemSwish" + Math.ceil(Math.random() * 5)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 253 MovieClip Frame 11
f = _root.cam.bAttack.attachMovie("golemFastAttackArea2", "ouch" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
f._x = this._parent._x;
f._y = this._parent._y;
f._rotation = this._parent._rotation;
f._xscale = 150;
f._yscale = 150;
sLoop = new Sound(this);
sLoop.attachSound(("golemSwish" + Math.ceil(Math.random() * 5)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 253 MovieClip Frame 17
this._parent.gotoAndStop("stand");
Symbol 256 MovieClip Frame 2
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
this._parent._rotation = _root.findAngle(xDist, yDist);
this._parent.gotoAndStop("stand");
Symbol 257 MovieClip Frame 2
xDist = this._parent._x - this._parent.victim._x;
yDist = this._parent._y - this._parent.victim._y;
this._parent._rotation = _root.findAngle(xDist, yDist);
this._parent.gotoAndStop("stand");
Symbol 258 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound("earthquakeSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 258 MovieClip Frame 2
rockCount = (Math.random() * 3) + 3;
while (rockCount > 0) {
rockCount--;
m = _root.cam.bg.attachMovie("evilRockBegin", "rock" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = (this._parent._x + (Math.random() * 400)) - 200;
m._y = (this._parent._y + (Math.random() * 400)) - 200;
if (_root.cam.walls.hitTest(m._x + _root.cam._x, m._y + _root.cam._y, true)) {
removeMovieClip(m);
}
}
Symbol 258 MovieClip Frame 36
this._parent.gotoAndStop("stand");
Symbol 259 MovieClip Frame 3
randNum = Math.random();
if (randNum > 0.7) {
this._parent.gotoAndStop("fastAttack");
} else {
this._parent.gotoAndStop("stand");
}
Symbol 260 MovieClip Frame 1
repeat = Math.ceil(Math.random() * 3) + 3;
m = _root.cam.bg.attachMovie("girlSignal", "signal" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
if ((Math.random() > 0.5) && (_root.cam.walls.hitTest((this._parent._x + _root.cam._x) + 50, this._parent._y + _root.cam._y, true) == false)) {
m._x = this._parent._x + 50;
} else {
m._x = this._parent._x - 50;
}
if ((Math.random() > 0.5) && (_root.cam.walls.hitTest(this._parent._x + _root.cam._x, (this._parent._y + _root.cam._y) + 50, true) == false)) {
m._y = this._parent._y + 50;
} else {
m._y = this._parent._y - 50;
}
m.onEnterFrame = function () {
if (this.hitTest(_root.cam.girl)) {
play();
_root.cam.baddies.golem.gotoAndStop("hurt");
removeMovieClip(this);
}
};
Symbol 260 MovieClip Frame 6
repeat--;
if (repeat <= 0) {
this.gotoAndPlay("end");
}
sLoop = new Sound(this);
sLoop.attachSound(("golemOut" + Math.ceil(Math.random() * 5)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 260 MovieClip Frame 14
sLoop = new Sound(this);
sLoop.attachSound("golemIn" + Math.ceil(Math.random() * 5));
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 260 MovieClip Frame 21
this.gotoAndPlay("begin");
Symbol 260 MovieClip Frame 27
removeMovieClip(m);
_parent.hitPoints = _parent.hitPointHold / 2;
this._parent.gotoAndPlay("fastAttack");
Symbol 261 MovieClip Frame 1
this._parent.life--;
sLoop = new Sound(this);
sLoop.attachSound(("golemHurt" + Math.ceil(Math.random() * 3)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
m = _root.cam.attachMovie("girlMagic", "magic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
h = _root.cam.attachMovie("girlMagic", "magic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
h._x = this._parent._x;
h._y = this._parent._y;
h._rotation = (Math.random() * 360) - 180;
k = _root.cam.attachMovie("girlMagic", "magic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
k._x = this._parent._x;
k._y = this._parent._y;
k._rotation = (Math.random() * 360) - 180;
this.onEnterFrame = function () {
m._x = ((Math.random() * 150) - 75) + this._parent._x;
m._y = ((Math.random() * 150) - 75) + this._parent._y;
h._x = ((Math.random() * 150) - 75) + this._parent._x;
h._y = ((Math.random() * 150) - 75) + this._parent._y;
k._x = ((Math.random() * 150) - 75) + this._parent._x;
k._y = ((Math.random() * 150) - 75) + this._parent._y;
};
this.onUnload = function () {
removeMovieClip(m);
removeMovieClip(h);
removeMovieClip(k);
};
Symbol 261 MovieClip Frame 24
removeMovieClip(m);
removeMovieClip(h);
removeMovieClip(k);
if (this._parent.life <= 0) {
_root.gotoAndStop("mov3");
}
_parent.hitPoints = _parent.hitPointHold;
this._parent.gotoAndStop("stand");
Symbol 262 MovieClip [golem] Frame 1
function testHit() {
radians = (this._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xDist = 50 * Math.cos(radians);
yDist = 50 * Math.sin(radians);
xPos = this._x + _root.cam._x;
yPos = this._y + _root.cam._y;
if (_root.cam.gAttack.hitTest(xPos, yPos)) {
this.gotoAndStop("stun");
} else if (_root.cam.gAttack.hitTest(xPos + xDist, yPos + xDist)) {
this.gotoAndStop("stun");
} else if (_root.cam.gAttack.hitTest(xPos - xDist, yPos - yDist)) {
this.gotoAndStop("stun");
}
}
life = 5;
hitPointHold = 25;
hitPoints = hitPointHold;
Symbol 262 MovieClip [golem] Frame 2
stop();
delete this.onEnterFrame;
testHit();
victim = _root.cam.kimblis;
waitTime = Math.random() * 20;
this.onEnterFrame = function () {
testHit();
waitTime--;
if (waitTime < 0) {
randNum = Math.random();
if (randNum > 0.8) {
this.gotoAndStop("right");
} else if (randNum > 0.6) {
this.gotoAndStop("left");
} else if (randNum > 0.4) {
this.gotoAndStop("summon");
} else {
this.gotoAndStop("startWalk");
}
}
};
Symbol 262 MovieClip [golem] Frame 3
stop();
delete this.onEnterFrame;
counter = 4;
this.onEnterFrame = function () {
counter--;
if (counter <= 0) {
this.gotoAndStop("walk");
}
};
Symbol 262 MovieClip [golem] Frame 4
stop();
delete this.onEnterFrame;
victim = _root.cam.kimblis;
rotateSpeed = 10;
moveSpeed = 5;
attackDist = 100;
moveDist = moveSpeed * 20;
this.onEnterFrame = function () {
testHit();
xDist = this._x - victim._x;
yDist = this._y - victim._y;
gotoAngle = _root.findAngle(xDist, yDist);
if (gotoAngle > 180) {
gotoAngle = gotoAngle - 360;
}
angleDist = _rotation - gotoAngle;
if (Math.abs(angleDist) > 180) {
if (angleDist > 0) {
angleDist = 180 - angleDist;
} else {
angleDist = -180 - angleDist;
}
}
this._rotation = this._rotation - (angleDist / rotateSpeed);
radians = (this._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xDist = moveSpeed * Math.cos(radians);
yDist = moveSpeed * Math.sin(radians);
if ((Math.abs(this._x - victim._x) > attackDist) || (Math.abs(this._y - victim._y) > attackDist)) {
if (!_root.cam.walls.hitTest((this._x + _root.cam._x) - xDist, (this._y + _root.cam._y) - yDist, true)) {
this._x = this._x - xDist;
this._y = this._y - yDist;
}
} else {
randNum = Math.random();
if (randNum > 0.5) {
this.gotoAndStop("fastAttack");
} else {
this.gotoAndStop("endWalk");
}
}
};
Symbol 262 MovieClip [golem] Frame 5
stop();
delete this.onEnterFrame;
counter = 4;
this.onEnterFrame = function () {
testHit();
counter--;
if (counter <= 0) {
this.gotoAndStop("stand");
}
};
Symbol 262 MovieClip [golem] Frame 6
stop();
delete this.onEnterFrame;
this._x = _root.cam.kimblis._x;
this._y = _root.cam.kimblis._y;
pullDist = 150;
radians = (this._rotation * Math.PI) / 180;
radians = radians - (Math.PI/2);
xDist = pullDist * Math.cos(radians);
yDist = pullDist * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._x + xDist) + _root.cam._x, (this._y + yDist) + _root.cam._y, true)) {
this._x = this._x + xDist;
this._y = this._y + yDist;
}
this.onEnterFrame = function () {
testHit();
};
Symbol 262 MovieClip [golem] Frame 7
stop();
delete this.onEnterFrame;
moveDist = 100;
radians = (this._rotation * Math.PI) / 180;
radians = radians - (Math.PI*2);
xDist = moveDist * Math.cos(radians);
yDist = moveDist * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._x + xDist) + _root.cam._x, (this._y + yDist) + _root.cam._y, true)) {
this._x = this._x + xDist;
this._y = this._y + yDist;
}
this.onEnterFrame = function () {
testHit();
};
Symbol 262 MovieClip [golem] Frame 8
stop();
delete this.onEnterFrame;
moveDist = 100;
radians = (this._rotation * Math.PI) / 180;
radians = radians - Math.PI;
xDist = moveDist * Math.cos(radians);
yDist = moveDist * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._x + xDist) + _root.cam._x, (this._y + yDist) + _root.cam._y, true)) {
this._x = this._x + xDist;
this._y = this._y + yDist;
}
this.onEnterFrame = function () {
testHit();
};
Symbol 262 MovieClip [golem] Frame 9
stop();
delete this.onEnterFrame;
this.onEnterFrame = function () {
testHit();
};
Symbol 262 MovieClip [golem] Frame 10
stop();
delete this.onEnterFrame;
hitPoints = hitPoints - _root.attackPower;
if (hitPoints <= 0) {
this.gotoAndStop("weak");
}
Symbol 262 MovieClip [golem] Frame 11
stop();
delete this.onEnterFrame;
Symbol 262 MovieClip [golem] Frame 12
stop();
delete this.onEnterFrame;
Symbol 264 MovieClip [golemFastAttackArea1] Frame 2
removeMovieClip(this);
Symbol 266 MovieClip [golemFastAttackArea2] Frame 2
removeMovieClip(this);
Symbol 269 MovieClip [evilRock] Frame 1
randRot = (Math.random() * 50) - 25;
d = _root.cam.bAttack.attachMovie("evilRockArea", "hitArea" + _root.cam.bAttack.getNextHighestDepth(), _root.cam.bAttack.getNextHighestDepth());
d._x = this._x;
d._y = this._y;
this.onEnterFrame = function () {
this._rotation = this._rotation + randRot;
};
this.onUnload = function () {
removeMovieClip(d);
};
Symbol 269 MovieClip [evilRock] Frame 11
stop();
delete this.onEnterFrame;
moveSpeed = 23;
xDist = this._x - _root.cam.kimblis._x;
yDist = this._y - _root.cam.kimblis._y;
angle = _root.findAngle(xDist, yDist);
radians = (angle * Math.PI) / 180;
radians = radians + (Math.PI/2);
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
counter = Math.random() * 40;
this.onEnterFrame = function () {
counter--;
d._x = this._x;
d._y = this._y;
this._rotation = this._rotation + randRot;
this._x = this._x + xSpeed;
this._y = this._y + ySpeed;
if (_root.cam.walls.hitTest(this._x + _root.cam._x, this._y + _root.cam._y, true) || (_root.cam.gAttack.hitTest(this._x + _root.cam._x, this._y + _root.cam._y, true))) {
m = _root.cam.bg.attachMovie("evilRockDie", "rocks" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._x;
m._y = this._y;
m._rotation = (Math.random() * 360) - 180;
delete this.onEnterFrame;
removeMovieClip(this);
}
if (counter <= 0) {
xDist = this._x - _root.cam.kimblis._x;
yDist = this._y - _root.cam.kimblis._y;
angle = _root.findAngle(xDist, yDist);
radians = (angle * Math.PI) / 180;
radians = radians + (Math.PI/2);
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
counter = Math.random() * 50;
}
};
Symbol 274 MovieClip [evilRockDie] Frame 293
this.onEnterFrame = function () {
this._alpha = this._alpha - 10;
};
Symbol 274 MovieClip [evilRockDie] Frame 304
removeMovieClip(this);
stop();
Symbol 278 MovieClip [evilRockBegin] Frame 1
rockNum = Math.ceil(Math.random() * 4);
this.rocks.gotoAndStop(rockNum);
this._rotation = (Math.random() * 360) - 180;
Symbol 278 MovieClip [evilRockBegin] Frame 10
stop();
counter = Math.random() * 40;
this.onEnterFrame = function () {
counter--;
if (counter <= 0) {
m = _root.cam.magic.attachMovie("evilRock", "evilRock" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
m._x = this._x;
m._y = this._y;
m._rotation = this._rotation;
m.rocks.gotoAndStop(rockNum);
removeMovieClip(this);
}
};
Symbol 282 MovieClip [girlSignal] Frame 1
stop();
Symbol 282 MovieClip [girlSignal] Frame 12
stop();
Symbol 365 Button
on (release) {
_root.play();
}
Symbol 408 MovieClip Frame 102
_root.gotoAndStop("initialize");
stop();
Symbol 411 Button
on (rollOver) {
_root.buttonRoll();
}
on (release) {
_root.buttonClick();
this.gotoAndStop("off");
}
Symbol 414 Button
on (rollOver) {
_root.buttonRoll();
}
on (release) {
_root.buttonClick();
this.gotoAndStop("on");
}
Symbol 415 MovieClip Frame 1
stop();
if (_root.cheatEnabled == true) {
if (_root.cheatOn == true) {
this.gotoAndStop("on");
} else {
this.gotoAndStop("off");
}
}
Symbol 415 MovieClip Frame 2
stop();
_root.cheatOn = true;
_root.magicRecover = 100;
_root.upgradePoints = 50;
Symbol 415 MovieClip Frame 3
stop();
_root.cheatOn = false;
_root.magicRecover = 0.2;
_root.upgradePoints = 2;
Symbol 429 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("story");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 432 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("levelSelect");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 435 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("options");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 439 Button
on (release) {
_root.buttonClick();
_root.gotoAndStop("instructions");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 443 Button
on (release) {
_root.buttonClick();
getURL ("http://armorgames.com/", _blank);
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 444 Button
on (release) {
_root.buttonClick();
_root.cheated = false;
_root.gotoAndPlay("story");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 445 Button
on (release) {
_root.buttonClick();
_root.cheated = true;
_root.gotoAndPlay("levelSelect");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 446 MovieClip Frame 1
this.onEnterFrame = function () {
tot = 0;
if (Key.isDown(87)) {
tot++;
}
if (Key.isDown(79)) {
tot++;
}
if (Key.isDown(78)) {
tot++;
}
if (tot == 3) {
_root.cheatEnabled = true;
cButton.gotoAndStop("on");
}
};
Symbol 446 MovieClip Frame 27
stop();
Symbol 450 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("menu");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 453 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 0;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 456 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 1;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 459 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 2;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 462 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 3;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 466 Button
on (release) {
_root.buttonClick();
_root.gotoAndStop("credits");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 470 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 4;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 473 Button
on (release) {
_root.buttonClick();
_root.levelUpExtra = 5;
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 529 MovieClip Frame 1
stop();
Symbol 541 MovieClip Frame 1
stop();
Symbol 546 MovieClip Frame 1
stop();
Symbol 546 MovieClip Frame 2
stop();
Symbol 546 MovieClip Frame 3
stop();
Symbol 546 MovieClip Frame 4
stop();
Symbol 550 MovieClip Frame 1
stop();
Symbol 551 MovieClip Frame 1
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
listener = new Object();
Key.addListener(listener);
this.forward.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = "press key";
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
listener.onKeyDown = function () {
_root.upKey = Key.getCode();
forwardText = String.fromCharCode(_root.upKey);
delete listener.onKeyDown;
};
};
this.forward.onRollOver = function () {
_root.buttonRoll();
};
this.backward.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = String.fromCharCode(_root.upKey);
backwardText = "press key";
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
listener.onKeyDown = function () {
_root.downKey = Key.getCode();
backwardText = String.fromCharCode(_root.downKey);
delete listener.onKeyDown;
};
};
this.backward.onRollOver = function () {
_root.buttonRoll();
};
this.leftB.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = "press key";
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
listener.onKeyDown = function () {
_root.leftKey = Key.getCode();
leftText = String.fromCharCode(_root.leftKey);
delete listener.onKeyDown;
};
};
this.leftB.onRollOver = function () {
_root.buttonRoll();
};
this.rightB.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = "press key";
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
listener.onKeyDown = function () {
_root.rightKey = Key.getCode();
rightText = String.fromCharCode(_root.rightKey);
delete listener.onKeyDown;
};
};
this.rightB.onRollOver = function () {
_root.buttonRoll();
};
this.mPotion.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = "press key";
healthText = String.fromCharCode(_root.healthPKey);
listener.onKeyDown = function () {
_root.magicPKey = Key.getCode();
magText = String.fromCharCode(_root.magicPKey);
delete listener.onKeyDown;
};
};
this.mPotion.onRollOver = function () {
_root.buttonRoll();
};
this.hPotion.onRelease = function () {
_root.buttonClick();
delete listener.onKeyDown;
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = "press key";
listener.onKeyDown = function () {
_root.healthPKey = Key.getCode();
healthText = String.fromCharCode(_root.healthPKey);
delete listener.onKeyDown;
};
};
this.hPotion.onRollOver = function () {
_root.buttonRoll();
};
if (_root.qualityLevel == "HIGH") {
qualSel.gotoAndStop("high");
qualSel._x = highQual._x;
}
if (_root.qualityLevel == "MEDIUM") {
qualSel.gotoAndStop("medium");
qualSel._x = medQual._x;
}
if (_root.qualityLevel == "LOW") {
qualSel.gotoAndStop("low");
qualSel._x = lowQual._x;
}
if (_root.qualityLevel == "AUTOHIGH") {
qualSel.gotoAndStop("auto");
qualSel._x = autoQual._x;
}
this.highQual.onRelease = function () {
_root.buttonClick();
_root.qualityLevel = "HIGH";
qualSel._x = this._x;
qualSel.gotoAndStop("high");
};
this.highQual.onRollOver = function () {
_root.buttonRoll();
};
this.medQual.onRelease = function () {
_root.buttonClick();
_root.qualityLevel = "MEDIUM";
qualSel._x = this._x;
qualSel.gotoAndStop("medium");
};
this.medQual.onRollOver = function () {
_root.buttonRoll();
};
this.lowQual.onRelease = function () {
_root.buttonClick();
_root.qualityLevel = "LOW";
qualSel._x = this._x;
qualSel.gotoAndStop("low");
};
this.lowQual.onRollOver = function () {
_root.buttonRoll();
};
this.autoQual.onRelease = function () {
_root.buttonClick();
_root.qualityLevel = "AUTOHIGH";
qualSel._x = this._x;
qualSel.gotoAndStop("auto");
};
this.autoQual.onRollOver = function () {
_root.buttonRoll();
};
if (_root.detail == "high") {
detSel.gotoAndStop("high");
detSel._x = highDet._x;
}
if (_root.detail == "low") {
detSel.gotoAndStop("low");
detSel._x = lowDet._x;
}
this.highDet.onRelease = function () {
_root.buttonClick();
_root.detail = "high";
detSel._x = this._x;
detSel.gotoAndStop("high");
};
this.highDet.onRollOver = function () {
_root.buttonRoll();
};
this.lowDet.onRelease = function () {
_root.buttonClick();
_root.detail = "low";
detSel._x = this._x;
detSel.gotoAndStop("low");
};
this.lowDet.onRollOver = function () {
_root.buttonRoll();
};
if (_root.res == 100) {
resSel.gotoAndStop(1);
resSel._x = res100._x;
}
if (_root.res == 75) {
resSel.gotoAndStop(2);
resSel._x = res75._x;
}
if (_root.res == 50) {
resSel.gotoAndStop(3);
resSel._x = res50._x;
}
this.res100.onRelease = function () {
_root.buttonClick();
_root.res = 100;
resSel.gotoAndStop(1);
resSel._x = res100._x;
};
this.res100.onRollOver = function () {
_root.buttonRoll();
};
this.res75.onRelease = function () {
_root.buttonClick();
_root.res = 75;
resSel.gotoAndStop(2);
resSel._x = res75._x;
};
this.res75.onRollOver = function () {
_root.buttonRoll();
};
this.res50.onRelease = function () {
_root.buttonClick();
_root.res = 50;
resSel.gotoAndStop(3);
resSel._x = res50._x;
};
this.res50.onRollOver = function () {
_root.buttonRoll();
};
if (_root.difficulty == "hard") {
diffInd.gotoAndStop("hard");
diffInd._x = hard._x;
}
if (_root.difficulty == "normal") {
diffInd.gotoAndStop("normal");
diffInd._x = normal._x;
}
if (_root.difficulty == "easy") {
diffInd.gotoAndStop("easy");
diffInd._x = easy._x;
}
this.hard.onRelease = function () {
_root.buttonClick();
_root.difficulty = "hard";
_root.setDifficulty();
diffInd._x = this._x;
diffInd.gotoAndStop("hard");
};
this.hard.onRollOver = function () {
_root.buttonRoll();
};
this.normal.onRelease = function () {
_root.buttonClick();
_root.difficulty = "normal";
_root.setDifficulty();
diffInd._x = this._x;
diffInd.gotoAndStop("normal");
};
this.normal.onRollOver = function () {
_root.buttonRoll();
};
this.easy.onRelease = function () {
_root.buttonClick();
_root.difficulty = "easy";
_root.setDifficulty();
diffInd._x = this._x;
diffInd.gotoAndStop("easy");
};
this.easy.onRollOver = function () {
_root.buttonRoll();
};
this.musicSlider._x = (_root.musicVolume * 2) + 380;
this.soundSlider._x = (_root.soundVolume * 2) + 380;
this.musicSlider.onPress = function () {
_root.buttonClick();
this.startDrag(false, 380, 357, 580, 357);
onMouseUp = function () {
if (((this.musicSlider._x - 380) / 2) < 5) {
_root.changeMusic("mute");
} else if ((_root.musicVolume < 5) && (((this.musicSlider._x - 380) / 2) >= 5)) {
_root.menuLoop.start(0, 1000);
}
_root.musicVolume = (this.musicSlider._x - 380) / 2;
_root.exciteLoop.setVolume(_root.musicVolume);
_root.bgLoop.setVolume(_root.musicVolume);
_root.menuLoop.setVolume(_root.musicVolume);
_root.spookyLoop.setVolume(_root.musicVolume);
_root.victoryLoop.setVolume(_root.musicVoluem);
this.stopDrag();
delete onMouseUp;
};
};
this.musicSlider.onRollOver = function () {
_root.buttonRoll();
};
this.soundSlider.onPress = function () {
_root.buttonClick();
this.startDrag(false, 380, 458, 580, 458);
onMouseUp = function () {
_root.soundVolume = (this.soundSlider._x - 380) / 2;
this.stopDrag();
delete onMouseUp;
};
};
this.soundSlider.onRollOver = function () {
_root.buttonRoll();
};
Symbol 568 Button
on (release) {
_root.buttonClick();
this.play();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 573 Button
on (release) {
_root.buttonClick();
this.prevFrame();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 580 MovieClip Frame 1
gotoAndStop(_root.weopon);
Symbol 653 MovieClip Frame 1
this.onEnterFrame = function () {
if (_root.usingMagic != temp) {
temp = _root.usingMagic;
if (_root.usingMagic == true) {
this.gotoAndPlay("using");
} else {
this.gotoAndPlay("charging");
}
}
power = (_root.magic / _root.maxMagic) * 100;
this.magicCloud._alpha = power;
this.magicCloud._xscale = power;
this.magicCloud._yscale = power;
};
temp = _root.usingMagic;
if (_root.usingMagic == true) {
this.gotoAndPlay("using");
} else {
this.gotoAndPlay("charging");
}
power = (_root.magic / _root.maxMagic) * 100;
this.magicCloud._alpha = power;
this.magicCloud._xscale = power;
this.magicCloud._yscale = power;
Symbol 653 MovieClip Frame 2
stop();
Symbol 653 MovieClip Frame 3
stop();
Symbol 754 MovieClip Frame 5
sLoop = new Sound(this);
sLoop.attachSound(("swordSwing" + Math.ceil(Math.random() * 6)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 754 MovieClip Frame 6
f = _root.cam.gAttack.attachMovie("kimblisSwordDamage", "damage" + _root.cam.gAttack.getNextHighestDepth(), _root.cam.gAttack.getNextHighestDepth());
f._x = this._parent._x;
f._y = this._parent._y;
f._rotation = this._parent._rotation;
if ((_root.magicSword == true) && (_root.magic >= _root.magicSwordCost)) {
_root.magic = _root.magic - _root.magicSwordCost;
s = _root.cam.magic.attachMovie("swordWind", "wind" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
s._x = this._parent._x;
s._y = this._parent._y;
s._rotation = this._parent._rotation;
q = _root.cam.gAttack.attachMovie("swordWind", "wind" + _root.cam.gAttack.getNextHighestDepth(), _root.cam.gAttack.getNextHighestDepth());
q._x = this._parent._x;
q._y = this._parent._y;
q._rotation = this._parent._rotation;
}
Symbol 754 MovieClip Frame 14
_root.ready = true;
Symbol 759 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound("windBlastSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
_root.usingMagic = true;
if (_root.magic >= _root.windBlastCost) {
_root.magic = _root.magic - _root.windBlastCost;
if (_root.airBlastLevel == 1) {
w = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
w._x = this._parent._x;
w._y = this._parent._y;
w._rotation = this._parent._rotation;
} else if (_root.airBlastLevel == 2) {
w = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
w._x = this._parent._x;
w._y = this._parent._y;
w._rotation = this._parent._rotation + 5;
r = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
r._x = this._parent._x;
r._y = this._parent._y;
r._rotation = this._parent._rotation - 5;
} else {
w = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
w._x = this._parent._x;
w._y = this._parent._y;
w._rotation = this._parent._rotation + 10;
r = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
r._x = this._parent._x;
r._y = this._parent._y;
r._rotation = this._parent._rotation - 10;
q = _root.cam.magic.attachMovie("airBlast", "magic" + _root.magicLevel(), _root.magicLevel());
q._x = this._parent._x;
q._y = this._parent._y;
q._rotation = this._parent._rotation;
}
}
Symbol 759 MovieClip Frame 15
_root.usingMagic = false;
_root.ready = true;
Symbol 760 MovieClip Frame 1
if (_root.magic >= _root.twisterInitCost) {
_root.magic = _root.magic - _root.twisterInitCost;
mPress = true;
_root.usingMagic = true;
m = _root.cam.magicAbove.attachMovie("twister", "twister", 10000);
m.t1._x = (-_root.cam._x) + _root._xmouse;
m.t1._y = (-_root.cam._y) + _root._ymouse;
onMouseUp = function () {
mPress = false;
};
} else {
this.gotoAndPlay(24);
}
this.onUnload = function () {
m.sLoop.stop();
removeMovieClip(m);
};
Symbol 760 MovieClip Frame 16
stop();
delete this.onEnterFrame;
this.onEnterFrame = function () {
_root.magic = _root.magic - _root.twisterCost;
if ((mPress == false) || (_root.magic <= 0)) {
delete onMouseUp;
m.gotoAndPlay(22);
this.play();
delete this.onEnterFrame;
}
};
Symbol 760 MovieClip Frame 24
delete onMouseUp;
m.gotoAndPlay(22);
delete this.onEnterFrame;
_root.ready = true;
_root.usingMagic = false;
Symbol 761 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound(("kimblisHurt" + Math.ceil(Math.random() * 4)) + "Sound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
_root.ready = false;
_root.cam.kimblis.recover = 7;
m = _root.cam.bg.attachMovie("bloodSplatter", "splatter" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
Symbol 761 MovieClip Frame 4
_root.ready = true;
Symbol 764 MovieClip Frame 1
_root.usingMagic = true;
_root.ready = false;
mousePressed = true;
onMouseUp = function () {
mousePressed = false;
};
this.onUnload = function () {
m.wind.gotoAndPlay("unload");
w.wind.gotoAndPlay("unload");
sLoop.stop();
};
Symbol 764 MovieClip Frame 5
stop();
anim.stop();
removeMovieClip("root.cam.magic.windHolder");
dist = 30;
degrees = this._parent._rotation;
radians = (degrees * Math.PI) / 180;
radians = radians + 4.71238898038469;
xDist = dist * Math.cos(radians);
yDist = dist * Math.sin(radians);
m = _root.cam.magic.attachMovie("windHolder", "windHolder" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
m._x = this._parent._x + xDist;
m._y = this._parent._y + yDist;
m._rotation = this._parent._rotation + 180;
m.path = m;
w = _root.cam.gAttack.attachMovie("windHolder", "windHolder" + _root.cam.gAttack.getNextHighestDepth(), _root.cam.gAttack.getNextHighestDepth());
w._x = this._parent._x + xDist;
w._y = this._parent._y + yDist;
w._rotation = this._parent._rotation + 180;
w.path = w;
sLoop = new Sound(this);
sLoop.attachSound("windSound");
sLoop.setVolume(0);
sLoop.start(0, 999);
inc = 10;
current = 0;
this.onEnterFrame = function () {
if ((_root.magic > _root.windCost) && (mousePressed == true)) {
_root.magic = _root.magic - _root.windCost;
current = current + inc;
if (current > _root.soundVolume) {
current = _root.soundVolume;
}
sLoop.setVolume(current);
} else {
m.wind.gotoAndPlay("unload");
w.wind.gotoAndPlay("unload");
mousePressed = true;
this.play();
anim.play();
delete this.onEnterFrame;
}
};
Symbol 764 MovieClip Frame 6
inc = (-_root.soundVolume) / 4;
current = current + inc;
sLoop.setVolume(current);
this.onEnterFrame = function () {
current = current + inc;
sLoop.setVolume(current);
};
Symbol 764 MovieClip Frame 9
sLoop.stop();
_root.usingMagic = false;
_root.ready = true;
Symbol 765 MovieClip Frame 1
if (_root.magic > _root.healStartCost) {
_root.life = _root.life + 5;
if (_root.life > _root.maxLife) {
_root.life = _root.maxLife;
}
_root.magic = _root.magic - _root.healStartCost;
_root.usingMagic = true;
_root.ready = false;
m = _root.cam.magicAbove.attachMovie("healAnim_mc", "cloud" + _root.cam.magicAbove.getNextHighestDepth(), _root.cam.magicAbove.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = Math.random();
this.onEnterFrame = function () {
if (_root.magic > _root.healCost) {
_root.magic--;
} else {
m.gotoAndStop("unload");
this.gotoAndPlay(6);
anim.gotoAndPlay(6);
delete this.onEnterFrame;
}
};
}
onMouseUp = function () {
m.gotoAndStop("unload");
this.gotoAndPlay(6);
anim.gotoAndPlay(6);
delete this.onEnterFrame;
};
this.onUnload = function () {
m.gotoAndStop("unload");
this.gotoAndPlay(6);
anim.gotoAndPlay(6);
};
Symbol 765 MovieClip Frame 5
stop();
anim.stop();
Symbol 765 MovieClip Frame 9
_root.usingMagic = false;
_root.ready = true;
Symbol 770 MovieClip Frame 1
_root.usingMagic = true;
_root.ready = false;
_root.attackPower = 1;
ammount = _root.magic / 30;
num = 0;
if (_root.detail == "high") {
this.onEnterFrame = function () {
num = num + ammount;
while (num >= 1) {
num--;
w = _root.cam.bg.attachMovie("streak", "streak" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
w._x = this._parent._x;
w._y = this._parent._y;
w._rotation = (Math.random() * 360) - 180;
}
};
}
Symbol 770 MovieClip Frame 13
delete this.onEnterFrame;
Symbol 770 MovieClip Frame 18
_root.attackPower = _root.magic / 100;
_root.magic = 0;
m = _root.cam.magic.attachMovie("shockwave", "shockwave" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
m = _root.cam.gAttack.attachMovie("shockwaveArea", "shockwaveArea" + _root.cam.magic.getNextHighestDepth(), _root.cam.magic.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
Symbol 770 MovieClip Frame 27
_root.usingMagic = false;
_root.ready = true;
Symbol 771 MovieClip Frame 1
stop();
Symbol 771 MovieClip Frame 2
stop();
Symbol 771 MovieClip Frame 3
stop();
Symbol 771 MovieClip Frame 4
stop();
Symbol 771 MovieClip Frame 5
stop();
Symbol 771 MovieClip Frame 6
stop();
Symbol 771 MovieClip Frame 7
stop();
Symbol 771 MovieClip Frame 8
stop();
Symbol 771 MovieClip Frame 9
stop();
Symbol 771 MovieClip Frame 10
stop();
dead.stop();
Symbol 771 MovieClip Frame 11
stop();
Symbol 771 MovieClip Frame 12
stop();
Symbol 771 MovieClip Frame 13
stop();
Symbol 789 MovieClip Frame 1
stop();
forwardText = String.fromCharCode(_root.upKey);
backwardText = String.fromCharCode(_root.downKey);
leftText = String.fromCharCode(_root.leftKey);
rightText = String.fromCharCode(_root.rightKey);
magText = String.fromCharCode(_root.magicPKey);
healthText = String.fromCharCode(_root.healthPKey);
Symbol 789 MovieClip Frame 2
stop();
Symbol 789 MovieClip Frame 3
stop();
Symbol 789 MovieClip Frame 4
stop();
Symbol 789 MovieClip Frame 5
stop();
Symbol 789 MovieClip Frame 6
stop();
Symbol 789 MovieClip Frame 7
stop();
Symbol 789 MovieClip Frame 8
stop();
Symbol 789 MovieClip Frame 9
stop();
Symbol 789 MovieClip Frame 10
stop();
Symbol 789 MovieClip Frame 11
stop();
Symbol 789 MovieClip Frame 12
stop();
Instance of Symbol 771 MovieClip "kimblis" in Symbol 789 MovieClip Frame 12
onClipEvent (load) {
moveSpeed = 13;
up = false;
down = false;
left = false;
right = false;
mClick = false;
initialX = this._x;
initialY = this._y;
state = "standing";
alive = true;
}
onClipEvent (enterFrame) {
if (alive == true) {
if (_root.life <= 0) {
alive = false;
_root.gotoAndStop("dead");
}
if (_root.detectBAttack(this._x, this._y, this)) {
this.gotoAndStop("hurt");
_root.life = _root.life - (Math.random() * 5);
state = "hurt";
} else {
if (_root.ready == true) {
xDist = _root._xmouse - this._x;
yDist = _root._ymouse - this._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._rotation = angle + 90;
}
if (_root.ready == true) {
state = "standing";
if (((mClick == true) && (_root.attack == true)) && (!_root.sideMenu.hitTest(_root._xmouse, _root._ymouse, true))) {
state = _root.attackMethod;
_root.ready = false;
} else if (up == true) {
xSpeed = moveSpeed * Math.cos(this.radians);
ySpeed = moveSpeed * Math.sin(this.radians);
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) + (xSpeed * 2), (this._y + _root.cam._y) + (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) + (xSpeed * 2), (this._y + _root.cam._y) + (ySpeed * 2), true))) {
}
state = "running";
} else if (down == true) {
xSpeed = moveSpeed * Math.cos(this.radians);
ySpeed = moveSpeed * Math.sin(this.radians);
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) - (xSpeed * 2), (this._y + _root.cam._y) - (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) - (xSpeed * 2), (this._y + _root.cam._y) - (ySpeed * 2), true))) {
}
state = "backingUp";
} else if (right == true) {
xSpeed = moveSpeed * Math.cos(this.radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(this.radians + (Math.PI/2));
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) + (xSpeed * 2), (this._y + _root.cam._y) + (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) + (xSpeed * 2), (this._y + _root.cam._y) + (ySpeed * 2), true))) {
}
state = "straifRight";
} else if (left == true) {
xSpeed = moveSpeed * Math.cos(this.radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(this.radians + (Math.PI/2));
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) - (xSpeed * 2), (this._y + _root.cam._y) - (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) - (xSpeed * 2), (this._y + _root.cam._y) - (ySpeed * 2), true))) {
}
state = "straifLeft";
}
}
this.gotoAndStop(state);
}
_root.cam._x = -(this._x - initialX);
_root.cam._y = -(this._y - initialY);
} else {
this.gotoAndStop("dead");
}
}
onClipEvent (keyDown) {
if (Key.isDown(_root.upKey)) {
up = true;
}
if (Key.isDown(_root.downKey)) {
down = true;
}
if (Key.isDown(_root.rightKey)) {
right = true;
}
if (Key.isDown(_root.leftKey)) {
left = true;
}
}
onClipEvent (keyUp) {
if (!Key.isDown(_root.upKey)) {
up = false;
}
if (!Key.isDown(_root.downKey)) {
down = false;
}
if (!Key.isDown(_root.rightKey)) {
right = false;
}
if (!Key.isDown(_root.leftKey)) {
left = false;
}
}
onClipEvent (mouseDown) {
mClick = true;
}
onClipEvent (mouseUp) {
mClick = false;
}
Symbol 789 MovieClip Frame 13
stop();
Symbol 792 Button
on (release) {
_root.buttonClick();
_root.maxLife = _root.maxLife + 25;
play();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 795 Button
on (release) {
_root.maxMagic = _root.maxMagic + 25;
play();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 800 Button
on (rollOver) {
aTitle = "Attack lv.1";
aCost = "cost: no magic used";
aDamage = "damage: normal damage";
aDescription = "description: Attack with your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 803 Button
on (release) {
if ((_root.swordLevel == 1) && (_root.upgradePoints > 0)) {
sword2.gotoAndStop("yes");
sword3.gotoAndStop("click");
_root.swordLevel = 2;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Attack lv.2";
aCost = "cost: no magic used";
aDamage = "damage: double damage";
aDescription = "description: Attack with your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 806 Button
on (release) {
if ((_root.swordLevel == 2) && (_root.upgradePoints > 0)) {
sword3.gotoAndStop("yes");
_root.swordLevel = 3;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Attack lv.3";
aCost = "cost: no magic used";
aDamage = "damage: triple damage";
aDescription = "description: Attack with your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 810 Button
on (release) {
if ((_root.airBlastLevel == 0) && (_root.upgradePoints > 0)) {
blast1.gotoAndStop("yes");
blast2.gotoAndStop("click");
heal1.gotoAndStop("click");
_root.airBlastLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Wind Blast lv.1";
aCost = "cost: 20 magic";
aDamage = "damage: normal damage";
aDescription = "description: Throw a powerful blast of wind.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 813 Button
on (release) {
if ((_root.airBlastLevel == 1) && (_root.upgradePoints > 0)) {
blast2.gotoAndStop("yes");
blast3.gotoAndStop("click");
_root.airBlastLevel = 2;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Wind Blast lv.2";
aCost = "cost: 20 magic";
aDamage = "damage: double damage";
aDescription = "description: Throw two powerful blasts of wind.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 816 Button
on (release) {
if ((_root.airBlastLevel == 2) && (_root.upgradePoints > 0)) {
blast3.gotoAndStop("yes");
_root.airBlastLevel = 3;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Wind Blast lv.3";
aCost = "cost: 20 magic";
aDamage = "damage: triple damage";
aDescription = "description: Throw three powerful blasts of wind.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 818 Button
on (release) {
if (((_root.healLevel == 0) && (_root.upgradePoints > 0)) && (_root.airBlastLevel > 0)) {
heal1.gotoAndStop("yes");
heal2.gotoAndStop("click");
windSword1.gotoAndStop("click");
_root.healLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Healing Winds lv.1";
aCost = "cost: 15 magic";
aDamage = "damage: none";
aDescription = "description: Hold mouse down to convert 30 magic into 7 life per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 819 Button
on (release) {
if ((_root.healLevel == 1) && (_root.upgradePoints > 0)) {
heal2.gotoAndStop("yes");
heal3.gotoAndStop("click");
_root.healLevel = 2;
_root.healSpeed = 1;
_root.healStartCost = 10;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Healing Winds lv.2";
aCost = "cost: 10 magic";
aDamage = "damage: none";
aDescription = "description: Hold mouse down to convert 30 magic into 15 life per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 821 Button
on (release) {
if ((_root.healLevel == 2) && (_root.upgradePoints > 0)) {
heal3.gotoAndStop("yes");
_root.healLevel = 3;
_root.healSpeed = 1.5;
_root.healStartCost = 5;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Healing Winds lv.3";
aCost = "cost: 5 magic";
aDamage = "damage: none";
aDescription = "description: Hold mouse down to convert 30 magic into 30 life per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 824 Button
on (release) {
if (((_root.windSwordLevel == 0) && (_root.upgradePoints > 0)) && (_root.healLevel > 0)) {
windSword1.gotoAndStop("yes");
windSword2.gotoAndStop("click");
wind1.gotoAndStop("click");
_root.windSwordLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Magic Attack lv.1";
aCost = "cost: 40 magic";
aDamage = "damage: normal damage";
aDescription = "description: Add a powerful magic attack to the end of your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 827 Button
on (release) {
if ((_root.windSwordLevel == 1) && (_root.upgradePoints > 0)) {
windSword2.gotoAndStop("yes");
windSword3.gotoAndStop("click");
_root.windSwordLevel = 2;
_root.magicSwordCost = 35;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Magic Attack lv.2";
aCost = "cost: 35 magic";
aDamage = "damage: double damage";
aDescription = "description: Add a powerfull magic attack to the end of your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 830 Button
on (release) {
if ((_root.windSwordLevel == 2) && (_root.upgradePoints > 0)) {
windSword3.gotoAndStop("yes");
_root.windSwordLevel = 3;
_root.magicSwordCost = 30;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Magic Attack lv.3";
aCost = "cost: 30 magic";
aDamage = "damage: triple damage";
aDescription = "description: Add a powerfull magic attack to the end of your sword.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 833 Button
on (release) {
if (((_root.windLevel == 0) && (_root.upgradePoints > 0)) && (_root.windSwordLevel > 0)) {
wind1.gotoAndStop("yes");
wind2.gotoAndStop("click");
twister1.gotoAndStop("click");
_root.windLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Freezing Wind lv.1";
aCost = "cost: 30 magic per second";
aDamage = "damage: normal damage";
aDescription = "description: Fire artic winds a short distance.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 836 Button
on (release) {
if ((_root.windLevel == 1) && (_root.upgradePoints > 0)) {
wind2.gotoAndStop("yes");
wind3.gotoAndStop("click");
_root.windLevel = 2;
_root.maxWindDist = 13;
_root.windCost = 1.6666;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Freezing Wind lv.2";
aCost = "cost: 25 magic per second";
aDamage = "damage: normal damage";
aDescription = "description: Fire artic winds a medium distance.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 839 Button
on (release) {
if ((_root.windLevel == 2) && (_root.upgradePoints > 0)) {
wind3.gotoAndStop("yes");
_root.windLevel = 3;
_root.maxWindDist = 16;
_root.windCost = 1.3333;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Freezing Wind lv.3";
aCost = "cost: 20 magic per second";
aDamage = "damage: normal damage";
aDescription = "description: Fire artic winds a great distance.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 843 Button
on (release) {
if (((_root.twisterLevel == 0) && (_root.upgradePoints > 0)) && (_root.windLevel > 0)) {
twister1.gotoAndStop("yes");
twister2.gotoAndStop("click");
wave1.gotoAndStop("click");
_root.twisterLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Twister lv.1";
aCost = "cost: 30 magic";
aDamage = "damage: normal damage";
aDescription = "description: Call a twister down from the skies. Hold mouse down to sustain it for 15 magic per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 844 Button
on (release) {
if ((_root.twisterLevel == 1) && (_root.upgradePoints > 0)) {
twister2.gotoAndStop("yes");
twister3.gotoAndStop("click");
_root.twisterLevel = 2;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Twister lv.2";
aCost = "cost: 30 magic";
aDamage = "damage: double damage";
aDescription = "description: Call a twister down from the skies. Hold mouse down to sustain it for 15 magic per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 847 Button
on (release) {
if (((_root.shockwaveLevel == 0) && (_root.upgradePoints > 0)) && (_root.twisterLevel > 0)) {
wave1.gotoAndStop("yes");
wave2.gotoAndStop("click");
_root.shockwaveLevel = 1;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Shockwave lv.1";
aCost = "cost: all magic";
aDamage = "damage: normal damage";
aDescription = "description: Release all available magic in a massive shockwave.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 848 Button
on (release) {
if ((_root.shockwaveLevel == 1) && (_root.upgradePoints > 0)) {
wave2.gotoAndStop("yes");
wave3.gotoAndStop("click");
_root.shockwaveLevel = 2;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Shockwave lv.2";
aCost = "cost: all magic";
aDamage = "damage: double damage";
aDescription = "description: Release all available magic in a massive shockwave.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 849 Button
on (release) {
if ((_root.shockwaveLevel == 2) && (_root.upgradePoints > 0)) {
wave3.gotoAndStop("yes");
_root.shockwaveLevel = 3;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Shockwave lv.3";
aCost = "cost: all magic";
aDamage = "damage: triple damage";
aDescription = "description: Release all available magic in a massive shockwave.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 850 Button
on (release) {
if ((_root.twisterLevel == 2) && (_root.upgradePoints > 0)) {
twister3.gotoAndStop("yes");
_root.twisterLevel = 3;
_root.upgradePoints = _root.upgradePoints - 1;
points = "points remaining: " + _root.upgradePoints;
_root.buttonClick();
}
}
on (rollOver) {
aTitle = "Twister lv.3";
aCost = "cost: 30 magic";
aDamage = "damage: triple damage";
aDescription = "description: Call a twister down from the skies. Hold mouse down to sustain it for 15 magic per second.";
_root.buttonRoll();
}
on (rollOut, dragOut) {
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
}
Symbol 855 Button
on (release) {
_root.buttonClick();
if (_root.levelUpExtra == 0) {
_root.gotoAndStop("game");
} else {
_root.kimblisLevel++;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.levelUpExtra--;
this.gotoAndStop(1);
}
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 863 MovieClip Frame 1
stop();
Symbol 864 MovieClip Frame 1
stop();
levelText = "level " + _root.kimblisLevel;
Symbol 864 MovieClip Frame 2
stop();
points = "points remaining: " + _root.upgradePoints;
aTitle = "";
aCost = "cost:";
aDamage = "damage:";
aDescription = "description:";
sword1.gotoAndStop("yes");
if (_root.swordLevel >= 3) {
sword2.gotoAndStop("yes");
sword3.gotoAndStop("yes");
} else if (_root.swordLevel >= 2) {
sword2.gotoAndStop("yes");
sword3.gotoAndStop("click");
} else if (_root.swordLevel >= 1) {
sword2.gotoAndStop("click");
sword3.gotoAndStop("no");
}
if (_root.airBlastLevel >= 3) {
blast1.gotoAndStop("yes");
blast2.gotoAndStop("yes");
blast3.gotoAndStop("yes");
} else if (_root.airBlastLevel >= 2) {
blast1.gotoAndStop("yes");
blast2.gotoAndStop("yes");
blast3.gotoAndStop("click");
} else if (_root.airBlastLevel >= 1) {
blast1.gotoAndStop("yes");
blast2.gotoAndStop("click");
blast3.gotoAndStop("no");
} else {
blast1.gotoAndStop("click");
blast2.gotoAndStop("no");
blast3.gotoAndStop("no");
}
if (_root.healLevel >= 3) {
heal1.gotoAndStop("yes");
heal2.gotoAndStop("yes");
heal3.gotoAndStop("yes");
} else if (_root.healLevel >= 2) {
heal1.gotoAndStop("yes");
heal2.gotoAndStop("yes");
heal3.gotoAndStop("click");
} else if (_root.healLevel >= 1) {
heal1.gotoAndStop("yes");
heal2.gotoAndStop("click");
heal3.gotoAndStop("no");
} else if (_root.airBlastLevel >= 1) {
heal1.gotoAndStop("click");
heal2.gotoAndStop("no");
heal3.gotoAndStop("no");
} else {
heal1.gotoAndStop("no");
heal2.gotoAndStop("no");
heal3.gotoAndStop("no");
}
if (_root.windSwordLevel >= 3) {
windSword1.gotoAndStop("yes");
windSword2.gotoAndStop("yes");
windSword3.gotoAndStop("yes");
} else if (_root.windSwordLevel >= 2) {
windSword1.gotoAndStop("yes");
windSword2.gotoAndStop("yes");
windSword3.gotoAndStop("click");
} else if (_root.windSwordLevel >= 1) {
windSword1.gotoAndStop("yes");
windSword2.gotoAndStop("click");
windSword3.gotoAndStop("no");
} else if (_root.healLevel >= 1) {
windSword1.gotoAndStop("click");
windSword2.gotoAndStop("no");
windSword3.gotoAndStop("no");
} else {
windSword1.gotoAndStop("no");
windSword2.gotoAndStop("no");
windSword3.gotoAndStop("no");
}
if (_root.windLevel >= 3) {
wind1.gotoAndStop("yes");
wind2.gotoAndStop("yes");
wind3.gotoAndStop("yes");
} else if (_root.windLevel >= 2) {
wind1.gotoAndStop("yes");
wind2.gotoAndStop("yes");
wind3.gotoAndStop("click");
} else if (_root.windLevel >= 1) {
wind1.gotoAndStop("yes");
wind2.gotoAndStop("click");
wind3.gotoAndStop("no");
} else if (_root.windSwordLevel >= 1) {
wind1.gotoAndStop("click");
wind2.gotoAndStop("no");
wind3.gotoAndStop("no");
} else {
wind1.gotoAndStop("no");
wind2.gotoAndStop("no");
wind3.gotoAndStop("no");
}
if (_root.twisterLevel >= 3) {
twister1.gotoAndStop("yes");
twister2.gotoAndStop("yes");
twister3.gotoAndStop("yes");
} else if (_root.twisterLevel >= 2) {
twister1.gotoAndStop("yes");
twister2.gotoAndStop("yes");
twister3.gotoAndStop("click");
} else if (_root.twisterLevel >= 1) {
twister1.gotoAndStop("yes");
twister2.gotoAndStop("click");
twister3.gotoAndStop("no");
} else if (_root.windLevel >= 1) {
twister1.gotoAndStop("click");
twister2.gotoAndStop("no");
twister3.gotoAndStop("no");
} else {
twister1.gotoAndStop("no");
twister2.gotoAndStop("no");
twister3.gotoAndStop("no");
}
if (_root.shockwaveLevel >= 3) {
wave1.gotoAndStop("yes");
wave2.gotoAndStop("yes");
wave3.gotoAndStop("yes");
} else if (_root.shockwaveLevel >= 2) {
wave1.gotoAndStop("yes");
wave2.gotoAndStop("yes");
wave3.gotoAndStop("click");
} else if (_root.shockwaveLevel >= 1) {
wave1.gotoAndStop("yes");
wave2.gotoAndStop("click");
wave3.gotoAndStop("no");
} else if (_root.twisterLevel >= 1) {
wave1.gotoAndStop("click");
wave2.gotoAndStop("no");
wave3.gotoAndStop("no");
} else {
wave1.gotoAndStop("no");
wave2.gotoAndStop("no");
wave3.gotoAndStop("no");
}
Instance of Symbol 863 MovieClip "blast1" in Symbol 864 MovieClip Frame 2
onClipEvent (load) {
function __f_load(eventObj) {
if (_root.airBlastLevel >= 1) {
this.gotoAndStop("yes");
} else if (_root.swordLevel >= 1) {
this.gotoAndStop("click");
}
}
this.addEventListener("load", __f_load);
}
Instance of Symbol 863 MovieClip "sword2" in Symbol 864 MovieClip Frame 2
onClipEvent (load) {
function __f_load(eventObj) {
if (_root.swordLevel >= 1) {
this.gotoAndStop("click");
} else if (_root.swordLevel >= 2) {
this.gotoAndStop("yes");
}
}
this.addEventListener("load", __f_load);
}
Instance of Symbol 863 MovieClip "sword3" in Symbol 864 MovieClip Frame 2
onClipEvent (load) {
function __f_load(eventObj) {
if (_root.swordLevel >= 2) {
this.gotoAndStop("click");
} else if (_root.swordLevel >= 3) {
this.gotoAndStop("yes");
}
}
this.addEventListener("load", __f_load);
}
Symbol 868 Button
on (release) {
_root.buttonClick();
_root.gotoAndStop("levelUp");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 884 MovieClip Frame 1
this.gotoAndStop(_root.kimblisLevel);
Symbol 887 MovieClip Frame 1
stop();
Symbol 889 MovieClip Frame 1
stop();
Symbol 889 MovieClip Frame 2
stop();
Symbol 905 MovieClip Frame 1
stop();
Symbol 905 MovieClip Frame 2
stop();
Symbol 908 MovieClip Frame 1
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
clearInterval(p);
};
Symbol 908 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("pickUpPotionSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 908 MovieClip Frame 7
function bats() {
duration++;
if ((_root.batCount == 0) || (duration >= 19)) {
_root.changeMusic(_root.victoryLoop);
clearInterval(p);
}
}
stop();
clearInterval(timer);
_root.sideMenu.lifePotion.play();
_root.lifePotionCount = _root.lifePotionCount + 1;
s = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
s._x = -19.8;
s._y = 40;
w = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
w._x = 50;
w._y = 100;
l = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
l._x = 200;
l._y = 30;
r = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
r._x = -21;
r._y = -1227.6;
_root.changeMusic(_root.exciteLoop);
p = setInterval(bats, 3000, this);
duration = 0;
Symbol 910 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
clearInterval(p);
};
Symbol 910 MovieClip Frame 2
stop();
clearInterval(timer);
_root.kimblisLevel = 2;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.gotoAndPlay("mov1");
Symbol 911 MovieClip Frame 1
spoken = false;
this._visible = false;
Symbol 911 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 911 MovieClip Frame 3
clearInterval(timer);
_root.missionText = "You just came from there.";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("iJustCameFromThereSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
Symbol 911 MovieClip Frame 201
this.gotoAndPlay("on");
Symbol 912 MovieClip Frame 1
spoken = false;
this._visible = false;
Symbol 912 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 912 MovieClip Frame 3
clearInterval(timer);
_root.missionText = "The sword seems to be avoiding motion...";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("theresASwordSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
Symbol 912 MovieClip Frame 201
this.gotoAndStop("on");
Symbol 920 MovieClip Frame 1
this._rotation = (Math.random() * 360) - 180;
Symbol 927 MovieClip Frame 1
stop();
Symbol 927 MovieClip Frame 2
stop();
Symbol 928 MovieClip Frame 1
stop();
runFrom = _root.cam.kimblis;
rotateSpeed = 10;
this.onEnterFrame = function () {
targetAngle = Math.atan2(runFrom._y - this._y, runFrom._x - this._x);
errorAngle = (targetAngle * 57.2957795130823) - this._rotation;
if (Math.abs(errorAngle) > rotateSpeed) {
if (((errorAngle > 0) && (errorAngle < 180)) || (errorAngle < -180)) {
this._rotation = this._rotation + rotateSpeed;
} else {
this._rotation = this._rotation - rotateSpeed;
}
} else {
this._rotation = this._rotation + errorAngle;
}
};
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 928 MovieClip Frame 2
delete this.onEnterFrame;
clearInterval(timer);
_root.sideMenu.attackButtons.sword.weopon.gotoAndStop("goodSword");
_root.weopon = "goodSword";
_root.missionText = "You have the power sword!";
sLoop = new Sound(this);
sLoop.attachSound("swordClangSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 928 MovieClip Frame 10
stop();
Symbol 943 MovieClip Frame 1
this.gotoAndPlay(Math.ceil(Math.random() * 9));
Symbol 943 MovieClip Frame 9
gotoAndPlay (2);
Symbol 945 MovieClip Frame 1
stop();
Symbol 945 MovieClip Frame 2
stop();
Symbol 948 MovieClip Frame 1
stop();
allreadyCalled = false;
Symbol 948 MovieClip Frame 2
stop();
this.onEnterFrame = function () {
if (this.hitTest(_root.cam.gAttack) && (_root.attackMethod == "sword")) {
this.gotoAndStop("off");
delete this.onEnterFrame;
}
};
Symbol 948 MovieClip Frame 3
function bats() {
bob++;
if ((_root.batCount == 0) || (bob >= 19)) {
_root.changeMusic(_root.victoryLoop);
clearInterval(p);
}
}
stop();
s = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
s._x = 75.8;
s._y = 2948;
w = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
w._x = 142;
w._y = 2955;
l = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
l._x = 170.7;
l._y = 3057;
r = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
r._x = 67;
r._y = 3158;
t = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
t._x = 132;
t._y = 3150;
_root.changeMusic(_root.exciteLoop);
p = setInterval(bats, 3000, this);
bob = 0;
_root.cam.caveInTrigger.gotoAndStop(2);
_root.cam.topBG.caveInGraphic.play();
_root.cam.keyTrigger.gotoAndStop("on");
_root.cam.gateTrigger.gotoAndStop("on");
this.onUnload = function () {
clearInterval(p);
};
Symbol 949 MovieClip Frame 1
stop();
Symbol 949 MovieClip Frame 2
stop();
Symbol 951 MovieClip Frame 1
stop();
spoken = false;
this._visible = false;
hasKey = false;
Symbol 951 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 951 MovieClip Frame 3
clearInterval(timer);
if (hasKey == false) {
_root.missionText = "This gate was not locked when I came in...";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("itsLockedSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
} else {
_root.cam.topBG.gateGraphic.play();
_root.cam.walls.gateWall.play();
_root.cam.lv2End.gotoAndStop("on");
stop();
}
Symbol 951 MovieClip Frame 201
gotoAndStop ("on");
Symbol 952 MovieClip Frame 1
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 952 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("pickUpPotionSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 952 MovieClip Frame 7
stop();
clearInterval(timer);
_root.sideMenu.lifePotion.play();
_root.lifePotionCount = _root.lifePotionCount + 1;
Symbol 953 MovieClip Frame 1
stop();
Symbol 953 MovieClip Frame 2
stop();
Symbol 954 MovieClip Frame 1
spoken = false;
this._visible = false;
Symbol 954 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 954 MovieClip Frame 3
clearInterval(timer);
_root.missionText = "You have already been in the city...";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("iJustCameFromThereSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
Symbol 954 MovieClip Frame 201
this.gotoAndPlay("on");
Symbol 955 MovieClip Frame 1
spoken = false;
spoken2 = false;
this._visible = false;
Symbol 955 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 955 MovieClip Frame 3
clearInterval(timer);
if (_root.weopon == "goodSword") {
stop();
if (_root.cam.walls.caveInWall.allreadyCalled == false) {
_root.cam.walls.caveInWall.allreadyCalled = true;
_root.cam.walls.caveInWall.gotoAndStop("active");
}
_root.missionText = "Your new sword is powerful enough to clear a path through the debris.";
if (spoken2 == false) {
spoken2 = true;
sLoop = new Sound(this);
sLoop.attachSound("iCanCutSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
} else {
_root.missionText = "The entrance has collapsed, you need a stronger sword to clear a path.";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("theEntranceHasCavedSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
}
Symbol 955 MovieClip Frame 201
this.gotoAndStop("on");
Symbol 956 MovieClip Frame 1
stop();
this._visible = false;
Symbol 956 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
clearInterval(p);
};
Symbol 956 MovieClip Frame 3
function bats() {
duration++;
if ((_root.orcCount == 1) || (duration >= 18)) {
_root.changeMusic(_root.victoryLoop);
clearInterval(p);
}
}
stop();
clearInterval(timer);
sLoop = new Sound(this);
sLoop.attachSound("theresAKeySpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
_root.missionText = "There is a key.";
_root.cam.gateKey.gotoAndStop("on");
k = _root.cam.baddies.attachMovie("orc", "orc" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
k._x = 1356;
k._y = _root.cam.kimblis._y + 300;
g = _root.cam.baddies.attachMovie("orc", "orc" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
g._x = 1244;
g._y = _root.cam.kimblis._y + 300;
r = _root.cam.baddies.attachMovie("orc", "orc" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
r._x = -830;
r._y = 3160;
w = _root.cam.baddies.attachMovie("bat", "bat" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
w._x = 1071.8;
w._y = 2688.8;
_root.changeMusic(_root.exciteLoop);
p = setInterval(bats, 3000);
duration = 0;
Symbol 957 MovieClip Frame 1
stop();
this._visible = false;
Symbol 957 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 957 MovieClip Frame 3
stop();
clearInterval(timer);
_root.kimblisLevel = 3;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.gotoAndPlay("story");
Symbol 960 MovieClip Frame 1
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 960 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("pickUpPotionSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 960 MovieClip Frame 7
stop();
clearInterval(timer);
_root.magicPotionCount = _root.magicPotionCount + 1;
_root.sideMenu.magicPotion.play();
Symbol 962 MovieClip Frame 1
stop();
Symbol 962 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 962 MovieClip Frame 3
stop();
clearInterval(timer);
_root.cam.gateTrigger.hasKey = true;
_root.missionText = "You found the gate key!";
sLoop = new Sound(this);
sLoop.attachSound("ballPickUpSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 986 MovieClip Frame 1
m = _root.cam.bg.attachMovie("bloodSplatter", "splatter" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._parent._x;
m._y = this._parent._y;
m._rotation = (Math.random() * 360) - 180;
m._xscale = 50;
m._yscale = 50;
Symbol 986 MovieClip Frame 4
this._parent.gotoAndPlay("frolicking");
Symbol 987 MovieClip Frame 1
delete this.onEnterFrame;
randNum = Math.random();
carry = false;
if (randNum < 0.333333333333333) {
this.gotoAndStop("frolicking");
} else if (randNum < 0.666666666666667) {
this.gotoAndStop("following");
} else {
this.gotoAndStop("standing");
}
Symbol 987 MovieClip Frame 2
stop();
delete this.onEnterFrame;
rotSpeed = 50;
moveSpeed = 3;
randNum = 0;
decay = 1.4;
carry = false;
this.onEnterFrame = function () {
_root.inforceWalls(this._x, this._y, this);
if (_root.detectBAttack(this._x, this._y, this)) {
this._parent.girlArrow.play();
_root.girlLife = _root.girlLife - (Math.random() * 5);
this.gotoAndStop("hurt");
}
randNum = randNum + ((Math.random() * rotSpeed) - (rotSpeed / 2));
this._rotation = this._rotation + randNum;
randNum = randNum / decay;
radians = (this._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
if (!_root.cam.walls.hitTest((this._x + (xSpeed * 3)) + _root.cam._x, (this._y + (ySpeed * 3)) + _root.cam._y, true)) {
this._x = this._x + xSpeed;
this._y = this._y + ySpeed;
}
if ((Math.random() * 100) > 98) {
this.gotoAndPlay("choosing");
}
};
Symbol 987 MovieClip Frame 3
stop();
delete this.onEnterFrame;
stopDist = 50;
moveSpeed = 4;
carry = false;
this.onEnterFrame = function () {
if (_root.detectBAttack(this._x, this._y, this)) {
this._parent.girlArrow.play();
_root.girlLife = _root.girlLife - (Math.random() * 5);
this.gotoAndStop("hurt");
}
xDist = this._x - _root.cam.kimblis._x;
yDist = this._y - _root.cam.kimblis._y;
this._rotation = _root.findAngle(xDist, yDist) + 180;
if ((((xDist >= stopDist) || (xDist <= (-stopDist))) || (yDist > stopDist)) || (yDist < (-stopDist))) {
radians = (this._rotation * Math.PI) / 180;
radians = radians + 4.71238898038469;
xSpeed = moveSpeed * Math.cos(radians);
ySpeed = moveSpeed * Math.sin(radians);
if (_root.cam.walls.hitTest((this._x + (xSpeed * 3)) + _root.cam._x, (this._y + (ySpeed * 3)) + _root.cam._y, true)) {
this.gotoAndPlay("choosing");
} else {
this._x = this._x + xSpeed;
this._y = this._y + ySpeed;
}
} else {
this.gotoAndPlay("choosing");
}
};
Symbol 987 MovieClip Frame 4
stop();
delete this.onEnterFrame;
wait = Math.random() * 50;
carry = false;
this.onEnterFrame = function () {
if (_root.detectBAttack(this._x, this._y, this)) {
this._parent.girlArrow.play();
_root.girlLife = _root.girlLife - (Math.random() * 5);
this.gotoAndStop("hurt");
}
wait--;
if (wait < 0) {
this.gotoAndPlay("choosing");
}
};
Symbol 987 MovieClip Frame 5
stop();
delete this.onEnterFrame;
accel = 2;
cDist = 10;
carry = true;
this.onEnterFrame = function () {
if (_root.detectBAttack(this._x, this._y, this)) {
this._parent.girlArrow.play();
_root.girlLife = _root.girlLife - (Math.random() * 5);
m = _root.cam.bg.attachMovie("bloodSplatter", "splatter" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
m._x = this._x;
m._y = this._y;
}
this._rotation = this._rotation + 9;
_root.magic = _root.magic - _root.carryCost;
xDist = this._x - (_root._xmouse - _root.cam._x);
yDist = this._y - (_root._ymouse - _root.cam._y);
xVel = xDist / accel;
yVel = yDist / accel;
if (xVel > 0) {
while (xVel > cDist) {
if (!_root.cam.walls.hitTest((this._x - cDist) + _root.cam._x, this._y + _root.cam._y, true)) {
xVel = xVel - cDist;
this._x = this._x - cDist;
} else {
xVel = 0;
break;
}
}
}
if (xVel < 0) {
while (xVel < (-cDist)) {
if (!_root.cam.walls.hitTest((this._x + cDist) + _root.cam._x, this._y + _root.cam._y, true)) {
xVel = xVel + cDist;
this._x = this._x + cDist;
} else {
xVel = 0;
break;
}
}
}
if (yVel > 0) {
while (yVel > cDist) {
if (!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y - cDist) + _root.cam._y, true)) {
yVel = yVel - cDist;
this._y = this._y - cDist;
} else {
yVel = 0;
break;
}
}
}
if (yVel < 0) {
while (yVel < (-cDist)) {
if (!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y + cDist) + _root.cam._y, true)) {
yVel = yVel + cDist;
this._y = this._y + cDist;
} else {
yVel = 0;
break;
}
}
}
if (!_root.cam.walls.hitTest((this._x - xVel) + _root.cam._x, this._y + _root.cam._y, true)) {
this._x = this._x - xVel;
}
if (!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y - yVel) + _root.cam._y, true)) {
this._y = this._y - yVel;
}
};
Symbol 987 MovieClip Frame 6
stop();
carry = false;
if (_root.girlLife <= 0) {
this.gotoAndStop("dead");
_root.gotoAndStop("deadGirl");
}
delete this.onEnterFrame;
this.onEnterFrame = function () {
if (_root.detectBAttack(this._x, this._y, this)) {
this._parent.girlArrow.play();
_root.girlLife = _root.girlLife - (Math.random() * 5);
this.gotoAndStop("hurt");
}
};
Symbol 987 MovieClip Frame 7
stop();
carry = false;
Symbol 994 MovieClip Frame 1
stop();
Symbol 994 MovieClip Frame 9
stop();
Symbol 999 MovieClip Frame 1
stop();
Symbol 999 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("doorOpenSound");
sLoop.setVolume(_root.soundVolume / 2);
sLoop.start(0, 1);
Symbol 999 MovieClip Frame 28
stop();
Symbol 1000 MovieClip Frame 1
stop();
Symbol 1000 MovieClip Frame 2
stop();
Symbol 1004 MovieClip Frame 1
stop();
this._visible = false;
Symbol 1006 MovieClip Frame 1
stop();
Symbol 1006 MovieClip Frame 2
stop();
Symbol 1008 MovieClip Frame 1
stop();
Symbol 1008 MovieClip Frame 2
stop();
Symbol 1015 MovieClip Frame 1
stop();
Symbol 1015 MovieClip Frame 2
stop();
Symbol 1015 MovieClip Frame 3
stop();
Symbol 1015 MovieClip Frame 4
stop();
Symbol 1015 MovieClip Frame 5
stop();
Symbol 1015 MovieClip Frame 6
stop();
Symbol 1015 MovieClip Frame 7
stop();
Symbol 1015 MovieClip Frame 8
stop();
Symbol 1015 MovieClip Frame 9
stop();
Symbol 1015 MovieClip Frame 10
stop();
Symbol 1015 MovieClip Frame 11
stop();
Symbol 1015 MovieClip Frame 12
stop();
Symbol 1015 MovieClip Frame 13
stop();
Symbol 1015 MovieClip Frame 14
stop();
Symbol 1015 MovieClip Frame 15
stop();
Symbol 1015 MovieClip Frame 16
stop();
Symbol 1015 MovieClip Frame 17
stop();
Symbol 1015 MovieClip Frame 18
stop();
Symbol 1015 MovieClip Frame 19
stop();
Symbol 1015 MovieClip Frame 20
stop();
Symbol 1015 MovieClip Frame 21
stop();
Symbol 1015 MovieClip Frame 22
stop();
Symbol 1015 MovieClip Frame 23
stop();
Symbol 1015 MovieClip Frame 24
stop();
Symbol 1015 MovieClip Frame 25
stop();
Symbol 1015 MovieClip Frame 45
stop();
_root.cam.walls.towerWall.gotoAndStop("off");
Symbol 1015 MovieClip Frame 46
prevFrame();
Symbol 1016 MovieClip Frame 1
stop();
Symbol 1019 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1019 MovieClip Frame 2
clearInterval(timer);
_root.missionText = "You just came from there...";
Symbol 1020 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1020 MovieClip Frame 2
function newNotifs() {
clearInterval(timer);
_root.cam.towerNotif.gotoAndStop("on");
_root.cam.riverNotif.gotoAndStop("on");
}
stop();
clearInterval(timer);
_root.missionText = "The bridge is out... DAMN! This is a trap!";
_root.changeMusic(_root.exciteLoop);
sLoop = new Sound(this);
sLoop.attachSound("theBridgeIsOutSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
baddieTimer = setInterval(_root.callMoreBaddies, 8000);
this.onUnload = function () {
clearInterval(baddieTimer);
};
timer = setInterval(newNotifs, 5000);
Symbol 1021 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1021 MovieClip Frame 2
stop();
clearInterval(timer);
_root.kimblisLevel = 4;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.gotoAndPlay("story");
Symbol 1022 MovieClip Frame 1
stop();
spoken = false;
this._visible = false;
Symbol 1022 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1022 MovieClip Frame 3
clearInterval(timer);
_root.missionText = "This tower looks like it is about to fall over...";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("thisTowerLooksSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
Symbol 1022 MovieClip Frame 101
gotoAndStop ("on");
Symbol 1023 MovieClip Frame 1
stop();
spoken = false;
this._visible = false;
Symbol 1023 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1023 MovieClip Frame 3
clearInterval(timer);
_root.missionText = "You need to find a way across the river.";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("iNeedToGetSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
Symbol 1023 MovieClip Frame 101
gotoAndStop ("on");
Symbol 1032 MovieClip Frame 1
stop();
Symbol 1032 MovieClip Frame 2
stop();
Symbol 1032 MovieClip Frame 3
stop();
Symbol 1032 MovieClip Frame 4
stop();
Symbol 1032 MovieClip Frame 5
stop();
Symbol 1032 MovieClip Frame 6
stop();
Symbol 1032 MovieClip Frame 7
stop();
Symbol 1032 MovieClip Frame 8
stop();
Symbol 1032 MovieClip Frame 9
stop();
Symbol 1032 MovieClip Frame 10
stop();
Symbol 1032 MovieClip Frame 11
stop();
Symbol 1032 MovieClip Frame 12
stop();
Symbol 1032 MovieClip Frame 13
stop();
Symbol 1032 MovieClip Frame 14
stop();
Symbol 1032 MovieClip Frame 15
stop();
Symbol 1032 MovieClip Frame 16
stop();
Symbol 1032 MovieClip Frame 17
stop();
Symbol 1032 MovieClip Frame 18
stop();
Symbol 1032 MovieClip Frame 19
stop();
Symbol 1032 MovieClip Frame 20
stop();
Symbol 1032 MovieClip Frame 21
stop();
Symbol 1032 MovieClip Frame 22
stop();
Symbol 1032 MovieClip Frame 23
stop();
Symbol 1032 MovieClip Frame 24
stop();
Symbol 1032 MovieClip Frame 25
stop();
Symbol 1032 MovieClip Frame 42
stop();
delete this._parent.onEnterFrame;
this._parent.gotoAndStop(6);
Symbol 1033 MovieClip Frame 1
stop();
this.onEnterFrame = function () {
if ((_root.cam.gAttack.hitTest(-805 + _root.cam._x, 258 + _root.cam._y, true) || (_root.cam.gAttack.hitTest(-777 + _root.cam._x, 335 + _root.cam._y, true))) || (_root.cam.gAttack.hitTest(-841 + _root.cam._x, 375 + _root.cam._y, true))) {
_root.cam.bottomBG.leaningBase.baseAnim.play();
_root.cam.bottomBG.leaningBase.play();
anim.play();
play();
delete this.onEnterFrame;
}
};
Symbol 1033 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("buildingCrushSound");
sLoop.setVolume(_root.soundVolume * 0.5);
sLoop.start(0, 1);
Symbol 1038 MovieClip Frame 1
stop();
Symbol 1038 MovieClip Frame 2
stop();
Symbol 1041 MovieClip Frame 1
stop();
Symbol 1041 MovieClip Frame 2
stop();
Symbol 1042 MovieClip Frame 1
stop();
Symbol 1042 MovieClip Frame 2
stop();
Symbol 1044 MovieClip Frame 1
stop();
Symbol 1044 MovieClip Frame 2
stop();
Symbol 1046 MovieClip Frame 1
stop();
Symbol 1046 MovieClip Frame 2
stop();
Symbol 1047 MovieClip Frame 1
stop();
Symbol 1047 MovieClip Frame 2
stop();
Instance of Symbol 1046 MovieClip "fWall" in Symbol 1048 MovieClip Frame 1
onClipEvent (load) {
this._visible = false;
}
Symbol 1060 MovieClip Frame 1
stop();
Symbol 1060 MovieClip Frame 2
sLoop = new Sound(this);
sLoop.attachSound("earthquakeBuildSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1060 MovieClip Frame 35
sLoop = new Sound(this);
sLoop.attachSound("doorExplodeSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1060 MovieClip Frame 41
stop();
Symbol 1064 MovieClip Frame 1
stop();
this.e2.gotoAndPlay(11);
this.e3.gotoAndPlay(21);
Symbol 1064 MovieClip Frame 2
stop();
Symbol 1065 MovieClip Frame 1
stop();
Symbol 1065 MovieClip Frame 2
stop();
Symbol 1066 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1066 MovieClip Frame 2
stop();
clearInterval(timer);
_root.kimblisLevel = 5;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.gotoAndPlay("mov2");
Symbol 1067 MovieClip Frame 1
stop();
this._visible = false;
this.onEnterFrame = function () {
if (this.hitTest(_root.cam.girl)) {
gotoAndPlay (2);
}
};
Symbol 1067 MovieClip Frame 2
delete this.onEnterFrame;
_root.missionText = "What the?";
m = _root.cam.attachMovie("girlMagic", "girlMagic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
m._x = _root.cam.girl._x;
m._y = _root.cam.girl._y;
_root.cam.topBG.door1.gotoAndStop("off");
_root.cam.bottomBG.door1Death.play();
_root.cam.bg.c1.gotoAndPlay("off");
sLoop = new Sound(this);
sLoop.attachSound("whaSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1067 MovieClip Frame 42
stop();
_root.missionText = "The little girl blew the door away...";
_root.cam.walls.doorWall1.gotoAndStop("off");
sLoop = new Sound(this);
sLoop.attachSound("theLittleGirlSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1068 MovieClip Frame 1
stop();
this._visible = false;
this.onEnterFrame = function () {
if (this.hitTest(_root.cam.girl)) {
gotoAndPlay (2);
}
};
Symbol 1068 MovieClip Frame 2
delete this.onEnterFrame;
m = _root.cam.attachMovie("girlMagic", "girlMagic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
m._x = _root.cam.girl._x;
m._y = _root.cam.girl._y;
_root.cam.topBG.door2.gotoAndStop("off");
_root.cam.bottomBG.door2Death.play();
_root.cam.bg.c2.gotoAndPlay("off");
Symbol 1068 MovieClip Frame 42
stop();
_root.missionText = "The little girl blew the door away...";
_root.cam.walls.doorWall2.gotoAndStop("off");
Symbol 1069 MovieClip Frame 1
stop();
Symbol 1069 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1069 MovieClip Frame 3
clearInterval(timer);
_root.weopon = "magSword";
_root.sideMenu.attackButtons.sword.weopon.gotoAndStop("magSword");
_root.missionText = "You have the sword of light.";
sLoop = new Sound(this);
sLoop.attachSound("swordClangSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1069 MovieClip Frame 12
stop();
clearInterval(timer);
Symbol 1070 MovieClip Frame 1
stop();
this._visible = false;
this.onEnterFrame = function () {
if (this.hitTest(_root.cam.girl)) {
gotoAndPlay (2);
}
};
Symbol 1070 MovieClip Frame 2
delete this.onEnterFrame;
m = _root.cam.attachMovie("girlMagic", "girlMagic" + _root.cam.getNextHighestDepth(), _root.cam.getNextHighestDepth());
m._x = _root.cam.girl._x;
m._y = _root.cam.girl._y;
_root.cam.walls.doorWall3.gotoAndStop("off");
_root.cam.topBG.door3.play();
_root.cam.bg.c3.gotoAndPlay("off");
Symbol 1070 MovieClip Frame 10
stop();
_root.missionText = "The little girl knocked open the doors.";
removeMovieClip(m);
Symbol 1071 MovieClip Frame 1
stop();
this._visible = false;
this.onEnterFrame = function () {
if (_root.cam.gAttack.hitTest(this._x + _root.cam._x, this._y + _root.cam._y, true)) {
if ((_root.attackMethod == "sword") && (_root.weopon == "magSword")) {
this.gotoAndStop("off");
} else {
_root.missionText = "Your attacks pass right through them...";
}
}
};
Symbol 1071 MovieClip Frame 2
stop();
delete this.onEnterFrame;
_root.cam.topBG.darkWall.gotoAndPlay("off");
Symbol 1072 MovieClip Frame 1
stop();
Symbol 1072 MovieClip Frame 2
stop();
Symbol 1083 MovieClip Frame 1
stop();
poof.onEnterFrame = function () {
randNum = (Math.random() * 200) - 100;
poof._xscale = randNum;
poof._yscale = randNum;
poof._rotation = (Math.random() * 360) - 180;
};
Symbol 1083 MovieClip Frame 2
delete this.onEnterFrame;
ammount = 3;
num = 0;
sLoop = new Sound(this);
sLoop.attachSound("ghostDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
this.onEnterFrame = function () {
num = num + ammount;
while (num >= 1) {
num--;
w = _root.cam.bg.attachMovie("streak", "streak" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
w._x = 310.8;
w._y = -1642;
w._rotation = (Math.random() * 360) - 180;
}
};
Symbol 1083 MovieClip Frame 8
delete this.onEnterFrame;
Symbol 1083 MovieClip Frame 21
_root.cam.walls.fWall.gotoAndStop("off");
Symbol 1083 MovieClip Frame 31
stop();
Symbol 1084 MovieClip Frame 1
stop();
Symbol 1084 MovieClip Frame 2
stop();
Symbol 1085 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
this.e2.gotoAndPlay(11);
this.e3.gotoAndPlay(21);
Symbol 1085 MovieClip Frame 3
clearInterval(timer);
if (_root.cam.magicRock > 0) {
_root.cam.magicRock--;
_root.missionText = ("You used an orb to dissipate the dark energy, you have " + _root.cam.magicRock) + " remaining";
this.gotoAndPlay("endAnim");
} else {
_root.missionText = "Dark energy is radiating from this point.";
}
Symbol 1085 MovieClip Frame 46
gotoAndStop (2);
Symbol 1085 MovieClip Frame 47
sLoop = new Sound(this);
sLoop.attachSound("energyCancelSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1085 MovieClip Frame 56
stop();
_root.cam.darkEnergy--;
if (_root.cam.darkEnergy <= 0) {
_root.cam.walls.swordWall.gotoAndStop("off");
_root.cam.bottomBG.swordWallAnim.gotoAndStop("off");
_root.cam.lightSword.gotoAndStop("on");
}
Symbol 1088 MovieClip Frame 1
stop();
Symbol 1093 MovieClip Frame 1
stop();
Symbol 1094 MovieClip Frame 1
stop();
this._visible = false;
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1094 MovieClip Frame 2
stop();
clearInterval(timer);
_root.kimblisLevel = 6;
_root.upgradePoints = _root.upgradePoints + 2;
_root.endLevel();
_root.gotoAndPlay("story");
Symbol 1095 MovieClip Frame 1
spoken = false;
this._visible = false;
Symbol 1095 MovieClip Frame 2
stop();
_root.nextTest(this);
this.onUnload = function () {
clearInterval(timer);
};
Symbol 1095 MovieClip Frame 3
clearInterval(timer);
if (_root.cam.giveMessage == true) {
_root.missionText = "You are back where you started...?";
if (spoken == false) {
spoken = true;
sLoop = new Sound(this);
sLoop.attachSound("imBackWhereSpeech");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
}
}
Symbol 1095 MovieClip Frame 101
gotoAndStop ("on");
Symbol 1099 MovieClip Frame 1
stop();
Symbol 1104 MovieClip Frame 1
stop();
Symbol 1105 MovieClip Frame 1
stop();
Symbol 1105 MovieClip Frame 2
stop();
Symbol 1106 MovieClip Frame 1
this.gotoAndStop("l" + _root.kimblisLevel);
Symbol 1106 MovieClip Frame 2
this.gAttack._visible = false;
this.bAttack._visible = false;
_root.weopon = "oldSword";
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
} else {
this.walls._visible = false;
}
_root.missionText = "What happened here?";
_root.changeMusic(_root.victoryLoop);
_root.currentSong = _root.victoryLoop;
sLoop = new Sound(this);
sLoop.attachSound("whatHappenedSpeech");
sLopp.setVolume(_root.soundVolume);
sLoop.start(0, 1);
count = 30;
while (count >= 0) {
s = _root.cam.bg.attachMovie("grassBit_mc", "grass" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
s._x = (Math.random() * 1466) - 656;
s._y = (Math.random() * 2556) - 2140;
count--;
}
Instance of Symbol 771 MovieClip "kimblis" in Symbol 1106 MovieClip Frame 2
onClipEvent (load) {
moveSpeed = 13;
up = false;
down = false;
left = false;
right = false;
mClick = false;
initialX = this._x;
initialY = this._y;
state = "standing";
alive = true;
recover = 0;
}
onClipEvent (enterFrame) {
if (Key.isDown(_root.upKey)) {
up = true;
} else {
up = false;
}
if (Key.isDown(_root.downKey)) {
down = true;
} else {
down = false;
}
if (Key.isDown(_root.rightKey)) {
right = true;
} else {
right = false;
}
if (Key.isDown(_root.leftKey)) {
left = true;
} else {
left = false;
}
this._parent.girlArrow._visible = false;
xDist = _root.cam.girl._x - this._x;
yDist = _root.cam.girl._y - this._y;
this._parent.girlArrow._rotation = _root.findAngle(xDist, yDist) - 90;
this._parent.girlArrow._x = _root.cam.girl._x;
this._parent.girlArrow._y = _root.cam.girl._y;
if ((this._parent.girlArrow._x - _root.cam.kimblis._x) > 245) {
this._parent.girlArrow._x = _root.cam.kimblis._x + 245;
this._parent.girlArrow._visible = true;
} else if ((this._parent.girlArrow._x - _root.cam.kimblis._x) < -245) {
this._parent.girlArrow._x = _root.cam.kimblis._x - 245;
this._parent.girlArrow._visible = true;
}
if ((this._parent.girlArrow._y - _root.cam.kimblis._y) > 230) {
this._parent.girlArrow._y = _root.cam.kimblis._y + 230;
this._parent.girlArrow._visible = true;
} else if ((this._parent.girlArrow._y - _root.cam.kimblis._y) < -230) {
this._parent.girlArrow._y = _root.cam.kimblis._y - 230;
this._parent.girlArrow._visible = true;
}
if (alive == true) {
if (_root.life <= 0) {
alive = false;
_root.gotoAndStop("dead");
}
recover--;
if (_root.detectBAttack(this._x, this._y, this) && (recover < 0)) {
this.gotoAndStop("hurt");
_root.life = _root.life - (Math.random() * 5);
state = "hurt";
} else {
if (_root.ready == true) {
xDist = (_root._xmouse - this._x) - _root.cam._x;
yDist = (_root._ymouse - this._y) - _root.cam._y;
radians = Math.atan2(yDist, xDist);
angle = radians * 57.2957795130823;
this._rotation = angle + 90;
}
if (_root.ready == true) {
state = "standing";
if (((mClick == true) && (_root.attack == true)) && (!_root.sideMenu.hitTest(_root._xmouse, _root._ymouse, true))) {
state = _root.attackMethod;
_root.ready = false;
} else if (up == true) {
xSpeed = moveSpeed * Math.cos(this.radians);
ySpeed = moveSpeed * Math.sin(this.radians);
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) + (xSpeed * 2), this._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) + (xSpeed * 2), this._y + _root.cam._y, true))) {
this._x = this._x + xSpeed;
this._parent.girlArrow._x = this._parent.girlArrow._x + xSpeed;
}
if ((!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) + (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) + (ySpeed * 2), true))) {
this._y = this._y + ySpeed;
this._parent.girlArrow._y = this._parent.girlArrow._y + ySpeed;
}
state = "running";
} else if (down == true) {
xSpeed = moveSpeed * Math.cos(this.radians);
ySpeed = moveSpeed * Math.sin(this.radians);
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) - (xSpeed * 2), this._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) - (xSpeed * 2), this._y + _root.cam._y, true))) {
this._x = this._x - xSpeed;
this._parent.girlArrow._x = this._parent.girlArrow._x - xSpeed;
}
if ((!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) - (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) - (ySpeed * 2), true))) {
this._y = this._y - ySpeed;
this._parent.girlArrow._y = this._parent.girlArrow._y - ySpeed;
}
state = "backingUp";
} else if (right == true) {
xSpeed = moveSpeed * Math.cos(this.radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(this.radians + (Math.PI/2));
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) + (xSpeed * 2), this._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) + (xSpeed * 2), this._y + _root.cam._y, true))) {
this._x = this._x + xSpeed;
this._parent.girlArrow._x = this._parent.girlArrow._x + xSpeed;
}
if ((!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) + (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) + (ySpeed * 2), true))) {
this._y = this._y + ySpeed;
this._parent.girlArrow._y = this._parent.girlArrow._y + ySpeed;
}
state = "straifRight";
} else if (left == true) {
xSpeed = moveSpeed * Math.cos(this.radians + (Math.PI/2));
ySpeed = moveSpeed * Math.sin(this.radians + (Math.PI/2));
if ((!_root.cam.walls.hitTest((this._x + _root.cam._x) - (xSpeed * 2), this._y + _root.cam._y, true)) && (!_root.cam.baddies.hitTest((this._x + _root.cam._x) - (xSpeed * 2), this._y + _root.cam._y, true))) {
this._x = this._x - xSpeed;
this._parent.girlArrow._x = this._parent.girlArrow._x - xSpeed;
}
if ((!_root.cam.walls.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) - (ySpeed * 2), true)) && (!_root.cam.baddies.hitTest(this._x + _root.cam._x, (this._y + _root.cam._y) - (ySpeed * 2), true))) {
this._y = this._y - ySpeed;
this._parent.girlArrow._y = this._parent.girlArrow._y - ySpeed;
}
state = "straifLeft";
}
}
this.gotoAndStop(state);
}
_root.cam._x = -(this._x - initialX);
_root.cam._y = -(this._y - initialY);
} else {
this.gotoAndStop("dead");
}
}
onClipEvent (keyUp) {
keyPressed = Key.getCode();
if (keyPressed == _root.magicPKey) {
_root.healMagic();
}
if (keyPressed == _root.healthPKey) {
_root.heal();
}
if (keyPressed == 49) {
_root.switchToSword();
}
if (keyPressed == 50) {
if (_root.airBlastLevel >= 1) {
_root.switchToAirBlast();
}
}
if (keyPressed == 51) {
if (_root.healLevel >= 1) {
_root.switchToHeal();
}
}
if (keyPressed == 52) {
if (_root.windSwordLevel >= 1) {
_root.switchToMagicSword();
}
}
if (keyPressed == 53) {
if (_root.windLevel >= 1) {
_root.switchToWind();
}
}
if (keyPressed == 54) {
if (_root.twisterLevel >= 1) {
_root.switchToTwister();
}
}
if (keyPressed == 55) {
if (_root.shockwaveLevel >= 1) {
_root.switchToShockwave();
}
}
}
onClipEvent (mouseDown) {
mClick = true;
}
onClipEvent (mouseUp) {
mClick = false;
}
Symbol 1106 MovieClip Frame 6
stop();
_root.changeMusic(_root.victoryLoop);
_root.currentSong = _root.victoryLoop;
this.gAttack._visible = false;
this.bAttack._visible = false;
_root.weopon = "oldSword";
this.girl.onPress = function () {
_root.attack = false;
_root.usingMagic = true;
_root.cam.girl.gotoAndStop("floating");
_root.cam.bobTheSword.runFrom = _root.cam.girl;
onMouseUp = function () {
_root.cam.bobTheSword.runFrom = _root.cam.kimblis;
_root.usingMagic = false;
_root.attack = true;
_root.cam.girl.gotoAndPlay("standing");
delete this.onEnterFrame;
delete this.onMouseUp;
};
};
this.girl.onRollOver = function () {
if (_root.cam.girl.carry == false) {
_root.cam.girl.gotoAndStop("standing");
}
};
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
this.bg.gotoAndStop(2);
} else {
this.walls._visible = false;
}
count = 75;
while (count >= 0) {
s = _root.cam.bg.attachMovie("grassBit_mc", "grass" + _root.cam.bg.getNextHighestDepth(), _root.cam.bg.getNextHighestDepth());
s._x = (Math.random() * 2708) - 1185;
s._y = (Math.random() * 4150) - 95;
count--;
}
Symbol 1106 MovieClip Frame 11
stop();
_root.changeMusic(_root.victoryLoop);
_root.currentSong = _root.victoryLoop;
this.gAttack._visible = false;
this.bAttack._visible = false;
_root.weopon = "goodSword";
this.girl.onPress = function () {
_root.attack = false;
_root.usingMagic = true;
_root.cam.girl.gotoAndStop("floating");
onMouseUp = function () {
_root.usingMagic = false;
_root.attack = true;
_root.cam.girl.gotoAndPlay("standing");
delete this.onEnterFrame;
delete this.onMouseUp;
};
};
this.girl.onRollOver = function () {
if (_root.cam.girl.carry == false) {
_root.cam.girl.gotoAndStop("standing");
}
};
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
this.bg.gotoAndStop(2);
} else {
this.walls._visible = false;
}
Symbol 1106 MovieClip Frame 16
stop();
_root.bgColor.gotoAndStop(2);
_root.changeMusic(_root.darkLoop);
_root.currentSong = _root.darkLoop;
this.gAttack._visible = false;
this.bAttack._visible = false;
magicRock = 0;
darkEnergy = 4;
allreadySpoken = false;
orcSpoken = false;
_root.weopon = "goodSword";
this.girl.onPress = function () {
_root.attack = false;
_root.usingMagic = true;
_root.cam.girl.gotoAndStop("floating");
onMouseUp = function () {
_root.usingMagic = false;
_root.attack = true;
_root.cam.girl.gotoAndPlay("standing");
delete this.onEnterFrame;
delete this.onMouseUp;
};
};
this.girl.onRollOver = function () {
if (_root.cam.girl.carry == false) {
_root.cam.girl.gotoAndStop("standing");
}
};
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
this.bg.gotoAndStop(2);
} else {
this.walls._visible = false;
}
i = 4;
while (i > 0) {
l = _root.cam.baddies.attachMovie("mage", "mage" + _root.cam.baddies.getNextHighestDepth(), _root.cam.baddies.getNextHighestDepth());
l._x = (Math.random() * _root.mageW) + _root.mageX;
l._y = (Math.random() * _root.mageH) + _root.mageY;
i--;
}
w = _root.cam.magicAbove.attachMovie("magicRock", "rock" + _root.cam.magicAbove.getNextHighestDepth(), _root.cam.magicAbove.getNextHighestDepth());
w.onEnterFrame = function () {
this._x = l._x;
this._y = l._y;
this._alpha = l._alpha * 2;
};
Instance of Symbol 224 MovieClip [magicRock] in Symbol 1106 MovieClip Frame 16
/* no clip actions */
Symbol 1106 MovieClip Frame 21
function moveKimblis(segs) {
_root.cam.giveMessage = true;
_root.cam.kimblis._x = _root.cam.kimblis._x + (segs * 520);
_root.cam.baddies.orc._x = _root.cam.baddies.orc._x + (segs * 520);
_root.cam.baddies.bat._x = _root.cam.baddies.bat._x + (segs * 520);
_root.cam.baddies.mage._x = _root.cam.baddies.mage._x + (segs * 520);
if (_root.cam.walls.hitTest(_root.cam.baddies.orc._x, _root.cam.baddies.orc._y, true)) {
removeMovieClip(_root.cam.baddies.orc);
_root.orcCount = 0;
}
if (_root.cam.walls.hitTest(_root.cam.baddies.bat._x, _root.cam.baddies.bat._y, true)) {
removeMovieClip(_root.cam.baddies.bat);
_root.batCount = 0;
}
_root.cam._x = _root.cam._x - (segs * 520);
_root.cam.bg2.rocks0.gotoAndStop(segs);
}
function makeMoreBaddies() {
if (_root.orcCount == 0) {
k = _root.cam.baddies.attachMovie("orc", "orc", _root.cam.baddies.getNextHighestDepth());
k._y = _root.cam.kimblis._y;
k._x = _root.cam.kimblis._x - 500;
if (k._x > 500) {
unloadMovie (k);
_root.orcCount = 0;
}
}
if (_root.batCount == 0) {
k = _root.cam.baddies.attachMovie("bat", "bat", _root.cam.baddies.getNextHighestDepth());
k._y = _root.cam.kimblis._y;
k._x = _root.cam.kimblis._x - 500;
if (k._x > 500) {
unloadMovie (k);
_root.batCount = 0;
}
}
if (_root.mageCount == 0) {
k = _root.cam.baddies.attachMovie("mage", "mage", _root.cam.baddies.getNextHighestDepth());
k._y = _root.cam.kimblis._y;
k._x = _root.cam.kimblis._x - 500;
if (k._x > 500) {
unloadMovie (k);
_root.mageCount = 0;
}
}
}
stop();
_root.bgColor.gotoAndStop(2);
_root.changeMusic(_root.darkLoop);
_root.currentSong = _root.darkLoop;
this.gAttack._visible = false;
this.bAttack._visible = false;
_root.weopon = "magSword";
giveMessage = false;
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
this.bg.gotoAndStop(2);
} else {
this.walls._visible = false;
}
_root.cam.bg2.rocks1.gotoAndStop(1);
_root.cam.bg2.rocks2.gotoAndStop(2);
_root.cam.bg2.rocks3.gotoAndStop(3);
_root.cam.bg2.rocks4.gotoAndStop(4);
_root.cam.bg2.rocks5.gotoAndStop(5);
mBack11._visible = false;
mBack12._visible = false;
mBack2._visible = false;
mBack3._visible = false;
mBack4._visible = false;
mBack5._visible = false;
mBack11.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(1);
}
};
mBack12.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(1);
}
};
mBack2.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(2);
}
};
mBack3.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(3);
}
};
mBack4.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(4);
}
};
mBack5.onEnterFrame = function () {
if (this.hitTest(_root.cam.kimblis._x + _root.cam._x, _root.cam.kimblis._y + _root.cam._y, true)) {
_root.cam.moveKimblis(5);
}
};
trace(_root.cam.bg.getNextHighestDepth());
moreBaddieInt = setInterval(_root.cam.makeMoreBaddies, 10000);
this.onUnload = function () {
clearInterval(moreBaddieInt);
delete this.onUnload;
};
Symbol 1106 MovieClip Frame 26
stop();
_root.bgColor.gotoAndStop(2);
_root.changeMusic(_root.exciteLoop);
_root.currentSong = _root.exciteLoop;
this.gAttack._visible = false;
this.bAttack._visible = false;
_root.weopon = "magSword";
h = _root.cam.baddies.attachMovie("golem", "golem", _root.cam.baddies.getNextHighestDepth());
h._xscale = 150;
h._yscale = 150;
h._x = 200;
h._y = 500;
this.girl.onPress = function () {
_root.attack = false;
_root.usingMagic = true;
_root.cam.girl.gotoAndStop("floating");
onMouseUp = function () {
_root.usingMagic = false;
_root.attack = true;
_root.cam.girl.gotoAndPlay("standing");
delete this.onEnterFrame;
delete this.onMouseUp;
};
};
this.girl.onRollOver = function () {
if (_root.cam.girl.carry == false) {
_root.cam.girl.gotoAndStop("standing");
}
};
if (_root.detail == "low") {
this.bottomBG.gotoAndStop(2);
this.topBG.gotoAndStop(2);
this.bg.gotoAndStop(2);
} else {
this.walls._visible = false;
}
Symbol 1106 MovieClip Frame 35
stop();
Symbol 1113 Button
on (release) {
_root.buttonClick();
_root.restartLevel();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1116 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("initialize");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1121 MovieClip Frame 1
this.musicSlider._x = _root.musicVolume + 12;
this.soundSlider._x = _root.soundVolume + 12;
this.musicSlider.onPress = function () {
_root.buttonClick();
_root.attack = false;
this.startDrag(false, 12, 24, 112, 24);
onMouseUp = function () {
if ((this.musicSlider._x - 12) < 5) {
_root.changeMusic("mute");
} else if ((_root.musicVolume < 5) && ((this.musicSlider._x - 12) >= 5)) {
trace("goin");
_root.currentSong.start(0, 1000);
}
_root.attack = true;
_root.musicVolume = this.musicSlider._x - 12;
_root.exciteLoop.setVolume(_root.musicVolume);
_root.bgLoop.setVolume(_root.musicVolume);
_root.menuLoop.setVolume(_root.musicVolume);
_root.spookyLoop.setVolume(_root.musicVolume);
_root.victoryLoop.setVolume(_root.musicVolume);
this.stopDrag();
delete onMouseUp;
};
};
this.musicSlider.onRollOver = function () {
_root.buttonRoll();
};
this.soundSlider.onPress = function () {
_root.buttonClick();
_root.attack = false;
this.startDrag(false, 12, 57, 112, 57);
onMouseUp = function () {
_root.attack = true;
_root.soundVolume = this.soundSlider._x - 12;
this.stopDrag();
delete onMouseUp;
};
};
this.soundSlider.onRollOver = function () {
_root.buttonRoll();
};
if (_root.qualityLevel == "HIGH") {
qualSel.gotoAndStop("high");
qualSel._x = highQual._x;
}
if (_root.qualityLevel == "MEDIUM") {
qualSel.gotoAndStop("medium");
qualSel._x = medQual._x;
}
if (_root.qualityLevel == "LOW") {
qualSel.gotoAndStop("low");
qualSel._x = lowQual._x;
}
if (_root.qualityLevel == "AUTOHIGH") {
qualSel.gotoAndStop("auto");
qualSel._x = autoQual._x;
}
this.highQual.onRelease = function () {
_root.buttonClick();
_root._quality = "HIGH";
_root.qualityLevel = "HIGH";
qualSel._x = this._x;
qualSel.gotoAndStop("high");
};
this.highQual.onRollOver = function () {
_root.buttonRoll();
};
this.medQual.onRelease = function () {
_root.buttonClick();
_root._quality = "MEDIUM";
_root.qualityLevel = "MEDIUM";
qualSel._x = this._x;
qualSel.gotoAndStop("medium");
};
this.medQual.onRollOver = function () {
_root.buttonRoll();
};
this.lowQual.onRelease = function () {
_root.buttonClick();
_root._quality = "LOW";
_root.qualityLevel = "LOW";
qualSel._x = this._x;
qualSel.gotoAndStop("low");
};
this.lowQual.onRollOver = function () {
_root.buttonRoll();
};
this.autoQual.onRelease = function () {
_root.buttonClick();
_root._quality = "AUTOHIGH";
_root.qualityLevel = "AUTOHIGH";
qualSel._x = this._x;
qualSel.gotoAndStop("auto");
};
this.autoQual.onRollOver = function () {
_root.buttonRoll();
};
if (_root.detail == "high") {
detSel.gotoAndStop("high");
detSel._x = highDet._x;
}
if (_root.detail == "low") {
detSel.gotoAndStop("low");
detSel._x = lowDet._x;
}
this.highDet.onRelease = function () {
_root.buttonClick();
_root.cam.walls._visible = false;
_root.cam.topBG.gotoAndStop(1);
_root.cam.bottomBG.gotoAndStop(1);
_root.cam.bg.gotoAndStop(1);
_root.sideMenu.miniMap.gotoAndStop("l" + _root.kimblisLevel);
_root.detail = "high";
detSel._x = this._x;
detSel.gotoAndStop("high");
};
this.highDet.onRollOver = function () {
_root.buttonRoll();
};
this.lowDet.onRelease = function () {
_root.buttonClick();
_root.detail = "low";
_root.cam.walls._visible = true;
_root.cam.topBG.gotoAndStop(2);
_root.cam.bottomBG.gotoAndStop(2);
_root.cam.bg.gotoAndStop(2);
_root.sideMenu.miniMap.gotoAndStop(("l" + _root.kimblisLevel) + "l");
detSel._x = this._x;
detSel.gotoAndStop("low");
};
this.lowDet.onRollOver = function () {
_root.buttonRoll();
};
if (_root.res == 100) {
resSel.gotoAndStop(1);
resSel._x = res100._x;
}
if (_root.res == 75) {
resSel.gotoAndStop(2);
resSel._x = res75._x;
}
if (_root.res == 50) {
resSel.gotoAndStop(3);
resSel._x = res50._x;
}
this.res100.onRelease = function () {
_root.buttonClick();
_root.res = 100;
resSel.gotoAndStop(1);
resSel._x = res100._x;
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.smallTextBox._visible = true;
_root.medTextBox._visible = false;
_root.bigTextBox._visible = false;
};
this.res100.onRollOver = function () {
_root.buttonRoll();
};
this.res75.onRelease = function () {
_root.buttonClick();
_root.res = 75;
resSel.gotoAndStop(2);
resSel._x = res75._x;
_root._xscale = 75;
_root._yscale = 75;
_root._x = 81.3;
_root._y = 68.8;
_root.smallTextBox._visible = false;
_root.medTextBox._visible = true;
_root.bigTextBox._visible = false;
};
this.res75.onRollOver = function () {
_root.buttonRoll();
};
this.res50.onRelease = function () {
_root.buttonClick();
_root.res = 50;
resSel.gotoAndStop(3);
resSel._x = res50._x;
_root._xscale = 50;
_root._yscale = 50;
_root._x = 162.5;
_root._y = 137.5;
_root.smallTextBox._visible = false;
_root.medTextBox._visible = false;
_root.bigTextBox._visible = true;
};
this.res50.onRollOver = function () {
_root.buttonRoll();
};
Symbol 1122 MovieClip Frame 1
stop();
Symbol 1122 MovieClip Frame 15
stop();
onMouseDown = function () {
if (!_root.sideMenu.hitTest(_root._xmouse, _root._ymouse, true)) {
delete onMouseDown;
play();
}
};
Symbol 1122 MovieClip Frame 29
delete onMouseDown;
Symbol 1131 MovieClip Frame 1
this.onUnload = function () {
clearInterval(mapTimer);
};
this.gotoAndStop("l" + _root.kimblisLevel);
Symbol 1131 MovieClip Frame 2
function moveDots() {
blue._x = (_root.cam.kimblis._x * ratio) + 66;
blue._y = (_root.cam.kimblis._y * ratio) + 119;
}
ratio = 0.05462;
clearInterval(mapTimer);
mapTimer = setInterval(moveDots, 300);
if (_root.detail == "low") {
this.gotoAndStop("l1l");
}
topBG.clouds._visible = false;
Symbol 1131 MovieClip Frame 3
stop();
Symbol 1131 MovieClip Frame 7
function moveDots() {
blue._x = (_root.cam.kimblis._x * ratio) + 72;
blue._y = (_root.cam.kimblis._y * ratio) - 4.1;
purp._x = (_root.cam.girl._x * ratio) + 70;
purp._y = (_root.cam.girl._y * ratio) - 7;
}
ratio = 0.0435676;
clearInterval(mapTimer);
mapTimer = setInterval(moveDots, 300);
if (_root.detail == "low") {
this.gotoAndStop("l2l");
}
topBG.clouds._visible = false;
Symbol 1131 MovieClip Frame 8
stop();
Symbol 1131 MovieClip Frame 12
function moveDots() {
blue._x = (_root.cam.kimblis._x * ratio) + 91.6;
blue._y = (_root.cam.kimblis._y * ratio) + 77;
purp._x = (_root.cam.girl._x * ratio) + 89.6;
purp._y = (_root.cam.girl._y * ratio) + 74;
}
ratio = 0.0835;
clearInterval(mapTimer);
mapTimer = setInterval(moveDots, 300);
if (_root.detail == "low") {
this.gotoAndStop("l3l");
}
topBG.clouds._visible = false;
Symbol 1131 MovieClip Frame 13
stop();
Symbol 1131 MovieClip Frame 17
function moveDots() {
blue._x = (_root.cam.kimblis._x * ratio) + 57.1;
blue._y = (_root.cam.kimblis._y * ratio) + 125.1;
purp._x = (_root.cam.girl._x * ratio) + 54.9;
purp._y = (_root.cam.girl._y * ratio) + 122.8;
}
ratio = 0.05575;
clearInterval(mapTimer);
mapTimer = setInterval(moveDots, 300);
if (_root.detail == "low") {
this.gotoAndStop("l4l");
}
topBG.clouds._visible = false;
topBG.darkWall._visible = false;
bottomBG.swordWallAnim._visible = false;
Symbol 1131 MovieClip Frame 18
stop();
walls.swordWall._visible = false;
Symbol 1131 MovieClip Frame 27
function moveDots() {
blue._x = (_root.cam.kimblis._x * ratio) + 12.5;
blue._y = (_root.cam.kimblis._y * ratio) + 10;
purp._x = (_root.cam.girl._x * ratio) + 10.5;
purp._y = (_root.cam.girl._y * ratio) + 7;
}
ratio = 0.086667;
clearInterval(mapTimer);
mapTimer = setInterval(moveDots, 300);
if (_root.detail == "low") {
this.gotoAndStop("l5l");
}
Symbol 1131 MovieClip Frame 28
stop();
Symbol 1138 MovieClip Frame 1
if (_root.airBlastLevel == 0) {
airBlast._visible = false;
}
if (_root.healLevel == 0) {
heal._visible = false;
}
if (_root.windSwordLevel == 0) {
magicSword._visible = false;
}
if (_root.windLevel == 0) {
wind._visible = false;
}
if (_root.twisterLevel == 0) {
twister._visible = false;
}
if (_root.shockwaveLevel == 0) {
shockwave._visible = false;
}
_root.attackPower = 0.5 + (0.5 * _root.swordLevel);
_root.magicSword = false;
_root.attackMethod = "sword";
aName = "";
aInit = "";
aSus = "";
this.sword.onPress = function () {
_root.buttonClick();
_root.switchToSword();
};
this.sword.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Attack";
aInit = "initial cost: 0";
aSus = "sustain cost: 0";
};
this.sword.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.sword.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.magicSword.onPress = function () {
_root.buttonClick();
_root.switchToMagicSword();
};
this.magicSword.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Magic Attack";
aInit = "initial cost: " + _root.magicSwordCost;
aSus = "sustain cost: 0";
};
this.magicSword.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.magicSword.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.airBlast.onPress = function () {
_root.buttonClick();
_root.switchToAirBlast();
};
this.airBlast.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Wind Blast";
aInit = "initial cost: " + _root.windBlastCost;
aSus = "sustain cost: 0";
};
this.airBlast.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.airBlast.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.twister.onPress = function () {
_root.buttonClick();
_root.switchToTwister();
};
this.twister.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Twister";
aInit = "initial cost: " + _root.twisterInitCost;
aSus = "sustain cost: " + _root.twisterCost;
};
this.twister.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.twister.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.wind.onPress = function () {
_root.buttonClick();
_root.switchToWind();
};
this.wind.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Freezing Wind";
aInit = "initial cost: 0";
aSus = "sustain cost: " + _root.windCost;
};
this.wind.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.wind.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.heal.onPress = function () {
_root.buttonClick();
_root.switchToHeal();
};
this.heal.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Healing Winds";
aInit = "initial cost: " + _root.healStartCost;
aSus = "sustain cost: " + _root.healCost;
};
this.heal.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.heal.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.shockwave.onPress = function () {
_root.buttonClick();
_root.switchToShockwave();
};
this.shockwave.onRollOver = function () {
_root.buttonRoll();
this._parent.textBG._x = -2;
this._parent.textBG._y = 41;
aName = "Shockwave";
aInit = "initial cost: ALL";
aSus = "sustain cost: 0";
};
this.shockwave.onRollOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
};
this.shockwave.onDragOut = function () {
this._parent.textBG._x = -345;
this._parent.textBG._y = -100;
aName = "";
aInit = "";
aSus = "";
_root.attack = true;
};
Symbol 1140 MovieClip Frame 1
stop();
hotKey = String.fromCharCode(_root.healthPKey);
this.gotoAndStop(_root.lifePotionCount + 1);
sLoop = new Sound(this);
sLoop.attachSound("usePotionSound");
Symbol 1140 MovieClip Frame 2
stop();
b1.onRelease = function () {
_root.heal();
};
Symbol 1140 MovieClip Frame 3
stop();
b1.onRelease = function () {
_root.heal();
};
b2.onRelease = function () {
_root.heal();
};
Symbol 1140 MovieClip Frame 4
stop();
b1.onRelease = function () {
_root.heal();
};
b2.onRelease = function () {
_root.heal();
};
b3.onRelease = function () {
_root.heal();
};
Symbol 1140 MovieClip Frame 5
stop();
b1.onRelease = function () {
_root.heal();
};
b2.onRelease = function () {
_root.heal();
};
b3.onRelease = function () {
_root.heal();
};
b4.onRelease = function () {
_root.heal();
};
Symbol 1140 MovieClip Frame 6
_root.lifePotionCount = 4;
this.prevFrame();
Symbol 1142 MovieClip Frame 1
stop();
hotKey = String.fromCharCode(_root.magicPKey);
this.gotoAndStop(_root.magicPotionCount + 1);
sLoop = new Sound(this);
sLoop.attachSound("usePotionSound");
Symbol 1142 MovieClip Frame 2
stop();
b1.onRelease = function () {
_root.healMagic();
};
Symbol 1142 MovieClip Frame 3
stop();
b1.onRelease = function () {
_root.healMagic();
};
b2.onRelease = function () {
_root.healMagic();
};
Symbol 1142 MovieClip Frame 4
stop();
b1.onRelease = function () {
_root.healMagic();
};
b2.onRelease = function () {
_root.healMagic();
};
b3.onRelease = function () {
_root.healMagic();
};
Symbol 1142 MovieClip Frame 5
stop();
b1.onRelease = function () {
_root.healMagic();
};
b2.onRelease = function () {
_root.healMagic();
};
b3.onRelease = function () {
_root.healMagic();
};
b4.onRelease = function () {
_root.healMagic();
};
Symbol 1142 MovieClip Frame 6
_root.magicPotionCount = 4;
this.prevFrame();
Symbol 1143 MovieClip Frame 1
lag = 10;
tempLife = 0;
this.lifeBar.lifeAnim.bar._height = 1;
tempMagic = 0;
tempGirl = 0;
this.magicBar.magicAnim.bar._height = 1;
this.onEnterFrame = function () {
if (tempLife != _root.life) {
tempLife = _root.life;
lifeHeight = (_root.life / _root.maxLife) * 195;
this.lifeBar.lifeTot._height = lifeHeight;
this.lifeBar.lifeAnim.lifeText = (Math.round(_root.life) + "/") + Math.round(_root.maxLife);
}
if (this.lifeBar.lifeAnim.bar._height != lifeHeight) {
moveDist = (this.lifeBar.lifeAnim.bar._height - lifeHeight) / lag;
this.lifeBar.lifeAnim.bar._height = this.lifeBar.lifeAnim.bar._height - moveDist;
if ((moveDist < 0.1) && (moveDist > -0.1)) {
this.lifeBar.lifeAnim.bar._height = lifeHeight;
}
}
_root.magic = _root.magic + _root.magicRecover;
this.magicBar.magicAnim.magicText = (Math.round(_root.magic) + "/") + Math.round(_root.maxMagic);
if (_root.magic > _root.maxMagic) {
_root.magic = _root.maxMagic;
}
magicHeight = (_root.magic / _root.maxMagic) * 195;
this.magicBar.magicTot._height = magicHeight;
magicMoveDist = (this.magicBar.magicAnim.bar._height - magicHeight) / lag;
this.magicBar.magicAnim.bar._height = this.magicBar.magicAnim.bar._height - magicMoveDist;
if (tempGirl != _root.girlLife) {
tempGirl = _root.girlLife;
girlWidth = (_root.girlLife / _root.maxGirlLife) * 120;
this.girlBar.lifeTot._width = girlWidth;
}
if (this.girlBar.bar._width != girlWidth) {
moveDist = (this.girlBar.bar._width - girlWidth) / lag;
this.girlBar.bar._width = this.girlBar.bar._width - moveDist;
if ((moveDist < 0.1) && (moveDist > -0.1)) {
this.girlBar.bar._width = girlWidth;
}
}
};
this.options.onRelease = function () {
_root.buttonClick();
this._parent.optionsPanel.play();
};
this.options.onRollOver = function () {
_root.buttonRoll();
};
Symbol 1151 Button
on (release) {
_root.buttonClick();
_root.restartLevel();
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1154 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("initialize");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1157 Button
on (release) {
_root.buttonClick();
getURL ("http://armorgames.com/", _blank);
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1158 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound("kimblisDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1158 MovieClip Frame 21
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.cam.gotoAndStop("off");
_root.changeMusic(_root.spookyLoop);
Symbol 1160 Button
on (release) {
_root.buttonClick();
_root.gotoAndPlay("initialize");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1161 MovieClip Frame 1
sLoop = new Sound(this);
sLoop.attachSound("girlDieSound");
sLoop.setVolume(_root.soundVolume);
sLoop.start(0, 1);
Symbol 1161 MovieClip Frame 21
stop();
_root._quality = "HIGH";
_root._xscale = 100;
_root._yscale = 100;
_root._x = 0;
_root._y = 0;
_root.cam.gotoAndStop("off");
_root.changeMusic(_root.spookyLoop);
Symbol 1175 Button
on (release) {
_root.buttonClick();
this.gotoAndPlay("end");
}
on (rollOver) {
_root.buttonRoll();
}
Symbol 1189 MovieClip Frame 249
_root.gotoAndStop("story");
Symbol 1286 MovieClip Frame 1190
_root.gotoAndPlay("story");
Symbol 1295 MovieClip Frame 190
if (_root.cheated == true) {
_root.gotoAndStop("credits");
} else {
_root.gotoAndStop("unlocked");
}
Symbol 1299 MovieClip Frame 91
_root.gotoAndStop("credits");
Symbol 1322 MovieClip Frame 513
_root.gotoAndStop("ads");
Symbol 1323 Button
on (release) {
getURL ("http://armorgames.com/", _blank);
}
Symbol 1326 Button
on (release) {
getURL ("http://edgen.com/", _blank);
}
Symbol 1329 Button
on (release) {
getURL ("http://www.chrisbouchard.co.uk/", _blank);
}
Symbol 1332 Button
on (release) {
getURL ("http://www.jaredhudson.com/", _blank);
}
Symbol 1333 Button
on (release) {
_root.gotoAndPlay("initialize");
}
Symbol 1339 Button
on (release) {
getURL ("http://members.fortunecity.com/niftykoala/NewGrounds.htm", _blank);
}
Symbol 1346 Button
on (release) {
getURL ("http://blackgoldfish.com/", _blank);
}
Instance of Symbol 1336 MovieClip in Symbol 1347 MovieClip Frame 1
on (release) {
getURL ("http://www.the-omunai.cjb.net/", _blank);
}
Symbol 1347 MovieClip Frame 12
stop();