Frame 1
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
mb = "__mochibot__";
mbc = "mochibot.com";
g = (_global ? (_global) : (_level0._root));
if (g[mb + swfid]) {
return(g[mb + swfid]);
}
s = System.security;
x = mc._root.getSWFVersion;
fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5)));
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == "localWithFile") {
return(null);
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=7&fv=") + fv) + "&v=") + escape(getVersion())) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : "");
lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv))));
g[mb + "level"] = lv;
if (fv == 5) {
res = "_level" + lv;
if (!eval (res)) {
loadMovieNum (u, lv);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
var percent = 0;
var destPercent = 0;
var dt;
var Time = 0;
var InitFilter = true;
var dFilter;
var rad = 0;
var Continue = false;
var Score = 0;
var Time = 0;
var dt = 0;
var TurnSpeed = 0;
var ShipSpeed = 0;
var Health = 100;
var bullets;
var bomb;
var bombspeed;
var mediKit;
var tank = null;
var PlayerShip;
var EnemyShip;
var FireDelay = 0;
var BombDelay = 0;
var EmitSmoke;
var EmitCount = 0;
var smoke;
var explosion;
var gunShot;
var planeDive;
var explode;
var plane;
var addplane;
var levelSfx;
var bombfallSfx;
var hitSfx;
var medi_appear;
var medi_collect;
var planeClip;
var sfxClip;
var EnemyCount = 0;
var EnemyDelay = 2;
var EnemyAdDelay = 3;
var ShipsAtATime = 2;
var ObjIntId = -1;
var Level = 1;
var Loaded = false;
var SoundToggle = true;
var SponsoredAd;
var sid = 0;
var lv;
var gameID = 122;
var serverFile;
var serverData;
var adArray;
var SponsorValid;
var WaitingForSponsor;
var WaitTime;
OBG_Logo._visible = true;
MoreFlashGames._visible = true;
var atHome = false;
var showAd = true;
var adLoaded = true;
_lockroot = true;
stopAllSounds();
__com_mochibot__("ad120191", this, 10301, true);
var lbClip = _root.createEmptyMovieClip("LBClip", _root.getNextHighestDepth());
lbClip._visible = false;
lbClip.beginFill(2493952, 100);
lbClip.moveTo(0, 0);
lbClip.lineTo(576, 0);
lbClip.lineTo(576, 432);
lbClip.lineTo(0, 432);
lbClip.lineTo(0, 0);
lbClip.endFill();
var HighScoresConnected = true;
var mochiConnected = false;
var LoadingLeaderBoard = false;
var ShowingLeaderBoard = false;
MochiAd.showPreGameAd({id:"8175dd87bcc779b1", res:"500x400"});
onEnterFrame = function () {
if (showAd) {
showAd = false;
}
};
Frame 2
stop();
var tdt = 0;
var tTime = 0;
var frame = 0;
var waitTime = 8;
Intro.stop();
onEnterFrame = function () {
var _local2 = getTimer();
tdt = (_local2 - tTime) / 1000;
if (tTime == 0) {
tdt = 0;
}
tTime = _local2;
frame = frame + (tdt * 30);
waitTime = waitTime - tdt;
if (waitTime < 0) {
Intro.stopAllSounds();
_root.gotoAndStop(3);
}
while (frame >= 1) {
Intro.nextFrame();
frame = frame - 1;
}
};
Frame 3
function ErrorConnecting() {
HighScoresConnected = false;
}
function LeaderBoardVisible() {
ShowingLeaderBoard = true;
LoadingLeaderBoard = false;
_root.lbClip._visible = true;
_root.lbClip._alpha = 0;
}
function LeaderBoardClosed() {
ShowingLeaderBoard = false;
LoadingLeaderBoard = false;
_root.lbClip._visible = false;
}
stop();
stopAllSounds();
if (!mochiConnected) {
mochi.MochiServices.connect("8175dd87bcc779b1", lbClip, ErrorConnecting);
mochiConnected = true;
}
var dt = 0;
var Time = 0;
onEnterFrame = function () {
var _local2 = getTimer();
dt = (_local2 - Time) / 1000;
if (Time == 0) {
dt = 0.001;
}
Time = _local2;
if (LoadingLeaderBoard || (ShowingLeaderBoard)) {
_root.lbClip.swapDepths(_root.getNextHighestDepth());
_root.lbClip._alpha = _root.lbClip._alpha + (dt * 100);
if (_root.lbClip._alpha >= 100) {
_root.lbClip._alpha = 100;
}
}
};
Frame 4
function updateObj(dt) {
fC = fC + (dt / 0.01);
if (fC >= 1) {
var _local2 = int(fC);
fC = fC - int(fC);
var _local3 = -1;
while (_local3++ , _local3 < _local2) {
if (Health <= 0) {
if ((PlayerShip._currentframe == PlayerShip._totalframes) && (PlayerShip._visible)) {
PlayerShip._visible = false;
initExplosion(PlayerShip, false);
} else {
PlayerShip.nextFrame();
}
}
for (s in smoke) {
smoke[s].nextFrame();
if (smoke[s]._currentframe == smoke[s]._totalframes) {
smoke[s].removeMovieClip();
smoke.splice(s, 1);
} else {
smoke[s].swapDepths(_root.getNextHighestDepth());
}
}
for (e in explosion) {
explosion[e].nextFrame();
if (explosion[e]._currentframe == explosion[e]._totalframes) {
explosion[e].removeMovieClip();
explosion.splice(e, 1);
}
}
for (i in bomb) {
bomb[i].nextFrame();
if (bomb[i]._currentframe == bomb[i]._totalframes) {
initExplosion(bomb[i], false);
bomb[i].removeMovieClip();
bomb.splice(i, 1);
bombspeed.splice(i, 1);
}
}
}
}
}
function FireBullet(o, id) {
var _local2 = bullets.length;
bullets[_local2] = new Bullet();
bullets[_local2].id = id;
bullets[_local2].Image = _root.attachMovie("Bullet", "Bullet_" + UniqueID, getNextHighestDepth());
UniqueID++;
var _local3 = (o._rotation * 3.14) / 180;
bullets[_local2].Image._x = o._x + (Math.cos(_local3) * 18);
bullets[_local2].Image._y = o._y + (Math.sin(_local3) * 18);
bullets[_local2].Image._rotation = o._rotation;
bullets[_local2].Image.cacheAsBitmap = true;
}
function EmitSmokeFunc(count, obj) {
var _local4 = -1;
while (_local4++ , _local4 < int(count)) {
var _local2 = smoke.length;
smoke[_local2] = _root.attachMovie("Smoke", "Smoke_" + UniqueID, _root.getNextHighestDepth());
UniqueID++;
smoke[_local2]._x = obj._x + ((Math.random() * 12) - 6);
smoke[_local2]._y = obj._y + ((Math.random() * 12) - 6);
smoke[_local2].cacheAsBitmap = true;
}
}
function initExplosion(obj, ignoreTank) {
if ((tank != null) && (!ignoreTank)) {
var _local4 = tank.Image._x - obj._x;
var _local3 = tank.Image._y - obj._y;
var _local6 = (_local4 * _local4) + (_local3 * _local3);
if (_local6 < 600) {
initExplosion(tank.Image, true);
tank.Image.removeMovieClip();
tank = null;
AddScore(1000 + (255 * Level));
}
}
var _local2 = explosion.length;
explosion[_local2] = _root.attachMovie("Explosion", "Explosion_" + UniqueID, _root.getNextHighestDepth());
UniqueID++;
explosion[_local2]._x = obj._x;
explosion[_local2]._y = obj._y;
explode.start(0, 1);
}
function UpdateFrame() {
if (TempScore == -1) {
AddScore(0);
}
updateEnemyAd(dt);
tank.Update(dt);
PlayerShip._alpha = PlayerShip._alpha + (dt * 75);
if (PlayerShip._alpha > 100) {
PlayerShip._alpha = 100;
}
if (PlayerShip._currentframe < 2) {
if (Key.isDown(37)) {
TurnSpeed = -175;
} else if (Key.isDown(39)) {
TurnSpeed = 175;
} else {
TurnSpeed = 0;
}
if (Key.isDown(38)) {
var _local5 = (PlayerShip._rotation * 3.14) / 180;
ShipSpeed = ShipSpeed + (100 * dt);
if (ShipSpeed > 200) {
ShipSpeed = 200;
}
} else {
ShipSpeed = ShipSpeed * (1 - (dt * 0.6));
if (ShipSpeed < 100) {
ShipSpeed = 100;
}
}
var _local6 = (((ShipSpeed - 100) / 100) * 50) + 15;
plane.setVolume(_local6);
if (Key.isDown(32) && (FireDelay <= 0)) {
gunShot.start(0, 1);
FireBullet(PlayerShip, 0);
FireDelay = 0.2;
}
if (Key.isDown(17) && (BombDelay <= 0)) {
var _local3 = bomb.length;
bomb[_local3] = _root.attachMovie("Bomb", "Bomb_" + UniqueID, getNextHighestDepth());
UniqueID++;
var _local5 = (PlayerShip._rotation * 3.14) / 180;
bombspeed[_local3] = ShipSpeed * 0.8;
bomb[_local3]._x = PlayerShip._x;
bomb[_local3]._y = PlayerShip._y;
bomb[_local3]._rotation = PlayerShip._rotation;
bomb[_local3].cacheAsBitmap = true;
BombDelay = 1;
bombfallSfx.start(0, 1);
}
} else {
ShipSpeed = ShipSpeed * (1 - (dt * 1.8));
}
var _local2;
for (_local2 in bomb) {
var _local5 = (bomb[_local2]._rotation * 3.14) / 180;
bomb[_local2]._x = bomb[_local2]._x + ((Math.cos(_local5) * bombspeed[_local2]) * dt);
bomb[_local2]._y = bomb[_local2]._y + ((Math.sin(_local5) * bombspeed[_local2]) * dt);
bombspeed[_local2] = bombspeed[_local2] * (1 - (dt * 0.8));
}
for (_local2 in bullets) {
var _local5 = (bullets[_local2].Image._rotation * 3.14) / 180;
bullets[_local2].Image._x = bullets[_local2].Image._x + ((Math.cos(_local5) * 600) * dt);
bullets[_local2].Image._y = bullets[_local2].Image._y + ((Math.sin(_local5) * 600) * dt);
if (!InStage(bullets[_local2].Image)) {
bullets[_local2].Image.removeMovieClip();
bullets.splice(_local2, 1);
} else if (((bullets[_local2].id == 1) && (PlayerShip._visible)) && (Health > 0)) {
if (PlayerShip.hitTest(bullets[_local2].Image._x, bullets[_local2].Image._y)) {
Health = Health - 7;
var _local4 = 103 * (Health / 100);
setClipRect(BottomTray.HealthBar, 103 - _local4, 0, _local4, BottomTray.HealthBar._height);
BottomTray.HealthBar._x = 6.5 + (103 - _local4);
hitSfx.start(0, 1);
bullets[_local2].Image.removeMovieClip();
bullets.splice(_local2, 1);
if (Health <= 0) {
PlayerShip.gotoAndPlay(3);
planeDive.start(0, 1);
}
}
} else if (bullets[_local2].id == 0) {
for (e in EnemyShip) {
if (EnemyShip[e].Image.hitTest(bullets[_local2].Image)) {
hitSfx.start(0, 1);
EnemyShip[e].Hit(7);
bullets[_local2].Image.removeMovieClip();
bullets.splice(_local2, 1);
e = EnemyShip.length;
}
}
}
}
if (PlayerShip._visible) {
if (Health > 60) {
EmitSmoke = 0;
} else if (Health > 50) {
EmitSmoke = 4;
} else if (Health > 40) {
EmitSmoke = 8;
} else if (Health > 30) {
EmitSmoke = 12;
} else if (Health > 20) {
EmitSmoke = 16;
} else if (Health > 0) {
EmitSmoke = 20;
}
EmitCount = EmitCount + (EmitSmoke * dt);
EmitSmokeFunc(EmitCount, PlayerShip);
EmitCount = EmitCount - int(EmitCount);
}
for (e in EnemyShip) {
KeepInStage(EnemyShip[e].Image, 60);
EnemyShip[e].Update(dt, PlayerShip._x, PlayerShip._y, PlayerShip._rotation);
if (EnemyShip[e].Fire()) {
FireBullet(EnemyShip[e].Image, 1);
gunShot.start(0, 1);
}
if (EnemyShip[e].State == EnemyShip[e].REMOVE_ME) {
if ((Math.random() < (0.35 + (Level * 0.075))) && (EnemyCount > 0)) {
var _local3 = mediKit.length;
mediKit[_local3] = _root.attachMovie("MediKit", "MediKit_" + UniqueID, _root.getNextHighestDepth());
UniqueID++;
mediKit[_local3]._x = EnemyShip[e].Image._x;
mediKit[_local3]._y = EnemyShip[e].Image._y;
mediKit[_local3].cacheAsBitmap = true;
mediKit[_local3]._xscale = 0;
mediKit[_local3]._yscale = 0;
medi_appear.start(0, 1);
}
initExplosion(EnemyShip[e].Image, false);
EnemyShip[e].Image.removeMovieClip();
EnemyShip.splice(e, 1);
if ((EnemyCount == 0) && (EnemyShip.length == 0)) {
Level = Level + 1;
ClearObjs();
PlayerShip._alpha = 0;
levelSfx.start(0, 1);
_root.gotoAndPlay(5);
}
} else if (EnemyShip[e].Health < 60) {
if (EnemyShip[e].Health > 50) {
EmitSmoke = 4;
} else if (EnemyShip[e].Health > 40) {
EmitSmoke = 6;
} else if (EnemyShip[e].Health > 30) {
EmitSmoke = 12;
} else if (EnemyShip[e].Health > 20) {
EmitSmoke = 16;
} else if (EnemyShip[e].Health > 0) {
EmitSmoke = 20;
}
EnemyShip[e].EmitCount = EnemyShip[e].EmitCount + (EmitSmoke * dt);
EmitSmokeFunc(EnemyShip[e].EmitCount, EnemyShip[e].Image);
EnemyShip[e].EmitCount = EnemyShip[e].EmitCount - int(EnemyShip[e].EmitCount);
}
}
PlayerShip.swapDepths(_root.getNextHighestDepth());
PlayerShip._rotation = PlayerShip._rotation + (TurnSpeed * dt);
var _local5 = (PlayerShip._rotation * 3.14) / 180;
PlayerShip._x = PlayerShip._x + ((Math.cos(_local5) * ShipSpeed) * dt);
PlayerShip._y = PlayerShip._y + ((Math.sin(_local5) * ShipSpeed) * dt);
KeepInStage(PlayerShip, 20);
BottomTray.swapDepths(_root.getNextHighestDepth());
Speaker.swapDepths(_root.getNextHighestDepth());
SpeakerSound.swapDepths(_root.getNextHighestDepth());
ReturnToMenu.swapDepths(_root.getNextHighestDepth());
FireDelay = FireDelay - dt;
BombDelay = BombDelay - dt;
for (_local2 in mediKit) {
mediKit[_local2]._rotation = mediKit[_local2]._rotation + (25 * dt);
mediKit[_local2]._xscale = mediKit[_local2]._xscale + (dt * 400);
mediKit[_local2]._yscale = mediKit[_local2]._yscale + (dt * 400);
if (mediKit[_local2]._xscale > 100) {
mediKit[_local2]._xscale = 100;
}
if (mediKit[_local2]._yscale > 100) {
mediKit[_local2]._yscale = 100;
}
if (PlayerShip.hitTest(mediKit[_local2])) {
Health = Health + 15;
medi_collect.start(0, 1);
if (Health > 100) {
Health = 100;
}
var _local4 = 103 * (Health / 100);
setClipRect(BottomTray.HealthBar, 103 - _local4, 0, _local4, BottomTray.HealthBar._height);
BottomTray.HealthBar._x = 6.5 + (103 - _local4);
mediKit[_local2].removeMovieClip();
mediKit.splice(_local2, 1);
}
}
if (!SoundToggle) {
SpeakerSound._visible = false;
gunShot.setVolume(0);
plane.setVolume(0);
} else {
SpeakerSound._visible = true;
gunShot.setVolume(100);
}
if (((PlayerShip._visible == false) && (explosion.length == 0)) && (Health <= 0)) {
if (HighScoresConnected) {
mochi.MochiScores.showLeaderboard({boardID:"d57d860496b39a84", score:_root.Score, onDisplay:_root.LeaderBoardVisible, onClose:_root.LeaderBoardClosed, onError:_root.LeaderBoardClosed});
UnloadAll(3);
} else {
UnloadAll(6);
}
}
}
function InStage(obj) {
return((((obj._x >= 0) && (obj._y >= 0)) && (obj._x < Stage.width)) && (obj._y < Stage.height));
}
function KeepInStage(obj, extra) {
if (obj._x < (-extra)) {
obj._x = Stage.width + extra;
} else if (obj._x > (Stage.width + extra)) {
obj._x = -extra;
}
if (obj._y < (-extra)) {
obj._y = Stage.height + extra;
} else if (obj._y > (Stage.height + extra)) {
obj._y = -extra;
}
}
function ClearObjs() {
BottomTray.removeMovieClip();
tank.Image.removeMovieClip();
tank = null;
var _local3 = 0;
while (_local3 < bullets.length) {
bullets[_local3].Image.removeMovieClip();
_local3++;
}
bullets = null;
bullets = new Array();
var _local1 = 0;
while (_local1 < explosion.length) {
explosion[_local1].removeMovieClip();
_local1++;
}
explosion = null;
explosion = new Array();
_local1 = 0;
while (_local1 < EnemyShip.length) {
EnemyShip[_local1].Image.removeMovieClip();
_local1++;
}
EnemyShip = null;
EnemyShip = new Array();
var _local2 = 0;
while (_local2 < smoke.length) {
smoke[_local2].removeMovieClip();
_local2++;
}
smoke = null;
smoke = new Array();
_local3 = 0;
while (_local3 < bomb.length) {
bomb[_local3].removeMovieClip();
_local3++;
}
bomb = null;
bomb = new Array();
bombspeed = null;
bombspeed = new Array();
_local3 = 0;
while (_local3 < mediKit.length) {
mediKit[_local3].removeMovieClip();
_local3++;
}
mediKit = null;
mediKit = new Array();
Speaker.removeMovieClip();
SpeakerSound.removeMovieClip();
ReturnToMenu.removeMovieClip();
PlayerShip._visible = false;
}
function UnloadAll(frame) {
ClearObjs();
Level = 1;
plane.stop();
_root.stop();
_root.gotoAndStop(frame);
}
function LoadGame() {
BottomTray.cacheAsBitmap = true;
mediKit = new Array();
bomb = new Array();
bombspeed = new Array();
explosion = new Array();
smoke = new Array();
bullets = new Array();
EnemyShip = new Array();
PlayerShip = _root.attachMovie("Ship2", "PlayerShip", getNextHighestDepth());
PlayerShip.cacheAsBitmap = true;
Loaded = true;
sfxClip = _root.createEmptyMovieClip("SfxClip", getNextHighestDepth());
medi_appear = new Sound(sfxClip);
medi_appear.attachSound("medi_appear");
medi_collect = new Sound(sfxClip);
medi_collect.attachSound("medi_collect");
hitSfx = new Sound(sfxClip);
hitSfx.attachSound("hit");
gunShot = new Sound(sfxClip);
gunShot.attachSound("gunshot1");
planeDive = new Sound(sfxClip);
planeDive.attachSound("plane_dive");
explode = new Sound(sfxClip);
explode.attachSound("explode");
morsecode = new Sound(sfxClip);
morsecode.attachSound("morsecode");
levelSfx = new Sound(sfxClip);
levelSfx.attachSound("levelup");
bombfallSfx = new Sound(sfxClip);
bombfallSfx.attachSound("bombfall");
planeClip = sfxClip.createEmptyMovieClip("PlaneClip", getNextHighestDepth());
plane = new Sound(planeClip);
plane.attachSound("prop1");
plane.setVolume(15);
Level = 1;
LoadLevel();
}
function setClipRect(obj, xpos, ypos, w, h) {
var _local4 = int(xpos);
var _local3 = int(ypos);
var _local1 = int(w);
var _local5 = int(h);
var _local2 = new flash.geom.Rectangle(_local4, _local3, _local1, _local5);
obj.scrollRect = _local2;
}
function AddScore(amount) {
Score = Score + amount;
BottomTray.ScoreText.text = FormatScoreText(Score);
}
function FormatScoreText(amount) {
var _local1 = "" + amount;
var _local4 = "";
var _local6 = int(_local1.length / 3);
var _local5 = 0;
var _local3 = _local1.length - 1;
var _local2 = 0;
while (_local2 < _local1.length) {
_local4 = _local4 + _local1.charAt(_local2);
if ((((_local3 == 3) && (_local1.length > 3)) || ((_local3 == 6) && (_local1.length > 6))) || ((_local3 == 9) && (_local1.length > 9))) {
_local4 = _local4 + ",";
}
_local3--;
_local2++;
}
return(_local4);
}
function LoadLevel() {
tankCount = Level * 2;
if (Level == 1) {
Score = 0;
BottomTray.ScoreText.text = "0";
}
setClipRect(BottomTray.HealthBar, 0, 0, 103, BottomTray.HealthBar._height);
BottomTray.HealthBar._x = 6.5;
PlayerShip._x = Stage.width / 2;
PlayerShip._y = Stage.height / 2;
PlayerShip._alpha = 0;
PlayerShip._visible = true;
plane.stop();
plane.setVolume(15);
plane.start(0, 99999999);
PlayerShip.gotoAndStop(1);
i = 0;
while (i < EnemyShip.length) {
EnemyShip[i].Image.removeMovieClip();
i++;
}
EnemyShip = null;
EnemyShip = new Array();
TurnSpeed = 0;
ShipSpeed = 0;
Health = 100;
FireDelay = 0;
EmitCount = 0;
switch (Level) {
case 1 :
ShipsAtATime = 1;
EnemyCount = 2;
EnemyDelay = 2;
EnemyAdDelay = 7;
break;
case 2 :
ShipsAtATime = 2;
EnemyCount = 3;
EnemyDelay = 3;
EnemyAdDelay = 7;
break;
case 3 :
ShipsAtATime = 3;
EnemyCount = 5;
EnemyDelay = 2;
EnemyAdDelay = 12;
break;
case 4 :
ShipsAtATime = 2;
EnemyCount = 6;
EnemyDelay = 2;
EnemyAdDelay = 7;
break;
case 5 :
ShipsAtATime = 2;
EnemyCount = 6;
EnemyDelay = 2;
EnemyAdDelay = 4;
break;
default :
ShipsAtATime = 3;
EnemyCount = 9;
EnemyDelay = 2;
EnemyAdDelay = 7;
}
Time = getTimer();
}
function updateEnemyAd(dt) {
if (((Level > 1) && (tank == null)) && (tankCount > 0)) {
tank = new Vehicle(Level);
tankCount--;
}
EnemyDelay = EnemyDelay - dt;
if (((EnemyDelay < 1.75) && ((EnemyDelay + dt) >= 1.75)) && (EnemyCount > 0)) {
if (ShipsAtATime > EnemyShip.length) {
morsecode.start(0, 1);
} else {
EnemyDelay = EnemyDelay + dt;
}
}
if (((EnemyDelay <= 0) && (EnemyCount > 0)) && (ShipsAtATime > EnemyShip.length)) {
i = 0;
while (i < 1) {
var _local2 = EnemyShip.length;
EnemyShip[_local2] = new AirPlane(Level);
EnemyShip[_local2].Image = _root.attachMovie("Ship3", "EnemyShip_" + UniqueID, getNextHighestDepth());
UniqueID++;
EnemyShip[_local2].Image.cacheAsBitmap = true;
var _local3 = Math.random() * 100;
if (_local3 < 25) {
EnemyShip[_local2].SetPos(Math.random() * Stage.width, -30);
} else if (_local3 < 50) {
EnemyShip[_local2].SetPos(Math.random() * Stage.width, Stage.height + 30);
} else if (_local3 < 75) {
EnemyShip[_local2].SetPos(-30, Math.random() * Stage.height);
} else if (_local3 < 100) {
EnemyShip[_local2].SetPos(Stage.width + 30, Math.random() * Stage.height);
}
EnemyCount--;
i++;
}
EnemyDelay = EnemyAdDelay;
}
}
stop();
var TempScore = -1;
var UniqueID = 0;
var fC = 0;
_root.onEnterFrame = function () {
if (!Loaded) {
LoadGame();
}
var _local1 = getTimer();
dt = (_local1 - Time) / 1000;
UpdateFrame();
updateObj(dt);
Time = _local1;
};
Instance of Symbol 65 MovieClip [SpeakerIconOn] "SpeakerSound" in Frame 4
on (release) {
_root.SoundToggle = !_root.SoundToggle;
}
Instance of Symbol 62 MovieClip [Speaker] "Speaker" in Frame 4
on (release) {
_root.SoundToggle = !_root.SoundToggle;
}
Instance of Symbol 127 MovieClip "ReturnToMenu" in Frame 4
on (release) {
_root.UnloadAll(3);
}
Instance of Symbol 130 MovieClip in Frame 4
on (release) {
getURL ("http://www.oceanbreezegames.com/Online-Games/", "_blank");
}
Frame 5
function updateWT(dt) {
fC = fC + (dt / 0.01);
if (fC >= 1) {
var _local1 = 0;
while (_local1 < int(fC)) {
if (WaveText._currentframe == WaveText._totalframes) {
} else {
WaveText.nextFrame();
}
_local1++;
}
fC = fC - int(fC);
}
}
var wtId = -1;
var fC = 0;
var TTime = getTimer();
onEnterFrame = function () {
var _local2 = getTimer();
dt = (_local2 - TTime) / 1000;
updateWT(dt);
TTime = _local2;
WaveText.Wave.text = "WAVE " + _root.Level;
};
stop();
Frame 6
var goId = -1;
var Home = false;
var ibProArcade = false;
var mindjolt = false;
var ScoreSubmitted = false;
SubmitScoreMC._visible = false;
OBHSMC._visible = false;
onEnterFrame = function () {
if (goId == -1) {
var _local3 = new LocalConnection();
var _local2 = _local3.domain();
Home = _local2.indexOf("oceanbreezegames.com", 0) != -1;
FinalScoreMC.FinalScoreText.text = "Final Score: " + _root.FormatScoreText(_root.Score);
if (ScoreSubmitted == false) {
_root.HPScoreService.postScore(_root.Score, "");
ScoreSubmitted = true;
}
}
};
stop();
Instance of Symbol 136 MovieClip in Frame 6
on (release) {
_root.gotoAndStop("3");
}
Symbol 21 MovieClip [Ship2] Frame 1
stop();
Symbol 21 MovieClip [Ship2] Frame 126
stop();
Symbol 26 MovieClip [Smoke] Frame 1
stop();
Symbol 26 MovieClip [Smoke] Frame 60
stop();
Symbol 29 MovieClip [Ship3] Frame 1
stop();
Symbol 29 MovieClip [Ship3] Frame 2
stop();
Symbol 29 MovieClip [Ship3] Frame 120
stop();
Symbol 33 MovieClip [Explosion] Frame 1
stop();
Symbol 33 MovieClip [Explosion] Frame 32
stop();
Symbol 44 MovieClip [Bomb] Frame 1
stop();
Symbol 44 MovieClip [Bomb] Frame 120
stop();
Symbol 52 MovieClip [FinalScoreMC] Frame 1
stop();
Symbol 54 MovieClip [GOTextMC] Frame 1
stop();
Symbol 59 MovieClip [WaveText] Frame 1
stop();
Symbol 59 MovieClip [WaveText] Frame 240
_root.LoadLevel();
_root.gotoAndPlay(4);
this.gotoAndStop(1);
Symbol 137 MovieClip [__Packages.Vehicle] Frame 0
class Vehicle
{
var Image, Speed, destX, destY;
function Vehicle (Level) {
Image = _root.attachMovie("Tank", "Tank_1", _root.getNextHighestDepth());
Image.cacheAsBitmap = true;
var _local3 = Math.random() * 100;
if (_local3 < 25) {
SetPos(Math.random() * Stage.width, -30);
} else if (_local3 < 50) {
SetPos(Math.random() * Stage.width, Stage.height + 30);
} else if (_local3 < 75) {
SetPos(-30, Math.random() * Stage.height);
} else if (_local3 < 100) {
SetPos(Stage.width + 30, Math.random() * Stage.height);
}
Speed = (Level * 10) + 15;
destX = Math.random() * Stage.width;
destY = Math.random() * Stage.height;
}
function SetPos(xIn, yIn) {
Image._x = xIn;
Image._y = yIn;
}
function Update(dt) {
var _local5 = (Image._rotation * 3.14) / 180;
var _local2 = Math.atan2(destY - Image._y, destX - Image._x);
_local2 = _local2 * 57.29;
if (_local2 < 0) {
_local2 = -_local2;
} else if (_local2 > 0) {
_local2 = 180 + (180 - _local2);
}
var _local3 = Image._rotation;
if (_local3 < 0) {
_local3 = -_local3;
} else if (_local3 > 0) {
_local3 = 180 + (180 - _local3);
}
if ((_local2 > 180) && (_local3 < 180)) {
_local3 = _local3 + 360;
}
if ((_local2 < 180) && (_local3 > 180)) {
_local3 = _local3 - 360;
}
var _local6 = _local3 - _local2;
if (Math.abs(_local6) > 1) {
if (Math.abs(_local6) > 180) {
if (_local3 < _local2) {
Image._rotation = Image._rotation + (dt * 80);
} else {
Image._rotation = Image._rotation - (dt * 80);
}
} else if (_local3 > _local2) {
Image._rotation = Image._rotation + (dt * 80);
} else {
Image._rotation = Image._rotation - (dt * 80);
}
}
if ((Math.abs(destY - Image._y) < 5) && (Math.abs(destX - Image._x) < 5)) {
destX = Math.random() * Stage.width;
destY = Math.random() * Stage.height;
}
Image._x = Image._x + ((Math.cos(_local5) * Speed) * dt);
Image._y = Image._y + ((Math.sin(_local5) * Speed) * dt);
}
}
Symbol 138 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.1");
}
static function showPreGameAd(options) {
var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local27);
var clip = options.clip;
var _local23 = 11000;
var _local26 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4);
_local7._x = 10;
_local7._y = _local13 - 20;
var _local22 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local24 = options.outline;
delete options.outline;
var _local5 = _local7.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local7.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local22);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local6 = _local7.createEmptyMovieClip("_outline", 3);
_local6.lineStyle(0, _local24, 100);
_local6.moveTo(0, 0);
_local6.lineTo(_local4 - 20, 0);
_local6.lineTo(_local4 - 20, 10);
_local6.lineTo(0, 10);
_local6.lineTo(0, 0);
chk.ad_msec = _local23;
chk.ad_timeout = _local26;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local12 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local10 = (100 * _local8) / _local4;
var _local11 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local2 = Math.min(100, Math.min(_local10 || 0, _local11));
_local2 = Math.max(this.last_pcnt, _local2);
this.last_pcnt = _local2;
_local9._xscale = _local2;
if (!chk.showing) {
var _local7 = _local12.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local5 > chk.ad_timeout) {
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showTimedAd(options) {
showInterLevelAd(options);
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function _loadCommunicator(options) {
var _local26 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local26);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local18 = options.clip;
var _local20 = "_mochiad_com_" + options.id;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local18[_local20]) {
return(_local18[_local20].lc);
}
var _local21 = options.com_server + options.id;
_allowDomains(_local21);
delete options.id;
delete options.com_server;
var _local25 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local25);
var _local11 = _local17.createEmptyMovieClip("_mochiad_com", 1);
for (var _local15 in options) {
_local11[_local15] = options[_local15];
}
var _local6 = new LocalConnection();
var _local16 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local6.mc = _local17;
_local6.name = _local16;
_local6.allowDomain = function (d) {
return(true);
};
_local6.allowInsecureDomain = _local6.allowDomain;
_local6.connect(_local16);
_local17.lc = _local6;
_local11.lc = _local16;
_local6._id = 0;
_local6._queue = [];
_local6.rpcResult = function (cb_arg) {
var _local8 = parseInt(cb_arg);
var _local4 = this._callbacks[_local8];
if (!_local4) {
return(undefined);
}
delete this._callbacks[_local8];
var _local5 = [];
var _local3 = 2;
while (_local3 < _local4.length) {
_local5.push(_local4[_local3]);
_local3++;
}
_local3 = 1;
while (_local3 < arguments.length) {
_local5.push(arguments[_local3]);
_local3++;
}
var _local6 = _local4[1];
var _local7 = _local4[0];
if (_local7 && (typeof(_local6) == "string")) {
_local6 = _local7[_local6];
}
if (_local6) {
_local6.apply(_local7, _local5);
}
};
_local6._didConnect = function (endpoint) {
this._endpoint = endpoint;
var _local4 = this._queue;
delete this._queue;
var _local5 = this.doSend;
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local5.apply(this, _local3);
_local2++;
}
};
_local6.doSend = function (args, cbobj, cbfn) {
if (this._endpoint == null) {
var _local4 = [];
var _local3 = 0;
while (_local3 < arguments.length) {
_local4.push(arguments[_local3]);
_local3++;
}
this._queue.push(_local4);
return(undefined);
}
this._id = this._id + 1;
var _local5 = this._id;
if ((cbfn === undefined) || (cbfn === null)) {
cbfn = cbobj;
}
this._callbacks[_local5] = [cbobj, cbfn];
var _local7 = new LocalConnection();
var _local9 = _local7.send(this._endpoint, "rpc", _local5, args);
};
_local6._callbacks = {};
_local6._callbacks[0] = [_local6, "_didConnect"];
_local11.st = getTimer();
_local11.loadMovie(_local21 + ".swf", "POST");
return(_local6);
}
static function fetchHighScores(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["fetchHighScores", options];
_local1.doSend(["fetchHighScores", options], callbackObj, callbackMethod);
return(true);
}
static function sendHighScore(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["sendHighScore", options];
_local1.doSend(["sendHighScore", options], callbackObj, callbackMethod);
return(true);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local4);
}
}
Symbol 139 MovieClip [__Packages.mochi.MochiServices] Frame 0
class mochi.MochiServices
{
static var _id, _container, _sendChannelName, _rcvChannelName, __get__comChannelName, onError, _sendChannel, _loader, _loaderListener, _rcvChannel, _listenChannel;
function MochiServices () {
}
static function get id() {
return(_id);
}
static function get clip() {
return(_container);
}
static function getVersion() {
return("1.1");
}
static function allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function get isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function set comChannelName(val) {
if (val != undefined) {
if (val.length > 3) {
_sendChannelName = val + "_fromgame";
_rcvChannelName = val;
initComChannels();
}
}
//return(__get__comChannelName());
}
static function get connected() {
return(_connected);
}
static function connect(id, clip, onError) {
if ((!_connected) && (_container == undefined)) {
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
}
if (onError != undefined) {
mochi.MochiServices.onError = onError;
} else if (mochi.MochiServices.onError == undefined) {
mochi.MochiServices.onError = function (errorCode) {
trace(errorCode);
};
}
}
static function disconnect() {
if (_connected || (_connecting)) {
_connecting = (_connected = false);
if (_sendChannel._queue != undefined) {
}
if (_container != undefined) {
_container.removeMovieClip();
delete _container;
}
}
}
static function init(id, clip) {
_id = id;
if (clip != undefined) {
_container = clip.createEmptyMovieClip("__mochiservicesMC", clip.getNextHighestDepth());
} else {
_container = _root.createEmptyMovieClip("__mochiservicesMC", _root.getNextHighestDepth());
}
loadCommunicator(id, _container);
}
static function loadCommunicator(id, clip) {
if (!isNetworkAvailable) {
return(undefined);
}
allowDomains(_gatewayURL);
_loader = new MovieClipLoader();
_loaderListener = {};
_loaderListener.onLoadError = function (target_mc, errorCode, httpStatus) {
trace("MochiServices could not load.");
mochi.MochiServices.disconnect();
mochi.MochiServices.onError.apply(null, [errorCode]);
};
_loader.addListener(_loaderListener);
_loader.loadClip(_gatewayURL, clip);
_sendChannel = new LocalConnection();
_sendChannel._queue = [];
_rcvChannel = new LocalConnection();
_rcvChannel.allowDomain = function (d) {
return(true);
};
_rcvChannel.allowInsecureDomain = _rcvChannel.allowDomain;
_rcvChannel._nextcallbackID = 0;
_rcvChannel._callbacks = {};
listen();
}
static function onStatus(infoObject) {
if (!(infoObject.level === "error")) {
} else {
_connected = false;
_listenChannel.connect(_listenChannelName);
}
}
static function listen() {
_listenChannel = new LocalConnection();
_listenChannel.handshake = function (args) {
mochi.MochiServices.__set__comChannelName(args.newChannel);
};
_listenChannel.allowDomain = function (d) {
return(true);
};
_listenChannel.allowInsecureDomain = _listenChannel.allowDomain;
_listenChannel.connect(_listenChannelName);
trace("Waiting for MochiAds services to connect...");
}
static function initComChannels() {
if (!_connected) {
_sendChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_container, version:getVersion()});
_rcvChannel.onStatus = function (infoObject) {
mochi.MochiServices.onStatus(infoObject);
};
_rcvChannel.onReceive = function (pkg) {
var _local5 = pkg.callbackID;
var _local4 = this._callbacks[_local5];
if (!_local4) {
return(undefined);
}
var _local2 = _local4.callbackMethod;
var _local3 = _local4.callbackObject;
if (_local3 && (typeof(_local2) == "string")) {
_local2 = _local3[_local2];
}
if (_local2 != undefined) {
_local2.apply(_local3, pkg.args);
}
delete this._callbacks[_local5];
};
_rcvChannel.onError = function () {
mochi.MochiServices.onError.apply(null, ["IOError"]);
};
_rcvChannel.connect(_rcvChannelName);
trace("connected!");
_connecting = false;
_connected = true;
_listenChannel.close();
while (_sendChannel._queue.length > 0) {
_sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift());
}
}
}
static function send(methodName, args, callbackObject, callbackMethod) {
if (_connected) {
_sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
} else if (_container == undefined) {
onError.apply(null, ["NotConnected"]);
} else {
_sendChannel._queue.push({methodName:methodName, args:args, callbackID:_rcvChannel._nextcallbackID});
}
_rcvChannel._callbacks[_rcvChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod};
_rcvChannel._nextcallbackID++;
}
static var _gatewayURL = "http://www.mochiads.com/static/lib/services/services.swf";
static var _listenChannelName = "__mochiservices";
static var _connecting = false;
static var _connected = false;
}
Symbol 140 MovieClip [__Packages.Bullet] Frame 0
class Bullet
{
var id;
function Bullet () {
id = 0;
}
}
Symbol 141 MovieClip [__Packages.mochi.MochiScores] Frame 0
class mochi.MochiScores
{
static var boardID, onClose, onError;
function MochiScores () {
}
static function setBoardID(boardID) {
mochi.MochiScores.boardID = boardID;
mochi.MochiServices.send("scores_setBoardID", {boardID:boardID});
}
static function showLeaderboard(options) {
if (options.clip != null) {
if (options.clip.__mochiservicesMC != mochi.MochiServices.__get__clip()) {
mochi.MochiServices.disconnect();
mochi.MochiServices.connect(mochi.MochiServices.__get__id(), options.clip);
}
delete options.clip;
}
if (options.onDisplay != null) {
options.onDisplay();
} else {
mochi.MochiServices.__get__clip().stop();
}
if (options.onClose != null) {
onClose = options.onClose;
} else {
onClose = function () {
if (mochi.MochiServices.__get__clip() == _root.__mochiservicesMC) {
mochi.MochiServices.__get__clip()._parent.play();
} else {
mochi.MochiServices.__get__clip().play();
}
};
}
if (options.onError != null) {
onError = options.onError;
} else {
onError = onClose;
}
if (options.boardID == null) {
if (boardID != null) {
options.boardID = boardID;
}
}
mochi.MochiServices.send("scores_showLeaderboard", {options:options}, null, doClose);
}
static function getPlayerInfo(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_getPlayerInfo", null, callbackObj, callbackMethod);
}
static function submit(score, name, callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_submit", {score:score, name:name}, callbackObj, callbackMethod);
}
static function requestList(callbackObj, callbackMethod) {
mochi.MochiServices.send("scores_requestList", null, callbackObj, callbackMethod);
}
static function doClose(args) {
if (args.error == true) {
onError.apply(null, [args.errorCode, args.httpStatus]);
} else {
onClose.apply();
}
}
}
Symbol 142 MovieClip [__Packages.AirPlane] Frame 0
class AirPlane
{
var avoidDir, fC, FireTime, State, EmitCount, ShipSpeed, AvoidTime, FollowTime, Health, TurnSpeed, MaxSpeed, FireTimeDelay, Turning, Image;
function AirPlane (Level) {
avoidDir = 0;
fC = 0;
FireTime = 0;
State = SCOUT;
EmitCount = 0;
ShipSpeed = 120;
AvoidTime = 0;
FollowTime = 5;
switch (Level) {
case 1 :
Health = 70;
TurnSpeed = (Math.random() * 10) + 80;
MaxSpeed = (Math.random() * 10) + 130;
FireTimeDelay = 0.5;
break;
case 2 :
Health = 77;
TurnSpeed = (Math.random() * 15) + 85;
MaxSpeed = (Math.random() * 20) + 130;
FireTimeDelay = 0.5;
break;
case 3 :
Health = 85;
TurnSpeed = (Math.random() * 20) + 95;
MaxSpeed = (Math.random() * 15) + 140;
FireTimeDelay = 0.5;
break;
case 4 :
Health = 85;
TurnSpeed = (Math.random() * 10) + 105;
MaxSpeed = (Math.random() * 25) + 150;
FireTimeDelay = 0.4;
break;
case 5 :
Health = 80;
TurnSpeed = (Math.random() * 5) + 125;
MaxSpeed = (Math.random() * 30) + 160;
FireTimeDelay = 0.35;
break;
default :
Health = 70;
TurnSpeed = (Math.random() * 5) + 135;
MaxSpeed = (Math.random() * 20) + 210;
FireTimeDelay = 0.25;
}
Turning = false;
}
function Fire() {
if (((((FireTime <= 0) && (State != DEATH)) && (State != REMOVE_ME)) && (!Turning)) && (State != AVOID_PLAYER)) {
FireTime = FireTimeDelay;
return(true);
}
return(false);
}
function SetPos(xIn, yIn) {
Image._x = xIn;
Image._y = yIn;
}
function DeathFrameUpdate(dt) {
if (State != DEATH) {
return(undefined);
}
fC = fC + (dt / 0.01);
var _local3 = Math.floor(fC);
fC = fC - Math.floor(fC);
if (_local3 >= 1) {
var _local2 = 0;
while (_local2 < _local3) {
if (Image._currentframe == Image._totalframes) {
Image._visible = false;
} else {
Image.nextFrame();
}
_local2++;
}
}
}
function Hit(damage) {
if (Health <= 0) {
return(undefined);
}
Health = Health - damage;
if (Health <= 0) {
State = DEATH;
Image.gotoAndPlay(2);
_root.planeDive.start(0, 1);
_root.AddScore(2200 + (325 * _root.Level));
}
}
function Update(dt) {
DeathFrameUpdate(dt);
FireTime = FireTime - dt;
switch (State) {
case SCOUT :
FollowPlayer(dt);
break;
case AVOID_PLAYER :
AvoidPlayer(dt);
}
if (State != DEATH) {
if (ShipSpeed > MaxSpeed) {
ShipSpeed = MaxSpeed;
}
} else {
ShipSpeed = ShipSpeed * (1 - (dt * 1.8));
if (Image._currentframe == Image._totalframes) {
State = REMOVE_ME;
_root.explode.start(0, 1);
}
}
Image.swapDepths(_root.getNextHighestDepth());
var _local4 = (Image._rotation * 3.14) / 180;
Image._x = Image._x + ((Math.cos(_local4) * ShipSpeed) * dt);
Image._y = Image._y + ((Math.sin(_local4) * ShipSpeed) * dt);
}
function AvoidPlayer(dt) {
var _local10 = ((Math.cos((_root.PlayerShip._rotation * Math.PI) / 180) * 200) * dt) + _root.PlayerShip._x;
var _local8 = ((Math.sin((_root.PlayerShip._rotation * Math.PI) / 180) * 200) * dt) + _root.PlayerShip._y;
var _local12 = Image._x;
var _local11 = Image._y;
var _local9 = _local10 - _local12;
var _local7 = _local8 - _local11;
var _local3 = Math.atan2(_local7, _local9);
if (avoidDir > 0.5) {
_local3 = _local3 - (Math.PI/2);
} else {
_local3 = _local3 + (Math.PI/2);
}
_local3 = _local3 * 57.29;
if (_local3 < 0) {
_local3 = -_local3;
} else if (_local3 > 0) {
_local3 = 180 + (180 - _local3);
}
var _local4 = Image._rotation;
if (_local4 < 0) {
_local4 = -_local4;
} else if (_local4 > 0) {
_local4 = 180 + (180 - _local4);
}
if ((_local3 > 180) && (_local4 < 180)) {
_local4 = _local4 + 360;
}
if ((_local3 < 180) && (_local4 > 180)) {
_local4 = _local4 - 360;
}
var _local6 = _local4 - _local3;
if (Math.abs(_local6) > 10) {
ShipSpeed = ShipSpeed - (dt * 10);
if (ShipSpeed < 120) {
ShipSpeed = 120;
}
if (Math.abs(_local6) > 180) {
if (_local4 < _local3) {
TurnLeft(dt);
} else {
TurnRight(dt);
}
} else if (_local4 > _local3) {
TurnLeft(dt);
} else {
TurnRight(dt);
}
Turning = true;
} else {
Turning = false;
ShipSpeed = ShipSpeed + (dt * ((Math.random() * 50) + 40));
}
AvoidTime = AvoidTime - dt;
if (AvoidTime < 0) {
State = SCOUT;
FollowTime = (Math.random() * 5) + 8;
}
}
function FollowPlayer(dt) {
var _local10 = ((Math.cos((_root.PlayerShip._rotation * Math.PI) / 180) * 200) * dt) + _root.PlayerShip._x;
var _local8 = ((Math.sin((_root.PlayerShip._rotation * Math.PI) / 180) * 200) * dt) + _root.PlayerShip._y;
var _local12 = Image._x;
var _local11 = Image._y;
var _local9 = _local10 - _local12;
var _local7 = _local8 - _local11;
var _local3 = Math.atan2(_local7, _local9);
_local3 = _local3 * 57.29;
if (_local3 < 0) {
_local3 = -_local3;
} else if (_local3 > 0) {
_local3 = 180 + (180 - _local3);
}
var _local4 = Image._rotation;
if (_local4 < 0) {
_local4 = -_local4;
} else if (_local4 > 0) {
_local4 = 180 + (180 - _local4);
}
if ((_local3 > 180) && (_local4 < 180)) {
_local4 = _local4 + 360;
}
if ((_local3 < 180) && (_local4 > 180)) {
_local4 = _local4 - 360;
}
var _local6 = _local4 - _local3;
if (Math.abs(_local6) > 10) {
ShipSpeed = ShipSpeed - (dt * 10);
if (ShipSpeed < 120) {
ShipSpeed = 120;
}
if (Math.abs(_local6) > 180) {
if (_local4 < _local3) {
TurnLeft(dt);
} else {
TurnRight(dt);
}
} else if (_local4 > _local3) {
TurnLeft(dt);
} else {
TurnRight(dt);
}
Turning = true;
} else {
Turning = false;
ShipSpeed = ShipSpeed + (dt * ((Math.random() * 50) + 40));
}
FollowTime = FollowTime - dt;
if (FollowTime < 0) {
avoidDir = Math.random();
State = AVOID_PLAYER;
AvoidTime = (Math.random() * 3) + 4;
}
}
function TurnLeft(dt) {
Image._rotation = Image._rotation + (TurnSpeed * dt);
if (Image._rotation < 360) {
Image._rotation = Image._rotation - 360;
}
}
function TurnRight(dt) {
Image._rotation = Image._rotation - (TurnSpeed * dt);
if (Image._rotation < 0) {
Image._rotation = Image._rotation + 360;
}
}
var SCOUT = 0;
var FLEE = 1;
var ATTACK = 2;
var DEATH = 3;
var REMOVE_ME = 4;
var AVOID_PLAYER = 5;
}
Symbol 90 MovieClip Frame 40
stop();
Symbol 114 MovieClip Frame 1
var guitar = new Sound(_root);
guitar.attachSound("Guitar");
guitar.start(0);
Instance of Symbol 79 MovieClip in Symbol 114 MovieClip Frame 1
on (release) {
getURL ("http://www.gameserpent.com", "_blank");
}
Instance of Symbol 102 MovieClip in Symbol 114 MovieClip Frame 1
on (release) {
getURL ("http://www.oceanbreezegames.com", "_blank");
}
Instance of Symbol 113 MovieClip in Symbol 114 MovieClip Frame 1
on (release) {
getURL ("http://www.busybeearcade.com", "_blank");
}
Instance of Symbol 96 MovieClip in Symbol 114 MovieClip Frame 40
on (release) {
getURL ("http://www.busybeearcade.com", "_blank");
}
Symbol 114 MovieClip Frame 60
stop();
Instance of Symbol 102 MovieClip in Symbol 114 MovieClip Frame 60
on (release) {
getURL ("http://www.oceanbreezegames.com", "_blank");
}
onClipEvent (load) {
var LogoRad = 0;
var bmp = (new flash.display.BitmapData(210, 172));
var map = _root.createEmptyMovieClip("map", _root.getNextHighestDepth());
map = _root.attachMovie("Filter", "filter_1", _root.getNextHighestDepth());
bmp.draw(map);
map.removeMovieClip();
var pt = (new flash.geom.Point(0, 0));
var dMapFilter = (new flash.filters.DisplacementMapFilter(bmp, pt, 1, 1, 4, 4, "ignore", 0, 0));
var filterArray = new Array(dMapFilter);
this.filters = filterArray;
}
onClipEvent (enterFrame) {
dMapFilter.scaleX = Math.cos(LogoRad) * 3.5;
dMapFilter.scaleY = Math.sin(LogoRad) * 3.5;
LogoRad = LogoRad + 0.05;
filterArray[0] = dMapFilter;
this.filters = filterArray;
}
Symbol 119 Button
on (release) {
if (Loaded) {
LoadLevel(Level);
}
this.gotoAndPlay(5);
}
Symbol 122 Button
on (release) {
getURL ("http://www.oceanbreezegames.com/index.php?games=online", "_self");
}
Symbol 133 MovieClip Frame 30
stop();