Frame 1
function runIt() {
delete this.onEnterFrame;
gotoAndStop ("intro");
}
but_start._visible = false;
aup = false;
this.onEnterFrame = function () {
var _local4 = this.getBytesTotal();
var _local3 = this.getBytesLoaded();
var _local2 = Math.round((_local3 / _local4) * 100);
loader.gotoAndStop(_local2);
if (_local2 >= 100) {
but_start._visible = true;
but_start.onPress = function () {
runIt();
};
this.onEnterFrame = function () {
if (!Key.isDown(65)) {
aup = true;
}
if (aup && (Key.isDown(65))) {
aup = false;
runIt();
}
};
}
};
Stage.showMenu = false;
stop();
var CPMStarPoolID = 1052;
var CPMStarSubPoolID = 42;
System.security.allowDomain("server.cpmstar.com");
adBox.loadMovie((("http://server.cpmstar.com/adviewas2.swf?poolid=" + CPMStarPoolID) + "&subpoolid=") + CPMStarSubPoolID);
Frame 3
stop();
Frame 4
function clearDat() {
_root.so.clear();
_root.updateProg();
}
function showSword(who) {
i = 0;
while (i < 9) {
var hid = eval ("who.s" + i);
hid._visible = false;
i++;
}
sho = eval ("who.s" + cursword);
sho._visible = true;
}
function updateProg() {
_root.curmag = 0;
_root.curarmor = 0;
_root.cursword = 0;
_root.numdeaths = 0;
if (_root.so.data.numdeaths != undefined) {
_root.curmag = so.data.curmag;
_root.curarmor = so.data.curarmor;
_root.cursword = so.data.cursword;
_root.numdeaths = so.data.numdeaths;
}
var _local2 = new Color(men.prog.masker);
_local2.setRGB(armorarray[_root.curarmor]);
men.prog.arm.text = "-" + _root.curarmor;
men.prog.mag.text = "-" + _root.curmag;
men.prog.sword.text = "-" + _root.cursword;
men.prog.deaths.text = "-" + _root.numdeaths;
showSword(men.prog.swordthing);
men.prog.magthing.updateMe();
}
function goTime() {
delete this.onEnterFrame;
_root.gotoAndStop("map");
}
stop();
_root.so = SharedObject.getLocal("oukoku");
armorarray = new Array("0xB56A39", "0x69E2B1", "0x4C4C4C", "0xBFBFBF", "0x6FA637", "0x4665A0", "0xE6001E", "0xF7F7F7", "0xFFC219");
armorstrokearray = new Array("0x3A2212", "0x187851", "0x1E1E1E", "0x515151", "0x334D1A", "0x253752", "0x7E011B", "0x6A6A6A", "0x765301");
updateProg();
this.onEnterFrame = function () {
if (!Key.isDown(65)) {
aup = true;
}
if (Key.isDown(65) && (aup)) {
aup = false;
goTime();
}
};
men.but_cleardata.onPress = function () {
men.sure._visible = true;
};
men.but_cleardata.onRollOver = function () {
this.gotoAndStop(2);
};
men.but_cleardata.onRollOut = function () {
this.gotoAndStop(1);
};
men.but_cleardata.onReleaseOutside = function () {
this.gotoAndStop(1);
};
Frame 5
function setNoise(v) {
if (!_root.museoff) {
this.bgmusic.trak.setVolume(v);
}
}
function playLoudSound(m) {
if (!_root.sfxoff) {
s = new Sound(this.loud);
s.attachSound(m);
s.start();
}
}
function playSound(m) {
if (!_root.sfxoff) {
s = new Sound(this.sfx);
s.attachSound(m);
s.setVolume(sfnoise);
s.start();
}
}
function runMusic(m) {
stopAllSounds();
bgmusic.trak = new Sound(this.bgmusic);
bgmusic.trak.attachSound(m);
this.bgmusic.trak.setVolume(bgnoise);
bgmusic.trak.start(0, 999);
if (_root.museoff) {
bgmusic.trak.setVolume(0);
}
}
function freshSave() {
_root.so.data.fairyaccomplished = _root.fairyaccomplished;
_root.so.data.numdeaths = _root.numdeaths;
_root.so.data.keycount = _root.keycount;
_root.so.data.woodcount = _root.woodcount;
_root.so.data.deliveredwood = _root.deliveredwood;
_root.so.data.gotfairy = _root.gotfairy;
_root.so.data.gotboots = _root.gotboots;
_root.so.data.gotkey = _root.gotkey;
_root.so.data.dooropen = _root.dooropen;
_root.so.data.gotaxe = _root.gotaxe;
_root.so.data.nextpointer = _root.nextpointer;
_root.so.data.curarmor = _root.curarmor;
_root.so.data.curmag = _root.curmag;
_root.so.data.cursword = _root.cursword;
_root.so.data.treechops = new Array();
_root.so.data.spells = new Array();
_root.so.data.dungeondoors = new Array();
_root.so.data.dungeonkeys = new Array();
_root.so.data.gems = new Array();
_root.so.data.enarray = new Array();
_root.so.data.spawns = new Array();
var _local2 = 0;
while (_local2 < _root.treechops.length) {
_root.so.data.treechops[_local2] = _root.treechops[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.spells.length) {
_root.so.data.spells[_local2] = _root.spells[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.dungeondoors.length) {
_root.so.data.dungeondoors[_local2] = _root.dungeondoors[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.dungeonkeys.length) {
_root.so.data.dungeonkeys[_local2] = _root.dungeonkeys[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.gems.length) {
_root.so.data.gems[_local2] = _root.gems[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.enarray.length) {
_root.so.data.enarray[_local2] = _root.enarray[_local2];
_local2++;
}
_local2 = 0;
while (_local2 < _root.spawns.length) {
_root.so.data.spawns[_local2] = _root.spawns[_local2];
_local2++;
}
_root.so.flush();
}
function addSpawn() {
var _local1 = new Array("", "", false);
spawns.push(_local1);
}
function colorMe(who) {
var _local2 = new Color(who.fill);
var _local1 = new Color(who.stroke);
_local2.setRGB(armorarray[curarmor]);
_local1.setRGB(armorstrokearray[curarmor]);
}
function getShot() {
btm.dispose();
btm = new flash.display.BitmapData(640, 480, true, 16777215);
_root.psign.attachBitmap(btm, 0);
o = _root;
var _local2 = new flash.geom.Matrix();
_local2.tx = 0;
_local2.ty = 0;
_local2.a = 1;
alf = 1;
var _local3 = new flash.geom.ColorTransform(1, 1, 1, alf, 0, 0, 0, 0);
btm.draw(o, _local2, _local3);
psign.filters = [];
psign.filters = new Array(filter);
}
function chkPause() {
if (!Key.isDown(P)) {
pup = true;
}
if (Key.isDown(P) && (pup)) {
pup = false;
if (game._x != undefined) {
if (!platpause) {
pauseIt();
platpause = true;
} else {
platpause = false;
unPause();
}
}
if (mappy._x != undefined) {
if (!pausy) {
pauseIt();
pausy = true;
} else {
unPause();
pausy = false;
}
}
}
}
function pauseIt() {
pguts._visible = true;
pguts.updateMe();
playSound("pausesound");
setNoise(0);
getShot();
game.boss.guts.guts2.stop();
game.boss.guts.stop();
game.boss.guts.head.guts.stop();
var _local1 = 0;
while (_local1 < baddies.length) {
var _local2 = baddies[_local1];
if (_local2.troll) {
_local2.guts.stop();
}
_local1++;
}
}
function unPause() {
playSound("pausesound");
pguts._visible = false;
if (!game.boss.guts.lastframe) {
game.boss.guts.play();
}
if (!game.boss.guts.head.guts.lastframe) {
game.boss.guts.head.guts.play();
}
var _local1 = 0;
while (_local1 < baddies.length) {
var _local2 = baddies[_local1];
if (_local2.troll) {
_local2.guts.play();
}
_local1++;
}
game.boss.guts.guts2.play();
btm.dispose();
psign.filters = [];
setNoise(bgnoise);
}
function addEnem() {
var _local1 = new Array();
var _local2 = random(3);
_local1.link = "map_enemy" + _local2;
_local1.x = random(900) - 450;
_local1.y = random(900) - 450;
_local1.typ = _local2;
enarray.push(_local1);
}
function getNextThing() {
if (nextpointer == 0) {
this.nextxp = armorprogression[curarmor];
}
if (nextpointer == 1) {
this.nextxp = magicprogression[curmag];
}
if (nextpointer == 2) {
this.nextxp = attackprogression[cursword];
}
}
function runFade() {
this.attachMovie("fader", "fader", 99999);
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
}
function runTran() {
fader.gotoAndPlay(1);
pausy = true;
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
}
function fadedIn() {
fader.unloadMovie();
fader.removeMovieClip();
pausy = false;
}
function startPlat(terr, lev, hitthing) {
if (this._currentframe == 5) {
if (lev < 500) {
if (lev < 200) {
this.platlev = (("platlev" + terr) + "_") + lev;
_root.hitloc = new Array(hitthing._x, hitthing._y);
this.gotoAndStop("plat");
} else {
_root.pausy = true;
hudd.mapfade.gotoAndPlay(2);
dest = hitthing.typ;
mappy.dude.guts.gotoAndStop("rest_" + mappy.dude.dir);
}
} else {
this.platlev = (("platlev" + terr) + "_") + lev;
_root.hitloc = new Array(1620, -750);
this.gotoAndStop("plat");
}
}
}
stop();
bgnoise = 40;
sfnoise = 40;
this.loud = this.createEmptyMovieClip("loud", 4885122);
this.bgmusic = this.createEmptyMovieClip("bgmusic", 4885120);
this.sfx = this.createEmptyMovieClip("sfx", 4885121);
this.U = 38;
this.R = 39;
this.L = 37;
this.D = 40;
this.atk = 65;
delete game.onEnterFrame;
delete this.onEnterFrame;
game.unloadMovie();
game.removeMovieClip();
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
this.attachMovie("pausesign", "psign", 9991111);
pguts = this.attachMovie("pausesign_guts", "pguts", 9991112);
pguts._visible = false;
this.P = 80;
var matrix = new Array();
matrix = matrix.concat([0.308600038290024, 0.609399974346161, 0.0820000022649765, 0, 0]);
matrix = matrix.concat([0.308600008487701, 0.609399974346161, 0.0820000022649765, 0, 0]);
matrix = matrix.concat([0.308600008487701, 0.609399974346161, 0.0820000246167183, 0, 0]);
matrix = matrix.concat([0, 0, 0, 1, 0]);
var filter = (new flash.filters.ColorMatrixFilter(matrix));
if (!inited) {
inited = true;
_root.rightbridge = true;
_root.gemtranny = -1;
mapp = new Array(320, 240);
this.maxhp = 100;
this.curhp = this.maxhp;
this.maxmag = 100;
this.magamt = this.maxmag;
this.xp = 0;
armorprogression = new Array(25, 50, 100, 180, 280, 400, 550, 800, 99999);
magicprogression = new Array(45, 90, 150, 250, 380, 530, 750, 950, 99999);
attackprogression = new Array(120, 185, 270, 450, 650, 1100, 1500, 1950, 99999);
powarray = new Array(1, 1.5, 4, 8, 13, 20, 35, 45, 65);
magpowarray = new Array(10, 20, 30, 45, 65, 80, 120, 150, 200);
usemagarray = new Array(1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2);
armstrength = new Array(1, 0.9, 0.8, 0.7, 0.6, 0.55, 0.5, 0.45, 0.4);
fairyaccomplished = false;
indungeon = false;
pastdungeon = false;
keycount = 0;
woodcount = 0;
deliveredwood = false;
gotfairy = false;
gotaxe = false;
numdeaths = 0;
gotboots = false;
gotkey = false;
dooropen = false;
nextpointer = 0;
curarmor = 0;
curmag = 0;
cursword = 0;
treechops = new Array();
spells = new Array(false, false, false, false, true);
dungeondoors = new Array(false, false, false);
dungeonkeys = new Array(false, false, false, false);
gems = new Array(false, false, false);
getNextThing();
curcat = 1;
enarray = new Array();
enarray[0] = new Array();
enarray[0].link = "boss0";
enarray[0].x = 1200;
enarray[0].y = 1020;
enarray[0].typ = 99;
enarray[1] = new Array();
enarray[1].link = "boss1";
enarray[1].x = 15;
enarray[1].y = -1525;
enarray[1].typ = 98;
enarray[2] = new Array();
enarray[2].link = "wizard0";
enarray[2].x = 500;
enarray[2].y = 300;
enarray[2].typ = 199;
enarray[3] = new Array();
enarray[3].link = "wizard1";
enarray[3].x = 7;
enarray[3].y = -1805;
enarray[3].typ = 198;
enarray[4] = new Array();
enarray[4].link = "wizard2";
enarray[4].x = 535;
enarray[4].y = -960;
enarray[4].typ = 197;
enarray[5] = new Array();
enarray[5].link = "dungeon0";
enarray[5].x = -1440;
enarray[5].y = 375;
enarray[5].typ = 200;
enarray[6] = new Array();
enarray[6].link = "wizard4";
enarray[6].x = 130;
enarray[6].y = 290;
enarray[6].typ = 194;
enarray[7] = new Array();
enarray[7].link = "boss2";
enarray[7].x = -1440;
enarray[7].y = -295;
enarray[7].typ = 97;
spawns = new Array();
if (_root.so.data.numdeaths == undefined) {
var i = 0;
while (i < 7) {
addEnem();
i++;
}
var i = 0;
while (i < 24) {
addSpawn();
i++;
}
_root.freshSave();
} else {
fairyaccomplished = so.data.fairyaccomplished;
keycount = so.data.keycount;
woodcount = so.data.woodcount;
deliveredwood = so.data.deliveredwood;
gotfairy = so.data.gotfairy;
gotaxe = so.data.gotaxe;
gotboots = so.data.gotboots;
gotkey = so.data.gotkey;
dooropen = so.data.dooropen;
nextpointer = so.data.nextpointer;
curarmor = so.data.curarmor;
curmag = so.data.curmag;
cursword = so.data.cursword;
numdeaths = so.data.numdeaths;
dungeondoors = new Array();
dungeonkeys = new Array();
gems = new Array();
treechops = new Array();
spells = new Array();
enarray = new Array();
spawns = new Array();
var i = 0;
while (i < _root.so.data.spawns.length) {
_root.spawns[i] = _root.so.data.spawns[i];
i++;
}
var i = 0;
while (i < _root.so.data.enarray.length) {
_root.enarray[i] = _root.so.data.enarray[i];
i++;
}
var i = 0;
while (i < _root.so.data.treechops.length) {
_root.treechops[i] = _root.so.data.treechops[i];
i++;
}
var i = 0;
while (i < _root.so.data.spells.length) {
_root.spells[i] = _root.so.data.spells[i];
i++;
}
var i = 0;
while (i < _root.so.data.dungeondoors.length) {
_root.dungeondoors[i] = _root.so.data.dungeondoors[i];
i++;
}
var i = 0;
while (i < _root.so.data.dungeonkeys.length) {
_root.dungeonkeys[i] = _root.so.data.dungeonkeys[i];
i++;
}
var i = 0;
while (i < _root.so.data.gems.length) {
_root.gems[i] = _root.so.data.gems[i];
i++;
}
getNextThing();
}
var saver = true;
var i = 0;
while (i < _root.dungeondoors.length) {
if (!_root.dungeondoors[i]) {
saver = false;
}
i++;
}
if (saver) {
mapp = new Array(1620, -600);
mappy.dude._x = mapp[0];
mappy.dude._y = mapp[1];
mappy.gotoAndStop(2);
}
}
msgbox.unloadMovie();
msgbox.removeMovieClip();
hud.unloadMovie();
hud.removeMovieClip();
mappy.dude._x = mapp[0];
mappy.dude._y = mapp[1];
pausy = true;
runFade();
var numenems = 0;
var i = 0;
while (i < enarray.length) {
if (!enarray[i].dead) {
if (enarray[i].typ <= 10) {
numenems++;
}
}
i++;
}
if (numenems < 7) {
addEnem();
}
Frame 6
function runEnd() {
gotoAndStop ("end");
}
function addFireSpurt(who) {
spurts.push(who);
who.cv = 0;
who.maxcv = 30;
}
function runSpurts() {
var _local2 = 0;
while (_local2 < spurts.length) {
var _local1 = spurts[_local2];
if (!_local1.shooting) {
_local1.cv++;
if (_local1.cv >= _local1.maxcv) {
_local1.cv = 0;
_local1.shooting = true;
_local1.gotoAndPlay("warn");
}
}
_local2++;
}
}
function shootSpurt(who) {
who.guts.gotoAndStop("spurt");
}
function endSpurt(who) {
who.guts.gotoAndStop("norm");
who.shooting = false;
}
function endLevelup() {
_root.setNoise(_root.bgnoise);
this.attachMovie("plat_hud", "hud", 983);
updateHUD();
hud._visible = true;
if ((!game.bossbattle) || (game.boss.dead)) {
hud.bosslife._visible = false;
}
platpause = false;
flashIt();
if (!game.boss.guts.guts2.lastframe) {
game.boss.guts.guts2.play();
}
levelup.removeMovieClip();
levelup.unloadMovie();
_root.freshSave();
}
function runUp() {
flashIt();
hud._visible = false;
platpause = true;
game.boss.guts.guts2.stop();
this.attachMovie("levelup", "levelup", 999989);
}
function addxp(num, full) {
if (!full) {
xp = xp + Math.round(num / 10);
} else {
xp = xp + num;
}
hud.showxp = (xp + "/") + nextxp;
if (xp >= nextxp) {
runUp();
}
}
function updateHUD(hit, use) {
showSword(game.dude.guts.sword);
if (((!game.bossbattle) || (game.boss.dead)) || ((game.boss.typ == 97) && (game.boss.shielded))) {
hud.bosslife._visible = false;
} else {
hud.bosslife.nam.text = game.boss.nam;
var _local2 = game.boss;
hud.bosslife.bar._xscale = (_local2.hp / _local2.maxhp) * 100;
if (hud.bosslife.bar._xscale <= 0) {
hud.bosslife.bar._xscale = 0;
}
}
addxp(0);
if (curhp < 0) {
curhp = 0;
}
if (curhp > maxhp) {
curhp = maxhp;
}
hud.lifebar2._xscale = hud.lifebar._xscale;
hud.lifebar._xscale = (curhp / maxhp) * 100;
hud.lifebar2.goalsc = hud.lifebar._xscale;
hud.lifebar2.tim = 0;
if (hit) {
hud.lifebar2.onEnterFrame = function () {
this.tim++;
if (this.tim >= 1) {
if (this._xscale > this.goalsc) {
var _local2 = this.goalsc - this._xscale;
this._xscale = this._xscale + (_local2 / 5);
} else {
delete this.onEnterFrame;
}
}
};
} else {
hud.lifebar2._xscale = hud.lifebar._xscale;
}
hud.pointer._x = hud.magbar._x + (145.3 * usemagarray[curmag]);
if (magamt < 0) {
magamt = 0;
}
if (magamt > maxmag) {
magamt = maxmag;
}
hud.magbar2._xscale = hud.magbar._xscale;
hud.magbar._xscale = (magamt / maxmag) * 100;
hud.magbar2.goalsc = hud.magbar._xscale;
hud.magbar2.tim = 0;
if (use) {
hud.magbar2.onEnterFrame = function () {
this.tim++;
if (this.tim >= 1) {
if (this._xscale > this.goalsc) {
var _local2 = this.goalsc - this._xscale;
this._xscale = this._xscale + (_local2 / 5);
} else {
delete this.onEnterFrame;
}
}
};
} else {
hud.magbar2._xscale = hud.magbar._xscale;
}
}
function addEnem(who) {
if (baddies == undefined) {
baddies = new Array();
}
baddies.push(who);
who.xvel = 0;
who.hitcv = 0;
who.yvel = 0;
who.aicv = 0;
who.storedhits = 0;
who.origscale = who._xscale;
}
function flashIt() {
game.flasher._alpha = 100;
game.flasher.onEnterFrame = function () {
this._alpha = this._alpha - 25;
if (this._alpha <= 0) {
delete this.onEnterFrame;
}
};
}
function moveBads() {
var _local11 = 0;
while (_local11 < 3) {
var _local9 = game["dais" + _local11];
if (_local9.hit) {
_local9.hitcv++;
if (_local9.hitcv >= 5) {
_local9.hitcv = 0;
_local9.hit = false;
}
}
_local11++;
}
_local11 = 0;
while (_local11 < baddies.length) {
b = baddies[_local11];
if ((b._x < -2500) || (b._x > 2500)) {
removeBad(b);
}
if (!b.groundimmune) {
b.xvel = b.xvel * game.fric;
b.yvel = b.yvel + game.grav;
}
b._x = b._x + b.xvel;
b._y = b._y + b.yvel;
b.virtx = b._x + game._x;
b.virty = b._y + game._y;
if (((!b.spearing) && (!b.boss)) && (!b.independent)) {
if (game.dude._x > b._x) {
b._xscale = -b.origscale;
} else {
b._xscale = b.origscale;
}
}
if ((((!b.dead) && (b.hp > 0)) && (!b.groundimmune)) || (b.boss && (!b.groundimmune))) {
while (game.bg.hitTest(b.virtx, b.virty, true)) {
b.onground = true;
b._y = b._y - 1;
b.virty = b.virty - 1;
b.yvel = 0;
b.numhits = 0;
}
}
dudeHit(b, b.guts.hitarea);
if (b.typ == 0) {
if (!game.dude.dead) {
if (b.hit) {
b.hitcv++;
b.guts.gotoAndStop("hit");
if (b.hitcv >= 5) {
b.hit = false;
b.guts.gotoAndPlay("rest");
}
}
b.aicv++;
if (b.aicv >= 25) {
b.dec = random(3);
if ((b.dec == 0) && (b.onground)) {
if (game.dude._x < b._x) {
b.xvel = -25;
} else {
b.xvel = 25;
}
b.yvel = -20;
b.onground = false;
}
b.aicv = random(20);
}
}
}
if (b.typ == 1) {
if (!game.dude.dead) {
if (b.hit) {
b.hitcv++;
b.guts.gotoAndStop("hit");
if (b.hitcv >= 5) {
b.hit = false;
b.guts.gotoAndPlay("rest");
}
b.groundimmune = false;
}
if (b.onground) {
aicv++;
if (aicv >= 15) {
aicv = 0;
if (game.dude._x < b._x) {
b.xvel = -35;
} else {
b.xvel = 35;
}
b.yvel = -30 - random(15);
b.onground = false;
}
}
}
}
if (b.typ == 98) {
b.xvel = 0;
b.yvel = 0;
if (!game.dude.dead) {
if (!game.boss.dead) {
if (game.dude._x < b._x) {
b._xscale = -100;
} else {
b._xscale = 100;
}
if (b.upp) {
b.aicv++;
if (b.aicv >= 15) {
b.upp = false;
b.dec = 1;
b.aicv = 0;
}
}
if (b.dec == 1) {
b.guts.head.gotoAndStop("fire");
}
if (b.dec == 3) {
b.aicv++;
if (b.aicv >= 5) {
game.boss.guts.gotoAndPlay("down1");
game.boss.head.gotoAndStop("rest");
b.dec = 0;
}
}
if (b.dec == 2) {
b.aicv++;
if (b.aicv >= 50) {
if (b._x == 110) {
b._x = 850;
} else {
b._x = 110;
}
b.aicv = 0;
b.dec = 0;
b.guts.gotoAndPlay("up1");
b.guts.head.gotoAndStop("rest");
}
}
if (b.hit) {
b.hit = false;
b.gotoAndPlay("hit");
}
} else if (!b.dead) {
_root.game.boss.ball0._visible = false;
_root.game.boss.ball1._visible = false;
_root.game.boss.ball2._visible = false;
b.dead = true;
b.guts.gotoAndStop("die");
}
}
}
if (b.typ == 97) {
if (!game.dude.dead) {
if (b.form2) {
if (b._x < (game.lef - 100)) {
b._x = game.lef - 100;
}
if (b._x > (game.rig - 100)) {
b._x = game.rig - 100;
}
}
if (!game.boss.dead) {
if (b.shielded) {
var _local13 = true;
if (((!game.dais0.dead) || (!game.dais1.dead)) || (!game.dais2.dead)) {
_local13 = false;
}
if (_local13) {
b.shielded = false;
hud.bosslife._visible = true;
updateHUD();
b.speed = 10;
}
}
if (b.hit) {
if (b.hitcv == 0) {
if (!b.form2) {
b.gotoAndPlay("hit");
b.guts.hitarea.gotoAndPlay("hit");
} else {
b.guts.hitarea.gotoAndPlay("hit");
}
}
b.hitcv++;
if (b.hitcv >= 5) {
b.hit = false;
b.hitcv = 0;
}
}
if (!b.form2) {
if (b.shielded) {
if (b.dir == -1) {
b._x = b._x - b.speed;
} else {
b._x = b._x + b.speed;
}
if (b._x < -300) {
b.dir = 1;
}
if (b._x > 850) {
b.dir = -1;
}
b.fireballcv++;
if (b.fireballcv >= 5) {
b.guts.mouth.gotoAndStop("open");
if (!b.mouthopen) {
playSound("fball1");
b.mouthopen = true;
dragonBall();
}
if (b.fireballcv >= 10) {
b.mouthopen = false;
b.guts.mouth.gotoAndStop(1);
b.fireballcv = 0;
}
}
} else {
if (b.dir == -1) {
b._x = b._x - b.speed;
} else {
b._x = b._x + b.speed;
}
if (b._x < -245) {
b.dir = 1;
}
if (b._x > 850) {
b.dir = -1;
}
if (b.ydir == -1) {
b._y = b._y - b.speed;
} else {
b._y = b._y + b.speed;
}
if (b._y < -500) {
b.ydir = 1;
}
if (b._y > 200) {
b.ydir = -1;
}
b.fireballcv++;
if (b.fireballcv >= 15) {
b.guts.mouth.gotoAndStop("open");
if (!b.mouthopen) {
playSound("fball1");
b.mouthopen = true;
dragonBall();
}
if (b.fireballcv >= 20) {
b.mouthopen = false;
b.guts.mouth.gotoAndStop(1);
b.fireballcv = 0;
}
}
}
}
}
}
}
if (b.typ == 502) {
if (!game.dude.dead) {
if (!game.boss.dead) {
if (b.hit) {
if (b.hitcv == 0) {
b.gotoAndPlay("hit");
}
b.hitcv++;
if (b.hitcv >= 5) {
b.hit = false;
b.hitcv = 0;
}
}
if (b.dir == -1) {
b.goal = -300;
} else {
b.goal = 1250;
}
var _local18 = Math.abs(game.dude._x - b._x);
var _local14 = Math.abs(b.goal - b._x);
if (_local14 < 50) {
b.dir = b.dir * -1;
}
if (b.goal < b._x) {
b._x = b._x - 5;
b._xscale = 100;
} else {
b._x = b._x + 5;
b._xscale = -100;
}
if (_local18 > 180) {
if (!b.walking) {
b.walking = true;
b.attacking = false;
b.guts.gotoAndPlay("walk");
}
} else {
b.walking = false;
if (!b.attacking) {
b.attacking = true;
b.guts.gotoAndPlay("atk0");
}
}
var _local7 = game.fish0;
var _local10 = game.fish1;
_local7.cv++;
if (_local7.cv >= 50) {
rocks = new Array();
_local7.dir = _local7.dir * -1;
_local10.dir = _local10.dir * -1;
_local7.cv = 0;
var _local5 = game.attachMovie("rock", "rock" + effcv, effcv + 55441);
effcv++;
_local5._x = _local7._x;
_local5._y = _local7._y;
var _local12 = random(2);
if (_local12 == 0) {
_local12 = -1;
}
_local5._xscale = _local5._xscale * _local12;
_local5.xvel = 7 * _local7.dir;
_local5.yvel = -10;
_local5._xscale = 70;
_local5._yscale = _local5._xscale;
rocks.push(_local5);
_local5 = game.attachMovie("rock", "rock" + effcv, effcv + 55441);
effcv++;
_local12 = random(2);
if (_local12 == 0) {
_local12 = -1;
}
_local5._xscale = _local5._xscale * _local12;
_local5._x = _local10._x;
_local5._y = _local10._y;
_local5.xvel = 7 * _local10.dir;
_local5.yvel = -10;
_local5._xscale = 70;
_local5._yscale = _local5._xscale;
rocks.push(_local5);
}
var _local6 = 0;
while (_local6 < rocks.length) {
var _local4 = rocks[_local6];
if (!_local4.smacked) {
_local4._x = _local4._x + _local4.xvel;
_local4._y = _local4._y + _local4.yvel;
_local4.yvel = _local4.yvel + (game.grav * 0.7);
if (!_local4.stuck) {
dudeHit(_local4, _local4);
if (game.bg.hitTest(_local4._x + game._x, _local4._y + game._y, true)) {
_local4.stuck = true;
playSound("hit2");
_local4.gotoAndPlay("break");
_local4.yvel = 0;
while (game.bg.hitTest(_local4._x + game._x, _local4._y + game._y, true)) {
_local4._y--;
}
}
}
}
_local6++;
}
_local6 = 0;
while (_local6 < moverocks.length) {
var _local4 = moverocks[_local6];
_local4._x = _local4._x + (_local4.godir * 25);
if (_local4.hitTest(b.guts.zone) && (!_local4.stuck)) {
b.gotoAndPlay("hit");
playSound("hit" + random(3));
_local4.stuck = true;
_local4.gotoAndPlay("break");
var _local3 = b;
_local3.hp = _local3.hp - 150;
hud.bosslife.bar._xscale = (_local3.hp / _local3.maxhp) * 100;
if (hud.bosslife.bar._xscale <= 0) {
hud.bosslife.bar._xscale = 0;
}
if ((_local3.hp <= 0) && (!_local3.dead)) {
nogo = false;
if (_local3 == game.boss) {
nogo = true;
}
_local3.dead = true;
if (!_local3.boss) {
showXP(_local3, nogo);
addxp(_local3.xp, true);
_local3.guts.gotoAndPlay("die");
} else {
_local3.guts.gotoAndStop("die");
}
} else {
_local3.hit = true;
_local3.hitcv = 0;
}
}
_local6++;
}
}
}
}
if (b.typ == 501) {
if (!game.dude.dead) {
if (!game.boss.dead) {
if (b.hit) {
if (b.hitcv == 0) {
b.gotoAndPlay("hit");
}
b.hitcv++;
if (b.hitcv >= 5) {
b.hit = false;
b.hitcv = 0;
}
}
b.aicv++;
if (((b.aicv >= 100) && (!b.spinning)) && (!b.dizzy)) {
b.spinning = true;
b.guts.gotoAndPlay("atk0");
b.aicv = 0;
b.gox = 0;
}
if (b.dizzy) {
if (b.aicv >= 70) {
b.dizzy = false;
b.weak = false;
}
}
if (b.spinning) {
if (b.ready) {
if (b.dir == -1) {
b.gox = b.gox - 0.8;
} else {
b.gox = b.gox + 0.8;
}
b._x = b._x - b.gox;
if (b.aicv >= b.spindist) {
b.spindist = 56;
b.aicv = 0;
b.spinning = false;
if (b.dir == -1) {
b.dir = 1;
b._xscale = 100;
} else {
b.dir = -1;
b._xscale = -100;
}
b.ready = false;
b.guts.gotoAndPlay("dizzy");
b.dizzy = true;
}
}
}
}
}
}
if (b.typ == 500) {
if (!game.dude.dead) {
if (game.boss.dead) {
clearInterval(this.intr);
}
if (!game.boss.dead) {
if (b.gotaxe) {
if (b._x < game.dude._x) {
b._xscale = -100;
} else {
b._xscale = 100;
}
}
if (b.hit) {
if (b.hitcv == 0) {
b.gotoAndPlay("hit");
}
b.hitcv++;
if (b.hitcv >= 5) {
b.hit = false;
b.hitcv = 0;
}
}
if (b.gotaxe) {
var _local18 = Math.abs(b._x - game.dude._x);
if (!b.attacking) {
if (_local18 < 210) {
b.guts.gotoAndPlay("atk0");
b.attacking = true;
} else if (_local18 < 850) {
b.guts.gotoAndPlay("toss");
b.attacking = true;
}
}
} else if (b.comp.stuck) {
b.weak = true;
var _local18 = b.comp._x - b._x;
if (!b.comp.hitTest(b.guts.hitarea)) {
if (!b.walking) {
b.walking = true;
b.guts.gotoAndPlay("walk");
clearInterval(this.intr);
this.intr = setInterval(moveKnight, 30);
}
} else {
clearInterval(this.intr);
b.walking = false;
if (!b.gettingaxe) {
b.comp.unloadMovie();
b.comp.removeMovieClip();
b.gettingaxe = true;
b.guts.gotoAndPlay("retrieve");
}
}
}
}
}
}
if (b.typ == 99) {
if (!game.dude.dead) {
if (!game.boss.dead) {
if (b.hit) {
b.hit = false;
b.gotoAndPlay("hit");
}
if (b.mod == 0) {
b.aicv++;
if (b.aicv >= 50) {
b.mod = 1;
b.aicv = 0;
b.guts.gotoAndStop("charge");
}
}
if (b.mod == 2) {
b.guts.gotoAndStop("throw");
}
} else if (!b.dead) {
b.dead = true;
_root.game.boss.ball0._visible = false;
_root.game.boss.ball1._visible = false;
_root.game.boss.ball2._visible = false;
b.guts.gotoAndStop("die");
}
} else {
b.guts.gotoAndStop("rest");
}
}
if (b.typ == 3) {
if (!game.dude.dead) {
if (b.hit) {
b.hitcv++;
b.guts.gotoAndStop("hit");
if (b.hitcv >= 5) {
b.hit = false;
b.aicv = 0;
b.walking = false;
b.resting = true;
b.attacking = false;
b.guts.gotoAndPlay("rest");
}
} else if (b.onground) {
if (!b.attacking) {
b.aicv++;
if (b.aicv >= 100) {
b.dec = random(5);
b.aicv = random(25);
b.walking = false;
b.resting = false;
}
var _local8 = game.dude;
if (b.dec >= 2) {
if (b._x < _local8._x) {
b._x = b._x + 3;
b._xscale = -100;
if (!b.walking) {
b.guts.gotoAndPlay("walk");
b.resting = false;
b.walking = true;
}
}
if (b._x > _local8._x) {
b._x = b._x - 3;
b._xscale = 100;
if (!b.walking) {
b.guts.gotoAndPlay("walk");
b.resting = false;
b.walking = true;
}
}
}
if (b.dec == 1) {
if (!b.resting) {
b.resting = true;
b.walking = false;
b.guts.gotoAndPlay("rest");
}
}
if (b.dec == 0) {
if (b._x < _local8._x) {
b._x = b._x - 3;
b._xscale = 100;
if (!b.walking) {
b.guts.gotoAndPlay("walk");
b.resting = false;
b.walking = true;
}
}
if (b._x > _local8._x) {
b._x = b._x + 3;
b._xscale = -100;
if (!b.walking) {
b.guts.gotoAndPlay("walk");
b.resting = false;
b.walking = true;
}
}
}
var _local17 = Math.abs(b._x - _local8._x);
if (_local17 < 96) {
b.attacking = true;
b.resting = false;
b.walking = false;
if (b._x > _local8._x) {
b._xscale = 100;
} else {
b._xscale = -100;
}
b.guts.gotoAndPlay("atk");
}
}
}
}
}
if (b.typ == 5) {
if ((!game.dude.dead) && (!b.dead)) {
if (b.hit) {
if (!b.runninghit) {
b.runninghit = true;
b.gotoAndPlay("hit");
}
b.hitcv++;
if (b.hitcv >= 5) {
b.runninghit = false;
b.hit = false;
b.hitcv = 0;
b.guts.head.gotoAndStop(1);
} else {
b.guts.head.gotoAndPlay(2);
}
}
b.aicv++;
if (b.aicv >= 50) {
b.guts.gotoAndPlay("atk");
b.aicv = 0;
}
}
}
if (b.typ == 4) {
if (!game.dude.dead) {
if (b.hit) {
b.hitcv++;
if (b.hitcv >= 5) {
b.hit = false;
}
if (b._currentframe == 1) {
b.gotoAndPlay("hit");
}
}
b.web.clear();
b.web.lineStyle(8, 16777215);
b.web.moveTo(b.xhome, b.home - 300);
b.web.lineTo(b.xhome, b._y - 130);
b.aicv++;
var _local15 = b.home + 265;
if (b.aicv >= b.upamt) {
if ((b._y < _local15) && (!b.arrived)) {
b._y = b._y + 16;
b.wait = 0;
} else {
b.wait++;
b.arrived = true;
if (b.wait > b.downamt) {
if (b._y > b.home) {
b._y = b._y - 10;
} else {
b.arrived = false;
b.aicv = 0;
b.wait = 0;
}
}
}
}
}
}
if (b.typ == 2) {
if (!game.dude.dead) {
if (b.hit) {
b._yscale = -100;
b.guts._y = 2;
b.hitcv++;
b.guts.gotoAndStop("hit");
b.dewinged = true;
b.groundimmune = false;
if (b.hitcv >= 5) {
b.hit = false;
b.guts.gotoAndStop("rest");
}
}
if (!b.dewinged) {
if (!b.activated) {
var _local16 = Math.abs(b._x - game.dude._x);
if (_local16 < 320) {
b.activated = true;
b.vertdist = 100;
b.maxwait = random(5);
b.wait = 0;
}
}
if (b.activated) {
if (b.vertdist > 1) {
b.vertdist = Math.abs(game.dude._y - b._y);
b.vdist = game.dude._y - b._y;
b._y = b._y + (b.vdist / 4);
} else if (!b.spearing) {
if (b.wait < b.maxwait) {
b.wait++;
} else {
if (game.dude._x < b._x) {
b.dir = -1;
} else {
b.dir = 1;
}
b.spearing = true;
}
} else {
b.absvel = Math.abs(b.xvel);
if (b.absvel < 30) {
b.xvel = b.xvel + (1.5 * b.dir);
}
}
}
}
}
}
_local11++;
}
}
function reviveDemon() {
game.boss.groundimmune = false;
game.boss.independent = false;
game.boss.nomove = false;
game.boss.gotoAndPlay("hit");
game.boss.dead = false;
game.boss.hp = game.boss.maxhp;
game.boss.nam = "Demon Eye";
updateHUD();
}
function moveKnight() {
if ((!_root.platpause) && (!_root.freeze)) {
if (_root.game.boss._x > _root.game.boss.comp._x) {
_root.game.boss._x = _root.game.boss._x - 2;
} else {
_root.game.boss._x = _root.game.boss._x + 2;
}
}
}
function chkAwardGet(who) {
if ((who.hitTest(game.dude.guts.hitarea1) && (!_root.platpause)) && (!_root.freeze)) {
platpause = true;
flashIt();
playSound("gleam");
game.dude.nootheranims = true;
game.dude.guts.gotoAndPlay("itemget");
if (game.boss.typ == 99) {
game.dude.guts.item.attachMovie("boots2", "guts", 0);
_root.gotboots = true;
}
if (game.boss.typ == 98) {
game.dude.guts.item.attachMovie("key", "guts", 0);
_root.gotkey = true;
}
if (game.boss.typ == 500) {
var _local2 = game.dude.guts.item.attachMovie("gem0", "guts", 0);
_local2._x = -63;
_local2._y = -155;
_root.gems[0] = true;
_root.gemtranny = 0;
}
if (game.boss.typ == 501) {
var _local2 = game.dude.guts.item.attachMovie("gem1", "guts", 0);
_local2._x = -63;
_local2._y = -155;
_root.gems[1] = true;
_root.gemtranny = 1;
}
if (game.boss.typ == 502) {
var _local2 = game.dude.guts.item.attachMovie("gem2", "guts", 0);
_local2._x = -63;
_local2._y = -155;
_root.gems[2] = true;
_root.gemtranny = 2;
}
delete who.onEnterFrame;
game.boss._visible = false;
_root.freshSave();
}
}
function tossAxe(who) {
var _local3 = game.attachMovie("knight0_axe", "axe", 71100 + effcv);
who.gotaxe = false;
who.comp = _local3;
_local3._xscale = who._xscale;
_local3.comp = who;
effcv++;
_local3.dir = who._xscale / -100;
_local3._x = who._x + (50 * _local3.dir);
_local3._y = who._y - 80;
var _local5 = Math.abs(game.dude._x - who._x);
if (_local5 < 350) {
_local3.xvel = 16 * _local3.dir;
_local3.yvel = -27;
}
if ((_local5 >= 350) && (_local5 < 500)) {
_local3.xvel = 23 * _local3.dir;
_local3.yvel = -30;
}
if (_local5 >= 500) {
_local3.xvel = 25 * _local3.dir;
_local3.yvel = -37;
}
_local3.onEnterFrame = function () {
if ((!_root.platpause) && (!_root.freeze)) {
if (!this.stuck) {
if (!this.comp.dead) {
_root.dudeHit(this, this.hitarea, true);
_root.dudeHit(this, this.hitarea1, true);
_root.dudeHit(this, this.hitarea2, true);
}
this._x = this._x + this.xvel;
this._y = this._y + this.yvel;
this.yvel = this.yvel + _root.game.grav;
this._rotation = this._rotation + (25 * this.dir);
if (_root.game.bg.hitTest(this._x + game._x, (this._y + 70) + game._y, true) || (this._y > 380)) {
this.cv = 0;
playSound("hit2");
this._rotation = -200 * this.dir;
_root.screenShake(10);
this.stuck = true;
}
} else if (this.cv < 5) {
this.cv++;
_root.dudeHit(this, this.hitarea, true);
_root.dudeHit(this, this.hitarea1, true);
_root.dudeHit(this, this.hitarea2, true);
}
}
};
}
function retrieveAxe(who) {
who.weak = false;
who.comp = undefined;
who.gotaxe = true;
who.attacking = false;
who.walking = false;
who.gettingaxe = false;
}
function knight0AtkEnd(who) {
who.attacking = false;
}
function defeatBoss() {
noleave = true;
_root.game.boss.ball0._visible = false;
_root.game.boss.ball1._visible = false;
_root.game.boss.ball2._visible = false;
whichboss.dead = true;
showXP(game.boss, nogo);
addxp(game.boss.xp, true);
game.boss.guts.gotoAndStop("award");
whichboss = 0;
}
function dudeHit(b, box) {
if ((((box.hitTest(game.dude.guts.hitarea1) && (!b.dead)) && (!_root.platpause)) && (!_root.freeze)) && (!b.weak)) {
if (((!game.dude.hit) && (!game.dude.flashing)) && (!game.dude.magicking)) {
playLoudSound("gethit");
playLoudSound("ah");
flashIt();
var _local2 = b.dam * _root.armstrength[_root.curarmor];
if (game.dude.shielded) {
_local2 = _local2 * 0.6;
}
curhp = curhp - _local2;
updateHUD(true);
chunks(game.dude._x, game.dude._y - 50);
if (curhp <= 0) {
runDeath();
} else {
game.dude.hit = true;
}
game.dude.jumping = true;
if (b._x < game.dude._x) {
game.dude.xvel = 35;
game.dude._xscale = -1 * game.dude.sc;
} else {
game.dude.xvel = -35;
game.dude._xscale = 1 * game.dude.sc;
}
game.dude.yvel = -30;
}
}
}
function addBossBall() {
var tar = eval ("game.boss.ball" + game.boss.numballs);
tar._visible = true;
game.boss.numballs++;
if (game.boss.numballs == 3) {
game.boss.mod = 2;
game.boss.numballs = 0;
}
}
function grabBall() {
var tar = eval ("game.boss.ball" + game.boss.numballs);
tar._visible = false;
game.boss.numballs++;
}
function ballBomb() {
var _local3 = game.attachMovie("boss1_hairball", "hball" + effcv, effcv + 999981);
effcv++;
_local3._x = locs[ballpointer];
ballpointer++;
if (ballpointer >= locs.length) {
ballpointer = 0;
}
_local3._y = -1200;
_local3.yvel = 0;
if ((game.boss.numballs == 3) && (!game.boss.dead)) {
game.boss.numballs = 0;
game.boss.mod = 0;
game.boss.guts.gotoAndStop("rest");
}
_local3.onEnterFrame = function () {
if ((!_root.platpause) && (!freeze)) {
this.virtx = this._x + game._x;
this.virty = this._y + game._y;
this.yvel = this.yvel + (_root.game.grav * 0.2);
this._y = this._y + this.yvel;
if (_root.game.bg.hitTest(this.virtx, this.virty, true)) {
_root.makeBSplode(this._x, (this._y - this.yvel) - 10);
this.unloadMovie();
this.removeMovieClip();
}
}
};
}
function removeBad(who) {
who.unloadMovie();
who.removeMovieClip();
}
function runDeath() {
if (!game.dude.dead) {
_root.onbridge = false;
_root.rightbridge = false;
_root.playSound("death");
_root.playLoudSound("ohno");
_root.setNoise(0);
_root.numdeaths++;
_root.freshSave();
game.dude.shielded = false;
w = game.attachMovie("platweaponholder", "weap" + spcv, 7382 + spcv);
w._visible = false;
w._x = game.dude._x;
w._y = game.dude._y - 100;
w._xscale = game.dude.sc * 0.55;
w._yscale = w._xscale;
w._rotation = -90;
if (game.dude._xscale == (1 * game.dude.sc)) {
w.xvel = 5 + random(3);
} else {
w.xvel = -5 - random(3);
}
w.yvel = -20 - random(5);
w.createEmptyMovieClip("dum", 0);
w.dum.onEnterFrame = function () {
yib = this._parent;
if (!yib._visible) {
yib._visible = !yib._visible;
}
yib._x = yib._x + yib.xvel;
yib.xvel = yib.xvel * 0.9;
yib._y = yib._y + yib.yvel;
yib.yvel = yib.yvel + yib._parent.grav;
yib.ang = Math.atan2(yib.yvel, yib.xvel);
yib.degs = Math.round((yib.ang * 180) / Math.PI);
yib._rotation = yib.degs;
ground = yib._parent;
yib.virtx = ground._x + yib._x;
yib.virty = (ground._y + yib._y) + 6;
if (ground.bg.hitTest(yib.virtx, yib.virty, true)) {
chunks(yib._x, yib._y);
yib.swapDepths(ground.bg.getDepth() - 1);
delete this.onEnterFrame;
}
};
spcv++;
game.dude.dead = true;
game.dude.guts.gotoAndPlay("die");
}
}
function runCircle() {
c = this.attachMovie("circ", "circ", 9890);
d = this.attachMovie("circ", "circ2", 9889);
c._visible = false;
d._visible = false;
c._xscale = 200;
c._yscale = c._xscale;
c._x = random(640);
c._y = random(480);
c.comp = d;
c.tim = 0;
c.off = 4;
game.dude.virtx = game._x + game.dude._x;
game.dude.virty = game._y + game.dude._y;
c.onEnterFrame = function () {
this.tim++;
if (this.tim >= 30) {
if (!this._visible) {
this._visible = !this._visible;
this.comp._visible = this._visible;
}
if (this._parent.game.dude._xscale == (-1 * game.dude.sc)) {
this.correct = 10;
} else {
this.correct = -10;
}
this.goalx = this._parent.game.dude.virtx + this.correct;
this.goaly = this._parent.game.dude.virty - 10;
this.distx = this.goalx - this._x;
this.disty = this.goaly - this._y;
this._x = this._x + (this.distx / 10);
this._y = this._y + (this.disty / 10);
this.distsc = -this._xscale;
this.comp._xscale = this._xscale * 5;
this.comp._yscale = this.comp._xscale;
this.comp._x = this._x;
this.comp._y = this._y;
if ((this._xscale > 15) && (!this.goup)) {
this._xscale = this._xscale + (this.distsc / 10);
if (this._xscale <= 15) {
this.goup = true;
}
}
if (this.goup) {
if (!this.bounced) {
this._xscale = this._xscale + this.off;
this.off--;
if (this.off <= 1) {
this.bounced = true;
}
} else if (this._xscale > 5) {
this._xscale = this._xscale - 4;
}
}
this._yscale = this._xscale;
if (this._xscale <= 5) {
this.comp.unloadMovie();
this.comp.removeMovieClip();
var _local4 = true;
var _local3 = 0;
while (_local3 < _root.dungeondoors.length) {
if (!_root.dungeondoors[_local3]) {
_local4 = false;
}
_local3++;
}
if (!_local4) {
_root.indungeon = false;
}
this._parent.endPlat();
this.unloadMovie();
this.removeMovieClip();
delete this.onEnterFrame;
}
}
};
}
function endPlat() {
_root.pausy = true;
this.attachMovie("blackout", "blackout", 9891);
goBack();
}
function goBack() {
var saver = true;
var _local3 = 0;
while (_local3 < _root.dungeondoors.length) {
if (!_root.dungeondoors[_local3]) {
saver = false;
}
_local3++;
}
curhp = maxhp;
magamt = maxmag;
_root.rightbridge = true;
blackout.tim = 0;
blackout.onEnterFrame = function () {
this.tim++;
if (this.tim >= 20) {
var _local2 = false;
if (!saver) {
mapp = new Array(320, 240);
} else {
mapp = new Array(1620, -600);
_local2 = true;
}
this._parent.runMap(_local2);
this.unloadMovie();
this.removeMovieClip();
}
};
hud.unloadMovie();
hud.removeMovieClip();
_root.freshSave();
}
function chunks(x, y) {
r = 0;
while (r < 10) {
p = game.attachMovie("spark2", "sp" + r, (25 + r) + spcv);
spcv++;
p._x = x;
p._y = y;
p.xvel = random(10) * ((game.dude._xscale / game.dude.sc) * 5);
p.yvel = random(30) * -1;
p.onEnterFrame = function () {
this._x = this._x + this.xvel;
this.xvel = this.xvel * 0.8;
this._y = this._y + this.yvel;
this.yvel = this.yvel + game.grav;
if (this._y > 500) {
delete this.onEnterFrame;
this.removeMovieClip();
this.unloadMovie();
}
};
r++;
}
}
function makeSpark(x, y, who) {
cl = game.attachMovie("clack", "clack" + spcv, 25 + spcv);
cl._x = game.dude._x + ((game.dude._xscale / game.dude.sc) * 70);
cl._y = game.dude._y - 50;
cl._xscale = (game.dude._xscale / game.dude.sc) * 100;
spcv++;
r = 0;
while (r < 6) {
p = game.attachMovie("spark", "sp" + r, (25 + r) + spcv);
spcv++;
p._x = x;
p._y = y;
p.xvel = random(20) * ((game.dude._xscale / game.dude.sc) * 10);
p.yvel = random(30) * -1;
p.onEnterFrame = function () {
this._x = this._x + this.xvel;
this.xvel = this.xvel * 0.8;
this._y = this._y + this.yvel;
this.yvel = this.yvel + game.grav;
if (this._y > 500) {
delete this.onEnterFrame;
this.removeMovieClip();
this.unloadMovie();
}
};
r++;
}
}
function chkSlash(box, magic, fireball, who) {
if (box.hitTest(game.wizard) && (!game.wizard.fairy)) {
playLoudSound("wahm");
if ((!fireball) && (!magic)) {
flashIt();
game.wizard.gotoAndPlay("shielded");
var _local12 = 5 * _root.armstrength[_root.curarmor];
if (game.dude.shielded) {
_local12 = _local12 * 0.6;
}
curhp = curhp - _local12;
updateHUD();
chunks(game.dude._x, game.dude._y - 50);
if (curhp <= 0) {
runDeath();
} else {
game.dude.hit = true;
}
game.dude.jumping = true;
if (game.wizard._x < game.dude._x) {
game.dude.xvel = 35;
game.dude._xscale = -1 * game.dude.sc;
} else {
game.dude.xvel = -35;
game.dude._xscale = game.dude.sc;
}
game.dude.yvel = -30;
} else {
game.wizard.gotoAndPlay("shielded");
if (fireball) {
removeDBall(who);
}
}
}
if (box.hitTest(game.wizardo)) {
if ((!fireball) && (!magic)) {
flashIt();
game.wizardo.gotoAndPlay("shielded");
var _local12 = 5 * _root.armstrength[_root.curarmor];
if (game.dude.shielded) {
_local12 = _local12 * 0.6;
}
curhp = curhp - _local12;
updateHUD();
chunks(game.dude._x, game.dude._y - 50);
if (curhp <= 0) {
runDeath();
} else {
game.dude.hit = true;
}
game.dude.jumping = true;
if (game.wizardo._x < game.dude._x) {
game.dude.xvel = 35;
game.dude._xscale = -1 * game.dude.sc;
} else {
game.dude.xvel = -35;
game.dude._xscale = 1 * game.dude.sc;
}
game.dude.yvel = -30;
} else {
game.wizardo.gotoAndPlay("shielded");
if (fireball) {
removeDBall(who);
}
}
}
var _local5 = 0;
while (_local5 < 3) {
var _local3 = game["dais" + _local5];
if (box.hitTest(_local3.guts.hitarea) && (!_local3.dead)) {
if (!_local3.hit) {
playSound("hit" + random(3));
_local3.hit = true;
_local3.gotoAndPlay("hit");
_local3.pointer++;
var _local10 = Math.floor(_local3.pointer / 2);
_local3.guts.gotoAndStop(_local10);
if (_local3.pointer >= _local3.maxx) {
_local3.dead = true;
}
if (_local3._x > game.dude._x) {
_local3.godir = 1;
} else {
_local3.godir = -1;
}
_local3.xp = 5;
showXP(_local3, true);
addxp(_local3.xp, true);
makeSpark(_local3._x - (_local3.godir * 20), _local3._y - 150, _local3);
}
}
_local5++;
}
_local5 = 0;
while (_local5 < rocks.length) {
var _local3 = rocks[_local5];
if ((box.hitTest(_local3) && (!_local3.stuck)) && (!fireball)) {
playSound("hit" + random(3));
_local3.smacked = true;
moverocks.push(_local3);
if (_local3._x > game.dude._x) {
_local3.godir = 1;
} else {
_local3.godir = -1;
}
makeSpark(_local3._x - (_local3.godir * 20), _local3._y - 50, _local3);
}
_local5++;
}
_local5 = 0;
while (_local5 < baddies.length) {
tin = baddies[_local5];
if ((box.hitTest(tin.guts.hitarea) && (!tin.hit)) && (!tin.dead)) {
if (tin.typ == 97) {
if (tin.shielded) {
playLoudSound("wahm");
tin.guts.shield._visible = true;
tin.guts.shield.onEnterFrame = function () {
if ((!_root.platpause) && (!_root.freeze)) {
this.cv++;
if (this.cv >= 10) {
this._alpha = this._alpha - 10;
if (this._alpha <= 0) {
this.cv = 0;
this._alpha = 100;
this._visible = false;
delete this.onEnterFrame;
}
}
}
};
}
}
if (!tin.shielded) {
playSound("hit" + random(3));
if (!magic) {
if (!fireball) {
tin.hp = tin.hp - powarray[cursword];
} else {
tin.hp = tin.hp - (0.4 * powarray[cursword]);
}
} else {
tin.hp = tin.hp - magpowarray[curmag];
}
if (tin.boss) {
hud.bosslife.bar._xscale = (tin.hp / tin.maxhp) * 100;
if (hud.bosslife.bar._xscale <= 0) {
hud.bosslife.bar._xscale = 0;
}
}
if (atktimer < 13) {
combos++;
if (combos >= 1) {
showcombo = combos + 1;
j = this.attachMovie("combonums", "combonums", 87390);
j.num.txt = showcombo;
}
} else {
combos = 0;
}
atktimer = 0;
if (!fireball) {
var _local6 = game.dude._xscale / game.dude.sc;
} else {
var _local9 = Math.abs(who._xscale);
var _local6 = who._xscale / _local9;
}
if (!tin.nomove) {
tin.yvel = -24;
tin.onground = false;
tin.xvel = 10 * _local6;
}
tin.numhits++;
if (!fireball) {
makeSpark(tin._x - (_local6 * 20), tin._y - 50, tin);
}
if (fireball) {
removeDBall(who);
}
if ((tin.hp <= 0) && (!tin.dead)) {
nogo = false;
if (tin == game.boss) {
nogo = true;
}
tin.dead = true;
_root.game.boss.ball0._visible = false;
_root.game.boss.ball1._visible = false;
_root.game.boss.ball2._visible = false;
if (!tin.boss) {
showXP(tin, nogo);
addxp(tin.xp, true);
tin.guts.gotoAndPlay("die");
} else if (tin.typ != 97) {
tin.guts.gotoAndStop("die");
} else if (!tin.form2) {
tin.guts.hitarea.gotoAndPlay("hit");
tin.guts.gotoAndPlay("die");
tin.form2 = true;
} else {
tin.guts.gotoAndPlay("die2");
}
} else {
tin.hit = true;
tin.hitcv = 0;
}
}
}
_local5++;
}
}
function dragonUp() {
if (!game.boss.dead) {
game.boss.upp = true;
}
}
function dragonBallStop() {
if (!game.boss.dead) {
game.boss.upp = false;
game.boss.dec = 3;
game.boss.aicv = 0;
}
}
function dragonDown() {
if (!game.boss.dead) {
game.boss.aicv = 0;
game.boss.dec = 2;
game.boss.down = true;
}
}
function dragonBall(who) {
var _local3 = game.attachMovie("fireball", "fireball" + effcv, 200119 + effcv);
effcv++;
if (game.boss.typ != 97) {
_local3._x = (((who._x + who._parent._x) + who._parent._parent._x) + who._parent._parent._parent._x) + who._parent._parent._parent._parent._x;
_local3._y = (((who._y + who._parent._y) + who._parent._parent._y) + who._parent._parent._parent._y) + who._parent._parent._parent._parent._y;
_local3.dir = 1;
if (game.boss._xscale == -100) {
var _local6 = _local3._x - game.boss._x;
_local3._x = game.boss._x - _local6;
_local3.dir = -1;
}
_local3.xvel = (random(5) + 1) * _local3.dir;
_local3.yvel = -(random(15) + 10);
_local3.dam = 30;
} else {
_local3._x = game.boss._x + 100;
_local3._y = game.boss._y + 165;
_local3.xvel = 0;
_local3.yvel = 1;
_local3.dam = 75;
}
var _local7 = Math.atan2(_local3.yvel, _local3.xvel);
var _local5 = Math.round((_local7 * 180) / Math.PI);
_local3._rotation = _local5;
_local3.onEnterFrame = function () {
if ((!platpause) && (!freeze)) {
dudeHit(this, this.hitarea);
var _local4 = Math.atan2(this.yvel, this.xvel);
var _local3 = Math.round((_local4 * 180) / Math.PI);
this._rotation = _local3;
this._x = this._x + this.xvel;
this.xvel = this.xvel * 0.99;
this.virtx = this._x + game._x;
this.virty = this._y + game._y;
if (this.dam == 30) {
this.yvel = this.yvel + (_root.game.grav * 0.2);
} else {
this.yvel = this.yvel + (_root.game.grav * 0.4);
}
this._y = this._y + this.yvel;
if (_root.game.bg.hitTest(this.virtx, this.virty, true)) {
_root.makeBSplode(this._x, (this._y - this.yvel) - 10);
this.unloadMovie();
this.removeMovieClip();
}
if ((this._y > 600) || (_root.game.boss.dead)) {
this.unloadMovie();
this.removeMovieClip();
}
}
};
}
function showXP(who, nogo) {
var _local4 = random(10);
if (nogo) {
_local4 = 8;
}
if ((_local4 <= 7) && (_local4 > 4)) {
hr = game.attachMovie("plat_heart", "heart" + spcv, 25 + spcv);
spcv++;
var _local5 = fg.getDepth();
if (_local5 < (25 + spcv)) {
fg.swapDepths(25 + spcv);
spcv++;
}
hr._x = who._x;
hr._y = who._y;
hr.onEnterFrame = function () {
if ((!_root.platpause) && (!freeze)) {
this._y = this._y - 2;
this.virty = this._parent._y + this._y;
if (this.hitTest(this._parent.dude.guts.hitarea1)) {
playLoudSound("exclaim" + random(10));
playLoudSound("get");
_root.curhp = _root.curhp + 15;
updateHUD();
this._parent.dude.gotoAndPlay("flash");
this._parent.dude.glow = true;
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
if (this.virty < 0) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
}
};
}
if (_local4 <= 4) {
mb = game.attachMovie("plat_magic", "magbot" + spcv, 25 + spcv);
mb._x = who._x;
mb._y = who._y;
mb.yvel = -10;
mb.tim = 0;
mb.onEnterFrame = function () {
this.tim++;
this._y = this._y + this.yvel;
this.yvel = this.yvel + game.grav;
this.virtx = game._x + this._x;
this.virty = game._y + this._y;
while (game.bg.hitTest(this.virtx, this.virty, true)) {
this._y--;
this.virty--;
this.yvel = 0;
}
if (this.hitTest(game.dude.guts.hitarea1) && (this.tim > 10)) {
playLoudSound("exclaim" + random(4));
playLoudSound("get");
_root.magamt = _root.magamt + 15;
_root.updateHUD();
_root.game.dude.gotoAndPlay("flash");
_root.game.dude.glow = true;
this.unloadMovie();
this.removeMovieClip();
delete this.onEnterFrame;
}
};
spcv++;
var _local5 = fg.getDepth();
if (_local5 < (25 + spcv)) {
fg.swapDepths(25 + spcv);
spcv++;
}
}
bl = game.attachMovie("points", "points" + spcv, 25 + spcv);
bl._x = who._x;
bl._y = who._y;
bl.timer = 0;
bl.msg = "XP: " + who.xp;
spcv++;
bl.onEnterFrame = function () {
this._y = this._y - 3;
this.timer++;
if (this.timer > 20) {
this._alpha = this._alpha - 10;
}
if (this.timer > 35) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
};
}
function runMap(godungeon) {
if (((game.wizard != undefined) || (game.blacksmith != undefined)) || (game.boss.typ == 97)) {
mapp = new Array(hitloc[0], hitloc[1] + 100);
}
game.unloadMovie();
game.removeMovieClip();
gotoAndStop ("map");
if (_root.indungeon || (godungeon)) {
_root.mappy.gotoAndStop(2);
_root.pausy = true;
dest = hitthing.typ;
mappy.dude.guts.gotoAndStop("rest_" + mappy.dude.dir);
mappy.tranIt();
}
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
}
function blacksmithGive() {
if (!_root.gotaxe) {
if (_root.gotfairy) {
playLoudSound("get");
showWords("I am 'GLITCH' the blacksmith. Thanks for rescuing my pixie pet, take this axe in exchange. Press 'A' on the map screen to use it. It's strong enough for trees, but won't hurt enemies.");
blacky = true;
_root.fairyaccomplished = true;
} else {
playLoudSound("get");
showWords("I had to flee the beasts in the middle of the night. I left my pet pixie behind. Return her to me and I'll give you my axe.");
}
} else {
playLoudSound("get");
showWords("The axe I gave you is perfect for cutting down trees, but won't hurt enemies. Press 'A' on the map to use it.");
}
}
function giveSpell(num, sec) {
autoexit = false;
if (num == 0) {
flashIt();
if (!spells[num]) {
spells[num] = true;
playLoudSound("spell");
showWords("The other wizards have gone into hiding...they asked me to give you this spell. May it rain pain upon your enemies. Press 'S' for your spell list. Find the other wizards for more spells!");
} else {
playLoudSound("spell");
showWords("You have my spell. Seek the other wizards' hiding places for more spells!");
}
magamt = maxmag;
updateHUD();
}
if (num == 1) {
if (!spells[num]) {
if (!sec) {
if (woodcount < 100) {
playLoudSound("get");
showWords("The beasts destroyed our house! We need 100 cords of wood to re-build. My grandpa would be so grateful for your help!");
autoexit = true;
} else if (!deliveredwood) {
playLoudSound("get");
showWords("Thank you so much for the wood. My grandpa wants to speak with you...");
deliveredwood = true;
game.wizard.guts.gotoAndStop("happy");
}
} else {
flashIt();
playLoudSound("spell");
showWords("May this spell shield you from enemy attacks.");
spells[num] = true;
magamt = maxmag;
updateHUD();
}
} else if (!sec) {
playLoudSound("get");
showWords("Come back to see grandpa again? Go on ahead!");
} else {
playLoudSound("spell");
flashIt();
showWords("You have my spell. Find the other wizards to gain their powers!");
magamt = maxmag;
updateHUD();
}
}
if (num == 2) {
curhp = maxhp;
updateHUD();
flashIt();
if (!spells[num]) {
spells[num] = true;
playLoudSound("spell");
showWords("You dissolved the spell concealing my house. You must be the hero legend foretold. Use this spell when your health is low.");
} else {
playLoudSound("spell");
showWords("You already have my spell. Use it to re-gain lost health!");
}
}
if (num == 3) {
flashIt();
magamt = maxmag;
updateHUD();
if (!spells[num]) {
spells[num] = true;
playLoudSound("spell");
showWords("You have discovered my secret dungeon lair. Use this spell to toggle fireball shooting. The spell costs no manna, but each fireball depletes manna based on your magic level. May your flaming sword protect your path!");
} else {
playLoudSound("spell");
showWords("I detect that you are already carrying my spell. Use it to shoot fireballs better than Italian plumbers!");
}
}
if (num == 4) {
if (!_root.gotboots) {
flashIt();
playLoudSound("spell");
showWords("My master, 'GLITCH,' the blacksmith, was chased away by the beasts! Free me and I'll lead you to him! Magic footwear will let you walk on water!");
} else if (!game.fairygo) {
game.fairygo = true;
platpause = false;
wizardgot = false;
}
}
_root.freshSave();
}
function showWords(txt) {
hud.msg._visible = true;
hud.msg.guts.text = txt;
wordsup = true;
aup = false;
game.dude.aup = false;
game.dude.attacking = false;
game.dude.xvel = 0;
}
function chkContinue() {
if (!Key.isDown(atk)) {
aup = true;
}
if (aup && (Key.isDown(atk))) {
aup = false;
hud.msg._visible = false;
wordsup = false;
game.dude.aup = false;
if (!blacky) {
platpause = false;
game.dude.guts.gotoAndPlay("rest");
if (Key.isDown(L) || (Key.isDown(R))) {
if (!game.boss.dead) {
game.dude.guts.gotoAndPlay("walk");
}
}
game.blacksmith.guts.gotoAndStop("rest");
} else {
flashIt();
_root.playLoudSound("spell");
blacky = false;
game.dude.guts.gotoAndPlay("itemget");
game.dude.guts.item.attachMovie("axe", "guts", 0);
_root.gotaxe = true;
game.blacksmith.guts.gotoAndStop("retract");
}
if (autoexit) {
runMap();
}
}
}
function phys(who) {
if ((game.wizard._x != undefined) && (!wizardgot)) {
if (!game.fairygo) {
var _local5 = game.wizard._x - who._x;
var _local4 = game.wizard._y - who._y;
var _local6 = Math.sqrt((_local5 * _local5) + (_local4 * _local4));
if (_local6 < 160) {
wizardgot = true;
platpause = true;
who.guts.gotoAndStop("rest");
game.wizard.guts.gotoAndStop("cast");
}
} else if (game.wizard.guts.hitzone.hitTest(game.dude) && (!_root.gotfairy)) {
flashIt();
wizardgot = true;
platpause = true;
who.guts.gotoAndStop("rest");
game.wizard.guts.gotoAndStop("freed");
playLoudSound("spell");
showWords("Thank you ever so much! Follow me on the map to find my master!");
_root.gotfairy = true;
_root.freshSave();
}
}
if ((game.wizardo._x != undefined) && (!wizardogot)) {
var _local6 = Math.abs(game.wizardo._x - who._x);
if (_local6 < 150) {
wizardogot = true;
platpause = true;
who.guts.gotoAndStop("rest");
game.wizardo.guts.gotoAndStop("cast");
}
}
if ((game.blacksmith._x != undefined) && (!blacksmithgot)) {
var _local6 = Math.abs(game.blacksmith._x - who._x);
if (_local6 < 180) {
blacksmithgot = true;
platpause = true;
who.guts.gotoAndStop("rest");
if (!_root.gotaxe) {
game.blacksmith.guts.gotoAndStop("give");
} else {
blacksmithGive();
}
}
}
if (who.glow) {
h = 0;
while (h < 2) {
sp = game.attachMovie("spark", "sp" + spcv, 25 + spcv);
spcv++;
sp.xvel = game.dude.xvel;
sp._x = (game.dude._x + random(50)) - 25;
sp._y = game.dude._y - random(50);
sp.yvel = -3;
sp.onEnterFrame = function () {
this._x = this._x + this.xvel;
this.xvel = this.xvel * 0.9;
this._y = this._y + this.yvel;
this.yvel = this.yvel - 0.4;
this._xscale = this._xscale - 5;
this._yscale = this._xscale;
if (this._xscale <= 0) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
};
h++;
}
who.glowcv++;
if (who.glowcv >= 15) {
who.glowcv = 0;
who.glow = false;
}
}
atktimer++;
who.yvel = who.yvel + game.grav;
who.xvel = who.xvel * game.fric;
if (who.yvel > 25) {
who.yvel = 25;
}
who._y = who._y + who.yvel;
who._x = who._x + who.xvel;
who.virtx = who._x + game._x;
who.virty = who._y + game._y;
who.absxvel = Math.abs(who.xvel);
if (who.absxvel > 0) {
if ((who.virtx < 0) || (who.virtx > 640)) {
if (!noleave) {
if (_root.onbridge) {
_root.onbridge = false;
if (_root.rightbridge) {
if (who.virtx < 0) {
_root.rightbridge = false;
}
} else if (who.virtx > 640) {
_root.rightbridge = true;
}
if (_root.rightbridge) {
mapp[0] = 1100;
mapp[1] = 700;
} else {
mapp[0] = 850;
mapp[1] = 900;
}
}
pausy = true;
runMap();
} else {
_root.hud._visible = true;
_root.hud.reminder._visible = true;
_root.hud.reminder.cv = 0;
}
}
}
if (who._x < game.lef) {
who._x = game.lef;
}
if (who._x > game.rig) {
who._x = game.rig;
}
if (_root.hud.reminder._visible) {
_root.hud.reminder.cv++;
if (_root.hud.reminder.cv >= 100) {
_root.hud.reminder.cv = 0;
_root.hud.reminder._visible = false;
}
}
if (who.yvel > 0) {
while (game.bg.hitTest(who.virtx, who.virty, true)) {
who._y = who._y - 1;
who.virty = who.virty - 1;
who.yvel = 0;
if (who.jumping) {
if (who.dead) {
who.guts.gotoAndPlay("bounce");
runCircle();
who.xvel = 0;
}
who.jumping = false;
if (!who.attacking) {
who.anim = 3;
}
}
}
if (_root.gotboots) {
while (game.waterwalk.hitTest(who.virtx, who.virty, true)) {
who._y = who._y - 1;
who.virty = who.virty - 1;
who.yvel = 0;
if (who.jumping) {
if (who.dead) {
who.guts.gotoAndPlay("bounce");
runCircle();
who.xvel = 0;
}
who.jumping = false;
if (!who.attacking) {
who.anim = 3;
}
}
}
}
}
if (who.shielded) {
game.shield._x = who._x;
game.shield._y = who._y;
game.shield._xscale = who._xscale;
game.shield._yscale = who._yscale;
} else {
game.shield.unloadMovie();
game.shield.removeMovieClip();
}
}
function screenShake(amt) {
g = game.createEmptyMovieClip("shaker", 745);
g.rightt = true;
g.amt = amt;
g.onEnterFrame = function () {
if (this.rightt) {
this._parent.startoff = this.amt;
} else {
this._parent.startoff = -this.amt;
}
this.rightt = !this.rightt;
this.amt--;
if (this.amt == 0) {
this.startoff = 0;
delete this.onEnterFrame;
}
};
}
function centerOn(who) {
var _local2 = -1;
if (who._xscale == who.sc) {
_local2 = -1;
} else {
_local2 = 1;
}
game.goalx = (320 - who._x) + (100 * _local2);
game.fg._x = game._x * 0.7;
var _local4 = game.goalx - game._x;
game._x = game._x + ((_local4 / 8) + game.startoff);
game._y = 390 - who._y;
if (game._x > (-game.lef)) {
game._x = -game.lef;
}
if (game._x < ((-game.rig) + 640)) {
game._x = (-game.rig) + 640;
}
if (game._y < 0) {
game._y = 0;
}
game.farbg._x = -game._x;
game.farbg._y = -game._y;
game.flasher._x = -game._x;
game.flasher._y = -game._y;
if ((game.dude._y > 1000) && (!platended)) {
game.dude.dead = true;
_root.playLoudSound("ohno");
mapp = new Array(320, 240);
_root.onbridge = false;
_root.rightbridge = false;
platended = true;
numdeaths++;
endPlat();
}
}
function magAtk(who) {
var _local3 = maxmag * usemagarray[curmag];
if (_local3 <= magamt) {
magamt = magamt - _local3;
updateHUD(false, true);
who.magicking = true;
who.attacking = false;
flashIt();
goob = game.createEmptyMovieClip("goober", 32937);
goob.tim = 0;
goob.cv = 0;
goob.lim = 8;
goob.onEnterFrame = function () {
if ((!_root.platpause) && (!freeze)) {
this.tim++;
if ((this.tim > 8) && (this.tim < (10 + this.lim))) {
g = game.attachMovie("mball" + curmag, "ball" + this.cv, 88829 + this.cv);
this.cv++;
g._rotation = -90;
g._x = game.dude._x + ((game.dude._xscale / game.dude.sc) * -28);
g._y = game.dude._y - 100;
g._xscale = 50;
g._yscale = g._xscale;
g.xvel = random(80) - 40;
g.yvel = (random(5) + 5) * -5;
g.onEnterFrame = function () {
if ((!_root.platpause) && (!freeze)) {
this.xvel = this.xvel * 0.9;
this.yvel = this.yvel + this._parent.grav;
this._x = this._x + this.xvel;
if (this.yvel > 0) {
this.nexty = this._y + this.yvel;
while ((this._y < this.nexty) && (!this.hit)) {
this._y++;
this.virty++;
h = 0;
while (h < baddies.length) {
yin = baddies[h];
if (yin.hitTest(this.virtx, this.virty, true)) {
makeSplode(this._x, this._y);
this.hit = true;
this.removeMovieClip();
this.unloadMovie();
}
h++;
}
if (game.bg.hitTest(this.virtx, this.virty, true) || (this.virty > 480)) {
makeSplode(this._x, this._y);
this.hit = true;
this.removeMovieClip();
this.unloadMovie();
}
}
} else {
this._y = this._y + this.yvel;
}
}
this.ang = Math.atan2(this.yvel, this.xvel);
this.degs = Math.round((this.ang * 180) / Math.PI);
this._rotation = this.degs;
this.virtx = game._x + this._x;
this.virty = game._y + this._y;
};
}
if (this.tim >= (10 + this.lim)) {
delete this.onEnterFrame;
}
}
};
}
}
function magControls() {
magchooser = game.magchooser;
if (!Key.isDown(R)) {
rup = true;
}
if (Key.isDown(R) && (rup)) {
rup = false;
if (magchooser.rdy) {
magchooser.sel++;
if (magchooser.sel > (magchooser.nams.length - 1)) {
magchooser.sel = 0;
}
var _local2 = magchooser["c" + magchooser.sel];
magchooser.light._x = _local2._x;
magchooser.light._y = _local2._y;
if (spells[magchooser.sel]) {
magchooser.holder.msg.text = magchooser.nams[magchooser.sel];
} else {
magchooser.holder.msg.text = "NEED TO LEARN SPELL";
}
}
}
if (!Key.isDown(L)) {
lup = true;
}
if (Key.isDown(L) && (lup)) {
lup = false;
if (magchooser.rdy) {
magchooser.sel--;
if (magchooser.sel < 0) {
magchooser.sel = magchooser.nams.length - 1;
}
var _local2 = magchooser["c" + magchooser.sel];
magchooser.light._x = _local2._x;
magchooser.light._y = _local2._y;
if (spells[magchooser.sel]) {
magchooser.holder.msg.text = magchooser.nams[magchooser.sel];
} else {
magchooser.holder.msg.text = "NEED TO LEARN SPELL";
}
}
}
if (!Key.isDown(magbut)) {
game.dude.sup = true;
}
if (Key.isDown(magbut) && (game.dude.sup)) {
game.dude.sup = false;
exitMagThing();
}
if (!Key.isDown(atk)) {
aup = true;
}
if (Key.isDown(atk) && (aup)) {
aup = false;
game.dude.aup = false;
if (magchooser.rdy) {
cancelled = false;
if (magchooser.sel == 4) {
playLoudSound("nevermind");
var cancelled = true;
exitMagThing();
}
if (magchooser.sel == 3) {
if (_root.spells[3]) {
flashIt();
cancelled = true;
playLoudSound("fire");
playLoudSound("spell");
magFire(game.dude);
exitMagThing();
}
}
var _local3 = maxmag * usemagarray[curmag];
if ((_local3 <= magamt) && (spells[magchooser.sel])) {
if (magchooser.sel == 0) {
game.dude.anim = 8;
playLoudSound("attack");
magAtk(game.dude);
}
if (magchooser.sel == 2) {
game.dude.anim = 8;
playLoudSound("life");
magHeal(game.dude);
}
if (magchooser.sel == 1) {
game.dude.anim = 8;
playLoudSound("shield");
magShield(game.dude);
}
playLoudSound("spell");
exitMagThing();
} else if (!cancelled) {
playLoudSound("notenoughmagic");
}
}
}
}
function magHeal(who) {
flashIt();
var _local3 = maxmag * usemagarray[curmag];
magamt = magamt - _local3;
_root.curhp = _root.curhp + 35;
this._parent.dude.gotoAndPlay("flash");
this._parent.dude.glow = true;
updateHUD(false, true);
game.dude.aup = false;
}
function magFire(who) {
flashIt();
if (fireballson) {
var _local2 = 0;
while (_local2 < dfireballs.length) {
var _local3 = dfireballs[_local2];
_local3.unloadMovie();
_local3.removeMovieClip();
_local2++;
}
}
fireballson = !fireballson;
this._parent.dude.gotoAndPlay("flash");
this._parent.dude.glow = true;
updateHUD(false, true);
game.dude.aup = false;
}
function removeDBall(who) {
var _local1 = 0;
while (_local1 < dfireballs.length) {
var _local2 = dfireballs[_local1];
if (who == _local2) {
makeFireBallBurst(_local2._x, _local2._y);
dfireballs.splice(_local1, 1);
who.unloadMovie();
who.removeMovieClip();
}
_local1++;
}
}
function makeFireBallBurst(x, y) {
var _local1 = game.attachMovie("fireballburst", "fburst" + effcv, effcv + 7711);
effcv++;
_local1._x = x;
_local1._y = y;
_local1._xscale = 70;
_local1._yscale = _local1._xscale;
}
function moveDudeFireballs() {
var _local2 = 0;
while (_local2 < dfireballs.length) {
var _local1 = dfireballs[_local2];
_local1._x = _local1._x + _local1.xvel;
_local1.virtx = _local1._x + game._x;
_local1.virty = _local1._y + game._y;
chkSlash(_local1, false, true, _local1);
if ((_local1.virtx > 750) || (game.bg.hitTest(_local1.virtx, _local1.virty, true))) {
removeDBall(_local1);
}
_local2++;
}
}
function dudeFireball(who) {
var _local4 = 5 * usemagarray[curmag];
var _local5 = magamt - _local4;
if (_local5 > 0) {
playSound("fball0");
magamt = magamt - _local4;
updateHUD();
var _local1 = game.attachMovie("magfirewrap", "dball" + effcv, effcv + 778);
effcv++;
dfireballs.push(_local1);
var _local3 = who._xscale / who.sc;
_local1._x = who._x + (35 * _local3);
_local1._y = who._y - 25;
_local1._xscale = who.sc * 0.5;
_local1._yscale = _local1._xscale;
_local1._xscale = _local1._xscale * _local3;
_local1.xvel = 15 * _local3;
_local1.cacheAsBitmap = true;
_local1.guts.nam.text = "";
}
}
function magShield(who) {
flashIt();
var _local4 = maxmag * usemagarray[curmag];
magamt = magamt - _local4;
this._parent.dude.gotoAndPlay("flash");
this._parent.dude.glow = true;
var _local2 = this.game.attachMovie("shieldcover", "shield", 9911);
var _local3 = game.fg.getDepth();
if (_local3 <= 9911) {
game.fg.swapDepths(9912);
}
_local2._x = game.dude._x;
_local2._y = game.dude._y;
game.fg.swapDepths(9912);
_local2._xscale = game.dude._xscale;
_local2._yscale = game.dude._yscale;
game.dude.shielded = true;
updateHUD(false, true);
game.dude.aup = false;
}
function exitMagThing() {
var _local1 = 0;
while (_local1 < baddies.length) {
var _local2 = baddies[_local1];
if (_local2.troll) {
_local2.guts.play();
}
_local1++;
}
freeze = false;
var _local3 = game.dude;
_local3.xvel = 0;
_local3.attacking = false;
_local3.guts.gotoAndStop("rest");
if (Key.isDown(R) || (Key.isDown(L))) {
if (!game.boss.dead) {
_local3.guts.gotoAndPlay("walk");
}
}
game.magchooser.unloadMovie();
game.magchooser.removeMovieClip();
}
function runMagic(who) {
_root.playSound("gleam");
_root.playLoudSound("spelltime");
var _local2 = 0;
while (_local2 < baddies.length) {
var _local4 = baddies[_local2];
if (_local4.troll) {
_local4.guts.stop();
}
_local2++;
}
who.attacking = false;
freeze = true;
aup = true;
sup = true;
flashIt();
var _local3 = game.attachMovie("magchooser", "magchooser", 8872111);
_local3.rdy = false;
_local3._x = who._x;
_local3._y = who._y;
_local3.sel = 0;
_local3.ikes = new Array("magwrapping", "magshield", "maglife", "magfire", "magexit");
_local3.nams = new Array("MAGIC ATTACK", "MAGIC SHIELD", "RESTORE LIFE", "MAGIC FIREBALLS", "CANCEL & EXIT");
_local2 = 0;
while (_local2 < _local3.ikes.length) {
var _local6 = _local3["c" + _local2];
if (spells[_local2]) {
var _local5 = _local6.attachMovie(_local3.ikes[_local2], "guts", 0);
if (_local2 == 3) {
if (_root.fireballson) {
_local5.nam.text = "ON";
} else {
_local5.nam.text = "OFF";
}
}
} else {
_local6.attachMovie("magquestion", "guts", 0);
}
_local2++;
}
}
function makeSplode(x, y) {
playSound("splosion1");
spl = game.attachMovie("splode", "splosion" + spcv, 63726 + spcv);
spcv++;
spl._x = x;
spl._y = y;
spl.which = random(2);
if (spl.which == 0) {
spl._xscale = 100;
} else {
spl._xscale = -100;
}
}
function makeBSplode(x, y) {
playSound("splosion1");
spl = game.attachMovie("splode2", "splosion" + spcv, 63726 + spcv);
spcv++;
screenShake(10);
spl._x = x;
spl._y = y;
spl.which = random(2);
if (spl.which == 0) {
spl._xscale = 100;
} else {
spl._xscale = -100;
}
}
function endMagic(who) {
who.magicking = false;
if (!who.jumping) {
who.xvel = 0;
}
restAtk();
}
function controls(who) {
if (!who.dead) {
if ((!who.hit) && (!who.magicking)) {
if (Key.isDown(R)) {
if (!who.attacking) {
who.xvel = who.xvel + who.speed;
who._xscale = 1 * who.sc;
if ((!who.jumping) && (who.anim != 3)) {
who.anim = 1;
}
}
}
if (Key.isDown(L)) {
if (!who.attacking) {
who.xvel = who.xvel - who.speed;
who._xscale = -1 * who.sc;
if ((!who.jumping) && (who.anim != 3)) {
who.anim = 1;
}
}
}
if (!Key.isDown(U)) {
who.uup = true;
}
if (Key.isDown(U) && (who.uup)) {
who.uup = false;
if (((!who.jumping) && (who.anim != 3)) && (who.yvel < 15)) {
who.jumping = true;
if (!who.attacking) {
who.anim = 2;
}
who.yvel = -who.jumpht;
}
}
if ((Key.isDown(atk) && (!who.attacking)) && (who.aup)) {
if (fireballson) {
dudeFireball(who);
}
who.attacking = true;
who.anim = 3 + curatk;
var _local2 = curatk - 1;
playSound("swing" + _local2);
playSound("yell" + random(5));
curatk++;
if (curatk > 3) {
curatk = 1;
}
who.aup = false;
}
if (Key.isDown(atk)) {
who.aup = false;
} else {
who.aup = true;
}
if (((((!Key.isDown(R)) && (!Key.isDown(L))) && (!who.jumping)) && (who.anim != 3)) && (!who.attacking)) {
who.anim = 0;
}
if (!Key.isDown(magbut)) {
who.sup = true;
}
if (Key.isDown(magbut) && (who.sup)) {
who.sup = false;
runMagic(who);
who.anim = 9;
}
if (Key.isDown(magbut)) {
who.sup = false;
}
}
if (who.flashing) {
who.flashcv++;
who._visible = !who._visible;
if (who.flashcv >= 20) {
who.flashing = false;
who.flashcv = 0;
}
}
if (who.hit) {
who.anim = 7;
who.hitcv++;
if (who.hitcv >= 15) {
who.flashing = true;
resetAtk(who);
who.hit = false;
who.hitcv = 0;
}
}
if ((prevanim != who.anim) && (!who.nootheranims)) {
prevanim = who.anim;
switch (who.anim) {
case 0 :
who.guts.gotoAndPlay("rest");
break;
case 1 :
who.guts.gotoAndPlay("walk");
break;
case 2 :
who.guts.gotoAndPlay("jump");
break;
case 3 :
who.guts.gotoAndPlay("land");
break;
case 4 :
who.guts.gotoAndPlay("atk1");
break;
case 5 :
who.guts.gotoAndPlay("atk2");
break;
case 6 :
who.guts.gotoAndPlay("atk3");
break;
case 7 :
who.guts.gotoAndPlay("hit");
break;
case 8 :
who.guts.gotoAndPlay("magic");
break;
case 9 :
who.guts.gotoAndPlay("magchoose");
}
if (who.anim == 3) {
who.anim = 0;
prevanim = 0;
if (Key.isDown(R) || (Key.isDown(L))) {
prevanim = 1;
}
}
}
}
}
function resetAtk(who) {
who.attacking = false;
who.anim = 0;
prevanim = -1;
}
function endAttack(who) {
resetAtk(who);
who.guts.gotoAndPlay("rest");
}
function jumpRecover(who) {
if ((!_root.platpause) && (!freeze)) {
if (Key.isDown(R) || (Key.isDown(L))) {
who.guts.gotoAndPlay("walk");
} else {
who.guts.gotoAndPlay("rest");
}
}
}
runFade();
rocks = new Array();
moverocks = new Array();
noleave = false;
blacky = false;
wizardogot = false;
blacksmithgot = false;
wizardgot = false;
wordsup = false;
fireballson = false;
dfireballs = new Array();
freeze = false;
platended = false;
game.unloadMovie();
game.removeMovieClip();
baddies = new Array();
this.attachMovie(platlev, "game", 0);
game.dude.sc = game.dude._xscale;
game.fric = 0.6;
this.attachMovie("plat_hud", "hud", 983);
game.bg.cacheAsBitmap = true;
game.bg2.cacheAsBitmap = true;
game.farbg.cacheAsBitmap = true;
msgbox.unloadMovie();
msgbox.removeMovieClip();
effcv = 0;
platpause = false;
this.magbut = 83;
spcv = 0;
if (game.boss._x != undefined) {
game.bossbattle = true;
}
updateHUD();
spurts = new Array();
ballpointer = 0;
var locs = new Array();
locs[0] = -350;
locs[1] = -185;
locs[2] = 40;
locs[3] = 530;
locs[4] = 730;
locs[5] = 870;
locs[6] = 40;
locs[7] = 530;
locs[8] = 40;
locs[9] = 530;
locs[10] = 40;
locs[11] = 530;
atktimer = 100;
prevanim = 0;
curatk = 1;
game.startoff = 0;
game.dude.flashcv = 0;
game.dude.hitcv = 0;
game.dude.xvel = 0;
game.dude.yvel = 0;
game.dude.speed = 8;
game.dude.jumpht = 35;
game.dude.glowcv = 0;
game.dude.jumping = true;
game._x = 320 - game.dude._x;
game._y = 390 - game.dude._y;
if (game._x > (-game.lef)) {
game._x = -game.lef;
}
if (game._x < ((-game.rig) + 640)) {
game._x = (-game.rig) + 640;
}
if (game._y < 0) {
game._y = 0;
}
game.farbg._x = -game._x;
game.farbg._y = -game._y;
game.flasher._x = -game._x;
game.flasher._y = -game._y;
delete game.onEnterFrame;
delete this.onEnterFrame;
game.onEnterFrame = function () {
if (game.fric > 0.6) {
game.fric = 0.6;
}
if (!freeze) {
chkPause();
}
if ((!platpause) && (!freeze)) {
if (!game.dude.magicking) {
if (fireballson) {
moveDudeFireballs();
}
runSpurts();
phys(game.dude);
moveBads();
centerOn(game.dude);
}
controls(game.dude);
}
if (wordsup) {
chkContinue();
}
if (freeze) {
magControls();
}
};
Frame 7
stop();
inited = false;
_root.pastdungeon = false;
mapp = new Array(1620, -600);
stopAllSounds();
delete game.onEnterFrame;
delete this.onEnterFrame;
game.unloadMovie();
game.removeMovieClip();
hud.unloadMovie();
hud.removeMovieClip();
levelup.removeMovieClip();
levelup.unloadMovie();
Symbol 64 MovieClip Frame 1
function updateMe() {
m1.guts.stop();
m2.guts.stop();
m3.guts.stop();
m4.guts.stop();
m5.guts.stop();
i = 0;
while (i < 9) {
hid = eval ("m" + i);
hid._visible = false;
sho = eval ("m" + _root.curmag);
sho._visible = true;
i++;
}
}
updateMe();
Symbol 84 MovieClip [platweaponholder] Frame 1
_root.showSword(this);
Symbol 106 MovieClip [pausesign_guts] Frame 1
function updateMe() {
if (_root.museoff) {
mchk.chk._visible = false;
}
if (_root.sfxoff) {
schk.chk._visible = false;
}
var _local2 = new Color(masker);
_local2.setRGB(_root.armorarray[_root.curarmor]);
arm.text = "-" + _root.curarmor;
mag.text = "-" + _root.curmag;
sword.text = "-" + _root.cursword;
deaths.text = "-" + _root.numdeaths;
showSword(swordthing);
magthing.updateMe();
}
updateMe();
but_ag.onPress = function () {
getURL ("http://www.armorgames.com", "_blank");
};
mchk.onPress = function () {
if (this.chk._visible) {
this.chk._visible = false;
muse.text = "Off";
_root.museoff = true;
} else {
this.chk._visible = true;
muse.text = "On";
_root.museoff = false;
}
};
schk.onPress = function () {
if (this.chk._visible) {
this.chk._visible = false;
sfx.text = "Off";
_root.sfxoff = true;
} else {
this.chk._visible = true;
sfx.text = "On";
_root.sfxoff = false;
}
};
Symbol 116 MovieClip Frame 1
stop();
Symbol 161 MovieClip Frame 1
function freshMe() {
cul = new Color(col);
cul.setRGB(_root.armorarray[_root.curarmor]);
col.cacheAsBitmap = true;
col.setMask(masker);
col._alpha = 100;
}
if (!this.inited) {
freshMe();
this.inited = true;
}
Symbol 161 MovieClip Frame 16
gotoAndPlay ("rest");
Symbol 161 MovieClip Frame 32
gotoAndPlay ("walk");
Symbol 161 MovieClip Frame 36
stop();
Symbol 161 MovieClip Frame 41
_root.jumpRecover(this._parent);
Symbol 161 MovieClip Frame 44
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 45
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 47
_root.endAttack(this._parent);
stop();
Symbol 161 MovieClip Frame 50
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 51
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 53
_root.endAttack(this._parent);
stop();
Symbol 161 MovieClip Frame 55
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 56
_root.chkSlash(this.hitarea);
Symbol 161 MovieClip Frame 59
_root.endAttack(this._parent);
stop();
Symbol 161 MovieClip Frame 63
stop();
Symbol 161 MovieClip Frame 70
_root.screenShake(10);
Symbol 161 MovieClip Frame 83
_root.endMagic(this._parent);
gotoAndPlay ("rest");
Symbol 161 MovieClip Frame 91
stop();
Symbol 161 MovieClip Frame 96
stop();
Symbol 161 MovieClip Frame 97
gotoAndPlay (97);
Symbol 161 MovieClip Frame 98
gotoAndPlay (98);
Symbol 161 MovieClip Frame 99
gotoAndPlay (99);
Symbol 161 MovieClip Frame 111
_root.flashIt();
Symbol 161 MovieClip Frame 125
stop();
_root.runMap();
Symbol 161 MovieClip Frame 140
stop();
Symbol 162 MovieClip [platdude] Frame 1
stop();
Symbol 162 MovieClip [platdude] Frame 2
gotoAndPlay(_currentframe);
Symbol 162 MovieClip [platdude] Frame 3
gotoAndPlay(_currentframe);
Symbol 162 MovieClip [platdude] Frame 4
gotoAndPlay(_currentframe);
Symbol 162 MovieClip [platdude] Frame 5
gotoAndPlay(_currentframe);
Symbol 162 MovieClip [platdude] Frame 6
gotoAndPlay(_currentframe);
Symbol 171 MovieClip [clack] Frame 5
this.removeMovieClip();
this.unloadMovie();
stop();
Symbol 178 MovieClip [combonums] Frame 2
_root.addxp(this.num.txt);
Symbol 178 MovieClip [combonums] Frame 24
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 180 MovieClip [fader] Frame 13
stop();
_root.fadedIn();
Symbol 184 MovieClip [points] Frame 6
stop();
Symbol 185 MovieClip [spark] Frame 1
this.cacheAsBitmap = true;
Symbol 187 MovieClip [spark2] Frame 1
this.cacheAsBitmap = true;
Symbol 203 MovieClip [splode] Frame 1
_root.chkSlash(this.hitarea, true);
Symbol 203 MovieClip [splode] Frame 23
stop();
this.removeMovieClip();
this.unloadMovie();
Symbol 215 MovieClip [splode2] Frame 1
this.dam = 50;
_root.dudeHit(this, this.hitarea);
Symbol 215 MovieClip [splode2] Frame 23
stop();
this.removeMovieClip();
this.unloadMovie();
Symbol 261 MovieClip Frame 1
if (!this.inited) {
this._parent.xp = 3;
this._parent.hp = 10;
this._parent.typ = 0;
this._parent.dam = 20;
_root.addEnem(this._parent);
this.inited = true;
this.cols = new Array("0x0099FF", "0x00CC00", "0xFF9900", "0xFFFF00");
var mycol = cols[random(cols.length)];
var dacol = new Color(bgcol);
dacol.setRGB(mycol);
bgcol.setMask(msk);
bgcol.cacheAsBitmap = true;
eye.gotoAndPlay(random(30));
}
Symbol 261 MovieClip Frame 11
gotoAndPlay ("rest");
Symbol 261 MovieClip Frame 24
stop();
_root.removeBad(this._parent);
Symbol 286 MovieClip Frame 1
if (!this.inited) {
this._parent.xp = 6;
this._parent.hp = 14;
this._parent.typ = 1;
this._parent.dam = 35;
_root.addEnem(this._parent);
this.inited = true;
this.cols = new Array("0x0099FF", "0x00CC00", "0xFF9900", "0xFFFF00");
var mycol = cols[random(cols.length)];
var dacol = new Color(bgcol);
dacol.setRGB(mycol);
bgcol.setMask(msk);
bgcol.cacheAsBitmap = true;
}
Symbol 286 MovieClip Frame 9
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 286 MovieClip Frame 40
stop();
_root.removeBad(this._parent);
Symbol 303 MovieClip Frame 1
stop();
if (!this.inited) {
this._parent.xp = 8;
this._parent.hp = 5;
this._parent.typ = 2;
this._parent.dam = 35;
this._parent.groundimmune = true;
_root.addEnem(this._parent);
this.inited = true;
this.cols = new Array("0x0099FF", "0x00CC00", "0xFF9900", "0xFFFF00");
var mycol = cols[random(cols.length)];
var dacol = new Color(bgcol);
dacol.setRGB(mycol);
bgcol.setMask(msk);
bgcol.cacheAsBitmap = true;
}
Symbol 303 MovieClip Frame 27
stop();
_root.removeBad(this._parent);
Symbol 358 MovieClip Frame 1
if (!this.inited) {
this._parent.xp = 25;
this._parent.hp = 35;
this._parent.typ = 3;
this._parent.dam = 55;
_root.addEnem(this._parent);
this.inited = true;
this._parent.independent = true;
}
Symbol 358 MovieClip Frame 9
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 358 MovieClip Frame 14
_root.dudeHit(this._parent, box);
Symbol 358 MovieClip Frame 15
_root.dudeHit(this._parent, box);
Symbol 358 MovieClip Frame 16
_root.dudeHit(this._parent, box);
Symbol 358 MovieClip Frame 25
this._parent.attacking = false;
this._parent.walking = false;
this._parent.resting = false;
this._parent.aicv = random(25);
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 358 MovieClip Frame 36
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("walk");
}
Symbol 358 MovieClip Frame 71
stop();
_root.removeBad(this._parent);
Symbol 407 MovieClip [plat_hud] Frame 1
if (!this.inited) {
reminder._visible = false;
this.inited = true;
msg._visible = false;
cul = new Color(col);
cul.setRGB(_root.armorarray[_root.curarmor]);
col.cacheAsBitmap = true;
col.setMask(masker);
col._alpha = 100;
this.arm = "LEVEL - " + _root.curarmor;
this.mag = "LEVEL - " + _root.curmag;
this.att = "LEVEL - " + _root.cursword;
}
Symbol 410 MovieClip [knight0_axe] Frame 1
this.dam = 130;
Symbol 417 MovieClip [rock] Frame 1
stop();
this.dam = 75;
Symbol 417 MovieClip [rock] Frame 12
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 428 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 436 MovieClip [platlev0_0] Frame 1
this.lef = 0;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 437 MovieClip [platlev0_1] Frame 1
this.lef = -300;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 438 MovieClip [platlev0_2] Frame 1
this.lef = -300;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 461 MovieClip Frame 1
stop();
Symbol 462 MovieClip Frame 1
stop();
if (!this.inited) {
this.inited = true;
this.pointer = 1;
this.maxx = 14;
this.hitcv = 0;
}
Symbol 462 MovieClip Frame 2
gotoAndPlay(_currentframe);
Symbol 462 MovieClip Frame 3
gotoAndPlay(_currentframe);
Symbol 462 MovieClip Frame 4
gotoAndPlay(_currentframe);
Symbol 462 MovieClip Frame 5
gotoAndPlay(_currentframe);
Symbol 462 MovieClip Frame 6
gotoAndPlay(_currentframe);
Symbol 462 MovieClip Frame 7
gotoAndPlay(_currentframe);
Symbol 475 MovieClip Frame 1
stop();
Symbol 481 MovieClip Frame 1
stop();
Symbol 491 MovieClip Frame 1
if (!this.inited) {
this._parent.fireballcv = 0;
this.shield._visible = false;
this.shield.cv = 0;
this._parent.nam = "Demon Beast";
this._parent.aicv = 0;
this._parent.mod = 0;
this._parent.xp = 800;
this._parent.hp = 600;
this._parent.maxhp = this._parent.hp;
this._parent.weak = true;
this._parent.independent = true;
this._parent.groundimmune = true;
this._parent.typ = 97;
this._parent.dir = -1;
this._parent.ydir = -1;
this._parent.shielded = true;
this._parent.speed = 15;
this._parent.dam = 130;
this._parent.nomove = true;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
_root.updateHUD();
}
Symbol 491 MovieClip Frame 30
gotoAndPlay ("rest");
Symbol 491 MovieClip Frame 31
_root.playSound("splosion1");
_root.flashIt();
_root.setNoise(0);
Symbol 491 MovieClip Frame 32
_root.playLoudSound("raaar");
Symbol 491 MovieClip Frame 35
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 39
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 42
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 45
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 48
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 51
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 55
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 58
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 61
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 64
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 67
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 73
_root.reviveDemon();
Symbol 491 MovieClip Frame 85
stop();
this.lastframe = true;
this._parent.lastframe = true;
Symbol 491 MovieClip Frame 87
_root.setNoise(0);
Symbol 491 MovieClip Frame 89
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 91
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 93
_root.playSound("splosion1");
_root.flashIt();
Symbol 491 MovieClip Frame 120
stop();
var b = _root.attachMovie("blackout", "blacky", 9911102201);
b._alpha = 0;
b.onEnterFrame = function () {
if ((!_root.platpause) && (!_root.freeze)) {
this._alpha = this._alpha + 2;
if (this._alpha >= 100) {
delete this.onEnterFrame;
_root.runEnd();
this.unloadMovie();
this.removeMovieClip();
}
}
};
Symbol 491 MovieClip Frame 121
stop();
Symbol 492 MovieClip Frame 1
stop();
Symbol 495 MovieClip [platlev0_97] Frame 1
this.lef = -250;
this.rig = 900;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("finalboss");
Symbol 501 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 502 MovieClip [platlev1_0] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 503 MovieClip [platlev1_1] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 508 MovieClip Frame 1
if (!this.inited) {
this.inited = true;
var ran = random(8);
this.gotoAndPlay(ran);
}
Symbol 546 MovieClip Frame 1
stop();
Symbol 546 MovieClip Frame 2
_root.giveSpell(4);
Symbol 547 MovieClip Frame 1
this.fairy = true;
if (_root.gotfairy) {
this._visible = false;
}
Symbol 552 MovieClip [platlev0_194] Frame 1
this.lef = 0;
this.rig = 1300;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("ssmellow");
Symbol 582 MovieClip Frame 23
_root.giveSpell(3);
Symbol 582 MovieClip Frame 51
this._parent.gotoAndStop("rest");
stop();
Symbol 583 MovieClip Frame 1
stop();
Symbol 586 MovieClip Frame 1
stop();
Symbol 590 MovieClip [platlev1_195] Frame 1
this.lef = -400;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonrelaxed");
Symbol 600 MovieClip Frame 23
_root.giveSpell(2);
Symbol 600 MovieClip Frame 51
this._parent.gotoAndStop("rest");
stop();
Symbol 601 MovieClip Frame 1
stop();
Symbol 602 MovieClip Frame 1
stop();
Symbol 603 MovieClip [platlev1_196] Frame 1
this.lef = -400;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("ssmellow");
Symbol 633 MovieClip Frame 2
_root.giveSpell(1);
Symbol 633 MovieClip Frame 12
this._parent.gotoAndStop("rest");
Symbol 639 MovieClip Frame 1
stop();
if (_root.deliveredwood) {
gotoAndStop ("happy");
}
Symbol 640 MovieClip Frame 1
stop();
Symbol 646 MovieClip Frame 13
_root.giveSpell(1, true);
Symbol 646 MovieClip Frame 41
this._parent.gotoAndStop("rest");
stop();
Symbol 647 MovieClip Frame 1
stop();
Symbol 648 MovieClip Frame 1
stop();
Symbol 649 MovieClip [platlev2_197] Frame 1
this.lef = 0;
this.rig = 1000;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("ssmellow");
Symbol 669 MovieClip Frame 20
stop();
_root.blacksmithGive();
Symbol 670 MovieClip Frame 18
this._parent.gotoAndStop("rest2");
Symbol 672 MovieClip Frame 1
stop();
if (_root.gotaxe) {
gotoAndStop ("rest2");
}
Symbol 676 MovieClip [platlev0_198] Frame 1
this.lef = 0;
this.rig = 1100;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
if (!_root.gotfairy) {
fair._visible = false;
}
_root.runMusic("ssmellow");
Symbol 677 MovieClip [platlev1_2] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 679 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 680 MovieClip [platlev1_3] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonbattle");
Symbol 686 MovieClip Frame 11
gotoAndPlay(this._currentframe + random(30));
Symbol 705 MovieClip Frame 20
stop();
Symbol 707 MovieClip Frame 1
stop();
if (!this._parent.inited) {
this._parent.web = this._parent._parent.createEmptyMovieClip("web" + _root.effcv, _root.effcv + 67781);
_root.effcv++;
_root.game.fg.swapDepths(_root.effcv + 67781);
_root.effcv++;
this._parent.xhome = this._parent._x;
this._parent.upamt = 20 + random(40);
this._parent.downamt = 20 + random(40);
if (_root.indungeon) {
this._parent.hp = 40;
this._parent.xp = 35;
} else {
this._parent.xp = 10;
this._parent.hp = 8;
}
this._parent.typ = 4;
this._parent.dam = 65;
_root.addEnem(this._parent);
this._parent.inited = true;
this._parent.nomove = true;
this._parent.home = this._parent._y;
this._parent.independent = true;
this._parent.groundimmune = true;
}
Symbol 707 MovieClip Frame 19
stop();
_root.removeBad(this._parent);
Symbol 708 MovieClip Frame 1
stop();
Symbol 709 MovieClip [platlev1_4] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonbattle");
Symbol 714 MovieClip Frame 1
stop();
Symbol 751 MovieClip Frame 1
if (!this._parent.inited) {
this._parent.troll = true;
this._parent.xp = 75;
this._parent.hp = 150;
this._parent.typ = 5;
this._parent.dam = 65;
_root.addEnem(this._parent);
this._parent.inited = true;
this._parent.nomove = true;
this._parent.independent = true;
this._parent.groundimmune = true;
}
Symbol 751 MovieClip Frame 21
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 41
_root.dudeHit(this._parent, box);
Symbol 751 MovieClip Frame 42
_root.dudeHit(this._parent, box);
Symbol 751 MovieClip Frame 43
_root.dudeHit(this._parent, box);
Symbol 751 MovieClip Frame 61
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 62
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 63
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 64
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 65
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 66
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 67
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 751 MovieClip Frame 91
stop();
_root.removeBad(this._parent);
Symbol 752 MovieClip Frame 1
stop();
Symbol 753 MovieClip [platlev1_5] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonbattle");
Symbol 755 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 771 MovieClip Frame 9
stop();
Symbol 772 MovieClip Frame 1
if (!this._parent._parent.comp.stuck) {
eyes._visible = false;
} else if (!eyes._visible) {
eyes._visible = true;
eyes.gotoAndPlay(1);
}
Symbol 783 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 13
_root.playSound("splosion1");
_root.flashIt();
Symbol 783 MovieClip Frame 15
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 17
_root.playSound("splosion1");
Symbol 783 MovieClip Frame 24
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 783 MovieClip Frame 26
stop();
Symbol 783 MovieClip Frame 27
stop();
Symbol 783 MovieClip Frame 28
stop();
Symbol 783 MovieClip Frame 29
stop();
Symbol 783 MovieClip Frame 30
stop();
Symbol 783 MovieClip Frame 31
stop();
Symbol 783 MovieClip Frame 32
stop();
Symbol 783 MovieClip Frame 33
stop();
Symbol 783 MovieClip Frame 34
stop();
Symbol 783 MovieClip Frame 35
stop();
Symbol 789 MovieClip Frame 2
_root.playSound("gleam");
Symbol 789 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 789 MovieClip Frame 32
stop();
Symbol 790 MovieClip Frame 1
if (!this.inited) {
this._parent.nam = "Red Knight";
this._parent.aicv = 0;
this._parent.mod = 0;
this._parent.xp = 400;
this._parent.gotaxe = true;
this._parent.hp = 850;
this._parent.maxhp = this._parent.hp;
this._parent.typ = 500;
this._parent.dam = 130;
this._parent.nomove = true;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
_root.updateHUD();
}
Symbol 790 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 790 MovieClip Frame 30
if (!this._parent.dead) {
_root.dudeHit(this._parent, axe.hitarea);
_root.dudeHit(this._parent, axe.hitarea1);
_root.dudeHit(this._parent, axe.hitarea2);
_root.dudeHit(this._parent, axe.hitarea3);
_root.screenShake(10);
}
Symbol 790 MovieClip Frame 47
if (!this._parent.dead) {
_root.knight0AtkEnd(this._parent);
gotoAndPlay ("rest");
}
Symbol 790 MovieClip Frame 55
if (!this._parent.dead) {
_root.tossAxe(this._parent);
}
Symbol 790 MovieClip Frame 84
if (!this._parent.dead) {
gotoAndPlay ("rest2");
}
Symbol 790 MovieClip Frame 97
if (!this._parent.dead) {
gotoAndPlay ("walk");
}
Symbol 790 MovieClip Frame 110
if (!this._parent.dead) {
_root.retrieveAxe(this._parent);
gotoAndPlay ("rest");
}
Symbol 790 MovieClip Frame 112
_root.setNoise(0);
this._parent.gotaxe = false;
_root.updateHUD();
Symbol 790 MovieClip Frame 113
Symbol 790 MovieClip Frame 114
stop();
Symbol 790 MovieClip Frame 115
stop();
Symbol 790 MovieClip Frame 116
stop();
Symbol 790 MovieClip Frame 117
stop();
Symbol 790 MovieClip Frame 118
stop();
Symbol 790 MovieClip Frame 119
stop();
Symbol 790 MovieClip Frame 120
stop();
Symbol 790 MovieClip Frame 121
stop();
Symbol 791 MovieClip Frame 1
stop();
Symbol 793 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 795 MovieClip [platlev1_500] Frame 1
this.lef = -200;
this.rig = 1000;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonboss");
Symbol 821 MovieClip Frame 19
stop();
Symbol 825 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 16
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 825 MovieClip Frame 20
_root.playSound("splosion1");
_root.flashIt();
Symbol 825 MovieClip Frame 25
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 825 MovieClip Frame 26
stop();
Symbol 825 MovieClip Frame 27
stop();
Symbol 825 MovieClip Frame 28
stop();
Symbol 825 MovieClip Frame 29
stop();
Symbol 825 MovieClip Frame 30
stop();
Symbol 825 MovieClip Frame 31
stop();
Symbol 825 MovieClip Frame 32
stop();
Symbol 825 MovieClip Frame 33
stop();
Symbol 825 MovieClip Frame 34
stop();
Symbol 825 MovieClip Frame 35
stop();
Symbol 826 MovieClip Frame 2
_root.playSound("gleam");
Symbol 826 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 826 MovieClip Frame 32
stop();
Symbol 827 MovieClip Frame 1
if (!this.inited) {
this._parent.spindist = 42;
this._parent.gox = 0;
this._parent.nam = "Purple Knight";
this._parent.aicv = 0;
this._parent.mod = 0;
this._parent.xp = 400;
this._parent.hp = 725;
this._parent.maxhp = this._parent.hp;
this._parent.topdir = -1;
this._parent.typ = 501;
this._parent.dam = 130;
this._parent.nomove = true;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
_root.updateHUD();
}
Symbol 827 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
} else {
stop();
}
Symbol 827 MovieClip Frame 21
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 827 MovieClip Frame 22
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 827 MovieClip Frame 31
this._parent.ready = true;
Symbol 827 MovieClip Frame 32
stop();
Symbol 827 MovieClip Frame 60
if (!this._parent.dead) {
gotoAndPlay ("dizzy");
}
Symbol 827 MovieClip Frame 61
if ((!_root.platpause) && (!this._parent.dead)) {
gotoAndPlay ("dizzy");
}
Symbol 827 MovieClip Frame 62
if ((!_root.platpause) && (!this._parent.dead)) {
gotoAndPlay ("dizzy");
}
Symbol 827 MovieClip Frame 71
_root.dudeHit(this._parent, box);
Symbol 827 MovieClip Frame 72
_root.dudeHit(this._parent, box);
Symbol 827 MovieClip Frame 73
_root.dudeHit(this._parent, box);
Symbol 827 MovieClip Frame 76
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 827 MovieClip Frame 77
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 827 MovieClip Frame 78
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 827 MovieClip Frame 80
_root.setNoise(0);
_root.updateHUD();
Symbol 828 MovieClip Frame 1
stop();
Symbol 844 MovieClip Frame 4
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 5
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 7
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 9
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 11
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 13
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 15
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 17
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 19
_root.dudeHit(this._parent._parent, box);
Symbol 844 MovieClip Frame 31
_root.endSpurt(this._parent._parent);
Symbol 845 MovieClip Frame 1
stop();
Symbol 846 MovieClip Frame 1
stop();
if (!this.inited) {
this.inited = true;
_root.addFireSpurt(this);
this.dam = 70;
}
Symbol 846 MovieClip Frame 9
_root.shootSpurt(this);
Symbol 847 MovieClip [platlev1_501] Frame 1
this.lef = -300;
this.rig = 910;
this.fric = 0.6;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonboss");
Symbol 852 MovieClip Frame 1
this.cv = 0;
this.dir = random(2);
if (this.dir == 0) {
this.dir = -1;
}
Symbol 871 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 16
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 871 MovieClip Frame 20
_root.playSound("splosion1");
_root.flashIt();
Symbol 871 MovieClip Frame 25
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 871 MovieClip Frame 26
stop();
Symbol 871 MovieClip Frame 27
stop();
Symbol 871 MovieClip Frame 28
stop();
Symbol 871 MovieClip Frame 29
stop();
Symbol 871 MovieClip Frame 30
stop();
Symbol 871 MovieClip Frame 31
stop();
Symbol 871 MovieClip Frame 32
stop();
Symbol 871 MovieClip Frame 33
stop();
Symbol 871 MovieClip Frame 34
stop();
Symbol 871 MovieClip Frame 35
stop();
Symbol 872 MovieClip Frame 2
_root.playSound("gleam");
Symbol 872 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 872 MovieClip Frame 32
stop();
Symbol 873 MovieClip Frame 1
if (!this.inited) {
this._parent.dir = -1;
this._parent.nam = "Green Knight";
this._parent.aicv = 0;
this._parent.mod = 0;
this._parent.xp = 400;
this._parent.hp = 1100;
this._parent.maxhp = this._parent.hp;
this._parent.typ = 502;
this._parent.dam = 130;
this._parent.nomove = true;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
_root.updateHUD();
}
Symbol 873 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 873 MovieClip Frame 35
if (!this._parent.dead) {
gotoAndPlay ("walk");
}
Symbol 873 MovieClip Frame 41
_root.dudeHit(this._parent, box);
Symbol 873 MovieClip Frame 42
_root.dudeHit(this._parent, box);
Symbol 873 MovieClip Frame 43
_root.dudeHit(this._parent, box);
Symbol 873 MovieClip Frame 47
if (!this._parent.dead) {
this._parent.attacking = false;
gotoAndPlay ("rest");
}
Symbol 873 MovieClip Frame 75
_root.setNoise(0);
_root.updateHUD();
Symbol 874 MovieClip Frame 1
stop();
Symbol 875 MovieClip [platlev1_502] Frame 1
this.lef = -400;
this.rig = 1500;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("dungeonboss");
Symbol 877 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 878 MovieClip [platlev2_0] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 879 MovieClip [platlev2_1] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 880 MovieClip [platlev2_2] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 884 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 924 MovieClip Frame 40
_root.addBossBall();
Symbol 942 MovieClip Frame 1
_root.grabBall();
Symbol 942 MovieClip Frame 4
_root.playSound("swing" + random(3));
Symbol 942 MovieClip Frame 7
_root.ballBomb();
_root.dudeHit(this._parent._parent, block1);
_root.dudeHit(this._parent._parent, block2);
Symbol 955 MovieClip Frame 3
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 6
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 8
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 12
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 20
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 23
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 25
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 27
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 29
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 35
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 37
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 38
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 40
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 42
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 44
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 46
_root.playSound("splosion1");
Symbol 955 MovieClip Frame 52
_root.playSound("lasersplode");
_root.flashIt();
Symbol 955 MovieClip Frame 70
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 955 MovieClip Frame 71
stop();
Symbol 955 MovieClip Frame 72
stop();
Symbol 955 MovieClip Frame 73
stop();
Symbol 955 MovieClip Frame 74
stop();
Symbol 955 MovieClip Frame 75
stop();
Symbol 955 MovieClip Frame 76
stop();
Symbol 955 MovieClip Frame 77
stop();
Symbol 955 MovieClip Frame 78
stop();
Symbol 955 MovieClip Frame 79
stop();
Symbol 955 MovieClip Frame 80
stop();
Symbol 955 MovieClip Frame 81
stop();
Symbol 955 MovieClip Frame 82
stop();
Symbol 955 MovieClip Frame 83
stop();
Symbol 955 MovieClip Frame 84
stop();
Symbol 955 MovieClip Frame 85
stop();
Symbol 955 MovieClip Frame 86
stop();
Symbol 955 MovieClip Frame 87
stop();
Symbol 955 MovieClip Frame 88
stop();
Symbol 955 MovieClip Frame 89
stop();
Symbol 955 MovieClip Frame 90
stop();
Symbol 955 MovieClip Frame 91
stop();
Symbol 955 MovieClip Frame 92
stop();
Symbol 955 MovieClip Frame 93
stop();
Symbol 955 MovieClip Frame 94
stop();
Symbol 955 MovieClip Frame 95
stop();
Symbol 955 MovieClip Frame 96
stop();
Symbol 955 MovieClip Frame 97
stop();
Symbol 955 MovieClip Frame 98
stop();
Symbol 955 MovieClip Frame 99
stop();
Symbol 955 MovieClip Frame 100
stop();
Symbol 955 MovieClip Frame 101
stop();
Symbol 955 MovieClip Frame 102
stop();
Symbol 955 MovieClip Frame 103
stop();
Symbol 955 MovieClip Frame 104
stop();
Symbol 955 MovieClip Frame 105
stop();
Symbol 955 MovieClip Frame 106
stop();
Symbol 955 MovieClip Frame 107
stop();
Symbol 955 MovieClip Frame 108
stop();
Symbol 955 MovieClip Frame 109
stop();
Symbol 955 MovieClip Frame 110
stop();
Symbol 955 MovieClip Frame 111
stop();
Symbol 955 MovieClip Frame 112
stop();
Symbol 955 MovieClip Frame 113
stop();
Symbol 955 MovieClip Frame 114
stop();
Symbol 955 MovieClip Frame 115
stop();
Symbol 955 MovieClip Frame 116
stop();
Symbol 955 MovieClip Frame 117
stop();
Symbol 955 MovieClip Frame 118
stop();
Symbol 955 MovieClip Frame 119
stop();
Symbol 955 MovieClip Frame 120
stop();
Symbol 955 MovieClip Frame 121
stop();
Symbol 955 MovieClip Frame 122
stop();
Symbol 955 MovieClip Frame 123
stop();
Symbol 955 MovieClip Frame 124
stop();
Symbol 955 MovieClip Frame 125
stop();
Symbol 955 MovieClip Frame 126
stop();
Symbol 955 MovieClip Frame 127
stop();
Symbol 955 MovieClip Frame 128
stop();
Symbol 959 MovieClip Frame 2
_root.playSound("gleam");
Symbol 959 MovieClip Frame 37
stop();
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 960 MovieClip Frame 1
stop();
if (!this.inited) {
this.lastframe = true;
this._parent.nam = "CANYON BEAST";
this._parent.aicv = 0;
this._parent.mod = 0;
this._parent.numballs = 0;
this._parent.xp = 200;
this._parent.hp = 150;
this._parent.maxhp = this._parent.hp;
this._parent.typ = 99;
this._parent.dam = 50;
this._parent.nomove = true;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
_root.updateHUD();
}
Symbol 960 MovieClip Frame 4
stop();
_root.playLoudSound("raaar");
_root.setNoise(0);
Symbol 961 MovieClip Frame 1
stop();
Symbol 962 MovieClip [platlev2_99] Frame 1
this.lef = -600;
this.rig = 1300;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
var i = 0;
while (i < 3) {
var tar = eval ("boss.ball" + i);
tar._visible = false;
i++;
}
_root.runMusic("otherbosses");
Symbol 964 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 974 MovieClip Frame 1
this.lastframe = false;
Symbol 974 MovieClip Frame 10
_root.dragonBall(aimer);
Symbol 974 MovieClip Frame 18
_root.dragonBall(aimer);
Symbol 974 MovieClip Frame 25
_root.dragonBall(aimer);
Symbol 974 MovieClip Frame 110
stop();
this.lastframe = true;
_root.dragonBallStop();
Symbol 975 MovieClip Frame 1
stop();
Symbol 988 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 5
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 9
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 11
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 13
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 22
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 24
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 26
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 28
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 30
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 38
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 39
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 41
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 43
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 45
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 47
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 54
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 56
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 58
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 60
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 62
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 64
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 66
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 68
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 70
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 72
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 74
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 76
_root.playSound("splosion1");
Symbol 988 MovieClip Frame 83
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 988 MovieClip Frame 84
stop();
Symbol 988 MovieClip Frame 85
stop();
Symbol 988 MovieClip Frame 86
stop();
Symbol 988 MovieClip Frame 87
stop();
Symbol 988 MovieClip Frame 88
stop();
Symbol 988 MovieClip Frame 89
stop();
Symbol 988 MovieClip Frame 90
stop();
Symbol 988 MovieClip Frame 91
stop();
Symbol 988 MovieClip Frame 92
stop();
Symbol 988 MovieClip Frame 93
stop();
Symbol 988 MovieClip Frame 94
stop();
Symbol 988 MovieClip Frame 95
stop();
Symbol 988 MovieClip Frame 96
stop();
Symbol 988 MovieClip Frame 97
stop();
Symbol 988 MovieClip Frame 98
stop();
Symbol 988 MovieClip Frame 99
stop();
Symbol 988 MovieClip Frame 100
stop();
Symbol 988 MovieClip Frame 101
stop();
Symbol 988 MovieClip Frame 102
stop();
Symbol 988 MovieClip Frame 103
stop();
Symbol 988 MovieClip Frame 104
stop();
Symbol 988 MovieClip Frame 105
stop();
Symbol 988 MovieClip Frame 106
stop();
Symbol 988 MovieClip Frame 107
stop();
Symbol 988 MovieClip Frame 108
stop();
Symbol 988 MovieClip Frame 109
stop();
Symbol 988 MovieClip Frame 110
stop();
Symbol 988 MovieClip Frame 111
stop();
Symbol 988 MovieClip Frame 112
stop();
Symbol 991 MovieClip Frame 2
_root.playSound("gleam");
Symbol 991 MovieClip Frame 37
stop();
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 991 MovieClip Frame 38
stop();
Symbol 991 MovieClip Frame 39
stop();
Symbol 991 MovieClip Frame 40
stop();
Symbol 991 MovieClip Frame 41
stop();
Symbol 991 MovieClip Frame 42
stop();
Symbol 991 MovieClip Frame 43
stop();
Symbol 991 MovieClip Frame 44
stop();
Symbol 991 MovieClip Frame 45
stop();
Symbol 991 MovieClip Frame 46
stop();
Symbol 991 MovieClip Frame 47
stop();
Symbol 991 MovieClip Frame 48
stop();
Symbol 991 MovieClip Frame 49
stop();
Symbol 991 MovieClip Frame 50
stop();
Symbol 991 MovieClip Frame 51
stop();
Symbol 991 MovieClip Frame 52
stop();
Symbol 991 MovieClip Frame 53
stop();
Symbol 991 MovieClip Frame 54
stop();
Symbol 991 MovieClip Frame 55
stop();
Symbol 991 MovieClip Frame 56
stop();
Symbol 991 MovieClip Frame 57
stop();
Symbol 991 MovieClip Frame 58
stop();
Symbol 991 MovieClip Frame 59
stop();
Symbol 991 MovieClip Frame 60
stop();
Symbol 991 MovieClip Frame 61
stop();
Symbol 991 MovieClip Frame 62
stop();
Symbol 991 MovieClip Frame 63
stop();
Symbol 991 MovieClip Frame 64
stop();
Symbol 991 MovieClip Frame 65
stop();
Symbol 992 MovieClip Frame 1
this.lastframe = false;
if (!this.inited) {
this._parent._x = 110;
this._parent.nam = "ISLAND BEAST";
this._parent.aicv = 0;
this._parent.xp = 200;
this._parent.hp = 350;
this._parent.maxhp = this._parent.hp;
this._parent.typ = 98;
this._parent.dam = 70;
this._parent.boss = true;
_root.addEnem(this._parent);
this.inited = true;
this._parent.groundimmune = true;
this._parent.nomove = true;
_root.updateHUD();
}
Symbol 992 MovieClip Frame 15
stop();
this.lastframe = true;
_root.dragonUp();
Symbol 992 MovieClip Frame 16
this.lastframe = false;
Symbol 992 MovieClip Frame 40
_root.dragonDown();
this.lastframe = true;
stop();
Symbol 992 MovieClip Frame 41
this.lastframe = true;
_root.playLoudSound("raaar");
_root.setNoise(0);
Symbol 992 MovieClip Frame 42
this.lastframe = true;
stop();
Symbol 992 MovieClip Frame 43
stop();
Symbol 993 MovieClip Frame 1
stop();
Symbol 995 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 996 MovieClip [platlev2_98] Frame 1
this.lef = -600;
this.rig = 1300;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
var i = 0;
while (i < 3) {
var tar = eval ("boss.ball" + i);
tar._visible = false;
i++;
}
_root.runMusic("otherbosses");
Symbol 997 MovieClip [platlev3_0] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 1000 MovieClip [platlev3_1] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 1001 MovieClip [platlev3_2] Frame 1
this.lef = -200;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("owbattle");
Symbol 1010 MovieClip [platlev3_3] Frame 1
this.lef = -200;
this.rig = 2100;
this.fric = 0.7;
this.grav = 3.5;
flasher._alpha = 0;
if (_root.rightbridge) {
dude._x = 2050;
}
this._x = (-dude._x) + 320;
_root.runMusic("owbattle");
Symbol 1031 MovieClip Frame 1
function freshMe() {
_root.showSword(swordholder);
magholder.updateMe();
this.curxp = "XP: " + _root.xp;
this.atk = _root.attackprogression[_root.cursword];
this.mg = _root.magicprogression[_root.curmag];
this.am = _root.armorprogression[_root.curarmor];
this.tim = 0;
vals = new Array();
vals[3] = this.atk;
vals[2] = this.mg;
vals[1] = this.am;
var _local3 = 0;
n = 0;
while (n < vals.length) {
if (vals[n] > _local3) {
_local3 = vals[n];
}
n++;
}
if (_root.xp < _local3) {
vals[0] = 0;
} else {
vals[0] = 999999 /* 0x0F423F */;
}
this.locs = new Array(385, 308, 229, 151);
j = 0;
while (j < vals.length) {
danum = vals[j];
if (danum <= _root.nextxp) {
this.curloc = j;
this.exempt = j;
}
j++;
}
this.upup = false;
this.dup = false;
this.aup = false;
switchBar(this.curloc);
cul = new Color(col);
cul.setRGB(_root.armorarray[_root.curarmor]);
col.cacheAsBitmap = true;
col.setMask(masker);
col._alpha = 100;
this.arm = "LEVEL - " + _root.curarmor;
this.mag = "LEVEL - " + _root.curmag;
this.att = "LEVEL - " + _root.cursword;
}
function switchBar(num) {
arr._y = this.locs[num];
}
function runSelect() {
if (curloc == 1) {
if (_root.curarmor < 8) {
_root.curhp = _root.maxhp;
var _local3 = _root.armorprogression;
_root.xp = _root.xp - _local3[_root.curarmor];
_root.curarmor++;
}
}
if (curloc == 2) {
if (_root.curmag < 8) {
_root.magamt = _root.maxmag;
var _local3 = _root.magicprogression;
_root.xp = _root.xp - _local3[_root.curmag];
_root.curmag++;
}
}
if (curloc == 3) {
if (_root.cursword < 8) {
var _local3 = _root.attackprogression;
_root.xp = _root.xp - _local3[_root.cursword];
_root.cursword++;
}
}
if (curloc == 0) {
_root.nextpointer++;
if (_root.nextpointer > 2) {
_root.nextpointer = 0;
}
} else {
var _local2 = 999999 /* 0x0F423F */;
if (_root.attackprogression[_root.cursword] < _local2) {
_root.nextpointer = 2;
_local2 = _root.attackprogression[_root.cursword];
}
if (_root.magicprogression[_root.curmag] < _local2) {
_root.nextpointer = 1;
_local2 = _root.magicprogression[_root.curmag];
}
if (_root.armorprogression[_root.curarmor] < _local2) {
_root.nextpointer = 0;
_local2 = _root.armorprogression[_root.curarmor];
}
}
_root.getNextThing();
_root.game.dude.guts.freshMe();
var _local2 = 999999 /* 0x0F423F */;
if (_root.attackprogression[_root.cursword] < _local2) {
_local2 = _root.attackprogression[_root.cursword];
}
if (_root.magicprogression[_root.curmag] < _local2) {
_local2 = _root.magicprogression[_root.curmag];
}
if (_root.armorprogression[_root.curarmor] < _local2) {
_local2 = _root.armorprogression[_root.curarmor];
}
if ((_root.xp < _local2) || (curloc == 0)) {
if (curloc == 0) {
_root.playLoudSound("nevermind");
} else {
var _local4 = random(10);
_root.playLoudSound("exclaim" + _local4);
}
_root.endLevelup();
} else {
var _local4 = random(10);
_root.playLoudSound("exclaim" + _local4);
freshMe();
}
}
if (!this.inited) {
freshMe();
this.inited = true;
}
this.onEnterFrame = function () {
if (this.tim > 8) {
if (!Key.isDown(38)) {
this.upup = true;
}
if (Key.isDown(38) && (this.upup)) {
this.upup = false;
foundit = false;
while (!foundit) {
this.curloc++;
if (this.curloc >= this.locs.length) {
this.curloc = 0;
}
if (vals[curloc] <= _root.xp) {
foundit = true;
}
}
switchBar(this.curloc);
}
if (!Key.isDown(40)) {
this.dup = true;
}
if (Key.isDown(40) && (this.dup)) {
this.dup = false;
foundit = false;
while (!foundit) {
this.curloc--;
if (this.curloc < 0) {
this.curloc = this.locs.length - 1;
}
if (vals[curloc] <= _root.xp) {
foundit = true;
}
}
switchBar(this.curloc);
}
if (!Key.isDown(65)) {
this.aup = true;
}
if (Key.isDown(65) && (this.aup)) {
this.aup = false;
runSelect();
}
} else {
this.tim++;
}
};
Symbol 1032 MovieClip [levelup] Frame 2
_root.setNoise(10);
Symbol 1032 MovieClip [levelup] Frame 6
_root.playLoudSound("levelup1");
Symbol 1032 MovieClip [levelup] Frame 23
stop();
Symbol 1038 MovieClip [fireballburst] Frame 6
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1047 MovieClip [magchooser] Frame 12
stop();
this.rdy = true;
Symbol 1070 MovieClip [boss0] Frame 40
gotoAndPlay (1);
Symbol 1076 MovieClip [boss1] Frame 40
gotoAndPlay (1);
Symbol 1080 MovieClip [boss2] Frame 1
if (!this.inited) {
this.inited = true;
this._xscale = 85;
this._yscale = this._xscale;
}
Symbol 1080 MovieClip [boss2] Frame 40
gotoAndPlay (1);
Symbol 1088 MovieClip [dungeon0] Frame 1
this._xscale = 70;
this._yscale = this._xscale;
Symbol 1091 MovieClip [footprint] Frame 25
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1100 MovieClip [groundpoof] Frame 17
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1112 MovieClip Frame 1
Symbol 1118 MovieClip Frame 1
_root.colorMe(this);
Symbol 1125 MovieClip Frame 1
Symbol 1132 MovieClip Frame 1
_root.colorMe(this);
Symbol 1140 MovieClip Frame 1
_root.colorMe(this);
Symbol 1143 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1143 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1144 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1144 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1145 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1145 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1146 MovieClip Frame 1
stop();
Symbol 1154 MovieClip [map_enemy0] Frame 1
this.temp = 0;
Symbol 1161 MovieClip [map_enemy1] Frame 1
this.temp = 1;
Symbol 1168 MovieClip [map_enemy2] Frame 1
this.temp = 2;
Symbol 1170 MovieClip [map_enemy3] Frame 1
this.temp = 1;
Symbol 1172 MovieClip [map_enemy4] Frame 1
this.temp = 1;
Symbol 1174 MovieClip [map_enemy5] Frame 1
this.temp = 1;
Symbol 1195 MovieClip [treesplode] Frame 24
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1200 MovieClip [watersplash] Frame 9
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1239 MovieClip [plat_heart] Frame 7
stop();
Symbol 1250 MovieClip Frame 17
_root.giveSpell(0);
Symbol 1250 MovieClip Frame 45
this._parent.gotoAndStop("rest");
stop();
Symbol 1251 MovieClip Frame 1
stop();
Symbol 1252 MovieClip Frame 1
stop();
Symbol 1253 MovieClip [platlev0_199] Frame 1
this.lef = 0;
this.rig = 1200;
this.fric = 0.7;
this.grav = 4;
flasher._alpha = 0;
_root.runMusic("ssmellow");
Symbol 1312 MovieClip Frame 1
stop();
Symbol 1325 Button
on (press) {
getURL ("http://www.armorgames.com", "_blank");
}
Symbol 1328 MovieClip Frame 1
_root.stop();
gotoAndPlay (2);
Symbol 1328 MovieClip Frame 185
_root.gotoAndStop("main");
Symbol 1369 MovieClip Frame 1
stop();
Symbol 1382 MovieClip Frame 1
this.onPress = function () {
};
Symbol 1391 MovieClip Frame 1
this._visible = false;
but_yes.onPress = function () {
_root.clearDat();
this._parent._visible = false;
};
but_no.onPress = function () {
this._parent._visible = false;
};
Symbol 1400 MovieClip Frame 1
but_start.onPress = function () {
_root.goTime();
};
Symbol 1405 MovieClip Frame 1
but_ag.onPress = function () {
getURL ("http://www.armorgames.com", "_blank");
};
but_moregames.onPress = function () {
getURL ("http://www.armorgames.com", "_blank");
};
but_bomtoons.onPress = function () {
getURL ("http://www.bomtoons.com", "_blank");
};
but_music.onPress = function () {
getURL ("http://www.reverbnation.com/brianholmes", "_blank");
};
duo.gotoAndPlay(1200);
Symbol 1405 MovieClip Frame 1334
gotoAndPlay ("repeat");
Symbol 1407 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1410 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1412 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1414 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1416 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1418 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1420 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1422 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1424 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1426 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1428 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1430 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1435 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1439 MovieClip Frame 1
this._parent.addMe(this);
this.tree = true;
this.woodvalue = 5;
stop();
this.cacheAsBitmap = true;
Symbol 1442 MovieClip Frame 1
stop();
this.woodvalue = 1;
this._parent.addMe(this);
this.tree = true;
this.cacheAsBitmap = true;
Symbol 1450 MovieClip Frame 50
stop();
this._parent.revealed = true;
Symbol 1452 MovieClip Frame 1
this._parent.addMe(this);
this.tree = true;
this.secret = true;
this.woodvalue = 0;
stop();
this.cacheAsBitmap = true;
Symbol 1469 MovieClip Frame 1
stop();
Symbol 1471 MovieClip Frame 1
stop();
Symbol 1473 MovieClip Frame 1
stop();
Symbol 1475 MovieClip Frame 1
stop();
Symbol 1477 MovieClip Frame 1
stop();
Symbol 1489 MovieClip Frame 1
stop();
if (_root.dooropen) {
gotoAndStop ("opened");
}
Symbol 1489 MovieClip Frame 2
_root.setNoise(0);
Symbol 1489 MovieClip Frame 3
_root.playSound("swing0");
Symbol 1489 MovieClip Frame 17
_root.playSound("splosion1");
Symbol 1489 MovieClip Frame 19
_root.playSound("splosion1");
Symbol 1489 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 1489 MovieClip Frame 23
_root.playSound("splosion1");
Symbol 1489 MovieClip Frame 28
_root.playSound("ding");
_root.playSound("lasersplode");
Symbol 1489 MovieClip Frame 29
_root.hudd.flasher.gotoAndPlay(2);
_root.dooropen = true;
_root.setNoise(_root.bgnoise);
_root.hudd.updateMe();
_root.freshSave();
Symbol 1489 MovieClip Frame 64
stop();
this._parent.cutscene = false;
Symbol 1495 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1499 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1501 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1503 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1508 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1510 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1512 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1517 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1519 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1522 MovieClip Frame 1
stop();
this.cacheAsBitmap = true;
Symbol 1534 MovieClip Frame 1
stop();
Symbol 1537 MovieClip Frame 1
stop();
Symbol 1541 MovieClip Frame 1
stop();
Symbol 1543 MovieClip Frame 1
Symbol 1548 MovieClip Frame 15
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1549 MovieClip Frame 1
stop();
Symbol 1549 MovieClip Frame 2
stop();
Symbol 1568 MovieClip Frame 1
this._alpha = 0;
Symbol 1571 MovieClip Frame 1
function addEnem2() {
var _local2 = new Array();
var _local3 = random(3);
_local2.k = "map_enemy" + _local3;
_local2.typ = _local3;
_root.enarray2.push(_local2);
}
function outsideEnems() {
var _local5 = 0;
while (_local5 < _root.enarray.length) {
var _local4 = _root.enarray[_local5];
if (_local4.typ > 199) {
_local4.dead = false;
}
if ((!_local4.dead) || (_local4.typ > 10)) {
var _local3 = this.attachMovie(_local4.link, "e" + _local5, _local5);
if (_local4.typ <= 10) {
var _local9 = dude._x - _local4.x;
var _local8 = dude._y - _local4.y;
var _local13 = Math.sqrt((_local9 * _local9) + (_local8 * _local8));
moveit = false;
if (_local13 < 250) {
var moveit = true;
}
}
_local3._x = _local4.x;
_local3._y = _local4.y;
if (moveit) {
var _local6 = random(2);
if (_local6 == 0) {
_local6 = -1;
}
_local3._x = dude._x + (150 * _local6);
_local3._y = dude._y + (150 * _local6);
}
var _local7 = new Array("0xFF4B5A", "0xFF7C18", "0xFDD73E", "0x79A439", "0x4498BB", "0x8858B8");
var _local12 = new Array("0x76010D", "0x8F3901", "0x765F01", "0x384B1B", "0x204757", "0x472C65");
var _local10 = random(_local7.length);
var _local14 = new Color(_local3.fill);
_local14.setRGB(_local7[_local10]);
var _local11 = new Color(_local3.stroke);
_local11.setRGB(_local12[_local10]);
_local3.typ = _local4.typ;
_local3.id = _local5;
_local3.aicv = random(30);
_local3.dir = random(4);
_local3.sp = 4;
enemies.push(_local3);
swaps.push(_local3);
if (((_local4.typ > 10) && (_local4.dead)) && (_local4.typ != 97)) {
_local3.gotoAndStop("dead");
_local3.dead = true;
}
}
_local5++;
}
}
function clearStuff() {
var _local3 = 0;
while (_local3 < enemies.length) {
var _local1 = enemies[_local3];
if (_local1 != dude) {
_local1.unloadMovie();
_local1.removeMovieClip();
}
_local3++;
}
_local3 = 0;
while (_local3 < swaps.length) {
var _local2 = swaps[_local3];
if (_local2 != dude) {
_local2.unloadMovie();
_local2.removeMovieClip();
}
_local3++;
}
}
function tranIt() {
_root.pausy = false;
clearStuff();
if (_root.indungeon && (dungeon)) {
_root.runMusic("oworld");
if (_root.gotfairy && (!_root.fairyaccomplished)) {
fairy._visible = true;
}
dungeon = false;
_root.indungeon = false;
dude._visible = true;
dude.attacking = false;
dude.guts.gotoAndStop("rest_" + dude.dir);
gotoAndStop (1);
} else {
_root.runMusic("dungeonow");
dude._visible = true;
dude.attacking = false;
fairy._visible = false;
runDungeon(_root.dest);
}
}
function runDungeon(dest) {
dude._visible = true;
delete this.onEnterFrame;
_root.hudd.flasher.gotoAndPlay(2);
startDung(dest);
}
function startDung(dest) {
clearStuff();
dungeon = true;
_root.pausy = false;
cutscene = false;
enemies = new Array();
swaps = new Array();
swaps.push(doors);
var _local5 = 0;
while (_local5 < 4) {
var _local4 = this["key" + _local5];
swaps.push(_local4);
_local5++;
}
_local5 = 0;
while (_local5 < 3) {
var _local4 = this["g" + _local5];
swaps.push(_local4);
_local5++;
}
dude.attacking = false;
dude.moving = false;
atkup = false;
dude.guts.gotoAndStop("rest_" + dude.dir);
controltar = dude;
var _local13 = true;
var _local3 = 0;
while (_local3 < 3) {
var _local9 = this.doors.bigdoor["g" + _local3];
if (_root.gems[_local3]) {
_local9._visible = true;
this["g" + _local3].gotoAndStop(2);
} else {
_local9._visible = false;
_local13 = false;
}
_local3++;
}
if (_local13) {
block3.unloadMovie();
block3.removeMovieClip();
doors.bigdoor._visible = false;
}
_root.enarray2 = new Array();
_local3 = 0;
while (_local3 < 24) {
addEnem2();
_local3++;
}
_local3 = 0;
while (_local3 < 4) {
if (_root.dungeonkeys[_local3]) {
this["key" + _local3]._visible = false;
}
if (_root.dungeondoors[_local3]) {
var _local7 = this.doors["door" + _local3];
var _local10 = this["block" + _local3];
_local10.unloadMovie();
_local10.removeMovieClip();
_local7.opened = true;
_local7.gotoAndStop(2);
}
_local3++;
}
_local3 = 0;
while (_local3 < 24) {
var _local4 = this["s" + _local3];
_root.spawns[_local3][0] = _local4._x;
_root.spawns[_local3][1] = _local4._y;
_local4._visible = false;
_local3++;
}
_local3 = 0;
while (_local3 < _root.spawns.length) {
var _local8 = _root.spawns[_local3][0] - dude._x;
var _local6 = _root.spawns[_local3][1] - dude._y;
var _local12 = Math.sqrt((_local8 * _local8) + (_local6 * _local6));
if (!_root.spawns[_local3][2]) {
if ((_local12 > 350) || (!_root.indungeon)) {
var _local11 = random(3) + 3;
var _local14 = this.attachMovie("map_enemy" + _local11, "dungen" + _local3, effcv + 99111);
effcv++;
_local14._x = _root.spawns[_local3][0];
_local14._y = _root.spawns[_local3][1];
_local14.typ = _local11;
_local14.id = _local3;
_local14.aicv = random(30);
_local14.dir = random(4);
_local14.sp = 4;
_local14.comp = _root.spawns[_local3];
enemies.push(_local14);
swaps.push(_local14);
}
}
_local3++;
}
var _local14 = this.attachMovie("wizard3", "wiz", effcv);
effcv++;
_local14._x = 1221;
_local14._y = 1600;
_local14.typ = 195;
enemies.push(_local14);
swaps.push(_local14);
swaps.push(dude);
_root.indungeon = true;
this.onEnterFrame = function () {
enterF();
if (!_root.pausy) {
chkKeys();
if ((dude._y < -1800) && (!_root.pastdungeon)) {
dude.guts.gotoAndStop("rest_" + dude.dir);
dude.attacking = false;
_root.hudd.mapfade.gotoAndPlay(2);
_root.pastdungeon = true;
_root.pausy = true;
dude._x = -1440;
dude._y = 240;
_root.mapp = new Array(-1440, 240);
}
}
};
}
function chkKeys() {
var _local3 = 0;
while (_local3 < 4) {
var _local4 = this["key" + _local3];
if (_root.dungeonkeys[_local3]) {
this["key" + _local3]._visible = false;
}
if (_local4._visible) {
if (_local4.hitarea.hitTest(dude)) {
_root.playLoudSound("ding");
_root.dungeonkeys[_local3] = true;
_local4._visible = false;
_root.keycount++;
_root.hudd.updateMe();
_root.freshSave();
}
}
var _local6 = this.doors["door" + _local3];
if ((_local6.hitTest(dude) && (!_local6.opened)) && (_root.keycount > 0)) {
_root.playLoudSound("lasersplode");
_root.playLoudSound("gethit");
var _local5 = this["block" + _local3];
_root.dungeondoors[_local3] = true;
_local5.unloadMovie();
_local5.removeMovieClip();
_local6.opened = true;
_local6.gotoAndStop(2);
_root.keycount--;
_root.hudd.updateMe();
_root.freshSave();
if (_local5 == this.block2) {
_root.hudd.savemessage.gotoAndPlay(2);
}
}
_local3++;
}
_local3 = 0;
while (_local3 < 3) {
var _local6 = this["g" + _local3];
if (_local6.hitarea.hitTest(dude)) {
if (_local3 == 0) {
var _local7 = 500;
}
if (_local3 == 1) {
var _local7 = 501;
}
if (_local3 == 2) {
var _local7 = 502;
}
_root.mapp[0] = 1620;
_root.mapp[1] = -700;
daterrain = 1;
_root.startPlat(daterrain, _local7, _local6);
}
_local3++;
}
}
function swapEm() {
var _local2 = 0;
while (_local2 < swaps.length) {
var _local3 = swaps[_local2];
if ((_local3._x == undefined) && (_local3 != dude)) {
swaps.splice(_local2, 1);
}
if (_local3.secret) {
if (_local3.hitarea.hitTest(dude) && (_local3.revealed)) {
_root.startPlat(1, 196, _local3);
}
}
_local2++;
}
var _local4 = new Array();
_local2 = 0;
while (_local2 < swaps.length) {
var _local3 = swaps[_local2];
_local4.push({nam:_local3, yval:_local3._y});
_local2++;
}
var _local7 = _local4.sortOn("yval", Array.NUMERIC);
_local2 = 0;
while (_local2 < _local7.length) {
_local4[_local2].nam.swapDepths(_local2);
_local2++;
}
bigdoor.swapDepths(_local7.length + 1);
}
function checkAxeHit(hitarea) {
var _local7 = 0;
while (_local7 < swaps.length) {
var _local4 = swaps[_local7];
if (_local4.tree && (!_local4.chopped)) {
if (_local4.hitTest(hitarea)) {
var _local6 = 0;
while (_local6 < 7) {
var _local3 = this.attachMovie("leaf", "leaf" + effcv, effcv + 9911);
effcv++;
_local3.dir = random(2);
_local3._xscale = 50;
if (_local3.dir == 0) {
_local3._xscale = -50;
}
_local3._yscale = 50;
_local3.maxtime = random(20) + 40;
_local3.cv = 0;
_local3._x = (_local4._x + random(100)) - 50;
_local3._y = _local4._y - random(100);
_local3.gotoAndPlay(random(15));
_local3.onEnterFrame = function () {
this.cv++;
this._y = this._y + 1;
if (this.cv >= this.maxtime) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
};
_local6++;
}
_root.woodcount = _root.woodcount + _local4.woodvalue;
_root.hudd.updateMe();
_root.treechops[_local4.num] = true;
_local4.chopped = true;
_local4.gotoAndStop(2);
var _local5 = this.attachMovie("treesplode", "ts" + effcv, effcv + 9211);
effcv++;
_local5.s = random(20) + 60;
var _local8 = random(2);
if (_local8 == 0) {
_local8 = -1;
}
_local5._xscale = _local5.s * _local8;
_local5._yscale = _local5.s;
_local5._x = _local4._x;
_local5._y = _local4._y;
}
}
_local7++;
}
_root.freshSave();
}
function addMe(who) {
swaps.push(who);
who.num = curtree;
curtree++;
if (_root.treechops[who.num]) {
who.chopped = true;
who.gotoAndStop(2);
}
}
function centerOn(who) {
if (!_root.pausy) {
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - this._x;
disty = goaly - this._y;
this._x = this._x + (distx / 1);
this._y = this._y + (disty / 1);
}
}
function moveEnem(who) {
if (who.dir == 0) {
who._y = who._y - who.sp;
}
if (who.dir == 1) {
who._x = who._x + who.sp;
}
if (who.dir == 2) {
who._y = who._y + who.sp;
}
if (who.dir == 3) {
who._x = who._x - who.sp;
}
who.aicv++;
if (who.aicv >= 30) {
who.aicv = random(15);
who.dir = random(4);
}
restrain(who);
}
function showMsg(msg) {
if (!msgup) {
msgup = true;
_root.playLoudSound("get");
}
var _local3 = this._parent.attachMovie("msgbox", "msgbox", 433998);
_local3.msg.text = msg;
}
function endMapAtk() {
dude.attacking = false;
dude.guts.gotoAndStop("rest_" + dude.dir);
}
function controls(who) {
var needmsg = false;
var i = 0;
while (i < 5) {
var tim = eval ("helper" + i);
if (tim.hitTest(who)) {
if (this._parent.msgbox._x == undefined) {
showMsg(tim.msg);
tim.gotoAndStop("talk");
}
needmsg = true;
} else {
tim.gotoAndStop(1);
}
i++;
}
var i = 0;
while (i < reads.length) {
var tim = eval ("r" + i);
if (tim.hitTest(who)) {
if (this._parent.msgbox._x == undefined) {
var m = reads[i];
showMsg(m);
}
needmsg = true;
}
i++;
}
if (!needmsg) {
msgup = false;
this._parent.msgbox.unloadMovie();
this._parent.msgbox.removeMovieClip();
}
if (!who.attacking) {
if (who.hitTest(bridge.hitarea)) {
_root.onbridge = true;
_root.runTran();
_root.startPlat(3, 3, bridge);
}
var i = 0;
while (i < enemies.length) {
tin = enemies[i];
if ((((_root.enarray[tin.id].link == "wizard0") || (_root.enarray[tin.id].link == "wizard1")) || (_root.enarray[tin.id].link == "wizard2")) || (_root.enarray[tin.id].link == "wizard4")) {
tin.dead = false;
_root.enarray[tin.id].dead = false;
}
if (who.hitarea.hitTest(tin.hitarea)) {
if (!tin.dead) {
if (tin.typ < 10) {
if ((((_root.enarray[tin.id].link != "wizard0") && (_root.enarray[tin.id].link != "wizard1")) && (_root.enarray[tin.id].link != "wizard2")) && (_root.enarray[tin.id].link != "wizard4")) {
_root.enarray[tin.id].dead = true;
} else {
_root.enarray[tin.id].dead = false;
tin.dead = false;
}
tin.comp[2] = true;
} else if ((tin.typ == 99) || (tin.typ == 98)) {
_root.whichboss = _root.enarray[tin.id];
if (tin.typ == 99) {
who._x = 1000;
who._y = 1090;
}
if (tin.typ == 98) {
who._x = 15;
who._y = -1435;
}
}
_root.mapp[0] = who._x;
_root.mapp[1] = who._y;
_root.runTran();
var daterrain = 0;
if (_root.indungeon) {
daterrain = 1;
}
if (terr1.hitTest(who.virtx, who.virty, true)) {
daterrain = 1;
}
if (terr2.hitTest(who.virtx, who.virty, true)) {
daterrain = 2;
}
if (terr3.hitTest(who.virtx, who.virty, true)) {
daterrain = 3;
}
_root.startPlat(daterrain, tin.typ, tin);
}
}
if (tin.typ < 10) {
moveEnem(tin);
}
i++;
}
}
if (_root.gotaxe) {
if (!Key.isDown(_root.atk)) {
atkup = true;
}
if (Key.isDown(_root.atk) && (atkup)) {
atkup = false;
_root.playLoudSound("gethit");
if (!who.attacking) {
who.attacking = true;
who.guts.gotoAndStop("axe_" + who.dir);
}
}
}
who.moving = false;
if (!who.attacking) {
if (((Key.isDown(U) && (!Key.isDown(R))) && (!Key.isDown(L))) && (!Key.isDown(D))) {
who.moving = true;
who._y = who._y - speed;
who.dir = 0;
}
if (((Key.isDown(D) && (!Key.isDown(R))) && (!Key.isDown(L))) && (!Key.isDown(U))) {
who.moving = true;
who._y = who._y + speed;
who.dir = 2;
}
if (((Key.isDown(R) && (!Key.isDown(U))) && (!Key.isDown(D))) && (!Key.isDown(L))) {
who.moving = true;
who._x = who._x + speed;
who.dir = 1;
who._xscale = 100;
}
if (((Key.isDown(L) && (!Key.isDown(U))) && (!Key.isDown(D))) && (!Key.isDown(R))) {
who.moving = true;
who._x = who._x - speed;
who.dir = 1;
who._xscale = -100;
}
if ((Key.isDown(L) && (Key.isDown(D))) && (!Key.isDown(R))) {
who.dir = 2;
who._x = who._x - speed;
who._y = who._y + speed;
who.moving = true;
}
if ((Key.isDown(R) && (Key.isDown(D))) && (!Key.isDown(L))) {
who.dir = 2;
who._x = who._x + speed;
who._y = who._y + speed;
who.moving = true;
}
if ((Key.isDown(L) && (Key.isDown(U))) && (!Key.isDown(R))) {
who.dir = 0;
who._x = who._x - speed;
who._y = who._y - speed;
who.moving = true;
}
if ((Key.isDown(R) && (Key.isDown(U))) && (!Key.isDown(L))) {
who.dir = 0;
who._x = who._x + speed;
who._y = who._y - speed;
who.moving = true;
}
}
if ((!who.moving) && (!who.attacking)) {
who.guts.gotoAndStop("rest_" + who.dir);
} else {
if (!who.attacking) {
who.guts.gotoAndStop("move_" + who.dir);
makePrint(who);
}
if ((dungeon && (_root.indungeon)) && (!_root.pastdungeon)) {
if (exit.hitTest(dude)) {
dude.guts.gotoAndStop("rest_" + dude.dir);
dude.attacking = false;
_root.hudd.mapfade.gotoAndPlay(2);
_root.pausy = true;
}
}
}
restrain(who);
}
function makePrint(who) {
who.printcv++;
if (who.printcv >= 5) {
if (!bg.hitTest(who.virtx, who.virty, true)) {
if ((who._x > -950) || (dungeon)) {
var _local4 = this.attachMovie("groundpoof", "gp" + effcv, effcv + 999911122);
_local4._x = who._x;
_local4._y = who._y;
_local4._xscale = 70;
_local4._yscale = _local4._xscale;
effcv++;
swaps.push(_local4);
}
who.printcv = 0;
var _local3 = farbg.attachMovie("footprint", "print" + effcv, effcv);
effcv++;
_local3._x = who._x;
_local3._y = who._y - 2;
_local3.cacheAsBitmap = true;
if (who.dir == 1) {
if (who.foot == 0) {
_local3._y = _local3._y - 2;
} else {
_local3._y = _local3._y + 7;
}
_local3._xscale = who._xscale;
}
if (who.dir == 0) {
_local3._rotation = -90;
if (who.foot == 0) {
_local3._x = _local3._x - 15;
} else {
_local3._x = _local3._x + 15;
}
}
if (who.dir == 2) {
_local3._rotation = 90;
if (who.foot == 0) {
_local3._x = _local3._x - 15;
} else {
_local3._x = _local3._x + 15;
}
}
who.foot++;
if (who.foot == 2) {
who.foot = 0;
}
} else if (bridge1.hitTest(who.virtx, who.virty, true)) {
var _local4 = farbg.attachMovie("watersplash", "gp" + effcv, effcv + 999911122);
_local4._x = who._x;
_local4._y = who._y - 10;
_local4._xscale = 100;
_local4._yscale = _local4._xscale;
effcv++;
swaps.push(_local4);
who.printcv = 0;
}
}
}
function restrain(who) {
who.virtx = this._x + who._x;
who.virty = this._y + who._y;
who.lef = who.virtx - (who._width / 2);
who.rig = who.virtx + (who._width / 2);
who.topp = who.virty - (who._height / 2);
who.bott = who.virty + (who._height / 2);
var _local4 = false;
if (bridge1.hitTest(who.virtx, who.topp, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.virtx, who.topp, true) && (_root.dooropen)) {
_local4 = true;
}
while (((((bg.hitTest(who.virtx, who.topp, true) && (!_local4)) || (block0.hitTest(who.virtx, who.topp, true))) || (block1.hitTest(who.virtx, who.topp, true))) || (block2.hitTest(who.virtx, who.topp, true))) || (block3.hitTest(who.virtx, who.topp, true))) {
who._y = who._y + 1;
who.virty = who.virty + 1;
who.topp = who.topp + 1;
who.bott = who.bott - 1;
if (bridge1.hitTest(who.virtx, who.topp, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.virtx, who.topp, true) && (_root.dooropen)) {
_local4 = true;
}
}
_local4 = false;
if (bridge1.hitTest(who.virtx, who.bott, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.virtx, who.bott, true) && (_root.dooropen)) {
_local4 = true;
}
while (((((bg.hitTest(who.virtx, who.bott, true) && (!_local4)) || (block0.hitTest(who.virtx, who.bott, true))) || (block1.hitTest(who.virtx, who.bott, true))) || (block2.hitTest(who.virtx, who.bott, true))) || (block3.hitTest(who.virtx, who.bott, true))) {
who._y = who._y - 1;
who.virty = who.virty - 1;
who.topp = who.topp - 1;
who.bott = who.bott - 1;
if (bridge1.hitTest(who.virtx, who.bott, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.virtx, who.bott, true) && (_root.dooropen)) {
_local4 = true;
}
}
_local4 = false;
if (bridge1.hitTest(who.lef, who.virty, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.lef, who.virty, true) && (_root.dooropen)) {
_local4 = true;
}
while (((((bg.hitTest(who.lef, who.virty, true) && (!_local4)) || (block0.hitTest(who.lef, who.virty, true))) || (block1.hitTest(who.lef, who.virty, true))) || (block2.hitTest(who.lef, who.virty, true))) || (block3.hitTest(who.lef, who.virty, true))) {
who._x = who._x + 1;
who.virtx = who.virtx + 1;
who.lef = who.lef + 1;
who.rig = who.rig + 1;
if (bridge1.hitTest(who.lef, who.virty, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.lef, who.virty, true) && (_root.dooropen)) {
_local4 = true;
}
}
_local4 = false;
if (bridge1.hitTest(who.rig, who.virty, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.rig, who.virty, true) && (_root.dooropen)) {
_local4 = true;
}
while (((((bg.hitTest(who.rig, who.virty, true) && (!_local4)) || (block0.hitTest(who.rig, who.virty, true))) || (block1.hitTest(who.rig, who.virty, true))) || (block2.hitTest(who.rig, who.virty, true))) || (block3.hitTest(who.rig, who.virty, true))) {
who._x = who._x - 1;
who.virtx = who.virtx - 1;
who.lef = who.lef - 1;
who.rig = who.rig - 1;
if (bridge1.hitTest(who.rig, who.virty, true) && (_root.gotboots)) {
_local4 = true;
}
if (bridge2.hitTest(who.rig, who.virty, true) && (_root.dooropen)) {
_local4 = true;
}
}
}
function chkDoorHit() {
if (bigdoor.hitarea.hitTest(dude)) {
who = dude;
who.guts.gotoAndStop("rest_" + who.dir);
cutscene = true;
_root.dooropen = true;
bigdoor.gotoAndPlay(2);
}
}
function fairyEmitter(who) {
fem++;
if (fem >= 5) {
fem = 0;
var _local4 = 0;
while (_local4 < 10) {
var _local3 = this.attachMovie("sparkle", "sparkle" + effcv, effcv + 77781818);
effcv++;
_local3._xscale = 400 + random(200);
_local3._yscale = _local3._xscale;
_local3._x = (who._x + random(40)) - 20;
_local3._y = (who._y + random(40)) - 20;
_local3._rotation = random(360);
_local3.xvel = random(10) - 5;
_local3.yvel = random(10) - 5;
_local3.cv = 0;
_local3.onEnterFrame = function () {
if (!_root.pausy) {
this._x = this._x + this.xvel;
this.xvel = this.xvel * 0.9;
this._y = this._y + this.yvel;
this.yvel = this.yvel * 0.9;
this.cv++;
this._rotation = this._rotation + 45;
if (this.cv >= 2) {
this._alpha = this._alpha - 1;
if (this._alpha <= 0) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
}
}
};
_local4++;
}
}
}
function enterF() {
_root.chkPause();
if ((!_root.pausy) && (!cutscene)) {
if (_root.gemtranny < 0) {
controls(controltar);
centerOn(dude);
} else {
if (!gemvisible) {
this.doors.bigdoor._visible = true;
var _local9 = this.doors.bigdoor["g" + _root.gemtranny];
_local9._visible = false;
gemvisible = true;
this.g = this.attachMovie("gem" + _root.gemtranny, "gem", 666881 + effcv);
effcv++;
g.cv = 0;
g._xscale = 20;
g._yscale = g._xscale;
var _local8 = this["g" + _root.gemtranny];
g._x = _local8._x - 15;
g._y = _local8._y - 50;
g.tar = this["gemtarget" + _root.gemtranny];
var _local12 = g.tar._x - g._x;
var _local11 = g.tar._y - g._y;
g.angle = Math.atan2(_local11, _local12);
g.speed = 0;
g.comp = _local9;
}
if (g.tar.hitTest(g)) {
if (!g.comp._visible) {
g.speed = 0;
_root.playLoudSound("ding");
_root.playLoudSound("gethit");
g.comp._visible = true;
var _local5 = true;
var _local3 = 0;
while (_local3 < _root.gems.length) {
if (!_root.gems[_local3]) {
_local5 = false;
}
_local3++;
}
if (_local5) {
this.doors.bigdoor._visible = false;
_root.playLoudSound("lasersplode");
_root.playLoudSound("gethit");
}
var _local6 = this.attachMovie("treesplode", "tsplode" + effcv, effcv + 88111);
effcv++;
_local6._xscale = 50;
_local6._yscale = _local6._xscale;
_local6._x = g.tar._x;
_local6._y = g.tar._y + 30;
}
g._alpha = 0;
g.cv++;
if (g.cv >= 35) {
g.comp._visible = true;
goalx = 320 - dude._x;
goaly = 240 - dude._y;
distx = goalx - this._x;
disty = goaly - this._y;
var _local10 = Math.sqrt((distx * distx) + (disty * disty));
if (_local10 > 0.5) {
this._x = this._x + (distx / 8);
this._y = this._y + (disty / 8);
} else {
centerOn(dude);
}
}
if (g.cv >= 64) {
_root.gemtranny = -1;
g.unloadMovie();
g.removeMovieClip();
}
} else {
g.comp._visible = false;
centerOn(g);
g._x = g._x + (g.speed * Math.cos(g.angle));
g._y = g._y + (g.speed * Math.sin(g.angle));
g.speed = g.speed + 0.4;
}
}
if (_root.gotkey && (!_root.dooropen)) {
chkDoorHit();
}
if ((_root.gotfairy && (!_root.fairyaccomplished)) && (!_root.indungeon)) {
fairyEmitter(fairy);
if (fairydir == 0) {
var _local8 = dude;
} else {
var _local8 = fairytar;
}
var distx = (_local8._x - fairy._x);
var disty = (_local8._y - fairy._y);
var _local4 = 40;
var _local7 = 8.5;
if (distx > (-_local4)) {
fairy._x = fairy._x + _local7;
}
if (distx < _local4) {
fairy._x = fairy._x - _local7;
}
if (disty > (-_local4)) {
fairy._y = fairy._y + _local7;
}
if (disty < _local4) {
fairy._y = fairy._y - _local7;
}
if (((((disty > (-_local4)) && (disty < _local4)) && (distx > (-_local4))) && (distx < _local4)) && (!fairy.stick)) {
fairy.stick = true;
fairy.cv = 0;
}
if (fairy.stick) {
fairy.cv++;
if (fairy.cv >= 30) {
fairy.stick = false;
fairy.cv = 0;
if (fairydir == 0) {
fairydir = 1;
} else {
fairydir = 0;
}
}
}
}
}
swapEm();
}
_root.runMusic("oworld");
stop();
U = _root.U;
D = _root.D;
L = _root.L;
R = _root.R;
dude.moving = false;
gemtarget._alpha = 0;
framecount = 0;
enemies = new Array();
swaps = new Array();
delete this.onEnterFrame;
controltar = dude;
if ((!_root.gotfairy) || (_root.fairyaccomplished)) {
fairy._visible = false;
} else {
fairy._x = dude._x;
fairy._y = dude._y - 300;
fairydir = 0;
fem = 0;
fairy.swapDepths(99911111);
}
var reads = new Array();
reads[0] = "ISN'T THIS A LONG HALLWAY?";
reads[1] = "THREE GUARDIANS PROTECT THE WAY TO THE LAVA BEAST. THEIR QUEST IS TO TEST AND PROVE THE CHOSEN ONE.";
reads[2] = "SECOND FLOOR: ARE YOU SURE YOU GOT ALL THE KEYS ON FLOOR ONE?";
reads[3] = "DUNGEON OF THE THREE KNIGHTS: ABANDON ALL HOPE ALL YE WHO ENTER HERE.";
reads[4] = "ONLY A WORTHY KNIGHT WILL DEFEAT ALL THREE DUNGEON GUARDIANS.";
reads[5] = "THE FINAL DOOR CANNOT BE OPENED WITH KEYS...";
reads[6] = "EACH DUNGEON FLOOR HAS A LOCKED DOOR. FIND KEYS TO PASS THEM.";
reads[7] = "A POWERFUL WIZARD HIDES IN THIS DUNGEON.";
reads[8] = "FLOOR THREE: PREPARE FOR THE ULTIMATE SHOWDOWN OF ULTIMATE DESTINY.";
reads[9] = "3 KNIGHT DUNGEON: TO PASS THE PROTECTORS, PATTERN-PERCEPTION PROVES PURPOSEFUL";
reads[10] = "DOORS REMAIN UNLOCKED EVEN AFTER YOUR DEATH.";
reads[11] = "DIZZINESS IS THE PURPLE KNIGHT'S WEAKNESS";
reads[12] = "DEFEAT EACH GUARDIAN TO ADD A GEM TO THE FINAL GATE.";
reads[13] = "THE AXE IS THE RED KNIGHT'S SOURCE OF POWER. DODGE HIS AXE THROW, ATTACK HIM WHILE HE IS WEAK.";
reads[14] = "THE GREEN KNIGHT IS INVULNERABLE TO ANYTHING EXCEPT ROCK. AIM WELL YOUR STRIKES!";
reads[15] = "THIS IS ONE OF THOSE DECOY MAZE HALLWAYS...SORRY EVERY GAME HAS ONE.";
speed = 10;
effcv = 0;
curtree = 0;
this.swaps = new Array();
swaps.push(dude);
swaps.push(coverer);
dude.printcv = 0;
dude.foot = 0;
dude.dir = 2;
this.enemies = new Array();
terr1._alpha = 0;
terr2._alpha = 0;
terr3._alpha = 0;
terr4._alpha = 0;
var msgs = new Array();
if (!_root.gotboots) {
msgs[0] = "The ship has sailed for safer port. It's rumored that MAGIC BOOTS can walk on water.";
}
if (_root.gotboots) {
msgs[0] = "Those boots will help you cross, but the ISLAND BEAST will destroy you!";
}
if (_root.gotkey) {
msgs[0] = "The town blacksmith built a ship to escape the beasts. Sometimes I see it pass North of the island.";
}
if (!_root.gotboots) {
msgs[1] = "Danger is ahead! The CANYON BEAST devours all who enter its lair!";
}
if (_root.gotboots) {
msgs[1] = "Hooray, the canyon beast is dead!";
}
if (!_root.gotkey) {
msgs[2] = "The SKULL KEY opens this path. Legend says the KEY is guarded by the ISLAND BEAST.";
}
if (_root.gotkey) {
msgs[2] = "Pass three knight tower before facing the DEMON BEAST. Only one worthy and prepared may pass.";
}
msgs[3] = "Save our land from the 3 giant beasts! You're our only hope!";
msgs[4] = "A powerful wizard went into hiding somewhere in this forest ...";
var i = 0;
while (i < 5) {
var tar = eval ("helper" + i);
swaps.push(tar);
tar.msg = msgs[i];
i++;
}
outsideEnems();
_root.whichboss = 0;
gemvisible = false;
gemtarget0._alpha = 0;
gemtarget1._alpha = 0;
gemtarget2._alpha = 0;
this.onEnterFrame = function () {
enterF();
};
Symbol 1571 MovieClip Frame 2
tranIt();
Symbol 1587 MovieClip Frame 1
stop();
Symbol 1591 MovieClip Frame 1
stop();
Symbol 1591 MovieClip Frame 2
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1591 MovieClip Frame 3
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1591 MovieClip Frame 4
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1591 MovieClip Frame 25
function centerIt() {
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
}
who = _root.mappy.dude;
goalx = 320 - who._x;
goaly = 240 - who._y;
distx = goalx - _root.mappy._x;
disty = goaly - _root.mappy._y;
_root.mappy._x = _root.mappy._x + (distx / 1);
_root.mappy._y = _root.mappy._y + (disty / 1);
if (!_root.pastdungeon) {
if (!_root.indungeon) {
_root.mappy.gotoAndStop(2);
} else {
_root.mappy.dude.swapDepths(240);
_root.mappy.tranIt();
}
} else if (_root.indungeon) {
_root.mappy.gotoAndStop(1);
_root.mappy.dude.dir = 0;
_root.pausy = false;
_root.pastdungeon = true;
_root.indungeon = false;
_root.mappy.dungeon = false;
_root.mappy.dude._visible = true;
_root.mappy.dude.attacking = false;
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
_root.mappy.clearStuff();
_root.mappy.dude._x = -1440;
_root.mappy.dude._y = 240;
_root.mapp = new Array(-1440, 240);
_root.mappy.dude.swapDepths(240);
} else {
_root.pastdungeon = false;
_root.mapp = new Array(1650, -1500);
_root.mappy.dude._x = 1650;
_root.mappy.dude._y = -1500;
_root.mappy.dude._visible = true;
_root.mappy.dude.attacking = false;
_root.mappy.dude.dir = 2;
_root.mappy.dude.guts.gotoAndStop("rest_" + dude.dir);
centerIt();
_root.mappy.gotoAndStop(2);
}
Symbol 1595 MovieClip Frame 1
stop();
Symbol 1596 MovieClip Frame 1
function updateMe() {
bg._visible = false;
if (!_root.deliveredwood) {
this.wood.text = "= " + _root.woodcount;
if (_root.woodcount > 0) {
bg._visible = true;
}
} else {
this.wood.text = "";
this.woodike._visible = false;
}
if (_root.keycount <= 0) {
keyicon._visible = false;
keys.text = "";
} else {
keyicon._visible = true;
bg._visible = true;
keys.text = "=" + _root.keycount;
}
if (!_root.gotboots) {
boots._visible = false;
key._visible = false;
} else {
bg._visible = true;
}
if ((!_root.gotkey) || (_root.dooropen)) {
key._visible = false;
} else {
bg._visible = true;
key._visible = true;
}
if (!_root.gotaxe) {
woodike._visible = false;
axe._visible = false;
this.wood.text = "";
} else {
if (!_root.deliveredwood) {
this.wood.text = "= " + _root.woodcount;
woodike._visible = true;
} else {
woodike._visible = false;
this.wood.text = "";
}
axe._visible = true;
bg._visible = true;
}
}
updateMe();
Symbol 1714 MovieClip Frame 1
function moveStuff() {
fg0._x = fg0._x - (rate * 1.5);
fg1._x = fg1._x - (rate * 1.5);
if (fg0._x < (-fg0._width)) {
fg0._x = fg1._x + fg1._width;
}
if (fg1._x < (-fg1._width)) {
fg1._x = fg0._x + fg0._width;
}
ground0._x = ground0._x - rate;
ground1._x = ground1._x - rate;
if (ground0._x < (-ground0._width)) {
ground0._x = (ground1._x + ground1._width) - 1;
}
if (ground1._x < (-ground1._width)) {
ground1._x = (ground0._x + ground0._width) - 1;
}
bg0._x = bg0._x - (rate * 0.3);
bg1._x = bg1._x - (rate * 0.3);
if (bg0._x < (-bg0._width)) {
bg0._x = (bg1._x + bg1._width) - 1;
}
if (bg1._x < (-bg1._width)) {
bg1._x = (bg0._x + bg0._width) - 1;
}
bd0._x = bd0._x - rate;
bd1._x = bd1._x - rate;
if (bd0._x < (-bd0._width)) {
bd0._x = (bd1._x + bd1._width) - 1;
}
if (bd1._x < (-bd1._width)) {
bd1._x = (bd0._x + bd0._width) - 1;
}
p0._x = p0._x - rate;
p1._x = p1._x - rate;
if (p0._x < (-p0._width)) {
p0._x = (p1._x + p1._width) - 1;
}
if (p1._x < (-p1._width)) {
p1._x = (p0._x + p0._width) - 1;
}
}
function setCol(who, fil, str) {
var _local2 = new Color(who.fill);
var _local1 = new Color(who.str);
_local2.setRGB(fil);
_local1.setRGB(str);
}
function makeConfetti() {
var _local3 = 0;
while (_local3 < 15) {
var _local2 = this.attachMovie("confetti", "piece" + count, count);
count++;
_local2._x = random(640);
_local2._y = -5 - random(120);
_local2.yvel = 0;
_local2._rotation = random(360);
_local2.xvel = random(10) - 5;
_local2.spin = random(2);
if (_local2.spin == 0) {
_local2.spin = -1;
}
_local2._xscale = 115 + random(50);
setCol(_local2, cols[random(cols.length)], cols[random(cols.length)]);
_local2.onEnterFrame = function () {
this._x = this._x + this.xvel;
this._y = this._y + this.yvel;
this.yvel = this.yvel + 0.2;
this._xscale = this._xscale + (this.spin * 3);
if (this._y > 560) {
delete this.onEnterFrame;
this.unloadMovie();
this.removeMovieClip();
}
};
_local3++;
}
}
rate = 4;
dude.guts.gotoAndPlay("walk");
showSword(dude.guts.sword);
var cols = new Array("0xFF0000", "0xFFFF00", "0xFF00FF", "0x00FF00", "0xFFFFFF", "0x00FFFF");
count = 0;
cv = 0;
this.onEnterFrame = function () {
moveStuff();
cv++;
if ((cv >= 10) && (!this.noconfetti)) {
cv = 0;
makeConfetti();
}
};
Symbol 1714 MovieClip Frame 1757
noconfetti = true;
Symbol 1714 MovieClip Frame 1808
arm.text = _root.curarmor;
mag.text = _root.curmag;
sword.text = _root.cursword;
deaths.text = _root.so.data.numdeaths;
var swords = new Array("Peasant", "Sword Training Wheels", "Sword Apprentice", "Quick Sword", "Lightning Sword", "Mega-Sword", "Ultra-Sword", "Sword Expert", "Master Swordsman");
var mags = new Array("Peasant", "Tome Reader", "Magician's Apprentice", "Magic Seeker", "Magic Man", "Low Wizard", "Mid-Wizard", "High Wizard", "Master Magician");
var arms = new Array("Peasant", "Defenseless", "Tin Man", "Copper Plated", "Chain-Mail Man", "Plate-Mail Man", "Defense Apprentice", "Defense Journeyman", "Master Defender");
var highest = 0;
var hipoint = arms;
if (_root.curarmor > highest) {
highest = _root.curarmor;
hipoint = arms;
}
if (_root.curmag > highest) {
highest = _root.curmag;
hipoint = mags;
}
if (_root.cursword > highest) {
highest = _root.cursword;
hipoint = swords;
}
rank.text = hipoint[highest];
if (((_root.curarmor == 8) && (_root.curmag == 8)) && (_root.cursword == 8)) {
rank.text = "Ultimate Master of Ultimate Destiny";
}
but_main.onPress = function () {
_root.gotoAndStop("main");
};
Symbol 1714 MovieClip Frame 1868
stop();