STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228126
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/24338306?noj=FRM24338306-13DC" width="1" height="1"></div>

Kingdom of Machines.swf

This is the info page for
Flash #40863

(Click the ID number above for more basic data on this flash file.)


Text
Start Game

Start Game

Controls

Controls

KINGDOM

of machines

Sound

Sound

by Isaac Williams - http://isaacwilliams.net

Music

Music

ver 1.3

Back

Back

Arrow Keys

Z Key

X Key

A and S KEY switch gun

W KEY toggles sound

E KEY toggles music

ActionScript [AS1/AS2]

Frame 1
function makeMenu() { var _local3 = _root.attachMovie("menu", "menu", _root.getNextHighestDepth()); _local3._x = 1000; _local3._y = 200; _local3.x = new Number(1000); _local3.onEnterFrame = function () { var _local2 = Stage.width - this.x; this.x = this.x + (_local2 / 10); this._x = Math.floor(this.x); }; } var loadGear = _root.attachMovie("loadGear", "loadGear", _root.getNextHighestDepth()); loadGear._x = Stage.width - 30; loadGear._y = Stage.height - (Stage.height / 3); var loadBar = _root.attachMovie("loadBar", "loadBar", _root.getNextHighestDepth()); loadBar._x = Stage.width - 133; loadBar._y = Stage.height - (Stage.height / 4); var vx = -5; loadBar.onEnterFrame = function () { var _local3 = _root.getBytesLoaded() / _root.getBytesTotal(); this.bar._xscale = _local3 * 100; _root.loadGear._rotation = _root.loadGear._rotation + 5; if (_local3 == 1) { delete this.onEnterFrame; this.onEnterFrame = function () { _root.vx = _root.vx + 0.5; this._x = this._x + _root.vx; _root.loadGear._x = _root.loadGear._x + _root.vx; _root.loadGear._rotation = _root.loadGear._rotation + (5 - (_root.vx * 2)); if (this._x > 1000) { _root.gotoAndStop("MENU"); removeMovieClip(this); } }; } }; _quality = "LOW"; stop();
Frame 13
function makeSoundIcon(isOn, mus) { if (!mus) { var _local3 = attachMovie("soundIcon", "soundIcon", _root.getNextHighestDepth()); } else { var _local3 = attachMovie("musicIcon", "soundIcon", _root.getNextHighestDepth()); } _local3.onEnterFrame = function () { this._alpha = this._alpha - 3; if (this._alpha < 0) { removeMovieClip(this); } }; if (!isOn) { _local3.gotoAndStop("OFF"); musicForest.stop(); musicDungeon.stop(); musicHome.stop(); } else { _local3.gotoAndStop("ON"); setSong(); } } function setSong() { musicForest.stop(); musicDungeon.stop(); musicHome.stop(); if (music) { if (currentSong == 1) { musicForest.start(0, 99999); musicForest.setVolume(50); } else if (currentSong == 2) { musicDungeon.start(0, 99999); musicDungeon.setVolume(50); } else if (currentSong == 3) { musicHome.start(0, 99999); musicHome.setVolume(50); } } } var pickup = new Sound(); pickup.attachSound("pickup.wav"); var soundSwitch = new Sound(); soundSwitch.attachSound("switch.wav"); var soundGunPlasma = new Sound(); soundGunPlasma.attachSound("gun_plasma.wav"); var soundExplode = new Sound(); soundExplode.attachSound("explode.wav"); var soundSword = new Sound(); soundSword.attachSound("sword.wav"); var soundHit = new Sound(); soundHit.attachSound("hit.wav"); var soundPowerup = new Sound(); soundPowerup.attachSound("powerup.wav"); var soundBeep = new Sound(); soundBeep.attachSound("beep.wav"); var musicForest = new Sound(); musicForest.attachSound("forestMusic.wav"); var musicDungeon = new Sound(); musicDungeon.attachSound("dungeonMusic.wav"); var musicHome = new Sound(); musicHome.attachSound("homeMusic.wav"); var currentSong = 1; var sound = true; var music = true; var soundListener = new Object(); soundListener.onKeyDown = function () { if (Key.getCode() == 87) { if (sound) { sound = false; makeSoundIcon(false, false); } else { sound = true; makeSoundIcon(true, false); } } if (Key.getCode() == 69) { if (music) { music = false; makeSoundIcon(false, true); setSong(); } else { music = true; makeSoundIcon(true, true); setSong(); } } }; setSong(); Key.addListener(soundListener);
Frame 45
function __com_mochibot__(swfid, mc, lv, trk) { var x; var g; var s; var fv; var sb; var u; var res; var mb; var mbc; mb = "__mochibot__"; mbc = "mochibot.com"; g = (_global ? (_global) : (_level0._root)); if (g[mb + swfid]) { return(g[mb + swfid]); } s = System.security; x = mc._root.getSWFVersion; fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5))); if (!s) { s = {}; } sb = s.sandboxType; if (sb == "localWithFile") { return(null); } x = s.allowDomain; if (x) { s.allowDomain(mbc); } x = s.allowInsecureDomain; if (x) { s.allowInsecureDomain(mbc); } u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=7&fv=") + fv) + "&v=") + escape(getVersion())) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : ""); lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv)))); g[mb + "level"] = lv; if (fv == 5) { res = "_level" + lv; if (!eval (res)) { loadMovieNum (u, lv); } } else { res = mc.createEmptyMovieClip(mb + swfid, lv); res.loadMovie(u); } return(res); } __com_mochibot__("803b7223", this, 10301, true); var doorF1_Town = new Array(); doorF1_Town = [[1, 1, 1, 1, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 2, 0], [501, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 2, 0], [1, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0]]; var doorF1_D1 = new Array(); doorF1_D1 = [[0, 0, 8, 8, 8, 8, 8, 8], [0, 0, 8, 7, 7, 7, 7, 8], [0, 6, 7, 0, 0, 0, 6, 7], [0, 0, 0, 0, 0, 0, 0, 502], [0, 6, 8, 0, 0, 0, 6, 8], [0, 0, 8, 8, 8, 8, 8, 8], [0, 0, 7, 7, 7, 7, 7, 7]]; var doorF1_F2 = new Array(); doorF1_F2 = [[1, 1, 504, 1, 1], [1, 0, 0, 0, 1], [1, 0, 0, 0, 1], [1, 2, 0, 0, 1], [0, 0, 0, 0, 0]]; var doorD1_F1 = new Array(); doorD1_F1 = [[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 3, 0, 0, 0, 1, 3, 0], [5, 503, 0, 0, 0, 0, 0, 0], [1, 3, 0, 0, 0, 1, 3, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]]; var doorF2_F1 = new Array(); doorF2_F1 = [[0, 0, 0, 0, 0], [1, 0, 0, 0, 1], [1, 0, 0, 0, 1], [1, 2, 0, 0, 1], [1, 1, 505, 1, 1]]; var doorF2_D2 = new Array(); doorF2_D2 = [[0, 0, 8, 8, 8, 8, 8, 8], [0, 0, 8, 7, 7, 7, 7, 8], [0, 6, 7, 0, 0, 0, 6, 7], [0, 0, 0, 0, 0, 0, 0, 506], [0, 6, 8, 0, 0, 0, 6, 8], [0, 0, 8, 8, 8, 8, 8, 8], [0, 0, 7, 7, 7, 7, 7, 7]]; var doorD2_F2 = new Array(); doorD2_F2 = [[0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 3, 0, 0, 0, 1, 3, 0], [5, 507, 0, 0, 0, 0, 0, 0], [1, 3, 0, 0, 0, 1, 3, 0], [1, 1, 1, 1, 1, 1, 0, 0], [1, 1, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0]]; var doorF3_town = new Array(); doorF3_town = [[0, 0, 0, 0, 0], [1, 0, 0, 0, 1], [1, 0, 0, 0, 1], [1, 2, 0, 0, 1], [1, 1, 509, 1, 1]]; var doorD3_F3 = new Array(); doorD3_F3 = [[0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0], [0, 1, 3, 0, 4, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 3, 513, 4, 1, 0], [0, 1, 1, 5, 1, 1, 0]]; var doorF3_D3 = new Array(); doorF3_D3 = [[1, 1, 512, 1, 1], [1, 0, 0, 0, 1], [1, 0, 0, 0, 1], [1, 2, 0, 0, 1], [0, 0, 0, 0, 0]]; var doorF4_Town = new Array(); doorF4_Town = [[0, 0, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 2, 1], [0, 0, 0, 0, 0, 0, 515], [0, 0, 0, 0, 0, 2, 1], [0, 0, 0, 6, 1, 1, 1]]; var doorF4_D4 = new Array(); doorF4_D4 = [[1, 1, 1, 1, 0], [6, 5, 0, 0, 0], [516, 0, 0, 0, 0], [6, 5, 0, 0, 0], [1, 1, 2, 0, 0]]; var doorD4_F4 = new Array(); doorD4_F4 = [[0, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1], [0, 1, 3, 0, 4, 1], [0, 0, 0, 0, 517, 5], [0, 1, 3, 0, 4, 1], [0, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1]]; var doorD5_Town = new Array(); doorD5_Town = [[0, 1, 1, 5, 1, 1, 0], [0, 1, 4, 519, 3, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 1, 0], [0, 1, 3, 0, 4, 1, 0], [0, 0, 0, 0, 0, 0, 0]]; var bossRoom = new Array(); bossRoom = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 0, 0, 1, 1, 1, 0], [0, 1, 1, 1, 0, 0, 1, 1, 1, 0], [0, 1, 0, 0, 0, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 0, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 300, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 0, 0, 0, 0, 0, 0, 1, 0], [0, 1, 0, 0, 0, 0, 0, 0, 1, 0], [0, 1, 1, 1, 0, 0, 1, 1, 1, 0], [0, 1, 1, 1, 0, 0, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]; var house = new Array(); house = [[5, 1, 2, 6, 1, 6, 5, 5, 5], [5, 3, 4, 0, 0, 0, 5, 5, 5], [5, 0, 0, 0, 0, 0, 2, 1, 5], [5, 5, 5, 0, 5, 0, 0, 0, 5], [5, 2, 1, 0, 5, 0, 0, 0, 5], [5, 0, 0, 0, 5, 0, 0, 0, 5], [5, 0, 0, 0, 5, 0, 0, 0, 5], [5, 3, 4, 0, 5, 0, 0, 0, 5], [5, 5, 5, 5, 5, 5, 510, 5, 5], [5, 5, 5, 5, 5, 5, 5, 5, 5]]; var town = new Array(); town = [[0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 508, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0], [7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0], [7, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 3, 0, 0], [7, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 3, 0, 0], [7, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, 1, 0, 0, 0, 3, 3, 3], [7, 0, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, 0, 1, 0, 0, 3], [7, 0, 1, 1, 2, 2, 2, 1, 1, 2, 2, 2, 2, 2, 1, 1, 1, 0, 0, 0, 0, 3], [7, 0, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 3], [7, 0, 1, 1, 2, 2, 2, 1, 1, 2, 2, 5, 2, 2, 2, 2, 1, 1, 1, 0, 0, 11], [7, 0, 1, 1, 2, 2, 2, 1, 1, 2, 2, 4, 2, 2, 2, 2, 1, 1, 0, 0, 0, 500], [7, 0, 1, 1, 2, 2, 2, 1, 1, 2, 2, 1, 2, 2, 2, 2, 1, 1, 0, 0, 0, 3], [10, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3], [8, 0, 1, 1, 1, 5, 5, 5, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 0, 3], [514, 0, 1, 1, 1, 5, 5, 5, 5, 5, 5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 0, 3], [8, 0, 1, 1, 1, 4, 6, 4, 511, 6, 4, 2, 2, 1, 1, 1, 1, 1, 1, 0, 0, 3], [0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3], [0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 3], [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 0, 3], [7, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, 0, 0, 0, 3], [7, 0, 0, 8, 0, 9, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 3, 0], [0, 11, 11, 8, 518, 9, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 3, 0]]; function makeRandomMap(mapName, w, h, basicFill, tileSet) { _root[mapName] = new Object(); _root[mapName].tileSet = tileSet; _root[mapName].width = w; _root[mapName].height = h; _root[mapName].map = new Array(); i = 0; while (i < h) { j = 0; while (j < w) { _root[mapName].map.push(basicFill); j++; } i++; } _root[mapName].enemyList = new Array(); _root[mapName].containerList = new Array(); _root[mapName].song = new Number(); if ((tileSet == "TOWN") || (tileSet == "FOREST")) { _root[mapName].song = 1; } else if (tileSet == "DUNGEON") { _root[mapName].song = 2; } else if (tileSet == "HOUSE") { _root[mapName].song = 3; } _root[mapName].getTile = function (x, y) { if ((((x >= 0) && (x < this.width)) && (y >= 0)) && (y < this.height)) { return(this.map[(y * this.width) + x]); } return(1); }; _root[mapName].setTile = function (x, y, val) { this.map[(y * this.width) + x] = val; }; _root[mapName].getRandomTile = function (tx, ty, bx, by, val) { var _local5 = false; var _local6 = 0; var _local7; var _local3; var _local2; while (_local5 == false) { _local3 = Math.round(Math.random() * (bx - tx)) + tx; _local2 = Math.round(Math.random() * (by - ty)) + ty; _local7 = this.getTile(_local3, _local2); _local6++; if (_local7 == val) { var _local4 = new Array(); _local4 = [_local3, _local2]; return(_local4); } if (_local6 > 5000) { var _local4 = new Array(); _local4 = [_local3, _local2]; return(_local4); } } }; } function addNoise(map, amount, val) { i = 0; while (i < map.height) { j = 0; while (j < map.width) { if (Math.random() < amount) { map.setTile(j, i, val); } j++; } i++; } } function drawLines(map, interval, numLines, minLength, maxLength, val) { var _local11 = Math.floor(map.width / interval); var _local12 = Math.floor(map.height / interval); var _local4; var _local3; var _local8; var _local2; var _local1; var _local6; i = 0; while (i < numLines) { _local4 = Math.floor(Math.random() * _local11) * interval; _local3 = Math.floor(Math.random() * _local12) * interval; _local6 = Math.random(); if (_local6 < 0.25) { _local2 = 1; _local1 = 0; } else if ((_local6 >= 0.25) && (_local6 < 0.5)) { _local2 = -1; _local1 = 0; } else if ((_local6 >= 0.5) && (_local6 < 0.75)) { _local2 = 0; _local1 = 1; } else { _local2 = 0; _local1 = -1; } _local8 = (Math.random() * (maxLength - minLength)) + minLength; j = 0; while (j < _local8) { map.setTile(_local4, _local3, val); if ((map.getTile(_local4 + _local2, _local3 + _local1) != val) && (map.getTile(_local4 + _local2, _local3 + _local1) != null)) { _local4 = _local4 + _local2; _local3 = _local3 + _local1; } else { break; } j++; } i++; } } function addLandmark(map, landmark, minX, maxX, minY, maxY) { var _local8 = landmark[0].length; var _local9 = landmark.length; var _local6 = map.getRandomTile(minX, minY, maxX - _local8, maxY - _local9, 0); var _local5; var _local4; if ((minX == map.width) && (maxX == map.width)) { _local6[0] = map.width - _local8; } if ((minY == map.height) && (maxY == map.height)) { _local6[1] = map.height - _local9; } y = 0; while (y < _local9) { x = 0; while (x < _local8) { _local5 = x + _local6[0]; _local4 = y + _local6[1]; map.setTile(_local5, _local4, landmark[y][x]); if (landmark[y][x] >= 500) { var _local2 = _root["door" + (landmark[y][x] - 500)]; _local2.pos[0] = _local5; _local2.pos[1] = _local4; } x++; } y++; } } function getLine(map, startX, startY, dirX, dirY, val) { var _local1 = 0; var _local3 = startX; var _local2 = startY; while (_local1 >= 0) { if (map.getTile(_local3 + dirX, _local2 + dirY) == val) { _local3 = _local3 + dirX; _local2 = _local2 + dirY; _local1++; continue; } return(_local1); } } function addContainer(map, type) { var _local3 = map.getRandomTile(0, 0, map.width, map.height, 0); map.containerList.push(new Object()); var _local2 = map.containerList[map.containerList.length - 1]; _local2.xtile = _local3[0]; _local2.ytile = _local3[1]; _local2.contType = type; _local2.collected = false; } function addBoss(map, type) { map.boss = new Object(); map.boss.xtile = 0; map.boss.ytile = 0; map.boss.xtileStart = 0; map.boss.ytileStart = 0; map.boss.alive = true; map.boss.hp = 6; map.boss.tpe = type; var _local3 = 1; var _local5 = 1; var _local4 = 1; map.boss.mv = new Array(); if ((type == "PLASMA") || (type == "FINAL")) { map.boss.mv = [[-1, 0], [-1, -3], [-1, -3], [0, -3], [2, -3], [2, -3], [2, 0], [2, 3], [2, 3], [0, 3], [-1, 3], [-1, 3]]; map.boss.mvSpeed = 35; map.boss.speed = 2; map.boss.gun = plasmaGun; } if (type == "SNIPER") { map.boss.mv = [[-1, 0], [-1, -3], [-1, -3], [0, -3], [2, -3], [2, -3], [2, 0], [2, 3], [2, 3], [0, 3], [-1, 3], [-1, 3]]; map.boss.mvSpeed = 25; map.boss.speed = 5; map.boss.gun = sniperGun; _local5 = 1.7; _local4 = 1.6; } if (type == "GRENADE") { map.boss.mv = [[-1, -3], [2, -3], [2, -1], [-1, -1], [-1, 1], [2, 1], [2, 3], [-1, 3], [-1, 0]]; map.boss.mvSpeed = 50; map.boss.speed = 5; map.boss.gun = grenadeGun; _local3 = 1.9; } if (type == "FTHROWER") { map.boss.mv = [[-1, -3], [-1, -2], [-1, -1], [-1, 0], [-1, 1], [-1, 2], [-1, 3], [2, -3], [2, -2], [2, -1], [2, 0], [2, 1], [2, 2], [2, 3]]; map.boss.mvSpeed = 20; map.boss.speed = 5; map.boss.gun = fthrowerGun; _local5 = 1.7; _local3 = 1.1; _local4 = 0.9; } map.boss.colour = new flash.geom.ColorTransform(); map.boss.colour.redMultiplier = _local3; map.boss.colour.greenMultiplier = _local5; map.boss.colour.blueMultiplier = _local4; } function addEnemySquad(map, type, min, max, spread) { var _local10 = Math.round(Math.random() * (max - min)) + min; var _local2 = map.getRandomTile(0, 0, map.width, map.height, 0); var _local4; i = 0; while (i < _local10) { map.enemyList.push(new Object()); var _local5 = map.enemyList.length - 1; en = map.enemyList[_local5]; en.enType = type; _local4 = map.getRandomTile(_local2[0] - spread, _local2[1] - spread, _local2[0] + spread, _local2[1] + spread, 0); en.xtileStart = _local4[0]; en.ytileStart = _local4[1]; if (en.enType == "ROLYPOLY") { en.hpStart = game.rolyPolyHP; en.plasDrop = game.rolyPolyDrop; var _local9 = getLine(map, en.xtileStart, en.ytileStart, 1, 0, 0); var _local7 = getLine(map, en.xtileStart, en.ytileStart, -1, 0, 0); var _local8 = getLine(map, en.xtileStart, en.ytileStart, 0, 1, 0); var _local6 = getLine(map, en.xtileStart, en.ytileStart, 0, -1, 0); if ((_local9 + _local7) < (_local8 + _local6)) { if (Math.random() < 0.5) { en.vxStart = 1 * game.rolyPolySpeed; } else { en.vxStart = -1 * game.rolyPolySpeed; } en.vyStart = 0; } else { en.vxStart = 0; if (Math.random() < 0.5) { en.vyStart = 1 * game.rolyPolySpeed; } else { en.vyStart = -1 * game.rolyPolySpeed; } } en.speed = game.rolyPolySpeed; en.damage = game.rolyPolyDamage; en.width = 8; en.height = 8; en.xSubTile = 0; en.ySubTile = 0; } if (en.enType == "THUMPER") { en.hpStart = game.thumperHP; en.plasDrop = game.thumperDrop; var _local9 = getLine(map, en.xtileStart, en.ytileStart, 1, 0, 0); var _local7 = getLine(map, en.xtileStart, en.ytileStart, -1, 0, 0); var _local8 = getLine(map, en.xtileStart, en.ytileStart, 0, 1, 0); var _local6 = getLine(map, en.xtileStart, en.ytileStart, 0, -1, 0); if ((_local9 + _local7) > (_local8 + _local6)) { if (Math.random() < 0.5) { en.vxStart = 1 * game.thumperSpeed; } else { en.vxStart = -1 * game.thumperSpeed; } en.vyStart = 0; } else { en.vxStart = 0; if (Math.random() < 0.5) { en.vyStart = 1 * game.thumperSpeed; } else { en.vyStart = -1 * game.thumperSpeed; } } en.speed = game.thumperSpeed; en.damage = game.thumperDamage; en.width = 10; en.height = 10; en.xSubTile = 0; en.ySubTile = 0; } if (en.enType == "SKITTER") { en.hpStart = game.skitterHP; en.plasDrop = game.skitterDrop; en.gun = game.skitterGun; dir = Math.random(); if (dir < 0.25) { en.vxStart = 1 * game.skitterSpeed; en.vyStart = 0; } else if ((dir >= 0.25) && (dir < 0.5)) { en.vxStart = -1 * game.skitterSpeed; en.vyStart = 0; } else if ((dir >= 0.5) && (dir < 0.75)) { en.vxStart = 0; en.vyStart = 1 * game.skitterSpeed; } else { en.vxStart = 0; en.vyStart = -1 * game.skitterSpeed; } en.speed = game.skitterSpeed; en.width = 8; en.height = 8; en.xSubTile = 0; en.ySubTile = 0; } if (en.enType == "GRANMA") { en.xtileStart = 3; en.ytileStart = 3; en.hpStart = 1; en.plasDrop = 0; en.speed = 5; en.stun = 0; en.width = 8; en.height = 8; en.vxStart = 0; en.vyStart = 0; en.xSubTile = 0; en.ySubTile = 0; } if (en.enType == "ENDBOSSGLOATER") { en.xtileStart = 6; en.ytileStart = 15; en.hpStart = 1; en.plasDrop = 0; en.speed = 5; en.stun = 0; en.width = 8; en.height = 8; en.vxStart = 0; en.vyStart = 0; en.xSubTile = 0; en.ySubTile = 0; } i++; } } function buildMap(map) { removeMovieClip(tileHolder); _root.createEmptyMovieClip("tileHolder", _root.getNextHighestDepth()); i = 0; while (i < map.height) { j = 0; while (j < map.width) { tileName = (("t_" + i) + "_") + j; tileHolder.attachMovie("tile", tileName, tileHolder.getNextHighestDepth()); tileHolder[tileName]._x = j * game.tileW; tileHolder[tileName]._y = i * game.tileH; if (map.getTile(j, i) == 0) { tileHolder[tileName].walkable = true; } else { tileHolder[tileName].walkable = false; } tileHolder[tileName].gotoAndStop(setTile(map, j, i)); j++; } i++; } mapWidth = map.width * game.tileW; mapHeight = map.height * game.tileH; game.containerList = new Array(); game.containerList = map.containerList; tileHolder.createEmptyMovieClip("contHolder", tileHolder.getNextHighestDepth()); var _local3; i = 0; while (i < game.containerList.length) { _local3 = game.containerList[i]; if (_local3.contType == "HP") { _local3.collected = false; } if (!_local3.collected) { tileHolder.contHolder.attachMovie("container", "c_" + i, tileHolder.contHolder.getNextHighestDepth()); _local3.clip = tileHolder.contHolder["c_" + i]; _local3.x = _local3.xtile * game.tileW; _local3.y = _local3.ytile * game.tileH; _local3.clip._x = _local3.x; _local3.clip._y = _local3.y; _local3.xSubTile = Math.floor(_local3.x / game.subTileW); _local3.ySubTile = Math.floor(_local3.y / game.subTileH); tileHolder[(("t_" + _local3.ytile) + "_") + _local3.xtile].walkable = false; if (_local3.contType == "HP") { _local3.clip.gotoAndStop("HP"); } if (_local3.contType == "HPUP") { _local3.clip.gotoAndStop("HPUP"); } if (_local3.contType == "PLUP") { _local3.clip.gotoAndStop("PLUP"); } } i++; } game.enemyList = new Array(); game.enemyList = map.enemyList; tileHolder.createEmptyMovieClip("enemyHolder", tileHolder.getNextHighestDepth()); i = 0; while (i < game.enemyList.length) { if (game.enemyList[i].enType == "ROLYPOLY") { tileHolder.enemyHolder.attachMovie("mc_rolyPoly", "e_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } if (game.enemyList[i].enType == "THUMPER") { tileHolder.enemyHolder.attachMovie("mc_thumper", "e_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } if (game.enemyList[i].enType == "SKITTER") { tileHolder.enemyHolder.attachMovie("mc_skitter", "e_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } if (game.enemyList[i].enType == "GRANMA") { tileHolder.enemyHolder.attachMovie("mc_granny", "e_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } if ((game.enemyList[i].enType == "ENDBOSSGLOATER") && (bossShow)) { tileHolder.enemyHolder.attachMovie("mc_finalBoss", "e_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } game.enemyList[i].id = i; game.enemyList[i].hp = game.enemyList[i].hpStart; game.enemyList[i].alive = true; game.enemyList[i].stun = 0; game.enemyList[i].behave = 0; game.enemyList[i].vxFunc = game.enemyList[i].vxStart; game.enemyList[i].vyFunc = game.enemyList[i].vyStart; game.enemyList[i].vx = game.enemyList[i].vxStart; game.enemyList[i].vy = game.enemyList[i].vyStart; game.enemyList[i].clip = tileHolder.enemyHolder["e_" + i]; game.enemyList[i].xtile = game.enemyList[i].xtileStart; game.enemyList[i].ytile = game.enemyList[i].ytileStart; game.enemyList[i].x = (game.enemyList[i].xtile * game.tileW) + (game.subTileW / 2); game.enemyList[i].y = (game.enemyList[i].ytile * game.tileH) + (game.subTileH / 2); game.enemyList[i].clip._x = game.enemyList[i].x; game.enemyList[i].clip._y = game.enemyList[i].y; if ((game.enemyList[i].enType == "GRANMA") && (!firstRun)) { game.enemyList[i].xtile = 6; game.enemyList[i].ytile = 4; game.enemyList[i].x = (game.enemyList[i].xtile * game.tileW) + (game.subTileW / 2); game.enemyList[i].y = (game.enemyList[i].ytile * game.tileH) + (game.subTileH / 2); game.enemyList[i].clip._x = game.enemyList[i].x; game.enemyList[i].clip._y = game.enemyList[i].y; game.enemyList[i].vx = 0; game.enemyList[i].vy = 0; game.enemyList[i].behave = 10; } if (game.enemyList[i].enType == "ENDBOSSGLOATER") { game.enemyList[i].x = (game.enemyList[i].xtile * game.tileW) + (game.subTileW / 2); game.enemyList[i].y = (game.enemyList[i].ytile * game.tileH) + (game.subTileH / 2); game.enemyList[i].clip._x = game.enemyList[i].x; game.enemyList[i].clip._y = game.enemyList[i].y; game.enemyList[i].vx = 0; game.enemyList[i].vy = 0; game.enemyList[i].behave = 0; game.enemyList[i].clip.gotoAndStop("SITNOSMASH"); } if ((game.enemyList[i].enType == "ENDBOSSGLOATER") && (!bossShow)) { game.enemyList[i].x = 0; game.enemyList[i].y = 0; game.enemyList[i].clip._x = game.enemyList[i].x; game.enemyList[i].clip._y = game.enemyList[i].y; game.enemyList[i].vx = 0; game.enemyList[i].vy = 0; game.enemyList[i].behave = 0; game.enemyList[i].clip.gotoAndStop("SITNOSMASH"); } if (DEBUG) { game.enemyList[i].tile = tileHolder.enemyHolder.attachMovie("subTile", "e_t_" + i, tileHolder.enemyHolder.getNextHighestDepth()); } tileName = (("t_" + game.enemyList[i].ytile) + "_") + game.enemyList[i].xtile; if (!tileHolder[tileName].walkable) { game.enemyList[i].alive = false; removeMovieClip(game.enemyList[i].clip); } i++; } tileHolder.createEmptyMovieClip("particleHolder", tileHolder.getNextHighestDepth()); game.particleList = new Array(); tileHolder.attachMovie("mc_player", "playerClip", tileHolder.getNextHighestDepth()); player.clip = tileHolder.playerClip; player.x = (player.xtile * game.tileW) + (game.tileW / 2); player.y = (player.ytile * game.tileH) + (game.tileH / 2); player.vx = 0; player.vy = 0; player.clip._x = player.x; player.clip._y = player.y; if (player.facingX == -1) { player.clip.gotoAndStop("LEFT"); } else if (player.facingX == 1) { player.clip.gotoAndStop("RIGHT"); } else if (player.facingY == -1) { player.clip.gotoAndStop("UP"); } else if (player.facingY == 1) { player.clip.gotoAndStop("DOWN"); } if ((map.boss != null) && (map.boss.alive)) { boss = map.boss; if (boss.tpe != "FINAL") { boss.clip = tileHolder.attachMovie("mc_boss", "clip", tileHolder.getNextHighestDepth()); } else { boss.clip = tileHolder.attachMovie("mc_finalBoss", "clip", tileHolder.getNextHighestDepth()); boss.trans = 0; } boss.clip.transform.colorTransform = boss.colour; boss.clip._visible = false; boss.clip.stop(); boss.x = (boss.xtile * game.tileW) + 16; boss.y = (boss.ytile * game.tileH) + 16; boss.vx = 0; boss.vy = 0; boss.clip._x = boss.x; boss.clip._y = boss.y; boss.width = 48; boss.height = 16; boss.xSubTile = 0; boss.ySubTile = 0; boss.enType = "BOSS"; boss.stun = 0; boss.behave = 0; boss.mvId = 0; boss.killMode = false; boss.hp = 6; } else { boss = null; } displayBars(); var fadeSpeed; if (firstRun) { fadeSpeed = 1; } else { fadeSpeed = 7; } var _local5 = _root.attachMovie("mapTrans", "trans", _root.getNextHighestDepth()); _local5.onEnterFrame = function () { this._alpha = this._alpha - fadeSpeed; if (this._alpha <= 0) { removeMovieClip(this); } }; currentSong = map.song; if (sound) { setSong(); } } function setTile(map, x, y) { var _local7 = (("t_" + y) + "_") + x; var _local2 = map.getTile(x, y); var _local13 = map.getTile(x - 1, y - 1); var _local8 = map.getTile(x, y - 1); var _local12 = map.getTile(x + 1, y - 1); var _local4 = map.getTile(x - 1, y); var _local5 = map.getTile(x + 1, y); var _local14 = map.getTile(x - 1, y + 1); var _local6 = map.getTile(x, y + 1); var _local15 = map.getTile(x + 1, y + 1); if (_local2 >= 500) { var _local11 = _root["door" + (_local2 - 500)]; tileHolder[_local7].walkable = true; tileHolder[_local7].door = _local11; if (_local11.lockType == "NONE") { if (map.tileSet == "DUNGEON") { return("D_DOOR_O"); } if (map.tileSet == "HOUSE") { return("H_DOOR"); } if ((map.tileSet == "TOWN") || (map.tileSet == "FOREST")) { if (_local8 == 5) { return("T_HOUSE_DOOR"); } if (_local6 == 0) { return("F_EXIT_N"); } if (_local8 == 0) { return("F_EXIT_S"); } if (_local5 == 0) { return("F_EXIT_W"); } if (_local4 == 0) { return("F_EXIT_E"); } } } else { if (_local11.locked == true) { tileHolder[_local7].walkable = false; tileHolder[_local7].light = tileHolder[_local7].attachMovie("light", "light", tileHolder[_local7].getNextHighestDepth()); tileHolder[_local7].light.gotoAndStop(_local11.lockType); return("D_DOOR"); } return("D_DOOR_O"); } } if (_local2 == 300) { if (map.boss != null) { map.boss.xtile = x; map.boss.ytile = y; map.boss.xtileStart = x; map.boss.ytileStart = y; } tileHolder[_local7].boss = true; tileHolder[_local7].walkable = true; return("D_FLOOR_BOSS_LL"); } if (map.tileSet == "DUNGEON") { if (_local2 == 0) { if (_local4 == 300) { tileHolder[_local7].boss = true; if ((map.boss != null) && (map.boss.alive)) { map.boss.glowTile = tileHolder[_local7].attachMovie("glowMc", "glowTile", tileHolder[_local7].getNextHighestDepth()); } return("D_FLOOR_BOSS_LR"); } if (_local6 == 300) { tileHolder[_local7].boss = true; return("D_FLOOR_BOSS_UL"); } if (_local14 == 300) { tileHolder[_local7].boss = true; return("D_FLOOR_BOSS_UR"); } if (((_local4 == 1) && (_local5 == 0)) && (_local13 == 1)) { return("D_FLOOR_SHAD_R"); } if (((_local4 == 0) && (_local5 == 1)) && (_local12 == 1)) { return("D_FLOOR_SHAD_L"); } if ((_local4 == 1) && (_local5 == 1)) { return("D_FLOOR_SHAD_B"); } return("D_FLOOR_BASIC"); } if (_local2 == 1) { if ((((_local4 == 0) && (_local5 == 0)) && (_local8 == 0)) && (_local6 == 0)) { return("D_WALL_STATUE"); } if ((_local6 == 0) && (_local8 == 0)) { return("D_WALL_BARS"); } if (_local6 != 1) { return("D_WALL_BASIC"); } return("D_WALL_INSIDE"); } if (_local2 == 3) { return("D_GATE_SIDE_E"); } if (_local2 == 4) { return("D_GATE_SIDE_W"); } if (_local2 == 5) { if (_local6 >= 500) { return("D_EXIT_N"); } if (_local8 >= 500) { return("D_EXIT_S"); } if (_local4 >= 500) { return("D_EXIT_E"); } if (_local5 >= 500) { return("D_EXIT_W"); } } } else if (map.tileSet == "FOREST") { if (_local2 == 0) { return("F_GRASS"); } if (_local2 == 5) { return("F_DOORWAY_R"); } if (_local2 == 6) { return("F_DOORWAY_L"); } if (_local2 == 7) { return("D_WALL_BASIC"); } if (_local2 == 8) { return("D_WALL_INSIDE"); } if (_local2 == 1) { if ((_local4 == 0) && (_local5 == 1)) { return("F_CLIFF_CL"); } if ((_local5 == 0) && (_local4 == 1)) { return("F_CLIFF_CR"); } if (((((((_local8 == 0) && (_local6 == 0)) || ((_local8 == 2) && (_local6 == 2))) || ((_local8 == 0) && (_local6 == 2))) || ((_local8 == 2) && (_local6 == 0))) || ((_local8 == 1) && (_local6 == 0))) || ((_local8 == 0) && (_local6 == 1))) { return("F_CLIFF_UD"); } return("F_CLIFF"); } if (_local2 == 2) { return("F_TREE"); } } else if (map.tileSet == "TOWN") { if (_local2 == 0) { return("F_GRASS"); } if (_local2 == 1) { tileHolder[_local7].walkable = true; if (_local4 == 0) { return("T_DIRT_W"); } if (_local5 == 0) { return("T_DIRT_E"); } if (_local8 == 0) { return("T_DIRT_N"); } if (_local6 == 0) { return("T_DIRT_S"); } return("T_DIRT"); } if (_local2 == 2) { tileHolder[_local7].walkable = true; if ((_local8 == 1) && (_local4 == 1)) { return("T_BURNED_NW"); } if ((_local8 == 1) && (_local5 == 1)) { return("T_BURNED_NE"); } if ((_local6 == 1) && (_local4 == 1)) { return("T_BURNED_SW"); } if ((_local6 == 1) && (_local5 == 1)) { return("T_BURNED_SE"); } if (_local8 == 1) { return("T_BURNED_N"); } if (_local6 == 1) { return("T_BURNED_S"); } if (_local4 == 1) { return("T_BURNED_W"); } if (_local5 == 1) { return("T_BURNED_E"); } tileHolder[_local7].walkable = false; return("T_BURNED"); } if (_local2 == 3) { if ((_local4 == 0) && (_local5 == 3)) { return("F_CLIFF_CL"); } if ((_local5 == 0) && (_local4 == 3)) { return("F_CLIFF_CR"); } if (((_local8 == 0) && (_local6 == 0)) || ((_local8 == 1) && (_local6 == 0))) { return("F_CLIFF_UD"); } return("F_CLIFF"); } if (_local2 == 4) { return("T_HOUSE_WALL"); } if (_local2 == 5) { return("T_HOUSE_ROOF"); } if (_local2 == 6) { return("T_HOUSE_WINDOW"); } if (_local2 == 7) { return("F_CLIFF_R"); } if (_local2 == 8) { return("D_GATE_SIDE_E"); } if (_local2 == 9) { return("D_GATE_SIDE_W"); } if (_local2 == 10) { return("F_CLIFF_CR"); } if (_local2 == 11) { return("F_CLIFF_UD"); } } else { if (_local2 == 0) { if (((_local4 == 5) && (_local5 == 5)) || ((_local4 == 1) && (_local5 == 5))) { return("H_FLOOR_SHAD_B"); } if (((_local4 == 1) || (_local4 == 5)) || (_local4 == 2)) { return("H_FLOOR_SHAD_L"); } if (((_local5 == 1) || (_local5 == 5)) || (_local5 == 2)) { return("H_FLOOR_SHAD_R"); } return("H_FLOOR"); } if (_local2 == 1) { return("H_WALL"); } if (_local2 == 2) { return("H_BOOKS"); } if (_local2 == 3) { return("H_BED1"); } if (_local2 == 4) { return("H_BED2"); } if (_local2 == 5) { return("H_BLACK"); } if (_local2 == 6) { return("H_WINDOW"); } } } function displayBars() { removeMovieClip(_root.barHolder); _root.createEmptyMovieClip("barHolder", _root.getNextHighestDepth()); barHolder._x = Stage.width; var _local2 = 0; while (_local2 < player.maxHp) { barPiece = barHolder.attachMovie("bar_hp", "hp_" + _local2, barHolder.getNextHighestDepth()); if (_local2 < player.hp) { barPiece.gotoAndStop(1); } else { barPiece.gotoAndStop(2); } barPiece._x = (_local2 + 1) * -16; _local2++; } if (player.gunList.length > 0) { _local2 = 0; while (_local2 < player.maxPl) { barPiece = barHolder.attachMovie("bar_pl", "pl_" + _local2, barHolder.getNextHighestDepth()); if (_local2 < player.pl) { barPiece.gotoAndStop(1); } else { barPiece.gotoAndStop(2); } barPiece._x = (_local2 + 1) * -16; barPiece._y = 16; _local2++; } var _local3 = barHolder.attachMovie("pixelGuns", "gun", barHolder.getNextHighestDepth()); _local3.gotoAndStop(player.gun.sprite); _local3._x = 0; _local3._y = 32; var barPiece; } } function displayText(words) { var _local3 = _root.attachMovie("textbox", "textbox", _root.getNextHighestDepth()); _local3._x = 90; _local3._y = 250; _local3.words = new String(words); _local3.currentText = new String(""); _local3.i = new Number(0); _local3.style = new TextFormat(); _local3.style.font = "04b03"; _local3.style.size = 16; _local3.tf = _local3.createTextField(tf, _local3.getNextHighestDepth(), 15, 10, 280, 100); _local3.tf.selectable = false; _local3.tf.wordWrap = true; _local3.tf.embedFonts = true; _local3.tf.setTextFormat(_local3.style); _local3.arrowPic._visible = false; run = false; _local3.onEnterFrame = function () { if (this.i < this.words.length) { this.currentText = this.currentText + this.words.charAt(this.i++); if (Key.isDown(90)) { this.currentText = this.currentText + this.words.charAt(this.i++); } this.tf.text = this.currentText; this.tf.setTextFormat(this.style); if (_root.sound) { soundBeep.start(); } } else { this.arrowPic._visible = true; if (Key.isDown(90)) { _root.run = true; if (sound) { soundSwitch.start(); } removeMovieClip(this); } } }; } function endGame() { control = false; var _local3 = _root.attachMovie("mapTrans", "trans", _root.getNextHighestDepth()); _local3._alpha = 0; _local3.texts = new Array(); _local3.texts = ["KINGDOM OF MACHINES.", "MADE IN 2007 BY ISAAC WILLIAMS FOR BAIM RMIT.", "THANKS TO ALL FOR YOUR SUPPORT!"]; _local3.tId = 0; _local3.onEnterFrame = function () { this._alpha = this._alpha + 2; if (this._alpha >= 100) { if (_root.run) { if (this.tId == this.texts.length) { removeMovieClip(_root.barHolder); removeMovieClip(_root.tileHolder); _root.gotoAndStop("MENU"); removeMovieClip(this); } else { _root.displayText(this.texts[this.tId].toString()); this.tId++; } } } }; } function loadMap(map) { control = false; var _local3 = _root.attachMovie("mapTrans", "trans", _root.getNextHighestDepth()); _local3._alpha = 0; _local3.toLoad = map; _local3.onEnterFrame = function () { this._alpha = this._alpha + 20; if (this._alpha >= 100) { _root.run = true; _root.control = true; _root.buildMap(this.toLoad); removeMovieClip(this); } }; } function playBossFX() { boss.killMode = true; var _local1 = 0; while (_local1 < 20) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 20) - 10; vy = (Math.random() * 5) - 2.5; addParticle(pType, boss.x, boss.y + 30, vx, vy, 0.95, 0, 60, true); _local1++; } shakeScreen(20, 30); if (sound) { soundExplode.start(); } } function addParticle(type, x, y, vx, vy, fric, dam, lifetime, hitWalls) { var _local1 = new Object(); game.particleList.push(_local1); _local1.clip = tileHolder.particleHolder.attachMovie("particles", "p_" + game.particleList.length, tileHolder.particleHolder.getNextHighestDepth()); _local1.clip.gotoAndStop(type); _local1.x = x; _local1.y = y; _local1.vx = vx; _local1.vy = vy; _local1.fric = fric; _local1.dam = dam; _local1.life = lifetime; _local1.hitWalls = hitWalls; _local1.width = 4; _local1.height = 4; } function killOb(ob) { ob.alive = false; removeMovieClip(ob.clip); removeMovieClip(ob.tile); var _local5; var _local4; var _local3; var _local6 = Math.floor(Math.random() * 5); var _local1 = 0; while (_local1 < _local6) { _local5 = "PART" + Math.floor((Math.random() * 5) + 1); _local4 = (Math.random() * 10) - 5; _local3 = (Math.random() * 10) - 5; addParticle(_local5, ob.x, ob.y, _local4, _local3, 0.95, 0, 40, false); _local1++; } _local1 = 0; while (_local1 < 4) { _local5 = "SMOKE" + Math.floor((Math.random() * 3) + 1); _local4 = (Math.random() * 10) - 5; _local3 = (Math.random() * 10) - 5; addParticle(_local5, ob.x, ob.y, _local4, _local3, 0.95, 0, 15, true); _local1++; } if (player.gunList.length > 0) { var _local7 = (Math.floor(Math.random() * ob.plasDrop) + Math.floor(ob.plasDrop / 3)) + 1; _local1 = 0; while (_local1 < _local7) { _local4 = (Math.random() * 10) - 5; _local3 = (Math.random() * 10) - 5; addParticle("PLASMADROP", ob.x, ob.y, _local4, _local3, 0.9, -1, 200, false); _local1++; } } if (sound) { soundExplode.start(); } } function applyDamage(ob, from, damage) { if (ob.stun <= 0) { var _local2 = Math.floor((damage / 2) + 1) + game.kickMod; var _local4 = (Math.random() * _local2) + _local2; var _local3 = (Math.random() * _local2) + _local2; if (ob.x > from.x) { ob.vx = ob.vx + _local4; } else { ob.vx = ob.vx - _local4; } if (ob.y > from.y) { ob.vy = ob.vy + _local3; } else { ob.vy = ob.vy - _local3; } ob.hp = ob.hp - damage; ob.stun = 30; if (sound) { soundHit.start(); } if (ob == player) { displayBars(); shakeScreen(5, 5); if (player.hp <= 0) { player.xtile = 2; player.ytile = 5; player.hp = player.maxHp; loadMap(homeMap); run = false; } } if (ob == boss) { if (ob.hp <= 0) { boss.alive = false; } } } } function shakeScreen(mag, dur) { var _local3 = _root.createEmptyMovieClip("shaker", _root.getNextHighestDepth()); _local3.mag = mag; _local3.dur = dur; _local3.durPassed = 0; _local3.onEnterFrame = function () { this.durPassed++; if (this.durPassed < this.dur) { this.mag = this.mag * 0.9; _root.xOff = Math.floor(((Math.random() * this.mag) * 2) - this.mag); _root.yOff = Math.floor(((Math.random() * this.mag) * 2) - this.mag); } else { _root.xOff = 0; _root.yOff = 0; removeMovieClip(this); } }; } function testDoorParticle(ob, wall) { if ((wall.door == null) || (!wall.door.locked)) { return(undefined); } if ((wall.door.lockType == "PLASMA") && (ob.dam == 1)) { unlockDoor(wall); } if ((wall.door.lockType == "SNIPER") && (ob.dam == 2)) { unlockDoor(wall); } if ((wall.door.lockType == "GRENADE") && (ob.dam == 3)) { unlockDoor(wall); } if ((wall.door.lockType == "FTHROWER") && (ob.dam == 5)) { unlockDoor(wall); } } function unlockDoor(wall) { wall.door.locked = false; wall.walkable = true; removeMovieClip(wall.light); wall.gotoAndStop("D_DOOR_O"); if (sound) { soundExplode.start(); } shakeScreen(3, 10); } function getMyCorners(x, y, ob) { ob.downY = Math.floor(((y + ob.height) - 1) / game.tileH); ob.upY = Math.floor((y - ob.height) / game.tileH); ob.leftX = Math.floor((x - ob.width) / game.tileW); ob.rightX = Math.floor(((x + ob.width) - 1) / game.tileW); ob.upleft = tileHolder[(("t_" + ob.upY) + "_") + ob.leftX].walkable; ob.downleft = tileHolder[(("t_" + ob.downY) + "_") + ob.leftX].walkable; ob.upright = tileHolder[(("t_" + ob.upY) + "_") + ob.rightX].walkable; ob.downright = tileHolder[(("t_" + ob.downY) + "_") + ob.rightX].walkable; } function moveOb(ob, vx, vy) { getMyCorners(ob.x, ob.y + vy, ob); ob.xtile = Math.floor(ob.x / game.tileW); ob.ytile = Math.floor(ob.y / game.tileH); if (ob.life != null) { testDoorParticle(ob, tileHolder[(("t_" + ob.ytile) + "_") + ob.xtile]); } if (vy < -0.1) { if (ob.upleft && (ob.upright)) { ob.y = ob.y + vy; } else { ob.y = (ob.ytile * game.tileH) + ob.height; if (ob.enType != null) { ob.vy = ob.vy * -1; } if (ob.hitWalls) { if (ob.life != null) { ob.life = 0; testDoorParticle(ob, tileHolder[(("t_" + (ob.ytile - 1)) + "_") + ob.xtile]); } } else if (ob.life > 0) { ob.vy = ob.vy * -0.8; } } } if (vy > 0.1) { if (ob.downleft && (ob.downright)) { ob.y = ob.y + vy; } else { ob.y = ((ob.ytile + 1) * game.tileH) - ob.height; if (ob.enType != null) { ob.vy = ob.vy * -1; } if (ob.hitWalls) { if (ob.life != null) { ob.life = 0; testDoorParticle(ob, tileHolder[(("t_" + (ob.ytile + 1)) + "_") + ob.xtile]); } } else if (ob.life > 0) { ob.vy = ob.vy * -0.8; } } } getMyCorners(ob.x + vx, ob.y, ob); if (vx < -0.1) { if (ob.downleft && (ob.upleft)) { ob.x = ob.x + vx; } else { ob.x = (ob.xtile * game.tileW) + ob.width; if (ob.enType != null) { ob.vx = ob.vx * -1; } if (ob.hitWalls) { if (ob.life != null) { ob.life = 0; testDoorParticle(ob, tileHolder[(("t_" + ob.ytile) + "_") + (ob.xtile - 1)]); } } else if (ob.life > 0) { ob.vx = ob.vx * -0.8; } } } if (vx > 0.1) { if (ob.upright && (ob.downright)) { ob.x = ob.x + vx; } else { ob.x = ((ob.xtile + 1) * game.tileW) - ob.width; if (ob.enType != null) { ob.vx = ob.vx * -1; } if (ob.hitWalls) { if (ob.life != null) { ob.life = 0; testDoorParticle(ob, tileHolder[(("t_" + ob.ytile) + "_") + (ob.xtile + 1)]); } } else if (ob.life > 0) { ob.vx = ob.vx * -0.8; } } } ob.xSubTile = Math.floor(ob.x / game.subTileW); ob.ySubTile = Math.floor(ob.y / game.subTileH); var _local5 = Math.floor(ob.x / game.tileW); var _local4 = Math.floor(ob.y / game.tileH); if (DEBUG) { ob.tile._x = ob.xSubTile * game.subTileW; ob.tile._y = ob.ySubTile * game.subTileH; } if (ob.stun > 0) { ob.stun--; if (ob != player) { ob.vx = ob.vx * 0.9; ob.vy = ob.vy * 0.9; if (ob.stun == 1) { ob.vx = ob.vxFunc; ob.vy = ob.vyFunc; } } if (((Math.floor(ob.stun / 4) % 2) == 0) && (ob.stun > 2)) { ob.clip.transform.colorTransform = whiteFlash; whiteFlash.rgb = 16777215 /* 0xFFFFFF */; } else { ob.clip.transform.colorTransform = noFlash; if (ob.enType == "BOSS") { ob.clip.transform.colorTransform = ob.colour; } } } ob.clip._x = Math.floor(ob.x); ob.clip._y = Math.floor(ob.y); } function controlPlayer() { if (control) { if (Key.isDown(37)) { leftKey = true; } else { leftKey = false; } if (Key.isDown(39)) { rightKey = true; } else { rightKey = false; } if (Key.isDown(38)) { upKey = true; } else { upKey = false; } if (Key.isDown(40)) { downKey = true; } else { downKey = false; } } else { leftKey = false; rightKey = false; upKey = false; downKey = false; } var _local3; if (player.recharge < 0) { shooting = true; } else { shooting = false; } if ((((((!shooting) && (!attacking)) && (leftKey)) || (((!shooting) && (!attacking)) && (rightKey))) || (((!shooting) && (!attacking)) && (upKey))) || (((!shooting) && (!attacking)) && (downKey))) { if (leftKey) { player.clip.gotoAndStop("LEFT"); player.facingX = -1; player.facingY = 0; } else if (rightKey) { player.clip.gotoAndStop("RIGHT"); player.facingX = 1; player.facingY = 0; } else if (upKey) { player.clip.gotoAndStop("UP"); player.facingX = 0; player.facingY = -1; } else if (downKey) { player.clip.gotoAndStop("DOWN"); player.facingX = 0; player.facingY = 1; } _local3 = player.speed; player.clip.anim.gotoAndStop("WALK"); } else if (player.recharge < 0) { player.clip.anim.gotoAndStop("SHOOT"); _local3 = 0; } else if (attacking) { player.clip.anim.gotoAndStop("ATTACK"); _local3 = 0; i = 0; while (i < game.enemyList.length) { if (en.stun <= 0) { if ((((player.xSubTile + player.facingX) == game.enemyList[i].xSubTile) && ((player.ySubTile + player.facingY) == game.enemyList[i].ySubTile)) && (game.enemyList[i].alive)) { if (game.enemyList[i].enType == "GRANMA") { attacking = false; soundSword.stop(); player.clip.anim.gotoAndStop("STOP"); if (player.hp == player.maxHp) { displayText("GRANMA: OFF YOU GO THEN!!"); } else { displayText("GRANMA: UH OH! DID YOU HIT YOUR HEAD? LET ME BANDAGE THAT."); player.hp = player.maxHp; displayBars(); } break; } applyDamage(game.enemyList[i], player, 1); } } i++; } i = 0; while (i < game.containerList.length) { cont = game.containerList[i]; pX = player.x + (player.facingX * game.subTileW); tX = Math.floor(pX / game.tileW); pY = player.y + (player.facingY * game.subTileH); tY = Math.floor(pY / game.tileH); if ((tX == cont.xtile) && (tY == cont.ytile)) { tileHolder[(("t_" + cont.ytile) + "_") + cont.xtile].walkable = true; if (cont.clip._visible) { if (cont.contType == "HP") { var _local2 = Math.floor(Math.random() * 5) + 1; i = 0; while (i < _local2) { vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle("HPDROP", cont.x + (game.tileW / 2), cont.y + (game.tileH / 2), vx, vy, 0.9, -2, 1000, false); i++; } } if (cont.contType == "HPUP") { vx = (Math.random() * 2) - 1; vy = (Math.random() * 2) - 1; addParticle("HPUPDROP", cont.x + (game.tileW / 2), cont.y + (game.tileH / 2), vx, vy, 0.9, -50, 10000, false); } if (cont.contType == "PLUP") { vx = (Math.random() * 2) - 1; vy = (Math.random() * 2) - 1; addParticle("PLUPDROP", cont.x + (game.tileW / 2), cont.y + (game.tileH / 2), vx, vy, 0.9, -51, 10000, false); } var i = 0; while (i < 8) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle(pType, cont.x + (game.tileW / 2), cont.y + (game.tileH / 2), vx, vy, 0.95, 0, 15, true); i++; } if (sound) { soundExplode.start(); } } cont.collected = true; cont.clip._visible = false; } i++; } if ((boss != null) && (boss.killMode)) { var _local1; i = 0; while (i < 5) { _local1 = -2 + i; if (((player.xSubTile + player.facingX) == (boss.xSubTile + _local1)) && ((player.ySubTile + player.facingY) == (boss.ySubTile - 1))) { applyDamage(boss, player, 1); } i++; } i = 0; while (i < 5) { _local1 = -2 + i; if (((player.xSubTile + player.facingX) == (boss.xSubTile + _local1)) && ((player.ySubTile + player.facingY) == boss.ySubTile)) { applyDamage(boss, player, 1); } i++; } i = 0; while (i < 5) { _local1 = -2 + i; if (((player.xSubTile + player.facingX) == (boss.xSubTile + _local1)) && ((player.ySubTile + player.facingY) == (boss.ySubTile + 1))) { applyDamage(boss, player, 1); } i++; } } } else { _local3 = 0; player.clip.anim.gotoAndStop("STOP"); } var _local5 = (player.facingX * _local3) - player.vx; var _local4 = (player.facingY * _local3) - player.vy; player.vx = player.vx + (_local5 / 4); player.vy = player.vy + (_local4 / 4); } var DEBUG = false; var run = true; var control = false; var firstRun = true; var bossShow = true; var finishedGame = false; if (DEBUG) { control = true; firstRun = false; bossShow = false; } var whiteFlash = (new flash.geom.ColorTransform()); whiteFlash.rgb = 16777215 /* 0xFFFFFF */; var yellowFlash = (new flash.geom.ColorTransform()); yellowFlash.rgb = 16777062 /* 0xFFFF66 */; var noFlash = (new flash.geom.ColorTransform()); var game = new Object(); game.tileW = 64; game.tileH = 64; game.subTileW = 32; game.subTileH = 32; game.driftSpeed = 0.2; game.kickMod = 3; game.friction = 0.9; game.walkWidth = Stage.width / 4; game.walkHeight = Stage.width / 4; game.visX = 7; game.visY = 6; var leftKey = false; var rightKey = false; var upKey = false; var downKey = false; var attacking = false; var shooting = false; var xOff = 0; var yOff = 0; var mapWidth = 0; var mapHeight = 0; var boss; var gunOrdered = ["GRENADE", "SNIPER", "FTHROWER"]; var gunMixed = new Array(); while (gunOrdered.length > 0) { var cutAt = Math.floor(Math.random() * gunOrdered.length); gun = gunOrdered.splice(cutAt, 1); gunMixed.push(gun.toString()); } plasmaGun = new Object(); plasmaGun.damage = 1; plasmaGun.bulletSpeed = 6; plasmaGun.bulletFric = 1; plasmaGun.sprite = "PLASMA"; plasmaGun.bulletLife = 50; plasmaGun.shootSpeed = 0; plasmaGun.drain = 1; plasmaGun.hitWalls = true; grenadeGun = new Object(); grenadeGun.damage = -5; grenadeGun.bulletSpeed = 10; grenadeGun.bulletFric = 0.95; grenadeGun.sprite = "GRENADE"; grenadeGun.bulletLife = 60; grenadeGun.shootSpeed = 20; grenadeGun.drain = 2; grenadeGun.hitWalls = true; sniperGun = new Object(); sniperGun.damage = 2; sniperGun.bulletSpeed = 10; sniperGun.bulletFric = 1; sniperGun.sprite = "SNIPER"; sniperGun.bulletLife = 40; sniperGun.shootSpeed = 20; sniperGun.drain = 2; sniperGun.hitWalls = true; fthrowerGun = new Object(); fthrowerGun.damage = 5; fthrowerGun.bulletSpeed = 15; fthrowerGun.bulletFric = 0.83; fthrowerGun.sprite = "FTHROWER"; fthrowerGun.bulletLife = 30; fthrowerGun.shootSpeed = 20; fthrowerGun.drain = 2; fthrowerGun.hitWalls = true; teleportGun = new Object(); teleportGun.damage = -10; teleportGun.bulletSpeed = 25; teleportGun.bulletFric = 0.96; teleportGun.sprite = "TELEPORT"; teleportGun.bulletLife = 50; teleportGun.shootSpeed = 50; teleportGun.drain = 3; teleportGun.hitWalls = false; game.rolyPolyHP = 1; game.rolyPolySpeed = 2; game.rolyPolyDrop = 2; game.rolyPolyDamage = 1; game.thumperHP = 4; game.thumperSpeed = 2; game.thumperDrop = 4; game.thumperDamage = 1; game.skitterHP = 2; game.skitterSpeed = 4; game.skitterDrop = 3; game.skitterGun = plasmaGun; var door0 = new Object(); var door1 = new Object(); var door2 = new Object(); var door3 = new Object(); var door4 = new Object(); var door5 = new Object(); var door6 = new Object(); var door7 = new Object(); var door8 = new Object(); var door9 = new Object(); var door10 = new Object(); var door11 = new Object(); var door12 = new Object(); var door13 = new Object(); var door14 = new Object(); var door15 = new Object(); var door16 = new Object(); var door17 = new Object(); var door18 = new Object(); var door19 = new Object(); door0.playerGo = [door1, 1, 0]; door0.pos = [0, 0]; door0.locked = false; door0.lockType = "NONE"; door1.playerGo = [door0, -1, 0]; door1.pos = [0, 0]; door1.locked = false; door1.lockType = "NONE"; door2.playerGo = [door3, 1, 0]; door2.pos = [0, 0]; door2.locked = false; door2.lockType = "NONE"; door3.playerGo = [door2, -1, 0]; door3.pos = [0, 0]; door3.locked = false; door3.lockType = "NONE"; door4.playerGo = [door5, 0, -1]; door4.pos = [0, 0]; door4.locked = true; door4.lockType = "PLASMA"; door5.playerGo = [door4, 0, 1]; door5.pos = [0, 0]; door5.locked = false; door5.lockType = "PLASMA"; door6.playerGo = [door7, 1, 0]; door6.pos = [0, 0]; door6.locked = true; door6.lockType = "PLASMA"; door7.playerGo = [door6, -1, 0]; door7.pos = [0, 0]; door7.locked = false; door7.lockType = "PLASMA"; door8.playerGo = [door9, 0, -1]; door8.pos = [0, 0]; door8.locked = true; door8.lockType = gunMixed[0].toString(); door9.playerGo = [door8, 0, 1]; door9.pos = [0, 0]; door9.locked = false; door9.lockType = gunMixed[0].toString(); door10.playerGo = [door11, 0, 1]; door10.pos = [0, 0]; door10.locked = false; door10.lockType = "NONE"; door11.playerGo = [door10, 0, -1]; door11.pos = [0, 0]; door11.locked = false; door11.lockType = "NONE"; door12.playerGo = [door13, 0, -1]; door12.pos = [0, 0]; door12.locked = true; door12.lockType = gunMixed[0].toString(); door13.playerGo = [door12, 0, 1]; door13.pos = [0, 0]; door13.locked = false; door13.lockType = gunMixed[0].toString(); door14.playerGo = [door15, -1, 0]; door14.pos = [0, 0]; door14.locked = true; door14.lockType = gunMixed[1].toString(); door15.playerGo = [door14, 1, 0]; door15.pos = [0, 0]; door15.locked = false; door15.lockType = gunMixed[1].toString(); door16.playerGo = [door17, -1, 0]; door16.pos = [0, 0]; door16.locked = true; door16.lockType = gunMixed[1].toString(); door17.playerGo = [door16, 1, 0]; door17.pos = [0, 0]; door17.locked = false; door17.lockType = gunMixed[1].toString(); door18.playerGo = [door19, 0, 1]; door18.pos = [0, 0]; door18.locked = true; door18.lockType = gunMixed[2].toString(); door19.playerGo = [door18, 0, -1]; door19.pos = [0, 0]; door19.locked = false; door19.lockType = gunMixed[2].toString(); makeRandomMap("homeMap", 9, 9, 0, "HOUSE"); addLandmark(homeMap, house, 0, 0, 0, 0); addEnemySquad(homeMap, "GRANMA", 1, 1, 0); makeRandomMap("townMap", 22, 21, 0, "TOWN"); addLandmark(townMap, town, 0, 0, 0, 0); addEnemySquad(townMap, "ROLYPOLY", 2, 3, 5); addEnemySquad(townMap, "ROLYPOLY", 2, 3, 5); addEnemySquad(townMap, "ENDBOSSGLOATER", 1, 1, 0); makeRandomMap("mapF1", 20, 20, 0, "FOREST"); addNoise(mapF1, 0.1, 2); drawLines(mapF1, 8, 5, 3, 6, 1); drawLines(mapF1, 4, 5, 2, 3, 1); addLandmark(mapF1, doorF1_Town, 0, 0, 0, mapF1.height); addLandmark(mapF1, doorF1_D1, mapF1.width, mapF1.width, 4, mapF1.height); addLandmark(mapF1, doorF1_F2, 4, mapF1.width - 4, 0, 0); addContainer(mapF1, "HP"); addContainer(mapF1, "HP"); addContainer(mapF1, "HPUP"); addEnemySquad(mapF1, "ROLYPOLY", 2, 3, 5); addEnemySquad(mapF1, "ROLYPOLY", 4, 6, 5); makeRandomMap("mapD1", 30, 30, 1, "DUNGEON"); addBoss(mapD1, "PLASMA"); drawLines(mapD1, 16, 20, 15, 25, 0); drawLines(mapD1, 8, 20, 5, 15, 0); drawLines(mapD1, 4, 50, 7, 12, 0); drawLines(mapD1, 3, 30, 5, 8, 0); addLandmark(mapD1, doorD1_F1, 0, 0, 0, mapD1.height); addLandmark(mapD1, bossRoom, Math.floor(mapD1.width / 3) * 2, mapD1.width, 0, mapD1.height); addContainer(mapD1, "HP"); addContainer(mapD1, "HP"); addContainer(mapD1, "HP"); addContainer(mapD1, "HP"); addContainer(mapD1, "HPUP"); addEnemySquad(mapD1, "ROLYPOLY", 2, 3, 5); addEnemySquad(mapD1, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD1, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD1, "THUMPER", 2, 3, 5); makeRandomMap("mapF2", 15, 35, 0, "FOREST"); addNoise(mapF2, 0.1, 2); drawLines(mapF2, 8, 5, 3, 6, 1); drawLines(mapF2, 4, 5, 2, 3, 1); addLandmark(mapF2, doorF2_F1, 0, mapF2.width, mapF2.height, mapF2.height); addLandmark(mapF2, doorF2_D2, mapF2.width, mapF2.width, 0, mapF2.height); addEnemySquad(mapF2, "ROLYPOLY", 2, 3, 5); addEnemySquad(mapF2, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapF2, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapF2, "THUMPER", 2, 3, 5); addEnemySquad(mapF2, "THUMPER", 3, 4, 5); addContainer(mapF2, "HP"); addContainer(mapF2, "HP"); addContainer(mapF2, "PLUP"); makeRandomMap("mapD2", 35, 20, 1, "DUNGEON"); addBoss(mapD2, gunMixed[0].toString()); drawLines(mapD2, 16, 20, 15, 25, 0); drawLines(mapD2, 8, 20, 5, 15, 0); drawLines(mapD2, 4, 50, 7, 12, 0); drawLines(mapD2, 3, 30, 5, 8, 0); addLandmark(mapD2, doorD2_F2, 0, 0, 0, mapD2.height); addLandmark(mapD2, bossRoom, Math.floor(mapD2.width / 3) * 2, mapD2.width, 0, mapD2.height); addEnemySquad(mapD2, "ROLYPOLY", 5, 6, 5); addEnemySquad(mapD2, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD2, "ROLYPOLY", 5, 6, 5); addEnemySquad(mapD2, "THUMPER", 5, 6, 5); addEnemySquad(mapD2, "THUMPER", 5, 6, 5); addEnemySquad(mapD2, "THUMPER", 5, 6, 5); addContainer(mapD2, "HP"); addContainer(mapD2, "HP"); addContainer(mapD2, "HP"); addContainer(mapD2, "HP"); addContainer(mapD2, "HPUP"); addContainer(mapD2, "PLUP"); makeRandomMap("mapF3", 40, 15, 0, "FOREST"); addNoise(mapF3, 0.1, 2); drawLines(mapF3, 8, 5, 3, 6, 1); drawLines(mapF3, 4, 5, 2, 3, 1); drawLines(mapF3, 16, 10, 20, 30, 0); addLandmark(mapF3, doorF3_town, 30, mapF3.width, mapF3.height, mapF3.height); addLandmark(mapF3, doorF3_D3, 0, 20, 0, 0); addContainer(mapF3, "HP"); addContainer(mapF3, "HP"); addContainer(mapF3, "PLUP"); addEnemySquad(mapF3, "THUMPER", 5, 6, 5); addEnemySquad(mapF3, "THUMPER", 5, 6, 5); addEnemySquad(mapF3, "THUMPER", 5, 6, 5); addEnemySquad(mapF3, "SKITTER", 3, 5, 5); makeRandomMap("mapD3", 20, 20, 1, "DUNGEON"); addBoss(mapD3, gunMixed[1].toString()); drawLines(mapD3, 8, 60, 5, 15, 0); drawLines(mapD3, 4, 50, 7, 12, 0); drawLines(mapD3, 3, 30, 5, 8, 0); addLandmark(mapD3, doorD3_F3, 0, mapD3.width, mapD3.height, mapD3.height); addLandmark(mapD3, bossRoom, 8, 12, 0, 10); addContainer(mapD3, "HP"); addContainer(mapD3, "HP"); addContainer(mapD3, "HP"); addContainer(mapD3, "HPUP"); addEnemySquad(mapD3, "THUMPER", 5, 6, 5); addEnemySquad(mapD3, "SKITTER", 3, 5, 5); addEnemySquad(mapD3, "SKITTER", 3, 5, 5); makeRandomMap("mapF4", 20, 10, 0, "FOREST"); addNoise(mapF4, 0.15, 2); drawLines(mapF4, 4, 5, 2, 3, 1); addLandmark(mapF4, doorF4_Town, mapF4.width, mapF4.width, 0, mapF4.height); addLandmark(mapF4, doorF4_D4, 0, 0, 0, mapF4.height); addContainer(mapF4, "HPUP"); addContainer(mapF4, "PLUP"); makeRandomMap("mapD4", 20, 25, 1, "DUNGEON"); addBoss(mapD4, gunMixed[2].toString()); drawLines(mapD4, 8, 60, 5, 15, 0); drawLines(mapD4, 4, 50, 7, 12, 0); drawLines(mapD4, 3, 30, 5, 8, 0); addLandmark(mapD4, doorD4_F4, mapD4.width, mapD4.width, 0, mapD4.height); addLandmark(mapD4, bossRoom, 0, mapD4.width / 2, 0, mapD4.height); addEnemySquad(mapD4, "ROLYPOLY", 3, 3, 5); addEnemySquad(mapD4, "THUMPER", 3, 3, 5); addEnemySquad(mapD4, "THUMPER", 3, 3, 5); addEnemySquad(mapD4, "SKITTER", 3, 4, 5); addEnemySquad(mapD4, "SKITTER", 3, 4, 5); makeRandomMap("mapD5", 70, 30, 1, "DUNGEON"); addBoss(mapD5, "FINAL"); drawLines(mapD5, 16, 80, 20, 35, 0); drawLines(mapD5, 8, 80, 10, 20, 0); drawLines(mapD5, 4, 80, 10, 15, 0); drawLines(mapD5, 3, 50, 5, 10, 0); addLandmark(mapD5, doorD5_Town, 0, 20, 0, 0); addLandmark(mapD5, bossRoom, 50, mapD5.width, 0, mapD5.height); addEnemySquad(mapD5, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD5, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD5, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD5, "ROLYPOLY", 4, 6, 5); addEnemySquad(mapD5, "THUMPER", 5, 7, 5); addEnemySquad(mapD5, "THUMPER", 5, 7, 5); addEnemySquad(mapD5, "THUMPER", 5, 7, 5); addEnemySquad(mapD5, "SKITTER", 3, 4, 5); addEnemySquad(mapD5, "SKITTER", 3, 4, 5); addEnemySquad(mapD5, "SKITTER", 3, 4, 5); addEnemySquad(mapD5, "SKITTER", 3, 4, 5); addContainer(mapD5, "HPUP"); addContainer(mapD5, "PLUP"); addContainer(mapD5, "HP"); addContainer(mapD5, "HP"); addContainer(mapD5, "HP"); addContainer(mapD5, "HP"); addContainer(mapD5, "HP"); door0.mapTo = mapF1; door1.mapTo = townMap; door2.mapTo = mapD1; door3.mapTo = mapF1; door4.mapTo = mapF2; door5.mapTo = mapF1; door6.mapTo = mapD2; door7.mapTo = mapF2; door8.mapTo = mapF3; door9.mapTo = townMap; door10.mapTo = townMap; door11.mapTo = homeMap; door12.mapTo = mapD3; door13.mapTo = mapF3; door14.mapTo = mapF4; door15.mapTo = townMap; door16.mapTo = mapD4; door17.mapTo = mapF4; door18.mapTo = mapD5; door19.mapTo = townMap; var player = new Object(); player.maxHp = 3; player.hp = player.maxHp; player.maxPl = 3; player.pl = player.maxPl; player.stun = 0; player.charge = 0; player.xtile = 3; player.ytile = 6; player.xSubTile = 0; player.ySubTile = 0; player.speed = 7; player.facingX = new Number(); player.facingY = new Number(); player.vx = 0; player.vy = 0; player.height = 12; player.width = 12; if (DEBUG) { player.tile = tileHolder.attachMovie("subTile", "playerSubTile", tileHolder.getNextHighestDepth()); } player.x = (player.xtile * game.tileW) + (game.tileW / 2); player.y = (player.ytile * game.tileH) + (game.tileH / 2); tileHolder._x = (Stage.width / 2) - (tileSize / 2); tileHolder._y = (Stage.height / 2) - (tileSize / 2); player.recharge = 0; player.gunList = new Array(); player.currentGun = 0; if (DEBUG) { player.maxHp = 10; player.hp = player.maxHp; player.maxPl = 10; player.pl = player.maxPl; player.gunList.push(plasmaGun); player.gunList.push(grenadeGun); player.gunList.push(fthrowerGun); player.gunList.push(sniperGun); } player.gun = player.gunList[0]; loadMap(homeMap); _root.onEnterFrame = function () { if (run) { controlPlayer(); player.recharge++; moveOb(player, player.vx, player.vy); var _local11 = (("t_" + player.ytile) + "_") + player.xtile; if (tileHolder[_local11].door != null) { var _local14 = tileHolder[_local11].door.playerGo[0]; player.xtile = _local14.pos[0] + tileHolder[_local11].door.playerGo[1]; player.ytile = _local14.pos[1] + tileHolder[_local11].door.playerGo[2]; loadMap(tileHolder[_local11].door.mapTo); run = false; } if ((player.x > (Stage.width / 2)) && (player.x < (mapWidth - (Stage.width / 2)))) { tileHolder._x = ((Stage.width / 2) - player.clip._x) + xOff; } else if (player.x < ((Stage / width) / 2)) { tileHolder._x = 0; } else if (player.x > (mapWidth - (Stage.width / 2))) { tileHolder._x = Stage.width - mapWidth; } if ((player.y > (Stage.height / 2)) && (player.y < (mapHeight - (Stage.height / 2)))) { tileHolder._y = ((Stage.height / 2) - player.clip._y) + yOff; } else if (player.y < (Stage.height / 2)) { tileHolder._y = 0; } else if (player.y > (mapHeight - (Stage.height / 2))) { tileHolder._y = Stage.height - mapHeight; } if (((tileHolder[_local11].boss != null) && (!boss.clip._visible)) && (boss.alive)) { boss.clip._visible = true; boss.clip.play(); removeMovieClip(boss.glowTile); if (sound) { soundSwitch.start(); } if (boss.tpe == "FINAL") { displayText("WARLORD: I SEE YOUVE COME ALL THIS WAY JUST TO DIE!! AND TO THINK YOU COULD HAVE BEEN PLAYING OUTSIDE!!"); } } if ((boss != null) && (boss.killMode)) { moveOb(boss, boss.vx, boss.vy); boss.behave++; if (boss.stun <= 0) { var _local16 = ((boss.mv[boss.mvId][0] * game.tileW) + (boss.xtileStart * game.tileW)) + 16; var _local15 = ((boss.mv[boss.mvId][1] * game.tileH) + (boss.ytileStart * game.tileH)) + 16; var _local7 = _local16 - boss.x; var _local6 = _local15 - boss.y; if (Math.sqrt(_local7 * _local7) < boss.speed) { boss.vx = _local7 / 20; } else { if (_local7 < 0) { boss.vx = -boss.speed; } if (_local7 > 0) { boss.vx = boss.speed; } } if (Math.sqrt(_local6 * _local6) < boss.speed) { boss.vy = _local6 / 20; } else { if (_local6 < 0) { boss.vy = -boss.speed; } if (_local6 > 0) { boss.vy = boss.speed; } } if (boss.behave > boss.mvSpeed) { boss.mvId++; if (boss.mvId >= (boss.mv.length - 1)) { boss.mvId = 0; } if (Math.sqrt(boss.vx * boss.vx) < Math.sqrt(boss.vy * boss.vy)) { if (_local7 > 0) { _local7 = -boss.gun.bulletSpeed; } else { _local7 = boss.gun.bulletSpeed; } _local6 = 0; } else { if (_local6 > 0) { _local6 = -boss.gun.bulletSpeed; } else { _local6 = boss.gun.bulletSpeed; } _local7 = 0; } if ((boss.tpe == "GRENADE") || ((boss.tpe == "FINAL") && (boss.randomNum == 1))) { addParticle(boss.gun.sprite, boss.x, boss.y, 0, 0, boss.gun.bulletFric, -31, boss.gun.bulletLife, boss.gun.hitWalls); } else { addParticle(boss.gun.sprite, boss.x, boss.y, _local7, _local6, boss.gun.bulletFric, -30, boss.gun.bulletLife, boss.gun.hitWalls); } if (sound) { soundGunPlasma.start(); } boss.behave = 0; } if (boss.vy == 0) { _local6 = ((boss.ySubTile * 32) + 16) - boss.y; boss.y = boss.y + (_local6 / 20); } if (game.enemyList[i].vx == 0) { _local7 = ((boss.xSubTile * 32) + 16) - boss.x; boss.x = boss.x + (_local7 / 20); } var _local4; i = 0; while (i < 5) { _local4 = -2 + i; if ((player.xSubTile == (boss.xSubTile + _local4)) && (player.ySubTile == (boss.ySubTile - 1))) { applyDamage(player, boss, 1); } i++; } i = 0; while (i < 5) { _local4 = -2 + i; if ((player.xSubTile == (boss.xSubTile + _local4)) && (player.ySubTile == boss.ySubTile)) { applyDamage(player, boss, 1); } i++; } i = 0; while (i < 5) { _local4 = -2 + i; if ((player.xSubTile == (boss.xSubTile + _local4)) && (player.ySubTile == (boss.ySubTile + 1))) { applyDamage(player, boss, 1); } i++; } if ((!boss.alive) && (boss.tpe != "FINAL")) { shakeScreen(128, 60); var _local12 = Math.floor(Math.random() * 10) + 4; var i = 0; while (i < _local12) { pType = "PART" + Math.floor((Math.random() * 5) + 1); vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle(pType, boss.x, boss.y, vx, vy, 0.95, 0, 40, false); i++; } var i = 0; while (i < 20) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle(pType, boss.x, boss.y, vx, vy, 0.95, 0, 30, false); pType = "EXPLODE1"; vx = (Math.random() * 8) - 4; vy = (Math.random() * 8) - 4; addParticle(pType, boss.x, boss.y, vx, vy, 0.97, 3, 30, true); i++; } var _local10 = Math.floor(Math.random() * 2) + 2; i = 0; while (i < _local10) { vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle("HPDROP", boss.x, boss.y, vx, vy, 0.9, -2, 1000, false); i++; } var _local13 = Math.floor(Math.random() * 3) + 2; i = 0; while (i < _local13) { vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle("PLASMADROP", boss.x, boss.y, vx, vy, 0.9, -1, 200, false); i++; } vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; if (boss.tpe == "PLASMA") { addParticle("GUNDROP", boss.x, boss.y, vx, vy, 0.9, -1000, 100000, false); } if (boss.tpe == "SNIPER") { addParticle("GUNDROP", boss.x, boss.y, vx, vy, 0.9, -1001, 100000, false); } if (boss.tpe == "GRENADE") { addParticle("GUNDROP", boss.x, boss.y, vx, vy, 0.9, -1002, 100000, false); } if (boss.tpe == "FTHROWER") { addParticle("GUNDROP", boss.x, boss.y, vx, vy, 0.9, -1003, 100000, false); } if (sound) { soundExplode.start(); } removeMovieClip(boss.clip); boss.killMode = false; if (boss.tpe == "DEADDEADDEAD") { boss.behave = 0; finishedGame = true; } } else if ((!boss.alive) && (boss.tpe == "FINAL")) { shakeScreen(32, 60); boss.clip.gotoAndPlay("TRANSFORM"); boss.killMode = false; boss.randomNum = Math.floor(Math.random() * 3); if (boss.randomNum == 0) { boss.mv = [[-1, 0], [-1, -3], [-1, -3], [0, -3], [2, -3], [2, -3], [2, 0], [2, 3], [2, 3], [0, 3], [-1, 3], [-1, 3]]; boss.mvSpeed = 25; boss.speed = 5; boss.gun = sniperGun; } else if (boss.randomNum == 1) { boss.mv = [[-1, -3], [2, -3], [2, -1], [-1, -1], [-1, 1], [2, 1], [2, 3], [-1, 3], [-1, 0]]; boss.mvSpeed = 50; boss.speed = 5; boss.gun = grenadeGun; } else { boss.mv = [[-1, -3], [-1, -2], [-1, -1], [-1, 0], [-1, 1], [-1, 2], [-1, 3], [2, -3], [2, -2], [2, -1], [2, 0], [2, 1], [2, 2], [2, 3]]; boss.mvSpeed = 20; boss.speed = 5; boss.gun = fthrowerGun; } boss.trans++; boss.hp = 6 + boss.trans; boss.alive = true; if (boss.trans > 3) { boss.alive = false; boss.tpe = "DEADDEADDEAD"; } } } } if ((boss.tpe == "DEADDEADDEAD") && (!boss.killMode)) { boss.behave++; if (boss.behave > 120) { player.xtile = 6; player.ytile = 5; loadMap(homeMap); run = false; } } var _local9; i = 0; while (i < game.enemyList.length) { var _local7 = player.x - game.enemyList[i].x; var _local6 = player.y - game.enemyList[i].y; _local9 = Math.sqrt((_local7 * _local7) + (_local6 * _local6)); if ((_local9 < 500) && (game.enemyList[i].alive)) { moveOb(game.enemyList[i], game.enemyList[i].vx, game.enemyList[i].vy); if (game.enemyList[i].stun <= 0) { if (game.enemyList[i].vy == 0) { _local6 = ((game.enemyList[i].ySubTile * 32) + 16) - game.enemyList[i].y; game.enemyList[i].y = game.enemyList[i].y + (_local6 / 20); } if (game.enemyList[i].vx == 0) { _local7 = ((game.enemyList[i].xSubTile * 32) + 16) - game.enemyList[i].x; game.enemyList[i].x = game.enemyList[i].x + (_local7 / 20); } if (game.enemyList[i].hp <= 0) { game.enemyList[i].id = i; killOb(game.enemyList[i]); } } var _local5 = Math.sqrt(game.enemyList[i].vx * game.enemyList[i].vx); var _local8 = Math.sqrt(game.enemyList[i].vy * game.enemyList[i].vy); if (game.enemyList[i].enType == "ROLYPOLY") { if (_local5 > _local8) { game.enemyList[i].clip.gotoAndStop("LR"); } else { game.enemyList[i].clip.gotoAndStop("UD"); } if (game.enemyList[i].stun <= 0) { if ((player.xSubTile == game.enemyList[i].xSubTile) && (player.ySubTile == game.enemyList[i].ySubTile)) { applyDamage(player, game.enemyList[i], game.enemyList[i].damage); } } } if (game.enemyList[i].enType == "THUMPER") { if (game.enemyList[i].stun <= 0) { if (game.enemyList[i].vx < 0) { _local7 = -1; } else if (game.enemyList[i].vx > 0) { _local7 = 1; } else { _local7 = 0; } if (game.enemyList[i].vy < 0) { _local6 = -1; } else if (game.enemyList[i].vy > 0) { _local6 = 1; } else { _local6 = 0; } if ((player.xSubTile == game.enemyList[i].xSubTile) && (player.ySubTile == game.enemyList[i].ySubTile)) { applyDamage(player, game.enemyList[i], game.enemyList[i].damage); } if ((player.xSubTile == (game.enemyList[i].xSubTile + _local7)) && (player.ySubTile == (game.enemyList[i].ySubTile + _local6))) { applyDamage(player, game.enemyList[i], game.enemyList[i].damage); } if ((player.xSubTile == (game.enemyList[i].xSubTile - _local7)) && (player.ySubTile == (game.enemyList[i].ySubTile - _local6))) { applyDamage(player, game.enemyList[i], game.enemyList[i].damage); } if ((_local6 == 0) && (_local7 == -1)) { game.enemyList[i].clip.gotoAndStop("LEFT"); } if ((_local6 == 0) && (_local7 == 1)) { game.enemyList[i].clip.gotoAndStop("RIGHT"); } if ((_local6 == -1) && (_local7 == 0)) { game.enemyList[i].clip.gotoAndStop("UP"); } if ((_local6 == 1) && (_local7 == 0)) { game.enemyList[i].clip.gotoAndStop("DOWN"); } } } if (game.enemyList[i].enType == "SKITTER") { if (game.enemyList[i].stun <= 0) { game.enemyList[i].behave++; if ((game.enemyList[i].behave > 40) && (game.enemyList[i].behave < 60)) { if (game.enemyList[i].vxFunc == 1) { game.enemyList[i].clip.gotoAndStop("STAND_RIGHT"); } else if (game.enemyList[i].vxFunc == -1) { game.enemyList[i].clip.gotoAndStop("STAND_LEFT"); } else if (game.enemyList[i].vyFunc == -1) { game.enemyList[i].clip.gotoAndStop("STAND_UP"); } else if (game.enemyList[i].vyFunc == 1) { game.enemyList[i].clip.gotoAndStop("STAND_DOWN"); } game.enemyList[i].vxFunc = 0; game.enemyList[i].vyFunc = 0; game.enemyList[i].vx = game.enemyList[i].vx * 0.8; game.enemyList[i].vy = game.enemyList[i].vy * 0.8; } if (game.enemyList[i].behave > 60) { dir = Math.random(); if (dir < 0.25) { game.enemyList[i].vxFunc = 1 * game.skitterSpeed; game.enemyList[i].vyFunc = 0; } else if ((dir >= 0.25) && (dir < 0.5)) { game.enemyList[i].vxFunc = -1 * game.skitterSpeed; game.enemyList[i].vyFunc = 0; } else if ((dir >= 0.5) && (dir < 0.75)) { game.enemyList[i].vxFunc = 0; game.enemyList[i].vyFunc = 1 * game.skitterSpeed; } else { game.enemyList[i].vxFunc = 0; game.enemyList[i].vyFunc = -1 * game.skitterSpeed; } game.enemyList[i].vx = game.enemyList[i].vxFunc; game.enemyList[i].vy = game.enemyList[i].vyFunc; game.enemyList[i].behave = Math.floor(Math.random() * 10); dir = Math.random(); if (dir < 0.25) { shootX = 1 * game.enemyList[i].gun.bulletSpeed; shootY = 0; game.enemyList[i].clip.gotoAndStop("WALK_RIGHT"); } else if ((dir >= 0.25) && (dir < 0.5)) { shootX = -1 * game.enemyList[i].gun.bulletSpeed; shootY = 0; game.enemyList[i].clip.gotoAndStop("WALK_LEFT"); } else if ((dir >= 0.5) && (dir < 0.75)) { shootX = 0; shootY = 1 * game.enemyList[i].gun.bulletSpeed; game.enemyList[i].clip.gotoAndStop("WALK_DOWN"); } else { shootX = 0; shootY = -1 * game.enemyList[i].gun.bulletSpeed; game.enemyList[i].clip.gotoAndStop("WALK_UP"); } addParticle(game.enemyList[i].gun.sprite, game.enemyList[i].x, game.enemyList[i].y, shootX, shootY, game.enemyList[i].gun.bulletFric, -30, game.enemyList[i].gun.bulletLife, game.enemyList[i].gun.hitWalls); } if ((player.xSubTile == game.enemyList[i].xSubTile) && (player.ySubTile == game.enemyList[i].ySubTile)) { applyDamage(player, game.enemyList[i], 1); } } } if (game.enemyList[i].enType == "GRANMA") { if ((game.enemyList[i].ytile < 5) && (game.enemyList[i].behave == 0)) { game.enemyList[i].vx = 0; game.enemyList[i].vy = 2; game.enemyList[i].clip.gotoAndStop("WALK"); _root.control = false; player.vx = 0; player.vy = 0; } else if ((game.enemyList[i].behave >= 0) && (game.enemyList[i].behave <= 5)) { if (game.enemyList[i].behave == 0) { game.enemyList[i].vx = 0; game.enemyList[i].vy = 0; game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: I THOUGHT YOU WOULD NEVER WAKE UP, DEAR!"); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 1) { game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: A ROBOT WARLORD DESTROYED THE ENTIRE TOWN WHILE YOU WERE ASLEEP."); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 2) { game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: YOUD BETTER GO CLEAN UP THE MESS. GET RID OF THE WARLORD TOO, SINCE YOURE GOING OUT ANYWAY."); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 3) { game.enemyList[i].clip.gotoAndStop("SWORD"); displayText("GRANMA: HERE, TAKE YOUR GRANDFATHERS OLD SWORD FROM THE WAR. YOULL NEED IT."); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 4) { game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: STEAL SOME MORE FIREPOWER FROM THE ROBOTS, TOO. TRY IN THE FOREST TO THE EAST FIRST."); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 5) { game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: GOOD LUCK! COME BACK HERE IF YOU NEED SOME HELP FROM YOUR OLD GRANDMA!"); game.enemyList[i].behave++; _root.control = true; _root.firstRun = false; } } else if (finishedGame) { if (game.enemyList[i].behave == 10) { game.enemyList[i].vx = 0; game.enemyList[i].vy = 0; game.enemyList[i].clip.gotoAndStop("STAND"); displayText("GRANMA: OH! YOUVE DEFEATED THE WARLORD! GOOD JOB!"); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 11) { game.enemyList[i].behave = 7; endGame(); } } else { game.enemyList[i].clip.gotoAndStop("STAND"); } } if ((game.enemyList[i].enType == "ENDBOSSGLOATER") && (bossShow)) { if ((game.enemyList[i].behave < 5) && (game.enemyList[i].ytile < 19)) { control = false; player.vx = 0; player.vy = 0; if (game.enemyList[i].behave == 0) { displayText("WARLORD: OH LOOK! A TINY LITTLE MAN! YOUVE COME TO FIGHT ME HAVE YOU?"); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 1) { displayText("WARLORD: YOU ARE HARDLY WORTH MY TIME... IN FACT, IM SURE MY MINIONS WILL ENJOY THE BATTLE."); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 2) { displayText("WARLORD: YOULL HAVE TO FIGHT MY FOUR LIEUTENANTS AND TAKE THEIR GUNS BEFORE YOU CAN REACH MY BASE!"); game.enemyList[i].behave++; } else if (game.enemyList[i].behave == 3) { displayText("WARLORD: HEHEHAHA!! HAVE FUN, TINY TINY LITTLE MAN!"); game.enemyList[i].behave = 10; } } else if (game.enemyList[i].ytile < 19) { control = false; player.vx = 0; player.vy = 0; game.enemyList[i].vy = 3; } else { removeMovieClip(game.enemyList[i].clip); game.enemyList[i].alive = false; bossShow = false; control = true; } } } i++; } var _local2; i = 0; while (i < game.particleList.length) { _local2 = game.particleList[i]; _local2.vx = _local2.vx * _local2.fric; _local2.vy = _local2.vy * _local2.fric; moveOb(_local2, _local2.vx, _local2.vy); _local2.life--; var _local3; if ((_local2.dam > 0) || (_local2.dam == -5)) { j = 0; while (j < game.enemyList.length) { _local3 = game.enemyList[j]; if (((((_local3.xSubTile == _local2.xSubTile) && (_local3.ySubTile == _local2.ySubTile)) && (_local3.stun <= 0)) && (_local3.alive)) && (_local3.enType != "GRANMA")) { if (_local2.dam != -5) { applyDamage(_local3, _local2, _local2.dam); if (_local2.hitWalls) { _local2.life = 0; } } else if (_local2.hitWalls) { _local2.life = 0; } } j++; } if (((boss != null) && (boss.killMode)) && (boss.alive)) { if ((((_local2.x > (boss.x - 64)) && (_local2.x < (boss.x + 64))) && (_local2.y > (boss.y - 48))) && (_local2.y < (boss.y + 48))) { applyDamage(boss, _local2, _local2.dam); _local2.life = 0; } } } if (_local2.vy > _local2.vx) { var _local6 = ((_local2.ySubTile * 32) + 16) - _local2.y; _local2.y = _local2.y + (_local6 / 30); } else { var _local7 = ((_local2.xSubTile * 32) + 16) - _local2.x; _local2.x = _local2.x + (_local7 / 30); } if (_local2.life <= 0) { if (_local2.dam == -5) { k = 0; while (k < 5) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle(pType, _local2.x, _local2.y, vx, vy, 0.95, 0, 20, true); pType = "EXPLODE1"; vx = (Math.random() * 8) - 4; vy = (Math.random() * 8) - 4; addParticle(pType, _local2.x, _local2.y, vx, vy, 0.97, 3, 30, true); k++; } if (sound) { soundExplode.start(); } } if (_local2.dam == -10) { k = 0; while (k < 4) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 10) - 5; vy = (Math.random() * 10) - 5; addParticle(pType, _local2.x, _local2.y, vx, vy, 0.95, 0, 20, true); k++; } player.x = _local2.x; player.y = _local2.y; player.vx = 0; player.vy = 0; } if (_local2.dam == -31) { k = 0; while (k < 5) { pType = "SMOKE" + Math.floor((Math.random() * 3) + 1); vx = (Math.random() * 8) - 4; vy = (Math.random() * 8) - 4; addParticle(pType, _local2.x, _local2.y, vx, vy, 0.95, 0, 20, true); pType = "EXPLODE1"; vx = (Math.random() * 6) - 3; vy = (Math.random() * 6) - 3; addParticle(pType, _local2.x, _local2.y, vx, vy, 0.97, -30, 15, true); k++; } } game.particleList.splice(i, 1); removeMovieClip(_local2.clip); _local2 = null; } if ((player.xSubTile == _local2.xSubTile) && (player.ySubTile == _local2.ySubTile)) { tPart = true; } else { tPart = false; } if ((_local2.dam == -1) && (tPart == true)) { if (player.pl < player.maxPl) { player.pl++; } displayBars(); _local2.life = 0; if (sound) { pickup.start(); } } else if ((_local2.dam == -2) && (tPart == true)) { if (player.hp < player.maxHp) { player.hp++; } displayBars(); _local2.life = 0; if (sound) { pickup.start(); } } else if ((_local2.dam == -50) && (tPart == true)) { player.hp++; player.maxHp++; displayBars(); _local2.life = 0; if (sound) { soundPowerup.start(); } displayText("MAXIMUM HEALTH INCREASED!"); } else if ((_local2.dam == -51) && (tPart == true)) { player.pl++; player.maxPl++; displayBars(); _local2.life = 0; if (sound) { soundPowerup.start(); } displayText("MAXIMUM PLASMA AMMO INCREASED!!"); } else if ((_local2.dam == -30) && (tPart == true)) { applyDamage(player, _local2, 1); } else if ((_local2.dam == -1000) && (tPart == true)) { player.gunList.push(plasmaGun); player.gun = player.gunList[player.gunList.length - 1]; _local2.life = 0; displayBars(); if (sound) { soundPowerup.start(); } displayText("YOU GOT THE PLASMA PISTOL! PRESS THE X KEY TO SHOOT. USE IT TO UNLOCK BLUE DOORS."); } else if ((_local2.dam == -1001) && (tPart == true)) { player.gunList.push(sniperGun); player.gun = player.gunList[player.gunList.length - 1]; _local2.life = 0; displayBars(); if (sound) { soundPowerup.start(); } displayText("YOU GOT THE SNIPER ATTACHMENT! USE IT TO OPEN YELLOW DOORS."); } else if ((_local2.dam == -1002) && (tPart == true)) { player.gunList.push(grenadeGun); player.gun = player.gunList[player.gunList.length - 1]; _local2.life = 0; displayBars(); if (sound) { soundPowerup.start(); } displayText("YOU GOT THE GRENADE ATTACHMENT! USE IT TO OPEN RED DOORS."); } else if ((_local2.dam == -1003) && (tPart == true)) { player.gunList.push(fthrowerGun); player.gun = player.gunList[player.gunList.length - 1]; _local2.life = 0; displayBars(); if (sound) { soundPowerup.start(); } displayText("YOU GOT THE FLAME THROWER ATTACHMENT! USE IT TO OPEN GREEN DOORS."); } i++; } } }; var keyListener = new Object(); keyListener.onKeyDown = function () { if (run && (control)) { if (Key.getCode() == 90) { if (!attacking) { attacking = true; if (sound) { soundSword.start(); } } } if (((Key.getCode() == 88) && (player.recharge > player.gun.shootSpeed)) && ((player.pl - player.gun.drain) >= 0)) { var _local2 = player.facingX * player.gun.bulletSpeed; var _local1 = player.facingY * player.gun.bulletSpeed; player.recharge = -10; var _local4 = player.facingX * 16; var _local3 = (player.facingY * 16) - 6; addParticle(player.gun.sprite, player.x + _local4, player.y + _local3, _local2, _local1, player.gun.bulletFric, player.gun.damage, player.gun.bulletLife, player.gun.hitWalls); player.pl = player.pl - player.gun.drain; displayBars(); if (sound) { soundGunPlasma.start(); } } if (Key.getCode() == 83) { player.currentGun++; if (player.currentGun >= player.gunList.length) { player.currentGun = 0; } player.gun = player.gunList[player.currentGun]; displayBars(); if (sound) { soundSwitch.start(); } } if (Key.getCode() == 65) { player.currentGun--; if (player.currentGun < 0) { player.currentGun = player.gunList.length - 1; } player.gun = player.gunList[player.currentGun]; displayBars(); if (sound) { soundSwitch.start(); } } } }; Key.addListener(keyListener); stop();
Symbol 51 Button
on (press) { _root.gotoAndStop("GAME"); } on (rollOver) { if (_root.sound) { _root.pickup.start(); } }
Symbol 54 Button
on (press) { _root.gotoAndStop("CONTROLS"); } on (rollOver) { if (_root.sound) { _root.pickup.start(); } }
Symbol 61 Button
on (press) { if (_root.sound) { _root.sound = false; _root.makeSoundIcon(false); } else { _root.sound = true; _root.makeSoundIcon(true); } } on (rollOver) { if (_root.sound) { _root.pickup.start(); } }
Symbol 66 Button
on (press) { if (_root.music) { _root.music = false; _root.makeSoundIcon(false, true); _root.setSong(); } else { _root.music = true; _root.makeSoundIcon(true, true); _root.setSong(); } } on (rollOver) { if (_root.sound) { _root.pickup.start(); } }
Symbol 69 MovieClip [menu] Frame 45
stop();
Symbol 78 Button
on (press) { _root.gotoAndStop("MENU"); } on (rollOver) { if (_root.sound) { _root.pickup.start(); } }
Symbol 109 MovieClip Frame 12
_root.attacking = false;
Symbol 118 MovieClip Frame 45
stop();
Symbol 142 MovieClip Frame 17
stop();
Symbol 149 MovieClip Frame 16
stop();
Symbol 156 MovieClip Frame 16
stop();
Symbol 165 MovieClip Frame 20
stop();
Symbol 228 MovieClip Frame 12
_root.attacking = false;
Symbol 260 MovieClip Frame 12
_root.attacking = false;
Symbol 264 MovieClip [mc_player] Frame 1
stop();
Symbol 489 MovieClip [mc_boss] Frame 52
_root.playBossFX(); stop();
Symbol 494 MovieClip [mc_finalBoss] Frame 52
_root.playBossFX(); stop();
Symbol 494 MovieClip [mc_finalBoss] Frame 61
stop();
Symbol 494 MovieClip [mc_finalBoss] Frame 70
_root.playBossFX();
Symbol 494 MovieClip [mc_finalBoss] Frame 102
_root.boss.killMode = true; gotoAndStop ("SIT");

Library Items

Symbol 1 Font [04b03]
Symbol 2 Sound [sword.wav]
Symbol 3 Sound [switch.wav]
Symbol 4 Sound [powerup.wav]
Symbol 5 Sound [pickup.wav]
Symbol 6 Sound [hit.wav]
Symbol 7 Sound [gun_plasma.wav]
Symbol 8 Sound [explode.wav]
Symbol 9 Sound [beep.wav]
Symbol 10 GraphicUsed by:11
Symbol 11 MovieClip [subTile]Uses:10
Symbol 12 GraphicUsed by:13 17 51 54 61 66 78
Symbol 13 MovieClip [mapTrans]Uses:12
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClip [loadGear]Uses:14
Symbol 16 GraphicUsed by:18
Symbol 17 MovieClipUses:12Used by:18
Symbol 18 MovieClip [loadBar]Uses:16 17
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:21
Symbol 21 MovieClipUses:20Used by:22
Symbol 22 MovieClip [glowMc]Uses:21
Symbol 23 BitmapUsed by:24
Symbol 24 GraphicUses:23Used by:25
Symbol 25 MovieClipUses:24Used by:26
Symbol 26 MovieClipUses:25Used by:39
Symbol 27 BitmapUsed by:28
Symbol 28 GraphicUses:27Used by:29
Symbol 29 MovieClipUses:28Used by:30
Symbol 30 MovieClipUses:29Used by:39
Symbol 31 BitmapUsed by:32
Symbol 32 GraphicUses:31Used by:33
Symbol 33 MovieClipUses:32Used by:34
Symbol 34 MovieClipUses:33Used by:39
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:37
Symbol 37 MovieClipUses:36Used by:38
Symbol 38 MovieClipUses:37Used by:39
Symbol 39 MovieClip [light]Uses:26 30 34 38
Symbol 40 GraphicUsed by:42
Symbol 41 GraphicUsed by:42
Symbol 42 MovieClip [musicIcon]Uses:40 41
Symbol 43 BitmapUsed by:44
Symbol 44 GraphicUses:43Used by:47
Symbol 45 BitmapUsed by:46
Symbol 46 GraphicUses:45Used by:47
Symbol 47 MovieClip [soundIcon]Uses:44 46
Symbol 48 FontUsed by:49 50 52 53 59 60 64 65 76 77
Symbol 49 TextUses:48Used by:51
Symbol 50 TextUses:48Used by:51
Symbol 51 ButtonUses:49 50 12Used by:68
Symbol 52 TextUses:48Used by:54
Symbol 53 TextUses:48Used by:54
Symbol 54 ButtonUses:52 53 12Used by:68
Symbol 55 FontUsed by:56
Symbol 56 TextUses:55Used by:68
Symbol 57 FontUsed by:58
Symbol 58 TextUses:57Used by:68
Symbol 59 TextUses:48Used by:61
Symbol 60 TextUses:48Used by:61
Symbol 61 ButtonUses:59 60 12Used by:68
Symbol 62 FontUsed by:63 67
Symbol 63 TextUses:62Used by:68
Symbol 64 TextUses:48Used by:66
Symbol 65 TextUses:48Used by:66
Symbol 66 ButtonUses:64 65 12Used by:68
Symbol 67 TextUses:62Used by:68
Symbol 68 MovieClipUses:51 54 56 58 61 63 66 67Used by:69
Symbol 69 MovieClip [menu]Uses:68Used by:Timeline
Symbol 70 BitmapUsed by:71
Symbol 71 GraphicUses:70Used by:72
Symbol 72 MovieClip [introScreen]Uses:71Used by:Timeline
Symbol 73 Sound [forestMusic.wav]Used by:Timeline
Symbol 74 Sound [dungeonMusic.wav]Used by:Timeline
Symbol 75 Sound [homeMusic.wav]Used by:Timeline
Symbol 76 TextUses:48Used by:78
Symbol 77 TextUses:48Used by:78
Symbol 78 ButtonUses:76 77 12Used by:117
Symbol 79 BitmapUsed by:80
Symbol 80 GraphicUses:79Used by:95
Symbol 81 BitmapUsed by:82
Symbol 82 GraphicUses:81Used by:95
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:95
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:95
Symbol 87 BitmapUsed by:88
Symbol 88 GraphicUses:87Used by:95
Symbol 89 BitmapUsed by:90
Symbol 90 GraphicUses:89Used by:95
Symbol 91 BitmapUsed by:92
Symbol 92 GraphicUses:91Used by:95
Symbol 93 BitmapUsed by:94
Symbol 94 GraphicUses:93Used by:95
Symbol 95 MovieClipUses:80 82 84 86 88 90 92 94Used by:96 234
Symbol 96 MovieClipUses:95Used by:117
Symbol 97 FontUsed by:98 110 111 114 115 116
Symbol 98 TextUses:97Used by:117
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:109
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:109
Symbol 103 BitmapUsed by:104
Symbol 104 GraphicUses:103Used by:109
Symbol 105 BitmapUsed by:106
Symbol 106 GraphicUses:105Used by:109
Symbol 107 BitmapUsed by:108
Symbol 108 GraphicUses:107Used by:109
Symbol 109 MovieClipUses:100 102 104 106 108Used by:117 234
Symbol 110 TextUses:97Used by:117
Symbol 111 TextUses:97Used by:117
Symbol 112 BitmapUsed by:113
Symbol 113 GraphicUses:112Used by:117 234
Symbol 114 TextUses:97Used by:117
Symbol 115 TextUses:97Used by:117
Symbol 116 TextUses:97Used by:117
Symbol 117 MovieClipUses:78 96 98 109 110 111 113 114 115 116Used by:118
Symbol 118 MovieClipUses:117Used by:Timeline
Symbol 119 BitmapUsed by:120
Symbol 120 GraphicUses:119Used by:123
Symbol 121 BitmapUsed by:122
Symbol 122 GraphicUses:121Used by:123
Symbol 123 MovieClip [bar_hp]Uses:120 122Used by:Timeline
Symbol 124 BitmapUsed by:125
Symbol 125 GraphicUses:124Used by:128
Symbol 126 BitmapUsed by:127
Symbol 127 GraphicUses:126Used by:128
Symbol 128 MovieClip [bar_pl]Uses:125 127Used by:Timeline
Symbol 129 BitmapUsed by:130
Symbol 130 GraphicUses:129Used by:135
Symbol 131 BitmapUsed by:132
Symbol 132 GraphicUses:131Used by:135
Symbol 133 BitmapUsed by:134
Symbol 134 GraphicUses:133Used by:135
Symbol 135 MovieClip [container]Uses:130 132 134Used by:Timeline
Symbol 136 BitmapUsed by:137
Symbol 137 GraphicUses:136Used by:142
Symbol 138 BitmapUsed by:139
Symbol 139 GraphicUses:138Used by:142
Symbol 140 BitmapUsed by:141
Symbol 141 GraphicUses:140Used by:142
Symbol 142 MovieClipUses:137 139 141Used by:200
Symbol 143 BitmapUsed by:144
Symbol 144 GraphicUses:143Used by:149
Symbol 145 BitmapUsed by:146
Symbol 146 GraphicUses:145Used by:149
Symbol 147 BitmapUsed by:148
Symbol 148 GraphicUses:147Used by:149
Symbol 149 MovieClipUses:144 146 148Used by:200
Symbol 150 BitmapUsed by:151
Symbol 151 GraphicUses:150Used by:156
Symbol 152 BitmapUsed by:153
Symbol 153 GraphicUses:152Used by:156
Symbol 154 BitmapUsed by:155
Symbol 155 GraphicUses:154Used by:156
Symbol 156 MovieClipUses:151 153 155Used by:200
Symbol 157 BitmapUsed by:158
Symbol 158 GraphicUses:157Used by:165
Symbol 159 BitmapUsed by:160
Symbol 160 GraphicUses:159Used by:165
Symbol 161 BitmapUsed by:162
Symbol 162 GraphicUses:161Used by:165
Symbol 163 BitmapUsed by:164
Symbol 164 GraphicUses:163Used by:165
Symbol 165 MovieClipUses:158 160 162 164Used by:200
Symbol 166 BitmapUsed by:167
Symbol 167 GraphicUses:166Used by:200
Symbol 168 BitmapUsed by:169
Symbol 169 GraphicUses:168Used by:200
Symbol 170 BitmapUsed by:171
Symbol 171 GraphicUses:170Used by:200
Symbol 172 BitmapUsed by:173
Symbol 173 GraphicUses:172Used by:200
Symbol 174 BitmapUsed by:175
Symbol 175 GraphicUses:174Used by:200
Symbol 176 BitmapUsed by:177
Symbol 177 GraphicUses:176Used by:200
Symbol 178 BitmapUsed by:179
Symbol 179 GraphicUses:178Used by:200
Symbol 180 BitmapUsed by:181
Symbol 181 GraphicUses:180Used by:184
Symbol 182 BitmapUsed by:183
Symbol 183 GraphicUses:182Used by:184
Symbol 184 MovieClipUses:181 183Used by:200
Symbol 185 BitmapUsed by:186
Symbol 186 GraphicUses:185Used by:189
Symbol 187 BitmapUsed by:188
Symbol 188 GraphicUses:187Used by:189
Symbol 189 MovieClipUses:186 188Used by:200
Symbol 190 BitmapUsed by:191
Symbol 191 GraphicUses:190Used by:200
Symbol 192 BitmapUsed by:193
Symbol 193 GraphicUses:192Used by:200
Symbol 194 BitmapUsed by:195
Symbol 195 GraphicUses:194Used by:200
Symbol 196 BitmapUsed by:197
Symbol 197 GraphicUses:196Used by:200
Symbol 198 BitmapUsed by:199
Symbol 199 GraphicUses:198Used by:200
Symbol 200 MovieClip [particles]Uses:142 149 156 165 167 169 171 173 175 177 179 184 189 191 193 195 197 199Used by:Timeline
Symbol 201 BitmapUsed by:202
Symbol 202 GraphicUses:201Used by:264 274 294 311 469
Symbol 203 BitmapUsed by:204
Symbol 204 GraphicUses:203Used by:231
Symbol 205 BitmapUsed by:206
Symbol 206 GraphicUses:205Used by:221
Symbol 207 BitmapUsed by:208
Symbol 208 GraphicUses:207Used by:221
Symbol 209 BitmapUsed by:210
Symbol 210 GraphicUses:209Used by:221
Symbol 211 BitmapUsed by:212
Symbol 212 GraphicUses:211Used by:221
Symbol 213 BitmapUsed by:214
Symbol 214 GraphicUses:213Used by:221
Symbol 215 BitmapUsed by:216
Symbol 216 GraphicUses:215Used by:221
Symbol 217 BitmapUsed by:218
Symbol 218 GraphicUses:217Used by:221
Symbol 219 BitmapUsed by:220
Symbol 220 GraphicUses:219Used by:221
Symbol 221 MovieClipUses:206 208 210 212 214 216 218 220Used by:231
Symbol 222 BitmapUsed by:223
Symbol 223 GraphicUses:222Used by:228
Symbol 224 BitmapUsed by:225
Symbol 225 GraphicUses:224Used by:228
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:228
Symbol 228 MovieClipUses:223 225 227Used by:231
Symbol 229 BitmapUsed by:230
Symbol 230 GraphicUses:229Used by:231
Symbol 231 MovieClipUses:204 221 228 230Used by:264
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232Used by:234
Symbol 234 MovieClipUses:233 95 109 113Used by:264
Symbol 235 BitmapUsed by:236
Symbol 236 GraphicUses:235Used by:263
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:253
Symbol 239 BitmapUsed by:240
Symbol 240 GraphicUses:239Used by:253
Symbol 241 BitmapUsed by:242
Symbol 242 GraphicUses:241Used by:253
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:253
Symbol 245 BitmapUsed by:246
Symbol 246 GraphicUses:245Used by:253
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:253
Symbol 249 BitmapUsed by:250
Symbol 250 GraphicUses:249Used by:253
Symbol 251 BitmapUsed by:252
Symbol 252 GraphicUses:251Used by:253
Symbol 253 MovieClipUses:238 240 242 244 246 248 250 252Used by:263
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254Used by:260
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256Used by:260
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258Used by:260
Symbol 260 MovieClipUses:255 257 259Used by:263
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:263
Symbol 263 MovieClipUses:236 253 260 262Used by:264
Symbol 264 MovieClip [mc_player]Uses:202 231 234 263Used by:Timeline
Symbol 265 BitmapUsed by:266
Symbol 266 GraphicUses:265Used by:274
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:271
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:271
Symbol 271 MovieClipUses:268 270Used by:274
Symbol 272 BitmapUsed by:273
Symbol 273 GraphicUses:272Used by:274
Symbol 274 MovieClip [mc_granny]Uses:202 266 271 273Used by:Timeline
Symbol 275 BitmapUsed by:276
Symbol 276 GraphicUses:275Used by:285
Symbol 277 BitmapUsed by:278
Symbol 278 GraphicUses:277Used by:285
Symbol 279 BitmapUsed by:280
Symbol 280 GraphicUses:279Used by:285
Symbol 281 BitmapUsed by:282
Symbol 282 GraphicUses:281Used by:285
Symbol 283 BitmapUsed by:284
Symbol 284 GraphicUses:283Used by:285
Symbol 285 MovieClip [pixelGuns]Uses:276 278 280 282 284Used by:Timeline
Symbol 286 BitmapUsed by:287
Symbol 287 GraphicUses:286Used by:290 293
Symbol 288 BitmapUsed by:289
Symbol 289 GraphicUses:288Used by:290
Symbol 290 MovieClipUses:287 289Used by:294
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:293
Symbol 293 MovieClipUses:287 292Used by:294
Symbol 294 MovieClip [mc_rolyPoly]Uses:202 290 293Used by:Timeline
Symbol 295 BitmapUsed by:296
Symbol 296 GraphicUses:295Used by:299 311
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:299
Symbol 299 MovieClipUses:296 298Used by:311
Symbol 300 BitmapUsed by:301
Symbol 301 GraphicUses:300Used by:304 311
Symbol 302 BitmapUsed by:303
Symbol 303 GraphicUses:302Used by:304
Symbol 304 MovieClipUses:301 303Used by:311
Symbol 305 BitmapUsed by:306 310
Symbol 306 GraphicUses:305Used by:309 311
Symbol 307 BitmapUsed by:308
Symbol 308 GraphicUses:307Used by:309
Symbol 309 MovieClipUses:306 308Used by:311
Symbol 310 GraphicUses:305Used by:311
Symbol 311 MovieClip [mc_skitter]Uses:202 299 304 309 296 301 306 310Used by:Timeline
Symbol 312 BitmapUsed by:313
Symbol 313 GraphicUses:312Used by:441
Symbol 314 BitmapUsed by:315
Symbol 315 GraphicUses:314Used by:441
Symbol 316 BitmapUsed by:317
Symbol 317 GraphicUses:316Used by:441
Symbol 318 BitmapUsed by:319
Symbol 319 GraphicUses:318Used by:441
Symbol 320 BitmapUsed by:321
Symbol 321 GraphicUses:320Used by:441
Symbol 322 BitmapUsed by:323
Symbol 323 GraphicUses:322Used by:441
Symbol 324 BitmapUsed by:325
Symbol 325 GraphicUses:324Used by:441
Symbol 326 BitmapUsed by:327
Symbol 327 GraphicUses:326Used by:441
Symbol 328 BitmapUsed by:329
Symbol 329 GraphicUses:328Used by:441
Symbol 330 BitmapUsed by:331
Symbol 331 GraphicUses:330Used by:441
Symbol 332 BitmapUsed by:333
Symbol 333 GraphicUses:332Used by:441
Symbol 334 BitmapUsed by:335
Symbol 335 GraphicUses:334Used by:441
Symbol 336 BitmapUsed by:337
Symbol 337 GraphicUses:336Used by:441
Symbol 338 BitmapUsed by:339
Symbol 339 GraphicUses:338Used by:441
Symbol 340 BitmapUsed by:341
Symbol 341 GraphicUses:340Used by:441
Symbol 342 BitmapUsed by:343
Symbol 343 GraphicUses:342Used by:441
Symbol 344 BitmapUsed by:345
Symbol 345 GraphicUses:344Used by:441
Symbol 346 BitmapUsed by:347
Symbol 347 GraphicUses:346Used by:441
Symbol 348 BitmapUsed by:349
Symbol 349 GraphicUses:348Used by:441
Symbol 350 BitmapUsed by:351
Symbol 351 GraphicUses:350Used by:441
Symbol 352 BitmapUsed by:353
Symbol 353 GraphicUses:352Used by:441
Symbol 354 BitmapUsed by:355 356
Symbol 355 GraphicUses:354Used by:441
Symbol 356 GraphicUses:354Used by:441
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:357Used by:441
Symbol 359 BitmapUsed by:360
Symbol 360 GraphicUses:359Used by:441
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:441
Symbol 363 BitmapUsed by:364
Symbol 364 GraphicUses:363Used by:441
Symbol 365 BitmapUsed by:366
Symbol 366 GraphicUses:365Used by:441
Symbol 367 BitmapUsed by:368
Symbol 368 GraphicUses:367Used by:441
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:441
Symbol 371 BitmapUsed by:372
Symbol 372 GraphicUses:371Used by:441
Symbol 373 BitmapUsed by:374
Symbol 374 GraphicUses:373Used by:441
Symbol 375 BitmapUsed by:376
Symbol 376 GraphicUses:375Used by:441
Symbol 377 BitmapUsed by:378
Symbol 378 GraphicUses:377Used by:385
Symbol 379 BitmapUsed by:380
Symbol 380 GraphicUses:379Used by:381
Symbol 381 MovieClipUses:380Used by:385
Symbol 382 BitmapUsed by:383
Symbol 383 GraphicUses:382Used by:384
Symbol 384 MovieClipUses:383Used by:385
Symbol 385 MovieClipUses:378 381 384Used by:441
Symbol 386 BitmapUsed by:387
Symbol 387 GraphicUses:386Used by:441
Symbol 388 BitmapUsed by:389
Symbol 389 GraphicUses:388Used by:441
Symbol 390 BitmapUsed by:391
Symbol 391 GraphicUses:390Used by:441
Symbol 392 BitmapUsed by:393
Symbol 393 GraphicUses:392Used by:441
Symbol 394 BitmapUsed by:395
Symbol 395 GraphicUses:394Used by:441
Symbol 396 BitmapUsed by:397
Symbol 397 GraphicUses:396Used by:441
Symbol 398 BitmapUsed by:399
Symbol 399 GraphicUses:398Used by:441
Symbol 400 BitmapUsed by:401
Symbol 401 GraphicUses:400Used by:441
Symbol 402 BitmapUsed by:403
Symbol 403 GraphicUses:402Used by:441
Symbol 404 BitmapUsed by:405
Symbol 405 GraphicUses:404Used by:441
Symbol 406 BitmapUsed by:407
Symbol 407 GraphicUses:406Used by:441
Symbol 408 BitmapUsed by:409
Symbol 409 GraphicUses:408Used by:441
Symbol 410 BitmapUsed by:411
Symbol 411 GraphicUses:410Used by:441
Symbol 412 BitmapUsed by:413
Symbol 413 GraphicUses:412Used by:441
Symbol 414 BitmapUsed by:415
Symbol 415 GraphicUses:414Used by:441
Symbol 416 BitmapUsed by:417
Symbol 417 GraphicUses:416Used by:441
Symbol 418 BitmapUsed by:419
Symbol 419 GraphicUses:418Used by:441
Symbol 420 BitmapUsed by:421
Symbol 421 GraphicUses:420Used by:441
Symbol 422 BitmapUsed by:423
Symbol 423 GraphicUses:422Used by:441
Symbol 424 BitmapUsed by:425
Symbol 425 GraphicUses:424Used by:441
Symbol 426 BitmapUsed by:427
Symbol 427 GraphicUses:426Used by:441
Symbol 428 BitmapUsed by:429
Symbol 429 GraphicUses:428Used by:441
Symbol 430 BitmapUsed by:431
Symbol 431 GraphicUses:430Used by:441
Symbol 432 GraphicUsed by:441
Symbol 433 BitmapUsed by:434
Symbol 434 GraphicUses:433Used by:441
Symbol 435 BitmapUsed by:436
Symbol 436 GraphicUses:435Used by:441
Symbol 437 BitmapUsed by:438
Symbol 438 GraphicUses:437Used by:441
Symbol 439 BitmapUsed by:440
Symbol 440 GraphicUses:439Used by:441
Symbol 441 MovieClip [tile]Uses:313 315 317 319 321 323 325 327 329 331 333 335 337 339 341 343 345 347 349 351 353 355 356 358 360 362 364 366 368 370 372 374 376 385 387 389 391 393 395 397 399 401 403 405 407 409 411 413 415 417 419 421 423 425 427 429 431 432 434 436 438 440Used by:Timeline
Symbol 442 BitmapUsed by:443
Symbol 443 GraphicUses:442Used by:450
Symbol 444 BitmapUsed by:445
Symbol 445 GraphicUses:444Used by:450
Symbol 446 BitmapUsed by:447
Symbol 447 GraphicUses:446Used by:450
Symbol 448 BitmapUsed by:449
Symbol 449 GraphicUses:448Used by:450
Symbol 450 MovieClipUses:443 445 447 449Used by:469
Symbol 451 BitmapUsed by:452
Symbol 452 GraphicUses:451Used by:459
Symbol 453 BitmapUsed by:454
Symbol 454 GraphicUses:453Used by:459
Symbol 455 BitmapUsed by:456
Symbol 456 GraphicUses:455Used by:459
Symbol 457 BitmapUsed by:458
Symbol 458 GraphicUses:457Used by:459
Symbol 459 MovieClipUses:452 454 456 458Used by:469
Symbol 460 BitmapUsed by:461
Symbol 461 GraphicUses:460Used by:468
Symbol 462 BitmapUsed by:463
Symbol 463 GraphicUses:462Used by:468
Symbol 464 BitmapUsed by:465
Symbol 465 GraphicUses:464Used by:468
Symbol 466 BitmapUsed by:467
Symbol 467 GraphicUses:466Used by:468
Symbol 468 MovieClipUses:461 463 465 467Used by:469
Symbol 469 MovieClip [mc_thumper]Uses:202 450 459 468Used by:Timeline
Symbol 470 BitmapUsed by:471
Symbol 471 GraphicUses:470Used by:472
Symbol 472 MovieClipUses:471Used by:477
Symbol 473 BitmapUsed by:474
Symbol 474 GraphicUses:473Used by:475
Symbol 475 MovieClipUses:474Used by:476
Symbol 476 MovieClipUses:475Used by:477
Symbol 477 MovieClip [textbox]Uses:472 476Used by:Timeline
Symbol 478 GraphicUsed by:479
Symbol 479 MovieClipUses:478Used by:489 494
Symbol 480 BitmapUsed by:481
Symbol 481 GraphicUses:480Used by:488
Symbol 482 BitmapUsed by:483
Symbol 483 GraphicUses:482Used by:488
Symbol 484 BitmapUsed by:485
Symbol 485 GraphicUses:484Used by:488
Symbol 486 BitmapUsed by:487
Symbol 487 GraphicUses:486Used by:488
Symbol 488 MovieClipUses:481 483 485 487Used by:489
Symbol 489 MovieClip [mc_boss]Uses:479 488Used by:Timeline
Symbol 490 BitmapUsed by:491
Symbol 491 GraphicUses:490Used by:492
Symbol 492 MovieClipUses:491Used by:493
Symbol 493 MovieClipUses:492Used by:494
Symbol 494 MovieClip [mc_finalBoss]Uses:479 493Used by:Timeline

Instance Names

"introScreen"Frame 1Symbol 72 MovieClip [introScreen]
"bar"Symbol 18 MovieClip [loadBar] Frame 1Symbol 17 MovieClip
"anim"Symbol 264 MovieClip [mc_player] Frame 1Symbol 231 MovieClip
"anim"Symbol 264 MovieClip [mc_player] Frame 2Symbol 234 MovieClip
"anim"Symbol 264 MovieClip [mc_player] Frame 4Symbol 263 MovieClip
"arrowPic"Symbol 477 MovieClip [textbox] Frame 1Symbol 476 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 1 as "04b03"
ExportAssets (56)Timeline Frame 1Symbol 2 as "sword.wav"
ExportAssets (56)Timeline Frame 1Symbol 3 as "switch.wav"
ExportAssets (56)Timeline Frame 1Symbol 4 as "powerup.wav"
ExportAssets (56)Timeline Frame 1Symbol 5 as "pickup.wav"
ExportAssets (56)Timeline Frame 1Symbol 6 as "hit.wav"
ExportAssets (56)Timeline Frame 1Symbol 7 as "gun_plasma.wav"
ExportAssets (56)Timeline Frame 1Symbol 8 as "explode.wav"
ExportAssets (56)Timeline Frame 1Symbol 9 as "beep.wav"
ExportAssets (56)Timeline Frame 1Symbol 11 as "subTile"
ExportAssets (56)Timeline Frame 1Symbol 13 as "mapTrans"
ExportAssets (56)Timeline Frame 1Symbol 15 as "loadGear"
ExportAssets (56)Timeline Frame 1Symbol 18 as "loadBar"
ExportAssets (56)Timeline Frame 1Symbol 22 as "glowMc"
ExportAssets (56)Timeline Frame 1Symbol 39 as "light"
ExportAssets (56)Timeline Frame 1Symbol 42 as "musicIcon"
ExportAssets (56)Timeline Frame 1Symbol 47 as "soundIcon"
ExportAssets (56)Timeline Frame 1Symbol 69 as "menu"
ExportAssets (56)Timeline Frame 1Symbol 72 as "introScreen"
ExportAssets (56)Timeline Frame 4Symbol 73 as "forestMusic.wav"
ExportAssets (56)Timeline Frame 6Symbol 74 as "dungeonMusic.wav"
ExportAssets (56)Timeline Frame 8Symbol 75 as "homeMusic.wav"
ExportAssets (56)Timeline Frame 35Symbol 123 as "bar_hp"
ExportAssets (56)Timeline Frame 35Symbol 128 as "bar_pl"
ExportAssets (56)Timeline Frame 35Symbol 135 as "container"
ExportAssets (56)Timeline Frame 35Symbol 200 as "particles"
ExportAssets (56)Timeline Frame 35Symbol 264 as "mc_player"
ExportAssets (56)Timeline Frame 35Symbol 274 as "mc_granny"
ExportAssets (56)Timeline Frame 35Symbol 285 as "pixelGuns"
ExportAssets (56)Timeline Frame 35Symbol 294 as "mc_rolyPoly"
ExportAssets (56)Timeline Frame 35Symbol 311 as "mc_skitter"
ExportAssets (56)Timeline Frame 35Symbol 441 as "tile"
ExportAssets (56)Timeline Frame 35Symbol 469 as "mc_thumper"
ExportAssets (56)Timeline Frame 35Symbol 477 as "textbox"
ExportAssets (56)Timeline Frame 35Symbol 489 as "mc_boss"
ExportAssets (56)Timeline Frame 35Symbol 494 as "mc_finalBoss"

Labels

"LOADSCREEN"Frame 1
"MENU"Frame 13
"CONTROLS"Frame 23
"GAME"Frame 45
"PLASMA"Symbol 39 MovieClip [light] Frame 1
"GRENADE"Symbol 39 MovieClip [light] Frame 10
"FTHROWER"Symbol 39 MovieClip [light] Frame 20
"SNIPER"Symbol 39 MovieClip [light] Frame 30
"ON"Symbol 42 MovieClip [musicIcon] Frame 1
"OFF"Symbol 42 MovieClip [musicIcon] Frame 11
"ON"Symbol 47 MovieClip [soundIcon] Frame 1
"OFF"Symbol 47 MovieClip [soundIcon] Frame 11
"HP"Symbol 135 MovieClip [container] Frame 1
"HPUP"Symbol 135 MovieClip [container] Frame 6
"PLUP"Symbol 135 MovieClip [container] Frame 11
"SMOKE1"Symbol 200 MovieClip [particles] Frame 1
"SMOKE2"Symbol 200 MovieClip [particles] Frame 8
"SMOKE3"Symbol 200 MovieClip [particles] Frame 15
"EXPLODE1"Symbol 200 MovieClip [particles] Frame 22
"PART1"Symbol 200 MovieClip [particles] Frame 29
"PART2"Symbol 200 MovieClip [particles] Frame 35
"PART3"Symbol 200 MovieClip [particles] Frame 41
"PART4"Symbol 200 MovieClip [particles] Frame 47
"PART5"Symbol 200 MovieClip [particles] Frame 53
"PLASMA"Symbol 200 MovieClip [particles] Frame 59
"SNIPER"Symbol 200 MovieClip [particles] Frame 65
"FTHROWER"Symbol 200 MovieClip [particles] Frame 71
"GRENADE"Symbol 200 MovieClip [particles] Frame 77
"TELEPORT"Symbol 200 MovieClip [particles] Frame 85
"PLASMADROP"Symbol 200 MovieClip [particles] Frame 92
"HPDROP"Symbol 200 MovieClip [particles] Frame 102
"HPUPDROP"Symbol 200 MovieClip [particles] Frame 109
"PLUPDROP"Symbol 200 MovieClip [particles] Frame 117
"GUNDROP"Symbol 200 MovieClip [particles] Frame 125
"STOP"Symbol 231 MovieClip Frame 1
"WALK"Symbol 231 MovieClip Frame 7
"ATTACK"Symbol 231 MovieClip Frame 13
"SHOOT"Symbol 231 MovieClip Frame 20
"STOP"Symbol 234 MovieClip Frame 1
"WALK"Symbol 234 MovieClip Frame 7
"ATTACK"Symbol 234 MovieClip Frame 13
"SHOOT"Symbol 234 MovieClip Frame 20
"STOP"Symbol 263 MovieClip Frame 1
"WALK"Symbol 263 MovieClip Frame 6
"ATTACK"Symbol 263 MovieClip Frame 12
"SHOOT"Symbol 263 MovieClip Frame 19
"UP"Symbol 264 MovieClip [mc_player] Frame 1
"LEFT"Symbol 264 MovieClip [mc_player] Frame 2
"RIGHT"Symbol 264 MovieClip [mc_player] Frame 3
"DOWN"Symbol 264 MovieClip [mc_player] Frame 4
"STAND"Symbol 274 MovieClip [mc_granny] Frame 1
"WALK"Symbol 274 MovieClip [mc_granny] Frame 11
"SWORD"Symbol 274 MovieClip [mc_granny] Frame 21
"PLASMA"Symbol 285 MovieClip [pixelGuns] Frame 1
"GRENADE"Symbol 285 MovieClip [pixelGuns] Frame 11
"FTHROWER"Symbol 285 MovieClip [pixelGuns] Frame 21
"SNIPER"Symbol 285 MovieClip [pixelGuns] Frame 31
"TELEPORT"Symbol 285 MovieClip [pixelGuns] Frame 41
"LR"Symbol 294 MovieClip [mc_rolyPoly] Frame 1
"UD"Symbol 294 MovieClip [mc_rolyPoly] Frame 8
"WALK_UP"Symbol 311 MovieClip [mc_skitter] Frame 1
"WALK_DOWN"Symbol 311 MovieClip [mc_skitter] Frame 9
"WALK_LEFT"Symbol 311 MovieClip [mc_skitter] Frame 19
"WALK_RIGHT"Symbol 311 MovieClip [mc_skitter] Frame 28
"STAND_UP"Symbol 311 MovieClip [mc_skitter] Frame 38
"STAND_DOWN"Symbol 311 MovieClip [mc_skitter] Frame 46
"STAND_LEFT"Symbol 311 MovieClip [mc_skitter] Frame 56
"STAND_RIGHT"Symbol 311 MovieClip [mc_skitter] Frame 65
"D_FLOOR_BASIC"Symbol 441 MovieClip [tile] Frame 1
"D_FLOOR_SHAD_L"Symbol 441 MovieClip [tile] Frame 10
"D_FLOOR_SHAD_R"Symbol 441 MovieClip [tile] Frame 19
"D_FLOOR_SHAD_B"Symbol 441 MovieClip [tile] Frame 29
"D_FLOOR_BOSS_LL"Symbol 441 MovieClip [tile] Frame 42
"D_FLOOR_BOSS_LR"Symbol 441 MovieClip [tile] Frame 55
"D_FLOOR_BOSS_UL"Symbol 441 MovieClip [tile] Frame 68
"D_FLOOR_BOSS_UR"Symbol 441 MovieClip [tile] Frame 81
"D_WALL_BASIC"Symbol 441 MovieClip [tile] Frame 94
"D_WALL_INSIDE"Symbol 441 MovieClip [tile] Frame 103
"D_WALL_BARS"Symbol 441 MovieClip [tile] Frame 113
"D_WALL_STATUE"Symbol 441 MovieClip [tile] Frame 122
"D_DOOR"Symbol 441 MovieClip [tile] Frame 131
"D_DOOR_O"Symbol 441 MovieClip [tile] Frame 139
"D_GATE_SIDE_E"Symbol 441 MovieClip [tile] Frame 148
"D_GATE_SIDE_W"Symbol 441 MovieClip [tile] Frame 158
"D_EXIT_N"Symbol 441 MovieClip [tile] Frame 170
"D_EXIT_E"Symbol 441 MovieClip [tile] Frame 179
"D_EXIT_S"Symbol 441 MovieClip [tile] Frame 187
"D_EXIT_W"Symbol 441 MovieClip [tile] Frame 195
"F_GRASS"Symbol 441 MovieClip [tile] Frame 203
"F_CLIFF"Symbol 441 MovieClip [tile] Frame 211
"F_CLIFF_R"Symbol 441 MovieClip [tile] Frame 218
"F_CLIFF_UD"Symbol 441 MovieClip [tile] Frame 226
"F_CLIFF_CL"Symbol 441 MovieClip [tile] Frame 234
"F_CLIFF_CR"Symbol 441 MovieClip [tile] Frame 243
"F_TREE"Symbol 441 MovieClip [tile] Frame 252
"F_EXIT_E"Symbol 441 MovieClip [tile] Frame 259
"F_EXIT_W"Symbol 441 MovieClip [tile] Frame 267
"F_EXIT_N"Symbol 441 MovieClip [tile] Frame 276
"F_EXIT_S"Symbol 441 MovieClip [tile] Frame 284
"F_DOORWAY_L"Symbol 441 MovieClip [tile] Frame 292
"F_DOORWAY_R"Symbol 441 MovieClip [tile] Frame 303
"T_BURNED"Symbol 441 MovieClip [tile] Frame 315
"T_BURNED_E"Symbol 441 MovieClip [tile] Frame 324
"T_BURNED_W"Symbol 441 MovieClip [tile] Frame 334
"T_BURNED_N"Symbol 441 MovieClip [tile] Frame 344
"T_BURNED_S"Symbol 441 MovieClip [tile] Frame 354
"T_BURNED_SE"Symbol 441 MovieClip [tile] Frame 364
"T_BURNED_SW"Symbol 441 MovieClip [tile] Frame 374
"T_BURNED_NE"Symbol 441 MovieClip [tile] Frame 384
"T_BURNED_NW"Symbol 441 MovieClip [tile] Frame 394
"T_DIRT"Symbol 441 MovieClip [tile] Frame 404
"T_DIRT_E"Symbol 441 MovieClip [tile] Frame 410
"T_DIRT_W"Symbol 441 MovieClip [tile] Frame 418
"T_DIRT_N"Symbol 441 MovieClip [tile] Frame 426
"T_DIRT_S"Symbol 441 MovieClip [tile] Frame 434
"H_FLOOR"Symbol 441 MovieClip [tile] Frame 442
"H_FLOOR_SHAD_R"Symbol 441 MovieClip [tile] Frame 449
"H_FLOOR_SHAD_L"Symbol 441 MovieClip [tile] Frame 463
"H_FLOOR_SHAD_B"Symbol 441 MovieClip [tile] Frame 477
"H_DOOR"Symbol 441 MovieClip [tile] Frame 491
"H_WALL"Symbol 441 MovieClip [tile] Frame 500
"H_BOOKS"Symbol 441 MovieClip [tile] Frame 508
"H_BED1"Symbol 441 MovieClip [tile] Frame 516
"H_BED2"Symbol 441 MovieClip [tile] Frame 524
"H_WINDOW"Symbol 441 MovieClip [tile] Frame 531
"H_BLACK"Symbol 441 MovieClip [tile] Frame 539
"T_HOUSE_WALL"Symbol 441 MovieClip [tile] Frame 548
"T_HOUSE_WINDOW"Symbol 441 MovieClip [tile] Frame 560
"T_HOUSE_DOOR"Symbol 441 MovieClip [tile] Frame 574
"T_HOUSE_ROOF"Symbol 441 MovieClip [tile] Frame 586
"UP"Symbol 469 MovieClip [mc_thumper] Frame 1
"DOWN"Symbol 469 MovieClip [mc_thumper] Frame 8
"LEFT"Symbol 469 MovieClip [mc_thumper] Frame 15
"RIGHT"Symbol 469 MovieClip [mc_thumper] Frame 22
"ENTRY"Symbol 489 MovieClip [mc_boss] Frame 1
"ENTRY"Symbol 494 MovieClip [mc_finalBoss] Frame 1
"SIT"Symbol 494 MovieClip [mc_finalBoss] Frame 52
"SITNOSMASH"Symbol 494 MovieClip [mc_finalBoss] Frame 61
"TRANSFORM"Symbol 494 MovieClip [mc_finalBoss] Frame 70




http://swfchan.com/9/40863/info.shtml
Created: 10/5 -2019 18:15:15 Last modified: 10/5 -2019 18:15:15 Server time: 13/05 -2024 15:04:47