Frame 1
Frame 3
if (this.getBytesTotal() == this.getBytesLoaded()) {
this.gotoAndPlay("skipLoader");
}
_global.mcRoot = this;
Instance of Symbol 34 MovieClip [BG-spaceDeep] "bg" in Frame 3
onClipEvent (load) {
this._visible = false;
}
Frame 4
stop();
bg._visible = true;
bg.speed = -5;
bg.startScroll();
aWatched = [];
loader.aWatched = aWatched;
aWatched[0] = this;
loader.onEnterFrame = function () {
var _local4 = 0;
var _local3 = 0;
while (_local3 < aWatched.length) {
_local4 = _local4 + (aWatched[_local3].getBytesLoaded() / aWatched[_local3].getBytesTotal());
_local3++;
}
_local4 = _local4 / aWatched.length;
nFrame = Math.ceil(_local4 * this._totalframes);
_root.nDebug0 = nFrame;
this.gotoAndStop(Math.ceil(_local4 * this._totalframes));
if (_local4 == 1) {
this._parent.play();
}
};
Instance of Symbol 260 MovieClip "mcMusic" in Frame 6
onClipEvent (load) {
this.snd = new Sound(this);
this.snd.setVolume(40);
}
Instance of Symbol 684 MovieClip [POPups] "popups" in Frame 6
onClipEvent (load) {
this._visible = false;
this.fResume = function () {
_global.mcRoot.oBase.play();
_global.mcRoot.mcMusic.play();
};
}
Frame 7
function monitorComm() {
_root.nDebug3 = "monitoring comm, " + mcComm.getBytesTotal();
if (mcComm.getBytesTotal() > 4) {
if (mcComm.getBytesTotal() == mcComm.getBytesLoaded()) {
_root.nDebug3 = "COMM LOADED" + muck;
muck++;
clearInterval(nInterval);
}
}
}
stop();
_global.oSound = new SoundHandler(mcSound);
nStartLevel = 1;
_global.aUnlocked = [];
_global.debugVR = false;
_global.Postopia = Object.Postopia;
_root.nDebug1 = ((this._parent.getAllVR == undefined) ? (this._parent) : (_level0.getAllVR()));
if (!_global.debugVR) {
if (_level0.getVR("spacechase_clone")) {
_global.aUnlocked[0] = true;
} else {
_global.aUnlocked[0] = false;
}
if (_level0.getVR("spacechase_tries")) {
_global.bTries = true;
_global.aUnlocked[1] = true;
} else {
_global.bTries = false;
_global.aUnlocked[1] = false;
}
if (_level0.getVR("spacechase_zap")) {
_global.aUnlocked[2] = true;
} else {
_global.aUnlocked[2] = false;
}
if (_level0.getVR("spacechase_shield")) {
_global.aUnlocked[3] = true;
} else {
_global.aUnlocked[3] = false;
}
_global.aUnlocked[4] = true;
if (_level0.getVR("spacechase_giggletron")) {
_global.aUnlocked[5] = true;
} else {
_global.aUnlocked[5] = false;
}
} else {
_global.bTries = true;
i = 0;
while (i < 6) {
_global.aUnlocked[i] = true;
i++;
}
}
muck = 0;
_level0.filepath = ((_level0.filepath != null) ? (_level0.filepath) : "");
_root.nDebug3 = _level0.comm;
if (_level0.comm != undefined) {
_root.nDebug3 = "not undefined";
if (typeof(_level0.comm) != "movieclip") {
_root.nDebug3 = "!mc, " + _level0.comm;
mcComm.loadMovie(_level0.comm);
nInterval = setInterval(monitorComm, 10);
}
}
Frame 11
stop();
popups._visible = true;
popups.show("introStory", "game");
Instance of Symbol 722 MovieClip [mcBGs] "mcBG" in Frame 12
onClipEvent (load) {
this.speed = -100;
}
Frame 16
stop();
oBase = new Base();
oMain = new MainWorld(this);
oBase.setWorld(oMain);
floorLauncher = new RockLauncher(600, 370, 200);
ceilLauncher = new RockLauncherTop(600, 370, 200);
rightLauncher = new RockLauncherRight(370, 600);
oMain.rh.addLauncher(floorLauncher);
oMain.rh.addLauncher(ceilLauncher);
oMain.rh.addLauncher(rightLauncher);
oMain.bg = mcBG;
oMain.level = nStartLevel;
oMain.startLevel();
Instance of Symbol 787 MovieClip "mcGigglePrompt" in Frame 16
onClipEvent (load) {
this._visible = _global.aUnlocked[5];
}
Symbol 16 MovieClip [player] Frame 1
#initclip 37
Object.registerClass("player", Player);
#endinitclip
Symbol 17 MovieClip [launchPoint] Frame 1
#initclip 36
Object.registerClass("launchPoint", RockLauncher);
#endinitclip
Symbol 808 MovieClip [__Packages.RockLauncher] Frame 0
class RockLauncher
{
var extent, cutoff, center, height, myHandler;
function RockLauncher (nExtent, nHeight, nCutoff) {
extent = nExtent - nCutoff;
cutoff = nCutoff;
center = nExtent / 2;
height = nHeight;
}
function update(nElapsed) {
if (enabled) {
cLaunch = cLaunch + nElapsed;
if (cLaunch >= nLaunch) {
cLaunch = 0;
var _local6 = myHandler.clips;
var _local2 = _local6.addClip("bigBad");
_local2.gotoAndStop(level);
var _local4 = Math.floor(Math.random() * extent) + cutoff;
var _local8 = center - _local4;
var _local9 = _local8 / center;
var _local5 = -100;
if (level == 1) {
_local5 = 0;
}
var _local3 = (Math.floor(Math.random() * speedVar) + speedBase) + _local5;
if (Math.abs(_local3) < 10) {
_local3 = -20;
}
var _local7 = _local3 * _local9;
_local2._x = _local4;
_local2._y = height;
_local2.m.x = _local7;
_local2.m.y = _local3;
}
}
}
function reset() {
cLaunch = 0;
}
var cLaunch = 0;
var nLaunch = 1;
var speedBase = 300;
var speedVar = 200;
var level = 0;
var enabled = false;
}
Symbol 809 MovieClip [__Packages.RockHandler] Frame 0
class RockHandler
{
var location, clips, bullets, goodies, aLaunchers, update, aBurst;
function RockHandler (location) {
this.location = location;
clips = new ClipHandler(this.location);
bullets = new ClipHandler(this.location._parent.bullets);
goodies = new ClipHandler(this.location._parent.goodies);
aLaunchers = [];
update = updateQuarry;
}
function addLauncher(mcLauncher) {
aLaunchers.push(mcLauncher);
mcLauncher.myHandler = this;
}
function shotsVRocks(aShots) {
var _local16 = clips.clips;
var _local3;
var _local15;
var _local14;
var _local8;
var _local13 = new Point(0, 0);
var _local12 = 0;
while (_local12 < _local16.length) {
_local3 = _local16[_local12];
if (_local3 != null) {
_local13.x = _local3._x;
_local13.y = _local3._y;
var _local7 = 0;
while (_local7 < aShots.length) {
_local15 = aShots[_local7];
_local8 = _local15.line;
_local14 = Math.abs(_local8.distanceFrom(_local13));
if (_local14 < _local3.r) {
if ((_local3._x > (_local8.p0.x - _local3.r)) && (_local3._x < (_local8.p1.x + _local3.r))) {
aShots.splice(_local7, 1);
var _local6;
var _local4 = 0;
while (_local4 < aBurst.length) {
_local6 = bullets.addClip("bullet");
_local6._x = _local3._x;
_local6._y = _local3._y;
_local6.m = aBurst[_local4].copy();
_local6.m.x = _local6.m.x + _local3.m.x;
_local6.m.y = _local6.m.y + _local3.m.y;
_local4++;
}
var _local5;
var _local10;
_local4 = 0;
while (_local4 < nGoodies) {
_local5 = goodies.addClip("smallGood");
_local10 = new Point((Math.random() * 2) - 1, (Math.random() * 2) - 1);
_local5.m = _local10.normalize();
_local5.m.length = 120;
_local5._x = _local3._x;
_local5._y = _local3._y;
_local5.m.x = _local5.m.x + _local3.m.x;
_local5.m.y = _local5.m.y + _local3.m.y;
_local4++;
}
var _local9 = clips.addClip("mcZap");
_local9._x = _local3._x;
_local9._y = _local3._y;
_global.oScore.addScore(_local3.value);
clips.removeClip(_local3);
_global.oSound.playSnd("blowUp");
}
}
_local7++;
}
}
_local12++;
}
}
function updateQuarry(nElapsed) {
var _local3 = 0;
while (_local3 < aLaunchers.length) {
aLaunchers[_local3].update(nElapsed);
_local3++;
}
var _local12 = Phys.gr * nElapsed;
var _local8 = clips.clips;
var _local7;
var _local6;
var _local5;
var _local9 = _local8.length;
_local3 = 0;
while (_local3 < _local9) {
_local7 = _local8[_local3];
if (_local7._name != null) {
_local7.up(nElapsed, _local12);
var _local4 = 0;
while (_local4 < _local9) {
_local6 = _local8[_local4];
if (_local6._name != null) {
if (_local3 != _local4) {
_local5 = _local7.rockHit(_local6);
if (_local5) {
_local7.reactRock(_local5, _local6);
_local5 = null;
_global.oSound.playSnd("stoneImpact");
}
}
}
_local4++;
}
}
_local3++;
}
var _local11 = goodies.clips;
_local3 = 0;
while (_local3 < _local11.length) {
_local11[_local3].up(nElapsed, _local12);
_local3++;
}
}
function updateStation(nElapsed) {
var _local3 = 0;
while (_local3 < aLaunchers.length) {
aLaunchers[_local3].update(nElapsed / 2);
_local3++;
}
var _local12 = 0;
var _local8 = clips.clips;
var _local7;
var _local6;
var _local5;
var _local9 = _local8.length;
_local3 = 0;
while (_local3 < _local9) {
_local7 = _local8[_local3];
if (_local7._name != null) {
_local7.upSt(nElapsed);
var _local4 = 0;
while (_local4 < _local9) {
_local6 = _local8[_local4];
if (_local6._name != null) {
if (_local3 != _local4) {
_local5 = _local7.rockHit(_local6);
if (_local5) {
_local7.reactRock(_local5, _local6);
_local5 = null;
_global.oSound.playSnd("stoneImpact");
}
}
}
_local4++;
}
}
_local3++;
}
var _local11 = goodies.clips;
_local3 = 0;
while (_local3 < _local11.length) {
_local11[_local3].upSt(nElapsed, _local12);
_local3++;
}
}
function updateAsteroid(nElapsed) {
var _local3 = 0;
while (_local3 < aLaunchers.length) {
aLaunchers[_local3].update(nElapsed / 4);
_local3++;
}
var _local12 = 0;
var _local8 = clips.clips;
var _local7;
var _local6;
var _local5;
var _local9 = _local8.length;
_local3 = 0;
while (_local3 < _local9) {
_local7 = _local8[_local3];
if (_local7._name != null) {
_local7.upAs(nElapsed);
var _local4 = 0;
while (_local4 < _local9) {
_local6 = _local8[_local4];
if (_local6._name != null) {
if (_local3 != _local4) {
_local5 = _local7.rockHit(_local6);
if (_local5) {
_local7.reactRock(_local5, _local6);
_local5 = null;
_global.oSound.playSnd("stoneImpact");
}
}
}
_local4++;
}
}
_local3++;
}
var _local11 = goodies.clips;
_local3 = 0;
while (_local3 < _local11.length) {
_local11[_local3].upAs(nElapsed, _local12);
_local3++;
}
}
function reset() {
bullets.removeAllClips();
goodies.removeAllClips();
clips.removeAllClips();
var _local2 = 0;
while (_local2 < aLaunchers.length) {
aLaunchers[_local2].reset();
_local2++;
}
}
var nGoodies = 2;
}
Symbol 810 MovieClip [__Packages.ClipHandler] Frame 0
class ClipHandler
{
var offset, home, clips, openSlots, id;
function ClipHandler (objHome, nOffset) {
if (nOffset == undefined) {
nOffset = 0;
}
offset = nOffset;
home = objHome;
clips = [];
openSlots = [];
id = nId++;
}
function findFirstEmpty() {
var _local2 = 0;
if (openSlots.length == 0) {
_local2 = clips.length;
} else {
_local2 = openSlots.pop();
}
return(_local2);
}
function addClip(sName) {
var _local2 = findFirstEmpty();
if (clips[_local2] != null) {
}
var _local4 = _local2 + offset;
var _local3 = (clips[_local2] = home.attachMovie(sName, "clip" + _local2, _local4));
_local3.nId = _local2;
_local3.handler = this;
return(clips[_local2]);
}
function removeClip(mc) {
if (mc.handler != null) {
if (mc.handler.id == id) {
var _local2 = mc.nId;
openSlots.push(_local2);
clips[_local2].removeMovieClip();
clips[_local2] = null;
return(true);
}
}
return(false);
}
function removeIndex(nIndex) {
if (clips[nIndex] != null) {
openSlots.push(nIndex);
clips[nIndex].removeMovieClip();
clips[nIndex] = null;
return(true);
}
return(false);
}
function swap(nFirst, nSecond) {
if ((clips[nFirst] != null) && (clips[nSecond] != null)) {
var _local4 = clips[nFirst];
clips[nFirst] = clips[nSecond];
clips[nSecond] = _local4;
clips[nFirst].swapDepths(clips[nSecond]._name);
}
}
function removeAllClips() {
var _local2 = 0;
while (_local2 < clips.length) {
removeIndex(_local2);
_local2++;
}
}
static var nId = 0;
}
Symbol 811 MovieClip [__Packages.Point] Frame 0
class Point
{
var m_x, m_y;
function Point (x, y) {
m_x = Number(x);
m_y = Number(y);
}
function get x() {
return(m_x);
}
function set x(n) {
m_x = Number(n);
m_bChanged = true;
//return(x);
}
function get y() {
return(m_y);
}
function set y(n) {
m_y = Number(n);
m_bChanged = true;
//return(y);
}
function get length() {
var _local2;
if (m_bChanged == true) {
m_bChanged = false;
m_nLength = Math.sqrt((x * x) + (y * y));
_local2 = m_nLength;
} else {
_local2 = m_nLength;
}
return(_local2);
}
function set length(newLength) {
if (length != 0) {
var _local2 = newLength / length;
m_nLength = newLength;
m_bChanged = false;
x = x * _local2;
y = y * _local2;
}
//return(length);
}
function get lengthSqu() {
return((m_x * m_x) + (m_y * m_y));
}
function addPoint(p) {
return(new Point(p.__get__x() + x, p.__get__y() + y));
}
function subtractPoint(p) {
return(new Point(x - p.__get__x(), y - p.__get__y()));
}
function addScalar(n) {
return(new Point(x + n, y + n));
}
function subtractScalar(n) {
return(new Point(x - n, y - n));
}
function dot(p) {
return((x * p.__get__x()) + (y * p.__get__y()));
}
function copy() {
return(new Point(x, y));
}
function cross() {
return(new Point(y, -x));
}
function normalize() {
if ((!x) && (!y)) {
return(new Point());
}
var _local2 = length;
return(new Point(x / _local2, y / _local2));
}
function multiply(nFactor) {
var _local2 = copy();
_local2.x = _local2.x * nFactor;
_local2.y = _local2.y * nFactor;
return(_local2);
}
function divide(scalar) {
var _local2 = copy();
if (scalar == 0) {
_local2.x = 0;
_local2.y = 0;
return(undefined);
}
_local2.x = _local2.x / scalar;
_local2.y = _local2.y / scalar;
return(_local2);
}
function reverse() {
var _local2 = new Point(x * -1, y * -1);
return(_local2);
}
function rotate(nRad) {
var _local4 = length;
var _local2 = Math.sin(nRad);
var _local3 = Math.cos(nRad);
if ((_local2 > 1) || (_local2 < -1)) {
}
if ((_local3 > 1) || (_local3 < -1)) {
}
x = ((x * _local3) + (y * (-_local2)));
y = ((x * _local2) + (y * _local3));
length = (_local4);
}
function rotateSinCos(nSin, nCos) {
x = ((x * nCos) + (y * (-nSin)));
y = ((x * nSin) + (y * nCos));
}
function findCosine(vOther) {
var _local3 = dot(vOther);
var _local4 = length * vOther.__get__length();
var _local2 = _local3 / _local4;
return(_local2);
}
function equals(p) {
if ((x == p.__get__x()) && (y == p.__get__y())) {
return(true);
}
return(false);
}
function zero() {
m_x = 0;
m_y = 0;
m_bChanged = true;
}
function distSqu(p) {
var _local3 = p.__get__x() - x;
var _local2 = p.__get__y() - y;
return((_local3 * _local3) + (_local2 * _local2));
}
function toString() {
return(((("Point (" + x) + ",") + y) + ")");
}
var m_bChanged = true;
var m_nLength = 0;
}
Symbol 812 MovieClip [__Packages.Phys] Frame 0
class Phys
{
function Phys () {
}
static function drag(f, t) {
return(f / (fr / t));
}
static function bounce(v, n) {
var _local2 = v.reverse();
var _local1 = n.multiply(n.dot(_local2));
v.__set__x((_local1.x * bf) + (_local1.x - _local2.x));
v.__set__y((_local1.y * bf) + (_local1.y - _local2.y));
}
static var gr = 400;
static var fr = 0.4;
static var bf = 0.7;
static var height = 370;
static var width = 600;
static var TWOPI = (Math.PI*2);
}
Symbol 813 MovieClip [__Packages.Player] Frame 0
class Player extends MovieClip
{
var r, aShots, m, nDamage, nMar, cLives, pStart, _x, _y, attDistSqu, aPower, nMarMulti, update, startNode, mcFire, mcShots, main, gotoAndStop, _visible, mcGTron, mcShield, attract, gazMag;
function Player () {
super();
r = 30;
aShots = [];
m = new Point(0, 0);
nDamage = nDamageLimit;
nMar = nMLimit;
cLives = nLives;
pStart = new Point(_x, _y);
attDistSqu = attDist * attDist;
aPower = [];
if (_global.debugVR) {
nMarMulti = 2;
} else {
nMarMulti = 1;
}
update = updateLive;
}
function get mRatio() {
return(nMar / nMLimit);
}
function updateLive(nElapsed) {
var _local3 = startNode;
var _local4;
var _local5;
while (_local3 != null) {
_local5 = _local3.update(nElapsed);
if (_local5 == false) {
if (_local4 == null) {
startNode = _local3.nextNode;
_local3 = _local3.nextNode;
} else {
_local4.nextNode = _local3.nextNode;
_local3 = _local3.nextNode;
}
} else {
_local4 = _local3;
_local3 = _local3.nextNode;
}
}
var _local7 = speed * nElapsed;
if (Key.isDown(38)) {
_y = _y - _local7;
}
if (Key.isDown(40)) {
_y = _y + _local7;
}
if (Key.isDown(37)) {
_x = _x - _local7;
}
if (Key.isDown(39)) {
_x = _x + _local7;
}
if (Key.isDown(68)) {
if (_global.mcRoot.mcGigglePrompt._visible == true) {
var _local8 = aPower.length;
pushPower(new GTron(this, _local8));
_global.oSound.playSnd("VRPickup");
}
}
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
m.length = m.length - Phys.drag(m.__get__length(), nElapsed);
if (m.__get__length() < 10) {
m.__set__length(0);
}
if (Key.isDown(32)) {
if (cFire <= 0) {
fire();
}
}
if (cFire > 0) {
cFire = cFire - nElapsed;
}
handleShots(nElapsed);
}
function updateDead(nElapsed) {
var _local3 = Phys.gr * nElapsed;
m.y = m.y + _local3;
_y = _y + (m.__get__y() * nElapsed);
_x = _x - (speed * nElapsed);
if (_x <= (-r)) {
die();
update = updateLive;
}
handleShots(nElapsed);
}
function updateDying(nElapsed) {
cDying = cDying + nElapsed;
if (cDying >= nDying) {
cDying = 0;
update = updateDead;
}
handleShots(nElapsed);
}
function fire() {
aShots.push(new Shot((_x + mcFire._x) + 5, _y + mcFire._y, mcShots));
cFire = nFire;
mcFire.play();
_global.oSound.playSnd("fire", 60);
}
function handleShots(nElapsed) {
mcShots.clear();
var _local4 = aShots.length;
var _local3;
var _local2 = 0;
while (_local2 < _local4) {
_local3 = aShots[_local2];
_local3.update(nElapsed);
if (_local3.nAlpha <= 0) {
aShots.splice(_local2, 1);
}
_local2++;
}
}
function damage(nD) {
if ((state == NORMAL) && (nShield != 0)) {
nDamage = nDamage - ((Math.floor(nD) * 1.8) * nShield);
_global.oScore.setDamage(nDamage / nDamageLimit);
if (nDamage > 0) {
setState(HIT);
} else {
setState(DEAD);
}
_global.oSound.playSnd("impact");
}
}
function marshmallow(nM) {
nMar = nMar - (nM * nMarMulti);
var _local4 = nMar / nMLimit;
_global.oScore.setMarsh(_local4);
if (_local4 <= 0) {
if (_global.mcRoot.mcGemHolder.state == GemHolder.INACTIVE) {
main.callGem();
var _local3 = _global.mcRoot.mcPrompts;
switch (main.level) {
case 1 :
_local3.gotoAndPlay("dino");
break;
case 2 :
_local3.gotoAndPlay("fred");
break;
case 3 :
_local3.gotoAndPlay("barney");
break;
case 4 :
_local3.gotoAndPlay("fred");
break;
case 5 :
_local3.gotoAndPlay("dino");
break;
case 6 :
_local3.gotoAndPlay("barney");
}
}
}
}
function reset() {
nDamage = nDamageLimit;
_global.oScore.setDamage(1);
nMar = nMLimit;
_global.oScore.setMarsh(1);
cLives = nLives;
_global.oScore.setLives(cLives);
}
function resetPowers() {
var _local2 = startNode;
var _local3;
var _local4 = false;
while (_local2 != null) {
_local2.deactivate();
if (_local4 == false) {
if (_local3 == null) {
startNode = _local2.nextNode;
_local2 = _local2.nextNode;
} else {
_local3.nextNode = _local2.nextNode;
_local2 = _local2.nextNode;
}
} else {
_local3 = _local2;
_local2 = _local2.nextNode;
}
}
}
function resetPos() {
_x = pStart.x;
_y = pStart.y;
setState(INVULNERABLE);
_global.oSound.playSnd("fadeIn");
}
function resetMeters() {
nDamage = nDamageLimit;
_global.oScore.setDamage(1);
nMar = nMLimit;
_global.oScore.setMarsh(1);
aShots = [];
}
function clearShots() {
aShots = [];
mcShots.clear();
}
function die() {
cLives--;
_global.oScore.setLives(cLives);
nDamage = nDamageLimit;
_global.oScore.setDamage(1);
m.__set__x(0);
m.__set__y(0);
if (cLives <= 0) {
_global.mcRoot.oMain.gameOver();
} else {
resetPos();
}
resetPowers();
setState(INVULNERABLE);
}
function setState(nState) {
if (nState == HIT) {
var _local3 = aPower.length;
pushPower(new Hit(this, _local3));
state = nState;
gotoAndStop("hit");
} else if (nState == INVULNERABLE) {
var _local3 = aPower.length;
pushPower(new Invulnerable(this, _local3));
state = nState;
gotoAndStop("invulnerable");
} else if (nState == DEAD) {
state = nState;
gotoAndStop("destroyed");
update = updateDying;
} else if (nState == NORMAL) {
state = nState;
gotoAndStop("fly");
_visible = true;
}
}
function attractRock(ro, nElapsed) {
var _local2 = new Point(_x - ro._x, _y - ro._y);
if (_local2.lengthSqu <= attDistSqu) {
_local2.length = attSpeed * nElapsed;
ro._x = ro._x + _local2.x;
ro._y = ro._y + _local2.y;
}
}
function powerUp(nP) {
var _local5;
switch (nP) {
case Powerup.SHIELD :
_global.oSound.playSnd("VRPickup");
if (nShield == 1) {
var _local3 = aPower.length;
pushPower(new Shield(this, _local3));
}
break;
case Powerup.LIVES :
_global.oSound.playSnd("VRPickup");
_global.aUnlocked[nP] = false;
cLives = cLives * 2;
_global.oScore.setLives(cLives);
break;
case Powerup.MAGNET :
_global.oSound.playSnd("VRPickup");
var _local3 = aPower.length;
pushPower(new Magnet(this, _local3));
break;
case Powerup.ZAP :
_global.oSound.playSnd("VRPickup");
_local3 = aPower.length;
pushPower(new Zap(this, _local3));
break;
case Powerup.REPAIR :
heal();
}
}
function activateShield() {
if (mcGTron._visible == false) {
nShield = 0.5;
}
mcShield._visible = true;
}
function deactivateShield() {
if (mcGTron._visible == true) {
nShield = 0;
} else {
nShield = 1;
}
mcShield._visible = false;
}
function heal() {
_global.oSound.playSnd("health");
nDamage = nDamage + nHeal;
if (nDamage > nDamageLimit) {
nDamage = nDamageLimit;
}
_global.oScore.setDamage(nDamage / nDamageLimit);
}
function doubleShots() {
nFire = 0.25;
mcShots.nColor = zapColor;
}
function halveShots() {
nFire = 0.5;
mcShots.nColor = baseColor;
}
function activateMag() {
attract = attractRock;
gazMag._visible = true;
}
function deactivateMag() {
attract = null;
gazMag._visible = false;
}
function activateGig() {
nShield = 0;
_global.mcRoot.mcGigglePrompt._visible = false;
mcGTron._visible = true;
}
function deactivateGig() {
if (mcShield._visible == true) {
nShield = 0.5;
} else {
nShield = 1;
}
mcGTron._visible = false;
}
function pushPower(oPower) {
oPower.nextNode = startNode;
startNode = oPower;
}
var cFire = 0;
var nFire = 0.5;
var baseColor = 16711680;
var zapColor = 255;
var speed = 300;
var state = 0;
static var NORMAL = 0;
static var INVULNERABLE = 1;
static var HIT = 2;
static var DEAD = 3;
var cState = 0;
var nStateHIT = 1;
var nStateINVUL = 2;
var nDamageLimit = 5000;
var nHeal = 1000;
var nMLimit = 100;
var nLives = 3;
var attDist = 200;
var attSpeed = 600;
var bTries = false;
var bZap = false;
var nShield = 1;
var bMag = false;
var bGiggle = false;
var nDying = 1;
var cDying = 0;
}
Symbol 814 MovieClip [__Packages.GTron] Frame 0
class GTron
{
var nIndex, player;
function GTron (player, index) {
nIndex = index;
this.player = player;
this.player.activateGig();
}
function update(nElapsed) {
cDur = cDur + nElapsed;
player.mcGTron._rotation = player.mcGTron._rotation + (rot * nElapsed);
_root.nDebug1 = "GTron time:" + cDur;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.deactivateGig();
}
var nDur = 20;
var cDur = 0;
var rot = 180;
}
Symbol 815 MovieClip [__Packages.Shot] Frame 0
class Shot
{
var hX, hY, tX, tY, location, line;
function Shot (oX, oY, location) {
hX = oX;
hY = oY;
tX = oX;
tY = oY;
this.location = location;
line = new Line(0, 0, 0, 0);
}
function update(nElapsed) {
var move = (speed * nElapsed);
var tMove = (move / 2);
var fade = (aFade * nElapsed);
var cShift = (cFade * nElapsed);
var cThick = (tFade * nElapsed);
line.setLine(hX, hY, hX + move, hY);
hX = hX + move;
var nfColor = (location.nColor + nColor);
with (location) {
lineStyle(nThick, nfColor, nAlpha);
moveTo(tX, tY);
lineTo(hX, hY);
}
nAlpha = nAlpha - fade;
nColor = nColor - cShift;
tX = tX + tMove;
nThick = nThick - cThick;
}
function toString() {
return(((("[Shot, head x:" + hX) + ", y:") + hY) + "]");
}
var speed = 2000;
var aFade = 120;
var nAlpha = 100;
var cFade = 65280;
var nColor = 65280;
var tFade = 20;
var nThick = 10;
}
Symbol 816 MovieClip [__Packages.Line] Frame 0
class Line
{
var p0, p1, vector, vN;
function Line (x0, y0, x1, y1) {
p0 = new Point(x0, y0);
p1 = new Point(x1, y1);
vector = new Point(p1.__get__x() - p0.__get__x(), p1.__get__y() - p0.__get__y());
}
function get normal() {
if (bChanged == true) {
bChanged = false;
var _local2 = new Point(vector.__get__y(), -vector.__get__x());
vN = _local2.normalize();
}
return(vN);
}
function setLine(x0, y0, x1, y1) {
p0.__set__x(x0);
p0.__set__y(y0);
p1.__set__x(x1);
p1.__set__y(y1);
vector.__set__x(p1.__get__x() - p0.__get__x());
vector.__set__y(p1.__get__y() - p0.__get__y());
bChanged = true;
}
function move(nX, nY) {
p0.x = p0.x + nX;
p0.y = p0.y + nY;
p1.x = p1.x + nX;
p1.y = p1.y + nY;
}
function collisionPointSwept(p, m, radius) {
var _local26 = m.dot(normal);
if (_local26 > 0) {
return(null);
}
var _local19 = new Point(p.__get__x() - p0.__get__x(), p.__get__y() - p0.__get__y());
var _local15 = normal.multiply(radius);
var _local4 = _local19.subtractPoint(_local15);
var _local5 = (((-_local4.y) * m.__get__x()) + (_local4.x * m.__get__y())) / ((m.__get__y() * vector.__get__x()) + ((-m.__get__x()) * vector.__get__y()));
var _local10;
if ((_local5 >= 0) && (_local5 <= 1)) {
var _local3 = new Point(vector.__get__x() * _local5, vector.__get__y() * _local5);
var _local7 = _local3.x - _local4.x;
var _local6 = _local3.y - _local4.y;
var _local12 = m.__get__x();
var _local11 = m.__get__y();
var _local28 = new Point(_local3.x - _local4.x, _local3.y - _local4.y);
if (((_local7 * _local12) + (_local6 * _local11)) < 0) {
return(null);
}
_local7 = _local7 * _local7;
_local6 = _local6 * _local6;
_local12 = _local12 * _local12;
_local11 = _local11 * _local11;
var _local25 = _local7 + _local6;
if (_local25 > (_local12 + _local11)) {
return(null);
}
_local3.x = _local3.x + (p0.__get__x() + _local15.x);
_local3.y = _local3.y + (p0.__get__y() + _local15.y);
_local10 = new CollisionResult(_local3, normal, _local25);
_local10.lHit = _local3;
} else {
var _local18 = m.normalize();
if (_local5 < 0) {
var _local23 = p0;
var _local20 = _local19.reverse();
} else if (_local5 > 0) {
var _local23 = p1;
var _local20 = new Point(p1.__get__x() - p.__get__x(), p1.__get__y() - p.__get__y());
}
var _local13 = _local20.dot(_local18);
if (m.__get__length() < (Math.abs(_local13) - radius)) {
return(null);
}
var _local17 = _local20.length;
var _local24 = (_local17 * _local17) - (_local13 * _local13);
var _local21 = radius * radius;
if (_local24 > _local21) {
return(null);
}
var _local8 = Math.sqrt(_local21 - _local24) - _local13;
if (Math.abs(_local8) > m.__get__length()) {
return(null);
}
var _local14 = _local18.multiply(_local8);
if (_local14.dot(m) > 0) {
return(null);
}
var _local16 = new Point(p.__get__x() - _local14.x, p.__get__y() - _local14.y);
var _local27 = new Point(_local16.x - _local23.x, _local16.y - _local23.y).normalize();
_local10 = new CollisionResult(_local16, _local27, _local8 * _local8);
_local10.lHit = _local14;
}
return(_local10);
}
function collisionPoint(p, m, r) {
var _local18 = m.dot(normal);
if (_local18 > 0) {
return(null);
}
var _local3 = new Point(p.__get__x() + m.__get__x(), p.__get__y() + m.__get__y());
var _local12 = (vector.__get__x() * (_local3.x - p0.__get__x())) + (vector.__get__y() * (_local3.y - p0.__get__y()));
var _local13 = vector.dot(vector);
var _local2;
var _local9;
var _local8;
if (_local12 < 0) {
_local2 = new Point(_local3.x - p0.__get__x(), _local3.y - p0.__get__y());
_local9 = _local2.dot(_local2);
if (_local9 > (r * r)) {
return(null);
}
var _local11 = _local2.normalize();
_local2.length = r;
var _local5 = p0.addPoint(_local2);
var _local14 = _local5.x - p.__get__x();
var _local16 = _local5.y - p.__get__y();
_local8 = new CollisionResult(_local5, _local11, (_local14 * _local14) + (_local16 * _local16));
_local8.lHit = p0;
_local8.nRatio = 0;
} else if (_local12 > _local13) {
_local2 = new Point(_local3.x - p1.__get__x(), _local3.y - p1.__get__y());
_local9 = _local2.dot(_local2);
if (_local9 > (r * r)) {
return(null);
}
var _local11 = _local2.normalize();
_local2.length = r;
var _local5 = p1.addPoint(_local2);
var _local14 = _local5.x - p.__get__x();
var _local16 = _local5.y - p.__get__y();
_local8 = new CollisionResult(_local5, _local11, (_local14 * _local14) + (_local16 * _local16));
_local8.lHit = p1;
_local8.nRatio = 1;
} else {
var _local10 = _local12 / _local13;
var _local7 = new Point(p0.__get__x() + (vector.__get__x() * _local10), p0.__get__y() + (vector.__get__y() * _local10));
var _local17 = _local3.x - _local7.x;
var _local15 = _local3.y - _local7.y;
if (((_local17 * _local17) + (_local15 * _local15)) > (r * r)) {
return(null);
}
var _local5 = new Point(_local7.x + (normal.x * r), _local7.y + (normal.y * r));
var _local14 = _local5.x - p.__get__x();
var _local16 = _local5.y - p.__get__y();
_local8 = new Line(_local5.x + _local11.x, _local5.y + _local11.y, _local5.x, _local5.y);
var _local19 = (_local14 * _local14) + (_local16 * _local16);
_local8 = new CollisionResult(_local5, normal, _local19);
_local8.lHit = _local7;
_local8.nRatio = _local10;
}
return(_local8);
}
function nearestPointSeg(m0) {
var _local5 = new Point(m0.__get__x() - p0.__get__x(), m0.__get__y() - p0.__get__y());
var _local2 = vector.dot(_local5);
var _local4 = vector.dot(vector);
if (_local2 < 0) {
return(p0);
}
if (_local2 > _local4) {
return(p1);
}
var _local3 = _local2 / _local4;
return(new Point(p0.__get__x() + (vector.__get__x() * _local3), p0.__get__y() + (vector.__get__y() * _local3)));
}
function nearestPointLine(m0) {
var _local5 = new Point(m0.__get__x() - p0.__get__x(), m0.__get__y() - p0.__get__y());
var _local3 = vector.dot(_local5);
var _local4 = vector.dot(vector);
var _local2 = _local3 / _local4;
return(new Point(p0.__get__x() + (vector.__get__x() * _local2), p0.__get__y() + (vector.__get__y() * _local2)));
}
function nearestPointRatio(p) {
var _local5 = new Point(p.__get__x() - p0.__get__x(), p.__get__y() - p0.__get__y());
var _local3 = vector.dot(_local5);
var _local4 = vector.dot(vector);
var _local2 = _local3 / _local4;
return(_local2);
}
function distanceFrom(p) {
var _local3 = new Point(p.__get__x() - p0.__get__x(), p.__get__y() - p0.__get__y());
var _local2 = normal.dot(_local3);
return(_local2);
}
function intersection(op0, op1, oVector) {
var _local11;
var _local9;
var _local7;
var _local10;
var _local8;
var _local6;
var _local5;
var _local4;
var _local3;
var _local12;
var _local13;
if (vector.__get__x() != 0) {
_local4 = vector.__get__y() / vector.__get__x();
} else {
_local4 = Infinity;
}
if ((op1.__get__x() - op0.__get__x()) != 0) {
_local3 = (op1.__get__y() - op0.__get__y()) / (op1.__get__x() - op0.__get__x());
} else {
_local3 = Infinity;
}
_local11 = _local4;
_local10 = _local3;
_local9 = -1;
_local8 = -1;
_local7 = p0.__get__y() - (_local4 * p0.__get__x());
_local6 = op0.__get__y() - (_local3 * op0.__get__x());
_local5 = 1 / ((_local11 * _local8) - (_local10 * _local9));
_local12 = ((_local9 * _local6) - (_local8 * _local7)) * _local5;
_local13 = ((_local10 * _local7) - (_local11 * _local6)) * _local5;
return(new Point(_local12, _local13));
}
function toString() {
return(((((((("Line(" + p0.__get__x()) + ", ") + p0.__get__y()) + ", ") + p1.__get__x()) + ", ") + p1.__get__y()) + ")");
}
var bChanged = true;
}
Symbol 817 MovieClip [__Packages.CollisionResult] Frame 0
class CollisionResult
{
var hit, normal, distSqu;
function CollisionResult (pHit, pNormal, nDist) {
hit = pHit;
normal = pNormal;
distSqu = nDist;
}
function toString() {
return((((("[CollisionResult], " + hit) + ", ") + normal) + ", ") + distSqu);
}
}
Symbol 818 MovieClip [__Packages.GemHolder] Frame 0
class GemHolder extends MovieClip
{
var pStart, _x, _y, update, main, mcGP, player;
function GemHolder () {
super();
pStart = new Point(_x, _y);
update = updateInactive;
}
function reset() {
cMove = 0;
_x = pStart.x;
_y = pStart.y;
update = updateInactive;
}
function updateMove(nElapsed) {
cMove = cMove + nElapsed;
_x = _x - (speed * nElapsed);
if (cMove >= dur) {
setState(WAIT);
}
if (gemHitTest()) {
gemHit();
}
}
function updateWait() {
if (gemHitTest()) {
gemHit();
}
}
function updateInactive() {
}
function gemHit() {
main.endLevel();
var _local3 = _global.oSound.playSnd("gem");
_local3.main = main;
_local3.onSoundComplete = function () {
this.main.levelUp();
this.onSoundComplete = null;
};
}
function gemHitTest() {
var _local2 = new Point(player._x - (_x + mcGP._x), player._y - (_y + mcGP._y));
var _local4 = _local2.dot(_local2);
var _local3 = player.r + nGemR;
var _local5 = _local3 * _local3;
if (_local4 <= _local5) {
return(true);
}
return(false);
}
function setState(nState) {
state = nState;
switch (nState) {
case INACTIVE :
reset();
break;
case MOVING :
update = updateMove;
break;
case WAIT :
update = updateWait;
}
}
var speed = 300;
var dur = 1.5;
var cMove = 0;
var nGemR = 30;
var state = 0;
static var INACTIVE = 0;
static var MOVING = 1;
static var WAIT = 2;
}
Symbol 819 MovieClip [__Packages.Hit] Frame 0
class Hit
{
var nIndex, player;
function Hit (player, index) {
nIndex = index;
this.player = player;
}
function update(nElapsed) {
cDur = cDur + nElapsed;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.setState(Player.NORMAL);
}
var nDur = 1;
var cDur = 0;
}
Symbol 820 MovieClip [__Packages.Invulnerable] Frame 0
class Invulnerable
{
var nIndex, player;
function Invulnerable (player, index) {
nIndex = index;
this.player = player;
}
function update(nElapsed) {
cDur = cDur + nElapsed;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.setState(Player.NORMAL);
}
var nDur = 2;
var cDur = 0;
}
Symbol 821 MovieClip [__Packages.Rock] Frame 0
class Rock extends MovieClip
{
var r, rockClip, m, rot, _x, _y, _rotation, handler;
function Rock () {
super();
r = rockClip._width / 2;
m = new Point(0, 0);
rot = Math.floor(Math.random() * 1020) - 360;
}
function sphereHit(s) {
var _local2 = new Point(s._x - _x, s._y - _y);
var _local3 = r + s.r;
var _local6 = _local3 * _local3;
var _local4 = _local2.dot(_local2);
if (_local4 < _local6) {
var _local8 = Math.sqrt(_local4);
var _local7 = (_local3 - _local8) / 2;
_local2.length = _local7;
return(_local2);
}
return(null);
}
function rockHit(s) {
var _local2 = new Point(s._x - _x, s._y - _y);
if (_local2.dot(m) <= 0) {
return(undefined);
}
var _local3 = r + s.r;
var _local6 = _local3 * _local3;
var _local4 = _local2.dot(_local2);
if (_local4 < _local6) {
var _local8 = Math.sqrt(_local4);
var _local7 = (_local3 - _local8) / 2;
_local2.length = _local7 + 1;
return(_local2);
}
return(null);
}
function up(nElapsed, g) {
_rotation = _rotation + (rot * nElapsed);
m.y = m.y + g;
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
if (_x < (-r)) {
handler.removeClip(this);
} else if (_x > (Phys.width + r)) {
handler.removeClip(this);
}
var _local3 = Phys.height - r;
if (_y > _local3) {
m.__set__y(-Math.abs(m.__get__y()));
_y = _local3 + (m.__get__y() * nElapsed);
}
}
function upSt(nElapsed) {
_rotation = _rotation + (rot * nElapsed);
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
if (_x < (-r)) {
handler.removeClip(this);
} else if (_x > (Phys.width + r)) {
handler.removeClip(this);
}
var _local3 = Phys.height - r;
if (_y > _local3) {
m.__set__y(-Math.abs(m.__get__y()));
_y = _local3 + (m.__get__y() * nElapsed);
} else if (_y < r) {
m.__set__y(Math.abs(m.__get__y()));
_y = r;
}
}
function upAs(nElapsed) {
_rotation = _rotation + (rot * nElapsed);
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
if (_x < (-r)) {
handler.removeClip(this);
} else if (_x > ((Phys.width + r) + 10)) {
handler.removeClip(this);
}
var _local3 = Phys.height - r;
if (_y > _local3) {
_y = r;
} else if (_y < r) {
_y = _local3 + (m.__get__y() * nElapsed);
}
}
function reactRock(d, r) {
_x = _x - d.x;
_y = _y - d.y;
r._x = r._x + d.x;
r._y = r._y + d.y;
var _local2 = d.normalize();
var _local5 = m;
var _local4 = r.m;
var _local9 = _local5.dot(_local2);
var _local8 = _local4.dot(_local2);
var _local3 = _local9 - _local8;
_local5.x = _local5.x - (_local3 * _local2.x);
_local5.y = _local5.y - (_local3 * _local2.y);
_local4.x = _local4.x + (_local3 * _local2.x);
_local4.y = _local4.y + (_local3 * _local2.y);
r.damage(_local3);
}
function react(p) {
var _local2 = p.m;
_local2.x = _local2.x + m.x;
_local2.y = _local2.y + m.y;
handler.removeClip(this);
}
function damage(nD) {
}
var value = 1;
}
Symbol 822 MovieClip [__Packages.Powerup] Frame 0
class Powerup extends Rock
{
var rot, r, type, handler;
function Powerup () {
super();
rot = 0;
r = 25;
}
function react(p) {
p.powerUp(type);
handler.removeClip(this);
}
var value = 1;
var marValue = 10;
static var MAGNET = 0;
static var LIVES = 1;
static var ZAP = 2;
static var SHIELD = 3;
static var REPAIR = 4;
static var TYPES = 5;
var nMarProb = 0.2;
}
Symbol 823 MovieClip [__Packages.Shield] Frame 0
class Shield
{
var nIndex, player;
function Shield (player, index) {
nIndex = index;
this.player = player;
this.player.activateShield();
}
function update(nElapsed) {
cDur = cDur + nElapsed;
_root.nDebug1 = "Shield time:" + cDur;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.deactivateShield();
}
var nDur = 10;
var cDur = 0;
}
Symbol 824 MovieClip [__Packages.Magnet] Frame 0
class Magnet
{
var nIndex, player;
function Magnet (player, index) {
nIndex = index;
this.player = player;
this.player.activateMag();
}
function update(nElapsed) {
cDur = cDur + nElapsed;
_root.nDebug1 = "Magnet time:" + cDur;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.deactivateMag();
}
var nDur = 10;
var cDur = 0;
}
Symbol 825 MovieClip [__Packages.Zap] Frame 0
class Zap
{
var nIndex, player;
function Zap (player, index) {
nIndex = index;
this.player = player;
this.player.doubleShots();
}
function update(nElapsed) {
cDur = cDur + nElapsed;
_root.nDebug1 = "Zap time:" + cDur;
if (cDur >= nDur) {
deactivate();
return(false);
}
return(true);
}
function deactivate() {
player.halveShots();
}
var nDur = 10;
var cDur = 0;
}
Symbol 826 MovieClip [__Packages.ParallaxObject] Frame 0
class ParallaxObject extends MovieClip
{
static var stageWidth, stageHeight;
var halfWidth, _width, onEnterFrame, _x, gotoAndStop;
function ParallaxObject () {
super();
halfWidth = _width / 2;
}
function set speed(s) {
if (!isNaN(Number(s))) {
nSpeed = s;
}
//return(speed);
}
function get speed() {
return(nSpeed);
}
static function init() {
stageWidth = Stage.width;
stageHeight = Stage.height;
return(true);
}
function startScroll() {
onEnterFrame = update;
}
function stopScroll() {
delete onEnterFrame;
}
function update() {
_x = _x + speed;
if (Math.abs(_x) > halfWidth) {
var _local2 = speed / Math.abs(speed);
_x = _x - (_local2 * halfWidth);
flip();
}
}
function flip() {
nFlip = Number(!nFlip);
gotoAndStop(nFlip + 1);
}
static var bInit = init();
var nSpeed = 0;
var nFlip = 0;
}
Symbol 827 MovieClip [__Packages.Bullet] Frame 0
class Bullet extends Rock
{
var m, _x, _y, r, handler;
function Bullet () {
super();
}
function update(nElapsed, g) {
m.y = m.y + g;
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
if (_x < (-r)) {
handler.removeClip(this);
} else if (_x > (Phys.width + r)) {
handler.removeClip(this);
}
var _local2 = Phys.height - r;
if (_y > _local2) {
handler.removeClip(this);
}
}
function updateStation(nElapsed, g) {
_x = _x + (m.__get__x() * nElapsed);
_y = _y + (m.__get__y() * nElapsed);
if (_x < (-r)) {
handler.removeClip(this);
} else if (_x > (Phys.width + r)) {
handler.removeClip(this);
}
var _local2 = Phys.height - r;
if (_y > _local2) {
handler.removeClip(this);
} else if (_y < r) {
handler.removeClip(this);
}
}
function react(d, r) {
_x = _x - d.x;
_y = _y - d.y;
r._x = r._x + d.x;
r._y = r._y + d.y;
var _local2 = d.normalize();
var _local5 = m;
var _local4 = r.m;
var _local9 = _local5.dot(_local2);
var _local8 = _local4.dot(_local2);
var _local3 = _local9 - _local8;
_local5.x = _local5.x - (_local3 * _local2.x);
_local5.y = _local5.y - (_local3 * _local2.y);
_local4.x = _local4.x + (_local3 * _local2.x);
_local4.y = _local4.y + (_local3 * _local2.y);
r.damage(_local3);
handler.removeClip(this);
}
}
Symbol 828 MovieClip [__Packages.Goodie] Frame 0
class Goodie extends Rock
{
var gotoAndStop, type, handler;
function Goodie () {
super();
if (Math.random() > nMarProb) {
gotoAndStop(5);
type = CEREAL;
} else {
var _local3 = Math.ceil(Math.random() * 4);
gotoAndStop(_local3);
type = MARSHMALLOW;
}
}
function react(p) {
if (type == CEREAL) {
_global.oScore.addScore(value);
_global.oSound.playSnd("points");
} else {
p.marshmallow(marValue);
_global.oSound.playSnd("candy");
}
handler.removeClip(this);
}
var value = 1;
var marValue = 5;
static var CEREAL = 0;
static var MARSHMALLOW = 1;
var nMarProb = 0.2;
}
Symbol 829 MovieClip [__Packages.MeterNScale] Frame 0
class MeterNScale extends MovieClip
{
var nStartX, meter, nMeterWidth, range;
function MeterNScale () {
super();
nStartX = meter._x;
nMeterWidth = meter._width;
range = nMeterWidth + nStartX;
}
function setMeter(nSet) {
if (nSet > 1) {
nSet = 1;
} else if (nSet < 0) {
nSet = 0;
}
if (nSet <= 0.2) {
bBlink = true;
} else {
bBlink = false;
meter._visible = true;
}
var _local3 = -(nSet * range);
meter._x = _local3 + nStartX;
}
var bBlink = false;
}
Symbol 830 MovieClip [__Packages.Menu] Frame 0
class Menu extends MovieClip
{
var sReturnFrame, _parent, gotoAndStop, fResume;
function Menu () {
super();
}
function show(sFrame, sReturn) {
if (sReturn != null) {
sReturnFrame = sReturn;
}
_parent.music.oSound.stop();
_global.mcRoot.itemHolder._visible = false;
_global.prompts._visible = false;
_global.mcRoot.oBase.pause();
_global.mcRoot.mcMusic.snd.stop();
_global.mcRoot.mcPrompts.gotoAndStop(1);
gotoAndStop(sFrame);
}
function resume() {
gotoAndStop("blank");
if (sReturnFrame != null) {
_global.mcRoot.gotoAndStop(sReturnFrame);
sReturnFrame = null;
} else {
fResume();
}
}
function playAgain() {
_global.oScore.reset();
_global.mcRoot.mcMeter.reset();
_global.mcRoot.oMain.reset();
_global.mcRoot.itemHolder._visible = true;
_global.prompts._visible = true;
show("levelStart");
}
function newGame() {
gotoAndStop("blank");
_global.mcRoot.oMain.reset();
_global.mcRoot.oMain.startLevel();
if (_global.bTries) {
_global.aUnlocked[1] = true;
} else {
_global.aUnlocked[1] = false;
}
}
}
Symbol 831 MovieClip [__Packages.SoundHandler] Frame 0
class SoundHandler
{
var location, aSnd;
function SoundHandler (loc) {
location = loc;
aSnd = [];
var _local3;
var _local2 = 0;
while (_local2 < 8) {
_local3 = loc.createEmptyMovieClip("mcSnd" + _local2, _local2);
aSnd[_local2] = new Sound(_local3);
_local2++;
}
}
function playSnd(sId, vol) {
var _local2 = aSnd[cSound];
_local2.stop();
if (vol != undefined) {
_local2.setVolume(vol);
} else {
_local2.setVolume(100);
}
_local2.attachSound(sId);
_local2.start();
cSound++;
if (cSound >= aSnd.length) {
cSound = 0;
}
return(_local2);
}
var cSound = 0;
}
Symbol 832 MovieClip [__Packages.ScrollBG] Frame 0
class ScrollBG extends MovieClip
{
static var stageWidth, stageHeight;
var halfWidth, _width, bg;
function ScrollBG () {
super();
halfWidth = _width / 2;
}
function set speed(s) {
if (!isNaN(Number(s))) {
nSpeed = s;
}
//return(speed);
}
function get speed() {
return(nSpeed);
}
static function init() {
stageWidth = Stage.width;
stageHeight = Stage.height;
return(true);
}
function update(nElapsed) {
bg._x = bg._x + (speed * nElapsed);
if (Math.abs(bg._x) > halfWidth) {
var _local2 = speed / Math.abs(speed);
bg._x = bg._x - (_local2 * halfWidth);
flip();
}
}
function flip() {
nFlip = Number(!nFlip);
bg.gotoAndStop(nFlip + 1);
}
static var bInit = init();
var nSpeed = 0;
var nFlip = 0;
}
Symbol 833 MovieClip [__Packages.RockLauncherRight] Frame 0
class RockLauncherRight
{
var extent, cutoff, center, height, myHandler;
function RockLauncherRight (nExtent, nHeight, nCutoff) {
if (nCutoff == undefined) {
nCutoff = 0;
}
extent = nExtent - nCutoff;
cutoff = nCutoff;
center = nExtent / 2;
height = nHeight;
}
function update(nElapsed) {
if (enabled) {
cLaunch = cLaunch + nElapsed;
if (cLaunch >= nLaunch) {
cLaunch = 0;
var _local6 = myHandler.clips;
var _local2 = _local6.addClip("bigBad");
_local2.gotoAndStop(level);
switch (level) {
case 1 :
_local2.update = _local2.updateQuarry;
break;
case 2 :
_local2.update = _local2.updateStation;
break;
case 3 :
_local2.update = _local2.updateAsteroid;
}
var _local4 = Math.floor(Math.random() * extent) + cutoff;
var _local8 = center - _local4;
var _local9 = _local8 / center;
var _local5 = -100;
if (level == 1) {
_local5 = 0;
}
var _local3 = (Math.floor(Math.random() * speedVar) + speedBase) + _local5;
if (Math.abs(_local3) < 10) {
_local3 = -20;
}
var _local7 = _local3 * _local9;
_local2._y = _local4;
_local2._x = height;
_local2.m.y = _local7;
_local2.m.x = -_local3;
}
}
}
function reset() {
cLaunch = 0.25;
}
var cLaunch = 0.25;
var nLaunch = 0.5;
var speedBase = 300;
var speedVar = 200;
var level = 0;
var enabled = false;
}
Symbol 834 MovieClip [__Packages.World] Frame 0
interface World
{
}
Symbol 835 MovieClip [__Packages.MainWorld] Frame 0
class MainWorld implements World
{
var location, oBase, prompts, rocks, bullets, shots, player, rh, thief, gemH, obstacles, bg;
function MainWorld (location) {
this.location = location;
oBase = this.location.oBase;
prompts = this.location.mcPrompts;
rocks = this.location.rocks;
bullets = this.location.bullets;
shots = this.location.shots;
player = this.location.mcPlayer;
player.mcShots = shots;
shots.nColor = player.baseColor;
player.main = this;
rh = new RockHandler(rocks);
thief = this.location.mcThief;
thief.rh = rh;
thief.player = player;
gemH = this.location.mcGemHolder;
gemH.player = player;
gemH.main = this;
obstacles = new ObstacleScroll(this.location.mcObst, this.location.mcBonus);
obstacles.main = this;
}
function set level(nLevel) {
this.nLevel = nLevel;
var _local3 = Math.ceil(nLevel / 2);
nSubLevel = _local3;
if (_local3 == 1) {
rh.aLaunchers[0].enabled = true;
rh.aLaunchers[0].level = _local3;
rh.aLaunchers[1].enabled = false;
rh.aLaunchers[1].level = _local3;
rh.aLaunchers[2].enabled = false;
rh.aLaunchers[2].level = _local3;
rh.update = rh.updateQuarry;
} else if (_local3 == 2) {
rh.aLaunchers[0].enabled = true;
rh.aLaunchers[0].level = _local3;
rh.aLaunchers[1].enabled = true;
rh.aLaunchers[1].level = _local3;
rh.aLaunchers[2].enabled = false;
rh.aLaunchers[2].level = _local3;
rh.update = rh.updateStation;
} else if (_local3 == 3) {
rh.aLaunchers[0].enabled = true;
rh.aLaunchers[0].level = _local3;
rh.aLaunchers[1].enabled = true;
rh.aLaunchers[1].level = _local3;
rh.aLaunchers[2].enabled = true;
rh.aLaunchers[2].level = _local3;
rh.update = rh.updateAsteroid;
}
_global.mcRoot.mcBG.gotoAndStop(_local3);
thief.thief.gotoAndStop(_local3);
gemH.gotoAndStop(nLevel);
_global.oScore.setGems(nLevel - 1);
//return(level);
}
function get level() {
return(nLevel);
}
function update(nElapsed) {
thief.update(nElapsed);
gemH.update(nElapsed);
bg.update(nElapsed);
rh.update(nElapsed);
obstacles.update(nElapsed);
player.update(nElapsed);
rh.shotsVRocks(player.aShots);
if ((player._y - player.r) < 0) {
player._y = player.r;
player.f.y = 0;
} else if ((player._y + player.r) > Phys.height) {
if (player.state == Player.DEAD) {
player.m.y = -player.m.y;
} else {
player._y = Phys.height - player.r;
player.f.y = 0;
}
}
if ((player._x - player.r) < 0) {
if (player.state != Player.DEAD) {
player._x = player.r;
player.f.x = 0;
}
} else if ((player._x + player.r) > Phys.width) {
player._x = Phys.width - player.r;
player.f.x = 0;
}
if (player.state != Player.DEAD) {
var _local3 = rh.clips.clips;
var _local2;
var _local7 = false;
var _local4 = 0;
while (_local4 < _local3.length) {
var _local5 = _local3[_local4];
_local2 = _local5.sphereHit(player);
if (_local2) {
_local5.reactRock(_local2, player);
}
_local4++;
}
_local3 = rh.bullets.clips;
_local4 = 0;
while (_local4 < _local3.length) {
var _local5 = _local3[_local4];
_local2 = _local5.sphereHit(player);
if (_local2) {
_local5.react(_local2, player);
}
_local4++;
}
_local3 = rh.goodies.clips;
_local4 = 0;
while (_local4 < _local3.length) {
var _local5 = _local3[_local4];
player.attract(_local5, nElapsed);
_local2 = _local5.sphereHit(player);
if (_local2) {
_local5.react(player);
}
_local4++;
}
_local2 = obstacles.hitTest(player);
if (_local2) {
_local2.length = bounce * nElapsed;
player._x = player._x + _local2.x;
player._y = player._y + _local2.y;
player.damage(obstDamage);
}
}
updateAfterEvent();
}
function onEnter() {
}
function onExit() {
}
function startLevel() {
player.resetPos();
prompts.gotoAndPlay("start" + nSubLevel);
location.mcMusic.play();
}
function endLevel() {
oBase.pause();
rh.clips.removeAllClips();
rh.goodies.removeAllClips();
location.mcMusic.snd.stop();
player.clearShots();
}
function levelUp() {
if (level < 6) {
location.popups.show("endLevel" + level);
} else {
winGame();
}
level = ((level+1));
player.resetMeters();
player.resetPowers();
rh.reset();
gemH.setState(GemHolder.INACTIVE);
thief.reset();
obstacles.reset();
prompts.gotoAndStop(1);
}
function gameOver() {
_global.mcRoot.popups.show("gameOver");
_global.mcRoot.popups.finalScore = _global.oScore.getScore();
_global.mcRoot.popups.finalLevel = nLevel;
}
function winGame() {
_global.mcRoot.popups.show("youWin");
_global.mcRoot.popups.finalScore = _global.oScore.getScore();
_global.mcRoot.popups.finalLevel = nLevel;
}
function callGem() {
if (gemH.state == GemHolder.INACTIVE) {
gemH.setState(GemHolder.MOVING);
}
}
function reset() {
level = (1);
_global.oScore.clearScore();
player.reset();
player.resetpos();
player.resetPowers();
rh.clips.removeAllClips();
rh.goodies.removeAllClips();
thief.reset();
obstacles.reset();
gemH.setState(GemHolder.INACTIVE);
if (_global.aUnlocked[5] == true) {
location.mcGigglePrompt._visible = true;
}
}
var obstDamage = 100;
var nLevel = 1;
var nSubLevel = 1;
var bounce = 600;
}
Symbol 836 MovieClip [__Packages.ObstacleScroll] Frame 0
class ObstacleScroll
{
var nCeiling, nFloor, location, obstClips, bonusLocation, bonusClips, main;
function ObstacleScroll (mcLocation, mcBonusLocation) {
nCeiling = screenHeight - 180;
nFloor = screenHeight - 80;
location = mcLocation;
obstClips = new ClipHandler(location);
bonusLocation = mcBonusLocation;
bonusClips = new ClipHandler(bonusLocation);
}
function hitTest(player) {
var _local2;
var _local7 = new Point(0, 0);
var _local5 = 0;
while (_local5 < obstClips.clips.length) {
_local2 = obstClips.clips[_local5];
if (_local2 != null) {
if (_local2.hitTest(player)) {
_local7.x = player._x - _local2._x;
_local7.y = player._y - _local2._y;
var _local6;
var _local3 = 0;
while (_local3 < _local2.aLines.length) {
_local6 = _local2.aLines[_local3].distanceFrom(_local7);
if ((_local6 - player.r) > 0) {
return(null);
}
_local3++;
}
return(_local2.pRic);
}
}
_local5++;
}
return(null);
}
function scroll(nDist) {
var _local5 = location._x + (nDist * direction);
var _local2;
var _local3 = 0;
while (_local3 < bonusClips.clips.length) {
_local2 = bonusClips.clips[_local3];
_local2._x = _local2._x + (nDist * direction);
_local2.x = _local2._x + _local2.radius;
if (_local2._x < -50) {
bonusClips.removeClip(_local2);
}
_local3++;
}
_local3 = 0;
while (_local3 < obstClips.clips.length) {
_local2 = obstClips.clips[_local3];
_local2._x = _local2._x + (nDist * direction);
if (_local2._x < (-_local2._width)) {
obstClips.removeClip(_local2);
}
_local3++;
}
}
function update(nElapsed) {
cHousePop = cHousePop + nElapsed;
if (cHousePop >= nHousePop) {
cHousePop = 0;
var _local2 = obstClips.addClip("mcObstacle");
_local2.gotoAndStop(main.nSubLevel);
var _local3 = Math.ceil(Math.random() * _local2.obstacle._totalframes);
_local2.obstacle.gotoAndStop(_local3);
if (main.nSubLevel == 1) {
if (_local3 == 3) {
_local2._x = 580;
var _local4 = Math.floor(Math.random() * 50);
_local2._y = -25 - _local4;
_local2.pRic = new Point(-3.5, 3.5);
} else {
_local2._x = 580;
var _local4 = Math.floor(Math.random() * 50);
_local2._y = 175 + _local4;
_local2.pRic = new Point(-3.5, -3.5);
}
} else if (_local3 == 1) {
_local2._x = 580;
var _local4 = Math.floor(Math.random() * 50);
_local2._y = 175 + _local4;
_local2.pRic = new Point(-3.5, -3.5);
} else {
_local2._x = 580;
var _local4 = Math.floor(Math.random() * 50);
_local2._y = -25 - _local4;
_local2.pRic = new Point(-3.5, 3.5);
}
}
scroll(velocity * nElapsed);
}
function reset() {
obstClips.removeAllClips();
cHousePop = 0;
}
var velocity = 200;
var direction = -1;
var screenHeight = 370;
var screenWidth = 600;
var level = 1;
var nAdditionalChange = 5;
var nCutoff = 50;
var nBaseChange = 20;
var BIGHOUSE = 0;
var TREE = 1;
var LITTLEHOUSE = 2;
var APARTMENT = 3;
var STREETLIGHT = 4;
var nChoices = 5;
var nBonusChance = 10;
var nBonusPadding = 20;
var nBonusTypes = 5;
var nAfterburnerTime = 30;
var cAfterburnerTime = 0;
var nHousePop = 6;
var cHousePop = 0;
var nRicochetPower = 300;
}
Symbol 837 MovieClip [__Packages.Base] Frame 0
class Base
{
static var interval;
var aT, last, currentWorld;
function Base () {
if (interval != null) {
clearInterval(interval);
interval = null;
}
aT = [];
}
function get playing() {
return(bPlay);
}
function play() {
if (interval == null) {
bPlay = true;
last = getTimer();
interval = setInterval(function (o) {
o.update();
}, 0, this);
}
}
function pause() {
if (interval != null) {
bPlay = false;
clearInterval(interval);
interval = null;
}
}
function update(o) {
var _local5 = getTimer();
var _local6 = (_local5 - last) / 1000;
currentWorld.update(_local6);
last = _local5;
if (aT.length > 4) {
var _local4;
_local4 = 0;
var _local3 = 0;
while (_local3 < aT.length) {
_local4 = _local4 + aT[_local3];
_local3++;
}
_root.nDebug0 = _local4 / aT.length;
aT = [];
}
aT.push(_local6);
}
function setWorld(oWorld) {
if (oWorld != null) {
currentWorld.onExit();
currentWorld = oWorld;
currentWorld.onEnter();
}
}
static function hey() {
}
var bPlay = false;
}
Symbol 838 MovieClip [__Packages.RockLauncherTop] Frame 0
class RockLauncherTop
{
var cutoff, extent, center, height, myHandler;
function RockLauncherTop (nExtent, nHeight, nCutoff) {
cutoff = nCutoff;
extent = nExtent - nCutoff;
center = nExtent / 2;
height = nHeight;
cLaunch = nLaunch / 2;
}
function update(nElapsed) {
if (enabled) {
cLaunch = cLaunch + nElapsed;
if (cLaunch >= nLaunch) {
cLaunch = 0;
var _local6 = myHandler.clips;
var _local2 = _local6.addClip("bigBad");
_local2.gotoAndStop(level);
var _local4 = Math.floor(Math.random() * extent) + cutoff;
var _local8 = center - _local4;
var _local9 = _local8 / center;
var _local5 = -100;
if (level == 1) {
_local5 = 0;
}
var _local3 = (Math.floor(Math.random() * speedVar) + speedBase) + _local5;
if (Math.abs(_local3) < 10) {
_local3 = -20;
}
var _local7 = _local3 * _local9;
_local2._x = _local4;
_local2._y = 0;
_local2.m.x = _local7;
_local2.m.y = -_local3;
}
}
}
function reset() {
cLaunch = nLaunch / 2;
}
var cLaunch = 0;
var nLaunch = 1;
var speedBase = 300;
var speedVar = 200;
var level = 0;
var enabled = false;
}
Symbol 839 MovieClip [__Packages.Pegboard] Frame 0
class Pegboard extends MovieClip
{
var aPegs;
function Pegboard () {
super();
var _local5 = true;
var _local4 = 0;
var _local3;
aPegs = [];
while (_local5) {
_local3 = this["peg" + _local4];
if (_local3) {
aPegs.push(_local3);
_local3._visible = false;
_local4++;
} else {
_local5 = false;
}
}
}
function set pegs(nP) {
var _local4 = aPegs.length;
var _local3 = 0;
var _local2 = 0;
while (_local2 < _local4) {
if (_local2 < nP) {
_local3++;
aPegs[_local2]._visible = true;
} else {
aPegs[_local2]._visible = false;
}
_local2++;
}
nPegs = _local3;
//return(pegs);
}
function get pegs() {
return(nPegs);
}
var nPegs = 0;
}
Symbol 840 MovieClip [__Packages.Score] Frame 0
class Score extends MovieClip
{
var damageMeter, meters, mMeter, scoreboard, lives, gems;
function Score () {
super();
if (!_global.oScore) {
_global.oScore = this;
}
damageMeter = meters.damageMeter;
mMeter = meters.mMeter;
scoreboard.nScore = 0;
setLives(3);
}
function setDamage(n) {
damageMeter.setMeter(n);
}
function setMarsh(n) {
if (n >= 0) {
mMeter.setMeter(n);
}
}
function addScore(nS) {
if (!isNaN(nS)) {
scoreboard.nScore = scoreboard.nScore + nS;
}
}
function getScore() {
return(scoreboard.nScore);
}
function clearScore() {
scoreboard.nScore = 0;
}
function setLives(nL) {
lives.nTries = nL;
}
function setGems(nG) {
gems.__set__pegs(nG);
}
}
Symbol 841 MovieClip [__Packages.Thief] Frame 0
class Thief extends MovieClip
{
var pStart, _x, _y, cHealth, r, _width, update, pBonus, aBonus, curT, player, gotoAndStop, rh, d;
function Thief () {
super();
pStart = new Point(_x, _y);
cHealth = nHealth;
r = _width / 2;
update = updateWait;
pBonus = new Point(0.1, -1);
pBonus.__set__length(200);
aBonus = [];
var _local3 = 0;
while (_local3 < Powerup.TYPES) {
aBonus[_local3] = _local3;
_local3++;
}
aBonus = Misc.rndArray(aBonus);
}
function updateWait(nElapsed) {
cP = cP + nElapsed;
if (cP >= nP) {
update = updateSteal;
_global.mcRoot.mcPrompts.gotoAndPlay("thief");
}
}
function updateSteal(nElapsed) {
collideSearch();
if (curT._name != undefined) {
follow(curT, nElapsed);
changeFacing();
} else {
update = updateGotoHold;
}
thiefVsShots(player.aShots);
}
function updateRun(nElapsed) {
var _local2 = new Point(pStart.__get__x() - _x, pStart.__get__y() - _y);
_local2.length = nSpeed * nElapsed;
_x = _x + _local2.x;
_y = _y + _local2.y;
gotoAndStop(1);
if ((_x < (-r)) && (_y < (-r))) {
reset();
}
}
function updateGotoHold(nElapsed) {
collideSearch();
if (curT._name == undefined) {
var _local3 = _global.mcRoot.mcHoldLoc;
if (follow(_local3, nElapsed) <= r) {
_x = _local3._x;
_y = _local3._y;
rotation = 0;
update = updateHold;
}
} else {
update = updateSteal;
}
changeFacing();
thiefVsShots(player.aShots);
}
function updateHold(nElapsed) {
collideSearch();
if (curT._name == undefined) {
rotate(holdRot * nElapsed);
move(nElapsed);
} else {
update = updateSteal;
}
changeFacing();
thiefVsShots(player.aShots);
}
function thiefVsShots(aShots) {
var _local3;
var _local6;
var _local7;
var _local8 = new Point(_x, _y);
var _local2 = 0;
while (_local2 < aShots.length) {
_local7 = aShots[_local2];
_local3 = _local7.line;
_local6 = Math.abs(_local3.distanceFrom(_local8));
if (_local6 < r) {
if ((_x > (_local3.p0.x - r)) && (_x < (_local3.p1.x + r))) {
cHealth = cHealth - nShotDamage;
aShots.splice(_local2, 1);
var _local4 = rh.clips.addClip("mcZap");
_local4._x = _x;
_local4._y = _y;
if (cHealth <= 0) {
update = updateRun;
launchBonus();
}
}
}
_local2++;
}
}
function reset() {
update = updateWait;
cHealth = nHealth;
cP = 0;
_x = pStart.x;
_y = pStart.y;
}
function rotate(nRad) {
var _local3 = rotation + nRad;
var _local2 = _local3 % Phys.TWOPI;
if (_local2 > 0) {
_local2 = _local2 + Phys.TWOPI;
}
rotation = _local2;
}
function collideSearch() {
var _local6 = rh.goodies.clips;
var _local3;
var _local5;
var _local8;
var _local7;
var _local10 = 4294967295;
var _local9;
var _local11;
var _local4 = 0;
while (_local4 < _local6.length) {
_local3 = _local6[_local4];
if (_local6[_local4]) {
_local8 = _local3._x - _x;
_local7 = _local3._y - _y;
_local5 = (_local8 * _local8) + (_local7 * _local7);
_local9 = r + _local3.r;
if (_local5 < (_local9 * _local9)) {
_global.oSound.playSnd("thiefGrab", 70);
_local3.handler.removeClip(_local3);
} else if (_local5 < _local10) {
if (curT._name == undefined) {
_local10 = _local5;
_local11 = _local3;
}
}
}
_local4++;
}
if (_local11 != null) {
curT = _local11;
}
}
function follow(mcF, nElapsed) {
var _local3 = mcF._x - _x;
var _local4 = mcF._y - _y;
var _local2 = new Point(_local3, _local4);
var _local5 = _local2.length;
_local2.length = nSpeed * nElapsed;
d = _local2;
_x = _x + _local2.x;
_y = _y + _local2.y;
return(_local5);
}
function changeFacing() {
if (d.__get__x() < 0) {
gotoAndStop(1);
} else {
gotoAndStop(2);
}
}
function move(nElapsed) {
var _local3 = Math.sin(rotation);
var _local4 = Math.cos(rotation);
var _local2 = nSpeed * nElapsed;
d.__set__x(_local3 * _local2);
d.__set__y(_local4 * _local2);
_x = _x + d.x;
_y = _y + d.y;
}
function launchBonus() {
var _local3 = aBonus[cBonus];
cBonus++;
if (cBonus >= aBonus.length) {
cBonus = 0;
}
if (_local3 == 4) {
if (player.__get__mRatio() <= 0) {
return(undefined);
}
}
if (_global.aUnlocked[_local3] == false) {
return(undefined);
}
var _local4 = rh.goodies.addClip("mcPowerup");
_local4._x = _x;
_local4._y = _y;
_local4.m = pBonus.copy();
_local4.gotoAndStop(_local3 + 1);
_local4.type = _local3;
}
var nHealth = 100;
var nShotDamage = 50;
var nP = 15;
var cP = 0;
var nSpeed = 450;
var rotation = 0;
var holdRot = 4;
var bonusSpeed = 200;
var cBonus = 0;
}
Symbol 842 MovieClip [__Packages.Misc] Frame 0
class Misc
{
function Misc () {
}
static function rndArray(aToBeRnd) {
var _local2 = 0;
var _local1 = [];
var _local4 = [];
_local1 = _local1.concat(aToBeRnd);
var _local3;
_local2 = 0;
while (_local2 < aToBeRnd.length) {
_local3 = int(Math.random() * _local1.length);
_local4.push(_local1[_local3]);
_local1.splice(_local3, 1);
_local2++;
}
return(_local4);
}
static function uniquePush(aPush, oObject) {
var _local3 = false;
var _local1 = 0;
while (_local1 < aPush.length) {
if (aPush[_local1] == oObject) {
_local3 = true;
}
_local1++;
}
if (_local3 == true) {
return(undefined);
}
aPush.push(oObject);
}
static function number(sNum) {
var _local4 = sNum.length + 1;
var _local2 = 1;
var _local3 = 0;
var _local1 = 1;
while (_local1 < _local4) {
_local3 = _local3 + (Number(sNum.substr(-_local1, 1)) * _local2);
_local2 = _local2 * 10;
_local1++;
}
return(_local3);
}
}
Symbol 34 MovieClip [BG-spaceDeep] Frame 1
#initclip 38
Object.registerClass("BG-spaceDeep", ParallaxObject);
#endinitclip
stop();
Symbol 54 MovieClip Frame 10
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 54 MovieClip Frame 32
stop();
_parent.nFinished++;
Symbol 57 MovieClip Frame 10
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 57 MovieClip Frame 30
stop();
_parent.nFinished++;
Symbol 60 MovieClip Frame 8
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 60 MovieClip Frame 21
stop();
_parent.nFinished++;
Symbol 63 MovieClip Frame 8
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 63 MovieClip Frame 25
stop();
_parent.nFinished++;
Symbol 64 MovieClip Frame 8
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 64 MovieClip Frame 25
stop();
_parent.nFinished++;
Symbol 65 MovieClip Frame 8
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 65 MovieClip Frame 22
stop();
_parent.nFinished++;
Symbol 66 MovieClip Frame 8
_parent.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 66 MovieClip Frame 25
stop();
_parent.nFinished++;
Symbol 67 MovieClip Frame 7
_root.gazoo.ani.magnet.gotoAndPlay("on");
Symbol 67 MovieClip Frame 20
stop();
_parent.nFinished++;
Symbol 68 MovieClip Frame 1
stop();
nFinished = 0;
Instance of Symbol 54 MovieClip "marsh_1" in Symbol 68 MovieClip Frame 2
/* no clip actions */
Symbol 68 MovieClip Frame 9
stop();
Symbol 72 MovieClip Frame 1
stop();
Symbol 76 MovieClip Frame 4
stop();
Symbol 77 MovieClip Frame 1
stop();
Symbol 79 MovieClip Frame 1
stop();
Symbol 80 MovieClip [bigBad] Frame 1
#initclip 42
Object.registerClass("bigBad", Rock);
#endinitclip
stop();
Symbol 85 MovieClip [bullet] Frame 1
#initclip 39
Object.registerClass("bullet", Bullet);
#endinitclip
Symbol 88 MovieClip [smallGood] Frame 1
#initclip 40
Object.registerClass("smallGood", Goodie);
#endinitclip
stop();
Symbol 89 MovieClip [mcZap] Frame 4
this.handler.removeClip(this);
Symbol 105 MovieClip Frame 1
stop();
Symbol 122 MovieClip Frame 1
stop();
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(67, 207, 96, 12);
lines[1] = new Line(96, 12, 136, 3);
lines[2] = new Line(136, 3, 179, 204);
Symbol 122 MovieClip Frame 2
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(p0._x, p0._y, p1._x, p1._y);
lines[1] = new Line(p1._x, p1._y, p2._x, p2._y);
lines[2] = new Line(p2._x, p2._y, p3._x, p3._y);
Symbol 122 MovieClip Frame 3
lines[0] = new Line(p0._x, p0._y, p1._x, p1._y);
lines[1] = new Line(p1._x, p1._y, p2._x, p2._y);
lines[2] = new Line(p2._x, p2._y, p3._x, p3._y);
Symbol 139 MovieClip Frame 1
stop();
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(p0._x, p0._y, p1._x, p1._y);
lines[1] = new Line(p1._x, p1._y, p2._x, p2._y);
lines[2] = new Line(p2._x, p2._y, p3._x, p3._y);
Symbol 139 MovieClip Frame 2
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(p2._x, p2._y, p3._x, p3._y);
lines[1] = new Line(p3._x, p3._y, p0._x, p0._y);
lines[2] = new Line(p0._x, p0._y, p1._x, p1._y);
Symbol 142 MovieClip Frame 1
stop();
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(p0._x, p0._y, p1._x, p1._y);
lines[1] = new Line(p1._x, p1._y, p2._x, p2._y);
lines[2] = new Line(p2._x, p2._y, p3._x, p3._y);
Symbol 142 MovieClip Frame 2
this._parent.aLines = [];
lines = this._parent.aLines;
lines[0] = new Line(p2._x, p2._y, p3._x, p3._y);
lines[1] = new Line(p3._x, p3._y, p0._x, p0._y);
lines[2] = new Line(p0._x, p0._y, p1._x, p1._y);
Symbol 143 MovieClip [mcObstacle] Frame 1
stop();
Symbol 143 MovieClip [mcObstacle] Frame 2
Symbol 143 MovieClip [mcObstacle] Frame 3
Symbol 167 MovieClip [mcPowerup] Frame 1
#initclip 41
Object.registerClass("mcPowerup", Powerup);
#endinitclip
stop();
Symbol 255 MovieClip [gemHolder] Frame 1
#initclip 46
Object.registerClass("gemHolder", GemHolder);
#endinitclip
stop();
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 255 MovieClip [gemHolder] Frame 2
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 255 MovieClip [gemHolder] Frame 3
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 255 MovieClip [gemHolder] Frame 4
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 255 MovieClip [gemHolder] Frame 5
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 255 MovieClip [gemHolder] Frame 6
this.pGem = new Point(this.mcGemPoint._x + this._x, this.mcGemPoint._y + this._y);
Symbol 260 MovieClip Frame 1
stop();
Symbol 268 MovieClip Frame 1
stop();
Symbol 268 MovieClip Frame 2
stop();
Symbol 270 MovieClip Frame 1
stop();
Symbol 270 MovieClip Frame 2
stop();
Symbol 271 MovieClip Frame 1
stop();
Symbol 271 MovieClip Frame 2
stop();
Symbol 297 Button
on (release) {
gotoAndStop ("story");
this.popups._visible = true;
}
Symbol 302 Button
on (release) {
this.popups.show("help", "story");
this.popups._visible = true;
}
Symbol 309 Button
on (release) {
this.show("menu");
}
Symbol 319 Button
on (release) {
this.show("help");
}
Symbol 322 Button
on (release) {
_global.mcRoot.mcComm.viewHighScores(_global.oScore.getScore());
}
Symbol 325 Button
on (release) {
this.resume();
}
Symbol 366 MovieClip Frame 1
stop();
Symbol 374 Button
on (release) {
if (isNaN(finalScore)) {
finalScore = 0;
}
_global.mcRoot.mcComm.sendScore(finalScore);
this.newGame();
}
Symbol 375 Button
on (release) {
if (isNaN(finalScore)) {
finalScore = 0;
}
_global.mcRoot.mcComm.viewHighScores(finalScore);
}
Symbol 437 Button
on (release) {
this.nextFrame();
}
Symbol 440 Button
on (release) {
this.prevFrame();
}
Symbol 473 Button
on (release) {
this.finalScore = this._parent.finalScore;
if (isNaN(this.finalScore)) {
this.finalScore = 0;
}
_global.mcRoot.mcComm.sendScore(this.finalScore);
this._parent.newGame();
}
Symbol 474 Button
on (release) {
this.finalScore = this._parent.finalScore;
if (isNaN(this.finalScore)) {
this.finalScore = 0;
}
_global.mcRoot.mcComm.viewHighScores(this.finalScore);
}
Symbol 475 MovieClip Frame 1
stop();
Symbol 475 MovieClip Frame 5
this.finalScore = this._parent.finalScore;
Symbol 484 Button
on (release) {
this._parent.resume();
}
Symbol 489 Button
on (release) {
nextFrame();
}
Symbol 501 Button
on (release) {
prevFrame();
}
Symbol 509 MovieClip [damageMeter] Frame 1
#initclip 43
Object.registerClass("damageMeter", MeterNScale);
#endinitclip
stop();
Instance of Symbol 110 MovieClip "mcBlink" in Symbol 509 MovieClip [damageMeter] Frame 1
onClipEvent (enterFrame) {
if (this._parent.bBlink == true) {
var m = this._parent.meter;
m._visible = !m._visible;
}
}
Symbol 514 MovieClip [m-Meter] Frame 1
#initclip 44
Object.registerClass("m-Meter", MeterNScale);
#endinitclip
stop();
Instance of Symbol 509 MovieClip [damageMeter] "damageMeter" in Symbol 517 MovieClip Frame 1
onClipEvent (load) {
this.setMeter(1);
}
Instance of Symbol 514 MovieClip [m-Meter] "mMeter" in Symbol 517 MovieClip Frame 1
onClipEvent (load) {
this.setMeter(1);
}
Symbol 533 MovieClip Frame 1
stop();
Symbol 539 MovieClip Frame 1
stop();
Symbol 551 Button
on (release) {
_global.mcRoot.oMain.startLevel();
this.gotoAndStop("blank");
}
Symbol 610 Button
on (release) {
this._parent.resume();
}
Symbol 627 Button
on (release) {
if (_global.aUnlocked[5] == true) {
this.nextFrame();
} else {
this.gotoAndStop("resume");
}
}
Symbol 654 Button
on (release) {
if (_global.aUnlocked[5] == true) {
this.prevFrame();
} else {
this.gotoAndStop("preG");
}
}
Symbol 682 Button
on (release) {
this._parent.resume();
}
Symbol 683 MovieClip Frame 1
stop();
Symbol 684 MovieClip [POPups] Frame 1
#initclip 45
Object.registerClass("POPups", Menu);
#endinitclip
stop();
Instance of Symbol 366 MovieClip "level" in Symbol 684 MovieClip [POPups] Frame 11
onClipEvent (load) {
this.gotoAndStop(this._parent.finalLevel);
}
Instance of Symbol 475 MovieClip in Symbol 684 MovieClip [POPups] Frame 19
onClipEvent (load) {
this.finalScore = this._parent.finalScore;
}
Symbol 684 MovieClip [POPups] Frame 71
stop();
Symbol 714 MovieClip Frame 1
stop();
Symbol 714 MovieClip Frame 24
this.gotoAndStop(1);
_global.mcRoot.oBase.play();
Symbol 714 MovieClip Frame 44
this.gotoAndStop(1);
_global.mcRoot.oBase.play();
Symbol 714 MovieClip Frame 64
this.gotoAndStop(1);
_global.mcRoot.oBase.play();
Symbol 714 MovieClip Frame 84
gotoAndStop (1);
Symbol 714 MovieClip Frame 104
gotoAndStop (1);
Symbol 714 MovieClip Frame 124
gotoAndStop (1);
Symbol 714 MovieClip Frame 144
gotoAndStop (1);
Symbol 721 MovieClip Frame 1
stop();
Symbol 722 MovieClip [mcBGs] Frame 1
#initclip 47
Object.registerClass("mcBGs", ScrollBG);
#endinitclip
stop();
Symbol 755 MovieClip Frame 26
stop();
Symbol 759 MovieClip Frame 9
stop();
Symbol 760 MovieClip Frame 1
stop();
Symbol 761 MovieClip [mcThiefClip] Frame 1
#initclip 51
Object.registerClass("mcThiefClip", Thief);
#endinitclip
stop();
Symbol 762 MovieClip Frame 1
stop();
Symbol 786 MovieClip [gazooMC] Frame 1
#initclip 48
Object.registerClass("gazooMC", Player);
#endinitclip
stop();
Instance of Symbol 71 MovieClip "mcGTron" in Symbol 786 MovieClip [gazooMC] Frame 1
onClipEvent (load) {
this._visible = false;
}
Instance of Symbol 766 MovieClip "mcShield" in Symbol 786 MovieClip [gazooMC] Frame 1
onClipEvent (load) {
this._visible = false;
}
Instance of Symbol 775 MovieClip "gazMag" in Symbol 786 MovieClip [gazooMC] Frame 1
onClipEvent (load) {
this._visible = false;
}
Instance of Symbol 110 MovieClip in Symbol 786 MovieClip [gazooMC] Frame 10
onClipEvent (enterFrame) {
if (_global.mcRoot.popups._currentFrame == 1) {
}
}
Instance of Symbol 110 MovieClip in Symbol 786 MovieClip [gazooMC] Frame 20
onClipEvent (enterFrame) {
if (_global.mcRoot.popups._currentframe == 1) {
this._parent._visible = !this._parent._visible;
}
}
Symbol 791 MovieClip [tablet-levels] Frame 1
#initclip 49
Object.registerClass("tablet-levels", Pegboard);
#endinitclip
Symbol 807 MovieClip [mcUI] Frame 1
#initclip 50
Object.registerClass("mcUI", Score);
#endinitclip
Instance of Symbol 800 MovieClip "lives" in Symbol 807 MovieClip [mcUI] Frame 1
onClipEvent (load) {
this.pegs = 4;
}