Section 1
//Mc (basic.Mc)
package basic {
import flash.display.*;
import flash.events.*;
public class Mc extends MovieClip {
public function Mc(){
Global.addEvent(this, this, Event.ADDED_TO_STAGE, added);
}
public function added(_arg1:Event=null):void{
Global.removeEvent(this, Event.ADDED_TO_STAGE, added);
Global.addEvent(this, this, Event.REMOVED_FROM_STAGE, removed);
Global.addMc(this);
}
public function removed(_arg1:Event=null):void{
Global.removeEvent(this, Event.REMOVED_FROM_STAGE, removed);
Common.stopAll(this);
Global.delMc(this);
}
}
}//package basic
Section 2
//Obj (basic.Obj)
package basic {
public class Obj {
public function Obj(){
Global.addObj(this);
}
public function clear():void{
Global.delObj(this);
}
}
}//package basic
Section 3
//Sp (basic.Sp)
package basic {
import flash.display.*;
import flash.events.*;
public class Sp extends Sprite {
public function Sp(){
Global.addEvent(this, this, Event.ADDED_TO_STAGE, added);
}
public function added(_arg1:Event=null):void{
Global.removeEvent(this, Event.ADDED_TO_STAGE, added);
Global.addEvent(this, this, Event.REMOVED_FROM_STAGE, removed);
Global.addMc(this);
}
public function removed(_arg1:Event=null):void{
Global.removeEvent(this, Event.REMOVED_FROM_STAGE, removed);
Common.stopAll(this);
Global.delMc(this);
}
}
}//package basic
Section 4
//KeyCatcher (ctrl.KeyCatcher)
package ctrl {
import flash.events.*;
import basic.*;
public class KeyCatcher extends Sp {
private var keyDownFArr:Array;
private var keyFlags:Array;
public var onKeyUp:Function;
public var onKeyDown:Function;
public function KeyCatcher(){
keyFlags = new Array(0x0100);
super();
clear();
this.focusRect = false;
Global.addEvent(this, this, KeyboardEvent.KEY_DOWN, keyDown);
Global.addEvent(this, this, KeyboardEvent.KEY_UP, keyUp);
Global.addEvent(this, this, FocusEvent.FOCUS_OUT, onFocusOut);
onKeyDown = function ():void{
};
keyDownFArr = new Array(0x0100);
}
override public function added(_arg1:Event=null):void{
super.added();
stage.focus = this;
}
public function isDown(_arg1:int):Boolean{
return (keyFlags[_arg1]);
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(this, KeyboardEvent.KEY_DOWN, keyDown);
Global.removeEvent(this, KeyboardEvent.KEY_UP, keyUp);
Global.removeEvent(this, FocusEvent.FOCUS_OUT, onFocusOut);
super.removed();
stage.focus = null;
keyFlags = null;
onKeyDown = null;
onKeyUp = null;
keyDownFArr = null;
}
private function keyUp(_arg1:KeyboardEvent):void{
keyFlags[_arg1.keyCode] = false;
}
private function onFocusOut(_arg1:FocusEvent){
stage.focus = this;
}
public function addKeyDownF(_arg1:int, _arg2:Function):void{
keyDownFArr[_arg1] = _arg2;
}
public function clear():void{
keyFlags = new Array(0x0100);
}
private function keyDown(_arg1:KeyboardEvent):void{
if (Global.pause){
return;
};
if (keyFlags[_arg1.keyCode]){
} else {
onKeyDown(_arg1.keyCode);
keyFlags[_arg1.keyCode] = true;
};
if (keyDownFArr[_arg1.keyCode] != null){
var _local2 = keyDownFArr;
_local2[_arg1.keyCode](_arg1.keyCode);
};
}
public function delKeyDownF(_arg1:int):void{
keyDownFArr[_arg1] = null;
}
}
}//package ctrl
Section 5
//BmdsSwep (effect.BmdsSwep)
package effect {
import flash.display.*;
import basic.*;
public class BmdsSwep extends Mc {
private var id:int;
public var imgs2:MovieClip;
public var imgs1:MovieClip;
private var total:int;
public function BmdsSwep(){
addFrameScript(0, frame1);
total = imgs1.totalFrames;
id = 1;
imgs2.gotoAndStop(id);
}
public function swep():void{
imgs1.gotoAndStop(id);
if (++id > total){
id = 1;
};
imgs2.gotoAndStop(id);
}
function frame1(){
swep();
}
}
}//package effect
Section 6
//FadeBmdIn (effect.FadeBmdIn)
package effect {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import basic.*;
public class FadeBmdIn extends Sp {
private var maskRec:MovieClip;
private var bmpMc:MovieClip;
private var bmd:TestBmd;
public var onHide:Function;
private var boxRec:MovieClip;
private var lineAlpha:Number;
private var lineColor:int;
public function FadeBmdIn(){
super();
onHide = function ():void{
};
}
public function init(_arg1, _arg2:Number, _arg3:Number, _arg4:int=0, _arg5:Number=0){
lineColor = _arg4;
lineAlpha = _arg5;
this.addChild((bmpMc = new MovieClip()));
bmpMc.x = (-(_arg2) / 2);
bmpMc.y = (-(_arg3) / 2);
bmpMc.addChild(new Bitmap((bmd = Common.getRectContainBmd(_arg1, bmpMc, new Rectangle(0, 0, (_arg2 / bmpMc.scaleX), (_arg3 / bmpMc.scaleY))))));
this.addChild((maskRec = new MovieClip()));
maskRec.graphics.clear();
maskRec.graphics.beginFill(0xFF0000, 1);
maskRec.graphics.drawRect(bmpMc.x, bmpMc.y, bmpMc.width, bmpMc.height);
maskRec.graphics.endFill();
bmpMc.mask = maskRec;
this.addChild((boxRec = new MovieClip()));
Global.addEvent(this, stage, Event.ENTER_FRAME, hideRun);
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, hideRun);
super.removed();
if (bmd != null){
bmd.dispose();
bmd = null;
};
bmpMc = null;
maskRec = null;
boxRec = null;
onHide = null;
}
private function hideRun(_arg1:Event):void{
maskRec.scaleX = (maskRec.scaleX * 0.6);
maskRec.scaleY = (maskRec.scaleY * 0.6);
boxRec.graphics.clear();
if (maskRec.height < 1){
onHide();
if (bmd != null){
bmd.dispose();
bmd = null;
};
Global.removeEvent(stage, Event.ENTER_FRAME, hideRun);
this.parent.removeChild(this);
return;
};
boxRec.graphics.lineStyle(1, lineColor, lineAlpha);
boxRec.graphics.drawRect((-(maskRec.width) / 2), (-(maskRec.height) / 2), maskRec.width, maskRec.height);
}
}
}//package effect
Section 7
//FadeEffect (effect.FadeEffect)
package effect {
import flash.events.*;
import basic.*;
public class FadeEffect extends Mc {
public var onShow:Function;
public var onHide:Function;
public function FadeEffect(){
super();
Global.fadeEffect = this;
onShow = function ():void{
};
onHide = function ():void{
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
onShow = null;
onHide = null;
Global.fadeEffect = null;
}
public function flip():void{
}
public function fadeRun(_arg1:Event):void{
}
public function hide():void{
}
public function fadeShow():void{
}
public function fadeHide():void{
}
public function show():void{
}
}
}//package effect
Section 8
//FadeTank2008 (effect.FadeTank2008)
package effect {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class FadeTank2008 extends FadeEffect {
private var maskRec:Rec;
private var hei:Number;
private var fbi:FadeBmdIn;
private var rec:Rec;
private var __maskMc:MovieClip;
private var onFade:Function;
private var wid:Number;
private var heit:Number;
private var widt:Number;
public function FadeTank2008(){
addFrameScript(10, frame11, 11, frame12, 98, frame99, 99, frame100);
wid = this.width;
hei = this.height;
this.scaleX = (this.scaleY = 1);
this.gotoAndStop("nothing");
}
public function fadeTo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{
var _wid0 = _arg1;
var _hei0 = _arg2;
var _widt = _arg3;
var _heit = _arg4;
widt = _widt;
heit = _heit;
addRec(_wid0, _hei0);
onFade = function ():void{
};
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
Global.addEvent(this, stage, Event.ENTER_FRAME, fadeRun);
this.stop();
}
private function addRec(_arg1:Number, _arg2:Number):void{
if (rec == null){
this.addChildAt((rec = new Rec(wid, hei, 0xFF00, 1, 0, 1)), 0);
};
rec.width = _arg1;
rec.height = _arg2;
if (maskRec == null){
this.addChildAt((maskRec = new Rec(wid, hei, 0, 0, 0xFF0000, 1)), 1);
maskRec.cacheAsBitmap = true;
};
maskRec.width = _arg1;
maskRec.height = _arg2;
if (maskMc == null){
maskRec.visible = false;
} else {
maskRec.visible = true;
maskMc.mask = maskRec;
};
}
override public function hide():void{
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
addRec(0, 0);
this.gotoAndStop("hide");
}
public function set maskMc(_arg1:MovieClip):void{
__maskMc = _arg1;
__maskMc.visible = false;
__maskMc.cacheAsBitmap = true;
Common.moveTo(__maskMc, this);
}
function frame12(){
stop();
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
super.removed();
onFade = null;
rec = null;
maskRec = null;
maskMc = null;
fbi = null;
}
function frame100(){
stop();
}
override public function flip():void{
this.addChild((fbi = new FadeBmdIn()));
fbi.init(Global.main, wid, hei, 0xFF00, 1);
fbi.onHide = function ():void{
fbi = null;
gotoAndPlay("fadeHide");
};
}
public function onDrop():void{
fadeTo(1, 1, wid, 1);
onFade = function ():void{
heit = hei;
fadeTo(wid, 1, wid, hei);
onFade = function ():void{
maskMc.visible = false;
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
show();
onShow();
onShow = function ():void{
};
};
};
}
override public function fadeRun(_arg1:Event):void{
var _local2:Point;
_local2 = new Point((widt - rec.width), (heit - rec.height));
if (_local2.length < 1){
rec.width = (maskRec.width = widt);
rec.height = (maskRec.height = heit);
onFade();
return;
};
rec.width = (maskRec.width = (maskRec.width + (_local2.x * 0.4)));
rec.height = (maskRec.height = (maskRec.height + (_local2.y * 0.4)));
}
override public function fadeShow():void{
addRec(0, 0);
this.gotoAndPlay("fadeShow");
}
private function delRec():void{
if (rec != null){
this.removeChild(rec);
rec = null;
};
if (maskRec != null){
if (maskMc != null){
maskMc.mask = null;
};
this.removeChild(maskRec);
maskRec = null;
};
}
function frame11(){
onDrop();
}
public function get maskMc():MovieClip{
return (__maskMc);
}
function frame99(){
onHide();
}
override public function fadeHide():void{
maskMc.visible = true;
maskMc.gotoAndStop((int((Math.random() * maskMc.totalFrames)) + 1));
fadeTo(wid, hei, wid, 1);
onFade = function ():void{
fadeTo(wid, 1, 1, 1);
onFade = function ():void{
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
addRec(0, 0);
gotoAndPlay("fadeHide");
};
};
}
override public function show():void{
Global.removeEvent(stage, Event.ENTER_FRAME, fadeRun);
delRec();
this.gotoAndStop("show");
}
}
}//package effect
import basic.*;
class Rec extends Sp {
private var __height:Number;
public var hei:Number;
private var fillColor:int;
private var fillAlpha:Number;
private var lineAlpha:Number;
private var lineColor:int;
public var wid:Number;
private var __width:Number;
private function Rec(_arg1:Number, _arg2:Number, _arg3:int=0, _arg4:Number=0, _arg5:int=0, _arg6:Number=0){
wid = _arg1;
hei = _arg2;
lineColor = _arg3;
lineAlpha = _arg4;
fillColor = _arg5;
fillAlpha = _arg6;
__width = 0;
__height = 0;
}
override public function get height():Number{
return (__height);
}
private function drawRect():void{
this.graphics.clear();
this.graphics.lineStyle(1, lineColor, lineAlpha);
this.graphics.beginFill(fillColor, fillAlpha);
this.graphics.drawRect((-(wid) / 2), (-(hei) / 2), wid, hei);
if ((((width > 0)) && ((height > 0)))){
this.graphics.drawRect((-(width) / 2), (-(height) / 2), width, height);
};
this.graphics.endFill();
}
override public function set height(_arg1:Number):void{
__height = _arg1;
drawRect();
}
override public function set width(_arg1:Number):void{
__width = _arg1;
drawRect();
}
override public function get width():Number{
return (__width);
}
}
Section 9
//NumPopUp (effect.NumPopUp)
package effect {
import flash.display.*;
import flash.text.*;
import basic.*;
public class NumPopUp extends Mc {
private var __value:String;
public var body:MovieClip;
public function NumPopUp(_arg1:Number, _arg2:Number, _arg3, _arg4:int=-1){
addFrameScript(15, frame16);
this.x = _arg1;
this.y = _arg2;
value = _arg3;
if (_arg4 >= 0){
body.numTxt.textColor = _arg4;
};
}
function frame16(){
stop();
this.parent.removeChild(this);
}
public function set value(_arg1):void{
__value = _arg1;
body.numTxt.text = String(__value);
}
}
}//package effect
Section 10
//ScreenShake (effect.ScreenShake)
package effect {
import flash.events.*;
public class ScreenShake {
private var mcY0:Number;
private var mcX0:Number;
private var yShake:Number;
private var xShake:Number;
private var mc;
public function ScreenShake(_arg1){
xShake = ((Math.random() - 0.5) * 20);
yShake = ((Math.random() - 0.5) * 20);
mc = _arg1;
mcX0 = mc.x;
mcY0 = mc.y;
Global.addEvent(mc, mc, Event.ENTER_FRAME, shakeRun);
}
private function shakeRun(_arg1:Event):void{
xShake = (xShake - (xShake * 1.8));
yShake = (yShake - (yShake * 1.8));
mc.x = (mcX0 + xShake);
mc.y = (mcY0 + yShake);
if (((xShake * xShake) + (yShake * yShake)) < 5){
xShake = (yShake = 0);
Global.removeEvent(mc, Event.ENTER_FRAME, shakeRun);
mc = null;
};
}
}
}//package effect
Section 11
//SnowFall (effect.SnowFall)
package effect {
import flash.events.*;
import basic.*;
public class SnowFall extends Mc {
private var yBottom:Number;
private var k:Number;
private var vx:Number;
private var x0:Number;
public function SnowFall(_arg1:Number, _arg2:Number):void{
vx = ((Math.random() * 5) + 5);
k = ((Math.random() * 3) + 1);
x0 = (this.x = (int((Math.random() * (_arg1 + 50))) - 25));
this.y = -10;
this.scaleX = (this.scaleY = (this.alpha = ((Math.random() * 0.7) + 0.3)));
Global.addEvent(this, this, Event.ENTER_FRAME, run);
yBottom = (_arg2 + 10);
}
private function run(_arg1:Event):void{
this.x = (this.x + vx);
this.y = (((100 * Math.sin(((this.x - x0) / 100))) + (k * (this.x - x0))) + 10);
if (this.y >= yBottom){
Global.removeEvent(this, Event.ENTER_FRAME, run);
this.parent.removeChild(this);
};
}
}
}//package effect
Section 12
//SnowFall2 (effect.SnowFall2)
package effect {
import flash.events.*;
import basic.*;
public class SnowFall2 extends Mc {
private var yBottom:Number;
private var k:Number;
private var vx:Number;
private var x0:Number;
public function SnowFall2(_arg1:Number, _arg2:Number):void{
vx = ((Math.random() * 5) + 5);
k = ((Math.random() * 3) + 1);
x0 = (this.x = (int((Math.random() * (_arg1 + 50))) - 25));
this.y = -10;
this.scaleX = (this.scaleY = (this.alpha = ((Math.random() * 0.7) + 0.3)));
Global.addEvent(this, this, Event.ENTER_FRAME, run);
yBottom = (_arg2 + 10);
}
private function run(_arg1:Event):void{
this.x = (this.x + vx);
this.y = (((100 * Math.sin(((this.x - x0) / 100))) + (k * (this.x - x0))) + 10);
if (this.y >= yBottom){
Global.removeEvent(this, Event.ENTER_FRAME, run);
this.parent.removeChild(this);
};
}
}
}//package effect
Section 13
//SnowsFall (effect.SnowsFall)
package effect {
import flash.events.*;
import basic.*;
public class SnowsFall extends Sp {
private var yBottom:Number;
private var k:Number;
private var vx:Number;
private var x0:Number;
public function SnowsFall():void{
}
override public function added(_arg1:Event=null):void{
super.added();
Global.addEvent(this, this, Event.ENTER_FRAME, run);
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(this, Event.ENTER_FRAME, removed);
super.removed();
}
private function run(_arg1:Event):void{
this.addChild(new SnowFall(550, 400));
}
}
}//package effect
Section 14
//SnowsFall2 (effect.SnowsFall2)
package effect {
import flash.events.*;
import basic.*;
public class SnowsFall2 extends Sp {
private var yBottom:Number;
private var k:Number;
private var vx:Number;
private var x0:Number;
private var delayTime:int;
public function SnowsFall2():void{
delayTime = 100;
}
override public function added(_arg1:Event=null):void{
super.added();
Global.addEvent(this, this, Event.ENTER_FRAME, run);
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(this, Event.ENTER_FRAME, removed);
Global.removeEvent(this, Event.ENTER_FRAME, run);
super.removed();
}
private function run(_arg1:Event):void{
if (--delayTime < 40){
if (Common.random(40) < delayTime){
this.addChild(new SnowFall2(550, 400));
};
} else {
this.addChild(new SnowFall2(550, 400));
};
}
}
}//package effect
Section 15
//Typewriter (effect.Typewriter)
package effect {
import flash.text.*;
import flash.events.*;
import basic.*;
import flash.utils.*;
public class Typewriter extends Sp {
public var totalDelayTime:int;
private var fix:Boolean;
public var txt:TextField;
private var currentId:int;
public var onShow:Function;
private var msg:String;
private var delayTime:int;
public function Typewriter(_arg1:int=90){
var _totalDelayTime = _arg1;
super();
totalDelayTime = _totalDelayTime;
txt.text = "";
onShow = function (){
};
}
public function hide():void{
msg = "";
txt.text = "";
Global.removeEvent(stage, Event.ENTER_FRAME, typeRun);
}
override public function removed(_arg1:Event=null):void{
onShow = null;
super.removed();
Global.removeEvent(stage, Event.ENTER_FRAME, typeRun);
}
private function typeRun(_arg1:Event):void{
if (msg == ""){
txt.text = "";
Global.removeEvent(stage, Event.ENTER_FRAME, typeRun);
return;
};
if (currentId >= msg.length){
if (--delayTime <= 0){
delayTime = totalDelayTime;
if (!fix){
hide();
} else {
onShow();
txt.text = msg;
Global.removeEvent(stage, Event.ENTER_FRAME, typeRun);
return;
};
};
txt.text = (msg + (((int((getTimer() / 500)) % 2) == 0)) ? "_" : "");
} else {
currentId++;
txt.text = (msg.substr(0, currentId) + (((int((getTimer() / 500)) % 2) == 0)) ? "_" : "");
};
}
public function show(_arg1:String, _arg2:Boolean=false):void{
if (msg == _arg1){
return;
};
fix = _arg2;
delayTime = totalDelayTime;
msg = _arg1;
currentId = 0;
txt.text = "";
Global.removeEvent(stage, Event.ENTER_FRAME, typeRun);
Global.addEvent(this, stage, Event.ENTER_FRAME, typeRun);
}
}
}//package effect
Section 16
//_3Btn (FWG._3Btn)
package FWG {
import flash.display.*;
import flash.events.*;
import basic.*;
import ui.*;
public class _3Btn extends Sp {
public var btnM:BtnM;
public var btnQ:BtnQ;
public var btnS:BtnS;
public function _3Btn(){
super();
btnQ.onRollOver = function ():void{
Alt.show("Quality");
};
btnQ.onPress = function ():void{
Global.main.showQualitySetting();
Alt.hide();
};
btnQ.onRollOut = function ():void{
Alt.hide();
};
btnM.onRollOver = function ():void{
if (Global.main.musicOn){
Alt.show("Music Off");
} else {
Alt.show("Music On");
};
};
btnM.onPress = function ():void{
if (Global.main.musicOn){
Global.main.musicOn = false;
btnM.redCircle.visible = true;
} else {
Global.main.musicOn = true;
btnM.redCircle.visible = false;
};
Alt.hide();
};
btnM.onRollOut = function ():void{
Alt.hide();
};
if (Global.main.musicOn){
btnM.redCircle.visible = false;
} else {
btnM.redCircle.visible = true;
};
btnS.onRollOver = function ():void{
if (Global.main.soundOn){
Alt.show("Sound Off");
} else {
Alt.show("Sound On");
};
};
btnS.onPress = function ():void{
if (Global.main.soundOn){
Global.main.soundOn = false;
btnS.redCircle.visible = true;
} else {
Global.main.soundOn = true;
btnS.redCircle.visible = false;
};
Alt.hide();
};
btnS.onRollOut = function ():void{
Alt.hide();
};
if (Global.main.soundOn){
btnS.redCircle.visible = false;
} else {
btnS.redCircle.visible = true;
};
}
}
}//package FWG
Section 17
//AlphaFadeSp (FWG.AlphaFadeSp)
package FWG {
import flash.events.*;
import basic.*;
public class AlphaFadeSp extends Sp {
public var onShow:Function;
public var onHide:Function;
public function AlphaFadeSp(){
super();
onShow = function ():void{
};
onHide = function ():void{
};
}
public function hide():void{
this.visible = false;
this.alpha = 0;
}
private function showRun(_arg1:Event):void{
if ((this.alpha = (this.alpha + 0.2)) > 0.9){
Global.removeEvent(stage, Event.ENTER_FRAME, showRun);
show();
onShow();
};
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, hideRun);
Global.removeEvent(stage, Event.ENTER_FRAME, showRun);
super.removed();
onShow = null;
onHide = null;
}
public function fadeShow():void{
this.visible = true;
Global.removeEvent(stage, Event.ENTER_FRAME, showRun);
Global.addEvent(this, stage, Event.ENTER_FRAME, showRun);
}
public function fadeHide():void{
Global.removeEvent(stage, Event.ENTER_FRAME, hideRun);
Global.addEvent(this, stage, Event.ENTER_FRAME, hideRun);
}
private function hideRun(_arg1:Event):void{
if (this.alpha <= 0.1){
this.alpha = 0;
Global.removeEvent(stage, Event.ENTER_FRAME, hideRun);
hide();
onHide();
return;
};
this.alpha = (this.alpha - 0.2);
}
public function show():void{
this.visible = true;
this.alpha = 1;
}
}
}//package FWG
Section 18
//BasicGame (FWG.BasicGame)
package FWG {
import flash.display.*;
import flash.events.*;
import basic.*;
public class BasicGame extends Sp {
public var onTimeUp:Function;
public var onStageClear:Function;
public var stageNum:int;
public var runArr:Array;
public var onGameOver:Function;
public function BasicGame(){
Global["game"] = this;
runArr = new Array();
}
public function init():void{
}
public function restart():void{
}
public function stopRun():void{
Global.removeEvent(stage, Event.ENTER_FRAME, runAll);
}
public function addRun(_arg1:Function):void{
runArr.push(_arg1);
}
public function runAll(_arg1:Event):void{
var _local2:Function;
if (Global.pause){
return;
};
for each (_local2 in runArr) {
_local2();
};
}
public function start(_arg1:int):void{
}
override public function removed(_arg1:Event=null):void{
var event = _arg1;
stopRun();
super.removed();
Common.forEachChild(this, function (_arg1, _arg2:int, _arg3:Array):void{
Global.game.removeChild(_arg1);
});
runArr = null;
onStageClear = null;
onGameOver = null;
onTimeUp = null;
Global.game = null;
}
public function delRun(_arg1:Function):Boolean{
var _local2:int;
var _local3:Function;
_local2 = 0;
for each (_local3 in runArr) {
if (_local3 == _arg1){
runArr.splice(_local2, 1);
return (true);
};
_local2++;
};
return (false);
}
public function playAgain():void{
}
public function startRun():void{
stopRun();
Global.addEvent(this, stage, Event.ENTER_FRAME, runAll);
}
public function gameOver():void{
Global.pause = true;
onGameOver();
}
public function stageClear():void{
Global.pause = true;
onStageClear();
}
}
}//package FWG
Section 19
//BasicMain (FWG.BasicMain)
package FWG {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import media.*;
import basic.*;
import ui.*;
import ctrl.*;
import flash.utils.*;
public class BasicMain extends Sp {
private var _soundOn:Boolean;
public var pageClass:Class;
public var isActivate:Boolean;
public var qualitySetting;
private var delayFrameId;
private var __currentScore:int;// = 0
private var delayMc:MovieClip;
public var musicCredits:MusicCredits;
private var __score:int;// = 0
public var onKeyDown:Function;
public var hasWarned:Boolean;
public var gs:GameSave;
public var keySetting:KeySetting;
public var gotoMenuShowAlert:Boolean;
public var stageHei:Number;
public var playerInfo:PlayerInfo;
private var keyCatcher:KeyCatcher;
private var sndBg:SndBg;
private var __stageNum:int;// = 1
private var sndBgChannel:SoundChannel;
public var gameName:String;
private var _musicOn:Boolean;
private var stageData:StageData;
public var isMouseLeave:Boolean;
public var btnSs:BtnSs;
public var stageWid:Number;
public var isFirstPlay:Boolean;
public function BasicMain(_arg1:String, _arg2:Number, _arg3:Number){
__currentScore = 0;
__score = 0;
__stageNum = 1;
super();
Global["main"] = this;
gameName = _arg1;
playerInfo = new PlayerInfo();
gs = new GameSave(gameName);
isFirstPlay = true;
MovSnd.stageWid = (stageWid = _arg2);
MovSnd.stageHei = (stageHei = _arg3);
currentScore = 0;
score = 0;
stageNum = 1;
sndBg = new SndBg();
Global.fadeEffect.hide();
isActivate = true;
}
public function fadeTo(_arg1:Class, _arg2:Function=null):void{
var _pageClass = _arg1;
var onFadeShow = _arg2;
pageClass = _pageClass;
Global.fadeEffect.fadeHide();
if (onFadeShow == null){
Global.fadeEffect.onShow = function ():void{
};
} else {
Global.fadeEffect.onShow = onFadeShow;
};
Global.fadeEffect.onHide = function ():void{
Global.mainContainer.putIn(new pageClass());
pageClass = null;
Global.fadeEffect.fadeShow();
Global.fadeEffect.onHide = function ():void{
};
};
}
private function showSavePad(_arg1:String, _arg2:String):void{
Global.savePad.showMsg(_arg1, _arg2);
}
public function showSubmitScore():void{
SubmitScore.show();
}
public function keyIsDown(_arg1:int):Boolean{
return (keyCatcher.isDown(_arg1));
}
public function get saveItem():GameSaveItem{
var _local1:GameSaveItem;
var _local2:Array;
var _local3:String;
_local1 = new GameSaveItem();
_local2 = Common.getVars(_local1);
for each (_local3 in _local2) {
_local1[_local3] = Common.cloneObj(this[_local3]);
};
return (_local1);
}
public function restartStage():void{
stageData.restartStage();
}
public function playSound(_arg1:String, _arg2=null):void{
if (soundOn){
MovSnd.playSound(_arg1, _arg2);
};
}
public function addScore(_arg1:int):void{
currentScore = (currentScore + _arg1);
score = (score + _arg1);
}
private function deactivate(_arg1:Event):void{
isActivate = false;
keyCatcher.clear();
}
public function addKeyDownF(_arg1:int, _arg2:Function):void{
keyCatcher.addKeyDownF(_arg1, _arg2);
}
public function playAgain():void{
stageData.resetGameData();
playGame();
}
public function initStageData(_arg1:Array):void{
stageData = new StageData(_arg1);
}
public function instPlay():void{
if (isFirstPlay){
showInst();
} else {
playGame();
};
}
public function get score():int{
return (__score);
}
public function set soundOn(_arg1:Boolean){
MovSnd.soundOn = (_soundOn = _arg1);
}
public function get currentScore():int{
return (__currentScore);
}
public function showQualitySetting():void{
Global.pause = true;
qualitySetting.fadeShow();
qualitySetting.onHide = function (){
Global.pause = false;
};
}
public function initBySaveItem():void{
var _local1:String;
for (_local1 in gs.currentItem) {
this[_local1] = gs.currentItem[_local1];
};
}
public function showCredits():void{
musicCredits.fadeShow();
}
public function showInst():void{
flipTo(Instructions);
}
public function get musicOn():Boolean{
return (_musicOn);
}
private function activate(_arg1:Event):void{
isActivate = true;
}
public function hideCredits():void{
musicCredits.fadeHide();
}
override public function added(_arg1:Event=null):void{
var event = _arg1;
super.added();
MovSnd.stage = stage;
this.addChild((keyCatcher = new KeyCatcher()));
onKeyDown = function (){
};
keyCatcher.onKeyDown = function (_arg1:int):void{
onKeyDown(_arg1);
};
Global.addEvent(this, stage, Event.ACTIVATE, activate);
Global.addEvent(this, stage, Event.DEACTIVATE, deactivate);
Global.preLoader.onLoadFinish = function ():void{
onPreLoad();
};
}
public function resetGameData():void{
stageData.resetGameData();
gs.getDefaultItem();
}
public function initBtn(_arg1:Btn):void{
var btn = _arg1;
switch (btn.label){
case "Play Game":
btn.onPress = function ():void{
if (gs.noData){
instPlay();
} else {
showSavePad("Select A Profile:", "read");
};
};
break;
case "Play":
case "Skip":
btn.onPress = function ():void{
instPlay();
};
break;
case "Start New Game":
btn.onPress = function ():void{
gs.getDefaultItem();
instPlay();
};
break;
case "Next Stage":
btn.onPress = function ():void{
nextStage();
};
break;
case "Play Again":
btn.onPress = function ():void{
playAgain();
};
break;
case "Instructions":
btn.onPress = function ():void{
showInst();
};
break;
case "Key Settings":
btn.onPress = function ():void{
flipTo(PageKeySetting);
};
break;
case "View Highscores":
btn.onPress = function ():void{
Common.getURL(("http://www.freeworldgroup.com/score/index.asp?game=" + gameName));
};
break;
case "Download Games":
btn.onPress = function ():void{
Common.getURL("http://www.ifungames.com");
};
break;
case "More Online Games":
btn.onPress = function ():void{
Common.getURL("http://www.freeworldgroup.com");
};
break;
case "Add Games to Your Site":
btn.onPress = function ():void{
Common.getURL("http://www.freeworldgroup.com/koalafiles.htm");
};
break;
case "Copyright 2007 freeworldgroup.com":
btn.onPress = function ():void{
Common.getURL("http://www.freeworldgroup.com");
};
break;
case "Credits":
btn.onPress = function ():void{
showCredits();
};
break;
case "Menu":
gotoMenuShowAlert = true;
btn.onPress = function ():void{
Alt.hide();
gotoMenu();
};
break;
case "Submit Score":
btn.onPress = function ():void{
if (score <= 0){
Alt.show("Your score is 0 !");
} else {
showSubmitScore();
};
};
btn.onRollOut = function ():void{
Alt.hide();
};
break;
case "Save":
btn.onPress = function ():void{
showSavePad("Save Current To:", "write");
};
break;
};
}
public function set currentScore(_arg1:int):void{
__currentScore = _arg1;
}
public function set score(_arg1:int):void{
__score = _arg1;
}
public function resetStageData():void{
__currentScore = 0;
}
public function playGame():void{
flipTo(Options);
}
public function get soundOn():Boolean{
return (_soundOn);
}
public function set stageNum(_arg1:int):void{
__stageNum = _arg1;
}
public function onPreLoad():void{
musicOn = true;
soundOn = true;
Global.fadeEffect.fadeShow();
Global.mainContainer.putIn(new PageMenu());
}
private function goto(_arg1:Event):void{
Global.removeEvent(stage, Event.ENTER_FRAME, goto);
delayMc.gotoAndStop(delayFrameId);
delayMc = null;
delayFrameId = null;
}
public function gotoMenu():void{
Global.pause = true;
if (gotoMenuShowAlert){
Alert.show("Back To Main Menu?", gotoMenuHandler);
} else {
gotoMenuHandler(true);
};
}
public function gotoMenuHandler(_arg1:Boolean):void{
if (_arg1){
resetGameData();
if (Global.game != null){
Global.game.stopRun();
};
flipTo(PageMenu);
} else {
Global.pause = false;
};
}
public function playMovingSound(_arg1:String, _arg2=null, _arg3:Boolean=false):MovSnd{
if (soundOn){
return (new MovSnd(_arg1, _arg2, _arg3));
};
return (null);
}
public function delayGoto(_arg1:MovieClip, _arg2):void{
delayMc = _arg1;
delayFrameId = _arg2;
Global.addEvent(this, stage, Event.ENTER_FRAME, goto);
}
public function get stageNum():int{
return (__stageNum);
}
public function startNewStage():void{
resetStageData();
stageData.update();
}
public function set musicOn(_arg1:Boolean){
_musicOn = _arg1;
if (_musicOn){
sndBgChannel = sndBg.play(0, 10000);
} else {
sndBgChannel.stop();
};
}
public function nextStage():void{
stageData.update();
stageData.initByObj();
flipTo(PageGame);
}
public function flipTo(_arg1:Class):void{
Global.fadeEffect.flip();
Global.mainContainer.putIn(new (_arg1));
}
public function win():void{
flipTo(PageWin);
}
public function stageClear():void{
stageNum++;
stageData.update();
}
public function delKeyDownF(_arg1:int):void{
keyCatcher.delKeyDownF(_arg1);
}
}
}//package FWG
Section 20
//Btn (FWG.Btn)
package FWG {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import ui.*;
import flash.filters.*;
public class Btn extends SBtn {
private var __label;
private var unselectedFilters:Array;
private var rollOutFilters:Array;
private var __selected:Boolean;
private var rollOverFilters:Array;
private var selectedFilters:Array;
private static const yellowGlowFilter:GlowFilter = new GlowFilter(0xFFFF00);
private static const redGlowFilter:GlowFilter = new GlowFilter(0xFF0000);
public function Btn(){
var _local1:*;
super();
this.buttonMode = true;
this.graphics.clear();
this.graphics.beginFill(0xFF0000, 0);
_local1 = this.getBounds(this);
this.graphics.drawRect(_local1.x, _local1.y, _local1.width, _local1.height);
selectedFilters = [yellowGlowFilter].concat(this.filters);
unselectedFilters = this.filters.slice();
rollOverFilters = [redGlowFilter].concat(this.filters);
rollOutFilters = this.filters.slice();
}
public function get label():String{
return (__label);
}
public function set selected(_arg1:Boolean):void{
__selected = _arg1;
if (__selected){
this.mouseEnabled = false;
this.mouseChildren = false;
this.filters = selectedFilters;
rollOverEffect();
} else {
this.mouseEnabled = true;
this.mouseChildren = true;
this.filters = unselectedFilters;
rollOutEffect();
};
}
override public function press(_arg1:MouseEvent):void{
if (selected){
return;
};
if (selectAble){
Global.main.playSound("SndPress", this);
rollOutEffect();
super.press(null);
} else {
if (onErrorPress != null){
onErrorPress();
};
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
selectedFilters = null;
unselectedFilters = null;
rollOverFilters = null;
rollOutFilters = null;
}
private function rollOutEffect():void{
this.alpha = 1;
this.filters = rollOutFilters;
}
override public function rollOut(_arg1:MouseEvent):void{
if (selected){
return;
};
if (selectAble){
rollOutEffect();
super.rollOut(null);
};
}
public function get selected():Boolean{
return (__selected);
}
public function set label(_arg1:String):void{
__label = _arg1;
Global.main.initBtn(this);
}
private function rollOverEffect():void{
this.alpha = 0.8;
this.filters = rollOverFilters;
}
override public function rollOver(_arg1:MouseEvent):void{
if (selected){
return;
};
if (selectAble){
Global.main.playSound("SndRollOver", this);
rollOverEffect();
super.rollOver(null);
};
}
}
}//package FWG
Section 21
//BtnAgtys (FWG.BtnAgtys)
package FWG {
public class BtnAgtys extends Btn {
public function BtnAgtys(){
label = "Add Games to Your Site";
}
}
}//package FWG
Section 22
//BtnBack (FWG.BtnBack)
package FWG {
public class BtnBack extends Btn {
}
}//package FWG
Section 23
//BtnCancel (FWG.BtnCancel)
package FWG {
public class BtnCancel extends Btn {
}
}//package FWG
Section 24
//BtnColor (FWG.BtnColor)
package FWG {
import flash.display.*;
import ui.*;
public class BtnColor extends Btn {
public function BtnColor(){
super();
onRollOver = function ():void{
Alt.show("Change color or weapon");
};
onPress = function ():void{
Alt.hide();
parent.parent["colorSelectContainer"].fadeShow();
};
onRollOut = function ():void{
Alt.hide();
};
}
}
}//package FWG
Section 25
//BtnCopyright (FWG.BtnCopyright)
package FWG {
public class BtnCopyright extends Btn {
public function BtnCopyright(){
label = "Copyright 2007 freeworldgroup.com";
}
}
}//package FWG
Section 26
//BtnCredits (FWG.BtnCredits)
package FWG {
public class BtnCredits extends Btn {
public function BtnCredits(){
label = "Credits";
}
}
}//package FWG
Section 27
//BtnDefault (FWG.BtnDefault)
package FWG {
public class BtnDefault extends Btn {
}
}//package FWG
Section 28
//BtnDg (FWG.BtnDg)
package FWG {
public class BtnDg extends Btn {
public function BtnDg(){
label = "Download Games";
}
}
}//package FWG
Section 29
//BtnInstructions (FWG.BtnInstructions)
package FWG {
public class BtnInstructions extends Btn {
public function BtnInstructions(){
label = "Instructions";
}
}
}//package FWG
Section 30
//BtnKs (FWG.BtnKs)
package FWG {
public class BtnKs extends Btn {
public function BtnKs(){
label = "Key Settings";
}
}
}//package FWG
Section 31
//BtnM (FWG.BtnM)
package FWG {
import flash.display.*;
public class BtnM extends Btn {
public var redCircle:MovieClip;
public function BtnM(){
redCircle.visible = false;
}
}
}//package FWG
Section 32
//BtnMenu (FWG.BtnMenu)
package FWG {
public class BtnMenu extends Btn {
public function BtnMenu(){
label = "Menu";
}
}
}//package FWG
Section 33
//BtnMenu2 (FWG.BtnMenu2)
package FWG {
public dynamic class BtnMenu2 extends BtnMenu {
}
}//package FWG
Section 34
//BtnMission (FWG.BtnMission)
package FWG {
import ui.*;
public class BtnMission extends Btn {
public function BtnMission(){
super();
onRollOver = function ():void{
Alt.show("Mission");
};
onPress = function ():void{
Alt.hide();
GamePad(parent.parent).missionInfo.fadeShow();
};
onRollOut = function ():void{
Alt.hide();
};
}
}
}//package FWG
Section 35
//BtnMk (FWG.BtnMk)
package FWG {
public dynamic class BtnMk extends Btn {
}
}//package FWG
Section 36
//BtnMog (FWG.BtnMog)
package FWG {
public class BtnMog extends Btn {
public function BtnMog(){
label = "More Online Games";
}
}
}//package FWG
Section 37
//BtnMog2 (FWG.BtnMog2)
package FWG {
public dynamic class BtnMog2 extends BtnMog {
}
}//package FWG
Section 38
//BtnNext (FWG.BtnNext)
package FWG {
public class BtnNext extends Btn {
}
}//package FWG
Section 39
//BtnNo (FWG.BtnNo)
package FWG {
public class BtnNo extends Btn {
}
}//package FWG
Section 40
//BtnNs (FWG.BtnNs)
package FWG {
public class BtnNs extends Btn {
public function BtnNs(){
label = "Next Stage";
}
}
}//package FWG
Section 41
//BtnOK (FWG.BtnOK)
package FWG {
public class BtnOK extends Btn {
}
}//package FWG
Section 42
//BtnOK2 (FWG.BtnOK2)
package FWG {
public dynamic class BtnOK2 extends BtnOK {
}
}//package FWG
Section 43
//BtnOK3 (FWG.BtnOK3)
package FWG {
public dynamic class BtnOK3 extends Btn {
}
}//package FWG
Section 44
//BtnPa (FWG.BtnPa)
package FWG {
public class BtnPa extends Btn {
}
}//package FWG
Section 45
//BtnPa2 (FWG.BtnPa2)
package FWG {
public dynamic class BtnPa2 extends BtnPa {
}
}//package FWG
Section 46
//BtnPg (FWG.BtnPg)
package FWG {
public class BtnPg extends Btn {
public function BtnPg(){
label = "Play Game";
}
}
}//package FWG
Section 47
//BtnPlay (FWG.BtnPlay)
package FWG {
public class BtnPlay extends Btn {
public function BtnPlay(){
label = "Play";
}
}
}//package FWG
Section 48
//BtnPn (FWG.BtnPn)
package FWG {
public dynamic class BtnPn extends Btn {
}
}//package FWG
Section 49
//BtnQ (FWG.BtnQ)
package FWG {
public class BtnQ extends Btn {
}
}//package FWG
Section 50
//BtnQ0 (FWG.BtnQ0)
package FWG {
public class BtnQ0 extends Btn {
public function BtnQ0(){
label = "LOW";
}
}
}//package FWG
Section 51
//BtnQ1 (FWG.BtnQ1)
package FWG {
public class BtnQ1 extends Btn {
public function BtnQ1(){
label = "MEDIUM";
}
}
}//package FWG
Section 52
//BtnQ2 (FWG.BtnQ2)
package FWG {
public class BtnQ2 extends Btn {
public function BtnQ2(){
label = "HIGH";
}
}
}//package FWG
Section 53
//BtnQ3 (FWG.BtnQ3)
package FWG {
public class BtnQ3 extends Btn {
public function BtnQ3(){
label = "BEST";
}
}
}//package FWG
Section 54
//BtnS (FWG.BtnS)
package FWG {
import flash.display.*;
public class BtnS extends Btn {
public var redCircle:MovieClip;
public function BtnS(){
redCircle.visible = false;
}
}
}//package FWG
Section 55
//BtnSave (FWG.BtnSave)
package FWG {
public class BtnSave extends Btn {
public function BtnSave(){
label = "Save";
}
}
}//package FWG
Section 56
//BtnSecWeaponIcon (FWG.BtnSecWeaponIcon)
package FWG {
import flash.display.*;
public class BtnSecWeaponIcon extends Btn {
public var id:int;
public var icon:MovieClip;
public var info:String;
}
}//package FWG
Section 57
//BtnShake (FWG.BtnShake)
package FWG {
import flash.display.*;
import ui.*;
public class BtnShake extends Btn {
public var redCircle:MovieClip;
public function BtnShake(){
super();
onRollOver = function ():void{
if (Global.main.shakeOn){
Alt.show("Shake Off");
} else {
Alt.show("Shake On");
};
};
onPress = function ():void{
if (Global.main.shakeOn){
Global.main.shakeOn = false;
this.redCircle.visible = true;
} else {
Global.main.shakeOn = true;
this.redCircle.visible = false;
};
Alt.hide();
};
onRollOut = function ():void{
Alt.hide();
};
if (Global.main.shakeOn){
this.redCircle.visible = false;
} else {
this.redCircle.visible = true;
};
}
}
}//package FWG
Section 58
//BtnSi (FWG.BtnSi)
package FWG {
import flash.display.*;
import flash.text.*;
public class BtnSi extends Btn {
public var id:int;
public function set text(_arg1:String):void{
this["txt"].mouseEnabled = false;
this["txt"].text = _arg1;
}
}
}//package FWG
Section 59
//BtnSi2 (FWG.BtnSi2)
package FWG {
import flash.display.*;
import flash.text.*;
public class BtnSi2 extends BtnSi {
public var colorRec:MovieClip;
public var txt:TextField;
public function BtnSi2(){
colorRec.mask = txt;
}
}
}//package FWG
Section 60
//BtnSkip (FWG.BtnSkip)
package FWG {
public class BtnSkip extends Btn {
public function BtnSkip(){
label = "Skip";
}
}
}//package FWG
Section 61
//BtnSng (FWG.BtnSng)
package FWG {
public class BtnSng extends Btn {
public function BtnSng(){
label = "Start New Game";
}
}
}//package FWG
Section 62
//BtnSs (FWG.BtnSs)
package FWG {
import flash.events.*;
public class BtnSs extends Btn {
public function BtnSs(){
label = "Submit Score";
}
override public function added(_arg1:Event=null):void{
super.added();
Global.main.btnSs = this;
}
override public function removed(_arg1:Event=null):void{
Global.main.btnSs = null;
super.removed();
}
}
}//package FWG
Section 63
//BtnSs2 (FWG.BtnSs2)
package FWG {
public dynamic class BtnSs2 extends BtnSs {
}
}//package FWG
Section 64
//BtnSubmit (FWG.BtnSubmit)
package FWG {
public class BtnSubmit extends Btn {
}
}//package FWG
Section 65
//BtnWeaponIcon (FWG.BtnWeaponIcon)
package FWG {
import flash.display.*;
public class BtnWeaponIcon extends Btn {
public var id:int;
public var lockMc:MovieClip;
public var icon:MovieClip;
public var info:String;
}
}//package FWG
Section 66
//BtnVh (FWG.BtnVh)
package FWG {
public class BtnVh extends Btn {
public function BtnVh(){
label = "View Highscores";
}
}
}//package FWG
Section 67
//BtnVh2 (FWG.BtnVh2)
package FWG {
public dynamic class BtnVh2 extends BtnVh {
}
}//package FWG
Section 68
//BtnX (FWG.BtnX)
package FWG {
public class BtnX extends Btn {
}
}//package FWG
Section 69
//BtnYes (FWG.BtnYes)
package FWG {
public class BtnYes extends Btn {
}
}//package FWG
Section 70
//ColorSelect (FWG.ColorSelect)
package FWG {
import flash.display.*;
import flash.events.*;
import tank2007_2.*;
import basic.*;
import flash.net.*;
import ui.*;
public class ColorSelect extends Sp {
public var iconWeapon:MovieClip;
public var bodyBtn1:DeltaBtn;
public var bodyBtn0:DeltaBtn;
public var colorPad:ColorPad;
public var btnDefault:BtnDefault;
public var headBtn0:DeltaBtn;
public var headBtn1:DeltaBtn;
public var onConfirm:Function;
public var hero:ColorSelectHero;
public function ColorSelect(){
super();
onConfirm = function ():void{
};
colorPad.onConfirm = function (_arg1:uint):void{
hero.confirmColor(_arg1);
};
colorPad.onSelect = function (_arg1:int):void{
hero.selectColor(_arg1);
};
colorPad.onCancle = function ():void{
hero.cancleColor();
};
headBtn0.onPress = function ():void{
hero.headId--;
iconWeapon.gotoAndStop((hero.headId + 1));
};
headBtn1.onPress = function ():void{
hero.headId++;
iconWeapon.gotoAndStop((hero.headId + 1));
};
bodyBtn0.onPress = function ():void{
if (hero.bodyId == 0){
hero.bodyId = hero.maxBodyId;
} else {
hero.bodyId--;
};
};
bodyBtn1.onPress = function ():void{
if (hero.bodyId == hero.maxBodyId){
hero.bodyId = hero.minBodyId;
} else {
hero.bodyId++;
};
};
btnDefault.onPress = function ():void{
var _local1:*;
_local1 = Global.main.gs.defaultItem;
hero.confirmColor(_local1.heroData.color);
hero.headId = _local1.heroData.headId;
hero.bodyId = _local1.heroData.bodyId;
hero.isDouble = _local1.heroData.isDouble;
};
if (hero.minHeadId == hero.maxHeadId){
headBtn0.selectAble = false;
headBtn1.selectAble = false;
headBtn0.onErrorPress = (headBtn1.onErrorPress = function ():void{
Alt.show("No weapon available yet!");
Alt.hideDelay(2000);
});
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
onConfirm = null;
}
public function updateFromMain():void{
var _local1:*;
_local1 = Global.main.gs.currentItem;
hero.confirmColor(_local1.heroData.color);
hero.headId = _local1.heroData.headId;
hero.bodyId = _local1.heroData.bodyId;
hero.isDouble = _local1.heroData.isDouble;
iconWeapon.gotoAndStop((hero.headId + 1));
}
public function save():void{
var _local1:*;
_local1 = Global.main.gs.currentItem;
_local1.heroData.color = hero.color;
_local1.heroData.headId = hero.headId;
_local1.heroData.bodyId = hero.bodyId;
_local1.heroData.isDouble = hero.isDouble;
}
public function confirm():void{
save();
onConfirm();
}
}
}//package FWG
Section 71
//ColorSelectContainer (FWG.ColorSelectContainer)
package FWG {
import flash.display.*;
public class ColorSelectContainer extends AlphaFadeSp {
public var btnCancel:BtnCancel;
public var colorSelect:ColorSelect;
public var btnOk:BtnOK;
public function ColorSelectContainer(){
hide();
}
override public function fadeShow():void{
colorSelect.updateFromMain();
onShow = function ():void{
mouseEnabled = true;
mouseChildren = true;
btnCancel.onPress = function ():void{
fadeHide();
};
btnOk.onPress = function ():void{
colorSelect.confirm();
Global.gameInterface.hero.color = colorSelect.hero.color;
Global.gameInterface.hero.headId = colorSelect.hero.headId;
Global.gameInterface.hero.bodyId = colorSelect.hero.bodyId;
fadeHide();
};
};
super.fadeShow();
}
override public function fadeHide():void{
this.mouseEnabled = false;
this.mouseChildren = false;
super.fadeHide();
}
}
}//package FWG
Section 72
//DeltaBtn (FWG.DeltaBtn)
package FWG {
public class DeltaBtn extends Btn {
}
}//package FWG
Section 73
//EnergyBar (FWG.EnergyBar)
package FWG {
import ui.*;
public class EnergyBar extends Num {
}
}//package FWG
Section 74
//GameContainer (FWG.GameContainer)
package FWG {
import basic.*;
public class GameContainer extends Sp {
}
}//package FWG
Section 75
//GamePad (FWG.GamePad)
package FWG {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import ui.*;
public class GamePad extends SBtn {
public var colorSelectContainer:ColorSelectContainer;
public var missionInfo:MissionInfo;
public var shopPad:ShopPad;
public var menuPad:MenuPad;
private var hitRec:MovieClip;
public function GamePad(){
super();
Global.gamePad = this;
missionInfo.hide();
missionInfo.onCallBack = function ():void{
this.fadeHide();
};
}
override public function added(_arg1:Event=null):void{
super.added();
hitRec = MovieClip(parent).hitRec;
hitRec.visible = false;
onRollOver = show;
Global.addEvent(this, hitRec, MouseEvent.MOUSE_OVER, hide);
}
public function set coins(_arg1:int):void{
menuPad.coins = _arg1;
}
public function set score(_arg1:int):void{
menuPad.score = _arg1;
}
private function show(_arg1:MouseEvent=null):void{
if (_arg1.buttonDown){
return;
};
menuPad.show();
shopPad.show();
hitRec.visible = true;
Global.pause = true;
}
private function hide(_arg1:MouseEvent=null):void{
menuPad.hide();
shopPad.hide();
hitRec.visible = false;
Global.pause = false;
}
public function set stageNum(_arg1:int):void{
menuPad.stageNum = _arg1;
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(hitRec, MouseEvent.MOUSE_OVER, hide);
super.removed();
Global.gamePad = null;
hitRec = null;
}
}
}//package FWG
Section 76
//GameSave (FWG.GameSave)
package FWG {
public class GameSave extends LocalSetting {
public var currentItem;
public var defaultItem;
public var dataArr:Array;
public static const total:int = 5;
public function GameSave(_arg1:String){
defaultItem = new GameSaveItem();
currentItem = new GameSaveItem();
dataArr = new Array(5);
super((_arg1 + "GameSave"));
}
override public function clear():void{
var _local1:*;
defaultItem.clear();
defaultItem = null;
currentItem.clear();
currentItem = null;
for each (_local1 in dataArr) {
_local1.clear();
};
dataArr = null;
}
public function get noData():Boolean{
var _local1:*;
for each (_local1 in dataArr) {
if (_local1 != null){
return (false);
};
};
return (true);
}
public function read(_arg1):Object{
return (dataArr[_arg1]);
}
public function select(_arg1:int):Object{
currentItem = Common.cloneObj(dataArr[_arg1]);
return (currentItem);
}
public function save(_arg1:GameSaveItem, _arg2:int):void{
var _local3:Object;
var _local4:String;
_local3 = Common.cloneObj(_arg1);
dataArr[_arg2] = new Object();
for (_local4 in _local3) {
dataArr[_arg2][_local4] = _local3[_local4];
};
flush();
}
public function getDefaultItem():void{
currentItem = Common.cloneObj(defaultItem);
}
}
}//package FWG
Section 77
//GameSaveItem (FWG.GameSaveItem)
package FWG {
import basic.*;
public class GameSaveItem extends Obj {
public var coins:int;// = 0
public var heroData:Object;
public var stageNum:int;// = 1
public var score:int;// = 0
public function GameSaveItem(){
score = 0;
coins = 0;
stageNum = 1;
heroData = {headId:3, bodyId:3, color:0xFF00};
super();
}
}
}//package FWG
Section 78
//HiddenPad (FWG.HiddenPad)
package FWG {
import flash.geom.*;
import flash.events.*;
import basic.*;
import motion.*;
public class HiddenPad extends Sp {
private var pt:Point;
private var p1:Point;
private var sTween:STween;
public function HiddenPad(_arg1:Number, _arg2:Number){
p1 = new Point(this.x, this.y);
pt = new Point(_arg1, _arg2);
sTween = new STween(this);
}
public function hide():void{
sTween.movTo(p1.x, p1.y);
}
override public function removed(_arg1:Event=null):void{
super.removed();
sTween.clear();
sTween = null;
p1 = null;
pt = null;
}
public function show():void{
this.visible = true;
sTween.movTo(pt.x, pt.y);
}
}
}//package FWG
Section 79
//InstPage2 (FWG.InstPage2)
package FWG {
import flash.display.*;
import basic.*;
public class InstPage2 extends Sp {
public var btnSkip:BtnSkip;
public var btnMk:BtnMk;
public var btnBack:BtnBack;
public var btnNext:BtnNext;
public var inst:MovieClip;
public var btnPlay:BtnPlay;
public function InstPage2(){
super();
if (Global.main.keySetting.isDefault()){
hideInst();
btnNext.onPress = function ():void{
showInst();
};
btnBack.onPress = function ():void{
hideInst();
};
btnMk.onPress = function ():void{
Global.main.flipTo(PageKeySetting);
};
} else {
hideInst();
btnPlay.visible = true;
btnSkip.visible = false;
btnMk.visible = false;
btnBack.visible = false;
btnNext.visible = false;
};
}
private function showInst():void{
inst.visible = true;
btnPlay.visible = true;
btnSkip.visible = false;
btnMk.visible = true;
btnBack.visible = true;
btnNext.visible = false;
}
private function hideInst():void{
inst.visible = false;
btnPlay.visible = false;
btnSkip.visible = true;
btnMk.visible = false;
btnBack.visible = false;
btnNext.visible = true;
}
}
}//package FWG
Section 80
//Instructions (FWG.Instructions)
package FWG {
import flash.display.*;
import flash.events.*;
import basic.*;
public class Instructions extends Mc {
public var btnBack:BtnBack;
public var btnNext:BtnNext;
public var btnSkip:BtnSkip;
public var btnPlay:BtnPlay;
public var btnMenu:BtnMenu;
public function Instructions(){
super();
stop();
setPos();
Global.main.isFirstPlay = false;
btnNext.onPress = function ():void{
nextFrame();
setPos();
};
btnBack.onPress = function ():void{
prevFrame();
setPos();
};
}
private function setPos():void{
btnPlay.visible = (this.currentFrame == this.totalFrames);
btnSkip.visible = (btnNext.visible = !((this.currentFrame == this.totalFrames)));
btnBack.visible = (this.currentFrame > 1);
}
}
}//package FWG
Section 81
//Item (FWG.Item)
package FWG {
import flash.display.*;
import ui.*;
public class Item extends SBtn {
private var __price:int;
public var run:Function;
public var icon:MovieClip;
public var info:String;
public var numsPrice:Word;
public function Item(){
icon.mouseEnabled = false;
icon.mouseChildren = false;
}
public function init(_arg1:int, _arg2:String, _arg3:int):void{
icon.gotoAndStop((_arg1 + 1));
info = _arg2;
price = _arg3;
}
public function get price():int{
return (__price);
}
public function set price(_arg1:int):void{
numsPrice.text = (__price = _arg1);
}
}
}//package FWG
Section 82
//KeySetting (FWG.KeySetting)
package FWG {
public class KeySetting extends LocalSetting {
public var keyCodeArr:Array;
private static const str:String = "AWDSJILKVB ";
public function KeySetting(){
keyCodeArr = [str.charCodeAt(0), str.charCodeAt(1), str.charCodeAt(2), str.charCodeAt(3), str.charCodeAt(4), str.charCodeAt(5), str.charCodeAt(6), str.charCodeAt(7), str.charCodeAt(8), str.charCodeAt(9), str.charCodeAt(10)];
super("Tank2008KeySetting");
}
public function getCode(_arg1:int):int{
return (keyCodeArr[_arg1]);
}
public function saveCode(_arg1:int, _arg2:int):void{
keyCodeArr[_arg1] = _arg2;
}
override public function clear():void{
super.clear();
keyCodeArr = null;
}
public function isDefault():Boolean{
var _local1:int;
var _local2:int;
_local1 = 0;
for each (_local2 in getDefault().keyCodeArr) {
if (keyCodeArr[_local1] != _local2){
return (false);
};
_local1++;
};
return (true);
}
}
}//package FWG
Section 83
//LocalSetting (FWG.LocalSetting)
package FWG {
import basic.*;
import flash.net.*;
public class LocalSetting extends Obj {
private var lso:SharedObject;
private var vars:Array;
private var varName:String;
public function LocalSetting(_arg1:String){
lso = SharedObject.getLocal(_arg1, "/");
varName = "";
for (varName in lso.data.dataObj) {
this[varName] = lso.data.dataObj[varName];
};
lso.data.dataObj = this;
if (varName == ""){
lso.data.defaultDataObj = Common.cloneObj(this);
};
}
public function getDefault():Object{
return (lso.data.defaultDataObj);
}
override public function clear():void{
super.clear();
lso = null;
vars = null;
}
public function flush():void{
lso.flush();
}
public function setDefault():void{
var _local1:String;
for (_local1 in lso.data.defaultDataObj) {
this[_local1] = Common.cloneObj(lso.data.defaultDataObj[_local1]);
};
}
}
}//package FWG
Section 84
//Logo (FWG.Logo)
package FWG {
import ui.*;
public class Logo extends SBtn {
public function Logo(){
super();
this.buttonMode = true;
onPress = function ():void{
Common.getURL("http://www.freeworldgroup.com/");
};
}
}
}//package FWG
Section 85
//Main (FWG.Main)
package FWG {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import tank2007_2.*;
import flash.utils.*;
public class Main extends BasicMain {
private var __coins:int;
public var heroData:Object;
public var shakeOn:Boolean;
public var tips_mc:MovieClip;
public function Main(){
super("Tank2008", 550, 400);
keySetting = new KeySetting();
Global.gameInterface.radio = null;
Global.gameInterface.hero = null;
Global.gameInterface.weaponArr = ["cannon", "cannon", "cannon", "cannon", "spread", "eShock", "laser", "flame thrower", "chain-saw"];
Global.gameInterface.secWeaponArr = ["heat seeker", "crash missile", "mine", "wave crack"];
shakeOn = true;
coins = 0;
heroData = {headId:3, bodyId:3, color:0xFF00};
initStageData(["currentScore", "score", "coins", "stageNum", "heroData"]);
Global.fadeEffect.maskMc = tips_mc;
tips_mc.mouseEnabled = false;
tips_mc.mouseChildren = false;
}
public function set coins(_arg1:int):void{
__coins = _arg1;
if (Global.gamePad != null){
Global.gamePad.coins = _arg1;
};
}
public function get coins():int{
return (__coins);
}
override public function resetGameData():void{
super.resetGameData();
Hero.MaxHeadId = 3;
}
override public function set score(_arg1:int):void{
super.score = _arg1;
if (Global.gamePad != null){
Global.gamePad.score = _arg1;
};
}
override public function set stageNum(_arg1:int):void{
super.stageNum = _arg1;
if (Global.gamePad != null){
Global.gamePad.stageNum = _arg1;
};
}
override public function playGame():void{
var _local1:int;
_local1 = (int((stageNum / 2)) + 2);
if (_local1 < 3){
_local1 = 3;
} else {
if (_local1 > 8){
_local1 = 8;
};
};
Hero.MaxHeadId = _local1;
super.playGame();
}
override public function addScore(_arg1:int):void{
super.addScore(_arg1);
coins = (coins + _arg1);
}
public function fadeToGame():void{
if (hasWarned){
fadeTo(PageGame);
} else {
hasWarned = true;
fadeTo(PageGame, function ():void{
Global.pause = true;
Global.fadeEffect.onShow = function (){
};
Global.warningBox.show();
Global.warningBox.onHide = function ():void{
Global.pause = false;
};
});
};
}
override public function startNewStage():void{
super.startNewStage();
flipTo(PageMissionInfo);
}
override public function stageClear():void{
Global.main.gs.currentItem.heroData = (heroData = Global.gameInterface.hero.heroData);
super.stageClear();
if (stageNum > 15){
win();
} else {
switch ((stageNum - 1)){
case 3:
case 5:
case 7:
case 9:
case 11:
flipTo(PageStageClear2);
break;
default:
flipTo(PageStageClear);
break;
};
};
}
}
}//package FWG
Section 86
//MainContainer (FWG.MainContainer)
package FWG {
import basic.*;
public class MainContainer extends Sp {
public function MainContainer(){
Global.mainContainer = this;
}
public function putIn(_arg1):void{
while (this.numChildren > 0) {
this.removeChildAt(0);
};
this.addChild(_arg1);
}
}
}//package FWG
Section 87
//MenuPad (FWG.MenuPad)
package FWG {
import flash.display.*;
import flash.events.*;
import tank2007_2.*;
import ui.*;
public class MenuPad extends HiddenPad {
public var btnWeaponIcon3:BtnWeaponIcon;
public var btnWeaponIcon4:BtnWeaponIcon;
public var btnWeaponIcon6:BtnWeaponIcon;
public var btnWeaponIcon7:BtnWeaponIcon;
public var btnWeaponIcon5:BtnWeaponIcon;
public var btnWeaponIcon8:BtnWeaponIcon;
private var currentBtnWeaponIcon:BtnWeaponIcon;
public var speedBar:EnergyBar;
public var numsStageNum:Word;
public var numsCoins:Word;
private var currentBtnSecWeaponIcon:BtnSecWeaponIcon;
public var btnSecWeaponIcon1:BtnSecWeaponIcon;
public var btnSecWeaponIcon3:BtnSecWeaponIcon;
public var btnSecWeaponIcon0:BtnSecWeaponIcon;
public var rangeBar:EnergyBar;
public var btnSecWeaponIcon2:BtnSecWeaponIcon;
public var numsScore:Word;
public function MenuPad(){
var btn:*;
var i:int;
var info:String;
super(this.x, 352);
score = Global.main.score;
coins = Global.main.coins;
stageNum = Global.main.stageNum;
i = 3;
while (i <= 8) {
btn = this[("btnWeaponIcon" + i)];
btn.id = i;
btn.info = (((Common.setFirstLetterUpperCase(Global.gameInterface.weaponArr[i]) + " ( Hot key: ") + (i - 2)) + " )");
btn.icon.gotoAndStop((i + 1));
btn.onRollOver = function ():void{
Alt.show(this.info);
};
btn.onRollOut = function ():void{
Alt.hide();
};
btn.onPress = function ():void{
Alt.hide();
switchWeapon((46 + this.id));
};
Global.main.addKeyDownF((46 + i), switchWeapon);
if (i > Hero.MaxHeadId){
btn.lockMc.gotoAndStop(2);
btn.selectAble = false;
};
i = (i + 1);
};
i = 0;
for each (info in Global.gameInterface.secWeaponArr) {
btn = this[("btnSecWeaponIcon" + i)];
btn.id = i;
btn.info = Common.setFirstLetterUpperCase(info);
btn.icon.gotoAndStop((i + 1));
btn.onRollOver = function ():void{
Alt.show(this.info);
};
btn.onRollOut = function ():void{
Alt.hide();
};
btn.onPress = function ():void{
Alt.hide();
Global.gameInterface.hero.secWeaponId = this.id;
};
i = (i + 1);
};
}
public function set coins(_arg1:int):void{
numsCoins.text = _arg1;
}
public function set score(_arg1:int):void{
numsScore.text = _arg1;
}
public function set stageNum(_arg1:int):void{
numsStageNum.text = _arg1;
}
override public function removed(_arg1:Event=null):void{
var _local2:int;
super.removed();
currentBtnWeaponIcon = null;
currentBtnSecWeaponIcon = null;
_local2 = 3;
while (_local2 <= 8) {
Global.main.delKeyDownF((46 + _local2));
_local2++;
};
}
public function adjustBtnSecWeaponIcon():void{
if (currentBtnSecWeaponIcon != null){
currentBtnSecWeaponIcon.selected = false;
};
currentBtnSecWeaponIcon = this[("btnSecWeaponIcon" + Global.gameInterface.hero.secWeaponId)];
currentBtnSecWeaponIcon.selected = true;
}
private function switchWeapon(_arg1:int):void{
Global.main.gs.currentItem.heroData.headId = (Global.gameInterface.hero.headId = (_arg1 - 46));
}
public function unlockWeapon(_arg1:int):void{
this[("btnWeaponIcon" + _arg1)].lockMc.gotoAndStop(1);
this[("btnWeaponIcon" + _arg1)].selectAble = true;
}
public function adjustBtnWeaponIcon():void{
if (currentBtnWeaponIcon != null){
currentBtnWeaponIcon.selected = false;
};
currentBtnWeaponIcon = this[("btnWeaponIcon" + Global.gameInterface.hero.headId)];
currentBtnWeaponIcon.selected = true;
}
}
}//package FWG
Section 88
//MissionInfo (FWG.MissionInfo)
package FWG {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import basic.*;
import motion.*;
public class MissionInfo extends Mc {
private var alphaFade:AlphaFade;
public var btnOk:BtnOK;
public var onCallBack:Function;
public function MissionInfo(){
super();
stop();
alphaFade = new AlphaFade(this);
btnOk.onPress = function ():void{
onCallBack();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
onCallBack = null;
alphaFade.clear();
alphaFade = null;
}
public function hide():void{
this.gotoAndStop(1);
alphaFade.hide();
}
public function fadeShow():void{
this.mouseChildren = true;
this.gotoAndStop((Global.main.stageNum + 1));
alphaFade.fadeShow();
}
public function fadeHide():void{
this.mouseChildren = false;
alphaFade.fadeHide();
alphaFade.onHide = function ():void{
gotoAndStop(1);
};
}
public function show():void{
this.gotoAndStop((Global.main.stageNum + 1));
alphaFade.show();
}
}
}//package FWG
Section 89
//MochiAd (FWG.MochiAd)
package FWG {
import flash.display.*;
import flash.events.*;
import flash.net.*;
import flash.utils.*;
import flash.system.*;
public class MochiAd {
public static var _root;
public static function showTimedAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
this.clip.stop();
}, ad_finished:function ():void{
this.clip.play();
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
var _local2:MovieClip;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
_local2 = this.parent.parent;
MochiAd.unload(_local2);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = _local1.loaderInfo.bytesTotal;
if ((((_local4 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
_local3 = true;
};
};
};
if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local3 = true;
};
if (_local3){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function _allowDomains(_arg1:String):String{
var _local2:String;
_local2 = _arg1.split("/")[2].split(":")[0];
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function load(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var depth:Number;
var mc:MovieClip;
var wh:Array;
var lv:URLVariables;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var f:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
if (!MochiAd._isNetworkAvailable()){
return (null);
};
if (clip._mochiad_loaded){
return (null);
};
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, "_mochiad", depth);
wh = MochiAd._getRes(options, clip);
options.res = ((wh[0] + "x") + wh[1]);
options.server = (options.server + options.id);
delete options.id;
clip._mochiad_loaded = true;
lv = new URLVariables();
for (k in options) {
v = options[k];
if (!(v is Function)){
lv[k] = v;
};
};
if (clip.loaderInfo.loaderURL.indexOf("http") != 0){
options.no_page = true;
};
server = lv.server;
delete lv.server;
hostname = _allowDomains(server);
mc["onEnterFrame"] = function ():void{
if (!this._mochiad_ctr){
delete this["onEnterFrame"];
MochiAd.unload(this.parent);
};
};
doOnEnterFrame(mc);
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.lc = lc;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
f = function (_arg1:Object):void{
mc._mochiad_ctr_failed = true;
};
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f);
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["sendHighScore", _arg1], _arg2, _arg3);
return (true);
}
public static function _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local3:Object;
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
_arg1 = _local3.clip.loaderInfo.parameters.mochiad_options;
if (_arg1){
_local5 = _arg1.split("&");
_local6 = 0;
while (_local6 < _local5.length) {
_local7 = _local5[_local6].split("=");
_local3[unescape(_local7[0])] = unescape(_local7[1]);
_local6++;
};
};
return (_local3);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
_arg1.removeChild(_arg1._mochiad);
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip;
_local4 = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local3:Object;
var _local4:Number;
var _local5:Number;
var _local6:Array;
_local3 = _arg2.getBounds(_arg2.root);
_local4 = 0;
_local5 = 0;
if (typeof(_arg1.res) != "undefined"){
_local6 = _arg1.res.split("x");
_local4 = parseFloat(_local6[0]);
_local5 = parseFloat(_local6[1]);
} else {
_local4 = (_local3.xMax - _local3.xMin);
_local5 = (_local3.yMax - _local3.yMin);
};
if ((((_local4 == 0)) || ((_local5 == 0)))){
_local4 = _arg2.stage.stageWidth;
_local5 = _arg2.stage.stageHeight;
};
return ([_local4, _local5]);
}
public static function getVersion():String{
return ("1.5");
}
public static function _loadCommunicator(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var clipname:String;
var server:String;
var depth:Number;
var mc:MovieClip;
var lv:URLVariables;
var k:String;
var lc:LocalConnection;
var name:String;
var req:URLRequest;
var loader:Loader;
var options = _arg1;
DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
clipname = ("_mochiad_com_" + options.id);
if (!MochiAd._isNetworkAvailable()){
return (null);
};
if (clip[clipname]){
return (clip[clipname]);
};
server = (options.com_server + options.id);
MochiAd._allowDomains(server);
delete options.id;
delete options.com_server;
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, clipname, depth);
lv = new URLVariables();
for (k in options) {
lv[k] = options[k];
};
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.name = name;
mc.lc = lc;
lv.lc = name;
mc._id = 0;
mc._queue = [];
mc.rpcResult = function (_arg1:Object):void{
var _local3:Array;
var _local4:Array;
var _local5:Number;
var _local6:Object;
var _local7:Object;
_arg1 = parseInt(_arg1.toString());
_local3 = mc._callbacks[_arg1];
if (typeof(_local3) == "undefined"){
return;
};
delete mc._callbacks[_arg1];
_local4 = [];
_local5 = 2;
while (_local5 < _local3.length) {
_local4.push(_local3[_local5]);
_local5++;
};
_local5 = 1;
while (_local5 < arguments.length) {
_local4.push(arguments[_local5]);
_local5++;
};
_local6 = _local3[1];
_local7 = _local3[0];
if (((_local7) && ((typeof(_local6) == "string")))){
_local6 = _local7[_local6];
};
if (typeof(_local6) == "function"){
_local6.apply(_local7, _local4);
};
};
mc._didConnect = function (_arg1:String):void{
var _local2:Array;
var _local3:Function;
var _local4:Number;
var _local5:Array;
mc._endpoint = _arg1;
_local2 = mc._queue;
delete mc._queue;
_local3 = mc.doSend;
_local4 = 0;
while (_local4 < _local2.length) {
_local5 = _local2[_local4];
_local3.apply(this, _local5);
_local4++;
};
};
mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{
var _local5:Number;
var _local6:LocalConnection;
var _local7:Array;
var _local8:Number;
if (mc._endpoint == null){
_local7 = [];
_local8 = 0;
while (_local8 < arguments.length) {
_local7.push(arguments[_local8]);
_local8++;
};
mc._queue.push(_local7);
return;
};
mc._id = (mc._id + 1);
_local5 = mc._id;
mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))];
_local6 = new LocalConnection();
_local6.send(mc._endpoint, "rpc", _local5, _arg1);
};
mc._callbacks = {};
mc._callbacks[0] = [mc, "_didConnect"];
lv.st = getTimer();
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader = new Loader();
loader.load(req);
mc.addChild(loader);
mc._mochiad_com = loader;
return (mc);
}
public static function showPreloaderAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var bar:MovieClip;
var bar_color:Number;
var bar_background:Number;
var bar_outline:Number;
var backing_mc:MovieClip;
var backing:Object;
var inside_mc:MovieClip;
var inside:Object;
var outline_mc:MovieClip;
var outline:Object;
var options = _arg1;
_root = options.clip;
DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{
this.clip.stop();
}, ad_finished:function ():void{
this.clip.play();
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.x = (w * -0.5);
chk.y = (h * -0.5);
bar = createEmptyMovieClip(chk, "_mochiad_bar", 4);
bar.x = 10;
bar.y = (h - 20);
bar_color = options.color;
delete options.color;
bar_background = options.background;
delete options.background;
bar_outline = options.outline;
delete options.outline;
backing_mc = createEmptyMovieClip(bar, "_outline", 1);
backing = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo((w - 20), 0);
backing.lineTo((w - 20), 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
inside_mc = createEmptyMovieClip(bar, "_inside", 2);
inside = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo((w - 20), 0);
inside.lineTo((w - 20), 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
outline_mc = createEmptyMovieClip(bar, "_outline", 3);
outline = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo((w - 20), 0);
outline.lineTo((w - 20), 10);
outline.lineTo(0, 10);
outline.lineTo(0, 0);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
var _local2:MovieClip;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
_local2 = this.parent.parent;
MochiAd.unload(_local2);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Object;
var _local3:Number;
var _local4:Boolean;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Object;
var _local10:Number;
var _local11:Number;
_local1 = _root;
_local2 = this.parent._mochiad_ctr;
_local3 = (getTimer() - this.started);
_local4 = false;
_local5 = _local1.loaderInfo.bytesTotal;
_local6 = _local1.loaderInfo.bytesLoaded;
_local7 = ((100 * _local6) / _local5);
_local8 = ((100 * _local3) / chk.ad_msec);
_local9 = this._mochiad_bar._inside;
_local10 = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
if (!chk.showing){
_local11 = _local2.loaderInfo.bytesTotal;
if ((((_local11 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local3 > chk.ad_timeout){
_local4 = true;
};
};
};
if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local4 = true;
};
if ((((((_local5 > 0)) && ((_local6 >= _local5)))) && (_local4))){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3);
return (true);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var f:Function;
var mc = _arg1;
f = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
mc.removeEventListener(Event.ENTER_FRAME, f);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package FWG
Section 90
//MusicCredits (FWG.MusicCredits)
package FWG {
import flash.display.*;
import flash.events.*;
public class MusicCredits extends AlphaFadeSp {
public var btnBack:BtnBack;
public function MusicCredits(){
super();
Global.main.musicCredits = this;
hide();
btnBack.onPress = function ():void{
Global.main.hideCredits();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
Global.main.musicCredits = null;
}
}
}//package FWG
Section 91
//NumCrashMissile (FWG.NumCrashMissile)
package FWG {
import ui.*;
public class NumCrashMissile extends Num {
}
}//package FWG
Section 92
//NumHeatSeeker (FWG.NumHeatSeeker)
package FWG {
import ui.*;
public class NumHeatSeeker extends Num {
}
}//package FWG
Section 93
//NumMine (FWG.NumMine)
package FWG {
import ui.*;
public class NumMine extends Num {
}
}//package FWG
Section 94
//NumWaveCrack (FWG.NumWaveCrack)
package FWG {
import ui.*;
public class NumWaveCrack extends Num {
}
}//package FWG
Section 95
//Options (FWG.Options)
package FWG {
import basic.*;
public class Options extends Sp {
public var colorSelect:ColorSelect;
public var btnOk:BtnOK2;
public function Options(){
super();
btnOk.onPress = function ():void{
colorSelect.confirm();
Global.main.flipTo(PageMissionInfo);
};
}
}
}//package FWG
Section 96
//PageGame (FWG.PageGame)
package FWG {
import flash.display.*;
import flash.events.*;
import tank2007_2.*;
import effect.*;
import basic.*;
import flash.utils.*;
public class PageGame extends Sp {
public var typewriter:Typewriter;
public var bossLifeBar:LifeBar;
public var gameContainer:GameContainer;
public function PageGame(){
super();
gameContainer.addChild((Global.game = new Game()));
Global.gameInterface.bossLifeBar = bossLifeBar;
Global.gameInterface.bossLifeBar.visible = false;
Global.game.start(Global.main.stageNum);
Global.game.onStageClear = function (){
Global.main.stageClear();
};
Global.game.onGameOver = function (){
addGameOver("Game Over!", Global.game.playAgain);
};
Global.game.onTimeUp = function (){
addGameOver("Time's Up!", Global.game.restart);
};
Global.game.onErrorKilled = function (){
addGameOver("Error RED TANK killed!", Global.game.restart);
};
Global.gameInterface.showMsg = showMsg;
}
private function showMsg(_arg1:String, _arg2:Boolean=false):void{
typewriter.show(_arg1, _arg2);
}
override public function removed(_arg1:Event=null):void{
super.removed();
Global.gameInterface.showMsg = null;
Global.gameInterface.bossLifeBar = null;
}
private function addGameOver(_arg1:String, _arg2:Function):void{
var _local3:*;
_local3 = new PageGameOver();
this.addChild(_local3);
_local3.showMsg(_arg1, _arg2);
}
}
}//package FWG
Section 97
//PageGameOver (FWG.PageGameOver)
package FWG {
import flash.display.*;
import flash.events.*;
import ui.*;
public class PageGameOver extends AlphaFadeSp {
public var btnPa:BtnPa;
public var hideCallBack:Function;
public var gameOverTxt_gra:MovieClip;
public var numsScore:Word;
public function PageGameOver(){
hide();
}
public function showMsg(_arg1:String, _arg2:Function):void{
var msg = _arg1;
var _hideCallBack = _arg2;
hideCallBack = _hideCallBack;
gameOverTxt_gra.gotoAndStop(msg);
fadeShow();
Global.main.gotoMenuShowAlert = false;
numsScore.text = Global.main.score;
onHide = function ():void{
Global.main.gotoMenuShowAlert = true;
hideCallBack();
this.parent.removeChild(this);
};
btnPa.onPress = function ():void{
fadeHide();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
hideCallBack = null;
}
}
}//package FWG
Section 98
//PageKeySetting (FWG.PageKeySetting)
package FWG {
import basic.*;
import key_setting.*;
public class PageKeySetting extends Sp {
public var keyBoard:KeyBoard;
public function PageKeySetting(){
keyBoard.onConfirm = Global.main.instPlay;
}
}
}//package FWG
Section 99
//PageMenu (FWG.PageMenu)
package FWG {
import basic.*;
public class PageMenu extends Sp {
public var musicCredits:MusicCredits;
public function PageMenu(){
super();
Global.savePad.onSelect = function ():void{
Global.main.initBySaveItem();
Global.main.instPlay();
};
}
}
}//package FWG
Section 100
//PageMissionInfo (FWG.PageMissionInfo)
package FWG {
import basic.*;
public class PageMissionInfo extends Sp {
public var missionInfo:MissionInfo;
public function PageMissionInfo(){
super();
missionInfo.show();
missionInfo.onCallBack = function ():void{
Global.main.fadeToGame();
};
}
}
}//package FWG
Section 101
//PageStageClear (FWG.PageStageClear)
package FWG {
import flash.display.*;
import basic.*;
import ui.*;
public class PageStageClear extends Sp {
public var numsTotalScore:Word;
public var btnNs:BtnNs;
public var numsScore:Word;
public function PageStageClear(){
super();
btnNs.onPress = function (){
Global.main.startNewStage();
};
btnNs.onPress = function (){
Global.main.startNewStage();
};
numsScore.text = Global.main.currentScore;
numsTotalScore.text = Global.main.score;
}
}
}//package FWG
Section 102
//PageStageClear2 (FWG.PageStageClear2)
package FWG {
public dynamic class PageStageClear2 extends PageStageClear {
}
}//package FWG
Section 103
//PageWin (FWG.PageWin)
package FWG {
import flash.display.*;
public dynamic class PageWin extends MovieClip {
}
}//package FWG
Section 104
//PlayerInfo (FWG.PlayerInfo)
package FWG {
public class PlayerInfo extends LocalSetting {
public var playerName:String;// = "MrNoName"
public static const DEFAULT_PLAYERNAME:String = "MrNoName";
public function PlayerInfo(){
playerName = DEFAULT_PLAYERNAME;
super("FWGPlayerInfo");
}
}
}//package FWG
Section 105
//PopUp (FWG.PopUp)
package FWG {
import flash.display.*;
import flash.text.*;
import ui.*;
public class PopUp extends BasicPopUp {
public var msgTxt:TextField;
override public function show(_arg1, _arg2:String):void{
super.show(_arg1, _arg2);
this.y = _arg1.y;
}
}
}//package FWG
Section 106
//PreLoader (FWG.PreLoader)
package FWG {
import flash.events.*;
import tank2007_2.*;
import basic.*;
public class PreLoader extends Sp {
private var onFinishStep:Function;
public var onLoadFinish:Function;
private var stepF:Function;
public function PreLoader(){
super();
Global.preLoader = this;
Global.addEvent(this, this, Event.ENTER_FRAME, run);
stepF = BmdList.stepInit;
onFinishStep = function ():void{
onLoadFinish();
};
}
private function run(_arg1:Event):void{
if (stepF()){
Global.removeEvent(this, Event.ENTER_FRAME, run);
this.parent.removeChild(this);
onFinishStep();
Global.preLoader = null;
stepF = null;
onFinishStep = null;
onLoadFinish = null;
};
}
}
}//package FWG
Section 107
//QualitySetting (FWG.QualitySetting)
package FWG {
import flash.display.*;
import flash.events.*;
public class QualitySetting extends AlphaFadeSp {
public var hitRec:MovieClip;
public var btnOK:BtnOK;
public var btn3:BtnQ3;
public var btn0:BtnQ0;
public var btn2:BtnQ2;
public var btn1:BtnQ1;
override public function added(_arg1:Event=null):void{
var i:int;
var event = _arg1;
super.added();
quality = stage.quality;
hide();
i = 0;
while (i < 4) {
this[("btn" + i)].onPress = function ():void{
quality = this.label;
};
i = (i + 1);
};
btnOK.onPress = function ():void{
hide();
};
Global.main.qualitySetting = this;
}
public function set quality(_arg1:String):void{
var _local2:int;
var _local3:*;
_local2 = 0;
while (_local2 < 4) {
_local3 = this[("btn" + _local2)];
if (_local3.label == _arg1){
_local3.selected = true;
} else {
_local3.selected = false;
};
_local2++;
};
stage.quality = _arg1;
}
override public function removed(_arg1:Event=null):void{
super.removed();
Global.main.qualitySetting = null;
}
private function hitHide(_arg1:MouseEvent):void{
}
}
}//package FWG
Section 108
//Radio (FWG.Radio)
package FWG {
import flash.display.*;
import flash.events.*;
import tank2007_2.*;
import basic.*;
import ui.*;
public class Radio extends Sp {
public var clock:Clock;
public var numCrashMissile:NumCrashMissile;
public var numWaveCrack:NumWaveCrack;
public var codeMc:CodeMc;
public var numHeatSeeker:NumHeatSeeker;
public var lifeBar:LifeBar;
public var rec:MovieClip;
private var bmd:TestBmd;
public var superBomb:MovieClip;
private var currentNumMc;
public var fireEnergyBar:LifeBar;
private var chars;
public var numsDouble:Word;
public var numMine:NumMine;
public function Radio(){
Global.gameInterface.radio = this;
}
public function init(_arg1):void{
clock.visible = false;
numHeatSeeker.visible = false;
numCrashMissile.visible = false;
numMine.visible = false;
numWaveCrack.visible = false;
superBomb.visible = false;
doubleValue = Global.gameInterface.hero.doubleValue;
lifeValue = (Global.gameInterface.hero.life / Global.gameInterface.hero.totalLife);
fireEnergyValue = (Global.gameInterface.hero.fireEnergy / Global.gameInterface.hero.totalFireEnergy);
heatSeekerNum = Global.gameInterface.hero.heatSeekerNum;
crashMissileNum = Global.gameInterface.hero.crashMissileNum;
mineNum = Global.gameInterface.hero.mineNum;
waveCrackNum = Global.gameInterface.hero.waveCrackNum;
secWeapon = Global.gameInterface.hero.secWeapon;
chars = _arg1;
bmd = new TestBmd(100, 100, true, 855703296);
this.addChild(new Bitmap(bmd, PixelSnapping.NEVER));
}
public function set waveCrackNum(_arg1:int):void{
numWaveCrack.value = _arg1;
}
public function set heatSeekerNum(_arg1:int):void{
numHeatSeeker.value = _arg1;
}
public function set crashMissileNum(_arg1:int):void{
numCrashMissile.value = _arg1;
}
public function set fireEnergyValue(_arg1:Number):void{
fireEnergyBar.value = _arg1;
}
override public function removed(_arg1:Event=null):void{
super.removed();
chars = null;
if (bmd != null){
bmd.dispose();
bmd = null;
};
currentNumMc = null;
Global.gameInterface.radio = null;
}
public function set mineNum(_arg1:int):void{
numMine.value = _arg1;
}
public function set secWeapon(_arg1:String):void{
var _local2:Array;
var _local3:String;
_local2 = _arg1.split(" ");
_arg1 = "";
for each (_local3 in _local2) {
_arg1 = (_arg1 + Common.setFirstLetterUpperCase(_local3));
};
if (currentNumMc != null){
currentNumMc.visible = false;
};
currentNumMc = this[("num" + _arg1)];
currentNumMc.visible = true;
}
public function set doubleValue(_arg1:Number):void{
numsDouble.text = _arg1;
}
public function set lifeValue(_arg1:Number):void{
lifeBar.value = _arg1;
}
public function update():void{
var _local1:int;
var _local2:int;
var _local3:*;
bmd.fillRect(bmd.rect, 855703296);
_local1 = chars.numChildren;
_local2 = 0;
while (_local2 < _local1) {
_local3 = chars.getChildAt(_local2);
bmd.setPixel32((_local3.x / 16), (_local3.y / 16), 4278255360);
_local2++;
};
bmd.setPixel32((Global.gameInterface.hero.x / 16), (Global.gameInterface.hero.y / 16), 4294901760);
rec.x = (-(Global.game.x) / 16);
rec.y = (-(Global.game.y) / 16);
}
}
}//package FWG
Section 109
//RunSp (FWG.RunSp)
package FWG {
import flash.display.*;
import flash.events.*;
import basic.*;
public class RunSp extends Sp {
public var runAble:Boolean;
override public function added(_arg1:Event=null):void{
super.added();
if (runAble){
addRun();
};
}
public function addRun(_arg1:Function=null):void{
if (_arg1 == null){
_arg1 = run;
};
Global.game.addRun(_arg1);
}
override public function removed(_arg1:Event=null):void{
delRun();
super.removed();
}
public function RunMc(_arg1:Boolean=false):void{
runAble = _arg1;
}
public function delRun(_arg1:Function=null):void{
if (_arg1 == null){
_arg1 = run;
};
if (Global.game == null){
} else {
Global.game.delRun(_arg1);
};
}
public function run():void{
}
}
}//package FWG
Section 110
//SavePad (FWG.SavePad)
package FWG {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import ui.*;
public class SavePad extends AlphaFadeSp {
public var infoPad:MovieClip;
public var btn3:BtnSi2;
public var btn0:BtnSi2;
public var btn2:BtnSi2;
public var btn4:BtnSi2;
public var btnSng:BtnSng;
public var btn1:BtnSi2;
private var saveId:int;
public var sgt:MovieClip;
public var onSelect:Function;
public function SavePad(){
super();
Global.savePad = this;
hide();
hideData();
onSelect = function (){
};
}
private function select():void{
fadeHide();
onHide = function ():void{
onSelect();
};
}
private function hideData():void{
infoPad.varNameTxt.text = "";
infoPad.valueTxt.text = "";
}
public function showMsg(_arg1:String, _arg2:String):void{
var i:int;
var btn:*;
var msg = _arg1;
var method = _arg2;
fadeShow();
switch (method){
case "read":
sgt.visible = false;
i = 0;
while (i < GameSave.total) {
btn = this[("btn" + i)];
if (Global.main.gs.read(i) == null){
btn.visible = false;
} else {
btn.id = i;
btn.text = ("Saved_" + (i + 1));
btn.onRollOver = function ():void{
viewData(this.id);
};
btn.onRollOut = function ():void{
hideData();
};
btn.onPress = function ():void{
Global.main.gs.select(this.id);
select();
};
};
i = (i + 1);
};
break;
case "write":
btnSng.visible = false;
i = 0;
while (i < GameSave.total) {
btn = this[("btn" + i)];
btn.id = i;
if (Global.main.gs.read(i) == null){
btn.text = "New";
btn.onPress = function ():void{
saveId = this.id;
save();
};
} else {
btn.text = ("Saved_" + (i + 1));
btn.onRollOver = function ():void{
viewData(this.id);
};
btn.onRollOut = function ():void{
hideData();
};
btn.onPress = function ():void{
saveId = this.id;
Alert.show("Overwrite?", function (_arg1:Boolean):void{
if (_arg1){
save();
};
});
};
};
i = (i + 1);
};
break;
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
Global.savePad = null;
onSelect = null;
}
private function save():void{
MsgBox.show("Saved!", function ():void{
Global.main.gs.save(Global.main.saveItem, saveId);
select();
});
}
private function viewData(_arg1:int):void{
var _local2:*;
_local2 = Global.main.gs.read(_arg1);
if (_local2 != null){
infoPad.varNameTxt.text = "Stage:\rScore:\rCoins:";
infoPad.valueTxt.text = ((((_local2.stageNum + "\r") + _local2.score) + "\r") + _local2.coins);
};
}
}
}//package FWG
Section 111
//ShopPad (FWG.ShopPad)
package FWG {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class ShopPad extends HiddenPad {
public var item2:Item;
public var item5:Item;
public var item6:Item;
public var item7:Item;
public var item3:Item;
public var item4:Item;
public var item0:Item;
public var item1:Item;
public var item8:Item;
public var popup:PopUp;
private static const infoArr:Array = ["Speed up", "Recover", "Fire power", "Double", "Heat seeker", "Crash missile", "Mine", "Wave crack", "Force field"];
private static const total:int = priceArr.length;
private static const priceArr:Array = [50, 100, 50, 100, 150, 100, 100, 200, 200];
public function ShopPad(){
var i:int;
var item:Item;
super(490, this.y);
popup.mouseChildren = false;
popup.mouseEnabled = false;
i = 0;
while (i < total) {
item = Item(this[("item" + i)]);
item.init(i, infoArr[i], priceArr[i]);
item.onRollOver = function ():void{
popup.show(this, this.info);
};
item.onRollOut = function ():void{
popup.hide();
};
item.onPress = function ():void{
Global.main.playSound("SndPowerUp", this);
this.run();
popup.hide();
Global.main.coins = (Global.main.coins - this.price);
update();
};
i = (i + 1);
};
item0.run = function ():void{
Global.gameInterface.hero.speedUp();
};
item1.run = function ():void{
Global.gameInterface.hero.addLife();
};
item2.run = function ():void{
Global.gameInterface.hero.rangeUp();
};
item3.run = function ():void{
Global.gameInterface.hero.setDouble();
};
item4.run = function ():void{
Global.gameInterface.hero.addHeatSeeker();
};
item5.run = function ():void{
Global.gameInterface.hero.addCrashMissile();
};
item6.run = function ():void{
Global.gameInterface.hero.addMine();
};
item7.run = function ():void{
Global.gameInterface.hero.addWaveCrack();
};
item8.run = function ():void{
Global.gameInterface.hero.addShield();
};
}
public function update():void{
var i:int;
var item:Item;
item0.price = ((Global.gameInterface.hero.vId + 1) * 50);
item2.price = ((Global.gameInterface.hero.rangeId + 1) * 50);
i = 0;
while (i < total) {
item = Item(this[("item" + i)]);
if (item.price > Global.main.coins){
item.selectAble = false;
item.onErrorPress = function ():void{
popup.show(this, "Can't afford!");
popup.hideDelay(2000);
};
} else {
item.selectAble = true;
item.onErrorPress = function ():void{
};
};
i = (i + 1);
};
if (Global.gameInterface.hero.vId >= 5){
item0.selectAble = false;
item0.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.life == Global.gameInterface.hero.totalLife){
item1.selectAble = false;
item1.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.rangeId >= 5){
item2.selectAble = false;
item2.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.heatSeekerNum == Global.gameInterface.hero.totalHeatSeeker){
item4.selectAble = false;
item4.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.crashMissileNum == Global.gameInterface.hero.totalCrashMissile){
item5.selectAble = false;
item5.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.mineNum == Global.gameInterface.hero.totalMine){
item6.selectAble = false;
item6.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.waveCrackNum == Global.gameInterface.hero.totalWaveCrack){
item7.selectAble = false;
item7.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
if (Global.gameInterface.hero.shield.visible){
item8.selectAble = false;
item8.onErrorPress = function ():void{
popup.show(this, "Don't need!");
popup.hideDelay(2000);
};
};
}
override public function show():void{
super.show();
update();
}
}
}//package FWG
Section 112
//StageData (FWG.StageData)
package FWG {
import basic.*;
public class StageData extends Obj {
public var dataObj0:Object;
public var prevDataObj:Object;
public var dataObj:Object;
public var varNameList:Array;
public function StageData(_arg1:Array){
var _local2:*;
super();
varNameList = _arg1;
dataObj0 = copyMain();
prevDataObj = copyMain();
dataObj = copyMain();
for (_local2 in dataObj) {
};
}
public function resetGameData():void{
initByObj(dataObj0);
}
public function copyMain():Object{
var _local1:Object;
var _local2:String;
_local1 = new Object();
for each (_local2 in varNameList) {
_local1[_local2] = Common.cloneObj(Global.main[_local2]);
};
return (_local1);
}
public function restartStage():void{
initByObj(prevDataObj);
}
public function initByObj(_arg1:Object=null):void{
var _local2:*;
if (_arg1 == null){
_arg1 = dataObj;
};
for (_local2 in _arg1) {
Global.main[_local2] = Common.cloneObj(_arg1[_local2]);
};
}
public function update():void{
var _local1:*;
prevDataObj = (dataObj = copyMain());
for (_local1 in dataObj) {
};
}
override public function clear():void{
super.clear();
varNameList = null;
dataObj0 = null;
prevDataObj = null;
dataObj = null;
}
}
}//package FWG
Section 113
//SubmitScore (FWG.SubmitScore)
package FWG {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import basic.*;
import flash.net.*;
import ui.*;
public class SubmitScore extends Mc {
private var loader:URLLoader;
private var variables:URLVariables;
public var btnX:BtnX;
private var request:URLRequest;
public var btnSubmit:BtnSubmit;
public var scoreTxt:TextField;
private var game_name:String;
public var nameTxt:TextField;
private static var submitScore:SubmitScore;
public function SubmitScore(){
super();
this.stop();
this.visible = false;
submitScore = this;
btnSubmit.onPress = function ():void{
var _local1:Point;
_local1 = this.localToGlobal(new Point(nameTxt.x, nameTxt.y));
Common.selectTxt(nameTxt);
switch (nameTxt.text){
case "":
case PlayerInfo.DEFAULT_PLAYERNAME:
Alt.show("Your Name, please", (_local1.x + 50), (_local1.y - 30));
return;
};
submit();
};
btnX.onPress = function ():void{
_hide();
};
}
private function _show():void{
this.visible = true;
init();
}
private function hideAlt(_arg1:MouseEvent):void{
Alt.hide();
}
private function init():void{
game_name = Global.main.gameName;
nameTxt.text = Global.main.playerInfo.playerName;
scoreTxt.text = String(Global.main.score);
Common.selectTxt(nameTxt);
variables = new URLVariables();
request = new URLRequest("http://www.freeworldgroup.com/score/score.asp");
variables.game = game_name;
scoreTxt.text = String(Global.main.score);
loader = new URLLoader();
Global.addEvent(this, loader, Event.COMPLETE, completeHandler);
Global.addEvent(this, loader, IOErrorEvent.IO_ERROR, errorHandler);
Global.addEvent(this, nameTxt, MouseEvent.MOUSE_DOWN, hideAlt);
}
private function errorHandler(_arg1:IOErrorEvent):void{
}
public function _hide():void{
this.visible = false;
this.gotoAndStop(1);
Global.removeEvent(loader, Event.COMPLETE, completeHandler);
Global.removeEvent(loader, IOErrorEvent.IO_ERROR, errorHandler);
if (nameTxt != null){
Global.removeEvent(nameTxt, MouseEvent.MOUSE_DOWN, hideAlt);
};
variables = null;
request = null;
loader = null;
}
private function submit():void{
variables.score = scoreTxt.text;
Global.main.playerInfo.playerName = (variables.name = nameTxt.text);
request.data = variables;
request.method = URLRequestMethod.POST;
sendToURL(request);
loader.load(request);
Global.removeEvent(nameTxt, MouseEvent.MOUSE_DOWN, hideAlt);
this.gotoAndStop(2);
Global.main.btnSs.visible = false;
}
override public function removed(_arg1:Event=null):void{
super.removed();
variables = null;
request = null;
loader = null;
submitScore = null;
}
private function completeHandler(_arg1:Event):void{
this.gotoAndStop(3);
}
public static function show():void{
submitScore._show();
}
public static function hide():void{
submitScore._hide();
}
}
}//package FWG
Section 114
//WarningBox (FWG.WarningBox)
package FWG {
import flash.events.*;
import basic.*;
public class WarningBox extends Mc {
public var btn:BtnOK3;
public var onHide:Function;
public function WarningBox(){
addFrameScript(9, frame10, 19, frame20);
Global.warningBox = this;
stop();
this.visible = false;
}
function frame10(){
stop();
btn.onPress = function ():void{
hide();
};
}
override public function removed(_arg1:Event=null):void{
Global.warningBox = null;
super.removed();
onHide = null;
}
function frame20(){
stop();
onHide();
this.parent.removeChild(this);
}
public function hide():void{
gotoAndPlay("hide");
}
public function show():void{
this.visible = true;
gotoAndPlay("show");
}
}
}//package FWG
Section 115
//FPS (help.FPS)
package help {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.utils.*;
public class FPS extends MovieClip {
public var txt:TextField;
private var ms:int;
private var fs:int;
public function FPS(){
ms = getTimer();
fs = 0;
this.addEventListener(Event.ADDED, onAdded);
this.addEventListener(Event.REMOVED, onRemoved);
}
private function enterFrame(_arg1:Event):void{
if ((getTimer() - 1000) >= ms){
ms = getTimer();
txt.text = (fs.toString() + "fps");
fs = 0;
} else {
fs++;
};
}
private function onAdded(_arg1:Event):void{
stage.addEventListener(Event.ENTER_FRAME, enterFrame);
}
private function onRemoved(_arg1:Event):void{
stage.removeEventListener(Event.ENTER_FRAME, enterFrame);
}
}
}//package help
Section 116
//MemoryBar (help.MemoryBar)
package help {
import flash.display.*;
import flash.text.*;
import flash.events.*;
import flash.system.*;
public class MemoryBar extends MovieClip {
public var bar:MovieClip;
public var txt:TextField;
public var totalMemory:int;
public function MemoryBar(){
stage.addEventListener(Event.ENTER_FRAME, run, false, 0, true);
}
private function run(_arg1:Event):void{
var _local2:int;
_local2 = System.totalMemory;
if ((totalMemory - _local2) > 5000000){
trace((((("max=" + totalMemory) + "B,min=") + _local2) + "B"));
};
totalMemory = _local2;
bar.width = (totalMemory / 200000);
txt.text = ((totalMemory / (0x0400 * 0x0400)) + "MB");
}
}
}//package help
Section 117
//KeyBoard (key_setting.KeyBoard)
package key_setting {
import flash.display.*;
import flash.events.*;
import FWG.*;
import basic.*;
public dynamic class KeyBoard extends Sp {
private var currentKey:KeyMc;
public var key_mc27:KeyMc;
public var btnDefault:BtnDefault;
public var key_mc38:KeyMc;
public var key_mc39:KeyMc;
public var key_mc37:KeyMc;
public var key_mc32:KeyMc;
public var key_mc49:KeyMc;
public var key_mc40:KeyMc;
public var key_mc50:KeyMc;
public var key_mc52:KeyMc;
public var key_mc53:KeyMc;
public var key_mc54:KeyMc;
public var key_mc55:KeyMc;
public var key_mc56:KeyMc;
public var key_mc57:KeyMc;
public var key_mc51:KeyMc;
public var key_mc219:KeyMc;
public var key_mc48:KeyMc;
public var popup:PopUp;
public var key_mc65:KeyMc;
public var key_mc67:KeyMc;
public var key_mc69:KeyMc;
public var key_mc220:KeyMc;
public var key_mc100:KeyMc;
public var key_mc102:KeyMc;
public var key_mc103:KeyMc;
public var key_mc104:KeyMc;
public var key_mc106:KeyMc;
public var key_mc107:KeyMc;
public var key_mc101:KeyMc;
public var key_mc109:KeyMc;
public var key_mc105:KeyMc;
public var key_mc221:KeyMc;
public var key_mc222:KeyMc;
public var key_mc66:KeyMc;
public var key_mc70:KeyMc;
public var key_mc68:KeyMc;
public var key_mc72:KeyMc;
public var key_mc73:KeyMc;
public var key_mc74:KeyMc;
public var key_mc75:KeyMc;
public var key_mc76:KeyMc;
public var key_mc77:KeyMc;
public var key_mc78:KeyMc;
public var key_mc79:KeyMc;
public var key_mc110:KeyMc;
public var key_mc111:KeyMc;
public var key_mc112:KeyMc;
public var key_mc113:KeyMc;
public var key_mc114:KeyMc;
public var key_mc116:KeyMc;
public var key_mc117:KeyMc;
public var key_mc115:KeyMc;
public var key_mc71:KeyMc;
public var key_mc118:KeyMc;
public var key_mc119:KeyMc;
public var key_mc80:KeyMc;
public var key_mc81:KeyMc;
public var key_mc83:KeyMc;
public var key_mc87:KeyMc;
public var key_mc82:KeyMc;
public var key_mc84:KeyMc;
public var key_mc85:KeyMc;
public var key_mc88:KeyMc;
public var key_mc123:KeyMc;
public var key_mc89:KeyMc;
public var key_mc120:KeyMc;
public var key_mc90:KeyMc;
public var key_mc122:KeyMc;
public var key_mc97:KeyMc;
public var key_mc98:KeyMc;
public var key_mc96:KeyMc;
public var key_mc86:KeyMc;
public var key_mc99:KeyMc;
public var btnOk:BtnOK;
private var keyArr:Array;
public var key_mc186:KeyMc;
public var key_mc188:KeyMc;
public var key_mc189:KeyMc;
public var key_mc187:KeyMc;
private var totalCtrl:int;
public var key_mc190:KeyMc;
public var key_mc191:KeyMc;
public var key_mc192:KeyMc;
public var onConfirm:Function;
public function KeyBoard(){
super();
key_mc27.str = "Esc";
key_mc32.str = "Space";
key_mc37.str = "Left";
key_mc38.str = "Up";
key_mc39.str = "Right";
key_mc40.str = "Down";
key_mc48.str = "0";
key_mc49.str = "1";
key_mc50.str = "2";
key_mc51.str = "3";
key_mc52.str = "4";
key_mc53.str = "5";
key_mc54.str = "6";
key_mc55.str = "7";
key_mc56.str = "8";
key_mc57.str = "9";
key_mc65.str = "A";
key_mc66.str = "B";
key_mc67.str = "C";
key_mc68.str = "D";
key_mc69.str = "E";
key_mc70.str = "F";
key_mc71.str = "G";
key_mc72.str = "H";
key_mc73.str = "I";
key_mc74.str = "J";
key_mc75.str = "K";
key_mc76.str = "L";
key_mc77.str = "M";
key_mc78.str = "N";
key_mc79.str = "O";
key_mc80.str = "P";
key_mc81.str = "Q";
key_mc82.str = "R";
key_mc83.str = "S";
key_mc84.str = "T";
key_mc85.str = "U";
key_mc86.str = "V";
key_mc87.str = "W";
key_mc88.str = "X";
key_mc89.str = "Y";
key_mc90.str = "Z";
key_mc96.str = "NumPad0";
key_mc97.str = "NumPad1";
key_mc98.str = "NumPad2";
key_mc99.str = "NumPad3";
key_mc100.str = "NumPad4";
key_mc101.str = "NumPad5";
key_mc102.str = "NumPad6";
key_mc103.str = "NumPad7";
key_mc104.str = "NumPad8";
key_mc105.str = "NumPad9";
key_mc106.str = "*";
key_mc107.str = "+";
key_mc109.str = "-";
key_mc110.str = ".";
key_mc111.str = "/";
key_mc112.str = "F1";
key_mc113.str = "F2";
key_mc114.str = "F3";
key_mc115.str = "F4";
key_mc116.str = "F5";
key_mc117.str = "F6";
key_mc118.str = "F7";
key_mc119.str = "F8";
key_mc120.str = "F9";
key_mc122.str = "F11";
key_mc123.str = "F12";
key_mc186.str = ";";
key_mc187.str = "=";
key_mc188.str = ",";
key_mc189.str = "-";
key_mc190.str = ".";
key_mc191.str = "/";
key_mc192.str = "`";
key_mc219.str = "[";
key_mc220.str = "\\";
key_mc221.str = "]";
key_mc222.str = "'";
keyArr = [[0, "Move left"], [1, "Move up"], [2, "Move right"], [3, "Move down"], [10, "Secondary weapon"]];
init();
btnDefault.onPress = function ():void{
Global.main.keySetting.setDefault();
init();
};
btnOk.onPress = function ():void{
onConfirm();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
keyArr = null;
currentKey = null;
onConfirm = null;
}
private function setEnabled():void{
var _local1:int;
var _local2:KeyMc;
_local1 = 0;
while (_local1 < 0x0100) {
_local2 = KeyMc(this[("key_mc" + _local1)]);
if (_local2 == null){
} else {
_local2.buttonMode = (_local2.mouseEnabled = _local2.isUsed);
if (!_local2.mouseEnabled){
_local2.color = 1;
};
};
_local1++;
};
currentKey = null;
}
private function setKey(_arg1):void{
_arg1.isUsed = true;
currentKey.isUsed = false;
_arg1.id = currentKey.id;
_arg1.info = currentKey.info;
currentKey.color = 1;
_arg1.color = 2;
popup.show(_arg1, _arg1.info);
Global.main.keySetting.saveCode(_arg1.id, _arg1.code);
setEnabled();
}
private function init():void{
var i:int;
var key_mc:KeyMc;
var id:int;
i = 0;
while (i < 0x0100) {
key_mc = KeyMc(this[("key_mc" + i)]);
if (key_mc == null){
} else {
key_mc.color = 1;
key_mc.code = i;
key_mc.isUsed = false;
key_mc.buttonMode = (key_mc.mouseEnabled = false);
key_mc.onRollOver = function ():void{
if (this.color == 3){
} else {
if (this.isUsed){
popup.show(this, this.info);
} else {
this.color = 2;
};
};
};
key_mc.onRollOut = function ():void{
if (this.color == 3){
} else {
if (this.isUsed){
if (this.color == 2){
popup.hide();
};
} else {
this.color = 1;
};
};
};
key_mc.onPress = function ():void{
if (currentKey == this){
setEnabled();
popup.show(this, this.info);
this.color = 2;
} else {
if (this.isUsed){
currentKey = this;
this.color = 3;
popup.show(this, "Press Any Key To Change");
setUseds();
} else {
setKey(this);
};
};
};
};
i = (i + 1);
};
totalCtrl = keyArr.length;
i = 0;
while (i < totalCtrl) {
id = keyArr[i][0];
key_mc = KeyMc(this[("key_mc" + Global.main.keySetting.getCode(id))]);
key_mc.info = keyArr[i][1];
key_mc.id = id;
key_mc.isUsed = true;
key_mc.buttonMode = (key_mc.mouseEnabled = true);
key_mc.color = 2;
i = (i + 1);
};
}
private function setUseds():void{
var _local1:int;
var _local2:KeyMc;
_local1 = 0;
while (_local1 < 0x0100) {
_local2 = KeyMc(this[("key_mc" + _local1)]);
if (_local2 == null){
} else {
_local2.buttonMode = (_local2.mouseEnabled = !(_local2.isUsed));
};
_local1++;
};
currentKey.buttonMode = (currentKey.mouseEnabled = true);
}
}
}//package key_setting
Section 118
//KeyMc (key_setting.KeyMc)
package key_setting {
import ui.*;
public class KeyMc extends SBtn {
public var isUsed:Boolean;
public var id:int;
public var str:String;
private var __color:int;
public var info:String;
public var code:int;
private static const colorArr:Array = [0xFF00, 0xFFFFFF, 0xFFFF00];
public function get color():int{
return (__color);
}
public function set color(_arg1:int):void{
__color = _arg1;
Common.setRGB(this, colorArr[(__color - 1)]);
}
}
}//package key_setting
Section 119
//PopUp (key_setting.PopUp)
package key_setting {
import flash.display.*;
import flash.text.*;
import ui.*;
public class PopUp extends BasicPopUp {
public var msgTxt:TextField;
override public function show(_arg1, _arg2:String):void{
super.show(_arg1, _arg2);
this.x = (_arg1.x + (_arg1.width / 2));
this.graphics.clear();
this.graphics.lineStyle(1, 0xFFFFFF);
this.graphics.moveTo(0, 0);
this.graphics.lineTo(0, (_arg1.y - this.y));
}
}
}//package key_setting
Section 120
//MovSnd (media.MovSnd)
package media {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import basic.*;
import flash.utils.*;
public class MovSnd extends Obj {
private var obj;
private var sndChannel:SoundChannel;
public static var stageWid:Number;
public static var stageHei:Number;
public static var soundOn:Boolean = true;
public static var stage:Stage;
public function MovSnd(_arg1:String, _arg2:DisplayObject, _arg3:Boolean=false){
obj = _arg2;
sndChannel = playSound(_arg1, _arg2, _arg3);
if (!_arg3){
Global.addEvent(this, sndChannel, Event.SOUND_COMPLETE, clear2);
};
Global.addEvent(this, stage, Event.ENTER_FRAME, mov);
}
private function clear2(_arg1:Event):void{
clear();
}
private function mov(_arg1:Event):void{
if ((((obj == null)) || ((obj.stage == null)))){
Global.removeEvent(stage, Event.ENTER_FRAME, mov);
obj = null;
return;
};
setSoundByObj(sndChannel, obj);
}
override public function clear():void{
if (sndChannel != null){
Global.removeEvent(sndChannel, Event.SOUND_COMPLETE, clear2);
sndChannel.stop();
sndChannel = null;
};
super.clear();
Global.removeEvent(stage, Event.ENTER_FRAME, mov);
obj = null;
}
public static function playSound(_arg1:String, _arg2=null, _arg3:Boolean=false):SoundChannel{
var _local4:SoundChannel;
_local4 = new (getDefinitionByName(_arg1)).play(0, (_arg3) ? 10000 : 1);
if (_local4 != null){
setSoundByObj(_local4, _arg2);
};
return (_local4);
}
public static function setSoundByXy(_arg1:SoundChannel, _arg2:Number, _arg3:Number):void{
var _local4:Point;
var _local5:SoundTransform;
_local4 = new Point((_arg2 - (stageWid / 2)), (_arg3 - (stageHei / 2)));
_local5 = _arg1.soundTransform;
_local5.pan = ((_local4.x / (stageWid / 2)) * 0.8);
_local5.volume = (soundOn) ? Math.pow(2, (-(_local4.length) * 0.002)) : 0;
_arg1.soundTransform = _local5;
}
public static function setSoundByObj(_arg1:SoundChannel, _arg2):void{
var _local3:Point;
if (_arg2 == null){
return;
};
if ((_arg2 is Point)){
setSoundByXy(_arg1, _arg2.x, _arg2.y);
} else {
_local3 = _arg2.localToGlobal(Common.p0);
setSoundByXy(_arg1, _local3.x, _local3.y);
};
}
}
}//package media
Section 121
//SndChainSaw (media.SndChainSaw)
package media {
import flash.media.*;
import flash.utils.*;
public class SndChainSaw extends Sound {
private var intervalId:int;
private var sndChannel:SoundChannel;
private var loopPos0:int;
private var loopPos1:int;
private var obj;
private static const movPos0:int = 4166;
private static const movPos1:int = 4800;
private static const hitPos1:int = 1910;
private static const hitPos0:int = 1900;
public function SndChainSaw(_arg1=null){
obj = _arg1;
loopPos0 = movPos0;
loopPos1 = movPos1;
soundStart();
intervalId = setInterval(run, 30);
}
public function soundStop():void{
sndChannel.stop();
}
private function run():void{
if (sndChannel.position >= loopPos1){
sndChannel.stop();
sndChannel = this.play(loopPos0, 1);
};
if (obj != null){
MovSnd.setSoundByObj(sndChannel, obj);
};
}
public function soundStart():void{
sndChannel = this.play();
}
public function clear():void{
clearInterval(intervalId);
sndChannel.stop();
sndChannel = null;
obj = null;
}
public function gotoHit():void{
loopPos0 = hitPos0;
loopPos1 = hitPos1;
}
public function gotoMov():void{
loopPos0 = movPos0;
loopPos1 = movPos1;
}
}
}//package media
Section 122
//AlphaFade (motion.AlphaFade)
package motion {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import basic.*;
public class AlphaFade extends Obj {
public var onHide:Function;
private var mc;
public var onShow:Function;
public function AlphaFade(_arg1){
var _mc = _arg1;
super();
mc = _mc;
onShow = function ():void{
};
onHide = function ():void{
};
}
public function hide():void{
mc.visible = false;
mc.alpha = 0;
}
override public function clear():void{
Global.removeEvent(mc.stage, Event.ENTER_FRAME, hideRun);
Global.removeEvent(mc.stage, Event.ENTER_FRAME, showRun);
super.clear();
onShow = null;
onHide = null;
mc = null;
}
private function showRun(_arg1:Event):void{
if ((mc.alpha = (mc.alpha + 0.2)) > 0.9){
Global.removeEvent(mc.stage, Event.ENTER_FRAME, showRun);
show();
onShow();
};
}
private function hideRun(_arg1:Event):void{
if (mc.alpha <= 0.1){
mc.alpha = 0;
Global.removeEvent(mc.stage, Event.ENTER_FRAME, hideRun);
hide();
onHide();
return;
};
mc.alpha = (mc.alpha - 0.2);
}
public function fadeShow():void{
mc.visible = true;
Global.removeEvent(mc.stage, Event.ENTER_FRAME, showRun);
Global.addEvent(this, mc.stage, Event.ENTER_FRAME, showRun);
}
public function show():void{
mc.visible = true;
mc.alpha = 1;
}
public function fadeHide():void{
Global.removeEvent(mc.stage, Event.ENTER_FRAME, hideRun);
Global.addEvent(this, mc.stage, Event.ENTER_FRAME, hideRun);
}
}
}//package motion
Section 123
//STween (motion.STween)
package motion {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import basic.*;
public class STween extends Obj {
public var onTween:Function;
private var yt:Number;
private var xt:Number;
private var mc;
public function STween(_arg1, _arg2:Number=NaN, _arg3:Number=NaN){
var _mc = _arg1;
var _xt = _arg2;
var _yt = _arg3;
super();
mc = _mc;
onTween = function ():void{
};
if (((isNaN(_xt)) || (isNaN(_yt)))){
} else {
movTo(_xt, _yt);
};
}
private function run(_arg1:Event):void{
var _local2:Point;
_local2 = new Point((xt - mc.x), (yt - mc.y));
if (_local2.length < 1){
Global.removeEvent(mc.stage, Event.ENTER_FRAME, run);
mc.x = xt;
mc.y = yt;
onTween();
return;
};
mc.x = (mc.x + (_local2.x * 0.5));
mc.y = (mc.y + (_local2.y * 0.5));
}
override public function clear():void{
Global.removeEvent(mc.stage, Event.ENTER_FRAME, run);
super.clear();
onTween = null;
mc = null;
}
public function movTo(_arg1:Number, _arg2:Number):void{
xt = _arg1;
yt = _arg2;
Global.removeEvent(mc.stage, Event.ENTER_FRAME, run);
Global.addEvent(this, mc.stage, Event.ENTER_FRAME, run);
}
}
}//package motion
Section 124
//Base1 (tank2007_2.Base1)
package tank2007_2 {
public class Base1 extends Rock {
public function Base1(){
shapeId = 51;
}
}
}//package tank2007_2
Section 125
//Base2 (tank2007_2.Base2)
package tank2007_2 {
public class Base2 extends House {
public function Base2(){
totalLife = 300;
shapeId = 52;
coinValue = 3;
piecesClass = "Base2Pieces";
}
}
}//package tank2007_2
Section 126
//Base2Pieces (tank2007_2.Base2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Base2Pieces extends MovieClip {
}
}//package tank2007_2
Section 127
//Base3 (tank2007_2.Base3)
package tank2007_2 {
public class Base3 extends Rock {
public function Base3(){
shapeId = 53;
}
}
}//package tank2007_2
Section 128
//Base4 (tank2007_2.Base4)
package tank2007_2 {
public class Base4 extends House {
public function Base4(){
shapeId = 54;
coinValue = 2;
piecesClass = "Base4Pieces";
name0 = "FuelCell";
}
}
}//package tank2007_2
Section 129
//Base4Pieces (tank2007_2.Base4Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Base4Pieces extends MovieClip {
}
}//package tank2007_2
Section 130
//Base5 (tank2007_2.Base5)
package tank2007_2 {
public class Base5 extends House {
public function Base5(){
totalLife = 300;
shapeId = 55;
coinValue = 4;
piecesClass = "Base5Pieces";
name0 = "Component";
}
}
}//package tank2007_2
Section 131
//Base5Pieces (tank2007_2.Base5Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Base5Pieces extends MovieClip {
}
}//package tank2007_2
Section 132
//Base6 (tank2007_2.Base6)
package tank2007_2 {
public class Base6 extends Rock {
public function Base6(){
shapeId = 56;
}
}
}//package tank2007_2
Section 133
//Battery1 (tank2007_2.Battery1)
package tank2007_2 {
import flash.display.*;
public class Battery1 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function Battery1(){
shapeId = 3;
totalLife = 200;
wid2 = (hei2 = 29);
isDouble = true;
delayTime = 0;
coinValue = 7;
sndCannonName = "SndBullet";
piecesClass = "Battery1Pieces";
}
override public function run():void{
if (this.visible){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (delayTime >= 0){
if ((--delayTime % 3) == 0){
fireCannon();
};
} else {
if (Math.random() < 0.01){
delayTime = 20;
};
};
};
}
}
}//package tank2007_2
Section 134
//Battery1Pieces (tank2007_2.Battery1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Battery1Pieces extends MovieClip {
}
}//package tank2007_2
Section 135
//Battery2 (tank2007_2.Battery2)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Battery2 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function Battery2(){
shapeId = 3;
totalLife = 200;
wid2 = 8;
hei2 = 15;
isDouble = true;
delayTime = 0;
coinValue = 7;
piecesClass = "Battery2Pieces";
}
override public function removed(_arg1:Event=null):void{
super.removed();
clearEShock();
}
override public function run():void{
if (this.visible){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
dp = new Point((Global.gameInterface.hero.x - this.x), (Global.gameInterface.hero.y - this.y));
if (dp.length < 150){
fireEShock();
} else {
clearEShock();
};
};
}
}
}//package tank2007_2
Section 136
//Battery2Pieces (tank2007_2.Battery2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Battery2Pieces extends MovieClip {
}
}//package tank2007_2
Section 137
//Battery3 (tank2007_2.Battery3)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class Battery3 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function Battery3(){
shapeId = 3;
totalLife = 200;
wid2 = 8;
hei2 = 15;
isDouble = true;
delayTime = 0;
coinValue = 7;
piecesClass = "Battery3Pieces";
}
override public function run():void{
if (this.visible){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (Math.random() < 0.01){
fireHeatSeeker([0]);
};
};
}
}
}//package tank2007_2
Section 138
//Battery3Pieces (tank2007_2.Battery3Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Battery3Pieces extends MovieClip {
}
}//package tank2007_2
Section 139
//Bg (tank2007_2.Bg)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import basic.*;
import flash.filters.*;
public class Bg extends Sp {
private var bmd:TestBmd;
public function Bg(){
bmd = new TestBmd(1600, 1600, false);
bmd.draw(this);
Common.deepRemove(this);
this.addChild(new Bitmap(bmd, PixelSnapping.NEVER));
}
override public function removed(_arg1:Event=null):void{
super.removed();
bmd = null;
}
public function pasteMc(_arg1):void{
var _local2:Point;
_local2 = _arg1.localToGlobal(Common.p0);
if (Global.game.shapeArea.waterShape.hitTestPoint(_local2.x, _local2.y, true)){
return;
};
bmd.draw(_arg1, _arg1.transform.matrix);
}
public function makeHole(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:String="hole"):void{
var _local5:Point;
var _local6:Array;
var _local7:TestBmd;
_local5 = this.localToGlobal(new Point(_arg1, _arg2));
if (Global.game.shapeArea.waterShape.hitTestPoint(_local5.x, _local5.y, true)){
return;
};
switch (_arg4){
case "blood":
if (_arg3 < 25){
_arg3 = (_arg3 * 2);
};
_local6 = BmdList.bloodBmdArr;
break;
case "hole":
_local6 = BmdList.holeBmdArr;
break;
default:
return;
};
_arg3 = Math.round(_arg3);
if (_arg3 >= 60){
_arg3 = 59;
};
_local7 = _local6[_arg3];
bmd.copyPixels(_local7, _local7.rect, new Point((_arg1 - (_local7.rect.width / 2)), (_arg2 - (_local7.rect.height / 2))));
}
}
}//package tank2007_2
Section 140
//Bg1 (tank2007_2.Bg1)
package tank2007_2 {
public dynamic class Bg1 extends Bg {
}
}//package tank2007_2
Section 141
//Bg10 (tank2007_2.Bg10)
package tank2007_2 {
public dynamic class Bg10 extends Bg {
}
}//package tank2007_2
Section 142
//Bg11 (tank2007_2.Bg11)
package tank2007_2 {
public dynamic class Bg11 extends Bg {
}
}//package tank2007_2
Section 143
//Bg12 (tank2007_2.Bg12)
package tank2007_2 {
public dynamic class Bg12 extends Bg {
}
}//package tank2007_2
Section 144
//Bg13 (tank2007_2.Bg13)
package tank2007_2 {
public dynamic class Bg13 extends Bg {
}
}//package tank2007_2
Section 145
//Bg14 (tank2007_2.Bg14)
package tank2007_2 {
public dynamic class Bg14 extends Bg {
}
}//package tank2007_2
Section 146
//Bg15 (tank2007_2.Bg15)
package tank2007_2 {
public dynamic class Bg15 extends Bg {
}
}//package tank2007_2
Section 147
//Bg2 (tank2007_2.Bg2)
package tank2007_2 {
public dynamic class Bg2 extends Bg {
}
}//package tank2007_2
Section 148
//Bg3 (tank2007_2.Bg3)
package tank2007_2 {
public dynamic class Bg3 extends Bg {
}
}//package tank2007_2
Section 149
//Bg4 (tank2007_2.Bg4)
package tank2007_2 {
public dynamic class Bg4 extends Bg {
}
}//package tank2007_2
Section 150
//Bg5 (tank2007_2.Bg5)
package tank2007_2 {
public dynamic class Bg5 extends Bg {
}
}//package tank2007_2
Section 151
//Bg6 (tank2007_2.Bg6)
package tank2007_2 {
public dynamic class Bg6 extends Bg {
}
}//package tank2007_2
Section 152
//Bg7 (tank2007_2.Bg7)
package tank2007_2 {
public dynamic class Bg7 extends Bg {
}
}//package tank2007_2
Section 153
//Bg8 (tank2007_2.Bg8)
package tank2007_2 {
public dynamic class Bg8 extends Bg {
}
}//package tank2007_2
Section 154
//Bg9 (tank2007_2.Bg9)
package tank2007_2 {
public dynamic class Bg9 extends Bg {
}
}//package tank2007_2
Section 155
//BmdList (tank2007_2.BmdList)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import basic.*;
import flash.utils.*;
public class BmdList extends Obj {
private static const piecesClassList:Array = ["Boss1Pieces", "Boss2Pieces", "Boss3Pieces", "Base2Pieces", "Base4Pieces", "Base5Pieces", "Battery1Pieces", "Battery2Pieces", "Battery3Pieces", "LightPieces", "CactusPieces", "Car1Pieces", "Car2Pieces", "Car3Pieces", "Car4Pieces", "CarriagePieces", "TankPieces", "GroundPlanePieces", "TankPieces", "House1Pieces", "House2Pieces", "JeepPieces", "LocomotivePieces", "LightPieces", "MineCarPieces", "LightPieces", "Plane1Pieces", "Plane2Pieces", "LightPieces", "LightPieces", "Tree1Pieces", "Tree2Pieces", "Tree3Pieces", "Tree4Pieces", "Tree5Pieces", "Tree6Pieces"];
public static var stepF:Function = getPiecesBmds;
public static var piecesList:Object = new Object();
public static var holeBmdArr:Array = getBmds(0);
public static var bloodBmdArr:Array = getBmds(0x660000);
private static var id:int = 0;
public static function getPiecesBmds():Boolean{
var _local1:String;
_local1 = piecesClassList[id];
piecesList[_local1] = new PiecesBmds(new (getDefinitionByName(("tank2007_2." + _local1))));
if (++id >= piecesClassList.length){
return (true);
};
return (false);
}
public static function getBmds(_arg1:int):Array{
var _local2:Sprite;
var _local3:Matrix;
var _local4:Sprite;
var _local5:Number;
var _local6:Number;
var _local7:int;
var _local8:*;
var _local9:Array;
var _local10:TestBmd;
_local2 = new Sprite();
_local3 = new Matrix();
_local3.createGradientBox(50, 50, 0, 0, 0);
_local2.graphics.beginGradientFill("radial", [_arg1, _arg1], [0.5, 0], [0, 0xFF], _local3);
_local2.graphics.moveTo(0, 0);
_local2.graphics.lineTo(0, 50);
_local2.graphics.lineTo(50, 50);
_local2.graphics.lineTo(50, 0);
_local2.graphics.lineTo(0, 0);
_local2.graphics.endFill();
_local4 = new Sprite();
_local4.graphics.clear();
_local4.graphics.lineStyle(2, _arg1, 40);
_local7 = 0;
while (_local7 < 40) {
_local5 = ((10 * Math.random()) + 10);
_local6 = ((Math.random() * Math.PI) * 2);
_local4.graphics.moveTo(0, 0);
_local4.graphics.lineTo((_local5 * Math.cos(_local6)), (_local5 * Math.sin(_local6)));
_local7++;
};
_local4.filters = [Common.bf, Common.bf, Common.bf];
_local9 = new Array();
_local7 = 0;
while (_local7 < 60) {
if (_local7 <= 15){
_local8 = _local2;
_local2.width = (_local8.height = ((_local7 < 3)) ? 3 : _local7);
_local3 = new Matrix();
_local3.scale((_local8.width / 50), (_local8.height / 50));
} else {
_local8 = _local4;
_local4.width = (_local8.height = _local7);
_local3 = new Matrix();
_local3.scale((_local8.width / 50), (_local8.height / 50));
_local3.translate((_local8.width / 2), (_local8.height / 2));
};
_local10 = new TestBmd(_local8.width, _local8.height, true, 0);
_local10.draw(_local8, _local3);
_local9.push(_local10);
_local7++;
};
return (_local9);
}
public static function stepInit():Boolean{
return (stepF());
}
}
}//package tank2007_2
Section 156
//Bomb (tank2007_2.Bomb)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Bomb extends Char {
private var obj3d:Obj3d;
public function Bomb(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
runAble = true;
holeClass = Hole;
lightClass = LightFlash;
piecesClass = "LightPieces";
}
override public function added(_arg1:Event=null):void{
var event = _arg1;
super.added();
obj3d = new Obj3d(this);
obj3d.shootPoint(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
obj3d.onHitGround = function (_arg1:Number, _arg2:Number, _arg3:Number):void{
Global.game.bg.makeHole((_arg1 - Global.game.x), (_arg2 - Global.game.y), _arg3);
exp();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
obj3d.clear();
obj3d = null;
}
override public function run():void{
obj3d.mov();
this.x = obj3d._x;
this.y = obj3d._y;
}
}
}//package tank2007_2
Section 157
//Boss (tank2007_2.Boss)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Boss extends MachineChar {
public var action:String;
public function Boss(){
Global.game.boss = this;
runAble = false;
totalLife = 20000;
coinValue = 300;
lightClass = LightFlash;
lightScale = 2;
}
public function come():void{
Global.gameInterface.bossLifeBar.visible = true;
Global.gameInterface.bossLifeBar.value = 1;
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
super.hurt(_arg1, _arg2, _arg3);
Global.gameInterface.bossLifeBar.value = (life / totalLife);
}
public function startRun():void{
runAble = true;
addRun();
}
}
}//package tank2007_2
Section 158
//Boss1 (tank2007_2.Boss1)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Boss1 extends Boss {
private var rotaA:Number;
public var gun2_0:MovieClip;
public var gun2_1:MovieClip;
private var rotaR:Number;
public var gun1_0:MovieClip;
public var gun1_1:MovieClip;
public var gun1_3:MovieClip;
public var gun1_2:MovieClip;
public var gun1_4:MovieClip;
public var gun1_5:MovieClip;
private var v:Point;
private var p6Arr:Array;
private var attackRun:Function;
private var p2Arr:Array;
private var op:Point;
public function Boss1(){
var _local1:int;
var _local2:MovieClip;
super();
p2Arr = new Array();
_local1 = 0;
while (_local1 < 2) {
_local2 = this[("gun2_" + _local1)];
p2Arr.push([new Point(_local2.x, _local2.y), this.globalToLocal(_local2.localToGlobal(new Point(200, 0)))]);
_local1++;
};
p6Arr = new Array();
_local1 = 0;
while (_local1 < 6) {
_local2 = this[("gun1_" + _local1)];
p6Arr.push([new Point(_local2.x, _local2.y), this.globalToLocal(_local2.localToGlobal(new Point(200, 0)))]);
_local1++;
};
runAble = false;
v = new Point();
dp = new Point();
delayTime = 0;
piecesClass = "Boss1Pieces";
}
public function closeToHeroRun():void{
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (dp.length > 100){
dp.normalize((dp.length - 100));
};
this.rotation = (this.rotation + (((Math.atan2(dp.y, dp.x) * Common.a2r) - this.rotation) * 0.2));
this.x = (this.x + (dp.x * 0.2));
this.y = (this.y + (dp.y * 0.2));
if (dp.length < 5){
action = "";
rotaAttack();
};
}
private function rotaAttack():void{
action = "attacking";
attackRun = rotaAttackRun;
delayTime = 180;
op = new Point(this.x, this.y);
rotaA = 0;
rotaR = 0;
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, bossComming);
super.removed();
p2Arr = null;
p6Arr = null;
v = null;
op = null;
attackRun = null;
}
override public function run():void{
switch (action){
case "attacking":
attackRun();
break;
};
}
private function fire2():void{
var _local1:Array;
Global.main.playSound("SndBullet", this);
for each (_local1 in p2Arr) {
shootBullet(_local1[0], _local1[1], 5, 40, 0xFF);
};
}
private function rotaAttackRun():void{
var _local1:Point;
delayTime--;
if (((((delayTime % 10) < 6)) && (((delayTime % 2) == 0)))){
if (((((delayTime % 40) < 15)) && (((delayTime % 3) == 0)))){
fire6();
} else {
if ((delayTime % 2) == 0){
fire2();
};
};
};
rotaA = (rotaA + 0.1);
if (delayTime > 90){
rotaR++;
} else {
rotaR--;
};
_local1 = Point.polar(rotaR, rotaA).add(op);
this.x = _local1.x;
this.y = _local1.y;
if (delayTime <= 0){
action = "";
closeToHero();
};
}
private function fire6():void{
var _local1:Array;
Global.main.playSound("SndCanister", this);
for each (_local1 in p6Arr) {
shootBullet(_local1[0], _local1[1], 0, 20, 0xFF0000);
};
}
override public function come():void{
super.come();
this.visible = true;
this.rotation = -90;
this.x = Global.gameInterface.hero.x;
this.y = (Global.gameInterface.hero.y + 400);
Global.addEvent(this, stage, Event.ENTER_FRAME, bossComming);
}
private function bossComming(_arg1:Event):void{
this.y = (this.y - 20);
if (this.y < (Global.gameInterface.hero.y - 400)){
this.rotation = (Math.atan2((Global.gameInterface.hero.y - this.y), (Global.gameInterface.hero.x - this.x)) * Common.a2r);
Global.removeEvent(stage, Event.ENTER_FRAME, bossComming);
startRun();
closeToHero();
};
}
public function closeToHero():void{
action = "attacking";
attackRun = closeToHeroRun;
}
}
}//package tank2007_2
Section 159
//Boss1Pieces (tank2007_2.Boss1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Boss1Pieces extends MovieClip {
public var gun2_0:MovieClip;
public var gun2_1:MovieClip;
public var gun1_1:MovieClip;
public var gun1_4:MovieClip;
public var gun1_0:MovieClip;
public var gun1_2:MovieClip;
public var gun1_5:MovieClip;
public var gun1_3:MovieClip;
}
}//package tank2007_2
Section 160
//Boss2 (tank2007_2.Boss2)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Boss2 extends Boss {
public var maskShape:Boss2MaskShape;
private var v:Point;
public var hitDots:MovieClip;
public var body:MovieClip;
public var head:BossBigBattery1;
public function Boss2(){
piecesClass = "Boss2Pieces";
}
override public function come():void{
super.come();
show();
startRun();
}
private function hide():void{
action = "hide";
maskShape.hide(Global.game.bg);
maskShape.onHide = function ():void{
onHide();
};
}
private function onShow():void{
action = "attacking";
delayTime = 60;
}
override public function run():void{
var _local1:int;
switch (action){
case "show":
break;
case "hide":
break;
case "hiding":
if (--delayTime <= 0){
show();
};
break;
case "attacking":
if (Common.hitDotsHit(hitDots, Global.gameInterface.hero.hitShape)){
Global.gameInterface.hero.hitHurt(new Point((Global.gameInterface.hero.x - this.x), (Global.gameInterface.hero.y - this.y)));
};
this.x = (this.x + v.x);
this.y = (this.y + v.y);
_local1 = hitDots.numChildren;
if (Common.hitDotsHit(hitDots, Global.game.fixHitShape)){
v.x = (v.x * -1);
v.y = (v.y * -1);
};
if (--delayTime <= 0){
hide();
};
break;
};
}
private function onHide():void{
head.rotation = 0;
this.visible = false;
action = "hiding";
delayTime = 60;
}
private function show():void{
var r:Number;
var total:int;
var ran:int;
var j:int;
var house:*;
var i:int;
var dp:Point;
this.visible = true;
action = "show";
this.rotation = (Common.random(4) * 90);
v = Point.polar(2, (this.rotation / Common.a2r));
r = 120;
total = 36;
ran = Common.random(total);
j = 0;
while (j < total) {
i = ((j + ran) % total);
dp = Point.polar(r, (((i / total) * Math.PI) * 2));
this.x = (Global.gameInterface.hero.x + dp.x);
this.y = (Global.gameInterface.hero.y + dp.y);
if (!Common.hitDotsHit(hitDots, Global.game.fixHitShape)){
break;
};
j = (j + 1);
};
for each (house in Common.getAllChildren(Global.game.houseArea)) {
if (((house.visible) && (Common.hitDotsHit(hitDots, house)))){
house.hurt(1000);
};
};
maskShape.show(Global.game.bg);
maskShape.onShow = function ():void{
onShow();
};
}
}
}//package tank2007_2
Section 161
//Boss2MaskShape (tank2007_2.Boss2MaskShape)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import basic.*;
public class Boss2MaskShape extends Sp {
public var maskRec:MovieClip;
public var blurMaskShape:MovieClip;
public var onShow:Function;
private var bmd:TestBmd;
public var onHide:Function;
public function Boss2MaskShape(){
maskRec.bmp = new Bitmap();
maskRec.addChild(maskRec.bmp);
maskRec.mask = blurMaskShape;
}
public function hide(_arg1):void{
maskRec.bmp.bitmapData = (bmd = Common.getContainBmd(_arg1, maskRec));
blurMaskShape.gotoAndPlay("hide");
}
override public function removed(_arg1:Event=null):void{
super.removed();
if (bmd != null){
bmd.dispose();
bmd = null;
};
onShow = null;
onHide = null;
}
public function hideFinish():void{
bmd.dispose();
bmd = null;
maskRec.bmp.bitmapData = null;
onHide();
}
public function showFinish():void{
bmd.dispose();
bmd = null;
maskRec.bmp.bitmapData = null;
onShow();
}
public function show(_arg1):void{
maskRec.bmp.bitmapData = (bmd = Common.getContainBmd(_arg1, maskRec));
blurMaskShape.gotoAndPlay("show");
}
}
}//package tank2007_2
Section 162
//Boss2Pieces (tank2007_2.Boss2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Boss2Pieces extends MovieClip {
}
}//package tank2007_2
Section 163
//Boss3 (tank2007_2.Boss3)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Boss3 extends Boss {
private var rotaA:Number;
private var rotaR:Number;
public var gun1_0:MovieClip;
public var gun1_1:MovieClip;
public var gun1_3:MovieClip;
public var gun1_2:MovieClip;
public var gun1_4:MovieClip;
public var gun1_5:MovieClip;
private var v:Point;
private var p6Arr:Array;
private var attackRun:Function;
private var op:Point;
public function Boss3(){
var _local1:int;
var _local2:MovieClip;
super();
p6Arr = new Array();
_local1 = 0;
while (_local1 < 6) {
_local2 = this[("gun1_" + _local1)];
p6Arr.push([new Point(_local2.x, _local2.y), this.globalToLocal(_local2.localToGlobal(new Point(200, 0)))]);
_local1++;
};
runAble = false;
v = new Point();
dp = new Point();
delayTime = 0;
piecesClass = "Boss3Pieces";
}
public function closeToHeroRun():void{
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (dp.length > 100){
dp.normalize((dp.length - 100));
};
this.rotation = (this.rotation + (((Math.atan2(dp.y, dp.x) * Common.a2r) - this.rotation) * 0.2));
this.x = (this.x + (dp.x * 0.2));
this.y = (this.y + (dp.y * 0.2));
if (dp.length < 5){
action = "";
rotaAttack();
};
}
private function rotaAttack():void{
action = "attacking";
attackRun = rotaAttackRun;
delayTime = 180;
op = new Point(this.x, this.y);
rotaA = 0;
rotaR = 0;
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, bossComming);
super.removed();
p6Arr = null;
v = null;
op = null;
attackRun = null;
}
override public function run():void{
switch (action){
case "attacking":
attackRun();
break;
};
}
private function rotaAttackRun():void{
var _local1:Point;
delayTime--;
if (((((delayTime % 40) < 15)) && (((delayTime % 3) == 0)))){
fire6();
};
rotaA = (rotaA + 0.1);
if (delayTime > 90){
rotaR++;
} else {
rotaR--;
};
_local1 = Point.polar(rotaR, rotaA).add(op);
this.x = _local1.x;
this.y = _local1.y;
if (delayTime <= 0){
action = "";
closeToHero();
};
}
private function fire6():void{
var _local1:Array;
Global.main.playSound("SndCanister", this);
for each (_local1 in p6Arr) {
shootBullet(_local1[0], _local1[1], 0, 20, 0xFF0000);
};
}
override public function come():void{
super.come();
this.visible = true;
this.rotation = -90;
this.x = Global.gameInterface.hero.x;
this.y = (Global.gameInterface.hero.y + 400);
Global.addEvent(this, stage, Event.ENTER_FRAME, bossComming);
}
private function bossComming(_arg1:Event):void{
this.y = (this.y - 20);
if (this.y < (Global.gameInterface.hero.y - 400)){
this.rotation = (Math.atan2((Global.gameInterface.hero.y - this.y), (Global.gameInterface.hero.x - this.x)) * Common.a2r);
Global.removeEvent(stage, Event.ENTER_FRAME, bossComming);
startRun();
closeToHero();
};
}
public function closeToHero():void{
action = "attacking";
attackRun = closeToHeroRun;
}
}
}//package tank2007_2
Section 164
//Boss3Pieces (tank2007_2.Boss3Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Boss3Pieces extends MovieClip {
public var gun1_1:MovieClip;
public var gun1_4:MovieClip;
public var gun1_0:MovieClip;
public var gun1_2:MovieClip;
public var gun1_5:MovieClip;
public var gun1_3:MovieClip;
}
}//package tank2007_2
Section 165
//BossBattery1 (tank2007_2.BossBattery1)
package tank2007_2 {
import flash.display.*;
public class BossBattery1 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function BossBattery1(){
shapeId = 0;
piecesClass = null;
wid2 = (hei2 = 29);
isDouble = true;
delayTime = 0;
sndCannonName = "SndBullet";
}
override public function run():void{
if (Global.game.boss.action == "attacking"){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (delayTime >= 0){
if ((--delayTime % 3) == 0){
fireCannon();
};
} else {
if (Math.random() < 0.01){
delayTime = 20;
};
};
};
}
}
}//package tank2007_2
Section 166
//BossBattery2 (tank2007_2.BossBattery2)
package tank2007_2 {
import flash.display.*;
public class BossBattery2 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function BossBattery2(){
shapeId = 0;
piecesClass = null;
wid2 = (hei2 = 29);
isDouble = true;
delayTime = 0;
sndCannonName = "SndBullet";
}
override public function run():void{
if (Global.game.boss.action == "attacking"){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (delayTime >= 0){
if ((--delayTime % 3) == 0){
fireCannon();
};
} else {
if (Math.random() < 0.01){
delayTime = 20;
};
};
};
}
}
}//package tank2007_2
Section 167
//BossBattery3 (tank2007_2.BossBattery3)
package tank2007_2 {
import flash.display.*;
public class BossBattery3 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function BossBattery3(){
rangeId = 5;
shapeId = 0;
piecesClass = null;
wid2 = (hei2 = 29);
isDouble = true;
delayTime = 0;
sndCannonName = "SndBullet";
}
override public function run():void{
if (Global.game.boss.action == "attacking"){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (delayTime >= 0){
if ((--delayTime % 3) == 0){
fireCannon();
};
} else {
if (Math.random() < 0.01){
delayTime = 20;
};
};
};
}
}
}//package tank2007_2
Section 168
//BossBigBattery1 (tank2007_2.BossBigBattery1)
package tank2007_2 {
import flash.display.*;
public class BossBigBattery1 extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
public function BossBigBattery1(){
rangeId = 5;
wid2 = (hei2 = 80);
isDouble = false;
delayTime = 0;
sndCannonName = "SndBullet";
}
override public function run():void{
if (Global.game.boss.action == "attacking"){
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (delayTime >= 0){
if ((--delayTime % 5) == 0){
fireCannon();
};
} else {
if (Math.random() < 0.01){
delayTime = 20;
};
};
};
}
}
}//package tank2007_2
Section 169
//Bullet (tank2007_2.Bullet)
package tank2007_2 {
import flash.geom.*;
import flash.events.*;
public class Bullet extends Char {
public var firePower:int;
public var v:Number;
public var vp:Point;
public var onHitShape:Function;
private static const firePowerArr:Array = [30, 40, 50, 60, 70, 100];
public function Bullet(_arg1:Point, _arg2:Point, _arg3:int=0, _arg4:Number=40, _arg5:int=0xFF0000, _arg6:Number=1){
v = _arg4;
firePower = (firePowerArr[_arg3] * _arg6);
vp = _arg2.subtract(_arg1);
vp.normalize(1);
this.x = _arg1.x;
this.y = _arg1.y;
this.rotation = (Math.atan2(vp.y, vp.x) * Common.a2r);
vp.normalize(v);
runAble = true;
sndExpName = null;
}
override public function removed(_arg1:Event=null):void{
super.removed();
vp = null;
onHitShape = null;
}
override public function run():void{
var _local1:Number;
if (!this.visible){
this.parent.removeChild(this);
return;
};
_local1 = 0;
while (_local1 <= v) {
if (onHitShape(this.localToGlobal(new Point(_local1, 0)), firePower)){
vp.normalize(_local1);
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
exp();
return;
};
_local1 = (_local1 + 8);
};
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
}
}
}//package tank2007_2
Section 170
//Cactus (tank2007_2.Cactus)
package tank2007_2 {
public class Cactus extends Tree {
public function Cactus(){
shapeId = 9;
piecesClass = "CactusPieces";
}
}
}//package tank2007_2
Section 171
//CactusPieces (tank2007_2.CactusPieces)
package tank2007_2 {
import flash.display.*;
public dynamic class CactusPieces extends MovieClip {
}
}//package tank2007_2
Section 172
//Cannon (tank2007_2.Cannon)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class Cannon extends Bullet {
public var body:MovieClip;
public function Cannon(_arg1:Point, _arg2:Point, _arg3:int=0, _arg4:Number=20, _arg5:int=0xFF0000, _arg6:Number=1){
super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6);
Common.setRGBOffset(body, _arg5, 0);
body.scaleX = (body.scaleY = (((((_arg3 + 1) / 5) * 0.7) + 0.3) * _arg6));
lightClass = LightFlash;
lightScale = 0.5;
}
}
}//package tank2007_2
Section 173
//Car (tank2007_2.Car)
package tank2007_2 {
public class Car extends House {
public function Car(){
shapeId = 11;
coinValue = 3;
}
}
}//package tank2007_2
Section 174
//Car1 (tank2007_2.Car1)
package tank2007_2 {
public class Car1 extends Car {
public function Car1(){
piecesClass = "Car1Pieces";
}
}
}//package tank2007_2
Section 175
//Car1Pieces (tank2007_2.Car1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Car1Pieces extends MovieClip {
}
}//package tank2007_2
Section 176
//Car2 (tank2007_2.Car2)
package tank2007_2 {
public class Car2 extends Car {
public function Car2(){
shapeId = 12;
piecesClass = "Car2Pieces";
}
}
}//package tank2007_2
Section 177
//Car2Pieces (tank2007_2.Car2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Car2Pieces extends MovieClip {
}
}//package tank2007_2
Section 178
//Car3 (tank2007_2.Car3)
package tank2007_2 {
public class Car3 extends Car {
public function Car3(){
piecesClass = "Car3Pieces";
}
}
}//package tank2007_2
Section 179
//Car3Pieces (tank2007_2.Car3Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Car3Pieces extends MovieClip {
}
}//package tank2007_2
Section 180
//Car4 (tank2007_2.Car4)
package tank2007_2 {
public class Car4 extends Car {
public function Car4(){
piecesClass = "Car4Pieces";
}
}
}//package tank2007_2
Section 181
//Car4Pieces (tank2007_2.Car4Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Car4Pieces extends MovieClip {
}
}//package tank2007_2
Section 182
//Carriage (tank2007_2.Carriage)
package tank2007_2 {
public class Carriage extends House {
public function Carriage(){
shapeId = 16;
coinValue = 2;
piecesClass = "CarriagePieces";
}
}
}//package tank2007_2
Section 183
//CarriagePieces (tank2007_2.CarriagePieces)
package tank2007_2 {
import flash.display.*;
public dynamic class CarriagePieces extends MovieClip {
}
}//package tank2007_2
Section 184
//ChainSaw (tank2007_2.ChainSaw)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import FWG.*;
public class ChainSaw extends RunSp {
public var isHit:Boolean;
public var firePower:int;// = 100
private var brother:ChainSaw;
private var pArr:Array;
public function ChainSaw(){
var _local1:int;
var _local2:int;
var _local3:Number;
var _local4:*;
firePower = 100;
super();
_local2 = 10;
_local3 = (this.width / 2);
pArr = new Array(_local2);
_local1 = 0;
while (_local1 < _local2) {
pArr[_local1] = Point.polar(_local3, (((_local1 / _local2) * Math.PI) * 2));
_local1++;
};
_local2 = parent.numChildren;
_local1 = 0;
while (_local1 < _local2) {
_local4 = parent.getChildAt(_local1);
if ((_local4 is ChainSaw)){
if (_local4 == this){
} else {
brother = _local4;
break;
};
};
_local1++;
};
}
override public function added(_arg1:Event=null):void{
super.added();
if ((parent.parent is Hero)){
rangeId = Hero(parent.parent).rangeId;
runAble = true;
addRun();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
pArr = null;
brother = null;
}
public function set rangeId(_arg1:int):void{
this.scaleX = (this.scaleY = (0.9 + (_arg1 * 0.1)));
}
override public function run():void{
var _local1:Point;
var _local2:Point;
var _local3:Point;
this.rotation = (this.rotation + 7);
_local1 = this.localToGlobal(Common.p0);
if (brother != null){
if (brother.isHit){
return;
};
};
isHit = false;
for each (_local2 in pArr) {
_local2 = this.localToGlobal(_local2);
if (Global.gameInterface.hero.onHitShape(_local2, firePower)){
_local3 = _local2.subtract(_local1);
_local2 = Global.game.globalToLocal(_local2);
Global.game.effectArea.addChild(new HitFlame(_local2.x, _local2.y, ((Math.atan2(_local3.y, _local3.x) * Common.a2r) + 90)));
isHit = true;
};
};
Global.gameInterface.hero.isChainSawHit = isHit;
}
}
}//package tank2007_2
Section 185
//Char (tank2007_2.Char)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import FWG.*;
import flash.utils.*;
public class Char extends RunSp {
public var expShakeAble:Boolean;
public var lightClass:Class;
public var life:Number;
public var holeType:String;
public var hitP:Point;
public var name0:String;
public var piecesClass:String;
public var lastHitter;
public var coinValue:int;
private var __color:int;
private var __totalLife:Number;
public var sndExpName:String;
public var dp:Point;
public var hei2:Number;
public var wid2:Number;
public var holeClass:Class;
public var bounds:Rectangle;
public var onExp:Function;
public var shapeId:int;
public var hitShape:HitShape;
public var lightScale:Number;
public var delayTime:int;
private var holeWid:Number;
public function Char(){
super();
delayTime = 0;
holeType = "hole";
name0 = "";
expShakeAble = false;
coinValue = 0;
sndExpName = "SndExp";
lightScale = 1;
onExp = function (){
};
}
override public function added(_arg1:Event=null):void{
super.added();
if (Global.game != null){
hitShape = Global.game.addHitShape(this);
};
}
public function isHit(_arg1:Number, _arg2:Number, _arg3:MovieClip):Boolean{
hitP = this.localToGlobal(new Point(_arg1, _arg2));
return (_arg3.hitTestPoint(hitP.x, hitP.y, true));
}
public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
lastHitter = _arg3;
if ((life = (life - _arg1)) <= 0){
life = 0;
if ((((coinValue > 0)) && ((lastHitter == Global.gameInterface.hero)))){
Global.game.addScore(this, coinValue);
};
exp();
};
}
public function exp(_arg1=null):void{
var expEffect:ExpEffect;
var i:int;
var hole:*;
var expObj:Exp;
var light:*;
var effectArea = _arg1;
if (sndExpName != null){
Global.main.playSound(sndExpName, this);
};
if ((this is Hero)){
} else {
delRun();
if (hitShape != null){
bounds = hitShape.getBounds(Global.game);
hitShape.parent.removeChild(hitShape);
holeWid = ((bounds.width + bounds.height) / 4);
if (holeWid < 5){
holeWid = 5;
};
i = 0;
while (i < 4) {
Global.game.bg.makeHole((bounds.x + (Math.random() * bounds.width)), (bounds.y + (Math.random() * bounds.height)), holeWid, holeType);
i = (i + 1);
};
};
onExp();
};
expEffect = new ExpEffect(this.x, this.y);
if (effectArea == null){
Global.game.effectArea.addChild(expEffect);
} else {
effectArea.addChild(expEffect);
};
if (holeClass != null){
hole = new holeClass();
hole.x = this.x;
hole.y = this.y;
Global.game.bg.pasteMc(hole);
};
if (piecesClass != null){
expObj = new Exp(piecesClass, this.x, this.y, function (_arg1:Number, _arg2:Number, _arg3:Number){
Global.game.bg.makeHole((_arg1 - Global.game.x), (_arg2 - Global.game.y), _arg3, holeType);
});
expEffect.addChild(expObj);
if (expShakeAble){
Global.game.shake();
};
};
if (lightClass != null){
light = new lightClass();
expEffect.addChild(light);
light.scaleX = (light.scaleY = lightScale);
};
if ((this is Hero)){
} else {
this.parent.removeChild(this);
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
hitShape = null;
bounds = null;
lastHitter = null;
onExp = null;
dp = null;
hitP = null;
holeClass = null;
piecesClass = null;
lightClass = null;
}
public function get color():int{
return (__color);
}
public function get totalLife():Number{
return (__totalLife);
}
public function setSkinColor(_arg1):void{
var _local2:int;
var _local3:int;
var _local4:*;
if ((_arg1 is DisplayObjectContainer)){
_local2 = _arg1.numChildren;
_local3 = 0;
while (_local3 < _local2) {
_local4 = _arg1.getChildAt(_local3);
if (getQualifiedClassName(_local4).indexOf("CharSkin") >= 0){
Common.setRGBOffset(_local4, __color);
} else {
setSkinColor(_local4);
};
_local3++;
};
};
}
public function set totalLife(_arg1:Number):void{
life = (__totalLife = _arg1);
}
public function set color(_arg1:int):void{
__color = _arg1;
setSkinColor(this);
}
}
}//package tank2007_2
Section 186
//Chars1 (tank2007_2.Chars1)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars1 extends MovieClip {
}
}//package tank2007_2
Section 187
//Chars10 (tank2007_2.Chars10)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars10 extends MovieClip {
}
}//package tank2007_2
Section 188
//Chars11 (tank2007_2.Chars11)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars11 extends MovieClip {
}
}//package tank2007_2
Section 189
//Chars12 (tank2007_2.Chars12)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars12 extends MovieClip {
}
}//package tank2007_2
Section 190
//Chars13 (tank2007_2.Chars13)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars13 extends MovieClip {
}
}//package tank2007_2
Section 191
//Chars14 (tank2007_2.Chars14)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars14 extends MovieClip {
}
}//package tank2007_2
Section 192
//Chars15 (tank2007_2.Chars15)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars15 extends MovieClip {
}
}//package tank2007_2
Section 193
//Chars2 (tank2007_2.Chars2)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars2 extends MovieClip {
}
}//package tank2007_2
Section 194
//Chars3 (tank2007_2.Chars3)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars3 extends MovieClip {
}
}//package tank2007_2
Section 195
//Chars4 (tank2007_2.Chars4)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars4 extends MovieClip {
}
}//package tank2007_2
Section 196
//Chars5 (tank2007_2.Chars5)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars5 extends MovieClip {
}
}//package tank2007_2
Section 197
//Chars6 (tank2007_2.Chars6)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars6 extends MovieClip {
}
}//package tank2007_2
Section 198
//Chars7 (tank2007_2.Chars7)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars7 extends MovieClip {
}
}//package tank2007_2
Section 199
//Chars8 (tank2007_2.Chars8)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars8 extends MovieClip {
}
}//package tank2007_2
Section 200
//Chars9 (tank2007_2.Chars9)
package tank2007_2 {
import flash.display.*;
public dynamic class Chars9 extends MovieClip {
}
}//package tank2007_2
Section 201
//CharSkinHeroBody1 (tank2007_2.CharSkinHeroBody1)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroBody1 extends MovieClip {
}
}//package tank2007_2
Section 202
//CharSkinHeroBody2 (tank2007_2.CharSkinHeroBody2)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroBody2 extends MovieClip {
}
}//package tank2007_2
Section 203
//CharSkinHeroBody3 (tank2007_2.CharSkinHeroBody3)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroBody3 extends MovieClip {
}
}//package tank2007_2
Section 204
//CharSkinHeroHead1 (tank2007_2.CharSkinHeroHead1)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroHead1 extends MovieClip {
}
}//package tank2007_2
Section 205
//CharSkinHeroHead3 (tank2007_2.CharSkinHeroHead3)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroHead3 extends MovieClip {
}
}//package tank2007_2
Section 206
//CharSkinHeroHead4 (tank2007_2.CharSkinHeroHead4)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroHead4 extends MovieClip {
}
}//package tank2007_2
Section 207
//CharSkinHeroHead5 (tank2007_2.CharSkinHeroHead5)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinHeroHead5 extends MovieClip {
}
}//package tank2007_2
Section 208
//CharSkinTankBody1 (tank2007_2.CharSkinTankBody1)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinTankBody1 extends MovieClip {
}
}//package tank2007_2
Section 209
//CharSkinTankBody2 (tank2007_2.CharSkinTankBody2)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinTankBody2 extends MovieClip {
}
}//package tank2007_2
Section 210
//CharSkinTankHead1 (tank2007_2.CharSkinTankHead1)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinTankHead1 extends MovieClip {
}
}//package tank2007_2
Section 211
//CharSkinTankHead2 (tank2007_2.CharSkinTankHead2)
package tank2007_2 {
import flash.display.*;
public dynamic class CharSkinTankHead2 extends MovieClip {
}
}//package tank2007_2
Section 212
//CodeMc (tank2007_2.CodeMc)
package tank2007_2 {
import flash.display.*;
import basic.*;
public class CodeMc extends Sp {
public var code0:MovieClip;
private var totalShow:int;
public var code2:MovieClip;
public var code3:MovieClip;
public var code5:MovieClip;
public var code6:MovieClip;
public var code1:MovieClip;
public var code4:MovieClip;
public var code7:MovieClip;
public static const total:int = codes.length;
public static const codes:String = "Tank2008";
public function CodeMc(){
var _local1:int;
super();
_local1 = 0;
while (_local1 < total) {
this[("code" + _local1)].visible = false;
_local1++;
};
totalShow = 0;
}
public function get knowAll():Boolean{
return ((totalShow == total));
}
public function showCode(_arg1:int):String{
totalShow++;
this[("code" + _arg1)].visible = true;
return (codes.charAt(_arg1));
}
}
}//package tank2007_2
Section 213
//ColorSelectHero (tank2007_2.ColorSelectHero)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import FWG.*;
public class ColorSelectHero extends Tank {
public var head_mc:MovieClip;
private var prevColor:int;
public var body_mc:MovieClip;
public function ColorSelectHero(){
runAble = false;
shapeId = 0;
minHeadId = Hero.MinHeadId;
maxHeadId = Hero.MaxHeadId;
minBodyId = Hero.MinBodyId;
maxBodyId = Hero.MaxBodyId;
}
public function confirmColor(_arg1:int):void{
color = (prevColor = _arg1);
}
override public function added(_arg1:Event=null):void{
super.added();
ColorSelect(this.parent).updateFromMain();
}
public function cancleColor():void{
color = prevColor;
}
public function selectColor(_arg1:int):void{
color = _arg1;
}
}
}//package tank2007_2
Section 214
//CrashMissile (tank2007_2.CrashMissile)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class CrashMissile extends Missile {
public var flame_mc:MovieClip;
public function CrashMissile(_arg1, _arg2:int){
var char = _arg1;
var _offsetId = _arg2;
super(char, _offsetId, 40, 200, "SndCrashMissile");
adjustMov = function ():void{
vp.normalize((vp.length + 1.5));
};
}
override public function exp(_arg1=null):void{
var _local2:int;
var _local3:Number;
var _local4:Cannon;
_local2 = 10;
_local3 = 0;
while (_local3 < _local2) {
_local4 = new Cannon(Global.game.globalToLocal(this.localToGlobal(Point.polar(30, (((Math.PI * 2) * _local3) / _local2)))), Global.game.globalToLocal(this.localToGlobal(Point.polar(100, (((Math.PI * 2) * _local3) / _local2)))), 0, 20, Global.gameInterface.hero.bulletColor);
Global.game.bulletArea.addChild(_local4);
_local4.onHitShape = onHitShape;
_local3++;
};
super.exp();
}
}
}//package tank2007_2
Section 215
//EnemyTank (tank2007_2.EnemyTank)
package tank2007_2 {
import flash.display.*;
public class EnemyTank extends Tank {
public var head_mc:MovieClip;
public var body_mc:MovieClip;
private var __codeId:int;
private static const colorArr:Array = [0xFFFFFF, 16777061, 6658098, 6671615];
public function EnemyTank(){
shapeId = 4;
minHeadId = 0;
maxHeadId = 2;
minBodyId = 0;
maxBodyId = 2;
codeId = -1;
piecesClass = "TankPieces";
}
public function set isRed(_arg1:Boolean):void{
init(Common.random(4), (Math.random() > 0.5));
if (_arg1){
color = 0xFF0000;
};
}
override public function exp(_arg1=null):void{
if (codeId >= 0){
Global.game.viewCode(this, codeId);
};
super.exp();
}
public function init(_arg1:int, _arg2:Boolean):void{
totalLife = ((100 + (_arg1 * 40)) + (Global.main.stageNum * 10));
color = colorArr[_arg1];
isDouble = _arg2;
coinValue = (4 + _arg1);
headId = (bodyId = ((_arg1 < 1)) ? 0 : (_arg1 - 1));
rangeId = _arg1;
vId = (3 - _arg1);
}
public function set codeId(_arg1:int):void{
__codeId = _arg1;
coinValue = 0;
}
public function get codeId():int{
return (__codeId);
}
}
}//package tank2007_2
Section 216
//EShock (tank2007_2.EShock)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class EShock extends LineWeapon {
public var body_mc:MovieClip;
public function EShock(){
super([120, 140, 160, 180, 200, 220], 20);
}
override public function drawLine(_arg1:Point, _arg2:Point):void{
body.graphics.lineStyle(((Math.random() * (rangeId + 1)) / 2), 10066431);
Common.randomLine(body, _arg1.x, _arg1.y, _arg2.x, _arg2.y, 8);
}
}
}//package tank2007_2
Section 217
//Exp (tank2007_2.Exp)
package tank2007_2 {
import basic.*;
public class Exp extends Sp {
public function Exp(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Function){
var piecesBmds:PiecesBmds;
var obj:Object;
var expPiece:*;
var piecesClassName = _arg1;
var _x = _arg2;
var _y = _arg3;
var onHitGround = _arg4;
super();
piecesBmds = BmdList.piecesList[piecesClassName];
for each (obj in piecesBmds.bmdList) {
expPiece = new ExpPiece(obj);
expPiece.onHitGround = onHitGround;
expPiece.onRemoved = function ():void{
checkRemove();
};
this.addChild(expPiece);
};
}
private function checkRemove():void{
if (this.numChildren <= 0){
this.parent.removeChild(this);
};
}
}
}//package tank2007_2
Section 218
//ExpEffect (tank2007_2.ExpEffect)
package tank2007_2 {
import FWG.*;
public class ExpEffect extends RunSp {
private var delayTime:int;
public function ExpEffect(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
delayTime = 40;
runAble = true;
}
override public function run():void{
if (--delayTime < 0){
if (this.parent != null){
this.parent.removeChild(this);
};
};
}
}
}//package tank2007_2
Section 219
//ExpFlame (tank2007_2.ExpFlame)
package tank2007_2 {
import flash.display.*;
public dynamic class ExpFlame extends MovieClip {
public function ExpFlame(){
addFrameScript(17, frame18);
}
function frame18(){
stop();
this.parent.removeChild(this);
}
}
}//package tank2007_2
Section 220
//ExpPiece (tank2007_2.ExpPiece)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import FWG.*;
public class ExpPiece extends RunSp {
public var onRemoved:Function;
public var va:Number;
public var obj3d:Obj3d;
public var onHitGround:Function;
public function ExpPiece(_arg1:Object){
var bmp:Bitmap;
var obj = _arg1;
super();
runAble = true;
if (obj.bmd == undefined){
this.addChild(new PieceFlame());
this.x = ((Math.random() * obj.rect.width) + obj.rect.x);
this.y = ((Math.random() * obj.rect.width) + obj.rect.y);
} else {
bmp = new Bitmap(obj.bmd, PixelSnapping.NEVER);
this.addChild(bmp);
bmp.x = obj.bx;
bmp.y = obj.by;
this.x = obj.x;
this.y = obj.y;
};
va = (10 - (Math.random() * 21));
obj3d = new Obj3d(this, ((0.3 * this.y) + ((Math.random() - 0.5) * 7)), ((0.3 * this.x) + ((Math.random() - 0.5) * 7)), (20 * (Math.random() + 0.5)), 0.95);
obj3d.onHitGround = function (_arg1:Number, _arg2:Number, _arg3:Number):void{
onHitGround(_arg1, _arg2, _arg3);
};
this.rotation = (this.rotation + 0.01);
}
override public function removed(_arg1:Event=null):void{
super.removed();
obj3d.clear();
obj3d = null;
onHitGround = null;
}
override public function run():void{
obj3d.mov();
if (obj3d.isSlow){
this.parent.removeChild(this);
onRemoved();
onRemoved = null;
} else {
this.rotation = (this.rotation + va);
this.x = obj3d._x;
this.y = obj3d._y;
this.scaleX = (this.scaleY = (this.scaleY * 0.95));
};
}
}
}//package tank2007_2
Section 221
//FenceDoor (tank2007_2.FenceDoor)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class FenceDoor extends House {
public var eShock:MovieClip;
public function FenceDoor(){
shapeId = 101;
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
}
public function hitHero():void{
if (eShock.visible){
if (Global.gameInterface.radio.codeMc.knowAll){
Global.gameInterface.showMsg("You've disabled the force field!");
hitShape.nextFrame();
eShock.visible = false;
} else {
Global.gameInterface.showMsg("You need the code to open the door!");
};
};
}
}
}//package tank2007_2
Section 222
//FireBurner (tank2007_2.FireBurner)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class FireBurner extends Bullet {
public var body:MovieClip;
public var dw:Number;
public function FireBurner(_arg1:Point, _arg2:Point, _arg3:int=0, _arg4:Number=5, _arg5:int=0xFF0000, _arg6:Number=1){
super(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6);
dw = (_arg3 + 1);
firePower = 5;
}
override public function run():void{
var _local1:Array;
var _local2:*;
if (!this.visible){
this.parent.removeChild(this);
return;
};
body.width = (body.width + dw);
body.height = (body.height + dw);
if ((body.alpha = (body.alpha - 0.05)) < 0.05){
this.parent.removeChild(this);
return;
};
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
_local1 = Global.game.getCharsUnderObj(this);
for each (_local2 in _local1) {
if (!(_local2 is Hero)){
_local2.hurt(firePower, _local2.localToGlobal(Common.p0), Global.gameInterface.hero);
};
};
}
}
}//package tank2007_2
Section 223
//FireFlame (tank2007_2.FireFlame)
package tank2007_2 {
import flash.display.*;
public dynamic class FireFlame extends MovieClip {
public function FireFlame(){
addFrameScript(0, frame1, 36, frame37);
}
function frame1(){
gotoAndPlay((Math.round((Math.random() * totalFrames)) + 2));
}
function frame37(){
gotoAndPlay(2);
}
}
}//package tank2007_2
Section 224
//FixHitShape2 (tank2007_2.FixHitShape2)
package tank2007_2 {
import flash.display.*;
public dynamic class FixHitShape2 extends MovieClip {
}
}//package tank2007_2
Section 225
//Game (tank2007_2.Game)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import FWG.*;
import effect.*;
import flash.filters.*;
import flash.utils.*;
public class Game extends BasicGame {
public var yShake:Number;
public var bg:Bg;
private var shadowBmd:TestBmd;
public var redTankArea;
private var heroRota:Number;
public var mines;
public var onKillAll:Function;
public var bulletArea:Sprite;
private var isStageClear:Boolean;
private var totalTargetObj:Object;
public var isHeroDead:Boolean;
public var topEffectArea:Sprite;
public var fixHitShape;
private var totalTotalTargetObj:Object;
private var pyramidShadowArea:MovieClip;
public var onErrorKilled:Function;
public var boss;
public var xShake:Number;
public var topArea:Sprite;
private var mcsArr:Array;
public var topChars:TopChars;
private var heroX:Number;
private var heroY:Number;
public var visibleCharList:Array;
public var effectArea:Sprite;
public var shadowArea;
public var shapeArea:ShapeArea;
public var topMc;
public var houseArea;
public var chars;
private var topBmd:TestBmd;
public var winF:Function;
public var hero:Hero;
public static const left:Number = -1050;
public static const hei:Number = 1600;
public static const levelScArr:Array = [{mines:false, redTankArea:false, heroX:1408, heroY:384, boss:false}, {mines:false, redTankArea:false, heroX:1440, heroY:1344, boss:false}, {mines:false, redTankArea:true, heroX:128, heroY:1344, boss:false}, {mines:false, redTankArea:false, heroX:1472, heroY:704, boss:false}, {mines:false, redTankArea:false, heroX:821, heroY:896, boss:true}, {mines:true, redTankArea:false, heroX:1216, heroY:896, boss:false}, {mines:true, redTankArea:false, heroX:800, heroY:480, boss:false}, {mines:true, redTankArea:false, heroX:576, heroY:480, boss:false}, {mines:true, redTankArea:false, heroX:800, heroY:1248, boss:false}, {mines:true, redTankArea:false, heroX:96, heroY:544, boss:false}, {mines:true, redTankArea:false, heroX:736, heroY:1056, boss:false}, {mines:true, redTankArea:true, heroX:992, heroY:832, boss:false}, {mines:true, redTankArea:false, heroX:0x0300, heroY:544, boss:false}, {mines:true, redTankArea:false, heroX:544, heroY:1184, boss:false}, {mines:true, redTankArea:false, heroX:832, heroY:320, boss:false}];
public static const wid:Number = 1600;
public static const secWeaponArr:Array = ["heat seeker", "crash missile", "mine", "wave crack"];
public static const top:Number = -1200;
public static const zoomRect:Rectangle = new Rectangle(0, 0, zoomWid, zoomHei);
public static const zoomR:Number = (Math.sqrt(((zoomWid * zoomWid) + (zoomHei * zoomHei))) / 2);
public static const right:Number = 0;
public static const weaponArr:Array = ["cannon", "cannon", "cannon", "cannon", "canister", "eShock", "laser", "fire burner", "chain saw"];
public static const bottom:Number = 0;
public static const xCenter:Number = 275;
public static const yCenter:Number = 200;
public static const zoomHei:Number = 400;
public static const zoomWid:Number = 550;
public function Game(){
var _local1:Object;
super();
stageNum = Global.main.stageNum;
isStageClear = false;
pyramidShadowArea = new MovieClip();
xShake = 0;
yShake = 0;
_local1 = levelScArr[(stageNum - 1)];
bg = new (getDefinitionByName(("tank2007_2.Bg" + stageNum)));
this.addChild(bg);
if (_local1.mines){
mines = new (getDefinitionByName(("tank2007_2.Mines" + stageNum)));
} else {
mines = new Sprite();
};
this.addChild(mines);
chars = new (getDefinitionByName(("tank2007_2.Chars" + stageNum)));
this.addChild(chars);
if (_local1.redTankArea){
this.addChild((redTankArea = new RedTankArea()));
};
hero = new Hero();
this.addChild(hero);
hero.x = _local1.heroX;
hero.y = _local1.heroY;
bulletArea = new Sprite();
this.addChild(bulletArea);
houseArea = new (getDefinitionByName(("tank2007_2.HouseArea" + stageNum)));
this.addChild(houseArea);
topMc = new (getDefinitionByName(("tank2007_2.TopMc" + stageNum)));
this.addChild(topMc);
topMc.filters = [new DropShadowFilter(7, 4, 0, 0.7, 5, 5)];
shadowBmd = new TestBmd(1600, 1600, true, 0);
shadowBmd.draw(topMc);
topMc.filters = null;
topBmd = new TestBmd(1600, 1600, true, 0);
topBmd.draw(topMc);
shadowArea = new Sprite();
this.addChild(shadowArea);
shadowArea.addChild(new Bitmap(shadowBmd, PixelSnapping.NEVER));
effectArea = new Sprite();
this.addChild(effectArea);
topArea = new Sprite();
this.addChild(topArea);
topArea.addChild(new Bitmap(topBmd, PixelSnapping.NEVER));
topChars = new TopChars();
this.addChild(topChars);
topEffectArea = new Sprite();
this.addChild(topEffectArea);
shapeArea = new ShapeArea();
this.addChild(shapeArea);
shapeArea.alpha = 0;
}
public function scrollBy(_arg1):void{
var _local2:Number;
var _local3:Number;
_local2 = (xCenter - _arg1.x);
_local3 = (yCenter - _arg1.y);
if (_local2 > right){
_local2 = right;
} else {
if (_local2 < left){
_local2 = left;
};
};
if (_local3 > bottom){
_local3 = bottom;
} else {
if (_local3 < top){
_local3 = top;
};
};
this.x = (_local2 + xShake);
this.y = (_local3 + yShake);
}
override public function restart():void{
Global.main.restartStage();
Global.main.flipTo(PageMissionInfo);
this.parent.removeChild(this);
}
private function timerStart(_arg1):void{
var totalTime = _arg1;
Global.gameInterface.radio.clock.visible = true;
Global.gameInterface.radio.clock.init(totalTime);
Global.gameInterface.radio.clock.start();
Global.gameInterface.radio.clock.onTimeUp = function ():void{
Global.pause = true;
onTimeUp();
};
}
public function viewCode(_arg1:Char, _arg2:int):void{
var _local3:String;
_local3 = Global.gameInterface.radio.codeMc.showCode(_arg2);
effectArea.addChild(new NumPopUp(_arg1.x, _arg1.y, _local3, 0xFF0000));
if (Global.gameInterface.radio.codeMc.knowAll){
Global.gameInterface.showMsg("Code complete - now get to the force field!", true);
} else {
Global.gameInterface.showMsg((("You've got the code letter \"" + _local3) + "\"!"));
};
}
private function getRanLevelArr(_arg1:int, _arg2:Array):Array{
var _local3:Array;
var _local4:Array;
var _local5:int;
var _local6:int;
var _local7:int;
_local3 = Common.getRanArr(_arg1, _arg2);
_local4 = new Array();
_local5 = 0;
for each (_local6 in _local3) {
_local7 = 0;
while (_local7 < _local6) {
_local4.push(_local5);
_local7++;
};
_local5++;
};
Common.disorder(_local4);
return (_local4);
}
override public function removed(_arg1:Event=null):void{
var _local2:int;
stopRun();
Global.removeEvent(stage, Event.ENTER_FRAME, shakeRun);
super.removed();
_local2 = 0;
while (_local2 < mcsArr.length) {
mcsArr[_local2] = null;
_local2++;
};
mcsArr = null;
boss = null;
if (topBmd != null){
topBmd.dispose();
topBmd = null;
};
if (shadowBmd != null){
shadowBmd.dispose();
shadowBmd = null;
};
pyramidShadowArea = null;
winF = null;
onErrorKilled = null;
onKillAll = null;
while (this.numChildren > 0) {
this.removeChildAt(0);
};
shapeArea = null;
topEffectArea = null;
boss = null;
topChars = null;
topArea = null;
effectArea = null;
shadowArea = null;
houseArea = null;
bulletArea = null;
redTankArea = null;
chars = null;
mines = null;
bg = null;
}
override public function start(_arg1:int):void{
stageNum = _arg1;
Global.pause = false;
}
public function getCharsUnderObj(_arg1):Array{
var _local2:int;
var _local3:Array;
var _local4:int;
var _local5:HitShape;
_local2 = shapeArea.charShapeArea.numChildren;
_local3 = new Array();
_local4 = 0;
while (_local4 < _local2) {
_local5 = HitShape(shapeArea.charShapeArea.getChildAt(_local4));
if (_local5.hitTestObject(_arg1)){
if (_local5.char != null){
_local3.push(_local5.char);
};
};
_local4++;
};
if (((((!((Global.game.boss == null))) && (Global.game.boss.visible))) && (Global.game.hitTestObject(_arg1)))){
_local3.push(Global.game.boss);
};
return (_local3);
}
public function addScore(_arg1, _arg2:int):void{
effectArea.addChild(new NumPopUp(_arg1.x, _arg1.y, _arg2));
Global.main.addScore(_arg2);
}
override public function playAgain():void{
Global.pause = false;
isHeroDead = false;
Global.gameInterface.hero.restart();
Global.main.currentScore = (Global.main.currentScore * 0.7);
Global.main.score = (Global.main.score * 0.7);
}
public function unlockWeapon(_arg1:int):void{
Global.gamePad.menuPad.unlockWeapon(_arg1);
}
public function getCharUnderPoint(_arg1:Point){
var _local2:*;
_arg1.x = int(_arg1.x);
_arg1.y = int(_arg1.y);
if (shapeArea.hitTestPoint(_arg1.x, _arg1.y, true)){
for each (_local2 in Global.main.getObjectsUnderPoint(_arg1)) {
if ((_local2.parent is HitShape)){
if (_local2.parent.char == null){
return (_local2.parent);
};
return (_local2.parent.char);
};
};
return (null);
};
return (null);
}
private function eventInit(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, eventInit);
init();
}
override public function added(_arg1:Event=null):void{
super.added();
Global.addEvent(this, stage, Event.ENTER_FRAME, eventInit);
}
public function shake():void{
if (Global.main.shakeOn){
xShake = ((Math.random() - 0.5) * 10);
yShake = ((Math.random() - 0.5) * 10);
Global.removeEvent(stage, Event.ENTER_FRAME, shakeRun);
Global.addEvent(this, stage, Event.ENTER_FRAME, shakeRun);
};
}
override public function init():void{
var i:int;
var L:int;
var char:*;
var total:int;
var tankArr:Array;
var testlevelArr:Array;
var testdoubleNum:int;
var ranLevelArr:Array;
var tank:EnemyTank;
var level:int;
var isDouble:Boolean;
var posArr:Array;
var p:*;
var superBomb:SuperBomb;
this.removeChild(topMc);
topMc = null;
topBmd.draw(pyramidShadowArea);
pyramidShadowArea = null;
Global.gameInterface.radio.init(chars);
topChars.init();
total = chars.numChildren;
tankArr = new Array();
i = 0;
while (i < total) {
char = chars.getChildAt(i);
if ((char is EnemyTank)){
tankArr.push(char);
} else {
if (char.totalLife > 10){
char.totalLife = (char.totalLife + (stageNum * 10));
};
};
i = (i + 1);
};
total = houseArea.numChildren;
i = 0;
while (i < total) {
char = houseArea.getChildAt(i);
if ((char is Rock)){
i = (i - 1);
total = (total - 1);
bg.addChild(char);
};
i = (i + 1);
};
total = tankArr.length;
testlevelArr = [0, 0, 0, 0];
testdoubleNum = 0;
ranLevelArr = getRanLevelArr(total, [3, 3, 3, 1]);
for each (tank in tankArr) {
level = ranLevelArr.splice(Common.random(ranLevelArr.length), 1);
isDouble = ((Math.random() * stageNum) > 5);
var _local4 = testlevelArr;
var _local5 = level;
var _local6 = (_local4[_local5] + 1);
_local4[_local5] = _local6;
if (isDouble){
testdoubleNum = (testdoubleNum + 1);
};
tank.init(level, isDouble);
};
shapeArea.waterShape.gotoAndStop(stageNum);
scrollBy(Global.gameInterface.hero);
switch (stageNum){
case 4:
case 6:
case 8:
case 9:
case 11:
case 12:
case 16:
case 17:
case 19:
case 5:
case 10:
case 15:
winF = function ():Boolean{
return (false);
};
break;
default:
winF = function ():Boolean{
return ((chars.numChildren == 0));
};
break;
};
onKillAll = function (){
};
switch (stageNum){
case 2:
timerStart(180);
break;
case 4:
initDestoryTargetMission(houseArea, [House1]);
timerStart(180);
break;
case 6:
posArr = [[1260, 1119], [165, 802], [1411, 781], [1023, 1377]];
p = posArr[Common.random(posArr.length)];
superBomb = new SuperBomb(p[0], p[1]);
houseArea.addChildAt(superBomb, 0);
initDestoryTargetMission(houseArea, [GroundPlane]);
break;
case 7:
timerStart(150);
break;
case 8:
initDestoryTargetMission(houseArea, [Base5]);
timerStart(120);
break;
case 9:
case 13:
case 19:
initCodeStage(tankArr);
break;
case 11:
initDestoryTargetMission(houseArea, [Base5]);
timerStart(180);
winF = function ():Boolean{
return ((((chars.numChildren == 0)) && (checkTotalTarget())));
};
break;
case 12:
initDestoryTargetMission(houseArea, [House2, Base4]);
timerStart(180);
break;
case 14:
initDestoryTargetMission(houseArea, [Base4]);
timerStart(150);
break;
case 16:
initDestoryTargetMission(chars, [Robot]);
break;
case 17:
initDestoryTargetMission(houseArea, [Tree1]);
timerStart(180);
break;
case 18:
timerStart(180);
break;
case 5:
case 10:
case 15:
onKillAll = function ():void{
boss = new (getDefinitionByName(("tank2007_2.Boss" + (stageNum / 5))));
if (stageNum == 10){
this.addChildAt(boss, (this.getChildIndex(hero) + 1));
fixHitShape = new FixHitShape2();
fixHitShape.cacheAsBitmap = true;
fixHitShape.alpha = 0;
Global.game.addChild(fixHitShape);
} else {
this.addChild(boss);
};
boss.come();
boss.onExp = function ():void{
winF = function ():Boolean{
return (true);
};
};
};
break;
default:
break;
};
mcsArr = [topChars, effectArea, houseArea, mines, bulletArea, redTankArea];
L = mcsArr.length;
i = 0;
while (i < L) {
if (mcsArr[i] == null){
mcsArr.splice(i, 1);
i = (i - 1);
L = (L - 1);
};
i = (i + 1);
};
startRun();
}
private function initDestoryTargetMission(_arg1:DisplayObjectContainer, _arg2:Array):void{
var total:int;
var i:int;
var target:*;
var classObj:Class;
var targetArea = _arg1;
var classArr = _arg2;
total = targetArea.numChildren;
totalTargetObj = new Object();
totalTotalTargetObj = new Object();
i = 0;
while (i < total) {
target = targetArea.getChildAt(i);
for each (classObj in classArr) {
if ((target is classObj)){
if (totalTargetObj[target.name0] == undefined){
totalTargetObj[target.name0] = 1;
} else {
var _local6 = totalTargetObj;
var _local7 = target.name0;
var _local8 = (_local6[_local7] + 1);
_local6[_local7] = _local8;
};
totalTotalTargetObj[target.name0] = totalTargetObj[target.name0];
target.onExp = function ():void{
var _local1:int;
var _local2:int;
var _local3 = totalTargetObj;
var _local4 = this.name0;
var _local5 = (_local3[_local4] - 1);
_local3[_local4] = _local5;
_local1 = _local5;
if (_local1 <= 0){
Global.gameInterface.showMsg("Good job!");
} else {
_local2 = totalTotalTargetObj[this.name0];
Global.gameInterface.showMsg((((((((((_local2 - _local1) + "/") + _local2) + " Still ") + _local1) + " ") + this.name0) + ((_local1 == 1)) ? "" : "s") + " left."), true);
};
};
};
};
i = (i + 1);
};
winF = checkTotalTarget;
}
override public function runAll(_arg1:Event):void{
var mc:*;
var total:int;
var i:int;
var f:Function;
var char:*;
var b:*;
var event = _arg1;
if (((!(Global.main.isActivate)) || (Global.pause))){
return;
};
for each (mc in mcsArr) {
setVisible(mc);
};
visibleCharList = new Array();
total = chars.numChildren;
i = 0;
while (i < total) {
char = chars.getChildAt(i);
b = char.getRect(Global.main);
char.visible = (((((((b.x < zoomWid)) && ((b.y < zoomHei)))) && ((b.x > -(b.width))))) && ((b.y > -(b.height))));
if (char.visible){
visibleCharList.push(char);
};
i = (i + 1);
};
for each (f in runArr) {
f();
};
Global.gameInterface.radio.update();
if (Global.gameInterface.hero.life < (Global.gameInterface.hero.totalLife / 5)){
Global.gameInterface.radio.lifeBar.visible = ((int((getTimer() / 500)) % 2) == 0);
} else {
Global.gameInterface.radio.lifeBar.visible = true;
};
if (!isHeroDead){
if (Global.gameInterface.hero.life <= 0){
isHeroDead = true;
Global.main.heroData = Global.gameInterface.hero.heroData;
Global.gameInterface.hero.delRun();
setTimeout(gameOver, 1000);
return;
};
if (((winF()) && (!(isStageClear)))){
stageClear();
return;
};
if (chars.numChildren == 0){
onKillAll();
topChars.delRun();
onKillAll = function (){
};
};
};
}
public function addPyramidShadow(_arg1:PyramidShadow):void{
pyramidShadowArea.addChild(_arg1);
}
public function errorKill():void{
delRuns();
setTimeout(onErrorKilled, 1000);
}
public function addHitShape(_arg1):HitShape{
var _local2:HitShape;
if (_arg1.shapeId <= 0){
return (null);
};
_local2 = new HitShape(_arg1);
_local2.x = _arg1.x;
_local2.y = _arg1.y;
shapeArea.charShapeArea.addChild(_local2);
return (_local2);
}
private function setVisible(_arg1):void{
var _local2:int;
var _local3:int;
var _local4:*;
var _local5:*;
_local2 = _arg1.numChildren;
_local3 = 0;
while (_local3 < _local2) {
_local4 = _arg1.getChildAt(_local3);
_local5 = _local4.getRect(Global.main);
_local4.visible = (((((((_local5.x < zoomWid)) && ((_local5.y < zoomHei)))) && ((_local5.x > -(_local5.width))))) && ((_local5.y > -(_local5.height))));
_local3++;
};
}
private function shakeRun(_arg1:Event):void{
xShake = (xShake - (xShake * 1.8));
yShake = (yShake - (yShake * 1.8));
if (((xShake * xShake) + (yShake * yShake)) < 5){
xShake = (yShake = 0);
Global.removeEvent(stage, Event.ENTER_FRAME, shakeRun);
};
}
private function checkTotalTarget():Boolean{
var _local1:String;
for (_local1 in totalTargetObj) {
if (totalTargetObj[_local1] > 0){
return (false);
};
};
return (true);
}
private function initCodeStage(_arg1:Array):void{
var i:int;
var tankArr = _arg1;
Common.disorder(tankArr);
i = 0;
while (i < CodeMc.total) {
tankArr[i].codeId = i;
i = (i + 1);
};
houseArea.powerUpWeapon.onGet = function ():void{
winF = function ():Boolean{
return (true);
};
};
}
override public function stageClear():void{
switch (stageNum){
case 3:
case 5:
case 7:
case 9:
case 11:
Global.gameInterface.hero.addMaxHeadId();
break;
case 13:
Global.main.addScore(1000);
break;
};
isStageClear = true;
delRuns();
setTimeout(super.stageClear, 1000);
}
private function delRuns():void{
var _local1:Array;
var _local2:*;
var _local3:int;
var _local4:int;
var _local5:*;
_local1 = [shapeArea, topEffectArea, topChars, effectArea, shadowArea, houseArea, bulletArea, Global.gameInterface.hero, redTankArea, chars, mines];
for each (_local2 in _local1) {
if (_local2 == null){
} else {
_local3 = _local2.numChildren;
_local4 = 0;
while (_local4 < _local3) {
_local5 = _local2.getChildAt(_local4);
if ((((_local5 is RunSp)) && (!((_local5 is Exp))))){
_local5.delRun();
};
_local4++;
};
};
};
topChars.delRun();
Global.gameInterface.hero.delRun();
if (boss != null){
boss.delRun();
};
}
}
}//package tank2007_2
Section 226
//Games (tank2007_2.Games)
package tank2007_2 {
import flash.display.*;
public dynamic class Games extends MovieClip {
}
}//package tank2007_2
Section 227
//GroundPlane (tank2007_2.GroundPlane)
package tank2007_2 {
import flash.geom.*;
public class GroundPlane extends House {
public function GroundPlane(){
shapeId = 7;
coinValue = 7;
runAble = true;
totalLife = 100000;
piecesClass = "GroundPlanePieces";
name0 = "Plane";
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
if (_arg1 > 10000){
super.hurt(_arg1, _arg2, _arg3);
};
}
public function hitHero():void{
if (Global.gameInterface.radio.superBomb.visible){
Global.gameInterface.radio.superBomb.visible = false;
hurt(totalLife, null, Global.gameInterface.hero);
} else {
Global.gameInterface.showMsg("To destory the airport you need to get the bomb first!");
};
}
}
}//package tank2007_2
Section 228
//GroundPlanePieces (tank2007_2.GroundPlanePieces)
package tank2007_2 {
import flash.display.*;
public dynamic class GroundPlanePieces extends MovieClip {
}
}//package tank2007_2
Section 229
//HeatSeeker (tank2007_2.HeatSeeker)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class HeatSeeker extends Missile {
public var flame_mc:MovieClip;
private var target;
private var targetParent;
public function HeatSeeker(_arg1, _arg2:int, _arg3=null){
var char = _arg1;
var _offsetId = _arg2;
var _target = _arg3;
super(char, _offsetId, 30, 200, "SndHeatSeeker");
target = _target;
if (target != null){
targetParent = target.parent;
};
adjustMov = function ():void{
var _local1:Number;
if (target == null){
} else {
if (target.parent != targetParent){
target = null;
targetParent = null;
} else {
if (vp.length > 10){
dp = new Point((target.x - this.x), (target.y - this.y));
_local1 = ((Math.atan2(dp.y, dp.x) * Common.a2r) - this.rotation);
if (_local1 >= 180){
_local1 = (_local1 - 360);
} else {
if (_local1 <= -180){
_local1 = (_local1 + 360);
};
};
if (_local1 < 0){
va = (va - ava);
} else {
va = (va + ava);
};
if (((((va * va) > (_local1 * _local1))) || (((va * va) >= 900)))){
va = _local1;
};
this.rotation = (this.rotation + va);
vp = Point.polar(vp.length, (this.rotation / Common.a2r));
};
};
};
vp.normalize((vp.length + 1.5));
};
}
override public function chickHitTarget(_arg1:Point, _arg2:Number):Boolean{
if (super.chickHitTarget(_arg1, _arg2)){
return (true);
};
if (((!((((target == null)) || ((Global.game.topChars.plane == null))))) && (Global.game.topChars.plane.hitShapeInside.hitTestPoint(_arg1.x, _arg1.y, true)))){
Global.game.topChars.plane.hurt(firePower, null, Global.gameInterface.hero);
vp.normalize(_arg2);
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
exp();
return (true);
};
return (false);
}
override public function removed(_arg1:Event=null):void{
super.removed();
target = null;
targetParent = null;
}
}
}//package tank2007_2
Section 230
//HeatSeekerSmoke (tank2007_2.HeatSeekerSmoke)
package tank2007_2 {
import flash.display.*;
public dynamic class HeatSeekerSmoke extends MovieClip {
public function HeatSeekerSmoke(){
addFrameScript(19, frame20);
}
function frame20(){
this.parent.removeChild(this);
stop();
}
}
}//package tank2007_2
Section 231
//Hero (tank2007_2.Hero)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.utils.*;
public class Hero extends Tank {
public const totalFireEnergy:Number = 400;
public const totalCrashMissile:int = 40;
public const totalWaveCrack:int = 20;
public const totalHeatSeeker:int = 40;
public const totalMine:int = 20;
private var __fireEnergy:Number;
private var __heatSeekerNum:int;
private var __doubleValue:int;
private var __mineNum:int;
public var head_mc:MovieClip;
private var downKey:int;
private var rightKey:int;
private var totalFlyingMissile:int;
private var leftKey:int;
private var fireDelay:int;
private var secWeaponKey:int;
public var body_mc:MovieClip;
private var isFireing:Boolean;
private var __waveCrackNum:int;
public var shield:Shield;
private var __crashMissileNum:int;
public var invincibleTime:int;
private var upKey:int;
private var __secWeaponId:int;
private var __secWeapon:String;
private static const vArr2:Array = [5, 6.5, 8, 9.5, 11, 12.5];
public static var MaxBodyId:int = 4;
public static var MinBodyId:int = 0;
public static var MinHeadId:int = 3;
public static var MaxHeadId:int = 3;
public function Hero(){
minHeadId = MinHeadId;
maxHeadId = MaxHeadId;
minBodyId = MinBodyId;
maxBodyId = MaxBodyId;
__doubleValue = 0;
totalLife = 2000;
fireEnergy = totalFireEnergy;
heatSeekerNum = 0;
crashMissileNum = 0;
mineNum = 0;
waveCrackNum = 0;
vId = 0;
isDouble = false;
isFireing = false;
fireDelay = 0;
runAble = true;
bulletColor = 10053171;
invincibleTime = 60;
Global.gameInterface.hero = this;
piecesClass = "TankPieces";
totalFlyingMissile = 0;
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
if (invincibleTime > 0){
return;
};
if (shield.visible){
shield.value = (shield.value - _arg1);
} else {
super.hurt(_arg1);
};
}
public function restart():void{
invincibleTime = 60;
this.visible = true;
if (sndChainSaw != null){
sndChainSaw.soundStart();
};
hitShape.x = this.x;
life = totalLife;
updateLifeBar();
delRun();
addRun();
}
override public function exp(_arg1=null):void{
this.visible = false;
hitShape.x = -10000;
if (sndChainSaw != null){
sndChainSaw.soundStop();
};
super.exp();
}
public function get doubleValue():int{
return (__doubleValue);
}
public function set heatSeekerNum(_arg1:int):void{
__heatSeekerNum = _arg1;
if (__heatSeekerNum <= 0){
__heatSeekerNum = 0;
};
Global.gameInterface.radio.heatSeekerNum = __heatSeekerNum;
}
public function get heatSeekerNum():int{
return (__heatSeekerNum);
}
override public function set headId(_arg1:int):void{
super.headId = _arg1;
isFireing = false;
Global.gamePad.menuPad.rangeBar.value = rangeId;
Global.gamePad.shopPad.update();
Global.gamePad.menuPad.adjustBtnWeaponIcon();
}
private function fireSecWeapon(_arg1:int):void{
if (((Global.pause) || (Global.game.isHeroDead))){
return;
};
switch (secWeapon){
case "heat seeker":
if ((((heatSeekerNum > 0)) && ((totalFlyingMissile <= 0)))){
heatSeekerNum = (heatSeekerNum - 2);
totalFlyingMissile = (totalFlyingMissile + 2);
fireHeatSeeker([1, -1], true, onRemoveMissile);
};
break;
case "crash missile":
if ((((crashMissileNum > 0)) && ((totalFlyingMissile <= 0)))){
crashMissileNum = (crashMissileNum - 2);
totalFlyingMissile = (totalFlyingMissile + 2);
fireCrashMissile([1, -1], onRemoveMissile);
};
break;
case "mine":
if (mineNum > 0){
if (putMine(Mine2, 20)){
Global.main.playSound("SndMine", this);
mineNum--;
};
};
break;
case "wave crack":
if (waveCrackNum > 0){
waveCrackNum--;
Global.main.playSound("SndWaveCrack", this);
fireWaveCrack();
};
break;
};
}
public function get mineNum():int{
return (__mineNum);
}
override public function set vId(_arg1:int):void{
super.vId = _arg1;
vMax = vArr2[vId];
Global.gamePad.menuPad.speedBar.value = _arg1;
}
private function onRemoveMissile():void{
totalFlyingMissile--;
}
public function get fireEnergy():Number{
return (__fireEnergy);
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, MouseEvent.MOUSE_DOWN, beginFire);
Global.removeEvent(stage, MouseEvent.MOUSE_UP, stopFire);
super.removed();
Global.gameInterface.hero = null;
}
override public function updateLifeBar():void{
super.updateLifeBar();
Global.gameInterface.radio.lifeValue = (life / totalLife);
}
public function hitHurt(_arg1:Point):void{
a = Math.atan2(-(_arg1.y), -(_arg1.x));
this.rotation = (a * Common.a2r);
v = -10;
hurt(100);
invincibleTime = 60;
}
override public function set rangeId(_arg1:int):void{
var _local2:int;
var _local3:int;
super.rangeId = _arg1;
if (weapon == "chain-saw"){
_local2 = head.numChildren;
_local3 = 0;
while (_local3 < _local2) {
if ((head.getChildAt(_local3) is ChainSaw)){
head.getChildAt(_local3).rangeId = _arg1;
};
_local3++;
};
};
Global.gamePad.menuPad.rangeBar.value = _arg1;
}
private function beginFire(_arg1:MouseEvent):void{
if (Global.pause){
return;
};
fireDelay = 0;
isFireing = true;
}
public function fireSuperEShock():void{
if (eShock == null){
eShock = new EShock();
eShock.getPoints = getEShockPoints;
eShock.onHitChar = function (_arg1):void{
var _local2:int;
var _local3:Array;
var _local4:int;
var _local5:*;
var _local6:*;
var _local7:Array;
var _local8:Array;
var _local9:*;
var _local10:*;
var _local11:*;
if (!(_arg1 is MachineChar)){
return;
};
_local2 = Global.game.visibleCharList.length;
if (_local2 >= 2){
_local3 = Global.game.visibleCharList.slice();
for each (_local6 in _local3) {
if (_arg1 == _local6){
_local3.splice(_local4, 1);
break;
};
_local4++;
};
_local7 = new Array();
_local8 = [_arg1];
do {
_local7 = _local8.slice();
_local8 = new Array();
for each (_arg1 in _local7) {
_local9 = new Point(_arg1.x, _arg1.y);
_local2 = _local3.length;
_local4 = 0;
while (_local4 < _local2) {
_local6 = _local3[_local4];
if (_local6.parent == null){
_local3.splice(_local4, 1);
_local4--;
_local2--;
} else {
_local10 = new Point(_local6.x, _local6.y);
_local11 = _local10.subtract(_local9);
if (_local11.length < (eShock.range / 1.5)){
eShock.drawLine(_local9.add(new Point(((Math.random() - 0.5) * 2.5), ((Math.random() - 0.5) * 2.5))), _local10.add(new Point(((Math.random() - 0.5) * 2.5), ((Math.random() - 0.5) * 2.5))));
eShock.onHit(_local10);
_local6.hurt((eShock.firePower + (2 * eShock.rangeId)), null, Global.gameInterface.hero);
_local8.push(_local6);
_local3.splice(_local4, 1);
_local4--;
_local2--;
};
};
_local4++;
};
};
} while (_local8.length > 0);
};
};
Global.game.bulletArea.addChild(eShock);
movSnd = Global.main.playMovingSound("SndEShock", this, true);
};
eShock.fire(this, rangeId);
}
public function set doubleValue(_arg1:int):void{
__doubleValue = _arg1;
if (__doubleValue <= 0){
__doubleValue = 0;
Global.main.gs.currentItem.heroData.isDouble = (isDouble = false);
};
Global.gameInterface.radio.doubleValue = __doubleValue;
}
public function addMine(){
secWeaponId = 2;
mineNum = totalMine;
}
override public function run():void{
if (invincibleTime > 0){
invincibleTime--;
this.alpha = (((invincibleTime % 4) >= 2)) ? 0 : 1;
};
movCtrl();
if (isFireing){
switch (weapon){
case "cannon":
if (--fireDelay <= 0){
if (isDouble){
doubleValue = (doubleValue - 2);
};
fireDelay = 4;
fireCannon();
};
break;
case "spread":
if (--fireDelay <= 0){
if (isDouble){
doubleValue = (doubleValue - 2);
};
fireDelay = 7;
fireCanister();
};
break;
case "eShock":
if (fireEnergy > 0){
fireSuperEShock();
fireEnergy = (fireEnergy - (isDouble) ? 2 : 1);
};
break;
case "laser":
if (fireEnergy > 0){
fireLaser();
fireEnergy = (fireEnergy - (isDouble) ? 2 : 1);
};
break;
case "chain-saw":
break;
case "flame thrower":
if (fireEnergy > 0){
if (--fireDelay <= 0){
if (isDouble){
doubleValue = (doubleValue - 2);
};
fireDelay = 5;
fireFireBurner();
fireEnergy = (fireEnergy - (isDouble) ? 10 : 5);
};
};
break;
};
} else {
if (fireEnergy < totalFireEnergy){
fireEnergy = (fireEnergy + 4);
};
};
pointTo(Global.game.mouseX, Global.game.mouseY);
}
public function set mineNum(_arg1:int):void{
__mineNum = _arg1;
if (__mineNum <= 0){
__mineNum = 0;
};
Global.gameInterface.radio.mineNum = __mineNum;
}
public function addWaveCrack(){
secWeaponId = 3;
waveCrackNum = totalWaveCrack;
}
public function rangeUp(){
if (rangeId < 5){
rangeId++;
};
}
public function addHeatSeeker(){
secWeaponId = 0;
heatSeekerNum = totalHeatSeeker;
}
public function fireWaveCrack():void{
Global.game.effectArea.addChild(new WaveCrack(this.x, this.y));
}
override public function onHitShape(_arg1:Point, _arg2:Number){
var _local3:*;
if (((!((Global.game.boss == null))) && (Global.game.boss.visible))){
if (Global.game.boss.hitTestPoint(_arg1.x, _arg1.y, true)){
Global.game.boss.hurt(_arg2, null, this);
return (Global.game.boss);
};
};
_local3 = Global.game.getCharUnderPoint(_arg1);
if ((((((_local3 == null)) || ((_local3 == Global.game.shapeArea.waterShape)))) || ((_local3 is Hero)))){
return (null);
};
if ((_local3 is Char)){
_local3.hurt(_arg2, _arg1, this);
};
return (_local3);
}
public function set fireEnergy(_arg1:Number):void{
__fireEnergy = _arg1;
if (__fireEnergy <= 0){
__fireEnergy = 0;
clearEShock();
clearLaser();
} else {
if (__fireEnergy > totalFireEnergy){
__fireEnergy = totalFireEnergy;
};
};
Global.gameInterface.radio.fireEnergyValue = (fireEnergy / totalFireEnergy);
}
public function setDouble(){
doubleValue = (doubleValue + 1000);
Global.main.gs.currentItem.heroData.isDouble = (isDouble = true);
}
public function get heroData():Object{
return ({headId:headId, bodyId:bodyId, color:color, vId:vId, rangeIdArr:rangeIdArr, isDouble:isDouble, doubleValue:doubleValue, fireEnergy:fireEnergy, secWeaponId:secWeaponId, heatSeekerNum:heatSeekerNum, crashMissileNum:crashMissileNum, mineNum:mineNum, waveCrackNum:waveCrackNum});
}
public function addCrashMissile(){
secWeaponId = 1;
crashMissileNum = totalCrashMissile;
}
override public function added(_arg1:Event=null):void{
var _local2:Function;
super.added();
Global.addEvent(this, stage, MouseEvent.MOUSE_DOWN, beginFire);
Global.addEvent(this, stage, MouseEvent.MOUSE_UP, stopFire);
Global.gameInterface.hero = this;
_local2 = Global.main.keySetting.getCode;
leftKey = _local2(0);
upKey = _local2(1);
rightKey = _local2(2);
downKey = _local2(3);
secWeaponKey = _local2(10);
secWeaponId = 0;
heroData = (Global.main.heroData = Global.main.gs.currentItem.heroData);
Global.main.addKeyDownF(secWeaponKey, fireSecWeapon);
}
override public function mov(_arg1:int):void{
super.mov(_arg1);
Global.game.scrollBy(this);
}
public function set crashMissileNum(_arg1:int):void{
__crashMissileNum = _arg1;
if (__crashMissileNum <= 0){
__crashMissileNum = 0;
};
Global.gameInterface.radio.crashMissileNum = __crashMissileNum;
}
override public function onHitCharShape(_arg1:Point, _arg2:Number){
var _local3:*;
if (((!((Global.game.boss == null))) && (Global.game.boss.visible))){
if (Global.game.boss.hitTestPoint(_arg1.x, _arg1.y, true)){
Global.game.boss.hurt(_arg2, null, this);
return (Global.game.boss);
};
};
_local3 = Global.game.getCharUnderPoint(_arg1);
if ((((_local3 == null)) || ((_local3 is Hero)))){
return (null);
};
if ((_local3 is MachineChar)){
_local3.hurt(_arg2, _arg1, this);
return (_local3);
};
return (null);
}
public function set waveCrackNum(_arg1:int):void{
__waveCrackNum = _arg1;
if (__waveCrackNum <= 0){
__waveCrackNum = 0;
};
Global.gameInterface.radio.waveCrackNum = __waveCrackNum;
}
public function speedUp():void{
if (vId < 5){
vId++;
};
}
public function addLife():void{
life = (life + (totalLife / 2));
if (life > totalLife){
life = totalLife;
};
updateLifeBar();
}
private function stopFire(_arg1:MouseEvent):void{
isFireing = false;
clearEShock();
clearLaser();
}
override public function checkHit():void{
var _local1:Number;
var _local2:Number;
var _local3:Point;
var _local4:*;
_local1 = ((v > 0)) ? wid2 : -(wid2);
_local2 = -(hei2);
while (_local2 <= hei2) {
_local3 = this.localToGlobal(new Point(_local1, _local2));
_local4 = Global.game.getCharUnderPoint(_local3);
if (_local4 == null){
} else {
if ((_local4 is People)){
_local4.exp();
} else {
if ((_local4 is MachineChar)){
if ((((v >= 0)) && ((v < 10)))){
v = 10;
} else {
if ((((v <= 0)) && ((v > -10)))){
v = -10;
};
};
if (_local4.life <= 50){
v = (v * 1.5);
};
_local4.hurt(50, null, this);
this.hurt(10);
} else {
if ((((v >= 0)) && ((v < 2)))){
v = 2;
} else {
if ((((v <= 0)) && ((v > -2)))){
v = -2;
};
};
if ((((_local4 is GroundPlane)) || ((_local4 is FenceDoor)))){
_local4.hitHero();
};
};
Global.main.playSound("SndHit", _local3);
_local3 = Global.game.globalToLocal(_local3);
Global.game.effectArea.addChild(new HitFlame(_local3.x, _local3.y, ((v > 0)) ? (this.rotation + 180) : this.rotation));
v = (v * -1);
};
return;
};
_local2 = (_local2 + hei2);
};
}
public function addShield(){
shield.show();
}
public function get waveCrackNum():int{
return (__waveCrackNum);
}
public function get crashMissileNum():int{
return (__crashMissileNum);
}
public function set secWeaponId(_arg1:int):void{
secWeapon = Global.gameInterface.secWeaponArr[(__secWeaponId = _arg1)];
}
public function set heroData(_arg1:Object):void{
var _local2:String;
for (_local2 in _arg1) {
this[_local2] = Common.cloneObj(_arg1[_local2]);
};
rangeId = rangeId;
}
public function set secWeapon(_arg1:String):void{
Global.gameInterface.radio.secWeapon = (__secWeapon = _arg1);
Global.gamePad.menuPad.adjustBtnSecWeaponIcon();
}
private function movCtrl():void{
var _local1:Number;
var _local2:Number;
if (Global.main.keyIsDown(leftKey)){
if (Global.main.keyIsDown(upKey)){
_local1 = -135;
} else {
if (Global.main.keyIsDown(downKey)){
_local1 = 135;
} else {
_local1 = -180;
};
};
} else {
if (Global.main.keyIsDown(rightKey)){
if (Global.main.keyIsDown(upKey)){
_local1 = -45;
} else {
if (Global.main.keyIsDown(downKey)){
_local1 = 45;
} else {
_local1 = 0;
};
};
} else {
if (Global.main.keyIsDown(upKey)){
_local1 = -90;
} else {
if (Global.main.keyIsDown(downKey)){
_local1 = 90;
} else {
slide();
return;
};
};
};
};
_local2 = (_local1 - (a * Common.a2r));
if (_local2 < -180){
_local2 = (_local2 + 360);
} else {
if (_local2 > 180){
_local2 = (_local2 - 360);
};
};
this.rotation = (this.rotation + (_local2 * 0.2));
a = (this.rotation / Common.a2r);
mov(1);
}
override public function slide():void{
super.slide();
Global.game.scrollBy(this);
}
public function get secWeaponId():int{
return (__secWeaponId);
}
public function get secWeapon():String{
return (__secWeapon);
}
public function addMaxHeadId(){
MaxHeadId++;
maxHeadId = MaxHeadId;
}
}
}//package tank2007_2
Section 232
//HitFlame (tank2007_2.HitFlame)
package tank2007_2 {
import flash.display.*;
import FWG.*;
public class HitFlame extends RunSp {
public function HitFlame(_arg1:Number, _arg2:Number, _arg3:Number){
var _local4:int;
var _local5:int;
var _local6:MovieClip;
super();
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
_local4 = this.numChildren;
_local5 = 0;
while (_local5 < _local4) {
_local6 = MovieClip(this.getChildAt(_local5));
_local6.vx = ((Math.random() * 5) + 5);
_local6.vy = ((Math.random() - 0.5) * 5);
_local6.vAlpha = ((Math.random() * 0.2) + 0.1);
_local5++;
};
runAble = true;
}
override public function run():void{
var _local1:int;
var _local2:int;
var _local3:MovieClip;
_local1 = this.numChildren;
_local2 = 0;
while (_local2 < _local1) {
_local3 = MovieClip(this.getChildAt(_local2));
_local3.x = (_local3.x + _local3.vx);
_local3.y = (_local3.y + _local3.vy);
_local3.alpha = (_local3.alpha - _local3.vAlpha);
if (_local3.alpha < 0.1){
_local2--;
_local1--;
this.removeChild(_local3);
};
_local2++;
};
if (_local1 <= 0){
this.parent.removeChild(this);
};
}
}
}//package tank2007_2
Section 233
//HitShape (tank2007_2.HitShape)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import basic.*;
public class HitShape extends Mc {
public var char;
public function HitShape(_arg1=null){
char = _arg1;
if (char == null){
stop();
return;
};
update();
this.gotoAndStop(char.shapeId);
}
override public function removed(_arg1:Event=null):void{
super.removed();
char = null;
}
public function update():void{
this.transform.matrix = char.transform.matrix;
}
}
}//package tank2007_2
Section 234
//Hole (tank2007_2.Hole)
package tank2007_2 {
import flash.display.*;
public dynamic class Hole extends MovieClip {
}
}//package tank2007_2
Section 235
//House (tank2007_2.House)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class House extends Char {
public var houseFlame:HouseFlame;
public function House(){
this.cacheAsBitmap = true;
shapeId = 1;
totalLife = 100;
expShakeAble = true;
coinValue = 3;
lightClass = LightFlash;
name0 = "House";
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
lastHitter = _arg3;
if ((((life > 0)) && (((life = (life - _arg1)) <= 0)))){
life = 0;
if (houseFlame != null){
houseFlame.parent.removeChild(houseFlame);
};
if ((((coinValue > 0)) && ((lastHitter == Global.gameInterface.hero)))){
Global.game.addScore(this, coinValue);
};
hurtHouseAround();
exp();
return;
};
if (houseFlame == null){
houseFlame = new HouseFlame(this);
Global.game.effectArea.addChild(houseFlame);
runAble = true;
addRun();
};
if (_arg2 != null){
houseFlame.addFlame(houseFlame.globalToLocal(_arg2));
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
houseFlame = null;
}
override public function run():void{
if (--life <= 0){
life = 0;
if (houseFlame != null){
houseFlame.parent.removeChild(houseFlame);
};
if ((((coinValue > 0)) && ((lastHitter == Global.gameInterface.hero)))){
Global.game.addScore(this, coinValue);
};
hurtHouseAround();
exp();
};
}
private function hurtHouseAround():void{
var _local1:int;
var _local2:int;
var _local3:*;
var _local4:int;
_local1 = parent.numChildren;
_local2 = 0;
while (_local2 < _local1) {
_local3 = parent.getChildAt(_local2);
if ((((((_local3 is House)) && (_local3.hitTestObject(this)))) && (!((_local3 == this))))){
_local4 = (_local3.life - 7);
if (_local4 < 0){
_local4 = 0;
};
_local3.hurt(_local4, _local3.localToGlobal(Common.p0), lastHitter);
};
_local2++;
};
}
}
}//package tank2007_2
Section 236
//House1 (tank2007_2.House1)
package tank2007_2 {
public class House1 extends House {
public function House1(){
piecesClass = "House1Pieces";
}
}
}//package tank2007_2
Section 237
//House1Pieces (tank2007_2.House1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class House1Pieces extends MovieClip {
}
}//package tank2007_2
Section 238
//House2 (tank2007_2.House2)
package tank2007_2 {
public class House2 extends House {
public function House2(){
piecesClass = "House2Pieces";
}
}
}//package tank2007_2
Section 239
//House2Pieces (tank2007_2.House2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class House2Pieces extends MovieClip {
}
}//package tank2007_2
Section 240
//HouseArea1 (tank2007_2.HouseArea1)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea1 extends MovieClip {
}
}//package tank2007_2
Section 241
//HouseArea10 (tank2007_2.HouseArea10)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea10 extends MovieClip {
}
}//package tank2007_2
Section 242
//HouseArea11 (tank2007_2.HouseArea11)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea11 extends MovieClip {
}
}//package tank2007_2
Section 243
//HouseArea12 (tank2007_2.HouseArea12)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea12 extends MovieClip {
}
}//package tank2007_2
Section 244
//HouseArea13 (tank2007_2.HouseArea13)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea13 extends MovieClip {
public var powerUpWeapon:PowerUpWeapon;
}
}//package tank2007_2
Section 245
//HouseArea14 (tank2007_2.HouseArea14)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea14 extends MovieClip {
}
}//package tank2007_2
Section 246
//HouseArea15 (tank2007_2.HouseArea15)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea15 extends MovieClip {
}
}//package tank2007_2
Section 247
//HouseArea2 (tank2007_2.HouseArea2)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea2 extends MovieClip {
}
}//package tank2007_2
Section 248
//HouseArea3 (tank2007_2.HouseArea3)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea3 extends MovieClip {
}
}//package tank2007_2
Section 249
//HouseArea4 (tank2007_2.HouseArea4)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea4 extends MovieClip {
}
}//package tank2007_2
Section 250
//HouseArea5 (tank2007_2.HouseArea5)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea5 extends MovieClip {
}
}//package tank2007_2
Section 251
//HouseArea6 (tank2007_2.HouseArea6)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea6 extends MovieClip {
}
}//package tank2007_2
Section 252
//HouseArea7 (tank2007_2.HouseArea7)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea7 extends MovieClip {
}
}//package tank2007_2
Section 253
//HouseArea8 (tank2007_2.HouseArea8)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea8 extends MovieClip {
}
}//package tank2007_2
Section 254
//HouseArea9 (tank2007_2.HouseArea9)
package tank2007_2 {
import flash.display.*;
public dynamic class HouseArea9 extends MovieClip {
public var powerUpWeapon:PowerUpWeapon;
}
}//package tank2007_2
Section 255
//HouseFlame (tank2007_2.HouseFlame)
package tank2007_2 {
import flash.geom.*;
import flash.events.*;
import FWG.*;
public class HouseFlame extends RunSp {
private var house:House;
private var flameArr:Array;
private var total:int;
public function HouseFlame(_arg1:House){
house = _arg1;
runAble = true;
this.x = house.x;
this.y = house.y;
total = 0;
flameArr = new Array();
}
public function addFlame(_arg1:Point):void{
var _local2:Point;
var _local3:FireFlame;
_local2 = new Point(-(_arg1.x), -(_arg1.y));
_local2.normalize(5);
_arg1.x = (_arg1.x + _local2.x);
_arg1.y = (_arg1.y + _local2.y);
for each (_local3 in flameArr) {
_local2 = new Point((_arg1.x - _local3.x), (_arg1.y - _local3.y));
if (_local2.length < 20){
return;
};
};
_local3 = new FireFlame();
_local3.scaleX = (_local3.scaleY = 0.1);
_local3.x = _arg1.x;
_local3.y = _arg1.y;
this.addChild(_local3);
flameArr.push(_local3);
total++;
}
override public function removed(_arg1:Event=null):void{
super.removed();
house = null;
flameArr = null;
}
override public function run():void{
var _local1:int;
var _local2:FireFlame;
_local1 = this.numChildren;
for each (_local2 in flameArr) {
if (Math.random() < 0.2){
this.addChild(new Smoke(_local2.x, _local2.y));
};
_local2.scaleX = (_local2.scaleY = (_local2.scaleY + 0.05));
if (_local2.scaleX > 1){
_local2.scaleX = (_local2.scaleY = 1);
};
};
}
}
}//package tank2007_2
Section 256
//Jeep (tank2007_2.Jeep)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Jeep extends WarCar {
public var people:MovieClip;
public var hasPeople:Boolean;
private var people2:People;
public function Jeep(){
totalLife = 100;
vId = 1;
wid2 = 13;
hei2 = 8;
shapeId = 32;
dp = new Point();
people.stop();
runAble = true;
coinValue = 3;
piecesClass = "JeepPieces";
}
override public function removed(_arg1:Event=null):void{
super.removed();
people2 = null;
}
override public function run():void{
if (this.visible){
if (delayTime > 0){
delayTime--;
mov(1);
} else {
if (delayTime < 0){
delayTime++;
mov(-1);
} else {
delayTime = Math.round(((Math.random() * 60) - 10));
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (dp.length < 150){
jumpOut();
};
};
};
rotate((Math.random() - 0.5));
};
}
public function jumpOut():void{
delRun();
people.nextFrame();
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
dp.normalize(50);
people2 = new People();
Common.setTheSame(people2, this);
Global.game.chars.addChild(people2);
people2.jumpTo((this.x + dp.x), (this.y + dp.y));
hasPeople = false;
}
public function jumpIn(_arg1:People):void{
var people2 = _arg1;
people2.jumpTo(this.x, this.y);
people2.onJump = function ():void{
people2.parent.removeChild(people2);
people.prevFrame();
hasPeople = true;
addRun();
};
}
}
}//package tank2007_2
Section 257
//JeepPieces (tank2007_2.JeepPieces)
package tank2007_2 {
import flash.display.*;
public dynamic class JeepPieces extends MovieClip {
}
}//package tank2007_2
Section 258
//Laser (tank2007_2.Laser)
package tank2007_2 {
import flash.display.*;
public class Laser extends LineWeapon {
public var body_mc:MovieClip;
public function Laser(){
super([200, 250, 300, 350, 400, 500], 25);
}
}
}//package tank2007_2
Section 259
//LifeBar (tank2007_2.LifeBar)
package tank2007_2 {
import flash.events.*;
import FWG.*;
public class LifeBar extends RunSp {
public var bar:LifeBarBar;
private var right:Number;
private var char;
private var top:Number;
private var __value:Number;
private var delayTime:int;
public function LifeBar(_arg1:Char=null, _arg2:Number=1){
this.cacheAsBitmap = true;
if (_arg1 != null){
char = _arg1;
if (((isNaN(char.wid2)) || (isNaN(char.hei2)))){
right = (top = -1000);
} else {
right = (char.wid2 + 5);
top = (-(char.hei2) - 5);
};
value = _arg2;
runAble = true;
} else {
bar.stop();
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
char = null;
}
public function get value():Number{
return (__value);
}
override public function run():void{
this.x = (char.x + right);
this.y = (char.y + top);
if (--delayTime <= 0){
char.lifeBar = null;
this.parent.removeChild(this);
};
}
public function set value(_arg1:Number):void{
__value = _arg1;
delayTime = 60;
bar.gotoAndStop((int((__value * 100)) + 1));
if (char != null){
this.x = (char.x + right);
this.y = (char.y + top);
};
this.visible = true;
}
}
}//package tank2007_2
Section 260
//LifeBarBar (tank2007_2.LifeBarBar)
package tank2007_2 {
import flash.display.*;
public dynamic class LifeBarBar extends MovieClip {
}
}//package tank2007_2
Section 261
//LightFlash (tank2007_2.LightFlash)
package tank2007_2 {
import flash.display.*;
public dynamic class LightFlash extends MovieClip {
public function LightFlash(){
addFrameScript(5, frame6);
}
function frame6(){
stop();
parent.removeChild(this);
}
}
}//package tank2007_2
Section 262
//LightPieces (tank2007_2.LightPieces)
package tank2007_2 {
import flash.display.*;
public dynamic class LightPieces extends MovieClip {
}
}//package tank2007_2
Section 263
//LineWeapon (tank2007_2.LineWeapon)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import FWG.*;
public class LineWeapon extends RunSp {
private var obj:MovieClip;
public var rangeId:int;
public var range:Number;
public var onFinish:Function;
private var char;
public var firePower:Number;
public var body:MovieClip;
public var onHitChar:Function;
public var getPoints:Function;
public var rangeArr:Array;
private var delayTime:int;
public function LineWeapon(_arg1:Array, _arg2:Number){
var _rangeArr = _arg1;
var _firePower = _arg2;
super();
rangeArr = _rangeArr;
firePower = _firePower;
body = this["body_mc"];
onFinish = function ():void{
};
onHitChar = function ():void{
};
}
override public function added(_arg1:Event=null):void{
super.added();
this.addChild((obj = new MovieClip()));
}
public function onHit(_arg1:Point):void{
body.graphics.lineStyle(3, 10066431);
body.graphics.drawCircle(_arg1.x, _arg1.y, (2 + (Math.random() * 3)));
Global.game.effectArea.addChild(new Smoke(_arg1.x, _arg1.y));
Global.game.bg.makeHole(_arg1.x, _arg1.y, ((Math.random() * 5) + 5));
body.addChild(new Dot(_arg1.x, _arg1.y));
}
public function fire(_arg1, _arg2:int):void{
char = _arg1;
range = rangeArr[(rangeId = _arg2)];
delayTime = 1000;
run();
}
public function drawLine(_arg1:Point, _arg2:Point):void{
body.graphics.lineStyle(((Math.random() * (rangeId + 1)) / 2), 10066431);
body.graphics.moveTo(_arg1.x, _arg1.y);
body.graphics.lineTo(_arg2.x, _arg2.y);
}
override public function removed(_arg1:Event=null):void{
super.removed();
char = null;
getPoints = null;
body = null;
obj = null;
onFinish = null;
onHitChar = null;
}
public function beginFire(_arg1, _arg2:int):void{
char = _arg1;
range = rangeArr[(rangeId = _arg2)];
runAble = true;
delayTime = 60;
addRun();
}
override public function run():void{
var _local1:Point;
var _local2:Point;
var _local3:Array;
var _local4:Point;
var _local5:Point;
var _local6:Boolean;
var _local7:Number;
var _local8:*;
var _local9:Number;
var _local10:Number;
clear();
if (--delayTime <= 0){
this.parent.removeChild(this);
onFinish();
return;
};
for each (_local3 in getPoints()) {
_local4 = _local3[0];
_local5 = _local3[1].subtract(_local4);
_local5.normalize(range);
_local1 = Global.game.globalToLocal(_local4);
obj.x = _local1.x;
obj.y = _local1.y;
obj.rotation = (Math.atan2(_local5.y, _local5.x) * Common.a2r);
_local6 = true;
_local2 = new Point();
_local7 = _local5.length;
_local9 = (Math.random() * 5);
while (_local9 <= _local7) {
_local10 = (_local9 / _local7);
_local2.x = (_local4.x + (_local5.x * _local10));
_local2.y = (_local4.y + (_local5.y * _local10));
if (!Game.zoomRect.contains(_local2.x, _local2.y)){
_local6 = false;
break;
};
_local8 = char.onHitShape(_local2, (firePower + (2 * rangeId)));
if (_local8){
onHitChar(_local8);
break;
};
_local9 = (_local9 + 10);
};
_local2 = Global.game.globalToLocal(_local2);
_local2 = _local2.add(Point.polar((Math.random() * 5), ((Math.random() * Math.PI) * 2)));
drawLine(_local1, _local2);
if (_local6){
onHit(_local2);
};
};
}
public function clear():void{
body.graphics.clear();
}
}
}//package tank2007_2
import flash.geom.*;
import FWG.*;
class Dot extends RunSp {
private var v:Point;
private function Dot(_arg1:Number, _arg2:Number){
v = Point.polar(2, ((Math.random() * Math.PI) * 2));
this.graphics.clear();
this.graphics.lineStyle(1, 0xFFFFFF);
this.graphics.lineTo(v.x, v.y);
v.normalize(((Math.random() * 5) + 5));
this.x = _arg1;
this.y = _arg2;
this.runAble = true;
}
override public function run():void{
this.alpha = (this.alpha * 0.8);
this.scaleX = (this.scaleY = (this.scaleY * 0.95));
this.x = (this.x + v.x);
this.y = (this.y + v.y);
if (this.alpha < 0.1){
this.parent.removeChild(this);
};
}
}
Section 264
//Locomotive (tank2007_2.Locomotive)
package tank2007_2 {
public class Locomotive extends House {
public function Locomotive(){
shapeId = 15;
coinValue = 3;
piecesClass = "LocomotivePieces";
}
}
}//package tank2007_2
Section 265
//LocomotivePieces (tank2007_2.LocomotivePieces)
package tank2007_2 {
import flash.display.*;
public dynamic class LocomotivePieces extends MovieClip {
}
}//package tank2007_2
Section 266
//MachineChar (tank2007_2.MachineChar)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class MachineChar extends Char {
public var lifeBar:LifeBar;
public function MachineChar(){
expShakeAble = true;
}
public function shootBullet(_arg1:Point, _arg2:Point, _arg3:int, _arg4:Number, _arg5:int=0xFF0000, _arg6:Class=null, _arg7:Number=1):Bullet{
var _local8:*;
if (_arg6 == null){
_arg6 = Cannon;
};
_local8 = new _arg6(Global.game.globalToLocal(this.localToGlobal(_arg1)), Global.game.globalToLocal(this.localToGlobal(_arg2)), _arg3, _arg4, _arg5, _arg7);
Global.game.bulletArea.addChild(_local8);
_local8.onHitShape = onHitShape;
return (_local8);
}
public function onHitCharShape(_arg1:Point, _arg2:Number){
var _local3:*;
_local3 = Global.game.getCharUnderPoint(_arg1);
if ((_local3 is Hero)){
_local3.hurt(_arg2, _arg1);
return (_local3);
};
return (null);
}
override public function hurt(_arg1:Number, _arg2:Point=null, _arg3:Char=null):void{
super.hurt(_arg1, _arg2, _arg3);
updateLifeBar();
}
public function updateLifeBar():void{
if (life > 0){
if (lifeBar == null){
Global.game.effectArea.addChild((lifeBar = new LifeBar(this, (life / totalLife))));
} else {
lifeBar.value = (life / totalLife);
};
} else {
if (lifeBar != null){
lifeBar.parent.removeChild(lifeBar);
};
lifeBar = null;
};
}
public function onHitShape(_arg1:Point, _arg2:Number){
var _local3:*;
_local3 = Global.game.getCharUnderPoint(_arg1);
if ((((_local3 == null)) || ((_local3 == Global.game.shapeArea.waterShape)))){
return (false);
};
if ((((_local3 is Hero)) || (!((_local3 is MachineChar))))){
if ((_local3 is Char)){
_local3.hurt(_arg2, _arg1);
};
return (_local3);
};
return (null);
}
}
}//package tank2007_2
Section 267
//Mine (tank2007_2.Mine)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Mine extends Char {
public var light:MovieClip;
public static const firePower:Number = 300;
public function Mine(){
light = this["light_mc"];
delayTime = 0;
light.stop();
dp = new Point();
runAble = true;
expShakeAble = true;
holeClass = Hole;
piecesClass = "LightPieces";
lightClass = LightFlash;
}
override public function removed(_arg1:Event=null):void{
super.removed();
light = null;
}
}
}//package tank2007_2
Section 268
//Mine1 (tank2007_2.Mine1)
package tank2007_2 {
import flash.display.*;
public class Mine1 extends Mine {
public var light_mc:MovieClip;
override public function run():void{
if (delayTime == 0){
if (!this.visible){
return;
};
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (dp.length <= 100){
light.play();
delayTime = 30;
};
} else {
if (delayTime > 0){
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if ((((dp.length <= 20)) || ((--delayTime <= 0)))){
if (dp.length < 100){
Global.gameInterface.hero.hurt(50);
};
delayTime = -1;
exp();
return;
};
};
};
}
}
}//package tank2007_2
Section 269
//Mine2 (tank2007_2.Mine2)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
public class Mine2 extends Mine {
public var light_mc:MovieClip;
override public function run():void{
var _local1:Array;
var _local2:Char;
_local1 = Global.game.getCharsUnderObj(this);
for each (_local2 in _local1) {
if (!(_local2 is Hero)){
_local2.hurt(firePower, null, Global.gameInterface.hero);
exp();
};
};
}
}
}//package tank2007_2
Section 270
//MineCar (tank2007_2.MineCar)
package tank2007_2 {
import flash.display.*;
public class MineCar extends WarCar {
public var flame:MovieClip;
public function MineCar(){
totalLife = 100;
vId = 1;
shapeId = 32;
wid2 = 13;
hei2 = 8;
av = 0.2;
vaMax = 0.02;
ava = 0.002;
runAble = true;
coinValue = 3;
piecesClass = "MineCarPieces";
}
override public function run():void{
if (this.visible){
if (delayTime > 0){
delayTime--;
mov(1);
} else {
if (delayTime < 0){
delayTime++;
mov(-1);
} else {
delayTime = Math.round(((Math.random() * 60) - 10));
};
};
rotate((Math.random() - 0.5));
if (Math.random() < 0.01){
putMine(Mine1, 50);
};
};
}
}
}//package tank2007_2
Section 271
//MineCarPieces (tank2007_2.MineCarPieces)
package tank2007_2 {
import flash.display.*;
public dynamic class MineCarPieces extends MovieClip {
}
}//package tank2007_2
Section 272
//Mines10 (tank2007_2.Mines10)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines10 extends MovieClip {
}
}//package tank2007_2
Section 273
//Mines11 (tank2007_2.Mines11)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines11 extends MovieClip {
}
}//package tank2007_2
Section 274
//Mines12 (tank2007_2.Mines12)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines12 extends MovieClip {
}
}//package tank2007_2
Section 275
//Mines13 (tank2007_2.Mines13)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines13 extends MovieClip {
}
}//package tank2007_2
Section 276
//Mines14 (tank2007_2.Mines14)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines14 extends MovieClip {
}
}//package tank2007_2
Section 277
//Mines15 (tank2007_2.Mines15)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines15 extends MovieClip {
}
}//package tank2007_2
Section 278
//Mines6 (tank2007_2.Mines6)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines6 extends MovieClip {
}
}//package tank2007_2
Section 279
//Mines7 (tank2007_2.Mines7)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines7 extends MovieClip {
}
}//package tank2007_2
Section 280
//Mines8 (tank2007_2.Mines8)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines8 extends MovieClip {
}
}//package tank2007_2
Section 281
//Mines9 (tank2007_2.Mines9)
package tank2007_2 {
import flash.display.*;
public dynamic class Mines9 extends MovieClip {
}
}//package tank2007_2
Section 282
//Missile (tank2007_2.Missile)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import media.*;
public class Missile extends Char {
public var adjustMov:Function;
public var vMax:Number;
private var offsetId:Number;
public var firePower:Number;
public var onRemoved:Function;
private var flame:MovieClip;
private var sndMissileName:String;
private var isOffseting:Boolean;
public var vp:Point;
public var va:Number;
public var ava:Number;
private var movSnd:MovSnd;
public var onHitShape:Function;
public function Missile(_arg1, _arg2:int, _arg3:Number=50, _arg4:Number=200, _arg5:String=null){
var char = _arg1;
var _offsetId = _arg2;
var _vMax = _arg3;
var _firePower = _arg4;
var _sndMissileName = _arg5;
super();
sndMissileName = _sndMissileName;
vMax = _vMax;
firePower = _firePower;
Common.setTheSame(this, char);
this.rotation = (this.rotation + char.head.rotation);
offsetId = _offsetId;
vp = Point.polar(5, (this.rotation / Common.a2r));
flame = MovieClip(this["flame_mc"]);
if (offsetId == 0){
isOffseting = false;
movSnd = Global.main.playMovingSound(sndMissileName, this);
} else {
isOffseting = true;
flame.stop();
flame.visible = false;
};
runAble = true;
va = 0;
ava = 1.5;
delayTime = 100;
lightClass = LightFlash;
piecesClass = "LightPieces";
onRemoved = function (){
};
}
override public function exp(_arg1=null):void{
if (this.parent == Global.game.topEffectArea){
super.exp(Global.game.topEffectArea);
} else {
super.exp();
};
}
public function chickHitTarget(_arg1:Point, _arg2:Number):Boolean{
if (onHitShape(_arg1, firePower)){
vp.normalize(_arg2);
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
exp();
return (true);
};
return (false);
}
override public function removed(_arg1:Event=null):void{
super.removed();
onRemoved();
onRemoved = null;
vp = null;
onHitShape = null;
adjustMov = null;
flame.stop();
flame = null;
movSnd = null;
}
override public function run():void{
var _local1:Number;
var _local2:Number;
var _local3:HeatSeekerSmoke;
if (isOffseting){
vp.normalize((vp.length * 0.7));
this.x = (this.x + (offsetId * vp.y));
this.y = (this.y + (-(offsetId) * vp.x));
if (vp.length < 0.1){
isOffseting = false;
flame.visible = true;
flame.play();
movSnd = Global.main.playMovingSound(sndMissileName, this);
};
} else {
_local1 = vp.length;
_local2 = 0;
while (_local2 <= _local1) {
if (chickHitTarget(this.localToGlobal(new Point(_local2, 0)), _local2)){
return;
};
_local2 = (_local2 + 5);
};
adjustMov();
if (vp.length > vMax){
vp.normalize(vMax);
};
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
_local3 = new HeatSeekerSmoke();
Global.game.effectArea.addChild(_local3);
Common.setTheSame(_local3, this);
if (((!(this.visible)) || ((--delayTime < 0)))){
this.parent.removeChild(this);
};
};
}
}
}//package tank2007_2
Section 283
//Obj3d (tank2007_2.Obj3d)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import basic.*;
public class Obj3d extends Obj {
private var y:Number;
private var vx:Number;
private var vy:Number;
private var z:Number;
private var vz:Number;
private var mc;
public var onHitGround:Function;
public var u:Number;
private var x:Number;
public var _x:Number;
public var _y:Number;
private static const g:Number = -2;
public function Obj3d(_arg1, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0, _arg5:Number=1, _arg6:Number=0):void{
var _mc = _arg1;
var _vx = _arg2;
var _vy = _arg3;
var _vz = _arg4;
var _u = _arg5;
var _z = _arg6;
super();
mc = _mc;
z = _z;
x = (mc.y + (z * 0.2));
y = mc.x;
vx = _vx;
vy = _vy;
vz = _vz;
u = _u;
onHitGround = function ():void{
};
}
override public function clear():void{
super.clear();
mc = null;
onHitGround = null;
}
public function get isSlow():Boolean{
return ((((((vx * vx) + (vy * vy)) + (vz * vz)) + (z * z)) < 5));
}
public function mov():void{
var _local1:Point;
vx = (vx * u);
vy = (vy * u);
x = (x + vx);
y = (y + vy);
vz = (vz + g);
z = (z + vz);
_x = y;
_y = (x - (z * 0.2));
if (z <= 0){
z = 0;
vz = (vz * -0.6);
_local1 = mc.localToGlobal(Common.p0);
onHitGround(_local1.x, _local1.y, (mc.width + mc.height));
};
}
public function shootPoint(_arg1:Number, _arg2:Number, _arg3:Number=30):void{
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
_local4 = _arg2;
_local5 = _arg1;
_local6 = 0;
_local7 = (_local4 - x);
_local8 = (_local5 - y);
vz = _arg3;
_local9 = ((-2 * vz) / g);
vx = (_local7 / _local9);
vy = (_local8 / _local9);
}
public function get shadowDistance():Number{
return ((z * 0.31));
}
}
}//package tank2007_2
Section 284
//People (tank2007_2.People)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class People extends MachineChar {
private var weapon:String;
public var isFireing:Boolean;
public var isJumping:Boolean;
public var v:Number;
public var body:MovieClip;
public var onJump:Function;
private var p:Point;
private var obj3d:Obj3d;
public function People(){
super();
v = 2;
totalLife = 1;
shapeId = 30;
holeType = "blood";
dp = new Point();
p = new Point();
if (Math.random() < 1.5){
weapon = "cannon";
} else {
weapon = "bomb";
};
body.people = this;
body.gotoAndStop((weapon + "Walk"));
isFireing = false;
isJumping = false;
onJump = function ():void{
};
runAble = true;
expShakeAble = false;
coinValue = 2;
sndExpName = "SndExpPeople";
}
private function mov():void{
var _local1:*;
this.x = (this.x + (v * p.x));
this.y = (this.y + (v * p.y));
_local1 = Global.game.getCharUnderPoint(this.localToGlobal(new Point(10, 0)));
if (_local1 == null){
} else {
if ((((((_local1 is Jeep)) && ((Math.random() < 0.2)))) && (!(_local1.hasPeople)))){
_local1.jumpIn(this);
} else {
p.x = -(p.x);
p.y = -(p.y);
this.rotation = (Math.atan2(p.y, p.x) * Common.a2r);
};
return;
};
body.play();
}
public function jumpTo(_arg1:Number, _arg2:Number):void{
var _x = _arg1;
var _y = _arg2;
isJumping = true;
obj3d = new Obj3d(this);
obj3d.onHitGround = function ():void{
onJump();
isJumping = false;
this.clear();
};
obj3d.shootPoint(_x, _y, 20);
}
override public function removed(_arg1:Event=null):void{
super.removed();
p = null;
onJump = null;
body.people = null;
if (obj3d != null){
obj3d.clear();
obj3d = null;
};
}
override public function run():void{
var _local1:*;
if (isJumping){
obj3d.mov();
if (obj3d == null){
return;
};
this.x = obj3d._x;
this.y = obj3d._y;
} else {
if (this.visible){
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (delayTime > 0){
delayTime--;
mov();
} else {
if (delayTime < 0){
delayTime++;
if (!isFireing){
body.gotoAndStop(weapon);
};
if (Math.random() < 0.03){
switch (weapon){
case "cannon":
if (isFireing){
isFireing = false;
} else {
_local1 = shootBullet(new Point(20, 0), new Point(1000, 0), 0, 60);
Global.game.effectArea.addChild(new RocketSmoke(_local1, new Point(Global.gameInterface.hero.x, Global.gameInterface.hero.y)));
body.flame.play();
isFireing = true;
};
break;
case "bomb":
if (((!(isFireing)) && ((dp.length < 150)))){
p.x = dp.x;
p.y = dp.y;
p.normalize(1);
this.rotation = (Math.atan2(p.y, p.x) * Common.a2r);
body.gotoAndPlay("throwBomb");
isFireing = true;
delayTime = (delayTime - 30);
};
break;
};
};
} else {
if (dp.length < 100){
p.x = -(dp.x);
p.y = -(dp.y);
delayTime = Math.round(((Math.random() * 60) + 30));
} else {
p.x = dp.x;
p.y = dp.y;
delayTime = Math.round(((Math.random() * 60) - 30));
};
p.normalize(1);
this.rotation = (Math.atan2(p.y, p.x) * Common.a2r);
};
};
};
};
hitShape.update();
}
public function throwBomb():void{
Global.game.bulletArea.addChild(new Bomb(this.x, this.y));
}
}
}//package tank2007_2
Section 285
//PieceFlame (tank2007_2.PieceFlame)
package tank2007_2 {
import flash.display.*;
public dynamic class PieceFlame extends MovieClip {
}
}//package tank2007_2
Section 286
//PiecesBmds (tank2007_2.PiecesBmds)
package tank2007_2 {
import flash.geom.*;
import basic.*;
public class PiecesBmds extends Obj {
public var rect:Rectangle;
public var bmdList:Array;
public function PiecesBmds(_arg1){
var _local2:int;
var _local3:int;
var _local4:*;
var _local5:TestBmd;
var _local6:*;
var _local7:Matrix;
super();
bmdList = new Array();
_local3 = _arg1.numChildren;
_local2 = 0;
while (_local2 < _local3) {
_local4 = _arg1.getChildAt(_local2);
_local5 = new TestBmd(((_local4.width < 1)) ? 1 : _local4.width, ((_local4.height < 1)) ? 1 : _local4.height, true, 0);
_local6 = _local4.getBounds(_local4);
_local7 = new Matrix();
_local7.translate(-(_local6.x), -(_local6.y));
_local5.draw(_local4, _local7);
bmdList.push({x:_local4.x, y:_local4.y, bx:_local6.x, by:_local6.y, bmd:_local5});
_local2++;
};
rect = _arg1.getBounds(_arg1);
rect.x = (rect.x + (rect.width / 4));
rect.y = (rect.y + (rect.height / 4));
rect.width = (rect.width / 2);
rect.height = (rect.height / 2);
_local3 = (_arg1.numChildren * 0.6);
if (_local3 == 0){
_local3 = 8;
};
_local2 = 0;
while (_local2 < _local3) {
bmdList.push({rect:rect});
_local2++;
};
}
override public function clear():void{
var _local1:Object;
super.clear();
rect = null;
for each (_local1 in bmdList) {
_local1.bmd.dispose();
_local1.bmd = null;
};
bmdList = null;
}
}
}//package tank2007_2
Section 287
//Plane (tank2007_2.Plane)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import media.*;
import flash.filters.*;
public class Plane extends MachineChar {
public var hitShapeInside:MovieClip;
public var v:Point;
public var onRemoved:Function;
public var movSnd:MovSnd;
public function Plane(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=5, _arg5:String=null){
this.x = _arg1;
this.y = _arg2;
this.rotation = _arg3;
this["body"].filters = [new DropShadowFilter(100, 50.19, 0, 0.5, 5, 5)];
runAble = true;
v = Point.polar(_arg4, (this.rotation / Common.a2r));
delayTime = 0;
totalLife = 1;
hitShapeInside = this["hitShape_mc"];
movSnd = Global.main.playMovingSound(_arg5, this);
lightClass = LightFlash;
}
public function mov():void{
this.x = (this.x + v.x);
this.y = (this.y + v.y);
if ((((++delayTime > 30)) && (!(this.visible)))){
this.parent.removeChild(this);
};
}
override public function exp(_arg1=null):void{
if (movSnd != null){
movSnd.clear();
movSnd = null;
};
super.exp(Global.game.topEffectArea);
}
override public function removed(_arg1:Event=null):void{
super.removed();
v = null;
hitShapeInside = null;
onRemoved();
onRemoved = null;
movSnd = null;
}
}
}//package tank2007_2
Section 288
//Plane1 (tank2007_2.Plane1)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
public class Plane1 extends Plane {
public var body:MovieClip;
public var hitShape_mc:MovieClip;
public function Plane1(_arg1:Number, _arg2:Number, _arg3:Number){
super(_arg1, _arg2, _arg3, 8, "SndPlane1");
coinValue = 7;
piecesClass = "Plane1Pieces";
}
override public function run():void{
mov();
if (((((delayTime % 30) < 10)) && (((delayTime % 3) == 0)))){
Global.main.playSound("SndBullet", this);
shootBullet(new Point(20, 10), new Point(1000, 0), 0, 60);
shootBullet(new Point(20, -10), new Point(1000, 0), 0, 60);
};
}
}
}//package tank2007_2
Section 289
//Plane1Pieces (tank2007_2.Plane1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Plane1Pieces extends MovieClip {
}
}//package tank2007_2
Section 290
//Plane2 (tank2007_2.Plane2)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Plane2 extends Plane {
public var body:MovieClip;
private var cwId:int;
public var hitShape_mc:MovieClip;
public function Plane2(_arg1:Number, _arg2:Number, _arg3:Number){
super(_arg1, _arg2, _arg3, 3, "SndPlane2");
cwId = ((int((Math.random() * 2)) * 2) - 1);
coinValue = 10;
piecesClass = "Plane2Pieces";
}
override public function removed(_arg1:Event=null):void{
super.removed();
Common.stopAll(this);
}
override public function run():void{
if ((((delayTime > 90)) && ((delayTime < 200)))){
this.rotation = (this.rotation + cwId);
v = Point.polar(v.length, (this.rotation / Common.a2r));
};
mov();
if ((delayTime % 30) == 0){
if (v == null){
return;
};
Global.game.effectArea.addChild(new PlaneBomb(this.x, this.y, v.y, v.x, this.rotation));
};
}
}
}//package tank2007_2
Section 291
//Plane2Pieces (tank2007_2.Plane2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Plane2Pieces extends MovieClip {
}
}//package tank2007_2
Section 292
//PlaneBomb (tank2007_2.PlaneBomb)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.filters.*;
public class PlaneBomb extends Char {
private var vx:Number;
private var vy:Number;
private var obj3d:Obj3d;
private var dropShadow:DropShadowFilter;
public function PlaneBomb(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number){
this.x = _arg1;
this.y = _arg2;
vx = _arg3;
vy = _arg4;
this.rotation = _arg5;
dropShadow = new DropShadowFilter(0, 50.19, 0, 0.5, 5, 5);
this.filters = [dropShadow];
runAble = true;
expShakeAble = true;
holeClass = Hole;
piecesClass = "LightPieces";
lightClass = LightFlash;
}
override public function added(_arg1:Event=null):void{
var event = _arg1;
super.added();
obj3d = new Obj3d(this, vx, vy, 0, 0.99, 333);
obj3d.onHitGround = function (_arg1:Number, _arg2:Number, _arg3:Number):void{
exp();
};
}
override public function exp(_arg1=null):void{
var _local2:*;
var _local3:int;
var _local4:int;
var _local5:*;
_local2 = Global.game.shapeArea.charShapeArea;
_local3 = _local2.numChildren;
_local4 = 0;
while (_local4 < _local3) {
_local5 = _local2.getChildAt(_local4);
if (((((!((_local5.char == null))) && (_local5.char.visible))) && (_local5.char.hitTestObject(this)))){
_local5.char.hurt(40, this.localToGlobal(Common.p0));
break;
};
_local4++;
};
super.exp();
}
override public function removed(_arg1:Event=null):void{
super.removed();
obj3d.clear();
obj3d = null;
dropShadow = null;
}
override public function run():void{
obj3d.mov();
if (obj3d == null){
return;
};
this.x = obj3d._x;
this.y = obj3d._y;
dropShadow.distance = obj3d.shadowDistance;
this.filters = [dropShadow];
}
}
}//package tank2007_2
Section 293
//PowerUpWeapon (tank2007_2.PowerUpWeapon)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import FWG.*;
public class PowerUpWeapon extends RunSp {
public var icon:MovieClip;
public var onGet:Function;
public function PowerUpWeapon(){
this.icon.gotoAndStop((Global.gameInterface.hero.maxHeadId + 2));
runAble = true;
}
override public function removed(_arg1:Event=null):void{
super.removed();
onGet = null;
}
override public function run():void{
if (this.hitTestObject(Global.gameInterface.hero)){
Global.game.unlockWeapon(Global.gameInterface.hero.maxHeadId);
onGet();
this.parent.removeChild(this);
};
}
}
}//package tank2007_2
Section 294
//Pyramid (tank2007_2.Pyramid)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
public class Pyramid extends Rock {
public function Pyramid(){
shapeId = 8;
}
override public function added(_arg1:Event=null):void{
var _local2:PyramidShadow;
super.added();
_local2 = new PyramidShadow();
Common.setTheSame(_local2, this);
Global.game.addPyramidShadow(_local2);
}
}
}//package tank2007_2
Section 295
//PyramidShadow (tank2007_2.PyramidShadow)
package tank2007_2 {
import flash.display.*;
public dynamic class PyramidShadow extends MovieClip {
}
}//package tank2007_2
Section 296
//RedTankArea (tank2007_2.RedTankArea)
package tank2007_2 {
import flash.display.*;
import flash.events.*;
import basic.*;
public class RedTankArea extends Sp {
public var onErrorKilled:Function;
public function RedTankArea(){
var total:int;
var i:int;
var tank:EnemyTank;
super();
total = this.numChildren;
i = 0;
while (i < total) {
tank = EnemyTank(this.getChildAt(i));
tank.isRed = true;
tank.onExp = function ():void{
Global.game.errorKill();
};
i = (i + 1);
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
onErrorKilled = null;
}
}
}//package tank2007_2
Section 297
//Robot (tank2007_2.Robot)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
public class Robot extends MachineChar {
private var isExping:Boolean;
public var body:MovieClip;
private var vp:Point;
public function Robot(){
delayTime = 0;
totalLife = 1;
body.circle_mc.isRotating = false;
body.circle_mc.va = 5;
body.light_mc.stop();
isExping = false;
dp = new Point();
shapeId = 31;
this.rotation = (int((Math.random() * 4)) * 90);
body.light_mc.rotation = (body.head_mc.rotation = -(this.rotation));
vp = Point.polar(1, (this.rotation / Common.a2r));
vp.x = Math.round(vp.x);
vp.y = Math.round(vp.y);
runAble = true;
coinValue = 2;
body.stop();
holeClass = Hole;
piecesClass = "LightPieces";
lightClass = LightFlash;
name0 = "Robot";
}
override public function removed(_arg1:Event=null):void{
super.removed();
vp = null;
}
override public function run():void{
var _local1:Number;
var _local2:Number;
if (isExping){
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if ((((--delayTime <= 0)) || ((dp.length <= 40)))){
exp();
return;
};
} else {
dp.x = (Global.gameInterface.hero.x - this.x);
dp.y = (Global.gameInterface.hero.y - this.y);
if (this.visible){
if (delayTime > 0){
delayTime--;
this.x = (this.x + vp.x);
this.y = (this.y + vp.y);
if (vp.x == 0){
_local1 = (vp.y * 14);
if (((((isHit(-14, _local1, Global.game.shapeArea)) || (isHit(0, _local1, Global.game.shapeArea)))) || (isHit(14, _local1, Global.game.shapeArea)))){
vp.y = (vp.y * -1);
};
} else {
_local2 = (vp.x * 14);
if (((((isHit(_local2, -14, Global.game.shapeArea)) || (isHit(_local2, 0, Global.game.shapeArea)))) || (isHit(_local2, 14, Global.game.shapeArea)))){
vp.x = (vp.x * -1);
};
};
if (delayTime <= 0){
body.stop();
delayTime = -(Math.round((Math.random() * 50)));
};
} else {
delayTime++;
if (delayTime >= 0){
body.play();
delayTime = Math.round((Math.random() * 50));
if (Math.random() > 0.5){
vp.normalize(-1);
};
};
};
if (dp.length < 100){
body.stop();
body.light_mc.play();
isExping = true;
delayTime = 60;
};
if (body.circle_mc.isRotating){
body.circle_mc.rotation = (body.circle_mc.rotation + body.circle_mc.va);
};
if (Math.random() < 0.01){
body.circle_mc.isRotating = !(body.circle_mc.isRotating);
if (body.circle_mc.isRotating){
body.circle_mc.va = (body.circle_mc.va * -1);
};
};
hitShape.update();
if (dp.length <= 40){
exp();
return;
};
};
};
}
}
}//package tank2007_2
Section 298
//Rock (tank2007_2.Rock)
package tank2007_2 {
import flash.events.*;
public class Rock extends Char {
public function Rock(){
this.cacheAsBitmap = true;
shapeId = 2;
sndExpName = null;
}
override public function added(_arg1:Event=null):void{
super.added();
hitShape.char = null;
hitShape = null;
}
}
}//package tank2007_2
Section 299
//Rock2 (tank2007_2.Rock2)
package tank2007_2 {
public class Rock2 extends Rock {
}
}//package tank2007_2
Section 300
//RocketSmoke (tank2007_2.RocketSmoke)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import FWG.*;
public class RocketSmoke extends RunSp {
private var pt:Point;
private var w:Number;
private var bmd:TestBmd;
private var rocketParent;
private var p1:Point;
private var p2:Point;
private var rocket:Bullet;
private var delayTime:int;
private static const h:Number = 10;
public function RocketSmoke(_arg1, _arg2:Point){
rocket = _arg1;
rocketParent = rocket.parent;
pt = _arg2;
runAble = true;
}
override public function added(_arg1:Event=null):void{
var _local2:Bitmap;
super.added();
p1 = Global.game.globalToLocal(rocket.localToGlobal(Common.p0));
this.x = p1.x;
this.y = p1.y;
this.rotation = rocket.rotation;
w = pt.subtract(p1).length;
bmd = new TestBmd(w, h, true, 0);
_local2 = new Bitmap(bmd, PixelSnapping.NEVER);
_local2.y = (-(h) / 2);
this.addChild(_local2);
p1 = Common.p0;
}
override public function removed(_arg1:Event=null):void{
super.removed();
if (bmd != null){
bmd.dispose();
bmd = null;
};
rocket = null;
rocketParent = null;
p1 = null;
p2 = null;
pt = null;
}
override public function run():void{
var _local1:int;
if (delayTime > 0){
if (--delayTime <= 0){
bmd.dispose();
bmd = null;
this.parent.removeChild(this);
return;
};
} else {
if (rocket.parent != rocketParent){
rocket = null;
delayTime = 30;
} else {
p2 = this.globalToLocal(rocket.localToGlobal(Common.p0));
_local1 = p1.x;
while (_local1 <= p2.x) {
bmd.setPixel32(_local1, ((h / 2) + ((Math.random() - 0.5) * 2)), 4294967295);
_local1 = (_local1 + 4);
};
p1 = p2;
};
};
bmd.applyFilter(bmd, bmd.rect, Common.p0, Common.bf);
}
}
}//package tank2007_2
Section 301
//ShapeArea (tank2007_2.ShapeArea)
package tank2007_2 {
import flash.display.*;
public dynamic class ShapeArea extends MovieClip {
public var charShapeArea:MovieClip;
public var waterShape:WaterShape;
}
}//package tank2007_2
Section 302
//Shield (tank2007_2.Shield)
package tank2007_2 {
import flash.display.*;
import basic.*;
public class Shield extends Mc {
private var __value:Number;
public var body:MovieClip;
public function Shield(){
this.stop();
this.visible = false;
}
public function get value():Number{
return (__value);
}
override public function set visible(_arg1:Boolean):void{
super.visible = _arg1;
if (_arg1){
body.play();
} else {
body.stop();
};
}
public function set value(_arg1:Number):void{
__value = _arg1;
if (__value > 0){
this.gotoAndStop((int((__value / 10)) + 1));
} else {
this.visible = false;
};
}
public function show():void{
this.visible = true;
value = 1000;
}
}
}//package tank2007_2
Section 303
//Smoke (tank2007_2.Smoke)
package tank2007_2 {
import FWG.*;
public class Smoke extends RunSp {
public function Smoke(_arg1:Number, _arg2:Number){
this.x = _arg1;
this.y = _arg2;
runAble = true;
}
override public function run():void{
this.x = (this.x + ((Math.random() - 0.5) * 2));
this.y = (this.y + (((Math.random() - 0.5) * 2) - 2));
}
}
}//package tank2007_2
Section 304
//SuperBomb (tank2007_2.SuperBomb)
package tank2007_2 {
import FWG.*;
public class SuperBomb extends RunSp {
public function SuperBomb(_arg1:Number, _arg2:Number){
runAble = true;
this.x = _arg1;
this.y = _arg2;
}
override public function run():void{
if (this.hitTestObject(Global.gameInterface.hero)){
Global.gameInterface.showMsg("You've got a bomb, go and blow up the airport quickly!");
Global.gameInterface.radio.superBomb.visible = true;
this.parent.removeChild(this);
};
}
}
}//package tank2007_2
Section 305
//Tank (tank2007_2.Tank)
package tank2007_2 {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import media.*;
import flash.filters.*;
import flash.utils.*;
public class Tank extends WarCar {
public var minHeadId:int;
public var rangeIdArr:Array;
public var weapon:String;
private var __bodyId:int;// = -1
private var laser:Laser;
public var maxBodyId:int;
private var __headId:int;// = -1
private var vBullet:Number;
public var eShock:EShock;
public var minBodyId:int;
public var sndCannonName:String;
private var __isDouble:Boolean;
public var bulletColor:int;
public var maxHeadId:int;
private var __isChainSawHit:Boolean;
public var body;
public var movSnd:MovSnd;
public var head;
public var sndChainSaw:SndChainSaw;
public function Tank(){
rangeIdArr = [0, 0, 0, 0, 0, 0, 0, 0, 0];
__headId = -1;
__bodyId = -1;
super();
vBullet = 40;
shapeId = 4;
runAble = true;
head = this["head_mc"];
body = this["body_mc"];
coinValue = 5;
sndCannonName = "SndCannon";
bulletColor = 0xFF0000;
__isChainSawHit = false;
}
public function fireHeatSeeker(_arg1:Array, _arg2:Boolean=false, _arg3:Function=null):void{
var _local4:Array;
var _local5:int;
var _local6:int;
var _local7:HeatSeeker;
if (_arg2){
_local4 = getBestTarget(Global.game.chars);
} else {
_local4 = [null, null];
};
_local5 = 0;
for each (_local6 in _arg1) {
_local7 = new HeatSeeker(this, _local6, _local4[_local5]);
if (_arg3 != null){
_local7.onRemoved = _arg3;
};
if (_local4[_local5] == null){
_local7.onHitShape = onHitShape;
Global.game.bulletArea.addChild(_local7);
} else {
_local7.onHitShape = onHitCharShape;
Global.game.topEffectArea.addChild(_local7);
};
_local5++;
};
}
override public function exp(_arg1=null):void{
clearEShock();
clearLaser();
super.exp();
}
private function setColor(_arg1:Event=null):void{
color = color;
}
public function pointTo(_arg1:Number, _arg2:Number):void{
var _local3:Point;
_local3 = head.globalToLocal(Global.game.localToGlobal(new Point(_arg1, _arg2)));
head.rotation = (head.rotation + (Common.a2r * Math.atan2(_local3.y, _local3.x)));
}
public function set headId(_arg1:int):void{
if ((((__headId == _arg1)) || ((_arg1 < 0)))){
return;
};
__headId = _arg1;
if (__headId < minHeadId){
__headId = maxHeadId;
} else {
if (__headId > maxHeadId){
__headId = minHeadId;
};
};
weapon = Global.gameInterface.weaponArr[__headId];
if (weapon == "chain-saw"){
if ((this is Hero)){
sndChainSaw = new SndChainSaw(this);
if (Global.main.soundOn){
} else {
sndChainSaw.soundStop();
};
};
} else {
if (sndChainSaw != null){
sndChainSaw.clear();
sndChainSaw = null;
};
};
changeHead();
clearEShock();
clearLaser();
}
public function fireLaser():void{
if (laser == null){
laser = new Laser();
laser.getPoints = getLaserPoints;
Global.game.bulletArea.addChild(laser);
movSnd = Global.main.playMovingSound("SndEShock", this, true);
};
laser.fire(this, rangeId);
}
private function getLaserPoints():Array{
if (isDouble){
return ([[head.localToGlobal(new Point(wid2, 3)), head.localToGlobal(new Point(500, 3))], [head.localToGlobal(new Point(wid2, -3)), head.localToGlobal(new Point(500, -3))]]);
};
return ([[head.localToGlobal(new Point(wid2, 0)), head.localToGlobal(new Point(500, 0))]]);
}
public function get bodyId():int{
return (__bodyId);
}
override public function removed(_arg1:Event=null):void{
super.removed();
clearEShock();
clearLaser();
head = null;
body = null;
clearEShock();
clearLaser();
movSnd = null;
if (sndChainSaw != null){
sndChainSaw.clear();
};
sndChainSaw = null;
}
public function set rangeId(_arg1:int):void{
if ((((headId < 0)) || ((headId > 8)))){
};
rangeIdArr[headId] = _arg1;
}
public function clearLaser():void{
if (laser != null){
if (movSnd != null){
movSnd.clear();
movSnd = null;
};
laser.parent.removeChild(laser);
laser = null;
};
}
override public function run():void{
if (this.visible){
if (delayTime > 0){
delayTime--;
mov(1);
} else {
if (delayTime < 0){
delayTime++;
mov(-1);
} else {
delayTime = Math.round(((Math.random() * 60) - 20));
};
};
pointTo(Global.gameInterface.hero.x, Global.gameInterface.hero.y);
if (Math.random() < 0.5){
rotate(head.rotation);
} else {
rotate((Math.random() - 0.5));
};
if (life < totalLife){
if (Math.random() < 0.5){
Global.game.effectArea.addChild(new Smoke(this.x, this.y));
};
};
if (Math.random() < 0.01){
fireCannon();
};
};
}
private function getBestTarget(_arg1:DisplayObjectContainer):Array{
var _local2:Number;
var _local3:Number;
var _local4:Array;
var _local5:int;
var _local6:Point;
var _local7:Point;
var _local8:int;
var _local9:*;
var _local10:Number;
var _local11:Number;
_local2 = Number.POSITIVE_INFINITY;
_local3 = Number.POSITIVE_INFINITY;
_local4 = [null, null];
_local5 = _arg1.numChildren;
_local6 = Point.polar(1, ((this.rotation + head.rotation) / Common.a2r));
_local7 = new Point();
_local8 = 0;
while (_local8 < _local5) {
_local9 = _arg1.getChildAt(_local8);
if (_local9.visible){
_local7.x = (_local9.x - this.x);
_local7.y = (_local9.y - this.y);
_local7.normalize(1);
_local10 = ((_local6.x * _local7.x) + (_local6.y * _local7.y));
_local11 = Math.abs((((_local6.x * _local7.y) - (_local6.y * _local7.x)) / _local10));
if (_local11 < _local2){
_local3 = _local2;
_local2 = _local11;
_local4[1] = _local4[0];
_local4[0] = _local9;
} else {
if (_local11 < _local3){
_local3 = _local11;
_local4[1] = _local9;
};
};
};
_local8++;
};
if (((!((Global.game.boss == null))) && (Global.game.boss.visible))){
_local4[1] = Global.game.boss;
_local4[0] = Global.game.boss;
} else {
if (Global.game.topChars.plane != null){
_local4[1] = _local4[0];
_local4[0] = Global.game.topChars.plane;
};
};
return (_local4);
}
public function set bodyId(_arg1:int):void{
var _local2:Rectangle;
var _local3:int;
var _local4:Rectangle;
var _local5:Number;
var _local6:Rectangle;
if ((((__bodyId == _arg1)) || ((_arg1 < 0)))){
return;
};
__bodyId = _arg1;
if (__bodyId < minBodyId){
__bodyId = maxBodyId;
} else {
if (__bodyId > maxBodyId){
__bodyId = minBodyId;
};
};
_local2 = this.getBounds(this.parent);
_local3 = this.getChildIndex(body);
this.removeChild(body);
this.addChildAt((body = new (getDefinitionByName(("tank2007_2.TankBody" + __bodyId)))), _local3);
setColor();
_local4 = body.getBounds(body);
_local5 = (-(_local4.x) - (_local4.width / 2));
body.x = (body.x + _local5);
body.filters = [new DropShadowFilter(2, 45, 0, 0.7, 3, 3)];
head.x = _local5;
_local6 = this.getBounds(this.parent);
this.x = (this.x + ((_local2.x + (_local2.width / 2)) - (_local6.x + (_local6.width / 2))));
this.y = (this.y + ((_local2.y + (_local2.height / 2)) - (_local6.y + (_local6.height / 2))));
}
public function fireCannon():void{
var _local1:Point;
var _local2:Point;
Global.main.playSound(sndCannonName, this);
head.gun.gotoAndPlay(2);
head.flame.play();
if (isDouble){
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 4))), this.globalToLocal(head.localToGlobal(new Point(1000, 4))), rangeId, 40, bulletColor);
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, -4))), this.globalToLocal(head.localToGlobal(new Point(1000, -4))), rangeId, 40, bulletColor);
} else {
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 0))), this.globalToLocal(head.localToGlobal(new Point(1000, 0))), rangeId, 40, bulletColor);
};
}
public function fireCrashMissile(_arg1:Array, _arg2:Function=null):void{
var _local3:int;
var _local4:CrashMissile;
for each (_local3 in _arg1) {
_local4 = new CrashMissile(this, _local3);
_local4.onHitShape = onHitShape;
Global.game.bulletArea.addChild(_local4);
if (_arg2 != null){
_local4.onRemoved = _arg2;
};
};
}
public function getEShockPoints():Array{
if (isDouble){
return ([[head.localToGlobal(new Point(wid2, 3)), head.localToGlobal(new Point(150, 3))], [head.localToGlobal(new Point(wid2, -3)), head.localToGlobal(new Point(150, -3))]]);
};
return ([[head.localToGlobal(new Point(wid2, 0)), head.localToGlobal(new Point(150, 0))]]);
}
public function set isChainSawHit(_arg1:Boolean):void{
if (__isChainSawHit != _arg1){
if (_arg1){
if (sndChainSaw != null){
sndChainSaw.gotoHit();
};
} else {
if (sndChainSaw != null){
sndChainSaw.gotoMov();
};
};
};
__isChainSawHit = _arg1;
}
public function fireEShock():void{
if (eShock == null){
eShock = new EShock();
eShock.getPoints = getEShockPoints;
Global.game.bulletArea.addChild(eShock);
movSnd = Global.main.playMovingSound("SndEShock", this, true);
};
eShock.fire(this, rangeId);
}
public function get headId():int{
return (__headId);
}
public function set isDouble(_arg1:Boolean):void{
__isDouble = _arg1;
changeHead();
}
public function get rangeId():int{
return (rangeIdArr[headId]);
}
public function fireCanister():void{
var _local1:Number;
var _local2:Number;
var _local3:int;
var _local4:Point;
Global.main.playSound("SndCanister", this);
head.gun.gotoAndPlay(2);
head.flame.play();
_local1 = 0.13;
_local2 = ((-(_local1) * rangeId) / 2);
if (isDouble){
_local3 = 0;
while (_local3 <= rangeId) {
_local4 = Point.polar(100, (_local2 + (_local1 * _local3)));
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 4))), this.globalToLocal(head.localToGlobal(new Point((wid2 + _local4.x), (_local4.y + 4)))), 0, 40, bulletColor, null, 0.8);
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, -4))), this.globalToLocal(head.localToGlobal(new Point((wid2 + _local4.x), (_local4.y - 4)))), 0, 40, bulletColor, null, 0.8);
_local3++;
};
} else {
_local3 = 0;
while (_local3 <= rangeId) {
_local4 = Point.polar(100, (_local2 + (_local1 * _local3)));
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 0))), this.globalToLocal(head.localToGlobal(new Point((wid2 + _local4.x), _local4.y))), 0, 40, bulletColor, null, 0.8);
_local3++;
};
};
}
public function fireFireBurner():void{
var _local1:Point;
var _local2:Point;
Global.main.playSound("SndFireBurner", this);
if (isDouble){
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 4))), this.globalToLocal(head.localToGlobal(new Point(200, (4 + ((Math.random() - 0.5) * 40))))), rangeId, 5, bulletColor, FireBurner);
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, -4))), this.globalToLocal(head.localToGlobal(new Point(200, (-4 + ((Math.random() - 0.5) * 40))))), rangeId, 5, bulletColor, FireBurner);
} else {
shootBullet(this.globalToLocal(head.localToGlobal(new Point(wid2, 0))), this.globalToLocal(head.localToGlobal(new Point(200, ((Math.random() - 0.5) * 40)))), rangeId, 5, bulletColor, FireBurner);
};
}
public function get isDouble():Boolean{
return (__isDouble);
}
private function changeHead():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
var _local4:int;
if (__headId < 0){
return;
};
_local1 = head.x;
_local2 = head.y;
_local3 = head.rotation;
_local4 = this.getChildIndex(head);
this.removeChild(head);
this.addChildAt((head = new (getDefinitionByName((("tank2007_2.TankHead" + String(__headId)) + String((isDouble) ? 1 : 0))))), _local4);
head.x = _local1;
head.y = _local2;
head.rotation = _local3;
setColor();
}
public function clearEShock():void{
if (eShock != null){
if (movSnd != null){
movSnd.clear();
movSnd = null;
};
eShock.parent.removeChild(eShock);
eShock = null;
};
}
}
}//package tank2007_2
Section 306
//TankBody (tank2007_2.TankBody)
package tank2007_2 {
import basic.*;
public class TankBody extends Sp {
}
}//package tank2007_2
Section 307
//TankBody0 (tank2007_2.TankBody0)
package tank2007_2 {
public dynamic class TankBody0 extends TankBody {
}
}//package tank2007_2
Section 308
//TankBody1 (tank2007_2.TankBody1)
package tank2007_2 {
public dynamic class TankBody1 extends TankBody {
}
}//package tank2007_2
Section 309
//TankBody2 (tank2007_2.TankBody2)
package tank2007_2 {
public dynamic class TankBody2 extends TankBody {
}
}//package tank2007_2
Section 310
//TankBody3 (tank2007_2.TankBody3)
package tank2007_2 {
public dynamic class TankBody3 extends TankBody {
}
}//package tank2007_2
Section 311
//TankBody4 (tank2007_2.TankBody4)
package tank2007_2 {
public dynamic class TankBody4 extends TankBody {
}
}//package tank2007_2
Section 312
//TankHead (tank2007_2.TankHead)
package tank2007_2 {
import flash.display.*;
import basic.*;
public class TankHead extends Sp {
public var flame:MovieClip;
public var gun:MovieClip;
public function TankHead(){
if (("gun" in this)){
this["gun"].gotoAndStop(1);
};
if (("flame" in this)){
this["flame"].gotoAndStop(1);
};
}
}
}//package tank2007_2
Section 313
//TankHead00 (tank2007_2.TankHead00)
package tank2007_2 {
public dynamic class TankHead00 extends TankHead {
}
}//package tank2007_2
Section 314
//TankHead01 (tank2007_2.TankHead01)
package tank2007_2 {
public dynamic class TankHead01 extends TankHead {
}
}//package tank2007_2
Section 315
//TankHead10 (tank2007_2.TankHead10)
package tank2007_2 {
public dynamic class TankHead10 extends TankHead {
}
}//package tank2007_2
Section 316
//TankHead11 (tank2007_2.TankHead11)
package tank2007_2 {
public dynamic class TankHead11 extends TankHead {
}
}//package tank2007_2
Section 317
//TankHead20 (tank2007_2.TankHead20)
package tank2007_2 {
public dynamic class TankHead20 extends TankHead {
}
}//package tank2007_2
Section 318
//TankHead21 (tank2007_2.TankHead21)
package tank2007_2 {
public dynamic class TankHead21 extends TankHead {
}
}//package tank2007_2
Section 319
//TankHead30 (tank2007_2.TankHead30)
package tank2007_2 {
public dynamic class TankHead30 extends TankHead {
}
}//package tank2007_2
Section 320
//TankHead31 (tank2007_2.TankHead31)
package tank2007_2 {
public dynamic class TankHead31 extends TankHead {
}
}//package tank2007_2
Section 321
//TankHead40 (tank2007_2.TankHead40)
package tank2007_2 {
public dynamic class TankHead40 extends TankHead {
}
}//package tank2007_2
Section 322
//TankHead41 (tank2007_2.TankHead41)
package tank2007_2 {
public dynamic class TankHead41 extends TankHead {
}
}//package tank2007_2
Section 323
//TankHead50 (tank2007_2.TankHead50)
package tank2007_2 {
public dynamic class TankHead50 extends TankHead {
}
}//package tank2007_2
Section 324
//TankHead51 (tank2007_2.TankHead51)
package tank2007_2 {
public dynamic class TankHead51 extends TankHead {
}
}//package tank2007_2
Section 325
//TankHead60 (tank2007_2.TankHead60)
package tank2007_2 {
public dynamic class TankHead60 extends TankHead {
}
}//package tank2007_2
Section 326
//TankHead61 (tank2007_2.TankHead61)
package tank2007_2 {
public dynamic class TankHead61 extends TankHead {
}
}//package tank2007_2
Section 327
//TankHead70 (tank2007_2.TankHead70)
package tank2007_2 {
public dynamic class TankHead70 extends TankHead {
}
}//package tank2007_2
Section 328
//TankHead71 (tank2007_2.TankHead71)
package tank2007_2 {
public dynamic class TankHead71 extends TankHead {
}
}//package tank2007_2
Section 329
//TankHead80 (tank2007_2.TankHead80)
package tank2007_2 {
public dynamic class TankHead80 extends TankHead {
}
}//package tank2007_2
Section 330
//TankHead81 (tank2007_2.TankHead81)
package tank2007_2 {
public dynamic class TankHead81 extends TankHead {
}
}//package tank2007_2
Section 331
//TankPieces (tank2007_2.TankPieces)
package tank2007_2 {
import flash.display.*;
public dynamic class TankPieces extends MovieClip {
}
}//package tank2007_2
Section 332
//TopChars (tank2007_2.TopChars)
package tank2007_2 {
import flash.geom.*;
import flash.events.*;
import FWG.*;
import flash.utils.*;
public class TopChars extends RunSp {
public var plane:Plane;
public function init():void{
runAble = true;
addRun();
}
public function addPlane():void{
var a:Number;
var p:Point;
if (plane == null){
a = ((Math.random() * Math.PI) * 2);
p = Point.polar(Game.zoomR, (a + Math.PI));
p.x = (p.x + Game.xCenter);
p.y = (p.y + Game.yCenter);
p = Global.game.globalToLocal(p);
this.addChild((plane = new getDefinitionByName(("tank2007_2.Plane" + (int((Math.random() * 2)) + 1)))(p.x, p.y, (a * Common.a2r))));
plane.onRemoved = function ():void{
plane = null;
};
};
}
override public function removed(_arg1:Event=null):void{
super.removed();
plane = null;
}
override public function run():void{
if (Math.random() < 0.002){
addPlane();
};
}
}
}//package tank2007_2
Section 333
//TopMc1 (tank2007_2.TopMc1)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc1 extends MovieClip {
}
}//package tank2007_2
Section 334
//TopMc10 (tank2007_2.TopMc10)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc10 extends MovieClip {
}
}//package tank2007_2
Section 335
//TopMc11 (tank2007_2.TopMc11)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc11 extends MovieClip {
}
}//package tank2007_2
Section 336
//TopMc12 (tank2007_2.TopMc12)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc12 extends MovieClip {
}
}//package tank2007_2
Section 337
//TopMc13 (tank2007_2.TopMc13)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc13 extends MovieClip {
}
}//package tank2007_2
Section 338
//TopMc14 (tank2007_2.TopMc14)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc14 extends MovieClip {
}
}//package tank2007_2
Section 339
//TopMc15 (tank2007_2.TopMc15)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc15 extends MovieClip {
}
}//package tank2007_2
Section 340
//TopMc2 (tank2007_2.TopMc2)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc2 extends MovieClip {
}
}//package tank2007_2
Section 341
//TopMc3 (tank2007_2.TopMc3)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc3 extends MovieClip {
}
}//package tank2007_2
Section 342
//TopMc4 (tank2007_2.TopMc4)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc4 extends MovieClip {
}
}//package tank2007_2
Section 343
//TopMc5 (tank2007_2.TopMc5)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc5 extends MovieClip {
}
}//package tank2007_2
Section 344
//TopMc6 (tank2007_2.TopMc6)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc6 extends MovieClip {
}
}//package tank2007_2
Section 345
//TopMc7 (tank2007_2.TopMc7)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc7 extends MovieClip {
}
}//package tank2007_2
Section 346
//TopMc8 (tank2007_2.TopMc8)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc8 extends MovieClip {
}
}//package tank2007_2
Section 347
//TopMc9 (tank2007_2.TopMc9)
package tank2007_2 {
import flash.display.*;
public dynamic class TopMc9 extends MovieClip {
}
}//package tank2007_2
Section 348
//Tree (tank2007_2.Tree)
package tank2007_2 {
public class Tree extends Char {
public function Tree(){
shapeId = 5;
totalLife = 1;
holeType = "";
coinValue = 1;
sndExpName = null;
}
}
}//package tank2007_2
Section 349
//Tree1 (tank2007_2.Tree1)
package tank2007_2 {
public class Tree1 extends Tree {
public function Tree1(){
piecesClass = "Tree1Pieces";
}
}
}//package tank2007_2
Section 350
//Tree1Pieces (tank2007_2.Tree1Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree1Pieces extends MovieClip {
}
}//package tank2007_2
Section 351
//Tree2 (tank2007_2.Tree2)
package tank2007_2 {
public class Tree2 extends Tree {
public function Tree2(){
piecesClass = "Tree2Pieces";
}
}
}//package tank2007_2
Section 352
//Tree2Pieces (tank2007_2.Tree2Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree2Pieces extends MovieClip {
}
}//package tank2007_2
Section 353
//Tree3 (tank2007_2.Tree3)
package tank2007_2 {
public class Tree3 extends Tree {
public function Tree3(){
piecesClass = "Tree3Pieces";
}
}
}//package tank2007_2
Section 354
//Tree3Pieces (tank2007_2.Tree3Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree3Pieces extends MovieClip {
}
}//package tank2007_2
Section 355
//Tree4 (tank2007_2.Tree4)
package tank2007_2 {
public class Tree4 extends Tree {
public function Tree4(){
piecesClass = "Tree4Pieces";
}
}
}//package tank2007_2
Section 356
//Tree4Pieces (tank2007_2.Tree4Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree4Pieces extends MovieClip {
}
}//package tank2007_2
Section 357
//Tree5 (tank2007_2.Tree5)
package tank2007_2 {
public class Tree5 extends Tree {
public function Tree5(){
piecesClass = "Tree5Pieces";
}
}
}//package tank2007_2
Section 358
//Tree5Pieces (tank2007_2.Tree5Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree5Pieces extends MovieClip {
}
}//package tank2007_2
Section 359
//Tree6 (tank2007_2.Tree6)
package tank2007_2 {
public class Tree6 extends Tree {
public function Tree6(){
piecesClass = "Tree6Pieces";
}
}
}//package tank2007_2
Section 360
//Tree6Pieces (tank2007_2.Tree6Pieces)
package tank2007_2 {
import flash.display.*;
public dynamic class Tree6Pieces extends MovieClip {
}
}//package tank2007_2
Section 361
//WarCar (tank2007_2.WarCar)
package tank2007_2 {
import flash.geom.*;
import flash.events.*;
public class WarCar extends MachineChar {
public var vMax:Number;
public var av:Number;
private var __vId:int;
public var v:Number;
public var a:Number;
public var vaMax:Number;
public var va:Number;
public var ava:Number;
public static const vArr:Array = [1, 3, 5, 7, 9, 11];
public function WarCar(){
wid2 = 16;
hei2 = 12;
vId = 1;
v = 0;
av = 0.5;
a = (this.rotation / Common.a2r);
va = 0;
vaMax = 0.08;
ava = 0.005;
holeClass = Hole;
lightClass = LightFlash;
}
public function mov(_arg1:int):void{
if (_arg1 < 0){
if ((v = (v - av)) < -(vMax)){
v = -(vMax);
};
} else {
if ((v = (v + av)) > vMax){
v = vMax;
};
};
this.x = Math.round((this.x + (v * Math.cos(a))));
this.y = Math.round((this.y + (v * Math.sin(a))));
hitShape.update();
checkHit();
}
public function putMine(_arg1:Class, _arg2:Number):Boolean{
var _local3:int;
var _local4:*;
var _local5:int;
_local3 = Global.game.mines.numChildren;
_local5 = 0;
while (_local5 < _local3) {
_local4 = Global.game.mines.getChildAt(_local5);
if (new Point((_local4.x - this.x), (_local4.y - this.y)).length < _arg2){
return (false);
};
_local5++;
};
_local4 = new (_arg1);
_local4.x = this.x;
_local4.y = this.y;
Global.game.mines.addChild(_local4);
return (true);
}
public function get vId():int{
return (__vId);
}
public function rotate(_arg1:Number):void{
if (_arg1 < 0){
if ((va = (va - ava)) < -(vaMax)){
va = -(vaMax);
};
} else {
if ((va = (va + ava)) > vaMax){
va = vaMax;
};
};
this.rotation = ((a = (a + va)) * Common.a2r);
}
public function checkHit():void{
var _local1:Number;
var _local2:Number;
var _local3:*;
_local1 = ((v > 0)) ? wid2 : -(wid2);
_local2 = -(hei2);
while (_local2 <= hei2) {
_local3 = Global.game.getCharUnderPoint(this.localToGlobal(new Point(_local1, _local2)));
if (_local3 == null){
} else {
if ((_local3 is People)){
_local3.exp();
} else {
v = (v * -1);
};
return;
};
_local2 = (_local2 + hei2);
};
}
public function set vId(_arg1:int):void{
__vId = _arg1;
vMax = vArr[__vId];
}
public function slide():void{
if ((v * v) < 1){
return;
};
v = (v * 0.9);
this.x = Math.round((this.x + (v * Math.cos(a))));
this.y = Math.round((this.y + (v * Math.sin(a))));
hitShape.update();
checkHit();
}
public function slideA():void{
if ((va * va) < 0.001){
va = 0;
return;
};
va = (va * 0.9);
this.rotation = ((a = (a + va)) * Common.a2r);
}
}
}//package tank2007_2
Section 362
//WaterShape (tank2007_2.WaterShape)
package tank2007_2 {
public class WaterShape extends HitShape {
}
}//package tank2007_2
Section 363
//WaveCrack (tank2007_2.WaveCrack)
package tank2007_2 {
import flash.display.*;
public class WaveCrack extends Char {
public var firePower:int;// = 300
public function WaveCrack(_arg1:Number, _arg2:Number){
firePower = 300;
super();
this.x = _arg1;
this.y = _arg2;
runAble = true;
}
override public function run():void{
var _local1:int;
var _local2:int;
var _local3:*;
var _local4:Array;
_local2 = Global.game.mines.numChildren;
_local1 = 0;
while (_local1 < _local2) {
_local3 = Global.game.mines.getChildAt(_local1);
if (this.hitTestObject(_local3)){
_local3.exp();
_local2--;
_local1--;
};
_local1++;
};
_local4 = Global.game.getCharsUnderObj(this);
for each (_local3 in _local4) {
if (!(_local3 is Hero)){
_local3.hurt(firePower, null, Global.gameInterface.hero);
};
};
}
}
}//package tank2007_2
Section 364
//all_8 (tank2008A_v1_fla.all_8)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class all_8 extends MovieClip {
public function all_8(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 365
//battery_doubleGun1_296 (tank2008A_v1_fla.battery_doubleGun1_296)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class battery_doubleGun1_296 extends MovieClip {
public function battery_doubleGun1_296(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 366
//battery_gun1_305 (tank2008A_v1_fla.battery_gun1_305)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class battery_gun1_305 extends MovieClip {
public function battery_gun1_305(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 367
//battery1_head_mc_293 (tank2008A_v1_fla.battery1_head_mc_293)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class battery1_head_mc_293 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 368
//battery2_head_mc_312 (tank2008A_v1_fla.battery2_head_mc_312)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class battery2_head_mc_312 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 369
//boss3_piece12_441 (tank2008A_v1_fla.boss3_piece12_441)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class boss3_piece12_441 extends MovieClip {
public var body_mc:MovieClip;
}
}//package tank2008A_v1_fla
Section 370
//flame_double_294 (tank2008A_v1_fla.flame_double_294)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class flame_double_294 extends MovieClip {
public function flame_double_294(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 371
//FWG_192 (tank2008A_v1_fla.FWG_192)
package tank2008A_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class FWG_192 extends MovieClip {
public var valueTxt:TextField;
public var varNameTxt:TextField;
}
}//package tank2008A_v1_fla
Section 372
//gamePadContainer_172 (tank2008A_v1_fla.gamePadContainer_172)
package tank2008A_v1_fla {
import flash.display.*;
import FWG.*;
public dynamic class gamePadContainer_172 extends MovieClip {
public var gamePad:GamePad;
public var hitRec:MovieClip;
}
}//package tank2008A_v1_fla
Section 373
//jeep_people_729 (tank2008A_v1_fla.jeep_people_729)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class jeep_people_729 extends MovieClip {
public var flame:MovieClip;
}
}//package tank2008A_v1_fla
Section 374
//loading_logo_loading_2 (tank2008A_v1_fla.loading_logo_loading_2)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class loading_logo_loading_2 extends MovieClip {
public function loading_logo_loading_2(){
addFrameScript(38, frame39);
}
function frame39(){
stop();
}
}
}//package tank2008A_v1_fla
Section 375
//loading_num_4 (tank2008A_v1_fla.loading_num_4)
package tank2008A_v1_fla {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import flash.media.*;
import flash.net.*;
import flash.filters.*;
import flash.utils.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class loading_num_4 extends MovieClip {
public var num_txt:TextField;
public var li:LoaderInfo;
public var _root;
public function loading_num_4(){
addFrameScript(0, frame1);
}
public function loading(_arg1:Event):void{
var _local2:int;
_local2 = int(((li.bytesLoaded / li.bytesTotal) * 100));
num_txt.text = (_local2 + "%");
if (_local2 >= 100){
removeEventListener(Event.ENTER_FRAME, loading);
if (!(_root._mochiad is MovieClip)){
_root.play();
};
};
}
function frame1(){
_root = stage.getChildAt(0);
li = _root.loaderInfo;
this.addEventListener(Event.ENTER_FRAME, loading);
}
}
}//package tank2008A_v1_fla
Section 376
//loading_protect_text_7 (tank2008A_v1_fla.loading_protect_text_7)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class loading_protect_text_7 extends MovieClip {
public var main;
public function loading_protect_text_7(){
addFrameScript(0, frame1);
}
function frame1(){
this.visible = false;
}
}
}//package tank2008A_v1_fla
Section 377
//lockMc_72 (tank2008A_v1_fla.lockMc_72)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class lockMc_72 extends MovieClip {
public function lockMc_72(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 378
//MainTimeline (tank2008A_v1_fla.MainTimeline)
package tank2008A_v1_fla {
import flash.display.*;
import FWG.*;
public dynamic class MainTimeline extends MovieClip {
public function MainTimeline(){
addFrameScript(0, frame1, 2, frame3, 37, frame38);
}
function frame3(){
if (this.loaderInfo.bytesLoaded < this.loaderInfo.bytesTotal){
gotoAndStop("loading");
};
}
function frame1(){
stage.showDefaultContextMenu = false;
MochiAd.showPreloaderAd({clip:this, id:"edcd019a7c3993ff", res:"550x400"});
}
function frame38(){
stop();
stage.quality = StageQuality.MEDIUM;
}
}
}//package tank2008A_v1_fla
Section 379
//mission_door_125 (tank2008A_v1_fla.mission_door_125)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class mission_door_125 extends MovieClip {
public var eShock:MovieClip;
}
}//package tank2008A_v1_fla
Section 380
//numPopUp_body_13 (tank2008A_v1_fla.numPopUp_body_13)
package tank2008A_v1_fla {
import flash.display.*;
import flash.text.*;
public dynamic class numPopUp_body_13 extends MovieClip {
public var numTxt:TextField;
}
}//package tank2008A_v1_fla
Section 381
//pageStageClear_newWeaponPad_199 (tank2008A_v1_fla.pageStageClear_newWeaponPad_199)
package tank2008A_v1_fla {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import flash.media.*;
import flash.net.*;
import flash.filters.*;
import flash.utils.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class pageStageClear_newWeaponPad_199 extends MovieClip {
public var gun:MovieClip;
public function pageStageClear_newWeaponPad_199(){
addFrameScript(0, frame1);
}
function frame1(){
gotoAndStop((Global.main.stageNum - 1));
}
}
}//package tank2008A_v1_fla
Section 382
//pageWin_bg_207 (tank2008A_v1_fla.pageWin_bg_207)
package tank2008A_v1_fla {
import flash.display.*;
import effect.*;
import flash.utils.*;
public dynamic class pageWin_bg_207 extends MovieClip {
public function pageWin_bg_207(){
addFrameScript(0, frame1, 85, frame86, 212, frame213);
}
function frame86(){
new ScreenShake(this);
}
function frame213(){
stop();
}
function frame1(){
stop();
setTimeout(function ():void{
play();
}, 3000);
}
}
}//package tank2008A_v1_fla
Section 383
//pageWin_flowergra_15 (tank2008A_v1_fla.pageWin_flowergra_15)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class pageWin_flowergra_15 extends MovieClip {
public function pageWin_flowergra_15(){
addFrameScript(0, frame1);
}
function frame1(){
this.gotoAndStop((Common.random(this.totalFrames) + 1));
}
}
}//package tank2008A_v1_fla
Section 384
//pageWinscreen_229 (tank2008A_v1_fla.pageWinscreen_229)
package tank2008A_v1_fla {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import flash.media.*;
import FWG.*;
import flash.net.*;
import flash.filters.*;
import flash.utils.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class pageWinscreen_229 extends MovieClip {
public var front:MovieClip;
public var btnPa:BtnPa2;
public var btnPn:BtnPn;
public var scoreTxt:TextField;
public var heroData;
public function pageWinscreen_229(){
addFrameScript(62, frame63);
}
function frame63(){
stop();
front.mouseEnabled = false;
front.mouseChildren = false;
scoreTxt.text = ("Your Score:" + Global.main.score);
btnPa.onPress = function ():void{
heroData = Common.cloneObj(Global.main.gs.currentItem.heroData);
Global.main.gs.getDefaultItem();
Global.main.gs.currentItem.heroData = {headId:3, bodyId:heroData.bodyId, color:heroData.color};
Global.main.playAgain();
};
btnPn.onPress = function ():void{
Common.getURL("http://www.freeworldgroup.com/games6/gameindex/tank-2008-final-assault.htm");
};
}
}
}//package tank2008A_v1_fla
Section 385
//people_body_765 (tank2008A_v1_fla.people_body_765)
package tank2008A_v1_fla {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import flash.media.*;
import flash.net.*;
import flash.filters.*;
import flash.utils.*;
import flash.system.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class people_body_765 extends MovieClip {
public var flame:MovieClip;
public function people_body_765(){
addFrameScript(21, frame22, 43, frame44, 61, frame62, 64, frame65);
}
function frame65(){
gotoAndPlay("bombWalk");
this["people"].isFireing = false;
}
function frame22(){
gotoAndPlay("rocketWalk");
}
function frame44(){
gotoAndPlay("bombWalk");
}
function frame62(){
this["people"].throwBomb();
}
}
}//package tank2008A_v1_fla
Section 386
//robot_body_803 (tank2008A_v1_fla.robot_body_803)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class robot_body_803 extends MovieClip {
public var light_mc:MovieClip;
public var head_mc:MovieClip;
public var circle_mc:MovieClip;
}
}//package tank2008A_v1_fla
Section 387
//tank_doubleGun1_392 (tank2008A_v1_fla.tank_doubleGun1_392)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_doubleGun1_392 extends MovieClip {
public function tank_doubleGun1_392(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 388
//tank_doubleGun2_826 (tank2008A_v1_fla.tank_doubleGun2_826)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_doubleGun2_826 extends MovieClip {
public function tank_doubleGun2_826(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 389
//tank_doubleGun3_833 (tank2008A_v1_fla.tank_doubleGun3_833)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_doubleGun3_833 extends MovieClip {
public function tank_doubleGun3_833(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 390
//tank_doubleGun5_823 (tank2008A_v1_fla.tank_doubleGun5_823)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_doubleGun5_823 extends MovieClip {
public function tank_doubleGun5_823(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 391
//tank_fire_gun_flame_389 (tank2008A_v1_fla.tank_fire_gun_flame_389)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_fire_gun_flame_389 extends MovieClip {
public function tank_fire_gun_flame_389(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 392
//tank_gun1_200 (tank2008A_v1_fla.tank_gun1_200)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_gun1_200 extends MovieClip {
public function tank_gun1_200(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 393
//tank_gun2_828 (tank2008A_v1_fla.tank_gun2_828)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_gun2_828 extends MovieClip {
public function tank_gun2_828(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 394
//tank_gun3_831 (tank2008A_v1_fla.tank_gun3_831)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_gun3_831 extends MovieClip {
public function tank_gun3_831(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 395
//tank_gun5_821 (tank2008A_v1_fla.tank_gun5_821)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank_gun5_821 extends MovieClip {
public function tank_gun5_821(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 396
//tank2007_2_384 (tank2008A_v1_fla.tank2007_2_384)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_384 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 397
//tank2007_2_385 (tank2008A_v1_fla.tank2007_2_385)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_385 extends MovieClip {
public function tank2007_2_385(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 398
//tank2007_2_386 (tank2008A_v1_fla.tank2007_2_386)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_386 extends MovieClip {
public function tank2007_2_386(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 399
//tank2007_2_388 (tank2008A_v1_fla.tank2007_2_388)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_388 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 400
//tank2007_2_391 (tank2008A_v1_fla.tank2007_2_391)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_391 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 401
//tank2007_2_396 (tank2008A_v1_fla.tank2007_2_396)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_396 extends MovieClip {
public function tank2007_2_396(){
addFrameScript(0, frame1, 61, frame62, 121, frame122);
}
function frame1(){
stop();
}
function frame122(){
Boss2MaskShape(this.parent).hideFinish();
}
function frame62(){
stop();
Boss2MaskShape(this.parent).showFinish();
}
}
}//package tank2008A_v1_fla
Section 402
//tank2007_2_424 (tank2008A_v1_fla.tank2007_2_424)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_424 extends MovieClip {
public var flame:MovieClip;
public var gun:MovieClip;
}
}//package tank2008A_v1_fla
Section 403
//tank2007_2_545 (tank2008A_v1_fla.tank2007_2_545)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_545 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg1;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea1;
public var shapeArea:ShapeArea;
public var shadowArea:MovieClip;
public var chars:Chars1;
}
}//package tank2008A_v1_fla
Section 404
//tank2007_2_582 (tank2008A_v1_fla.tank2007_2_582)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_582 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg2;
public var bg:Bg;
public var mines:MovieClip;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea2;
public var shapeArea:ShapeArea;
public var topMc:TopMc2;
public var shadowArea:MovieClip;
public var chars:Chars2;
}
}//package tank2008A_v1_fla
Section 405
//tank2007_2_587 (tank2008A_v1_fla.tank2007_2_587)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_587 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg3;
public var bg:Bg;
public var mines:MovieClip;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea3;
public var shapeArea:ShapeArea;
public var topMc:TopMc3;
public var shadowArea:MovieClip;
public var chars:Chars3;
}
}//package tank2008A_v1_fla
Section 406
//tank2007_2_591 (tank2008A_v1_fla.tank2007_2_591)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_591 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg4;
public var bg:Bg;
public var mines:MovieClip;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea4;
public var shapeArea:ShapeArea;
public var topMc:TopMc4;
public var shadowArea:MovieClip;
public var chars:Chars4;
}
}//package tank2008A_v1_fla
Section 407
//tank2007_2_594 (tank2008A_v1_fla.tank2007_2_594)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_594 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg5;
public var bg:Bg;
public var mines:MovieClip;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea5;
public var shapeArea:ShapeArea;
public var topMc:TopMc5;
public var shadowArea:MovieClip;
public var chars:Chars5;
}
}//package tank2008A_v1_fla
Section 408
//tank2007_2_597 (tank2008A_v1_fla.tank2007_2_597)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_597 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg6;
public var bg:Bg;
public var mines:Mines6;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea6;
public var shapeArea:ShapeArea;
public var topMc:TopMc6;
public var shadowArea:MovieClip;
public var chars:Chars6;
}
}//package tank2008A_v1_fla
Section 409
//tank2007_2_606 (tank2008A_v1_fla.tank2007_2_606)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_606 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg7;
public var bg:Bg;
public var mines:Mines7;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea7;
public var shapeArea:ShapeArea;
public var topMc:TopMc7;
public var shadowArea:MovieClip;
public var chars:Chars7;
}
}//package tank2008A_v1_fla
Section 410
//tank2007_2_611 (tank2008A_v1_fla.tank2007_2_611)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_611 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg8;
public var bg:Bg;
public var mines:Mines8;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea8;
public var shapeArea:ShapeArea;
public var topMc:TopMc8;
public var shadowArea:MovieClip;
public var chars:Chars8;
}
}//package tank2008A_v1_fla
Section 411
//tank2007_2_615 (tank2008A_v1_fla.tank2007_2_615)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_615 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg9;
public var bg:Bg;
public var mines:Mines9;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea9;
public var shapeArea:ShapeArea;
public var topMc:TopMc9;
public var shadowArea:MovieClip;
public var chars:Chars9;
}
}//package tank2008A_v1_fla
Section 412
//tank2007_2_620 (tank2008A_v1_fla.tank2007_2_620)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_620 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg10;
public var bg:Bg;
public var mines:Mines10;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea10;
public var shapeArea:ShapeArea;
public var topMc:TopMc10;
public var shadowArea:MovieClip;
public var chars:Chars10;
}
}//package tank2008A_v1_fla
Section 413
//tank2007_2_624 (tank2008A_v1_fla.tank2007_2_624)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_624 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg11;
public var bg:Bg;
public var mines:Mines11;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea11;
public var shapeArea:ShapeArea;
public var topMc:TopMc11;
public var shadowArea:MovieClip;
public var chars:Chars11;
}
}//package tank2008A_v1_fla
Section 414
//tank2007_2_658 (tank2008A_v1_fla.tank2007_2_658)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_658 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg12;
public var bg:Bg;
public var mines:Mines12;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea12;
public var shapeArea:ShapeArea;
public var topMc:TopMc12;
public var shadowArea:MovieClip;
public var chars:Chars12;
}
}//package tank2008A_v1_fla
Section 415
//tank2007_2_662 (tank2008A_v1_fla.tank2007_2_662)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_662 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg13;
public var bg:Bg;
public var mines:Mines13;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea13;
public var shapeArea:ShapeArea;
public var topMc:TopMc13;
public var shadowArea:MovieClip;
public var chars:Chars13;
}
}//package tank2008A_v1_fla
Section 416
//tank2007_2_666 (tank2008A_v1_fla.tank2007_2_666)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_666 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg14;
public var bg:Bg;
public var mines:Mines14;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea14;
public var shapeArea:ShapeArea;
public var topMc:TopMc14;
public var shadowArea:MovieClip;
public var chars:Chars14;
}
}//package tank2008A_v1_fla
Section 417
//tank2007_2_670 (tank2008A_v1_fla.tank2007_2_670)
package tank2008A_v1_fla {
import flash.display.*;
import tank2007_2.*;
public dynamic class tank2007_2_670 extends MovieClip {
public var topEffectArea:MovieClip;
public var mapMc:Bg15;
public var bg:Bg;
public var mines:Mines15;
public var topArea:MovieClip;
public var topChars:TopChars;
public var bulletArea:MovieClip;
public var effectArea:MovieClip;
public var houseArea:HouseArea15;
public var shapeArea:ShapeArea;
public var topMc:TopMc15;
public var shadowArea:MovieClip;
public var chars:Chars15;
}
}//package tank2008A_v1_fla
Section 418
//tank2007_2_810 (tank2008A_v1_fla.tank2007_2_810)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tank2007_2_810 extends MovieClip {
public function tank2007_2_810(){
addFrameScript(20, frame21);
}
function frame21(){
stop();
this.parent.parent.removeChild(this.parent);
}
}
}//package tank2008A_v1_fla
Section 419
//tips_mc_146 (tank2008A_v1_fla.tips_mc_146)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class tips_mc_146 extends MovieClip {
public function tips_mc_146(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package tank2008A_v1_fla
Section 420
//ui_96 (tank2008A_v1_fla.ui_96)
package tank2008A_v1_fla {
import flash.display.*;
import ui.*;
public dynamic class ui_96 extends MovieClip {
public var num0:Letter;
public var num1:Letter;
public var num3:Letter;
public var num6:Letter;
public var num7:Letter;
public var num4:Letter;
public var num5:Letter;
public var num2:Letter;
}
}//package tank2008A_v1_fla
Section 421
//waveCrack_body_880 (tank2008A_v1_fla.waveCrack_body_880)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class waveCrack_body_880 extends MovieClip {
public function waveCrack_body_880(){
addFrameScript(20, frame21);
}
function frame21(){
stop();
this.parent.parent.removeChild(this.parent);
}
}
}//package tank2008A_v1_fla
Section 422
//versionWarning_6 (tank2008A_v1_fla.versionWarning_6)
package tank2008A_v1_fla {
import flash.display.*;
public dynamic class versionWarning_6 extends MovieClip {
public function versionWarning_6(){
addFrameScript(0, frame1);
}
function frame1(){
this.visible = false;
}
}
}//package tank2008A_v1_fla
Section 423
//Alert (ui.Alert)
package ui {
import flash.text.*;
import flash.events.*;
import FWG.*;
public class Alert extends AlphaFadeSp {
public var msgTxt:TextField;
public var btnNo:BtnNo;
public var onCallBack:Function;
private var flag:Boolean;
public var btnYes:BtnYes;
public static var alert:Alert;
public function Alert(){
super();
alert = this;
alert.hide();
btnYes.onPress = function ():void{
callBack(true);
};
btnNo.onPress = function ():void{
callBack(false);
};
}
public function set msg(_arg1:String):void{
msgTxt.text = _arg1;
}
override public function removed(_arg1:Event=null):void{
super.removed();
if (alert == this){
alert = null;
};
onCallBack = null;
}
public function callBack(_arg1:Boolean):void{
var _flag = _arg1;
this.mouseChildren = false;
flag = _flag;
this.fadeHide();
this.onHide = function ():void{
onCallBack(flag);
};
}
public function get msg():String{
return (msgTxt.text);
}
public static function show(_arg1:String, _arg2:Function):void{
if (alert == null){
_arg2(true);
} else {
alert.msg = _arg1;
alert.onCallBack = _arg2;
alert.mouseChildren = true;
alert.fadeShow();
};
}
}
}//package ui
Section 424
//Alt (ui.Alt)
package ui {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import FWG.*;
import basic.*;
import flash.utils.*;
public class Alt extends Sp {
public var msgTxt:TextField;
public var bg:MovieClip;
public static var alt:Alt;
private static var timeoutId:int = -1;
public function Alt(){
Alt.alt = this;
this.visible = false;
this.mouseEnabled = false;
this.mouseChildren = false;
if ((msgTxt is TextField)){
TextField(msgTxt).autoSize = "center";
};
}
private function show_(_arg1:String, _arg2:Number=NaN, _arg3:Number=NaN):void{
var _local4:Rectangle;
this.visible = true;
msg = _arg1;
if ((msgTxt is TextField)){
bg.width = (msgTxt.textWidth + 10);
} else {
bg.width = (msgTxt.width + 10);
};
if (isNaN(_arg2)){
this.x = this.parent.mouseX;
} else {
this.x = _arg2;
};
if (isNaN(_arg3)){
this.y = this.parent.mouseY;
} else {
this.y = _arg3;
};
_local4 = bg.getBounds(root);
if (_local4.x < 0){
this.x = ((_local4.width / 2) + 5);
} else {
if ((_local4.x + _local4.width) > Global.main.stageWid){
this.x = ((Global.main.stageWid - (_local4.width / 2)) - 5);
};
};
if (_local4.y < 0){
this.y = ((_local4.height / 2) + 5);
} else {
if ((_local4.y + _local4.height) > Global.main.stageHei){
this.y = ((Global.main.stageHei - (_local4.height / 2)) - 5);
};
};
}
public function set msg(_arg1:String):void{
msgTxt.text = _arg1;
}
private function hide():void{
this.visible = false;
}
public function get msg():String{
return (msgTxt.text);
}
public static function hideDelay(_arg1:int):void{
clearTimeout(timeoutId);
timeoutId = setTimeout(alt.hide, _arg1);
}
public static function hide():void{
Alt.alt.hide();
}
public static function show(_arg1:String, _arg2:Number=NaN, _arg3:Number=NaN):void{
Alt.alt.show_(_arg1, _arg2, _arg3);
}
}
}//package ui
Section 425
//BasicPopUp (ui.BasicPopUp)
package ui {
import flash.display.*;
import flash.text.*;
import basic.*;
import flash.utils.*;
public class BasicPopUp extends Sp {
private var timeoutId:int;
public function BasicPopUp(){
this.visible = false;
}
public function hide():void{
this.visible = false;
}
public function hideDelay(_arg1:int):void{
timeoutId = setTimeout(hide, _arg1);
}
public function show(_arg1, _arg2:String):void{
clearTimeout(timeoutId);
this.visible = true;
this["msgTxt"].text = _arg2;
}
}
}//package ui
Section 426
//Clock (ui.Clock)
package ui {
import flash.events.*;
import FWG.*;
import flash.utils.*;
public class Clock extends RunSp {
public var onTimeUp:Function;
private var totalTime:Number;
private var t0:Number;
public var num0:Letter;
public var num1:Letter;
public var num3:Letter;
public var num2:Letter;
private var t:Number;
private var time:Number;
public function Clock(){
super();
onTimeUp = function (){
};
runAble = false;
}
public function stop():void{
delRun();
}
public function init(_arg1:int):void{
time = (totalTime = _arg1);
update();
}
private function numToTime(_arg1:int):String{
var _local2:int;
var _local3:int;
var _local4:String;
_local2 = (_arg1 % 60);
_local3 = ((_arg1 - _local2) / 60);
_local4 = "";
if (_local3 < 10){
_local4 = (_local4 + "0");
};
_local4 = (_local4 + (_local3 + ":"));
if (_local2 < 10){
_local4 = (_local4 + "0");
};
_local4 = (_local4 + _local2);
return (_local4);
}
override public function removed(_arg1:Event=null):void{
super.removed();
onTimeUp = null;
}
public function start():void{
runAble = true;
t0 = getTimer();
addRun();
}
override public function run():void{
var _local1:Number;
t = getTimer();
_local1 = (t - t0);
if (_local1 > 100){
_local1 = 0;
t0 = getTimer();
};
time = (time - (_local1 / 1000));
t0 = t;
update();
if (time <= 0){
onTimeUp();
stop();
};
}
private function update():void{
var _local1:String;
_local1 = numToTime(time);
num0.text = _local1.charAt(0);
num1.text = _local1.charAt(1);
num2.text = _local1.charAt(3);
num3.text = _local1.charAt(4);
}
}
}//package ui
Section 427
//ColorPad (ui.ColorPad)
package ui {
import flash.display.*;
import flash.events.*;
public class ColorPad extends SBtn {
public var onCancle:Function;
private var bmd:TestBmd;
public var onSelect:Function;
public var onConfirm:Function;
public function ColorPad(){
super();
bmd = new TestBmd(this.width, this.height, true, 0);
bmd.draw(this);
onRollOver = function ():void{
Global.addEvent(this, stage, Event.ENTER_FRAME, select);
};
onRollOut = function ():void{
Global.removeEvent(stage, Event.ENTER_FRAME, select);
onCancle();
};
onPress = function ():void{
onConfirm(bmd.getPixel32(this.mouseX, this.mouseY));
};
onSelect = function (_arg1:int):void{
};
onConfirm = function (_arg1:int):void{
};
onCancle = function ():void{
};
}
private function select(_arg1:Event):void{
onSelect(bmd.getPixel32(this.mouseX, this.mouseY));
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(stage, Event.ENTER_FRAME, select);
super.removed();
onSelect = null;
onConfirm = null;
onCancle = null;
bmd.dispose();
bmd = null;
}
}
}//package ui
Section 428
//Letter (ui.Letter)
package ui {
import basic.*;
public class Letter extends Mc {
private var __text;
public function Letter(){
text = 0;
}
public function get text(){
return (__text);
}
public function set text(_arg1):void{
__text = _arg1;
this.gotoAndStop(("f" + __text));
}
}
}//package ui
Section 429
//MsgBox (ui.MsgBox)
package ui {
import flash.text.*;
import flash.events.*;
import FWG.*;
public class MsgBox extends AlphaFadeSp {
public var msgTxt:TextField;
public var btnOk:BtnOK;
public var onCallBack:Function;
public static var msgBox:MsgBox;
public function MsgBox(){
super();
msgBox = this;
msgBox.hide();
btnOk.onPress = function ():void{
callBack();
};
}
public function set msg(_arg1:String):void{
msgTxt.text = _arg1;
}
override public function removed(_arg1:Event=null):void{
super.removed();
if (msgBox == this){
msgBox = null;
};
onCallBack = null;
}
public function callBack():void{
this.mouseChildren = false;
this.fadeHide();
this.onHide = function ():void{
onCallBack();
};
}
public function get msg():String{
return (msgTxt.text);
}
public static function show(_arg1:String, _arg2:Function):void{
if (msgBox == null){
_arg2();
} else {
msgBox.msg = _arg1;
msgBox.onCallBack = _arg2;
msgBox.mouseChildren = true;
msgBox.fadeShow();
};
}
}
}//package ui
Section 430
//Num (ui.Num)
package ui {
import basic.*;
public class Num extends Mc {
public function Num(){
value = 0;
}
public function get value():int{
return ((this.currentFrame - 1));
}
public function set value(_arg1:int):void{
this.gotoAndStop((_arg1 + 1));
}
}
}//package ui
Section 431
//SBtn (ui.SBtn)
package ui {
import flash.display.*;
import flash.events.*;
import FWG.*;
import basic.*;
import flash.filters.*;
public class SBtn extends Sp {
private var greyFilters:Array;
private var __onErrorPress:Function;
private var __selectAble:Boolean;
private var filters0:Array;
public var onPress:Function;
public var onRollOut:Function;
public var onRollOver:Function;
private static const greyFilter:ColorMatrixFilter = new ColorMatrixFilter([0.15, 0.295, 0.055, 0, 0, 0.15, 0.295, 0.055, 0, 0, 0.15, 0.295, 0.055, 0, 0, 0, 0, 0, 1, 0]);
public function SBtn(){
super();
onRollOver = function ():void{
};
onRollOut = function ():void{
};
onPress = function ():void{
};
Global.addEvent(this, this, MouseEvent.MOUSE_OVER, rollOver);
Global.addEvent(this, this, MouseEvent.MOUSE_OUT, rollOut);
Global.addEvent(this, this, MouseEvent.MOUSE_DOWN, press);
filters0 = this.filters.slice();
greyFilters = this.filters.concat([greyFilter]);
__selectAble = true;
}
public function set selectAble(_arg1:Boolean):void{
__selectAble = _arg1;
if (__selectAble){
this.mouseEnabled = true;
this.mouseChildren = true;
this.filters = filters0;
} else {
if (onErrorPress == null){
this.mouseEnabled = false;
};
this.mouseChildren = false;
this.filters = greyFilters;
};
}
public function press(_arg1:MouseEvent):void{
if (selectAble){
onPress(_arg1);
} else {
if (onErrorPress != null){
onErrorPress();
};
};
}
override public function removed(_arg1:Event=null):void{
Global.removeEvent(this, MouseEvent.MOUSE_OVER, rollOver);
Global.removeEvent(this, MouseEvent.MOUSE_OUT, rollOut);
Global.removeEvent(this, MouseEvent.MOUSE_DOWN, press);
super.removed();
onRollOver = null;
onRollOut = null;
onPress = null;
filters0 = null;
greyFilters = null;
onErrorPress = null;
}
public function get onErrorPress():Function{
return (__onErrorPress);
}
public function get selectAble():Boolean{
return (__selectAble);
}
public function rollOut(_arg1:MouseEvent):void{
if (selectAble){
onRollOut(_arg1);
if (Global.userMouse != null){
Global.userMouse.rollOut();
};
};
}
public function set onErrorPress(_arg1:Function):void{
__onErrorPress = _arg1;
this.mouseEnabled = true;
}
public function rollOver(_arg1:MouseEvent):void{
if (selectAble){
onRollOver(_arg1);
if (Global.userMouse != null){
Global.userMouse.rollOver();
};
};
}
}
}//package ui
Section 432
//UserMouse (ui.UserMouse)
package ui {
import flash.events.*;
import basic.*;
import flash.ui.*;
public class UserMouse extends Mc {
public function UserMouse(){
Global.userMouse = this;
Mouse.hide();
Global.addEvent(this, stage, Event.ENTER_FRAME, run);
Global.addEvent(this, stage, MouseEvent.MOUSE_DOWN, press);
Global.addEvent(this, stage, MouseEvent.MOUSE_UP, release);
this.mouseEnabled = false;
this.mouseChildren = false;
this.gotoAndStop("rollOut");
}
private function release(_arg1:Event):void{
this.gotoAndStop("rollOut");
}
private function press(_arg1:Event):void{
this.gotoAndStop("press");
}
override public function removed(_arg1:Event=null):void{
Global.userMouse = null;
Global.removeEvent(stage, Event.ENTER_FRAME, run);
Global.removeEvent(stage, MouseEvent.MOUSE_DOWN, press);
Global.removeEvent(stage, MouseEvent.MOUSE_UP, release);
super.removed();
}
public function hide():void{
Mouse.show();
this.visible = false;
}
public function rollOut():void{
this.gotoAndStop("rollOut");
}
private function run(_arg1:Event):void{
this.x = this.parent.mouseX;
this.y = this.parent.mouseY;
}
public function rollOver():void{
this.gotoAndStop("rollOver");
}
public function show():void{
Mouse.hide();
this.visible = true;
}
}
}//package ui
Section 433
//Word (ui.Word)
package ui {
import flash.display.*;
import flash.geom.*;
import basic.*;
public class Word extends Sp {
private var __text;
private var lettersArr:Array;
private var __align:String;
private var total:int;
public var textWidth:Number;
public var body:MovieClip;
public function Word(){
lettersArr = Common.getAllChildren(body);
total = lettersArr.length;
align = "left";
text = 0;
}
public function get align():String{
return (__align);
}
public function set align(_arg1:String):void{
__align = _arg1;
switch (__align){
case "left":
body.x = 0;
break;
case "right":
body.x = -(textWidth);
break;
default:
body.x = (-(textWidth) / 2);
break;
};
}
public function get text(){
return (__text);
}
public function set text(_arg1):void{
var _local2:String;
var _local3:int;
var _local4:int;
var _local5:*;
__text = _arg1;
_local2 = String(__text);
_local4 = _local2.length;
textWidth = 0;
_local3 = 0;
while (_local3 < _local4) {
_local5 = lettersArr[_local3];
_local5.text = _local2.charAt(_local3);
_local5.visible = true;
textWidth = (textWidth + (_local5.width + 1));
_local5.x = (textWidth - (_local5.width / 2));
_local3++;
};
align = align;
while (_local3 < total) {
var _temp1 = _local3;
_local3 = (_local3 + 1);
_local5 = lettersArr[_temp1];
_local5.text = "";
_local5.x = 0;
_local5.visible = false;
};
}
}
}//package ui
Section 434
//Common (Common)
package {
import flash.display.*;
import flash.geom.*;
import flash.text.*;
import flash.events.*;
import flash.net.*;
import flash.filters.*;
import flash.utils.*;
public class Common {
public static const p0:Point = new Point();
public static const bf:BlurFilter = new BlurFilter();
public static const a2r:Number = (180 / Math.PI);
public static function everyChild(_arg1:DisplayObjectContainer, _arg2:Function, _arg3:Boolean=false):Boolean{
return (getAllChildren(_arg1, _arg3).every(_arg2));
}
public static function random(_arg1:int):int{
return (int((Math.random() * _arg1)));
}
public static function stopAll(_arg1):void{
var mc = _arg1;
Common.forEachChild(mc, function (_arg1, _arg2:int, _arg3:Array):void{
if ((_arg1 is MovieClip)){
MovieClip(_arg1).stop();
};
}, true);
}
public static function collectChildren(_arg1:DisplayObjectContainer, _arg2:Function, _arg3:Boolean=false):Array{
var _local4:int;
var _local5:Array;
var _local6:Array;
var _local7:*;
_local4 = 0;
_local5 = getAllChildren(_arg1, _arg3);
_local6 = new Array();
for each (_local7 in _local5) {
if (_arg2(_local7, _local4, _local5)){
_local6.push(_local7);
};
};
return (_local6);
}
public static function getAllChildren(_arg1:DisplayObjectContainer, _arg2:Boolean=false):Array{
var _local3:Array;
var _local4:int;
var _local5:int;
var _local6:*;
_local3 = new Array();
_local4 = _arg1.numChildren;
_local5 = 0;
while (_local5 < _local4) {
_local6 = _arg1.getChildAt(_local5);
if (_local6 == null){
};
_local3.push(_local6);
if (_arg2){
if ((_local6 is DisplayObjectContainer)){
_local3 = _local3.concat(getAllChildren(_local6, true));
};
};
_local5++;
};
return (_local3);
}
public static function setRGB(_arg1:DisplayObject, _arg2:int):void{
var _local3:ColorTransform;
_local3 = _arg1.transform.colorTransform;
_local3.color = _arg2;
_arg1.transform.colorTransform = _local3;
}
public static function bmdHitTest(_arg1:DisplayObject, _arg2:DisplayObject):Boolean{
var _local3:TestBmd;
_local3 = Common.getContainBmd(_arg1, _arg2);
if (_local3.getColorBoundsRect(4278190080, 0, false).width > 0){
_local3.dispose();
return (true);
};
_local3.dispose();
return (false);
}
public static function getAllChildrenByOrder(_arg1:DisplayObjectContainer, _arg2:String, _arg3:Boolean=false):Array{
var _local4:Array;
_local4 = getAllChildren(_arg1, _arg3);
_local4.sortOn(_arg2, Array.NUMERIC);
return (_local4);
}
public static function disorder(_arg1:Array):void{
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:*;
_local2 = _arg1.length;
_local3 = 0;
while (_local3 < _local2) {
_local4 = random(_local2);
_local5 = _arg1[_local3];
_arg1[_local3] = _arg1[_local4];
_arg1[_local4] = _local5;
_local3++;
};
}
public static function deepRemove(_arg1):void{
var _local2:*;
if (_arg1 == null){
return;
};
if ((_arg1 is DisplayObjectContainer)){
for each (_local2 in getAllChildren(_arg1)) {
deepRemove(_local2);
};
};
if (_arg1.parent != null){
if ((_arg1.name in _arg1.parent)){
_arg1.parent[_arg1.name] = null;
};
_arg1.parent.removeChild(_arg1);
};
}
public static function forEachChild(_arg1:DisplayObjectContainer, _arg2:Function, _arg3:Boolean=false):void{
getAllChildren(_arg1, _arg3).forEach(_arg2);
}
public static function selectTxt(_arg1:TextField):void{
_arg1.stage.focus = _arg1;
_arg1.setSelection(0, _arg1.text.length);
}
public static function getSum(_arg1:Array):Number{
var _local2:Number;
var _local3:Number;
_local2 = 0;
for each (_local3 in _arg1) {
_local2 = (_local2 + _local3);
};
return (_local2);
}
public static function hitDotsHit(_arg1, _arg2):Boolean{
var _local3:int;
var _local4:int;
var _local5:Point;
_local3 = _arg1.numChildren;
_local4 = 0;
while (_local4 < _local3) {
_local5 = _arg1.getChildAt(_local4).localToGlobal(p0);
if (_arg2.hitTestPoint(_local5.x, _local5.y, true)){
return (true);
};
_local4++;
};
return (false);
}
public static function randomLine(_arg1:Sprite, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{
var _local7:Point;
var _local8:Number;
var _local9:Number;
var _local10:Graphics;
var _local11:int;
_local7 = new Point((_arg4 - _arg2), (_arg5 - _arg3));
_local8 = _local7.length;
_local9 = Math.round((_local8 / _arg6));
_local7.x = (_local7.x / _local9);
_local7.y = (_local7.y / _local9);
_local10 = _arg1.graphics;
_local10.moveTo(_arg2, _arg3);
_local11 = 1;
while (_local11 < _local9) {
_local10.lineTo(((_arg2 + (_local7.x * _local11)) + ((Math.random() - 0.5) * _arg6)), ((_arg3 + (_local7.y * _local11)) + ((Math.random() - 0.5) * _arg6)));
_local11++;
};
_local10.lineTo(_arg4, _arg5);
}
public static function removeLeaves(_arg1):void{
}
public static function cloneObj(_arg1:Object):Object{
var _local2:ByteArray;
_local2 = new ByteArray();
_local2.writeObject(_arg1);
_local2.position = 0;
return (_local2.readObject());
}
public static function fitRect(_arg1:MovieClip, _arg2:Rectangle):void{
var _local3:Rectangle;
_arg1.width = _arg2.width;
_arg1.height = _arg2.height;
_local3 = _arg1.getBounds(_arg1.parent);
_arg1.x = (_arg1.x + (_arg2.x - _local3.x));
_arg1.y = (_arg1.y + (_arg2.y - _local3.y));
}
public static function setFirstLetterUpperCase(_arg1:String):String{
return ((_arg1.charAt(0).toUpperCase() + _arg1.substr(1, _arg1.length)));
}
public static function someChild(_arg1:DisplayObjectContainer, _arg2:Function, _arg3:Boolean=false):Boolean{
return (getAllChildren(_arg1, _arg3).some(_arg2));
}
public static function arrToStr(_arg1):String{
var _local2:String;
var _local3:*;
if ((_arg1 is Array)){
_local2 = "[";
for each (_local3 in _arg1) {
_local2 = (_local2 + (arrToStr(_local3) + ","));
};
return ((_local2.substr(0, (_local2.length - 1)) + "]"));
};
return (_arg1);
}
public static function getContainColor(_arg1:DisplayObject, _arg2:DisplayObject):int{
var _local3:Rectangle;
var _local4:TestBmd;
var _local5:Matrix;
var _local6:Matrix;
var _local7:Matrix;
var _local8:int;
_local3 = _arg2.getBounds(_arg2);
_local4 = new TestBmd(1, 1, true, 0);
_local5 = _arg1.transform.concatenatedMatrix;
_local6 = new Matrix(1, 0, 0, 1, _local3.x, _local3.y);
_local7 = _arg2.transform.concatenatedMatrix;
_local6.concat(new Matrix(_local3.width, 0, 0, _local3.height, _local3.x, _local3.y));
_local6.concat(_local7);
_local6.invert();
_local5.concat(_local6);
_local4.draw(_arg1, _local5);
_local8 = _local4.getPixel(0, 0);
_local4.dispose();
return (_local8);
}
public static function randomPlay(_arg1:MovieClip):void{
var _local2:int;
var _local3:int;
var _local4:*;
_arg1.gotoAndPlay((Common.random(_arg1.totalFrames) + 1));
_local2 = _arg1.numChildren;
_local3 = 0;
while (_local3 < _local2) {
_local4 = _arg1.getChildAt(_local3);
if ((_local4 is MovieClip)){
randomPlay(_local4);
};
_local3++;
};
}
public static function getVars(_arg1):Array{
var instanceInfo:XML;
var properties:XMLList;
var vars:Array;
var propertyInfo:XML;
var obj = _arg1;
instanceInfo = describeType(obj);
properties = (instanceInfo..accessor.(@access != "writeonly") + instanceInfo..variable);
vars = new Array();
for each (propertyInfo in properties) {
vars.push(propertyInfo.@name);
};
return (vars);
}
public static function moveTo(_arg1:DisplayObject, _arg2:DisplayObjectContainer):void{
var _local3:Matrix;
var _local4:Matrix;
_local3 = _arg1.transform.concatenatedMatrix;
_local4 = _arg2.transform.concatenatedMatrix;
_local4.invert();
_local3.concat(_local4);
_arg1.transform.matrix = _local3;
_arg2.addChild(_arg1);
}
public static function checkDisplayObjects(_arg1:DisplayObjectContainer):void{
var _local2:Array;
var _local3:int;
var _local4:String;
var _local5:*;
_local2 = getVars(_arg1);
_local3 = 0;
for each (_local4 in _local2) {
_local5 = _arg1[_local4];
if ((_local5 is DisplayObject)){
_local3++;
};
};
}
public static function randomStop(_arg1:MovieClip, _arg2:int=0):void{
if (_arg2 <= 0){
_arg2 = _arg1.totalFrames;
};
_arg1.gotoAndStop((Common.random(_arg2) + 1));
}
public static function setTheSame(_arg1, _arg2):void{
_arg1.x = _arg2.x;
_arg1.y = _arg2.y;
_arg1.rotation = _arg2.rotation;
_arg1.scaleX = _arg2.scaleX;
_arg1.scaleY = _arg2.scaleY;
}
public static function getRanArr(_arg1:int, _arg2:Array):Array{
var _local3:Array;
var _local4:Number;
var _local5:int;
var _local6:int;
var _local7:int;
_local3 = _arg2.slice();
_local4 = (_arg1 / getSum(_local3));
_local5 = _local3.length;
_local6 = 0;
while (_local6 < _local5) {
_local3[_local6] = Math.round((_local3[_local6] * _local4));
_local6++;
};
while (getSum(_local3) > _arg1) {
_local7 = random(_local5);
if (_local3[_local7] > 0){
var _local8 = _local3;
var _local9 = _local7;
var _local10 = (_local8[_local9] - 1);
_local8[_local9] = _local10;
};
};
while (getSum(_local3) < _arg1) {
_local8 = _local3;
_local9 = random(_local5);
_local10 = (_local8[_local9] + 1);
_local8[_local9] = _local10;
};
return (_local3);
}
public static function getURL(_arg1:String):void{
navigateToURL(new URLRequest(_arg1), "_blank");
}
public static function getContainBmd(_arg1:DisplayObject, _arg2:DisplayObject):TestBmd{
return (getRectContainBmd(_arg1, _arg2, _arg2.getBounds(_arg2)));
}
public static function setRGBOffset(_arg1:DisplayObject, _arg2:int, _arg3:int=1):void{
var _local4:ColorTransform;
_local4 = _arg1.transform.colorTransform;
_local4.redOffset = (((_arg2 >> 16) & 0xFF) - (0xFF * _arg3));
_local4.greenOffset = (((_arg2 >> 8) & 0xFF) - (0xFF * _arg3));
_local4.blueOffset = ((_arg2 & 0xFF) - (0xFF * _arg3));
_arg1.transform.colorTransform = _local4;
}
public static function getRectContainBmd(_arg1:DisplayObject, _arg2:DisplayObject, _arg3:Rectangle):TestBmd{
var _local4:TestBmd;
var _local5:Matrix;
var _local6:Matrix;
var _local7:Matrix;
_local4 = new TestBmd(_arg3.width, _arg3.height, true, 0);
_local5 = _arg1.transform.concatenatedMatrix;
_local6 = new Matrix(1, 0, 0, 1, _arg3.x, _arg3.y);
_local7 = _arg2.transform.concatenatedMatrix;
_local6.concat(_local7);
_local6.invert();
_local5.concat(_local6);
_local4.draw(_arg1, _local5);
return (_local4);
}
}
}//package
Section 435
//Global (Global)
package {
import flash.display.*;
import FWG.*;
import tank2007_2.*;
public class Global {
public static var main;
public static var gamePad;
public static var mainContainer;
public static var totalStageNum:int = 5;
public static var warningBox:WarningBox;
public static var preLoader:PreLoader;
public static var savePad;
public static var userMouse;
public static var gameInterface:Object = new Object();
private static var bmdArr:Array = new Array();
private static var objArr:Array = new Array();
private static var mcArr:Array = new Array();
public static var fadeEffect;
private static var eventArr:Array = new Array();
public static var game;
public static var pause:Boolean;
public static function delObj(_arg1):void{
var _local2:int;
var _local3:*;
_local2 = 0;
for each (_local3 in objArr) {
if (_local3 == _arg1){
objArr.splice(_local2, 1);
return;
};
_local2++;
};
}
public static function removeEvent(_arg1, _arg2:String, _arg3:Function):void{
var _local4:int;
var _local5:Array;
_arg1.removeEventListener(_arg2, _arg3);
_local4 = 0;
for each (_local5 in eventArr) {
if ((((((_local5[0] == _arg1)) && ((_local5[1] == _arg2)))) && ((_local5[2] == _arg3)))){
eventArr.splice(_local4, 1);
return;
};
_local4++;
};
}
public static function outputBmds():void{
}
public static function addEvent(_arg1, _arg2, _arg3:String, _arg4:Function):void{
_arg2.addEventListener(_arg3, _arg4, false, 0, true);
eventArr.push([_arg2, _arg3, _arg4, String(_arg1)]);
}
public static function delMc(_arg1):void{
var _local2:int;
var _local3:*;
_local2 = 0;
for each (_local3 in mcArr) {
if (_local3 == _arg1){
mcArr.splice(_local2, 1);
return;
};
_local2++;
};
}
public static function outputMcs():void{
}
public static function addBmd(_arg1:TestBmd):TestBmd{
bmdArr.push(_arg1);
return (_arg1);
}
public static function outputAll():void{
outputMcs();
outputObjs();
outputBmds();
outputEvents();
}
public static function addMc(_arg1):void{
mcArr.push(_arg1);
}
public static function delBmd(_arg1:TestBmd):void{
var _local2:int;
var _local3:*;
_local2 = 0;
for each (_local3 in bmdArr) {
if (_local3 == _arg1){
bmdArr.splice(_local2, 1);
return;
};
_local2++;
};
}
public static function addObj(_arg1):void{
objArr.push(_arg1);
}
public static function outputEvents():void{
var _local1:Array;
for each (_local1 in eventArr) {
};
}
public static function outputObjs():void{
}
}
}//package
Section 436
//SndBg (SndBg)
package {
import flash.media.*;
public dynamic class SndBg extends Sound {
}
}//package
Section 437
//SndBullet (SndBullet)
package {
import flash.media.*;
public dynamic class SndBullet extends Sound {
}
}//package
Section 438
//SndCanister (SndCanister)
package {
import flash.media.*;
public dynamic class SndCanister extends Sound {
}
}//package
Section 439
//SndCannon (SndCannon)
package {
import flash.media.*;
public dynamic class SndCannon extends Sound {
}
}//package
Section 440
//SndCrashMissile (SndCrashMissile)
package {
import flash.media.*;
public dynamic class SndCrashMissile extends Sound {
}
}//package
Section 441
//SndEShock (SndEShock)
package {
import flash.media.*;
public dynamic class SndEShock extends Sound {
}
}//package
Section 442
//SndExp (SndExp)
package {
import flash.media.*;
public dynamic class SndExp extends Sound {
}
}//package
Section 443
//SndExpPeople (SndExpPeople)
package {
import flash.media.*;
public dynamic class SndExpPeople extends Sound {
}
}//package
Section 444
//SndFireBurner (SndFireBurner)
package {
import flash.media.*;
public dynamic class SndFireBurner extends Sound {
}
}//package
Section 445
//SndHeatSeeker (SndHeatSeeker)
package {
import flash.media.*;
public dynamic class SndHeatSeeker extends Sound {
}
}//package
Section 446
//SndHit (SndHit)
package {
import flash.media.*;
public dynamic class SndHit extends Sound {
}
}//package
Section 447
//SndMine (SndMine)
package {
import flash.media.*;
public dynamic class SndMine extends Sound {
}
}//package
Section 448
//SndPlane1 (SndPlane1)
package {
import flash.media.*;
public dynamic class SndPlane1 extends Sound {
}
}//package
Section 449
//SndPlane2 (SndPlane2)
package {
import flash.media.*;
public dynamic class SndPlane2 extends Sound {
}
}//package
Section 450
//SndPowerUp (SndPowerUp)
package {
import flash.media.*;
public dynamic class SndPowerUp extends Sound {
}
}//package
Section 451
//SndPress (SndPress)
package {
import flash.media.*;
public dynamic class SndPress extends Sound {
}
}//package
Section 452
//SndRollOver (SndRollOver)
package {
import flash.media.*;
public dynamic class SndRollOver extends Sound {
}
}//package
Section 453
//SndWaveCrack (SndWaveCrack)
package {
import flash.media.*;
public dynamic class SndWaveCrack extends Sound {
}
}//package
Section 454
//TestBar (TestBar)
package {
import flash.display.*;
import flash.text.*;
import flash.system.*;
public dynamic class TestBar extends MovieClip {
public var osTxt:TextField;
public var screenResolutionTxt:TextField;
public var versionTxt:TextField;
public var playerTypeTxt:TextField;
public var languageTxt:TextField;
public function TestBar(){
addFrameScript(0, frame1);
}
function frame1(){
versionTxt.text = Capabilities.version;
osTxt.text = Capabilities.os;
playerTypeTxt.text = Capabilities.playerType;
languageTxt.text = Capabilities.language;
screenResolutionTxt.text = ((Capabilities.screenResolutionX + "*") + Capabilities.screenResolutionY);
}
}
}//package
Section 455
//TestBmd (TestBmd)
package {
import flash.display.*;
public class TestBmd extends BitmapData {
public function TestBmd(_arg1:Number, _arg2:Number, _arg3:Boolean=true, _arg4:uint=4294967295){
super(_arg1, _arg2, _arg3, _arg4);
Global.addBmd(this);
}
override public function dispose():void{
super.dispose();
Global.delBmd(this);
}
}
}//package