Frame 1
function update() {
var a = 0;
while (a < buttonIDs.length) {
var isDown = false;
var b = 1;
while (b < buttonIDs[a].length) {
if (Key.isDown(buttonIDs[a][b])) {
isDown = true;
break;
}
b++;
}
if (isDown) {
if (0 < buttonIDs[a][0]) {
buttonIDs[a][0] = 2;
} else {
buttonIDs[a][0] = 1;
}
} else if (0 < buttonIDs[a][0]) {
buttonIDs[a][0] = -1;
} else {
buttonIDs[a][0] = 0;
}
a++;
}
mGame.update();
}
function getButtonState(id) {
return(buttonIDs[id][0]);
}
function playSound(id) {
snd.attachSound(id);
snd.start();
}
function changeMusic(id) {
if (musicID != id) {
musicID = id;
music.stop();
if (musicID != "") {
music.attachSound(musicID);
if (musicPlaying) {
music.start(0, 1000);
}
}
}
}
function pauseMusic() {
musicPlaying = false;
if (musicID != "") {
music.stop(musicID);
}
}
function resumeMusic() {
if (!musicPlaying) {
musicPlaying = true;
if (musicID != "") {
music.start(0, 1000);
}
}
}
_root.colorWhite = new Object();
_root.colorWhite = {ra:"100", rb:"255", ga:"100", gb:"255", ba:"100", bb:"255", aa:"100", ab:"0"};
_root.colorNormal = new Object();
_root.colorNormal = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_root.buttonIDs = new Array();
_root.buttonIDs.push(new Array(0, 90, Key.SHIFT, Key.SPACE, Key.UP));
_root.buttonIDs.push(new Array(0, 88, Key.CONTROL));
_root.buttonIDs.push(new Array(0, Key.ENTER));
_root.buttonIDs.push(new Array(0, Key.DOWN));
_root.snd = new Sound();
_root.music = new Sound();
_root.musicID = "";
_root.musicPlaying = false;
Symbol 22 MovieClip Frame 1
function advance() {
play();
}
Symbol 22 MovieClip Frame 10
stop();
Symbol 22 MovieClip Frame 21
stop();
Symbol 22 MovieClip Frame 32
stop();
Symbol 22 MovieClip Frame 33
_parent.onCutsceneEnd();
Symbol 29 MovieClip Frame 1
stop();
Symbol 33 MovieClip Frame 1
function update() {
return(undefined);
}
stop();
_visible = false;
Symbol 33 MovieClip Frame 2
function update() {
if (_root.getButtonState(1) == 1) {
willFire = true;
}
if (willFire && (firingTimer == 0)) {
fire();
firingTimer = 6;
willFire = false;
}
if (firingTimer) {
firingTimer--;
}
}
function fire() {
_root.playSound("SHOOT");
_parent.fire(_x, _y, 12, 0);
}
stop();
_visible = true;
this.firingTimer = 0;
this.willFire = false;
Symbol 33 MovieClip Frame 3
function update() {
if ((0 < _root.getButtonState(1)) && (firingTimer == 0)) {
fire();
firingTimer = 4;
}
if (firingTimer) {
firingTimer--;
}
}
function fire() {
_root.playSound("SHOOT");
_parent.fire(_x, _y, 12, 0);
}
stop();
_visible = true;
this.firingTimer = 0;
Symbol 33 MovieClip Frame 4
function update() {
if (_root.getButtonState(1) == 1) {
willFire = true;
}
if (willFire && (firingTimer == 0)) {
fire();
firingTimer = 6;
willFire = false;
}
if (firingTimer) {
firingTimer--;
}
}
function fire() {
_root.playSound("SHOOT");
_parent.fire(_x, _y - 6, 12, 0);
_parent.fire(_x, _y + 6, 12, 0);
}
stop();
_visible = true;
this.firingTimer = 0;
this.willFire = false;
Symbol 45 MovieClip Frame 1
stop();
Symbol 45 MovieClip Frame 2
_root.playSound("STEP");
Symbol 45 MovieClip Frame 10
_root.playSound("STEP");
Symbol 45 MovieClip Frame 18
gotoAndPlay (2);
Symbol 45 MovieClip Frame 19
stop();
Symbol 45 MovieClip Frame 20
stop();
Symbol 48 MovieClip Frame 2
stop();
Symbol 49 MovieClip Frame 1
this._w = 8;
this._h = 16;
this.deltaX = 0;
this.deltaY = 0;
this.hp = 1;
this.type = "PLAYER";
this.isOnGround = false;
this.airJump = 0;
this.animation = "STAND";
mGun.gotoAndStop(_parent.playerGun + 1);
gotoAndStop (2);
Symbol 49 MovieClip Frame 2
function update() {
if (!isOnGround) {
if (deltaY < 0) {
newAnimation = "JUMP";
} else {
newAnimation = "FALL";
}
} else if (deltaX == 0) {
newAnimation = "STAND";
} else {
newAnimation = "WALK";
}
if (animation != newAnimation) {
mAnimation.gotoAndPlay(newAnimation);
}
animation = newAnimation;
deltaX = 0;
if (Key.isDown(Key.LEFT)) {
deltaX = deltaX - 4;
}
if (Key.isDown(Key.RIGHT)) {
deltaX = deltaX + 4;
}
if (deltaX < 0) {
_xscale = -100;
}
if (0 < deltaX) {
_xscale = 100;
}
if ((_root.getButtonState(0) < 1) && (deltaY < 0)) {
deltaY = deltaY + 2;
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
if (_root.getButtonState(0) == 1) {
if (isOnGround) {
jump();
} else if (airJump) {
airJump--;
jump();
}
}
if (((_root.getButtonState(3) == 1) && (isOnGround)) && (_parent.playerDash)) {
_root.playSound("JUMP");
deltaX = (10 * _xscale) / 100;
deltaY = 0;
gotoAndStop (4);
}
isOnGround = false;
mGun.update();
}
function jump() {
_root.playSound("JUMP");
deltaY = -12;
_parent.createParticle(1, _x, _y + _h);
}
function fire(x, y, dx, dy) {
_parent.firePlayerBullet(_x + ((x * _xscale) / 100), _y + y, (dx * _xscale) / 100, dy);
}
function onCollision(type, edge) {
if (type == "GROUND") {
if (edge == "BOTTOM") {
if (4 < deltaY) {
_root.playSound("LAND");
}
isOnGround = true;
airJump = _parent.playerJump;
}
}
if ((type == "ENEMY") || (type == "BULLET")) {
hp = 0;
deltaY = -8;
if (edge == "RIGHT") {
deltaX = -8;
}
if (edge == "LEFT") {
deltaX = 8;
}
}
}
function onDestroyed() {
_parent.onPlayerDestroyed();
_parent.createParticle(4, _x, _y);
_root.playSound("YELP");
gotoAndStop (3);
}
stop();
Symbol 49 MovieClip Frame 3
function update() {
if (deltaY < 16) {
deltaY++;
}
}
function onCollision(type, edge) {
if (type == "GROUND") {
deltaX = 0;
}
}
function onDestroyed() {
}
mGun.gotoAndStop(0);
stop();
Symbol 49 MovieClip Frame 4
function update() {
if (0 < _xscale) {
_parent.createParticle(6, _x, _y + _h);
} else {
_parent.createParticle(7, _x, _y + _h);
}
timer--;
if (0 >= timer) {
gotoAndStop (2);
}
return(undefined);
}
this.timer = 8;
Symbol 184 MovieClip Frame 1
stop();
Symbol 185 MovieClip Frame 3
_parent.onAnimationEnd();
stop();
Symbol 187 MovieClip Frame 10
_parent.onAnimationEnd();
stop();
Symbol 188 MovieClip Frame 19
_parent.onAnimationEnd();
stop();
Symbol 190 MovieClip Frame 20
_parent.onAnimationEnd();
stop();
Symbol 196 MovieClip Frame 5
_parent.onAnimationEnd();
stop();
Symbol 198 MovieClip Frame 20
_parent.onAnimationEnd();
stop();
Symbol 199 MovieClip Frame 10
_parent.onAnimationEnd();
stop();
Symbol 200 MovieClip Frame 1
stop();
Symbol 211 MovieClip Frame 4
function update() {
timer--;
if (timer < 0) {
hp = 0;
}
if (timer % 2) {
_root.playSound("POP");
_parent.createEnemyExplosion((this._x + (Math.random() * 64)) - 32, (this._y + (Math.random() * 64)) - 32);
}
}
this.timer = 60;
Symbol 251 MovieClip Frame 9
gotoAndPlay (1);
Symbol 251 MovieClip Frame 18
gotoAndPlay (10);
Symbol 257 MovieClip Frame 9
gotoAndPlay (1);
Symbol 257 MovieClip Frame 10
stop();
Symbol 285 MovieClip Frame 13
gotoAndPlay (1);
Symbol 285 MovieClip Frame 26
gotoAndPlay (14);
Symbol 286 MovieClip Frame 1
stop();
Symbol 286 MovieClip Frame 2
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
deltaX = (_xscale * 4) / 100;
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if ((type == "GROUND") && ((edge == "LEFT") || (edge == "RIGHT"))) {
_xscale = (-_xscale);
}
}
this._w = 16;
this._h = 16;
this.hp = 2;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 3
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (state == 0) {
if (((_parent.player._x < (_x + _w)) && ((_x - _w) < _parent.player._x)) && (_y < _parent.player._y)) {
state = 1;
}
} else if (deltaY < 16) {
deltaY = deltaY + 1;
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
}
this._w = 16;
this._h = 16;
this.hp = 10;
this.hurt = false;
this.color = new Color(this);
this.state = 0;
Symbol 286 MovieClip Frame 4
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
deltaX = (_xscale * 3) / 100;
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if ((type == "GROUND") && ((edge == "LEFT") || (edge == "RIGHT"))) {
_xscale = (-_xscale);
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 5
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (!_parent.isGround((_x + deltaX) + ((_w * _xscale) / 100), (_y + _h) + 1)) {
_xscale = (-_xscale);
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
deltaX = (_xscale * 3) / 100;
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if ((type == "GROUND") && ((edge == "LEFT") || (edge == "RIGHT"))) {
_xscale = (-_xscale);
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 6
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (!_parent.isGround((_x + deltaX) + ((_w * _xscale) / 100), (_y + _h) + 1)) {
_xscale = (-_xscale);
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
deltaX = (_xscale * 4) / 100;
if (((_y - _h) < _parent.player._y) && (_parent.player._y < (_y + _h))) {
if ((0 < _xscale) && (_x < _parent.player._x)) {
deltaX = 8;
} else if ((_xscale < 0) && (_parent.player._x < _x)) {
deltaX = -8;
}
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if ((type == "GROUND") && ((edge == "LEFT") || (edge == "RIGHT"))) {
_xscale = (-_xscale);
}
}
function onDestroyed() {
_parent.createEnemyExplosion(this._x - 16, this._y - 16);
_parent.createEnemyExplosion(this._x + 16, this._y - 16);
_parent.createEnemyExplosion(this._x - 16, this._y + 16);
_parent.createEnemyExplosion(this._x + 16, this._y + 16);
}
this._w = 32;
this._h = 32;
this._y = this._y - 16;
this.hp = 20;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 7
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (!_parent.isGround((_x + deltaX) + ((_w * _xscale) / 100), (_y + _h) + 1)) {
_xscale = (-_xscale);
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
deltaX = (_xscale * 3) / 100;
}
function onCollision(type, edge) {
if (type == "BULLET") {
if (((0 < _xscale) && (edge == "LEFT")) || ((_xscale < 0) && (edge == "RIGHT"))) {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
} else {
_root.playSound("PING");
}
}
if ((type == "GROUND") && ((edge == "LEFT") || (edge == "RIGHT"))) {
_xscale = (-_xscale);
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 8
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
var newAnimation = "STAND";
if (deltaX) {
newAnimation = "WALK";
}
deltaX = 0;
if (_parent.player._x < _x) {
if (_parent.isGround((_x - _w) - 2, _y + (((_h + 1) * _yscale) / 100)) && ((_parent.player._x + _parent.player._w) < _x)) {
deltaX = -2;
}
_xscale = -100;
} else if (_x < _parent.player._x) {
if (_parent.isGround((_x + _w) + 2, _y + (((_h + 1) * _yscale) / 100)) && (_x < (_parent.player._x - _parent.player._w))) {
deltaX = 2;
}
_xscale = 100;
}
if (newAnimation != animation) {
animation = newAnimation;
mAnimation.gotoAndPlay(animation);
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
}
this._w = 16;
this._h = 16;
this.hp = 3;
this.hurt = false;
this.color = new Color(this);
this.animation = "STAND";
Symbol 286 MovieClip Frame 9
function update() {
var newAnimation = "WALK";
if (!isOnGround) {
newAnimation = "JUMP";
}
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (isOnGround && (!_parent.isGround(_x + ((_w * _xscale) / 100), (_y + _h) + 1))) {
deltaY = -12;
}
if (deltaY < 16) {
deltaY = deltaY + 1;
}
deltaX = (_xscale * 4) / 100;
isOnGround = false;
if (newAnimation != animation) {
animation = newAnimation;
mAnimation.gotoAndPlay(animation);
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if (type == "GROUND") {
if (edge == "BOTTOM") {
isOnGround = true;
}
if ((edge == "LEFT") || (edge == "RIGHT")) {
_xscale = (-_xscale);
}
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.hurt = false;
this.color = new Color(this);
this.animation = "WALK";
this.isOnGround = false;
Symbol 286 MovieClip Frame 10
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
deltaX = (2 * _xscale) / 100;
deltaY = 2 * dy;
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
if (type == "GROUND") {
if ((edge == "LEFT") || (edge == "RIGHT")) {
_xscale = (-_xscale);
}
if ((edge == "TOP") || (edge == "BOTTOM")) {
dy = -dy;
}
}
}
this._w = 17;
this._h = 17;
this.hp = 6;
this.hurt = false;
this.color = new Color(this);
this.dy = 1;
Symbol 286 MovieClip Frame 11
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (timer) {
timer--;
} else {
var x = (6 * Math.sin(Math.atan2(_parent.player._x - _x, _parent.player._y - _y)));
var y = (6 * Math.cos(Math.atan2(_parent.player._x - _x, _parent.player._y - _y)));
_parent.fireEnemyBullet(_x, _y, x, y);
timer = 90;
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.timer = ((this._x - 16) / 2) % 90;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 12
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (timer) {
timer--;
} else {
_parent.fireEnemyBullet(_x, _y, (8 * _xscale) / 100, 0);
timer = 60;
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
}
}
this._w = 16;
this._h = 16;
this.hp = 4;
this.timer = 60;
this.hurt = false;
this.color = new Color(this);
Symbol 286 MovieClip Frame 13
function update() {
if (hurt) {
color.setTransform(_root.colorNormal);
hurt = false;
}
if (timer) {
if (state && (!(timer % 20))) {
var x = (8 * Math.sin(Math.atan2(_parent.player._x - _x, _parent.player._y - _y)));
var y = (8 * Math.cos(Math.atan2(_parent.player._x - _x, _parent.player._y - _y)));
_parent.fireEnemyBullet(_x, _y, x, y);
}
timer--;
} else {
if (state == 0) {
state = 1;
mAnimation.gotoAndPlay("OPEN");
} else {
state = 0;
mAnimation.gotoAndPlay("CLOSED");
}
timer = 60;
}
}
function onCollision(type, edge) {
if (type == "BULLET") {
if (state) {
color.setTransform(_root.colorWhite);
hurt = true;
hp--;
if (0 < hp) {
_root.playSound("HURT");
} else {
_root.playSound("POP");
}
} else {
_root.playSound("PING");
}
}
}
function onDestroyed() {
_parent.createMisc(7, this._x, this._y);
_parent.onBossDestroyed();
}
this._w = 48;
this._h = 48;
this._x = this._x + 24;
this._y = this._y + 24;
this.hp = 8;
this.timer = 60;
this.state = 0;
this.hurt = false;
this.color = new Color(this);
Symbol 287 MovieClip Frame 1
function message(id) {
_parent.message(id);
if (id == "GUN1") {
player.mGun.gotoAndStop(2);
}
if (id == "GUN2") {
player.mGun.gotoAndStop(3);
}
if (id == "GUN3") {
player.mGun.gotoAndStop(4);
}
}
function onPlayerDestroyed() {
statDeaths++;
_parent.onPlayerDestroyed();
}
function onBossDestroyed() {
var a = 0;
while (a < enemies.length) {
enemies[a].hp = 0;
a++;
}
clear(enemyBullets);
_parent.onBossDestroyed(statDeaths, statTime, playerGun);
}
function firePlayerBullet(x, y, deltaX, deltaY) {
var a = createBullet();
a._x = x;
a._y = y;
a._h = 6;
a.deltaX = deltaX;
a.deltaY = deltaY;
a.hp = 15;
a.onCollision = function (type, edge) {
if (this.hp && (type == "GROUND")) {
_root.playSound("PING");
}
this.hp = 0;
};
if (!playerRange) {
a.update = function () {
this.hp--;
};
}
if (a.deltaX < 0) {
a._xscale = -100;
}
playerBullets.push(a);
}
function fireEnemyBullet(x, y, deltaX, deltaY) {
var a = createBullet();
a._x = x;
a._y = y;
a.deltaX = deltaX;
a.deltaY = deltaY;
a.hp = 1;
a.onCollision = function (type, edge) {
this.hp = 0;
};
a.gotoAndStop(2);
enemyBullets.push(a);
}
function createBullet() {
mBullet.duplicateMovieClip("bullet" + nBullets, nBullets);
var a = eval ("bullet" + nBullets);
a._w = 1;
a._h = 1;
a.type = "BULLET";
a.onDestroyed = function () {
_parent.createParticle(0, this._x, this._y);
};
nBullets++;
if (191 < nBullets) {
nBullets = 128;
}
return(a);
}
function createEnemyExplosion(x, y) {
var p = new Array();
var a = 0;
while (a < 8) {
var b = createP(x, y);
b.gotoAndStop(4);
b.deltaX = (Math.random() * 8) - 4;
b.deltaY = (Math.random() * 8) - 4;
b.update = function () {
this.deltaY = this.deltaY - 0.2;
};
p.push(b);
a++;
}
a = 0;
while (a < p.length) {
b = createP(x, y);
b.gotoAndStop(6);
b.update = function () {
this.deltaY = this.deltaY - 0.2;
};
b.deltaX = p[a].deltaX;
b.deltaY = p[a].deltaY;
a++;
}
createParticle(4, x, y);
}
function createParticle(type, x, y) {
var a = createP(x, y);
a.gotoAndStop(type + 1);
}
function createP(x, y) {
mParticle.duplicateMovieClip("particle" + nParticles, nParticles);
var a = eval ("particle" + nParticles);
a._x = x;
a._y = y;
a.hp = 1;
a.onAnimationEnd = function () {
hp = 0;
};
nParticles++;
if (9000 < nParticles) {
nParticles = 1300;
}
particles.push(a);
return(a);
}
function isGround(x, y) {
if ((((x >= 0) && (x < 640)) && (y >= 0)) && (y < 480)) {
x = Math.floor(x / 32);
y = Math.floor(y / 32);
if ((groundMap[x + (y * 20)] == 1) || (groundMap[x + (y * 20)] == 2)) {
return(true);
}
}
return(false);
}
function update() {
statTime++;
updateAll(players);
collideGroundWithAll(players);
collideSpikesWithAll(players);
updateAll(playerBullets);
updateAll(enemies);
updateAll(enemyBullets);
updateAll(particles);
updateAll(misc);
collideGroundWithAll(playerBullets);
collideEdgesWithAll(enemies);
collideGroundWithAll(enemies);
collideGroundWithAll(enemyBullets);
collideAll(players, misc);
collideAll(players, enemies);
collideAll(playerBullets, enemies);
collideAll(enemyBullets, players);
removeOutOfScreen(playerBullets);
removeOutOfScreen(enemyBullets);
if (0 >= player.hp) {
player.onDestroyed();
}
removeDead(misc);
removeDead(playerBullets);
removeDead(particles);
removeDead(enemies);
removeDead(enemyBullets);
scrollMap();
}
function updateAll(array) {
var a = 0;
while (a < array.length) {
array[a].update();
array[a].oldX = array[a]._x;
array[a].oldY = array[a]._y;
array[a]._x = array[a]._x + (array[a].deltaX + array[a].groundDelta);
array[a]._y = array[a]._y + array[a].deltaY;
array[a].groundDelta = 0;
a++;
}
}
function collideBlocksWithAll(array) {
var a = 0;
while (a < array.length) {
collideBlocksWith(array[a]);
a++;
}
}
function collideBlocksWith(object) {
var collision = false;
var a = 0;
while (a < blocks.length) {
if (objectsAreOverlapping(blocks[a], object)) {
var tempX = object._x;
var tempY = object._y;
var tempX2 = blocks[a]._x;
var tempY2 = blocks[a]._y;
object._x = object.oldX;
object._y = object.oldY;
blocks[a]._x = blocks[a].oldX;
blocks[a]._y = blocks[a].oldY;
if (!objectsAreOverlapping(blocks[a], object)) {
object._x = tempX;
blocks[a]._x = tempX2;
if (objectsAreOverlapping(blocks[a], object)) {
collision = true;
if ((blocks[a]._x - blocks[a].oldX) < (object._x - object.oldX)) {
object._x = (blocks[a]._x - blocks[a]._w) - object._w;
object.onCollision(blocks[a].type, "RIGHT");
blocks[a].onCollision(object.type, "LEFT");
} else {
object._x = (blocks[a]._x + blocks[a]._w) + object._w;
object.onCollision(blocks[a].type, "LEFT");
blocks[a].onCollision(object.type, "RIGHT");
}
object.deltaX = blocks[a].deltaX;
}
} else {
object._x = tempX;
blocks[a]._x = tempX2;
}
object._y = tempY;
blocks[a]._y = tempY2;
}
a++;
}
a = 0;
while (a < blocks.length) {
if (objectsAreOverlapping(blocks[a], object)) {
tempY = object._y;
tempY2 = blocks[a]._y;
object._y = object.oldY;
blocks[a]._y = blocks[a].oldY;
if (!objectsAreOverlapping(blocks[a], object)) {
object._y = tempY;
blocks[a]._y = tempY2;
if (objectsAreOverlapping(blocks[a], object)) {
collision = true;
if ((blocks[a]._y - blocks[a].oldY) < (object._y - object.oldY)) {
object.groundDelta = blocks[a].deltaX;
object._y = (blocks[a]._y - blocks[a]._h) - object._h;
object.onCollision(blocks[a].type, "BOTTOM");
blocks[a].onCollision(object.type, "TOP");
} else {
object._y = (blocks[a]._y + blocks[a]._h) + object._h;
object.onCollision(blocks[a].type, "TOP");
blocks[a].onCollision(object.type, "BOTTOM");
}
object.deltaY = blocks[a].deltaY;
}
} else {
object._y = tempY;
blocks[a]._y = tempY2;
}
}
a++;
}
if (collision) {
collideGroundWith(object);
}
}
function collideAll(array1, array2) {
var a = 0;
while (a < array1.length) {
if (0 < array1[a].hp) {
var b = 0;
while (b < array2.length) {
if ((0 < array2[b].hp) && (0 < array1[a].hp)) {
collide(array1[a], array2[b]);
}
b++;
}
}
a++;
}
}
function collide(object1, object2) {
if (objectsAreOverlapping(object1, object2)) {
var tempY1 = object1._y;
var tempY2 = object2._y;
object1._y = object1.oldY;
object2._y = object2.oldY;
if (objectsAreOverlapping(object1, object2)) {
if ((object2._x - object2.oldX) < (object1._x - object1.oldX)) {
object1.onCollision(object2.type, "RIGHT");
object2.onCollision(object1.type, "LEFT");
} else {
object1.onCollision(object2.type, "LEFT");
object2.onCollision(object1.type, "RIGHT");
}
} else if ((tempY2 - object2.oldY) < (tempY1 - object1.oldY)) {
object1.onCollision(object2.type, "BOTTOM");
object2.onCollision(object1.type, "TOP");
} else {
object1.onCollision(object2.type, "TOP");
object2.onCollision(object1.type, "BOTTOM");
}
object1._y = tempY1;
object2._y = tempY2;
}
}
function objectsAreOverlapping(objectA, objectB) {
if ((objectB._x - objectB._w) < (objectA._x + objectA._w)) {
if ((objectA._x - objectA._w) < (objectB._x + objectB._w)) {
if ((objectB._y - objectB._h) < (objectA._y + objectA._h)) {
if ((objectA._y - objectA._h) < (objectB._y + objectB._h)) {
return(true);
}
}
}
}
return(false);
}
function collideGroundWithAll(array) {
var a = 0;
while (a < array.length) {
collideGroundWith(array[a]);
a++;
}
}
function collideGroundWith(object) {
var tempY = object._y;
object._y = object.oldY;
if (groundIsOverlapping(object)) {
if (0 < (object._x - object.oldX)) {
object._x = (Math.ceil(((object._x + object._w) / 32) - 1) * 32) - object._w;
object.onCollision("GROUND", "RIGHT");
} else {
object._x = (Math.floor(((object._x - object._w) / 32) + 1) * 32) + object._w;
object.onCollision("GROUND", "LEFT");
}
object.deltaX = 0;
}
object._y = tempY;
if (groundIsOverlapping(object)) {
if (0 < (object._y - object.oldY)) {
object.groundDelta = 0;
object._y = (Math.ceil(((object._y + object._h) / 32) - 1) * 32) - object._h;
object.onCollision("GROUND", "BOTTOM");
} else {
object._y = (Math.floor(((object._y - object._h) / 32) + 1) * 32) + object._h;
object.onCollision("GROUND", "TOP");
}
object.deltaY = 0;
}
}
function groundIsOverlapping(object) {
var l = Math.floor((object._x - object._w) / 32);
var r = Math.ceil((object._x + object._w) / 32);
var t = Math.floor((object._y - object._h) / 32);
var b = Math.ceil((object._y + object._h) / 32);
l = Math.min(Math.max(l, 0), 20);
r = Math.min(Math.max(r, 0), 20);
t = Math.min(Math.max(t, 0), 15);
b = Math.min(Math.max(b, 0), 15);
var x = l;
while (x < r) {
var y = t;
while (y < b) {
if (groundMap[x + (y * 20)] == 1) {
return(true);
}
if (groundMap[x + (y * 20)] == 2) {
if (object.type == "BULLET") {
if (object.type == "BULLET") {
_root.playSound("BREAK");
}
object.hp = 0;
createParticle(4, (x * 32) + 16, (y * 32) + 16);
groundMap[x + (y * 20)] = 0;
ground[x + (y * 20)].removeMovieClip();
ground[x + (y * 20)] = null;
}
return(true);
}
y++;
}
x++;
}
return(false);
}
function collideSpikesWithAll(array) {
var a = 0;
while (a < array.length) {
if (spikesAreOverlapping(array[a])) {
array[a].hp = 0;
}
a++;
}
}
function spikesAreOverlapping(object) {
var l = Math.floor((object._x - object._w) / 32);
var r = Math.ceil((object._x + object._w) / 32);
var t = Math.floor((object._y - object._h) / 32);
var b = Math.ceil((object._y + object._h) / 32);
l = Math.min(Math.max(l, 0), 20);
r = Math.min(Math.max(r, 0), 20);
t = Math.min(Math.max(t, 0), 15);
b = Math.min(Math.max(b, 0), 15);
var x = l;
while (x < r) {
var y = t;
while (y < b) {
if (groundMap[x + (y * 20)] == 3) {
return(true);
}
y++;
}
x++;
}
return(false);
}
function collideEdgesWithAll(array) {
var a = 0;
while (a < array.length) {
if (array[a]._x < (0 + array[a]._w)) {
array[a]._x = array[a]._w;
array[a].deltaX = 0;
array[a].onCollision("GROUND", "LEFT");
}
if ((640 - array[a]._w) < array[a]._x) {
array[a]._x = 640 - array[a]._w;
array[a].deltaX = 0;
array[a].onCollision("GROUND", "RIGHT");
}
a++;
}
}
function removeOutOfScreen(array) {
var a = 0;
while (a < array.length) {
if ((((array[a]._x < -32) || (672 < array[a]._x)) || (array[a]._y < -32)) || (512 < array[a]._y)) {
array[a].onDestroyed();
array[a].removeMovieClip();
if (a == (array.length - 1)) {
array.pop();
} else {
array[a] = array.pop();
}
}
a++;
}
}
function removeDead(array) {
var a = 0;
while (a < array.length) {
if (0 >= array[a].hp) {
array[a].onDestroyed();
array[a].removeMovieClip();
if (a == (array.length - 1)) {
array.pop();
} else {
array[a] = array.pop();
}
}
a++;
}
}
function scrollMap() {
var a = 0;
while (a < players.length) {
if (0 >= (players[a]._x + players[a]._w)) {
mapX = Math.max(mapX - 1, 0);
var x = 624;
var y = (players[a]._y + players[a]._h);
a = 0;
while (a < players.length) {
players[a]._x = x;
players[a]._y = y - players[a]._h;
players[a]._y = players[a]._y - players[a].deltaY;
a++;
}
loadMap();
return(undefined);
}
if ((players[a]._x - players[a]._w) >= 640) {
mapX = Math.min(mapX + 1, 5);
var x = 16;
var y = (players[a]._y + players[a]._h);
a = 0;
while (a < players.length) {
players[a]._x = x;
players[a]._y = y - players[a]._h;
players[a]._y = players[a]._y - players[a].deltaY;
a++;
}
loadMap();
return(undefined);
}
if (0 >= (players[a]._y + players[a]._h)) {
mapY = Math.max(mapY - 1, 0);
var x = players[a]._x;
var y = 432;
a = 0;
while (a < players.length) {
players[a]._x = x;
players[a]._y = y;
a++;
}
loadMap();
return(undefined);
}
if ((players[a]._y - players[a]._h) >= 480) {
mapY = Math.min(mapY + 1, 5);
var x = players[a]._x;
var y = 16;
a = 0;
while (a < players.length) {
players[a]._x = x;
players[a]._y = y;
a++;
}
loadMap();
return(undefined);
}
a++;
}
}
function loadMap() {
var z = map[mapX + (mapY * 6)];
this.nMisc = 1;
this.nEnemies = 64;
this.nBullets = 128;
this.nBlocks = 192;
this.nParticles = 1300;
clear(ground);
clear(blocks);
clear(misc);
clear(playerBullets);
clear(enemies);
clear(enemyBullets);
clear(particles);
var a = 0;
while (a < 300) {
groundMap[a] = 0;
if (ground[a]) {
ground[a].removeMovieClip();
ground[a] = null;
}
if (z[a] == 0) {
} else if (z[a] < 120) {
groundMap[a] = 1;
createGround(z[a] - 1, a, (a % 20) * 32, Math.floor(a / 20) * 32);
if (103 < z[a]) {
groundMap[a] = 0;
}
if (111 < z[a]) {
groundMap[a] = 3;
}
if (115 < z[a]) {
groundMap[a] = 2;
}
} else if (z[a] < 128) {
createBlock(z[a] - 120, ((a % 20) * 32) + 16, (Math.floor(a / 20) * 32) + 16);
} else if (z[a] < 136) {
createMisc(z[a] - 128, ((a % 20) * 32) + 16, (Math.floor(a / 20) * 32) + 16);
} else {
createEnemy(z[a] - 136, ((a % 20) * 32) + 16, (Math.floor(a / 20) * 32) + 16);
}
a++;
}
mBackground.gotoAndStop(z[300] + 1);
if (z[300] == 0) {
_root.changeMusic("MUSIC1");
}
if (z[300] == 1) {
_root.changeMusic("MUSIC2");
}
if (z[300] == 2) {
_root.changeMusic("MUSIC3");
}
if (z[300] == 3) {
_root.changeMusic("MUSIC4");
}
if (z[300] == 4) {
_root.changeMusic("MUSIC5");
}
if (z[300] == 5) {
_root.changeMusic("");
}
if (z[300] == 6) {
_root.changeMusic("MUSICBOSS");
}
}
function clear(array) {
while (array.length) {
array.pop().removeMovieClip();
}
}
function createGround(type, index, x, y) {
mGround.duplicateMovieClip("ground" + index, 1000 + index);
var a = eval ("ground" + index);
a._x = x;
a._y = y;
a.gotoAndStop(type + 1);
ground[index] = a;
}
function createBlock(type, x, y) {
mBlock.duplicateMovieClip("block" + nBlocks, nBlocks);
var a = eval ("block" + nBlocks);
a._x = x;
a._y = y;
a._w = 16;
a._h = 16;
a.hp = 1;
a.type = "GROUND";
a.deltaX = 0;
a.deltaY = 0;
if (type < 4) {
a.gotoAndStop(1);
a.update = function () {
if (this._x < (-this._w)) {
_x = (_x + (640 + (this._w * 2)));
}
if ((640 + this._w) < this._x) {
_x = (_x - (640 + (this._w * 2)));
}
if (this._y < (-this._h)) {
_y = (_y + (480 + (this._h * 2)));
}
if ((480 + this._h) < this._y) {
_y = (_y - (480 + (this._h * 2)));
}
};
if (type == 0) {
a.deltaX = 1;
} else if (type == 1) {
a.deltaX = -1;
} else if (type == 2) {
a.deltaY = 1;
} else if (type == 3) {
a.deltaY = -1;
}
} else if (type == 4) {
a.gotoAndStop(2);
a.startY = a._y;
a.onCollision = function (type, edge) {
if (edge == "TOP") {
this.update = function () {
if (this.deltaY < 16) {
this.deltaY = this.deltaY + 0.5;
}
if ((this.startY + 480) < this._y) {
this.update = null;
this.deltaY = 0;
this._y = this.startY;
}
};
}
};
}
blocks.push(a);
nBlocks++;
if (255 < nBlocks) {
nBlocks = 192;
}
}
function createEnemy(type, x, y) {
mEnemy.duplicateMovieClip("enemy" + nEnemies, nEnemies);
var a = eval ("enemy" + nEnemies);
a._x = x;
a._y = y;
a.hp = 1;
a.type = "ENEMY";
a.deltaX = 0;
a.deltaY = 0;
if (15 < type) {
a._xscale = -100;
type = type - 16;
if (type == 6) {
a._xscale = 100;
a._yscale = -100;
}
}
a.onDestroyed = function () {
_parent.createEnemyExplosion(this._x, this._y);
};
a.gotoAndStop(type + 2);
enemies.push(a);
nEnemies++;
if (127 < nEnemies) {
nEnemies = 64;
}
}
function createMisc(type, x, y) {
if ((type == 0) && (0 < playerGun)) {
return(undefined);
}
if ((type == 1) && (1 < playerGun)) {
return(undefined);
}
if ((type == 2) && (playerGun != 2)) {
return(undefined);
}
if ((type == 3) && (0 < playerJump)) {
return(undefined);
}
if ((type == 4) && (0 < playerDash)) {
return(undefined);
}
mMisc.duplicateMovieClip("misc" + nMisc, nMisc);
var a = eval ("misc" + nMisc);
a._x = x;
a._y = y;
a._w = 16;
a._h = 16;
a.hp = 1;
if (type < 5) {
a.gotoAndStop(1);
a.type = "POWERUP";
a.timer = 0;
a.update = function () {
this.timer++;
if (10 < this.timer) {
this.timer = 0;
_parent.createParticle(2, (this._x + (Math.random() * (this._w * 2))) - this._w, (this._y + (Math.random() * (this._h * 2))) - this._h);
}
};
if (type == 0) {
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.playerGun = 1;
_parent.message("GUN1");
};
} else if (type == 1) {
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.playerGun = 2;
_parent.message("GUN2");
};
} else if (type == 2) {
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.playerGun = 3;
_parent.message("GUN3");
};
} else if (type == 3) {
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.playerJump = 1;
_parent.message("AIRJUMP");
};
} else if (type == 4) {
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.playerDash = 1;
_parent.message("DASH");
};
}
} else if (type == 5) {
a._w = 32;
a._x = a._x + 16;
a.type = "SAVE";
if ((players[0]._x == (x + 16)) && (players[0]._y == y)) {
a.gotoAndStop(3);
} else {
a.gotoAndStop(2);
a.onCollision = function (type, edge) {
if (type == "PLAYER") {
if (_parent.statSaves == 0) {
_parent.message("SAVE");
}
_parent.statSaves++;
this.onCollision = null;
_parent.savedMapX = _parent.mapX;
_parent.savedMapY = _parent.mapY;
_parent.savedPlayerX = this._x;
_parent.savedPlayerY = this._y;
_parent.savedPlayerGun = _parent.playerGun;
_parent.savedPlayerJump = _parent.playerJump;
_parent.savedPlayerDash = _parent.playerDash;
this.gotoAndStop(3);
}
};
}
} else if (type == 6) {
a.stop();
a._visible = false;
a.onCollision = function (type, edge) {
this.hp = 0;
_parent.message("JUMP");
};
} else {
a.gotoAndStop(4);
}
misc.push(a);
nMisc++;
if (62 < nMisc) {
nMisc = 1;
}
}
function spawnPlayer() {
this.playerGun = savedPlayerGun;
this.playerJump = savedPlayerJump;
this.playerDash = savedPlayerDash;
player._x = savedPlayerX;
player._y = savedPlayerY;
player.gotoAndStop(1);
mapX = savedMapX;
mapY = savedMapY;
loadMap();
}
this.players = new Array();
mPlayer.duplicateMovieClip("player1", 63);
this.player = player1;
players.push(player);
this.statSaves = 0;
this.statDeaths = 0;
this.statTime = 0;
this.playerBullets = new Array();
this.enemies = new Array();
this.enemyBullets = new Array();
this.particles = new Array();
this.blocks = new Array();
this.misc = new Array();
this.groundMap = new Array(300);
this.ground = new Array(300);
this.mapX = 0;
this.mapY = 0;
this.map = new Array();
map.push(new Array(1, 1, 1, 1, 1, 1, 66, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 1, 1, 1, 1, 1, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 69, 69, 69, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 61, 61, 61, 1, 1, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 69, 69, 1, 1, 66, 0, 0, 0, 0, 159, 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 66, 0, 0, 0, 0, 59, 59, 0, 0, 159, 159, 0, 0, 0, 0, 0, 0, 0, 68, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 59, 59, 0, 0, 159, 159, 0, 0, 0, 43, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 59, 0, 143, 143, 51, 1, 66, 159, 159, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 43, 1, 1, 61, 61, 62, 0, 0, 0, 0, 0, 0, 0, 0, 60, 61, 61, 62, 0, 51, 60, 1, 69, 69, 69, 70, 0, 0, 59, 0, 0, 59, 0, 0, 64, 1, 1, 1, 61, 51, 64, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 40, 41, 41, 43, 64, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 60, 1, 66, 0, 59, 59, 59, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 64, 1, 4));
map.push(new Array(69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 69, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 1, 1, 1, 1, 61, 61, 61, 61, 62, 0, 0, 0, 0, 0, 0, 68, 69, 69, 69, 69, 69, 69, 69, 69, 1, 1, 1, 47, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 47, 69, 51, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 66, 51, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 42, 51, 40, 43, 0, 0, 59, 59, 0, 143, 143, 143, 0, 0, 0, 0, 0, 0, 0, 64, 66, 51, 0, 0, 0, 0, 0, 0, 0, 0, 59, 59, 0, 0, 159, 159, 159, 0, 0, 64, 41, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 59, 0, 0, 0, 64, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 1, 66, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 62, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 66, 0, 51, 0, 43, 41, 41, 43, 0, 0, 0, 60, 61, 61, 61, 61, 61, 61, 61, 1, 66, 61, 51, 61, 51, 61, 61, 51, 61, 61, 61, 64, 1, 1, 1, 1, 1, 1, 1, 4));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 13, 13, 1, 1, 1, 1, 1, 1, 1, 1, 12, 13, 13, 13, 13, 13, 13, 13, 13, 0, 0, 0, 1, 1, 1, 1, 1, 1, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 22, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 1, 1, 1, 1, 1, 1, 1, 1, 20, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 20, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 20, 21, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 20, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 1, 5));
map.push(new Array(13, 14, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 18, 1, 1, 1, 1, 1, 1, 1, 0, 0, 13, 14, 1, 1, 1, 1, 1, 1, 16, 0, 18, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 13, 14, 1, 1, 1, 1, 16, 0, 18, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 16, 0, 18, 1, 1, 1, 1, 1, 1, 1, 21, 21, 0, 0, 0, 0, 0, 13, 13, 13, 0, 0, 0, 14, 1, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 14, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 1, 16, 17, 134, 0, 0, 0, 0, 0, 0, 0, 0, 17, 18, 1, 1, 1, 1, 1, 1, 1, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 1, 1, 1, 1, 1, 1, 1, 1, 16, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 1, 1, 1, 5));
map.push(new Array(1, 1, 11, 1, 1, 1, 1, 1, 1, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 1, 11, 1, 1, 11, 1, 1, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 11, 1, 1, 1, 12, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 12, 0, 0, 0, 0, 0, 138, 0, 0, 138, 0, 0, 152, 0, 0, 21, 21, 1, 1, 1, 16, 0, 0, 0, 0, 0, 17, 17, 17, 17, 17, 17, 0, 0, 18, 1, 1, 1, 1, 1, 20, 0, 105, 0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 18, 11, 1, 1, 11, 1, 11, 20, 21, 21, 0, 0, 136, 0, 0, 0, 0, 0, 0, 105, 22, 1, 1, 1, 1, 1, 1, 12, 13, 0, 0, 0, 0, 0, 152, 0, 0, 105, 154, 22, 1, 1, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 17, 17, 0, 0, 105, 21, 22, 1, 1, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 8, 10, 11, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 22, 1, 1, 11, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 0, 105, 0, 0, 21, 22, 1, 11, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 105, 105, 21, 21, 21, 22, 1, 1, 11, 1, 1, 1, 1, 11, 1, 1, 16, 0, 0, 21, 21, 22, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 11, 1, 1, 0));
map.push(new Array(13, 13, 13, 13, 13, 14, 1, 1, 1, 1, 1, 1, 1, 1, 11, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 13, 13, 13, 13, 13, 13, 14, 1, 1, 11, 1, 15, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 14, 1, 1, 23, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 14, 1, 1, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 11, 1, 20, 0, 0, 0, 0, 0, 0, 105, 0, 154, 0, 0, 0, 0, 0, 0, 0, 22, 1, 1, 1, 20, 21, 0, 105, 105, 21, 21, 21, 21, 0, 0, 0, 152, 105, 0, 22, 1, 1, 1, 1, 1, 1, 20, 21, 22, 12, 13, 13, 13, 13, 0, 0, 21, 21, 22, 1, 11, 1, 1, 11, 1, 1, 12, 13, 13, 0, 0, 0, 136, 0, 0, 0, 13, 13, 14, 1, 1, 1, 1, 1, 11, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 14, 1, 11, 11, 1, 12, 0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 152, 0, 105, 22, 1, 1, 1, 12, 0, 0, 0, 0, 0, 136, 0, 152, 18, 16, 0, 0, 0, 105, 22, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 18, 16, 0, 18, 20, 112, 112, 21, 22, 1, 1, 1, 1, 12, 0, 0, 0, 0, 0, 105, 22, 20, 112, 22, 1, 1, 1, 1, 1, 1, 11, 1, 1, 16, 0, 0, 0, 21, 21, 22, 1, 1, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 0));
map.push(new Array(66, 0, 59, 59, 59, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 64, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 64, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 69, 1, 1, 60, 1, 1, 1, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 69, 64, 1, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 66, 143, 143, 143, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 61, 61, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 1, 1, 70, 0, 0, 59, 59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 1, 1, 1, 69, 70, 0, 0, 0, 0, 0, 0, 0, 59, 59, 0, 0, 0, 0, 0, 64, 1, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 61, 61, 1, 1, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 69, 69, 1, 47, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 51, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 51, 1, 66, 0, 0, 0, 0, 0, 0, 0, 0, 43, 41, 43, 41, 41, 41, 41, 41, 41, 43, 1, 70, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 68, 69, 69, 4));
map.push(new Array(16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 138, 0, 105, 105, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 138, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 0, 0, 105, 22, 1, 1, 1, 1, 20, 21, 0, 0, 105, 0, 105, 0, 1, 16, 0, 0, 0, 21, 22, 1, 1, 1, 1, 11, 1, 1, 20, 21, 21, 21, 21, 21, 0));
map.push(new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 21, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 21, 22, 1, 1, 1, 1, 20, 21, 0, 105, 0, 0, 0, 0, 0, 0, 105, 105, 21, 22, 1, 11, 1, 1, 1, 11, 1, 1, 20, 21, 0, 0, 0, 0, 21, 21, 21, 22, 1, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 20, 21, 21, 21, 0));
map.push(new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 154, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 154, 105, 22, 1, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 21, 21, 22, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 13, 13, 13, 13, 13, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 116, 116, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 116, 116, 116, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 21, 21, 21, 21, 21, 21, 21, 21, 21, 0, 0, 0, 0, 105, 105, 0, 0, 21, 21, 22, 1, 1, 8, 10, 1, 1, 11, 1, 1, 21, 21, 21, 21, 21, 21, 21, 22, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 1, 0));
map.push(new Array(1, 16, 0, 0, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 1, 1, 1, 1, 1, 1, 1, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 14, 1, 11, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 11, 20, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, 20, 21, 0, 0, 0, 0, 0, 152, 0, 138, 0, 0, 0, 0, 0, 18, 1, 11, 1, 12, 13, 13, 13, 0, 0, 0, 0, 0, 0, 17, 17, 0, 0, 0, 154, 22, 1, 1, 12, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 1, 1, 12, 0, 0, 0, 0, 0, 0, 0, 17, 0, 0, 0, 0, 105, 105, 22, 1, 1, 1, 11, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 22, 1, 11, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 154, 105, 0, 22, 1, 1, 11, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 22, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 105, 105, 0, 105, 0, 0, 1, 1, 11, 1, 1, 1, 1, 1, 1, 11, 1, 21, 21, 21, 21, 21, 21, 21, 21, 22, 1, 1, 1, 1, 1, 1, 8, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 11, 1, 1, 1, 1, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0));
map.push(new Array(16, 0, 0, 0, 22, 1, 1, 1, 1, 1, 1, 1, 11, 1, 1, 1, 1, 11, 1, 1, 16, 0, 17, 18, 12, 13, 13, 13, 13, 13, 13, 14, 1, 1, 1, 1, 11, 1, 1, 1, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 14, 1, 1, 1, 1, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 11, 1, 1, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 11, 1, 11, 1, 16, 0, 0, 0, 136, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 14, 1, 1, 1, 1, 16, 0, 0, 17, 17, 0, 0, 0, 0, 152, 0, 0, 0, 152, 0, 18, 1, 1, 1, 1, 20, 112, 0, 0, 0, 0, 0, 17, 17, 0, 0, 0, 0, 0, 0, 18, 1, 11, 1, 11, 1, 1, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 18, 1, 1, 1, 1, 1, 1, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 112, 22, 1, 1, 1, 1, 1, 1, 1, 112, 112, 0, 0, 0, 0, 0, 0, 0, 112, 112, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 112, 112, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 112, 112, 23, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0));
map.push(new Array(16, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 51, 0, 0, 0, 0, 0, 18, 1, 1, 16, 0, 0, 6, 41, 41, 41, 41, 41, 43, 0, 51, 0, 0, 0, 0, 0, 18, 11, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 22, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 41, 41, 41, 41, 41, 41, 41, 41, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1, 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 20, 0, 0, 6, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, 21, 11, 1, 20, 22, 51, 20, 21, 0, 138, 105, 138, 0, 0, 0, 0, 0, 0, 0, 13, 13, 1, 1, 6, 1, 51, 1, 1, 20, 21, 21, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 11, 51, 1, 51, 1, 15, 1, 11, 1, 1, 105, 105, 105, 0, 105, 0, 105, 0, 0, 1, 1, 51, 1, 51, 1, 23, 1, 1, 1, 1, 20, 21, 21, 21, 21, 21, 21, 21, 21, 0));
map.push(new Array(1, 20, 0, 0, 0, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 1, 1, 1, 1, 1, 1, 20, 21, 0, 0, 0, 0, 0, 0, 0, 136, 0, 0, 0, 0, 13, 14, 1, 1, 11, 1, 1, 1, 0, 0, 0, 138, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 41, 42, 1, 20, 0, 0, 21, 21, 21, 0, 0, 0, 0, 0, 152, 0, 0, 18, 1, 1, 1, 1, 1, 1, 20, 22, 1, 1, 1, 0, 0, 138, 0, 0, 0, 0, 0, 18, 1, 1, 8, 10, 1, 1, 11, 1, 1, 1, 1, 105, 21, 21, 0, 0, 136, 0, 0, 18, 1, 13, 13, 14, 1, 11, 1, 1, 1, 11, 1, 23, 1, 1, 20, 0, 0, 0, 0, 18, 1, 0, 0, 0, 13, 13, 13, 14, 1, 1, 1, 15, 1, 1, 1, 16, 17, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 13, 13, 13, 0, 14, 1, 1, 16, 0, 0, 0, 0, 18, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 13, 0, 0, 17, 0, 0, 18, 21, 21, 0, 0, 136, 0, 0, 0, 136, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 14, 1, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 41, 41, 41, 41, 0, 116, 116, 116, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 51, 0, 0, 10, 1, 0, 116, 116, 116, 116, 0, 0, 105, 0, 105, 105, 0, 21, 21, 22, 51, 20, 22, 1, 15, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 1, 11, 1, 51, 1, 1, 11, 23, 0));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 83, 1, 1, 1, 1, 1, 1, 1, 1, 1, 83, 1, 76, 77, 77, 77, 77, 77, 77, 78, 83, 76, 77, 77, 77, 77, 77, 77, 77, 78, 83, 76, 0, 117, 0, 0, 0, 137, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 75, 75, 117, 0, 0, 0, 0, 0, 83, 75, 0, 0, 0, 0, 0, 0, 72, 73, 73, 73, 72, 73, 73, 73, 74, 0, 72, 73, 73, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 0, 0, 0, 0, 0, 139, 0, 139, 0, 0, 0, 0, 72, 73, 81, 73, 83, 83, 0, 0, 0, 0, 0, 0, 72, 81, 73, 73, 73, 73, 73, 74, 137, 0, 79, 0, 72, 73, 81, 74, 0, 0, 0, 0, 0, 79, 0, 0, 79, 0, 0, 0, 0, 0, 83, 0, 79, 79, 0, 0, 72, 74, 0, 0, 0, 109, 0, 155, 109, 155, 0, 155, 0, 0, 83, 0, 83, 83, 0, 0, 0, 0, 72, 73, 73, 81, 73, 73, 73, 81, 73, 74, 0, 0, 83, 0, 83, 83, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 79, 0, 0, 0, 0, 0, 83, 117, 83, 83, 0, 0, 0, 0, 0, 0, 0, 109, 0, 0, 109, 0, 0, 0, 0, 0, 83, 75, 83, 83, 0, 0, 0, 72, 74, 84, 86, 83, 84, 86, 83, 84, 85, 85, 85, 86, 83, 84, 83, 83, 0, 0, 72, 74, 1, 1, 1, 83, 1, 1, 83, 1, 1, 1, 1, 1, 83, 1, 1));
map.push(new Array(1, 83, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 83, 1, 78, 83, 76, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 77, 78, 83, 76, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 81, 73, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 81, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 73, 73, 81, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 83, 0, 0, 0, 0, 0, 139, 0, 139, 0, 139, 0, 0, 0, 0, 0, 72, 73, 73, 0, 83, 0, 72, 73, 73, 73, 73, 73, 73, 73, 73, 73, 74, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 79, 0, 79, 0, 72, 74, 0, 0, 117, 117, 0, 0, 0, 0, 0, 117, 83, 75, 0, 0, 83, 0, 83, 72, 74, 0, 0, 0, 0, 117, 117, 0, 0, 0, 0, 86, 83, 84, 85, 86, 83, 75, 72, 74, 0, 0, 0, 0, 72, 74, 72, 74, 84, 85, 85, 1, 83, 1, 1, 1, 83, 72, 74, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 1, 1, 1));
map.push(new Array(1, 83, 1, 1, 83, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 83, 1, 1, 83, 1, 78, 83, 76, 78, 83, 76, 77, 77, 77, 77, 77, 77, 77, 77, 78, 83, 76, 78, 83, 76, 0, 83, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 83, 0, 0, 83, 0, 0, 83, 0, 75, 83, 0, 0, 0, 0, 0, 0, 0, 0, 117, 75, 83, 75, 0, 83, 0, 73, 73, 81, 73, 73, 73, 74, 0, 0, 0, 0, 0, 0, 72, 73, 81, 73, 81, 73, 73, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 83, 117, 0, 0, 0, 0, 0, 0, 72, 74, 0, 0, 0, 0, 0, 0, 0, 83, 0, 81, 73, 73, 74, 0, 0, 0, 0, 72, 74, 72, 74, 0, 0, 0, 0, 72, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 0, 0, 0, 0, 0, 85, 85, 85, 85, 86, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 84, 85, 85, 85, 85, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1));
map.push(new Array(1, 83, 1, 1, 1, 1, 1, 83, 76, 0, 0, 78, 83, 1, 1, 1, 1, 1, 83, 1, 78, 83, 76, 77, 77, 77, 78, 83, 80, 0, 0, 82, 83, 76, 77, 77, 77, 78, 83, 76, 0, 83, 0, 0, 0, 0, 0, 83, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 83, 0, 0, 83, 0, 0, 0, 75, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 73, 73, 73, 81, 73, 73, 81, 73, 73, 73, 73, 81, 74, 0, 0, 0, 0, 0, 83, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 74, 0, 0, 0, 83, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 75, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 81, 73, 73, 75, 83, 117, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155, 0, 0, 79, 0, 73, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 73, 73, 73, 73, 73, 0, 0, 0, 0, 0, 0, 0, 139, 0, 139, 0, 0, 0, 0, 79, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 72, 73, 73, 73, 73, 81, 73, 73, 73, 74, 0, 0, 83, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 117, 0, 79, 0, 0, 0, 83, 0, 85, 85, 85, 85, 85, 85, 86, 83, 84, 85, 85, 85, 85, 86, 83, 84, 85, 86, 83, 84, 1, 1, 1, 1, 1, 1, 1, 83, 1, 1, 1, 1, 1, 1, 83, 1, 1, 1, 83, 1, 1));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 110, 110, 0, 110, 0, 94, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 94, 96, 0, 110, 110, 0, 110, 0, 98, 92, 0, 94, 92, 0, 1, 1, 92, 0, 0, 0, 0, 0, 0, 110, 110, 0, 110, 0, 0, 0, 0, 98, 96, 0, 1, 1, 96, 0, 0, 0, 0, 0, 0, 110, 110, 0, 110, 0, 0, 0, 0, 0, 0, 0, 1, 1, 96, 0, 0, 0, 0, 0, 0, 110, 110, 0, 110, 0, 0, 0, 0, 0, 0, 0, 1, 1, 96, 0, 0, 0, 0, 0, 142, 110, 110, 0, 110, 0, 0, 0, 0, 0, 0, 0, 1, 100, 101, 101, 93, 0, 0, 88, 89, 89, 90, 0, 110, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 96, 0, 0, 158, 110, 110, 110, 88, 89, 89, 90, 97, 101, 101, 101, 101, 1, 92, 0, 110, 110, 0, 0, 0, 110, 110, 110, 0, 0, 0, 110, 98, 1, 1, 1, 1, 1, 96, 0, 110, 110, 0, 0, 0, 110, 110, 110, 0, 0, 0, 110, 0, 94, 1, 1, 1, 1, 96, 0, 88, 89, 90, 142, 0, 110, 110, 110, 0, 0, 0, 110, 0, 0, 94, 1, 1, 100, 101, 93, 0, 0, 0, 88, 89, 89, 89, 89, 90, 0, 0, 110, 0, 0, 98, 1, 1, 1, 1, 96, 0, 0, 0, 0, 110, 0, 0, 110, 110, 88, 89, 90, 0, 0, 98, 1, 1, 2));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 94, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 0, 0, 0, 94, 96, 0, 98, 1, 1, 1, 1, 1, 1, 0, 0, 0, 94, 96, 0, 0, 0, 0, 0, 0, 0, 0, 98, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 157, 0, 0, 0, 0, 0, 0, 0, 94, 1, 1, 1, 1, 1, 0, 0, 0, 0, 97, 101, 101, 101, 101, 101, 93, 0, 0, 0, 98, 1, 1, 1, 1, 1, 0, 0, 0, 0, 98, 1, 1, 1, 1, 1, 96, 0, 0, 0, 0, 94, 1, 1, 1, 1, 0, 0, 97, 101, 101, 102, 1, 1, 1, 1, 96, 0, 0, 0, 157, 0, 94, 1, 1, 1, 0, 0, 98, 1, 1, 1, 1, 1, 1, 92, 0, 0, 0, 97, 101, 101, 101, 102, 1, 1, 101, 101, 101, 102, 1, 1, 1, 92, 0, 0, 0, 0, 0, 98, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 100, 101, 101, 101, 101, 101, 93, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 100, 101, 101, 101, 93, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 100, 101, 101, 101, 101, 101, 102, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2));
map.push(new Array(83, 83, 0, 0, 72, 74, 1, 1, 1, 83, 1, 1, 83, 1, 1, 1, 1, 1, 83, 1, 83, 83, 0, 72, 74, 76, 77, 77, 78, 83, 76, 78, 83, 76, 77, 77, 77, 78, 83, 72, 83, 83, 0, 0, 0, 0, 0, 0, 0, 83, 75, 0, 83, 0, 137, 0, 137, 0, 83, 0, 72, 73, 73, 74, 0, 0, 0, 0, 72, 73, 73, 73, 73, 74, 0, 0, 0, 0, 83, 0, 79, 79, 0, 0, 139, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 72, 73, 73, 81, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 79, 79, 0, 0, 0, 0, 72, 74, 0, 0, 0, 155, 0, 0, 0, 0, 0, 0, 83, 0, 83, 83, 0, 0, 0, 0, 0, 137, 72, 73, 81, 73, 73, 74, 0, 0, 0, 0, 83, 0, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 83, 0, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 73, 74, 83, 0, 0, 0, 0, 0, 72, 73, 74, 0, 0, 139, 0, 139, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 79, 0, 0, 72, 73, 73, 73, 81, 74, 0, 0, 0, 75, 83, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 79, 0, 0, 79, 0, 0, 117, 117, 75, 83, 117, 84, 85, 85, 85, 86, 83, 84, 85, 86, 83, 84, 86, 83, 84, 85, 85, 85, 86, 83, 72, 1, 1, 1, 1, 1, 83, 1, 1, 1, 83, 1, 1, 83, 1, 1, 1, 1, 1, 83, 1, 1));
map.push(new Array(72, 74, 72, 74, 72, 74, 72, 74, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 72, 74, 74, 72, 74, 72, 74, 72, 74, 0, 0, 0, 0, 72, 74, 72, 74, 72, 74, 72, 74, 72, 0, 79, 79, 0, 0, 0, 0, 0, 0, 0, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 0, 0, 0, 0, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 0, 0, 0, 72, 74, 0, 0, 0, 0, 0, 72, 81, 73, 73, 73, 0, 83, 83, 0, 0, 0, 0, 72, 74, 0, 0, 0, 0, 0, 0, 0, 0, 79, 79, 0, 0, 83, 83, 0, 0, 0, 0, 79, 79, 0, 0, 0, 72, 74, 0, 0, 0, 83, 83, 0, 0, 83, 83, 0, 0, 0, 75, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 83, 83, 0, 0, 72, 73, 73, 81, 73, 74, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 83, 83, 0, 0, 0, 0, 79, 79, 137, 0, 155, 0, 0, 155, 0, 0, 83, 83, 0, 0, 83, 83, 75, 0, 0, 0, 83, 83, 0, 72, 73, 73, 73, 73, 74, 0, 83, 83, 0, 0, 83, 83, 75, 117, 0, 0, 83, 83, 0, 0, 0, 79, 79, 0, 0, 0, 83, 83, 0, 117, 83, 83, 75, 75, 0, 139, 109, 109, 0, 139, 0, 109, 109, 139, 0, 75, 83, 83, 0, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 1));
map.push(new Array(72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 73, 73, 73, 73, 74, 0, 0, 155, 0, 0, 155, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 79, 79, 0, 0, 72, 81, 73, 73, 73, 74, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 83, 83, 0, 0, 137, 0, 79, 79, 0, 0, 72, 74, 0, 0, 0, 0, 83, 83, 117, 0, 83, 83, 0, 0, 0, 0, 109, 109, 139, 0, 0, 139, 0, 0, 0, 0, 83, 83, 75, 0, 83, 83, 0, 0, 0, 0, 109, 83, 72, 73, 73, 73, 73, 73, 81, 73, 73, 73, 73, 0, 83, 83, 0, 0, 0, 0, 83, 83, 0, 137, 79, 79, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 0, 0, 109, 83, 0, 0, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 72, 74, 0, 109, 109, 0, 0, 83, 83, 0, 0, 72, 73, 73, 73, 73, 0, 83, 83, 0, 0, 139, 0, 109, 109, 139, 155, 109, 109, 139, 0, 0, 0, 79, 79, 0, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 1));
map.push(new Array(72, 74, 72, 74, 72, 51, 72, 74, 51, 74, 72, 74, 72, 74, 72, 51, 72, 74, 72, 74, 74, 72, 74, 72, 74, 51, 74, 72, 51, 72, 74, 72, 74, 72, 74, 51, 74, 72, 74, 72, 0, 79, 79, 43, 41, 43, 0, 0, 6, 0, 0, 0, 0, 0, 0, 51, 0, 79, 79, 0, 0, 83, 83, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 83, 83, 0, 0, 83, 83, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 41, 41, 41, 41, 0, 83, 83, 51, 0, 0, 131, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 79, 0, 0, 83, 83, 51, 0, 0, 6, 0, 130, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 117, 83, 83, 51, 0, 0, 51, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 73, 74, 0, 0, 0, 83, 83, 0, 0, 0, 0, 43, 41, 41, 43, 41, 43, 0, 0, 0, 0, 0, 0, 0, 0, 83, 83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 83, 83, 0, 73, 73, 73, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 73, 73, 73, 0, 79, 79, 117, 75, 0, 0, 0, 0, 0, 0, 0, 140, 0, 0, 0, 0, 79, 79, 0, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 72, 74, 1));
map.push(new Array(1, 1, 96, 0, 0, 0, 0, 110, 0, 0, 110, 110, 88, 89, 90, 0, 0, 98, 1, 1, 1, 1, 96, 0, 0, 0, 0, 110, 0, 0, 110, 110, 0, 0, 110, 0, 0, 98, 1, 1, 1, 1, 96, 0, 0, 0, 0, 110, 0, 0, 110, 110, 0, 0, 110, 0, 0, 98, 1, 1, 1, 92, 0, 0, 0, 0, 0, 110, 0, 0, 110, 110, 0, 0, 110, 88, 90, 0, 0, 0, 1, 96, 0, 0, 0, 0, 0, 110, 0, 142, 110, 110, 0, 0, 91, 110, 0, 0, 0, 0, 92, 0, 0, 0, 0, 0, 0, 88, 89, 89, 89, 89, 89, 90, 0, 110, 0, 0, 0, 0, 96, 0, 0, 0, 0, 88, 90, 0, 0, 110, 158, 110, 110, 0, 0, 110, 97, 101, 101, 101, 96, 0, 0, 141, 0, 0, 110, 0, 0, 110, 0, 110, 110, 0, 0, 110, 98, 1, 1, 1, 101, 101, 101, 101, 101, 93, 110, 0, 157, 110, 0, 110, 110, 0, 0, 110, 0, 94, 1, 1, 1, 1, 1, 1, 1, 96, 88, 89, 89, 89, 90, 110, 110, 141, 0, 110, 0, 98, 1, 1, 1, 1, 1, 92, 0, 0, 110, 110, 0, 0, 110, 88, 89, 89, 90, 110, 0, 0, 0, 94, 1, 1, 1, 96, 0, 0, 110, 110, 0, 0, 110, 0, 0, 0, 110, 110, 0, 0, 0, 98, 1, 1, 92, 0, 0, 0, 110, 110, 0, 0, 110, 142, 0, 0, 110, 110, 0, 97, 101, 101, 1, 1, 96, 0, 0, 0, 110, 110, 88, 89, 89, 89, 89, 89, 89, 89, 90, 98, 1, 1, 1, 1, 96, 0, 0, 88, 89, 90, 0, 110, 0, 0, 110, 110, 0, 110, 0, 98, 1, 1, 2));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 94, 92, 110, 110, 0, 94, 1, 1, 1, 1, 1, 1, 92, 0, 110, 110, 94, 96, 0, 0, 110, 0, 110, 110, 0, 98, 92, 110, 0, 94, 1, 0, 0, 0, 110, 110, 0, 110, 0, 0, 110, 0, 110, 110, 0, 110, 0, 110, 0, 98, 1, 0, 0, 0, 110, 110, 0, 110, 0, 0, 110, 0, 110, 110, 0, 110, 0, 110, 0, 98, 1, 0, 0, 0, 110, 110, 0, 110, 157, 0, 110, 157, 110, 110, 157, 110, 0, 110, 0, 98, 1, 101, 101, 93, 88, 90, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 0, 110, 0, 98, 1, 1, 1, 96, 0, 0, 91, 113, 113, 91, 113, 113, 91, 113, 113, 91, 0, 110, 0, 98, 1, 1, 1, 96, 0, 0, 110, 0, 0, 110, 0, 0, 110, 0, 0, 110, 0, 88, 89, 89, 90, 1, 92, 0, 0, 88, 90, 112, 112, 91, 112, 112, 91, 112, 112, 88, 90, 0, 0, 0, 0, 92, 0, 0, 0, 0, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 0, 0, 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 142, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 101, 101, 93, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, 88, 89, 90, 0, 0, 1, 1, 100, 101, 93, 95, 0, 0, 95, 0, 0, 95, 0, 0, 95, 88, 89, 89, 89, 90, 1, 1, 1, 1, 96, 103, 0, 0, 103, 0, 0, 103, 0, 0, 103, 88, 89, 89, 89, 90, 2));
map.push(new Array(32, 35, 1, 35, 35, 34, 1, 39, 1, 1, 1, 1, 1, 1, 1, 39, 1, 39, 1, 1, 32, 35, 1, 35, 39, 34, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 32, 35, 1, 35, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 39, 1, 35, 1, 34, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 1, 35, 37, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 29, 32, 1, 1, 39, 0, 0, 0, 0, 0, 0, 0, 0, 160, 0, 0, 0, 0, 0, 32, 1, 32, 1, 1, 34, 0, 0, 0, 0, 0, 0, 0, 141, 0, 0, 0, 0, 0, 0, 32, 1, 32, 1, 1, 34, 144, 0, 0, 0, 0, 0, 28, 29, 29, 30, 0, 0, 160, 0, 32, 1, 36, 37, 37, 38, 0, 0, 0, 0, 0, 0, 32, 1, 1, 34, 0, 0, 0, 0, 32, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 1, 34, 112, 112, 0, 0, 32, 1, 0, 0, 0, 0, 0, 0, 0, 0, 157, 0, 32, 31, 1, 34, 29, 29, 0, 0, 32, 1, 0, 0, 0, 0, 0, 0, 28, 29, 29, 30, 32, 35, 1, 31, 1, 1, 112, 112, 32, 1, 0, 0, 0, 0, 0, 0, 32, 31, 1, 34, 31, 35, 1, 35, 1, 1, 29, 29, 32, 31, 28, 29, 29, 29, 29, 29, 32, 35, 1, 31, 35, 35, 1, 35, 1, 31, 1, 1, 32, 35, 32, 1, 1, 1, 31, 1, 32, 35, 1, 35, 35, 35, 1, 35, 1, 35, 31, 1, 32, 35, 3));
map.push(new Array(1, 1, 1, 1, 39, 1, 39, 37, 37, 37, 37, 37, 37, 37, 32, 35, 1, 35, 35, 1, 37, 37, 37, 37, 37, 37, 38, 0, 0, 0, 0, 0, 0, 0, 32, 39, 1, 35, 39, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 1, 39, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, 37, 37, 37, 37, 29, 30, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 1, 34, 0, 0, 0, 0, 24, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 1, 34, 29, 30, 0, 0, 144, 0, 0, 0, 0, 0, 0, 157, 0, 0, 160, 0, 32, 1, 1, 34, 1, 34, 112, 112, 112, 112, 112, 112, 112, 112, 24, 25, 25, 25, 26, 0, 32, 1, 1, 34, 29, 29, 29, 30, 29, 29, 29, 29, 29, 29, 29, 29, 29, 30, 0, 0, 32, 1, 31, 34, 1, 1, 1, 34, 37, 37, 37, 37, 37, 37, 37, 37, 37, 38, 0, 0, 32, 1, 35, 34, 1, 1, 1, 34, 25, 25, 25, 25, 26, 0, 0, 0, 0, 0, 0, 28, 29, 29, 35, 34, 37, 37, 37, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1, 31, 35, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 157, 0, 31, 1, 35, 35, 34, 0, 0, 0, 0, 141, 0, 0, 0, 0, 0, 0, 28, 29, 29, 29, 35, 1, 35, 35, 34, 0, 0, 28, 29, 29, 29, 29, 29, 29, 29, 29, 32, 1, 1, 31, 35, 1, 35, 3));
map.push(new Array(1, 35, 35, 1, 39, 1, 1, 39, 1, 1, 1, 39, 1, 1, 1, 1, 34, 43, 41, 43, 1, 39, 35, 1, 34, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 38, 43, 41, 43, 1, 1, 39, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 37, 37, 37, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 43, 0, 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 43, 43, 41, 41, 43, 55, 51, 0, 0, 0, 0, 0, 157, 0, 0, 0, 0, 0, 0, 0, 51, 43, 41, 42, 55, 41, 43, 108, 108, 108, 6, 41, 41, 41, 41, 41, 41, 41, 41, 41, 43, 41, 41, 41, 41, 41, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 47, 43, 146, 0, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, 43, 41, 42, 41, 41, 41, 41, 43, 0, 0, 0, 0, 141, 0, 0, 0, 0, 0, 0, 0, 43, 47, 40, 41, 41, 41, 41, 43, 108, 108, 108, 6, 6, 6, 6, 108, 108, 108, 43, 41, 41, 43, 41, 29, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 41, 41, 41, 55, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 41, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 157, 0, 43, 42, 47, 1, 34, 0, 0, 0, 43, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 42, 51, 47, 51, 3));
map.push(new Array(49, 49, 49, 49, 49, 49, 43, 41, 41, 41, 41, 41, 41, 43, 49, 49, 49, 49, 49, 51, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 49, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 51, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 46, 0, 0, 48, 43, 40, 43, 41, 41, 41, 41, 41, 43, 41, 41, 6, 49, 49, 49, 49, 50, 0, 0, 48, 49, 43, 41, 41, 41, 41, 41, 42, 51, 40, 41, 41, 41, 6, 49, 49, 50, 0, 0, 48, 49, 51, 47, 49, 49, 49, 49, 49, 6, 49, 49, 49, 49, 49, 49, 49, 50, 0, 0, 48, 49, 51, 43, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 53, 54, 0, 0, 48, 49, 51, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 43, 50, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 48, 43, 51, 50, 0, 0, 44, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 49, 51, 43, 50, 0, 0, 48, 49, 49, 49, 49, 6, 49, 49, 49, 49, 49, 43, 41, 41, 42, 51, 43, 50, 0, 0, 48, 49, 43, 41, 42, 51, 40, 41, 41, 41, 41, 41, 43, 41, 42, 51, 49, 50, 0, 0, 48, 49, 51, 49, 49, 51, 49, 49, 49, 49, 49, 47, 51, 43, 41, 43, 5));
map.push(new Array(1, 1, 96, 0, 0, 88, 89, 90, 0, 110, 0, 0, 110, 110, 0, 110, 0, 98, 1, 1, 1, 1, 96, 0, 0, 110, 0, 110, 0, 110, 0, 0, 110, 110, 0, 110, 0, 98, 1, 1, 1, 1, 96, 0, 0, 110, 0, 110, 0, 110, 0, 0, 110, 110, 0, 110, 0, 98, 1, 1, 1, 100, 101, 101, 93, 110, 0, 110, 0, 110, 0, 0, 110, 110, 0, 110, 0, 98, 92, 0, 1, 1, 1, 1, 96, 110, 0, 110, 0, 110, 0, 0, 110, 110, 0, 110, 0, 0, 110, 0, 1, 1, 92, 0, 0, 110, 88, 89, 89, 89, 89, 89, 89, 90, 0, 110, 0, 0, 110, 0, 1, 1, 96, 0, 0, 110, 110, 0, 110, 0, 0, 110, 0, 110, 0, 110, 0, 0, 110, 0, 92, 0, 0, 0, 0, 110, 110, 0, 110, 133, 0, 110, 0, 110, 0, 110, 0, 0, 110, 0, 96, 0, 0, 0, 88, 90, 110, 0, 110, 88, 90, 110, 0, 110, 0, 110, 0, 0, 110, 0, 96, 0, 0, 0, 0, 0, 110, 0, 88, 89, 89, 90, 0, 110, 0, 88, 89, 89, 89, 89, 101, 93, 0, 0, 0, 0, 88, 89, 89, 89, 89, 89, 89, 90, 0, 0, 0, 0, 0, 0, 100, 101, 93, 0, 0, 0, 0, 95, 95, 0, 0, 95, 95, 0, 0, 0, 0, 0, 97, 101, 1, 1, 96, 0, 0, 0, 0, 103, 103, 0, 0, 99, 99, 0, 0, 0, 0, 0, 98, 1, 1, 1, 96, 0, 0, 101, 101, 101, 101, 101, 0, 103, 103, 0, 0, 97, 101, 101, 101, 102, 1, 100, 101, 101, 101, 1, 1, 1, 1, 1, 101, 101, 101, 101, 101, 101, 102, 1, 1, 1, 2));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 0, 94, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 110, 0, 94, 96, 0, 0, 0, 98, 92, 0, 0, 0, 94, 92, 0, 110, 94, 96, 0, 0, 110, 0, 110, 110, 0, 0, 0, 110, 0, 0, 0, 0, 98, 96, 0, 110, 0, 110, 0, 0, 110, 0, 110, 110, 0, 0, 0, 110, 0, 0, 0, 0, 98, 96, 0, 110, 0, 110, 0, 0, 110, 0, 110, 110, 142, 88, 89, 90, 97, 101, 0, 0, 110, 88, 89, 89, 90, 110, 0, 0, 110, 88, 89, 89, 90, 0, 0, 0, 98, 1, 0, 0, 110, 0, 0, 0, 0, 88, 90, 0, 110, 158, 110, 0, 110, 0, 0, 0, 98, 1, 0, 0, 110, 0, 0, 0, 0, 158, 0, 91, 110, 0, 110, 0, 110, 142, 0, 0, 98, 1, 89, 89, 90, 0, 0, 0, 0, 0, 0, 0, 88, 89, 89, 89, 89, 90, 0, 0, 98, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, 0, 0, 0, 0, 0, 98, 1, 101, 101, 101, 101, 93, 0, 0, 0, 0, 0, 0, 157, 0, 0, 0, 0, 0, 0, 98, 1, 1, 1, 1, 1, 96, 0, 0, 0, 0, 97, 101, 101, 93, 0, 0, 0, 0, 0, 98, 1, 1, 1, 1, 1, 96, 112, 112, 112, 112, 98, 1, 1, 96, 112, 112, 97, 101, 101, 101, 102, 1, 1, 1, 100, 101, 101, 101, 101, 101, 101, 102, 100, 101, 101, 101, 101, 102, 1, 1, 1, 2));
map.push(new Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 92, 0, 0, 0, 94, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 94, 96, 0, 0, 0, 98, 92, 0, 0, 94, 92, 0, 94, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98, 96, 0, 0, 0, 110, 0, 98, 92, 0, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 158, 0, 0, 0, 110, 0, 98, 96, 0, 98, 101, 101, 101, 93, 0, 0, 0, 0, 0, 110, 0, 0, 0, 0, 110, 0, 110, 158, 0, 98, 1, 1, 100, 101, 101, 101, 93, 0, 0, 110, 0, 157, 0, 0, 110, 0, 110, 0, 0, 91, 1, 1, 1, 1, 1, 1, 96, 0, 88, 89, 89, 90, 0, 141, 110, 0, 110, 0, 0, 91, 1, 1, 1, 1, 1, 1, 96, 0, 0, 0, 158, 0, 88, 89, 89, 89, 90, 0, 0, 91, 1, 1, 1, 92, 0, 0, 0, 0, 0, 0, 0, 0, 113, 113, 113, 113, 113, 0, 0, 91, 1, 1, 92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 1, 1, 96, 0, 0, 0, 132, 0, 0, 0, 88, 90, 112, 112, 91, 112, 112, 88, 90, 91, 1, 1, 96, 0, 0, 0, 6, 0, 0, 0, 97, 101, 101, 101, 101, 101, 101, 101, 101, 101, 1, 1, 96, 0, 6, 0, 51, 0, 6, 0, 98, 1, 1, 1, 43, 41, 41, 41, 41, 41, 1, 100, 101, 101, 51, 101, 51, 101, 51, 101, 101, 102, 1, 1, 51, 1, 1, 1, 1, 1, 2));
map.push(new Array(35, 34, 0, 0, 32, 1, 1, 1, 1, 1, 1, 1, 1, 32, 1, 1, 35, 39, 1, 35, 39, 34, 0, 0, 36, 37, 37, 37, 37, 37, 37, 37, 37, 32, 1, 1, 39, 32, 1, 39, 1, 34, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, 37, 37, 32, 1, 1, 1, 34, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 160, 0, 0, 0, 36, 37, 37, 41, 41, 41, 41, 43, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 1, 34, 34, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 41, 41, 41, 41, 43, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 43, 108, 108, 43, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 43, 108, 108, 51, 47, 43, 146, 0, 0, 0, 0, 107, 0, 0, 0, 107, 0, 0, 0, 107, 0, 0, 0, 51, 55, 41, 43, 108, 108, 43, 43, 107, 43, 41, 43, 107, 43, 41, 43, 107, 43, 41, 41, 43, 41, 47, 51, 108, 108, 43, 43, 41, 43, 41, 43, 41, 43, 41, 43, 41, 43, 41, 41, 42, 51, 43, 51, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 41, 41, 43, 55, 51, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 107, 107, 41, 51, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 43, 41, 41, 41, 41, 41, 47, 51, 51, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 43, 41, 41, 41, 3));
map.push(new Array(1, 34, 0, 0, 0, 43, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 41, 51, 55, 51, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 0, 43, 41, 51, 1, 34, 43, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 47, 51, 37, 38, 55, 43, 108, 108, 108, 108, 108, 108, 108, 108, 108, 6, 6, 108, 108, 43, 51, 51, 41, 41, 41, 43, 0, 0, 0, 0, 0, 0, 160, 0, 0, 0, 0, 0, 0, 51, 51, 55, 41, 43, 47, 43, 41, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 43, 41, 41, 41, 43, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 51, 47, 47, 47, 43, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 41, 43, 51, 51, 55, 51, 47, 51, 0, 0, 0, 0, 144, 0, 0, 0, 0, 0, 0, 0, 0, 51, 51, 43, 41, 43, 55, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 55, 51, 43, 41, 41, 43, 108, 108, 108, 108, 108, 6, 6, 108, 108, 108, 108, 108, 108, 43, 41, 43, 41, 41, 41, 43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 47, 51, 107, 107, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 0, 0, 0, 51, 51, 55, 41, 41, 41, 41, 43, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 43, 51, 41, 41, 41, 41, 41, 43, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 29, 43, 51, 43, 3));
map.push(new Array(49, 50, 0, 0, 48, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50, 51, 51, 51, 48, 49, 49, 50, 0, 0, 52, 53, 53, 53, 53, 53, 53, 53, 53, 53, 54, 51, 51, 55, 52, 53, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 41, 41, 42, 55, 51, 41, 41, 41, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 41, 41, 41, 51, 47, 40, 41, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 42, 47, 51, 51, 40, 41, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 51, 51, 51, 40, 41, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 147, 0, 0, 41, 41, 49, 50, 0, 0, 0, 0, 44, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 41, 49, 50, 0, 0, 0, 0, 52, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 41, 49, 49, 45, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 51, 51, 51, 40, 41, 49, 49, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 145, 43, 42, 51, 55, 51, 40, 41, 49, 49, 49, 49, 45, 46, 0, 0, 0, 0, 0, 145, 43, 41, 42, 51, 41, 51, 40, 41, 49, 49, 49, 49, 49, 50, 0, 0, 0, 0, 145, 43, 41, 41, 42, 51, 47, 51, 40, 41, 49, 49, 49, 49, 49, 49, 45, 45, 45, 45, 45, 45, 45, 45, 46, 51, 51, 51, 44, 45, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 49, 50, 51, 51, 51, 48, 49, 6));
this.savedPlayerGun = _parent.savedPlayerGun;
this.savedPlayerJump = _parent.savedPlayerJump;
this.savedPlayerDash = _parent.savedPlayerDash;
this.savedPlayerX = _parent.savedPlayerX;
this.savedPlayerY = _parent.savedPlayerY;
this.savedMapX = _parent.savedMapX;
this.savedMapY = _parent.savedMapY;
spawnPlayer();
Symbol 301 MovieClip Frame 4
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 7
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 10
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 13
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 16
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 18
_parent.onMessageEnd();
Symbol 301 MovieClip Frame 20
_parent.onMessageEnd();
Symbol 311 MovieClip Frame 1
function update() {
if (_root.getButtonState(2) == 1) {
gotoAndStop (2);
}
}
stop();
this.savedPlayerGun = 0;
this.savedPlayerJump = 0;
this.savedPlayerRange = 0;
this.savedPlayerX = 368;
this.savedPlayerY = 16;
this.savedMapX = 3;
this.savedMapY = 0;
Symbol 311 MovieClip Frame 2
function update() {
if ((!timer) && (((_root.getButtonState(0) == 1) || (_root.getButtonState(1) == 1)) || (_root.getButtonState(2) == 1))) {
mCutscene.advance();
}
}
function onCutSceneEnd() {
gotoAndStop (3);
}
Symbol 311 MovieClip Frame 3
function update() {
if (timer) {
timer--;
}
if ((!timer) && (_root.getButtonState(2) == 1)) {
gotoAndStop (4);
}
mGame.update();
}
function message(id) {
this.messageID = id;
this.timer = 15;
gotoAndStop (5);
}
function onPlayerDestroyed() {
this.timer = 15;
gotoAndStop (6);
}
function onBossDestroyed(deaths, time, playerGun) {
this.deaths = deaths;
this.time = time;
this.playerGun = playerGun;
this.timer = 150;
gotoAndStop (7);
}
_root.resumeMusic();
this.timer = 15;
Symbol 311 MovieClip Frame 4
function update() {
if (timer) {
timer--;
}
if ((!timer) && (_root.getButtonState(2) == 1)) {
gotoAndStop (3);
}
}
_root.pauseMusic();
timer = 15;
Symbol 311 MovieClip Frame 5
function update() {
if (timer) {
timer--;
}
if ((!timer) && ((_root.getButtonState(0) == 1) || (_root.getButtonState(1) == 1))) {
timer = 15;
mMessage.nextFrame();
}
}
function onMessageEnd() {
gotoAndStop (3);
}
if ((messageID != "JUMP") && (messageID != "SAVE")) {
_root.pauseMusic();
_root.playSound("POWERUP");
}
mMessage.gotoAndStop(messageID);
Symbol 311 MovieClip Frame 6
function update() {
mGame.update();
if (timer) {
timer--;
}
if ((timer == 0) && ((_root.getButtonState(0) == 1) || (_root.getButtonState(1) == 1))) {
mGame.spawnPlayer();
gotoAndStop (3);
}
}
_root.pauseMusic();
Symbol 311 MovieClip Frame 7
function update() {
mGame.update();
if (timer) {
timer--;
}
if (timer == 0) {
gotoAndPlay (8);
}
}
_root.pauseMusic();
Symbol 311 MovieClip Frame 8
function update() {
}
mAnimation.gotoAndStop(playerGun);
mAnimation.textDeaths = deaths;
mAnimation.textTime = (((Math.floor(Math.floor(time / 30) / 60) + ":") + (Math.floor(time / 30) % 60)) + ".") + Math.floor(((time % 30) / 30) * 10);
Symbol 311 MovieClip Frame 68
stop();
Symbol 313 MovieClip Frame 1
_root.update();
Symbol 313 MovieClip Frame 2
gotoAndPlay (1);