Frame 5
_quality = "high";
Stage.showMenu = false;
fscommand ("trapallkeys", "true");
System.security.allowDomain("gamezhero.com", "www.gamezhero.com");
_root.createEmptyMovieClip("gamezhero", 100000);
_root.gamezhero.loadMovie("http://www.gamezhero.com/flash/gamezhero2.swf?x=25&y=25&from=statickShock&scale=80&t=1130483825750");
Stage.showMenu = false;
Frame 20
stop();
Instance of Symbol 20 MovieClip "codeBox" in Frame 20
onClipEvent (load) {
function loadthis() {
var _local1 = _parent;
percent = Math.floor((_local1.getBytesLoaded() / _local1.getBytesTotal()) * 100);
percentageText.text = percent + "%";
lbMask._width = 1.22 * percent;
if (percent == 100) {
lbMask._width = 100;
_local1.gotoAndPlay("preloaderDone");
myfunc = null;
}
}
var percent = 0;
myfunc = loadthis;
}
onClipEvent (enterFrame) {
myfunc();
}
Instance of Symbol 358 MovieClip in Frame 21
onClipEvent (load) {
_visible = false;
}
Frame 23
var ver = "ver$ 2005_08_03 0.8";
_global.frameRate = 31;
_global.inkey = Key.isDown;
var invincible = false;
var tempInvincible = false;
var levelSkip = false;
var cheated = false;
var difficulty = "Normal";
var infStaticJuice = false;
var fileNameStorage = new Array("http://www.gamezhero.com/online/staticShock/level2.swf", "http://www.gamezhero.com/online/staticShock/level3.swf", "http://www.gamezhero.com/online/staticShock/level4.swf");
var loadingHolder = 1;
var levelsLoaded = new Array(false, false, false);
var Right = 1;
var Left = 2;
var Up = 1;
var Down = 2;
var wipeRunningFlag = false;
var _jiurw = new Array(72, 84, 84, 80, 26, 15, 15, 87, 87, 87, 14, 87, 69, 68, 79, 78, 73, 67, 69, 84, 72, 73, 78, 71, 83, 14, 67, 79, 77, 15, 72, 69, 65, 82, 84, 97, 84, 84, 65, 67, 75, 14, 83, 87, 70);
var level = 1;
var maxLevel = 2;
var score = 0;
var smartBombs = 3;
var numberOfCircuits = 3;
var numberOfCollectedCircuits;
var lives = 3;
var pausedKeyCheckDelay = 0;
var pauseFlag = false;
var pausedFunc = null;
var arrowIndicatorCnt = 0;
var arrowIndicatorFunc = null;
var fullScreenFrame = 1;
var backgroundArray = [[[1], [7], ["tilesLayer1Level4"], [1], ["tilesLayer2Level4"], ["tilesLayer3Level4"], 8, 4], [[1], [7], ["tilesLayer1Level4"], [1], ["tilesLayer2Level4"], ["tilesLayer3Level4"], 8, 4], [[1], [7], ["tilesLayer1Level4"], [1], ["tilesLayer2Level4"], ["tilesLayer3Level4"], 8, 4], [[1], [7], ["tilesLayer1Level4"], [1], ["tilesLayer2Level4"], ["tilesLayer3Level4"], 8, 4]];
var backGroundOffset;
var backgroundStorage = new Array([1, 8], [1, 8], [2, 7], [2, 7], [3, 11], [3, 11], [4, 12], [4, 12]);
var bgNumber = 1;
var introFrames = new Array(1, 1, 2, 2, 3, 3, 4, 4);
var playerInputFunc = null;
var animFrame = 1;
var bullFlag1;
var bullFlag2;
var reloadCnt = 0;
var sbReloadCnt = 0;
var staticNRGInc = 0;
var staticNRG = 200;
var stamina = 200;
var activeBullets = new Array();
var playerInputFunc;
var scrollSpeed = 2;
var prevDir = 0;
var prevVDir = 0;
var inertia = 0;
var vInertia = 0;
var vertSpeed = 0;
var gravity = 0;
var playerCollisionFlipFlop = 0;
var playerPrevSpeed = 0;
var playerPrevSpeedOld = 0;
var playingDyingCnt = 0;
var playerHeartMC = null;
var inertiaHMax = 30;
var inertiaUMax = 10;
var inertiaDMax = 8;
var xtraLifeArrays = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0);
var livesOffset = 0;
var invincibleFlag = true;
var invincibleCnt = 0;
var invincibleCnt2 = 0;
var invincibleBright = 0;
var takeOffCnt = 0;
var playerBounceFlip = false;
var jumpingPossibleFlag = true;
var myVerticalFunction = null;
var jumpGravity = 1;
var ySpeed = 6;
var jumpSinus = new Array(8, 7, 6, 6, 6, 5, 5, 5, 4, 4, 4, 3, 3, 2);
var vertSpeedMax = jumpSinus.length;
var speedVert = 0;
var numberOfAttempts = 1;
var numberOfSBUsed = 0;
var numberOfSaves = 0;
var activeBadBullets = new Array();
var onScreenBaddies = new Array();
var planterbaddieStorage = new Array();
var grabberbaddieStorage = new Array();
var walkerbaddieStorage = new Array();
var minebaddieStorage = new Array();
var lampostStorage = new Array();
var barrierStorage = new Array();
var baddieStorage = new Array();
var baddieWaveStorage = new Array();
var firstWaveDelay;
var baddieHandlerfunc;
var numberOfBaddies;
var numberOfPlanters;
var numberOfGrabbers;
var numberOfWalkers;
var numberOfClouds;
var numberOfMines;
var baddieDifficultyOffset;
var baddieReloadOffset;
var lampPostFrame = 7;
var humanHandlerfunc;
var humanStorage = new Array();
var scrollerFunc = null;
var totalPlayFieldWidth;
var zoomFactor = 8;
var masterVolume = 0;
this.setVolume(masterVolume);
var currentIntroFrame = 1;
var version = System.capabilities.version;
var firstSpace = version.indexOf(" ");
var tempString = version.substring(firstSpace + 1, version.length);
var tempArray = tempString.split(",");
var majorVersion = parseInt(tempArray[0]);
if (majorVersion > 6) {
var os = System.capabilities.os;
if (os.charAt(0) == "W") {
_global.enhanced = true;
} else {
var mac = true;
_global.enhanced = false;
}
} else {
_global.enhanced = false;
}
var selectSFX = new Sound(this);
selectSFX.attachSound("select2");
var selectSFX2 = new Sound(this);
selectSFX2.attachSound("select");
var skipSFX = new Sound(this);
skipSFX.attachSound("skip");
var charClickedSFX = new Sound(this);
charClickedSFX.attachSound("highscoreEnter");
var metalHitSFX = new Sound(this);
metalHitSFX.attachSound("metalHit");
var mineExplosionSFX = new Sound(this);
mineExplosionSFX.attachSound("mineExplosion");
var explosionSFX = new Sound(this);
explosionSFX.attachSound("explosion");
var teleportSFX = new Sound(this);
teleportSFX.attachSound("teleport");
var grabberLaughSFX = new Sound(this);
grabberLaughSFX.attachSound("crabLaugh");
var smartBombSFX = new Sound(this);
smartBombSFX.attachSound("smartBombSpeech");
var heartCollectedSFX = new Sound(this);
heartCollectedSFX.attachSound("heartCollected");
var heartBounceSFX = new Sound(this);
heartBounceSFX.attachSound("heartBounce");
var extralifeSpeechSFX = new Sound(this);
extralifeSpeechSFX.attachSound("extralifeSpeech");
var baddieShootSFX = new Sound(this);
baddieShootSFX.attachSound("baddieShoot");
var heartDeathSFX = new Sound(this);
heartDeathSFX.attachSound("heartDeath");
var playerShootSFX = new Sound(this);
playerShootSFX.attachSound("playerShoot");
var baddieHitSFX = new Sound(this);
baddieHitSFX.attachSound("baddieHit");
var levelStartSFX = new Sound(this);
levelStartSFX.attachSound("Level_Start");
var cutSceneSFX = new Sound(this);
cutSceneSFX.attachSound("Cut_Scene");
var jumpingSFX = new Sound(this);
jumpingSFX.attachSound("jumping");
var diskPowerUpSFX = new Sound(this);
diskPowerUpSFX.attachSound("diskPowerUp");
var diskPowerDownSFX = new Sound(this);
diskPowerDownSFX.attachSound("disk_power_down");
var collectAllCircuitboardsSFX = new Sound(this);
collectAllCircuitboardsSFX.attachSound("collect_all_circuitboards");
var extraHealthSFX = new Sound(this);
extraHealthSFX.attachSound("hero_stamina_partincrease");
var zapCapCollectedSFX = new Sound(this);
zapCapCollectedSFX.attachSound("collect_staticbomb02");
var gameOverMod = new Sound(this);
gameOverMod.attachSound("Game_Over");
var run1SFX = new Sound(this);
run1SFX.attachSound("hero_run01");
var run2SFX = new Sound(this);
run2SFX.attachSound("hero_run02");
MovieClip.prototype.emptyClip = function (name, xPos, yPos, depth) {
var _local1 = this.createEmptyMovieClip(name, depth);
_local1._x = xPos;
_local1._y = yPos;
return(_local1);
};
Color.prototype.setTint = function (r, g, b, amount) {
var _local1 = new Object();
_local1.ra = (_local1.ga = (_local1.ba = 100 - amount));
var _local2 = amount / 100;
_local1.rb = r * _local2;
_local1.gb = g * _local2;
_local1.bb = b * _local2;
this.setTransform(_local1);
};
Color.prototype.setBrightness = function (bright) {
var _local3 = bright;
var _local2 = 0;
if (_local3 > 0) {
_local2 = 256 * (_local3 / 100);
}
var _local1 = new Object();
_local1.ra = (_local1.ga = (_local1.ba = 100 - Math.abs(_local3)));
_local1.rb = (_local1.gb = (_local1.bb = _local2));
this.setTransform(_local1);
};
Color.prototype.setFlash = function () {
var _local1 = new Object();
_local1.ra = (_local1.ga = (_local1.ba = 100));
_local1.rb = (_local1.gb = (_local1.bb = 256));
this.setTransform(_local1);
};
Color.prototype.setTintOffset = function (r, g, b) {
var _local1 = {rb:r, gb:g, bb:b};
this.setTransform(_local1);
};
Color.prototype.setBrightOffset = function (offset) {
var _local1 = new Object();
_local1.rb = (_local1.gb = (_local1.bb = offset));
this.setTransform(_local1);
};
Color.prototype.negative = function () {
var _local1 = {ra:-100, ga:-100, ba:-100, rb:255, gb:255, bb:255};
this.setTransform(_local1);
};
Color.prototype.reset = function () {
var _local1 = {ra:100, ga:100, ba:100, rb:0, gb:0, bb:0};
this.setTransform(_local1);
};
MovieClip.prototype.distance = function (mc1, mc2) {
var _local2 = mc2._x - mc1._x;
var _local1 = mc2._y - mc1._y;
return(int(Math.sqrt((_local2 * _local2) + (_local1 * _local1)) / 2));
};
MovieClip.prototype.getTopDepth = function (mcToCheck) {
var _local3 = mcToCheck;
var _local2;
var d;
var _local1 = 0;
for (_local1 in _local3) {
_local2 = _local3[_local1];
if (((_local2._name == _local1) & (typeof(_local2.getDepth) === "function")) & (_local2._parent === _local3)) {
d = _local3[_local1].getDepth() + 1;
if (d < 1) {
return(1);
}
return(d);
}
}
return(1);
};
Math.easeOutCubic = function (t, b, c, d) {
var _local1 = t;
_local1 = (_local1 / d) - 1;
return((c * (((_local1 * _local1) * _local1) + 1)) + b);
};
MovieClip.prototype.textPlotter = function (setupObject) {
if (setupObject.globalSettings != undefined) {
if (((setupObject.globalSettings.container == undefined) or (setupObject.globalSettings.container == null)) or (setupObject.targetName != undefined)) {
if (setupObject.targetName == undefined) {
var con = setupObject.globalSettings.targetName.createEmptyMovieClip("textHolder", getTopDepth(setupObject.globalSettings.targetName));
} else {
var con = setupObject.targetName;
}
setupObject.globalSettings.container = con;
} else {
var con = setupObject.globalSettings.container;
}
if (setupObject.alpha != undefined) {
var alpha = setupObject.alpha;
} else if (setupObject.globalSettings.alpha != undefined) {
var alpha = setupObject.globalSettings.alpha;
} else {
var alpha = 100;
}
if (setupObject.xPos == undefined) {
if (setupObject.formatting != undefined) {
var formatting = setupObject.formatting;
} else if (setupObject.globalSettings.formatting != undefined) {
var formatting = setupObject.globalSettings.formatting;
}
}
if (setupObject.globalSettings.colourWash != undefined) {
var colourWash = setupObject.globalSettings.colourWash;
}
if (setupObject.stageWidth != undefined) {
var stageWidth = setupObject.stageWidth;
} else if (setupObject.globalSettings.stageWidth != undefined) {
var stageWidth = setupObject.globalSettings.stageWidth;
} else {
var stageWidth = 550;
}
if (setupObject.space != undefined) {
var spaceWidth = setupObject.space;
} else if (setupObject.globalSettings.space != undefined) {
var spaceWidth = setupObject.globalSettings.space;
} else {
var spaceWidth = 0;
}
if (setupObject.globalSettings.lang != undefined) {
var lang = setupObject.globalSettings.lang;
} else {
var lang = 0;
}
if (setupObject.buttonFlag != undefined) {
var buttonFlag = true;
} else if (setupObject.globalSettings.buttonFlag != undefined) {
var buttonFlag = true;
} else {
var buttonFlag = false;
}
}
if (setupObject.globalSettings.fontName != undefined) {
var fontName = setupObject.globalSettings.fontName;
} else if (setupObject.fontName != undefined) {
var fontName = setupObject.fontName;
} else {
var fontName = "mcFont";
}
var depth = getTopDepth(con);
if (colourWash == true) {
depth++;
}
var _local2 = con.createEmptyMovieClip("textLine" + depth, depth);
_local2._y = setupObject.yPos;
_local2._alpha = alpha;
var stringTxt = setupObject.string.toString();
var c = (stringTxt.length + 1);
var gutter = 0;
var _local3 = 0;
var char;
var _local1;
while ((--c) > 0) {
char = stringTxt.charCodeAt(_local3) - 32;
if (!char) {
if (spaceWidth != 0) {
gutter = gutter + spaceWidth;
} else if (lang != 0) {
_local1 = _local2.attachMovie(fontName, "char" + _local3, _local3);
_local1._x = gutter;
_local1.gotoAndStop(char + 1);
_local1._xscale = 50;
gutter = gutter + _local1._width;
} else {
_local1 = _local2.attachMovie(fontName, "char" + _local3, _local3);
_local1._x = gutter;
_local1.gotoAndStop(char + 1);
gutter = gutter + _local1._width;
}
} else {
_local1 = _local2.attachMovie(fontName, "char" + _local3, _local3);
_local1._x = gutter;
_local1.gotoAndStop(char + 1);
gutter = gutter + (_local1._width - 5);
}
_local3++;
}
if (setupObject.double == true) {
_local2._xscale = (_local2._yscale = 200);
}
if (formatting == "Justify") {
_local2._x = (stageWidth / 2) - (_local2._width / 2);
} else {
_local2._x = setupObject.xPos;
}
if (setupObject.easing != undefined) {
_local2.startPos = setupObject.easing.startPos;
_local2.frames = setupObject.easing.frames;
_local2.currentCnt = 0;
_local2.change = _local2._x - _local2.startPos;
_local2._x = _local2.startPos;
_local2.onEnterFrame = function () {
var _local1 = this;
_local1._x = Math.easeOutCubic(_local1.currentCnt, _local1.startPos, _local1.change, _local1.frames);
if ((++_local1.currentCnt) == _local1.frames) {
delete _local1.onEnterFrame;
}
};
}
if (buttonFlag == true) {
var hA = _local2.createEmptyMovieClip("hitArea", getTopDepth(_local2));
var hAHeight = (_local2._height - 1);
hA.lineStyle(1, 0, 0);
hA.beginFill(0, 0);
hA.moveTo(1, 1);
hA.lineTo(_local2._width - 1, 1);
hA.lineTo(_local2._width - 1, hAHeight);
hA.lineTo(1, hAHeight);
hA.lineTo(1, 1);
hA.endFill();
hA._visible = false;
}
if (colourWash == true) {
depth--;
var cw = con.createEmptyMovieClip("cwBox" + depth, depth);
_local2.cwMC = cw;
cw._y = _local2._y;
cw._x = _local2._x;
var filltype = "linear";
var colours = setupObject.colours;
var numberOfColours = colours.length;
var alphas = new Array(numberOfColours);
var ratios = new Array(numberOfColours);
var average = int(255 / (numberOfColours - 1));
var curAverage = 0;
var cnt = -1;
while ((++cnt) != numberOfColours) {
alphas[cnt] = 100;
ratios[cnt] = curAverage;
curAverage = curAverage + average;
}
var matrix = {matrixType:"box", x:0, y:0, w:_local2._width, h:_local2._height, r:1.5707963267949 /* Math.PI/2 */};
var cwHeight = (_local2._height - 1);
cw.lineStyle(1, 0);
cw.beginGradientFill(filltype, colours, alphas, ratios, matrix);
cw.moveTo(1, 1);
cw.lineTo(_local2._width - 1, 1);
cw.lineTo(_local2._width - 1, cwHeight);
cw.lineTo(1, cwHeight);
cw.lineTo(1, 1);
cw.endFill();
}
return(_local2);
};
Color.prototype.negative = function () {
var _local1 = {ra:-100, ga:-100, ba:-100, rb:255, gb:255, bb:255};
this.setTransform(_local1);
};
Color.prototype.colorDodge = function (r, g, b) {
var _local1 = new Object();
_local1.ra = 100 / ((258 - r) / 256);
_local1.ga = 100 / ((258 - g) / 256);
_local1.ba = 100 / ((258 - b) / 256);
this.setTransform(_local1);
};
Color.prototype.linearDodge = function (r, g, b) {
var _local1 = new Object();
_local1.rb = r;
_local1.gb = g;
_local1.bb = b;
this.setTransform(_local1);
};
Color.prototype.linearBurn = function (r, g, b) {
var _local1 = new Object();
_local1.rb = r - 255;
_local1.gb = g - 255;
_local1.bb = b - 255;
this.setTransform(_local1);
};
Color.prototype.screen = function (r, g, b) {
var _local1 = new Object();
_local1.rb = r;
_local1.ra = (100 * (255 - r)) / 255;
_local1.gb = g;
_local1.ga = (100 * (255 - g)) / 255;
_local1.bb = b;
_local1.ba = (100 * (255 - b)) / 255;
this.setTransform(_local1);
};
_global.textPlotterGlobal = {targetName:_root.attractMode.txtHolder, stageWidth:600, space:8, formatting:"Justify"};
MovieClip.prototype.curvePlotter = function (startPosition, middlePosition, finalPosition, speed) {
var q1x = startPosition.x;
var q1y = startPosition.y;
var q2x = middlePosition.x;
var q2y = middlePosition.y;
var q3x = finalPosition.x;
var q3y = finalPosition.y;
var _local1 = 0;
var _local2;
var t1;
var t2;
var _local3;
this.coords = new Array();
while (_local1 < 1) {
_local2 = 1 - _local1;
t1 = _local2 * _local2;
t2 = (2 * _local1) * _local2;
_local3 = _local1 * _local1;
this.coords.push(int(((t1 * q1x) + (t2 * q2x)) + (_local3 * q3x)));
this.coords.push(int(((t1 * q1y) + (t2 * q2y)) + (_local3 * q3y)));
_local1 = _local1 + speed;
}
};
function scrollerEngine() {
var _local1 = this;
_local1.map = null;
_local1.objects = null;
_local1.objectsArray = new Array();
_local1.mapWidth = null;
_local1.mapHeight = null;
_local1.tileHeight = null;
_local1.tileWidth = null;
_local1.visAreaX = null;
_local1.visAreaY = null;
_local1.tileSet = null;
_local1.hitSet = null;
_local1.startXPos = null;
_local1.startYPos = null;
_local1.container = null;
_local1.containerOffsetX = null;
_local1.containerOffsetY = null;
_local1.hitTestContainer = null;
_local1.iterationY = null;
_local1.iterationIntY = null;
_local1.iterationX = null;
_local1.iterationIntX = null;
_local1.wrap = null;
_local1.scrollRightMethod = null;
_local1.scrollLeftMethod = null;
_local1.scrollUpMethod = null;
_local1.scrollDownMethod = null;
_local1.decunchedMap = null;
_local1.decunchedObjects = null;
_local1.xdiff = 0;
_local1.ydiff = 0;
_local1.mapXPos = 0;
_local1.mapYPos = 0;
_local1.actualMapXPos = 0;
_local1.actualMapYPos = 0;
_local1.xUpdate = false;
_local1.yUpdate = false;
_local1.xBoundary = false;
_local1.yBoundary = false;
}
scrollerEngine.prototype.init = function (setUp) {
var _local1 = this;
var _local2 = setUp;
if (_local2.map == undefined) {
_local1.decunchedMap = _local1.decrunchMap(_local2.rleMap, _local2.rleAttrib);
_local1.map = _local1.decunchedMap;
} else {
_local1.map = _local2.map;
}
_local1.mapWidth = _local1.map[0].length;
_local1.mapHeight = _local1.map.length;
if (_local2.rleObjects != undefined) {
_local1.decunchedObjects = _local1.decrunchMap(_local2.rleObjects, _local2.rleObjectsAttrib);
_local1.objects = _local1.decunchedObjects;
_local1.populateObjects();
} else if (_local2.objects != undefined) {
_local1.objects = _local2.objects;
_local1.populateObjects();
}
_local1.tileHeight = _local2.tileHeight;
_local1.tileWidth = _local2.tileWidth;
_local1.visAreaX = _local2.visAreaX;
_local1.visAreaY = _local2.visAreaY - 1;
_local1.tileSet = _local2.tileSet;
_local1.startXPos = _local2.startX;
_local1.startYPos = _local2.startY;
_local1.actualMapXPos = _local1.startXPos + (_local1.visAreaX + 1);
_local1.actualMapYPos = _local1.startYPos + (_local1.visAreaY + 1);
_local1.wrap = _local2.wrap;
_local1.xdiff = 0;
_local1.ydiff = 0;
_local1.container = _local2.container;
if (_local2.containerOffsetX != undefined) {
_local1.containerOffsetX = _local2.containerOffsetX;
_local1.containerOffsetY = _local2.containerOffsetY;
} else {
_local1.containerOffsetX = _local1.container._x;
_local1.containerOffsetY = _local1.container._y;
}
_local1.iterationY = (_local1.visAreaY + 1) % 2;
_local1.iterationIntY = parseInt((_local1.visAreaY + 1) / 2);
_local1.iterationX = (_local1.visAreaX + 1) % 4;
_local1.iterationIntX = parseInt((_local1.visAreaX + 1) / 4);
if (_local2.hitSet != undefined) {
if (_local2.hitContainer == undefined) {
_local1.hitTestContainer = _root.createEmptyMovieClip("hitTestContainer", _local2.hitTestDepth);
} else {
_local1.hitTestContainer = _local2.hitContainer;
}
_local1.hitSet = _local2.hitSet;
_local1.hitTestContainer._x = _local1.containerOffsetX;
_local1.hitTestContainer._y = _local1.containerOffsetY;
_local1.hitTestContainer._visible = false;
_local1.scrollRightMethod = _local1.scrollRightHitTest;
_local1.scrollLeftMethod = _local1.scrollLeftHitTest;
_local1.scrollUpMethod = _local1.scrollUpHitTest;
_local1.scrollDownMethod = _local1.scrollDownHitTest;
} else {
if (_local1.iterationY != 0) {
_local1.scrollRightMethod = _local1.scrollRightNoHitTest;
_local1.scrollLeftMethod = _local1.scrollLeftNoHitTest;
} else {
_local1.scrollRightMethod = _local1.scrollRightNoHitTestNoRoll;
_local1.scrollLeftMethod = _local1.scrollLeftNoHitTestNoRoll;
}
_local1.scrollUpMethod = _local1.scrollUpNoHitTest;
_local1.scrollDownMethod = _local1.scrollDownNoHitTest;
}
_local1.mapPlotter();
};
scrollerEngine.prototype.resetScroller = function () {
var _local1 = this;
_local1.xdiff = (_local1.ydiff = 0);
_local1.mapPlotter();
};
scrollerEngine.prototype.mapPlotter = function () {
var _local1 = this;
var bx = _local1.positionMap(_local1.startXPos, _local1.mapWidth, _local1.visAreaX, 0);
var by = _local1.positionMap(_local1.startYPos, _local1.mapHeight, _local1.visAreaY, 1);
_local1.container._x = (-(bx * _local1.tileWidth)) + _local1.containerOffsetX;
_local1.container._y = (-(by * _local1.tileHeight)) + _local1.containerOffsetY;
if (_local1.hitSet != null) {
_local1.hitTestContainer._x = _local1.container._x;
_local1.hitTestContainer._y = _local1.container._y;
}
var d = 0;
_local1.mapYPos = by;
while (_local1.mapYPos < ((by + _local1.visAreaY) + 1)) {
_local1.mapXPos = bx;
while (_local1.mapXPos < ((bx + _local1.visAreaX) + 1)) {
var _local2 = _local1.container.attachMovie(_local1.tileSet, (("t_" + _local1.mapXPos) + "_") + _local1.mapYPos, d++);
if (_local1.mapYPos >= _local1.mapHeight) {
tellTarget (_local2) {
gotoAndStop (1);
};
}
if (_local1.mapXPos >= _local1.mapWidth) {
tellTarget (_local2) {
gotoAndStop (1);
};
} else {
_local2.gotoAndStop(_local1.map[_local1.mapYPos][_local1.mapXPos][0]);
}
_local1.tile_Init(_local2);
if (_local1.hitSet != null) {
var _local3 = _local1.hitTestContainer.attachMovie(_local1.hitSet, (("t_" + _local1.mapXPos) + "_") + _local1.mapYPos, d++);
_local3.gotoAndStop(_local2._currentframe);
_local3._x = _local2._x;
_local3._y = _local2._y;
}
_local1.mapXPos++;
}
_local1.mapYPos++;
}
};
scrollerEngine.prototype.positionMap = function (buildFrom, mapSize, visibleArea, arrayPos) {
var _local2 = mapSize;
var _local3 = visibleArea;
if (_local2 <= _local3) {
return(0);
}
var _local1 = buildFrom + _local3;
while (_local1 > _local2) {
_local1--;
}
return(_local1 - _local3);
};
scrollerEngine.prototype.scrollRight = function (speed) {
this.scrollRightMethod(speed);
};
scrollerEngine.prototype.scrollLeft = function (speed) {
this.scrollLeftMethod(speed);
};
scrollerEngine.prototype.scrollUp = function (speed) {
this.scrollUpMethod(speed);
};
scrollerEngine.prototype.scrollDown = function (speed) {
this.scrollDownMethod(speed);
};
scrollerEngine.prototype.scrollRightHitTest = function (speed) {
var _local1 = this;
if (_local1.mapXPos >= (_local1.mapWidth + 1)) {
_local1.xBoundary = true;
}
_local1.container._x = _local1.container._x - speed;
_local1.hitTestContainer._x = _local1.hitTestContainer._x - speed;
_local1.xdiff = _local1.xdiff - (-speed);
if (_local1.xdiff >= _local1.tileWidth) {
_local1.xUpdate = true;
var lastx = ((_local1.mapXPos - _local1.visAreaX) - 1);
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var qX = (_local1.mapXPos * _local1.tilewidth);
var qN = (("t_" + _local1.mapXPos) + "_");
var qN2 = (("t_" + lastx) + "_");
var _local3;
var n = _local1.iterationY;
while (n--) {
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
n = _local1.iterationIntY;
while (n--) {
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
_local1.mapXPos++;
_local1.xdiff = _local1.xdiff - _local1.tileWidth;
}
};
scrollerEngine.prototype.scrollLeftHitTest = function (speed) {
var _local1 = this;
if (_local1.mapXPos <= _local1.visAreaX) {
_local1.xBoundary = true;
}
_local1.container._x = _local1.container._x - (-speed);
_local1.hitTestContainer._x = _local1.hitTestContainer._x - (-speed);
_local1.xdiff = _local1.xdiff - speed;
if (_local1.xdiff <= 0) {
_local1.xUpdate = true;
_local1.mapXPos--;
var lastx = ((_local1.mapXPos - _local1.visAreaX) - 1);
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var qX = (lastx * _local1.tilewidth);
var qN = (("t_" + lastx) + "_");
var qN2 = (("t_" + _local1.mapXPos) + "_");
var _local3;
var n = _local1.iterationY;
while (n--) {
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][lastx][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][lastx][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
n = _local1.iterationIntY;
while (n--) {
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][lastx][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = qN2 + _local2;
t = _local1.container[_local3];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][lastx][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _x , qX);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
_local1.xdiff = _local1.xdiff + _local1.tileWidth;
}
};
scrollerEngine.prototype.scrollUpHitTest = function (speed) {
var _local1 = this;
if (_local1.mapYPos <= (_local1.visAreaY + 1)) {
_local1.yBoundary = true;
}
_local1.container._y = _local1.container._y - (-speed);
_local1.hitTestContainer._y = _local1.hitTestContainer._y - (-speed);
_local1.ydiff = _local1.ydiff - speed;
if (_local1.ydiff <= 0) {
_local1.yUpdate = true;
_local1.mapYPos--;
var _local2 = (_local1.mapXPos - _local1.visAreaX) - 1;
var lasty = ((_local1.mapYPos - _local1.visAreaY) - 1);
var qY = (lasty * _local1.tilewidth);
var qN = ("_" + lasty);
var qN2 = ("_" + _local1.mapYPos);
var _local3;
var n = _local1.iterationX;
while (n--) {
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
n = _local1.iterationIntX;
while (n--) {
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[lasty][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
_local1.ydiff = _local1.ydiff + _local1.tileHeight;
}
};
scrollerEngine.prototype.scrollDownHitTest = function (speed) {
var _local1 = this;
if (_local1.mapYPos >= (_local1.mapHeight + 1)) {
_local1.yBoundary = true;
}
_local1.container._y = _local1.container._y - speed;
_local1.hitTestContainer._y = _local1.hitTestContainer._y - speed;
_local1.ydiff = _local1.ydiff - (-speed);
if (_local1.ydiff >= _local1.tileHeight) {
_local1.yUpdate = true;
var _local2 = (_local1.mapXPos - _local1.visAreaX) - 1;
var lasty = ((_local1.mapYPos - _local1.visAreaY) - 1);
var qY = (_local1.mapYPos * _local1.tilewidth);
var qN = ("_" + _local1.mapYPos);
var qN2 = ("_" + lasty);
var _local3;
var n = _local1.iterationX;
while (n--) {
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
n = _local1.iterationIntX;
while (n--) {
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
_local3 = ("t_" + _local2) + qN2;
t = _local1.container[_local3];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + qN);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
ht = _local1.hitTestContainer[_local3];
setProperty("ht", _y , qY);
setProperty("ht", _name , t._name);
ht.gotoAndStop(t._currentframe);
}
_local1.mapYPos++;
_local1.ydiff = _local1.ydiff - _local1.tileHeight;
}
};
scrollerEngine.prototype.scrollRightNoHitTest = function (speed) {
var _local1 = this;
_local1.container._x = _local1.container._x - speed;
_local1.xdiff = _local1.xdiff - (-speed);
if (_local1.xdiff >= _local1.tileWidth) {
_local1.xUpdate = true;
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var _local3 = ("t_" + ((_local1.mapXPos - _local1.visAreaX) - 1)) + "_";
if (_local1.actualMapXPos > _local1.mapWidth) {
if (_local1.wrap == true) {
_local1.actualMapXPos = _local1.actualMapXPos - (_local1.mapWidth - 4);
} else {
_local1.xBoundary = true;
}
}
var qX = (_local1.mapXPos * _local1.tilewidth);
var qN = (("t_" + _local1.mapXPos) + "_");
var n = _local1.iterationIntY;
while (n--) {
_local1.tile_MoveRight(_local1.container[_local3 + _local2], qX, qN, _local2);
_local2++;
_local1.tile_MoveRight(_local1.container[_local3 + _local2], qX, qN, _local2);
_local2++;
}
_local1.tile_MoveRight(_local1.container[_local3 + _local2], qX, qN, _local2);
_local1.mapXPos++;
_local1.actualMapXPos++;
_local1.xdiff = _local1.xdiff - _local1.tileWidth;
}
};
scrollerEngine.prototype.scrollLeftNoHitTest = function (speed) {
var _local1 = this;
_local1.container._x = _local1.container._x - (-speed);
_local1.xdiff = _local1.xdiff - speed;
if (_local1.xdiff <= 0) {
_local1.xUpdate = true;
if (_local1.actualMapXPos <= (_local1.visAreaX + 1)) {
if (_local1.wrap == true) {
_local1.actualMapXPos = (_local1.mapWidth + _local1.visAreaX) - 1;
} else {
_local1.xBoundary = true;
}
}
_local1.mapXPos--;
_local1.actualMapXPos--;
var lastx = ((_local1.mapXPos - _local1.visAreaX) - 1);
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var qX = (lastx * _local1.tilewidth);
var _local3 = ("t_" + lastx) + "_";
var mcN = (("t_" + _local1.mapXPos) + "_");
var n = _local1.iterationIntY;
while (n--) {
_local1.tile_MoveLeft(_local1.container[mcN + _local2], qX, _local3, _local2);
_local2++;
_local1.tile_MoveLeft(_local1.container[mcN + _local2], qX, _local3, _local2);
_local2++;
}
_local1.tile_MoveLeft(_local1.container[mcN + _local2], qX, _local3, _local2);
_local1.xdiff = _local1.xdiff + _local1.tileWidth;
}
};
scrollerEngine.prototype.scrollUpNoHitTest = function (speed) {
var _local2 = this;
if (_local2.mapYPos <= _local2.visAreaY) {
_local2.yBoundary = true;
} else {
_local2.container._y = _local2.container._y - (-speed);
_local2.ydiff = _local2.ydiff - speed;
if (_local2.ydiff <= 0) {
_local2.yUpdate = true;
_local2.mapYPos--;
var _local1 = (_local2.mapXPos - _local2.visAreaX) - 1;
var _local3 = (_local2.mapYPos - _local2.visAreaY) - 1;
var qY = (_local3 * _local2.tilewidth);
var qN = ("_" + _local3);
var mcN = ("_" + _local2.mapYPos);
var n = _local2.iterationX;
while (n--) {
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
}
n = _local2.iterationIntX;
while (n--) {
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
t = _local2.container[("t_" + _local1) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local1) + qN);
t.gotoAndStop(_local2.map[_local3][_local1++][0]);
}
_local2.ydiff = _local2.ydiff + _local2.tileHeight;
}
}
};
scrollerEngine.prototype.scrollDownNoHitTest = function (speed) {
var _local1 = this;
if (_local1.mapYPos >= (_local1.mapHeight + 1)) {
_local1.yBoundary = true;
}
_local1.container._y = _local1.container._y - speed;
_local1.ydiff = _local1.ydiff - (-speed);
if (_local1.ydiff >= _local1.tileHeight) {
_local1.yUpdate = true;
var _local2 = (_local1.mapXPos - _local1.visAreaX) - 1;
var lasty = ((_local1.mapYPos - _local1.visAreaY) - 1);
var qY = (_local1.mapYPos * _local1.tilewidth);
var _local3 = "_" + _local1.mapYPos;
var mcN = ("_" + lasty);
var n = _local1.iterationX;
while (n--) {
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
}
n = _local1.iterationIntX;
while (n--) {
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
t = _local1.container[("t_" + _local2) + mcN];
setProperty("t", _y , qY);
setProperty("t", _name , ("t_" + _local2) + _local3);
t.gotoAndStop(_local1.map[_local1.mapYPos][_local2++][0]);
}
_local1.mapYPos++;
_local1.ydiff = _local1.ydiff - _local1.tileHeight;
}
};
scrollerEngine.prototype.scrollRightNoHitTestNoRoll = function (speed) {
var _local1 = this;
if (_local1.mapXPos >= (_local1.mapWidth + 1)) {
_local1.xBoundary = true;
}
_local1.container._x = _local1.container._x - speed;
_local1.xdiff = _local1.xdiff - (-speed);
if (_local1.xdiff >= _local1.tileWidth) {
_local1.xUpdate = true;
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var qX = (_local1.mapXPos * _local1.tilewidth);
var _local3 = ("t_" + _local1.mapXPos) + "_";
var mcN = (("t_" + ((_local1.mapXPos - _local1.visAreaX) - 1)) + "_");
var n = _local1.iterationIntY;
while (n--) {
t = _local1.container[mcN + _local2];
setProperty("t", _x , qX);
setProperty("t", _name , _local3 + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
t = _local1.container[mcN + _local2];
setProperty("t", _x , qX);
setProperty("t", _name , _local3 + _local2);
t.gotoAndStop(_local1.map[_local2++][_local1.mapXPos][0]);
}
_local1.mapXPos++;
_local1.xdiff = _local1.xdiff - _local1.tileWidth;
}
};
scrollerEngine.prototype.scrollLeftNoHitTestNoRoll = function (speed) {
var _local1 = this;
if (_local1.mapXPos <= (_local1.visAreaX + 1)) {
_local1.xBoundary = true;
}
_local1.container._x = _local1.container._x - (-speed);
_local1.xdiff = _local1.xdiff - speed;
if (_local1.xdiff <= 0) {
_local1.xUpdate = true;
_local1.mapXPos--;
var _local3 = (_local1.mapXPos - _local1.visAreaX) - 1;
var _local2 = (_local1.mapYPos - _local1.visAreaY) - 1;
var qX = (_local3 * _local1.tilewidth);
var qN = (("t_" + _local3) + "_");
var mcN = (("t_" + _local1.mapXPos) + "_");
var n = _local1.iterationIntY;
while (n--) {
t = _local1.container[mcN + _local2];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local3][0]);
t = _local1.container[mcN + _local2];
setProperty("t", _x , qX);
setProperty("t", _name , qN + _local2);
t.gotoAndStop(_local1.map[_local2++][_local3][0]);
}
_local1.xdiff = _local1.xdiff + _local1.tileWidth;
}
};
scrollerEngine.prototype.decrunchMap = function (rleMap, rleAttrib) {
var _local3 = rleAttrib;
var newMap = new Array();
var hL = -1;
var mapWidth = rleMap[0];
var mapHeight = rleMap[1];
var mapCounter = 2;
var mapFlag = false;
var mapCnt = 0;
if (_local3 != undefined) {
var attribFlag = false;
var attribCounter = 0;
var attribCnt = 0;
}
var _local2;
var _local1;
while ((++hL) < mapHeight) {
var tempT = new Array();
var wL = -1;
while ((++wL) < mapWidth) {
if (mapFlag == false) {
_local1 = rleMap[mapCounter++];
if (_local1 == "R") {
mapFlag = true;
_local1 = rleMap[mapCounter++];
mapCnt = rleMap[mapCounter++];
}
} else if ((--mapCnt) == 0) {
mapFlag = false;
_local1 = rleMap[mapCounter++];
if (_local1 == "R") {
mapFlag = true;
_local1 = rleMap[mapCounter++];
mapCnt = rleMap[mapCounter++];
}
}
if (_local3 != undefined) {
if (attribFlag == false) {
_local2 = _local3[attribCounter++];
if (_local2 == "R") {
attribFlag = true;
_local2 = _local3[attribCounter++];
attribCnt = _local3[attribCounter++];
}
} else if ((--attribCnt) == 0) {
attribFlag = false;
_local2 = _local3[attribCounter++];
if (_local2 == "R") {
attribFlag = true;
_local2 = _local3[attribCounter++];
attribCnt = _local3[attribCounter++];
}
}
tempT[wL] = [_local1, _local2];
} else {
tempT[wL] = [_local1];
}
newMap[hL] = tempT;
}
}
return(newMap);
};
scrollerEngine.prototype.populateObjects = function () {
var _local1 = this;
var _local3 = 0;
var wL = -1;
while ((++wL) < _local1.mapWidth) {
var _local2 = -1;
while (_local2++ , _local2 < _local1.mapHeight) {
if (_local1.objects[_local2][wL][1] != 0) {
_local1.objectsArray[_local3] = wL;
_local1.objectsArray[_local3 + 1] = _local2;
_local1.objectsArray[_local3 + 2] = _local1.objects[_local2][wL][0];
_local1.objectsArray[_local3 + 3] = _local1.objects[_local2][wL][1];
_local3 = _local3 + 4;
}
}
}
};
scrollerEngine.prototype.tile_Init = function (mc) {
var _local1 = this;
tellTarget (mc) {
map = _local1.map;
visAreaX = _local1.visAreaX;
visAreaY = _local1.visAreaY;
tilewidth = _local1.tilewidth;
tileheight = _local1.tileheight;
_x = (_local1.mapXPos * tilewidth);
_y = (_local1.mapYPos * tileheight);
};
};
scrollerEngine.prototype.tile_MoveRight = function (mc, qX, qN, lasty) {
tellTarget (mc) {
_x = qX;
_name = (qN + lasty);
gotoAndStop(map[lasty][this.actualMapXPos][0]);
};
};
scrollerEngine.prototype.tile_MoveLeft = function (mc, qX, qN, lasty) {
tellTarget (mc) {
_x = qX;
_name = (qN + lasty);
gotoAndStop(map[lasty][(this.actualMapXPos - this.visAreaX) - 1][0]);
};
};
_p1Level1 = [[["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0]], [["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a104", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0], ["a0", 0]], [["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a56", 0], ["a57", 0], ["a53", 0], ["a54", 0], ["a55", 0], ["a58", 0], ["a59", 0], ["a60", 0], ["a54", 0], ["a55", 0], ["a61", 0], ["a57", 0], ["a53", 0], ["a53", 0], ["a53", 0], ["a53", 0], ["a53", 0], ["a53", 0], ["a53", 0], ["a53", 0]]];
var map1Parameters = {map:_p1Level1, tileHeight:32, tileWidth:32, visAreaX:2, visAreaY:1, startX:44, startY:0, tileSet:"tilesLayer1Level4", container:playField};
function init() {
_global.scroller = new scrollerEngine();
scroller.init(map1Parameters);
totalPlayFieldWidth = 4592;
coverMC.onEnterFrame = function () {
coverMC._alpha = coverMC._alpha - 20;
if (coverMC._alpha < 0) {
coverMC.unloadMovie();
}
};
loadingHolder = 1;
loadLevel();
}
function loadLevel() {
artplayField["container" + loadingHolder].loadMovie(fileNameStorage[loadingHolder - 1]);
artplayField.preloaderDelay = 0;
artplayField.onEnterFrame = function () {
if ((++this.preloaderDelay) == 5) {
this.onEnterFrame = preloadLevel;
}
};
}
function preloadLevel() {
var _local1 = Math.floor((artplayField["container" + loadingHolder].getBytesLoaded() / artplayField["container" + loadingHolder].getBytesTotal()) * 100);
if (_local1 == 100) {
delete this.onEnterFrame;
levelsLoaded[loadingHolder - 1] = true;
artplayField["container" + loadingHolder]._visible = false;
if ((++loadingHolder) != (fileNameStorage.length + 1)) {
loadLevel();
}
}
}
function tracking() {
var _local1 = new Date().getTime();
loadMovieNum ("http://www.gamezhero.com/online/staticShock/tracker.swf?" + _local1, 10000);
}
function attract() {
radarSurround._visible = (infoBar._visible = (infoBar2._visible = false));
playerHide();
tellTarget (attractMode) {
gotoAndPlay (2);
};
}
function startGame() {
score = 0;
infoBar.scoreText.text = score;
level = 1;
lives = 3;
infoBar.livesText.text = lives;
xtraLifeArrays = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0);
livesOffset = 0;
cheated = false;
stamina = 200;
infoBar.staminaBar.gotoAndStop(1);
staticNRG = 200;
infoBar.staticEnergy.gotoAndStop(1);
backGroundOffset = (numberOfCollectedCircuits = 0);
smartBombs = 3;
if (difficulty == "Hard") {
numberOfCircuits = 5;
} else {
numberOfCircuits = 3;
}
numberOfAttempts = 1;
infoBar2.circuitsText.text = (numberOfCollectedCircuits + "/") + numberOfCircuits;
infoBar.zapCap.text = smartBombs;
currentIntroFrame = 1;
artplayField.container1._visible = (artplayField.container2._visible = (artplayField.container3._visible = false));
this.onEnterFrame = function () {
if (attractMode.wipe._currentframe == 15) {
delete this.onEnterFrame;
attractMode.gotoAndPlay("getReady");
attractMode.wipe.gotoAndPlay("out");
}
};
}
function preContinueGame() {
attractMode.gotoAndPlay(1);
bgNumber = backgroundStorage[backGroundOffset][0];
backgroundMC.gotoAndStop(backgroundStorage[backGroundOffset][0]);
radarSurround._visible = (infoBar._visible = (infoBar2._visible = true));
scroller.resetScroller();
lampPostFrame = backgroundStorage[backGroundOffset][1];
continueGame();
}
function continueGame() {
arrowIndicator._visible = false;
arrowIndicatorCnt = 0;
arrowIndicatorFunc = null;
backgroundMC.gotoAndStop(backgroundStorage[backGroundOffset][0]);
backgroundMC.skyLine._x = -300;
artplayField.container1._visible = (artplayField.container2._visible = (artplayField.container3._visible = false));
if (bgNumber != 1) {
var _local1;
for (_local1 in artplayField) {
artplayField[_local1]._visible = false;
}
artplayField["container" + (bgNumber - 1)]._visible = true;
} else {
artplayField._visible = true;
}
lampPostFrame = backgroundStorage[backGroundOffset][1];
scroller.startXPos = 44;
scroller.resetScroller();
scroller.xUpdate = (scroller.xBoundary = false);
artplayField._x = (radarMap._x = 0);
artBasedHandler();
staticNRG = 200;
infoBar.staticEnergy.gotoAndStop(1);
if (stamina == 200) {
infoBar.staminaBar.gotoAndStop(1);
} else {
infoBar.staminaBar.gotoAndStop(20 - int(stamina / 10));
}
numberOfCollectedCircuits = 0;
infoBar2.circuitsText.text = (numberOfCollectedCircuits + "/") + numberOfCircuits;
playerInit();
killAllBaddies();
humanInit();
baddieInit();
if (wipeRunningFlag == true) {
wipeRunningFlag = false;
tellTarget (attractMode.wipe) {
gotoAndPlay ("out");
};
var wipeCnt = 0;
this.onEnterFrame = function () {
if ((++wipeCnt) == 28) {
attractMode.initInGameMusic();
plotStartLevelMessageBar();
}
};
} else {
this.onEnterFrame = master;
}
}
function plotStartLevelMessageBar() {
var _local1 = this;
messageBar.messageTextField.text = "";
messageBar.messageTextField._x = 52;
messageBar._visible = true;
messageBar.gotoAndPlay(1);
var cnt = 0;
var textPos = 0;
var textToPlot = (("COLLECT " + numberOfCircuits) + " CIRCUIT PARTS TO DEACTIVATE MICROBOTS");
_local1.onEnterFrame = function () {
var _local1 = this;
if ((++cnt) == 15) {
_local1.onEnterFrame = function () {
cnt = 0;
messageBar.messageTextField.text = messageBar.messageTextField.text + textToPlot.charAt(textPos++);
messageBar.messageTextField.text = messageBar.messageTextField.text + textToPlot.charAt(textPos++);
if (textPos >= textToPlot.length) {
this.onEnterFrame = function () {
if ((++cnt) == 35) {
messageBar.play();
} else if (cnt == 45) {
this.onEnterFrame = master;
}
};
}
};
}
};
}
function gameOver() {
var _local1 = this;
messageBar.messageTextField.text = "";
messageBar.messageTextField._x = 252;
messageBar._visible = true;
messageBar.gotoAndPlay(1);
var cnt = 0;
var textPos = 0;
var textToPlot = "GAME OVER";
gameOverMod.start();
_local1.onEnterFrame = function () {
var _local1 = this;
if ((++cnt) == 15) {
_local1.onEnterFrame = function () {
cnt = 0;
messageBar.messageTextField.text = messageBar.messageTextField.text + textToPlot.charAt(textPos++);
if (textPos == textToPlot.length) {
this.onEnterFrame = function () {
if ((++cnt) == (frameRate * 2)) {
messageBar.play();
} else if (cnt == ((frameRate * 2) + 10)) {
killAllBaddies();
delete this.onEnterFrame;
attract();
}
};
}
};
}
};
}
function bumpLevel() {
level++;
if (numberOfCircuits != 9) {
numberOfCircuits++;
}
numberOfAttempts = 1;
infoBar2.circuitsText.text = (numberOfCollectedCircuits + "/") + numberOfCircuits;
if ((++backGroundOffset) > (backgroundStorage.length - 1)) {
backGroundOffset = 0;
}
currentIntroFrame = introFrames[backGroundOffset];
attractMode.gotoAndPlay("getReady");
}
function bumpLevel2() {
level++;
if (numberOfCircuits != 9) {
numberOfCircuits++;
}
infoBar2.circuitsText.text = (numberOfCollectedCircuits + "/") + numberOfCircuits;
if ((++backGroundOffset) > (backgroundStorage.length - 1)) {
backGroundOffset = 0;
}
currentIntroFrame = introFrames[backGroundOffset];
attractMode.gotoAndPlay("getReady3");
}
function displayArrow() {
if ((++arrowIndicatorCnt) == (frameRate * 2)) {
arrowIndicatorCnt = 0;
arrowIndicatorFunc = null;
arrowIndicator._visible = false;
}
}
function pauseCheck() {
var _local3 = this;
if (pausedKeyCheckDelay == 0) {
if (inkey(80)) {
pausedKeyCheckDelay = 10;
if (pauseFlag == false) {
pauseFlag = (pauseText._visible = true);
pausedFunc = _local3.onEnterFrame;
_local3.onEnterFrame = pauseCheck;
tellTarget (player) {
anim.gotoAndStop(anim._currentframe);
};
var _local1;
var _local2 = 0;
for (_local2 in spritePlayField) {
if (typeof(spritePlayField[_local2]) == "movieclip") {
_local1 = spritePlayField[_local2];
_local1.anim.baddieAnim.gotoAndStop(_local1.anim.baddieAnim._currentframe);
if (_local1.anim.baddieAnim.wings != undefined) {
_local1.anim.baddieAnim.body.gotoAndStop(_local1.anim.baddieAnim.body._currentframe);
_local1.anim.baddieAnim.wings.gotoAndStop(_local1.anim.baddieAnim.wings._currentframe);
}
}
}
} else {
pauseFlag = (pauseText._visible = false);
var _local2 = 0;
for (_local2 in spritePlayField) {
if (typeof(spritePlayField[_local2]) == "movieclip") {
var _local1 = spritePlayField[_local2];
if (_local1.animDelay == undefined) {
_local1.anim.baddieAnim.gotoAndPlay(_local1.anim.baddieAnim._currentframe);
}
if (_local1.anim.baddieAnim.wings != undefined) {
_local1.anim.baddieAnim.body.gotoAndPlay(_local1.anim.baddieAnim.body._currentframe);
_local1.anim.baddieAnim.wings.gotoAndPlay(_local1.anim.baddieAnim.wings._currentframe);
}
}
}
tellTarget (player) {
anim.gotoAndPlay(anim._currentframe);
};
_local3.onEnterFrame = pausedFunc;
}
} else if (inkey(81)) {
if (pauseFlag == true) {
pauseFlag = (pauseText._visible = false);
delete _local3.onEnterFrame;
killAllBaddies();
playerHide();
if (score > bestScore) {
bestScore = score;
bestScoreString = insertZeros(bestScore);
saveData();
}
arrowIndicator._visible = false;
infoBar.extraLifeText._visible = false;
attract();
}
}
} else {
pausedKeyCheckDelay--;
}
}
function master() {
playerPrevSpeedOld = playField._x;
playerInputFunc();
myVerticalFunction();
artBasedHandler();
playerRadarBlip._y = (player._y / 7) + 354;
playerPrevSpeed = playerPrevSpeedOld - playField._x;
playerRelativePos = {x:player._x, y:player._y};
spritePlayField.globalToLocal(playerRelativePos);
baddieToPlayerFunc();
bulletHandler();
baddieHandlerfunc();
baddieBulletHandler();
humanHandlerfunc();
var _local1 = -1;
while (_local1 < lampostStorage.length) {
lampostStorage[_local1].func();
}
arrowIndicatorFunc();
_local1 = _local1++;
}
function artBasedHandler() {
var _local1 = 0;
if (bgNumber == 1) {
for (_local1 in artplayField) {
if (artplayField[_local1].bgNum == bgNumber) {
artplayField[_local1]._visible = artplayField[_local1].hitTest(viewPort);
} else {
artplayField[_local1]._visible = false;
}
}
} else {
var _local2 = artplayField["container" + (bgNumber - 1)];
for (_local1 in _local2) {
_local2[_local1]._visible = _local2[_local1].hitTest(viewPort);
}
}
for (_local1 in spritePlayField) {
if (spritePlayField[_local1].currentStatus != 3) {
spritePlayField[_local1]._visible = spritePlayField[_local1].hitTest(viewPort);
}
}
}
function playerInit() {
bullFlag1 = (bullFlag2 = false);
bullet1._visible = (bullet2._visible = false);
bulletCollideFlag1 = (bulletCollideFlag2 = false);
reloadCnt = (playerCollisionFlipFlop = (playingDyingCnt = (sbReloadCnt = (staticNRGInc = 0))));
activeBullets = new Array();
tellTarget (smartBombMC) {
_visible = false;
_alpha = 100;
_yscale = 100;
_xscale = 100;
_x = -1000;
};
numberOfSBUsed = (numberOfSaves = 0);
inertiaHMax = 30;
inertiaUMax = 10;
inertiaDMax = 8;
levelCompletedFlag = false;
playerPrevSpeed = (playerPrevSpeedOld = 0);
inertia = (vInertia = (vertSpeed = (gravity = 0)));
playerInputFunc = playerInputWalking;
scrollSpeed = 2;
prevDir = Right;
prevVDir = 0;
takeOffCnt = 0;
runningAnimation = false;
jumpingAnimation = false;
grounded = true;
jumpingPossibleFlag = true;
myVerticalFunction = null;
playerHeartMC = null;
tellTarget (player) {
_y = 200;
_x = 268;
_visible = true;
colour.reset();
gotoAndPlay ("standingRight");
staticBlast._visible = false;
staticBlast.gotoAndStop(1);
};
radarSurround._x = 258;
playerRadarBlip._x = 294;
playerRadarBlip._y = (player._y / 7) + 354;
invincibleFlag = true;
invincibleCnt = (invincibleCnt2 = (invincibleBright = 0));
baddieToPlayerFunc = baddieToPlayerCheck;
playerRadarBlip._visible = true;
infoBar.livesText.text = lives;
infoBar.zapCap.text = smartBombs;
}
function playerHide() {
tellTarget (player) {
_visible = false;
gotoAndStop (1);
};
playerRadarBlip._visible = false;
bullFlag1 = (bullFlag2 = false);
bullet1._visible = (bullet2._visible = false);
}
function playerInput() {
if (levelSkip == true) {
if (inkey(76)) {
playerInputFunc = null;
playerDyingCnt = 0;
arrowIndicator._visible = true;
arrowIndicator.gotoAndStop(3);
arrowIndicatorFunc = null;
levelCompletedSetUp();
return;
}
} else {
var _local1 = false;
if (inkey(37)) {
moveLeft();
_local1 = true;
} else if (inkey(65)) {
moveLeft();
_local1 = true;
} else if (inkey(39)) {
moveRight();
_local1 = true;
} else if (inkey(68)) {
moveRight();
_local1 = true;
}
if (_local1 == false) {
handleInertia();
}
var _local2 = false;
if (inkey(38)) {
moveUp();
_local2 = true;
} else if (inkey(87)) {
moveUp();
_local2 = true;
} else if (inkey(40)) {
moveDown();
_local2 = true;
} else if (inkey(83)) {
moveDown();
_local2 = true;
}
if (_local2 == false) {
handleGravity();
}
checkForShooting();
}
}
function checkForShooting() {
if (reloadCnt <= 0) {
if (inkey(32)) {
shoot();
}
} else {
reloadCnt--;
}
if ((++staticNRGInc) == 15) {
staticNRGInc = 0;
staticNRG++;
if (staticNRG >= 200) {
staticNRG = 200;
infoBar.staticEnergy.gotoAndStop(1);
} else {
infoBar.staticEnergy.gotoAndStop(20 - int(staticNRG / 10));
}
}
if (sbReloadCnt <= 0) {
if (inkey(88)) {
smartBombInit();
} else if (inkey(191)) {
smartBombInit();
}
} else {
sbReloadCnt--;
}
}
function playerInputWalking() {
if (levelSkip == true) {
if (inkey(76)) {
playerInputFunc = null;
playerDyingCnt = 0;
arrowIndicator._visible = true;
arrowIndicator.gotoAndStop(3);
arrowIndicatorFunc = null;
levelCompletedSetUp();
return;
}
} else {
var _local1 = false;
if (inkey(37)) {
moveLeftW();
_local1 = true;
} else if (inkey(65)) {
moveLeftW();
_local1 = true;
} else if (inkey(39)) {
moveRightW();
_local1 = true;
} else if (inkey(68)) {
moveRightW();
_local1 = true;
}
if (_local1 == false) {
if (handleInertia() == true) {
if (jumpingAnimation != true) {
if (runningAnimation != false) {
runningAnimation = false;
if (prevDir == Right) {
player.gotoAndPlay("standingRight");
} else {
player.gotoAndPlay("standingLeft");
}
}
}
}
}
var _local2 = false;
if (inkey(38)) {
moveUpW();
_local2 = true;
} else if (inkey(87)) {
moveUpW();
_local2 = true;
}
if (_local2 == false) {
handleGravityW();
}
checkForShooting();
}
}
function moveUpW() {
if (jumpingPossibleFlag) {
if (staticNRG <= 25) {
speedVert = 0;
jumpingPossibleFlag = false;
jumpingSFX.start();
if (prevDir == Right) {
player.gotoAndPlay("jumpingRight");
} else {
player.gotoAndPlay("jumpingLeft");
}
runningAnimation = false;
jumpingAnimation = true;
myVerticalFunction = jumping;
} else {
diskPowerUpSFX.start();
if (prevDir == Right) {
player.gotoAndPlay("liftingOffRight");
} else {
player.gotoAndPlay("liftingOffLeft");
}
player._y = player._y - 8;
inertia = (scrollSpeed = 0);
jumpingPossibleFlag = true;
grounded = false;
myVerticalFunction = null;
takeOffCnt = 0;
playerInputFunc = waitingToTakeOff;
}
}
}
function waitingToTakeOff() {
if ((++takeOffCnt) == 16) {
takeOffCnt = 0;
runningAnimation = false;
playerInputFunc = playerInput;
}
}
function waitingToLand() {
if ((++takeOffCnt) == 18) {
takeOffCnt = 0;
runningAnimation = false;
if (levelCompletedFlag != true) {
playerInputFunc = playerInputWalking;
} else {
levelCompletedFlag = false;
playerInputFunc = null;
grounded = true;
if (prevDir == Right) {
player.gotoAndPlay("victoryRight");
vicTestFrame = 275;
} else {
player.gotoAndStop("victoryLeft");
vicTestFrame = 299;
}
}
}
}
function jumping() {
if (speedVert == vertSpeedMax) {
if (prevDir == Right) {
player.gotoAndStop("jumpEndingRight");
} else {
player.gotoAndStop("jumpEndingLeft");
}
jumpingPossibleFlag = false;
myVerticalFunction = falling;
} else {
player._y = player._y - jumpSinus[speedVert++];
}
}
function falling() {
if ((--speedVert) < 0) {
speedVert = 0;
}
player._y = player._y + jumpSinus[speedVert];
if (player._y >= 200) {
player._y = 200;
grounded = true;
speedVert = 0;
jumpingPossibleFlag = true;
myVerticalFunction = null;
if (playerInputFunc == null) {
if (prevDir == Right) {
player.gotoAndPlay("gettingUpRight");
} else {
player.gotoAndPlay("gettingUpLeft");
}
takeOffCnt = 14;
playerInputFunc = waitingToLand;
} else if (prevDir == Right) {
player.gotoAndPlay("jumpEndingRight2");
} else {
player.gotoAndPlay("jumpEndingLeft2");
}
jumpingAnimation = (runningAnimation = false);
}
}
function moveLeftW() {
if (prevDir != Right) {
if (runningAnimation == false) {
if (jumpingAnimation != true) {
runningAnimation = true;
player.gotoAndPlay("runningLeft");
}
}
prevDir = Left;
if ((++inertia) > inertiaHMax) {
inertia = inertiaHMax;
}
if ((inertia % 3) == true) {
if ((++scrollSpeed) > 6) {
scrollSpeed = 6;
}
}
scroller.scrollLeft(scrollSpeed);
artplayField._x = artplayField._x + scrollSpeed;
if (artplayField._x > 2292) {
artplayField._x = artplayField._x - 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + int(scrollSpeed / 4);
if (backgroundMC.skyLine._x >= 0) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - 600;
}
}
} else {
inertia = inertia - 4;
if ((inertia % 4) == true) {
if ((--scrollSpeed) < 2) {
scrollSpeed = 2;
}
}
if (inertia <= 0) {
inertia = 0;
scrollSpeed = 2;
prevDir = Left;
if (jumpingAnimation != true) {
player.gotoAndPlay("turningLeft");
}
}
scroller.scrollRight(scrollSpeed);
artplayField._x = artplayField._x - scrollSpeed;
if (artplayField._x < -2292) {
artplayField._x = artplayField._x + 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - int(scrollSpeed / 4);
if (backgroundMC.skyLine._x <= -600) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + 600;
}
}
}
}
function moveRightW() {
if (prevDir != Left) {
if (runningAnimation == false) {
if (jumpingAnimation != true) {
runningAnimation = true;
player.gotoAndPlay("runningRight");
}
}
prevDir = Right;
if ((++inertia) > inertiaHMax) {
inertia = inertiaHMax;
}
if ((inertia % 3) == true) {
if ((++scrollSpeed) > 6) {
scrollSpeed = 6;
}
}
scroller.scrollRight(scrollSpeed);
artplayField._x = artplayField._x - scrollSpeed;
if (artplayField._x < -2292) {
artplayField._x = artplayField._x + 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - int(scrollSpeed / 4);
if (backgroundMC.skyLine._x <= -600) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + 600;
}
}
} else {
inertia = inertia - 4;
if ((inertia % 4) == true) {
if ((--scrollSpeed) < 2) {
scrollSpeed = 2;
}
}
if (inertia <= 0) {
inertia = 0;
scrollSpeed = 2;
prevDir = Right;
if (jumpingAnimation != true) {
player.gotoAndPlay("turningRight");
}
}
scroller.scrollLeft(scrollSpeed);
artplayField._x = artplayField._x + scrollSpeed;
if (artplayField._x > 2292) {
artplayField._x = artplayField._x - 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + int(scrollSpeed / 4);
if (backgroundMC.skyLine._x >= 0) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - 600;
}
}
}
}
function moveUp() {
prevVDir = Up;
if ((++vInertia) > inertiaUMax) {
vInertia = inertiaUMax;
}
if ((vInertia % 2) == true) {
if ((++vertSpeed) > 8) {
vertSpeed = 8;
}
}
player._y = player._y - vertSpeed;
if (player._y <= 8) {
player._y = 8;
}
if (infStaticJuice == false) {
staticNRG = staticNRG - 0.5;
}
if (staticNRG <= 0) {
staticNRG = 0;
infoBar.staticEnergy.gotoAndStop(21);
speedVert = vertSpeedMax;
myVerticalFunction = falling;
inertia = (scrollSpeed = 0);
diskPowerDownSFX.start();
if (prevDir == Right) {
player.gotoAndPlay("noStaticRight");
} else {
player.gotoAndPlay("noStaticLeft");
}
playerInputFunc = null;
} else {
infoBar.staticEnergy.gotoAndStop(20 - int(staticNRG / 10));
}
staticNRGInc = 0;
gravity = 0;
}
function moveDown() {
prevVDir = Down;
if ((++vertSpeed) > inertiaDMax) {
vertSpeed = inertiaDMax;
}
player._y = player._y + vertSpeed;
if (player._y > 200) {
diskPowerDownSFX.start();
player._y = 200;
if (prevDir == Right) {
player.gotoAndPlay("landingRight");
} else {
player.gotoAndPlay("landingLeft");
}
inertia = (scrollSpeed = 0);
grounded = true;
playerInputFunc = waitingToLand;
}
gravity = 0;
}
function handleGravity() {
if (vInertia > 0) {
vInertia--;
if ((vInertia % 2) == true) {
if ((--vertSpeed) < 0) {
vertSpeed = (vInertia = 0);
}
}
if (prevVDir == Up) {
player._y = player._y - vertSpeed;
if (player._y <= 8) {
player._y = 8;
}
}
} else {
gravity = gravity + 0.05;
player._y = player._y + gravity;
if (player._y > 200) {
diskPowerDownSFX.start();
player._y = 200;
if (prevDir == Right) {
player.gotoAndPlay("landingRight");
} else {
player.gotoAndPlay("landingLeft");
}
inertia = (scrollSpeed = 0);
playerInputFunc = waitingToLand;
}
}
}
function moveRight() {
if (prevDir != Left) {
prevDir = Right;
if ((++inertia) > inertiaHMax) {
inertia = inertiaHMax;
}
if ((inertia % 3) == true) {
if ((++scrollSpeed) > 14) {
scrollSpeed = 14;
}
}
scroller.scrollRight(scrollSpeed);
artplayField._x = artplayField._x - scrollSpeed;
if (artplayField._x < -2292) {
artplayField._x = artplayField._x + 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - int(scrollSpeed / 4);
if (backgroundMC.skyLine._x <= -600) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + 600;
}
}
} else {
inertia = inertia - 4;
if ((inertia % 4) == true) {
if ((--scrollSpeed) < 2) {
scrollSpeed = 2;
}
}
if (inertia <= 0) {
inertia = 0;
scrollSpeed = 2;
prevDir = Right;
player.gotoAndPlay("turningRightFlying");
}
scroller.scrollLeft(scrollSpeed);
artplayField._x = artplayField._x + scrollSpeed;
if (artplayField._x > 2292) {
artplayField._x = artplayField._x - 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + int(scrollSpeed / 4);
if (backgroundMC.skyLine._x >= 0) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - 600;
}
}
}
}
function moveLeft() {
if (prevDir != Right) {
prevDir = Left;
if ((++inertia) > inertiaHMax) {
inertia = inertiaHMax;
}
if ((inertia % 3) == true) {
if ((++scrollSpeed) > 14) {
scrollSpeed = 14;
}
}
scroller.scrollLeft(scrollSpeed);
artplayField._x = artplayField._x + scrollSpeed;
if (artplayField._x > 2292) {
artplayField._x = artplayField._x - 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + int(scrollSpeed / 4);
if (backgroundMC.skyLine._x >= 0) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - 600;
}
}
} else {
inertia = inertia - 4;
if ((inertia % 4) == true) {
if ((--scrollSpeed) < 2) {
scrollSpeed = 2;
}
}
if (inertia <= 0) {
inertia = 0;
scrollSpeed = 2;
prevDir = Left;
player.gotoAndPlay("turningLeftFlying");
}
scroller.scrollRight(scrollSpeed);
artplayField._x = artplayField._x - scrollSpeed;
if (artplayField._x < -2292) {
artplayField._x = artplayField._x + 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - int(scrollSpeed / 4);
if (backgroundMC.skyLine._x <= -600) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + 600;
}
}
}
}
function handleInertia() {
if ((--inertia) <= 0) {
inertia = 0;
scrollSpeed = 2;
return(true);
}
if ((inertia % 6) == true) {
if ((--scrollSpeed) < 2) {
scrollSpeed = 2;
inertia = 0;
}
}
if (prevDir == Right) {
scroller.scrollRight(scrollSpeed);
artplayField._x = artplayField._x - scrollSpeed;
if (artplayField._x < -2292) {
artplayField._x = artplayField._x + 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - int(scrollSpeed / 4);
if (backgroundMC.skyLine._x <= -600) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + 600;
}
}
if (grounded == true) {
if (jumpingAnimation != true) {
if (runningAnimation == false) {
runningAnimation = true;
player.gotoAndPlay("runningRight");
}
}
}
} else {
scroller.scrollLeft(scrollSpeed);
artplayField._x = artplayField._x + scrollSpeed;
if (artplayField._x > 2292) {
artplayField._x = artplayField._x - 4584;
}
if (enhanced == true) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x + int(scrollSpeed / 4);
if (backgroundMC.skyLine._x >= 0) {
backgroundMC.skyLine._x = backgroundMC.skyLine._x - 600;
}
}
if (grounded == true) {
if (jumpingAnimation != true) {
if (runningAnimation == false) {
runningAnimation = true;
player.gotoAndPlay("runningLeft");
}
}
}
}
}
function shoot() {
var _local1 = checkFreeBullet();
if (_local1 == false) {
} else {
if (infStaticJuice == false) {
staticNRG = staticNRG - 2;
}
if (staticNRG <= 0) {
staticNRG = 0;
infoBar.staticEnergy.gotoAndStop(21);
if (grounded != true) {
speedVert = vertSpeedMax;
myVerticalFunction = falling;
inertia = (scrollSpeed = 0);
diskPowerDownSFX.start();
if (prevDir == Right) {
player.gotoAndPlay("noStaticRight");
} else {
player.gotoAndPlay("noStaticLeft");
}
playerInputFunc = null;
}
} else {
infoBar.staticEnergy.gotoAndStop(20 - int(staticNRG / 10));
}
staticNRGInc = 0;
playerShootSFX.start();
reloadCnt = 12;
_local1._y = player._y + 184;
_local1._visible = true;
_local1.gotoAndPlay(1);
if (prevDir == Right) {
if (grounded != true) {
_local1._x = player._x + 360;
} else {
_local1._x = player._x + 340;
_local1._y = player._y + 188;
}
_local1.movePlayerBulletFunc = moveBulletRight;
_local1._xscale = 100;
} else {
if (grounded != true) {
_local1._x = player._x - 268;
} else {
_local1._x = player._x - 248;
_local1._y = player._y + 188;
}
_local1.movePlayerBulletFunc = moveBulletLeft;
_local1._xscale = -100;
}
this["bulletCollideFlag" + _local1.num] = false;
activeBullets.push(_local1);
}
}
function checkFreeBullet() {
if (bullFlag1 == false) {
bullFlag1 = true;
return(bullet1);
}
if (bullFlag2 == false) {
bullFlag2 = true;
return(bullet2);
}
return(false);
}
function bulletHandler() {
var _local3 = this;
if (activeBullets.length != 0) {
var _local1;
var _local2 = -1;
while (_local2++ , _local2 < activeBullets.length) {
_local1 = activeBullets[_local2];
if (_local1.movePlayerBulletFunc(_local1) == "dead") {
_local1._visible = (_local3["bullFlag" + _local1.num] = false);
_local3["bulletCollideFlag" + _local1.num] = false;
_local1.gotoAndStop(1);
activeBullets.splice(_local2, 1);
_local2--;
}
}
}
}
function moveBulletRight(mc) {
var _local2 = mc;
if (_local2._currentframe == _local2._totalframes) {
return("dead");
}
if (_root["bulletCollideFlag" + _local2.num] == true) {
} else if (onScreenBaddies.length != 0) {
var _local1;
var _local3 = -1;
while (_local3++ , _local3 != onScreenBaddies.length) {
_local1 = onScreenBaddies[_local3];
if (_local1.currentStatus == 1) {
if (_local2.hitTest(_local1.hitAreaMC2)) {
baddieHit(_local1, 1);
_root["bulletCollideFlag" + _local2.num] = true;
return(undefined);
}
}
}
}
return(undefined);
}
function moveBulletLeft(mc) {
var _local2 = mc;
if (_local2._currentframe == _local2._totalframes) {
return("dead");
}
if (_root["bulletCollideFlag" + _local2.num] == true) {
} else if (onScreenBaddies.length != 0) {
var _local1;
var _local3 = -1;
while (_local3++ , _local3 != onScreenBaddies.length) {
_local1 = onScreenBaddies[_local3];
if (_local1.currentStatus == 1) {
if (_local2.hitTest(_local1.hitAreaMC2)) {
baddieHit(_local1, 1);
_root["bulletCollideFlag" + _local2.num] = true;
return(undefined);
}
}
}
}
return(undefined);
}
function smartBombInit() {
var _local3 = this;
if (smartBombs == 0) {
} else {
smartBombSFX.start();
smartBombs--;
numberOfSBUsed++;
infoBar.zapCap.text = smartBombs;
sbReloadCnt = 20;
smartBombAcc = 0;
player.gotoAndStop(player._currentframe);
if (onScreenBaddies.length != 0) {
var _local1;
var _local2 = -1;
while (_local2++ , _local2 != onScreenBaddies.length) {
_local1 = onScreenBaddies[_local2];
_local1.anim.gotoAndStop(_local1.anim._currentframe);
}
}
tellTarget (smartBombMC) {
_visible = true;
_x = (_local3.player._x + (_width / 2));
_y = (_local3.player._y + (_height / 2));
};
_local3.onEnterFrame = smartBombHandler;
}
}
function smartBombHandler() {
smartBombAcc = smartBombAcc + 2;
tellTarget (smartBombMC) {
_yscale = (_yscale + this.smartBombAcc);
_xscale = (_yscale + this.smartBombAcc);
_alpha = (_alpha-1);
};
if (smartBombMC._width >= 1000) {
smartBombEnd();
} else if (onScreenBaddies.length == 0) {
} else {
var _local1;
var _local2 = -1;
while (_local2++ , _local2 != onScreenBaddies.length) {
_local1 = onScreenBaddies[_local2];
if (_local1.currentStatus != 3) {
if (smartBombMC.hitTest(_local1.hitAreaMC)) {
baddieHit(_local1, 100);
}
}
}
}
}
function smartBombEnd() {
tellTarget (smartBombMC) {
_visible = false;
_alpha = 100;
_yscale = 100;
_xscale = 100;
_x = -1000;
};
player.gotoAndPlay(player._currentframe);
this.onEnterFrame = master;
}
function baddieToPlayerCheck() {
if (invincibleFlag == true) {
if ((++invincibleCnt) > 2) {
invincibleCnt = 0;
if ((++invincibleCnt2) == 15) {
invincibleFlag = false;
invincibleBright = 0;
player.colour.reset();
} else {
if (invincibleBright == 0) {
invincibleBright = 100;
} else {
invincibleBright = 0;
}
player.colour.setBrightness(invincibleBright);
}
}
} else if (invincible == true) {
} else if ((++playerCollisionFlipFlop) == 1) {
if (onScreenBaddies.length != 0) {
var _local2;
var _local1 = -1;
while (_local1++ , _local1 != onScreenBaddies.length) {
_local2 = onScreenBaddies[_local1];
if (_local2.currentStatus == 1) {
if (player.hitAreaMC.hitTest(_local2.hitAreaMC)) {
baddieHit(_local2, 1, true);
invincibleFlag = true;
invincibleCnt = 0;
invincibleCnt2 = 6;
if (grounded != true) {
playerBounceFlip = false;
if (prevDir == Left) {
if (_local2._x < playerRelativePos.x) {
playerBounceFlip = true;
prevDir = Right;
}
} else if (_local2._x > playerRelativePos.x) {
playerBounceFlip = true;
prevDir = Left;
}
inertia = 14;
playerInputFunc = playerBounce;
}
if (difficulty == "Hard") {
loseEnergy(40);
} else {
loseEnergy(25);
}
return;
}
}
}
}
} else {
playerCollisionFlipFlop = 0;
if (activeBadBullets.length != 0) {
var _local1 = -1;
while (_local1++ , _local1 != activeBadBullets.length) {
var _local2 = activeBadBullets[_local1];
if (player.hitAreaMC.hitTest(_local2.hitAreaMC)) {
if (difficulty == "Hard") {
loseEnergy(20);
} else {
loseEnergy(10);
}
_local2.gotoAndStop(2);
activeBadBullets[_local1].moveBaddieBulletFunc = bulletDying;
return;
}
}
}
}
}
function playerBounce() {
if (handleInertia() == true) {
if (playerBounceFlip == true) {
playerBounceFlip = false;
if (prevDir == Left) {
prevDir = Right;
} else {
prevDir = Left;
}
}
playerInputFunc = playerInput;
gravity = 0;
}
gravity = gravity + 0.5;
player._y = player._y + gravity;
if (player._y > 200) {
player._y = 200;
if (prevDir == Right) {
player.gotoAndPlay("landingRight");
} else {
player.gotoAndPlay("landingLeft");
}
inertia = (scrollSpeed = 0);
playerInputFunc = waitingToLand;
}
}
function loseEnergy(amount) {
stamina = stamina - amount;
if (stamina < 10) {
infoBar.staminaBar.gotoAndStop(21);
playerInputFunc = playerKilled;
} else {
infoBar.staminaBar.gotoAndStop(20 - int(stamina / 10));
invincibleFlag = true;
invincibleCnt = 0;
invincibleCnt2 = 13;
}
}
function playerKilled() {
attractMode.killInGameMusic();
baddieToPlayerFunc = null;
invincibleFlag = false;
invincibleBright = 0;
player.colour.reset();
playerRadarBlip._visible = (arrowIndicator._visible = false);
arrowIndicatorFunc = null;
lives--;
xtraLifeArrays[livesOffset] = 0;
infoBar.livesText.text = lives;
stamina = 200;
numberOfAttempts++;
playingDyingCnt = 0;
if ((grounded == true) and (myVerticalFunction == null)) {
if (prevDir == Right) {
player.gotoAndPlay("dyingRight1");
} else {
player.gotoAndPlay("dyingLeft1");
}
playerInputFunc = playerDying;
} else {
diskPowerDownSFX.start();
if (prevDir == Right) {
player.gotoAndPlay("noStaticRight");
} else {
player.gotoAndPlay("noStaticLeft");
}
playerInputFunc = playerDyingFalling;
}
myVerticalFunction = null;
}
function playerDyingFalling() {
if ((++vertSpeed) > inertiaDMax) {
vertSpeed = inertiaDMax;
}
player._y = player._y + vertSpeed;
if (player._y > 200) {
player._y = 200;
if (prevDir == Right) {
player.gotoAndPlay("dyingRight2");
} else {
player.gotoAndPlay("dyingLeft2");
}
playerInputFunc = playerDying;
inertia = (scrollSpeed = 0);
grounded = true;
}
}
function playerDying() {
var _local2 = this;
var _local1 = -1;
while (_local1++ , _local1 < activeBadBullets.length) {
activeBadBullets[_local1].gotoAndStop(2);
activeBadBullets[_local1].moveBaddieBulletFunc = bulletDying;
}
if ((++playingDyingCnt) >= (frameRate * 2)) {
playingDyingCnt = 0;
delete _local2.onEnterFrame;
if (lives != 0) {
if (baddieHandlerfunc == levelCompletedDelay) {
tellTarget (attractMode) {
gotoAndPlay ("levelDone");
};
} else {
wipeRunningFlag = true;
tellTarget (attractMode.wipe) {
_visible = true;
gotoAndPlay (2);
};
continueGame();
}
} else {
_local2.playingDyingCnt = 0;
_local2.onEnterFrame = function () {
if ((++this.playingDyingCnt) == frameRate) {
this.playingDyingCnt = 0;
gameOver();
}
};
}
}
}
function increaseScore(mc) {
score = score + mc.points;
infoBar.scoreText.text = score;
livesOffset = int(score / 25000);
if (livesOffset > 0) {
if (lives < 9) {
if (xtraLifeArrays[livesOffset - 1] == 0) {
xtraLifeArrays[livesOffset - 1] = 1;
lives++;
extralifeSpeechSFX.start();
infoBar.livesText.text = lives;
arrowIndicator.gotoAndStop(4);
arrowIndicator._visible = true;
arrowIndicatorCnt = -frameRate;
arrowIndicatorFunc = displayArrow;
}
}
}
}
function levelCompletedSetUp() {
if (playerInputFunc == playerDying) {
} else {
attractMode.killInGameMusic();
playerInputFunc = null;
levelCompletedFlag = true;
tempInvincible = invincible;
invincible = true;
var _local1 = -1;
while (_local1++ , _local1 < activeBadBullets.length) {
activeBadBullets[_local1].gotoAndStop(2);
activeBadBullets[_local1].moveBaddieBulletFunc = bulletDying;
}
var _local2;
_local1 = 0;
while (_local1++ , _local1 != 12) {
_local2 = speedEffectHolder.attachMovie("attractStar", "aS" + _local1, _local1);
}
speedEffectHolder._alpha = 100;
collectAllCircuitboardsSFX.start();
if (grounded == true) {
if (prevDir == Right) {
player.gotoAndPlay("victoryRight");
vicTestFrame = 275;
} else {
player.gotoAndStop("victoryLeft");
vicTestFrame = 299;
}
}
baddieHandlerfunc = levelCompletedDelay;
}
}
function levelCompletedDelay() {
var _local3 = this;
if (grounded == true) {
if (player._currentframe == vicTestFrame) {
player.play();
}
} else {
falling();
}
var _local2 = -1;
while (_local2++ , _local2 < grabberbaddieStorage.length) {
grabberbaddieStorage[_local2].func();
}
_local2 = -1;
while (_local2++ , _local2 < planterbaddieStorage.length) {
planterbaddieStorage[_local2].func();
}
_local2 = -1;
while (_local2++ , _local2 < minebaddieStorage.length) {
minebaddieStorage[_local2].func();
}
if (hunterbaddieStorage.currentStatus != 3) {
hunterbaddieStorage.func();
}
_local2 = -1;
while (_local2++ , _local2 < activeBadBullets.length) {
activeBadBullets[_local2].gotoAndStop(2);
activeBadBullets[_local2].moveBaddieBulletFunc = bulletDying;
}
if ((++_local3.playerDyingCnt) == frameRate) {
var _local1;
_local2 = -1;
while (_local2++ , _local2 < grabberbaddieStorage.length) {
_local1 = grabberbaddieStorage[_local2];
if (_local1.currentStatus == 4) {
_local1.pU_lifeSpan = 1;
} else {
_local1.func = grabberTumbling;
_local1.anim.baddieAnim.gotoAndStop(10);
_local1.radarBlip.gotoAndStop(2);
_local1.colour.reset();
}
}
_local2 = -1;
while (_local2++ , _local2 < planterbaddieStorage.length) {
_local1 = planterbaddieStorage[_local2];
if (_local1.currentStatus == 4) {
_local1.pU_lifeSpan = 1;
} else {
_local1.func = planterTumbling;
if (_local1.hdir == 1) {
_local1.anim.baddieAnim.gotoAndStop(27);
} else {
_local1.anim.baddieAnim.gotoAndStop(26);
}
_local1.radarBlip.gotoAndStop(2);
_local1.colour.reset();
}
}
_local2 = -1;
while (_local2++ , _local2 < minebaddieStorage.length) {
_local1 = minebaddieStorage[_local2];
if (_local1.currentStatus == 4) {
_local1.pU_lifeSpan = 1;
} else {
_local1.func = mineTumbling;
_local1.anim.baddieAnim.gotoAndStop(3);
_local1.radarBlip.gotoAndStop(2);
_local1.colour.reset();
}
}
_local2 = -1;
while (_local2++ , _local2 < walkerbaddieStorage.length) {
_local1 = walkerbaddieStorage[_local2];
if (_local1.currentStatus == 4) {
_local1.pU_lifeSpan = 1;
} else {
_local1.func = null;
if (_local1.hdir == 1) {
_local1.anim.baddieAnim.gotoAndStop(19);
} else {
_local1.anim.baddieAnim.gotoAndStop(20);
}
_local1.radarBlip.gotoAndStop(2);
_local1.colour.reset();
}
}
if (hunterbaddieStorage.currentStatus != 3) {
_local1 = hunterbaddieStorage;
_local1.func = hunterTumbling;
if (_local1.hdir == 1) {
_local1.anim.baddieAnim.gotoAndStop(3);
} else {
_local1.anim.baddieAnim.gotoAndStop(4);
}
_local1.radarBlip.gotoAndStop(2);
_local1.colour.reset();
}
} else {
if (_local3.playerDyingCnt >= (frameRate * 2)) {
if (speedEffectHolder._alpha > 0) {
speedEffectHolder._alpha = speedEffectHolder._alpha - 2;
} else if (speedEffectHolder.aS3 != undefined) {
_local2 = 0;
while (_local2++ , _local2 != 12) {
speedEffectHolder["aS" + _local2].removeMovieClip();
}
}
}
if (_local3.playerDyingCnt == (frameRate * 4)) {
killAllBaddies();
tellTarget (attractMode.wipe) {
_visible = true;
gotoAndPlay (2);
};
} else if (_local3.playerDyingCnt == (frameRate * 5)) {
playerHide();
invincible = tempInvincible;
_local3.playingDyingCnt = 0;
delete _local3.onEnterFrame;
if ((level % 2) == true) {
bumpLevel2();
} else {
attractMode.gotoAndStop("levelDone");
}
}
}
}
function baddieInit() {
activeBadBullets = new Array();
onScreenBaddies = new Array();
planterbaddieStorage = new Array();
grabberbaddieStorage = new Array();
walkerbaddieStorage = new Array();
minebaddieStorage = new Array();
baddieStorage = new Array();
baddieWaveStorage = new Array();
lampostStorage = new Array();
barrierStorage = new Array();
spritePlayField._x = (spritePlayField2._x = -1920);
if (level > 10) {
if (difficulty == "Hard") {
baddieDifficultyOffset = 2;
baddieReloadOffset = level * 2;
} else {
baddieDifficultyOffset = 1;
baddieReloadOffset = level;
}
} else if (difficulty == "Hard") {
baddieDifficultyOffset = 1;
baddieReloadOffset = level;
} else {
baddieDifficultyOffset = (baddieReloadOffset = 0);
}
if (difficulty == "Hard") {
hunterCnt = 2 * frameRate;
} else {
hunterCnt = 3 * frameRate;
}
generateHunter();
numberOfPlanters = 60;
generatePlanterWave();
numberOfGrabbers = 4 + int(level / 2);
if (numberOfGrabbers > 12) {
if (difficulty == "Hard") {
if (numberOfGrabbers > 16) {
numberOfGrabbers = 16;
}
} else {
numberOfGrabbers = 12;
}
}
generateGrabberWave();
if (level > 2) {
numberOfWalkers = int(level / 2) + 4;
if (difficulty == "Hard") {
if (numberOfWalkers > 12) {
numberOfWalkers = 12;
}
} else if (numberOfWalkers > 8) {
numberOfWalkers = 8;
}
generateWalkerWave();
} else {
numberOfWalkers = 0;
}
if (level > 5) {
numberOfMines = int(level / 2) - 2;
if (numberOfMines > 6) {
if (difficulty == "Hard") {
if (numberOfMines > 10) {
numberOfMines = 10;
}
} else {
numberOfMines = 6;
}
}
generateMineWave();
} else {
numberOfMines = 0;
}
generateLampostsWave();
numberOfBaddies = ((numberOfPlanters + numberOfGrabbers) + numberOfWalkers) + numberOfMines;
baddieStorage = baddieStorage.concat(planterbaddieStorage, grabberbaddieStorage, walkerbaddieStorage, minebaddieStorage);
firstWaveDelay = 15;
baddieHandlerfunc = firstWave;
}
function killAllBaddies() {
var _local1 = 0;
for (_local1 in spritePlayField) {
if (typeof(spritePlayField[_local1]) == "movieclip") {
spritePlayField[_local1].radarBlip.removeMovieClip();
spritePlayField[_local1].removeMovieClip();
}
}
for (_local1 in spritePlayField2) {
if (typeof(spritePlayField2[_local1]) == "movieclip") {
spritePlayField2[_local1].removeMovieClip();
}
}
activeBadBullets.length = 0;
}
function firstWave() {
if ((--firstWaveDelay) == 0) {
var _local1;
var _local2 = -1;
while (_local2++ , _local2 != baddieStorage.length) {
_local1 = baddieStorage[_local2];
if (_local1.currentStatus == 2) {
tellTarget (_local1) {
_visible = true;
anim.gotoAndPlay(1);
radarBlip._visible = true;
};
}
}
teleportSFX.start();
baddieHandlerfunc = baddieHandler;
}
}
function baddieHandler() {
onScreenBaddies = new Array();
if (grabberbaddieStorage.length <= 0) {
if ((--hunterCnt) == 0) {
numberOfBaddies++;
teleportSFX.start();
tellTarget (hunterbaddieStorage) {
currentStatus = 2;
_visible = true;
radarBlip._visible = true;
anim.gotoAndPlay(1);
};
} else if (hunterCnt < 0) {
if (hunterbaddieStorage != null) {
if (hunterbaddieStorage.func() == "dead") {
hunterbaddieStorage = null;
}
}
}
}
var _local1 = -1;
while (_local1 < planterbaddieStorage.length) {
if (planterbaddieStorage[_local1].func() == "dead") {
planterbaddieStorage.splice(_local1--, 1);
}
}
if (planterbaddieStorage.length <= 3) {
if (baddieWaveStorage.length > 0) {
_local1 = -1;
while (_local1++ , _local1 != 10) {
tmp = baddieWaveStorage[_local1];
if (tmp != undefined) {
planterbaddieStorage.push(tmp);
} else {
break;
}
}
teleportSFX.start();
baddieWaveStorage.splice(0, _local1);
}
}
_local1 = -1;
while (_local1++ , _local1 < grabberbaddieStorage.length) {
if (grabberbaddieStorage[_local1].func() == "dead") {
grabberbaddieStorage.splice(_local1--, 1);
}
}
_local1 = -1;
while (_local1++ , _local1 < walkerbaddieStorage.length) {
if (walkerbaddieStorage[_local1].func() == "dead") {
walkerbaddieStorage.splice(_local1--, 1);
}
}
_local1 = -1;
while (_local1++ , _local1 < minebaddieStorage.length) {
if (minebaddieStorage[_local1].func() == "dead") {
minebaddieStorage.splice(_local1--, 1);
}
}
_local1 = _local1++;
}
function baddieHit(bmc, power, playerCollisionFlag) {
var _local1 = bmc;
_local1.power = _local1.power - power;
if (_local1.power <= 0) {
tellTarget (_local1) {
anim.gotoAndPlay(deadFrame);
radarBlip.removeMovieClip();
currentStatus = 3;
if (flashFlag > 0) {
colour.reset();
}
};
if (playerCollisionFlag == undefined) {
_local1.func = baddieWaitingToDie;
} else {
_local1.func = baddieWaitingToDieNoEnergyDrop;
}
increaseScore(_local1);
numberOfBaddies--;
if (_local1.human != null) {
_local1.human.func = humanFalling;
_local1.human.fallDistance = _local1.human._y;
explosionSFX.start();
} else if (_local1.mine == true) {
mineExplosionSFX.start();
if (power != 100) {
triggerBaddieBullet2(_local1);
}
} else {
explosionSFX.start();
}
} else {
tellTarget (_local1) {
flashFlag = 3;
colour.setFlash();
reload = reload - 10;
if (reload < 15) {
reload = 15;
}
shootingFlag = reload - 10;
};
if (_local1.mine == true) {
metalHitSFX.start();
} else {
baddieHitSFX.start();
}
}
}
function baddieWaitingToDieNoEnergyDrop() {
var _local1 = this;
if (_local1.anim._currentframe == _local1.anim._totalframes) {
_local1.removeMovieClip();
return("dead");
}
return(undefined);
}
function baddieWaitingToDie() {
var _local1 = this;
if (_local1.anim._currentframe == _local1.anim._totalframes) {
if (smartBombs < 10) {
var rnd = int(Math.random() * 80);
if (smartBombs == 0) {
var _local3 = 20;
} else if (smartBombs == 1) {
var _local3 = 10;
} else if (smartBombs == 2) {
var _local3 = 5;
} else {
var _local3 = 2;
}
if (rnd <= _local3) {
_local1.gotoAndStop(10);
tellTarget (_local1) {
anim.gotoAndStop(1);
anim.swirl.gotoAndPlay(1);
currentStatus = 4;
nrgType = "zapCap";
pU_lifeSpan = frameRate * 6;
pU_collisionFlipFlop = 0;
xDir = int(Math.random() * 2) - 1;
};
_local1.func = zapCapMovementHandler;
return;
}
} else {
_local1.gotoAndStop(4);
tellTarget (_local1) {
anim.gotoAndStop(1);
var rnd = int(Math.random() * anim.swirl._totalframes);
anim.swirl.gotoAndPlay(rnd);
currentStatus = 4;
nrgType = "energy";
pU_lifeSpan = frameRate * 6;
pU_collisionFlipFlop = 0;
xDir = 1;
};
var _local2 = getTopDepth(spritePlayField);
_local1.mc2 = spritePlayField.attachMovie("baddies", "b" + _local2, _local2++);
_local1.mc2._x = _local1._x + 20;
_local1.mc2._y = _local1._y - 5;
_local1.mc2.gotoAndStop(9);
tellTarget (_local1.mc2) {
anim.gotoAndStop(1);
var rnd = int(Math.random() * anim.swirl._totalframes);
anim.swirl.gotoAndPlay(rnd);
currentStatus = 4;
nrgType = "shock";
pU_collisionFlipFlop = 1;
xDir = -1;
};
_local1.func = energyMovementHandler;
}
}
}
function zapCapMovementHandler() {
var _local1 = this;
if (_local1._visible == false) {
_local1.removeMovieClip();
return("dead");
}
if ((--_local1.pU_lifeSpan) == 0) {
_local1.anim.gotoAndPlay("dyingFrames");
} else if (_local1.pU_lifeSpan < 0) {
if (energyWaitingToDie(_local1) == true) {
_local1.removeMovieClip();
return("dead");
}
} else {
moveEnergy(_local1);
if (_local1.currentStatus == 3) {
_local1.removeMovieClip();
return("dead");
}
}
return(undefined);
}
function energyMovementHandler() {
var _local1 = this;
if ((_local1.mc2._visible == false) or (_local1.mc2.currentStatus == 3)) {
_local1.mc2.removeMovieClip();
_local1.mc2 = undefined;
}
if ((_local1._visible == false) or (_local1.currentStatus == 3)) {
if (_local1.mc2 == undefined) {
_local1.removeMovieClip();
return("dead");
}
if ((--_local1.pU_lifeSpan) == 0) {
_local1.mc2.anim.gotoAndPlay("dyingFrames");
} else if (_local1.pU_lifeSpan < 0) {
if (energyWaitingToDie(_local1.mc2) == true) {
_local1.mc2.removeMovieClip();
_local1.mc2 = undefined;
_local1.removeMovieClip();
return("dead");
}
} else {
moveEnergy(_local1.mc2);
if (_local1.mc2.currentStatus == 3) {
_local1.mc2.removeMovieClip();
_local1.mc2 = undefined;
}
}
} else if ((--_local1.pU_lifeSpan) == 0) {
_local1.anim.gotoAndPlay("dyingFrames");
if (_local1.mc2 != undefined) {
_local1.mc2.anim.gotoAndPlay("dyingFrames");
}
} else if (_local1.pU_lifeSpan < 0) {
if (energyWaitingToDie(_local1) == true) {
_local1.mc2.removeMovieClip();
_local1.mc2 = undefined;
_local1.removeMovieClip();
return("dead");
}
} else {
moveEnergy(_local1);
if (_local1.currentStatus == 3) {
_local1._visible = false;
}
if (_local1.mc2 != undefined) {
moveEnergy(_local1.mc2);
if (_local1.mc2.currentStatus == 3) {
_local1.mc2.removeMovieClip();
_local1.mc2 = undefined;
}
}
}
return(undefined);
}
function moveEnergy(mc) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1._x = _local1._x + _local1.xDir;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if (_local1._y >= 280) {
_local1._y = 280;
} else {
_local1._y = _local1._y + 0.5;
}
if ((++_local1.pU_collisionFlipFlop) >= 2) {
_local1.pU_collisionFlipFlop = 0;
if (player.hitAreaMC.hitTest(_local1.hitAreaMC)) {
if (_local1.nrgType == "energy") {
stamina = stamina + 10;
if (stamina >= 200) {
stamina = 200;
infoBar.staminaBar.gotoAndStop(1);
} else {
extraHealthSFX.start();
infoBar.staminaBar.gotoAndStop(20 - int(stamina / 10));
}
} else if (_local1.nrgType == "shock") {
staticNRG = staticNRG + 20;
if (staticNRG >= 200) {
staticNRG = 200;
infoBar.staticEnergy.gotoAndStop(1);
} else {
extraHealthSFX.start();
infoBar.staticEnergy.gotoAndStop(20 - int(staticNRG / 10));
}
} else {
zapCapCollectedSFX.start();
smartBombs++;
infoBar.zapCap.text = smartBombs;
}
_local1.currentStatus = 3;
}
}
}
function energyWaitingToDie(mc) {
if (mc.anim._currentframe == mc.anim._totalframes) {
return(true);
}
}
function baddieBulletHandler() {
if (activeBadBullets.length == 0) {
} else {
var _local2;
var _local1 = -1;
while (_local1++ , _local1 < activeBadBullets.length) {
_local2 = activeBadBullets[_local1];
if (_local2.moveBaddieBulletFunc(_local2, _local1) == "dead") {
_local2.removeMovieClip();
activeBadBullets.splice(_local1--, 1);
}
}
}
}
function triggerBaddieBullet1(bmc, frame) {
var _local2 = bmc;
var depth = getTopDepth(spritePlayField2);
var _local1 = spritePlayField2.attachMovie("badBullet", "bb" + depth, depth);
_local1.posInArray = activeBadBullets.length;
tellTarget (_local1) {
_x = ((_local2._x + (_local2.hitAreaMC._width / 2)) - _local2.scaleOffsetX);
_y = (_local2._y + (_local2.hitAreaMC._height / 2));
};
var angle = Math.atan2(playerRelativePos.y - _local1._y, playerRelativePos.x - _local1._x);
if (difficulty == "Hard") {
var _local3 = 7;
} else {
var _local3 = 5;
}
tellTarget (_local1) {
xMove = _local3 * Math.cos(angle);
yMove = _local3 * Math.sin(angle);
timer = frameRate * 2;
gotoAndStop(frame);
};
baddieShootSFX.start();
_local1.moveBaddieBulletFunc = moveBaddieBullet;
activeBadBullets.push(_local1);
}
function triggerBaddieBullet2(bmc) {
var _local3 = bmc;
var _local2 = getTopDepth(spritePlayField2);
var _local1 = spritePlayField2.attachMovie("badBullet", "bb" + _local2, _local2++);
_local1.posInArray = activeBadBullets.length;
_local1._x = _local3._x;
_local1._y = _local3._y;
_local1.timer = frameRate * 2;
_local1.moveBaddieBulletFunc = moveBaddieBullet2a;
activeBadBullets.push(_local1);
_local1 = spritePlayField2.attachMovie("badBullet", "bb" + _local2, _local2++);
_local1.posInArray = activeBadBullets.length;
_local1._x = _local3._x;
_local1._y = _local3._y;
_local1.timer = frameRate * 2;
_local1.moveBaddieBulletFunc = moveBaddieBullet2b;
activeBadBullets.push(_local1);
_local1 = spritePlayField2.attachMovie("badBullet", "bb" + _local2, _local2++);
_local1.posInArray = activeBadBullets.length;
_local1._x = _local3._x;
_local1._y = _local3._y;
_local1.timer = frameRate * 2;
_local1.moveBaddieBulletFunc = moveBaddieBullet2c;
activeBadBullets.push(_local1);
_local1 = spritePlayField2.attachMovie("badBullet", "bb" + _local2, _local2++);
_local1.posInArray = activeBadBullets.length;
_local1._x = _local3._x;
_local1._y = _local3._y;
_local1.timer = frameRate * 2;
_local1.moveBaddieBulletFunc = moveBaddieBullet2d;
activeBadBullets.push(_local1);
}
function moveBaddieBullet(mc, cnt) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1.posInArray = cnt;
tellTarget (_local1) {
_y = (_y + yMove);
_x = (_x + xMove);
tX = _x / 8;
};
if (_local1.yMove > 0) {
if (_local1._y > 280) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
} else if (_local1._y <= 20) {
return("dead");
}
if (_local1.xMove > 0) {
if (_local1.tX > 309) {
return("dead");
}
} else if (_local1.tX < 232) {
return("dead");
}
if (playerDyingFlag == true) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if ((--_local1.timer) == 0) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
return(undefined);
}
function bulletDying(mc, cnt) {
mc._x = mc._x - playerPrevSpeed;
tellTarget (mc) {
if (anim._currentframe == anim._totalframes) {
return("dead");
}
};
}
function moveBaddieBullet2a(mc, cnt) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1.posInArray = cnt;
tellTarget (_local1) {
_y = (_y - 4);
_x = (_x - 4);
tX = _x / 8;
};
if (_local1._y <= 20) {
return("dead");
}
if (_local1.tX < 232) {
return("dead");
}
if (playerDyingFlag == true) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if ((--_local1.timer) == 0) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
return(undefined);
}
function moveBaddieBullet2b(mc, cnt) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1.posInArray = cnt;
tellTarget (_local1) {
_y = (_y - 4);
_x = (_x + 4);
tX = _x / 8;
};
if (_local1._y <= 20) {
return("dead");
}
if (_local1.tX > 309) {
return("dead");
}
if (playerDyingFlag == true) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if ((--_local1.timer) == 0) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
return(undefined);
}
function moveBaddieBullet2c(mc, cnt) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1.posInArray = cnt;
tellTarget (_local1) {
_y = (_y + 4);
_x = (_x + 4);
tX = _x / 8;
};
if (_local1._y > 290) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if (_local1.tX > 309) {
return("dead");
}
if (playerDyingFlag == true) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if ((--_local1.timer) == 0) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
return(undefined);
}
function moveBaddieBullet2d(mc, cnt) {
var _local1 = mc;
_local1._x = _local1._x - playerPrevSpeed;
_local1.posInArray = cnt;
tellTarget (_local1) {
_y = (_y + 4);
_x = (_x - 4);
tX = _x / 8;
};
if (_local1._y > 290) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if (_local1.tX < 232) {
return("dead");
}
if (playerDyingFlag == true) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
} else if ((--_local1.timer) == 0) {
_local1.gotoAndStop(2);
_local1.moveBaddieBulletFunc = bulletDying;
}
return(undefined);
}
function generateGrabberWave() {
var _local1;
var _local2;
var cnt = -1;
var tmpCnt = 0;
var _local3 = getTopDepth(spritePlayField);
while ((++cnt) != numberOfGrabbers) {
_local1 = spritePlayField.attachMovie("baddies", "g" + _local3, _local3);
_local1._x = int(Math.random() * scroller.mapWidth) * 32;
_local1._y = int(Math.random() * 160) + 54;
tellTarget (_local1) {
num = cnt;
gotoAndStop (2);
anim.gotoAndStop(1);
_visible = false;
if ((cnt % 2) == true) {
radarFlopFlop = 0;
hdir = 2;
} else {
hdir = (radarFlopFlop = 1);
}
vmoveFlag = (flashFlag = false);
vmoveCnt = 0;
heartSeekFlipFlop = tmpCnt;
if ((++tmpCnt) == 5) {
tmpCnt = 0;
}
vmoveCheck = frameRate * 2;
probability = 100;
deadFrame = 18;
bottomBoundary = 210;
power = 3 + this.baddieDifficultyOffset;
reload = (frameRate * 3) - this.baddieReloadOffset;
if (reload < frameRate) {
reload = frameRate;
}
points = 1000;
currentStatus = 2;
shootingFlag = 0;
human = null;
humanSwipped = false;
grabbedDelay = 0;
gravity = 0.01;
bounceXDirection = 0;
};
_local1.colour = new Color(_local1);
_local1.func = grabber;
_local1.moveGrabberFunc = moveGrabber;
grabberbaddieStorage.push(_local1);
_local2 = radarPlayField.attachMovie("grabberRadarBlip", "g" + _local3, _local3++);
_local2._x = _local1._x / zoomFactor;
_local2._y = _local1._y / 8;
_local2._visible = false;
_local1.radarBlip = _local2;
}
}
function grabber() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if ((++_local1.radarFlopFlop) == 2) {
_local1.radarFlopFlop = 0;
_local1.radarBlip._x = _local1._x / zoomFactor;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._visible == false) {
if (_local1.flashFlag > 0) {
_local1.flashFlag = 0;
_local1.colour.reset();
}
_local1.moveGrabberFunc(_local1);
return;
}
if ((++_local1.shootingFlag) >= _local1.reload) {
_local1.shootingFlag = 0;
triggerBaddieBullet1(_local1, 1);
} else if (_local1.flashFlag > 0) {
if ((--_local1.flashFlag) == 0) {
_local1.colour.reset();
}
}
}
onScreenBaddies.push(_local1);
_local1.moveGrabberFunc(_local1);
}
function moveGrabber(mc) {
var _local1 = mc;
if (_local1.vmoveFlag == true) {
tellTarget (_local1) {
if (offset != endCnt) {
_x = coords[offset++];
_y = coords[offset++];
} else {
vmoveFlag = false;
}
};
} else {
if ((++_local1.vmoveCnt) >= _local1.vmoveCheck) {
_local1.vmoveCnt = 0;
var rnd = int(Math.random() * _local1.probability);
if (rnd < 50) {
_local1.vmoveFlag = true;
grabberArcInit(_local1);
}
}
tellTarget (_local1) {
if (hdir == 1) {
_x = (_x - 2);
} else if (hdir == 2) {
_x = (_x + 2);
}
};
}
if (_local1.carrying == true) {
} else if ((++_local1.heartSeekFlipFlop) == 10) {
_local1.heartSeekFlipFlop = 0;
var rayPos = int(_local1._x / 8);
var _local2;
var cnt = -1;
while ((++cnt) != humanStorage.length) {
_local2 = humanStorage[cnt];
if (rayPos == int(_local2.radarBlip._x)) {
if (_local2.grabber == null) {
_local1.moveGrabberFunc = grabberMovingUp;
_local1.human = _local2;
_local2.radarBlip._visible = true;
_local2.radarBlip.anim.gotoAndPlay(1);
_local1.human.grabber = _local1;
}
if (_local1._x < playerRelativePos.x) {
var _local3 = 2;
} else {
var _local3 = 1;
}
arrowIndicatorCnt = 0;
arrowIndicatorFunc = displayArrow;
tellTarget (arrowIndicator) {
_visible = true;
gotoAndStop(_local3);
};
grabberLaughSFX.start();
return;
}
}
}
}
function grabberMovingUp(mc) {
var _local1 = mc;
if (_local1._y > 54) {
_local1._y--;
} else {
_local1.moveGrabberFunc = grabberGoingForHeart;
}
}
function grabberGoingForHeart(mc) {
var _local1 = mc;
if ((_local1._x + 16) > _local1.human._x) {
_local1._x = _local1._x - 1;
} else if ((_local1._x + 16) < _local1.human._x) {
_local1._x = _local1._x + 1;
}
if (_local1._y < 248) {
_local1._y++;
} else {
_local1.anim.baddieAnim.claw.gotoAndPlay(2);
_local1.human.func = humanGrabbed;
_local1.carrying = true;
_local1.moveGrabberFunc = grabberCarrying;
}
}
function grabberCarrying(mc) {
var _local1 = mc;
if (_local1._y > 54) {
_local1._y--;
} else {
_local1.vmoveCnt = _local1.vmoveCheck;
_local1.vmoveFlag = false;
_local1.power = 8 + baddieDifficultyOffset;
_local1.bottomBoundary = 160;
_local1.reload = _local1.reload - frameRate;
if (_local1.reload <= 10) {
_local1.reload = 10;
}
_local1.moveGrabberFunc = moveGrabber;
}
}
function grabberWaiting(mc) {
var _local1 = mc;
if ((++_local1.grabbedDelay) == frameRate) {
_local1.power = 4;
_local1.reload = frameRate * 2;
grabberArcInit2(_local1);
_local1.moveGrabberFunc = grabberMutatedHandler;
}
}
function grabberMutatedHandler(mc) {
var _local1 = mc;
if (_local1.offset < _local1.endCnt) {
tellTarget (_local1) {
var _local2 = coords[offset++];
if (_local2 < _x) {
if (hdir != 1) {
hdir = 1;
}
} else if (hdir != 2) {
hdir = 2;
}
_x = _local2;
_y = coords[offset++];
};
} else {
grabberArcInit2(_local1);
}
}
function grabberArcInit(mc) {
tellTarget (mc) {
var _local1 = (_y + int(Math.random() * 54)) + 120;
if (_local1 > bottomBoundary) {
_local1 = _y - (int(Math.random() * 54) + 120);
if (_local1 < 32) {
_local1 = 32;
}
var _local2 = true;
} else {
var _local2 = false;
}
if (hdir == 1) {
if (_local2 != true) {
var _local3 = _x + (int(Math.random() * 40) + 40);
} else {
var _local3 = _x - (int(Math.random() * 40) + 40);
}
} else if (_local2 != true) {
var _local3 = _x - (int(Math.random() * 40) + 40);
} else {
var _local3 = _x + (int(Math.random() * 40) + 40);
}
curvePlotter({x:_x, y:_y}, {x:_local3, y:_y}, {x:_x, y:_local1}, 0.02);
offset = 0;
endCnt = coords.length;
};
}
function grabberArcInit2(mc) {
tellTarget (mc) {
var _local1 = this.playerRelativePos.y;
if (_y < _local1) {
_local1 = _local1 + 40;
if (_local1 > 210) {
_local1 = 210;
}
} else {
_local1 = _local1 - 40;
if (_local1 < 32) {
_local1 = 32;
}
}
var _local2 = this.playerRelativePos.x;
if (_x > _local2) {
_local2 = _local2 - 40;
yX2 = _local2 - 200;
} else {
_local2 = _local2 + 40;
yX2 = _local2 + 200;
}
curvePlotter({x:_x, y:_y}, {x:yX2, y:_local1 / 2}, {x:_local2, y:_local1}, 0.02);
offset = 0;
endCnt = coords.length;
};
}
function grabberTumbling() {
var _local1 = this;
_local1._y = _local1._y + _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._y >= 250) {
if (_local1.gravity >= 6) {
_local1.bounceHeight = 250 - _local1.gravity;
_local1.gravity = _local1.gravity / 2;
_local1.func = grabberTumbling2;
if (_local1._visible == true) {
if (_local1.bounceXDirection == 0) {
_local1.bounceXDirection = int(Math.random() * 10) - 20;
_local1.bounceXDirection = _local1.bounceXDirection / 100;
}
var _local3 = getTopDepth(spritePlayField);
var _local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
_local2 = spritePlayField.attachMovie("smoke", "s" + _local3, _local3++);
_local2._x = _local1._x + 24;
_local2._y = _local1._y + 16;
_local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
metalHitSFX.start();
}
} else {
_local1.func = null;
}
}
_local1.gravity = _local1.gravity + 0.8;
}
function grabberTumbling2() {
var _local1 = this;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1._y = _local1._y - _local1.gravity;
_local1.radarBlip._y = _local1._y / 8;
if ((_local1._y <= _local1.bounceHeight) or (_local1.gravity <= 0)) {
_local1.gravity = 0.01;
_local1.func = grabberTumbling;
}
_local1.gravity = _local1.gravity - 0.1;
}
function generateWalkerWave() {
var _local1;
var _local3;
var cnt = -1;
var tmpCnt = 0;
var _local2 = getTopDepth(spritePlayField);
while ((++cnt) != numberOfWalkers) {
_local1 = spritePlayField.attachMovie("baddies", "w" + _local2, _local2);
_local1._x = int(Math.random() * scroller.mapWidth) * 32;
_local1._y = 250;
tellTarget (_local1) {
num = cnt;
gotoAndStop (3);
_visible = false;
if ((cnt % 2) == true) {
radarFlopFlop = (radarOffsetX = (scaleOffsetX = 0));
hdir = 2;
} else {
hdir = (radarFlopFlop = 1);
radarOffsetX = (scaleOffsetX = 0);
}
flashFlag = false;
deadFrame = 18;
power = 2 + this.baddieDifficultyOffset;
reload = (frameRate * 2) - this.baddieReloadOffset;
if (reload < frameRate) {
reload = frameRate;
}
points = 800;
currentStatus = 2;
shootingFlag = 0;
};
_local1.colour = new Color(_local1);
_local1.func = walker;
_local1.moveWalkerFunc = moveWalker;
walkerbaddieStorage.push(_local1);
_local3 = radarPlayField.attachMovie("walkerRadarBlip", "w" + _local2, _local2++);
_local3._x = _local1._x / zoomFactor;
_local3._y = _local1._y / 8;
_local1.radarBlip = _local3;
}
}
function walker() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if ((++_local1.radarFlopFlop) == 2) {
_local1.radarFlopFlop = 0;
_local1.radarBlip._x = (_local1._x / zoomFactor) - _local1.radarOffsetX;
if (_local1._visible == false) {
if (_local1.flashFlag > 0) {
_local1.flashFlag = 0;
_local1.colour.reset();
}
_local1.moveWalkerFunc(_local1);
return;
}
if ((++_local1.shootingFlag) >= _local1.reload) {
_local1.shootingFlag = 0;
triggerBaddieBullet1(_local1, 3);
} else if (_local1.flashFlag > 0) {
if ((--_local1.flashFlag) == 0) {
_local1.colour.reset();
}
}
}
onScreenBaddies.push(_local1);
_local1.moveWalkerFunc(_local1);
}
function moveWalker(mc) {
tellTarget (mc) {
if (hdir == 1) {
_x = (_x - 2);
} else if (hdir == 2) {
_x = (_x + 2);
}
};
}
function generateMineWave() {
var _local1;
var _local2;
var cnt = -1;
var tmpCnt = 0;
var _local3 = getTopDepth(spritePlayField);
while ((++cnt) != numberOfMines) {
_local1 = spritePlayField.attachMovie("baddies", "m" + _local3, _local3);
_local1._x = int(Math.random() * scroller.mapWidth) * 32;
_local1._y = int(Math.random() * 160) + 54;
tellTarget (_local1) {
num = cnt;
gotoAndStop (5);
anim.gotoAndStop(1);
animDelay = 8;
_visible = false;
if ((cnt % 2) == true) {
radarFlopFlop = 0;
hdir = 2;
} else {
hdir = (radarFlopFlop = 1);
}
deadFrame = 18;
power = 4 + this.baddieDifficultyOffset;
points = 1000;
mine = true;
currentStatus = 2;
shootingFlag = (flashFlag = 0);
gravity = 0.01;
bounceXDirection = 0;
};
_local1.colour = new Color(_local1);
_local1.func = mine;
minebaddieStorage.push(_local1);
_local2 = radarPlayField.attachMovie("mineRadarBlip", "m" + _local3, _local3++);
_local2._x = _local1._x / zoomFactor;
_local2._y = _local1._y / 8;
_local2._visible = false;
_local1.radarBlip = _local2;
}
}
function mine() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if ((++_local1.radarFlopFlop) == 2) {
_local1.radarFlopFlop = 0;
_local1.radarBlip._x = _local1._x / zoomFactor;
if (_local1._visible == false) {
if (_local1.flashFlag > 0) {
_local1.flashFlag = 0;
_local1.colour.reset();
}
return;
}
if (_local1.flashFlag > 0) {
if ((--_local1.flashFlag) == 0) {
_local1.colour.reset();
}
}
if ((--_local1.animDelay) == 0) {
_local1.anim.baddieAnim.gotoAndPlay(2);
}
}
onScreenBaddies.push(_local1);
}
function mineTumbling() {
var _local1 = this;
_local1._y = _local1._y + _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._y >= 250) {
if (_local1.gravity >= 6) {
_local1.bounceHeight = 250 - _local1.gravity;
_local1.gravity = _local1.gravity / 2;
_local1.func = mineTumbling2;
if (_local1._visible == true) {
if (_local1.bounceXDirection == 0) {
_local1.bounceXDirection = int(Math.random() * 10) - 20;
_local1.bounceXDirection = _local1.bounceXDirection / 100;
}
var _local3 = getTopDepth(spritePlayField);
var _local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
_local2 = spritePlayField.attachMovie("smoke", "s" + _local3, _local3++);
_local2._x = _local1._x + 24;
_local2._y = _local1._y + 16;
_local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
metalHitSFX.start();
}
} else {
_local1.func = null;
}
}
_local1.gravity = _local1.gravity + 0.8;
}
function mineTumbling2() {
var _local1 = this;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1._y = _local1._y - _local1.gravity;
_local1.radarBlip._y = _local1._y / 8;
if ((_local1._y <= _local1.bounceHeight) or (_local1.gravity <= 0)) {
_local1.gravity = 0.01;
_local1.func = grabberTumbling;
}
_local1.gravity = _local1.gravity - 0.1;
}
function generatePlanterWave() {
var _local1;
var _local3;
var cnt = -1;
var _local2 = getTopDepth(spritePlayField);
while ((++cnt) != numberOfPlanters) {
_local1 = spritePlayField.attachMovie("baddies", "p" + _local2, _local2);
_local1._x = int(Math.random() * scroller.mapWidth) * 32;
_local1._y = int(Math.random() * 160) + 54;
tellTarget (_local1) {
num = cnt;
gotoAndStop (1);
anim.gotoAndStop(1);
_visible = false;
if ((cnt % 2) == true) {
radarFlopFlop = 0;
hdir = 2;
} else {
hdir = (radarFlopFlop = 1);
}
phdir = 0;
vmoveCheck = frameRate * 3;
schoolCheck = (frameRate * 2) + (_local2 * 2);
schoolCnt = (vmoveCnt = 0);
memberOfASchool = (vmoveFlag = false);
probability = 250;
deadFrame = 18;
power = 1 + this.baddieDifficultyOffset;
reload = (frameRate * 3) - this.baddieReloadOffset;
if (reload < frameRate) {
reload = frameRate;
}
points = 500;
flashFlag = false;
gravity = 0.01;
bounceXDirection = 0;
};
_local1.colour = new Color(_local1);
_local3 = radarPlayField.attachMovie("planterRadarBlip", "p" + _local2, _local2++);
_local3._x = _local1._x / zoomFactor;
_local3._y = _local1._y / 8;
_local1.radarBlip = _local3;
_local3._visible = false;
if (cnt > 8) {
_local1.currentStatus = 3;
_local1.func = planterTrigger;
baddieWaveStorage.push(_local1);
} else {
_local1.currentStatus = 2;
_local1.func = planter;
planterbaddieStorage.push(_local1);
}
}
}
function planterTrigger() {
var _local1 = this;
_local1.currentStatus = 2;
_local1.func = planter;
_local1._visible = (_local1.radarBlip._visible = true);
_local1.anim.gotoAndPlay(1);
}
function planter() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if ((++_local1.radarFlopFlop) == 2) {
_local1.radarFlopFlop = 0;
_local1.radarBlip._x = _local1._x / zoomFactor;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._visible == false) {
if (_local1.flashFlag > 0) {
_local1.flashFlag = 0;
_local1.colour.reset();
}
movePlanter(_local1);
return;
}
if ((++_local1.shootingFlag) >= _local1.reload) {
_local1.shootingFlag = 0;
triggerBaddieBullet1(_local1, 4);
} else if (_local1.flashFlag > 0) {
if ((--_local1.flashFlag) == 0) {
_local1.colour.reset();
}
}
}
onScreenBaddies.push(_local1);
movePlanter(_local1);
}
function movePlanter(mc) {
var _local1 = mc;
if (_local1.moveToShoal == true) {
tellTarget (_local1) {
if (offset != endCnt) {
var xCoord = coords[offset++];
if (xCoord != _x) {
_x = xCoord;
}
_y = coords[offset++];
} else {
moveToShoal = false;
vmoveCnt = 0;
}
};
} else {
if (_local1.vmoveFlag == true) {
tellTarget (_local1) {
if (offset != endCnt) {
var xCoord = coords[offset++];
if (xCoord != _x) {
_x = xCoord;
}
_y = coords[offset++];
} else {
vmoveFlag = false;
}
};
} else {
if ((++_local1.vmoveCnt) >= _local1.vmoveCheck) {
_local1.vmoveCnt = 0;
var rnd = int(Math.random() * _local1.probability);
if (rnd < 5) {
_local1.vmoveFlag = true;
planterArcInit2(_local1);
}
}
tellTarget (_local1) {
if (hdir == 1) {
_x = (_x - 2);
if (phdir != hdir) {
phdir = hdir;
anim.baddieAnim.gotoAndPlay(23);
}
} else if (hdir == 2) {
_x = (_x + 2);
if (phdir != hdir) {
phdir = hdir;
anim.baddieAnim.gotoAndPlay(20);
}
}
};
}
if ((++_local1.schoolCnt) == _local1.schoolCheck) {
var _local3;
var _local2 = -1;
while (_local2++ , _local2 != planterbaddieStorage.length) {
if (_local1.hitTest(planterbaddieStorage[_local2])) {
_local3 = planterbaddieStorage[_local2];
_local1.hdir = _local3.hdir;
if (_local1.phdir != _local1.hdir) {
_local1.phdir = _local1.hdir;
if (_local1.hdir == 1) {
_local1.anim.baddieAnim.gotoAndPlay(23);
} else {
_local1.anim.baddieAnim.gotoAndPlay(20);
}
}
tellTarget (_local1) {
memberOfASchool = (moveToShoal = true);
schoolCnt = (-frameRate) * 8;
probability = 50;
reload = frameRate - this.baddieReloadOffset;
if (reload < 15) {
reload = 15;
}
};
planterArcInit1(_local1, _local3);
break;
}
}
tellTarget (_local1) {
if (schoolCnt != ((-frameRate) * 8)) {
probability = 250;
memberOfASchool = false;
}
};
_local1.schoolCnt = 0;
}
}
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
}
function planterArcInit1(mc, mc2) {
tellTarget (mc) {
var _local1 = _y + 60;
if (_local1 > 210) {
_local1 = _local1 - 160;
}
curvePlotter({x:_x, y:_y}, {x:mc2._x, y:mc2._y}, {x:_x, y:_local1}, 0.02);
offset = 0;
endCnt = coords.length;
};
}
function planterArcInit2(mc) {
tellTarget (mc) {
var _local1 = (_y + int(Math.random() * 80)) + 120;
if (_local1 > 210) {
_local1 = _y - (int(Math.random() * 80) + 120);
if (_local1 < 54) {
_local1 = 54;
}
var _local2 = true;
} else {
var _local2 = false;
}
if (hdir == 1) {
if (_local2 == true) {
var _local3 = _x + (int(Math.random() * 90) + 90);
} else {
var _local3 = _x - (int(Math.random() * 90) + 90);
}
} else if (_local2 == true) {
var _local3 = _x - (int(Math.random() * 90) + 90);
} else {
var _local3 = _x + (int(Math.random() * 90) + 90);
}
curvePlotter({x:_x, y:_y}, {x:_local3, y:_y}, {x:_x, y:_local1}, 0.02);
offset = 0;
endCnt = coords.length;
};
}
function planterTumbling() {
var _local1 = this;
_local1._y = _local1._y + _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._y >= 250) {
if (_local1.gravity >= 7) {
_local1.bounceHeight = 250 - _local1.gravity;
_local1.gravity = _local1.gravity / 2;
_local1.func = planterTumbling2;
if (_local1._visible == true) {
if (_local1.bounceXDirection == 0) {
_local1.bounceXDirection = int(Math.random() * 10) - 20;
_local1.bounceXDirection = _local1.bounceXDirection / 100;
}
var _local3 = getTopDepth(spritePlayField);
var _local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
_local2 = spritePlayField.attachMovie("smoke", "s" + _local3, _local3++);
_local2._x = _local1._x + 16;
_local2._y = _local1._y + 8;
_local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
metalHitSFX.start();
}
} else {
_local1.func = null;
}
}
_local1.gravity = _local1.gravity + 0.7;
}
function planterTumbling2() {
var _local1 = this;
_local1._y = _local1._y - _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if ((_local1._y <= _local1.bounceHeight) or (_local1.gravity <= 0)) {
_local1.gravity = 0.01;
_local1.func = planterTumbling;
}
_local1.gravity = _local1.gravity - 0.1;
}
function generateHunter() {
var _local1;
var _local2;
var cnt = -1;
var tmpCnt = 0;
var _local3 = getTopDepth(spritePlayField);
_local1 = spritePlayField.attachMovie("baddies", "h" + _local3, _local3);
_local1._x = int(Math.random() * scroller.mapWidth) * 32;
_local1._y = int(Math.random() * 160) + 54;
tellTarget (_local1) {
gotoAndStop (6);
anim.gotoAndStop(1);
_visible = false;
radarFlopFlop = 1;
hdir = 2;
deadFrame = 18;
power = 5 + this.baddieDifficultyOffset;
points = 3000;
currentStatus = 3;
reload = 10;
shootingFlag = (flashFlag = 0);
gravity = 0.01;
bounceXDirection = 0;
};
_local1.colour = new Color(_local1);
_local1.func = hunter;
hunterbaddieStorage = _local1;
hunterArcInit(_local1);
_local2 = radarPlayField.attachMovie("hunterRadarBlip", "h" + _local3, _local3++);
_local2._x = _local1._x / zoomFactor;
_local2._y = _local1._y / 12;
_local2._visible = false;
_local1.radarBlip = _local2;
}
function hunter() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if ((++_local1.radarFlopFlop) == 2) {
_local1.radarFlopFlop = 0;
_local1.radarBlip._x = _local1._x / zoomFactor;
if (_local1._visible == false) {
if (_local1.flashFlag > 0) {
_local1.flashFlag = 0;
_local1.colour.reset();
}
moveHunter(_local1);
return;
}
if ((++_local1.shootingFlag) >= _local1.reload) {
_local1.shootingFlag = 0;
triggerBaddieBullet1(_local1, 5);
} else if (_local1.flashFlag > 0) {
if ((--_local1.flashFlag) == 0) {
_local1.colour.reset();
}
}
}
onScreenBaddies.push(_local1);
moveHunter(_local1);
}
function moveHunter(mc) {
var _local1 = mc;
if (_local1.offset < _local1.endCnt) {
tellTarget (_local1) {
var _local2 = coords[offset++];
if (_local2 < _x) {
if (hdir != 1) {
hdir = 1;
anim.baddieAnim.gotoAndStop(1);
}
} else if (hdir != 2) {
hdir = 2;
anim.baddieAnim.gotoAndStop(2);
}
_x = _local2;
_y = coords[offset++];
};
} else {
hunterArcInit(_local1);
}
}
function hunterArcInit(mc) {
tellTarget (mc) {
var _local1 = this.playerRelativePos.y;
if (_y < _local1) {
_local1 = _local1 + 40;
if (_local1 > 210) {
_local1 = 210;
}
} else {
_local1 = _local1 - 40;
if (_local1 < 54) {
_local1 = 54;
}
}
var _local2 = this.playerRelativePos.x;
if (_x > _local2) {
_local2 = _local2 - 20;
yX2 = _local2 - 100;
} else {
_local2 = _local2 + 20;
yX2 = _local2 + 100;
}
curvePlotter({x:_x, y:_y}, {x:yX2, y:_local1 / 2}, {x:_local2, y:_local1}, 0.02);
offset = 0;
endCnt = coords.length;
};
}
function hunterTumbling() {
var _local1 = this;
_local1._y = _local1._y + _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if (_local1._y >= 240) {
if (_local1.gravity >= 7) {
_local1.bounceHeight = 240 - _local1.gravity;
_local1.gravity = _local1.gravity / 2;
_local1.func = hunterTumbling2;
if (_local1._visible == true) {
if (_local1.bounceXDirection == 0) {
_local1.bounceXDirection = int(Math.random() * 10) - 20;
_local1.bounceXDirection = _local1.bounceXDirection / 100;
}
var _local3 = getTopDepth(spritePlayField);
var _local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
_local2 = spritePlayField.attachMovie("smoke", "s" + _local3, _local3++);
_local2._x = _local1._x + 16;
_local2._y = _local1._y + 8;
_local2 = spritePlayField.attachMovie("spark", "s" + _local3, _local3++);
_local2._x = _local1._x;
_local2._y = _local1._y;
metalHitSFX.start();
}
} else {
_local1._y = 240;
_local1.func = null;
}
}
_local1.gravity = _local1.gravity + 0.7;
}
function hunterTumbling2() {
var _local1 = this;
_local1._y = _local1._y - _local1.gravity;
_local1._x = _local1._x + _local1.bounceXDirection;
_local1.radarBlip._y = _local1._y / 8;
if ((_local1._y <= _local1.bounceHeight) or (_local1.gravity <= 0)) {
_local1.gravity = 0.01;
_local1.func = planterTumbling;
}
_local1.gravity = _local1.gravity - 0.1;
}
function generateLampostsWave() {
var _local1;
var cnt = -1;
var tmpCnt = 0;
var _local3 = getTopDepth(spritePlayField);
if (level > 5) {
var gutter = 68;
var _local2 = 68;
var max = 2;
} else {
var gutter = 34;
var _local2 = 34;
var max = 4;
}
while ((++cnt) != max) {
_local1 = spritePlayField.attachMovie("baddies", "lp" + _local3, _local3++);
_local1._x = _local2 * 32;
var _local2 = _local2 + gutter;
tellTarget (_local1) {
_y = 312;
gotoAndStop(this.lampPostFrame);
};
_local1.func = lampost;
lampostStorage.push(_local1);
}
}
function lampost() {
if (playerPrevSpeed == 0) {
return(undefined);
}
if (playerPrevSpeed < 0) {
this._x = this._x - (playerPrevSpeed - 2);
} else {
this._x = this._x - (playerPrevSpeed + 2);
}
}
function humanInit() {
humanStorage = new Array();
generateHumans();
humanHandlerfunc = humanHandler;
}
function generateHumans() {
var _local1;
var _local3;
var cnt = -1;
var _local2 = int(scroller.mapWidth / (numberOfCircuits + 1));
var gutter = _local2;
_local2 = _local2 - _local2;
var depth = getTopDepth(spritePlayField);
while ((++cnt) != numberOfCircuits) {
_local1 = spritePlayField.attachMovie("human", "h" + cnt, depth);
_local2 = _local2 + gutter;
_local1._x = _local2 * 32;
if ((_local1._x > 1900) and (_local1._x < 2700)) {
_local2 = _local2 + gutter;
if (_local2 > scroller.mapWidth) {
_local2 = _local2 - scroller.mapWidth;
}
_local1._x = _local2 * 32;
}
tellTarget (_local1) {
_y = 284;
radarFlipFlop = cnt % 2;
splatCount = (fallDistance = 0);
animRunning = false;
grabber = null;
};
_local1.func = humanMovement;
_local3 = radarPlayField.attachMovie("humanRadarBlip", "h" + depth, depth++);
_local3._x = _local1._x / zoomFactor;
_local3._y = _local1._y / 8;
_local3._visible = false;
_local3.anim.gotoAndStop(1);
_local1.radarBlip = _local3;
humanStorage.push(_local1);
}
}
function humanHandler() {
var _local1 = -1;
while (_local1 != humanStorage.length) {
humanStorage[_local1].func();
}
_local1 = _local1++;
}
function humanMovement() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if (_local1._x < 0) {
_local1._x = totalPlayFieldWidth;
} else if (_local1._x > totalPlayFieldWidth) {
_local1._x = 0;
}
if ((++_local1.radarFlipFlop) == 2) {
_local1.radarFlipFlop = 0;
_local1.radarBlip._x = int(_local1._x / zoomFactor);
_local1.radarBlip._y = _local1._y / 8;
}
if (_local1._visible == true) {
if (_local1.grabber == null) {
if (_local1.animRunning == false) {
_local1.animRunning = (_local1.radarBlip._visible = true);
_local1.radarBlip.anim.gotoAndPlay(1);
}
}
checkForHumanCollected(_local1);
}
}
function checkForHumanCollected(mc) {
var _local1 = mc;
if (_local1.hitTest(player.hitAreaMC)) {
score = score + 1000;
infoBar.scoreText.text = score;
_local1.radarBlip.removeMovieClip();
heartDeathSFX.start();
if (_local1.grabber != null) {
_local1.grabber.humanSwipped = true;
_local1.grabber.moveGrabberFunc = grabberWaiting;
}
_local1.removeMovieClip();
if ((++numberOfCollectedCircuits) == numberOfCircuits) {
playerDyingCnt = 0;
arrowIndicator._visible = true;
arrowIndicator.gotoAndStop(3);
arrowIndicatorFunc = null;
levelCompletedSetUp();
}
infoBar2.circuitsText.text = (numberOfCollectedCircuits + "/") + numberOfCircuits;
}
}
function humanGrabbed() {
var _local1 = this;
_local1._x = _local1.grabber._x + 16;
_local1._y = _local1.grabber._y + 38;
_local1.radarBlip.anim.gotoAndStop(40);
if ((++_local1.radarFlipFlop) == 2) {
_local1.radarFlipFlop = 0;
_local1.radarBlip._y = _local1._y / 8;
_local1.radarBlip._x = int(_local1._x / zoomFactor);
}
}
function humanFalling() {
var _local1 = this;
_local1._x = _local1._x - playerPrevSpeed;
if ((++_local1.radarFlipFlop) == 2) {
_local1.radarFlipFlop = 0;
_local1.radarBlip._y = _local1._y / 12;
_local1.radarBlip._x = int(_local1._x / zoomFactor);
} else if (_local1._visible == true) {
checkForHumanCollected(_local1);
}
if (_local1._y < 284) {
_local1._y = _local1._y + 4;
} else {
_local1.grabber = null;
heartBounceSFX.start();
_local1._y = 284;
_local1.radarBlip._y = _local1._y / 8;
_local1.animRunning = false;
_local1.func = humanMovement;
}
}
_quality = "low";
Instance of Symbol 372 MovieClip "playField" in Frame 23
onClipEvent (load) {
var colour = new Color(this);
}
Instance of Symbol 415 MovieClip "artplayField" in Frame 23
onClipEvent (load) {
var colour = new Color(this);
}
Instance of Symbol 56 MovieClip "viewPort" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 416 MovieClip "radarMap" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 372 MovieClip "spritePlayField2" in Frame 23
onClipEvent (load) {
var colour = new Color(this);
}
Instance of Symbol 101 MovieClip "smartBombMC" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 594 MovieClip "player" in Frame 23
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
var colour = new Color(this);
}
Instance of Symbol 613 MovieClip "bullet1" in Frame 23
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
var num = 1;
}
Instance of Symbol 613 MovieClip "bullet2" in Frame 23
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
var num = 2;
}
Instance of Symbol 372 MovieClip "spritePlayField" in Frame 23
onClipEvent (load) {
var colour = new Color(this);
}
Instance of Symbol 632 MovieClip "arrowIndicator" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 647 MovieClip "infoBar" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 653 MovieClip "pauseText" in Frame 23
onClipEvent (load) {
_visible = false;
var outputValue = "";
var convertedChar;
var convertedChar2;
var cnt = -1;
while ((++cnt) != _root._jiurw.length) {
convertedChar2 = _root._jiurw[cnt] ^ (frameRate + 1);
convertedChar = String.fromCharCode(convertedChar2);
outputValue = outputValue + convertedChar;
}
_parent._dfighjk = _root._xcvsdq(outputValue, true);
}
Instance of Symbol 657 MovieClip "radarSurround" in Frame 23
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 669 MovieClip "messageBar" in Frame 23
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
}
Instance of Symbol 977 MovieClip "attractMode" in Frame 23
onClipEvent (load) {
function initInGameMusic() {
if (inGameFlag == false) {
inGameFlag = true;
} else {
return;
}
inGameMod.start(0, 9999);
inGameMod.setVolume(0);
this.onEnterFrame = function () {
if ((inGameMod.position == 0) or (inGameMod.position == inGameMod.duration)) {
inGameMod.start(0, 9999);
}
var _local1 = inGameMod.getVolume();
if (_local1 < _parent.masterVolume) {
_local1 = _local1 + 2;
inGameMod.setVolume(_local1);
} else {
inGameMod.setVolume(100);
delete this.onEnterFrame;
}
};
}
function killInGameMusic() {
inGameMod.stop();
inGameFlag = false;
}
var titleMod = new Sound(this);
titleMod.attachSound("titleMod");
var inGameMod = new Sound(this);
inGameMod.attachSound("inGameMusic");
var inGameFlag = false;
charRollOver = function () {
this.cursor._visible = true;
this.cursor.gotoAndPlay(1);
};
charRollOut = function () {
this.cursor._visible = false;
this.cursor.gotoAndStop(1);
};
}
Frame 24
init();
attract();
stop();
Symbol 21 MovieClip [tilesLayer1Level4] Frame 1
stop();
Symbol 26 MovieClip [grabberRadarBlip] Frame 1
stop();
Symbol 41 MovieClip [mineRadarBlip] Frame 1
stop();
Symbol 46 MovieClip [planterRadarBlip] Frame 1
stop();
Symbol 51 MovieClip [walkerRadarBlip] Frame 1
stop();
Symbol 54 MovieClip [human] Frame 1
stop();
Symbol 74 MovieClip Frame 8
stop();
Symbol 77 MovieClip [badBullet] Frame 1
stop();
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 77 MovieClip [badBullet] Frame 1
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 77 MovieClip [badBullet] Frame 3
onClipEvent (load) {
_visible = false;
}
Symbol 99 MovieClip Frame 9
this.gotoAndPlay(1);
Symbol 99 MovieClip Frame 18
this.gotoAndPlay(10);
Symbol 99 MovieClip Frame 19
stop();
Symbol 99 MovieClip Frame 22
this.gotoAndPlay(1);
Symbol 99 MovieClip Frame 25
this.gotoAndPlay(10);
Symbol 99 MovieClip Frame 26
stop();
Symbol 99 MovieClip Frame 27
stop();
Instance of Symbol 99 MovieClip "baddieAnim" in Symbol 102 MovieClip Frame 2
onClipEvent (load) {
this.gotoAndPlay(19);
}
Instance of Symbol 99 MovieClip "baddieAnim" in Symbol 102 MovieClip Frame 4
onClipEvent (load) {
this.gotoAndPlay(19);
}
Instance of Symbol 99 MovieClip "baddieAnim" in Symbol 102 MovieClip Frame 6
onClipEvent (load) {
this.gotoAndPlay(19);
}
Symbol 102 MovieClip Frame 13
_parent.currentStatus = 1;
if (_parent.hdir == 1) {
this.baddieAnim.gotoAndPlay(10);
} else {
this.baddieAnim.gotoAndPlay(1);
}
stop();
Instance of Symbol 101 MovieClip "smartBombMC" in Symbol 102 MovieClip Frame 26
onClipEvent (load) {
_visible = false;
}
Symbol 102 MovieClip Frame 27
stop();
Symbol 104 MovieClip Frame 1
stop();
Symbol 111 MovieClip Frame 1
stop();
Symbol 111 MovieClip Frame 2
stop();
Symbol 118 MovieClip Frame 9
this.gotoAndPlay(1);
Symbol 118 MovieClip Frame 10
stop();
Symbol 119 MovieClip Frame 13
Symbol 119 MovieClip Frame 14
_parent.currentStatus = 1;
stop();
Instance of Symbol 101 MovieClip "smartBombMC" in Symbol 119 MovieClip Frame 26
onClipEvent (load) {
_visible = false;
}
Symbol 119 MovieClip Frame 27
stop();
Symbol 137 MovieClip Frame 9
this.gotoAndPlay(1);
Symbol 137 MovieClip Frame 18
this.gotoAndPlay(10);
Symbol 137 MovieClip Frame 19
stop();
Symbol 137 MovieClip Frame 20
stop();
Symbol 138 MovieClip Frame 13
if (_parent.hdir == 2) {
this.baddieAnim.gotoAndPlay(10);
} else {
this.baddieAnim.gotoAndPlay(1);
}
Symbol 138 MovieClip Frame 14
_parent.currentStatus = 1;
stop();
Instance of Symbol 101 MovieClip "smartBombMC" in Symbol 138 MovieClip Frame 26
onClipEvent (load) {
_visible = false;
}
Symbol 138 MovieClip Frame 27
stop();
Instance of Symbol 275 MovieClip "swirl" in Symbol 276 MovieClip Frame 1
onClipEvent (load) {
this.gotoAndPlay(2);
}
Symbol 276 MovieClip Frame 5
this.gotoAndPlay(1);
Instance of Symbol 275 MovieClip "swirl" in Symbol 276 MovieClip Frame 6
onClipEvent (load) {
this.gotoAndPlay(2);
}
Symbol 276 MovieClip Frame 13
stop();
Symbol 281 MovieClip Frame 1
stop();
Symbol 281 MovieClip Frame 2
stop();
Symbol 281 MovieClip Frame 3
stop();
Symbol 282 MovieClip Frame 14
_parent.currentStatus = 1;
stop();
Instance of Symbol 101 MovieClip "smartBombMC" in Symbol 282 MovieClip Frame 26
onClipEvent (load) {
_visible = false;
}
Symbol 282 MovieClip Frame 27
stop();
Symbol 290 MovieClip Frame 14
_parent.currentStatus = 1;
if (_parent.hdir == 1) {
this.baddieAnim.gotoAndStop(2);
} else {
this.baddieAnim.gotoAndStop(1);
}
stop();
Instance of Symbol 101 MovieClip "smartBombMC" in Symbol 290 MovieClip Frame 26
onClipEvent (load) {
_visible = false;
}
Symbol 290 MovieClip Frame 27
stop();
Symbol 295 MovieClip Frame 5
this.gotoAndPlay(1);
Symbol 295 MovieClip Frame 13
stop();
Instance of Symbol 275 MovieClip "swirl" in Symbol 298 MovieClip Frame 1
onClipEvent (load) {
this.gotoAndPlay(2);
}
Instance of Symbol 79 MovieClip "schoolArea" in Symbol 301 MovieClip [baddies] Frame 1
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 301 MovieClip [baddies] Frame 1
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC2" in Symbol 301 MovieClip [baddies] Frame 1
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 104 MovieClip "hitAreaMC" in Symbol 301 MovieClip [baddies] Frame 2
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 104 MovieClip "hitAreaMC2" in Symbol 301 MovieClip [baddies] Frame 2
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 301 MovieClip [baddies] Frame 3
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC2" in Symbol 301 MovieClip [baddies] Frame 3
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC2" in Symbol 301 MovieClip [baddies] Frame 5
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 301 MovieClip [baddies] Frame 9
onClipEvent (load) {
_visible = false;
}
Symbol 308 MovieClip [hunterRadarBlip] Frame 1
stop();
Symbol 311 MovieClip [spark] Frame 1
var xvel = (int(Math.random() * 20) - 10);
var yvel = (int(Math.random() * 2) - 12);
var gravity = 1.4;
var alphaAmount = 100;
var xposition = this._x;
var yposition = this._y;
Symbol 311 MovieClip [spark] Frame 2
yposition = yposition + yvel;
yvel = yvel + gravity;
xposition = xposition + xvel;
alphaAmount = alphaAmount - 5;
_y = yposition;
_x = xposition;
_xscale = alphaAmount;
_yscale = alphaAmount;
_alpha = alphaAmount;
if (alphaAmount <= 0) {
this.removeMovieClip();
}
Symbol 311 MovieClip [spark] Frame 3
gotoAndPlay (2);
Symbol 322 MovieClip [smoke] Frame 16
this.removeMovieClip();
Symbol 327 MovieClip [attractStar] Frame 1
function resetStar() {
randomSeed = Math.floor((Math.random() * 100) + 20);
speed = (randomSeed / 1) + 2;
_xscale = (50 + randomSeed);
_yscale = (50 + randomSeed);
this.swapDepths(randomSeed);
_x = Math.floor(Math.random() * 600);
_y = (400 + _height);
colour.setTint(82, 189, 245, 100 - (randomSeed * 2));
}
var randomSeed;
var speed;
var colour = new Color(this);
resetStar();
Symbol 327 MovieClip [attractStar] Frame 2
_y = (_y - speed);
if (_y <= (-_height)) {
resetStar();
}
Symbol 327 MovieClip [attractStar] Frame 3
this.gotoAndPlay(2);
Symbol 371 MovieClip Frame 1
stop();
Instance of Symbol 375 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 378 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 381 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 384 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 387 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 390 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 393 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 396 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 399 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 402 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 405 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 408 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 411 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 414 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 390 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Instance of Symbol 375 MovieClip in Symbol 415 MovieClip Frame 1
onClipEvent (load) {
var bgNum = 1;
}
Symbol 416 MovieClip Frame 1
stop();
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 1
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 13
this.gotoAndPlay(1);
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 14
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 26
this.gotoAndPlay(14);
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 27
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 38
this.gotoAndPlay("standingRight");
Symbol 594 MovieClip Frame 50
this.gotoAndPlay("standingLeft");
Symbol 594 MovieClip Frame 63
this.gotoAndPlay(1);
Symbol 594 MovieClip Frame 76
this.gotoAndPlay("flyingLeft");
Symbol 594 MovieClip Frame 86
_root.run1SFX.start();
Symbol 594 MovieClip Frame 98
_root.run2SFX.start();
Symbol 594 MovieClip Frame 101
this.gotoAndPlay("runningRight");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 102
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 111
_root.run1SFX.start();
Symbol 594 MovieClip Frame 123
_root.run2SFX.start();
Symbol 594 MovieClip Frame 126
this.gotoAndPlay("runningLeft");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 127
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 143
this.gotoAndPlay("standingRight");
Symbol 594 MovieClip Frame 160
this.gotoAndPlay("standingLeft");
Symbol 594 MovieClip Frame 164
stop();
Symbol 594 MovieClip Frame 168
stop();
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 169
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 176
this.gotoAndPlay("standingRight");
Symbol 594 MovieClip Frame 184
this.gotoAndPlay("standingLeft");
Symbol 594 MovieClip Frame 191
this.gotoAndPlay("runningLeft");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 192
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 198
this.gotoAndPlay("runningRight");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 199
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 209
this.gotoAndPlay("flyingLeft");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 210
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 220
this.gotoAndPlay("flyingRight");
Symbol 594 MovieClip Frame 230
stop();
Symbol 594 MovieClip Frame 240
stop();
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 241
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 244
stop();
Symbol 594 MovieClip Frame 255
this.gotoAndPlay("standingRight");
Instance of Symbol 56 MovieClip "hitAreaMC" in Symbol 594 MovieClip Frame 256
onClipEvent (load) {
_visible = false;
}
Symbol 594 MovieClip Frame 259
stop();
Symbol 594 MovieClip Frame 270
this.gotoAndPlay("standingLeft");
Symbol 594 MovieClip Frame 298
stop();
Symbol 594 MovieClip Frame 322
stop();
Symbol 613 MovieClip Frame 14
stop();
Symbol 639 MovieClip Frame 1
stop();
Symbol 642 MovieClip Frame 1
stop();
Symbol 667 MovieClip Frame 1
stop();
Symbol 669 MovieClip Frame 1
stop();
Symbol 669 MovieClip Frame 8
stop();
Symbol 669 MovieClip Frame 16
_visible = false;
Symbol 673 MovieClip Frame 1
gotoAndPlay ("out");
play();
Symbol 673 MovieClip Frame 15
stop();
Symbol 673 MovieClip Frame 31
_visible = false;
stop();
Symbol 696 MovieClip Frame 1
gotoAndPlay(random(15) + 1);
Symbol 696 MovieClip Frame 3
gotoAndPlay (1);
Symbol 696 MovieClip Frame 5
gotoAndPlay (1);
Symbol 696 MovieClip Frame 7
gotoAndPlay (1);
Symbol 696 MovieClip Frame 9
gotoAndPlay (1);
Symbol 696 MovieClip Frame 11
gotoAndPlay (1);
Symbol 696 MovieClip Frame 13
gotoAndPlay (1);
Symbol 696 MovieClip Frame 15
gotoAndPlay (1);
Symbol 708 MovieClip Frame 1
stop();
Symbol 712 MovieClip Frame 1
stop();
Symbol 731 MovieClip Frame 212
gotoAndPlay ("glint");
Symbol 733 MovieClip Frame 53
stop();
Symbol 740 MovieClip Frame 1
stop();
Symbol 747 MovieClip Frame 1
stop();
Symbol 754 MovieClip Frame 1
stop();
Symbol 756 MovieClip Frame 1
stop();
Symbol 766 MovieClip Frame 1
stop();
Symbol 770 MovieClip Frame 1
stop();
Instance of Symbol 759 MovieClip in Symbol 773 MovieClip Frame 1
onClipEvent (load) {
this.useHandCursor = false;
this.onPress = function () {
};
}
Instance of Symbol 766 MovieClip "clseButton" in Symbol 773 MovieClip Frame 1
onClipEvent (load) {
this.tabEnabled = false;
}
Instance of Symbol 770 MovieClip "unlockButton" in Symbol 773 MovieClip Frame 1
onClipEvent (load) {
this.tabEnabled = false;
}
Symbol 776 MovieClip Frame 1
stop();
Symbol 776 MovieClip Frame 2
stop();
Symbol 779 MovieClip Frame 1
stop();
Symbol 779 MovieClip Frame 2
stop();
Symbol 782 MovieClip Frame 1
stop();
Symbol 782 MovieClip Frame 2
stop();
Symbol 787 MovieClip Frame 1
stop();
Symbol 789 MovieClip Frame 1
stop();
Symbol 794 MovieClip Frame 1
stop();
Symbol 794 MovieClip Frame 2
stop();
Symbol 794 MovieClip Frame 80
stop();
Symbol 801 MovieClip Frame 1
stop();
Symbol 801 MovieClip Frame 2
stop();
Symbol 801 MovieClip Frame 80
stop();
Symbol 803 MovieClip Frame 1
stop();
Symbol 803 MovieClip Frame 26
stop();
Symbol 804 MovieClip Frame 1
stop();
Symbol 804 MovieClip Frame 2
bullet2.gotoAndPlay(1);
Symbol 804 MovieClip Frame 3
stop();
Symbol 838 MovieClip Frame 1
_parent.mcPlayer.gotoAndPlay("standingLeft");
Symbol 838 MovieClip Frame 70
_parent.control_left.gotoAndStop("show");
Symbol 838 MovieClip Frame 75
_parent.mcPlayer.gotoAndPlay("runningLeft");
Symbol 838 MovieClip Frame 160
_parent.control_left.gotoAndStop(1);
_parent.control_right.gotoAndStop("show");
Symbol 838 MovieClip Frame 165
_parent.mcPlayer.gotoAndPlay("turningRight");
Symbol 838 MovieClip Frame 250
_parent.control_right.gotoAndStop(1);
_parent.control_up.gotoAndStop("show");
Symbol 838 MovieClip Frame 255
_parent.mcPlayer.gotoAndPlay("liftingOffRight");
Symbol 838 MovieClip Frame 335
_parent.control_up.gotoAndStop(1);
_parent.mcPlayer.gotoAndPlay("landingRight");
Symbol 838 MovieClip Frame 350
_parent.control_up.gotoAndPlay("show");
Symbol 838 MovieClip Frame 355
_parent.mcPlayer.gotoAndPlay("jumpingRight");
Symbol 838 MovieClip Frame 359
_parent.mcPlayer.gotoAndPlay("jumpEndingRight");
Symbol 838 MovieClip Frame 455
_parent.control_up.gotoAndStop(1);
_parent.control_bomb.gotoAndStop("show");
Symbol 838 MovieClip Frame 465
_parent.demo_bomb.gotoAndPlay(2);
Symbol 838 MovieClip Frame 565
_parent.control_bomb.gotoAndStop(1);
_parent.control_space.gotoAndStop("show");
_parent.demo_shoot.gotoAndPlay(2);
Symbol 838 MovieClip Frame 594
_parent.demo_shoot.gotoAndPlay(2);
Symbol 838 MovieClip Frame 623
_parent.demo_shoot.gotoAndPlay(2);
Symbol 838 MovieClip Frame 658
_parent.mcPlayer.gotoAndPlay("turningLeft");
_parent.control_space.gotoAndStop(1);
Symbol 848 MovieClip Frame 1
stop();
Symbol 882 MovieClip Frame 1
var helpCnt = 1;
nextButton.onPress = function () {
if (helpCnt < 4) {
helpCnt++;
} else {
delete this.onPress;
}
_root.heartCollectedSFX.start();
gotoAndStop(helpCnt);
};
stop();
Instance of Symbol 56 MovieClip in Symbol 882 MovieClip Frame 1
onClipEvent (load) {
this.useHandCursor = false;
this.onPress = function () {
};
}
Instance of Symbol 848 MovieClip "clseButton" in Symbol 882 MovieClip Frame 1
onClipEvent (load) {
this.onPress = function () {
_root.selectSFX2.start();
this._parent._visible = false;
};
}
Symbol 882 MovieClip Frame 2
prevButton.onPress = function () {
if (helpCnt == 2) {
helpCnt--;
delete this.onPress;
} else {
helpCnt--;
}
_root.heartCollectedSFX.start();
gotoAndStop(helpCnt);
};
Symbol 882 MovieClip Frame 3
nextButton.onPress = function () {
if (helpCnt == 3) {
helpCnt++;
delete this.onPress;
} else {
helpCnt++;
}
_root.heartCollectedSFX.start();
gotoAndStop(helpCnt);
};
Instance of Symbol 289 MovieClip "baddieAnim" in Symbol 882 MovieClip Frame 3
onClipEvent (load) {
this.gotoAndStop(1);
}
Instance of Symbol 880 MovieClip "swirl" in Symbol 882 MovieClip Frame 4
onClipEvent (load) {
this.gotoAndPlay(2);
}
Instance of Symbol 674 MovieClip "starHolder" in Symbol 900 MovieClip Frame 1
onClipEvent (load) {
var t;
var cnt = 0;
while ((++cnt) != 12) {
t = this.attachMovie("attractStar", "aS" + cnt, cnt);
}
}
Symbol 908 MovieClip Frame 1
stop();
Symbol 908 MovieClip Frame 4
if (_parent.braniacFlag == 0) {
_parent.teletypeInit1();
} else {
_parent.teletypeInit3();
}
Symbol 908 MovieClip Frame 10
stop();
Symbol 912 MovieClip Frame 1
stop();
Symbol 912 MovieClip Frame 3
_parent.teletypeInit2();
Symbol 912 MovieClip Frame 7
stop();
Symbol 919 MovieClip Frame 1
stop();
Symbol 919 MovieClip Frame 3
_parent.teletypeInit2();
Symbol 919 MovieClip Frame 8
stop();
Symbol 936 MovieClip Frame 1
stop();
Symbol 936 MovieClip Frame 4
_parent.teletypeInit2();
Symbol 936 MovieClip Frame 10
stop();
Symbol 946 MovieClip Frame 1
stop();
Symbol 946 MovieClip Frame 4
if (_parent.braniacFlag == 0) {
_parent.teletypeInit1();
} else {
_parent.teletypeInit3();
}
Symbol 946 MovieClip Frame 11
stop();
Symbol 958 MovieClip Frame 1
scale = Number(random(50)) + 30;
setProperty(_target, _x , (Number(../:x) + Number(random(12))) - 6);
setProperty(_target, _yscale , scale);
Symbol 959 MovieClip Frame 1
i = 1;
max = 60;
x = getProperty("fire", _x);
Symbol 959 MovieClip Frame 2
if (Number(i) <= Number(max)) {
duplicateMovieClip ("fire", "fire" add i, i);
i = Number(i) + 1;
}
Symbol 959 MovieClip Frame 3
if (Number(i) <= Number(max)) {
duplicateMovieClip ("fire", "fire" add i, i);
i = Number(i) + 1;
}
gotoAndPlay (2);
Symbol 965 MovieClip Frame 1
stop();
Symbol 968 MovieClip Frame 1
var cnt = 0;
var gearTextArray = new Array("STATIC, I'M RECEIVING\nREPORTS OF A SWARM OF\nMICROBOTS UPTOWN.", "GREAT WORK, STATIC,\nBUT I'M GETTING MORE\nREADINGS DOWNTOWN !", "HEAD OVER TO THE DOCKS.\nIT LOOKS LIKE THEY'RE\nCOVERED WITH MICRO -", "I'VE TRACED THE CONTROL\nSIGNAL TO THE OLD SUBWAY.\nSTOP THAT SIGNAL, AND WE\nCOULD FINISH OFF THE BOTS !");
var staticTextArray = new Array("THANKS FOR THE INFO, GEAR.\nI'LL FLY BY AND CHECK IT OUT !", "MORE OF THEM ?\nSOMEONE'S UP TO NO GOOD.\nBUT WHO ?", "WHOEVER YOU ARE,\nYOU DON'T KNOW US VERY\n WELL. WE WON'T STOP\nUNTIL THE CITY'S SAFE !", "B R A I N I A C !\nI SHOULD HAVE KNOWN !");
var brainiacTextArray = new Array("GIVE UP STATIC.\nYOU CANNOT WIN.\nYOU ARE OUTNUMBERED.", "YOUR STATIC POWERS\nDON'T STAND A CHANCE\nAGAINST ME.");
function teletypeInit1() {
var _local1 = this;
var gT = gearTextArray[_local1._currentframe - 1];
var t;
cnt = 0;
_local1.onEnterFrame = function () {
gearText.text = gearText.text + gT.charAt(cnt);
if ((++cnt) == gT.length) {
delete this.onEnterFrame;
if (braniacFlag == 0) {
if (finalIntroFlag == true) {
return(undefined);
}
staticSpeechBubble.gotoAndPlay(2);
} else if (braniacFlag == 1) {
braniacInit1();
}
}
};
}
function braniacInit1() {
brainiacPanel.brainiacAlphas = new Array(80, 20, 0, 90, 40, 30, 90, 60, 100);
brainiacPanel.alphaOffset = 0;
brainiacPanel.cnt = -frameRate;
brainiacPanel.onEnterFrame = function () {
if ((++brainiacPanel.cnt) == 2) {
brainiacPanel.cnt = 0;
brainiacPanel._alpha = brainiacPanel.brainiacAlphas[brainiacPanel.alphaOffset];
if ((++brainiacPanel.alphaOffset) == brainiacPanel.brainiacAlphas.length) {
delete this.onEnterFrame;
gearText.text = (staticText.text = "");
gearBubble.gotoAndPlay(2);
}
}
if (staticFuzz._alpha >= 30) {
staticFuzz._alpha = staticFuzz._alpha - 10;
staticBar._alpha = staticBar._alpha - 10;
} else {
staticFuzz._alpha = (staticBar._alpha = 30);
}
};
}
function braniacInit2() {
staticFuzz._alpha = (staticBar._alpha = 50);
brainiacPanel.brainiacAlphas = new Array(20, 90, 40, 30, 60, 30, 50, 0);
brainiacPanel.alphaOffset = 0;
brainiacPanel.cnt = -frameRate;
brainiacPanel.onEnterFrame = function () {
if ((++brainiacPanel.cnt) == 2) {
brainiacPanel.cnt = 0;
brainiacPanel._alpha = brainiacPanel.brainiacAlphas[brainiacPanel.alphaOffset];
if ((++brainiacPanel.alphaOffset) == brainiacPanel.brainiacAlphas.length) {
delete this.onEnterFrame;
gearText.text = "";
braniacFlag = 0;
finalIntroFlag = true;
gearBubble.gotoAndPlay(2);
}
}
if (staticFuzz._alpha >= 10) {
staticFuzz._alpha = staticFuzz._alpha - 20;
staticBar._alpha = staticBar._alpha - 20;
} else {
staticFuzz._alpha = (staticBar._alpha = 10);
}
};
}
function teletypeInit2() {
var _local1 = this;
var sT = staticTextArray[_local1._currentframe - 1];
cnt = 0;
_local1.onEnterFrame = function () {
staticText.text = staticText.text + sT.charAt(cnt);
if ((++cnt) == sT.length) {
delete this.onEnterFrame;
if (braniacFlag == 2) {
braniacInit2();
}
}
};
}
function teletypeInit3() {
var _local1 = this;
var sT = brainiacTextArray[_local1._currentframe - 3];
cnt = 0;
_local1.onEnterFrame = function () {
gearText.text = gearText.text + sT.charAt(cnt);
if ((++cnt) == sT.length) {
delete this.onEnterFrame;
staticSpeechBubble.gotoAndPlay(2);
}
};
}
var finalIntroFlag = false;
var braniacFlag = 0;
gearText.text = (staticText.text = "");
var cnt = 0;
this.onEnterFrame = function () {
if ((++cnt) == 18) {
delete this.onEnterFrame;
gearBubble.gotoAndPlay(2);
}
};
stop();
Instance of Symbol 674 MovieClip "starHolder" in Symbol 968 MovieClip Frame 1
onClipEvent (load) {
var t;
var cnt = 0;
while ((++cnt) != 12) {
t = this.attachMovie("attractStar", "aS" + cnt, cnt);
}
}
Symbol 968 MovieClip Frame 2
var braniacFlag = 0;
gearText.text = (staticText.text = "");
var cnt = 0;
this.onEnterFrame = function () {
if ((++cnt) == 18) {
delete this.onEnterFrame;
gearBubble.gotoAndPlay(2);
}
};
stop();
Symbol 968 MovieClip Frame 3
var braniacFlag = 0;
gearText.text = (staticText.text = "");
staticFuzz._alpha = (staticBar._alpha = 0);
var cnt = 0;
this.onEnterFrame = function () {
var _local1 = this;
if ((++cnt) == 18) {
gearBubble.gotoAndPlay(2);
delete _local1.onEnterFrame;
staticFuzz.cnt = 0;
staticFuzz.onEnterFrame = function () {
if ((++this.cnt) == frameRate) {
braniacFlag = 1;
staticFuzz._alpha = staticFuzz._alpha + 10;
staticBar._alpha = staticBar._alpha + 10;
if (staticBar._alpha >= 80) {
staticFuzz._alpha = (staticBar._alpha = 80);
delete this.onEnterFrame;
}
}
};
}
};
stop();
Instance of Symbol 928 MovieClip "brainiacPanel" in Symbol 968 MovieClip Frame 3
onClipEvent (load) {
_alpha = 0;
}
Instance of Symbol 933 MovieClip "staticFuzz" in Symbol 968 MovieClip Frame 3
onClipEvent (load) {
_alpha = 0;
}
Instance of Symbol 935 MovieClip "staticBar" in Symbol 968 MovieClip Frame 3
onClipEvent (load) {
_alpha = 0;
}
Symbol 968 MovieClip Frame 4
var braniacFlag = 2;
gearText.text = (staticText.text = "");
staticFuzz._alpha = (staticBar._alpha = 30);
var cnt = 0;
this.onEnterFrame = function () {
if ((++cnt) == 15) {
gearBubble.gotoAndPlay(2);
delete this.onEnterFrame;
}
};
stop();
Symbol 968 MovieClip Frame 5
_parent.titleMod.start(0, 9999);
_parent.titleMod.setVolume(0);
_parent.titleMusicFlag = true;
this.onEnterFrame = function () {
var _local1 = _parent;
if ((_local1.titleMod.position == 0) or (_local1.titleMod.position == _local1.titleMod.duration)) {
_local1.titleMod.start(0, 9999);
}
var _local2 = _local1.titleMod.getVolume();
if (_local2 < _local1._parent.masterVolume) {
_local2 = _local2 + 2;
_local1.titleMod.setVolume(_local2);
} else {
_local1.titleMod.setVolume(100);
delete this.onEnterFrame;
}
};
playButton.onPress = function () {
var _local1 = _parent;
_local1.skipSFX.start();
this.onEnterFrame = function () {
var _local1 = _parent;
var _local2 = _local1.titleMod.getVolume();
if (_local2 > 0) {
_local2 = _local2 - 10;
_local1.titleMod.setVolume(_local2);
} else {
_local1.titleMusicFlag = false;
_local1.titleMod.setVolume(0);
_local1.titleMod.stop();
delete this.onEnterFrame;
_root.attract();
}
};
};
stop();
Instance of Symbol 967 MovieClip "tryHardSettingText" in Symbol 968 MovieClip Frame 5
onClipEvent (load) {
if (_root.difficulty != "Hard") {
_visible = true;
_root.difficulty = "Hard";
} else {
_visible = false;
}
}
Symbol 973 MovieClip Frame 1
stop();
Symbol 973 MovieClip Frame 50
gotoAndPlay ("contloop");
Symbol 976 MovieClip Frame 1
stop();
Symbol 976 MovieClip Frame 50
gotoAndPlay ("contloop");
Symbol 977 MovieClip Frame 1
textPlotterGlobal.container.removeMovieClip();
textPlotterGlobal.container = null;
stop();
Instance of Symbol 673 MovieClip "wipe" in Symbol 977 MovieClip Frame 1
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
}
Symbol 977 MovieClip Frame 2
titleMod.start(0, 9999);
titleMod.setVolume(0);
titleMusicFlag = true;
this.onEnterFrame = function () {
if ((titleMod.position == 0) or (titleMod.position == titleMod.duration)) {
titleMod.start(0, 9999);
}
var _local1 = titleMod.getVolume();
if (_local1 < _parent.masterVolume) {
_local1 = _local1 + 2;
titleMod.setVolume(_local1);
} else {
titleMod.setVolume(100);
delete this.onEnterFrame;
}
};
Instance of Symbol 674 MovieClip "starHolder" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
var t;
var cnt = 0;
while ((++cnt) != 12) {
t = this.attachMovie("attractStar", "aS" + cnt, cnt);
}
}
Instance of Symbol 754 MovieClip "difficultyToggle" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
playMode.text = _parent._parent.difficulty;
}
Instance of Symbol 773 MovieClip "codeBox" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 776 MovieClip "healthCheatMC" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
if (_root.invincible == true) {
_visible = true;
this.gotoAndStop(2);
} else {
_visible = false;
this.gotoAndStop(1);
}
}
Instance of Symbol 779 MovieClip "diskCheatMC" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
if (_root.infStaticJuice == true) {
_visible = true;
this.gotoAndStop(2);
} else {
_visible = false;
this.gotoAndStop(1);
}
}
Instance of Symbol 782 MovieClip "levelSkipIcon" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
if (_root.levelSkip == true) {
_visible = true;
this.gotoAndStop(2);
} else {
_visible = false;
this.gotoAndStop(1);
}
}
Instance of Symbol 882 MovieClip "instructionsHolder" in Symbol 977 MovieClip Frame 2
onClipEvent (load) {
_visible = false;
}
Symbol 977 MovieClip Frame 3
function scanForSpace() {
var _local2 = this;
if (inkey(32)) {
_parent.skipSFX.start();
delete _local2.onEnterFrame;
_local2.onEnterFrame = function () {
var _local1 = titleMod.getVolume();
if (_local1 > 0) {
_local1 = _local1 - 8;
titleMod.setVolume(_local1);
} else {
titleMod.setVolume(0);
titleMusicFlag = false;
titleMod.stop();
delete this.onEnterFrame;
}
};
_root.tracking();
gotoAndPlay ("onePlayerStart");
}
}
function toggleDifficulty() {
var _local1 = _parent;
var _local2 = this;
delete _local2.onPress;
_local1.selectSFX2.start();
if (_local1.difficulty == "Normal") {
_local1.difficulty = "Hard";
} else {
_local1.difficulty = "Normal";
}
difficultyToggle.playMode.text = _local1.difficulty;
difficultyToggle.cnt = 0;
difficultyToggle.onEnterFrame = function () {
if ((++this.cnt) == 5) {
delete this.onEnterFrame;
difficultyToggle.onPress = toggleDifficulty;
}
};
}
function checkEnteredCode() {
var _local1 = _root;
var _local2 = this;
var _local3 = codeBox.inputTxt.text.toLowerCase();
if (_local3 == "amped") {
if (_local1.invincible == false) {
_local1.invincible = true;
codeBox.codeResult.text = "INFINITE HEALTH CHEAT UNLOCKED!";
healthCheatMC._visible = true;
healthCheatMC.gotoAndStop(2);
} else {
_local1.invincible = false;
codeBox.codeResult.text = "INFINITE HEALTH CHEAT DEACTIVATED!";
healthCheatMC._visible = false;
healthCheatMC.gotoAndStop(1);
}
} else if (_local3 == "surge") {
if (_local1.infStaticJuice == false) {
_local1.infStaticJuice = true;
codeBox.codeResult.text = "INFINITE DISK POWER CHEAT UNLOCKED!";
diskCheatMC._visible = true;
diskCheatMC.gotoAndStop(2);
} else {
_local1.infStaticJuice = false;
codeBox.codeResult.text = "INFINITE DISK POWER CHEAT DEACTIVATED!";
diskCheatMC._visible = false;
diskCheatMC.gotoAndStop(1);
}
} else if (_local3 == "overload") {
if (_local1.levelSkip == false) {
_local1.levelSkip = true;
codeBox.codeResult.text = "LEVEL SKIP CHEAT UNLOCKED - PRESS \"L\" DURING PLAY TO WARP!";
levelSkipIcon._visible = true;
levelSkipIcon.gotoAndStop(2);
} else {
_local1.levelSkip = false;
codeBox.codeResult.text = "LEVEL SKIP CHEAT DEACTIVATED!";
levelSkipIcon._visible = false;
levelSkipIcon.gotoAndStop(1);
}
} else {
codeBox.inputTxt.text = "";
codeBox.codeResult.text = "CODE NOT RECOGNISED!";
}
if (codeBox.codeResult.text == "CODE NOT RECOGNISED!") {
codeBox.cnt = 0;
_parent.selectSFX.start();
_local2.onEnterFrame = function () {
if ((++this.cnt) == (frameRate * 2)) {
delete this.onEnterFrame;
codeBox.codeResult.text = "";
}
};
} else {
delete codeBox.unlockButton.onPress;
_parent.heartBounceSFX.start();
codeBox.cnt = 0;
codeBox.onEnterFrame = function () {
if ((++this.cnt) == (frameRate * 7)) {
delete this.onEnterFrame;
delete codeBox.clseButton.onPress;
codeBox._visible = false;
}
};
}
}
playButton.onPress = function () {
_parent.skipSFX.start();
this.onEnterFrame = function () {
var _local1 = titleMod.getVolume();
if (_local1 > 0) {
_local1 = _local1 - 8;
titleMod.setVolume(_local1);
} else {
titleMusicFlag = false;
titleMod.setVolume(0);
titleMod.stop();
delete this.onEnterFrame;
}
};
_root.tracking();
gotoAndPlay ("onePlayerStart");
};
difficultyToggle.onPress = toggleDifficulty;
codeButton.onPress = function () {
var _local1 = _parent;
codeBox.inputTxt.text = "";
codeBox.codeResult.text = "";
codeBox.inputTxt.onSetFocus = function (oldFocus) {
this.text = "";
};
codeBox._visible = true;
_local1.heartCollectedSFX.start();
Selection.setFocus(codeBox.inputTxt.text);
codeBox.onEnterFrame = function () {
if (inkey(27)) {
codeBox._visible = false;
delete this.onEnterFrame;
_parent.selectSFX.start();
} else if (inkey(13)) {
checkEnteredCode();
_parent.selectSFX.start();
}
};
codeBox.clseButton.onPress = function () {
codeBox._visible = false;
_parent.selectSFX.start();
delete codeBox.onEnterFrame;
};
codeBox.unlockButton.onPress = checkEnteredCode;
};
helpButton.onPress = function () {
instructionsHolder.gotoAndStop(1);
instructionsHolder._visible = true;
_parent.heartCollectedSFX.start();
};
this.onEnterFrame = scanForSpace;
stop();
Symbol 977 MovieClip Frame 13
tellTarget (wipe) {
_visible = true;
gotoAndPlay (2);
};
_parent.startGame();
stop();
Symbol 977 MovieClip Frame 24
if (_parent.level != 9) {
if (_parent.bgNumber != 1) {
if (_parent.levelsLoaded[_parent.bgNumber - 2] == true) {
pressAnyKey = new Object();
pressAnyKey.onKeyDown = function () {
gotoAndPlay ("getReadyDone");
};
Key.addListener(pressAnyKey);
} else {
delete pressAnyKeyMC.onEnterFrame;
loadingText._visible = true;
loadingText.play();
loadingText.onEnterFrame = function () {
if (_parent.levelsLoaded[_parent.bgNumber - 2] == true) {
delete this.onEnterFrame;
this._visible = false;
pressAnyKeyMC._visible = true;
pressAnyKey = new Object();
pressAnyKey.onKeyDown = function () {
gotoAndPlay ("getReadyDone");
};
Key.addListener(pressAnyKey);
}
};
}
} else {
pressAnyKey = new Object();
pressAnyKey.onKeyDown = function () {
gotoAndPlay ("getReadyDone");
};
Key.addListener(pressAnyKey);
}
}
stop();
Instance of Symbol 968 MovieClip in Symbol 977 MovieClip Frame 24
onClipEvent (load) {
if (_parent._parent.level == 9) {
this.gotoAndPlay(5);
} else {
this.gotoAndPlay(_parent._parent.currentIntroFrame);
}
}
Instance of Symbol 973 MovieClip "loadingText" in Symbol 977 MovieClip Frame 24
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 976 MovieClip "pressAnyKeyMC" in Symbol 977 MovieClip Frame 24
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
var cnt = (frameRate * 6);
if (_parent._parent.level != 9) {
this.onEnterFrame = function () {
var _local1 = this;
if ((--_local1.cnt) == 0) {
_local1._visible = true;
_local1.play();
}
};
}
}
Symbol 977 MovieClip Frame 36
Key.removeListener(pressAnyKey);
titleMusicFlag = false;
titleMod.stop();
tellTarget (wipe) {
_visible = true;
gotoAndPlay (2);
};
_parent.cutSceneSFX.start();
this.onEnterFrame = function () {
if (wipe._currentframe == 15) {
delete this.onEnterFrame;
_parent.wipeRunningFlag = true;
initInGameMusic();
_parent.preContinueGame();
}
};
stop();
Symbol 977 MovieClip Frame 37
_parent.radarSurround._visible = (_parent.infoBar._visible = false);
_parent.arrowIndicator._visible = false;
_parent.radarMap._visible = false;
_parent.player._visible = false;
tellTarget (wipe) {
gotoAndPlay ("out");
};
pressAnyKey = new Object();
pressAnyKey.onKeyDown = function () {
gotoAndPlay ("gameOverDone");
};
Key.addListener(pressAnyKey);
stop();
Symbol 977 MovieClip Frame 48
Key.removeListener(pressAnyKey);
delete this.onEnterFrame;
_parent.attract();
Symbol 977 MovieClip Frame 69
tellTarget (wipe) {
gotoAndPlay ("out");
};
_parent.infoBar._visible = false;
_parent.radarMap._visible = false;
this.play();
Instance of Symbol 968 MovieClip in Symbol 977 MovieClip Frame 69
onClipEvent (load) {
this.gotoAndStop(_parent._parent.currentIntroFrame);
}
Symbol 977 MovieClip Frame 79
_parent.bumpLevel();
stop();
Symbol 977 MovieClip Frame 80
pressAnyKey = new Object();
pressAnyKey.onKeyDown = function () {
gotoAndPlay ("getReadyDone2");
};
Key.addListener(pressAnyKey);
stop();
Instance of Symbol 976 MovieClip "pressAnyKeyMC" in Symbol 977 MovieClip Frame 80
onClipEvent (load) {
_visible = false;
this.gotoAndStop(1);
var cnt = (frameRate * 6);
this.onEnterFrame = function () {
var _local1 = this;
if ((--_local1.cnt) == 0) {
_local1._visible = true;
_local1.play();
}
};
}
Symbol 977 MovieClip Frame 92
_parent.cutSceneSFX.start();
Key.removeListener(pressAnyKey);
initInGameMusic();
_parent.preContinueGame();
stop();
Symbol 977 MovieClip Frame 93
this.onEnterFrame = function () {
if (wipe._currentframe == 15) {
delete this.onEnterFrame;
_parent.wipeRunningFlag = true;
initInGameMusic();
_parent.preContinueGame();
}
};
stop();