Frame 1
this.onEnterFrame = function () {
if ((pole.text = "pole")) {
this.stop();
}
var _local2 = Math.floor((this.getBytesLoaded() / this.getBytesTotal()) * 1000) / 10;
pole.text = _local2 + " %";
polosa._xscale = _local2;
if (this.getBytesLoaded() == this.getBytesTotal()) {
this.play();
delete this.onEnterFrame;
}
};
Frame 2
stop();
garbage_mc.swapDepths(9000);
var garbage_sound = new Sound(garbage_mc);
garbage_sound.stop();
garbage_mc.removeMovieClip();
ramka_mc.swapDepths(9000);
ramka_mc._x = 0;
ramka_mc._y = 0;
VGCL.Global.rootMovie_mc = _root;
VGCL.Global.menuDepth = 10;
VGCL.Global.depthGame = 9;
VGCL.Global.idNameGamePanel = "gamePanel";
VGCL.Global.playerAOidName = "plane2";
VGCL.Global.keyPlayerDown = 40;
VGCL.Global.keyPlayerUp = 38;
VGCL.Global.keyPlayerLeft = 37;
VGCL.Global.keyPlayerRight = 39;
VGCL.Global.keyPlayerFire = 32;
VGCL.Global.posEnemyStartX = 650;
var menuStart = (new VGCL.SMenu());
var pageStart = menuStart.newPage("pageStart", "START");
var pageHowToPlay = menuStart.newPage("pageHowToPlay", "HOWTOPLAY");
var pageInstructions = menuStart.newPage("pageInstructions", "INSTRUCT");
var pageControls = menuStart.newPage("pageControls", "CONTROLS");
var pageControls = menuStart.newPage("pageControls", "CONTROLS");
var pageSettings = menuStart.newPage("pageSettings", "SETTINGS");
var pageCredits = menuStart.newPage("pageCredits", "CREDITS");
var pageScore = menuStart.newPage("pageScore", "SCORE");
var pageGameOver = menuStart.newPage("pageGameOver", "GAMEOVER");
var pageLevelEnd = menuStart.newPage("pageLevelEnd", "LEVELEND");
with (pageStart) {
attachBtn("play_btn", menuStart, menuStart.exit, "STARTGAME");
attachBtn("howtoplay_btn", menuStart, menuStart.goto, "HOWTOPLAY");
attachBtn("settings_btn", menuStart, menuStart.goto, "SETTINGS", "mettings");
attachBtn("credits_btn", menuStart, menuStart.goto, "CREDITS");
attachBtn("score_btn", menuStart, menuStart.goto, "SCORE");
}
with (pageHowToPlay) {
attachBtn("instructions_btn", menuStart, menuStart.goto, "INSTRUCT");
attachBtn("controls_btn", menuStart, menuStart.goto, "CONTROLS");
attachBtn("back_btn", menuStart, menuStart.goto, "START");
}
with (pageInstructions) {
attachBtn("back_btn", menuStart, menuStart.goto, "HOWTOPLAY");
}
with (pageControls) {
attachBtn("back_btn", menuStart, menuStart.goto, "HOWTOPLAY");
}
with (pageCredits) {
attachBtn("back_btn", menuStart, menuStart.goto, "START");
}
with (pageScore) {
pageScore.onShowPage = function () {
var _local3 = new VGCL.Score();
var _local4 = null;
var _local2 = 0;
while (_local2 < _local3.score_array.length) {
_local4 = this.page_mc.attachMovie("scoreArea", "sa" + _local2, 1 + _local2, {_x:70, _y:45 + (_local2 * 25)});
_local4.pname.text = ((_local2 + 1) + ". ") + _local3.score_array[_local2].pname;
_local4.pscore.text = _local3.score_array[_local2].pscore;
_local2++;
}
};
attachBtn("back_btn", menuStart, menuStart.goto, "START");
}
with (pageSettings) {
pageSettings.onShowPage = function () {
this.rbg_array.vq.selectedRNumb = VGCL.Settings.vQualityNumb;
this.cb_array.music_cb.isChecked = VGCL.Settings.isMusicPlay;
};
attachBtn("ok_btn", menuStart, function () {
this.goto("START");
VGCL.Settings.apply();
});
attachBtn("cancel_btn", menuStart, function () {
this.goto("START");
VGCL.Settings.reset();
});
attachRadio("vq", ["a_rb", "b_rb", "c_rb"], VGCL.Settings.__get__vQualityNumb(), function (_arg) {
VGCL.Settings.__set__vQualityNumb(_arg);
_quality = VGCL.Settings.newQualityStr;
});
attachCBox("music_cb", VGCL.Settings.__get__isMusicPlay(), function (_arg) {
VGCL.Settings.__set__isMusicPlay(_arg);
});
}
with (pageGameOver) {
attachBtn("ok_btn", menuStart, function () {
var _local2 = new VGCL.Score();
_local2.addScore(this.getActiveMC().name_txt.text, this.getActiveMC().score_txt.text);
this.goto("SCORE");
});
}
with (pageLevelEnd) {
attachBtn("continue_btn", menuStart, menuStart.exit, "NEXTLEVEL");
}
var myGame = (new VGCL.Game());
myGame.addStartMenu(menuStart);
VGCL.Global.idNameExp_array.push("explosion");
VGCL.Global.idNameExp_array.push("explosion2");
VGCL.Global.idNameExp_array.push("explosion3");
VGCL.Global.idNameExp_array.push("explosion4");
var levelA = (new VGCL.Level());
var pKeys_array = new Array();
var pInit_array = new Array();
pKeys_array.UP = VGCL.Global.keyPlayerUp;
pKeys_array.DOWN = VGCL.Global.keyPlayerDown;
pKeys_array.LEFT = VGCL.Global.keyPlayerLeft;
pKeys_array.RIGHT = VGCL.Global.keyPlayerRight;
pKeys_array.FIRE = VGCL.Global.keyPlayerFire;
pInit_array.nameID = VGCL.Global.playerAOidName;
pInit_array.nameInst = "PLAYER1_MC";
pInit_array.depth = VGCL.Global.depthPlayerAO;
pInit_array.posX = 100;
pInit_array.posY = 100;
var levelAPlayer = (new VGCL.AO.PLAYER.Horizontal(pInit_array, pKeys_array));
pInit_array.nameID = "rocket2";
pInit_array.bltNum = 40;
var pWC = (new VGCL.SO.WpnCtrl());
pWC.addWpn(new VGCL.SO.WpnMGS(pInit_array));
pInit_array.nameID = "pulka2";
pWC.addWpn(new VGCL.SO.WpnMGS(pInit_array));
levelAPlayer.addWpnCtrl(pWC);
pInit_array.nameID = "gamePanel";
levelAPlayer.addPanel(new VGCL.SO.PnlTxt(pInit_array));
pInit_array.nameID = "progressA";
levelA.addSO(new VGCL.SO.PnlProgress(pInit_array));
levelA.addAO(levelAPlayer);
pInit_array.nameID = "rocket2";
pInit_array.bltNum = 40;
var pWC2 = (new VGCL.SO.WpnCtrl());
pWC2.addWpn(new VGCL.SO.WpnMGS(pInit_array));
pInit_array.nameID = "pulka2";
pWC2.addWpn(new VGCL.SO.WpnMGS(pInit_array));
levelAPlayer.addWpnCtrl(pWC2);
pInit_array.nameID = "Helicopter2";
var type = null;
var i = 0;
while (i < 7) {
if (i > 3) {
pInit_array.fire = true;
}
type = random(3);
pInit_array.posX = 900 + (i * 1500);
pInit_array.posY = 80;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
switch (type) {
case 0 :
pInit_array.posX = pInit_array.posX + 100;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
pInit_array.posX = pInit_array.posX + 100;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
break;
case 1 :
pInit_array.posX = pInit_array.posX - 100;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
pInit_array.posX = pInit_array.posX + 200;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
break;
case 2 :
pInit_array.posX = pInit_array.posX - 100;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
pInit_array.posX = pInit_array.posX - 100;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorLin(pInit_array));
}
i++;
}
pInit_array.nameID = "plane16";
pInit_array.dir = 1;
pInit_array.fire = false;
var i = 0;
while (i < 10) {
if (i > 3) {
pInit_array.fire = true;
}
type = random(2);
pInit_array.posX = 1900 + (i * 700);
switch (type) {
case 0 :
pInit_array.posY = 0;
levelA.addAO(new VGCL.AO.EHorSin(pInit_array));
pInit_array.posX = pInit_array.posX + 200;
pInit_array.posY = pInit_array.posY + 100;
levelA.addAO(new VGCL.AO.EHorSin(pInit_array));
break;
case 1 :
pInit_array.posY = 260;
levelA.addAO(new VGCL.AO.EHorSin(pInit_array));
pInit_array.posX = pInit_array.posX - 200;
pInit_array.posY = pInit_array.posY - 100;
levelA.addAO(new VGCL.AO.EHorSin(pInit_array));
}
i++;
}
pInit_array.nameID = "plane11";
pInit_array.posX = 10200;
pInit_array.posY = 10 + random(Stage.height - 50);
pInit_array.isLvlEnd = true;
levelA.addAO(new VGCL.AO.EMainA(pInit_array));
pInit_array.isLvlEnd = false;
pInit_array.nameID = "ground";
levelA.addSO(new VGCL.SO.Back(pInit_array));
pInit_array.nameID = "ground";
pInit_array.delay = 3;
pInit_array.nameID = "bg1";
levelA.addSO(new VGCL.SO.BgrS(pInit_array));
pInit_array.speed = 5;
levelA.addSO(new VGCL.SO.Scroller(pInit_array));
var BgrMul = (new VGCL.SO.BgrMulA());
levelA.addSO(BgrMul);
pInit_array.nameID = "bgA1";
pInit_array.posX = 700;
pInit_array.posY = 360;
BgrMul.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "bgA2";
pInit_array.posX = pInit_array.posX + 1900;
pInit_array.posY = 370;
BgrMul.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "bgA3";
pInit_array.posX = pInit_array.posX + 1900;
pInit_array.posY = 370;
BgrMul.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.soundID = "SLoop1";
levelA.addSO(new VGCL.SO.SLoop(pInit_array));
myGame.addLevel(levelA);
var levelB = (new VGCL.Level());
pInit_array.isLvlEnd = false;
pInit_array.nameID = "heli";
var i = 0;
while (i < 10) {
pInit_array.posX = 800 + (i * 1200);
type = random(6);
switch (type) {
case 0 :
pInit_array.isFromTop = true;
pInit_array.initX = 150;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX + 100;
pInit_array.initX = 300;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX + 100;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
break;
case 1 :
pInit_array.isFromTop = false;
pInit_array.initX = 150;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX + 100;
pInit_array.initX = 300;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX + 100;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
break;
case 2 :
pInit_array.isFromTop = false;
pInit_array.initX = 150;
pInit_array.posX = pInit_array.posX + 200;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX - 100;
pInit_array.initX = 300;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX - 100;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
break;
case 3 :
pInit_array.isFromTop = true;
pInit_array.initX = 150;
pInit_array.posX = pInit_array.posX + 200;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX - 100;
pInit_array.initX = 300;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.posX = pInit_array.posX - 100;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
break;
case 4 :
pInit_array.isFromTop = true;
pInit_array.initX = 150;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.isFromTop = false;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
break;
case 5 :
pInit_array.isFromTop = false;
pInit_array.initX = 150;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
pInit_array.isFromTop = true;
pInit_array.initX = 450;
levelB.addAO(new VGCL.AO.EHorBT(pInit_array));
}
i++;
}
pInit_array.nameID = "plane20";
pInit_array.dir = 0;
var i = 0;
while (i < 12) {
if (i > 3) {
pInit_array.fire = true;
}
type = random(2);
pInit_array.posX = 1900 + (i * 700);
switch (type) {
case 0 :
pInit_array.posY = 0;
levelB.addAO(new VGCL.AO.EHorSin(pInit_array));
pInit_array.posX = pInit_array.posX + 200;
pInit_array.posY = pInit_array.posY + 100;
levelB.addAO(new VGCL.AO.EHorSin(pInit_array));
break;
case 1 :
pInit_array.posY = 260;
levelB.addAO(new VGCL.AO.EHorSin(pInit_array));
pInit_array.posX = pInit_array.posX - 200;
pInit_array.posY = pInit_array.posY - 100;
levelB.addAO(new VGCL.AO.EHorSin(pInit_array));
}
i++;
}
pInit_array.nameID = "Helicopter7";
pInit_array.posX = 12000;
pInit_array.posY = 10 + random(Stage.height - 50);
pInit_array.isLvlEnd = true;
levelB.addAO(new VGCL.AO.EMainC(pInit_array));
pInit_array.isLvlEnd = false;
levelB.addAO(levelAPlayer);
pInit_array.nameID = "ground2";
pInit_array.delay = 1;
levelB.addSO(new VGCL.SO.Back(pInit_array));
pInit_array.nameID = "bg2";
levelB.addSO(new VGCL.SO.BgrS(pInit_array));
levelB.addSO(new VGCL.SO.Scroller(pInit_array));
var BgrMulB = (new VGCL.SO.BgrMulA());
levelB.addSO(BgrMulB);
pInit_array.nameID = "bgB2";
pInit_array.posX = 700;
pInit_array.posY = 370;
BgrMulB.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "bgB3";
pInit_array.posX = pInit_array.posX + 1000;
BgrMulB.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "bgB4";
pInit_array.posX = pInit_array.posX + 1000;
BgrMulB.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "bgB5";
pInit_array.posX = pInit_array.posX + 1000;
BgrMulB.addBgr(new VGCL.SO.BgrLin(pInit_array));
pInit_array.nameID = "progressB";
levelB.addSO(new VGCL.SO.PnlProgress(pInit_array));
pInit_array.soundID = "SLoop2";
levelB.addSO(new VGCL.SO.SLoop(pInit_array));
myGame.addLevel(levelB);
var levelC = (new VGCL.Level());
pInit_array.isLvlEnd = false;
pInit_array.nameID = "plane25";
lcLevelAHeliNumb = 10;
var i = 0;
while (i < lcLevelAHeliNumb) {
pInit_array.posX = 800 + (i * 1000);
pInit_array.posY = 10 + random(Stage.height - 50);
levelC.addAO(new VGCL.AO.EHorLR(pInit_array));
i++;
}
pInit_array.nameID = "plane24";
lcLevelAHeliNumb = 10;
var i = 0;
while (i < lcLevelAHeliNumb) {
pInit_array.posX = 800 + (i * 900);
pInit_array.posY = 10 + random(Stage.height - 50);
pInit_array.isLvlEnd = false;
levelC.addAO(new VGCL.AO.EHorSin(pInit_array));
i++;
}
pInit_array.nameID = "plane27";
pInit_array.posX = 800 + (lcLevelAHeliNumb * 900);
pInit_array.posY = 10 + random(Stage.height - 50);
pInit_array.isLvlEnd = true;
levelC.addAO(new VGCL.AO.EMainC(pInit_array));
pInit_array.isLvlEnd = false;
pInit_array.nameID = "progressC";
levelC.addSO(new VGCL.SO.PnlProgress(pInit_array));
levelC.addAO(levelAPlayer);
pInit_array.nameID = "bgC1";
pInit_array.delay = 5;
levelC.addSO(new VGCL.SO.Back(pInit_array));
pInit_array.nameID = "Ground3";
pInit_array.delay = 1;
levelC.addSO(new VGCL.SO.Back(pInit_array));
pInit_array.nameID = "bg3";
levelC.addSO(new VGCL.SO.BgrS(pInit_array));
levelC.addSO(new VGCL.SO.Scroller(pInit_array));
pInit_array.soundID = "SLoop3";
levelC.addSO(new VGCL.SO.SLoop(pInit_array));
myGame.addLevel(levelC);
myGame.begin();
Symbol 34 MovieClip Frame 1
stop();
Instance of Symbol 34 MovieClip in Symbol 35 MovieClip [gamePanel] Frame 1
on (press) {
var sound = new Sound();
if (sound.getVolume()) {
sound.setVolume(0);
this.gotoAndStop(2);
} else {
sound.setVolume(100);
this.gotoAndStop(1);
}
}
Symbol 128 MovieClip Frame 30
stop();
Symbol 132 MovieClip [pageCredits] Frame 1
mail_txt.html = true;
mail_txt.autoSize = true;
mail_txt.htmlText = "<A HREF='mailto:goomagame@yahoo.com'><U>goomagame@yahoo.com</U></A>";
Symbol 324 MovieClip [__Packages.VGCL.SO.WpnMGS] Frame 0
class VGCL.SO.WpnMGS
{
var nameID, blt_array;
function WpnMGS (_init_array) {
nameID = _init_array.nameID;
bltNum = (_init_array.bltNum ? (_init_array.bltNum) : -1);
bltNumInit = bltNum;
}
function init() {
if (VGCL.Game.isGameNew) {
bltNum = bltNumInit;
}
delete blt_array;
blt_array = new Array();
return(true);
}
function fire(_fPosX, _fPosY) {
if (bltNum != -1) {
if (!bltNum) {
return(false);
}
bltNum--;
}
var _local2 = new Array();
_local2.nameID = nameID;
_local2.posX = _fPosX;
_local2.posY = _fPosY;
_local2.power = bltPower;
var _local3 = new VGCL.AO.BltMGS(_local2);
_local3.owner = owner;
blt_array.push(_local3);
VGCL.Game.addAO(_local3);
return(true);
}
function getBltNum() {
var _local3 = blt_array.length;
var _local2 = 0;
while (_local2 < _local3) {
if (blt_array[_local2].isKilled) {
blt_array.splice(_local2, 1);
_local3 = blt_array.length;
} else {
_local2++;
}
}
return(_local3);
}
var bltNum = -1;
var bltNumInit = null;
var bltPower = 1;
var bltMaxOS = 4;
var bltMaxX = 650;
var owner = null;
}
Symbol 325 MovieClip [__Packages.VGCL.Game] Frame 0
class VGCL.Game
{
static var lvl_array, startMenu, game_mc, lvlAO_array, lvlSO_array, lvlCurObj, lvlAdnAO_array, lvlNrstAOx, lvlAdnAONumb;
function Game () {
lvl_array = new Array();
Key.addListener(this);
}
function onKeyDown() {
if (Key.isDown(36)) {
isLvlEnd = true;
}
if (Key.isDown(35)) {
lvlUnload();
startMenu.goto("START");
}
if (Key.isDown(19)) {
isPaused = !isPaused;
}
if (Key.isDown(36)) {
var _local2 = new Array();
_local2.nameID = "AirplaneGreen2";
_local2.nameInst = "EHorLinKKK";
_local2.depth = VGCL.Global.depthEnemyAOFirst + 50;
_local2.posX = 100;
_local2.posY = 100;
var _local3 = new VGCL.AO.EHorLin(_local2);
addAO(_local3);
}
}
function onMenuExit(_arg) {
switch (_arg) {
case "STARTGAME" :
soundPlay(false);
gameReset();
break;
case "NEXTLEVEL" :
}
gameStart();
}
function addStartMenu(_startMenu) {
if (_startMenu instanceof VGCL.SMenu) {
startMenu = _startMenu;
startMenu.addListener(this);
return(true);
}
return(false);
}
function addLevel(_glvl) {
if (_glvl instanceof VGCL.Level) {
_glvl.init();
lvl_array.push(_glvl);
return(true);
}
return(false);
}
static function addAO(_newAO) {
if (game_mc) {
_newAO.init(game_mc);
lvlAO_array.push(_newAO);
return(true);
}
return(false);
}
static function addSO(_newSO) {
if (game_mc) {
_newSO.init(game_mc);
lvlSO_array.push(_newSO);
return(true);
}
return(false);
}
function begin() {
startMenu.goto("START");
soundPlay(true);
}
function soundPlay(_isSound) {
var _local2 = new Sound(VGCL.Global.rootMovie_mc);
if (_isSound) {
_local2.attachSound(soundID);
_local2.start();
if (isSoundLoop) {
_local2.onSoundComplete = function () {
this.start();
};
}
} else {
_local2.stop();
}
}
function gameReset() {
isGameWin = false;
isGameOver = false;
lvlCurNum = 0;
isGameNew = true;
}
function gameStart() {
game_mc = VGCL.Global.rootMovie_mc.createEmptyMovieClip("GAME_MC", VGCL.Global.depthGame);
if (lvlLoad()) {
game_mc.callBackObj = this;
game_mc.onEnterFrame = function () {
this.callBackObj.lvlProcess();
};
} else {
VGCL.GLog.error("Loading lvl field.");
game_mc.removeMovieClip();
}
isGameNew = false;
}
function gameOver() {
delete game_mc.onEnterFrame;
startMenu.goto("GAMEOVER");
startMenu.getActiveMC().score_txt.text = VGCL.Global.score;
if (isGameWin) {
startMenu.getActiveMC().comments_txt.text = "You are Win";
} else {
startMenu.getActiveMC().comments_txt.text = "You are LOSE";
}
VGCL.Global.score = 0;
startMenu.getActiveMC().name_txt.text = "";
lvlUnload();
}
function gameSoundStop() {
var _local1 = new Sound(game_mc);
_local1.stop();
}
function lvlLoad() {
lvlScrlCoord = Stage.width;
if (!lvlCheckExist(lvlCurNum)) {
VGCL.GLog.error(("Level " + (lvlCurNum + 1)) + " dos not exist.");
return(false);
}
lvlCurObj = lvl_array[lvlCurNum];
delete lvlAO_array;
lvlAO_array = new Array();
delete lvlAdnAO_array;
lvlAdnAO_array = new Array();
var _local3 = lvlCurObj.ao_array;
var _local6 = _local3.length;
var _local2 = 0;
while (_local2 < _local6) {
lvlAdnAO_array[_local2] = _local3[_local2];
_local2++;
}
VGCL.Global.posAOLast = lvlAdnAO_array[lvlAdnAO_array.length - 1].posStartX;
delete lvlSO_array;
lvlSO_array = new Array();
var _local4 = lvlCurObj.so_array;
var _local5 = _local4.length;
_local2 = 0;
while (_local2 < _local5) {
lvlSO_array[_local2] = _local4[_local2];
lvlSO_array[_local2].init(game_mc);
_local2++;
}
lvlNrstAOx = lvlAdnAO_array[0].posStartX;
lvlAdnAONumb = lvlAdnAO_array.length;
lvlCheckAO();
return(true);
}
function lvlCheckAO() {
if (lvlAdnAONumb) {
if (lvlScrlCoord > lvlNrstAOx) {
while ((lvlScrlCoord > lvlNrstAOx) && (lvlAdnAO_array.length)) {
var _local2 = lvlAdnAO_array.shift();
if (!_local2.init(game_mc)) {
lvlUnload();
}
lvlAO_array.push(_local2);
lvlNrstAOx = lvlAdnAO_array[0].posStartX;
lvlAdnAONumb = lvlAdnAO_array.length;
}
}
return(true);
}
return(false);
}
function lvlCheckExist(_lvlNum) {
if (lvl_array[_lvlNum] == undefined) {
return(false);
}
return(true);
}
function lvlProcess() {
if (isPaused) {
return(undefined);
}
if (isLvlEnd) {
lvlEnd();
}
if (isGameOver) {
gameOver();
}
var _local2 = null;
var _local3 = null;
for (var _local5 in lvlAO_array) {
_local2 = lvlAO_array[_local5];
if (!_local2.relocate()) {
lvlAO_array.splice(_local5, 1);
}
}
for (var _local6 in lvlAO_array) {
_local2 = lvlAO_array[_local6];
for (var _local4 in lvlAO_array) {
if (_local6 != _local4) {
_local3 = lvlAO_array[_local4];
_local2.process(_local3);
}
}
}
for (var _local6 in lvlSO_array) {
if (!lvlSO_array[_local6].process()) {
lvlSO_array.splice(int(_local6), 1);
}
}
lvlCheckAO();
}
function lvlEnd() {
gameSoundStop();
isLvlEnd = false;
lvlCurNum++;
if (!lvlCheckExist(lvlCurNum)) {
isGameWin = true;
gameOver();
return(undefined);
}
delete game_mc.onEnterFrame;
game_mc.onEnterFrame = function () {
if (Key.isDown(32) || (Key.isDown(13))) {
VGCL.Game.startMenu.exit("NEXTLEVEL");
}
};
startMenu.goto("LEVELEND");
}
function lvlUnload() {
gameSoundStop();
soundPlay(true);
game_mc.removeMovieClip();
}
static var lvlCurNum = 0;
static var lvlScrlCoord = 0;
static var isPaused = false;
static var isLvlEnd = false;
static var isGameOver = false;
static var isGameNew = true;
static var isGameWin = false;
var soundID = "menuLoop";
var isSoundLoop = true;
}
Symbol 326 MovieClip [__Packages.VGCL.Global] Frame 0
class VGCL.Global
{
function Global () {
}
static var score = 0;
static var rootMovie_mc = null;
static var idNameGamePanel = null;
static var idNameExp_array = new Array();
static var menuDepth = 10;
static var depthGame = 9;
static var depthBgrS = 0;
static var depthBgrSMax = 5;
static var depthBack = 6;
static var depthBackMax = 9;
static var depthGamePanel = 1000;
static var depthBgrLin = 2000;
static var depthBgrLinMax = 2100;
static var depthBnsBlt = 2102;
static var depthBnsBltMax = 2200;
static var depthEHorLin = 2202;
static var depthEHorLinMax = 2300;
static var depthBltMGS = 2302;
static var depthBltMGSMax = 2400;
static var depthPnlTxt = 3000;
static var depthPnlTxtMax = 3010;
static var depthEHorSin = 3101;
static var depthEHorSinMax = 3200;
static var depthBgrMul = 3210;
static var depthBgrMulMax = 3300;
static var depthBltLin = 3110;
static var depthBltLinMax = 3200;
static var depthEHorLR = 3200;
static var depthEHorLRMax = 3300;
static var depthPlayerAO = 5000;
static var depthExplosion = 5020;
static var depthExplosionMax = 5100;
static var depthPnlProgress = 5200;
static var depthPnlProgressMax = 5300;
static var playerAOidName = null;
static var keyPlayerUp = null;
static var keyPlayerDown = null;
static var keyPlayerLeft = null;
static var keyPlayerRight = null;
static var keyPlayerFire = null;
static var keyGamePause = null;
static var keyGameExit = null;
static var posEnemyStartX = null;
static var depthEnemyAOFirst = 11;
static var posAOLast = null;
}
Symbol 327 MovieClip [__Packages.VGCL.AO.EHorLin] Frame 0
class VGCL.AO.EHorLin
{
var nameID, depth, posStartX, posStartY, nameInst, posOldX, posOldY;
function EHorLin (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
depth = _init_array.depth;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
isFire = _init_array.fire;
if (isFire == undefined) {
isFire = false;
}
nameInst = "EHorLin" + (depthNum++);
depth = VGCL.Global.depthEHorLin + depthNum;
if (depth >= VGCL.Global.depthEHorLinMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 1;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
var _local2 = ((VGCL.Global.posEnemyStartX > posStartX) ? (posStartX) : (VGCL.Global.posEnemyStartX));
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:_local2, _y:posStartY});
hit_mc = object_mc;
timeLife = 0;
timeFire = random(50) + 50;
return(true);
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
posOldX = object_mc._x;
posOldY = object_mc._y;
object_mc._x = object_mc._x - speedMove;
if (object_mc._x < -50) {
kill();
}
if (!isFire) {
return(true);
}
if ((++timeLife) == timeFire) {
var _local2 = new Array();
_local2.nameID = "pulka2";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
timeFire = (timeLife + random(80)) + 60;
}
return(true);
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 15;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY");
}
var isDie = true;
var isKilled = true;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var scrAmount = 10;
var speedMove = 4;
var timeLife = null;
var timeFire = null;
var isFire = false;
var isVulnerable = true;
var life = null;
}
Symbol 328 MovieClip [__Packages.VGCL.GLog] Frame 0
class VGCL.GLog
{
function GLog () {
}
static function error(_ErrorText) {
trace(("VGE Error: \n" + _ErrorText) + "\n\n");
}
static function info(_InfoText) {
}
}
Symbol 329 MovieClip [__Packages.VGCL.AO.BltLin] Frame 0
class VGCL.AO.BltLin
{
var nameID, posStartX, posStartY, power, nameInst, depth, object_mc;
function BltLin (_init_array) {
nameID = _init_array.nameID;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
power = _init_array.power;
nameInst = "BltLin" + (depthNum++);
depth = VGCL.Global.depthBltLin + depthNum;
if (depth >= VGCL.Global.depthBltLinMax) {
depthNum = 0;
}
dir = _init_array.dir;
if (dir == undefined) {
dir = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:posStartX, _y:posStartY});
object_mc.stop();
switch (dir) {
case 1 :
moveFunc = moveDir_1;
break;
case 2 :
moveFunc = moveDir_2;
break;
default :
moveFunc = moveDir_0;
}
return(true);
}
function moveDir_0() {
object_mc._x = object_mc._x - speedMove;
}
function moveDir_1() {
object_mc._x = object_mc._x - speedMove;
object_mc._y = object_mc._y + speedMove;
}
function moveDir_2() {
object_mc._x = object_mc._x - speedMove;
object_mc._y = object_mc._y - speedMove;
}
function relocate() {
if (isKilled) {
return(false);
}
if (object_mc._x <= posDethX) {
kill();
}
moveFunc();
return(true);
}
function process(_aobj) {
if (!(_aobj.getType() === "AO_PLAYER")) {
} else if (object_mc.hitTest(_aobj.hit_mc)) {
_aobj.life = _aobj.life - power;
_aobj.score = _aobj.score - power;
explosion();
kill();
}
}
function explosion() {
var _local2 = new Array();
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
VGCL.Game.addSO(new VGCL.SO.Explosion(_local2));
}
function kill() {
isDie = (isKilled = true);
object_mc.removeMovieClip();
}
function getType() {
return("AO_BULLET");
}
var isDie = false;
var isKilled = false;
var posDethX = -50;
var speedMove = 6;
static var depthNum = 0;
var dir = 0;
var moveFunc = null;
}
Symbol 330 MovieClip [__Packages.VGCL.SO.Explosion] Frame 0
class VGCL.SO.Explosion
{
var nameID, posStartX, posStartY, nameInst, depth, object_mc;
function Explosion (_init_array) {
nameID = VGCL.Global.idNameExp_array[random(VGCL.Global.idNameExp_array.length)];
posStartX = _init_array.posX;
posStartY = _init_array.posY;
nameInst = "Explosion" + (depthNum++);
depth = VGCL.Global.depthExplosion + depthNum;
if (depth >= VGCL.Global.depthExplosionMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:posStartX, _y:posStartY});
object_mc.stop();
this_sound = new Sound(object_mc);
this_sound.attachSound("explosion.mp3");
this_sound.start(0.09);
return(true);
}
function process(_aobj) {
if (isKilled) {
return(false);
}
if (object_mc._currentframe == object_mc._totalframes) {
kill();
}
object_mc.nextFrame();
return(true);
}
function kill() {
isDie = (isKilled = true);
object_mc.removeMovieClip();
}
function getType() {
return("AO_EXPLOSION");
}
var isDie = false;
var isKilled = false;
var posDethX = 550;
var speedMove = 10;
static var depthNum = 0;
var this_sound = null;
}
Symbol 331 MovieClip [__Packages.VGCL.AO.BonusBlt] Frame 0
class VGCL.AO.BonusBlt
{
var nameID, posStartX, posStartY, nameInst, depth, object_mc;
function BonusBlt (_init_array) {
nameID = _init_array.nameID;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
power = _init_array.power;
wpnNum = _init_array.wpnNum;
nameInst = "BnsBlt" + (depthNum++);
depth = VGCL.Global.depthBnsBlt + depthNum;
if (depth >= VGCL.Global.depthBnsBltMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:posStartX, _y:posStartY});
object_mc.stop();
return(true);
}
function relocate() {
if (isKilled) {
return(false);
}
if (object_mc._x <= posDethX) {
kill();
}
object_mc._x = object_mc._x - speedMove;
return(true);
}
function process(_aobj) {
if (!(_aobj.getType() === "AO_PLAYER")) {
} else if (object_mc.hitTest(_aobj.hit_mc)) {
_aobj.wpnCtrl.addBlt(wpnNum, power);
var _local2 = new Sound(object_mc);
_local2.attachSound("BONUS_HIT");
_local2.start(0.07);
kill();
}
}
function kill() {
isDie = (isKilled = true);
object_mc.removeMovieClip();
}
function getType() {
return("AO_BONUSBLT");
}
var isDie = false;
var isKilled = false;
var posDethX = -50;
var power = 0;
var wpnNum = null;
var speedMove = 2;
static var depthNum = 0;
}
Symbol 332 MovieClip [__Packages.VGCL.Broadcaster] Frame 0
class VGCL.Broadcaster
{
var _listeners;
function Broadcaster () {
_listeners = new Array();
}
function removeListener(listener) {
var _local3 = _listeners.length;
var _local2 = 0;
while (_local2 < _local3) {
if (_listeners[_local2] == listener) {
_listeners.splice(_local2, 1);
return(true);
}
_local2++;
}
return(false);
}
function addListener(listener) {
removeListener(listener);
_listeners.push(listener);
return(true);
}
function broadcastMessage(event) {
var _local4 = arguments.shift();
var _local5 = _listeners.length;
var _local3 = 0;
while (_local3 < _local5) {
_listeners[_local3][_local4].apply(_listeners[_local3], arguments);
_local3++;
}
}
}
Symbol 333 MovieClip [__Packages.VGCL.SMenu] Frame 0
class VGCL.SMenu extends VGCL.Broadcaster
{
var pages_array, addListener, broadcastMessage;
function SMenu () {
super();
pages_array = new Array();
}
function newPage(_idName, _instName) {
addListener(this);
var _local2 = new VGCL.Page(_idName, _instName);
pages_array[_instName] = _local2;
return(_local2);
}
function getActiveMC() {
return(pages_array[activePage].page_mc);
}
function goto(_pageName) {
if (pages_array[_pageName] instanceof VGCL.Page) {
if (activePage != null) {
pages_array[activePage].hidePage();
}
pages_array[_pageName].showPage();
activePage = _pageName;
return(true);
}
return(false);
}
function exit(_arg) {
pages_array[activePage].hidePage();
broadcastMessage("onMenuExit", _arg);
}
var activePage = null;
}
Symbol 334 MovieClip [__Packages.VGCL.Page] Frame 0
class VGCL.Page extends VGCL.Broadcaster
{
var addListener, broadcastMessage;
function Page (_idName, _instName) {
super();
idName = _idName;
instName = _instName;
btn_array = new Array();
cb_array = new Array();
rbg_array = new Array();
addListener(this);
}
function showPage() {
if ((VGCL.Global.rootMovie_mc instanceof MovieClip) && (VGCL.Global.menuDepth != null)) {
page_mc = VGCL.Global.rootMovie_mc.attachMovie(idName, instName, VGCL.Global.menuDepth);
broadcastMessage("onShowPage");
} else {
VGCL.GLog.error("showPage " + instName);
if (!(VGCL.Global.rootMovie_mc instanceof MovieClip)) {
VGCL.GLog.error("Global.rootMovie_mc = " + VGCL.Global.rootMovie_mc);
}
if (VGCL.Global.menuDepth == null) {
VGCL.GLog.error("Global.menuDepth = " + VGCL.Global.menuDepth);
}
}
for (var _local2 in btn_array) {
btn_array[_local2].showBtn(page_mc);
}
for (var _local2 in cb_array) {
cb_array[_local2].showCBox(page_mc);
}
for (var _local2 in rbg_array) {
rbg_array[_local2].showRGroup(page_mc);
}
}
function hidePage() {
page_mc.removeMovieClip();
}
function attachBtn(_bName, _callBackObj, _callBackFunc) {
arguments.splice(0, 3);
btn_array[_bName] = new VGCL.MBtn(_bName, _callBackObj, _callBackFunc, arguments);
}
function attachCBox(_cName, _isChecked, _cFunc) {
cb_array[_cName] = new VGCL.CBox(_cName, _isChecked, _cFunc);
}
function attachRadio(_rbGroup, _rbNames_array, _rbSelected, _rbgCallBackFunc) {
var _local2 = new VGCL.RGroup(_rbgCallBackFunc);
_local2.attachRadio(_rbNames_array, _rbSelected);
rbg_array[_rbGroup] = _local2;
}
var idName = null;
var instName = null;
var page_mc = null;
var btn_array = null;
var cb_array = null;
var rbg_array = null;
}
Symbol 335 MovieClip [__Packages.VGCL.MBtn] Frame 0
class VGCL.MBtn
{
var instName, callBackFunc, funcParams, callBackObj;
function MBtn (_instName, _callBackObj, _callBackFunc, _funcParams) {
instName = _instName;
callBackFunc = _callBackFunc;
funcParams = _funcParams;
callBackObj = _callBackObj;
}
function showBtn(_page_mc) {
var _local2 = _page_mc[instName];
_local2.callBackObj = callBackObj;
_local2.callBackFunc = callBackFunc;
_local2.funcParams = funcParams;
_local2.onRelease = function () {
this.callBackFunc.apply(this.callBackObj, this.funcParams);
};
}
}
Symbol 336 MovieClip [__Packages.VGCL.CBox] Frame 0
class VGCL.CBox
{
var instName, activeFunc;
function CBox (_instName, _isChecked, _callBackFunc) {
function changeFunction() {
if (this._currentframe == 1) {
this.gotoAndStop(2);
this.callBackFunc(true);
this.cb_obj.isChecked = true;
} else {
this.gotoAndStop(1);
this.callBackFunc(false);
this.cb_obj.isChecked = false;
}
}
instName = _instName;
isChecked = _isChecked;
activeFunc = changeFunction;
callBackFunc = _callBackFunc;
}
function set checked(_arg) {
cb_mc.gotoAndStop((_arg ? 2 : 1));
callBackFunc(_arg);
isChecked = _arg;
//return(checked);
}
function get checked() {
return(isChecked);
}
function showCBox(_page_mc) {
var _local2 = _page_mc[instName];
_local2.onRelease = activeFunc;
_local2.callBackFunc = callBackFunc;
_local2.cb_obj = this;
cb_mc = _local2;
cb_mc.gotoAndStop((isChecked ? 2 : 1));
}
var callBackFunc = null;
var isChecked = null;
var cb_mc = null;
}
Symbol 337 MovieClip [__Packages.VGCL.RGroup] Frame 0
class VGCL.RGroup
{
var callBackFunc, rb_array;
function RGroup (_callBackFunc) {
callBackFunc = _callBackFunc;
rb_array = new Array();
}
function attachRadio(_radio_array, _selectedRNumb) {
selectedRNumb = _selectedRNumb;
var _local2 = 0;
while (_local2 < _radio_array.length) {
rb_array.push(new VGCL.Radio(_radio_array[_local2]));
_local2++;
}
}
function showRGroup(_page_mc) {
var _local2 = 0;
while (_local2 < rb_array.length) {
var _local3 = rb_array[_local2].instName;
rb_array[_local2].radio_mc = _page_mc[_local3];
rb_array[_local2].radio_mc.RGroupObj = this;
rb_array[_local2].radio_mc.callBackFunc = callBackFunc;
rb_array[_local2].radio_mc.rNumb = _local2;
rb_array[_local2].radio_mc.onRelease = function () {
this.RGroupObj.setActive(this.rNumb);
this.callBackFunc(this.rNumb);
};
rb_array[_local2].radio_mc.gotoAndStop(((selectedRNumb == _local2) ? 2 : 1));
_local2++;
}
}
function setActive(_rNumb) {
selectedRNumb = _rNumb;
var _local2 = 0;
while (_local2 < rb_array.length) {
rb_array[_local2].radio_mc.gotoAndStop(((_local2 == _rNumb) ? 2 : 1));
_local2++;
}
}
var selectedRNumb = 0;
}
Symbol 338 MovieClip [__Packages.VGCL.Radio] Frame 0
class VGCL.Radio
{
var instName;
function Radio (_instName) {
instName = _instName;
}
var radio_mc = null;
}
Symbol 339 MovieClip [__Packages.VGCL.Level] Frame 0
class VGCL.Level
{
var ao_array, so_array;
function Level () {
ao_array = new Array();
so_array = new Array();
}
function addAO(_ao_obj) {
ao_array[ao_array_length++] = _ao_obj;
return(true);
}
function init() {
ao_array.sort(function (A, B) {
if (A.posStartX < B.posStartX) {
return(-1);
}
if (A.posStartX > B.posStartX) {
return(1);
}
return(0);
});
return(true);
}
function addSO(_sobj) {
so_array[so_array_length++] = _sobj;
return(true);
}
var ao_array_length = 0;
var so_array_length = 0;
}
Symbol 340 MovieClip [__Packages.VGCL.AO.BltMGS] Frame 0
class VGCL.AO.BltMGS
{
var nameID, posStartX, posStartY, power, nameInst, depth;
function BltMGS (_init_array) {
nameID = _init_array.nameID;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
power = _init_array.power;
nameInst = "BltLin" + (depthNum++);
depth = VGCL.Global.depthBltMGS + depthNum;
if (depth >= VGCL.Global.depthBltMGSMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:posStartX, _y:posStartY});
object_mc.stop();
var _local2 = new Sound(object_mc);
_local2.attachSound("MGS_SHOT");
_local2.start(0.09);
return(true);
}
function relocate() {
if (isKilled) {
return(false);
}
if (object_mc._x >= posDethX) {
kill();
}
object_mc._x = object_mc._x + speedMove;
return(true);
}
function process(_aobj) {
var _local3 = _aobj.getType();
switch (_local3) {
case "AO_ENEMY_MAIN" :
case "AO_ENEMY" :
if (!_aobj.isVulnerable) {
break;
}
if (!eHitTest(_aobj.object_mc)) {
break;
}
_aobj.life = _aobj.life - power;
explosion();
kill();
if (_aobj.life > 0) {
break;
}
_aobj.kill();
owner.addScore(_aobj.scrAmount);
}
}
function explosion() {
var _local2 = new Array();
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
VGCL.Game.addSO(new VGCL.SO.Explosion(_local2));
}
function kill() {
isDie = (isKilled = true);
object_mc.removeMovieClip();
}
function getType() {
return("AO_BLTMGS");
}
function eHitTest(_target_mc) {
var _local4 = ((object_mc._y > _target_mc._y) ? (object_mc._y) : (_target_mc._y));
var _local8 = ((object_mc._y > _target_mc._y) ? (_target_mc._y) : (object_mc._y));
var _local7 = ((object_mc._x > _target_mc._x) ? (_target_mc._x) : (object_mc._x));
var _local3 = ((object_mc._x > _target_mc._x) ? (object_mc._x) : (_target_mc._x));
_local4 = _local4 + 50;
var _local5 = _local4 - _local8;
_local3 = _local3 + 50;
var _local6 = _local3 - _local7;
if ((_local5 < 100) && (_local6 < 100)) {
return(true);
}
return(false);
}
var isDie = false;
var isKilled = false;
var object_mc = null;
var posDethX = 650;
var speedMove = 10;
static var depthNum = 0;
var owner = null;
}
Symbol 341 MovieClip [__Packages.VGCL.AO.PLAYER.Horizontal] Frame 0
class VGCL.AO.PLAYER.Horizontal
{
var keys_array, keysPressed_array, nameID, nameInst, depth, posStartX, posStartY, posOldX, posOldY;
function Horizontal (_init_array, _keys_array) {
score = 0;
keys_array = new Array();
keysPressed_array = new Array();
for (var _local3 in _keys_array) {
keys_array[_local3] = _keys_array[_local3];
}
nameID = _init_array.nameID;
nameInst = _init_array.nameInst;
depth = _init_array.depth;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 100;
score = 0;
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:posStartX, _y:posStartY});
if (object_mc == undefined) {
VGCL.GLog.error(("MC of HORIZONTAL " + nameInst) + " does not exists");
return(false);
}
object_mc.stop();
hit_mc = object_mc;
if (!wpnCtrl) {
VGCL.GLog.error("PLAYER->INIT: WEAPON CONTROLLER does not exist.");
return(false);
}
wpnCtrl.init();
if (!panel) {
VGCL.GLog.error("PLAYER->INIT: PLAYER PANEL does not exist.");
return(false);
}
panel.init(_root_mc);
return(true);
}
function relocate() {
if (life <= 0) {
VGCL.Game.isGameOver = true;
}
posOldX = object_mc._x;
posOldY = object_mc._y;
panel.update("life_txt", life, "score_txt", score, "bullets_txt", wpnCtrl.getBltNum());
if (Key.isDown(keys_array.UP)) {
if (object_mc._y > posBrdrYTop) {
object_mc._y = object_mc._y - speedMoving;
object_mc.nextFrame();
}
} else if (Key.isDown(keys_array.DOWN)) {
if (object_mc._y < posBrdrYBtm) {
object_mc._y = object_mc._y + speedMoving;
object_mc.prevFrame();
}
} else if (object_mc._currentframe == Math.round(object_mc._totalframes / 2)) {
} else if (object_mc._currentframe > Math.round(object_mc._totalframes / 2)) {
object_mc.prevFrame();
} else {
object_mc.nextFrame();
}
if (Key.isDown(keys_array.LEFT)) {
if (object_mc._x > posBrdrXLft) {
object_mc._x = object_mc._x - speedMoving;
}
}
if (Key.isDown(keys_array.RIGHT)) {
if (object_mc._x < posBrdrX) {
object_mc._x = object_mc._x + speedMoving;
}
}
if (Key.isDown(keys_array.FIRE) && (!keysPressed_array.FIRE)) {
wpnCtrl.fire(posOldX, posOldY, true);
keysPressed_array.FIRE = true;
} else if ((!Key.isDown(keys_array.FIRE)) && (keysPressed_array.FIRE)) {
keysPressed_array.FIRE = false;
}
if (Key.isDown(90) && (!keysPressed_array[90])) {
wpnCtrl.nextWpn();
keysPressed_array[90] = true;
} else if ((!Key.isDown(90)) && (keysPressed_array[90])) {
keysPressed_array[90] = false;
}
return(true);
}
function process(_aobj) {
var _local4 = _aobj.getType();
switch (_local4) {
case "AO_PLAYER_OFF" :
if (object_mc.hitTest(_aobj.object_mc)) {
object_mc._x = posOldX;
object_mc._y = posOldY;
}
break;
case "AO_ENEMY" :
if (object_mc.hitTest(_aobj.hit_mc)) {
var _local3 = new Array();
_local3.posX = object_mc._x;
_local3.posY = object_mc._y;
VGCL.Game.addSO(new VGCL.SO.Explosion(_local3));
life = life - 15;
addScore(-15);
_aobj.kill();
}
break;
case "AO_ENEMY_MAIN" :
if (!object_mc.hitTest(_aobj.hit_mc)) {
break;
}
life = life - 15;
addScore(-15);
}
}
function kill() {
isDie = true;
}
function getType() {
return("AO_PLAYER");
}
function addWpnCtrl(_wpnCtrl) {
wpnCtrl = _wpnCtrl;
wpnCtrl.owner = this;
}
function addPanel(_panel) {
panel = _panel;
}
function addScore(_scrNum) {
score = score + _scrNum;
VGCL.Global.score = VGCL.Global.score + _scrNum;
}
var isDie = false;
var isKilled = false;
var object_mc = null;
var hit_mc = null;
var speedMoving = 5;
var posBrdrX = 500;
var posBrdrXLft = 50;
var posBrdrYTop = 50;
var posBrdrYBtm = 300;
var wpnCtrl = null;
var score = 0;
var life = null;
var panel = null;
}
Symbol 342 MovieClip [__Packages.VGCL.SO.BgrS] Frame 0
class VGCL.SO.BgrS
{
var nameID, nameInst, depth;
function BgrS (_init_array) {
nameID = _init_array.nameID;
nameInst = "BGR" + (depthNum++);
depth = VGCL.Global.depthBgrS + depthNum;
if (depth >= VGCL.Global.depthBgrSMax) {
depthNum = 0;
}
VGCL.GLog.info(("SO " + nameInst) + " created");
}
function init(_root_mc) {
object_mc = _root_mc.attachMovie(nameID, nameInst, depth);
return(true);
}
function process() {
return(false);
}
var object_mc = null;
static var depthNum = 0;
}
Symbol 343 MovieClip [__Packages.VGCL.SO.PnlTxt] Frame 0
class VGCL.SO.PnlTxt
{
function PnlTxt (_init_array) {
nameID = _init_array.nameID;
nameInst = "GAME_PANEL" + (depthNum++);
depth = VGCL.Global.depthPnlTxt + depthNum;
if (depth >= VGCL.Global.depthPnlTxtMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
object_mc = _root_mc.attachMovie(nameID, nameInst, depth);
return(true);
}
function update() {
var _local4 = arguments.length;
var _local3 = 0;
while (_local3 < _local4) {
object_mc[arguments[_local3]].text = arguments[_local3 + 1];
_local3 = _local3 + 2;
}
}
var nameID = null;
var nameInst = null;
var depth = null;
static var depthNum = 0;
var object_mc = null;
}
Symbol 344 MovieClip [__Packages.VGCL.AO.EHorBT] Frame 0
class VGCL.AO.EHorBT
{
var nameID, depth, posStartX, nameInst, posOldX, posOldY;
function EHorBT (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
depth = _init_array.depth;
posStartX = _init_array.posX;
posInitX = _init_array.initX;
nameInst = "EHorLin" + (depthNum++);
depth = VGCL.Global.depthEHorLin + depthNum;
isFromTop = _init_array.isFromTop;
if (depth >= VGCL.Global.depthEHorLinMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 1;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
var _local3 = posInitX;
if (_local3 == undefined) {
_local3 = random(250) + 100;
}
var _local2 = null;
if (isFromTop) {
_local2 = -10;
speedMove = speedMove * -1;
} else {
_local2 = 400;
}
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:_local3, _y:_local2});
hit_mc = object_mc;
timeLife = 0;
timeFire = random(50) + 50;
return(true);
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
posOldX = object_mc._x;
posOldY = object_mc._y;
object_mc._y = object_mc._y - speedMove;
if (((object_mc._y < -50) && (speedMove > 0)) || ((object_mc._y > 400) && (speedMove < 0))) {
speedMove = speedMove * -1;
}
if ((++timeLife) == timeFire) {
var _local2 = new Array();
_local2.nameID = "pulka2";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
timeFire = (timeLife + random(80)) + 60;
}
return(true);
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY");
}
var isDie = true;
var isKilled = true;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var scrAmount = 10;
var speedMove = 2;
var timeLife = null;
var timeFire = null;
var isVulnerable = true;
var life = null;
var isFromTop = false;
var posInitX = null;
}
Symbol 345 MovieClip [__Packages.VGCL.AO.EHorLR] Frame 0
class VGCL.AO.EHorLR
{
var nameID, posStartX, posStartY, nameInst, depth;
function EHorLR (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
nameInst = "EHorLin" + (depthNum++);
depth = VGCL.Global.depthEHorLR + depthNum;
if (depth >= VGCL.Global.depthEHorLRMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 1;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:-10, _y:random(150) + 50});
object_mc.stop();
hit_mc = object_mc;
timeLife = 0;
speedUP = 0;
timeFire = random(50) + 50;
return(true);
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
if (!(stepNF--)) {
object_mc.gotoAndStop(1);
speedUP++;
stepNF = stepNFS;
}
if (object_mc._currentframe != object_mc._totalframes) {
object_mc.nextFrame();
}
object_mc._x = object_mc._x + (speedMove + speedUP);
if (object_mc._x > 600) {
object_mc._x = -10;
speedUP = 0;
}
if ((++timeLife) == timeFire) {
var _local2 = new Array();
_local2.nameID = "pulka2";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
timeFire = (timeLife + random(80)) + 60;
}
return(true);
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY");
}
var isDie = true;
var isKilled = true;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var scrAmount = 10;
var speedMove = 1;
var speedUP = 0;
var timeLife = null;
var timeFire = null;
var isVulnerable = true;
var life = null;
var stepNF = 50;
var stepNFS = 50;
}
Symbol 346 MovieClip [__Packages.VGCL.Score] Frame 0
class VGCL.Score
{
var sh_obj, score_array;
function Score () {
sh_obj = SharedObject.getLocal("vortex");
score_array = new Array();
if (sh_obj.data.score != undefined) {
score_array = sh_obj.data.score;
}
}
function get min() {
return(score_array[score_array.length - 1].pscore);
}
function saveScore() {
score_array.splice(10, score_array.length + 10);
delete sh_obj.data.score;
sh_obj.data.score = score_array;
sh_obj.flush();
}
function addScore(_pname, _pscore) {
var _local2 = new Object();
_local2.pname = _pname;
_local2.pscore = _pscore;
score_array.push(_local2);
sortScore();
saveScore();
}
function sortScore() {
score_array.sort(function (A, B) {
var _local1 = A.pscore - B.pscore;
if (_local1 > 0) {
return(-1);
}
if (_local1 < 0) {
return(1);
}
return(0);
});
}
function traceScore() {
trace("length: " + score_array.length);
var _local2 = 0;
while (_local2 < score_array.length) {
trace((score_array[_local2].pname + " ") + score_array[_local2].pscore);
_local2++;
}
}
}
Symbol 347 MovieClip [__Packages.VGCL.SO.BgrLin] Frame 0
class VGCL.SO.BgrLin
{
var nameID, nameInst, depth;
function BgrLin (_init_array) {
nameID = _init_array.nameID;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
if (posStartY == undefined) {
posStartY = 350;
}
nameInst = "BgrLin" + (depthNum++);
depth = VGCL.Global.depthBgrLin + depthNum;
if (depth >= VGCL.Global.depthBgrLinMax) {
depthNum = 0;
}
VGCL.GLog.info(("SO " + nameInst) + " created");
}
function init(_root_mc) {
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:VGCL.Global.posEnemyStartX, _y:posStartY});
if (object_mc == undefined) {
VGCL.GLog.error(("Initialization of BgrLin " + nameInst) + " field.\n May be could not attach MC.");
return(false);
}
width = object_mc._width;
isKilled = false;
return(true);
}
function process() {
if (object_mc._x < (-width)) {
isKilled = true;
object_mc.removeMovieClip();
return(false);
}
object_mc._x = object_mc._x - speed;
return(true);
}
var posStartX = null;
var posStartY = null;
var object_mc = null;
var isKilled = true;
var width = null;
static var depthNum = 0;
var speed = 5;
}
Symbol 348 MovieClip [__Packages.VGCL.SO.BgrMulA] Frame 0
class VGCL.SO.BgrMulA
{
function BgrMulA () {
so_array = new Array();
so_length = 0;
}
function init(_root_mc) {
so_array.sort(function (A, B) {
if (A.posStartX < B.posStartX) {
return(-1);
}
if (A.posStartX > B.posStartX) {
return(1);
}
return(0);
});
var _local2 = 0;
while (_local2 < so_length) {
so_array[_local2].isKilled = true;
_local2++;
}
nrstSOx = so_array[0].posStartX;
nrstSOInd = 0;
posLoopEnd = 0;
return(true);
}
function process() {
var _local3 = VGCL.Game.lvlScrlCoord - posLoopEnd;
if (nrstSOInd < so_length) {
if (_local3 > nrstSOx) {
var _local2;
while ((_local3 > nrstSOx) && (nrstSOInd <= so_length)) {
_local2 = so_array[nrstSOInd++];
if (_local2.isKilled) {
VGCL.Game.addSO(_local2);
}
nrstSOx = so_array[nrstSOInd].posStartX;
}
}
return(true);
}
nrstSOInd = 0;
nrstSOx = so_array[nrstSOInd].posStartX;
posLoopEnd = VGCL.Game.lvlScrlCoord;
return(true);
}
function addBgr(_bgr_obj) {
so_array[so_length++] = _bgr_obj;
return(true);
}
var so_array = null;
var so_length = null;
var nrstSOInd = null;
var nrstSOx = null;
var posLoopEnd = 0;
var dist = 1000;
}
Symbol 349 MovieClip [__Packages.VGCL.AO.EHorSin] Frame 0
class VGCL.AO.EHorSin
{
var nameID, depth, posStartX, posStartY, nameInst, posOldX, posOldY;
function EHorSin (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
depth = _init_array.depth;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
nameInst = "EHorSin" + (depthNum++);
depth = VGCL.Global.depthEHorSin + depthNum;
if (depth >= VGCL.Global.depthEHorSinMax) {
depthNum = 0;
}
isFire = ((_init_array.fire == undefined) ? false : (_init_array.fire));
switch (_init_array.dir) {
case 1 :
speedHorizontal = 3;
moveFunc = moveDir_1;
break;
default :
moveFunc = moveDir_0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 2;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:VGCL.Global.posEnemyStartX, _y:posStartY});
hit_mc = object_mc;
timeLife = 0;
timeFire = random(50) + 50;
stepDirMax = random(20) + 20;
return(true);
}
function moveDir_0() {
posOldX = object_mc._x;
posOldY = object_mc._y;
object_mc._x = object_mc._x - speedMove;
if (object_mc._x < -50) {
kill();
}
object_mc._y = object_mc._y + speedHorizontal;
if (((object_mc._y > 260) && (speedHorizontal > 0)) || ((object_mc._y < 0) && (speedHorizontal < 50))) {
speedHorizontal = speedHorizontal * -1;
stepDir = 0;
}
if (speedHorizontal > 0) {
object_mc.prevFrame();
} else {
object_mc.nextFrame();
}
if ((stepDir++) >= stepDirMax) {
stepDirMax = random(30) + 20;
speedHorizontal = speedHorizontal * -1;
stepDir = 0;
}
}
function moveDir_1() {
object_mc._x = object_mc._x - speedMove;
object_mc._y = object_mc._y + speedHorizontal;
if (((object_mc._y > 260) && (speedHorizontal > 0)) || ((object_mc._y < 0) && (speedHorizontal < 50))) {
speedHorizontal = speedHorizontal * -1;
}
if (speedHorizontal > 0) {
object_mc.prevFrame();
} else {
object_mc.nextFrame();
}
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
if (object_mc._x < -50) {
kill();
}
posOldX = object_mc._x;
posOldY = object_mc._y;
moveFunc();
if (!isFire) {
return(true);
}
if ((++timeLife) == timeFire) {
var _local2 = new Array();
_local2.nameID = "pulka2";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
timeFire = (timeLife + random(80)) + 60;
}
return(true);
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 25;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY");
}
var isDie = false;
var isKilled = false;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var scrAmount = 10;
var speedMove = 4;
var timeLife = null;
var timeFire = null;
var speedHorizontal = 5;
var stepDir = 0;
var stepDirMax = 30;
var moveFunc = null;
var isVulnerable = true;
var life = null;
var isFire = false;
}
Symbol 350 MovieClip [__Packages.VGCL.SO.PnlProgress] Frame 0
class VGCL.SO.PnlProgress
{
function PnlProgress (_init_array) {
nameID = _init_array.nameID;
nameInst = "GAME_PANEL_PROGRESS" + (depthNum++);
depth = VGCL.Global.depthPnlProgress + depthNum;
if (depth >= VGCL.Global.depthPnlProgressMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_y:353});
endCoord = VGCL.Global.posAOLast / 100;
return(true);
}
function process() {
var _local2 = VGCL.Game.lvlScrlCoord / endCoord;
object_mc.pointer_mc._x = _local2 * 5;
if (_local2 >= 100) {
return(false);
}
return(true);
}
var nameID = null;
var nameInst = null;
var depth = null;
static var depthNum = 0;
var object_mc = null;
var endCoord = null;
}
Symbol 351 MovieClip [__Packages.VGCL.AO.EMainC] Frame 0
class VGCL.AO.EMainC
{
var nameID, depth, posStartX, posStartY, nameInst;
function EMainC (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
depth = _init_array.depth;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
nameInst = "EHorSin" + (depthNum++);
depth = VGCL.Global.depthEHorSin + depthNum;
if (depth >= VGCL.Global.depthEHorSinMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 15;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:VGCL.Global.posEnemyStartX, _y:posStartY});
hit_mc = object_mc;
timeLife = 0;
timeFire = random(50) + 50;
return(true);
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
if (isFire) {
fire();
} else {
moving();
}
return(true);
}
function fire() {
if (object_mc._currentframe == object_mc._totalframes) {
var _local2 = new Array();
_local2.nameID = "pulka2";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
_local2.dir = 1;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
_local2.dir = 2;
VGCL.Game.addAO(new VGCL.AO.BltLin(_local2));
timeFire = (timeLife + random(80)) + 30;
stepPause = stepPauseMax;
isFire = false;
}
}
function moving() {
object_mc._x = object_mc._x - speedVer;
if (((object_mc._x > 500) && (speedVer < 0)) || ((object_mc._x < 150) && (speedVer > 0))) {
speedVer = speedVer * -1;
}
object_mc._y = object_mc._y + speedHor;
if (((object_mc._y > 250) && (speedHor > 0)) || ((object_mc._y < 50) && (speedHor < 0))) {
speedHor = speedHor * -1;
}
if (speedHor > 0) {
object_mc.prevFrame();
} else if (object_mc._currentframe < frMaxFly) {
object_mc.nextFrame();
}
if ((++timeLife) == timeFire) {
isFire = true;
isVulnerable = true;
}
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY_MAIN");
}
var isDie = false;
var isKilled = false;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var isVulnerable = false;
var scrAmount = 100;
var speedVer = 4;
var timeLife = null;
var timeFire = null;
var speedHor = 5;
var frMaxFly = 11;
var life = null;
var isFire = false;
var stepPause = null;
var stepPauseMax = 60;
}
Symbol 352 MovieClip [__Packages.VGCL.SO.SLoop] Frame 0
class VGCL.SO.SLoop
{
var nameID, nameInst;
function SLoop (_init_array) {
nameID = _init_array.soundID;
nameInst = "BackSoundLoop";
VGCL.GLog.info(("SO " + nameInst) + " created");
}
function init(_root_mc) {
if (nameID != null) {
loop_sound = new Sound(_root_mc);
loop_sound.attachSound(nameID);
loop_sound.start();
loop_sound.onSoundComplete = function () {
this.start();
};
}
return(true);
}
function process() {
return(false);
}
var object_mc = null;
static var loop_sound = null;
}
Symbol 353 MovieClip [__Packages.VGCL.SO.Back] Frame 0
class VGCL.SO.Back
{
var nameID, depth, nameInst, widthBg;
function Back (_init_array) {
nameID = _init_array.nameID;
depth = _init_array.depth;
delay = (_init_array.delay ? (_init_array.delay) : 1);
nameInst = "Back" + (depthNum++);
depth = VGCL.Global.depthBack + depthNum;
if (depth >= VGCL.Global.depthBackMax) {
depthNum = 0;
}
VGCL.GLog.info(("SO " + nameInst) + " created");
}
function init(_root_mc) {
object_mc = _root_mc.createEmptyMovieClip(nameInst, depth);
object_mc.attachMovie(nameID, "part1_mc", 1);
widthBg = object_mc.part1_mc._width;
object_mc.attachMovie(nameID, "part2_mc", 2, {_x:widthBg});
return(true);
}
function process() {
object_mc._x = object_mc._x - Math.round(VGCL.Game.lvlScrlSpeed / delay);
if (object_mc._x <= (-widthBg)) {
object_mc._x = 0;
}
return(true);
}
var object_mc = null;
var delay = null;
static var depthNum = 0;
}
Symbol 354 MovieClip [__Packages.VGCL.AO.EMainA] Frame 0
class VGCL.AO.EMainA
{
var nameID, depth, posStartX, posStartY, nameInst;
function EMainA (_init_array) {
isLvlEnd = _init_array.isLvlEnd;
nameID = _init_array.nameID;
depth = _init_array.depth;
posStartX = _init_array.posX;
posStartY = _init_array.posY;
nameInst = "EHorSin" + (depthNum++);
depth = VGCL.Global.depthEHorSin + depthNum;
if (depth >= VGCL.Global.depthEHorSinMax) {
depthNum = 0;
}
VGCL.GLog.info(("AO " + nameInst) + " created");
}
function init(_root_mc) {
life = 10;
isDie = (isKilled = false);
VGCL.GLog.info(("AO " + nameInst) + " init");
object_mc = _root_mc.attachMovie(nameID, nameInst, depth, {_x:VGCL.Global.posEnemyStartX, _y:posStartY});
hit_mc = object_mc;
timeLife = 0;
timeFire = random(50) + 50;
return(true);
}
function relocate() {
if (isDie) {
if (isLvlEnd) {
VGCL.Game.isLvlEnd = true;
}
return(false);
}
if (isFire) {
fire();
} else {
moving();
}
return(true);
}
function fire() {
if ((object_mc._currentframe == object_mc._totalframes) && (!isOpenDoor)) {
var _local2 = new Array();
_local2.nameID = "Helicopter2";
_local2.isLvlEnd = false;
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
VGCL.Game.addAO(new VGCL.AO.EHorLin(_local2));
timeFire = (timeLife + random(80)) + 60;
isOpenDoor = true;
stepPause = stepPauseMax;
}
if (isOpenDoor) {
if (stepPause) {
stepPause--;
return(undefined);
}
object_mc.prevFrame();
if (object_mc._currentframe == frMaxFly) {
object_mc.gotoAndStop(Math.round(frMaxFly / 2));
isFire = false;
isVulnerable = false;
isOpenDoor = false;
}
} else {
object_mc.nextFrame();
}
}
function moving() {
object_mc._x = object_mc._x - speedVer;
if (((object_mc._x > 500) && (speedVer < 0)) || ((object_mc._x < 150) && (speedVer > 0))) {
speedVer = speedVer * -1;
}
object_mc._y = object_mc._y + speedHor;
if (((object_mc._y > 250) && (speedHor > 0)) || ((object_mc._y < 50) && (speedHor < 0))) {
speedHor = speedHor * -1;
}
if (speedHor > 0) {
object_mc.prevFrame();
} else if (object_mc._currentframe < frMaxFly) {
object_mc.nextFrame();
}
if ((++timeLife) == timeFire) {
isFire = true;
isVulnerable = true;
}
}
function process(_aobj) {
}
function kill() {
if (!(depth % 4)) {
var _local2 = new Array();
_local2.nameID = "bonus";
_local2.posX = object_mc._x;
_local2.posY = object_mc._y;
_local2.power = 5;
_local2.wpnNum = 0;
VGCL.Game.addAO(new VGCL.AO.BonusBlt(_local2));
}
object_mc.removeMovieClip();
isDie = true;
}
function getType() {
return("AO_ENEMY_MAIN");
}
var isDie = false;
var isKilled = false;
var object_mc = null;
var hit_mc = null;
static var depthNum = 0;
var isLvlEnd = false;
var isVulnerable = false;
var scrAmount = 100;
var speedVer = 4;
var timeLife = null;
var timeFire = null;
var speedHor = 5;
var frMaxFly = 11;
var life = null;
var isFire = false;
var isOpenDoor = false;
var stepPause = null;
var stepPauseMax = 60;
}
Symbol 355 MovieClip [__Packages.VGCL.SO.Scroller] Frame 0
class VGCL.SO.Scroller
{
function Scroller (_init_array) {
speed = _init_array.speed;
VGCL.Game.lvlScrlSpeed = speed;
}
function init(_root_mc) {
return(true);
}
function process() {
VGCL.Game.lvlScrlCoord = VGCL.Game.lvlScrlCoord + speed;
return(true);
}
static var speed = null;
}
Symbol 356 MovieClip [__Packages.VGCL.SO.WpnCtrl] Frame 0
class VGCL.SO.WpnCtrl
{
var wpn_array;
function WpnCtrl () {
wpn_array = new Array();
}
function addWpn(_wpnObj) {
wpn_array.push(_wpnObj);
wpn_array_length++;
return(true);
}
function nextWpn() {
wpnCur++;
if (wpnCur >= wpn_array_length) {
wpnCur = 0;
}
}
function prevWpn() {
trace(wpnCur--);
if (wpnCur < 0) {
wpnCur = wpn_array_length - 1;
}
}
function fire(_fPosX, _fPosY) {
wpn_array[wpnCur].fire(_fPosX, _fPosY);
return(true);
}
function init() {
var _local2 = 0;
while (_local2 < wpn_array_length) {
wpn_array[_local2].init();
wpn_array[_local2].owner = owner;
_local2++;
}
}
function getBltNum() {
return(wpn_array[wpnCur].bltNum);
}
function addBlt(_wpnNum, _bltNum) {
if (wpn_array[_wpnNum]) {
wpn_array[_wpnNum].bltNum = wpn_array[_wpnNum].bltNum + _bltNum;
} else {
wpn_array[0].bltNum = wpn_array[0].bltNum + _bltNum;
}
}
var wpn_array_length = 0;
var wpnCur = 0;
var wpnPrev = null;
var owner = null;
}
Symbol 357 MovieClip [__Packages.VGCL.Settings] Frame 0
class VGCL.Settings
{
function Settings () {
}
static function get isMusicPlay() {
return(isMusic);
}
static function set isMusicPlay(_arg) {
isMusicNew = _arg;
//return(isMusicPlay);
}
static function get vQualityNumb() {
switch (qualityVisual) {
case "LOW" :
return(0);
case "MEDIUM" :
return(1);
case "HIGH" :
return(2);
case "BEST" :
return(3);
}
return(-1);
}
static function set vQualityNumb(_arg) {
qualityVisualNew = _arg;
//return(vQualityNumb);
}
static function get newQualityStr() {
var _local1;
switch (qualityVisualNew) {
case 0 :
_local1 = "LOW";
break;
case 1 :
_local1 = "MEDIUM";
break;
case 2 :
_local1 = "HIGH";
break;
case 3 :
_local1 = "BEST";
}
return(_local1);
}
static function apply() {
qualityVisual = newQualityStr;
_quality = qualityVisual;
isMusic = isMusicNew;
}
static function reset() {
_quality = qualityVisual;
isMusicNew = isMusic;
}
static var qualityVisual = "HIGH";
static var qualityVisualNew = 2;
static var detailLevel = "HIGH";
static var difLevel = "NORMAL";
static var isMusic = true;
static var isMusicNew = true;
static var musicVolume = 100;
static var isSound = true;
static var soundVolume = 100;
}