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 _local3 = false;
if (!saver) {
mapp = new Array(320, 240);
} else {
mapp = new Array(1620, -600);
if (!_root.pastdungeon) {
_local3 = true;
}
}
this._parent.runMap(_local3);
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 110 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_walk.onPress = function () {
getURL ("http://armorgames.com/guide/chibi-knight-video-guide", "_blank");
};
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 120 MovieClip Frame 1
stop();
Symbol 165 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 165 MovieClip Frame 16
gotoAndPlay ("rest");
Symbol 165 MovieClip Frame 32
gotoAndPlay ("walk");
Symbol 165 MovieClip Frame 36
stop();
Symbol 165 MovieClip Frame 41
_root.jumpRecover(this._parent);
Symbol 165 MovieClip Frame 44
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 45
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 47
_root.endAttack(this._parent);
stop();
Symbol 165 MovieClip Frame 50
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 51
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 53
_root.endAttack(this._parent);
stop();
Symbol 165 MovieClip Frame 55
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 56
_root.chkSlash(this.hitarea);
Symbol 165 MovieClip Frame 59
_root.endAttack(this._parent);
stop();
Symbol 165 MovieClip Frame 63
stop();
Symbol 165 MovieClip Frame 70
_root.screenShake(10);
Symbol 165 MovieClip Frame 83
_root.endMagic(this._parent);
gotoAndPlay ("rest");
Symbol 165 MovieClip Frame 91
stop();
Symbol 165 MovieClip Frame 96
stop();
Symbol 165 MovieClip Frame 97
gotoAndPlay (97);
Symbol 165 MovieClip Frame 98
gotoAndPlay (98);
Symbol 165 MovieClip Frame 99
gotoAndPlay (99);
Symbol 165 MovieClip Frame 111
_root.flashIt();
Symbol 165 MovieClip Frame 125
stop();
_root.runMap();
Symbol 165 MovieClip Frame 140
stop();
Symbol 166 MovieClip [platdude] Frame 1
stop();
Symbol 166 MovieClip [platdude] Frame 2
gotoAndPlay(_currentframe);
Symbol 166 MovieClip [platdude] Frame 3
gotoAndPlay(_currentframe);
Symbol 166 MovieClip [platdude] Frame 4
gotoAndPlay(_currentframe);
Symbol 166 MovieClip [platdude] Frame 5
gotoAndPlay(_currentframe);
Symbol 166 MovieClip [platdude] Frame 6
gotoAndPlay(_currentframe);
Symbol 175 MovieClip [clack] Frame 5
this.removeMovieClip();
this.unloadMovie();
stop();
Symbol 182 MovieClip [combonums] Frame 2
_root.addxp(this.num.txt);
Symbol 182 MovieClip [combonums] Frame 24
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 184 MovieClip [fader] Frame 13
stop();
_root.fadedIn();
Symbol 188 MovieClip [points] Frame 6
stop();
Symbol 189 MovieClip [spark] Frame 1
this.cacheAsBitmap = true;
Symbol 191 MovieClip [spark2] Frame 1
this.cacheAsBitmap = true;
Symbol 207 MovieClip [splode] Frame 1
_root.chkSlash(this.hitarea, true);
Symbol 207 MovieClip [splode] Frame 23
stop();
this.removeMovieClip();
this.unloadMovie();
Symbol 219 MovieClip [splode2] Frame 1
this.dam = 50;
_root.dudeHit(this, this.hitarea);
Symbol 219 MovieClip [splode2] Frame 23
stop();
this.removeMovieClip();
this.unloadMovie();
Symbol 265 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 265 MovieClip Frame 11
gotoAndPlay ("rest");
Symbol 265 MovieClip Frame 24
stop();
_root.removeBad(this._parent);
Symbol 290 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 290 MovieClip Frame 9
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 290 MovieClip Frame 40
stop();
_root.removeBad(this._parent);
Symbol 307 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 307 MovieClip Frame 27
stop();
_root.removeBad(this._parent);
Symbol 362 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 362 MovieClip Frame 9
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 362 MovieClip Frame 14
_root.dudeHit(this._parent, box);
Symbol 362 MovieClip Frame 15
_root.dudeHit(this._parent, box);
Symbol 362 MovieClip Frame 16
_root.dudeHit(this._parent, box);
Symbol 362 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 362 MovieClip Frame 36
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("walk");
}
Symbol 362 MovieClip Frame 71
stop();
_root.removeBad(this._parent);
Symbol 411 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 414 MovieClip [knight0_axe] Frame 1
this.dam = 130;
Symbol 421 MovieClip [rock] Frame 1
stop();
this.dam = 75;
Symbol 421 MovieClip [rock] Frame 12
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 432 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 440 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 441 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 442 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 465 MovieClip Frame 1
stop();
Symbol 466 MovieClip Frame 1
stop();
if (!this.inited) {
this.inited = true;
this.pointer = 1;
this.maxx = 14;
this.hitcv = 0;
}
Symbol 466 MovieClip Frame 2
gotoAndPlay(_currentframe);
Symbol 466 MovieClip Frame 3
gotoAndPlay(_currentframe);
Symbol 466 MovieClip Frame 4
gotoAndPlay(_currentframe);
Symbol 466 MovieClip Frame 5
gotoAndPlay(_currentframe);
Symbol 466 MovieClip Frame 6
gotoAndPlay(_currentframe);
Symbol 466 MovieClip Frame 7
gotoAndPlay(_currentframe);
Symbol 479 MovieClip Frame 1
stop();
Symbol 485 MovieClip Frame 1
stop();
Symbol 495 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 495 MovieClip Frame 30
gotoAndPlay ("rest");
Symbol 495 MovieClip Frame 31
_root.playSound("splosion1");
_root.flashIt();
_root.setNoise(0);
Symbol 495 MovieClip Frame 32
_root.playLoudSound("raaar");
Symbol 495 MovieClip Frame 35
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 39
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 42
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 45
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 48
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 51
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 55
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 58
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 61
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 64
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 67
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 73
_root.reviveDemon();
Symbol 495 MovieClip Frame 85
stop();
this.lastframe = true;
this._parent.lastframe = true;
Symbol 495 MovieClip Frame 87
_root.setNoise(0);
Symbol 495 MovieClip Frame 89
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 91
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 MovieClip Frame 93
_root.playSound("splosion1");
_root.flashIt();
Symbol 495 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 495 MovieClip Frame 121
stop();
Symbol 496 MovieClip Frame 1
stop();
Symbol 499 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 505 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 506 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 507 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 512 MovieClip Frame 1
if (!this.inited) {
this.inited = true;
var ran = random(8);
this.gotoAndPlay(ran);
}
Symbol 550 MovieClip Frame 1
stop();
Symbol 550 MovieClip Frame 2
_root.giveSpell(4);
Symbol 551 MovieClip Frame 1
this.fairy = true;
if (_root.gotfairy) {
this._visible = false;
}
Symbol 556 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 586 MovieClip Frame 23
_root.giveSpell(3);
Symbol 586 MovieClip Frame 51
this._parent.gotoAndStop("rest");
stop();
Symbol 587 MovieClip Frame 1
stop();
Symbol 590 MovieClip Frame 1
stop();
Symbol 594 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 604 MovieClip Frame 23
_root.giveSpell(2);
Symbol 604 MovieClip Frame 51
this._parent.gotoAndStop("rest");
stop();
Symbol 605 MovieClip Frame 1
stop();
Symbol 606 MovieClip Frame 1
stop();
Symbol 607 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 637 MovieClip Frame 2
_root.giveSpell(1);
Symbol 637 MovieClip Frame 12
this._parent.gotoAndStop("rest");
Symbol 643 MovieClip Frame 1
stop();
if (_root.deliveredwood) {
gotoAndStop ("happy");
}
Symbol 644 MovieClip Frame 1
stop();
Symbol 650 MovieClip Frame 13
_root.giveSpell(1, true);
Symbol 650 MovieClip Frame 41
this._parent.gotoAndStop("rest");
stop();
Symbol 651 MovieClip Frame 1
stop();
Symbol 652 MovieClip Frame 1
stop();
Symbol 653 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 673 MovieClip Frame 20
stop();
_root.blacksmithGive();
Symbol 674 MovieClip Frame 18
this._parent.gotoAndStop("rest2");
Symbol 676 MovieClip Frame 1
stop();
if (_root.gotaxe) {
gotoAndStop ("rest2");
}
Symbol 679 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 680 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 682 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 683 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 689 MovieClip Frame 11
gotoAndPlay(this._currentframe + random(30));
Symbol 708 MovieClip Frame 20
stop();
Symbol 710 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 710 MovieClip Frame 19
stop();
_root.removeBad(this._parent);
Symbol 711 MovieClip Frame 1
stop();
Symbol 712 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 717 MovieClip Frame 1
stop();
Symbol 754 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 754 MovieClip Frame 21
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 41
_root.dudeHit(this._parent, box);
Symbol 754 MovieClip Frame 42
_root.dudeHit(this._parent, box);
Symbol 754 MovieClip Frame 43
_root.dudeHit(this._parent, box);
Symbol 754 MovieClip Frame 61
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 62
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 63
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 64
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 65
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 66
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 67
if ((!this._parent.dead) && (this._parent.hp > 0)) {
gotoAndPlay ("rest");
}
Symbol 754 MovieClip Frame 91
stop();
_root.removeBad(this._parent);
Symbol 755 MovieClip Frame 1
stop();
Symbol 756 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 758 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 774 MovieClip Frame 9
stop();
Symbol 775 MovieClip Frame 1
if (!this._parent._parent.comp.stuck) {
eyes._visible = false;
} else if (!eyes._visible) {
eyes._visible = true;
eyes.gotoAndPlay(1);
}
Symbol 786 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 13
_root.playSound("splosion1");
_root.flashIt();
Symbol 786 MovieClip Frame 15
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 17
_root.playSound("splosion1");
Symbol 786 MovieClip Frame 24
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 786 MovieClip Frame 26
stop();
Symbol 786 MovieClip Frame 27
stop();
Symbol 786 MovieClip Frame 28
stop();
Symbol 786 MovieClip Frame 29
stop();
Symbol 786 MovieClip Frame 30
stop();
Symbol 786 MovieClip Frame 31
stop();
Symbol 786 MovieClip Frame 32
stop();
Symbol 786 MovieClip Frame 33
stop();
Symbol 786 MovieClip Frame 34
stop();
Symbol 786 MovieClip Frame 35
stop();
Symbol 792 MovieClip Frame 2
_root.playSound("gleam");
Symbol 792 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 792 MovieClip Frame 32
stop();
Symbol 793 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 793 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 793 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 793 MovieClip Frame 47
if (!this._parent.dead) {
_root.knight0AtkEnd(this._parent);
gotoAndPlay ("rest");
}
Symbol 793 MovieClip Frame 55
if (!this._parent.dead) {
_root.tossAxe(this._parent);
}
Symbol 793 MovieClip Frame 84
if (!this._parent.dead) {
gotoAndPlay ("rest2");
}
Symbol 793 MovieClip Frame 97
if (!this._parent.dead) {
gotoAndPlay ("walk");
}
Symbol 793 MovieClip Frame 110
if (!this._parent.dead) {
_root.retrieveAxe(this._parent);
gotoAndPlay ("rest");
}
Symbol 793 MovieClip Frame 112
_root.setNoise(0);
this._parent.gotaxe = false;
_root.updateHUD();
Symbol 793 MovieClip Frame 113
Symbol 793 MovieClip Frame 114
stop();
Symbol 793 MovieClip Frame 115
stop();
Symbol 793 MovieClip Frame 116
stop();
Symbol 793 MovieClip Frame 117
stop();
Symbol 793 MovieClip Frame 118
stop();
Symbol 793 MovieClip Frame 119
stop();
Symbol 793 MovieClip Frame 120
stop();
Symbol 793 MovieClip Frame 121
stop();
Symbol 794 MovieClip Frame 1
stop();
Symbol 796 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 798 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 824 MovieClip Frame 19
stop();
Symbol 828 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 16
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 828 MovieClip Frame 20
_root.playSound("splosion1");
_root.flashIt();
Symbol 828 MovieClip Frame 25
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 828 MovieClip Frame 26
stop();
Symbol 828 MovieClip Frame 27
stop();
Symbol 828 MovieClip Frame 28
stop();
Symbol 828 MovieClip Frame 29
stop();
Symbol 828 MovieClip Frame 30
stop();
Symbol 828 MovieClip Frame 31
stop();
Symbol 828 MovieClip Frame 32
stop();
Symbol 828 MovieClip Frame 33
stop();
Symbol 828 MovieClip Frame 34
stop();
Symbol 828 MovieClip Frame 35
stop();
Symbol 829 MovieClip Frame 2
_root.playSound("gleam");
Symbol 829 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 829 MovieClip Frame 32
stop();
Symbol 830 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 830 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
} else {
stop();
}
Symbol 830 MovieClip Frame 21
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 830 MovieClip Frame 22
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 830 MovieClip Frame 31
this._parent.ready = true;
Symbol 830 MovieClip Frame 32
stop();
Symbol 830 MovieClip Frame 60
if (!this._parent.dead) {
gotoAndPlay ("dizzy");
}
Symbol 830 MovieClip Frame 61
if ((!_root.platpause) && (!this._parent.dead)) {
gotoAndPlay ("dizzy");
}
Symbol 830 MovieClip Frame 62
if ((!_root.platpause) && (!this._parent.dead)) {
gotoAndPlay ("dizzy");
}
Symbol 830 MovieClip Frame 71
_root.dudeHit(this._parent, box);
Symbol 830 MovieClip Frame 72
_root.dudeHit(this._parent, box);
Symbol 830 MovieClip Frame 73
_root.dudeHit(this._parent, box);
Symbol 830 MovieClip Frame 76
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 830 MovieClip Frame 77
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 830 MovieClip Frame 78
if (this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 830 MovieClip Frame 80
_root.setNoise(0);
_root.updateHUD();
Symbol 831 MovieClip Frame 1
stop();
Symbol 847 MovieClip Frame 4
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 5
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 7
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 9
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 11
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 13
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 15
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 17
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 19
_root.dudeHit(this._parent._parent, box);
Symbol 847 MovieClip Frame 31
_root.endSpurt(this._parent._parent);
Symbol 848 MovieClip Frame 1
stop();
Symbol 849 MovieClip Frame 1
stop();
if (!this.inited) {
this.inited = true;
_root.addFireSpurt(this);
this.dam = 70;
}
Symbol 849 MovieClip Frame 9
_root.shootSpurt(this);
Symbol 850 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 855 MovieClip Frame 1
this.cv = 0;
this.dir = random(2);
if (this.dir == 0) {
this.dir = -1;
}
Symbol 874 MovieClip Frame 2
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 16
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 874 MovieClip Frame 20
_root.playSound("splosion1");
_root.flashIt();
Symbol 874 MovieClip Frame 25
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 874 MovieClip Frame 26
stop();
Symbol 874 MovieClip Frame 27
stop();
Symbol 874 MovieClip Frame 28
stop();
Symbol 874 MovieClip Frame 29
stop();
Symbol 874 MovieClip Frame 30
stop();
Symbol 874 MovieClip Frame 31
stop();
Symbol 874 MovieClip Frame 32
stop();
Symbol 874 MovieClip Frame 33
stop();
Symbol 874 MovieClip Frame 34
stop();
Symbol 874 MovieClip Frame 35
stop();
Symbol 875 MovieClip Frame 2
_root.playSound("gleam");
Symbol 875 MovieClip Frame 25
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 875 MovieClip Frame 32
stop();
Symbol 876 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 876 MovieClip Frame 20
if (!this._parent.dead) {
gotoAndPlay ("rest");
}
Symbol 876 MovieClip Frame 35
if (!this._parent.dead) {
gotoAndPlay ("walk");
}
Symbol 876 MovieClip Frame 41
_root.dudeHit(this._parent, box);
Symbol 876 MovieClip Frame 42
_root.dudeHit(this._parent, box);
Symbol 876 MovieClip Frame 43
_root.dudeHit(this._parent, box);
Symbol 876 MovieClip Frame 47
if (!this._parent.dead) {
this._parent.attacking = false;
gotoAndPlay ("rest");
}
Symbol 876 MovieClip Frame 75
_root.setNoise(0);
_root.updateHUD();
Symbol 877 MovieClip Frame 1
stop();
Symbol 878 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 880 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 881 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 882 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 883 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 887 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 927 MovieClip Frame 40
_root.addBossBall();
Symbol 945 MovieClip Frame 1
_root.grabBall();
Symbol 945 MovieClip Frame 4
_root.playSound("swing" + random(3));
Symbol 945 MovieClip Frame 7
_root.ballBomb();
_root.dudeHit(this._parent._parent, block1);
_root.dudeHit(this._parent._parent, block2);
Symbol 958 MovieClip Frame 3
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 6
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 8
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 10
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 12
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 18
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 20
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 23
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 25
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 27
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 29
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 35
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 37
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 38
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 40
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 42
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 44
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 46
_root.playSound("splosion1");
Symbol 958 MovieClip Frame 52
_root.playSound("lasersplode");
_root.flashIt();
Symbol 958 MovieClip Frame 70
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 958 MovieClip Frame 71
stop();
Symbol 958 MovieClip Frame 72
stop();
Symbol 958 MovieClip Frame 73
stop();
Symbol 958 MovieClip Frame 74
stop();
Symbol 958 MovieClip Frame 75
stop();
Symbol 958 MovieClip Frame 76
stop();
Symbol 958 MovieClip Frame 77
stop();
Symbol 958 MovieClip Frame 78
stop();
Symbol 958 MovieClip Frame 79
stop();
Symbol 958 MovieClip Frame 80
stop();
Symbol 958 MovieClip Frame 81
stop();
Symbol 958 MovieClip Frame 82
stop();
Symbol 958 MovieClip Frame 83
stop();
Symbol 958 MovieClip Frame 84
stop();
Symbol 958 MovieClip Frame 85
stop();
Symbol 958 MovieClip Frame 86
stop();
Symbol 958 MovieClip Frame 87
stop();
Symbol 958 MovieClip Frame 88
stop();
Symbol 958 MovieClip Frame 89
stop();
Symbol 958 MovieClip Frame 90
stop();
Symbol 958 MovieClip Frame 91
stop();
Symbol 958 MovieClip Frame 92
stop();
Symbol 958 MovieClip Frame 93
stop();
Symbol 958 MovieClip Frame 94
stop();
Symbol 958 MovieClip Frame 95
stop();
Symbol 958 MovieClip Frame 96
stop();
Symbol 958 MovieClip Frame 97
stop();
Symbol 958 MovieClip Frame 98
stop();
Symbol 958 MovieClip Frame 99
stop();
Symbol 958 MovieClip Frame 100
stop();
Symbol 958 MovieClip Frame 101
stop();
Symbol 958 MovieClip Frame 102
stop();
Symbol 958 MovieClip Frame 103
stop();
Symbol 958 MovieClip Frame 104
stop();
Symbol 958 MovieClip Frame 105
stop();
Symbol 958 MovieClip Frame 106
stop();
Symbol 958 MovieClip Frame 107
stop();
Symbol 958 MovieClip Frame 108
stop();
Symbol 958 MovieClip Frame 109
stop();
Symbol 958 MovieClip Frame 110
stop();
Symbol 958 MovieClip Frame 111
stop();
Symbol 958 MovieClip Frame 112
stop();
Symbol 958 MovieClip Frame 113
stop();
Symbol 958 MovieClip Frame 114
stop();
Symbol 958 MovieClip Frame 115
stop();
Symbol 958 MovieClip Frame 116
stop();
Symbol 958 MovieClip Frame 117
stop();
Symbol 958 MovieClip Frame 118
stop();
Symbol 958 MovieClip Frame 119
stop();
Symbol 958 MovieClip Frame 120
stop();
Symbol 958 MovieClip Frame 121
stop();
Symbol 958 MovieClip Frame 122
stop();
Symbol 958 MovieClip Frame 123
stop();
Symbol 958 MovieClip Frame 124
stop();
Symbol 958 MovieClip Frame 125
stop();
Symbol 958 MovieClip Frame 126
stop();
Symbol 958 MovieClip Frame 127
stop();
Symbol 958 MovieClip Frame 128
stop();
Symbol 962 MovieClip Frame 2
_root.playSound("gleam");
Symbol 962 MovieClip Frame 37
stop();
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 963 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 963 MovieClip Frame 4
stop();
_root.playLoudSound("raaar");
_root.setNoise(0);
Symbol 964 MovieClip Frame 1
stop();
Symbol 965 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 967 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 977 MovieClip Frame 1
this.lastframe = false;
Symbol 977 MovieClip Frame 10
_root.dragonBall(aimer);
Symbol 977 MovieClip Frame 18
_root.dragonBall(aimer);
Symbol 977 MovieClip Frame 25
_root.dragonBall(aimer);
Symbol 977 MovieClip Frame 110
stop();
this.lastframe = true;
_root.dragonBallStop();
Symbol 978 MovieClip Frame 1
stop();
Symbol 991 MovieClip Frame 4
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 5
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 7
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 9
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 11
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 13
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 22
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 24
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 26
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 28
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 30
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 38
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 39
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 41
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 43
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 45
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 47
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 54
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 56
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 58
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 60
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 62
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 64
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 66
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 68
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 70
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 72
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 74
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 76
_root.playSound("splosion1");
Symbol 991 MovieClip Frame 83
stop();
this.lastframe = true;
this.onEnterFrame = function () {
if (!_root.platpause) {
delete this.onEnterFrame;
_root.defeatBoss();
}
};
Symbol 991 MovieClip Frame 84
stop();
Symbol 991 MovieClip Frame 85
stop();
Symbol 991 MovieClip Frame 86
stop();
Symbol 991 MovieClip Frame 87
stop();
Symbol 991 MovieClip Frame 88
stop();
Symbol 991 MovieClip Frame 89
stop();
Symbol 991 MovieClip Frame 90
stop();
Symbol 991 MovieClip Frame 91
stop();
Symbol 991 MovieClip Frame 92
stop();
Symbol 991 MovieClip Frame 93
stop();
Symbol 991 MovieClip Frame 94
stop();
Symbol 991 MovieClip Frame 95
stop();
Symbol 991 MovieClip Frame 96
stop();
Symbol 991 MovieClip Frame 97
stop();
Symbol 991 MovieClip Frame 98
stop();
Symbol 991 MovieClip Frame 99
stop();
Symbol 991 MovieClip Frame 100
stop();
Symbol 991 MovieClip Frame 101
stop();
Symbol 991 MovieClip Frame 102
stop();
Symbol 991 MovieClip Frame 103
stop();
Symbol 991 MovieClip Frame 104
stop();
Symbol 991 MovieClip Frame 105
stop();
Symbol 991 MovieClip Frame 106
stop();
Symbol 991 MovieClip Frame 107
stop();
Symbol 991 MovieClip Frame 108
stop();
Symbol 991 MovieClip Frame 109
stop();
Symbol 991 MovieClip Frame 110
stop();
Symbol 991 MovieClip Frame 111
stop();
Symbol 991 MovieClip Frame 112
stop();
Symbol 994 MovieClip Frame 2
_root.playSound("gleam");
Symbol 994 MovieClip Frame 37
stop();
this.hitarea.onEnterFrame = function () {
_root.chkAwardGet(this);
};
Symbol 994 MovieClip Frame 38
stop();
Symbol 994 MovieClip Frame 39
stop();
Symbol 994 MovieClip Frame 40
stop();
Symbol 994 MovieClip Frame 41
stop();
Symbol 994 MovieClip Frame 42
stop();
Symbol 994 MovieClip Frame 43
stop();
Symbol 994 MovieClip Frame 44
stop();
Symbol 994 MovieClip Frame 45
stop();
Symbol 994 MovieClip Frame 46
stop();
Symbol 994 MovieClip Frame 47
stop();
Symbol 994 MovieClip Frame 48
stop();
Symbol 994 MovieClip Frame 49
stop();
Symbol 994 MovieClip Frame 50
stop();
Symbol 994 MovieClip Frame 51
stop();
Symbol 994 MovieClip Frame 52
stop();
Symbol 994 MovieClip Frame 53
stop();
Symbol 994 MovieClip Frame 54
stop();
Symbol 994 MovieClip Frame 55
stop();
Symbol 994 MovieClip Frame 56
stop();
Symbol 994 MovieClip Frame 57
stop();
Symbol 994 MovieClip Frame 58
stop();
Symbol 994 MovieClip Frame 59
stop();
Symbol 994 MovieClip Frame 60
stop();
Symbol 994 MovieClip Frame 61
stop();
Symbol 994 MovieClip Frame 62
stop();
Symbol 994 MovieClip Frame 63
stop();
Symbol 994 MovieClip Frame 64
stop();
Symbol 994 MovieClip Frame 65
stop();
Symbol 995 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 995 MovieClip Frame 15
stop();
this.lastframe = true;
_root.dragonUp();
Symbol 995 MovieClip Frame 16
this.lastframe = false;
Symbol 995 MovieClip Frame 40
_root.dragonDown();
this.lastframe = true;
stop();
Symbol 995 MovieClip Frame 41
this.lastframe = true;
_root.playLoudSound("raaar");
_root.setNoise(0);
Symbol 995 MovieClip Frame 42
this.lastframe = true;
stop();
Symbol 995 MovieClip Frame 43
stop();
Symbol 996 MovieClip Frame 1
stop();
Symbol 998 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 999 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 1000 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 1003 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 1004 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 1013 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 1034 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 1035 MovieClip [levelup] Frame 2
_root.setNoise(10);
Symbol 1035 MovieClip [levelup] Frame 6
_root.playLoudSound("levelup1");
Symbol 1035 MovieClip [levelup] Frame 23
stop();
Symbol 1041 MovieClip [fireballburst] Frame 6
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1050 MovieClip [magchooser] Frame 12
stop();
this.rdy = true;
Symbol 1073 MovieClip [boss0] Frame 40
gotoAndPlay (1);
Symbol 1079 MovieClip [boss1] Frame 40
gotoAndPlay (1);
Symbol 1083 MovieClip [boss2] Frame 1
if (!this.inited) {
this.inited = true;
this._xscale = 85;
this._yscale = this._xscale;
}
Symbol 1083 MovieClip [boss2] Frame 40
gotoAndPlay (1);
Symbol 1091 MovieClip [dungeon0] Frame 1
this._xscale = 70;
this._yscale = this._xscale;
Symbol 1094 MovieClip [footprint] Frame 25
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1103 MovieClip [groundpoof] Frame 17
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1115 MovieClip Frame 1
Symbol 1121 MovieClip Frame 1
_root.colorMe(this);
Symbol 1128 MovieClip Frame 1
Symbol 1135 MovieClip Frame 1
_root.colorMe(this);
Symbol 1143 MovieClip Frame 1
_root.colorMe(this);
Symbol 1146 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1146 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1147 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1147 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1148 MovieClip Frame 3
_root.mappy.checkAxeHit(hitarea);
Symbol 1148 MovieClip Frame 7
_root.mappy.endMapAtk();
Symbol 1149 MovieClip Frame 1
stop();
Symbol 1157 MovieClip [map_enemy0] Frame 1
this.temp = 0;
Symbol 1164 MovieClip [map_enemy1] Frame 1
this.temp = 1;
Symbol 1171 MovieClip [map_enemy2] Frame 1
this.temp = 2;
Symbol 1173 MovieClip [map_enemy3] Frame 1
this.temp = 1;
Symbol 1175 MovieClip [map_enemy4] Frame 1
this.temp = 1;
Symbol 1177 MovieClip [map_enemy5] Frame 1
this.temp = 1;
Symbol 1198 MovieClip [treesplode] Frame 24
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1203 MovieClip [watersplash] Frame 9
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1242 MovieClip [plat_heart] Frame 7
stop();
Symbol 1253 MovieClip Frame 17
_root.giveSpell(0);
Symbol 1253 MovieClip Frame 45
this._parent.gotoAndStop("rest");
stop();
Symbol 1254 MovieClip Frame 1
stop();
Symbol 1255 MovieClip Frame 1
stop();
Symbol 1256 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 1315 MovieClip Frame 1
stop();
Symbol 1328 Button
on (press) {
getURL ("http://www.armorgames.com", "_blank");
}
Symbol 1331 MovieClip Frame 1
_root.stop();
gotoAndPlay (2);
Symbol 1331 MovieClip Frame 185
_root.gotoAndStop("main");
Symbol 1372 MovieClip Frame 1
stop();
Symbol 1385 MovieClip Frame 1
this.onPress = function () {
};
Symbol 1394 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 1403 MovieClip Frame 1
but_start.onPress = function () {
_root.goTime();
};
Symbol 1408 MovieClip Frame 1
but_walk.onPress = function () {
getURL ("http://armorgames.com/guide/chibi-knight-video-guide", "_blank");
};
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 1408 MovieClip Frame 1334
gotoAndPlay ("repeat");
Symbol 1410 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1413 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1415 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1417 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1419 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1421 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1423 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1425 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1427 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1429 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1431 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1433 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1438 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1442 MovieClip Frame 1
this._parent.addMe(this);
this.tree = true;
this.woodvalue = 5;
stop();
this.cacheAsBitmap = true;
Symbol 1445 MovieClip Frame 1
stop();
this.woodvalue = 1;
this._parent.addMe(this);
this.tree = true;
this.cacheAsBitmap = true;
Symbol 1453 MovieClip Frame 50
stop();
this._parent.revealed = true;
Symbol 1455 MovieClip Frame 1
this._parent.addMe(this);
this.tree = true;
this.secret = true;
this.woodvalue = 0;
stop();
this.cacheAsBitmap = true;
Symbol 1472 MovieClip Frame 1
stop();
Symbol 1474 MovieClip Frame 1
stop();
Symbol 1476 MovieClip Frame 1
stop();
Symbol 1478 MovieClip Frame 1
stop();
Symbol 1480 MovieClip Frame 1
stop();
Symbol 1492 MovieClip Frame 1
stop();
if (_root.dooropen) {
gotoAndStop ("opened");
}
Symbol 1492 MovieClip Frame 2
_root.setNoise(0);
Symbol 1492 MovieClip Frame 3
_root.playSound("swing0");
Symbol 1492 MovieClip Frame 17
_root.playSound("splosion1");
Symbol 1492 MovieClip Frame 19
_root.playSound("splosion1");
Symbol 1492 MovieClip Frame 21
_root.playSound("splosion1");
Symbol 1492 MovieClip Frame 23
_root.playSound("splosion1");
Symbol 1492 MovieClip Frame 28
_root.playSound("ding");
_root.playSound("lasersplode");
Symbol 1492 MovieClip Frame 29
_root.hudd.flasher.gotoAndPlay(2);
_root.dooropen = true;
_root.hudd.updateMe();
_root.freshSave();
Symbol 1492 MovieClip Frame 64
stop();
_root.setNoise(_root.bgnoise);
this._parent.endMapAtk();
this._parent.cutscene = false;
Symbol 1498 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1502 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1504 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1506 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1511 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1513 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1515 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1520 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1522 MovieClip Frame 1
this.cacheAsBitmap = true;
Symbol 1525 MovieClip Frame 1
stop();
this.cacheAsBitmap = true;
Symbol 1537 MovieClip Frame 1
stop();
Symbol 1540 MovieClip Frame 1
stop();
Symbol 1544 MovieClip Frame 1
stop();
Symbol 1546 MovieClip Frame 1
Symbol 1551 MovieClip Frame 15
stop();
this.unloadMovie();
this.removeMovieClip();
Symbol 1552 MovieClip Frame 1
stop();
Symbol 1552 MovieClip Frame 2
stop();
Symbol 1571 MovieClip Frame 1
this._alpha = 0;
Symbol 1574 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;
_root.pastdungeon = 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;
}
}
if (tin.typ == 97) {
who._x = -1450;
who._y = -180;
}
}
_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 1574 MovieClip Frame 2
tranIt();
_root.pastdungeon = false;
Symbol 1590 MovieClip Frame 1
stop();
Symbol 1594 MovieClip Frame 1
stop();
Symbol 1594 MovieClip Frame 2
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1594 MovieClip Frame 3
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1594 MovieClip Frame 4
_root.mappy.dude.guts.gotoAndStop("rest_" + _root.mappy.dude.dir);
Symbol 1594 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 1598 MovieClip Frame 1
stop();
Symbol 1599 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 1717 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 1717 MovieClip Frame 1757
noconfetti = true;
Symbol 1717 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 1717 MovieClip Frame 1868
stop();