Frame 1
function restorePreferences() {
myLSO = SharedObject.getLocal("mtvxgenmlopt", "/");
if (myLSO.data.myObj == undefined) {
optExhaust = true;
optChunks = true;
optCosmos = true;
optMouseControl = true;
BGMvolume = 80;
SFXvolume = 80;
} else {
optExhaust = Boolean(int(myLSO.data.myObj.objArray[0]));
optChunks = Boolean(int(myLSO.data.myObj.objArray[1]));
optCosmos = Boolean(int(myLSO.data.myObj.objArray[2]));
optMouseControl = Boolean(int(myLSO.data.myObj.objArray[3]));
BGMvolume = int(myLSO.data.myObj.objArray[4]);
SFXvolume = int(myLSO.data.myObj.objArray[5]);
}
}
function playAgain() {
_root.HSHubSubmitter._visible = true;
_root.disabler._visible = false;
if (_root._currentframe == 12) {
gameOverMC.removeDeathEffect();
showLoad = true;
gotoAndStop (2);
} else if (!satanDead) {
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
idle(100);
updateHUD();
gotoAndStop (6);
} else {
gotoAndStop (2);
}
}
function doneIntro() {
gotoAndStop (25);
}
function doneLoading() {
load1._visible = 0;
load2._visible = 0;
loadBar._visible = 0;
loadBar2._visible = 0;
loadingMC._visible = 0;
percentLoadedText.text = (percentLoadedText2.text = "");
pregameMC.gotoAndStop(2);
instructions = "\rControl your pod using the arrow keys or, if it is more comfortable, the w,a,s,d keys. Your drill will deploy automatically if you move into diggable material beside or below you - remember, you cannot drill straight up.\r\r\rTo pause your game, hit 'P'; Press 'P' again to resume.\r\r\rRefuel your pod often to avoid fatal malfunction! Drive up to the fuel pump at far left and select your refill amount.\r\r\rYou can trade minerals in your storage bay for cold hard cash at the 'Mineral Processing Depot', located to the right of the Fuel Station.\r\r\rTo save your progress, fly up to the Quantum Bot hovering to the right of the Mineral Processing Depot. Your digging progress (tunnels/mine shafts) will not be saved.\r\r\rLocated further right are the Upgrade and Item/Repair shops. To reach them, drive past the Mineral Processing Depot and continue East.\r\r\rUpgrades are used automatically once purchased. Use items with the following hot-keys:\r\r\rI: Open Inventory\rYour inventory displays your items and upgrades and allows you to jettison material. If your pod is too heavy, click on minerals to discard them through your exhaust ports.\r\rR: Hull Repair Nanites\rThese advanced nanobots will repair your hull when nowhere near a repair station.\r\rF: Reserve Fuel Tank\rThese compact bottles of compressed fuel inject straight into your main tank.\r\rX: Dynamite\rBlasts a small area around your pod. Note that this also destroys valuable minerals, so be careful where you blast.\r\rC: Plastic Explosives\rBlasts a large area around your pod. Note that this also destroys valuable minerals, so be careful where you blast.\r\rQ: Quantum Teleporter\rThis device transforms your matter into energy and flings you at the surface. It isn't always accurate, so remember to exercise caution.\r\rM: Matter Transmitter\rA more stable version of the Quantum Teleporter, the Matter Transmitter is much safer to use. Please keep your arms and legs inside the pod at all times while using this device.\r\r\r";
}
function isExtendedAlphaNumeric(str) {
illegalChar = false;
var _loc1 = 0;
while (_loc1 < str.length) {
if (((str.charAt(_loc1) == "<") || (str.charAt(_loc1) == ">")) || (str.charAt(_loc1) == "&")) {
illegalChar = true;
}
_loc1++;
}
return(!illegalChar);
}
function convertToASCII(str) {
str2 = "";
var _loc1 = 0;
while (_loc1 < str.length) {
cc = str.charCodeAt(_loc1);
if (int(cc) < 10) {
zString = "00";
cc = zString.concat(cc);
} else if (int(cc) < 100) {
zString = "0";
cc = zString.concat(cc);
}
str2 = str2 + cc;
_loc1++;
}
return(str2);
}
function CSVtoArray(str) {
loadGameArray = new Array();
tempArrayIndex = 0;
lastIndex = -1;
var _loc1 = 0;
while (_loc1 < str.length) {
if (str.substr(_loc1, 1) == ",") {
loadGameArray[tempArrayIndex++] = str.substr(lastIndex + 1, (_loc1 - lastIndex) - 1);
lastIndex = _loc1;
}
_loc1++;
}
loadGameArray[tempArrayIndex++] = str.substr(lastIndex + 1, str.length - lastIndex);
}
function convertToChars(str) {
str2 = "";
var _loc1 = 0;
while (_loc1 < str.length) {
chunk = int(str.substr(_loc1, 3));
chunk = String.fromCharCode(chunk);
str2 = str2 + chunk;
_loc1 = _loc1 + 3;
}
return(str2);
}
function preventCheating() {
if (!frameChangeValid) {
gotoAndStop (12);
} else {
frameChangeValid = false;
}
}
function inside() {
insideTimer++;
}
function pauseGame() {
if (paused == true) {
paused = (pauseMC._visible = false);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
SFXidle100.setVolume(((100 * SFXvolume) / 10000) * globalVolume);
SFXrotor100.setVolume(((100 * SFXvolume) / 10000) * globalVolume);
updateHUD();
myColor = new Color(this);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
} else {
paused = (pauseMC._visible = true);
BGMmain.setVolume(0);
SFXidle100.setVolume(0);
SFXrotor100.setVolume(0);
updateHUD();
myColor = new Color(this);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"-50", ga:"100", gb:"-50", ba:"100", bb:"-50", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
}
}
function initialize() {
difficulty[0] = new difficulties(1, 1, 1, 1);
var _loc1 = 1;
while (_loc1 < 100) {
difficulty[_loc1] = new difficulties(_loc1 * 1000, _loc1 * 2000, _loc1 * 1, _loc1 * 1, _loc1 * 1);
_loc1++;
}
minerals[0] = new mineral("Ironium", 30, 1);
minerals[1] = new mineral("Bronzium", 60, 1);
minerals[2] = new mineral("Silverium", 100, 1);
minerals[3] = new mineral("Goldium", 250, 2);
minerals[4] = new mineral("Platinium", 750, 3);
minerals[5] = new mineral("Einsteinium", 2000, 4);
minerals[6] = new mineral("Emerald", 5000, 6);
minerals[7] = new mineral("Ruby", 20000, 8);
minerals[8] = new mineral("Diamond", 100000, 10);
minerals[9] = new mineral("Amazonite", 500000, 12);
minerals[10] = new mineral("Dinosaur Bones", 1000, 1);
minerals[11] = new mineral("Treasure", 5000, 1);
minerals[12] = new mineral("Martian Skeleton", 10000, 1);
minerals[13] = new mineral("Religious Artifact", 50000, 1);
minerals[14] = new mineral("Mr. Natas' Kevlar Suit", 50000, 1);
minerals[15] = new mineral("Mr. Natas' Staff of Hell", 100000, 1);
minerals[16] = new mineral("Mr. Natas' Laser Monacle", 200000, 1);
minerals[17] = new mineral("Satan's Hooves", 300000, 1);
minerals[18] = new mineral("Satan's Horns", 400000, 1);
minerals[19] = new mineral("Satan's Evil Eye (right)", 500000, 1);
minerals[20] = new mineral("Satan's Evil Eye (left)", 500000, 1);
minerals[21] = new mineral("Satan's Boiler of Eternal Infernos", 600000, 1);
minerals[22] = new mineral("Martian Reward for Restoring Peace", 1000000, 1);
minerals[23] = new mineral("250,000 Shares of Natas HI Inc.", 25000000, 1);
item[0] = new podItem("Reserve Fuel Tank", 2000, "Portable backup - refills up to 25 Liters instantaneously.", "F");
item[1] = new podItem("Hull Repair Nanobots", 7500, "Repairs a maximum of 30 Damage anytime, anywhere.", "R");
item[2] = new podItem("Dynamite", 2000, "Blasts clear a small area around your pod.", "X");
item[3] = new podItem("Plastic Explosives", 5000, "Creates an enormous explosion, clearing a large area around your pod.", "C");
item[4] = new podItem("Quantum Teleporter", 2000, "Teleports you somewhere above surface level. (results may vary)", "Q");
item[5] = new podItem("Matter Transmitter", 10000, "Safely and accurately returns you above ground.", "M");
item[6] = new podItem("Core Teleporter", 1, "Teleports you directly to the planet's core", "0");
upgradeCategories[0] = "DRILL";
upgradeCategories[1] = "HULL";
upgradeCategories[2] = "ENGINE";
upgradeCategories[3] = "FUEL TANK";
upgradeCategories[4] = "RADIATOR";
upgradeCategories[5] = "CARGO BAY";
upgradeCategories[6] = "EXIT";
upgradeCategories[99] = "";
upgradeCategoryID[0] = "drill";
upgradeCategoryID[1] = "hull";
upgradeCategoryID[2] = "engine";
upgradeCategoryID[3] = "fuelTank";
upgradeCategoryID[4] = "radiator";
upgradeCategoryID[5] = "bay";
transmissions[0] = new transmission("We forgot to refuel you on the way over! Drive over to the fuel station (Left) and fill 'er up!\r\rIt's been almost impossible to hire decent miners on Mars since all the strange activity started happening around here. That's why we're willing to pay you at a premium for your services!\r\rI've given you a basic mining machine to get started with. Unfortunately, you'll be on your own from this point onward, as the settlers who were lucky enough to escape with their lives have fled to safety. However, all of the shops here have been computerized, so you'll still be able to sell your minerals, fuel up, upgrade your pod, and buy special items.\r\rRemember - your job is to collect minerals and bring them back to the surface for processing. The deeper you dig, the more valuable the minerals you'll encounter.\r\rDon't forget to refuel - Good Luck!", "Mr. Natas", -1, 0, "natas");
transmissions[1] = new transmission("Good! I see you're adapting well to the Martian soil!\r\rHere's a little something to help you on your way.", "Mr. Natas", 500, 1000, "natas");
transmissions[2] = new transmission("Congratulations on reaching a depth of 1000 ft! I've wired you a bonus for your excellent work.\r\rWe're picking up some heavy vibrations from the planet core - They seem to be causing some earthquakes. They also seem to be causing some garbled and misdirected transmissions - just ignore them.\r\rKeep up the good work!", "Mr. Natas", 1000, 3000, "natas");
transmissions[3] = new transmission("\r\rThe eyes... oh my god, THE EYES!!!", "Unidentified Source", 1750, 0, "static");
transmissions[4] = new transmission("I'm suprised to find another signal around here... I'm the only miner who hasn't disappeared in the past three years. Next week, I finally get to retire, wealthy, to the moons of jupiter with my wife and three daughters.", "Martian Digging Pod #3422-2", 2100, 0, "miner");
transmissions[5] = new transmission("Is anyone there?! I need help badly!! I can't feel my legs - Oh god, he's coming back..\r\rOH NO!! PLEASE HELP ME!!! AAAHHHHGGGK!.", "Unidentified Source", 2500, 0, "static");
transmissions[6] = new transmission("How are you making out, kid? I know you're new here, so I though I'd give you a tip; make sure you don't neglect your radiator. I ran into a Lava pocket a few moments ago, but my twin turbines dissipated the heat amazingly and my hull was barely damaged - Probably saved my life.", "Martian Digging Pod #3422-2", 3100, 0, "miner");
transmissions[7] = new transmission("Once again, congratulations! You've made it farther than even I anticipated...\r\rAnyways, I've sent you another bonus. Watch out for natural gas pockets - they're undetectable and highly explosive! One more thing - Your altimeter is only rated for a depth of around 6000 ft. After that, you'll need to turn back. Really - it's just too dangerous.", "Mr. Natas", 3500, 25000, "natas");
transmissions[8] = new transmission("Trapped... in a crevasse.\r\rEarthquake damaged my drill and I'm out fuel.\r\rThis will probably be my last transmission.\r\rTell my kids.. I love them.. I-\r\rwhat? YOU!?? what are you doing dow-AAARGH!", "Martian Digging Pod #3422-2", 4100, 0, "miner");
transmissions[9] = new transmission("Oh BABY!!! THIS IS IT!!! I HIT THE MOTHERLOAD!!!!! I'm rich, I'm FILTHY rich!!\r\rHey, what the!?? NO! IT CAN'T BE!!!! OH GOD!!", "Martian Digging Pod #10043", 4500, 0, "static");
transmissions[10] = new transmission("You are violating the terms of your employment! Turn back immediately!", "Mr. Natas", 6200, 0, "natas");
transmissions[11] = new transmission("Return to the surface immediately or you'll be terminated... er... as in fired!", "Mr. Natas", 7000, 0, "natas");
transmissions[12] = new transmission("HAHAHA!! YOU FOOL!!!\r\rI told you to turn back... now I have no choice but to kill you. You've served my factories well, but I think I'll take my machine, my money, and your pathetic life now.\r\rSEE YOU IN HELL!!!", "Mr. Natas", 9998, 0, "natas");
transmissions[13] = new transmission("MWAHAHAHA! Imbecile!!\r\rYou really think you can defeat me?\r\rI am the master of all EVIL!\r\rBEHOLD MY TRUE FORM!!!", "Mr. Natas", 9999, 0, "natas");
}
function initializeSound() {
SFXidle100 = new Sound(SFXidleMC);
SFXidle100.attachSound("idle_100.wav");
SFXidle105 = new Sound(SFXidleMC);
SFXidle105.attachSound("idle_105.wav");
SFXidle110 = new Sound(SFXidleMC);
SFXidle110.attachSound("idle_110.wav");
SFXidle115 = new Sound(SFXidleMC);
SFXidle115.attachSound("idle_115.wav");
SFXidle120 = new Sound(SFXidleMC);
SFXidle120.attachSound("idle_120.wav");
SFXidle125 = new Sound(SFXidleMC);
SFXidle125.attachSound("idle_125.wav");
SFXidle130 = new Sound(SFXidleMC);
SFXidle130.attachSound("idle_130.wav");
SFXidle135 = new Sound(SFXidleMC);
SFXidle135.attachSound("idle_135.wav");
SFXidle140 = new Sound(SFXidleMC);
SFXidle140.attachSound("idle_140.wav");
SFXidle145 = new Sound(SFXidleMC);
SFXidle145.attachSound("idle_145.wav");
SFXidle150 = new Sound(SFXidleMC);
SFXidle150.attachSound("idle_150.wav");
SFXrotor60 = new Sound(SFXrotorMC);
SFXrotor60.attachSound("rotor_60.wav");
SFXrotor65 = new Sound(SFXrotorMC);
SFXrotor65.attachSound("rotor_65.wav");
SFXrotor70 = new Sound(SFXrotorMC);
SFXrotor70.attachSound("rotor_70.wav");
SFXrotor75 = new Sound(SFXrotorMC);
SFXrotor75.attachSound("rotor_75.wav");
SFXrotor80 = new Sound(SFXrotorMC);
SFXrotor80.attachSound("rotor_80.wav");
SFXrotor85 = new Sound(SFXrotorMC);
SFXrotor85.attachSound("rotor_85.wav");
SFXrotor90 = new Sound(SFXrotorMC);
SFXrotor90.attachSound("rotor_90.wav");
SFXrotor95 = new Sound(SFXrotorMC);
SFXrotor95.attachSound("rotor_95.wav");
SFXrotor100 = new Sound(SFXrotorMC);
SFXrotor100.attachSound("rotor_100.wav");
SFXrotor105 = new Sound(SFXrotorMC);
SFXrotor105.attachSound("rotor_105.wav");
SFXrotor110 = new Sound(SFXrotorMC);
SFXrotor110.attachSound("rotor_110.wav");
SFXrotor115 = new Sound(SFXrotorMC);
SFXrotor115.attachSound("rotor_115.wav");
SFXrotor120 = new Sound(SFXrotorMC);
SFXrotor120.attachSound("rotor_120.wav");
SFXdrill100 = new Sound(SFXdrillMC);
SFXdrill100.attachSound("drill_100.wav");
SFXdrill101 = new Sound(SFXdrillMC);
SFXdrill101.attachSound("drill_101.wav");
SFXdrill102 = new Sound(SFXdrillMC);
SFXdrill102.attachSound("drill_102.wav");
SFXdrill103 = new Sound(SFXdrillMC);
SFXdrill103.attachSound("drill_103.wav");
SFXdrill104 = new Sound(SFXdrillMC);
SFXdrill104.attachSound("drill_104.wav");
SFXtransform = new Sound(SFXtransformMC);
SFXtransform.attachSound("transform.wav");
SFXtransform2 = new Sound(SFXtransformMC);
SFXtransform2.attachSound("transform2.wav");
SFXjettison = new Sound(SFXtransformMC);
SFXjettison.attachSound("jettison.wav");
SFXfuelLow = new Sound(SFXwarnMC);
SFXfuelLow.attachSound("fuelLow.wav");
SFXmothershipArrive = new Sound(SFXmothershipMC);
SFXmothershipArrive.attachSound("mothershipArrive.wav");
SFXmothershipIdle = new Sound(SFXmothershipMC);
SFXmothershipIdle.attachSound("mothershipIdle.wav");
SFXmothershipLeave = new Sound(SFXmothershipMC);
SFXmothershipLeave.attachSound("mothershipLeave.wav");
SFXtransmission = new Sound(SFXmothershipMC);
SFXtransmission.attachSound("transmission.wav");
SFXsatanStep = new Sound(SFXsatanMC);
SFXsatanStep.attachSound("satanStep.wav");
SFXsatanStep2 = new Sound(SFXsatanMC);
SFXsatanStep2.attachSound("satanStep2.wav");
SFXsatanLaugh = new Sound(SFXsatanMC);
SFXsatanLaugh.attachSound("laugh.wav");
SFXsatanP1Sink = new Sound(SFXsatanMC);
SFXsatanP1Sink.attachSound("satanP1Sink.wav");
SFXsatanP1Damage = new Sound(SFXsatan2MC);
SFXsatanP1Damage.attachSound("satanP1Damage.wav");
SFXsatanP1Damage2 = new Sound(SFXsatan2MC);
SFXsatanP1Damage2.attachSound("satanP1Damage2.wav");
SFXsatanP2Breakout = new Sound(SFXsatan2MC);
SFXsatanP2Breakout.attachSound("satanP2Breakout.wav");
SFXsatanP2Fireball = new Sound(SFXsatan3MC);
SFXsatanP2Fireball.attachSound("fireball.wav");
SFXsatanP2Fireloop = new Sound(SFXsatan3MC);
SFXsatanP2Fireloop.attachSound("fireloop.wav");
SFXsatanP2Attack = new Sound(SFXsatan3MC);
SFXsatanP2Attack.attachSound("satanP2attack.wav");
SFXsatanP2Extend = new Sound(SFXsatan4MC);
SFXsatanP2Extend.attachSound("satanP2extend.wav");
SFXsatanP2Retract = new Sound(SFXsatan4MC);
SFXsatanP2Retract.attachSound("satanP2retract.wav");
SFXsatanP2Attack = new Sound(SFXsatan4MC);
SFXsatanP2Attack.attachSound("satanP2attack.wav");
SFXlava = new Sound(SFXcollectMC);
SFXlava.attachSound("lava.wav");
SFXcollect = new Sound(SFXcollectMC);
SFXcollect.attachSound("collect_mineral2.wav");
SFXpurchase = new Sound(SFXerrorMC);
SFXpurchase.attachSound("purchase.wav");
SFXsale = new Sound(SFXerrorMC);
SFXsale.attachSound("sale.wav");
SFXrefuel = new Sound(SFXitemMC);
SFXrefuel.attachSound("refuel.wav");
SFXnanobots = new Sound(SFXitemMC);
SFXnanobots.attachSound("nanobots.wav");
SFXquantum = new Sound(SFXitemMC);
SFXquantum.attachSound("quantum.wav");
SFXmattertrans = new Sound(SFXitemMC);
SFXmattertrans.attachSound("mattertrans.wav");
SFXdynamite = new Sound(SFXitemMC);
SFXdynamite.attachSound("dynamite2.wav");
SFXc4 = new Sound(SFXitemMC);
SFXc4.attachSound("c42.wav");
SFXerror2 = new Sound(SFXerrorMC);
SFXerror2.attachSound("error2.wav");
SFXerror3 = new Sound(SFXerrorMC);
SFXerror3.attachSound("error3.wav");
SFXerror = new Sound(SFXerror2MC);
SFXerror.attachSound("error.wav");
SFXclink = new Sound(SFXexplodeMC);
SFXclink.attachSound("clink.wav");
SFXcrash = new Sound(SFXexplodeMC);
SFXcrash.attachSound("crash2.wav");
SFXexplode = new Sound(SFXexplodeMC);
SFXexplode.attachSound("explosion.wav");
SFXdd1 = new Sound(SFXexplodeMC);
SFXdd1.attachSound("digdug1.wav");
SFXdd2 = new Sound(SFXexplodeMC);
SFXdd2.attachSound("digdug2.wav");
SFXdd3 = new Sound(SFXexplodeMC);
SFXdd3.attachSound("digdug3.wav");
SFXdd4 = new Sound(SFXexplodeMC);
SFXdd4.attachSound("digdug4.wav");
SFXtype = new Sound(SFXupgradeMC);
SFXtype.attachSound("computerTypeLetter2.wav");
SFXselect = new Sound(SFXupgradeMC);
SFXselect.attachSound("selectUpgrade.wav");
SFXclick = new Sound(SFXupgrade2MC);
SFXclick.attachSound("select_upgrade2.wav");
SFXtype2 = new Sound(SFXupgrade2MC);
SFXtype2.attachSound("computerTypeLetter.wav");
BGMind = new Sound(BGMMC);
BGMind.attachSound("BGM_ind.wav");
BGMmain = new Sound(BGMMC);
BGMmain.attachSound("BGM_main.wav");
BGMcore = new Sound(BGMMC);
BGMcore.attachSound("BGM_core.wav");
BGMshop = new Sound(BGMMC);
BGMshop.attachSound("BGM_shop.wav");
var _loc1 = 100;
var _loc2 = 100;
var _loc3 = 100;
var _loc4 = 100;
setSoundVolume(SFXvolume);
}
function setSoundVolume(v) {
SFXidle150.setVolume(((120 * v) / 10000) * globalVolume);
SFXrotor120.setVolume(((80 * v) / 10000) * globalVolume);
SFXdrill104.setVolume(((30 * v) / 10000) * globalVolume);
SFXtransform2.setVolume(((80 * v) / 10000) * globalVolume);
SFXfuelLow.setVolume(((30 * v) / 10000) * globalVolume);
SFXmothershipArrive.setVolume(((60 * v) / 10000) * globalVolume);
SFXsatanStep.setVolume(((100 * v) / 10000) * globalVolume);
SFXsatanP1Damage.setVolume(((100 * v) / 10000) * globalVolume);
SFXsatanP2Fireball.setVolume(((140 * v) / 10000) * globalVolume);
SFXsatanP2Extend.setVolume(((100 * v) / 10000) * globalVolume);
SFXcollect.setVolume(((200 * v) / 10000) * globalVolume);
SFXsale.setVolume(((100 * v) / 10000) * globalVolume);
SFXnanobots.setVolume(((70 * v) / 10000) * globalVolume);
SFXerror3.setVolume(((100 * v) / 10000) * globalVolume);
SFXerror.setVolume(((50 * v) / 10000) * globalVolume);
SFXexplode.setVolume(((80 * v) / 10000) * globalVolume);
SFXdd4.setVolume(((75 * v) / 10000) * globalVolume);
SFXselect.setVolume(((100 * v) / 10000) * globalVolume);
SFXtype2.setVolume(((50 * v) / 10000) * globalVolume);
}
function player() {
this.displayedScore = 0;
this.score = 0;
this.cash = 20000000 /* 0x1312D00 */;
this.scoreBillion = 0;
}
function vehicle() {
this.hp = 10;
this.fuel = 6;
this.mass = 198;
this.hull = 0;
this.hullNames = new Array("Stock Hull", "Ironium Hull", "Bronzium Hull", "Steel Hull", "Platinium Hull", "Einsteinium Hull", "Energy-Shielded Hull");
this.hullHp = new Array(10, 17, 30, 50, 80, 120, 180);
this.hullPrices = new Array(0, 750, 2000, 5000, 20000, 100000, 500000);
this.drill = 0;
this.drillNames = new Array("Stock Drill", "Silvide Drill", "Goldium Drill", "Emerald Drill", "Ruby Drill", "Diamond Drill", "Amazonite Drill");
this.drillSpeed = new Array(2, 2.8, 4, 5, 7, 9.5, 12);
this.drillPrices = new Array(0, 750, 2000, 5000, 20000, 100000, 500000);
this.engine = 0;
this.engineNames = new Array("Stock Engine", "V4 1600 cc", "V4 2.0 Ltr Turbo", "V6 3.8 Ltr", "V8 Supercharged 5.0 Ltr", "V12 6.0 Ltr", "V16 Jag Engine");
this.enginePower = new Array(150, 160, 170, 180, 190, 200, 210);
this.enginePrices = new Array(0, 750, 2000, 5000, 20000, 100000, 500000);
this.fuelTank = 0;
this.fuelTankNames = new Array("Micro Tank", "Medium Tank", "Huge Tank", "Gigantic Tank", "Titanic Tank", "Leviathan Tank", "Liquid Compression Tank");
this.fuelTankCapacity = new Array(10, 15, 25, 40, 60, 100, 150);
this.fuelTankPrices = new Array(0, 750, 2000, 5000, 20000, 100000, 500000);
this.radiator = 0;
this.radiatorNames = new Array("Stock Fan", "Dual Fans", "Single Turbine", "Dual Turbines", "Puron Cooling", "Tri-Turbine Freon Array");
this.radiatorCooling = new Array(1, 0.9, 0.75, 0.6, 0.4, 0.2);
this.radiatorPrices = new Array(0, 2000, 5000, 20000, 100000, 500000);
this.bay = 0;
this.bayNames = new Array("Micro Bay", "Medium Bay", "Huge Bay", "Gigantic Bay", "Titanic Bay", "Leviathan Bay");
this.baySize = new Array(7, 15, 25, 40, 70, 120);
this.bayPrices = new Array(0, 750, 2000, 5000, 20000, 100000);
this.bayContents = new Array(10);
var _loc2 = 0;
while (_loc2 < 10) {
this.bayContents[_loc2] = 0;
_loc2++;
}
this.usableItem = new Array(7);
var _loc2 = 0;
while (_loc2 < 7) {
this.usableItem[_loc2] = 0;
_loc2++;
}
this.xVel = 0;
this.yVel = 0;
this.rotorVel = 0;
this.facing = "left";
this.mod = "air";
this.width = 20;
this.height = 20;
this.digX = -1;
this.digY = -1;
this.difX = 0;
this.leftLimit = 200;
this.rightLimit = 350;
this.topLimit = 200;
this.bottomLimit = 250;
this.mouseButtonDown = false;
this.mouseMoveLeft = false;
this.mouseMoveRight = false;
this.mouseMoveUp = false;
this.mouseMoveDown = false;
}
function changeBGM(m, v, offset) {
BGMmain.stop();
BGMshop.stop();
BGMcore.stop();
with (eval ("BGM" + m)) {
start(offset, 1000000);
setVolume(((v / 10000) * BGMvolume) * globalVolume);
}
currentBGM = m;
}
function useItem(n) {
if (atv.usableItem[n] > 0) {
if (itemTimer > 5) {
if (n == 0) {
atv.usableItem[n]--;
atv.fuel = Math.min(atv.fuel + 25, atv.fuelTankCapacity[atv.fuelTank]);
displayMessage("Used " + item[n].name);
SFXrefuel.start(0, 1);
itemTimer = 0;
} else if (n == 1) {
atv.usableItem[n]--;
atv.hp = Math.min(atv.hp + 30, atv.hullHp[atv.hull]);
displayMessage("Used " + item[n].name);
SFXnanobots.start(0, 1);
atvMC.attachMovie("nanoFX", "nanoFX", 1202);
itemTimer = 0;
} else if (n == 2) {
if (atv.mod == "ground") {
gotoAndStop (13);
wipe = false;
atv.usableItem[n]--;
displayMessage("Used " + item[n].name);
_root.attachMovie("itemDynamiteMC", "itemDynamiteMC", 9988777000);
itemTimer = 0;
if (battleMode) {
earthMC.satan.satanP1.attackDynamite();
earthMC.satan.satanP2.attackDynamite();
}
}
} else if (n == 3) {
if (atv.mod == "ground") {
gotoAndStop (13);
wipe = false;
atv.usableItem[n]--;
displayMessage("Used " + item[n].name);
_root.attachMovie("itemC4MC", "itemC4MC", 9988777000);
itemTimer = 0;
if (battleMode) {
earthMC.satan.satanP1.attackC4();
earthMC.satan.satanP2.attackC4();
}
}
} else if (n == 4) {
if (atv.mod == "ground") {
gotoAndStop (13);
wipe = true;
atv.usableItem[n]--;
displayMessage("Used " + item[n].name);
_root.attachMovie("podQuantumMC", "podQuantumMC", 9988777000);
atvMC._visible = 0;
podQuantumMC._x = atvMC._x - 0;
podQuantumMC._y = atvMC._y - 1;
if (atv.facing == "right") {
podQuantumMC._xscale = -100;
}
SFXquantum.start(0, 1);
itemTimer = 0;
}
} else if (n == 5) {
if (atv.mod == "ground") {
gotoAndStop (13);
wipe = true;
atv.usableItem[n]--;
displayMessage("Used " + item[n].name);
_root.attachMovie("podMatterTransMC", "podMatterTransMC", 9988777000);
atvMC._visible = 0;
podMatterTransMC._x = atvMC._x - 0;
podMatterTransMC._y = atvMC._y - 1;
if (atv.facing == "right") {
podMatterTransMC._xscale = -100;
}
SFXmattertrans.start(0, 1);
itemTimer = 0;
}
} else if (n == 6) {
if (atv.mod == "ground") {
gotoAndStop (13);
wipe = true;
atv.usableItem[n]--;
displayMessage("Used " + item[n].name);
_root.attachMovie("podCoreTeleportMC", "podCoreTeleportMC", 9988777000);
atvMC._visible = 0;
podCoreTeleportMC._x = atvMC._x - 0;
podCoreTeleportMC._y = atvMC._y - 1;
if (atv.facing == "right") {
podCoreTeleportMC._xscale = -100;
}
SFXmattertrans.start(0, 1);
itemTimer = 0;
}
}
}
} else {
SFXerror.start(0, 1);
}
}
function idle(s, r) {
r = (int(r) + 12) * 5;
if (s != idleSpeed) {
with (eval ("SFXidle" + dynamicIdleSpeed)) {
stop();
}
idleSpeed = s;
if ((s > 100) && (s < 150)) {
s = s + ((random(3) - 1) * 5);
}
dynamicIdleSpeed = s;
with (eval ("SFXidle" + s)) {
start(random(10) / 100, 1000000);
setVolume((((s - 40) * SFXvolume) / 10000) * globalVolume);
}
}
if (r != rotorSpeed) {
with (eval ("SFXrotor" + dynamicRotorSpeed)) {
stop();
}
if ((((atv.mod == "air") || (atv.mod == "launching")) || (atv.mod == "digdownlaunching")) && (r != 0)) {
rotorSpeed = r;
if ((r > 100) && (r < 150)) {
r = r + ((random(3) - 1) * 5);
}
dynamicRotorSpeed = r;
with (eval ("SFXrotor" + r)) {
start(0, 1000000);
setVolume(((80 * SFXvolume) / 10000) * globalVolume);
}
}
}
}
function stopIdle() {
with (eval ("SFXidle" + dynamicIdleSpeed)) {
stop();
}
with (eval ("SFXrotor" + dynamicRotorSpeed)) {
stop();
}
idleSpeed = 0;
rotorSpeed = 0;
}
function collectSpecial(n) {
p1.addToCash(minerals[n].value);
displayBonus(minerals[n].value);
if (n == 10) {
displayDialogue("Wow!");
}
if (n == 11) {
displayDialogue("Wow!");
}
if (n == 12) {
displayDialogue("Wow!");
}
if (n == 13) {
displayDialogue("Wow!");
}
}
function displayDialogue(msg) {
}
function preBattle() {
changeBGM("core", 50);
lastTransmission = 11;
gotoAndStop (15);
}
function startBattle() {
earthMC.satan.attachMovie("satanP1", "satanP1", 6666);
earthMC.satan._y = 29532;
earthMC.satan._x = 1200;
earthMC.satan.attachMovie("satanP1_collisionMap", "map", 666);
earthMC.satan.map._alpha = 0;
earthMC.satan.map._x = 25;
earthMC.satan.map._y = -14;
_root.attachMovie("satanHPBar", "satanHPBar", 66666666);
satanHPBar.p2Head._visible = 0;
satanHPBar._x = 24;
satanHPBar._y = 349;
satanHPBar.gotoAndStop(100);
satanHPBar._alpha = 75;
battleMode = true;
}
function preBattleP2() {
earthMC.satan.attachMovie("satanP2", "satanP2", 6666);
earthMC.satan._x = earthMC.satan._x + 140;
satanHPBar.p1Head._visible = 0;
satanHPBar.p2Head._visible = 1;
satanHPBar.gotoAndStop(100);
satanHPBar._visible = 1;
satanHPBar._alpha = 75;
}
function startBattleP2() {
earthMC.satan.satanP2.gotoAndStop("walkRight");
}
function stopBattle() {
changeBGM("main", 70);
earthMC.satan.satanP1.removeMovieClip();
earthMC.satan.satanP2.removeMovieClip();
earthMC.satan.map.removeMovieClip();
satanHPBar.unloadMovie();
battleMode = false;
}
function reloadTile(x, y) {
tileX = x;
while (tileX > 12) {
tileX = tileX - 13;
}
tileY = y;
while (tileY > 9) {
tileY = tileY - 10;
}
with (eval ("earthMC.e" + getTileName(tileX, tileY))) {
graphic.removeMovieClip();
actualX = x;
actualY = y;
t = getTileGraphicName(actualX, actualY);
attachMovie("tile" + t[0], "graphic", 1000);
_rotation = t[1] * 90;
}
with (eval ("earthMC.c" + getTileName(tileX, tileY))) {
limit.removeMovieClip();
t = getTileCollisionName(actualX, actualY);
attachMovie("tile" + t, "limit", 1000);
}
}
function startDigging(dir) {
if (atvMC.treadMC._visible && (!keyIsDownMulti("up"))) {
atv.xVel = 0;
atv.yVel = 0;
if (dir == "down") {
atv.digX = int(((atvMC._x - earthMC._x) / 50) + 0.5);
atv.digY = int(((atvMC._y - earthMC._y) / 50) + 1.5);
if (earth[atv.digX][atv.digY][0] != 0) {
if ((earth[atv.digX][atv.digY][0] > -3) && ((earth[atv.digX][atv.digY][0] < 25) || (earth[atv.digX][atv.digY][0] > 27))) {
atv.mod = "digging";
if (atv.facing == "right") {
atvMC.digDownMC._xscale = -100;
} else {
atvMC.digDownMC._xscale = 100;
}
atvMC.digDownMC.gotoAndPlay(1);
atvMC.digDownMC._visible = 1;
atvMC.treadMC.stop();
atvMC.treadMC._visible = 0;
dugTile = earth[atv.digX][atv.digY][0];
earth[atv.digX][atv.digY][0] = -100;
atv.difX = ((atv.digX * 50) + earthMC._x) - atvMC._x;
with (eval ("SFXdrill10" + random(5))) {
start(random(10) / 100, 100);
}
if ((dugTile > 27) && (dugTile < 31)) {
atv.damage(29 * atv.radiatorCooling[atv.radiator]);
SFXlava.start(0, 1);
atvMC.attachMovie("lavaFX", "lavaFX", 1201);
}
} else {
if (atv.mod == "digging") {
atv.mod = "ground";
}
unDiggable();
}
}
} else if ((dir == "right") || (dir == "left")) {
if (earthMC.c.hitTest(atvMC._x + (atv.width / 2), (atvMC._y + atv.height) + 10, true) || (earthMC.c.hitTest(atvMC._x - (atv.width / 2), (atvMC._y + atv.height) + 10, true))) {
atv.digX = int(((atvMC._x - earthMC._x) / 50) + 0.5);
atv.digY = int(((atvMC._y - earthMC._y) / 50) + 0.5);
if (dir == "right") {
atv.digX = atv.digX + 1;
} else {
atv.digX = atv.digX - 1;
}
if (earth[atv.digX][atv.digY][0] != 0) {
if ((earth[atv.digX][atv.digY][0] > -3) && ((earth[atv.digX][atv.digY][0] < 25) || (earth[atv.digX][atv.digY][0] > 27))) {
if (dir == "right") {
atvMC.digAcrossMC._xscale = -100;
atv.facing = "right";
}
if (dir == "left") {
atvMC.digAcrossMC._xscale = 100;
atv.facing = "left";
}
atv.mod = "digging";
atvMC.digAcrossMC.gotoAndPlay(1);
atvMC.digAcrossMC._visible = 1;
atvMC.treadMC.stop();
atvMC.treadMC._visible = 0;
dugTile = earth[atv.digX][atv.digY][0];
earth[atv.digX][atv.digY][0] = -100;
with (eval ("SFXdrill10" + random(5))) {
start(random(10) / 100, 100);
}
if ((dugTile > 27) && (dugTile < 31)) {
atv.damage(29 * atv.radiatorCooling[atv.radiator]);
SFXlava.start(0, 1);
atvMC.attachMovie("lavaFX", "lavaFX", 1201);
}
} else {
unDiggable();
}
}
}
}
}
}
function unDiggable() {
if ((SFXclink.position == SFXclink.duration) || (SFXclink.position == 0)) {
SFXclink.start(0, 1);
}
}
function getTilePoints(t) {
if ((t < 6) || (t > 27)) {
return(250 * difficulty[lvl].mineralValueMod);
}
t = Math.min(t, 14);
return((minerals[t - 6].value * 50) * difficulty[lvl].mineralValueMod);
}
function displayWarning(s, x, y) {
_root.attachMovie("warningMC", "warningMC" + pnum, 1000000000 + pnum);
with (eval ("warningMC" + pnum)) {
pnum++;
_x = atvMC._x;
_y = atvMC._y + 10;
warningMC_.pointsG.pointsText.text = s;
}
}
function displayMessage(m, x, y) {
_root.attachMovie("messageMC", "messageMC" + pnum, 1000000000 + pnum);
with (eval ("messageMC" + pnum)) {
pnum++;
_x = atvMC._x;
_y = atvMC._y + 10;
messageMC_.pointsG.pointsText.text = m;
}
}
function displayBonus(b, x, y) {
_root.attachMovie("bonusMC", "bonusMC" + pnum, 1000000000 + pnum);
with (eval ("bonusMC" + pnum)) {
pnum++;
_x = atvMC._x;
_y = atvMC._y + 25;
pointsG.pointsText.text = "+$" + b;
}
}
function displayMineral(m, x, y) {
_root.attachMovie("mineralMC", "mineralMC" + pnum, 1000000000 + pnum);
with (eval ("mineralMC" + pnum)) {
pnum++;
_x = atvMC._x;
_y = atvMC._y + 10;
pointsG.pointsText.text = "+1 " + m;
}
}
function displayPoints(p, x, y) {
_root.attachMovie("pointsMC", "pointsMC" + pnum, 1000000000 + pnum);
with (eval ("pointsMC" + pnum)) {
pnum++;
_x = atvMC._x;
_y = atvMC._y;
pointsG.pointsText.text = p;
}
}
function hitGasPocket() {
atv.damage(int((-(depth + 3000)) / 15) * atv.radiatorCooling[atv.radiator]);
_root.attachMovie("gasPocketFX", "gasPocketFX", 9988777000);
}
function doneDigging(dir) {
earth[atv.digX][atv.digY][0] = 0;
var i = 0;
while (i < 5) {
with (eval ("SFXdrill10" + i)) {
stop();
}
i++;
}
if ((dugTile > 5) && (dugTile < 28)) {
if (atv.addToBay(dugTile - 6)) {
SFXcollect.start(0, 1);
displayMineral(minerals[dugTile - 6].name);
} else {
SFXerror3.start(0, 1);
displayWarning("CARGO BAY FULL!");
}
}
pts = getTilePoints(dugTile);
p1.addToScore(pts);
displayPoints(pts);
var x = (atv.digX - 1);
while (x < (atv.digX + 2)) {
var y = (atv.digY - 1);
while (y < (atv.digY + 2)) {
reloadTile(x, y);
y++;
}
x++;
}
if (dir == "down") {
launchCount = 0;
if (earthMC.c.hitTest(atvMC._x + (atv.width / 2), (atvMC._y + atv.height) + 10, true) || (earthMC.c.hitTest(atvMC._x - (atv.width / 2), (atvMC._y + atv.height) + 10, true))) {
atvMC.treadMC.gotoAndPlay(1);
atvMC.treadMC._visible = 1;
atvMC.digDownMC.stop();
atvMC.digDownMC._visible = 0;
if ((keyIsDownMulti("down") && (gameMode == 0)) && (!paused)) {
startDigging("down");
} else {
atv.mod = "ground";
}
} else {
startTransform("digdownlaunch");
}
} else if (dir == "across") {
if (earthMC.c.hitTest(atvMC._x + atv.width, (atvMC._y + atv.height) + 10, true) || (earthMC.c.hitTest(atvMC._x - atv.width, (atvMC._y + atv.height) + 10, true))) {
atv.mod = "ground";
atvMC.treadMC.gotoAndPlay(1);
atvMC.treadMC._visible = 1;
atvMC.digAcrossMC.stop();
atvMC.digAcrossMC._visible = 0;
} else {
startTransform("digacrosslaunch");
}
}
}
function startTransform(m) {
if (m == "land") {
atv.mod = "landing";
if (atv.facing == "right") {
atvMC.landMC._xscale = -100;
atvMC.treadMC._xscale = -100;
} else {
atvMC.landMC._xscale = 100;
atvMC.treadMC._xscale = 100;
}
atvMC.landMC.gotoAndPlay(1);
atvMC.landMC._visible = 1;
atvMC.flyMC.stop();
atvMC.flyMC._visible = 0;
SFXtransform.start(0, 1);
} else if (m == "launch") {
if ((atv.mod != "launching") && (atvMC.treadMC._visible)) {
atv.mod = "launching";
if (atv.facing == "right") {
atvMC.launchMC._xscale = -100;
atvMC.flyMC._xscale = -100;
} else {
atvMC.launchMC._xscale = 100;
atvMC.flyMC._xscale = 100;
}
atvMC.launchMC.gotoAndPlay(1);
atvMC.launchMC._visible = 1;
atvMC.treadMC.stop();
atvMC.treadMC._visible = 0;
SFXtransform2.start(0, 1);
}
} else if (m == "digacrosslaunch") {
atv.mod = "launching";
if (atv.facing == "right") {
atvMC.digAcrossLaunchMC._xscale = -100;
atvMC.flyMC._xscale = (atvMC.treadMC._xscale = -100);
} else {
atvMC.digAcrossLaunchMC._xscale = 100;
atvMC.flyMC._xscale = (atvMC.treadMC._xscale = 100);
}
atvMC.digAcrossLaunchMC.gotoAndPlay(1);
atvMC.digAcrossLaunchMC._visible = 1;
atvMC.digAcrossMC.stop();
atvMC.digAcrossMC._visible = 0;
SFXtransform2.start(0, 1);
} else if (m == "digdownlaunch") {
atv.mod = "digdownlaunching";
if (atv.facing == "right") {
atvMC.digDownLaunchMC._xscale = -100;
atvMC.flyMC._xscale = -100;
} else {
atvMC.digDownLaunchMC._xscale = 100;
atvMC.flyMC._xscale = 100;
}
atvMC.digDownLaunchMC.gotoAndPlay(1);
atvMC.digDownLaunchMC._visible = 1;
atvMC.digDownMC.stop();
atvMC.digDownMC._visible = 0;
SFXtransform2.start(0, 1);
}
}
function doneTransform(m) {
if (m == "land") {
atv.mod = "ground";
atvMC.landMC.stop();
atvMC.landMC._visible = 0;
atvMC.treadMC._visible = 1;
} else if (m == "launch") {
atv.mod = "air";
atvMC.launchMC.stop();
atvMC.launchMC._visible = 0;
atvMC.flyMC._visible = 1;
atvMC.treadMC._visible = 0;
} else if (m == "digacrosslaunch") {
atv.mod = "air";
atvMC.digAcrossLaunchMC.stop();
atvMC.digAcrossLaunchMC._visible = 0;
atvMC.flyMC._visible = 1;
} else if (m == "digdownlaunch") {
atv.mod = "air";
atvMC.digDownLaunchMC.stop();
atvMC.digDownLaunchMC._visible = 0;
atvMC.flyMC._visible = 1;
}
}
function startTurning(dir, m) {
if (m == "ground") {
if (dir == "right") {
atv.facing = "turning_right";
atvMC.turnRightMC.gotoAndPlay(1);
atvMC.turnRightMC._visible = 1;
} else if (dir == "left") {
atv.facing = "turning_left";
atvMC.turnLeftMC.gotoAndPlay(1);
atvMC.turnLeftMC._visible = 1;
}
atvMC.treadMC.stop();
atvMC.treadMC._visible = 0;
} else if (m == "air") {
if (dir == "right") {
atv.facing = "turning_right";
atvMC.flyTurnRightMC.gotoAndPlay(1);
atvMC.flyTurnRightMC._visible = 1;
} else if (dir == "left") {
atv.facing = "turning_left";
atvMC.flyTurnLeftMC.gotoAndPlay(1);
atvMC.flyTurnLeftMC._visible = 1;
}
atvMC.flyMC.stop();
atvMC.flyMC._visible = 0;
}
}
function doneTurning(m) {
if (m == "ground") {
atvMC.treadMC._visible = 1;
if (atv.facing == "turning_right") {
atvMC.treadMC._xscale = -100;
atv.facing = "right";
atvMC.turnRightMC._visible = 0;
atvMC.turnRightMC.stop();
} else if (atv.facing == "turning_left") {
atvMC.treadMC._xscale = 100;
atv.facing = "left";
atvMC.turnLeftMC._visible = 0;
atvMC.turnLeftMC.stop();
}
} else if (m == "air") {
atvMC.flyMC._visible = 1;
if (atv.facing == "turning_right") {
atvMC.flyMC._xscale = -100;
atv.facing = "right";
atvMC.flyTurnRightMC._visible = 0;
atvMC.flyTurnRightMC.stop();
} else if (atv.facing == "turning_left") {
atvMC.flyMC._xscale = 100;
atv.facing = "left";
atvMC.flyTurnLeftMC._visible = 0;
atvMC.flyTurnLeftMC.stop();
}
}
}
function updateTime() {
playTime++;
totalPlayTime++;
if (optCosmos) {
dayTime++;
if (dayTime > dayLength) {
dayTime = 0;
}
}
}
function getTileName(x, y) {
str = ".tile".concat((x * 100) + y);
return(str);
}
function createEmptyTileArray() {
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 0, 0, 1, 2, 1, 2);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 0, 0, 0, 2, 1, 2);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 1, 0, 0, 2, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 0, 0, 0, 0, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(1, 0, 1, 0, 0, 0, 1, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(1, 0, 1, 0, 0, 0, 0, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(0, 0, 1, 0, 0, 0, 0, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(0, 0, 1, 0, 0, 0, 1, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(1, 0, 0, 0, 0, 0, 0, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(0, 0, 0, 0, 0, 0, 0, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 1, 0, 0, 2, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 0, 0, 0, 1, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 0, 1, 1, 0, 0, 2, 0, 0);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 0, 0, 1, 0, 0, 2, 0, 1);
emptyTiles[emptyTileIndex] = createEmptyTile(2, 1, 2, 1, 0, 1, 2, 1, 2);
}
function createEmptyTile(a, b, c, d, e, f, g, h, i) {
rArray = new Array();
rArray[0] = new Array(new Array(a, d, g), new Array(b, e, h), new Array(c, f, i));
rArray[1] = new Array(new Array(g, h, i), new Array(d, e, f), new Array(a, b, c));
rArray[2] = new Array(new Array(i, f, c), new Array(h, e, b), new Array(g, d, a));
rArray[3] = new Array(new Array(c, b, a), new Array(f, e, d), new Array(i, h, g));
emptyTileIndex++;
return(rArray);
}
function getTileCollisionName(x, y) {
if (((earth[x][y][0] != 0) && (earth[x][y][0] != undefined)) && (earth[x][y][0] > -100)) {
return("Limit");
}
return("Empty");
}
function getTileGraphicName(x, y) {
if (earth[x][y][0] != 0) {
n = earth[x][y][0];
if ((n < 6) && (n > -1)) {
return(new Array(n, earth[x][y][1]));
}
if (n == -100) {
return(new Array("Half", earth[x][y][1]));
}
if (n == undefined) {
return(new Array(undefined, 0));
}
if (n == -999) {
return(new Array("Blank", 0));
}
if (n < -100) {
return(new Array("Shop" + (-n), 0));
}
if ((n < 0) && (n > -3)) {
return(new Array("Grass" + (-n), 0));
}
if ((n > -6) && (n < -2)) {
return(new Array("Pavement" + ((-n) - 3), 0));
}
if ((n > 24) && (n < 28)) {
return(new Array("Rock" + int(n - 24), earth[x][y][1]));
}
if ((n > 27) && (n < 31)) {
return(new Array("Lava" + int(n - 27), earth[x][y][1]));
}
if (n == 31) {
return(new Array("1", earth[x][y][1]));
}
if ((n < -5) && (n > -8)) {
return(new Array("Stalactite" + ((-n) - 5), 0));
}
if (n == -8) {
return(new Array("Darkness", 0));
}
if (n == -9) {
return(new Array("Souls1", 0));
}
if (n == -10) {
return(new Array("Souls2", 0));
}
if (n == -11) {
return(new Array("Souls3", 0));
}
if (n == -12) {
return(new Array("Souls4", 0));
}
return(new Array(minerals[n - 6].name, earth[x][y][1]));
}
if (y < 5) {
return(new Array("Empty", 0));
}
if (y > (earthHeight - 13)) {
return(new Array("Empty", 0));
}
var _loc3 = new Array(new Array(), new Array(), new Array());
_loc3 = [[earth[x - 1][y - 1][0], earth[x - 1][y][0], earth[x - 1][y + 1][0]], [earth[x][y - 1][0], earth[x][y][0], earth[x][y + 1][0]], [earth[x + 1][y - 1][0], earth[x + 1][y][0], earth[x + 1][y + 1][0]]];
var _loc4 = 0;
while (_loc4 < emptyTileIndex) {
r = 0;
while (r < 4) {
match = true;
rTile = emptyTiles[_loc4][r];
var _loc2 = 0;
while (_loc2 < 3) {
var _loc1 = 0;
while (_loc1 < 3) {
if (_loc3[_loc2][_loc1] != 0) {
_loc3[_loc2][_loc1] = 1;
}
if ((rTile[_loc2][_loc1] != _loc3[_loc2][_loc1]) && (rTile[_loc2][_loc1] != 2)) {
match = false;
}
_loc1++;
}
_loc2++;
}
if (match == true) {
return(new Array("Tunnel" + _loc4, r));
}
r++;
}
_loc4++;
}
return(new Array("Tunnel9", 0));
}
function checkTransmissions() {
if (transmissions[lastTransmission + 1].depth < (-maxDepth)) {
if (lastTransmission < 0) {
if (dayTime > 40) {
gotoAndStop (15);
}
} else {
gotoAndStop (15);
}
}
}
function earthQuakeChance() {
if (p1.score > 150000) {
if (random(20) == 0) {
earthQuake(4);
}
}
}
function earthQuake(magnitude) {
gotoAndStop (16);
_root.attachMovie("quakeFX", "quakeFX", 113000);
var _loc2 = 11;
while (_loc2 < (earthHeight - 15)) {
if (random(5 - magnitude) == 0) {
if (random(2) == 0) {
leftMostTile0 = earth[0][_loc2][0];
leftMostTile1 = earth[0][_loc2][1];
var _loc3 = 0;
while (_loc3 < (earthWidth - 1)) {
earth[_loc3][_loc2][0] = earth[_loc3 + 1][_loc2][0];
earth[_loc3][_loc2][1] = earth[_loc3 + 1][_loc2][1];
_loc3++;
}
earth[earthWidth - 1][_loc2][0] = leftMostTile0;
earth[earthWidth - 1][_loc2][1] = leftMostTile1;
} else {
rightMostTile0 = earth[earthWidth - 1][_loc2][0];
rightMostTile1 = earth[earthWidth - 1][_loc2][1];
var _loc3 = (earthWidth - 1);
while (_loc3 > 0) {
earth[_loc3][_loc2][0] = earth[_loc3 - 1][_loc2][0];
earth[_loc3][_loc2][1] = earth[_loc3 - 1][_loc2][1];
_loc3--;
}
earth[0][_loc2][0] = rightMostTile0;
earth[0][_loc2][1] = rightMostTile1;
}
}
_loc2++;
}
}
function generateEarth() {
mineralRate = 65;
var _loc2 = 0;
while (_loc2 < earthWidth) {
earth[_loc2] = new Array();
var _loc1 = 0;
while (_loc1 < earthHeight) {
earth[_loc2][_loc1] = new Array();
earth[_loc2][_loc1][1] = random(4);
if (_loc1 < 5) {
earth[_loc2][_loc1][0] = 0;
} else if (_loc1 == 5) {
earth[_loc2][_loc1][0] = random(2) - 2;
} else if (_loc1 == (earthHeight - 12)) {
earth[_loc2][_loc1][0] = random(2) - 7;
} else if ((_loc1 >= (earthHeight - 11)) && (_loc1 < (earthHeight - 5))) {
earth[_loc2][_loc1][0] = -999;
} else if (_loc1 == (earthHeight - 5)) {
earth[_loc2][_loc1][0] = -(9 + random(4));
} else if (_loc1 > (earthHeight - 5)) {
earth[_loc2][_loc1][0] = -8;
} else {
if (random(5) == 0) {
if (random(5) == 0) {
if (random(5) == 0) {
if ((random(4) == 0) && (_loc1 > 80)) {
earth[_loc2][_loc1][0] = random(4) + 16;
if (earth[_loc2][_loc1][0] == 17) {
earth[_loc2][_loc1][1] = 0;
}
} else {
earth[_loc2][_loc1][0] = Math.min(random(int(_loc1 / mineralRate) + 2) + 8, 15);
}
} else {
earth[_loc2][_loc1][0] = Math.min(random(int(_loc1 / mineralRate) + 2) + 7, 15);
}
} else {
earth[_loc2][_loc1][0] = Math.min(random(int(_loc1 / mineralRate) + 2) + 6, 15);
}
} else {
earth[_loc2][_loc1][0] = random(5) + 1;
if ((_loc1 * 1.5) > (earthHeight / 3)) {
if (random(int(((earthHeight - _loc1) / earthHeight) * 15)) == 0) {
if ((((_loc1 / 2) * 1.5) > (earthHeight / 3)) && (random(2) == 0)) {
if ((((_loc1 / 3) * 1.5) > (earthHeight / 3)) && (random(2) == 0)) {
earth[_loc2][_loc1][0] = 31;
} else {
earth[_loc2][_loc1][0] = 28 + random(3);
}
} else {
earth[_loc2][_loc1][0] = 25 + random(3);
}
}
}
}
if (random(3) == 0) {
earth[_loc2][_loc1][0] = 0;
}
}
_loc1++;
}
_loc2++;
}
earth[earthWidth - 3][earthHeight - 12][0] = 0;
earth[earthWidth - 4][earthHeight - 12][0] = 0;
earth[3][3][0] = -125;
earth[4][3][0] = -126;
earth[5][3][0] = -127;
earth[3][4][0] = -128;
earth[4][4][0] = -129;
earth[5][4][0] = -130;
earth[2][5][0] = -3;
earth[3][5][0] = -4;
earth[4][5][0] = -4;
earth[5][5][0] = -5;
earth[10][2][0] = -110;
earth[11][2][0] = -111;
earth[12][2][0] = -112;
earth[13][2][0] = -113;
earth[10][3][0] = -114;
earth[11][3][0] = -115;
earth[12][3][0] = -116;
earth[13][3][0] = -117;
earth[10][4][0] = -118;
earth[11][4][0] = -119;
earth[12][4][0] = -120;
earth[13][4][0] = -121;
earth[9][5][0] = -3;
earth[10][5][0] = -4;
earth[11][5][0] = -4;
earth[12][5][0] = -4;
earth[13][5][0] = -4;
earth[14][5][0] = -5;
earth[25][2][0] = -101;
earth[22][3][0] = -102;
earth[23][3][0] = -103;
earth[24][3][0] = -104;
earth[25][3][0] = -105;
earth[22][4][0] = -106;
earth[23][4][0] = -107;
earth[24][4][0] = -108;
earth[25][4][0] = -109;
earth[21][5][0] = -3;
earth[22][5][0] = -4;
earth[23][5][0] = -4;
earth[24][5][0] = -4;
earth[25][5][0] = -4;
earth[26][5][0] = -5;
earth[30][3][0] = -131;
earth[31][3][0] = -132;
earth[32][3][0] = -133;
earth[30][4][0] = -134;
earth[31][4][0] = -135;
earth[32][4][0] = -136;
earth[30][5][0] = -3;
earth[31][5][0] = -4;
earth[32][5][0] = -4;
earth[33][5][0] = -5;
}
function displaySavePod() {
if (!savePodDisplayed) {
savePodDisplayed = true;
earthMC.attachMovie("savePodMC", "savePodMC", 444000400000);
earthMC.savePodMC._x = 850;
earthMC.savePodMC._y = -50;
}
}
function removeSavePod() {
if (savePodDisplayed) {
savePodDisplayed = false;
earthMC.savePodMC.removeMovieClip();
}
}
function displayEarth() {
var x = 0;
while (x < 13) {
var y = 0;
while (y < 10) {
val = (x * 100) + y;
earthMC.e.attachMovie("tileMC", "tile" + val, depthCount++);
with (eval ("earthMC.e" + getTileName(x, y))) {
t = getTileGraphicName(x, y);
attachMovie("tile" + t[0], "graphic", 1000);
_x = x * 50;
_y = y * 50;
_rotation = t[1] * 90;
}
earthMC.c.attachMovie("emptyMC", "tile" + val, depthCount++);
with (eval ("earthMC.c" + getTileName(x, y))) {
t = getTileCollisionName(x, y);
attachMovie("tile" + t, "limit", 1000);
_x = x * 50;
_y = y * 50;
}
y++;
}
x++;
}
}
function updatePan() {
with (eval ("SFXidle" + dynamicIdleSpeed)) {
setPan(((atvMC._x / 550) * 200) - 100);
}
with (eval ("SFXrotor" + dynamicRotorSpeed)) {
setPan(((atvMC._x / 550) * 200) - 100);
}
}
function updateCosmos() {
if (optCosmos) {
sun.sunMC._visible = 1;
moon.moonMC._visible = 1;
if (dayTime == 0) {
sun.sunMC._y = -113;
sun._visible = 1;
moon._visible = 0;
} else if ((dayTime * 2) == dayLength) {
moon.moonMC._y = -88;
sun._visible = 0;
moon._visible = 1;
}
if ((dayTime * 2) < dayLength) {
sun.sunMC._y = sun.sunMC._y - (((dayLength / 4) - dayTime) / 650);
} else {
moon.moonMC._y = moon.moonMC._y - ((((dayLength * 3) / 4) - dayTime) / 650);
}
if (eY > -5) {
if ((dayTime * 2) < dayLength) {
sun._y = (earthMC._y / 3) + 350;
sun._x = ((earthMC._x / 5) + (dayTime / 1.45)) - 100;
} else {
moon._y = (earthMC._y / 3) + 350;
moon._x = ((earthMC._x / 5) + ((dayTime - (dayLength / 2)) / 1.45)) - 100;
}
}
} else {
sun.sunMC._visible = 0;
moon.moonMC._visible = 0;
}
if (eY > -5) {
displaySavePod();
} else {
removeSavePod();
}
}
function updateBg() {
bg.gotoAndStop(Math.max(1, int((-earthMC._y) / 33) + 1));
if ((eY > -5) && (optCosmos)) {
myColor = new Color(sky);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
lightVariance = 0.7;
if (((dayTime * 4) / 3) < dayLength) {
bgB = (((-Math.abs((dayLength / 4) - dayTime)) / 720) * 255) * lightVariance;
} else {
bgB = (((dayTime - ((dayLength * 5) / 4)) / 720) * 255) * lightVariance;
}
bgB = bgB + 100;
myColorTransform.rb = bgB;
myColorTransform.gb = bgB;
myColorTransform.bb = bgB;
myColor.setTransform(myColorTransform);
}
}
function updateEarth() {
xAdj = 0;
yAdj = 0;
if (earthMC._x < (-50 + (50 * eX))) {
xAdj = -1;
} else if (earthMC._x > (50 * eX)) {
xAdj = 1;
} else if (earthMC._y < (-50 + (50 * eY))) {
yAdj = -1;
} else if (earthMC._y > (50 * eY)) {
yAdj = 1;
}
eX = eX + xAdj;
eY = eY + yAdj;
oldLeftCol = leftCol;
oldTopRow = topRow;
leftCol = leftCol - xAdj;
if (leftCol > 12) {
leftCol = 0;
}
if (leftCol < 0) {
leftCol = 12;
}
topRow = topRow - yAdj;
if (topRow > 9) {
topRow = 0;
}
if (topRow < 0) {
topRow = 9;
}
if (yAdj != 0) {
updateEarthRow(yAdj);
}
if (xAdj != 0) {
updateEarthCol(xAdj);
}
}
function updateEarthCol(xAdj) {
if (xAdj < 0) {
var y = 0;
while (y < 10) {
tileY = y + oldTopRow;
if (tileY > 9) {
tileY = tileY - 10;
}
with (eval ("earthMC.e" + getTileName(oldLeftCol, tileY))) {
graphic.removeMovieClip();
_x = _x + 650;
actualX = (-eX) + 12;
actualY = (-eY) + y;
if (actualY >= 0) {
t = getTileGraphicName(actualX, actualY);
attachMovie("tile" + t[0], "graphic", 1000);
_rotation = t[1] * 90;
}
}
with (eval ("earthMC.c" + getTileName(oldLeftCol, tileY))) {
limit.removeMovieClip();
_x = _x + 650;
if (((-eY) + y) >= 0) {
t = getTileCollisionName((-eX) + 12, (-eY) + y);
attachMovie("tile" + t, "limit", 1000);
}
}
y++;
}
}
if (xAdj > 0) {
rightCol = oldLeftCol - 1;
if (rightCol < 0) {
rightCol = rightCol + 13;
}
var y = 0;
while (y < 10) {
tileY = y + oldTopRow;
if (tileY > 9) {
tileY = tileY - 10;
}
with (eval ("earthMC.e" + getTileName(rightCol, tileY))) {
graphic.removeMovieClip();
_x = _x - 650;
actualX = -eX;
actualY = (-eY) + y;
if (actualY >= 0) {
t = getTileGraphicName(actualX, actualY);
attachMovie("tile" + t[0], "graphic", 1000);
_rotation = t[1] * 90;
}
}
with (eval ("earthMC.c" + getTileName(rightCol, tileY))) {
limit.removeMovieClip();
_x = _x - 650;
if (((-eY) + y) >= 0) {
t = getTileCollisionName(-eX, (-eY) + y);
attachMovie("tile" + t, "limit", 1000);
}
}
y++;
}
}
}
function updateEarthRow(yAdj) {
if (yAdj < 0) {
var x = 0;
while (x < 13) {
tileX = x + oldLeftCol;
if (tileX > 12) {
tileX = tileX - 13;
}
with (eval ("earthMC.e" + getTileName(tileX, oldTopRow))) {
graphic.removeMovieClip();
_y = _y + 500;
actualX = (-eX) + x;
actualY = (-eY) + 9;
t = getTileGraphicName(actualX, actualY);
attachMovie("tile" + t[0], "graphic", 1000);
_rotation = t[1] * 90;
}
with (eval ("earthMC.c" + getTileName(tileX, oldTopRow))) {
limit.removeMovieClip();
_y = _y + 500;
t = getTileCollisionName(actualX, actualY);
attachMovie("tile" + t, "limit", 1000);
}
x++;
}
}
if (yAdj > 0) {
bottomRow = oldTopRow - 1;
if (bottomRow < 0) {
bottomRow = bottomRow + 10;
}
var x = 0;
while (x < 13) {
tileX = x + oldLeftCol;
if (tileX > 12) {
tileX = tileX - 13;
}
with (eval ("earthMC.e" + getTileName(tileX, bottomRow))) {
graphic.removeMovieClip();
_y = _y - 500;
actualX = (-eX) + x;
actualY = -eY;
t = getTileGraphicName(actualX, actualY);
attachMovie("tile" + t[0], "graphic", 1000);
_rotation = t[1] * 90;
}
with (eval ("earthMC.c" + getTileName(tileX, bottomRow))) {
limit.removeMovieClip();
_y = _y - 500;
t = getTileCollisionName(actualX, actualY);
attachMovie("tile" + t, "limit", 1000);
}
x++;
}
}
}
function podItem(n, p, d, k) {
this.name = n;
this.price = p;
this.desc = d;
this.hotKey = k;
}
function mineral(n, v, m) {
this.name = n;
this.value = v;
this.mass = m;
}
function difficulties(s1hp, s2hp, s1d, s2d, mvm) {
this.satanP1Hp = s1hp;
this.satanP2Hp = s2hp;
this.satanP1dam = s1d;
this.satanP2dam = s2d;
this.mineralValueMod = mvm;
}
function transmission(m, s, d, b, img) {
this.msg = m;
this.sender = s;
this.depth = d;
this.bonus = b;
this.image = img;
}
function updateHUD() {
fuelTankMC.gotoAndStop(101 - int((atv.fuel / atv.fuelTankCapacity[atv.fuelTank]) * 100));
hpMC.gotoAndStop(101 - int((atv.hp / atv.hullHp[atv.hull]) * 100));
depth = int(((earthMC._y - atvMC._y) + 204) / 4);
if (depth < -7300) {
altimeter.text = (altimeter_s.text = "-66666 ft.");
} else if (depth < -5813) {
altimeter.text = (altimeter_s.text = ("?" + (random(90000) + 10000)) + " ft.");
} else {
altimeter.text = (altimeter_s.text = depth + " ft.");
}
maxDepth = Math.min(depth, maxDepth);
p1.rackUpScore();
p1.rackUpCash();
}
function mouseControl() {
if (optMouseControl) {
myRadians = Math.atan2(_root._ymouse - atvMC._y, _root._xmouse - atvMC._x);
deg = Math.round((myRadians * 180) / 3.141593) + 90;
if (deg < 0) {
deg = deg + 360;
}
mouseControlMC._rotation = deg;
mouseControlMC._x = atvMC._x;
mouseControlMC._y = atvMC._y;
atv.mouseMoveUp = (atv.mouseMoveDown = (atv.mouseMoveLeft = (atv.mouseMoveRight = false)));
distance = Math.sqrt(Math.pow(_root._ymouse - atvMC._y, 2) + Math.pow(_root._xmouse - atvMC._x, 2));
if (atv.mouseButtonDown && (distance > 40)) {
if ((deg > 202.5) && (deg < 337.5)) {
atv.mouseMoveLeft = true;
} else if ((deg > 22.5) && (deg < 157.5)) {
atv.mouseMoveRight = true;
}
if ((deg > 292.5) || (deg < 67.5)) {
atv.mouseMoveUp = true;
} else if ((deg > 157.5) && (deg < 202.5)) {
atv.mouseMoveDown = true;
}
mouseControlMC._alpha = 70;
} else if (distance > 40) {
mouseControlMC._alpha = 30;
} else {
mouseControlMC._alpha = 0;
}
} else {
mouseControlMC._alpha = 0;
atv.mouseMoveUp = (atv.mouseMoveDown = (atv.mouseMoveLeft = (atv.mouseMoveRight = false)));
}
}
function keyIsDownMulti(dir) {
if (dir == "right") {
if (((Key.isDown(kRight[0]) || (Key.isDown(kRight[1]))) || (Key.isDown(kRight[2]))) || (atv.mouseMoveRight)) {
return(true);
}
}
if (dir == "left") {
if (((Key.isDown(kLeft[0]) || (Key.isDown(kLeft[1]))) || (Key.isDown(kLeft[2]))) || (atv.mouseMoveLeft)) {
return(true);
}
}
if (dir == "up") {
if (((Key.isDown(kUp[0]) || (Key.isDown(kUp[1]))) || (Key.isDown(kUp[2]))) || (atv.mouseMoveUp)) {
return(true);
}
}
if (dir == "down") {
if (((Key.isDown(kDown[0]) || (Key.isDown(kDown[1]))) || (Key.isDown(kDown[2]))) || (atv.mouseMoveDown)) {
return(true);
}
}
return(false);
}
function formatPrice(p) {
p = p.toString();
fp = "";
digitCount = -1;
i = p.length - 1;
while (i > -1) {
digitCount++;
if (digitCount == 3) {
digitCount = 0;
fp = ",".concat(fp);
}
fp = p.substr(i, 1).concat(fp);
i--;
}
return("$" + fp);
}
function formatNumber(p) {
p = p.toString();
fp = "";
digitCount = -1;
i = p.length - 1;
while (i > -1) {
digitCount++;
if (digitCount == 3) {
digitCount = 0;
fp = ",".concat(fp);
}
fp = p.substr(i, 1).concat(fp);
i--;
}
return(fp);
}
function printText(t, textBox, speed, channel) {
with (eval (textBox)) {
text = t.substring(0, 1) + "_";
}
t = t.substring(1, t.length);
_root.attachMovie("printTextMC", "printTextMC" + channel, channel);
with (eval ("printTextMC" + channel)) {
_y = -100;
textT.text = t;
textNameT.text = textBox;
speedT.text = speed;
}
}
function stopPrintedText() {
printText("", upgradeNameText, 1, 0);
printText("", upgradeDescText, 1, 1);
printText("", upgradePriceText, 1, 2);
}
function checkCode(pressedKey) {
var _loc1 = 0;
while (_loc1 < 10) {
keyBuffer[_loc1] = keyBuffer[_loc1 + 1];
_loc1++;
}
keyBuffer[10] = pressedKey;
str = "";
var _loc1 = 0;
while (_loc1 <= 10) {
str = str + keyBuffer[_loc1];
_loc1++;
}
codes = new Array();
var _loc1 = 0;
while (_loc1 < 20) {
codes[_loc1] = 0;
_loc1++;
}
codes[0] = ooo("EEAAEAAAAAAAAAEEAAEAAAAAAAAA", "n");
codes[1] = ooo("AAAAAAAAAAAAAACAAAE?EEAAEAAA", "n");
codes[2] = ooo("AAAAAAAAAAAAAA?AAA", "n");
codes[3] = ooo("AAEE?AAAAAAA?", "n");
codes[4] = ooo("AAAAA?AAAAAAAAEAAA", "n");
codes[5] = ooo("AACAAAAAAEEAAAAAAAAE", "n");
codes[6] = ooo("AAAAA?AAAAAAAAAAAAAAAAAAAAA", "n");
codes[7] = ooo("AAAAAAAAEAAEAAAAAAAA?AAA", "n");
codes[8] = ooo("AAAAACAAAAA?EEAAAE?EEAAEAAA", "n");
var _loc1 = 0;
while (_loc1 < 9) {
if (str.substr(str.length - codes[_loc1].length, codes[_loc1].length) == codes[_loc1]) {
cheat(_loc1);
}
_loc1++;
}
}
function cheat(n) {
cheating = true;
if (n == 0) {
SFXdd1.start(0, 1);
p1.addToCash(100000);
}
if (n == 1) {
SFXdd2.start(0, 1);
atv.hull = Math.min(atv.hull + 1, 6);
}
if (n == 2) {
SFXdd2.start(0, 1);
atv.drill = Math.min(atv.drill + 1, 6);
}
if (n == 3) {
SFXdd2.start(0, 1);
atv.engine = Math.min(atv.engine + 1, 6);
}
if (n == 4) {
SFXdd2.start(0, 1);
atv.fuelTank = Math.min(atv.fuelTank + 1, 6);
}
if (n == 5) {
SFXdd2.start(0, 1);
atv.radiator = Math.min(atv.radiator + 1, 5);
}
if (n == 6) {
SFXdd2.start(0, 1);
atv.bay = Math.min(atv.bay + 1, 5);
}
if (n == 7) {
SFXdd3.start(0, 1);
atv.fuel = atv.fuelTankCapacity[atv.fuelTank];
}
if (n == 8) {
SFXdd4.start(0, 1);
atv.hp = atv.hullHp[atv.hull];
atv.hull = 6;
atv.drill = 6;
atv.engine = 6;
atv.fuelTank = 6;
atv.radiator = 5;
atv.bay = 5;
var _loc1 = 0;
while (_loc1 < 7) {
atv.usableItem[_loc1] = 99;
_loc1++;
}
}
}
function ooo(oooooooo, ooooooooo) {
oooooooooo = "";
ooooooooooo = 0;
i = 0;
while (i < oooooooo.length) {
oooooooooo = oooooooooo + chr(oooooooo.charCodeAt(i) ^ ooooooooo.charCodeAt(ooooooooooo));
ooooooooooo++;
if (ooooooooooo == ooooooooo.length) {
ooooooooooo = 0;
}
i++;
}
return(oooooooooo);
}
_quality = "BEST";
_focusrect = false;
fscommand ("allowscale", "false");
Stage.scaleMode = "noScale";
fscommand ("showmenu", "false");
var noMenu = new ContextMenu();
noMenu.hideBuiltInItems();
_root.menu = noMenu;
var gameVersionNum = "0.937";
var FPV8 = true;
var runLocal = false;
if (runLocal) {
var filePath = "http://www.xgenstudios.com";
} else {
var filePath = "";
}
if (FPV8) {
var gameVersion = (gameVersionNum + " FP8");
} else {
var gameVersion = (gameVersionNum + " FP7");
}
var uName = "";
var uPass = "";
var loadedGame = false;
var loadGameArray = new Array();
var showLoad = false;
var BGMvolume = 80;
var SFXvolume = 80;
var optExhaust = true;
var optChunks = true;
var optCosmos = true;
var optMouseControl = true;
stop();
System.security.allowDomain("shockwave.com", "gameblast.shockwave.com", "www.shockwave.com", "dev.shockwave.com", "stage.shockwave.com");
_level0.swHighScoreObject = new Object();
_level0.swHighScoreObject.showTab = "view";
_level0.swHighScoreObject.gameId = "motherload";
_level0.swHighScoreObject.gameTitle = "Motherload";
_level0.swHighScoreObject.screenWidth = 550;
_level0.swHighScoreObject.screenHeight = 400;
_level0.swHighScoreObject.scoreDescriptor = "points";
_level0.swHighScoreObject.numPlayers = 1;
_level0.swHighScoreObject.player1Score = 0;
_level0.swHighScoreObject.player2Score = 0;
_level0.swHighScoreObject.player3Score = 0;
_level0.swHighScoreObject.player4Score = 0;
_level0.HSHubURL = "http://www.shockwave.com/content/highscores/scorez-2002.swf";
restorePreferences();
gameKeyListener = new Object();
gameKeyListener.onKeyDown = function () {
pressedKey = Key.getAscii();
if ((pressedKey == 72) || (pressedKey == 104)) {
if (((gameMode == 0) && (paused == false)) && (!battleMode)) {
gotoAndStop (17);
} else if ((gameMode == 6) && (paused == false)) {
gotoAndStop (6);
}
}
if ((pressedKey == 73) || (pressedKey == 105)) {
if (((gameMode == 0) && (paused == false)) && (!battleMode)) {
gotoAndStop (8);
} else if ((gameMode == 2) && (paused == false)) {
idle(100);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
wipe = false;
gotoAndStop (6);
}
}
if ((pressedKey == 80) || (pressedKey == 112)) {
if ((gameMode == 0) && (!battleMode)) {
pauseGame();
}
}
if ((pressedKey == 70) || (pressedKey == 102)) {
if ((gameMode == 0) && (paused == false)) {
useItem(0);
}
} else if ((pressedKey == 82) || (pressedKey == 114)) {
if ((gameMode == 0) && (paused == false)) {
useItem(1);
}
} else if ((pressedKey == 88) || (pressedKey == 120)) {
if ((gameMode == 0) && (paused == false)) {
useItem(2);
}
} else if ((pressedKey == 67) || (pressedKey == 99)) {
if ((gameMode == 0) && (paused == false)) {
useItem(3);
}
} else if ((pressedKey == 81) || (pressedKey == 113)) {
if ((gameMode == 0) && (paused == false)) {
useItem(4);
}
} else if ((pressedKey == 77) || (pressedKey == 109)) {
if ((gameMode == 0) && (paused == false)) {
useItem(5);
}
} else if (pressedKey == 48) {
if ((gameMode == 0) && (paused == false)) {
useItem(6);
}
}
if ((((((gameMode == 1) && (upgrade_dialogue._visible == 0)) || ((gameMode == 3) && (sell_dialogue._visible == 0))) || ((gameMode == 4) && (fuel_dialogue._visible == 0))) || ((gameMode == 8) && (repair_dialogue._visible == 0))) && (insideTimer >= 20)) {
stopPrintedText();
idle(100);
changeBGM("main", 70);
gotoAndStop (6);
earthQuakeChance();
} else if ((gameMode == 2) && (insideTimer >= 20)) {
exitInventory();
}
};
player.prototype.addToCash = function (c) {
this.cash = this.cash + c;
cashMC.gotoAndPlay(1);
};
player.prototype.rackUpCash = function (p) {
if (int(cashMC.cashG1.scoreText.text) < this.cash) {
cashMC.cashG1.scoreText.text = (cashMC.cashG2.scoreText.text = Math.min(this.cash, int(cashMC.cashG1.scoreText.text) + Math.max(int((this.cash - int(cashMC.cashG1.scoreText.text)) / 7), 31)));
} else if (int(cashMC.cashG1.scoreText.text) > this.cash) {
cashMC.cashG1.scoreText.text = (cashMC.cashG2.scoreText.text = Math.max(this.cash, int(cashMC.cashG1.scoreText.text) - Math.max(int((int(cashMC.cashG1.scoreText.text) - this.cash) / 7), 31)));
}
};
player.prototype.addToScore = function (p) {
this.score = this.score + p;
if (this.score > 1000000000) {
this.score = this.score - 1000000000;
this.scoreBillion = this.scoreBillion + 1;
}
this.displayedScore = 0;
scoreMC.gotoAndPlay(1);
};
player.prototype.rackUpScore = function (p) {
if (this.displayedScore < this.score) {
this.displayedScore = Math.min(this.score, this.displayedScore + Math.max(int((this.score - this.displayedScore) / 7), 31));
scoreMC.scoreG1.scoreText.text = (scoreMC.scoreG2.scoreText.text = formatNumber((this.scoreBillion * 1000000000) + this.displayedScore));
}
};
vehicle.prototype.getBaySpace = function () {
s = this.baySize[this.bay];
var _loc2 = 0;
while (_loc2 < 10) {
s = s - this.bayContents[_loc2];
_loc2++;
}
return(s);
};
vehicle.prototype.getMass = function () {
m = this.mass;
var _loc2 = 0;
while (_loc2 < 10) {
m = m + (this.bayContents[_loc2] * minerals[_loc2].mass);
_loc2++;
}
return(m);
};
vehicle.prototype.damage = function (d) {
if (this.mod != "dead") {
d = int(d);
if (d != 0) {
this.hp = this.hp - d;
hpMC.hpBarGlass.gotoAndPlay(1);
atvMC.attachMovie("damageFX", "damageFX", 1200);
}
if (this.hp <= 0) {
this.die();
}
}
};
vehicle.prototype.die = function () {
if ((this.mod != "dead") && (gameMode != 5)) {
this.mod = "dead";
gotoAndStop (12);
atvMC._visible = 0;
_root.attachMovie("podExplodeGroundMC", "podExplode", 987654321);
if (this.facing == "right") {
podExplode._xscale = -100;
}
podExplode._x = atvMC._x - 10;
podExplode._y = atvMC._y - 20;
updateHUD();
}
};
vehicle.prototype.addSteam = function () {
earthMC.attachMovie("puffMC", "puff" + puffCount, 1100000 + puffCount);
with (eval ("earthMC.puff" + puffCount)) {
if (this.facing == "right") {
mod = -26;
} else if (this.facing == "left") {
mod = 26;
_xscale = -100;
}
_x = ((atvMC._x - earthMC._x) + (random(2) * 3)) + mod;
_y = (atvMC._y - earthMC._y) - 23;
_rotation = random(40) - 20;
}
puffCount++;
if (puffCount > 10) {
puffCount = 0;
}
};
vehicle.prototype.addToBay = function (n) {
if (n > 9) {
collectSpecial(n);
return(true);
}
if (this.getBaySpace() > 0) {
this.bayContents[n]++;
return(true);
}
return(false);
};
vehicle.prototype.move = function () {
if (atv.mod != "digging") {
idl = 100;
if ((int(this.yVel / 10) == 0) && (earthMC.c.hitTest((atvMC._x + this.width) - 1, (atvMC._y + this.height) + 1, true) || (earthMC.c.hitTest((atvMC._x - this.width) + 1, (atvMC._y + this.height) + 1, true)))) {
if (keyIsDownMulti("right")) {
if ((atv.mod == "ground") && (earthMC.c.hitTest((atvMC._x + this.width) + 1, atvMC._y, true))) {
if ((atv.facing == "left") || (atv.facing == "right")) {
startDigging("right");
idl = 120;
}
}
this.xVel = Math.min(this.xVel + (this.enginePower[this.engine] / this.getMass()), this.enginePower[this.engine] / 10);
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
steamCount = steamCount + 4;
idl = idl + 30;
} else if (keyIsDownMulti("left")) {
if ((atv.facing == "left") || (atv.facing == "right")) {
if ((atv.mod == "ground") && (earthMC.c.hitTest((atvMC._x - this.width) - 1, atvMC._y, true))) {
startDigging("left");
idl = 120;
}
}
this.xVel = Math.max(this.xVel - (this.enginePower[this.engine] / this.getMass()), (-this.enginePower[this.engine]) / 10);
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
steamCount = steamCount + 4;
idl = idl + 30;
}
if (keyIsDownMulti("up")) {
if ((atv.facing == "left") || (atv.facing == "right")) {
this.yVel = Math.max(this.yVel - ((this.enginePower[this.engine] / this.getMass()) * 2), (-this.enginePower[this.engine]) / 10);
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
startTransform("launch");
}
} else if (keyIsDownMulti("down")) {
if ((atv.facing == "left") || (atv.facing == "right")) {
if (atv.mod == "ground") {
startDigging("down");
idl = 150;
}
}
}
this.xVel = this.xVel * friction;
atvMC._rotation = 0;
if ((this.mod == "air") && ((this.facing == "right") || (this.facing == "left"))) {
this.rotorVel = 0;
startTransform("land");
} else if (this.mod == "ground") {
if (this.facing == "left") {
frame = atvMC.treadMC._currentframe - int(this.xVel * 4);
if (this.xVel > 0) {
startTurning("right", "ground");
}
} else if (this.facing == "right") {
frame = atvMC.treadMC._currentframe + int(this.xVel * 4);
if (this.xVel < 0) {
startTurning("left", "ground");
}
}
}
if (frame > 40) {
frame = frame - 40;
}
atvMC.treadMC.gotoAndStop(frame);
} else {
if (keyIsDownMulti("right")) {
this.xVel = Math.min(this.xVel + ((this.enginePower[this.engine] / this.getMass()) / 1.5), this.enginePower[this.engine] / 10);
atvMC._rotation = Math.min(atvMC._rotation + (this.enginePower[this.engine] / 50), 15);
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
this.rotorVel = Math.min(this.rotorVel + 0.3, 11);
steamCount = steamCount + 2;
idl = idl + 20;
} else if (keyIsDownMulti("left")) {
this.xVel = Math.max(this.xVel - ((this.enginePower[this.engine] / this.getMass()) / 1.5), (-this.enginePower[this.engine]) / 10);
atvMC._rotation = Math.max(atvMC._rotation - (this.enginePower[this.engine] / 50), -15);
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
this.rotorVel = Math.min(this.rotorVel + 0.3, 11);
steamCount = steamCount + 2;
idl = idl + 20;
} else if (atvMC._rotation > 1) {
atvMC._rotation = atvMC._rotation - 1;
} else if (atvMC._rotation < -1) {
atvMC._rotation = atvMC._rotation + 1;
}
if (keyIsDownMulti("up")) {
if (this.mod == "air") {
this.rotorVel = Math.min(this.rotorVel + 1, 11);
this.yVel = Math.max(this.yVel - (this.enginePower[this.engine] / this.getMass()), (-this.enginePower[this.engine]) / 12);
} else {
this.yVel = Math.max(this.yVel - ((this.enginePower[this.engine] / this.getMass()) / 1.5), (-this.enginePower[this.engine]) / 12);
}
atvMC._rotation = atvMC._rotation * 0.7;
this.fuel = this.fuel - (this.enginePower[this.engine] / 50000);
steamCount = steamCount + 4;
idl = idl + 30;
}
this.xVel = this.xVel * airResistance;
this.yVel = this.yVel * airResistance;
this.yVel = Math.min(this.yVel + (gravity / 30), 20);
if ((this.mod == "ground") && ((this.facing == "right") || (this.facing == "left"))) {
launchCount++;
if (launchCount > 5) {
startTransform("launch");
launchCount = 0;
}
} else if (this.mod == "air") {
launchCount = 0;
if (this.facing == "left") {
if (this.xVel > 0) {
startTurning("right", "air");
}
} else if (this.facing == "right") {
if (this.xVel < 0) {
startTurning("left", "air");
}
}
this.rotorVel = Math.max(this.rotorVel * 0.95, 2);
frame = atvMC.flyMC._currentframe + int(this.rotorVel);
if (frame > 25) {
frame = frame - 25;
}
atvMC.flyMC.gotoAndStop(frame);
} else {
launchCount = 0;
}
}
idle(idl, this.rotorVel);
}
this.fuel = this.fuel - (this.enginePower[this.engine] / 100000);
if (this.xVel > 0) {
if (earthMC.c.hitTest((atvMC._x + this.xVel) + this.width, atvMC._y + this.height, true) || (earthMC.c.hitTest((atvMC._x + this.xVel) + this.width, atvMC._y - this.height, true))) {
this.xVel = 0;
}
} else if (this.xVel < 0) {
if (earthMC.c.hitTest((atvMC._x + this.xVel) - this.width, atvMC._y + this.height, true) || (earthMC.c.hitTest((atvMC._x + this.xVel) - this.width, atvMC._y - this.height, true))) {
this.xVel = 0;
}
}
if (this.yVel > 0) {
if (earthMC.c.hitTest(atvMC._x + this.width, (atvMC._y + this.yVel) + this.height, true) || (earthMC.c.hitTest(atvMC._x - this.width, (atvMC._y + this.yVel) + this.height, true))) {
if (this.yVel > 7) {
SFXcrash.start(0, 1);
atv.damage(this.yVel / 2);
}
this.yVel = this.yVel * -0.2;
}
} else if (this.yVel < 0) {
if (earthMC.c.hitTest(atvMC._x + this.width, ((atvMC._y + this.yVel) - this.height) - 1, true) || (earthMC.c.hitTest(atvMC._x - this.width, ((atvMC._y + this.yVel) - this.height) - 1, true))) {
this.yVel = this.yVel * -0.2;
}
}
if (earthMC.c.hitTest((atvMC._x + this.width) - 1, (atvMC._y + this.height) + 1, true) || (earthMC.c.hitTest((atvMC._x - this.width) + 1, (atvMC._y + this.height) + 1, true))) {
if (Math.abs(this.yVel) < 0.12) {
this.yVel = 0;
}
}
if (Math.abs(this.xVel) < 0.12) {
this.xVel = 0;
}
if (Math.abs(this.yVel) < 0.07) {
this.yVel = 0;
}
xMove = this.xVel;
yMove = this.yVel;
if ((atvMC._x > this.rightLimit) && ((earthMC._x - ((atvMC._x - this.rightLimit) / scrollSpeed)) > earthMinX)) {
val = (atvMC._x - this.rightLimit) / scrollSpeed;
earthMC._x = earthMC._x - val;
atvMC._x = atvMC._x - (val - xMove);
} else if ((atvMC._x < this.leftLimit) && ((earthMC._x - ((atvMC._x - this.leftLimit) / scrollSpeed)) < earthMaxX)) {
val = (atvMC._x - this.leftLimit) / scrollSpeed;
earthMC._x = earthMC._x - val;
atvMC._x = atvMC._x - (val - xMove);
} else {
atvMC._x = atvMC._x + xMove;
if (atvMC._x < 0) {
atvMC._x = 0;
} else if (atvMC._x > 550) {
atvMC._x = 550;
}
}
if (atvMC._y > this.bottomLimit) {
val = (atvMC._y - this.bottomLimit) / scrollSpeed;
earthMC._y = earthMC._y - val;
atvMC._y = atvMC._y - (val - yMove);
} else if (atvMC._y < this.topLimit) {
val = (atvMC._y - this.topLimit) / scrollSpeed;
earthMC._y = earthMC._y - val;
atvMC._y = atvMC._y - (val - yMove);
} else {
atvMC._y = atvMC._y + yMove;
if (atvMC._y < 0) {
atvMC._y = 0;
} else if (atvMC._y > 400) {
atvMC._y = 400;
}
}
updateEarth();
bg._y = Math.max(earthMC._y + 229, -15);
if (bg._y > 0) {
bg.topSoil._x = earthMC._x / 1.3;
}
if (optExhaust) {
steamCount = steamCount + 2;
if (steamCount > 20) {
steamCount = 0;
this.addSteam();
}
}
};
vehicle.prototype.tileEvents = function () {
itemTimer++;
Tx = int(((atvMC._x - earthMC._x) / 50) + 0.5);
Ty = int((atvMC._y - earthMC._y) / 50);
if (eY > -5) {
buildingTimer++;
if (((this.mod == "ground") && (buildingTimer > 15)) && (Ty == 4)) {
if (Tx == 3) {
frameChangeValid = true;
gotoAndStop (10);
atvMC._x = atvMC._x + 55;
this.xVel = 0;
buildingTimer = 0;
}
if (Tx == 10) {
frameChangeValid = true;
gotoAndStop (9);
atvMC._x = atvMC._x - 55;
this.xVel = 0;
buildingTimer = 0;
}
if (Tx == 24) {
frameChangeValid = true;
gotoAndStop (7);
atvMC._x = atvMC._x - 55;
this.xVel = 0;
buildingTimer = 0;
}
if ((Tx == 30) || (Tx == 31)) {
frameChangeValid = true;
gotoAndStop (11);
atvMC._x = atvMC._x - 55;
this.xVel = 0;
buildingTimer = 0;
}
} else if (earthMC.savePodMC.hitTest(atvMC._x, atvMC._y, true) && (buildingTimer > 15)) {
frameChangeValid = true;
gotoAndStop (20);
atvMC._x = atvMC._x + 55;
this.xVel = 0;
this.yVel = 0;
buildingTimer = 0;
}
}
if (((eY > -1) && (eY < 5)) && (Tx < 25)) {
moreShopsMC._visible = 1;
} else {
moreShopsMC._visible = 0;
}
if ((Ty > (earthHeight - 13)) && (currentBGM != "core")) {
preBattle();
} else if ((Ty < (earthHeight - 17)) && (currentBGM != "main")) {
stopBattle();
}
};
var emptyTiles = new Array();
var emptyTileIndex = 0;
createEmptyTileArray();
var keyBuffer = new Array(11);
cheatCodeListener = new Object();
cheatCodeListener.onKeyDown = function () {
pressedKey = Key.getAscii();
checkCode(pressedKey);
};
Frame 2
function cancelLoadGame() {
loadGameMC._visible = 0;
menuActive = true;
title_BTNNewGameMC._visible = 1;
title_BTNLoadGameMC._visible = 1;
title_BTNInstructionsMC._visible = 1;
}
function loadGameDecode(p) {
p = ooo(convertToChars(p), "n");
CSVtoArray(p);
loadedGame = true;
loadGameFlag = true;
gotoAndPlay (4);
}
function loadGameDecodeOffline() {
loadedGame = true;
loadGameFlag = true;
gotoAndPlay (4);
}
function restoreLoadedGame() {
p1.score = int(loadGameArray[0]);
p1.cash = int(loadGameArray[1]);
p1.scoreBillion = int(loadGameArray[2]);
lvl = int(loadGameArray[3]);
atv.hp = int(loadGameArray[4]);
atv.fuel = int(loadGameArray[5]);
atv.hull = int(loadGameArray[6]);
atv.drill = int(loadGameArray[7]);
atv.engine = int(loadGameArray[8]);
atv.fuelTank = int(loadGameArray[9]);
atv.radiator = int(loadGameArray[10]);
atv.bay = int(loadGameArray[11]);
var _loc1 = 0;
while (_loc1 < 10) {
atv.bayContents[_loc1] = int(loadGameArray[_loc1 + 12]);
_loc1++;
}
var _loc1 = 0;
while (_loc1 < 7) {
int((atv.usableItem[_loc1] = loadGameArray[_loc1 + 22]));
_loc1++;
}
lastTransmission = int(loadGameArray[29]);
playTime = int(loadGameArray[30]);
totalPlayTime = int(loadGameArray[31]);
}
function restoreLoadedGameOffline() {
myLSO = SharedObject.getLocal("mtvxgenml", "/");
if (myLSO.data.myObj == undefined) {
}
p1.score = int(myLSO.data.myObj.objArray[0]);
p1.cash = int(myLSO.data.myObj.objArray[1]);
p1.scoreBillion = int(myLSO.data.myObj.objArray[2]);
lvl = int(myLSO.data.myObj.objArray[3]);
atv.hp = int(myLSO.data.myObj.objArray[4]);
atv.fuel = int(myLSO.data.myObj.objArray[5]);
atv.hull = int(myLSO.data.myObj.objArray[6]);
atv.drill = int(myLSO.data.myObj.objArray[7]);
atv.engine = int(myLSO.data.myObj.objArray[8]);
atv.fuelTank = int(myLSO.data.myObj.objArray[9]);
atv.radiator = int(myLSO.data.myObj.objArray[10]);
atv.bay = int(myLSO.data.myObj.objArray[11]);
var _loc1 = 0;
while (_loc1 < 10) {
atv.bayContents[_loc1] = int(myLSO.data.myObj.objArray[_loc1 + 12]);
_loc1++;
}
var _loc1 = 0;
while (_loc1 < 7) {
atv.usableItem[_loc1] = int(myLSO.data.myObj.objArray[_loc1 + 22]);
_loc1++;
}
lastTransmission = int(myLSO.data.myObj.objArray[29]);
playTime = int(myLSO.data.myObj.objArray[30]);
totalPlayTime = int(myLSO.data.myObj.objArray[31]);
}
stop();
_quality = "BEST";
stopAllSounds();
var menuActive = false;
_root.attachMovie("fadeInFX", "fadeInFX", 312);
instructionsMC._visible = 0;
loadGameMC._visible = 0;
versionText.text = "v" + gameVersion;
var earthWidth = 36;
var earthHeight = 600;
var loadGameFlag = false;
var satanDead = false;
if (showLoad) {
showLoad = false;
menuActive = false;
loadGameMC._visible = true;
title_BTNNewGameMC._visible = 0;
title_BTNLoadGameMC._visible = 0;
title_BTNInstructionsMC._visible = 0;
}
Frame 4
bg.gotoAndStop(1);
wipeMC.gotoAndStop(1);
Key.addListener(gameKeyListener);
depthCount = 10000;
var atv = new vehicle();
var p1 = new player();
var lvl = 1;
var gameMode = 0;
var droppedOff = false;
var paused = false;
var cheating = false;
var wipe = true;
var item = new Array();
var minerals = new Array();
var transmissions = new Array();
var lastTransmission = -1;
var earth = new Array();
var upgradeCategories = new Array();
var upgradeCategoryID = new Array();
var selectMCDestX = 218;
var selectMCDestY = 161;
var printTextNum = 0;
var difficulty = new Array();
var earthMinX = ((-(earthWidth - 14)) * 50);
var earthMaxX = 0;
var eX = 0;
var eY = 0;
var leftCol = 0;
var topRow = 0;
var oldLeftCol = 0;
var oldTopRow = 0;
var playTime = 0;
var totalPlayTime = 0;
var dayTime = 0;
var dayLength = 2880;
var bgB = -100;
var puffCount = 0;
var mainCount = 0;
var steamCount = 0;
var buildingTimer = 0;
var itemTimer = 0;
var launchCount = 0;
var maxDepth = 100;
var frameChangeValid = false;
var dugTile = 0;
var pnum = 0;
var battleMode = false;
var savePodDisplayed = false;
var globalVolume = 150;
var currentBGM = 0;
initialize();
initializeSound();
generateEarth();
scrollSpeed = 10;
var gravity = 9.81;
var friction = 0.94;
var airResistance = 0.98;
var kUp = new Array(38, 119, 87);
var kDown = new Array(40, 115, 83);
var kLeft = new Array(37, 97, 65);
var kRight = new Array(39, 100, 68);
changeBGM("main", 70);
SFXidle100.start(0, 1000000);
SFXrotor100.start(0, 1000000);
if (loadGameFlag == true) {
restoreLoadedGame();
}
Frame 5
displayEarth();
displaySavePod();
atvMC._visible = 0;
earthMC.c._visible = 0;
sun._y = (earthMC._y / 3) + 350;
pauseMC._visible = 0;
Frame 6
stop();
_quality = "LOW";
gameMode = 0;
cheatMC._visible = cheating;
atv.mouseButtonDown = false;
if (!droppedOff) {
var i = 0;
while (i < 10) {
atv.move();
i++;
}
updateBg();
updatePan();
updateCosmos();
gotoAndStop (14);
}
if (!wipe) {
wipeMC.gotoAndStop(19);
wipe = true;
}
Instance of Symbol 159 MovieClip [emptyMC] in Frame 6
onClipEvent (enterFrame) {
if (!_parent.paused) {
_parent.mainCount++;
if (_parent.mainCount >= 4) {
_parent.updateBg();
_parent.updatePan();
_parent.atv.tileEvents();
_parent.mainCount = 0;
_parent.checkTransmissions();
}
_parent.mouseControl();
_parent.atv.move();
_parent.updateHUD();
_parent.updateTime();
_parent.updateCosmos();
}
}
onClipEvent (mouseDown) {
_parent.atv.mouseButtonDown = true;
}
onClipEvent (mouseUp) {
_parent.atv.mouseButtonDown = false;
}
Frame 7
function selectCategory(a) {
if (upgrade_dialogue._visible == 0) {
var i = 0;
while (i < 7) {
with (eval ("upgradeIcon" + i)) {
_visible = 1;
}
with (eval ("BTNcat" + i)) {
_visible = 0;
}
with (eval ("led" + i)) {
gotoAndStop(1);
}
i++;
}
if (eval ("BTNcat" + a) != undefined) {
with (eval ("BTNcat" + a)) {
_visible = 1;
}
with (eval ("led" + a)) {
gotoAndStop(2);
}
}
currentCategory = a;
if (a < 4) {
upgradeIcon6._visible = 1;
} else {
upgradeIcon6._visible = 0;
}
selectMC._visible = 0;
currentMC._visible = 1;
BTNpurchase._visible = 0;
stopPrintedText();
upgradeText.text = "CURRENT:\r\r\r\r\r------------";
availableText.text = "AVAILABLE UPGRADES:";
updateCurrentUpgrade(a);
var i = 1;
while (i < 7) {
with (eval ("upgradeIcon" + i)) {
image.attachMovie((upgradeCategoryID[a] + "_") + i, "image", 100);
}
i++;
}
}
}
function updateCurrentUpgrade(a) {
currentMC.imageMC.attachMovie((upgradeCategoryID[a] + "_") + eval ("atv." + upgradeCategoryID[a]), "image", 100);
currentMC.imageMC.image._xscale = (currentMC.imageMC.image._yscale = 50);
if (a == 0) {
currentText.text = atv.drillNames[atv.drill];
}
if (a == 1) {
currentText.text = atv.hullNames[atv.hull];
}
if (a == 2) {
currentText.text = atv.engineNames[atv.engine];
}
if (a == 3) {
currentText.text = atv.fuelTankNames[atv.fuelTank];
}
if (a == 4) {
currentText.text = atv.radiatorNames[atv.radiator];
}
if (a == 5) {
currentText.text = atv.bayNames[atv.bay];
}
}
function purchaseUpgrade() {
if (upgrade_dialogue._visible == 0) {
if (currentCategory == 0) {
upgradePrice = atv.drillPrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.drill != currentSelection) {
atv.drill = currentSelection;
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
if (currentCategory == 1) {
upgradePrice = atv.hullPrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.hull != currentSelection) {
atv.hull = currentSelection;
atv.hp = atv.hullHp[atv.hull];
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
if (currentCategory == 2) {
upgradePrice = atv.enginePrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.engine != currentSelection) {
atv.engine = currentSelection;
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
if (currentCategory == 3) {
upgradePrice = atv.fuelTankPrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.fuelTank != currentSelection) {
atv.fuelTank = currentSelection;
atv.fuel = atv.fuelTankCapacity[atv.fuelTank];
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
if (currentCategory == 4) {
upgradePrice = atv.radiatorPrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.radiator != currentSelection) {
atv.radiator = currentSelection;
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
if (currentCategory == 5) {
upgradePrice = atv.bayPrices[currentSelection];
if (p1.cash >= upgradePrice) {
if (atv.bay != currentSelection) {
atv.bay = currentSelection;
// unexpected jump
}
purchaseFail("Upgrade already installed!");
return(0);
}
purchaseFail("Not enough cash!");
return(0);
}
SFXpurchase.start(0, 1);
p1.addToCash(-upgradePrice);
updateCurrentUpgrade(currentCategory);
}
}
function purchaseFail(msg) {
showUpgradeDialogue(msg);
SFXerror2.start(0, 1);
}
function selectUpgrade(u) {
if (upgrade_dialogue._visible == 0) {
if (u != -1) {
currentSelection = u;
selectMC._visible = 1;
selectMCDestX = eval ("upgradeIcon" + u)._x;
selectMCDestY = eval ("upgradeIcon" + u)._y;
BTNpurchase._visible = 1;
SFXclick.start(0, 1);
if (currentCategory == 0) {
printText(atv.drillNames[u], upgradeNameText, 2, 0);
printText((atv.drillSpeed[u] * 10) + " ft/s", upgradeDescText, 3, 1);
printText(formatPrice(atv.drillPrices[u]), upgradePriceText, 4, 2);
}
if (currentCategory == 1) {
printText(atv.hullNames[u], upgradeNameText, 2, 0);
printText(atv.hullHp[u] + " Health", upgradeDescText, 3, 1);
printText(formatPrice(atv.hullPrices[u]), upgradePriceText, 4, 2);
}
if (currentCategory == 2) {
printText(atv.engineNames[u], upgradeNameText, 2, 0);
printText(atv.enginePower[u] + " HorsePower", upgradeDescText, 3, 1);
printText(formatPrice(atv.enginePrices[u]), upgradePriceText, 4, 2);
}
if (currentCategory == 3) {
printText(atv.fuelTankNames[u], upgradeNameText, 2, 0);
printText(atv.fuelTankCapacity[u] + " Liters", upgradeDescText, 3, 1);
printText(formatPrice(atv.fuelTankPrices[u]), upgradePriceText, 4, 2);
}
if (currentCategory == 4) {
printText(atv.radiatorNames[u], upgradeNameText, 2, 0);
printText((100 - (atv.radiatorCooling[u] * 100)) + "% Effective", upgradeDescText, 3, 1);
printText(formatPrice(atv.radiatorPrices[u]), upgradePriceText, 4, 2);
}
if (currentCategory == 5) {
printText(atv.bayNames[u], upgradeNameText, 2, 0);
printText(atv.baySize[u] + " Cu ft.", upgradeDescText, 3, 1);
printText(formatPrice(atv.bayPrices[u]), upgradePriceText, 4, 2);
}
} else {
selectMC._visible = 0;
}
}
}
function showUpgradeDialogue(s) {
upgrade_BTN_OKMC._visible = 1;
upgrade_dialogue._visible = 1;
upgrade_dialogue_screen._visible = 1;
upgrade_dialogueText.text = s;
shop_upgradesBTNMCExit._visible = 0;
}
function hideUpgradeDialogue() {
upgrade_BTN_OKMC._visible = 0;
upgrade_dialogue._visible = 0;
upgrade_dialogue_screen._visible = 0;
upgrade_dialogueText.text = "";
shop_upgradesBTNMCExit._visible = 1;
}
preventCheating();
_quality = "BEST";
gameMode = 1;
stopIdle();
changeBGM("shop", 30);
fuelTankMC.gotoAndStop(1);
insideTimer = 0;
hideUpgradeDialogue();
p1.addToCash(0);
var currentSelection = -1;
currentCategory = 99;
selectCategory(currentCategory);
selectUpgrade(-1);
var i = 1;
while (i < 7) {
with (eval ("upgradeIcon" + i)) {
_visible = 0;
}
i++;
}
upgradeText.text = "Welcome to the upgrades shop!\r\rIf you're looking to enhance your digging machine, you've come to the right place! You can browse the different upgrade categories using the buttons above.";
availableText.text = "";
currentMC._visible = 0;
BTNpurchase._visible = 0;
Instance of Symbol 597 MovieClip "upgradeIcon1" in Frame 7
on (press) {
_parent.selectUpgrade(1);
}
Instance of Symbol 597 MovieClip "upgradeIcon4" in Frame 7
on (press) {
_parent.selectUpgrade(4);
}
Instance of Symbol 597 MovieClip "upgradeIcon2" in Frame 7
on (press) {
_parent.selectUpgrade(2);
}
Instance of Symbol 597 MovieClip "upgradeIcon5" in Frame 7
on (press) {
_parent.selectUpgrade(5);
}
Instance of Symbol 597 MovieClip "upgradeIcon3" in Frame 7
on (press) {
_parent.selectUpgrade(3);
}
Instance of Symbol 597 MovieClip "upgradeIcon6" in Frame 7
on (press) {
_parent.selectUpgrade(6);
}
Instance of Symbol 614 MovieClip "BTNpurchase" in Frame 7
on (release) {
_parent.purchaseUpgrade();
}
Instance of Symbol 159 MovieClip [emptyMC] in Frame 7
onClipEvent (enterFrame) {
_parent.mainCount++;
if (_parent.mainCount >= 4) {
_parent.updateBg();
_parent.mainCount = 0;
}
_parent.updateTime();
_parent.updateCosmos();
_parent.p1.rackUpCash();
_parent.inside();
}
Frame 8
function populateStats() {
statsText.text = "";
statsText.text = statsText.text + (((" Cargo " + int(((atv.baySize[atv.bay] - atv.getBaySpace()) / atv.baySize[atv.bay]) * 100)) + "% full") + "\r");
statsText.text = statsText.text + (((" " + (atv.getMass() * 10)) + " Kg") + "\r");
statsText.text = statsText.text + "\r\r";
statsText.text = statsText.text + (atv.drillNames[atv.drill] + "\r");
statsText.text = statsText.text + (atv.hullNames[atv.hull] + "\r");
statsText.text = statsText.text + (atv.engineNames[atv.engine] + "\r");
statsText.text = statsText.text + (atv.fuelTankNames[atv.fuelTank] + "\r");
statsText.text = statsText.text + (atv.radiatorNames[atv.radiator] + "\r");
statsText.text = statsText.text + (atv.bayNames[atv.bay] + "\r");
var i = 0;
while (i < 6) {
n = atv.usableItem[i];
if (n != 0) {
with (eval (("item" + i) + "Text")) {
text = "x" + n;
}
with (eval ("item_" + i)) {
_alpha = 100;
}
} else {
with (eval (("item" + i) + "Text")) {
text = "";
}
with (eval ("item_" + i)) {
_alpha = 40;
}
}
i++;
}
bayContentsText.text = "";
var i = 0;
while (i < 10) {
if (int(atv.bayContents[i]) != 0) {
with (eval ("mineralIcon" + i)) {
_alpha = 100;
}
with (eval ("jettisonMC" + i)) {
_visible = 1;
}
bayContentsText.text = bayContentsText.text + ((((("x" + atv.bayContents[i]) + " (") + minerals[i].name) + ")") + "\r");
} else {
with (eval ("mineralIcon" + i)) {
_alpha = 20;
}
with (eval ("jettisonMC" + i)) {
_visible = 0;
}
bayContentsText.text = bayContentsText.text + "\r";
}
i++;
}
if (lvl > 1) {
satansHead._visible = 1;
bayContentsText.text = bayContentsText.text + ((("x" + int(lvl - 1)) + " (Satan's Head)") + "\r");
} else {
satansHead._visible = 0;
}
}
function jettison(m) {
atv.bayContents[m]--;
SFXjettison.start(0, 1);
populateStats();
}
function exitInventory() {
idle(100);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
updateHUD();
wipe = false;
gotoAndStop (6);
}
_quality = "BEST";
gameMode = 2;
stopIdle();
BGMmain.setVolume((0.0035 * BGMvolume) * globalVolume);
fuelTankMC.gotoAndStop(1);
insideTimer = 0;
populateStats();
Instance of Symbol 159 MovieClip [emptyMC] in Frame 8
onClipEvent (enterFrame) {
_parent.mainCount++;
if (_parent.mainCount >= 4) {
_parent.updateBg();
_parent.mainCount = 0;
}
_parent.updateTime();
_parent.updateCosmos();
_parent.inside();
}
Frame 9
function populateSellStats() {
bayContentsText.text = "";
quantityText.text = "";
xText.text = "";
valueText.text = "";
eqText.text = "";
totalValueText.text = "";
totalValue = 0;
var i = 0;
while (i < 10) {
if (int(atv.bayContents[i]) != 0) {
with (eval ("mineralIcon" + i)) {
_alpha = 100;
}
bayContentsText.text = bayContentsText.text + (minerals[i].name + "\r");
quantityText.text = quantityText.text + (atv.bayContents[i] + "\r");
xText.text = xText.text + "x\r";
valueText.text = valueText.text + (("$" + int(minerals[i].value / difficulty[lvl].mineralValueMod)) + "\r");
eqText.text = eqText.text + "=\r";
totalValueText.text = totalValueText.text + (("$" + (atv.bayContents[i] * int(minerals[i].value / difficulty[lvl].mineralValueMod))) + "\r");
} else {
with (eval ("mineralIcon" + i)) {
_alpha = 0;
}
bayContentsText.text = bayContentsText.text + "\r";
quantityText.text = quantityText.text + "\r";
xText.text = xText.text + "\r";
valueText.text = valueText.text + "\r";
eqText.text = eqText.text + "\r";
totalValueText.text = totalValueText.text + "\r";
}
totalValue = totalValue + (atv.bayContents[i] * int(minerals[i].value / difficulty[lvl].mineralValueMod));
i++;
}
totalValueSumText.text = "$" + totalValue;
mineralIcon10._alpha = 0;
}
function sellAll() {
totalValue = 0;
var _loc1 = 0;
while (_loc1 < 10) {
totalValue = totalValue + (atv.bayContents[_loc1] * int(minerals[_loc1].value / difficulty[lvl].mineralValueMod));
atv.bayContents[_loc1] = 0;
_loc1++;
}
p1.cash = p1.cash + totalValue;
if (totalValue != 0) {
str = "Sold all minerals for $" + totalValue;
SFXsale.start(0, 1);
} else {
str = "You have no minerals to sell!";
SFXerror2.start(0, 1);
}
showSellDialogue(str);
populateSellStats();
}
function showSellDialogue(s) {
sell_BTN_OKMC._visible = 1;
sell_dialogue._visible = 1;
sell_dialogue_screen._visible = 1;
shop_upgradesBTNExitMC._visible = 0;
sell_BTNsellMC._visible = 0;
sell_dialogueText.text = s;
}
function sellDone() {
sell_BTN_OKMC._visible = 0;
sell_dialogue._visible = 0;
sell_dialogue_screen._visible = 0;
shop_upgradesBTNExitMC._visible = 1;
sell_BTNsellMC._visible = 1;
sell_dialogueText.text = "";
}
preventCheating();
_quality = "BEST";
gameMode = 3;
stopIdle();
changeBGM("shop", 30);
fuelTankMC.gotoAndStop(1);
insideTimer = 0;
sell_BTN_OKMC._visible = 0;
sell_dialogue._visible = 0;
sell_dialogue_screen._visible = 0;
sell_dialogueText.text = "";
populateSellStats();
Frame 10
function updateFuelGauge() {
currentFuelMC.gotoAndStop(int(101 - ((atv.fuel / atv.fuelTankCapacity[atv.fuelTank]) * 100)));
currentFuelText.text = ((int(atv.fuel + 0.4) + "/") + int(atv.fuelTankCapacity[atv.fuelTank])) + " L";
}
function buyFuel(c) {
if (c == -1) {
dif = atv.fuelTankCapacity[atv.fuelTank] - atv.fuel;
if ((int(dif) == 0) && (dif > 0)) {
dif = 1;
}
dif = int(dif);
if (p1.cash >= dif) {
p1.addToCash(-dif);
atv.fuel = atv.fuelTankCapacity[atv.fuelTank];
if (dif == 0) {
s = "\rTank is Full!";
SFXerror2.start(0, 1);
} else {
s = ((("$" + dif) + " of fuel purchased.") + "\r") + "(Tank Full)";
SFXpurchase.start(0, 1);
}
showFuelDialogue(s);
} else {
SFXerror2.start(0, 1);
showFuelDialogue("Not enough cash!");
}
} else if (p1.cash >= c) {
d = atv.fuelTankCapacity[atv.fuelTank] - atv.fuel;
if (d < c) {
c = d;
}
if ((int(c) == 0) && (c > 0)) {
c = 1;
}
p1.addToCash(-int(c));
atv.fuel = Math.min(atv.fuel + c, atv.fuelTankCapacity[atv.fuelTank]);
if (int(c) == 0) {
s = "\rTank is Full!";
SFXerror2.start(0, 1);
} else {
s = ("$" + int(c)) + " of fuel purchased.";
if (atv.fuel == atv.fuelTankCapacity[atv.fuelTank]) {
s = s + "\r(Tank Full)";
}
SFXpurchase.start(0, 1);
}
showFuelDialogue(s);
} else {
SFXerror2.start(0, 1);
showFuelDialogue("Not enough cash!");
}
updateFuelGauge();
}
function showFuelDialogue(s) {
fuel_dialogueText.text = s;
fuel_BTN_OKMC._visible = 1;
fuel_dialogue._visible = 1;
fuel_dialogue_screen._visible = 1;
fuel_BTN_5MC._visible = 0;
fuel_BTN_10MC._visible = 0;
fuel_BTN_25MC._visible = 0;
fuel_BTN_50MC._visible = 0;
fuel_BTN_fillMC._visible = 0;
fuel_BTNExitMC._visible = 0;
}
function buyFuelDone() {
fuel_dialogueText.text = "";
fuel_BTN_OKMC._visible = 0;
fuel_dialogue._visible = 0;
fuel_dialogue_screen._visible = 0;
fuel_BTN_5MC._visible = 1;
fuel_BTN_10MC._visible = 1;
fuel_BTN_25MC._visible = 1;
fuel_BTN_50MC._visible = 1;
fuel_BTN_fillMC._visible = 1;
fuel_BTNExitMC._visible = 1;
}
preventCheating();
_quality = "BEST";
gameMode = 4;
stopIdle();
changeBGM("shop", 30);
fuelTankMC.gotoAndStop(1);
insideTimer = 0;
updateFuelGauge();
fuel_BTN_OKMC._visible = 0;
fuel_dialogue._visible = 0;
fuel_dialogue_screen._visible = 0;
p1.addToCash(0);
Instance of Symbol 159 MovieClip [emptyMC] in Frame 10
onClipEvent (enterFrame) {
_parent.mainCount++;
if (_parent.mainCount >= 4) {
_parent.updateBg();
_parent.mainCount = 0;
}
_parent.updateTime();
_parent.updateCosmos();
_parent.p1.rackUpCash();
_parent.inside();
}
Frame 11
function updateItemCounts() {
var i = 0;
while (i < 6) {
with (eval ("itemCount" + i)) {
if (atv.usableItem[i] > 0) {
text = "x" + atv.usableItem[i];
} else {
text = "";
}
}
with (eval (("itemCount" + i) + "b")) {
if (atv.usableItem[i] > 0) {
text = "x" + atv.usableItem[i];
} else {
text = "";
}
}
i++;
}
}
function selectItem(u) {
if (repair_dialogue._visible == 0) {
if (u != -1) {
currentSelection = u;
selectMC._visible = 1;
selectMCDestX = eval ("itemIcon" + u)._x;
selectMCDestY = eval ("itemIcon" + u)._y;
repair_BTN_buyMC._visible = 1;
SFXclick.start(0, 1);
printText(item[u].name, itemNameText, 1, 0);
printText(item[u].desc, itemDescText, 2, 1);
printText(((formatPrice(item[u].price) + " ('") + item[u].hotKey) + "' to use)", itemPriceText, 4, 2);
} else {
repair_BTN_buyMC._visible = 0;
selectMC._visible = 0;
stopPrintedText();
itemNameText.text = "";
itemDescText.text = "";
itemPriceText.text = "";
}
}
}
function purchaseItem() {
itemPrice = item[currentSelection].price;
if (p1.cash >= itemPrice) {
atv.usableItem[currentSelection]++;
} else {
purchaseItemFail();
return(0);
}
SFXpurchase.start(0, 1);
p1.addToCash(-itemPrice);
updateItemCounts();
}
function purchaseItemFail() {
showRepairDialogue("Not enough cash!");
SFXerror2.start(0, 1);
}
function repair(c) {
repairCost = 15;
selectItem(-1);
if (c == -1) {
dif = atv.hullHp[atv.hull] - atv.hp;
if ((int(dif) == 0) && (dif > 0)) {
dif = 1;
}
dif = int(dif);
if (p1.cash >= (dif * repairCost)) {
p1.addToCash((-dif) * repairCost);
atv.hp = atv.hullHp[atv.hull];
if (dif == 0) {
s = "No damage to repair!";
SFXerror2.start(0, 1);
} else {
s = ((("$" + (dif * repairCost)) + " of repairs performed.") + "\r") + "(Hull 100%)";
SFXpurchase.start(0, 1);
}
showRepairDialogue(s);
} else {
SFXerror2.start(0, 1);
showRepairDialogue("Not enough cash!");
}
} else {
dif = atv.hullHp[atv.hull] - atv.hp;
if ((dif * repairCost) < c) {
c = dif * repairCost;
}
if ((int(c) == 0) && (c > 0)) {
c = 1;
}
if (p1.cash >= c) {
p1.addToCash(-int(c));
atv.hp = Math.min(atv.hp + (c / repairCost), atv.hullHp[atv.hull]);
if (int(c) == 0) {
s = "No damage to repair!";
SFXerror2.start(0, 1);
} else {
s = ("$" + int(c)) + " of repairs performed.";
if (atv.hp == atv.hullHp[atv.hull]) {
s = s + "\r(Hull 100%)";
}
SFXpurchase.start(0, 1);
}
showRepairDialogue(s);
} else {
SFXerror2.start(0, 1);
showRepairDialogue("Not enough cash!");
}
}
updateHullGauge();
}
function updateHullGauge() {
currentHullMC.gotoAndStop(int(101 - ((atv.hp / atv.hullHp[atv.hull]) * 100)));
currentHullText.text = ((int(atv.hp) + "/") + int(atv.hullHp[atv.hull])) + " HP";
}
function showRepairDialogue(s) {
repair_dialogueText.text = s;
repair_BTN_OKMC._visible = 1;
repair_dialogue._visible = 1;
repair_dialogue_screen._visible = 1;
repair_BTN_buyMC._visible = 0;
repair_BTN_50MC._visible = 0;
repair_BTN_100MC._visible = 0;
repair_BTN_200MC._visible = 0;
repair_BTN_500MC._visible = 0;
repair_BTN_totalMC._visible = 0;
repair_BTNExitMC._visible = 0;
}
function hideRepairDialogue() {
repair_dialogueText.text = "";
repair_BTN_OKMC._visible = 0;
repair_dialogue._visible = 0;
repair_dialogue_screen._visible = 0;
repair_BTN_50MC._visible = 1;
repair_BTN_100MC._visible = 1;
repair_BTN_200MC._visible = 1;
repair_BTN_500MC._visible = 1;
repair_BTN_totalMC._visible = 1;
repair_BTNExitMC._visible = 1;
}
preventCheating();
_quality = "BEST";
gameMode = 8;
stopIdle();
changeBGM("shop", 30);
fuelTankMC.gotoAndStop(1);
insideTimer = 0;
var currentSelection = -1;
updateHullGauge();
hideRepairDialogue();
selectItem(-1);
p1.addToCash(0);
updateItemCounts();
var i = 0;
while (i < 6) {
with (eval ("itemIcon" + i)) {
image.attachMovie("item_" + i, "image", 100);
}
i++;
}
selectItem(-1);
Instance of Symbol 805 MovieClip "itemIcon0" in Frame 11
on (press) {
_parent.selectItem(0);
}
Instance of Symbol 805 MovieClip "itemIcon1" in Frame 11
on (press) {
_parent.selectItem(1);
}
Instance of Symbol 805 MovieClip "itemIcon2" in Frame 11
on (press) {
_parent.selectItem(2);
}
Instance of Symbol 805 MovieClip "itemIcon3" in Frame 11
on (press) {
_parent.selectItem(3);
}
Instance of Symbol 805 MovieClip "itemIcon4" in Frame 11
on (press) {
_parent.selectItem(4);
}
Instance of Symbol 805 MovieClip "itemIcon5" in Frame 11
on (press) {
_parent.selectItem(5);
}
Frame 12
gameMode = 5;
stopIdle();
changeBGM();
if (battleMode) {
satanHPBar.unloadMovie();
}
Instance of Symbol 159 MovieClip [emptyMC] in Frame 12
onClipEvent (enterFrame) {
}
Frame 13
if (gameMode == 5) {
gotoAndStop (12);
}
gameMode = 10;
loadingMC._visible = 0;
if (wipe == false) {
wipeCloseMC.stop();
}
Frame 14
_root.attachMovie("mothershipMC", "mothershipMC", 987654320);
mothershipMC._x = -169.5;
mothershipMC._y = -100;
fuelTankMC._visible = 0;
hpMC._visible = 0;
scoreMC._visible = 0;
Frame 15
_quality = "BEST";
gameMode = 11;
wipe = false;
stopIdle();
BGMmain.setVolume((0.0035 * BGMvolume) * globalVolume);
insideTimer = 0;
SFXtransmission.start(0, 1);
lastTransmission++;
transMsgText.text = ((((((("** Transmission Received **\r'" + transmissions[lastTransmission].sender) + "'") + "\r") + "\r") + transmissions[lastTransmission].msg) + "\r") + "\r") + "*** Transmission Terminated ***";
transAvatarMC.attachMovie(("trans_" + transmissions[lastTransmission].image) + "MC", "imageMC", 100);
transAvatarMC.attachMovie("trans_overlayMC", "overlayMC", 101);
Instance of Symbol 158 MovieClip [FScrollBarSymbol] in Frame 15
/* no clip actions */
Instance of Symbol 159 MovieClip [emptyMC] in Frame 15
onClipEvent (enterFrame) {
_parent.inside();
}
Frame 16
gameMode = 9;
Instance of Symbol 159 MovieClip [emptyMC] in Frame 16
onClipEvent (enterFrame) {
}
Frame 17
_quality = "BEST";
gameMode = 6;
stopIdle();
BGMmain.setVolume((0.0035 * BGMvolume) * globalVolume);
fuelTankMC.gotoAndStop(1);
mothershipMC._visible = 0;
podUsageText.text = instructions;
Instance of Symbol 158 MovieClip [FScrollBarSymbol] in Frame 17
/* no clip actions */
Frame 18
function initializeOptions() {
optionsExhaustMC.cb.selected = optExhaust;
optionsDirtChunksMC.cb.selected = optChunks;
optionsCosmosMC.cb.selected = optCosmos;
optionsMouseControlMC.cb.selected = optMouseControl;
musicSlider.dragger._x = BGMvolume;
musicSlider.ratioTextMC.ratioText.text = BGMvolume + "%";
soundSlider.dragger._x = SFXvolume;
soundSlider.ratioTextMC.ratioText.text = SFXvolume + "%";
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColorTransform.rb = 230 - ((musicSlider.dragger._x / musicSlider.line._width) * 255);
myColorTransform.gb = (musicSlider.dragger._x / musicSlider.line._width) * 180;
myColor = new Color(musicSlider.dragger);
myColor.setTransform(myColorTransform);
myColor = new Color(musicSlider.line);
myColor.setTransform(myColorTransform);
myColor = new Color(musicSlider.ratioTextMC);
myColor.setTransform(myColorTransform);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColorTransform.rb = 230 - ((soundSlider.dragger._x / soundSlider.line._width) * 255);
myColorTransform.gb = (soundSlider.dragger._x / soundSlider.line._width) * 180;
myColor = new Color(soundSlider.dragger);
myColor.setTransform(myColorTransform);
myColor = new Color(soundSlider.line);
myColor.setTransform(myColorTransform);
myColor = new Color(soundSlider.ratioTextMC);
myColor.setTransform(myColorTransform);
}
function savePreferences() {
myLSO = SharedObject.getLocal("mtvxgenmlopt", "/");
myObj = {};
myObj.objArray = new Array(6);
myObj.objArray[0] = optExhaust;
myObj.objArray[1] = optChunks;
myObj.objArray[2] = optCosmos;
myObj.objArray[3] = optMouseControl;
myObj.objArray[4] = BGMvolume;
myObj.objArray[5] = SFXvolume;
myLSO.data.myObj = myObj;
}
function optionsHitX() {
if (quitConfirmationMC._visible == 0) {
savePreferences();
idle(100);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
Key.removeListener(cheatCodeListener);
updateHUD();
wipe = false;
mothershipMC._visible = 1;
gotoAndStop (6);
}
}
function saveAndQuit() {
savePreferences();
saveGameOffline();
gotoAndStop (2);
}
function optionsQuitGame() {
savePreferences();
gotoAndStop (2);
}
_quality = "BEST";
gameMode = 7;
stopIdle();
BGMmain.setVolume((0.0035 * BGMvolume) * globalVolume);
fuelTankMC.gotoAndStop(1);
mothershipMC._visible = 0;
quitConfirmationMC._visible = 0;
initializeOptions();
Key.addListener(cheatCodeListener);
Frame 19
_quality = "BEST";
if (!satanDead) {
gotoAndStop (12);
}
gameMode = 88;
stopIdle();
p1.addToCash(0);
count = 0;
mineralCollectCount = 13;
satanHPBar.unloadMovie();
lvl++;
atv.hull = 0;
atv.drill = 0;
atv.engine = 0;
atv.fuelTank = 0;
atv.radiator = 0;
atv.bay = 0;
atv.hp = atv.hullHp[atv.hull];
atv.fuel = atv.fuelTankCapacity[atv.fuelTank];
var i = 0;
while (i < 10) {
atv.bayContents[i] = 0;
i++;
}
var i = 0;
while (i < 7) {
atv.usableItem[i] = 0;
i++;
}
Instance of Symbol 159 MovieClip [emptyMC] in Frame 19
onClipEvent (enterFrame) {
_parent.p1.rackUpCash();
_parent.count++;
if (_parent.mineralCollectCount < 23) {
if (_parent.count > 60) {
_parent.count = 0;
_parent.mineralCollectCount++;
_parent.atv.addToBay(_parent.mineralCollectCount);
_parent.SFXcollect.start(0, 1);
_parent.SFXpurchase.start(0, 1);
_parent.displayMineral(_parent.minerals[_parent.mineralCollectCount].name);
}
} else {
if (_parent.count == 25) {
_parent.winGameMC.gotoAndPlay(2);
_parent.SFXpurchase.setVolume(0.9 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 40) {
_parent.SFXpurchase.setVolume(0.8 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 55) {
_parent.SFXpurchase.setVolume(0.7 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 70) {
_parent.SFXpurchase.setVolume(0.6 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 85) {
_parent.SFXpurchase.setVolume(0.5 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 100) {
_parent.SFXpurchase.setVolume(0.4 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 115) {
_parent.SFXpurchase.setVolume(0.3 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 130) {
_parent.SFXpurchase.setVolume(0.2 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 145) {
_parent.SFXpurchase.setVolume(0.1 * _parent.globalVolume);
_parent.SFXpurchase.start(0.4, 1);
}
if (_parent.count == 160) {
_parent.SFXpurchase.setVolume(1 * _parent.globalVolume);
}
}
}
Frame 20
function saveTimeOut() {
connecting = false;
statusText.text = "A response was not recieved from the server. Please verify that you are connected to the internet and try again.";
save_BTNok2MC._visible = 1;
}
function beginSave() {
if (loadedGame) {
save_BTNyesMC._visible = 0;
save_BTNnoMC._visible = 0;
saveMode = 1;
saveGame(uName, uPass, "", "");
} else {
save_BTNyesMC._visible = 0;
save_BTNnoMC._visible = 0;
save_BTNokMC._visible = 1;
save_BTNcancelMC._visible = 1;
save_BTNcreateMC._visible = 1;
nameInput._visible = 1;
passInput._visible = 1;
save_userpassMC._visible = 1;
saveText.text = "If you do not have a Motherload account, you will need to create one to save. ";
}
}
function retrySave() {
save_BTNretryMC._visible = 0;
save_BTNcancelMC._visible = 0;
beginSave();
}
function exitSave() {
if (!satanDead) {
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
idle(100);
updateHUD();
gotoAndStop (6);
} else {
gotoAndStop (2);
}
}
function createAccount() {
if (save_BTNokMC._visible == 1) {
save_BTNcancelMC._visible = 0;
save_BTNyesMC._visible = 0;
save_BTNnoMC._visible = 0;
save_BTNokMC._visible = 0;
pass2Input._visible = 1;
emailInput._visible = 1;
save_passemailMC._visible = 1;
saveText.text = "Please enter a username and password to create a new account.";
} else if (passInput.text == pass2Input.text) {
if (passInput.text != "") {
if (isExtendedAlphaNumeric(nameInput.text) && (isExtendedAlphaNumeric(passInput.text))) {
if ((emailInput.text == "") || (emailInput.text.length > 5)) {
uName = nameInput.text;
uPass = passInput.text;
save_BTNcreateMC._visible = 0;
nameInput._visible = 0;
passInput._visible = 0;
pass2Input._visible = 0;
emailInput._visible = 0;
save_userpassMC._visible = 0;
save_passemailMC._visible = 0;
saveMode = 2;
saveGame(nameInput.text, passInput.text, emailInput.text, "true");
} else {
saveText.text = "E-mail address invalid. (Leave E-Mail field blank to skip)";
}
} else {
saveText.text = "Please do not use <, >, or & in your username or password.";
}
} else {
saveText.text = "Please enter a password.";
}
} else {
saveText.text = "Passwords do not match.";
}
}
function preSaveGame() {
if (isExtendedAlphaNumeric(nameInput.text) && (isExtendedAlphaNumeric(passInput.text))) {
if ((nameInput.text != "") && (passInput.text != "")) {
save_BTNcancelMC._visible = 0;
save_BTNokMC._visible = 0;
save_BTNcreateMC._visible = 0;
save_userpassMC._visible = 0;
nameInput._visible = 0;
passInput._visible = 0;
uName = nameInput.text;
uPass = passInput.text;
saveMode = 1;
saveGame(nameInput.text, passInput.text, "", "");
} else {
saveText.text = "\rPlease enter your username and password or create a new account.";
}
} else {
saveText.text = "\rPlease do not use <, >, or & in your username or password.";
}
}
function saveGame(u, p, e, n) {
saveText.text = "\r\rGathering Data...";
saveGameArray = new Array();
saveGameArray[0] = p1.score;
saveGameArray[1] = p1.cash;
saveGameArray[2] = p1.scoreBillion;
saveGameArray[3] = lvl;
saveGameArray[4] = atv.hp;
saveGameArray[5] = Math.max(int(atv.fuel), 1);
saveGameArray[6] = atv.hull;
saveGameArray[7] = atv.drill;
saveGameArray[8] = atv.engine;
saveGameArray[9] = atv.fuelTank;
saveGameArray[10] = atv.radiator;
saveGameArray[11] = atv.bay;
var _loc1 = 0;
while (_loc1 < 10) {
saveGameArray[_loc1 + 12] = atv.bayContents[_loc1];
_loc1++;
}
var _loc1 = 0;
while (_loc1 < 7) {
saveGameArray[_loc1 + 22] = atv.usableItem[_loc1];
_loc1++;
}
saveGameArray[29] = lastTransmission;
saveGameArray[30] = playTime;
saveGameArray[31] = totalPlayTime;
playerDataString = "";
var _loc1 = 0;
while (_loc1 < 32) {
playerDataString = playerDataString + (saveGameArray[_loc1] + ",");
_loc1++;
}
playerDataString = playerDataString.substr(0, playerDataString.length - 1);
playerDataString = ooo(playerDataString, "n");
playerDataString = convertToASCII(playerDataString);
replyData = new LoadVars();
sendData = new LoadVars();
sendData.username = u;
sendData.userpass = p;
sendData.email = e;
sendData.newaccount = n;
sendData.playerdata = playerDataString;
sendData.ver = gameVersion;
saveText.text = "\r\rSending Data...";
sendData.sendAndLoad(filePath + "/motherload/save.php", replyData, "POST");
connectionCounter = 0;
connecting = true;
replyData.onLoad = function (success) {
connecting = false;
if (replyData.result == "success") {
loadedGame = true;
saveText.text = "\r\rGame Saved Successfully!";
save_BTNok2MC._visible = 1;
} else if (replyData.result == "Username taken") {
statusText.text = "\r\rUsername taken. \r(Please choose a different username)";
save_BTNretryMC._visible = 1;
save_BTNcancelMC._visible = 1;
} else if (replyData.result == "Old version") {
statusText.text = "A bug has been found and used to exploit Motherload. You will need to close your browser, empty your cache, and reload this page in order to save. You will lose all data since your last save.";
save_BTNok2MC._visible = 1;
} else {
saveText.text = "\r" + replyData.result;
save_BTNretryMC._visible = 1;
save_BTNcancelMC._visible = 1;
}
};
}
_quality = "BEST";
gameMode = 77;
stopIdle();
BGMmain.setVolume((0.0035 * BGMvolume) * globalVolume);
SFXtransmission.start(0.2, 1);
wipe = false;
var connectionCounter = 0;
var connecting = false;
nameInput._visible = 0;
passInput._visible = 0;
pass2Input._visible = 0;
emailInput._visible = 0;
save_BTNokMC._visible = 0;
save_BTNok2MC._visible = 0;
save_BTNsubmitScoreMC._visible = 0;
save_BTNviewScoresMC._visible = 0;
save_BTNcreateMC._visible = 0;
save_BTNretryMC._visible = 0;
save_BTNcancelMC._visible = 0;
save_userpassMC._visible = 0;
save_passemailMC._visible = 0;
if (loadedGame) {
saveText.text = ("\rWould you like to\rSave your game and\rsubmit your High Score, " + uName) + "?";
}
if (cheating) {
save_BTNyesMC._visible = 0;
save_BTNnoMC._visible = 0;
saveText.text = "\r\rSorry, cheaters can't save.";
save_BTNok2MC._visible = 1;
}
Instance of Symbol 159 MovieClip [emptyMC] in Frame 20
onClipEvent (enterFrame) {
if (_parent.connecting) {
_parent.connectionCounter++;
if (_parent.connectionCounter == 1800) {
_parent.saveTimeOut();
}
}
}
Frame 21
gotoAndStop (22);
Frame 22
gotoAndStop (22);
Frame 23
gotoAndStop (22);
Frame 25
gotoAndStop (2);
Symbol 38 MovieClip [satanP1_walk] Frame 1
_parent.shakeGround(4);
Symbol 38 MovieClip [satanP1_walk] Frame 21
_parent.shakeGround(4);
Symbol 42 MovieClip [pointsMC] Frame 55
stop();
unloadMovie (this);
Symbol 43 MovieClip [mineralMC] Frame 65
stop();
unloadMovie (this);
Symbol 44 MovieClip [fadeInFX] Frame 1
myColor = new Color(_parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"-255", ga:"100", gb:"-255", ba:"100", bb:"-255", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
rgb = -255;
Symbol 44 MovieClip [fadeInFX] Frame 2
rgb = rgb + 10;
myColorTransform.rb = rgb;
myColorTransform.gb = rgb;
myColorTransform.bb = rgb;
myColor.setTransform(myColorTransform);
if (rgb >= 0) {
myColorTransform.rb = 0;
myColorTransform.gb = 0;
myColorTransform.bb = 0;
myColor.setTransform(myColorTransform);
_parent.menuActive = true;
this.unloadMovie();
}
Symbol 44 MovieClip [fadeInFX] Frame 3
gotoAndPlay (2);
Symbol 48 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 51 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 54 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 55 MovieClip [DownArrow] Frame 1
stop();
Symbol 55 MovieClip [DownArrow] Frame 2
stop();
Symbol 55 MovieClip [DownArrow] Frame 3
stop();
Symbol 63 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
Symbol 71 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
component.registerSkinElement(highlight3D_mc, "highlight3D");
Symbol 77 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(highlight3D_mc, "highlight3D");
component.registerSkinElement(shadow_mc, "shadow");
component.registerSkinElement(darkshadow_mc, "darkshadow");
component.registerSkinElement(highlight_mc, "highlight");
Symbol 78 MovieClip [ScrollThumb] Frame 1
stop();
Symbol 81 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 84 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 87 MovieClip Frame 1
var component = _parent._parent;
component.registerSkinElement(face_mc, "face");
Symbol 88 MovieClip [UpArrow] Frame 1
stop();
Symbol 88 MovieClip [UpArrow] Frame 2
stop();
Symbol 88 MovieClip [UpArrow] Frame 3
stop();
Symbol 89 MovieClip [FUIComponentSymbol] Frame 1
#initclip 3
function FUIComponentClass() {
this.init();
}
FUIComponentClass.prototype = new MovieClip();
FUIComponentClass.prototype.init = function () {
this.enable = true;
this.focused = false;
this.useHandCursor = false;
this._accImpl = new Object();
this._accImpl.stub = true;
this.styleTable = new Array();
if (_global.globalStyleFormat == undefined) {
_global.globalStyleFormat = new FStyleFormat();
globalStyleFormat.isGlobal = true;
_global._focusControl = new Object();
_global._focusControl.onSetFocus = function (oldFocus, newFocus) {
oldFocus.myOnKillFocus();
newFocus.myOnSetFocus();
};
Selection.addListener(_global._focusControl);
}
if (this._name != undefined) {
this._focusrect = false;
this.tabEnabled = true;
this.focusEnabled = true;
this.tabChildren = false;
this.tabFocused = true;
if (this.hostStyle == undefined) {
globalStyleFormat.addListener(this);
} else {
this.styleTable = this.hostStyle;
}
this.deadPreview._visible = false;
this.deadPreview._width = (this.deadPreview._height = 1);
this.methodTable = new Object();
this.keyListener = new Object();
this.keyListener.controller = this;
this.keyListener.onKeyDown = function () {
this.controller.myOnKeyDown();
};
this.keyListener.onKeyUp = function () {
this.controller.myOnKeyUp();
};
for (var _loc3 in this.styleFormat_prm) {
this.setStyleProperty(_loc3, this.styleFormat_prm[_loc3]);
}
}
};
FUIComponentClass.prototype.setEnabled = function (enabledFlag) {
this.enable = ((arguments.length > 0) ? (enabledFlag) : true);
this.tabEnabled = (this.focusEnabled = enabledFlag);
if ((!this.enable) && (this.focused)) {
Selection.setFocus(undefined);
}
};
FUIComponentClass.prototype.getEnabled = function () {
return(this.enable);
};
FUIComponentClass.prototype.setSize = function (w, h) {
this.width = w;
this.height = h;
this.focusRect.removeMovieClip();
};
FUIComponentClass.prototype.setChangeHandler = function (chng, obj) {
this.handlerObj = ((obj == undefined) ? (this._parent) : (obj));
this.changeHandler = chng;
};
FUIComponentClass.prototype.invalidate = function (methodName) {
this.methodTable[methodName] = true;
this.onEnterFrame = this.cleanUI;
};
FUIComponentClass.prototype.cleanUI = function () {
if (this.methodTable.setSize) {
this.setSize(this.width, this.height);
} else {
this.cleanUINotSize();
}
this.methodTable = new Object();
delete this.onEnterFrame;
};
FUIComponentClass.prototype.cleanUINotSize = function () {
for (var _loc2 in this.methodTable) {
this[_loc2]();
}
};
FUIComponentClass.prototype.drawRect = function (x, y, w, h) {
var _loc4 = this.styleTable.focusRectInner.value;
var _loc5 = this.styleTable.focusRectOuter.value;
if (_loc4 == undefined) {
_loc4 = 16777215 /* 0xFFFFFF */;
}
if (_loc5 == undefined) {
_loc5 = 0;
}
this.createEmptyMovieClip("focusRect", 1000);
this.focusRect.controller = this;
this.focusRect.lineStyle(1, _loc5);
this.focusRect.moveTo(x, y);
this.focusRect.lineTo(x + w, y);
this.focusRect.lineTo(x + w, y + h);
this.focusRect.lineTo(x, y + h);
this.focusRect.lineTo(x, y);
this.focusRect.lineStyle(1, _loc4);
this.focusRect.moveTo(x + 1, y + 1);
this.focusRect.lineTo((x + w) - 1, y + 1);
this.focusRect.lineTo((x + w) - 1, (y + h) - 1);
this.focusRect.lineTo(x + 1, (y + h) - 1);
this.focusRect.lineTo(x + 1, y + 1);
};
FUIComponentClass.prototype.pressFocus = function () {
this.tabFocused = false;
this.focusRect.removeMovieClip();
Selection.setFocus(this);
};
FUIComponentClass.prototype.drawFocusRect = function () {
this.drawRect(-2, -2, this.width + 4, this.height + 4);
};
FUIComponentClass.prototype.myOnSetFocus = function () {
this.focused = true;
Key.addListener(this.keyListener);
if (this.tabFocused) {
this.drawFocusRect();
}
};
FUIComponentClass.prototype.myOnKillFocus = function () {
this.tabFocused = true;
this.focused = false;
this.focusRect.removeMovieClip();
Key.removeListener(this.keyListener);
};
FUIComponentClass.prototype.executeCallBack = function () {
this.handlerObj[this.changeHandler](this);
};
FUIComponentClass.prototype.updateStyleProperty = function (styleFormat, propName) {
this.setStyleProperty(propName, styleFormat[propName], styleFormat.isGlobal);
};
FUIComponentClass.prototype.setStyleProperty = function (propName, value, isGlobal) {
if (value == "") {
return(undefined);
}
var _loc17 = parseInt(value);
if (!isNaN(_loc17)) {
value = _loc17;
}
var _loc16 = ((arguments.length > 2) ? (isGlobal) : false);
if (this.styleTable[propName] == undefined) {
this.styleTable[propName] = new Object();
this.styleTable[propName].useGlobal = true;
}
if (this.styleTable[propName].useGlobal || (!_loc16)) {
this.styleTable[propName].value = value;
if (this.setCustomStyleProperty(propName, value)) {
} else if (propName == "embedFonts") {
this.invalidate("setSize");
} else if (propName.subString(0, 4) == "text") {
if (this.textStyle == undefined) {
this.textStyle = new TextFormat();
}
var _loc18 = propName.subString(4, propName.length);
this.textStyle[_loc18] = value;
this.invalidate("setSize");
} else {
for (var _loc15 in this.styleTable[propName].coloredMCs) {
var _loc4 = new Color(this.styleTable[propName].coloredMCs[_loc15]);
if (this.styleTable[propName].value == undefined) {
var _loc5 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
_loc4.setTransform(_loc5);
continue;
}
_loc4.setRGB(value);
}
}
this.styleTable[propName].useGlobal = _loc16;
}
};
FUIComponentClass.prototype.registerSkinElement = function (skinMCRef, propName) {
if (this.styleTable[propName] == undefined) {
this.styleTable[propName] = new Object();
this.styleTable[propName].useGlobal = true;
}
if (this.styleTable[propName].coloredMCs == undefined) {
this.styleTable[propName].coloredMCs = new Object();
}
this.styleTable[propName].coloredMCs[skinMCRef] = skinMCRef;
if (this.styleTable[propName].value != undefined) {
var _loc4 = new Color(skinMCRef);
_loc4.setRGB(this.styleTable[propName].value);
}
};
_global.FStyleFormat = function () {
this.nonStyles = {listeners:true, isGlobal:true, isAStyle:true, addListener:true, removeListener:true, nonStyles:true, applyChanges:true};
this.listeners = new Object();
this.isGlobal = false;
if (arguments.length > 0) {
for (var _loc3 in arguments[0]) {
this[_loc3] = arguments[0][_loc3];
}
}
};
_global.FStyleFormat.prototype = new Object();
FStyleFormat.prototype.addListener = function () {
var _loc3 = 0;
while (_loc3 < arguments.length) {
var _loc4 = arguments[_loc3];
this.listeners[arguments[_loc3]] = _loc4;
for (var _loc5 in this) {
if (this.isAStyle(_loc5)) {
_loc4.updateStyleProperty(this, _loc5.toString());
}
}
_loc3++;
}
};
FStyleFormat.prototype.removeListener = function (component) {
this.listeners[component] = undefined;
for (var _loc4 in this) {
if (this.isAStyle(_loc4)) {
if (component.styleTable[_loc4].useGlobal == this.isGlobal) {
component.styleTable[_loc4].useGlobal = true;
var _loc3 = (this.isGlobal ? undefined : (globalStyleFormat[_loc4]));
component.setStyleProperty(_loc4, _loc3, true);
}
}
}
};
FStyleFormat.prototype.applyChanges = function () {
var _loc6 = 0;
for (var _loc5 in this.listeners) {
var _loc3 = this.listeners[_loc5];
if (arguments.length > 0) {
var _loc4 = 0;
while (_loc4 < arguments.length) {
if (this.isAStyle(arguments[_loc4])) {
_loc3.updateStyleProperty(this, arguments[_loc4]);
}
_loc4++;
}
continue;
}
for (var _loc4 in this) {
if (this.isAStyle(_loc4)) {
_loc3.updateStyleProperty(this, _loc4.toString());
}
}
}
};
FStyleFormat.prototype.isAStyle = function (name) {
return((this.nonStyles[name] ? false : true));
};
#endinitclip
Symbol 93 MovieClip [UIObject] Frame 1
stop();
Symbol 94 MovieClip [Border] Frame 1
stop();
Symbol 95 MovieClip [RectBorder] Frame 1
#initclip 2
mx.skins.SkinElement.registerElement(mx.skins.RectBorder.symbolName, Object(mx.skins.RectBorder));
Object.registerClass("RectBorder", mx.skins.halo.RectBorder);
#endinitclip
stop();
Symbol 102 Button
on (keyPress "<Tab>") {
this.tabHandler();
}
Symbol 103 MovieClip [FocusManager] Frame 1
stop();
Symbol 104 MovieClip [UIComponent] Frame 1
stop();
Symbol 106 MovieClip [BrdrBlk] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "borderColor");
Symbol 108 MovieClip [BrdrFace] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "buttonColor");
Symbol 110 MovieClip [BrdrShdw] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "shadowColor");
Symbol 111 MovieClip [BrdrHilght] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "highlightColor");
Symbol 115 MovieClip [SimpleButton] Frame 1
stop();
Symbol 116 MovieClip [Button] Frame 1
stop();
Instance of Symbol 115 MovieClip [SimpleButton] in Symbol 116 MovieClip [Button] Frame 2
//component parameters
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
//component parameters
onClipEvent (initialize) {
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
Symbol 119 MovieClip [CheckThemeColor1] Frame 1
mx.skins.ColoredSkinElement.setColorStyle(this, "themeColor");
Symbol 131 MovieClip [CheckBoxAssets] Frame 1
#initclip 1
mx.controls.CheckBox.prototype.adjustFocusRect = function () {
var _loc4 = this._parent.focus_mc;
var _loc2 = this.iconName;
var _loc3 = this.getStyle("themeColor");
if (_loc3 == undefined) {
_loc3 = 8453965 /* 0x80FF4D */;
}
var _loc8 = (_loc2._width + 4);
var _loc5 = (_loc2._height + 4);
_loc4.setSize(_loc8, _loc5, 0, 100, _loc3);
var _loc7 = _loc2._x;
var _loc6 = _loc2._y;
_loc4.move((this.x - 2) + _loc7, (this.y + _loc6) - 2);
};
#endinitclip
Symbol 132 MovieClip [CheckBox] Frame 1
stop();
Instance of Symbol 116 MovieClip [Button] in Symbol 132 MovieClip [CheckBox] Frame 2
//component parameters
onClipEvent (initialize) {
icon = "\"\"";
label = "Button";
labelPlacement = "right";
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
//component parameters
onClipEvent (initialize) {
icon = "";
label = "Button";
labelPlacement = "right";
selected = false;
toggle = false;
enabled = true;
visible = true;
minHeight = 0;
minWidth = 0;
}
Symbol 157 MovieClip Frame 1
var component = _parent;
component.registerSkinElement(track_mc, "scrollTrack");
Symbol 158 MovieClip [FScrollBarSymbol] Frame 1
#initclip 4
FScrollBarClass = function () {
if (this._height == 4) {
return(undefined);
}
this.init();
this.minPos = (this.maxPos = (this.pageSize = (this.largeScroll = 0)));
this.smallScroll = 1;
this.width = (this.horizontal ? (this._width) : (this._height));
this._xscale = (this._yscale = 100);
this.setScrollPosition(0);
this.tabEnabled = false;
if (this._targetInstanceName.length > 0) {
this.setScrollTarget(this._parent[this._targetInstanceName]);
}
this.tabChildren = false;
this.setSize(this.width);
};
FScrollBarClass.prototype = new FUIComponentClass();
FScrollBarClass.prototype.setHorizontal = function (flag) {
if (this.horizontal && (!flag)) {
this._xscale = 100;
this._rotation = 0;
} else if (flag && (!this.horizontal)) {
this._xscale = -100;
this._rotation = -90;
}
this.horizontal = flag;
};
FScrollBarClass.prototype.setScrollProperties = function (pSize, mnPos, mxPos) {
if (!this.enable) {
return(undefined);
}
this.pageSize = pSize;
this.minPos = Math.max(mnPos, 0);
this.maxPos = Math.max(mxPos, 0);
this.scrollPosition = Math.max(this.minPos, this.scrollPosition);
this.scrollPosition = Math.min(this.maxPos, this.scrollPosition);
if ((this.maxPos - this.minPos) <= 0) {
this.scrollThumb_mc.removeMovieClip();
this.upArrow_mc.gotoAndStop(3);
this.downArrow_mc.gotoAndStop(3);
this.downArrow_mc.onPress = (this.downArrow_mc.onRelease = (this.downArrow_mc.onDragOut = null));
this.upArrow_mc.onPress = (this.upArrow_mc.onRelease = (this.upArrow_mc.onDragOut = null));
this.scrollTrack_mc.onPress = (this.scrollTrack_mc.onRelease = null);
this.scrollTrack_mc.onDragOut = (this.scrollTrack_mc.onRollOut = null);
this.scrollTrack_mc.useHandCursor = false;
} else {
var _loc2 = this.getScrollPosition();
this.upArrow_mc.gotoAndStop(1);
this.downArrow_mc.gotoAndStop(1);
this.upArrow_mc.onPress = (this.upArrow_mc.onDragOver = this.startUpScroller);
this.upArrow_mc.onRelease = (this.upArrow_mc.onDragOut = this.stopScrolling);
this.downArrow_mc.onPress = (this.downArrow_mc.onDragOver = this.startDownScroller);
this.downArrow_mc.onRelease = (this.downArrow_mc.onDragOut = this.stopScrolling);
this.scrollTrack_mc.onPress = (this.scrollTrack_mc.onDragOver = this.startTrackScroller);
this.scrollTrack_mc.onRelease = this.stopScrolling;
this.scrollTrack_mc.onDragOut = this.stopScrolling;
this.scrollTrack_mc.onRollOut = this.stopScrolling;
this.scrollTrack_mc.useHandCursor = false;
this.attachMovie("ScrollThumb", "scrollThumb_mc", 3);
this.scrollThumb_mc._x = 0;
this.scrollThumb_mc._y = this.upArrow_mc._height;
this.scrollThumb_mc.onPress = this.startDragThumb;
this.scrollThumb_mc.controller = this;
this.scrollThumb_mc.onRelease = (this.scrollThumb_mc.onReleaseOutside = this.stopDragThumb);
this.scrollThumb_mc.useHandCursor = false;
this.thumbHeight = (this.pageSize / ((this.maxPos - this.minPos) + this.pageSize)) * this.trackSize;
this.thumbMid_mc = this.scrollThumb_mc.mc_sliderMid;
this.thumbTop_mc = this.scrollThumb_mc.mc_sliderTop;
this.thumbBot_mc = this.scrollThumb_mc.mc_sliderBot;
this.thumbHeight = Math.max(this.thumbHeight, 6);
this.midHeight = (this.thumbHeight - this.thumbTop_mc._height) - this.thumbBot_mc._height;
this.thumbMid_mc._yScale = (this.midHeight * 100) / this.thumbMid_mc._height;
this.thumbMid_mc._y = this.thumbTop_mc._height;
this.thumbBot_mc._y = this.thumbTop_mc._height + this.midHeight;
this.scrollTop = this.scrollThumb_mc._y;
this.trackHeight = this.trackSize - this.thumbHeight;
this.scrollBot = this.trackHeight + this.scrollTop;
_loc2 = Math.min(_loc2, this.maxPos);
this.setScrollPosition(Math.max(_loc2, this.minPos));
}
};
FScrollBarClass.prototype.getScrollPosition = function () {
return(this.scrollPosition);
};
FScrollBarClass.prototype.setScrollPosition = function (pos) {
this.scrollPosition = pos;
if (this.scrollThumb_mc != undefined) {
pos = Math.min(pos, this.maxPos);
pos = Math.max(pos, this.minPos);
}
this.scrollThumb_mc._y = (((pos - this.minPos) * this.trackHeight) / (this.maxPos - this.minPos)) + this.scrollTop;
this.executeCallBack();
};
FScrollBarClass.prototype.setLargeScroll = function (lScroll) {
this.largeScroll = lScroll;
};
FScrollBarClass.prototype.setSmallScroll = function (sScroll) {
this.smallScroll = sScroll;
};
FScrollBarClass.prototype.setEnabled = function (enabledFlag) {
var _loc3 = this.enable;
if (enabledFlag && (!_loc3)) {
this.enable = enabledFlag;
if (this.textField != undefined) {
this.setScrollTarget(this.textField);
} else {
this.setScrollProperties(this.pageSize, this.cachedMinPos, this.cachedMaxPos);
this.setScrollPosition(this.cachedPos);
}
this.clickFilter = undefined;
} else if ((!enabledFlag) && (_loc3)) {
this.textField.removeListener(this);
this.cachedPos = this.getScrollPosition();
this.cachedMinPos = this.minPos;
this.cachedMaxPos = this.maxPos;
if (this.clickFilter == undefined) {
this.setScrollProperties(this.pageSize, 0, 0);
} else {
this.clickFilter = true;
}
this.enable = enabledFlag;
}
};
FScrollBarClass.prototype.setSize = function (hgt) {
if (this._height == 1) {
return(undefined);
}
this.width = hgt;
this.scrollTrack_mc._yscale = 100;
this.scrollTrack_mc._yscale = (100 * this.width) / this.scrollTrack_mc._height;
if (this.upArrow_mc == undefined) {
this.attachMovie("UpArrow", "upArrow_mc", 1);
this.attachMovie("DownArrow", "downArrow_mc", 2);
this.downArrow_mc.controller = (this.upArrow_mc.controller = this);
this.upArrow_mc.useHandCursor = (this.downArrow_mc.useHandCursor = false);
this.upArrow_mc._x = (this.upArrow_mc._y = 0);
this.downArrow_mc._x = 0;
}
this.scrollTrack_mc.controller = this;
this.downArrow_mc._y = this.width - this.downArrow_mc._height;
this.trackSize = this.width - (2 * this.downArrow_mc._height);
if (this.textField != undefined) {
this.onTextChanged();
} else {
this.setScrollProperties(this.pageSize, this.minPos, this.maxPos);
}
};
FScrollBarClass.prototype.scrollIt = function (inc, mode) {
var _loc3 = this.smallScroll;
if (inc != "one") {
_loc3 = ((this.largeScroll == 0) ? (this.pageSize) : (this.largeScroll));
}
var _loc2 = (this.getScrollPosition() + (mode * _loc3));
if (_loc2 > this.maxPos) {
_loc2 = this.maxPos;
} else if (_loc2 < this.minPos) {
_loc2 = this.minPos;
}
this.setScrollPosition(_loc2);
};
FScrollBarClass.prototype.startDragThumb = function () {
this.lastY = this._ymouse;
this.onMouseMove = this.controller.dragThumb;
};
FScrollBarClass.prototype.dragThumb = function () {
this.scrollMove = this._ymouse - this.lastY;
this.scrollMove = this.scrollMove + this._y;
if (this.scrollMove < this.controller.scrollTop) {
this.scrollMove = this.controller.scrollTop;
} else if (this.scrollMove > this.controller.scrollBot) {
this.scrollMove = this.controller.scrollBot;
}
this._y = this.scrollMove;
var _loc2 = this.controller;
_loc2.scrollPosition = Math.round(((_loc2.maxPos - _loc2.minPos) * (this._y - _loc2.scrollTop)) / _loc2.trackHeight) + _loc2.minPos;
this.controller.isScrolling = true;
updateAfterEvent();
this.controller.executeCallBack();
};
FScrollBarClass.prototype.stopDragThumb = function () {
this.controller.isScrolling = false;
this.onMouseMove = null;
};
FScrollBarClass.prototype.startTrackScroller = function () {
this.controller.trackScroller();
this.controller.scrolling = setInterval(this.controller, "scrollInterval", 500, "page", -1);
};
FScrollBarClass.prototype.scrollInterval = function (inc, mode) {
clearInterval(this.scrolling);
if (inc == "page") {
this.trackScroller();
} else {
this.scrollIt(inc, mode);
}
this.scrolling = setInterval(this, "scrollInterval", 35, inc, mode);
};
FScrollBarClass.prototype.trackScroller = function () {
if ((this.scrollThumb_mc._y + this.thumbHeight) < this._ymouse) {
this.scrollIt("page", 1);
} else if (this.scrollThumb_mc._y > this._ymouse) {
this.scrollIt("page", -1);
}
};
FScrollBarClass.prototype.stopScrolling = function () {
this.controller.downArrow_mc.gotoAndStop(1);
this.controller.upArrow_mc.gotoAndStop(1);
clearInterval(this.controller.scrolling);
};
FScrollBarClass.prototype.startUpScroller = function () {
this.controller.upArrow_mc.gotoAndStop(2);
this.controller.scrollIt("one", -1);
this.controller.scrolling = setInterval(this.controller, "scrollInterval", 500, "one", -1);
};
FScrollBarClass.prototype.startDownScroller = function () {
this.controller.downArrow_mc.gotoAndStop(2);
this.controller.scrollIt("one", 1);
this.controller.scrolling = setInterval(this.controller, "scrollInterval", 500, "one", 1);
};
FScrollBarClass.prototype.setScrollTarget = function (tF) {
if (tF == undefined) {
this.textField.removeListener(this);
delete this.textField[(this.horizontal ? "hScroller" : "vScroller")];
if ((this.textField.hScroller != undefined) && (this.textField.vScroller != undefined)) {
this.textField.unwatch("text");
this.textField.unwatch("htmltext");
}
}
this.textField = undefined;
if (!(tF instanceof TextField)) {
return(undefined);
}
this.textField = tF;
this.textField[(this.horizontal ? "hScroller" : "vScroller")] = this;
this.onTextChanged();
this.onChanged = function () {
this.onTextChanged();
};
this.onScroller = function () {
if (!this.isScrolling) {
if (!this.horizontal) {
this.setScrollPosition(this.textField.scroll);
} else {
this.setScrollPosition(this.textField.hscroll);
}
}
};
this.textField.addListener(this);
this.textField.watch("text", this.callback);
this.textField.watch("htmlText", this.callback);
};
FScrollBarClass.prototype.callback = function (prop, oldVal, newVal) {
clearInterval(this.hScroller.synchScroll);
clearInterval(this.vScroller.synchScroll);
this.hScroller.synchScroll = setInterval(this.hScroller, "onTextChanged", 50);
this.vScroller.synchScroll = setInterval(this.vScroller, "onTextChanged", 50);
return(newVal);
};
FScrollBarClass.prototype.onTextChanged = function () {
if ((!this.enable) || (this.textField == undefined)) {
return(undefined);
}
clearInterval(this.synchScroll);
if (this.horizontal) {
var _loc3 = this.textField.hscroll;
this.setScrollProperties(this.textField._width, 0, this.textField.maxhscroll);
this.setScrollPosition(Math.min(_loc3, this.textField.maxhscroll));
} else {
_loc3 = this.textField.scroll;
var _loc2 = (this.textField.bottomScroll - this.textField.scroll);
this.setScrollProperties(_loc2, 1, this.textField.maxscroll);
this.setScrollPosition(Math.min(_loc3, this.textField.maxscroll));
}
};
FScrollBarClass.prototype.executeCallBack = function () {
if (this.textField == undefined) {
super.executeCallBack();
} else if (this.horizontal) {
this.textField.hscroll = this.getScrollPosition();
} else {
this.textField.scroll = this.getScrollPosition();
}
};
Object.registerClass("FScrollBarSymbol", FScrollBarClass);
#endinitclip
Symbol 162 MovieClip Frame 1
stop();
Symbol 162 MovieClip Frame 2
_quality = "HIGH";
if (_parent._parent.skipIntro) {
_parent._parent.doneIntro();
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 162 MovieClip Frame 2
onClipEvent (enterFrame) {
_parent._parent._parent.preloadCharMC._alpha = (_parent._parent._parent.load1._alpha = (_parent._parent._parent.load2._alpha = (_parent._parent._parent.load3._alpha = (_parent._parent._parent.load4._alpha = (_parent._parent._parent.loadBar._alpha = (_parent._parent._parent.loadBar2._alpha = (_parent._parent._parent.loadingMC._alpha = _parent._parent._parent.loadingMC._alpha - 10)))))));
}
Symbol 162 MovieClip Frame 15
stop();
Symbol 169 MovieClip Frame 29
stop();
Symbol 184 MovieClip Frame 76
stop();
Symbol 186 MovieClip Frame 11
_parent.XGSIntroMC.onEnterFrame = _parent.frameFunction;
Symbol 186 MovieClip Frame 155
stop();
_parent._parent.doneIntro();
Symbol 187 MovieClip Frame 1
stop();
Symbol 187 MovieClip Frame 2
function frameFunction() {
blurAmount = blurAmount + blurVel;
if (blurAmount <= blurReverse) {
blurVel = blurVel2;
}
if ((blurAmount > 0) && (blurVel > 0)) {
blurVel = blurVel * 1.8;
XGSIntroMC._xscale = (XGSIntroMC._yscale = Math.max(1, XGSIntroMC._yscale - (blurVel * 1.3)));
XGSIntroMC.XGenStudiosComMC._alpha = XGSIntroMC.XGenStudiosComMC._alpha - 25;
} else {
XGSIntroMC._xscale = (XGSIntroMC._yscale = Math.min(100, XGSIntroMC._yscale * 1.7));
}
bl.blurX = blurAmount;
bl.blurY = blurAmount;
this.filters = [bl];
}
BG.gotoAndPlay(2);
stop();
XGSIntroMC.cacheAsBitmap = true;
var bl = (new flash.filters.BlurFilter());
bl.quality = 1;
var blurAmount = 180;
var blurVel = -10;
var blurVel2 = 1;
var blurReverse = -100;
XGSIntroMC._xscale = (XGSIntroMC._yscale = 0.01);
Symbol 197 MovieClip Frame 2
var bytesTotal = _root.getBytesTotal();
var bytesLoaded = _root.getBytesLoaded();
var percentLoaded = int((bytesLoaded / bytesTotal) * 100);
_parent._parent.percentLoadedText2.text = (_parent._parent.percentLoadedText.text = ("(" + percentLoaded) + "%)");
_parent._parent.loadBar.gotoAndPlay(percentLoaded);
_parent._parent.loadBar2.gotoAndPlay(percentLoaded);
if (bytesTotal == bytesLoaded) {
_parent._parent.doneLoading();
stop();
}
_parent._parent.loadBar._alpha = _parent._parent.loadBar._alpha - 10;
if (_parent._parent.loadBar._alpha < 89) {
_parent._parent.loadBar._alpha = 100;
}
Symbol 200 MovieClip Frame 1
stop();
Symbol 209 MovieClip Frame 6
stop();
Symbol 210 MovieClip Frame 1
s = 0;
Symbol 210 MovieClip Frame 2
this.attachMovie("sparksMC", "sparksMC" + s, 100 + s);
with (eval ("sparksMC" + s)) {
_x = (sparkBallMC._x = random(20));
_y = (sparkBallMC._y = random(50));
}
s++;
gotoAndPlay(2 + random(97));
sparkBallMC.gotoAndPlay(1);
Symbol 210 MovieClip Frame 100
gotoAndPlay (2);
Symbol 214 MovieClip Frame 15
gotoAndPlay(15 + random(35));
Symbol 219 MovieClip Frame 5
stop();
Symbol 226 Button
on (release) {
if (_parent.menuActive) {
_parent.loadedGame = false;
_parent.gotoAndPlay(4);
}
}
Symbol 234 Button
on (release) {
if (_parent.menuActive) {
_parent.menuActive = false;
_parent.loadGameMC._visible = true;
_parent.loadGameMC.preLoadGameOffline();
_parent.title_BTNNewGameMC._visible = 0;
_parent.title_BTNLoadGameMC._visible = 0;
_parent.title_BTNInstructionsMC._visible = 0;
}
}
Symbol 242 Button
on (release) {
if (_parent.menuActive) {
_parent.menuActive = false;
_parent.instructionsMC._visible = true;
_parent.title_BTNNewGameMC._visible = 0;
_parent.title_BTNLoadGameMC._visible = 0;
_parent.title_BTNInstructionsMC._visible = 0;
}
}
Symbol 251 Button
on (release) {
this._visible = 0;
_parent.menuActive = true;
_parent.title_BTNNewGameMC._visible = 1;
_parent.title_BTNLoadGameMC._visible = 1;
_parent.title_BTNInstructionsMC._visible = 1;
}
Symbol 261 MovieClip Frame 1
podUsageText.text = "(This information is accessible in-game via the 'help' button)\r\r" + _parent.instructions;
Instance of Symbol 158 MovieClip [FScrollBarSymbol] in Symbol 261 MovieClip Frame 1
/* no clip actions */
Symbol 278 Button
on (release) {
_parent.preLoadGame();
}
Symbol 286 Button
on (release) {
_parent._parent.cancelLoadGame();
}
Symbol 294 Button
on (release) {
_parent._parent.cancelLoadGame();
_parent.load_BTNok2MC._visible = 0;
_parent.load_BTNokMC._visible = 1;
_parent.load_BTNcancelMC._visible = 1;
_parent.nameInput._visible = 1;
_parent.passInput._visible = 1;
_parent.load_userpassMC._visible = 1;
_parent.loadText.text = "\rPlease enter your\rXGenStudios account\rinformation";
}
Symbol 296 MovieClip Frame 1
function loadTimeOut() {
connecting = false;
loadText.text = "A response was not recieved from the server. Please verify that you are connected to the internet and try again.";
load_BTNok2MC._visible = 1;
}
function preLoadGame() {
if ((passInput.text != "") && (nameInput.text != "")) {
if (_parent.isExtendedAlphaNumeric(nameInput.text) && (_parent.isExtendedAlphaNumeric(passInput.text))) {
_parent.uName = nameInput.text;
_parent.uPass = passInput.text;
loadGame(nameInput.text, passInput.text);
} else {
loadText.text = "Please do not use <, >, or & in your username or password.";
}
} else {
loadText.text = "Please enter your XGenStudios account information.";
}
}
function loadGame(u, p) {
load_userpassMC._visible = 0;
nameInput._visible = 0;
passInput._visible = 0;
load_BTNokMC._visible = 0;
load_BTNcancelMC._visible = 0;
replyData = new LoadVars();
sendData = new LoadVars();
sendData.username = u;
sendData.userpass = p;
loadText.text = "\r\rRetrieving Data...";
sendData.sendAndLoad(_parent.filePath + "/motherload/restore.php", replyData, "POST");
connectionCounter = 0;
connecting = true;
replyData.onLoad = function (success) {
connecting = false;
if (replyData.result == "success") {
loadText.text = "\r\rRestoring Game...";
_parent.loadGameDecode(replyData.playerdata);
} else {
if (replyData.result == undefined) {
loadText.text = "\r\rAn error has occured, please try again";
} else {
loadText.text = replyData.result;
}
load_BTNok2MC._visible = 1;
}
};
}
load_BTNok2MC._visible = 0;
var connectionCounter = 0;
var connecting = false;
if (_parent.loadedGame) {
nameInput.text = _parent.uName;
passInput.text = _parent.uPass;
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 296 MovieClip Frame 1
onClipEvent (enterFrame) {
if (_parent.connecting) {
_parent.connectionCounter++;
if (_parent.connectionCounter == 1800) {
_parent.loadTimeOut();
}
}
}
Symbol 299 MovieClip Frame 1
validURL = new Array("2CH.RU");
allowHDD = false;
valid = false;
protocol = _url.substr(0, _url.indexOf(":"));
if (protocol == "file") {
str = ("HDD Check Passed: " + _url) + " Valid.";
valid = true;
} else if (protocol == "http") {
doubleSlash = _url.indexOf("//");
server = _url.substr(doubleSlash + 2, (_url.indexOf("/", doubleSlash + 2) - doubleSlash) - 2);
server = server.toUpperCase();
if (server.indexOf("WWW.") != -1) {
server = server.substr(server.indexOf("WWW.") + 4, server.length);
}
i = 0;
while (i < validURL.length) {
if (server.indexOf(validURL[i]) != -1) {
str = ("URL Check Passed: " + _url) + " Valid.";
valid = true;
i = validURL.length;
}
str = ("URL Check Failed: " + _url) + " Invalid.";
i++;
}
}
if (!valid) {
_parent.gotoAndStop("pirateFrame");
}
textBox.text = str;
Symbol 345 MovieClip Frame 19
stop();
Symbol 363 MovieClip Frame 1
stop();
Symbol 372 MovieClip Frame 5
_parent._parent.doneTurning("ground");
Symbol 373 MovieClip Frame 5
_parent._parent.doneTurning("ground");
Symbol 396 MovieClip Frame 11
_parent._parent.doneTransform("launch");
Symbol 397 MovieClip Frame 11
_parent._parent.doneTransform("land");
Symbol 417 MovieClip Frame 5
_parent._parent.doneTurning("air");
Symbol 418 MovieClip Frame 5
_parent._parent.doneTurning("air");
Symbol 445 MovieClip Frame 10
digVel = 0.5 * _parent._parent.atv.drillSpeed[_parent._parent.atv.drill];
depth = int(((_parent._parent.earthMC._y - _parent._parent.atvMC._y) + 204) / 4);
digVel = digVel / (1 + ((-depth) / 1000));
yMoved = 0;
initialY = _parent._y;
chunkCount = 0;
reloadFlag = false;
Symbol 445 MovieClip Frame 11
_parent._y = _parent._y + digVel;
yMoved = yMoved + digVel;
_parent._x = _parent._x + ((_parent._parent.atv.difX / 50) * digVel);
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
if (_parent._parent.optChunks) {
if ((_parent._parent.dugTile > 27) && (_parent._parent.dugTile < 31)) {
_parent._parent.attachMovie("chunkLavaMC", "chunkMC" + chunkCount, 123000 + chunkCount);
} else {
_parent._parent.attachMovie("chunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
}
with (eval ("_parent._parent.chunkMC" + chunkCount)) {
_x = (_root.atvMC._x + random(10)) - 5;
_y = (_root.atvMC._y + 20) + random(10);
}
chunkCount++;
}
Symbol 445 MovieClip Frame 12
_parent._y = _parent._y + digVel;
yMoved = yMoved + digVel;
_parent._x = _parent._x + ((_parent._parent.atv.difX / 50) * digVel);
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
Symbol 445 MovieClip Frame 13
_parent._y = _parent._y + digVel;
yMoved = yMoved + digVel;
_parent._x = _parent._x + ((_parent._parent.atv.difX / 50) * digVel);
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
if (yMoved < 50) {
if ((yMoved > 20) && (reloadFlag == false)) {
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][0] = 0;
_parent._parent.reloadTile(_parent._parent.atv.digX, _parent._parent.atv.digY - 1);
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][1] = 0;
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][0] = -100;
_parent._parent.reloadTile(_parent._parent.atv.digX, _parent._parent.atv.digY);
reloadFlag = true;
if ((_parent._parent.dugTile > 27) && (_parent._parent.dugTile < 31)) {
_parent._parent.atv.damage(29 * _parent._parent.atv.radiatorCooling[_parent._parent.atv.radiator]);
}
if (_parent._parent.dugTile == 31) {
_parent._parent.hitGasPocket();
}
}
gotoAndPlay (11);
} else {
stop();
_parent._y = _parent._y + 1;
yMoved = yMoved + 1;
yAdj = yMoved - 50;
_parent._y = _parent._y - yAdj;
_parent._parent.doneDigging("down");
}
Symbol 462 MovieClip Frame 8
_parent._parent.doneTransform("digdownlaunch");
Symbol 469 MovieClip Frame 2
if (_parent._parent.atv.facing == "left") {
xDir = -1;
} else {
xDir = 1;
}
digVel = 0.5 * _parent._parent.atv.drillSpeed[_parent._parent.atv.drill];
depth = int(((_parent._parent.earthMC._y - _parent._parent.atvMC._y) + 204) / 4);
digVel = digVel / (1 + ((-depth) / 1000));
xMoved = 0;
initialX = _parent._x;
chunkCount = 0;
reloadFlag = false;
Symbol 469 MovieClip Frame 3
_parent._x = _parent._x + (digVel * xDir);
xMoved = xMoved + digVel;
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
if (_parent._parent.optChunks) {
if ((_parent._parent.dugTile > 27) && (_parent._parent.dugTile < 31)) {
_parent._parent.attachMovie("chunkLavaMC", "chunkMC" + chunkCount, 123000 + chunkCount);
} else {
_parent._parent.attachMovie("chunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
}
with (eval ("_parent._parent.chunkMC" + chunkCount)) {
_x = _root.atvMC._x + ((random(10) + 35) * xDir);
_y = (_root.atvMC._y + random(10)) - 10;
}
chunkCount++;
}
Symbol 469 MovieClip Frame 4
_parent._x = _parent._x + (digVel * xDir);
xMoved = xMoved + digVel;
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
Symbol 469 MovieClip Frame 5
_parent._x = _parent._x + (digVel * xDir);
xMoved = xMoved + digVel;
_parent._parent.steamCount = _parent._parent.steamCount + 4;
_parent._parent.atv.fuel = _parent._parent.atv.fuel - (_parent._parent.atv.enginePower[_parent._parent.atv.engine] / 25000);
if (xMoved < 40) {
if ((xMoved > 15) && (reloadFlag == false)) {
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][0] = 0;
_parent._parent.reloadTile(_parent._parent.atv.digX - xDir, _parent._parent.atv.digY);
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][0] = -100;
_parent._parent.earth[_parent._parent.atv.digX][_parent._parent.atv.digY][1] = 2 + xDir;
_parent._parent.reloadTile(_parent._parent.atv.digX, _parent._parent.atv.digY);
reloadFlag = true;
if ((_parent._parent.dugTile > 27) && (_parent._parent.dugTile < 31)) {
_parent._parent.atv.damage(12);
}
if (_parent._parent.dugTile == 31) {
_parent._parent.hitGasPocket();
}
}
gotoAndPlay (3);
} else {
stop();
xAdj = xMoved - 40;
_parent._x = _parent._x - (xAdj * xDir);
_parent._parent.doneDigging("across");
}
Symbol 470 MovieClip Frame 11
_parent._parent.doneTransform("digacrosslaunch");
Symbol 471 MovieClip Frame 1
function hideAllClips() {
treadMC.stop();
treadMC._visible = 0;
turnRightMC.stop();
turnRightMC._visible = 0;
turnLeftMC.stop();
turnLeftMC._visible = 0;
flyTurnRightMC.stop();
flyTurnRightMC._visible = 0;
flyTurnLeftMC.stop();
flyTurnLeftMC._visible = 0;
launchMC.stop();
launchMC._visible = 0;
landMC.stop();
landMC._visible = 0;
digDownMC.stop();
digDownMC._visible = 0;
digDownLaunchMC.stop();
digDownLaunchMC._visible = 0;
digAcrossMC.stop();
digAcrossMC._visible = 0;
digAcrossLaunchMC.stop();
digAcrossLaunchMC._visible = 0;
}
hideAllClips();
Symbol 491 MovieClip Frame 12
if (!_parent._parent.paused) {
_parent._parent.SFXfuelLow.start(0, 1);
}
Symbol 493 MovieClip Frame 1
if ((!_parent._parent.paused) && (_parent._parent.atv.mod != "dead")) {
_parent._parent.SFXfuelLow.start(0, 1);
}
Symbol 494 MovieClip Frame 100
_parent.atv.die();
Symbol 505 MovieClip Frame 10
stop();
Symbol 511 MovieClip Frame 6
stop();
Symbol 520 Button
on (release) {
if ((!paused) && (!battleMode)) {
gotoAndStop (17);
}
}
Symbol 526 Button
on (release) {
if ((!paused) && (!battleMode)) {
gotoAndStop (8);
}
}
Symbol 531 Button
on (release) {
if ((!paused) && (!battleMode)) {
gotoAndStop (18);
}
}
Symbol 538 MovieClip Frame 6
stop();
Symbol 581 Button
on (press) {
selectCategory(0);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[0];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 582 Button
on (press) {
selectCategory(1);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[1];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 583 Button
on (press) {
selectCategory(2);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[2];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 584 Button
on (press) {
selectCategory(3);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[3];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 585 Button
on (press) {
selectCategory(4);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[4];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 586 Button
on (press) {
selectCategory(5);
SFXselect.start(0, 1);
}
on (rollOver) {
categoryText.text = upgradeCategories[5];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 587 Button
on (press) {
if (upgrade_dialogue._visible == 0) {
stopPrintedText();
idle(100);
changeBGM("main", 70);
gotoAndStop (6);
SFXselect.start(0, 1);
}
}
on (rollOver) {
categoryText.text = upgradeCategories[6];
SFXtype.start(0, 1);
}
on (rollOut) {
categoryText.text = upgradeCategories[currentCategory];
}
Symbol 593 MovieClip Frame 1
stop();
Symbol 605 MovieClip Frame 1
_x = (_x + ((_parent.selectMCDestX - _x) / 1.2));
_y = (_y + ((_parent.selectMCDestY - _y) / 1.2));
Symbol 605 MovieClip Frame 2
_x = (_x + ((_parent.selectMCDestX - _x) / 1.2));
_y = (_y + ((_parent.selectMCDestY - _y) / 1.2));
Symbol 619 Button
on (release) {
_parent.stopPrintedText();
_parent.idle(100);
_parent.changeBGM("main", 70);
_parent.earthQuakeChance();
_parent.updateHUD();
_parent.gotoAndStop("mainFrame");
}
Symbol 623 Button
on (press) {
_parent.hideUpgradeDialogue();
_parent.SFXselect.start(0, 1);
}
Symbol 669 Button
on (release) {
_parent.exitInventory();
}
Symbol 675 Button
on (release) {
_parent.jettison(0);
}
Symbol 677 Button
on (release) {
_parent.jettison(1);
}
Symbol 679 Button
on (release) {
_parent.jettison(2);
}
Symbol 681 Button
on (release) {
_parent.jettison(3);
}
Symbol 683 Button
on (release) {
_parent.jettison(4);
}
Symbol 685 Button
on (release) {
_parent.jettison(5);
}
Symbol 687 Button
on (release) {
_parent.jettison(6);
}
Symbol 689 Button
on (release) {
_parent.jettison(7);
}
Symbol 691 Button
on (release) {
_parent.jettison(8);
}
Symbol 693 Button
on (release) {
_parent.jettison(9);
}
Symbol 711 Button
on (press) {
_parent.sellDone();
_parent.SFXselect.start(0, 1);
}
Symbol 720 Button
on (release) {
_parent.changeBGM("main", 70);
_parent.idle(100);
_parent.earthQuakeChance();
_parent.updateHUD();
_parent.gotoAndStop("mainFrame");
}
Symbol 735 Button
on (release) {
if (_parent.sell_dialogue._visible == 0) {
_parent.sellAll();
}
}
Symbol 742 Button
on (press) {
_parent.buyFuelDone();
_parent.SFXselect.start(0, 1);
}
Symbol 746 Button
on (press) {
_parent.buyFuel(5);
_parent.SFXselect.start(0, 1);
}
Symbol 750 Button
on (press) {
_parent.buyFuel(10);
_parent.SFXselect.start(0, 1);
}
Symbol 754 Button
on (press) {
_parent.buyFuel(25);
_parent.SFXselect.start(0, 1);
}
Symbol 758 Button
on (press) {
_parent.buyFuel(50);
_parent.SFXselect.start(0, 1);
}
Symbol 762 Button
on (press) {
_parent.buyFuel(-1);
_parent.SFXselect.start(0, 1);
}
Symbol 765 Button
on (release) {
_parent.stopPrintedText();
_parent.changeBGM("main", 70);
_parent.idle(100);
_parent.earthQuakeChance();
_parent.updateHUD();
_parent.gotoAndStop("mainFrame");
}
Symbol 777 Button
on (press) {
_parent.repair(50);
_parent.SFXselect.start(0, 1);
}
Symbol 781 Button
on (press) {
_parent.repair(100);
_parent.SFXselect.start(0, 1);
}
Symbol 785 Button
on (press) {
_parent.repair(200);
_parent.SFXselect.start(0, 1);
}
Symbol 789 Button
on (press) {
_parent.repair(500);
_parent.SFXselect.start(0, 1);
}
Symbol 793 Button
on (press) {
_parent.repair(-1);
_parent.SFXselect.start(0, 1);
}
Symbol 797 Button
on (press) {
_parent.purchaseItem();
_parent.SFXselect.start(0, 1);
}
Symbol 822 Button
on (press) {
_parent.hideRepairDialogue();
}
Symbol 829 MovieClip Frame 35
_parent._parent.SFXsatanLaugh.start(0, 1);
Symbol 829 MovieClip Frame 82
stop();
Symbol 835 Button
on (release) {
_parent.removeDeathEffect();
_parent._parent.showLoad = true;
_parent._parent.gotoAndStop(2);
}
Symbol 838 Button
on (release) {
_parent.removeDeathEffect();
_parent._parent.gotoAndStop(2);
}
Symbol 840 MovieClip Frame 79
function removeDeathEffect() {
myColor = new Color(_parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
_parent.podExplode.unloadMovie();
_parent.changeBGM();
_parent.fuelTankMC.fuelLowMC.stop();
_parent.fuelTankMC.gotoAndStop(1);
}
Symbol 840 MovieClip Frame 143
_parent.SFXjettison.start(0.2, 1);
Symbol 840 MovieClip Frame 151
stop();
_parent.changeBGM("core", 10, 6.6);
Symbol 841 MovieClip Frame 66
stop();
Symbol 849 Button
on (release) {
p1.addToCash(transmissions[lastTransmission].bonus);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
idle(100);
updateHUD();
gotoAndStop (6);
if (lastTransmission == 12) {
startBattle();
}
if (lastTransmission == 13) {
startBattleP2();
}
}
Symbol 859 Button
on (release) {
idle(100);
BGMmain.setVolume((0.007 * BGMvolume) * globalVolume);
updateHUD();
wipe = false;
mothershipMC._visible = 1;
gotoAndStop (6);
}
Symbol 862 Button
on (release) {
optionsHitX();
}
Symbol 869 MovieClip Frame 1
this.ratio = 0;
dragger.onPress = function () {
this.startDrag(true, 0, 0, line._width, 0);
this.onEnterFrame = function () {
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColorTransform.rb = 230 - ((this._x / line._width) * 255);
myColorTransform.gb = (this._x / line._width) * 180;
myColor = new Color(this);
myColor.setTransform(myColorTransform);
myColor = new Color(line);
myColor.setTransform(myColorTransform);
myColor = new Color(ratioTextMC);
myColor.setTransform(myColorTransform);
_parent.SFXvolume = Math.round((this._x * 100) / line._width);
ratioTextMC.ratioText.text = _parent.SFXvolume + "%";
_parent.setSoundVolume(_parent.SFXvolume);
};
};
dragger.onRelease = (dragger.onReleaseOutside = stopDrag);
Symbol 872 MovieClip Frame 1
this.ratio = 0;
dragger.onPress = function () {
this.startDrag(true, 0, 0, line._width, 0);
this.onEnterFrame = function () {
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColorTransform.rb = 230 - ((this._x / line._width) * 255);
myColorTransform.gb = (this._x / line._width) * 180;
myColor = new Color(this);
myColor.setTransform(myColorTransform);
myColor = new Color(line);
myColor.setTransform(myColorTransform);
myColor = new Color(ratioTextMC);
myColor.setTransform(myColorTransform);
_parent.BGMvolume = Math.round((this._x * 100) / line._width);
ratioTextMC.ratioText.text = _parent.BGMvolume + "%";
_parent.BGMmain.setVolume((0.007 * _parent.BGMvolume) * _parent.globalVolume);
};
};
dragger.onRelease = (dragger.onReleaseOutside = stopDrag);
Instance of Symbol 132 MovieClip [CheckBox] "cb" in Symbol 877 MovieClip Frame 1
/* no clip actions */
Instance of Symbol 132 MovieClip [CheckBox] "cb" in Symbol 880 MovieClip Frame 1
/* no clip actions */
Instance of Symbol 132 MovieClip [CheckBox] "cb" in Symbol 882 MovieClip Frame 1
/* no clip actions */
Symbol 892 Button
on (press) {
quitConfirmationMC._visible = 1;
}
Instance of Symbol 132 MovieClip [CheckBox] "cb" in Symbol 893 MovieClip Frame 1
/* no clip actions */
Symbol 904 Button
on (release) {
optionsHitX();
}
Symbol 908 Button
on (release) {
_parent.quitConfirmationMC._visible = 0;
}
Symbol 909 Button
on (release) {
_parent.gotoAndStop(2);
}
Symbol 916 Button
on (release) {
_parent.quitConfirmationMC._visible = 0;
}
Symbol 923 Button
on (release) {
_parent.optionsQuitGame();
}
Symbol 933 Button
on (release) {
_parent.saveAndQuit();
}
Symbol 939 MovieClip Frame 20
stop();
Symbol 939 MovieClip Frame 50
stop();
Symbol 942 MovieClip Frame 40
stop();
Symbol 949 MovieClip Frame 90
stop();
Symbol 950 MovieClip Frame 1
word = new Array("C", "O", "N", "G", "R", "A", "T", "U", "L", "A", "T", "I", "O", "N", "S", "!");
var i = 0;
while (i < 16) {
this.attachMovie("wavingLetterMC", "wavingLetterMC" + i, 500 + i);
with (eval ("wavingLetterMC" + i)) {
_x = 31 * i;
wavingLetterMC_.letter.text = word[i];
gotoAndPlay(33 - (i + 2));
}
i++;
}
var i = 0;
while (i < 16) {
this.attachMovie("wavingLetterMC", "wavingLetterBlurMC" + i, 400 + i);
with (eval ("wavingLetterBlurMC" + i)) {
_x = 31 * i;
_alpha = 60;
wavingLetterMC_.letter.text = word[i];
gotoAndPlay(33 - (i + 6));
}
i++;
}
var i = 0;
while (i < 16) {
this.attachMovie("wavingLetterMC", "wavingLetterBlur2MC" + i, 300 + i);
with (eval ("wavingLetterBlur2MC" + i)) {
_x = 31 * i;
_alpha = 45;
wavingLetterMC_.letter.text = word[i];
gotoAndPlay(33 - (i + 10));
}
i++;
}
var i = 0;
while (i < 16) {
this.attachMovie("wavingLetterMC", "wavingLetterBlur3MC" + i, 200 + i);
with (eval ("wavingLetterBlur3MC" + i)) {
_x = 31 * i;
_alpha = 30;
wavingLetterMC_.letter.text = word[i];
gotoAndPlay(33 - (i + 14));
}
i++;
}
var i = 0;
while (i < 16) {
this.attachMovie("wavingLetterMC", "wavingLetterBlur4MC" + i, 100 + i);
with (eval ("wavingLetterBlur4MC" + i)) {
_x = 31 * i;
_alpha = 15;
wavingLetterMC_.letter.text = word[i];
gotoAndPlay(33 - (i + 18));
}
i++;
}
Symbol 951 MovieClip Frame 1
winGameStatsMinorMC.playTimeTextMC.playTimeText.text = ("You defeated Satan in " + (int((_parent._parent.playTime / _parent._parent.dayLength) * 10) / 10)) + " Martian days";
winGameStatsMinorMC.timesKilledTextMC.timesKilledText.text = ("You've slaughtered Satan " + (_parent._parent.lvl - 1)) + " times";
winGameStatsMinorMC.totalPlayTimeTextMC.totalPlayTimeText.text = ("Your total play-time is " + (int((_parent._parent.totalPlayTime / _parent._parent.dayLength) * 10) / 10)) + " Martian days";
finalCashMC.finalCashMC_.finalCashText.text = "FINAL CASH: $" + _parent._parent.p1.cash;
finalScoreMC.finalScoreMC_.finalScoreText.text = "FINAL SCORE: " + _parent._parent.formatNumber(_parent._parent.p1.score);
Symbol 951 MovieClip Frame 95
stop();
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 951 MovieClip Frame 95
onClipEvent (enterFrame) {
if (_parent._parent._parent.p1.cash > 0) {
if (_parent._parent._parent.p1.cash >= 313131) {
dif = 313131 /* 0x04C72B */;
} else {
dif = _parent._parent._parent.p1.cash;
}
_parent._parent._parent.p1.cash = _parent._parent._parent.p1.cash - dif;
_parent._parent._parent.p1.score = _parent._parent._parent.p1.score + (dif * 50);
_parent.finalCashMC.finalCashMC_.finalCashText.text = "FINAL CASH: $" + _parent._parent._parent.p1.cash;
_parent.finalScoreMC.finalScoreMC_.finalScoreText.text = "FINAL SCORE: " + _parent._parent._parent.formatNumber(_parent._parent._parent.p1.score);
} else if (_parent.finalCashMC._currentframe == 20) {
_parent._parent.winContinueMC._visible = 1;
_parent.finalCashMC.gotoAndPlay(21);
}
}
Symbol 954 MovieClip Frame 1
var i = random(5);
gotoAndPlay(2 + random(5));
Symbol 954 MovieClip Frame 7
gotoAndPlay(random(10) + 90);
Symbol 954 MovieClip Frame 98
gotoAndPlay (2);
Symbol 955 MovieClip Frame 1
var spd = 1;
var acc = 2;
var gravity = 0;
var friction = 0.1;
var xvel = 0;
var yvel = 0;
var xacc = 0;
var yacc = 0;
while (xvel == 0) {
xvel = (random(30) - 15) * 7;
}
while (yvel == 0) {
yvel = (random(30) - 15) * 4;
}
aColor = new Color(SQ1);
aColorTransform = new Object();
aColorTransform.ba = random(255);
aColorTransform.ra = random(255);
aColorTransform.ga = random(255);
aColor.setTransform(aColorTransform);
scale = random(50) + 10;
SQ1._xscale = (SQ1._yscale = (SQ2._xscale = (SQ2._yscale = (SQ3._xscale = (SQ3._yscale = scale)))));
Symbol 955 MovieClip Frame 2
SQ3._x = SQ2._x;
SQ3._y = SQ2._y;
SQ3._rotation = SQ2._rotation;
SQ2._x = SQ1._x;
SQ2._y = SQ1._y;
SQ2._rotation = SQ1._rotation;
SQ1._x = SQ1._x + (this.xvel * spd);
SQ1._y = SQ1._y + (this.yvel * spd);
SQ1._rotation = SQ1._rotation + ((this.xvel * 10) + ((1 / SQ1._xscale) * 500));
this.xvel = this.xvel + this.xacc;
this.yvel = this.yvel + this.yacc;
this.xvel = this.xvel * friction;
this.yvel = this.yvel * friction;
if (SQ1._x > 0) {
this.xacc = this.xacc - gravity;
} else {
this.xacc = this.xacc + gravity;
}
if (SQ1._y > 0) {
this.yacc = this.yacc - gravity;
} else {
this.yacc = this.yacc + gravity;
}
gotoAndPlay (2);
Symbol 955 MovieClip Frame 3
gotoAndPlay (2);
Symbol 956 Button
on (release) {
_parent._parent.playTime = 0;
_parent._parent.gotoAndStop("saveFrame");
}
Symbol 958 MovieClip Frame 1
stop();
Symbol 958 MovieClip Frame 136
winContinueMC._visible = 0;
stop();
Symbol 967 Button
on (release) {
_parent.preSaveGame();
}
Symbol 975 Button
on (release) {
_parent.createAccount();
}
Symbol 985 Button
on (release) {
_parent.beginSave();
}
Symbol 993 Button
on (release) {
_parent.exitSave();
}
Symbol 1007 Button
on (release) {
_parent.exitSave();
}
Symbol 1015 Button
on (release) {
_parent.retrySave();
}
Symbol 1023 Button
on (release) {
_parent.exitSave();
}
Symbol 1031 Button
on (release) {
_quality = "HIGH";
_root.swHighScoreObject.showTab = "submit";
_level0.swHighScoreObject.player1Score = _root.p1.score;
this._visible = false;
docount = true;
_root.disabler._visible = true;
loadMovieNum (_root.HSHubURL, 2);
}
Symbol 1113 MovieClip [dieFX] Frame 1
myColor = new Color(_parent._parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
red = 200;
Symbol 1113 MovieClip [dieFX] Frame 2
red = red - 3;
myColorTransform.rb = red;
myColorTransform.gb = red;
myColorTransform.bb = red;
myColor.setTransform(myColorTransform);
if (red <= -60) {
this.removeMovieClip();
}
Symbol 1113 MovieClip [dieFX] Frame 3
gotoAndPlay (2);
Symbol 1114 MovieClip [shake2FX] Frame 1
xMove = 8;
xAcc = -2;
_parent.SFXsatanStep2.start(0, 1);
Symbol 1114 MovieClip [shake2FX] Frame 2
xMove = xMove + xAcc;
_parent.earthMC.e._y = _parent.earthMC.e._y + xMove;
Symbol 1114 MovieClip [shake2FX] Frame 4
_parent.earthMC.e._y = _parent.earthMC.e._y - xMove;
if (xMove <= 0) {
this.removeMovieClip();
} else {
gotoAndPlay (2);
}
Symbol 1115 MovieClip [shakeFX] Frame 1
xMove = 4;
xAcc = -1;
_parent.SFXsatanStep.start(0, 1);
Symbol 1115 MovieClip [shakeFX] Frame 2
xMove = xMove + xAcc;
_parent.earthMC.e._y = _parent.earthMC.e._y + xMove;
Symbol 1115 MovieClip [shakeFX] Frame 4
_parent.earthMC.e._y = _parent.earthMC.e._y - xMove;
if (xMove <= 0) {
this.removeMovieClip();
} else {
gotoAndPlay (2);
}
Symbol 1117 MovieClip [quakeFX] Frame 1
xMove = 0;
xAcc = 0.5;
Symbol 1117 MovieClip [quakeFX] Frame 2
xMove = xMove + xAcc;
_parent.earthMC.e._x = _parent.earthMC.e._x + xMove;
_parent.earthMC.e._y = _parent.earthMC.e._y + xMove;
Symbol 1117 MovieClip [quakeFX] Frame 4
_parent.earthMC.e._x = _parent.earthMC.e._x - xMove;
_parent.earthMC.e._y = _parent.earthMC.e._y - xMove;
Symbol 1117 MovieClip [quakeFX] Frame 5
if (xMove >= 10) {
xAcc = xAcc * -1;
}
if (xMove <= 0) {
_parent.wipe = false;
_parent.gotoAndStop("mainFrame");
this.removeMovieClip();
} else {
gotoAndPlay (2);
}
Symbol 1118 MovieClip [nanoFX] Frame 1
blue = 0;
blueMod = 80;
myColor2 = new Color(_parent);
myColorTransform2 = new Object();
myColorTransform2 = {ra:"100", rb:"0", ga:"100", gb:"0", ba:"100", bb:"255", aa:"100", ab:"0"};
Symbol 1118 MovieClip [nanoFX] Frame 2
blue = blue + blueMod;
if (blue == 240) {
blueMod = -10;
}
myColorTransform2.rb = blue;
myColorTransform2.gb = blue;
myColorTransform2.bb = blue * 2;
myColor2.setTransform(myColorTransform2);
if (blue == 0) {
this.removeMovieClip();
}
Symbol 1118 MovieClip [nanoFX] Frame 3
gotoAndPlay (2);
Symbol 1119 MovieClip [lavaFX] Frame 1
red = 0;
redMod = 10;
myColor2 = new Color(_parent);
myColorTransform2 = new Object();
myColorTransform2 = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
Symbol 1119 MovieClip [lavaFX] Frame 2
red = red + redMod;
if (red == 250) {
redMod = -5;
}
myColorTransform2.rb = red * 2;
myColorTransform2.gb = 0;
myColorTransform2.bb = 0;
myColor2.setTransform(myColorTransform2);
if (red == 0) {
this.removeMovieClip();
}
Symbol 1119 MovieClip [lavaFX] Frame 3
gotoAndPlay (2);
Symbol 1120 MovieClip [satanDamageFX] Frame 1
myColor = new Color(_parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
red = 255;
Symbol 1120 MovieClip [satanDamageFX] Frame 2
red = Math.max(red - 20, 0);
myColorTransform.rb = red * 2;
myColorTransform.gb = red * 2;
myColorTransform.bb = red * 2;
myColor.setTransform(myColorTransform);
if (_parent._parent.earthMC.satan._alpha == 100) {
_parent._parent.earthMC.satan._alpha = 0;
} else {
_parent._parent.earthMC.satan._alpha = 100;
}
if (red == 0) {
_parent._parent.earthMC.satan._alpha = 100;
this.removeMovieClip();
}
Symbol 1120 MovieClip [satanDamageFX] Frame 3
gotoAndPlay (2);
Symbol 1121 MovieClip [damageFX] Frame 1
myColor = new Color(_parent._parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
red = 255;
myColor2 = new Color(_parent);
myColorTransform2 = new Object();
myColorTransform2 = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
Symbol 1121 MovieClip [damageFX] Frame 2
red = Math.max(red - 20, 0);
myColorTransform.rb = red;
myColor.setTransform(myColorTransform);
myColorTransform2.rb = red * 2;
myColorTransform2.gb = red;
myColorTransform2.bb = red;
myColor2.setTransform(myColorTransform2);
if (red == 0) {
this.removeMovieClip();
}
Symbol 1121 MovieClip [damageFX] Frame 3
gotoAndPlay (2);
Symbol 1122 MovieClip [winGameFX] Frame 1
myColor = new Color(_parent._parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
red = 0;
Symbol 1122 MovieClip [winGameFX] Frame 2
red = Math.min(red + 0.25, 40);
myColorTransform.rb = red * 2;
myColorTransform.gb = red;
myColorTransform.bb = 0;
myColor.setTransform(myColorTransform);
if (red == 50) {
this.removeMovieClip();
}
Symbol 1122 MovieClip [winGameFX] Frame 3
gotoAndPlay (2);
Symbol 1123 MovieClip [flashFX] Frame 1
myColor = new Color(_parent._parent._parent._parent);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
red = 255;
myColorTransform.rb = red * 2;
myColorTransform.gb = red * 2;
myColorTransform.bb = red * 2;
myColor.setTransform(myColorTransform);
Symbol 1123 MovieClip [flashFX] Frame 2
red = Math.max(red - 20, 0);
myColorTransform.rb = red * 2;
myColorTransform.gb = red / 2;
myColorTransform.bb = red / 2;
myColor.setTransform(myColorTransform);
if (red == 0) {
this.removeMovieClip();
}
Symbol 1123 MovieClip [flashFX] Frame 3
gotoAndPlay (2);
Symbol 1129 MovieClip [printTextMC] Frame 1
var count = 0;
Symbol 1129 MovieClip [printTextMC] Frame 2
count++;
if (count >= speedT.text) {
count = 0;
with (eval (textNameT.text)) {
text = text.substring(0, text.length - 1);
text = text + (textT.text.substring(0, 1) + "_");
textT.text = textT.text.substring(1, textT.text.length);
}
if (textT.text.length > 0) {
gotoAndPlay (4);
} else {
with (eval (textNameT.text)) {
text = text.substring(0, text.length - 1);
}
this.removeMovieClip();
}
}
Symbol 1129 MovieClip [printTextMC] Frame 3
gotoAndPlay (2);
Symbol 1129 MovieClip [printTextMC] Frame 4
_parent.SFXtype2.start(0, 1);
gotoAndPlay (2);
Symbol 1309 MovieClip [puffMC] Frame 1
_parent._parent.atvMC.treadMC._y = _parent._parent.atvMC.treadMC._y + 1;
Symbol 1309 MovieClip [puffMC] Frame 4
_parent._parent.atvMC.treadMC._y = _parent._parent.atvMC.treadMC._y - 0.5;
Symbol 1309 MovieClip [puffMC] Frame 5
_parent._parent.atvMC.treadMC._y = _parent._parent.atvMC.treadMC._y - 0.5;
Symbol 1309 MovieClip [puffMC] Frame 20
this.unloadMovie();
stop();
Symbol 1432 MovieClip [chunkMC_7] Frame 7
stop();
Symbol 1435 MovieClip [chunkMC_6] Frame 7
stop();
Symbol 1438 MovieClip [chunkMC_5] Frame 7
stop();
Symbol 1441 MovieClip [chunkMC_4] Frame 7
stop();
Symbol 1444 MovieClip [chunkMC_3] Frame 7
stop();
Symbol 1447 MovieClip [chunkMC_2] Frame 7
stop();
Symbol 1450 MovieClip [chunkMC_1] Frame 7
stop();
Symbol 1453 MovieClip [chunkMC_0] Frame 7
stop();
Symbol 1454 MovieClip [chunkLavaMC] Frame 1
this.attachMovie("chunkMC_" + random(8), "chunkImage", 100);
chunkImage._xscale = (chunkImage._yscale = random(125) + 25);
myColor = new Color(chunkImage);
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"255", ga:"100", gb:"0", ba:"100", bb:"0", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
xVel = random(20) - 10;
yVel = random(5) - 10;
Symbol 1454 MovieClip [chunkLavaMC] Frame 2
this._x = this._x + xVel;
this._y = this._y + yVel;
this._rotation = this._rotation + (xVel * 2);
this.yVel++;
Symbol 1454 MovieClip [chunkLavaMC] Frame 3
if (this._y > 410) {
this.removeMovieClip();
this.unloadMovie();
} else {
gotoAndPlay (2);
}
Symbol 1455 MovieClip [skullChunkSlowMC] Frame 1
spd = 4;
this.attachMovie("skullChunkMC_" + random(2), "chunkImage", 100);
chunkImage._xscale = (chunkImage._yscale = random(50) + 50);
xVel = random(40) - 20;
yVel = random(10) - 20;
Symbol 1455 MovieClip [skullChunkSlowMC] Frame 2
chunkImage._x = chunkImage._x + (xVel / spd);
chunkImage._y = chunkImage._y + (yVel / spd);
chunkImage._rotation = chunkImage._rotation + ((xVel * 2) / spd);
this.yVel++;
Symbol 1455 MovieClip [skullChunkSlowMC] Frame 3
if (chunkImage._y > 300) {
this.removeMovieClip();
this.unloadMovie();
} else {
gotoAndPlay (2);
}
Symbol 1456 MovieClip [skullChunkMC] Frame 1
this.attachMovie("skullChunkMC_" + random(2), "chunkImage", 100);
chunkImage._xscale = (chunkImage._yscale = random(50) + 50);
xVel = random(20) - 10;
yVel = random(5) - 10;
Symbol 1456 MovieClip [skullChunkMC] Frame 2
chunkImage._x = chunkImage._x + xVel;
chunkImage._y = chunkImage._y + yVel;
chunkImage._rotation = chunkImage._rotation + (xVel * 2);
this.yVel++;
Symbol 1456 MovieClip [skullChunkMC] Frame 3
if (chunkImage._y > 300) {
this.removeMovieClip();
this.unloadMovie();
} else {
gotoAndPlay (2);
}
Symbol 1457 MovieClip [chunkMC] Frame 1
this.attachMovie("chunkMC_" + random(8), "chunkImage", 100);
chunkImage._xscale = (chunkImage._yscale = random(125) + 25);
xVel = random(20) - 10;
yVel = random(5) - 10;
Symbol 1457 MovieClip [chunkMC] Frame 2
this._x = this._x + xVel;
this._y = this._y + yVel;
this._rotation = this._rotation + (xVel * 2);
this.yVel++;
Symbol 1457 MovieClip [chunkMC] Frame 3
if (this._y > 410) {
this.removeMovieClip();
this.unloadMovie();
} else {
gotoAndPlay (2);
}
Symbol 1458 MovieClip Frame 11
gotoAndPlay (2);
Symbol 1459 MovieClip [messageMC] Frame 65
stop();
unloadMovie (this);
Symbol 1460 MovieClip Frame 7
gotoAndPlay (2);
Symbol 1461 MovieClip [warningMC] Frame 65
stop();
unloadMovie (this);
Symbol 1462 MovieClip [bonusMC] Frame 65
stop();
unloadMovie (this);
Symbol 1498 MovieClip [podExplodeGroundMC] Frame 1
_parent.atvMC.damageFX.removeMovieClip();
this.attachMovie("dieFX", "damageFX1", 1201);
Symbol 1498 MovieClip [podExplodeGroundMC] Frame 61
gotoAndPlay (53);
Symbol 1500 MovieClip [sparkMC] Frame 15
gotoAndPlay(random(10) + 15);
Symbol 1500 MovieClip [sparkMC] Frame 30
stop();
Symbol 1502 MovieClip [sparksMC] Frame 1
function moveSparks() {
var i = 0;
while (i < 25) {
with (eval ("sparkMC" + i)) {
yVel[i] = yVel[i] + gravity;
rotation[i] = (yVel[i] * 100) * xVel[i];
_rotation = rotation[i];
_y = _y + yVel[i];
_x = _x + xVel[i];
}
i++;
}
}
xVel = new Array();
yVel = new Array();
rotation = new Array();
gravity = 0.04;
count = 0;
var i = 0;
while (i < 25) {
this.attachMovie("sparkMC", "sparkMC" + i, 100 + i);
with (eval ("sparkMC" + i)) {
_x = 0;
_y = 0;
}
yVel[i] = (random(10) - 2) / 4;
xVel[i] = (random(10) - 5) / 4;
rotation[i] = yVel[i];
i++;
}
Symbol 1502 MovieClip [sparksMC] Frame 2
moveSparks();
count++;
Symbol 1502 MovieClip [sparksMC] Frame 3
moveSparks();
if (count < 50) {
gotoAndPlay (2);
} else {
this.removeMovieClip();
}
Symbol 1589 MovieClip [podQuantumMC] Frame 43
_parent.loadingMC._visible = 1;
_parent.earthMC._y = 100;
_parent.earthMC._x = 0;
_parent.atvMC._y = (this._y = 300);
_parent.atvMC._x = (this._x = 250);
var updateEarthCount = 1;
_parent.earthMC._y = random(100) + 200;
_parent.updateEarth();
Symbol 1589 MovieClip [podQuantumMC] Frame 44
var i = 0;
while (i < 50) {
updateEarthCount++;
_parent.updateEarth();
i++;
}
Symbol 1589 MovieClip [podQuantumMC] Frame 45
var i = 0;
while (i < 50) {
updateEarthCount++;
_parent.updateEarth();
i++;
}
if (updateEarthCount < (_parent.earthHeight + 10)) {
gotoAndPlay (44);
} else {
_parent.bg._y = Math.max(_parent.earthMC._y + 229, -15);
if (_parent.bg._y > 0) {
_parent.bg.topSoil._x = _parent.earthMC._x / 1.3;
}
_parent.updateCosmos();
_parent.updateBg();
_parent.loadingMC._visible = 0;
_parent.atv.xVel = random(40) - 20;
_parent.atv.yVel = random(100) - 30;
}
Symbol 1589 MovieClip [podQuantumMC] Frame 77
_parent.atvMC._visible = 1;
_parent.wipe = false;
_parent.gotoAndStop("mainFrame");
Symbol 1589 MovieClip [podQuantumMC] Frame 85
stop();
this.unloadMovie();
Symbol 1686 MovieClip [podCoreTeleportMC] Frame 48
_parent.loadingMC._visible = 1;
Symbol 1686 MovieClip [podCoreTeleportMC] Frame 49
_parent.earthMC._y = -28900;
_parent.earthMC._x = -1000;
_parent.atvMC._y = (this._y = 450);
_parent.atvMC._x = (this._x = 600);
i = 1;
while (i < (_parent.earthHeight + 30)) {
_parent.updateEarth();
i++;
}
_parent.bg._y = Math.max(_parent.earthMC._y + 229, -15);
if (_parent.bg._y > 0) {
_parent.bg.topSoil._x = _parent.earthMC._x / 1.3;
}
_parent.updateCosmos();
_parent.updateBg();
_parent.loadingMC._visible = 0;
_parent.atv.xVel = 0;
_parent.atv.yVel = 0;
Symbol 1686 MovieClip [podCoreTeleportMC] Frame 93
_parent.atvMC._visible = 1;
_parent.wipe = false;
_parent.gotoAndStop("mainFrame");
stop();
this.unloadMovie();
Symbol 1687 MovieClip [podMatterTransMC] Frame 48
_parent.loadingMC._visible = 1;
_parent.earthMC._y = 100;
_parent.earthMC._x = 0;
_parent.atvMC._y = (this._y = 300);
_parent.atvMC._x = (this._x = 250);
var updateEarthCount = 1;
Symbol 1687 MovieClip [podMatterTransMC] Frame 49
var i = 0;
while (i < 50) {
updateEarthCount++;
_parent.updateEarth();
i++;
}
Symbol 1687 MovieClip [podMatterTransMC] Frame 50
var i = 0;
while (i < 50) {
updateEarthCount++;
_parent.updateEarth();
i++;
}
if (updateEarthCount < (_parent.earthHeight + 10)) {
gotoAndPlay (49);
} else {
_parent.bg._y = Math.max(_parent.earthMC._y + 229, -15);
if (_parent.bg._y > 0) {
_parent.bg.topSoil._x = _parent.earthMC._x / 1.3;
}
_parent.updateCosmos();
_parent.updateBg();
_parent.loadingMC._visible = 0;
_parent.atv.xVel = 0;
_parent.atv.yVel = 0;
}
Symbol 1687 MovieClip [podMatterTransMC] Frame 93
_parent.atvMC._visible = 1;
_parent.wipe = false;
_parent.gotoAndStop("mainFrame");
stop();
this.unloadMovie();
Symbol 1712 MovieClip [explosion1] Frame 13
stop();
this.unloadMovie();
Symbol 1731 MovieClip [explosion2] Frame 10
stop();
this.unloadMovie();
Symbol 1750 MovieClip [explosion3] Frame 10
stop();
this.unloadMovie();
Symbol 1751 MovieClip [itemC4MC] Frame 1
function addExplosion() {
rand = random(3) + 1;
_parent.attachMovie("explosion" + rand, "explosion" + count, layer + count);
with (eval ("_parent.explosion" + count)) {
x = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
y = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
_rotation = random(360);
_xscale = (_yscale = random(100) + 100);
if (_parent.optChunks) {
addChunk(x, y);
}
}
count++;
}
function addChunk(x, y) {
_parent.attachMovie("chunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent.chunkMC" + chunkCount)) {
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
}
chunkCount++;
}
function removeTiles() {
podX = int(((_parent.atvMC._x - _parent.earthMC._x) / 50) + 0.5);
podY = int(((_parent.atvMC._y - _parent.earthMC._y) / 50) + 0.5);
var _loc3 = -2;
while (_loc3 < 3) {
var _loc2 = -2;
while (_loc2 < 3) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] != 0) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] > -3) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < (_parent.earthWidth - 2))) && ((podY + _loc2) > -1)) && ((podY + _loc2) < (_parent.earthHeight - 2))) {
_parent.earth[podX + _loc3][podY + _loc2][0] = 0;
}
}
}
_loc2++;
}
_loc3++;
}
var _loc3 = -3;
while (_loc3 < 4) {
var _loc2 = -3;
while (_loc2 < 4) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < (_parent.earthWidth - 2))) && ((podY + _loc2) > -1)) && ((podY + _loc2) < (_parent.earthHeight - 2))) {
_parent.reloadTile(podX + _loc3, podY + _loc2);
}
_loc2++;
}
_loc3++;
}
}
layer = 9988777000;
chunkCount = 0;
count = 10;
explosions = 100;
dispersal = 1.5;
_parent.SFXc4.start(0, 1);
Symbol 1751 MovieClip [itemC4MC] Frame 2
addExplosion();
addExplosion();
Symbol 1751 MovieClip [itemC4MC] Frame 3
addExplosion();
addExplosion();
if (count < explosions) {
gotoAndPlay (2);
} else {
removeTiles();
_parent.wipe = false;
stop();
if (_parent.gameMode != 11) {
_parent.gotoAndStop("mainFrame");
}
this.unloadMovie();
}
Symbol 1752 MovieClip [gasPocketFX] Frame 1
function addExplosion() {
rand = random(3) + 1;
_parent.attachMovie("explosion" + rand, "explosion" + count, layer + count);
with (eval ("_parent.explosion" + count)) {
x = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
y = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
_rotation = random(360);
_xscale = (_yscale = random(100) + 100);
addChunk(x, y);
}
myColor = new Color(eval ("_parent.explosion" + count));
myColorTransform = new Object();
myColorTransform = {ra:"100", rb:"-100", ga:"100", gb:"50", ba:"100", bb:"-100", aa:"100", ab:"0"};
myColor.setTransform(myColorTransform);
count++;
}
function addChunk(x, y) {
_parent.attachMovie("chunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent.chunkMC" + chunkCount)) {
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
}
chunkCount++;
}
function removeTiles() {
podX = int(((_parent.atvMC._x - _parent.earthMC._x) / 50) + 0.5);
podY = int(((_parent.atvMC._y - _parent.earthMC._y) / 50) + 0.5);
var _loc3 = -1;
while (_loc3 < 2) {
var _loc2 = -1;
while (_loc2 < 2) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] != 0) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] > -3) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < _parent.earthWidth)) && ((podY + _loc2) > -1)) && ((podY + _loc2) < _parent.earthHeight)) {
_parent.earth[podX + _loc3][podY + _loc2][0] = 0;
}
}
}
_loc2++;
}
_loc3++;
}
var _loc3 = -2;
while (_loc3 < 3) {
var _loc2 = -2;
while (_loc2 < 3) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < _parent.earthWidth)) && ((podY + _loc2) > -1)) && ((podY + _loc2) < _parent.earthHeight)) {
_parent.reloadTile(podX + _loc3, podY + _loc2);
}
_loc2++;
}
_loc3++;
}
}
layer = 9988777000;
chunkCount = 0;
count = 10;
explosions = 40;
dispersal = 2;
_parent.SFXdynamite.start(0, 1);
Symbol 1752 MovieClip [gasPocketFX] Frame 2
addExplosion();
Symbol 1752 MovieClip [gasPocketFX] Frame 3
addExplosion();
if (count < explosions) {
gotoAndPlay (2);
} else {
removeTiles();
stop();
this.unloadMovie();
}
Symbol 1753 MovieClip [itemDynamiteMC] Frame 1
function addExplosion() {
rand = random(3) + 1;
_parent.attachMovie("explosion" + rand, "explosion" + count, layer + count);
with (eval ("_parent.explosion" + count)) {
x = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
y = (((random(3) - 1) * count) * dispersal) * ((random(50) + 50) / 100);
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
_rotation = random(360);
_xscale = (_yscale = random(100) + 100);
if (_parent.optChunks) {
addChunk(x, y);
}
}
count++;
}
function addChunk(x, y) {
_parent.attachMovie("chunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent.chunkMC" + chunkCount)) {
_x = _parent.atvMC._x + x;
_y = _parent.atvMC._y + y;
}
chunkCount++;
}
function removeTiles() {
podX = int(((_parent.atvMC._x - _parent.earthMC._x) / 50) + 0.5);
podY = int(((_parent.atvMC._y - _parent.earthMC._y) / 50) + 0.5);
var _loc3 = -1;
while (_loc3 < 2) {
var _loc2 = -1;
while (_loc2 < 2) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] != 0) {
if (_parent.earth[podX + _loc3][podY + _loc2][0] > -3) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < (_parent.earthWidth - 2))) && ((podY + _loc2) > -1)) && ((podY + _loc2) < (_parent.earthHeight - 2))) {
_parent.earth[podX + _loc3][podY + _loc2][0] = 0;
}
}
}
_loc2++;
}
_loc3++;
}
var _loc3 = -2;
while (_loc3 < 3) {
var _loc2 = -2;
while (_loc2 < 3) {
if (((((podX + _loc3) > -1) && ((podX + _loc3) < (_parent.earthWidth - 2))) && ((podY + _loc2) > -1)) && ((podY + _loc2) < (_parent.earthHeight - 2))) {
_parent.reloadTile(podX + _loc3, podY + _loc2);
}
_loc2++;
}
_loc3++;
}
}
layer = 9988777000;
chunkCount = 0;
count = 10;
explosions = 40;
dispersal = 2;
_parent.SFXdynamite.start(0, 1);
Symbol 1753 MovieClip [itemDynamiteMC] Frame 2
addExplosion();
Symbol 1753 MovieClip [itemDynamiteMC] Frame 3
addExplosion();
if (count < explosions) {
gotoAndPlay (2);
} else {
removeTiles();
_parent.wipe = false;
stop();
if (_parent.gameMode != 11) {
_parent.gotoAndStop("mainFrame");
}
this.unloadMovie();
}
Symbol 1756 MovieClip [mothershipMC] Frame 15
_parent.SFXmothershipArrive.start(0, 1);
Symbol 1756 MovieClip [mothershipMC] Frame 25
_parent.SFXmothershipIdle.start(0, 1);
Symbol 1756 MovieClip [mothershipMC] Frame 54
_parent.atvMC._visible = 1;
_parent.fuelTankMC._visible = 1;
_parent.hpMC._visible = 1;
_parent.scoreMC._visible = 1;
_parent.droppedOff = true;
_parent.wipe = false;
_parent.gotoAndStop("mainFrame");
Symbol 1756 MovieClip [mothershipMC] Frame 84
_parent.SFXmothershipLeave.start(0, 1);
Symbol 1756 MovieClip [mothershipMC] Frame 94
stop();
this.removeMovieClip();
Symbol 1768 MovieClip Frame 1
while (rnd == 1) {
rnd = random(4) + 1;
}
gotoAndPlay(rnd);
Symbol 1768 MovieClip Frame 2
while (rnd == 2) {
rnd = random(4) + 1;
}
gotoAndPlay(rnd);
Symbol 1768 MovieClip Frame 3
while (rnd == 3) {
rnd = random(4) + 1;
}
gotoAndPlay(rnd);
Symbol 1768 MovieClip Frame 4
while (rnd == 4) {
rnd = random(4) + 1;
}
gotoAndPlay(rnd);
Symbol 1769 MovieClip [trans_overlayMC] Frame 1
rnd = random(3) - 1;
s1._alpha = s1._alpha + rnd;
s2._alpha = s2._alpha + rnd;
if (s1._alpha < 15) {
s1._alpha++;
s2._alpha++;
} else if (s1._alpha > 25) {
s1._alpha--;
s2._alpha--;
}
Symbol 1776 MovieClip Frame 1
chunkCount = 0;
_parent.attachMovie("flashFX", "flashFX", 6660);
_parent.shakeGround(10);
_parent._parent._parent._parent.SFXsatanP2Breakout.start(0, 1);
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1776 MovieClip Frame 1
onClipEvent (enterFrame) {
var i = 0;
while (i < 40) {
if (_parent._parent._parent._parent._parent.optChunks) {
_parent._parent._parent._parent.attachMovie("skullChunkSlowMC", "chunkMC" + _parent.chunkCount, 123000 + _parent.chunkCount);
with (eval ("_parent._parent._parent._parent.chunkMC" + _parent.chunkCount)) {
_x = (_parent.satan._x - 140) + random(150);
_y = (_parent.satan._y + 150) + random(100);
}
_parent.chunkCount++;
}
i++;
}
}
Symbol 1776 MovieClip Frame 80
_parent.attachMovie("flashFX", "flashFX", 6660);
_parent.shakeGround(10);
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1776 MovieClip Frame 80
onClipEvent (enterFrame) {
var i = 0;
while (i < 40) {
if (_parent._parent._parent._parent._parent.optChunks) {
_parent._parent._parent._parent.attachMovie("skullChunkSlowMC", "chunkMC" + _parent.chunkCount, 123000 + _parent.chunkCount);
with (eval ("_parent._parent._parent._parent.chunkMC" + _parent.chunkCount)) {
_x = _parent.satan._x + random(125);
_y = (_parent.satan._y + 150) + random(40);
}
_parent.chunkCount++;
}
i++;
}
}
Symbol 1776 MovieClip Frame 109
stop();
chunkCount = 0;
_parent.doneBreakout();
Symbol 1799 MovieClip Frame 1
_parent.shakeGround(4);
chunkCount = 0;
var i = 0;
while (i < 5) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
_x = (_parent.satan._x + 50) + random(30);
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1799 MovieClip Frame 21
_parent.shakeGround(4);
var i = 0;
while (i < 5) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
_x = (_parent.satan._x + 50) + random(30);
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1812 MovieClip Frame 16
stop();
_parent.gotoAndStop(_parent.mod);
Symbol 1822 MovieClip Frame 18
stop();
Symbol 1830 MovieClip Frame 50
stop();
Symbol 1849 MovieClip Frame 6
_parent._parent._parent._parent.SFXsatanP2Extend.start(0, 1);
Symbol 1849 MovieClip Frame 25
_parent.shakeGround(4);
chunkCount = 0;
if (_parent.mod == "walkLeft") {
dir = "left";
} else {
dir = "right";
}
var i = 0;
while (i < 5) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
if (dir == "left") {
_x = (_parent.satan._x + 150) + random(30);
} else {
_x = (_parent.satan._x + -50) + random(30);
}
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1849 MovieClip Frame 55
_parent._parent._parent._parent.SFXsatanP2Retract.start(0, 1);
_parent._parent._parent._parent.SFXsatanP2Attack.start(0, 1);
Symbol 1849 MovieClip Frame 57
_parent.shakeGround(4);
chunkCount = 0;
var i = 0;
while (i < 40) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
if (dir == "left") {
_x = (_parent.satan._x + -100) + random(30);
} else {
_x = (_parent.satan._x + 200) + random(30);
}
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1849 MovieClip Frame 115
_parent.doneMelee();
Symbol 1851 MovieClip Frame 69
stop();
Symbol 1872 MovieClip Frame 35
_parent._parent._parent._parent.SFXsatanP2Fireball.start(0, 1);
Symbol 1872 MovieClip Frame 40
_parent._parent._parent.attachMovie("satanP2_fireball", "fireballMC", 6670000);
if (_parent.mod == "walkRight") {
xAdj = 25;
} else {
xAdj = 0;
}
with (_parent._parent._parent.fireballMC) {
_x = (_parent.satan._x + 60) + xAdj;
_y = _parent.satan._y + 85;
_xscale = 10;
_yscale = 10;
}
Symbol 1872 MovieClip Frame 90
_parent.doneRanged();
Symbol 1895 MovieClip Frame 1
_parent.shakeGround(4);
_parent._parent._parent._parent.SFXsatanP2Breakout.start(0, 1);
Symbol 1895 MovieClip Frame 68
_parent.shakeGround(4);
chunkCount = 0;
if (_parent.mod == "walkRight") {
xAdj = 40;
} else {
xAdj = 0;
}
var i = 0;
while (i < 80) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkSlowMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
_x = ((_parent.satan._x + -20) + random(100)) + xAdj;
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1895 MovieClip Frame 110
_parent._parent._parent._parent.SFXsatanP1Damage2.start(0, 1);
Symbol 1895 MovieClip Frame 170
_parent._parent._parent._parent.SFXsatanP1Damage.start(0, 1);
Symbol 1895 MovieClip Frame 238
_parent.shakeGround(4);
chunkCount = 0;
if (_parent.mod == "walkRight") {
xAdj = 40;
} else {
xAdj = 0;
}
var i = 0;
while (i < 160) {
if (_parent._parent._parent._parent.optChunks) {
_parent._parent._parent.attachMovie("skullChunkSlowMC", "chunkMC" + chunkCount, 123000 + chunkCount);
with (eval ("_parent._parent._parent.chunkMC" + chunkCount)) {
_x = ((_parent.satan._x + -60) + random(200)) + xAdj;
_y = (_parent.satan._y + 190) + random(10);
}
chunkCount++;
}
i++;
}
Symbol 1895 MovieClip Frame 300
_parent._parent._parent.attachMovie("winGameFX", "winGameFX", 666000700000);
Symbol 1895 MovieClip Frame 370
stop();
_parent.doneDeath();
Symbol 1896 MovieClip [satanP2] Frame 1
function changeDir() {
dirTimer = 0;
if (_parent._parent._parent.atvMC._x > ((_parent._x + _parent._parent._x) + 75)) {
if (mod != "walkRight") {
turnAroundRight();
}
} else if (mod != "walkLeft") {
turnAroundLeft();
}
}
function turnAroundLeft() {
gotoAndStop (4);
mod = "walkLeft";
}
function turnAroundRight() {
gotoAndStop (5);
mod = "walkRight";
}
function doneBreakout() {
_parent._parent._parent.changeBGM("core", 50);
_parent._parent._parent.lastTransmission = 12;
_parent._parent._parent.gotoAndStop("transmissionFrame");
}
function startMelee() {
attackDamageTimer = 1000;
if (mod == "walkLeft") {
gotoAndStop (6);
} else if (mod == "walkRight") {
gotoAndStop (7);
}
}
function doneMelee() {
gotoAndStop(mod);
}
function startRanged() {
attackDamageTimer = 1000;
if (mod == "walkLeft") {
gotoAndStop (8);
} else if (mod == "walkRight") {
gotoAndStop (9);
}
}
function doneRanged() {
gotoAndStop(mod);
}
function shakeGround(i) {
_root.attachMovie("shake2FX", "shake2FX", 113000);
}
function collisionCheck() {
damageTimer++;
if (damageTimer > 15) {
if (_parent.map.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((50 * radMod) * damMod);
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel + 15;
}
}
}
function collisionCheckMelee() {
attackDamageTimer++;
if (attackDamageTimer > 10) {
if (meleeMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
attackDamageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((200 * radMod) * damMod);
if (meleeMap._currentframe > 42) {
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel + 20;
} else {
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel - 20;
}
if (mod == "walkLeft") {
_parent._parent._parent.atv.xVel = _parent._parent._parent.atv.xVel - 20;
} else if (mod == "walkRight") {
_parent._parent._parent.atv.xVel = _parent._parent._parent.atv.xVel + 20;
}
}
}
}
function collisionCheckRanged() {
rangedAttackDamageTimer++;
if (rangedAttackDamageTimer > 10) {
if (_parent._parent.fireballMC.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
rangedAttackDamageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((100 * radMod) * damMod);
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel + 20;
}
}
}
function damage(i) {
i = int(i);
hp = hp - i;
_parent._parent._parent.satanHPBar.gotoAndStop(int((hp / _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP2Hp) * 100));
_parent._parent._parent.satanHPBar.hpTextMC.hpText.text = (hp + "/") + _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP2Hp;
_parent._parent._parent.satanHPBar.attachMovie("satanDamageFX", "satanDamageFX", 666);
if (random(2) == 0) {
_parent._parent._parent.SFXsatanP1Damage.start(0, 1);
} else {
_parent._parent._parent.SFXsatanP1Damage2.start(0, 1);
}
if (hp <= 0) {
startDeath();
}
}
function attackDynamite() {
if (criticalMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(120);
} else if (damageMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(60);
}
}
function attackC4() {
if (criticalMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(240);
} else if (damageMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(120);
} else if (extendedMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(60);
}
}
function startDeath() {
_parent._parent._parent.changeBGM("core", 0);
_parent._parent._parent.satanHPBar.removeMovieClip();
if (mod == "walkLeft") {
gotoAndStop (10);
} else {
gotoAndStop (11);
}
}
function doneDeath() {
_parent._parent._parent.satanDead = true;
_parent._parent._parent.gotoAndStop("winFrame");
}
walkSpeed = 4;
mod = "walkRight";
dirTimer = 0;
damageTimer = 1000;
attackDamageTimer = 1000;
rangedAttackDamageTimer = 1000;
hp = _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP2Hp;
count = 0;
radMod = _parent._parent._parent.atv.radiatorCooling[_parent._parent._parent.atv.radiator];
damMod = _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP2dam;
_parent._parent._parent.satanHPBar.gotoAndStop(int(hp / 20));
_parent._parent._parent.satanHPBar.hpTextMC.hpText.text = (hp + "/") + _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP2Hp;
stop();
Symbol 1896 MovieClip [satanP2] Frame 2
stop();
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 2
onClipEvent (enterFrame) {
_parent._parent._x = _parent._parent._x - _parent.walkSpeed;
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 2
onClipEvent (enterFrame) {
_parent.dirTimer++;
if (_parent.dirTimer > 15) {
_parent.changeDir();
}
if ((_parent._parent._x < -35) && (_parent.mod == "walkLeft")) {
_parent.turnAroundRight();
} else if ((_parent._parent._x > 1550) && (_parent.mod == "walkRight")) {
_parent.turnAroundLeft();
} else {
_parent.count++;
if (_parent.count == 120) {
_parent.count = random(40);
if (random(2) == 0) {
_parent.startMelee();
} else {
_parent.startRanged();
}
}
}
_parent.collisionCheck();
_parent.collisionCheckRanged();
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 3
onClipEvent (enterFrame) {
_parent._parent._x = _parent._parent._x + _parent.walkSpeed;
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 6
onClipEvent (enterFrame) {
_parent.collisionCheck();
_parent.collisionCheckMelee();
_parent.collisionCheckRanged();
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 8
onClipEvent (enterFrame) {
_parent.collisionCheck();
_parent.collisionCheckRanged();
}
Symbol 1896 MovieClip [satanP2] Frame 12
var waitTimer = 0;
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1896 MovieClip [satanP2] Frame 12
onClipEvent (enterFrame) {
_parent.waitTimer++;
if (_parent.waitTimer > 30) {
_parent._parent._parent._parent.gotoAndStop("winFrame");
}
}
Symbol 1898 MovieClip Frame 1
chunkCount = 0;
_parent.shakeGround(10);
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1898 MovieClip Frame 1
onClipEvent (enterFrame) {
if (_parent._parent._parent._parent._parent.optChunks) {
_parent._parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + _parent.chunkCount, 123000 + _parent.chunkCount);
with (eval ("_parent._parent._parent._parent.chunkMC" + _parent.chunkCount)) {
_x = (_parent.satan._x + 25) + random(100);
_y = (_parent.satan._y + 190) + random(20);
}
_parent.chunkCount++;
}
}
Symbol 1898 MovieClip Frame 10
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 20
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 30
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 40
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 50
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 60
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 70
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 80
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 90
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 100
_parent.shakeGround(10);
_parent._parent._parent._parent.SFXsatanLaugh.start(0, 1);
Symbol 1898 MovieClip Frame 110
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 120
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 130
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 140
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 150
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 160
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 170
_parent.shakeGround(10);
Symbol 1898 MovieClip Frame 220
stop();
_parent.doneBreakout();
Symbol 1908 MovieClip Frame 12
stop();
_parent.gotoAndStop(_parent.mod);
Symbol 1938 MovieClip Frame 57
_parent.doneMelee();
Symbol 1949 MovieClip Frame 33
stop();
Symbol 1950 MovieClip Frame 7
angle = random(180) - 135;
dir = random(2);
if (dir == 0) {
dir = -1;
}
dir = dir * 4;
tracer._rotation = angle;
Symbol 1950 MovieClip Frame 35
laser._rotation = angle;
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1950 MovieClip Frame 35
onClipEvent (enterFrame) {
_parent.laser._rotation = _parent.laser._rotation + _parent.dir;
}
Symbol 1950 MovieClip Frame 70
laser._rotation = angle;
Symbol 1950 MovieClip Frame 76
_parent.doneRanged();
Symbol 1954 MovieClip Frame 1
chunkCount = 0;
_parent.shakeGround(10);
_parent._parent._parent._parent.SFXsatanP1Sink.start(0, 1);
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1954 MovieClip Frame 1
onClipEvent (enterFrame) {
if (_parent._parent._parent._parent._parent.optChunks) {
_parent._parent._parent._parent.attachMovie("skullChunkMC", "chunkMC" + _parent.chunkCount, 123000 + _parent.chunkCount);
with (eval ("_parent._parent._parent._parent.chunkMC" + _parent.chunkCount)) {
_x = (_parent.satan._x + 25) + random(100);
_y = (_parent.satan._y + 190) + random(20);
}
_parent.chunkCount++;
}
}
Symbol 1954 MovieClip Frame 10
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 20
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 30
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 40
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 50
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 60
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 70
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 80
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 90
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 100
_parent.shakeGround(10);
Symbol 1954 MovieClip Frame 143
stop();
_parent.doneDeath();
Symbol 1955 MovieClip [satanP1] Frame 1
function changeDir() {
dirTimer = 0;
if (_parent._parent._parent.atvMC._x > ((_parent._x + _parent._parent._x) + 75)) {
if (mod != "walkRight") {
turnAroundRight();
}
} else if (mod != "walkLeft") {
turnAroundLeft();
}
}
function turnAroundLeft() {
gotoAndStop (4);
mod = "walkLeft";
}
function turnAroundRight() {
gotoAndStop (5);
mod = "walkRight";
}
function doneBreakout() {
gotoAndStop(mod);
}
function startMelee() {
attackDamageTimer = 1000;
if (mod == "walkLeft") {
gotoAndStop (6);
} else if (mod == "walkRight") {
gotoAndStop (7);
}
}
function doneMelee() {
gotoAndStop(mod);
}
function startRanged() {
attackDamageTimer = 1000;
if (mod == "walkLeft") {
gotoAndStop (8);
} else if (mod == "walkRight") {
gotoAndStop (9);
}
}
function doneRanged() {
gotoAndStop(mod);
}
function shakeGround(i) {
_root.attachMovie("shakeFX", "shakeFX", 113000);
}
function collisionCheck() {
damageTimer++;
if (damageTimer > 15) {
if (_parent.map.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((25 * radMod) * damMod);
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel + 10;
}
}
}
function collisionCheckMelee() {
attackDamageTimer++;
if (attackDamageTimer > 10) {
if (meleeMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
attackDamageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((100 * radMod) * damMod);
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel - 10;
if (mod == "walkLeft") {
_parent._parent._parent.atv.xVel = _parent._parent._parent.atv.xVel - 15;
} else if (mod == "walkRight") {
_parent._parent._parent.atv.xVel = _parent._parent._parent.atv.xVel + 15;
}
}
}
}
function collisionCheckRanged() {
attackDamageTimer++;
if (attackDamageTimer > 10) {
if (ranged.laser.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
attackDamageTimer = 0;
_parent._parent._parent.SFXcrash.start(0, 1);
_parent._parent._parent.atv.damage((50 * radMod) * damMod);
_parent._parent._parent.atv.yVel = _parent._parent._parent.atv.yVel + 20;
}
}
}
function damage(i) {
i = int(i);
hp = hp - i;
_parent._parent._parent.satanHPBar.gotoAndStop(int((hp / _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP1Hp) * 100));
_parent._parent._parent.satanHPBar.hpTextMC.hpText.text = (hp + "/") + _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP1Hp;
_parent._parent._parent.satanHPBar.attachMovie("satanDamageFX", "satanDamageFX", 666);
if (random(2) == 0) {
_parent._parent._parent.SFXsatanP1Damage.start(0, 1);
} else {
_parent._parent._parent.SFXsatanP1Damage2.start(0, 1);
}
if (hp <= 0) {
startDeath();
}
}
function attackDynamite() {
if (criticalMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(120);
} else if (damageMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(60);
}
}
function attackC4() {
if (criticalMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(240);
} else if (damageMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(120);
} else if (extendedMap.hitTest(_parent._parent._parent.atvMC._x, _parent._parent._parent.atvMC._y, true)) {
damage(60);
}
}
function startDeath() {
_parent._parent._parent.changeBGM("core", 0);
_parent._parent._parent.satanHPBar._visible = 0;
if (mod == "walkLeft") {
gotoAndStop (10);
} else {
gotoAndStop (11);
}
}
function doneDeath() {
gotoAndStop (12);
}
walkSpeed = 4;
mod = "walkRight";
dirTimer = 0;
damageTimer = 1000;
attackDamageTimer = 1000;
hp = _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP1Hp;
count = 0;
radMod = _parent._parent._parent.atv.radiatorCooling[_parent._parent._parent.atv.radiator];
damMod = _parent._parent._parent.difficulty[_parent._parent._parent.lvl].satanP1dam;
stop();
Symbol 1955 MovieClip [satanP1] Frame 2
stop();
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 2
onClipEvent (enterFrame) {
_parent._parent._x = _parent._parent._x - _parent.walkSpeed;
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 2
onClipEvent (enterFrame) {
_parent.dirTimer++;
if (_parent.dirTimer > 80) {
_parent.changeDir();
}
if ((_parent._parent._x < -35) && (_parent.mod == "walkLeft")) {
_parent.turnAroundRight();
} else if ((_parent._parent._x > 1550) && (_parent.mod == "walkRight")) {
_parent.turnAroundLeft();
} else {
_parent.count++;
if (_parent.count == 120) {
_parent.count = random(40);
if (random(2) == 0) {
_parent.startMelee();
} else {
_parent.startRanged();
}
}
}
_parent.collisionCheck();
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 3
onClipEvent (enterFrame) {
_parent._parent._x = _parent._parent._x + _parent.walkSpeed;
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 6
onClipEvent (enterFrame) {
_parent.collisionCheck();
_parent.collisionCheckMelee();
}
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 8
onClipEvent (enterFrame) {
_parent.collisionCheck();
_parent.collisionCheckRanged();
}
Symbol 1955 MovieClip [satanP1] Frame 12
var waitTimer = 0;
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1955 MovieClip [satanP1] Frame 12
onClipEvent (enterFrame) {
_parent.waitTimer++;
if (_parent.waitTimer > 60) {
_parent._parent._parent._parent.preBattleP2();
}
}
Symbol 1959 MovieClip [skullChunkMC_0] Frame 27
stop();
Symbol 1962 MovieClip [skullChunkMC_1] Frame 27
stop();
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1973 MovieClip Frame 1
onClipEvent (enterFrame) {
_parent.gotoAndPlay(random(6) + 1);
}
Symbol 1974 MovieClip [satanP2_fireball] Frame 1
count = 0;
yVel = -17;
_parent._parent.SFXsatanP2Fireloop.start(0, 2);
if (_parent.satan.satanP2.mod == "walkLeft") {
xVel = (-random(4)) - 4;
} else {
xVel = random(4) + 4;
}
Symbol 1974 MovieClip [satanP2_fireball] Frame 2
stop();
Instance of Symbol 159 MovieClip [emptyMC] in Symbol 1974 MovieClip [satanP2_fireball] Frame 2
onClipEvent (enterFrame) {
_parent.yVel = _parent.yVel + 1;
_parent._x = _parent._x + _parent.xVel;
_parent._y = _parent._y + _parent.yVel;
if ((_parent._y > (_parent._parent.satan._y + 180)) && (_parent.yVel > 0)) {
_parent.yVel = _parent.yVel * -0.9;
}
_parent._rotation = _parent._rotation + (_parent.xVel / 2);
_parent.count++;
if (_parent.count > 120) {
_parent._xscale = _parent._xscale - 5;
_parent._yscale = _parent._yscale - 5;
if (_parent._xscale < 5) {
_parent._parent._parent.SFXsatanP2Fireloop.stop();
_parent.removeMovieClip();
_parent.unloadMovie();
}
} else if (_parent._xscale < 100) {
_parent._xscale = _parent._xscale + 20;
_parent._yscale = _parent._yscale + 20;
}
}
Symbol 2053 MovieClip Frame 1
stop();
Instance of Symbol 158 MovieClip [FScrollBarSymbol] in Symbol 2053 MovieClip Frame 2
/* no clip actions */
Instance of Symbol 89 MovieClip [FUIComponentSymbol] in Symbol 2053 MovieClip Frame 2
/* no clip actions */