Section 1
//AlarmClock (GREENHERMIT.GHDurationControl.AlarmClock)
package GREENHERMIT.GHDurationControl {
public class AlarmClock extends TimerBase {
public var timecount:Number;
public var stoptimer:Boolean;
public var timearray:Object;
public var getupfn:Function;
public function AlarmClock(_arg1:Function, _arg2:Array){
this.getupfn = _arg1;
this.timearray = _arg2;
timecount = 0;
stoptimer = false;
}
public function stop(){
stoptimer = true;
}
public function resume(){
stoptimer = false;
}
override public function process(){
if (stoptimer){
return;
};
if (timearray[timecount] != null){
getupfn(timearray[timecount], objectduration);
};
timecount++;
}
}
}//package GREENHERMIT.GHDurationControl
Section 2
//Duration (GREENHERMIT.GHDurationControl.Duration)
package GREENHERMIT.GHDurationControl {
public class Duration extends TimerBase {
public var durationEvent:Function;
public var countdown:Number;
public var duration:Number;
public function Duration(_arg1:Number, _arg2:Function){
this.duration = _arg1;
this.countdown = _arg1;
this.durationEvent = _arg2;
}
override public function process(){
if (this.duration <= 0){
return;
};
if (this.countdown > 0){
this.countdown--;
if (this.countdown == 0){
if (durationEvent != null){
durationEvent(objectduration);
};
};
};
}
}
}//package GREENHERMIT.GHDurationControl
Section 3
//TimerBase (GREENHERMIT.GHDurationControl.TimerBase)
package GREENHERMIT.GHDurationControl {
public class TimerBase {
public var objectduration:Object;
public function process(){
}
}
}//package GREENHERMIT.GHDurationControl
Section 4
//GunDesc (GREENHERMIT.GHGun.GunDesc)
package GREENHERMIT.GHGun {
public class GunDesc {
public var gun:String;
public var shootEvent:Function;
public var cooldowncount:Number;
public var reloadEvent:Function;
public var fullEvent:Function;
public var workEvent:Function;
public var mag:Number;
public var reloadcount:Number;
public var shootClass:Object;
public var savefqc:Number;
public var frequency:Number;
public var reload:Number;
public var magcount:Number;
public var cooldown:Number;
public var frequencycount:Number;
public var gageframe:Number;
public var pause:Boolean;
public var currentmag:Number;
public function GunDesc(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number=0){
this.mag = _arg2;
this.currentmag = _arg2;
this.magcount = _arg2;
this.reload = _arg3;
this.reloadcount = 0;
this.frequency = _arg4;
this.savefqc = _arg4;
this.frequencycount = 0;
this.pause = false;
this.gun = _arg1;
this.cooldown = _arg5;
this.cooldowncount = 0;
gageframe = int(((magcount / _arg2) * 100));
}
public function fullMag(){
reloadcount = 0;
magcount = mag;
frequencycount = 0;
gageframe = int(((magcount / mag) * 100));
}
public function process(){
if (mag <= 0){
return;
};
if (frequency <= 0){
return;
};
if (reload < 0){
return;
};
if (workEvent != null){
workEvent();
};
if (cooldown != 0){
cooldowncount++;
if (cooldowncount == cooldown){
if ((((reloadcount == 0)) && ((magcount < mag)))){
magcount++;
gageframe = int(((magcount / mag) * 100));
};
cooldowncount = 0;
};
};
if (frequencycount > 50000000){
frequencycount = 0;
};
if (reloadcount > 0){
reloadcount--;
gageframe = int((((reload - reloadcount) / (reload + 1)) * 100));
if (reloadcount == 0){
if (fullEvent != null){
gageframe = 100;
fullEvent();
};
magcount = mag;
gageframe = int(((magcount / mag) * 100));
frequencycount = 0;
};
};
if (pause){
return;
};
frequencycount++;
if (frequencycount == frequency){
if (magcount > 0){
shootClass.process(this);
if (shootEvent != null){
shootEvent(shootClass.bulletlist);
};
frequencycount = 0;
gageframe = int(((magcount / mag) * 100));
magcount--;
if (magcount == 0){
reloadcount = reload;
if (reloadEvent != null){
reloadEvent();
};
};
};
};
}
public function pauseToggle(_arg1:Object=null){
if (_arg1 != null){
this.pause = _arg1;
} else {
this.pause = !(this.pause);
};
}
public function shootNow(){
if (magcount > 0){
shootClass.process(this);
if (shootEvent != null){
shootEvent(shootClass.bulletlist);
};
gageframe = int(((magcount / mag) * 100));
magcount--;
if (magcount == 0){
if (reloadEvent != null){
reloadEvent();
};
reloadcount = reload;
};
};
}
}
}//package GREENHERMIT.GHGun
Section 5
//AngleDropMove (GREENHERMIT.GHMovement.AngleDropMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class AngleDropMove extends MoveBaseClass {
var speed:Number;
var speedy:Number;
var angle:Number;
var rot:Boolean;
var speedx:Number;
var gravity:Number;
var accy:Number;
var speedy2:Number;
public function AngleDropMove(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Boolean=true, _arg5:Number=0.5){
control = _arg1;
this.angle = _arg2;
this.speed = _arg3;
this.speedx = (_arg3 * Math.cos(((_arg2 * Math.PI) / 180)));
this.speedy = (_arg3 * Math.sin(((_arg2 * Math.PI) / 180)));
this.rot = _arg4;
this.accy = 0;
this.gravity = _arg5;
this.speedy2 = 0;
}
override public function setSpeed(_arg1:Number){
this.speed = _arg1;
this.speedx = (_arg1 * Math.cos(((angle * Math.PI) / 180)));
this.speedy = (_arg1 * Math.sin(((angle * Math.PI) / 180)));
}
override public function getSpeed():Number{
return (speed);
}
override public function process(){
accy = (accy + gravity);
speedy2 = (speedy + accy);
if (rot){
control.rotation = ((Math.atan2(speedy2, speedx) * 180) / Math.PI);
};
control.y = (control.y + speedy2);
control.x = (control.x + speedx);
}
}
}//package GREENHERMIT.GHMovement
Section 6
//AngleMove (GREENHERMIT.GHMovement.AngleMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class AngleMove extends LineMove {
public function AngleMove(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Boolean=true){
this.angle = _arg2;
this.speed = _arg3;
super(_arg1, (_arg3 * Math.cos(((_arg2 * Math.PI) / 180))), (_arg3 * Math.sin(((_arg2 * Math.PI) / 180))), _arg4);
}
}
}//package GREENHERMIT.GHMovement
Section 7
//HomingMove (GREENHERMIT.GHMovement.HomingMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHShootingStyle.*;
import GREENHERMIT.GHUtils.*;
import GREENHERMIT.GHDurationControl.*;
import GREENHERMIT.GHBulletCollection.*;
public class HomingMove extends MoveBaseClass {
var dir:Number;
var speed:Number;
var target:Object;
var angle:Number;
var lock:Boolean;
var lastcheck:Number;
var lastdir;
var pdegree:Number;
var rotation;
public function HomingMove(_arg1:MovieClip, _arg2:Object, _arg3:Number, _arg4:Number, _arg5:Boolean=true, _arg6:Function=null){
control = _arg1;
this.target = _arg2;
pdegree = ((_arg1.rotation + 360) % 360);
this.angle = _arg4;
this.speed = _arg3;
this.rotation = _arg5;
lock = false;
dir = 1;
lastdir = 0;
lastcheck = 0;
this.ai = _arg6;
}
override public function setSpeed(_arg1:Number){
this.speed = _arg1;
}
override public function getSpeed():Number{
return (speed);
}
override public function process(){
var _local1:*;
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
_local1 = API.findAngle(control, target);
_local2 = Math.abs((control.x - target.x));
_local3 = Math.abs((control.y - target.y));
_local4 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3)));
if (ai != null){
ai(this, target);
};
_local5 = 0;
if (!lock){
_local6 = (((_local1 + 360) % 360) - ((pdegree + 360) % 360));
if (dir == 1){
if (_local6 > 0){
pdegree = ((pdegree + angle) % 360);
_local5 = 1;
} else {
if (_local6 < 0){
pdegree = ((pdegree - angle) % 360);
_local5 = -1;
} else {
lock = true;
};
};
} else {
if (dir == -1){
if (_local6 > 0){
pdegree = (((pdegree + angle) + 360) % 360);
_local5 = -1;
} else {
if (_local6 < 0){
pdegree = (((pdegree - angle) - 360) % 360);
_local5 = 1;
} else {
lock = true;
};
};
};
};
};
control.x = (control.x + (speed * Math.cos(((pdegree * Math.PI) / 180))));
control.y = (control.y + (speed * Math.sin(((pdegree * Math.PI) / 180))));
if (((((!((_local5 == lastdir))) && (!((lastdir == 0))))) || (lock))){
lock = true;
if (lastcheck > 5){
_local1 = ((API.findAngle(control, target) + 360) % 360);
_local7 = Math.abs((_local1 - ((pdegree + 360) % 360)));
if ((((_local7 < 90)) && ((_local7 > 270)))){
pdegree = _local1;
} else {
lock = false;
};
lastcheck = 0;
};
lastcheck++;
};
lastdir = _local5;
if (rotation){
control.rotation = pdegree;
};
}
}
}//package GREENHERMIT.GHMovement
Section 8
//LineMove (GREENHERMIT.GHMovement.LineMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class LineMove extends MoveBaseClass {
public var speed:Number;
public var speedx:Number;
public var speedy:Number;
public var angle:Number;
public var rotation:Boolean;
public function LineMove(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Boolean=true){
control = _arg1;
this.speedx = _arg2;
this.speedy = _arg3;
angle = ((Math.atan2(_arg3, _arg2) * 180) / Math.PI);
speed = Math.sqrt(((_arg2 * _arg2) + (_arg3 * _arg3)));
this.rotation = _arg4;
}
override public function setSpeed(_arg1:Number){
this.speed = _arg1;
this.speedx = (this.speed * Math.cos(((angle * Math.PI) / 180)));
this.speedy = (this.speed * Math.sin(((angle * Math.PI) / 180)));
}
override public function process(){
control.x = (control.x + speedx);
control.y = (control.y + speedy);
if (rotation){
control.rotation = ((((Math.atan2(speedy, speedx) * 180) / Math.PI) + 360) % 360);
};
}
override public function getSpeed():Number{
return (speed);
}
}
}//package GREENHERMIT.GHMovement
Section 9
//MapMove (GREENHERMIT.GHMovement.MapMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class MapMove extends MoveBaseClass {
public var dashdirect:Number;
private var speedx:Number;
private var SLOPELEFT:Number;// = 0xFF0000
public var ground:Boolean;
private var SLOPEB:Number;// = 0x800000
private var speedy:Number;
public var right:Number;
public var left:Number;
public var dashground:Boolean;
public var dash:Number;
private var CLOSEALL:Number;// = 0xFF
private var speed:Number;
public var jumplimit:Number;
private var SLOPERIGHT:Number;// = 0xFFFF00
private var CLOSETOP:Number;// = 0xFF00
private var map:BitmapData;
public var isjump:Boolean;
public var outAreaWalk:Function;
public var cannotWalk:Function;
private var mapscale:Number;
private var FREE:Number;// = 0
private var SLOPEB2:Number;// = 0x808000
public var jumpfactor:Number;
public var jumpbase:Number;
public function MapMove(_arg1:MovieClip, _arg2:BitmapData, _arg3:Number, _arg4:Number=40){
CLOSEALL = 0xFF;
CLOSETOP = 0xFF00;
SLOPELEFT = 0xFF0000;
SLOPERIGHT = 0xFFFF00;
SLOPEB = 0x800000;
SLOPEB2 = 0x808000;
FREE = 0;
super();
control = _arg1;
if (control.gravity == null){
control.gravity = 3;
control.movegravity = control.gravity;
} else {
control.movegravity = control.gravity;
};
if (control.direct == null){
control.direct = 0;
control.movedirect = control.direct;
} else {
control.movedirect = control.direct;
};
this.speedy = 0;
this.speedx = 0;
this.speed = _arg3;
this.map = _arg2;
this.mapscale = _arg4;
this.ground = false;
this.jumpfactor = 0;
this.jumplimit = 0;
isjump = false;
jumpbase = 0;
dash = 0;
dashground = false;
}
override public function setSpeed(_arg1:Number){
this.speed = _arg1;
}
override public function getSpeed():Number{
return (speed);
}
public function setZone(_arg1:Number, _arg2:Number){
this.left = _arg1;
this.right = _arg2;
}
public function jumpNow(_arg1:Number=10, _arg2:Number=81):Boolean{
if (((ground) && ((dash == 0)))){
ground = false;
isjump = !(ground);
speedy = control.movegravity;
speedy = (speedy - (_arg1 * control.movegravity));
jumpbase = control.y;
this.jumplimit = _arg2;
return (true);
};
return (false);
}
public function getDirect():Number{
return (control.direct);
}
override public function process(){
var _local1:*;
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
var _local9:*;
var _local10:*;
var _local11:*;
var _local12:*;
var _local13:*;
var _local14:*;
var _local15:*;
var _local16:*;
dash--;
if (dash > 0){
_local2 = dash;
} else {
_local2 = 1;
dash = 0;
};
_local1 = 0;
while (_local1 < _local2) {
_local3 = control.x;
_local4 = control.y;
speedx = speed;
if (speed > mapscale){
speedx = mapscale;
};
speedx = (control.movedirect * speedx);
if (dash > 0){
speedx = ((dash / 2) * dashdirect);
};
speedy = (speedy + control.movegravity);
if (speedy > mapscale){
speedy = mapscale;
};
if (speedy < -(mapscale)){
speedy = -(mapscale);
};
if (dash > 0){
if (!dashground){
speedy = 1;
} else {
_local10 = int((_local3 / mapscale));
_local11 = int(((_local4 + 10) / mapscale));
_local12 = map.getPixel(_local7, _local8);
if (_local12 == FREE){
dashground = false;
};
};
};
_local5 = (_local4 + speedy);
_local6 = (_local3 + speedx);
_local7 = int((_local6 / mapscale));
_local8 = int((_local4 / mapscale));
_local9 = map.getPixel(_local7, _local8);
if ((((_local9 == SLOPEB)) || ((_local9 == SLOPEB2)))){
_local5 = ((_local8 * mapscale) - 1);
_local4 = _local5;
_local3 = _local6;
ground = true;
isjump = !(ground);
speedy = 0;
} else {
if (_local9 == CLOSEALL){
if (cannotWalk != null){
cannotWalk(control);
};
} else {
_local3 = _local6;
};
};
control.x = _local3;
if (speedy >= 0){
_local7 = int((_local3 / mapscale));
_local8 = int((_local5 / mapscale));
_local9 = map.getPixel(_local7, _local8);
_local13 = int((_local4 / mapscale));
_local14 = map.getPixel(_local7, _local13);
if ((((_local14 == SLOPEB)) || ((_local14 == SLOPEB2)))){
_local5 = ((_local13 * mapscale) - 1);
_local4 = _local5;
ground = true;
isjump = !(ground);
speedy = 0;
};
if (_local14 == SLOPERIGHT){
_local15 = ((((_local13 + 1) * mapscale) - 1) - (mapscale - (_local3 % mapscale)));
if (_local5 > _local15){
_local5 = _local15;
_local4 = _local5;
ground = true;
isjump = !(ground);
} else {
_local4 = _local5;
};
} else {
if (_local14 == SLOPELEFT){
_local15 = ((((_local13 + 1) * mapscale) - 1) - (_local3 % mapscale));
if (_local5 > _local15){
_local5 = _local15;
_local4 = _local5;
ground = true;
isjump = !(ground);
} else {
_local4 = _local5;
};
} else {
if ((((_local14 == FREE)) || ((_local14 == CLOSETOP)))){
if (_local9 == FREE){
_local4 = _local5;
} else {
if (_local9 == CLOSEALL){
_local5 = ((_local8 * mapscale) - 1);
_local4 = _local5;
speedy = 0;
ground = true;
isjump = !(ground);
} else {
if (_local9 == CLOSETOP){
_local16 = ((_local8 * mapscale) - 1);
if ((jumpbase - jumplimit) < _local16){
_local4 = _local16;
speedy = 0;
ground = true;
isjump = !(ground);
} else {
_local4 = _local5;
};
} else {
if (_local9 == SLOPELEFT){
_local15 = ((((_local8 + 1) * mapscale) - 1) - (_local3 % mapscale));
if (_local5 > _local15){
_local5 = _local15;
_local4 = _local5;
ground = true;
isjump = !(ground);
} else {
_local4 = _local5;
};
} else {
if (_local9 == SLOPERIGHT){
_local15 = ((((_local8 + 1) * mapscale) - 1) - (mapscale - (_local3 % mapscale)));
if (_local5 > _local15){
_local5 = _local15;
_local4 = _local5;
ground = true;
isjump = !(ground);
} else {
_local4 = _local5;
};
} else {
if ((((_local9 == SLOPEB)) || ((_local9 == SLOPEB2)))){
_local5 = ((_local8 * mapscale) - 1);
_local4 = _local5;
ground = true;
isjump = !(ground);
speedy = 0;
};
};
};
};
};
};
};
};
};
} else {
if (speedy < 0){
_local7 = int((_local3 / mapscale));
_local8 = int((_local5 / mapscale));
_local9 = map.getPixel(_local7, _local8);
if (_local9 == CLOSEALL){
speedy = control.movegravity;
} else {
_local4 = _local5;
};
};
};
if (!isjump){
jumpbase = 0;
};
control.y = _local4;
_local1++;
};
if (control.x > right){
if (outAreaWalk != null){
outAreaWalk(control);
};
};
if (control.x < left){
if (outAreaWalk != null){
outAreaWalk(control);
};
};
if (ai != null){
ai(control);
};
}
public function setDirect(_arg1:Number){
control.movedirect = _arg1;
control.direct = _arg1;
}
public function dashNow(_arg1:Number, _arg2:Number=10){
this.dashdirect = _arg1;
this.dash = _arg2;
if (ground){
dashground = true;
} else {
dashground = false;
};
}
}
}//package GREENHERMIT.GHMovement
Section 10
//MoveBaseClass (GREENHERMIT.GHMovement.MoveBaseClass)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class MoveBaseClass {
public var ai:Function;
private var testcounter:Number;
public var control:MovieClip;
public function setSpeed(_arg1:Number){
trace(("Not impliment" + this));
}
public function process(){
trace(("Not impliment" + this));
}
public function getSpeed():Number{
trace(("Not impliment" + this));
return (0);
}
}
}//package GREENHERMIT.GHMovement
Section 11
//PositionMove (GREENHERMIT.GHMovement.PositionMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public class PositionMove extends LineMove {
public function PositionMove(_arg1:MovieClip, _arg2:Object, _arg3:Number, _arg4:Boolean=true){
this.angle = API.findAngle(_arg1, _arg2);
this.speed = _arg3;
super(_arg1, (_arg3 * Math.cos(((angle * Math.PI) / 180))), (_arg3 * Math.sin(((angle * Math.PI) / 180))), _arg4);
}
}
}//package GREENHERMIT.GHMovement
Section 12
//UturnMove (GREENHERMIT.GHMovement.UturnMove)
package GREENHERMIT.GHMovement {
import flash.display.*;
public class UturnMove extends MoveBaseClass {
public var slow:Number;
public var speed:Number;
public var count:Number;
public var speedx:Number;
public var speedy:Number;
public var angle:Number;
public var countnum:Number;
public var rotation:Boolean;
public function UturnMove(_arg1:MovieClip, _arg2:Number, _arg3:Number, _arg4:Number=0, _arg5:Boolean=true){
control = _arg1;
this.speedx = _arg2;
this.speedy = _arg3;
this.count = _arg4;
countnum = 0;
angle = ((Math.atan2(_arg3, _arg2) * 180) / Math.PI);
speed = Math.sqrt(((_arg2 * _arg2) + (_arg3 * _arg3)));
slow = -10;
this.rotation = _arg5;
}
override public function setSpeed(_arg1:Number){
this.speed = _arg1;
this.speedx = (this.speed * Math.cos(((angle * Math.PI) / 180)));
this.speedy = (this.speed * Math.sin(((angle * Math.PI) / 180)));
}
override public function getSpeed():Number{
return (speed);
}
override public function process(){
if (rotation){
control.rotation = ((((Math.atan2(speedy, speedx) * 180) / Math.PI) + 360) % 360);
};
if (speedx > 0){
control.scaleX = -1;
if (control.x > 590){
if (this.count > countnum){
if (this.count > 0){
countnum++;
};
control.y = (control.y + speed);
control.x = (control.x + slow);
this.speedx = -(speedx);
} else {
control.x = (control.x + speedx);
control.y = (control.y + speedy);
};
} else {
control.x = (control.x + speedx);
control.y = (control.y + speedy);
};
} else {
control.scaleX = 1;
if (control.x < 50){
if (this.count > countnum){
if (this.count > 0){
countnum++;
};
control.y = (control.y + speed);
control.x = (control.x + slow);
this.speedx = -(speedx);
} else {
control.x = (control.x + speedx);
control.y = (control.y + speedy);
};
} else {
control.x = (control.x + speedx);
control.y = (control.y + speedy);
};
};
}
}
}//package GREENHERMIT.GHMovement
Section 13
//RandomShoot (GREENHERMIT.GHShootingStyle.RandomShoot)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class RandomShoot extends ShootBaseMethod {
var bullet:Object;
public function RandomShoot(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
_local4 = API.createMovieFromBase(_local2.parent.objectin, bullet);
bulletlist = new Array();
bulletlist.push(_local4);
if (_local3 != null){
_local4.x = _local3.x;
_local4.y = _local3.y;
} else {
_local4.x = shooter.x;
_local4.y = shooter.y;
};
API.setMotion(_local4, new AngleMove(_local4, (Math.random() * 360), _local4.speed));
}
}
}//package GREENHERMIT.GHShootingStyle
Section 14
//RandomShootEx (GREENHERMIT.GHShootingStyle.RandomShootEx)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class RandomShootEx extends ShootBaseMethod {
var bullet:Object;
var info:Object;
public function RandomShootEx(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
if (info.angle != null){
_local5 = ((Math.random() * info.angle) + 180);
} else {
_local5 = (Math.random() * 360);
};
bulletlist = new Array();
_local4 = 0;
while (_local4 < info.way) {
_local6 = API.createMovieFromBase(_local2.parent.objectin, bullet);
bulletlist.push(_local6);
if (_local3 != null){
_local6.x = _local3.x;
_local6.y = _local3.y;
} else {
_local6.x = shooter.x;
_local6.y = shooter.y;
};
_local6.timedestroy = int(((Math.random() * 20) + 15));
_local6.rotation = (_local5 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local6, new AngleMove(_local6, (_local5 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle)), _local6.speed));
_local4++;
};
}
}
}//package GREENHERMIT.GHShootingStyle
Section 15
//ShootBaseMethod (GREENHERMIT.GHShootingStyle.ShootBaseMethod)
package GREENHERMIT.GHShootingStyle {
import flash.display.*;
import GREENHERMIT.GHGun.*;
import flash.geom.*;
public dynamic class ShootBaseMethod {
var bulletlist:Array;
public var shooter:Object;
public var game:Object;
public var world:MovieClip;
public function getGunPoint(_arg1:MovieClip):Point{
var _local2:*;
if (_arg1 != null){
_local2 = new Point(_arg1.x, _arg1.y);
_local2 = _arg1.parent.localToGlobal(_local2);
_local2 = MovieClip(_arg1.parent).objectin.globalToLocal(_local2);
return (_local2);
};
return (null);
}
public function getGunObject(_arg1:GunDesc):MovieClip{
if (shooter[_arg1.gun] == null){
throw (Error(((("Error: " + shooter) + " need") + _arg1.gun)));
};
return (shooter[_arg1.gun]);
}
public function clear(){
}
public function getWorldPoint(_arg1:MovieClip):Point{
var gp:*;
var object = _arg1;
if (object != null){
try {
gp = new Point(object.x, object.y);
gp = object.parent.localToGlobal(gp);
gp = MovieClip(object.parent).objectin.globalToLocal(gp);
} catch(e) {
gp = null;
};
return (gp);
//unresolved jump
};
return (null);
}
public function process(_arg1:GunDesc){
}
}
}//package GREENHERMIT.GHShootingStyle
Section 16
//ShootbyTargetAngle (GREENHERMIT.GHShootingStyle.ShootbyTargetAngle)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootbyTargetAngle extends ShootBaseMethod {
var bullet:Object;
var info:Object;
var bullet2:Object;
public function ShootbyTargetAngle(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
if ((Math.random() * 100) < 50){
};
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
info.saveway = info.way;
if (bullet.packset != null){
if ((((bullet.linkage2 == null)) || ((bullet.style2 == null)))){
trace("เชคกระสุนหรือ style ของกระสุน เพราะ ว่า ตอนนี้ สิ่งที่คุณเอากระสุนใส่ปืนนั้น ไม่มี สิ่งใดสิ่งหรือที่บอกไป");
};
if ((Math.random() * 100) < 50){
bullet.packnum = 1;
} else {
bullet.packnum = 2;
};
};
if (info.randomway != null){
info.way = int(((Math.random() * info.saveway) + 1));
};
_local4 = 0;
while (_local4 < info.way) {
if (bullet.packset == null){
if (bullet.linkage2 == null){
_local6 = API.createMovieFromBase(_local2.parent.objectin, bullet);
} else {
if ((Math.random() * 100) < 50){
_local6 = API.createMovieFromBase(_local2.parent.objectin, bullet);
} else {
_local6 = API.createMovieFromBase2(_local2.parent.objectin, bullet);
_local6.style = bullet.style2;
};
};
} else {
if (bullet.packnum == 1){
_local6 = API.createMovieFromBase(_local2.parent.objectin, bullet);
} else {
_local6 = API.createMovieFromBase2(_local2.parent.objectin, bullet);
_local6.style = bullet.style2;
};
};
if (_local3 != null){
_local6.x = _local3.x;
_local6.y = _local3.y;
} else {
_local6.x = shooter.x;
_local6.y = shooter.y;
};
_local5 = info.targetangle;
if (info.err != null){
_local5 = (_local5 + ((Math.random() * info.err) - (info.err / 2)));
};
_local6.shooter = shooter;
_local6.rotation = (_local5 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local6, new AngleMove(_local6, (_local5 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle)), _local6.speed));
_local4++;
};
info.way = info.saveway;
}
}
}//package GREENHERMIT.GHShootingStyle
Section 17
//ShootGravity (GREENHERMIT.GHShootingStyle.ShootGravity)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootGravity extends ShootBaseMethod {
var bullet:Object;
var info:Object;
var shootorder:Number;
public function ShootGravity(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
shootorder = 0;
if (_arg2.way == 2){
_arg2.angle = 180;
};
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
_local4 = 0;
while (_local4 < info.way) {
_local5 = API.createMovieFromBase(_local2.parent.objectin, bullet);
if (_local3 != null){
_local5.x = _local3.x;
_local5.y = _local3.y;
} else {
_local5.x = shooter.x;
_local5.y = shooter.y;
};
_local6 = (_local2.parent.rotation + (_local4 * info.angle));
if (info.err != null){
_local6 = (_local6 + ((Math.random() * info.err) - (info.err / 2)));
};
_local5.rotation = (_local6 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local5, new AngleDropMove(_local5, _local6, _local5.speed, 0.5));
_local4++;
};
}
}
}//package GREENHERMIT.GHShootingStyle
Section 18
//ShootLookingObject (GREENHERMIT.GHShootingStyle.ShootLookingObject)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import flash.geom.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootLookingObject extends ShootBaseMethod {
var bullet:Object;
var info:Object;
public function ShootLookingObject(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
if (shooter.looking == null){
return;
};
if (!shooter.looking.visible){
return;
};
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
_local4 = new Point(shooter.looking.x, shooter.looking.y);
if (shooter.looking.hit != null){
_local4 = getWorldPoint(shooter.looking.hit);
};
bulletlist = new Array();
_local5 = 0;
while (_local5 < info.way) {
_local6 = API.createMovieFromBase(_local2.parent.objectin, bullet);
bulletlist.push(_local6);
if (_local3 != null){
_local6.x = _local3.x;
_local6.y = _local3.y;
} else {
_local6.x = shooter.x;
_local6.y = shooter.y;
};
_local7 = API.findAngle(_local3, _local4);
if (info.err != null){
_local7 = (_local7 + ((Math.random() * info.err) - (info.err / 2)));
};
_local6.rotation = (_local7 - ((_local5 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local6, new AngleMove(_local6, (_local7 - ((_local5 - ((info.way - 1) * 0.5)) * info.angle)), _local6.speed));
_local5++;
};
_local4 = null;
}
}
}//package GREENHERMIT.GHShootingStyle
Section 19
//ShootMouse (GREENHERMIT.GHShootingStyle.ShootMouse)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import flash.geom.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootMouse extends ShootBaseMethod {
var bullet:Object;
var info:Object;
public function ShootMouse(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
_local2 = super.game;
_local3 = getGunObject(_arg1);
_local4 = getGunPoint(_local3);
_local5 = new Point(_local3.parent.objectin.mouseX, _local3.parent.objectin.mouseY);
bulletlist = new Array();
_local6 = 0;
while (_local6 < info.way) {
_local7 = API.createMovieFromBase(_local3.parent.objectin, bullet);
bulletlist.push(_local7);
if (_local4 != null){
_local7.x = _local4.x;
_local7.y = _local4.y;
} else {
_local7.x = shooter.x;
_local7.y = shooter.y;
};
_local7.shooter = shooter;
_local8 = API.findAngle(_local4, _local5);
if (info.err != null){
_local8 = (_local8 + ((Math.random() * info.err) - (info.err / 2)));
};
API.setMotion(_local7, new AngleMove(_local7, (_local8 - ((_local6 - ((info.way - 1) * 0.5)) * info.angle)), _local7.speed));
_local6++;
};
_local5 = null;
}
}
}//package GREENHERMIT.GHShootingStyle
Section 20
//ShootOwnerAngle (GREENHERMIT.GHShootingStyle.ShootOwnerAngle)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootOwnerAngle extends ShootBaseMethod {
var bullet:Object;
var info:Object;
public function ShootOwnerAngle(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
bulletlist = new Array();
_local4 = 0;
while (_local4 < info.way) {
_local5 = API.createMovieFromBase(_local2.parent.objectin, bullet);
bulletlist.push(_local5);
if (_local3 != null){
_local5.x = _local3.x;
_local5.y = _local3.y;
} else {
_local5.x = shooter.x;
_local5.y = shooter.y;
};
_local6 = _local2.parent.rotation;
if (info.err != null){
_local6 = (_local6 + ((Math.random() * info.err) - (info.err / 2)));
};
_local5.rotation = (_local6 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local5, new AngleMove(_local5, (_local6 - ((_local4 - ((info.way - 1) * 0.5)) * info.angle)), _local5.speed));
_local4++;
};
}
}
}//package GREENHERMIT.GHShootingStyle
Section 21
//ShootOwnerAngleLoop (GREENHERMIT.GHShootingStyle.ShootOwnerAngleLoop)
package GREENHERMIT.GHShootingStyle {
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHUtils.*;
public dynamic final class ShootOwnerAngleLoop extends ShootBaseMethod {
var bullet:Object;
var info:Object;
var shootorder:Number;
public function ShootOwnerAngleLoop(_arg1:Object, _arg2:Object){
this.bullet = _arg1;
this.info = _arg2;
shootorder = 0;
}
override public function process(_arg1:GunDesc){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local2 = getGunObject(_arg1);
_local3 = getGunPoint(_local2);
bulletlist = new Array();
_local4 = API.createMovieFromBase(_local2.parent.objectin, bullet);
bulletlist.push(_local4);
_local5 = (shootorder % info.way);
if (_local3 != null){
_local4.x = _local3.x;
_local4.y = _local3.y;
} else {
_local4.x = shooter.x;
_local4.y = shooter.y;
};
_local6 = _local2.parent.rotation;
if (info.err != null){
_local6 = (_local6 + ((Math.random() * info.err) - (info.err / 2)));
};
_local4.rotation = (_local6 - ((_local5 - ((info.way - 1) * 0.5)) * info.angle));
API.setMotion(_local4, new AngleMove(_local4, (_local6 - ((_local5 - ((info.way - 1) * 0.5)) * info.angle)), _local4.speed));
shootorder++;
}
}
}//package GREENHERMIT.GHShootingStyle
Section 22
//KeyframeTemplate (GREENHERMIT.GHTemplate.KeyframeTemplate)
package GREENHERMIT.GHTemplate {
import flash.events.*;
public class KeyframeTemplate extends TemplateBaseClass {
public var keyFrameStyleEnterFrame:Function;
public var EventKBRelease:Function;
public var EventKBPress:Function;
override public function keyboardRelease(_arg1:Number){
if (EventKBRelease != null){
EventKBRelease(_arg1);
};
}
override public function EnterFrame(_arg1:Event){
var e = _arg1;
try {
super.EnterFrame(e);
if (this.keyFrameStyleEnterFrame != null){
this.keyFrameStyleEnterFrame(e);
};
} catch(e) {
trace(e);
};
}
override public function keyboardPress(_arg1:Number){
if (EventKBPress != null){
EventKBPress(_arg1);
};
}
}
}//package GREENHERMIT.GHTemplate
Section 23
//TemplateBaseClass (GREENHERMIT.GHTemplate.TemplateBaseClass)
package GREENHERMIT.GHTemplate {
import flash.display.*;
import GREENHERMIT.GHShootingStyle.*;
import flash.events.*;
import GREENHERMIT.GHUtils.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
public class TemplateBaseClass extends MovieClip {
public var space:Object;
public var css:Object;
public var gamewidth:Number;
public var worldlist:Array;
public var gamepause:Boolean;
public var GHLINK:DisplayObject;
public var key:Array;
public var processfn:Array;
public var world:Object;
public var gameheight:Number;
public var processlist:Array;
public var spacelist:Array;
public var spaceprocesslist:Array;
public var cam:Object;
public var GHDESIGNCSS:StyleSheet;
public var keyfocus:MovieClip;
public var game:Object;
public function TemplateBaseClass(){
var _local1:RandomShoot;
var _local2:RandomShootEx;
var _local3:ShootLookingObject;
var _local4:ShootbyTargetAngle;
var _local5:ShootGravity;
var _local6:ShootMouse;
var _local7:ShootOwnerAngle;
var _local8:ShootOwnerAngleLoop;
super();
game = this;
gamepause = false;
GHDESIGNCSS = MovieClip(parent).designCSS;
GHLINK = MovieClip(parent).llink;
css = CSSToVar.createVariable(this);
worldlist = new Array();
spacelist = new Array();
spaceprocesslist = new Array();
processlist = new Array();
processfn = new Array();
gamewidth = 640;
gameheight = 480;
key = new Array();
API.setLibrary(GHLINK);
cam = {x:0, y:0, focusobject:{x:(gamewidth / 2), y:(gameheight / 2)}, round:{x1:0, y1:0, x2:640, y2:480}};
keyfocus = new MovieClip();
keyfocus.addEventListener(KeyboardEvent.KEY_DOWN, keydown);
keyfocus.addEventListener(KeyboardEvent.KEY_UP, keyup);
this.addEventListener(Event.ENTER_FRAME, EnterFrame);
stop();
}
public function releaseFocus(){
try {
stage.focus = keyfocus;
} catch(e) {
};
}
public function keyboardRelease(_arg1:Number){
}
public function keydown(_arg1:KeyboardEvent){
keyboardPress(_arg1.keyCode);
key[_arg1.keyCode] = true;
}
public function keyup(_arg1:KeyboardEvent){
key[_arg1.keyCode] = false;
keyboardRelease(_arg1.keyCode);
delete key[_arg1.keyCode];
}
public function camProcess(){
if (cam.focusobject != null){
cam.smoothx = (cam.focusobject.x - (gamewidth / 2));
cam.smoothy = (cam.focusobject.y - (gameheight / 2));
if (cam.round != null){
if (cam.smoothx > (cam.round.x2 - gamewidth)){
cam.smoothx = (cam.round.x2 - gamewidth);
};
if (cam.smoothx < cam.round.x1){
cam.smoothx = cam.round.x1;
};
if (cam.smoothy > (cam.round.y2 - gameheight)){
cam.smoothy = (cam.round.y2 - gameheight);
};
if (cam.smoothy < cam.round.y1){
cam.smoothy = cam.round.y1;
};
};
API.smoothCamY(cam);
API.smoothCamX(cam);
API.updateWorld(world, cam);
};
}
public function freeSystemListener(){
this.removeEventListener(Event.ENTER_FRAME, EnterFrame);
keyfocus.removeEventListener(KeyboardEvent.KEY_DOWN, keydown);
keyfocus.removeEventListener(KeyboardEvent.KEY_UP, keyup);
}
public function createLayer(){
LayerCore.addGroup(this, "world", 0, 0);
LayerCore.addGroup(this, "space", 0, 0);
LayerCore.createLayerFromList(world, worldlist);
LayerCore.createLayerFromList(space, spacelist);
}
public function EnterFrame(_arg1:Event){
var e = _arg1;
if (gamepause){
return;
};
try {
stage.focus = keyfocus;
} catch(e) {
};
if (world != null){
try {
camProcess();
LayerCore.processListGroup(world, processlist, processfn);
LayerCore.processListGroup(space, spaceprocesslist, processfn);
} catch(e) {
trace(e);
};
};
}
public function keyboardPress(_arg1:Number){
}
public function readDesignDoc(_arg1:String):Object{
var _local2:*;
var _local3:*;
_local2 = GHDESIGNCSS.getStyle(_arg1);
for (_local3 in _local2) {
if (isNaN(Number(_local2[_local3]))){
} else {
_local2[_local3] = Number(_local2[_local3]);
};
};
return (_local2);
}
public function createWorld(){
createLayer();
}
}
}//package GREENHERMIT.GHTemplate
Section 24
//API (GREENHERMIT.GHUtils.API)
package GREENHERMIT.GHUtils {
import flash.display.*;
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHShootingStyle.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHTemplate.*;
import GREENHERMIT.GHDurationControl.*;
import flash.utils.*;
public class API {
private static var createcount:Number = 0;
private static var camspeed:Number = 40;
private static var library:DisplayObject = null;
public static function setTimeCount(_arg1:MovieClip, _arg2:Number){
if (_arg1.durationclass != null){
_arg1.durationclass.timecount = _arg2;
};
}
public static function getClass(_arg1:String):Class{
if (library != null){
return (MovieClip(library).getClass(_arg1));
};
return ((getDefinitionByName(_arg1) as Class));
}
public static function createMovieFromBase2(_arg1:Object, _arg2:Object, _arg3:Object=null, _arg4:String=null){
var world:*;
var imgclass:*;
var newclip:*;
var backup:*;
var field:*;
var getlink2:*;
var worldobj = _arg1;
var base = _arg2;
var addition = _arg3;
var name = _arg4;
world = MovieClip(worldobj);
imgclass = null;
newclip = null;
backup = new Object();
getlink2 = true;
if (base.editfrom != null){
for (field in base) {
backup[field] = base[field];
};
base = TemplateBaseClass(world.parent).css[base.editfrom];
};
if (backup.linkage2 != null){
try {
newclip = new (getClass(backup.linkage2));
} catch(e) {
try {
newclip = new (getClass("cerror"));
} catch(e) {
trace("Create cerror::linkage in library to Show Error Object");
return (base);
};
};
} else {
try {
newclip = new (getClass(base.linkage2));
} catch(e) {
try {
newclip = new (getClass("cerror"));
} catch(e) {
trace("Create cerror::linkage in library to Show Error Object");
return (base);
};
};
};
for (field in base) {
newclip[field] = base[field];
};
if (backup != null){
for (field in backup) {
newclip[field] = backup[field];
};
};
if (addition != null){
for (field in addition) {
newclip[field] = addition[field];
};
};
if (name == null){
createcount++;
newclip.name = (((((((base.layer + "/") + "[css:") + newclip.__ghbasename) + "]/") + newclip) + ".") + createcount);
} else {
newclip.name = name;
};
if (newclip.createMovieFinish != null){
newclip.createMovieFinish(newclip, base);
};
newclip.objectin = world;
world[base.layer].addChild(newclip);
return (newclip);
}
public static function setSpeed(_arg1:MovieClip, _arg2:Number){
if (_arg1.motclass == null){
return (0);
};
_arg1.motclass.setSpeed(_arg2);
}
public static function smoothCamY(_arg1:Object){
var _local2:*;
var _local3:*;
_local2 = (_arg1.y - _arg1.smoothy);
_local3 = int((Math.abs((_arg1.y - _arg1.smoothy)) / 3));
if (_local3 > camspeed){
_local3 = camspeed;
};
if (_local2 < 0){
_arg1.y = (_arg1.y + _local3);
} else {
if (_local2 > 0){
_arg1.y = (_arg1.y - _local3);
};
};
}
public static function updateWorld(_arg1:Object, _arg2:Object){
_arg1.x = -(_arg2.x);
_arg1.y = -(_arg2.y);
}
public static function getDuration(_arg1:MovieClip){
return (_arg1.durationclass);
}
public static function getTimeCount(_arg1:MovieClip):Number{
if (_arg1.durationclass != null){
return (_arg1.durationclass.timecount);
};
return (0);
}
public static function createMovieFromBase(_arg1:Object, _arg2:Object, _arg3:Object=null, _arg4:String=null){
var world:*;
var imgclass:*;
var newclip:*;
var backup:*;
var field:*;
var worldobj = _arg1;
var base = _arg2;
var addition = _arg3;
var name = _arg4;
world = MovieClip(worldobj);
imgclass = null;
newclip = null;
backup = new Object();
if (base.editfrom != null){
for (field in base) {
backup[field] = base[field];
};
base = TemplateBaseClass(world.parent).css[base.editfrom];
};
if (backup.linkage != null){
try {
newclip = new (getClass(backup.linkage));
} catch(e) {
try {
newclip = new (getClass("cerror"));
} catch(e) {
trace("Create cerror::linkage in library to Show Error Object");
return (base);
};
};
} else {
try {
newclip = new (getClass(base.linkage));
} catch(e) {
try {
newclip = new (getClass("cerror"));
} catch(e) {
trace("Create cerror::linkage in library to Show Error Object");
return (base);
};
};
};
for (field in base) {
newclip[field] = base[field];
};
if (backup != null){
for (field in backup) {
newclip[field] = backup[field];
};
};
if (addition != null){
for (field in addition) {
newclip[field] = addition[field];
};
};
if (name == null){
createcount++;
newclip.name = (((((((base.layer + "/") + "[css:") + newclip.__ghbasename) + "]/") + newclip) + ".") + createcount);
} else {
newclip.name = name;
};
if (newclip.createMovieFinish != null){
newclip.createMovieFinish(newclip, base);
};
newclip.objectin = world;
world[base.layer].addChild(newclip);
return (newclip);
}
public static function getSpeed(_arg1:MovieClip):Number{
if (_arg1.motclass == null){
return (0);
};
return (_arg1.motclass.getSpeed());
}
public static function setDuration(_arg1:MovieClip, _arg2:Number, _arg3:Function){
_arg1.durationclass = new Duration(_arg2, _arg3);
_arg1.durationclass.objectduration = _arg1;
}
public static function removeMotion(_arg1:MovieClip){
_arg1.motclass = null;
}
public static function resumeTime(_arg1:MovieClip){
if (_arg1.durationclass != null){
_arg1.durationclass.resume();
};
}
public static function setShooterType(_arg1:MovieClip){
_arg1.gunclasslist = new Array();
}
public static function setDurationEx(_arg1:MovieClip, _arg2:Array, _arg3:Function){
_arg1.durationclass = new AlarmClock(_arg3, _arg2);
_arg1.durationclass.objectduration = _arg1;
}
public static function getMotion(_arg1:MovieClip):MoveBaseClass{
return (_arg1.motclass);
}
public static function stopTime(_arg1:MovieClip){
if (_arg1.durationclass != null){
_arg1.durationclass.stop();
};
}
public static function findAngle(_arg1:Object, _arg2:Object):Number{
var dx:*;
var dy:*;
var red:*;
var p1 = _arg1;
var p2 = _arg2;
try {
dx = (p2.x - p1.x);
dy = (p2.y - p1.y);
red = Math.atan2(dy, dx);
} catch(e) {
red = ((Math.random() * 2) * Math.PI);
};
return (((red * 180) / Math.PI));
}
public static function smoothCamX(_arg1:Object){
var _local2:*;
var _local3:*;
_local2 = (_arg1.x - _arg1.smoothx);
_local3 = int((Math.abs((_arg1.x - _arg1.smoothx)) / 3));
if (_local3 > camspeed){
_local3 = camspeed;
};
if (_local2 < 0){
_arg1.x = (_arg1.x + _local3);
} else {
if (_local2 > 0){
_arg1.x = (_arg1.x - _local3);
};
};
}
public static function setMotion(_arg1:MovieClip, _arg2:MoveBaseClass){
_arg2.control = _arg1;
_arg1.motclass = _arg2;
}
public static function setLibrary(_arg1:DisplayObject){
library = _arg1;
}
public static function setCamSpeed(_arg1:Number){
camspeed = _arg1;
}
public static function setAlarmTime(_arg1:MovieClip, _arg2:Number){
if (_arg1.durationclass != null){
_arg1.durationclass.timecount = _arg2;
};
}
public static function removeAllCompositClass(_arg1:MovieClip){
var _local2:*;
var _local3:*;
_local2 = 0;
if (_arg1.motclass != null){
delete _arg1.motclass;
};
if (_arg1.gunclasslist != null){
_local2 = (_arg1.gunclasslist.length - 1);
while (_local2 >= 0) {
_arg1.gunclasslist[_local2].shootClass.clear();
delete _arg1.gunclasslist[_local2].shootClass;
delete _arg1.gunclasslist[_local2];
_local2--;
};
delete _arg1.gunclasslist;
};
if (_arg1.durationclass != null){
delete _arg1.durationclass;
};
for (_local3 in _arg1) {
if (_arg1[_local3] != null){
delete _arg1[_local3];
};
};
}
public static function addShootMethod(_arg1:Object, _arg2:Object, _arg3:MovieClip, _arg4:GunDesc, _arg5:ShootBaseMethod){
if (_arg3.gunclasslist == null){
trace(("setShooterType First " + _arg3.name));
return;
};
_arg5.game = MovieClip(_arg1);
_arg5.world = MovieClip(_arg2);
_arg5.shooter = _arg3;
_arg4.shootClass = _arg5;
_arg3.gunclasslist.push(_arg4);
}
}
}//package GREENHERMIT.GHUtils
Section 25
//CSSToVar (GREENHERMIT.GHUtils.CSSToVar)
package GREENHERMIT.GHUtils {
import flash.display.*;
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHTemplate.*;
import flash.utils.*;
import GREENHERMIT.GHDataType.*;
public class CSSToVar {
public static function CSSCreateShootSet(_arg1:Object, _arg2:Object, _arg3:MovieClip, _arg4:Object){
var shootclass:Class;
var gun:GunDesc;
var shoot:*;
var game = _arg1;
var world = _arg2;
var obj = _arg3;
var css = _arg4;
try {
shootclass = (getDefinitionByName(("GREENHERMIT.GHShootingStyle." + css.shoot)) as Class);
gun = new GunDesc(css.gun, css.mag, css.reload, css.frq, css.cooldown);
shoot = new shootclass(game.css[css.bullet], css);
API.addShootMethod(game, world, obj, gun, shoot);
} catch(e) {
trace(((((("GREENHERMIT.GHShootingStyle." + css.shoot) + " not found\n") + "\t 1.ปัญหาอาจเกิดจาก เขียนชื่อ Class ผิดลองสะกดดู\n") + "\t 2.ไม่ได้ประกาศไว้ใน registerClass.as\n") + "\t 3.ไม่มี Class อยู่ใน package GREENHERMIT.GHShootingStyle ควร impliment ก่อน"));
};
}
public static function importCSSObject(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Function){
var _local5:*;
_local5 = 0;
while (_local5 < _arg3) {
if (_arg1[(_arg2 + _local5)] != null){
_arg1[(_arg2 + _local5)].createMovieFinish = _arg4;
};
_local5++;
};
}
public static function CSSEvent(_arg1:Object):Array{
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
_local2 = new Array();
for (_local3 in _arg1) {
_local4 = String(_local3).substr(0, 5);
if (_local4 == "frame"){
_local5 = String(_local3).substr(5, 500);
_local2[Number(_local5)] = _arg1[_local3];
};
};
return (_local2);
}
public static function createVariable(_arg1:TemplateBaseClass):Object{
var _local2:*;
var _local3:*;
_local2 = new Object();
_local3 = 0;
while (_local3 < _arg1.GHDESIGNCSS.styleNames.length) {
_local2[_arg1.GHDESIGNCSS.styleNames[_local3]] = _arg1.readDesignDoc(_arg1.GHDESIGNCSS.styleNames[_local3]);
_local2[_arg1.GHDESIGNCSS.styleNames[_local3]].__ghbasename = _arg1.GHDESIGNCSS.styleNames[_local3];
_local3++;
};
return (_local2);
}
public static function CSSApplyObject(_arg1:Object, _arg2:Object, _arg3:MovieClip, _arg4:Object){
if (_arg4.process != null){
_arg3.process = _arg1[_arg4.process];
};
if (_arg4.initobject != null){
_arg3.initobject = _arg1[_arg4.initobject];
};
if (_arg4.gun != null){
CSSCreateShootSet(_arg1, _arg2, _arg3, _arg1.css[_arg4.gun]);
};
if (_arg4.clock != null){
API.setDurationEx(_arg3, CSSEvent(_arg1.css[_arg4.clock]), _arg1[_arg4.clockfunction]);
};
if (_arg3.initobject != null){
_arg3.initobject(_arg3);
};
}
public static function CSSGun(_arg1:Object){
return (new GunDesc(_arg1.gun, _arg1.mag, _arg1.reload, _arg1.frq, _arg1.cooldown));
}
public static function createGlobal(_arg1:TemplateBaseClass):Object{
var _local2:*;
_local2 = 0;
while (_local2 < _arg1.GHDESIGNCSS.styleNames.length) {
_arg1[_arg1.GHDESIGNCSS.styleNames[_local2]] = _arg1.readDesignDoc(_arg1.GHDESIGNCSS.styleNames[_local2]);
_local2++;
};
return (_arg1);
}
}
}//package GREENHERMIT.GHUtils
Section 26
//LayerCore (GREENHERMIT.GHUtils.LayerCore)
package GREENHERMIT.GHUtils {
import flash.display.*;
import flash.utils.*;
public class LayerCore {
public static function processGroup(_arg1:Object, _arg2:Array){
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
_local3 = (_arg1.numChildren - 1);
for (;_local3 >= 0;_local3--) {
_local4 = _arg1.getChildAt(_local3);
if ((_local4 is MovieClip)){
} else {
continue;
};
_local5 = 0;
while (_local5 < _arg2.length) {
if ((_local4[_arg2[_local5]] as Function)){
var _local7 = _local4;
_local7[_arg2[_local5]](_local4);
};
_local5++;
};
if (_local4.motclass != null){
_local4.motclass.process();
};
if (_local4.gunclasslist != null){
_local6 = 0;
while (_local6 < _local4.gunclasslist.length) {
_local4.gunclasslist[_local6].process();
_local6++;
};
};
if (_local4.durationclass != null){
_local4.durationclass.process();
};
};
}
public static function processListGroup(_arg1:Object, _arg2:Array, _arg3:Array){
var _local4:*;
_local4 = 0;
while (_local4 < _arg2.length) {
processGroup(_arg1[_arg2[_local4]], _arg3);
_local4++;
};
}
public static function createLayerFromList(_arg1:Object, _arg2:Array, _arg3:Object=null){
var _local4:*;
if (_arg3 == null){
_arg3 = _arg1;
};
_local4 = 0;
while (_local4 < _arg2.length) {
if (_arg2[_local4].movieclip == null){
addGroup(_arg1, _arg2[_local4].layername, 0, 0, _arg3);
} else {
addGroupByClip(_arg1, _arg2[_local4].layername, 0, 0, _arg2[_local4].movieclip, _arg3);
};
_local4++;
};
}
public static function addGroupByClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:String, _arg6:Object){
var _local7:*;
if (_arg6 == null){
_arg6 = _arg1;
};
_local7 = new ((getDefinitionByName(_arg5) as Class));
_local7.x = _arg3;
_local7.y = _arg4;
_arg6[_arg2] = _arg1.addChild(_local7);
return (_arg6[_arg2]);
}
public static function addGroup(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Object=null){
var _local6:*;
if (_arg5 == null){
_arg5 = _arg1;
};
_local6 = new MovieClip();
_local6.x = _arg3;
_local6.y = _arg4;
_arg5[_arg2] = _arg1.addChild(_local6);
return (_arg5[_arg2]);
}
}
}//package GREENHERMIT.GHUtils
Section 27
//bar_root_18 (TG_fla.bar_root_18)
package TG_fla {
import flash.display.*;
public dynamic class bar_root_18 extends MovieClip {
public var barmask:MovieClip;
}
}//package TG_fla
Section 28
//BG_2 (TG_fla.BG_2)
package TG_fla {
import flash.display.*;
public dynamic class BG_2 extends MovieClip {
public function BG_2(){
addFrameScript(10, frame11);
}
function frame11(){
MovieClip(parent).gotoAndStop(2);
}
}
}//package TG_fla
Section 29
//bg_251 (TG_fla.bg_251)
package TG_fla {
import flash.display.*;
public dynamic class bg_251 extends MovieClip {
public function bg_251(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package TG_fla
Section 30
//bullet_troop_198 (TG_fla.bullet_troop_198)
package TG_fla {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullet_troop_198 extends MovieClip {
public var hit:hittemp;
public function bullet_troop_198(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package TG_fla
Section 31
//bullet_troop_special_199 (TG_fla.bullet_troop_special_199)
package TG_fla {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullet_troop_special_199 extends MovieClip {
public var hit:hittemp;
public function bullet_troop_special_199(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package TG_fla
Section 32
//dia_shop_257 (TG_fla.dia_shop_257)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class dia_shop_257 extends MovieClip {
public var btnbuildengineer:SimpleButton;
public var game;
public var tflaktxt:TextField;
public var bbullettxt:TextField;
public var btnhomingturret:SimpleButton;
public var lvthomming;
public var aacannontxt:TextField;
public var so:SharedObject;
public var thommingtxt:TextField;
public var attspeedtxt:TextField;
public var lvhealth;
public var detailtxt:TextField;
public var lvtflak;
public var lvaacannon;
public var bsolidertxt:TextField;
public var btnbuildsolider:SimpleButton;
public var money;
public var gamelevel;
public var flakcannontxt:TextField;
public var btneffect:SimpleButton;
public var shop;
public var typetxt:TextField;
public var lvbuildsolider;
public var lvspeed;
public var atthealthtxt:TextField;
public var lvtwiper;
public var btnspeed:SimpleButton;
public var lvflakcannon;
public var btnaacannon:SimpleButton;
public var btnbulidbullet:SimpleButton;
public var costtxt:TextField;
public var lvbuildengineer;
public var lveffect;
public var b_mfz_shop:SimpleButton;
public var btnflakturret:SimpleButton;
public var bok:SimpleButton;
public var atteffecttxt:TextField;
public var btnflakcannon:SimpleButton;
public var btnhealth:SimpleButton;
public var lvbulidbullet;
public var btnwiperturret:SimpleButton;
public var moneytext:TextField;
public var twipertxt:TextField;
public var bengineertxt:TextField;
public function dia_shop_257(){
addFrameScript(0, frame1);
}
public function detail1(_arg1:MouseEvent){
detailtxt.text = game.css[("skill" + lvaacannon)].detail;
costtxt.text = game.css[("skill" + lvaacannon)].money;
typetxt.text = game.css[("skill" + lvaacannon)].type;
}
public function detail4(_arg1:MouseEvent){
detailtxt.text = game.css[("skill6" + lvbuildengineer)].detail;
costtxt.text = game.css[("skill6" + lvbuildengineer)].money;
typetxt.text = game.css[("skill6" + lvbuildengineer)].type;
}
public function detail6(_arg1:MouseEvent){
detailtxt.text = game.css[("skill2" + lvtwiper)].detail;
costtxt.text = game.css[("skill2" + lvtwiper)].money;
typetxt.text = game.css[("skill2" + lvtwiper)].type;
}
public function detail7(_arg1:MouseEvent){
detailtxt.text = game.css[("skill4" + lvtflak)].detail;
costtxt.text = game.css[("skill4" + lvtflak)].money;
typetxt.text = game.css[("skill4" + lvtflak)].type;
}
public function detail8(_arg1:MouseEvent){
detailtxt.text = game.css[("skill3" + lvthomming)].detail;
costtxt.text = game.css[("skill3" + lvthomming)].money;
typetxt.text = game.css[("skill3" + lvthomming)].type;
}
public function detail2(_arg1:MouseEvent){
detailtxt.text = game.css[("skill1" + lvflakcannon)].detail;
costtxt.text = game.css[("skill1" + lvflakcannon)].money;
typetxt.text = game.css[("skill1" + lvflakcannon)].type;
}
public function detail5(_arg1:MouseEvent){
detailtxt.text = game.css[("skill7" + lvbuildsolider)].detail;
costtxt.text = game.css[("skill7" + lvbuildsolider)].money;
typetxt.text = game.css[("skill7" + lvbuildsolider)].type;
}
public function addFlakCannon(_arg1:MouseEvent){
if (lvflakcannon < 4){
if (game.css[("skill1" + lvflakcannon)] != null){
if (money >= game.css[("skill1" + lvflakcannon)].money){
money = (money - game.css[("skill1" + lvflakcannon)].money);
if (lvflakcannon < 4){
lvflakcannon++;
};
so.data.lvflakcannon = lvflakcannon;
flakcannontxt.text = ("LV" + lvflakcannon);
moneytext.text = money;
detailtxt.text = game.css[("skill1" + lvflakcannon)].detail;
costtxt.text = game.css[("skill1" + lvflakcannon)].money;
typetxt.text = game.css[("skill1" + lvflakcannon)].type;
};
};
};
}
public function detail9(_arg1:MouseEvent){
detailtxt.text = game.css[("skill8" + lvhealth)].detail;
costtxt.text = game.css[("skill8" + lvhealth)].money;
typetxt.text = game.css[("skill8" + lvhealth)].type;
}
public function detail3(_arg1:MouseEvent){
detailtxt.text = game.css[("skill5" + lvbulidbullet)].detail;
costtxt.text = game.css[("skill5" + lvbulidbullet)].money;
typetxt.text = game.css[("skill5" + lvbulidbullet)].type;
}
public function addSpeed(_arg1:MouseEvent){
if (lvspeed < 4){
if (game.css[("skill9" + lvspeed)] != null){
if (money >= game.css[("skill9" + lvspeed)].money){
money = (money - game.css[("skill9" + lvspeed)].money);
if (lvspeed < 4){
lvspeed++;
};
so.data.lvspeed = lvspeed;
attspeedtxt.text = ("LV" + lvspeed);
moneytext.text = money;
detailtxt.text = game.css[("skill9" + lvspeed)].detail;
costtxt.text = game.css[("skill9" + lvspeed)].money;
typetxt.text = game.css[("skill9" + lvspeed)].type;
};
};
};
}
public function detail10(_arg1:MouseEvent){
detailtxt.text = game.css[("skill9" + lvspeed)].detail;
costtxt.text = game.css[("skill9" + lvspeed)].money;
typetxt.text = game.css[("skill9" + lvspeed)].type;
}
public function detail11(_arg1:MouseEvent){
detailtxt.text = game.css[("skill10" + lveffect)].detail;
costtxt.text = game.css[("skill10" + lveffect)].money;
typetxt.text = game.css[("skill10" + lveffect)].type;
}
public function addHealth(_arg1:MouseEvent){
if (lvhealth < 4){
if (game.css[("skill8" + lvhealth)] != null){
if (money >= game.css[("skill8" + lvhealth)].money){
money = (money - game.css[("skill8" + lvhealth)].money);
if (lvhealth < 4){
lvhealth++;
};
so.data.lvhealth = lvhealth;
atthealthtxt.text = ("LV" + lvhealth);
moneytext.text = money;
detailtxt.text = game.css[("skill8" + lvhealth)].detail;
costtxt.text = game.css[("skill8" + lvhealth)].money;
typetxt.text = game.css[("skill8" + lvhealth)].type;
};
};
};
}
public function openShop(){
trace("shop");
gamelevel = game.gamelevel;
money = game.money;
if (so.data.lvaacannon == null){
lvaacannon = 0;
};
if (so.data.lvflakcannon == null){
lvflakcannon = 0;
};
if (so.data.lvbulidbullet == null){
lvbulidbullet = 0;
};
if (so.data.lvbuildengineer == null){
lvbuildengineer = 0;
};
if (so.data.lvbuildsolider == null){
lvbuildsolider = 0;
};
if (so.data.lvtwiper == null){
lvtwiper = 0;
};
if (so.data.lvtflak == null){
lvtflak = 0;
};
if (so.data.lvthomming == null){
lvthomming = 0;
};
if (so.data.lvhealth == null){
lvhealth = 0;
};
if (so.data.lvspeed == null){
lvspeed = 0;
};
if (so.data.lveffect == null){
lveffect = 0;
};
lvaacannon = so.data.lvaacannon;
lvflakcannon = so.data.lvflakcannon;
lvbulidbullet = so.data.lvbulidbullet;
lvbuildengineer = so.data.lvbuildengineer;
lvbuildsolider = so.data.lvbuildsolider;
lvtwiper = so.data.lvtwiper;
lvtflak = so.data.lvtflak;
lvthomming = so.data.lvthomming;
lvhealth = so.data.lvhealth;
lvspeed = so.data.lvspeed;
lveffect = so.data.lveffect;
aacannontxt.text = ("LV" + lvaacannon);
flakcannontxt.text = ("LV" + lvflakcannon);
bbullettxt.text = ("LV" + lvbulidbullet);
bengineertxt.text = ("LV" + lvbuildengineer);
bsolidertxt.text = ("LV" + lvbuildsolider);
twipertxt.text = ("LV" + lvtwiper);
thommingtxt.text = ("LV" + lvthomming);
tflaktxt.text = ("LV" + lvtflak);
atthealthtxt.text = ("LV" + lvhealth);
attspeedtxt.text = ("LV" + lvspeed);
atteffecttxt.text = ("LV" + lveffect);
moneytext.text = money;
}
public function addWiperturret(_arg1:MouseEvent){
trace(game.css[("skill2" + lvtwiper)]);
if (lvtwiper < 3){
if (game.css[("skill2" + (lvtwiper + 1))] != null){
if (money >= game.css[("skill2" + lvtwiper)].money){
money = (money - game.css[("skill2" + lvtwiper)].money);
if (lvtwiper < 3){
game.upgradeWiper(lvtwiper);
lvtwiper++;
};
so.data.lvtwiper = lvtwiper;
game.lvtwiper = lvtwiper;
trace(game.lvtwiper);
twipertxt.text = ("LV" + lvtwiper);
moneytext.text = money;
detailtxt.text = game.css[("skill2" + lvtwiper)].detail;
costtxt.text = game.css[("skill2" + lvtwiper)].money;
typetxt.text = game.css[("skill2" + lvtwiper)].type;
};
};
};
}
function frame1(){
shop = this;
game = MovieClip(this.parent).game;
so = SharedObject.getLocal("TG");
Mouse.show();
b_mfz_shop.addEventListener("click", playmoreshop);
btnaacannon.addEventListener(MouseEvent.CLICK, addAACannon);
btnaacannon.addEventListener(MouseEvent.MOUSE_OVER, detail1);
btnflakcannon.addEventListener(MouseEvent.CLICK, addFlakCannon);
btnflakcannon.addEventListener(MouseEvent.MOUSE_OVER, detail2);
btnbulidbullet.addEventListener(MouseEvent.CLICK, addBuildBullet);
btnbulidbullet.addEventListener(MouseEvent.MOUSE_OVER, detail3);
btnbuildengineer.addEventListener(MouseEvent.CLICK, addBuildEngineer);
btnbuildengineer.addEventListener(MouseEvent.MOUSE_OVER, detail4);
btnbuildsolider.addEventListener(MouseEvent.CLICK, addBuildSolider);
btnbuildsolider.addEventListener(MouseEvent.MOUSE_OVER, detail5);
btnwiperturret.addEventListener(MouseEvent.CLICK, addWiperturret);
btnwiperturret.addEventListener(MouseEvent.MOUSE_OVER, detail6);
btnflakturret.addEventListener(MouseEvent.CLICK, addFlakturret);
btnflakturret.addEventListener(MouseEvent.MOUSE_OVER, detail7);
btnhomingturret.addEventListener(MouseEvent.CLICK, addHommingturret);
btnhomingturret.addEventListener(MouseEvent.MOUSE_OVER, detail8);
btnhealth.addEventListener(MouseEvent.CLICK, addHealth);
btnhealth.addEventListener(MouseEvent.MOUSE_OVER, detail9);
btnspeed.addEventListener(MouseEvent.CLICK, addSpeed);
btnspeed.addEventListener(MouseEvent.MOUSE_OVER, detail10);
btneffect.addEventListener(MouseEvent.CLICK, addEffect);
btneffect.addEventListener(MouseEvent.MOUSE_OVER, detail11);
bok.addEventListener(MouseEvent.CLICK, bok_click);
}
public function addAACannon(_arg1:MouseEvent){
if (lvaacannon < 4){
if (game.css[("skill" + lvaacannon)] != null){
if (money >= game.css[("skill" + lvaacannon)].money){
money = (money - game.css[("skill" + lvaacannon)].money);
if (lvaacannon < 4){
lvaacannon++;
trace(lvaacannon);
};
so.data.lvaacannon = lvaacannon;
game.lvaacannon = so.data.lvaacannon;
game.upgradeAACannon();
aacannontxt.text = ("LV" + lvaacannon);
moneytext.text = money;
detailtxt.text = game.css[("skill" + lvaacannon)].detail;
costtxt.text = game.css[("skill" + lvaacannon)].money;
typetxt.text = game.css[("skill" + lvaacannon)].type;
};
};
};
}
public function playmoreshop(_arg1){
shop.parent.getURL("http://www.mofunzone.com/", "_blank");
}
public function addHommingturret(_arg1:MouseEvent){
trace(game.css[("skill3" + lvthomming)]);
if (lvthomming < 3){
if (game.css[("skill3" + (lvthomming + 1))] != null){
if (money >= game.css[("skill3" + lvthomming)].money){
money = (money - game.css[("skill3" + lvthomming)].money);
if (lvthomming < 3){
game.upgradeHomming(lvthomming);
lvthomming++;
};
so.data.lvthomming = lvthomming;
game.lvthomming = lvthomming;
trace(game.lvthomming);
thommingtxt.text = ("LV" + lvthomming);
moneytext.text = money;
detailtxt.text = game.css[("skill3" + lvthomming)].detail;
costtxt.text = game.css[("skill3" + lvthomming)].money;
typetxt.text = game.css[("skill3" + lvthomming)].type;
};
};
};
}
public function updateMoney(){
moneytext.text = money;
}
public function addEffect(_arg1:MouseEvent){
if (lveffect < 4){
if (game.css[("skill10" + lveffect)] != null){
if (money >= game.css[("skill10" + lveffect)].money){
money = (money - game.css[("skill10" + lveffect)].money);
if (lveffect < 4){
lveffect++;
};
so.data.lveffect = lveffect;
atteffecttxt.text = ("LV" + lveffect);
moneytext.text = money;
detailtxt.text = game.css[("skill10" + lveffect)].detail;
costtxt.text = game.css[("skill10" + lveffect)].money;
typetxt.text = game.css[("skill10" + lveffect)].type;
};
};
};
}
public function addBuildSolider(_arg1:MouseEvent){
if (lvbuildsolider < 4){
if (game.css[("skill7" + lvbuildsolider)] != null){
if (money >= game.css[("skill7" + lvbuildsolider)].money){
money = (money - game.css[("skill7" + lvbuildsolider)].money);
if (lvbuildsolider < 4){
lvbuildsolider++;
};
so.data.lvbuildsolider = lvbuildsolider;
bsolidertxt.text = ("LV" + lvbuildsolider);
moneytext.text = money;
detailtxt.text = game.css[("skill7" + lvbuildsolider)].detail;
costtxt.text = game.css[("skill7" + lvbuildsolider)].money;
typetxt.text = game.css[("skill7" + lvbuildsolider)].type;
};
};
};
}
public function addBuildBullet(_arg1:MouseEvent){
if (lvbulidbullet < 4){
if (game.css[("skill5" + lvbulidbullet)] != null){
if (money >= game.css[("skill5" + lvbulidbullet)].money){
money = (money - game.css[("skill5" + lvbulidbullet)].money);
if (lvbulidbullet < 4){
lvbulidbullet++;
};
so.data.lvbulidbullet = lvbulidbullet;
bbullettxt.text = ("LV" + lvbulidbullet);
moneytext.text = money;
detailtxt.text = game.css[("skill5" + lvbulidbullet)].detail;
costtxt.text = game.css[("skill5" + lvbulidbullet)].money;
typetxt.text = game.css[("skill5" + lvbulidbullet)].type;
};
};
};
}
public function bok_click(_arg1:MouseEvent){
so.data.lvaacannon = lvaacannon;
so.data.flakcannon = lvflakcannon;
so.data.lvbulidbullet = lvbulidbullet;
so.data.lvbuildengineer = lvbuildengineer;
so.data.lvbuildsolider = lvbuildsolider;
so.data.lvtwiper = lvtwiper;
so.data.lvtflak = lvtflak;
so.data.homming = lvthomming;
so.data.gamelevel = gamelevel;
so.data.lvhealth = lvhealth;
so.data.lvspeed = lvspeed;
so.data.lveffect = lveffect;
so.data.money = money;
game.lvaacannon = so.data.lvaacannon;
game.lvflakcannon = so.data.lvflakcannon;
game.lvbulidbullet = so.data.lvbulidbullet;
game.lvbuildengineer = so.data.lvbuildengineer;
game.lvbuildsolider = so.data.lvbuildsolider;
game.lvtwiper = so.data.lvtwiper;
game.lvtflak = so.data.lvtflak;
game.lvthomming = so.data.lvthomming;
game.lvhealth = so.data.lvhealth;
game.lvspeed = so.data.lvspeed;
game.lveffect = so.data.lveffect;
game.money = so.data.money;
game.gamelevel = so.data.gamelevel;
game.gamepause = false;
shop.visible = false;
game.visible = true;
game.g_root.enmax.visible = true;
game.g_root.leftcount.visible = true;
game.g_root.encount.visible = true;
game.g_root.bulletflak.visible = true;
so.flush();
so.close();
}
public function addBuildEngineer(_arg1:MouseEvent){
if (lvbuildengineer < 4){
if (game.css[("skill6" + lvbuildengineer)] != null){
if (money >= game.css[("skill6" + lvbuildengineer)].money){
money = (money - game.css[("skill6" + lvbuildengineer)].money);
if (lvbuildengineer < 4){
lvbuildengineer++;
};
so.data.lvbuildengineer = lvbuildengineer;
bengineertxt.text = ("LV" + lvbuildengineer);
moneytext.text = money;
detailtxt.text = game.css[("skill6" + lvbuildengineer)].detail;
costtxt.text = game.css[("skill6" + lvbuildengineer)].money;
typetxt.text = game.css[("skill6" + lvbuildengineer)].type;
};
};
};
}
public function addFlakturret(_arg1:MouseEvent){
trace(game.css[("skill4" + lvtflak)]);
if (lvtflak < 3){
if (game.css[("skill4" + (lvtflak + 1))] != null){
if (money >= game.css[("skill4" + lvtflak)].money){
money = (money - game.css[("skill4" + lvtflak)].money);
if (lvtflak < 3){
game.upgradeFlak(lvtflak);
lvtflak++;
};
so.data.lvtflak = lvtflak;
game.lvtflak = lvtflak;
trace(game.lvtflak);
tflaktxt.text = ("LV" + lvtflak);
moneytext.text = money;
detailtxt.text = game.css[("skill1" + lvflakcannon)].detail;
costtxt.text = game.css[("skill1" + lvflakcannon)].money;
typetxt.text = game.css[("skill1" + lvflakcannon)].type;
};
};
};
}
}
}//package TG_fla
Section 33
//Gmission_263 (TG_fla.Gmission_263)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class Gmission_263 extends MovieClip {
public var missiontext:TextField;
public var b_ok:SimpleButton;
public var game;
public function Gmission_263(){
addFrameScript(0, frame1, 19, frame20);
}
public function okClick(_arg1:MouseEvent){
this.visible = false;
game.gamepause = false;
}
function frame1(){
game = MovieClip(this.parent).game;
game.gamepause = true;
game.parent.shop.visible = false;
this.visible = true;
Mouse.show();
}
function frame20(){
gotoAndStop(("stage" + game.gamelevel));
if (game.css[("skill12" + game.gamelevel)] != null){
missiontext.text = game.css[("skill12" + game.gamelevel)].mstxt;
};
b_ok.addEventListener(MouseEvent.CLICK, okClick);
stop();
}
}
}//package TG_fla
Section 34
//linetoright_300 (TG_fla.linetoright_300)
package TG_fla {
import flash.display.*;
public dynamic class linetoright_300 extends MovieClip {
public var hit:hittemp;
}
}//package TG_fla
Section 35
//LOGOEND_43 (TG_fla.LOGOEND_43)
package TG_fla {
import flash.display.*;
public dynamic class LOGOEND_43 extends MovieClip {
public function LOGOEND_43(){
addFrameScript(132, frame133);
}
function frame133(){
MovieClip(root).play();
stop();
}
}
}//package TG_fla
Section 36
//LOGOPRELOAD_0_23 (TG_fla.LOGOPRELOAD_0_23)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_0_23 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_0_23(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 37
//LOGOPRELOAD_1_27 (TG_fla.LOGOPRELOAD_1_27)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_1_27 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_1_27(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 38
//LOGOPRELOAD_2_30 (TG_fla.LOGOPRELOAD_2_30)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_2_30 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_2_30(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 39
//LOGOPRELOAD_3_32 (TG_fla.LOGOPRELOAD_3_32)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_3_32 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_3_32(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 40
//LOGOPRELOAD_4_34 (TG_fla.LOGOPRELOAD_4_34)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_4_34 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_4_34(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 41
//LOGOPRELOAD_5_36 (TG_fla.LOGOPRELOAD_5_36)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_5_36 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_5_36(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 42
//LOGOPRELOAD_6_38 (TG_fla.LOGOPRELOAD_6_38)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_6_38 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_6_38(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 43
//LOGOPRELOAD_7_40 (TG_fla.LOGOPRELOAD_7_40)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class LOGOPRELOAD_7_40 extends MovieClip {
public var thenextframe;
public function LOGOPRELOAD_7_40(){
addFrameScript(0, frame1, 89, frame90);
}
function frame90(){
if (MovieClip(parent).isloaded){
MovieClip(parent).gotoAndStop(10);
} else {
thenextframe = (Math.ceil((Math.random() * 8)) + 1);
if (thenextframe == MovieClip(parent).currentFrame){
MovieClip(parent).nextFrame();
} else {
MovieClip(parent).gotoAndStop(thenextframe);
};
};
}
function frame1(){
if (Math.random() > 0.5){
scaleX = -(scaleX);
x = (x - MovieClip(parent).shiftamt);
};
}
}
}//package TG_fla
Section 44
//m_fort_gun_AAcannon_250 (TG_fla.m_fort_gun_AAcannon_250)
package TG_fla {
import flash.display.*;
public dynamic class m_fort_gun_AAcannon_250 extends MovieClip {
public var focusgun:hittemp;
}
}//package TG_fla
Section 45
//m_gameover_265 (TG_fla.m_gameover_265)
package TG_fla {
import flash.display.*;
public dynamic class m_gameover_265 extends MovieClip {
public function m_gameover_265(){
addFrameScript(19, frame20);
}
function frame20(){
stop();
gotoAndPlay(20);
}
}
}//package TG_fla
Section 46
//m_hero_fort_transform_266 (TG_fla.m_hero_fort_transform_266)
package TG_fla {
import flash.display.*;
public dynamic class m_hero_fort_transform_266 extends MovieClip {
public function m_hero_fort_transform_266(){
addFrameScript(149, frame150);
}
function frame150(){
stop();
}
}
}//package TG_fla
Section 47
//m_tutorial_bomb1_243 (TG_fla.m_tutorial_bomb1_243)
package TG_fla {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class m_tutorial_bomb1_243 extends MovieClip {
public var hit:hittemp;
public function m_tutorial_bomb1_243(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package TG_fla
Section 48
//m_tutorial_bullet_242 (TG_fla.m_tutorial_bullet_242)
package TG_fla {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class m_tutorial_bullet_242 extends MovieClip {
public var hit:hittemp;
public function m_tutorial_bullet_242(){
addFrameScript(9, frame10, 10, frame11);
}
function frame10(){
gotoAndPlay("stand");
}
function frame11(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package TG_fla
Section 49
//MainTimeline (TG_fla.MainTimeline)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class MainTimeline extends MovieClip {
public var outcss;
public var encount:TextField;
public var enmax:TextField;
public var upgrade:SimpleButton;
public var result:MovieClip;
public var curser:MovieClip;
public var urlCSS;
public var playMoreGameSub;
public var breset:SimpleButton;
public var textdie:TextField;
public var bg:MovieClip;
public var aaa:SimpleButton;
public var submitClick;
public var so:SharedObject;
public var b_mfz_logo:SimpleButton;
public var i;
public var bmoregames:SimpleButton;
public var remaintxt:TextField;
public var logomo:TextField;
public var score;
public var b_achlink;
public var b_back:SimpleButton;
public var scoretxt:TextField;
public var achClick;
public var bmenu_click;
public var b_next:SimpleButton;
public var textleft:TextField;
public var bmenu:SimpleButton;
public var moregame:SimpleButton;
public var money;
public var gamelevel;
public var now;
public var bcontinue_click;
public var EPOCH_TIME;
public var playername:TextField;
public var shop:MovieClip;
public var bsubmit:SimpleButton;
public var breset_click;
public var bcontinue:SimpleButton;
public var bmenu_backclick;
public var dieplanetxt:TextField;
public var b_ach:SimpleButton;
public var b_preload:SimpleButton;
public var b_preloadRelease;
public var allcssfile;
public var bstart:SimpleButton;
public var designCSS;
public var callrepair:MovieClip;
public var leftcount:TextField;
public var timeout:TextField;
public var tot;
public var bulletflak:TextField;
public var b_nextPress;
public var completecount;
public var hit:hittemp;
public var loadCSSComplete;
public var leftplanetxt:TextField;
public var mission:MovieClip;
public var ldrCSS;
public var moneytxt:TextField;
public var csstext;
public var g_root;
public var bstart_click;
public var gameover:MovieClip;
public var goback;
public var cssstring;
public var finishscore:TextField;
public var game:gameinline;
public var ldr:URLLoader;
public var callupgrade:MovieClip;
public var b_backPress;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 10, frame11, 15, frame16, 91, frame92, 95, frame96, 96, frame97, 105, frame106, 115, frame116, 125, frame126, 140, frame141, 147, frame148, 150, frame151, 445, frame446);
}
function frame151(){
Mouse.show();
SoundMixer.stopAll();
}
public function relesefocus2(_arg1){
stage.focus = playername;
}
function frame16(){
gotoAndPlay("go");
}
public function getURL(_arg1:String, _arg2:String){
var web:String;
var request:URLRequest;
var url = _arg1;
var method = _arg2;
web = url;
request = new URLRequest(web);
try {
navigateToURL(request, method);
} catch(e:Error) {
trace("404 not page");
};
}
function frame2(){
now = new Date();
EPOCH_TIME = now.getTime();
b_preloadRelease = function (){
getURL("http://www.mofunzone.com/", "_blank");
};
b_preload.addEventListener("mouseUp", b_preloadRelease);
stop();
}
public function ioErrorHandler(_arg1){
trace("404 not page");
}
function frame1(){
outcss = false;
designCSS = new StyleSheet();
allcssfile = new Array("design.css");
ldrCSS = new Array();
loadCSSComplete = new Array();
urlCSS = new Array();
completecount = 0;
cssstring = "";
if (outcss){
i = 0;
while (i < allcssfile.length) {
ldrCSS[i] = new URLLoader();
loadCSSComplete[i] = function (_arg1){
ldr = _arg1.target;
cssstring = (cssstring + ldr.data);
completecount++;
if (completecount >= allcssfile.length){
trace(cssstring);
designCSS.parseCSS(cssstring);
play();
};
};
trace(allcssfile[i]);
urlCSS[i] = new URLRequest(("project/css/" + allcssfile[i]));
ldrCSS[i].addEventListener(Event.COMPLETE, loadCSSComplete[i]);
ldrCSS[i].load(urlCSS[i]);
stop();
i++;
};
} else {
csstext = "bullet41{style:4;hp:1;scaleY:1;type:bomb;damage:30;speed:12;scaleX:1;linkage:bullethomming2;layer:playerbullet_layer;}enemy21{maxhp:180;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun11;scaleX:1;linkage:en2;gfx:enexplode1;walknum:0;speed:5;}bullet10{packset:true;style:10;type:bullet;linkage:ebullet;layer:enemybullet_layer;clockfunction:functionMap;style2:35;clock:bullet10;hp:1;frame100:destroy;damage:20;speed:6;scaleX:1;linkage2:emissile1;scaleY:1;}creator0{clock:creator0;linkage:?????;layer:door_layer;clockfunction:functionMap;}skill121{msname:MISSION 1-1;mstxt:Destroy all enemies;}gun3{cooldown:0;mag:10;targetangle:270;gun:gun1;way:1;frq:50;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet3;}bullet13{frame300:destroy;style:13;type:bullet;linkage:ebullet;layer:enemybullet_layer;clockfunction:functionMap;style2:35;clock:bullet13;hp:1;packset:true;damage:20;speed:4;scaleX:1;linkage2:emissile1;scaleY:1;}enemy4{maxhp:300;sfx:sfxexsmall;scaleY:1;type:unit;speed:2;scaleX:1;linkage:troopspecial;layer:player_layer;gfx:playexplode;initobject:initEnemy1;gun:gun2;}bullet17{style:17;type:bomb;linkage:ebomb2;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet17;hp:50;gfx:gfxbomb2;damage:20;speed:1;scaleX:1;scaleY:1;}enemy36{maxhp:180;scaleY:1;type:bomb;damage:50;gun:gun24;scaleX:1;linkage:em3;layer:enemy_layer;walknum:5;gfx:enexplode2;initobject:initwalk1;sfx:sfxexbig;}skill10{type:Flag Cannon;detail:Increase duration by 0.5 second and increase damage.;money:2000;}skill12{type:Flag Cannon;detail:Increase duration by 0.5 second and increase damage.;money:7000;}enemy93{clockfunction:functionMap;timesend:100;army:enemy0;linkage:upgrade;layer:player_layer;objective:upgrade;type:building;initobject:initBuilding;clock:enemy93;maxhp:300;send:100;by:440;bx:50;}skill51{time:130;type:Manufacture Building;detail:Produce 'Flak shell' faster and install additional flak cannon on Shell factory if maximum upgraded.;money:3000;}enemy91{nameturret:flak;scaleY:0.3;clockfunction:functionMap;scaleX:0.3;linkage:????;layer:player_layer;by:440;bx:320;}skill73{time:30;type:Barack Building;detail:Manufacture tanks faster, you’ll be able to manufacture 'Special Tanks' if you get all 4 upgrades here.;money:8000;}enemy94{clock:enemy94;maxhp:300;objective:sendsolider;clockfunction:functionMap;initobject:initBuilding;army:enemy1;linkage:barrack;layer:player_layer;by:440;type:building;bx:140;timesend:150;}skill14{type:Flag Cannon;detail:Max level;money:10000;}bullet62{clock:bullet62;style:0;hp:1;scaleY:0.2;type:bullet;damage:30;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}bullet31{style:3;hp:1;scaleY:1;type:bullet;damage:75;speed:5;scaleX:1;linkage:bulletwiper2;layer:playerbullet_layer;}gun12{cooldown:0;mag:3;targetangle:90;gun:gun1;way:1;frq:10;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet12;}skill62{max:2;type:Engineer Building;detail:Increase the maximum number of engineers you can use at once, if you get all 4 upgrades here you will get an automatic repair on the main fort.;money:4000;}skill122{msname:MISSION 1-2;mstxt:Destroy the nuclear missile before it reaches your base.;}enemy33{maxhp:220;gfx:enexplode1;layer:enemy_layer;gun:gun23;scaleX:1;linkage:es4;scaleY:1;walknum:3;initobject:initwalk1;sfx:sfxexsmall;}enemy1{maxhp:1;sfx:sfxexsmall;scaleY:1;type:unit;speed:2;scaleX:1;linkage:troop;layer:player_layer;gfx:playexplode;initobject:initEnemy1;gun:gun1;}skill84{hp:80;type:Armor;detail:Max level;money:5000;}bullet22{style:35;type:bullet;linkage:emissile3;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet22;hp:50;gfx:emisshit;damage:20;speed:5;scaleX:1;scaleY:1;}creator1{frame110:createObjectSet,enemy20,enemy21,enemy25,enemy34,34,16,33,17;clockfunction:functionMap;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator1;frame6:createObject,enemy98;frame100:createObjectSet,enemy20,enemy21,enemy25,enemy34,34,16,33,17;frame9:createObject,enemy91;frame7:createObject,enemy90;linkage:?????;frame150:goto,70;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill123{msname:MISSION 1-3;mstxt:Destroy all enemies;}creator7{clockfunction:functionMap;frame101:goto,80;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator7;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy24,enemy27,enemy31,enemy32,enemy35,7,28,15,7,28,15;frame9:createObject,enemy91;frame7:createObject,enemy90;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}creator3{frame110:createObjectSet,enemy21,enemy25,enemy26,enemy30,enemy35,30,7,21,21,21;clockfunction:functionMap;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator3;frame6:createObject,enemy98;frame100:createObjectSet,enemy21,enemy25,enemy26,enemy30,enemy35,30,7,21,21,21;frame9:createObject,enemy91;frame7:createObject,enemy90;linkage:?????;frame150:goto,70;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill21{way:8;damage:6;type:Wiper Missile Turret;detail:1 to 8 Ways missiles and increase damage.;money:7000;}skill32{reload:30;mag:6;type:Homming Missile Turret;detail:Fire 6 homing missiles.;money:9500;}creator10{frame70:createObjectSet,enemy22,enemy24,enemy28,enemy29,enemy31,enemy32,enemy35,20,15,5,15,15,20,10;clockfunction:functionMap;frame85:createObjectSet,enemy22,enemy24,enemy28,enemy29,enemy31,enemy32,enemy35,20,15,5,15,15,20,10;frame101:goto,20;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator10;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy24,enemy28,enemy29,enemy31,enemy32,enemy35,20,15,5,15,15,20,10;frame9:createObject,enemy91;frame7:createObject,enemy90;frame50:createObject,enemy86;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}creator9{clockfunction:functionMap;frame101:goto,80;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator9;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy23,enemy26,enemy27,enemy31,enemy32,enemy34,20,15,5,15,15,20,10;frame9:createObject,enemy91;frame7:createObject,enemy90;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill50{time:0;type:Manufacture Building;detail:Produce 'Flak shell' faster and install additional flak cannon on Shell factory if maximum upgraded.;money:2000;}skill100{bullet:1;detail:Increase efficiency of all units;type:Effect;damage:0;money:2000;}enemy5{maxhp:450;scaleY:1;type:unit;layer:player_layer;speed:-3;scaleX:1;linkage:transportplane;gfx:playexplode;walknum:10;initobject:supplymission;sfx:sfxexsmall;}skill74{timespecial:100;time:40;type:Barack Building;detail:Max level;money:8000;}enemy31{maxhp:220;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun21;scaleX:1;linkage:es2;gfx:enexplode1;walknum:2;initobject:initwalk1;spin:true;}config{timeflak0:38;timegfx:50;flakminidamage4:0.8;timestrom:150;timeflak4:90;flakdamage2:3;timeflakmini0:30;firedamage:1;timeflakmini1:30;aadmg:40;swap:10;flakminidamage0:0.2;flakminidamage1:0.2;timeflakmini4:65;flakminidamage3:0.6;goldarea:200;flakdamage4:3;timeflakmini2:35;flakdamage3:3;timeflak1:50;flakdamage0:1.5;timenature:50;timeflakmini3:40;flakdamage1:3;scorepoint:150;timesend:100;timeflak2:63;timeflak3:75;flakminidamage2:0.4;randomtime:30;money:50;}gun2{cooldown:0;mag:10;targetangle:270;gun:gun1;way:1;frq:10;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet42;}gun26{cooldown:0;mag:1;targetangle:90;gun:gun1;way:2;frq:10;angle:10;shoot:ShootbyTargetAngle;reload:50;bullet:bullet17;}skill52{time:110;type:Manufacture Building;detail:Produce 'Flak shell' faster and install additional flak cannon on Shell factory if maximum upgraded.;money:4000;}gun17{cooldown:0;mag:1;targetangle:90;gun:gun1;way:3;frq:10;angle:25;shoot:ShootbyTargetAngle;reload:50;bullet:bullet16;}gun27{cooldown:0;mag:1;targetangle:90;gun:gun1;way:3;frq:10;angle:30;shoot:ShootbyTargetAngle;reload:50;bullet:bullet23;}bullet12{frame300:destroy;style:13;type:bullet;linkage:ebullet;layer:enemybullet_layer;clockfunction:functionMap;style2:35;clock:bullet13;hp:1;packset:true;damage:20;speed:4;scaleX:1;linkage2:emissile1;scaleY:1;}gun23{cooldown:0;mag:1;targetangle:90;gun:gun1;way:4;frq:10;angle:90;shoot:ShootbyTargetAngle;reload:50;bullet:bullet22;}enemy86{maxhp:500;sfx:sfxexbig;scaleY:2;type:bomb;speed:3;scaleX:2;linkage:emissile3;layer:enemy_layer;gfx:emisshit;initobject:initmissile;type2:mission;}bullet20{style:35;type:bullet;linkage:emissile1;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet20;hp:50;gfx:emisshit;damage:20;speed:5;scaleX:1;scaleY:1;}gun25{cooldown:0;mag:1;targetangle:90;gun:gun1;way:7;frq:60;angle:15;shoot:ShootbyTargetAngle;reload:50;bullet:bullet23;}enemy38{type:boss;sfx:sfxexboss;linkage:boss2;layer:enemy_layer;time:170;initobject:initboss1;maxhp:30000;gfx:enexplode3;damage:50;gun:gun26;scaleX:1;scaleY:1;speed:4;}skill4{bullet:bullet58;detail:Max level;critical:30;type:AAcannon;reload:36;money:10000;}enemy28{maxhp:600;sfx:sfxexbig;scaleY:1;layer:enemy_layer;speed:2;scaleX:1;linkage:eb4;countf:3;gfx:enexplode3;walknum:1;initobject:initwalk1;gun:gun18;}enemy90{nameturret:homming;scaleY:0.3;clockfunction:functionMap;scaleX:0.3;linkage:????;layer:player_layer;by:440;bx:320;}skill90{speed:0;type:Speed;detail:Increase maximum speed of units;money:2000;}bullet42{style:4;hp:1;scaleY:1;type:bomb;damage:30;speed:12;scaleX:1;linkage:bullethomming3;layer:playerbullet_layer;}bullet63{clock:bullet62;style:0;hp:1;scaleY:0.2;type:bullet;damage:30;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}skill101{bullet:2;detail:Increase efficiency of all units;type:Effect;damage:5;money:3000;}bullet18{style:18;type:bomb;gfx2:flamebomb3;linkage:ebomb3;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet18;hp:50;gfx:gfxbomb3;damage:20;speed:1;scaleX:1;scaleY:1;}skill124{msname:MISSION 1-4;mstxt:Destroy the boss.;}bullet26{clock:bullet23;style:23;hp:1;scaleY:1;clockfunction:functionMap;damage:90;speed:6;scaleX:1;linkage:bulletboss1;layer:enemybullet_layer;frame300:destroy;}gun16{cooldown:0;mag:2;targetangle:90;gun:gun1;way:1;frq:10;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet16;}gun21{cooldown:0;mag:10;targetangle:90;gun:gun1;way:2;frq:15;angle:90;shoot:ShootGravity;reload:10;bullet:bullet20;}enemy97{clock:enemy97;maxhp:300;objective:supply;clockfunction:functionMap;timetosend:150;army:enemy3;linkage:bulletfac;layer:player_layer;by:440;type:building;initobject:initBuilding;bx:500;}skill3{bullet:bullet58;detail:Increase critical chance by 5% and increase damage.;critical:15;type:AAcannon;reload:36;money:10000;}creator8{frame9:createObject,enemy91;frame130:goto,80;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;clockfunction:functionMap;frame8:createObject,enemy92;clock:creator8;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy24,enemy27,enemy28,enemy21,enemy26,20,20,15,15,15,15;frame2:createObject,enemy94;frame7:createObject,enemy90;frame50:createObject,enemy38;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}bullet52{style:5;hp:1;scaleY:1;type:bomb;damage:30;speed:15;scaleX:1;linkage:bulletwiper3;layer:playerbullet_layer;gfx:gfxflackbomb;}enemy80{linkage:gidetoright;visible:false;layer:enemy_layerm;}gun4{cooldown:0;mag:10;targetangle:270;gun:gun1;way:1;frq:50;angle:110;shoot:RandomShootEx;reload:50;bullet:bullet50;}skill1{bullet:bullet56;detail:Increase critical chance by 5%;critical:5;type:AAcannon;reload:32;money:4000;}gun1{cooldown:0;mag:100;targetangle:270;gun:gun1;way:1;frq:37;angle:45;shoot:ShootbyTargetAngle;reload:50;bullet:bullet1;}bullet32{style:3;hp:1;scaleY:1;type:bullet;damage:75;speed:5;scaleX:1;linkage:bulletwiper3;layer:playerbullet_layer;}creator11{clockfunction:functionMap;frame101:goto,80;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator11;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy24,enemy28,enemy29,enemy31,enemy33,enemy36,20,15,5,15,15,20,10;frame9:createObject,enemy91;frame7:createObject,enemy90;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill125{msname:MISSION 2-1;mstxt:Protect your suppliers. At least 6 suppliers have to survive. If they all survive, you win!;}skill63{max:3;type:Engineer Building;detail:Increase the maximum number of engineers you can use at once, if you get all 4 upgrades here you will get an automatic repair on the main fort.;money:8000;}skill43{type:Flag Missile Turret;detail:Max level;money:9500;}gun13{cooldown:0;mag:3;targetangle:90;gun:gun1;way:3;frq:10;angle:45;shoot:ShootbyTargetAngle;reload:50;bullet:bullet13;}skill53{time:90;type:Manufacture Building;detail:Manufacture 'Flak shell' faster and install additional flak cannons on Shell factory.;money:8000;}skill126{msname:MISSION 2-2;mstxt:Protect your mobile lab. You mobile lab have to survive. Once all of them make it through the screen safely, you win!;}skill127{msname:MISSION 2-3;mstxt:Destroy all enemies;}skill80{hp:0;type:Armor;detail:Increase maximum armor of all units;money:2000;}enemy81{linkage:gidetoleft;visible:false;layer:enemy_layerm;}skill102{bullet:3;detail:Increase efficiency of all units;type:Effect;damage:10;money:4000;}bullet16{style:16;type:bomb;linkage:ebomb1;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet16;hp:50;gfx:gfxbomb1;damage:20;speed:1;scaleX:1;scaleY:1;}skill91{speed:2;type:Speed;detail:Increase maximum speed of units;money:3000;}skill64{max:4;type:Engineer Building;detail:Max level;money:8000;}skill20{way:6;damage:2;type:Wiper Missile Turret;detail:1 to 6 Ways missiles;money:5000;}skill31{reload:30;mag:4;type:Homming Missile Turret;detail:Fire 4 homing missiles.;money:7000;}enemy32{maxhp:220;gfx:enexplode1;layer:enemy_layer;gun:gun22;scaleX:1;linkage:es3;scaleY:1;walknum:3;initobject:initwalk1;sfx:sfxexsmall;}bullet14{frame300:destroy;style:14;type:bullet;linkage:ebullet;layer:enemybullet_layer;clockfunction:functionMap;style2:35;clock:bullet14;hp:1;damage:20;speed:4;scaleX:1;linkage2:emissile2;scaleY:01;}enemy95{clock:enemy95;maxhp:300;timecreate:30;objective:repair;clockfunction:functionMap;initobject:initBuilding;army:enemy2;linkage:engineer;layer:player_layer;by:440;type:building;bx:230;}enemy25{maxhp:600;sfx:sfxexbig;scaleY:1;layer:enemy_layer;speed:2;scaleX:1;linkage:eb1;countf:3;gfx:enexplode3;walknum:1;initobject:initwalk1;gun:gun15;}skill13{type:Flag Cannon;detail:Increase duration by 1.0 second and increase damage.;money:10000;}skill40{type:Flag Missile Turret;detail:Increase duration by 0.2 second and increase damage.;money:5000;}skill11{type:Flag Cannon;detail:Increase duration by 0.5 second and increase damage.;money:4000;}bullet64{clock:bullet62;style:0;hp:1;scaleY:0.2;type:bullet;damage:30;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}creator4{clockfunction:functionMap;frame101:goto,70;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator4;frame6:createObject,enemy98;frame100:createObjectSet,enemy21,enemy25,enemy26,enemy30,enemy34,enemy35,15,7,28,20,15,15;frame9:createObject,enemy91;frame7:createObject,enemy90;frame20:createObject,enemy37;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill23{way:10;damage:6;type:Wiper Missile Turret;detail:Max level;money:9500;}enemy92{nameturret:wiper;scaleY:0.3;clockfunction:functionMap;scaleX:0.3;linkage:????;layer:player_layer;by:440;bx:320;}skill54{gun:flak;time:70;type:Manufacture Building;detail:MAX level;money:8000;}skill70{time:0;type:Barack Building;detail:Manufacture tanks faster, you will be able to manufacture 'Special Tanks' if you get all 4 upgrades here.;money:2000;}bullet23{clock:bullet23;style:23;hp:1;scaleY:1;clockfunction:functionMap;damage:40;speed:3;scaleX:1;linkage:ebomb1;layer:enemybullet_layer;frame300:destroy;}skill129{msname:MISSION 3-1;mstxt:Destroy all enemies;}enemy82{linkage:circletoleft;visible:false;layer:enemy_layerm;}gun14{cooldown:0;mag:4;targetangle:90;gun:gun1;way:1;frq:3;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet14;}skill81{hp:20;type:Armor;detail:Increase maximum armor of all units;money:3000;}enemy99{clock:enemy99;maxhp:300;clockfunction:functionMap;initobject:initPlayer;linkage:fort;layer:player_layer;by:440;type:building;bx:320;}gun0{cooldown:0;mag:10;gun:gun1;way:1;frq:50;angle:45;shoot:ShootLookingObject;reload:50;bullet:bullet0;}gun18{cooldown:0;mag:1;targetangle:90;gun:gun1;way:1;frq:10;angle:45;shoot:ShootbyTargetAngle;reload:50;bullet:bullet17;}bullet50{style:5;hp:1;scaleY:1;type:bomb;damage:30;speed:15;scaleX:1;linkage:bulletwiper3;layer:playerbullet_layer;gfx:gfxflackbomb;}skill2{bullet:bullet57;detail:Increase critical chance by 5%;critical:10;type:AAcannon;reload:35;money:7000;}bullet2{style:2;hp:1;scaleY:1.3;type:bomb;damage:150;speed:16;scaleX:1.3;linkage:bulletwiper1;layer:playerbullet_layer;gfx:gfxflackbomb;}skill42{type:Flag Missile Turret;detail:Increase duration by 0.2 second and increase damage.;money:9500;}enemy83{linkage:circletoright;visible:false;layer:enemy_layerm;}bullet27{clock:bullet23;style:23;hp:1;scaleY:1;clockfunction:functionMap;damage:90;speed:6;scaleX:1;linkage:bulletboss1;layer:enemybullet_layer;frame300:destroy;}creator2{frame110:createObjectSet,enemy20,enemy21,enemy25,enemy34,9,33,33,25;clockfunction:functionMap;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator2;frame6:createObject,enemy98;frame100:createObjectSet,enemy20,enemy21,enemy25,enemy34,9,33,33,25;frame9:createObject,enemy91;frame7:createObject,enemy90;frame50:createObject,enemy85;linkage:?????;frame150:goto,70;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill92{speed:4;type:Speed;detail:Increase maximum speed of units;money:4000;}gun19{cooldown:0;mag:1;targetangle:90;gun:gun1;way:1;frq:10;angle:45;shoot:ShootbyTargetAngle;reload:50;bullet:bullet18;}bullet40{style:4;hp:1;scaleY:1;type:bomb;damage:30;speed:12;scaleX:1;linkage:bullethomming1;layer:playerbullet_layer;}enemy2{maxhp:1;scaleY:1;type:unit;speed:0.7;scaleX:1;linkage:botengineer;repair:0.2;layer:player_layer;gfx:playexplode;initobject:initEnemy2;sfx:sfxexsmall;}enemy22{maxhp:180;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun12;scaleX:1;linkage:en3;countf:3;gfx:enexplode1;walknum:1;speed:7;}skill103{bullet:4;detail:Increase efficiency of all units;type:Effect;damage:15;money:5000;}enemy23{maxhp:180;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun13;scaleX:1;linkage:en4;countf:3;gfx:enexplode1;walknum:1;speed:7;}bullet21{style:35;type:bullet;linkage:emissile2;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet21;hp:50;gfx:emisshit;damage:20;speed:5;scaleX:1;scaleY:1;}gun24{cooldown:0;mag:1;targetangle:90;gun:gun1;way:3;frq:10;angle:30;shoot:ShootbyTargetAngle;reload:50;bullet:bullet23;}enemy27{maxhp:600;sfx:sfxexbig;scaleY:1;layer:enemy_layer;gun:gun17;scaleX:1;linkage:eb3;countf:3;gfx:enexplode3;walknum:1;initobject:initwalk1;speed:2;}skill1211{msname:MISSION 2-1;mstxt:Destroy all enemies;}enemy24{maxhp:180;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun14;scaleX:1;linkage:en5;countf:3;gfx:enexplode1;walknum:1;speed:7;}enemy34{maxhp:180;scaleY:1;type:bomb;damage:50;speed:6;scaleX:1;linkage:em1;layer:enemy_layer;walknum:4;gfx:enexplode2;initobject:initwalk1;sfx:sfxexbig;}skill128{msname:MISSION 2-4;mstxt:Destroy the boss.;}enemy84{linkage:uptodown;visible:false;layer:enemy_layerm;}enemy0{maxhp:1;scaleY:1;type:unit;speed:2;scaleX:-1;linkage:carupgrade;layer:player_layer;gfx:playexplode;sfx:sfxexsmall;}enemy98{clock:enemy98;maxhp:300;objective:supply;clockfunction:functionMap;timetosend:150;army:enemy3;linkage:bulletfac;layer:player_layer;by:440;type:building;initobject:initBuilding;bx:590;}skill33{reload:30;mag:6;type:Homming Missile Turret;detail:Max level;money:9500;}skill82{hp:40;type:Armor;detail:Increase maximum armor of all units;money:4000;}bullet1{clock:bullet1;style:1;hp:1;scaleY:0.2;type:bullet;damage:75;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}gun10{cooldown:0;mag:1;targetangle:90;gun:gun1;way:3;frq:10;angle:45;shoot:ShootbyTargetAngle;reload:50;bullet:bullet10;}enemy26{maxhp:600;sfx:sfxexbig;scaleY:1;layer:enemy_layer;gun:gun16;scaleX:1;linkage:eb2;countf:3;gfx:enexplode3;walknum:1;initobject:initwalk1;speed:2;}skill22{way:10;damage:8;type:Wiper Missile Turret;detail:1 to 10 Ways missiles and increase damage.;money:9500;}bullet30{style:3;hp:1;scaleY:1;type:bullet;damage:75;speed:5;scaleX:1;linkage:bulletwiper1;layer:playerbullet_layer;}bullet19{style:35;type:bullet;linkage:emissile1;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet19;hp:50;gfx:emisshit;damage:20;speed:5;scaleX:1;scaleY:1;}enemy30{maxhp:220;gfx:enexplode1;layer:enemy_layer;gun:gun20;scaleX:1;linkage:es1;scaleY:1;walknum:2;initobject:initwalk1;sfx:sfxexsmall;}skill1212{msname:MISSION 2-1;mstxt:Protect your main fort until 'The new weapon' is completed.;}skill71{time:10;type:Barack Building;detail:Manufacture tanks faster, you will be able to manufacture 'Special Tanks' if you get all 4 upgrades here.;money:3000;}enemy6{maxhp:450;sfx:sfxexsmall;scaleY:1;type:unit;layer:player_layer;speed:-0.3;scaleX:1;linkage:transporttruck;gfx:playexplode;walknum:10;initobject:supplymission;gun:gun2;}skill60{max:0;type:Engineer Building;detail:Increase the maximum number of engineers you can use at once, if you get all 4 upgrades here you will get an automatic repair on the main fort.;money:2000;}enemy39{type:boss;sfx:sfxexboss;linkage:boss3;layer:enemy_layer;time:170;initobject:initboss1;maxhp:1000000;gfx:enexplode3;damage:20;speed:5;scaleX:1;scaleY:1;numshoot:1;}enemy37{type:boss;sfx:sfxexboss;linkage:boss1;layer:enemy_layer;time:170;initobject:initboss1;maxhp:10000;gfx:enexplode3;damage:25;gun:gun25;scaleX:1;scaleY:1;speed:3;}gun20{cooldown:0;mag:1;targetangle:90;gun:gun1;way:2;frq:10;angle:90;shoot:ShootGravity;reload:50;bullet:bullet19;}gun22{cooldown:0;mag:1;targetangle:90;gun:gun1;way:4;frq:10;angle:90;shoot:ShootGravity;reload:50;bullet:bullet21;}enemy35{maxhp:180;scaleY:1;type:bomb;damage:50;sfx:sfxexbig;scaleX:1;linkage:em2;layer:enemy_layer;walknum:5;gfx:enexplode2;initobject:initwalk1;}skill104{bullet:5;detail:Max level;type:Effect;damage:20;money:5000;}bullet61{clock:bullet61;style:0;hp:1;scaleY:0.2;type:bullet;damage:30;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}skill41{type:Flag Missile Turret;detail:Increase duration by 0.2 second and increase damage.;money:7000;}skill1210{msname:MISSION 2-1;mstxt:Prevent all missiles from hitting any of your buildings. Destroy all 15 missiles.;}enemy85{maxhp:4000;scaleY:2;type:nuclear;layer:enemy_layer;speed:0.5;scaleX:2;linkage:ebomb3;gfx:enexplode3;walknum:6;sfx:sfxexbig;}skill93{speed:6;type:Speed;detail:Increase maximum speed of units;money:5000;}gun11{cooldown:0;mag:3;targetangle:90;gun:gun1;way:1;frq:10;angle:0;shoot:ShootbyTargetAngle;reload:50;bullet:bullet10;}skill72{time:20;type:Barack Building;detail:Manufacture tanks faster, you’ll be able to manufacture 'Special Tanks' if you get all 4 upgrades here.;money:4000;}bullet25{clock:bullet23;style:23;hp:1;scaleY:1;clockfunction:functionMap;damage:90;speed:6;scaleX:1;linkage:bulletboss1;layer:enemybullet_layer;frame300:destroy;}enemy96{clock:enemy96;maxhp:300;objective:supply;clockfunction:functionMap;timetosend:150;army:enemy3;linkage:bulletfac;layer:player_layer;by:440;type:building;initobject:initBuilding;bx:410;}skill30{reload:30;mag:2;type:Homming Missile Turret;detail:Fire 2 homing missiles.;money:5000;}creator12{clockfunction:functionMap;frame101:goto,75;frame1:createObject,enemy93;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator12;frame6:createObject,enemy98;frame100:createObjectSet,enemy22,enemy24,enemy28,enemy29,enemy32,enemy33,enemy34,enemy36,15,15,5,15,15,15,10,10;frame9:createObject,enemy91;frame7:createObject,enemy90;frame20:createObject,enemy39;linkage:?????;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}skill0{bullet:bullet55;detail:Increase critical chance by 5%;critical:5;type:AAcannon;reload:27;money:2000;}enemy29{maxhp:600;sfx:sfxexbig;scaleY:1;layer:enemy_layer;speed:2;scaleX:1;linkage:eb5;countf:3;gfx:enexplode3;walknum:1;initobject:initwalk1;gun:gun19;}enemy3{maxhp:1;scaleY:1;type:unit;speed:2;scaleX:1;linkage:bulletcar;layer:player_layer;gfx:playexplode;sfx:sfxexsmall;}enemy20{maxhp:180;sfx:sfxexsmall;scaleY:1;layer:enemy_layer;gun:gun10;scaleX:1;linkage:en1;gfx:enexplode1;walknum:0;speed:5;}skill61{max:1;type:Engineer Building;detail:Increase the maximum number of engineers you can use at once, if you get all 4 upgrades here you will get an automatic repair on the main fort.;money:3000;}bullet15{style:15;type:bomb;linkage:ebomb1;layer:enemybullet_layer;clockfunction:functionMap;frame300:destroy;clock:bullet15;hp:50;gfx:gfxbomb1;damage:20;speed:1;scaleX:1;scaleY:1;}skill94{speed:8;type:Speed;detail:Max level;money:5000;}gun15{cooldown:0;mag:1;targetangle:90;gun:gun1;way:1;frq:10;angle:45;shoot:ShootbyTargetAngle;reload:100;bullet:bullet15;}bullet0{clock:bullet0;style:0;hp:1;scaleY:0.2;type:bullet;damage:30;speed:50;scaleX:0.2;linkage:minigun;frame200:destroy;layer:playerbullet_layer;clockfunction:functionMap;}creator6{frame90:createObject,enemy6;clockfunction:functionMap;linkage:?????;frame151:goto,120;layer:door_layer;frame4:createObject,enemy96;frame2:createObject,enemy94;frame8:createObject,enemy92;clock:creator6;frame6:createObject,enemy98;frame9:createObject,enemy91;frame7:createObject,enemy90;frame1:createObject,enemy93;frame150:createObjectSet,enemy22,enemy24,enemy26,enemy27,enemy30,enemy32,7,28,15,20,15,15;frame10:createObject,enemy99;frame5:createObject,enemy97;frame3:createObject,enemy95;}bullet51{style:5;hp:1;scaleY:1;type:bomb;damage:30;speed:15;scaleX:1;linkage:bulletwiper3;layer:playerbullet_layer;gfx:gfxflackbomb;}creator5{frame960:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame400:createObject,enemy5;frame690:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1800:createObject,enemy5;frame1:createObject,enemy93;frame1200:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame120:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame6:createObject,enemy98;frame930:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame640:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame390:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1230:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1960:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1180:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame2100:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame900:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1600:createObject,enemy5;frame5:createObject,enemy97;frame1360:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1560:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame360:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame620:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame880:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame2:createObject,enemy94;frame1700:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame2160:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;linkage:?????;layer:door_layer;frame4:createObject,enemy96;frame1330:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1140:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame2000:createObject,enemy5;frame850:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame200:createObject,enemy5;frame1930:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1490:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame100:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame140:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame300:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1100:createObject,enemy5;frame600:createObject,enemy5;frame340:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame320:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame590:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame3:createObject,enemy95;frame820:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1120:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1090:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1430:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1400:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1460:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1730:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame560:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1300:createObject,enemy5;frame2200:createObject,enemy5;frame1530:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1390:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1060:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame799:createObject,enemy5;frame1500:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;clock:creator5;frame2300:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1990:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1760:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame540:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame190:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame790:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1030:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1900:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame520:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame760:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame10:createObject,enemy99;clockfunction:functionMap;frame2130:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame160:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame500:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1000:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame3500:goto,101;frame9:createObject,enemy91;frame8:createObject,enemy92;frame1790:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame1260:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame730:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame450:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame7:createObject,enemy90;frame1290:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame700:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;frame990:createObjectSet,enemy21,enemy22,enemy26,enemy27,enemy30,15,40,15,15,15;}skill83{hp:60;type:Armor;detail:Increase maximum armor of all units;money:5000;}";
designCSS.parseCSS(csstext);
};
}
function frame11(){
}
public function playmore(_arg1){
getURL("http://www.mofunzone.com/", "_blank");
}
public function loadVariablesNum(_arg1:String){
var _local2:*;
var _local3:*;
_local2 = new URLRequest(_arg1);
_local3 = new URLLoader();
_local3.addEventListener(SecurityErrorEvent.SECURITY_ERROR, ioErrorHandler);
_local3.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
_local3.load(_local2);
}
function frame446(){
this.addEventListener(Event.ENTER_FRAME, relesefocus2);
SoundMixer.stopAll();
stage.focus = playername;
Mouse.show();
finishscore.text = ("" + int(g_root.scoresubmit));
loadVariablesNum(("http://gamefilez.mofunzone.com/game_scores/defense_commander/mfz.php?" + finishscore.text));
bmenu_click = function (){
bmenu.removeEventListener("click", bmenu_click);
g_root.removeEventListener(Event.ENTER_FRAME, relesefocus2);
g_root.gotoAndStop(1, "title");
};
bmenu.addEventListener("click", bmenu_click);
submitClick = function (_arg1):void{
getURL(((((("http://www.MoFunZone.com/game_scores/defense_commander/highscore.php?" + playername.text) + "/") + EPOCH_TIME) + "/") + 2008), "_blank");
g_root.removeEventListener(Event.ENTER_FRAME, relesefocus2);
g_root.gotoAndStop(1, "title");
};
bsubmit.addEventListener("click", submitClick);
playMoreGameSub = function (_arg1):void{
getURL("http://www.mofunzone.com/", "_blank");
g_root.removeEventListener(Event.ENTER_FRAME, relesefocus2);
g_root.gotoAndStop(1, "title");
};
bmoregames.addEventListener("click", playMoreGameSub);
achClick = function (){
getURL("http://www.mofunzone.com/online_games/defense_commander.shtml", "_blank");
};
b_ach.addEventListener("click", achClick);
aaa.addEventListener("click", achClick);
stop();
}
function frame92(){
goback = false;
try {
if (goback == false){
loadVariablesNum("http://gamefilez.mofunzone.com/game_scores/defense_commander/mfz2.php");
};
} catch(e) {
};
trace(" 1");
SoundMixer.stopAll();
Mouse.show();
g_root = this;
g_root.con = false;
score = 0;
gamelevel = 0;
money = 0;
trace(" 2");
so = SharedObject.getLocal("TG");
if ((((so.data.gamelevel <= 0)) && ((so.data.money <= 0)))){
bcontinue.alpha = 0.5;
};
trace(" 3");
SoundMixer.stopAll();
bstart_click = function (){
so = SharedObject.getLocal("TG");
if (so.data.gamelevel != null){
g_root.con = true;
bstart.removeEventListener("click", bstart_click);
g_root.gotoAndStop(5);
} else {
g_root.gotoAndStop(1, "tutorial");
};
};
trace(" 4");
trace(" 5");
moregame.addEventListener("click", playmore);
b_mfz_logo.addEventListener("click", playmore);
logomo.addEventListener("click", playmore);
trace(" 6");
bcontinue_click = function (){
if (bcontinue.alpha == 0.5){
return;
};
trace("begin");
so = SharedObject.getLocal("TG");
trace(so.data.money);
if (so.data.money == null){
so.data.money = 0;
};
if (so.data.gamelevel == undefined){
so.data.gamelevel = 1;
};
so.data.scorepoint = 0;
if (so.data.gamelevel > 1){
if (so.data.gamelevel >= 12){
gamelevel = 12;
} else {
gamelevel = so.data.gamelevel;
};
so.data.gamelevel = gamelevel;
};
g_root.con = true;
bstart.removeEventListener("click", bstart_click);
g_root.gotoAndStop(1, "game");
};
b_achlink = function (){
getURL("http://www.mofunzone.com/online_games/defense_commander.shtml", "_blank");
};
bstart.addEventListener("click", bstart_click);
stop();
bcontinue.addEventListener("click", bcontinue_click);
trace(" 7");
stop();
b_ach.addEventListener("click", b_achlink);
stop();
}
public function relesefocus(_arg1){
stage.focus = tot;
}
function frame96(){
breset_click = function (_arg1){
breset.removeEventListener("click", bstart_click);
so = SharedObject.getLocal("TG");
so.clear();
so.close();
g_root.con = true;
g_root.gotoAndStop(1, "tutorial");
};
bmenu_backclick = function (_arg1){
g_root.gotoAndStop(1);
};
breset.addEventListener("click", breset_click);
bmenu.addEventListener("click", bmenu_backclick);
}
function frame97(){
Mouse.show();
stop();
SoundMixer.stopAll();
b_nextPress = function (){
play();
};
b_backPress = function (){
prevFrame();
};
b_next.addEventListener("click", b_nextPress);
b_back.addEventListener("click", b_backPress);
tot = this;
tot.addEventListener(Event.ENTER_FRAME, relesefocus);
tot.addEventListener("keyDown", onKeySkip);
}
function frame106(){
stop();
}
function frame116(){
stop();
}
public function onKeySkip(_arg1){
if (_arg1.keyCode == 75){
tot.gotoAndPlay("skip");
tot.removeEventListener(Event.ENTER_FRAME, relesefocus);
tot.removeEventListener("keyDown", onKeySkip);
};
}
public function ready(_arg1:MouseEvent){
Mouse.show();
}
function frame126(){
stop();
}
public function callUpgrade(_arg1:MouseEvent){
game.callUpgradeCar();
}
function frame141(){
tot.removeEventListener(Event.ENTER_FRAME, relesefocus);
tot.removeEventListener("keyDown", onKeySkip);
b_next.removeEventListener("click", b_nextPress);
}
function frame148(){
game.visible = true;
result.visible = false;
stop();
upgrade.addEventListener(MouseEvent.CLICK, callUpgrade);
upgrade.addEventListener(MouseEvent.MOUSE_OVER, ready);
SoundMixer.stopAll();
}
}
}//package TG_fla
Section 50
//mc_dialog_achievement_358 (TG_fla.mc_dialog_achievement_358)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class mc_dialog_achievement_358 extends MovieClip {
public var word:TextField;
public var title:TextField;
public var bclose:SimpleButton;
public var dlg;
public function mc_dialog_achievement_358(){
addFrameScript(0, frame1);
}
function frame1(){
dlg = this;
if (!bclose.hasEventListener("click")){
bclose.addEventListener("click", clickclose);
};
}
public function clickclose(_arg1){
dlg.parent.visible = false;
}
}
}//package TG_fla
Section 51
//mgui_gage_sound_74 (TG_fla.mgui_gage_sound_74)
package TG_fla {
import flash.display.*;
public dynamic class mgui_gage_sound_74 extends MovieClip {
public function mgui_gage_sound_74(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package TG_fla
Section 52
//mloged_in_status_inside_362 (TG_fla.mloged_in_status_inside_362)
package TG_fla {
import flash.display.*;
import flash.text.*;
public dynamic class mloged_in_status_inside_362 extends MovieClip {
public var word:TextField;
}
}//package TG_fla
Section 53
//position_296 (TG_fla.position_296)
package TG_fla {
import flash.display.*;
public dynamic class position_296 extends MovieClip {
public var hit:hittemp;
}
}//package TG_fla
Section 54
//result_264 (TG_fla.result_264)
package TG_fla {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class result_264 extends MovieClip {
public var bosstxt:TextField;
public var enemydestxt:TextField;
public var enemyestxt:TextField;
public var totaltxt:TextField;
public var g_root;
public var b_ok:SimpleButton;
public var bonustxt:TextField;
public var game;
public function result_264(){
addFrameScript(19, frame20);
}
public function okClick(_arg1:MouseEvent){
game.money = ((((int(game.money) + int((game.money * ((30 + (game.gamelevel * 2)) / 100)))) + int((game.dmgboss * 1.5))) + int((game.unitdestroy * 15))) - int((game.leften * 4)));
this.visible = false;
if (game.gamelevel < 12){
game.gamelevel++;
game.levelUp();
} else {
if (game.gamelevel >= 12){
g_root.parent.gotoAndPlay(1, "ending");
};
};
}
function frame20(){
game = MovieClip(this.parent).game;
g_root = this;
b_ok.addEventListener(MouseEvent.CLICK, okClick);
bosstxt.text = ("" + int((game.dmgboss * 1.5)));
enemydestxt.text = ("" + int((game.unitdestroy * 15)));
bonustxt.text = ("" + int((game.money * ((30 + (game.gamelevel * 2)) / 100))));
enemyestxt.text = ("" + int((game.leften * 4)));
totaltxt.text = ("" + ((((int(game.money) + int((game.money * ((30 + (game.gamelevel * 2)) / 100)))) + int((game.dmgboss * 1.5))) + int((game.unitdestroy * 15))) - int((game.leften * 4))));
stop();
}
}
}//package TG_fla
Section 55
//Symbol1_256 (TG_fla.Symbol1_256)
package TG_fla {
import flash.display.*;
public dynamic class Symbol1_256 extends MovieClip {
public var hit:hittemp;
public function Symbol1_256(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package TG_fla
Section 56
//thecurser_46 (TG_fla.thecurser_46)
package TG_fla {
import flash.display.*;
public dynamic class thecurser_46 extends MovieClip {
public function thecurser_46(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package TG_fla
Section 57
//THEPRELOADER_1 (TG_fla.THEPRELOADER_1)
package TG_fla {
import flash.display.*;
import flash.events.*;
public dynamic class THEPRELOADER_1 extends MovieClip {
public var shiftamt;
public var bar:MovieClip;
public var onRelease;
public var isloaded;
public function THEPRELOADER_1(){
addFrameScript(0, frame1, 9, frame10);
}
function frame10(){
stage.removeEventListener(MouseEvent.CLICK, onRelease);
}
function frame1(){
stop();
shiftamt = 17;
isloaded = false;
parent.loaderInfo.addEventListener(ProgressEvent.PROGRESS, PL_LOADING);
onRelease = function (){
};
stage.addEventListener(MouseEvent.CLICK, onRelease);
if (parent.loaderInfo.bytesLoaded >= parent.loaderInfo.bytesTotal){
parent.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, PL_LOADING);
gotoAndStop(10);
};
}
public function PL_LOADING(_arg1:ProgressEvent):void{
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = Math.round(_arg1.bytesLoaded);
_local3 = Math.round(_arg1.bytesTotal);
_local4 = (_local2 / _local3);
MovieClip(MovieClip(getChildByName("bar")).getChildByName("barmask")).scaleX = _local4;
if (_local2 == _local3){
isloaded = true;
};
}
}
}//package TG_fla
Section 58
//barrack (barrack)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class barrack extends MovieClip {
public var hit:hittemp;
public function barrack(){
addFrameScript(23, frame24, 24, frame25);
}
function frame25(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame24(){
gotoAndPlay(1);
}
}
}//package
Section 59
//bgm1 (bgm1)
package {
import flash.media.*;
public dynamic class bgm1 extends Sound {
}
}//package
Section 60
//bgm2 (bgm2)
package {
import flash.media.*;
public dynamic class bgm2 extends Sound {
}
}//package
Section 61
//boss1 (boss1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class boss1 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function boss1(){
addFrameScript(8, frame9, 39, frame40);
}
function frame9(){
gotoAndPlay("stand");
}
function frame40(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 62
//boss2 (boss2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class boss2 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function boss2(){
addFrameScript(8, frame9, 39, frame40);
}
function frame9(){
gotoAndPlay("stand");
}
function frame40(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 63
//boss3 (boss3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class boss3 extends MovieClip {
public var hit:hittemp;
public var laser:hittemp;
public function boss3(){
addFrameScript(8, frame9, 81, frame82, 97, frame98);
}
function frame82(){
gotoAndPlay("stand");
}
function frame98(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 64
//botengineer (botengineer)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class botengineer extends MovieClip {
public var hit:hittemp;
public function botengineer(){
addFrameScript(8, frame9, 26, frame27, 43, frame44, 44, frame45);
}
function frame9(){
gotoAndPlay(1);
}
function frame27(){
gotoAndPlay("walk");
}
function frame44(){
gotoAndPlay("attack");
}
function frame45(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 65
//buildingex (buildingex)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class buildingex extends MovieClip {
public function buildingex(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 66
//bullet1 (bullet1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullet1 extends MovieClip {
public var hit:MovieClip;
public function bullet1(){
addFrameScript(3, frame4, 10, frame11);
}
function frame4(){
gotoAndPlay(1);
}
function frame11(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 67
//bullet2 (bullet2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullet2 extends MovieClip {
public var hit:MovieClip;
public function bullet2(){
addFrameScript(3, frame4, 10, frame11);
}
function frame4(){
gotoAndPlay(1);
}
function frame11(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 68
//bullet3 (bullet3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullet3 extends MovieClip {
public var hit:MovieClip;
public function bullet3(){
addFrameScript(3, frame4, 10, frame11);
}
function frame4(){
gotoAndPlay(1);
}
function frame11(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 69
//bulletboss1 (bulletboss1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletboss1 extends MovieClip {
public function bulletboss1(){
addFrameScript(9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 70
//bulletcar (bulletcar)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletcar extends MovieClip {
public var hit:hittemp;
public function bulletcar(){
addFrameScript(8, frame9, 41, frame42);
}
function frame9(){
gotoAndPlay(1);
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 71
//bulletfac (bulletfac)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletfac extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public var gun2:MovieClip;
public function bulletfac(){
addFrameScript(13, frame14, 40, frame41, 41, frame42);
}
function frame14(){
gotoAndPlay(1);
}
function frame41(){
gotoAndPlay(15);
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 72
//bullethit (bullethit)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullethit extends MovieClip {
public function bullethit(){
addFrameScript(8, frame9);
}
function frame9(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 73
//bullethomming1 (bullethomming1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullethomming1 extends MovieClip {
public var hit:hittemp;
public function bullethomming1(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 74
//bullethomming2 (bullethomming2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullethomming2 extends MovieClip {
public var hit:hittemp;
public function bullethomming2(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 75
//bullethomming3 (bullethomming3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bullethomming3 extends MovieClip {
public var hit:hittemp;
public function bullethomming3(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 76
//bulletwiper1 (bulletwiper1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletwiper1 extends MovieClip {
public var hit:hittemp;
public function bulletwiper1(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 77
//bulletwiper2 (bulletwiper2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletwiper2 extends MovieClip {
public var hit:hittemp;
public function bulletwiper2(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 78
//bulletwiper3 (bulletwiper3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class bulletwiper3 extends MovieClip {
public var hit:hittemp;
public function bulletwiper3(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 79
//carupgrade (carupgrade)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class carupgrade extends MovieClip {
public var texmo:MovieClip;
public var hit:hittemp;
public function carupgrade(){
addFrameScript(0, frame1, 28, frame29, 87, frame88);
}
function frame88(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame1(){
texmo.scaleX = -1;
}
function frame29(){
gotoAndPlay("stand");
}
}
}//package
Section 80
//cbazuka (cbazuka)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class cbazuka extends MovieClip {
public var hit:hittemp;
public function cbazuka(){
addFrameScript(7, frame8, 29, frame30);
}
function frame8(){
stop();
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 81
//cerror (cerror)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
import flash.text.*;
public dynamic class cerror extends MovieClip {
public var gun1:hittemp;
public var gun5:hittemp;
public var gun3:hittemp;
public var gun4:hittemp;
public var nametext:TextField;
public var hit:hittemp;
public var gun2:hittemp;
public function cerror(){
addFrameScript(15, frame16, 17, frame18);
}
function frame18(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame16(){
gotoAndPlay(1);
}
}
}//package
Section 82
//circletoleft (circletoleft)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class circletoleft extends MovieClip {
public var position:MovieClip;
public var hit:hittemp;
public function circletoleft(){
addFrameScript(96, frame97);
}
function frame97(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 83
//circletoright (circletoright)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class circletoright extends MovieClip {
public var position:MovieClip;
public var hit:hittemp;
public function circletoright(){
addFrameScript(96, frame97);
}
function frame97(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 84
//cloudday1 (cloudday1)
package {
import flash.display.*;
public dynamic class cloudday1 extends MovieClip {
}
}//package
Section 85
//cloudday10 (cloudday10)
package {
import flash.display.*;
public dynamic class cloudday10 extends MovieClip {
}
}//package
Section 86
//cloudday2 (cloudday2)
package {
import flash.display.*;
public dynamic class cloudday2 extends MovieClip {
}
}//package
Section 87
//cloudday3 (cloudday3)
package {
import flash.display.*;
public dynamic class cloudday3 extends MovieClip {
}
}//package
Section 88
//cloudday4 (cloudday4)
package {
import flash.display.*;
public dynamic class cloudday4 extends MovieClip {
}
}//package
Section 89
//cloudday5 (cloudday5)
package {
import flash.display.*;
public dynamic class cloudday5 extends MovieClip {
}
}//package
Section 90
//cloudday6 (cloudday6)
package {
import flash.display.*;
public dynamic class cloudday6 extends MovieClip {
}
}//package
Section 91
//cloudday7 (cloudday7)
package {
import flash.display.*;
public dynamic class cloudday7 extends MovieClip {
}
}//package
Section 92
//cloudday8 (cloudday8)
package {
import flash.display.*;
public dynamic class cloudday8 extends MovieClip {
}
}//package
Section 93
//cloudday9 (cloudday9)
package {
import flash.display.*;
public dynamic class cloudday9 extends MovieClip {
}
}//package
Section 94
//cloudnight1 (cloudnight1)
package {
import flash.display.*;
public dynamic class cloudnight1 extends MovieClip {
}
}//package
Section 95
//cloudnight10 (cloudnight10)
package {
import flash.display.*;
public dynamic class cloudnight10 extends MovieClip {
}
}//package
Section 96
//cloudnight2 (cloudnight2)
package {
import flash.display.*;
public dynamic class cloudnight2 extends MovieClip {
}
}//package
Section 97
//cloudnight3 (cloudnight3)
package {
import flash.display.*;
public dynamic class cloudnight3 extends MovieClip {
}
}//package
Section 98
//cloudnight4 (cloudnight4)
package {
import flash.display.*;
public dynamic class cloudnight4 extends MovieClip {
}
}//package
Section 99
//cloudnight5 (cloudnight5)
package {
import flash.display.*;
public dynamic class cloudnight5 extends MovieClip {
}
}//package
Section 100
//cloudnight6 (cloudnight6)
package {
import flash.display.*;
public dynamic class cloudnight6 extends MovieClip {
}
}//package
Section 101
//cloudnight7 (cloudnight7)
package {
import flash.display.*;
public dynamic class cloudnight7 extends MovieClip {
}
}//package
Section 102
//cloudnight8 (cloudnight8)
package {
import flash.display.*;
public dynamic class cloudnight8 extends MovieClip {
}
}//package
Section 103
//cloudnight9 (cloudnight9)
package {
import flash.display.*;
public dynamic class cloudnight9 extends MovieClip {
}
}//package
Section 104
//cloudrain1 (cloudrain1)
package {
import flash.display.*;
public dynamic class cloudrain1 extends MovieClip {
}
}//package
Section 105
//cloudrain10 (cloudrain10)
package {
import flash.display.*;
public dynamic class cloudrain10 extends MovieClip {
}
}//package
Section 106
//cloudrain2 (cloudrain2)
package {
import flash.display.*;
public dynamic class cloudrain2 extends MovieClip {
}
}//package
Section 107
//cloudrain3 (cloudrain3)
package {
import flash.display.*;
public dynamic class cloudrain3 extends MovieClip {
}
}//package
Section 108
//cloudrain4 (cloudrain4)
package {
import flash.display.*;
public dynamic class cloudrain4 extends MovieClip {
}
}//package
Section 109
//cloudrain5 (cloudrain5)
package {
import flash.display.*;
public dynamic class cloudrain5 extends MovieClip {
}
}//package
Section 110
//cloudrain6 (cloudrain6)
package {
import flash.display.*;
public dynamic class cloudrain6 extends MovieClip {
}
}//package
Section 111
//cloudrain7 (cloudrain7)
package {
import flash.display.*;
public dynamic class cloudrain7 extends MovieClip {
}
}//package
Section 112
//cloudrain8 (cloudrain8)
package {
import flash.display.*;
public dynamic class cloudrain8 extends MovieClip {
}
}//package
Section 113
//cloudrain9 (cloudrain9)
package {
import flash.display.*;
public dynamic class cloudrain9 extends MovieClip {
}
}//package
Section 114
//cloudsnow1 (cloudsnow1)
package {
import flash.display.*;
public dynamic class cloudsnow1 extends MovieClip {
}
}//package
Section 115
//cloudsnow10 (cloudsnow10)
package {
import flash.display.*;
public dynamic class cloudsnow10 extends MovieClip {
}
}//package
Section 116
//cloudsnow2 (cloudsnow2)
package {
import flash.display.*;
public dynamic class cloudsnow2 extends MovieClip {
}
}//package
Section 117
//cloudsnow3 (cloudsnow3)
package {
import flash.display.*;
public dynamic class cloudsnow3 extends MovieClip {
}
}//package
Section 118
//cloudsnow4 (cloudsnow4)
package {
import flash.display.*;
public dynamic class cloudsnow4 extends MovieClip {
}
}//package
Section 119
//cloudsnow5 (cloudsnow5)
package {
import flash.display.*;
public dynamic class cloudsnow5 extends MovieClip {
}
}//package
Section 120
//cloudsnow6 (cloudsnow6)
package {
import flash.display.*;
public dynamic class cloudsnow6 extends MovieClip {
}
}//package
Section 121
//cloudsnow7 (cloudsnow7)
package {
import flash.display.*;
public dynamic class cloudsnow7 extends MovieClip {
}
}//package
Section 122
//cloudsnow8 (cloudsnow8)
package {
import flash.display.*;
public dynamic class cloudsnow8 extends MovieClip {
}
}//package
Section 123
//cloudsnow9 (cloudsnow9)
package {
import flash.display.*;
public dynamic class cloudsnow9 extends MovieClip {
}
}//package
Section 124
//cloudstrom1 (cloudstrom1)
package {
import flash.display.*;
public dynamic class cloudstrom1 extends MovieClip {
}
}//package
Section 125
//cloudstrom10 (cloudstrom10)
package {
import flash.display.*;
public dynamic class cloudstrom10 extends MovieClip {
}
}//package
Section 126
//cloudstrom2 (cloudstrom2)
package {
import flash.display.*;
public dynamic class cloudstrom2 extends MovieClip {
}
}//package
Section 127
//cloudstrom3 (cloudstrom3)
package {
import flash.display.*;
public dynamic class cloudstrom3 extends MovieClip {
}
}//package
Section 128
//cloudstrom4 (cloudstrom4)
package {
import flash.display.*;
public dynamic class cloudstrom4 extends MovieClip {
}
}//package
Section 129
//cloudstrom5 (cloudstrom5)
package {
import flash.display.*;
public dynamic class cloudstrom5 extends MovieClip {
}
}//package
Section 130
//cloudstrom6 (cloudstrom6)
package {
import flash.display.*;
public dynamic class cloudstrom6 extends MovieClip {
}
}//package
Section 131
//cloudstrom7 (cloudstrom7)
package {
import flash.display.*;
public dynamic class cloudstrom7 extends MovieClip {
}
}//package
Section 132
//cloudstrom8 (cloudstrom8)
package {
import flash.display.*;
public dynamic class cloudstrom8 extends MovieClip {
}
}//package
Section 133
//cloudstrom9 (cloudstrom9)
package {
import flash.display.*;
public dynamic class cloudstrom9 extends MovieClip {
}
}//package
Section 134
//critical (critical)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
import flash.text.*;
public dynamic class critical extends MovieClip {
public var critxt:TextField;
public function critical(){
addFrameScript(30, frame31);
}
function frame31(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 135
//cursor (cursor)
package {
import flash.display.*;
public dynamic class cursor extends MovieClip {
}
}//package
Section 136
//daterror (daterror)
package {
import flash.display.*;
public dynamic class daterror extends BitmapData {
public function daterror(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 137
//eb1 (eb1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class eb1 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function eb1(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 138
//eb2 (eb2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class eb2 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function eb2(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 139
//eb3 (eb3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class eb3 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function eb3(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 140
//eb4 (eb4)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class eb4 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function eb4(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay(1);
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 141
//eb5 (eb5)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class eb5 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function eb5(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 142
//ebomb1 (ebomb1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class ebomb1 extends MovieClip {
public var hit:hittemp;
public function ebomb1(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 143
//ebomb2 (ebomb2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class ebomb2 extends MovieClip {
public var hit:hittemp;
public function ebomb2(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 144
//ebomb3 (ebomb3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class ebomb3 extends MovieClip {
public var hit:hittemp;
public function ebomb3(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 145
//ebullet (ebullet)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class ebullet extends MovieClip {
public var hit:hittemp;
public function ebullet(){
addFrameScript(9, frame10, 10, frame11);
}
function frame10(){
gotoAndPlay("stand");
}
function frame11(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 146
//em1 (em1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class em1 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function em1(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 147
//em2 (em2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class em2 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function em2(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 148
//em3 (em3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class em3 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function em3(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 149
//emisshit (emisshit)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class emisshit extends MovieClip {
public function emisshit(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 150
//emissile1 (emissile1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class emissile1 extends MovieClip {
public var hit:hittemp;
public function emissile1(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 151
//emissile2 (emissile2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class emissile2 extends MovieClip {
public var hit:hittemp;
public function emissile2(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 152
//emissile3 (emissile3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class emissile3 extends MovieClip {
public var hit:hittemp;
public function emissile3(){
addFrameScript(8, frame9, 9, frame10);
}
function frame10(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame9(){
gotoAndPlay("stand");
}
}
}//package
Section 153
//en1 (en1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class en1 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function en1(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 154
//en2 (en2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class en2 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function en2(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 155
//en3 (en3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class en3 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function en3(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 156
//en4 (en4)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class en4 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function en4(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 157
//en5 (en5)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class en5 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function en5(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 158
//enbullethit (enbullethit)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class enbullethit extends MovieClip {
public function enbullethit(){
addFrameScript(3, frame4);
}
function frame4(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 159
//enemy_gage (enemy_gage)
package {
import flash.display.*;
public dynamic class enemy_gage extends MovieClip {
}
}//package
Section 160
//enexplode1 (enexplode1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class enexplode1 extends MovieClip {
public var hit:hittemp;
public function enexplode1(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 161
//enexplode2 (enexplode2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class enexplode2 extends MovieClip {
public var hit:hittemp;
public function enexplode2(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 162
//enexplode3 (enexplode3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class enexplode3 extends MovieClip {
public var hit:hittemp;
public function enexplode3(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 163
//engineer (engineer)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class engineer extends MovieClip {
public var hit:hittemp;
public var repair:MovieClip;
public function engineer(){
addFrameScript(9, frame10, 59, frame60, 60, frame61);
}
function frame10(){
gotoAndPlay("stand");
}
function frame61(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame60(){
gotoAndPlay(20);
}
}
}//package
Section 164
//es1 (es1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class es1 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function es1(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 165
//es2 (es2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class es2 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function es2(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 166
//es3 (es3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class es3 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function es3(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 167
//es4 (es4)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class es4 extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function es4(){
addFrameScript(8, frame9, 29, frame30);
}
function frame9(){
gotoAndPlay("stand");
}
function frame30(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 168
//flamebomb3 (flamebomb3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class flamebomb3 extends MovieClip {
public var hit:hittemp;
public function flamebomb3(){
addFrameScript(13, frame14, 14, frame15);
}
function frame14(){
gotoAndPlay("stand");
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 169
//fort (fort)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class fort extends MovieClip {
public var gun1:MovieClip;
public var gun5:MovieClip;
public var gun3:MovieClip;
public var gun4:MovieClip;
public var hit:hittemp;
public var gun2:MovieClip;
public function fort(){
addFrameScript(13, frame14, 63, frame64, 64, frame65);
}
function frame64(){
gotoAndPlay("allgun");
}
function frame65(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame14(){
gotoAndPlay(1);
}
}
}//package
Section 170
//gameinline (gameinline)
package {
import flash.display.*;
import GREENHERMIT.GHGun.*;
import GREENHERMIT.GHShootingStyle.*;
import GREENHERMIT.GHMovement.*;
import GREENHERMIT.GHTemplate.*;
import flash.geom.*;
import flash.events.*;
import GREENHERMIT.GHUtils.*;
import GREENHERMIT.GHDurationControl.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import GREENHERMIT.GHBulletCollection.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
import fl.transitions.*;
import fl.transitions.easing.*;
public dynamic class gameinline extends KeyframeTemplate {
public var gamesfxexbig;
public var pass;
public var hpfactor;
public var flakturret:MovieClip;
public var planeleft;
public var lvhealth;
public var ratedamage;
public var i;
public var gp3;
public var ach1;
public var ach2;
public var ach3;
public var j;
public var gp5;
public var gp4;
public var thisgide;
public var gameswap;
public var planedie;
public var lvaacannon;
public var destroybuilding;
public var nature;
public var shootdelay;
public var money;
public var missilebomb;
public var maxunit;
public var lvspeed;
public var gamesfxgun;
public var soundchannel;
public var timestrom;
public var lvbuildsolider;
public var natureclass;
public var gamesfxflak;
public var playergun2:GunDesc;
public var timeout;
public var dmgboss;
public var lvflakcannon;
public var gamesfxexsmall;
public var snow;
public var checkhit;
public var lvbuildengineer;
public var missiledie;
public var gfxclass;
public var aalv;
public var playerrepair:MovieClip;
public var timenature;
public var wiperturret:MovieClip;
public var g_root;
public var hitclick;
public var snowclass;
public var pg;
public var dashdirect;
public var unitdestroy;
public var thestrom;
public var unitcount;
public var upgrade;
public var lvthomming;
public var scorepoint;
public var hommingturret:MovieClip;
public var so:SharedObject;
public var engineer;
public var rainclass;
public var lvtflak;
public var mousepress;
public var playergun:GunDesc;
public var gamelevel;
public var superclass:KeyframeTemplate;
public var player:MovieClip;
public var pausegame;
public var leften;
public var gd1:GunDesc;
public var gd2:GunDesc;
public var gd3:GunDesc;
public var gd4:GunDesc;
public var gd6:GunDesc;
public var gd8:GunDesc;
public var shop;
public var gd5:GunDesc;
public var gd7:GunDesc;
public var gd9:GunDesc;
public var timeend;
public var stromclass;
public var gd0:GunDesc;
public var lose;
public var lvtwiper;
public var gunset;
public var shake;
public var savehp;
public var slotgd:Array;
public var sbgm2;
public var sbgm1;
public var bulletflak;
public var gfx;
public var mousecheck;
public var shaker1;
public var shaker2;
public var lvbulidbullet;
public var lveffect;
public var rain;
public var gameend;
public var gamesfxexboss;
public var gd10:GunDesc;
public var gd11:GunDesc;
public var gd12:GunDesc;
public var gameover;
public var maxengineer;
public var ratemoney;
public var lvflak;
public function gameinline(){
addFrameScript(0, frame1);
}
public function destroy(_arg1:MovieClip, _arg2=null){
_arg1.graphics.clear();
_arg1.gotoAndPlay("die");
_arg1.die = true;
}
public function initPlayer(_arg1:MovieClip){
var _local2:*;
gd0 = new GunDesc("gun1", 999999, 10, 1);
_local2 = new ShootMouse(css["bullet0"], {way:1, angle:0});
API.addShootMethod(game, world, _arg1, gd0, _local2);
gd0.pauseToggle(true);
gd1 = new GunDesc("gun2", 1, 10, 10);
_local2 = new ShootMouse(css["bullet2"], {way:1, angle:0});
API.addShootMethod(game, world, _arg1, gd1, _local2);
gd1.pauseToggle(true);
playergun = gd0;
playergun.pauseToggle(true);
player = _arg1;
_arg1.process = checkBuilding;
player.listenkey = keyProcess;
if (savehp != null){
if (savehp <= 20){
};
player.hp = savehp;
};
game.parent.bulletflak.x = player.x;
game.parent.bulletflak.y = (player.y - 105);
}
public function jump(_arg1:MovieClip, _arg2){
var _local3:*;
_arg1.gotoAndPlay("jump");
_local3 = API.getMotion(_arg1);
if ((_local3 is MapMove)){
if (_arg2[1] == null){
MapMove(_local3).jumpNow();
} else {
if ((Math.random() * 100) < int(_arg2[1])){
MapMove(_local3).jumpNow();
};
};
};
}
public function initEnemy(_arg1:MovieClip, _arg2:Object){
var _local3:*;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:*;
var _local8:*;
if (_arg1.nameturret != null){
if (_arg1.nameturret == "wiper"){
gd2 = new GunDesc("gun4", 10, 10, 20);
_local3 = new ShootbyTargetAngle(css["bullet3"], {way:4, angle:35, targetangle:270});
API.addShootMethod(game, world, _arg1, gd2, _local3);
gd2.pauseToggle(true);
wiperturret = _arg1;
_arg1.visible = false;
};
if (_arg1.nameturret == "homming"){
gd4 = new GunDesc("gun4", 2, 50, 20);
_local3 = new ShootMouse(css["bullet40"], {way:1, angle:0});
API.addShootMethod(game, world, _arg1, gd4, _local3);
gd4.pauseToggle(true);
hommingturret = _arg1;
_arg1.visible = false;
};
if (_arg1.nameturret == "flak"){
gd3 = new GunDesc("gun4", 10, 100, 20);
_local3 = new ShootMouse(css["bullet50"], {way:1, angle:0});
API.addShootMethod(game, world, _arg1, gd3, _local3);
gd3.pauseToggle(true);
flakturret = _arg1;
_arg1.visible = false;
};
};
if (_arg1.layer == "enemy_layer"){
if (_arg1.maxhp == null){
return;
};
if ((((_arg1.walknum == 4)) || ((_arg1.walknum == 5)))){
_arg1.x = ((Math.random() * 600) + 20);
_arg1.y = -40;
} else {
if (_arg1.walknum == 6){
_arg1.x = 320;
_arg1.y = -20;
} else {
if ((Math.random() * 100) > 50){
_arg1.x = -40;
} else {
_arg1.x = 680;
_arg1.speed = (-1 * _arg1.speed);
};
_arg1.y = ((Math.random() * 150) + 50);
};
};
if (_arg1.walknum == 0){
if (_arg1.x < 300){
_arg1.scaleX = -1;
} else {
_arg1.scaleX = -(_arg1.scaleX);
_arg1.scaleY = -1;
};
_local4 = new LineMove(_arg1, _arg1.speed, 0);
API.setMotion(_arg1, _local4);
} else {
if (_arg1.walknum == 1){
_local4 = new UturnMove(_arg1, _arg1.speed, 0, _arg1.countf, false);
API.setMotion(_arg1, _local4);
} else {
if (_arg1.walknum == 2){
_arg1.y = ((Math.random() * 200) + 20);
if (_arg1.x > 300){
_local6 = API.createMovieFromBase(world, css["enemy81"]);
} else {
_local6 = API.createMovieFromBase(world, css["enemy80"]);
};
_local6.y = _arg1.y;
_arg1.gide = _local6;
_local5 = new Point(_local6.position.x, _local6.position.y);
_arg1.processwalk = processWalk;
} else {
if (_arg1.walknum == 3){
_arg1.y = ((Math.random() * 200) + 20);
if (_arg1.x > 300){
_local6 = API.createMovieFromBase(world, css["enemy82"]);
} else {
_local6 = API.createMovieFromBase(world, css["enemy83"]);
};
_local6.y = _arg1.y;
_arg1.gide = _local6;
_local5 = new Point(_local6.position.x, _local6.position.y);
_arg1.processwalk = processWalk;
} else {
if (_arg1.walknum == 4){
_arg1.processwalk = processWalk;
_arg1.process = enemyBullet;
} else {
if (_arg1.walknum == 5){
_local6 = API.createMovieFromBase(world, css["enemy84"]);
_local6.x = _arg1.x;
_arg1.gide = _local6;
_local5 = new Point(_local6.position.x, _local6.position.y);
_arg1.processwalk = processWalk;
_arg1.process = enemyBullet;
};
};
};
};
};
};
_arg1.left = false;
_arg1.goleft = false;
_arg1.processunit = checkEnemy;
};
if (_arg1.layer == "player_layer"){
if (_arg1.type == "unit"){
if (_arg1.maxhp != null){
_arg1.hp = (_arg1.maxhp + css[("skill8" + lvhealth)].hp);
_arg1.currenthp = _arg1.hp;
if (_arg1.gun == null){
_arg1.speed = (_arg1.speed + css[("skill9" + lvspeed)].speed);
};
_arg1.timeswap = css.config.swap;
};
_arg1.process = checkPlayer;
};
} else {
if (_arg1.layer == "enemy_layer"){
if (_arg1.hp != null){
_arg1.hp = (_arg1.maxhp + hpfactor[gamelevel]);
};
};
};
if (((!((_arg1.bx == null))) && (!((_arg1.by == null))))){
_arg1.x = _arg1.bx;
_arg1.y = _arg1.by;
};
_arg1.hp = _arg1.maxhp;
if (_arg1.gage == null){
if (_arg1.type != "building"){
if (_arg1.layer != "enemy_layerm"){
_local7 = new enemy_gage();
_arg1.addChild(_local7);
_local7.scaleX = 0.5;
_local7.scaleY = 0.5;
_arg1.gage = _local7;
_arg1.gage.x = -10;
_local8 = _arg1.globalToLocal(new Point(_arg1.x, _arg1.y));
_arg1.gage.y = (_local8.y + 10);
if (_arg1.type == "boss"){
_arg1.gage.scaleX = 1.5;
_arg1.gage.scaleY = 0.5;
_arg1.gage.x = -38;
_arg1.gage.y = (_local8.y + 70);
};
};
};
};
API.setShooterType(_arg1);
CSSToVar.CSSApplyObject(game, world, _arg1, _arg2);
}
function frame1(){
superclass = this;
gamesfxexbig = new sfxexbig();
gamesfxexboss = new sfxexboss();
gamesfxexsmall = new sfxexsmall();
gamesfxflak = new sfxflak();
gamesfxgun = new sfxgun();
createGameStage();
hpfactor = new Array();
hpfactor[0] = 0.7;
hpfactor[1] = 0.7;
hpfactor[2] = 0.7;
hpfactor[3] = 0.7;
hpfactor[4] = 0.7;
hpfactor[5] = 3;
hpfactor[6] = 3.5;
hpfactor[7] = 3.5;
hpfactor[8] = 4;
hpfactor[9] = 5;
hpfactor[10] = 5.5;
hpfactor[11] = 6;
hpfactor[12] = 7;
hpfactor[13] = 7.5;
hpfactor[14] = 9;
hpfactor[15] = 10;
hpfactor[16] = 11;
hpfactor[17] = 12;
hpfactor[18] = 1;
hpfactor[19] = 1;
ratemoney = new Array();
ratemoney[1] = 0.7;
ratemoney[2] = 1;
ratemoney[3] = 1;
ratemoney[4] = 1;
ratemoney[5] = 1;
ratemoney[6] = 1;
ratemoney[7] = 1;
ratemoney[8] = 1;
ratemoney[9] = 1;
ratemoney[10] = 1;
ratemoney[11] = 1;
ratemoney[12] = 1;
ratemoney[13] = 2;
ratemoney[14] = 2;
ratemoney[15] = 5;
ratemoney[16] = 5;
ratemoney[17] = 5;
ratemoney[18] = 5;
ratedamage = new Array();
ratedamage[1] = 0.7;
ratedamage[2] = 1;
ratedamage[3] = 1;
ratedamage[4] = 1;
ratedamage[5] = 2;
ratedamage[6] = 2;
ratedamage[7] = 3;
ratedamage[8] = 3;
ratedamage[9] = 5;
ratedamage[10] = 4;
ratedamage[11] = 4;
ratedamage[12] = 4;
ratedamage[13] = 4;
ratedamage[14] = 5;
ratedamage[15] = 5;
ratedamage[16] = 5;
ratedamage[17] = 5;
ratedamage[18] = 5;
maxunit = new Array();
maxunit[1] = 40;
maxunit[2] = 20;
maxunit[3] = 40;
maxunit[4] = 70;
maxunit[5] = 70;
maxunit[6] = 70;
maxunit[7] = 80;
maxunit[8] = 80;
maxunit[9] = 100;
maxunit[10] = 110;
maxunit[11] = 120;
maxunit[12] = 300;
maxunit[13] = 20;
maxunit[14] = 20;
maxunit[15] = 20;
maxunit[16] = 20;
maxunit[17] = 20;
maxunit[18] = 20;
slotgd = new Array(gd0, gd1, "gd2", "gd3", "gd4", "gd5", "gd6", "gd7", "gd8", "gd9", "gd10", "gd11", "gd12");
CSSToVar.importCSSObject(css, "bullet", 100, initBullet);
CSSToVar.importCSSObject(css, "enemy", 100, initEnemy);
CSSToVar.importCSSObject(css, "creator", 100, initCreator);
CSSToVar.importCSSObject(css, "gold", 100, initGold);
CSSToVar.importCSSObject(css, "goldpoint", 100, initGoldPoint);
so = SharedObject.getLocal("TG");
shop = MovieClip(this.parent).shop;
if (so.data.gamelevel == null){
so.data.gamelevel = 1;
};
if (so.data.money == null){
so.data.money = 0;
};
gamelevel = so.data.gamelevel;
money = so.data.money;
pausegame = false;
leften = 0;
engineer = 0;
maxengineer = 1;
upgrade = 0;
destroybuilding = 0;
bulletflak = 0;
mousepress = false;
gameend = 20;
aalv = 1;
lvflak = 1;
unitcount = 0;
unitdestroy = 0;
timeend = 30;
timenature = css.config.timenature;
timestrom = css.config.timestrom;
lose = false;
gameswap = 0;
planeleft = 0;
planedie = 0;
missiledie = 0;
missilebomb = 0;
gunset = false;
dmgboss = 0;
scorepoint = 0;
shaker1 = 0;
shaker2 = 0;
timeout = 1500;
mousecheck = false;
if (so.data.lvaacannon == null){
so.data.lvaacannon = 0;
};
if (so.data.lvflakcannon == null){
so.data.lvflakcannon = 0;
};
if (so.data.lvbulidbullet == null){
so.data.lvbulidbullet = 0;
};
if (so.data.lvbuildengineer == null){
so.data.lvbuildengineer = 0;
};
if (so.data.lvbuildsolider == null){
so.data.lvbuildsolider = 0;
};
if (so.data.lvtwiper == null){
so.data.lvtwiper = 0;
};
if (so.data.lvthomming == null){
so.data.lvthomming = 0;
};
if (so.data.lvtflak == null){
so.data.lvtflak = 0;
};
if (so.data.lvhealth == null){
so.data.lvhealth = 0;
};
if (so.data.lvspeed == null){
so.data.lvspeed = 0;
};
if (so.data.lveffect == null){
so.data.lveffect = 0;
};
lvaacannon = so.data.lvaacannon;
lvflakcannon = so.data.lvflakcannon;
lvbulidbullet = so.data.lvbulidbullet;
lvbuildengineer = so.data.lvbuildengineer;
lvbuildsolider = so.data.lvbuildsolider;
lvtwiper = so.data.lvtwiper;
lvthomming = so.data.lvthomming;
lvtflak = so.data.lvtflak;
lvhealth = so.data.lvhealth;
lvspeed = so.data.lvspeed;
lveffect = so.data.lveffect;
ach1 = false;
ach2 = false;
ach3 = false;
sbgm1 = new bgm1();
sbgm2 = new bgm2();
soundchannel = null;
hitclick = false;
levelUp();
gameover = MovieClip(parent).gameover;
g_root = MovieClip(parent).g_root;
superclass.EventKBRelease = keyRelease;
superclass.EventKBPress = keyPress;
dashdirect = 0;
checkhit = false;
shootdelay = 0;
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp);
pass = false;
shake = 0;
superclass.keyFrameStyleEnterFrame = function (_arg1){
var e = _arg1;
try {
stage.focus = keyfocus;
if (destroybuilding >= 7){
gamepause = true;
};
if (destroybuilding == 6){
if (ach3 == false){
ach3 = true;
trace(game.parent.ach);
};
};
if (gamepause){
Mouse.show();
i = 0;
while (i < world.enemy_layerm.numChildren) {
thisgide = world.enemy_layerm.getChildAt(i);
thisgide.stop();
i++;
};
if (destroybuilding >= 7){
if (timeend > 0){
timeend--;
} else {
game.removeEventListener(Event.ENTER_FRAME, EnterFrame);
game.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
game.removeEventListener(MouseEvent.MOUSE_UP, mouseUp);
game.keyfocus.removeEventListener(KeyboardEvent.KEY_DOWN, keydown);
game.keyfocus.removeEventListener(KeyboardEvent.KEY_UP, keyup);
g_root.gotoAndStop(1, "submit");
};
};
if (lose == true){
if (timeend > 0){
timeend--;
} else {
game.removeEventListener(Event.ENTER_FRAME, EnterFrame);
game.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
game.removeEventListener(MouseEvent.MOUSE_UP, mouseUp);
game.keyfocus.removeEventListener(KeyboardEvent.KEY_DOWN, keydown);
game.keyfocus.removeEventListener(KeyboardEvent.KEY_UP, keyup);
g_root.gotoAndStop(1, "submit");
};
};
return;
} else {
game.parent.shop.visible = false;
i = 0;
while (i < world.enemy_layerm.numChildren) {
thisgide = world.enemy_layerm.getChildAt(i);
thisgide.play();
i++;
};
};
if (lose == true){
game.parent.gameover.visible = true;
if (game.parent.currentFrame != 20){
game.parent.gameover.play();
} else {
game.parent.gameover.stop();
};
if (timeend > 0){
timeend--;
} else {
gamepause = true;
};
} else {
game.parent.gameover.visible = false;
};
game.parent.leftcount.text = leften;
game.parent.encount.text = engineer;
game.parent.enmax.text = (" / " + (maxengineer + css[("skill6" + lvbuildengineer)].max));
game.parent.bulletflak.text = int(bulletflak);
game.parent.curser.x = mouseX;
game.parent.curser.y = mouseY;
game.parent.moneytxt.text = money;
game.parent.result.visible = false;
game.parent.remaintxt.text = (maxunit[gamelevel] - unitcount);
game.parent.scoretxt.text = scorepoint;
g_root.scoresubmit = scorepoint;
game.parent.timeout.text = int((timeout / 25));
Mouse.hide();
if (upgrade <= 0){
game.parent.upgrade.alpha = 0.25;
} else {
game.parent.upgrade.alpha = 1;
};
if (player){
keyProcess(player);
if ((((((lvtwiper > 0)) && ((lvthomming > 0)))) && ((lvtflak > 0)))){
player.gotoAndPlay("allgun");
} else {
if ((((((lvtwiper > 0)) && ((lvthomming <= 0)))) && ((lvtflak <= 0)))){
player.gotoAndPlay("wiper");
gd2.pauseToggle(false);
} else {
if ((((((lvtwiper <= 0)) && ((lvthomming > 0)))) && ((lvtflak <= 0)))){
player.gotoAndPlay("missile");
} else {
if ((((((lvtwiper <= 0)) && ((lvthomming <= 0)))) && ((lvtflak > 0)))){
player.gotoAndPlay("flak");
} else {
if ((((((lvtwiper > 0)) && ((lvthomming > 0)))) && ((lvtflak <= 0)))){
player.gotoAndPlay("missilewiper");
} else {
if ((((((lvtwiper > 0)) && ((lvthomming <= 0)))) && ((lvtflak > 0)))){
player.gotoAndPlay("flakwiper");
} else {
if ((((((lvtwiper <= 0)) && ((lvthomming > 0)))) && ((lvtflak > 0)))){
player.gotoAndPlay("missileflak");
};
};
};
};
};
};
};
player.gun1.angle = API.findAngle(player, new Point(world.mouseX, world.mouseY));
player.gun1.rotation = (player.gun1.angle + 90);
player.gun2.rotation = (player.gun1.angle + 90);
if (player.gun3){
gp3 = player.gun3.localToGlobal(new Point(player.gun3.x, player.gun3.y));
hommingturret.x = (gp3.x + 50);
hommingturret.y = (gp3.y + 30);
gd4.pauseToggle(false);
if (lvthomming > 0){
if (gd4.shootClass == null){
i = 0;
while (i <= (lvthomming - 1)) {
upgradeHomming(i);
trace(i);
i++;
};
};
};
};
if (player.gun4){
gp4 = player.gun4.localToGlobal(new Point(player.gun4.x, player.gun4.y));
flakturret.x = (gp4.x - 50);
flakturret.y = (gp4.y + 30);
gd3.pauseToggle(false);
if (lvtflak > 0){
if (gd3.shootClass == null){
i = 0;
while (i <= (lvtflak - 1)) {
upgradeFlak(i);
trace(i);
i++;
};
};
};
};
if (player.gun5){
gp5 = player.gun5.localToGlobal(new Point(player.gun5.x, player.gun5.y));
wiperturret.x = (gp5.x + 5);
wiperturret.y = (gp5.y + 30);
gd2.pauseToggle(false);
gd2.frequency = 120;
if (lvtwiper > 0){
if (gd2.shootClass == null){
i = 0;
while (i <= (lvtwiper - 1)) {
if (i < 3){
upgradeWiper(i);
};
i++;
};
};
};
};
};
timenature--;
if (timenature < 0){
natureclass = API.getClass((("cloud" + game.parent.bg.currentLabel) + int(((Math.random() * 9) + 1))));
nature = new natureclass();
world.nature_layer.addChild(nature);
if ((Math.random() * 100) > 50){
nature.x = -30;
nature.speed = int(((Math.random() * 2) + 1));
} else {
nature.x = 670;
nature.speed = -(int(((Math.random() * 2) + 1)));
};
nature.y = ((Math.random() * 50) + 30);
nature.process = cloudUpdate;
timenature = css.config.timenature;
};
if (game.parent.bg.currentLabel == "rain"){
j = 0;
while (j < 2) {
rainclass = API.getClass(("rain" + int(((Math.random() * 2) + 1))));
rain = new rainclass();
world.nature_layer.addChild(rain);
rain.x = (Math.random() * 640);
rain.y = 0;
rain.speed = ((Math.random() * 10) + 10);
rain.process = fallingRain;
j++;
};
};
if (game.parent.bg.currentLabel == "snow"){
snowclass = API.getClass("snow");
snow = new snowclass();
world.nature_layer.addChild(snow);
snow.x = (Math.random() * 640);
snow.y = 0;
snow.speed = ((Math.random() * 5) + 2);
snow.process = fallingRain;
};
if (game.parent.bg.currentLabel == "strom"){
timestrom--;
if (timestrom < 0){
stromclass = API.getClass(("thunder" + int(((Math.random() * 3) + 1))));
thestrom = new stromclass();
world.nature_layer.addChild(thestrom);
thestrom.x = (Math.random() * 640);
thestrom.y = ((Math.random() * 100) + 30);
thestrom.process = strom;
timestrom = (Math.random() * css.config.timestrom);
};
};
if (unitcount >= maxunit[gamelevel]){
if (world.enemy_layer.numChildren <= 0){
endGame();
};
};
if (gamelevel == 5){
game.parent.leftplanetxt.visible = true;
game.parent.dieplanetxt.visible = true;
game.parent.leftplanetxt.text = ("" + planeleft);
game.parent.dieplanetxt.text = ("" + planedie);
game.parent.textleft.visible = true;
game.parent.textdie.visible = true;
game.parent.timeout.visible = false;
if (planeleft >= 6){
unitcount = 3000;
};
if (planedie >= 4){
lose = true;
gamepause = true;
};
} else {
if (gamelevel == 10){
game.parent.leftplanetxt.visible = true;
game.parent.dieplanetxt.visible = true;
game.parent.leftplanetxt.text = ("" + missiledie);
game.parent.dieplanetxt.text = ("" + missilebomb);
game.parent.textleft.visible = true;
game.parent.textdie.visible = true;
game.parent.textleft.text = "Destroy";
game.parent.textdie.text = "Losing";
if (missiledie >= 15){
unitcount = 3000;
};
if (missilebomb >= 5){
game.parent.gameover.visible = true;
game.parent.gameover.gotoAndPlay(1);
gamepause = true;
lose = true;
};
} else {
if (gamelevel == 12){
game.parent.timeout.visible = true;
game.parent.leftplanetxt.visible = false;
game.parent.dieplanetxt.visible = false;
game.parent.textleft.visible = false;
game.parent.textdie.visible = false;
timeout--;
if (timeout <= 0){
if (ach1 == false){
ach1 = true;
};
if (ach2 == false){
ach2 = true;
};
timeout = 0;
gamepause = true;
game.parent.result.visible = true;
game.parent.shop.visible = false;
g_root.gotoAndPlay(1, "ending");
};
} else {
game.parent.timeout.visible = false;
game.parent.leftplanetxt.visible = false;
game.parent.dieplanetxt.visible = false;
game.parent.textleft.visible = false;
game.parent.textdie.visible = false;
};
};
};
if (shaker2 > 0){
game.x = ((Math.random() * shaker2) + shaker2);
game.y = ((Math.random() * shaker2) + shaker2);
shaker2--;
} else {
game.x = -3;
game.y = -2;
};
if (gameswap > 0){
game.transform.colorTransform = new ColorTransform(1, 0.3, 0.3, 1, 0, 0, 0, 0);
game.parent.bg.transform.colorTransform = new ColorTransform(1, 0.3, 0.3, 0.8, 0, 0, 0, 0);
gameswap--;
} else {
game.transform.colorTransform = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
game.parent.bg.transform.colorTransform = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
};
if (mousecheck == true){
shootdelay++;
if (((player) && (((shootdelay % 7) == 0)))){
if (player.hp > 0){
playergun.shootNow();
gamesfxgun.play();
gfxclass = API.getClass(("gunfirelv" + lvaacannon));
gfx = new gfxclass();
world.gfx_layer.addChild(gfx);
pg = player.gun1.focusgun.localToGlobal(new Point(player.gun1.focusgun.x, player.gun1.focusgun.y));
gfx.x = pg.x;
gfx.y = pg.y;
gfx.angle = API.findAngle(gfx, new Point(mouseX, mouseY));
gfx.rotation = (gfx.angle + 90);
};
};
};
} catch(e:Error) {
trace(e);
};
};
stop();
}
public function initwalk1(_arg1:MovieClip){
}
public function createGameStage(){
superclass.worldlist.push({layername:"bg_layer", movieclip:null});
superclass.worldlist.push({layername:"gold_layer", movieclip:null});
superclass.worldlist.push({layername:"door_layer", movieclip:null});
superclass.worldlist.push({layername:"player_layer", movieclip:null});
superclass.worldlist.push({layername:"playerbullet2_layer", movieclip:null});
superclass.worldlist.push({layername:"enemybullet_layer", movieclip:null});
superclass.worldlist.push({layername:"enemy_layerm", movieclip:null});
superclass.worldlist.push({layername:"enemy_layer", movieclip:null});
superclass.worldlist.push({layername:"enemybullet2_layer", movieclip:null});
superclass.worldlist.push({layername:"chain_layer", movieclip:null});
superclass.worldlist.push({layername:"playerbullet_layer", movieclip:null});
superclass.worldlist.push({layername:"gfx_layer", movieclip:null});
superclass.worldlist.push({layername:"nature_layer", movieclip:null});
superclass.processlist.push("player_layer");
superclass.processlist.push("enemy_layer");
superclass.processlist.push("door_layer");
superclass.processlist.push("chain_layer");
superclass.processlist.push("enemybullet_layer");
superclass.processlist.push("enemybullet2_layer");
superclass.processlist.push("playerbullet_layer");
superclass.processlist.push("playerbullet2_layer");
superclass.processlist.push("gfx_layer");
superclass.processlist.push("nature_layer");
superclass.processfn.push("process", "buildingprocess", "movecheck", "creBullet", "listenkey", "hitsearch", "processplayer", "processunit", "processwalk", "processboss");
superclass.gamewidth = 640;
superclass.gameheight = 480;
superclass.cam = {x:0, y:0, focusobject:{x:(gamewidth / 2), y:(gameheight / 2)}, round:null};
gamepause = false;
}
public function checkBoss(_arg1:MovieClip){
var i:*;
var thisplayer:*;
var enemy = _arg1;
try {
if (enemy.linkage == "boss1"){
if (enemy.timeboss < 0){
enemy.y--;
} else {
enemy.timeboss--;
enemy.y++;
};
if (enemy.y < -20){
enemy.timeboss = enemy.time;
};
};
if (enemy.linkage == "boss2"){
if (enemy.speed > 0){
enemy.speed = -(enemy.speed);
};
if (enemy.y < 220){
enemy.y++;
enemy.goto = "R";
} else {
if (enemy.goto == "L"){
enemy.x = (enemy.x + enemy.speed);
if (enemy.x < 50){
enemy.goto = "R";
};
if (enemy.x > 590){
enemy.goto = "L";
};
};
if (enemy.goto == "R"){
enemy.x = (enemy.x - enemy.speed);
if (enemy.x > 590){
enemy.goto = "L";
};
if (enemy.x < 50){
enemy.goto = "R";
};
};
};
};
if (enemy.linkage == "boss3"){
if (enemy.timeboss < 0){
enemy.y--;
enemy.numshoot = 1;
} else {
enemy.timeboss--;
enemy.y++;
if (enemy.numshoot > 0){
if (enemy.currentLabel != "attack"){
enemy.gotoAndPlay("attack");
enemy.numshoot = 0;
};
};
};
if (enemy.y < -20){
enemy.timeboss = enemy.time;
};
if (enemy.laser){
i = 0;
while (i < world.player_layer.numChildren) {
thisplayer = world.player_layer.getChildAt(i);
if (enemy.laser.hitTestObject(thisplayer.hit)){
thisplayer.hp = (thisplayer.hp - enemy.damage);
};
i = (i + 1);
};
};
};
} catch(e:Error) {
trace("Error in checkboss!");
};
}
public function keyRelease(_arg1:Number){
}
public function upgradeWiper(_arg1:Number){
var _local2:*;
_local2 = new ShootbyTargetAngle(css[("bullet3" + _arg1)], {way:css[("skill2" + _arg1)].way, angle:15, targetangle:270, randomway:true});
API.addShootMethod(game, world, wiperturret, gd2, _local2);
}
public function processWalk(_arg1:MovieClip){
var p:*;
var enemy = _arg1;
try {
if (enemy.walknum == 4){
enemy.y = (enemy.y + enemy.speed);
} else {
if (enemy.gide == null){
enemy.hp = -100;
} else {
p = enemy.gide.localToGlobal(new Point(enemy.gide.position.x, enemy.gide.position.y));
enemy.x = p.x;
enemy.y = p.y;
};
};
} catch(e:Error) {
trace(" in processwalk!");
};
}
public function initCreator(_arg1:MovieClip, _arg2:Object){
_arg1.x = -1000;
_arg1.y = -1000;
API.setShooterType(_arg1);
CSSToVar.CSSApplyObject(game, world, _arg1, _arg2);
}
public function goLeft(_arg1:MovieClip, _arg2){
var _local3:*;
_arg1.gotoAndPlay("walk");
_local3 = API.getMotion(_arg1);
if ((_local3 is MapMove)){
if (_arg2[1] == null){
MapMove(_local3).setDirect(-1);
} else {
if ((Math.random() * 100) < int(_arg2[1])){
MapMove(_local3).setDirect(-1);
};
};
};
}
public function keyPress(_arg1:Number){
}
public function callUpgradeCar(){
var solider:*;
var mot:*;
if (upgrade > 0){
solider = API.createMovieFromBase(world, css["enemy0"]);
solider.x = 50;
solider.y = 440;
solider.terget = player;
mot = new PositionMove(solider, player, solider.speed);
API.setMotion(solider, mot);
solider.processunit = function (_arg1){
if (_arg1.hit.hitTestObject(player.hit)){
API.removeMotion(_arg1);
destroy(_arg1);
_arg1.processunit = null;
gamepause = true;
g_root.game.visible = false;
g_root.enmax.visible = false;
g_root.leftcount.visible = false;
g_root.encount.visible = false;
g_root.shop.visible = true;
g_root.bulletflak.visible = false;
shop.openShop();
};
};
upgrade--;
};
}
public function levelUp(){
var creator:*;
var s:Sound;
var soundCompleteHandler:*;
so.data.gamelevel = gamelevel;
hitclick = false;
leften = 0;
destroybuilding = 0;
unitcount = 0;
unitdestroy = 0;
timeend = 100;
lose = false;
gunset = false;
dmgboss = 0;
gameswap = 0;
if (superclass.world != null){
superclass.game.removeChild(world);
superclass.world = null;
};
if (soundchannel == null){
s = game[("sbgm" + int(((Math.random() * 2) + 1)))];
SoundMixer.stopAll();
soundchannel = s.play(1, 1);
soundCompleteHandler = function (){
var _local1:Sound;
soundchannel.removeEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);
_local1 = game[("sbgm" + int(((Math.random() * 2) + 1)))];
soundchannel = _local1.play(1, 1);
soundchannel.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);
};
soundchannel.addEventListener(Event.SOUND_COMPLETE, soundCompleteHandler);
};
createWorld();
creator = API.createMovieFromBase(world, css[("creator" + gamelevel)]);
if (gamelevel == 12){
game.parent.bg.gotoAndStop("strom");
} else {
game.parent.bg.gotoAndStop((int((Math.random() * 4)) + 1));
};
game.parent.gameover.visible = false;
game.parent.mission.visible = true;
game.parent.mission.gotoAndPlay(1);
so.data.gamelevel = gamelevel;
so.data.lvaacannon = lvaacannon;
so.data.lvflakcannon = lvflakcannon;
so.data.lvbulidbullet = lvbulidbullet;
so.data.lvbuildengineer = lvbuildengineer;
so.data.lvbuildsolider = lvbuildsolider;
so.data.lvtwiper = lvtwiper;
so.data.lvthomming = lvthomming;
so.data.lvtflak = lvtflak;
so.data.lvhealth = lvhealth;
so.data.lvspeed = lvspeed;
so.data.lveffect = lveffect;
so.data.money = money;
}
public function setWalk(_arg1:MovieClip){
var enemy = _arg1;
try {
if (enemy.time == null){
enemy.time = 10;
enemy.speed = (-1 * enemy.speed);
API.setSpeed(enemy, enemy.speed);
enemy.countfly--;
} else {
if (enemy.time < 0){
enemy.time = null;
enemy.processwalk = processWalk;
} else {
enemy.time--;
};
};
} catch(e:Error) {
trace("Error in setwalk!");
};
}
public function goto(_arg1:MovieClip, _arg2){
API.setTimeCount(_arg1, int(_arg2[1]));
}
public function sendUpgrade(_arg1:MovieClip){
if (_arg1.hp <= 0){
return;
};
if (upgrade <= 0){
if (_arg1.send <= 0){
upgrade = 1;
_arg1.send = _arg1.timesend;
} else {
_arg1.send--;
};
};
}
public function repairTerget(_arg1:MovieClip){
var gfxclass:*;
var gfx:*;
var mot:*;
var enemy = _arg1;
try {
if ((((enemy.terget.linkage == "fort")) || ((enemy.terget.linkage == "bulletfac")))){
enemy.scaleX = -1;
};
if (enemy.terget.hit != null){
if (enemy.hit.hitTestObject(enemy.terget.hit)){
if (enemy.gfxfix == null){
gfxclass = API.getClass("herofix");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
enemy.gfxfix = gfx;
gfx.x = enemy.x;
gfx.y = (enemy.y - 5);
gfx.scaleX = enemy.scaleX;
};
API.removeMotion(enemy);
enemy.terget.hp = (enemy.terget.hp + enemy.repair);
};
};
if (enemy.terget.hp <= 0){
if (enemy.home != null){
mot = new PositionMove(enemy, enemy.home, enemy.speed, false);
API.setMotion(enemy, mot);
enemy.gohome = enemy.home;
};
};
if (enemy.terget.hp >= enemy.terget.maxhp){
if (enemy.gfxfix != null){
destroy(enemy.gfxfix);
enemy.gfxfix = null;
};
enemy.terget.hp = enemy.terget.maxhp;
if (enemy.gohome == null){
if (enemy.home != null){
mot = new PositionMove(enemy, enemy.home, enemy.speed, false);
API.setMotion(enemy, mot);
enemy.gohome = enemy.home;
};
} else {
if ((((enemy.terget.linkage == "fort")) || ((enemy.terget.linkage == "bulletfac")))){
enemy.scaleX = 1;
};
if (enemy.hit.hitTestPoint(enemy.home.x, enemy.home.y, true)){
destroy(enemy);
enemy.processunit = null;
engineer++;
};
};
};
if ((((enemy.hp <= 0)) && ((enemy.die == null)))){
gfxclass = API.getClass(enemy.gfx);
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
gfx.x = enemy.x;
gfx.y = enemy.y;
destroy(enemy);
enemy.die = true;
enemy.processunit = null;
enemy.process = null;
engineer--;
};
} catch(e:Error) {
trace("Error in repairtarget!");
};
}
public function initGold(_arg1:MovieClip, _arg2:Object){
_arg1.x = ((320 + (Math.random() * css.config.goldarea)) - (css.config.goldarea / 2));
_arg1.y = ((240 + (Math.random() * css.config.goldarea)) - (css.config.goldarea / 2));
API.setShooterType(_arg1);
CSSToVar.CSSApplyObject(game, world, _arg1, _arg2);
}
public function supplymission(_arg1:MovieClip){
var _local2:*;
if (gamelevel == 5){
_arg1.x = 670;
_arg1.y = 280;
} else {
if (gamelevel == 6){
_arg1.x = 670;
_arg1.y = 440;
};
};
_local2 = new LineMove(_arg1, _arg1.speed, 0, false);
API.setMotion(_arg1, _local2);
}
public function initGoldPoint(_arg1:MovieClip, _arg2:Object){
_arg1.x = -1000;
_arg1.y = -1000;
API.setShooterType(_arg1);
CSSToVar.CSSApplyObject(game, world, _arg1, _arg2);
}
public function repairFort(_arg1:MovieClip){
var gfxclass:*;
var gfx:*;
var enemy = _arg1;
try {
if (lvbuildengineer >= 4){
if (enemy.timerepair == null){
enemy.timerepair = 200;
} else {
if (enemy.timerepair > 0){
enemy.timerepair--;
enemy.gotoAndPlay("stand");
} else {
enemy.gotoAndPlay("repair");
enemy.timerepair--;
if (enemy.timerepair <= -80){
enemy.timerepair = 100;
};
};
};
};
if (player){
if (enemy.repair.hitTestObject(player)){
player.hp = (player.hp + 3);
if (enemy.gfxfix == null){
gfxclass = API.getClass("herofix");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
enemy.gfxfix = gfx;
gfx.x = (enemy.x + 35);
gfx.y = (enemy.y - 18);
gfx.scaleX = enemy.scaleX;
};
} else {
if (enemy.gfxfix != null){
destroy(enemy.gfxfix);
enemy.gfxfix = null;
};
};
};
} catch(e:Error) {
trace("Error in repairfort!");
};
}
public function checkPlayer(_arg1:MovieClip){
var gfxclass:*;
var gfx:*;
var enemy = _arg1;
try {
if (enemy.type == "unit"){
if (enemy.gage != null){
if (enemy.walknum != null){
enemy.gage.visible = true;
enemy.gage.scaleX = 0.7;
enemy.gage.scaley = 0.7;
} else {
enemy.gage.visible = false;
};
};
};
if ((((enemy.hp <= 0)) && ((enemy.die == null)))){
if (enemy.walknum != null){
if (gamelevel == 5){
planedie++;
if (planedie >= 4){
lose = true;
};
};
if (gamelevel == 6){
lose = true;
};
};
if (enemy.gfxfix != null){
destroy(enemy.gfxfix);
enemy.gfxfix = null;
};
gfxclass = API.getClass(enemy.gfx);
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
gfx.x = enemy.x;
gfx.y = enemy.y;
if (enemy.gage != null){
destroy(enemy.gage);
enemy.gage = null;
};
enemy.die = true;
enemy.process = null;
enemy.processunit = null;
enemy.processwalk = null;
destroy(enemy);
if (enemy.sfx == null){
trace((("ศัตรู" + enemy) + "ไม่มี sfx"));
} else {
game[("game" + enemy.sfx)].play();
};
};
if ((((((enemy.x < 640)) && ((enemy.x > 0)))) || ((enemy.y > 480)))){
enemy.goleft = true;
enemy.left = true;
};
if ((((((enemy.x < 0)) || ((enemy.x > 640)))) || ((enemy.y > 480)))){
if ((((enemy.goleft == true)) && ((enemy.left == true)))){
if (enemy.walknum != null){
if (gamelevel == 5){
planeleft++;
} else {
if (gamelevel == 6){
unitcount = 3000;
};
};
};
if (enemy.gage != null){
destroy(enemy.gage);
enemy.gage = null;
};
API.removeMotion(enemy);
destroy(enemy);
enemy.processunit = null;
enemy.process = null;
};
};
if (enemy.gage != null){
enemy.gage.gotoAndStop(int(((enemy.hp * 100) / enemy.maxhp)));
};
} catch(e:Error) {
trace("erroein checkplayer");
};
}
public function initmissile(_arg1:MovieClip){
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
_arg1.x = ((Math.random() * 500) + 20);
_arg1.y = -40;
_arg1.speed = 3;
_local2 = new Array();
_local3 = 0;
while (_local3 < world.player_layer.numChildren) {
_local5 = world.player_layer.getChildAt(_local3);
if (_local5.type == "building"){
_local2.push(_local5);
};
_local3++;
};
_arg1.target = _local2[int((Math.random() * _local2.length))];
_local4 = new HomingMove(_arg1, _arg1.target, _arg1.speed, 5, true);
API.setMotion(_arg1, _local4);
}
public function goRight(_arg1:MovieClip, _arg2){
var _local3:*;
_arg1.gotoAndPlay("walk");
_local3 = API.getMotion(_arg1);
if ((_local3 is MapMove)){
if (_arg2[1] == null){
MapMove(_local3).setDirect(1);
} else {
if ((Math.random() * 100) < int(_arg2[1])){
MapMove(_local3).setDirect(1);
};
};
};
}
public function keycontrol(_arg1:MovieClip){
}
public function mouseUp(_arg1:MouseEvent){
var e = _arg1;
try {
hitclick = false;
if (player != null){
mousecheck = false;
playergun.pauseToggle(true);
};
releaseFocus();
} catch(e:Error) {
trace(e);
};
}
public function initBullet(_arg1:MovieClip, _arg2:Object){
if (_arg1.style >= 10){
_arg1.process = enemyBullet;
} else {
if ((((_arg1.style == 2)) || ((_arg1.style == 5)))){
if (_arg1.style == 2){
if (_arg1.numcout == null){
bulletflak--;
_arg1.numcount = true;
};
};
_arg1.nohit = true;
_arg1.targetXY = new Point(int(mouseX), int(mouseY));
};
_arg1.process = playerBullet;
};
API.setShooterType(_arg1);
CSSToVar.CSSApplyObject(game, world, _arg1, _arg2);
}
public function functionMap(_arg1:String, _arg2:MovieClip){
var _local3:*;
_local3 = _arg1.split(",");
if ((game[_local3[0]] is Function)){
var _local4 = game;
_local4[_local3[0]](_arg2, _local3);
};
}
public function sendSupply(_arg1:MovieClip){
var thisgd:*;
var shoot:*;
var supplier:*;
var mot:*;
var enemy = _arg1;
try {
if (lvbulidbullet >= 4){
enemy.gotoAndPlay("upgrade");
};
if (enemy.gun2){
if (enemy.getgd == null){
thisgd = new GunDesc("gun1", 1, int(((Math.random() * 30) + 100)), int(((Math.random() * 30) + 20)));
shoot = new RandomShootEx(css["bullet50"], {way:1, angle:90});
API.addShootMethod(game, world, enemy, thisgd, shoot);
thisgd.pauseToggle(false);
enemy.getgd = thisgd;
};
};
if (lvbulidbullet > 0){
enemy.timetosend = css[("skill5" + lvbulidbullet)].time;
};
if (enemy.hp <= 0){
return;
};
if (enemy.timesend <= 0){
supplier = API.createMovieFromBase(world, css["enemy3"]);
supplier.x = enemy.x;
supplier.y = enemy.y;
supplier.target = player;
mot = new PositionMove(supplier, player, supplier.speed, false);
API.setMotion(supplier, mot);
enemy.timesend = int(((Math.random() * css.config.randomtime) + css.config.timesend));
supplier.processunit = function (_arg1){
if (_arg1.hit.hitTestObject(_arg1.target.hit)){
_arg1.hp = -100;
if (lveffect > 0){
bulletflak = (bulletflak + ((Math.random() * css[("skill10" + lveffect)].bullet) / 2));
} else {
bulletflak = (bulletflak + (css[("skill10" + lveffect)].bullet / 2));
};
API.removeMotion(_arg1);
destroy(_arg1);
_arg1.processunit = null;
_arg1.process = null;
};
};
} else {
enemy.timesend--;
};
} catch(e:Error) {
trace("Error in sendsupply!");
};
}
public function hidecall(){
game.parent.callupgrade.x = -1000;
game.parent.callupgrade.y = -1000;
game.parent.callrepair.x = -1000;
game.parent.callrepair.y = -1000;
}
public function enemyBullet(_arg1:MovieClip){
var j:*;
var pos:*;
var thistarget:*;
var mot:*;
var i:*;
var thisunit:*;
var playerunit:*;
var playerbullet:*;
var gfxclass:*;
var gfx:*;
var gfx2:*;
var bullet = _arg1;
try {
if (bullet.hit == null){
return;
};
if (bullet.target != null){
return;
};
if (bullet.style == 35){
if (bullet.goto == null){
pos = int((Math.random() * world.player_layer.numChildren));
thistarget = world.player_layer.getChildAt(pos);
mot = new HomingMove(bullet, thistarget, bullet.speed, 5);
API.setMotion(bullet, mot);
bullet.goto = thistarget;
} else {
if (bullet.goto.die != null){
mot = new AngleMove(bullet, bullet.rotation, bullet.speed);
API.setMotion(bullet, mot);
};
};
};
if (bullet.type == "bomb"){
if (bullet.y >= 425){
i = 0;
while (i < world.player_layer.numChildren) {
thisunit = world.player_layer.getChildAt(i);
if (bullet.hit != null){
if (thisunit.hit != null){
if (bullet.hit.hitTestObject(thisunit.hit)){
thisunit.hp = (thisunit.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
};
};
};
i = (i + 1);
};
if (bullet.getgfx == null){
};
bullet.hp = -100;
};
};
if (bullet.goto == null){
if (bullet.type == "bomb"){
} else {
i = 0;
while (i < world.player_layer.numChildren) {
playerunit = world.player_layer.getChildAt(i);
if (playerunit.hit == null){
return;
trace(((((("มีปัญหาด้านการชน" + "โปรด เช็ค กระ สุน ศัตรู") + bullet) + "หรือ Object ของ ฝ่ายผู้เล่น") + playerunit.type) + "ไม่มี hit"));
return;
};
if (bullet.hit.hitTestObject(playerunit.hit)){
if (bullet.type == "bullet"){
if (bullet.style == 35){
playerunit.hp = (playerunit.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = -100;
bullet.target = playerunit;
if (bullet.shaker == null){
shaker2 = (shaker2 + 10);
bullet.shaker = true;
};
} else {
if (playerunit.type == "unit"){
playerunit.hp = (playerunit.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = -100;
bullet.target = playerunit;
if (bullet.shaker == null){
shaker2 = (shaker2 + 10);
bullet.shaker = true;
};
};
};
} else {
playerunit.hp = (playerunit.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = -100;
bullet.target = playerunit;
if (bullet.shaker == null){
shaker2 = (shaker2 + 10);
bullet.shaker = true;
};
};
};
i = (i + 1);
};
};
} else {
if (bullet.goto.type == "building"){
if (bullet.goto.hp <= 2){
} else {
if (bullet.hit != null){
if (bullet.goto.hit != null){
if (bullet.hit.hitTestObject(bullet.goto.hit)){
bullet.goto.hp = (bullet.goto.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = -100;
bullet.target = bullet.goto;
};
};
};
};
} else {
if (bullet.goto.type == "unit"){
if (bullet.goto.hp <= 0){
} else {
if (bullet.hit != null){
if (bullet.goto.hit != null){
if (bullet.hit.hitTestObject(bullet.goto.hit)){
bullet.goto.hp = (bullet.goto.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = -100;
bullet.target = bullet.goto;
};
};
};
};
};
};
};
j = 0;
while (j < world.playerbullet_layer.numChildren) {
playerbullet = world.playerbullet_layer.getChildAt(j);
if (((!((playerbullet.hit == null))) && (!((bullet.hit == null))))){
if (playerbullet.hit.hitTestObject(bullet.hit)){
if (bullet.target != null){
return;
};
if (playerbullet.target != null){
return;
};
if (bullet.type == "bullet"){
if (bullet.style == 35){
if (playerbullet.type == "bullet"){
playerbullet.hp = -100;
bullet.hp = (bullet.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
playerbullet.target = bullet;
} else {
playerbullet.hp = (playerbullet.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = (bullet.hp - playerbullet.damage);
};
} else {
if (playerbullet.type != "bullet"){
bullet.hp = -100;
playerbullet.hp = (playerbullet.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.target = playerbullet;
};
};
} else {
if (playerbullet.type == "bullet"){
playerbullet.hp = -100;
bullet.hp = (bullet.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
playerbullet.target = bullet;
} else {
playerbullet.hp = (playerbullet.hp - (bullet.damage + (bullet.damage * ratedamage[gamelevel])));
bullet.hp = (bullet.hp - playerbullet.damage);
};
};
};
};
j = (j + 1);
};
if ((((bullet.hp <= 0)) && ((bullet.die == null)))){
if (bullet.gfx == null){
if (bullet.style != 35){
gfxclass = API.getClass("enbullethit");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
gfx.x = bullet.x;
gfx.y = bullet.y;
} else {
gfxclass = API.getClass("emisshit");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
gfx.x = bullet.x;
gfx.y = bullet.y;
};
} else {
gfxclass = API.getClass(bullet.gfx);
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
if (bullet.linkage == "ebomb2"){
gfx.x = bullet.x;
gfx.y = (bullet.y - 20);
} else {
if (bullet.linkage == "ebomb3"){
gfx.x = (bullet.x - 80);
gfx.y = (bullet.y - 100);
if (bullet.y > 425){
gfxclass = API.getClass(bullet.gfx2);
gfx2 = new (gfxclass);
world.gfx_layer.addChild(gfx2);
bullet.getgfx2 = gfx2;
gfx2.x = bullet.x;
gfx2.y = bullet.y;
gfx2.time = css.config.timegfx;
gfx2.process = function (_arg1){
var _local2:*;
var _local3:*;
_arg1.time--;
_local2 = 0;
while (_local2 < world.player_layer.numChildren) {
_local3 = world.player_layer.getChildAt(_local2);
if (_arg1.hitTestObject(_local3.hit)){
_local3.hp = (_local3.hp - css.config.firedamage);
};
_local2++;
};
if (_arg1.time < 0){
destroy(_arg1);
_arg1.process = null;
};
};
};
} else {
gfx.x = bullet.x;
gfx.y = (bullet.y + 20);
};
};
};
if ((((((((bullet.x > 640)) || ((bullet.x < 0)))) || ((bullet.y > 480)))) || ((bullet.y < 0)))){
bullet.hp = -100;
};
bullet.visible = false;
destroy(bullet);
bullet.die = true;
bullet.process = null;
};
} catch(e:Error) {
trace("Error inenemybullet!");
};
}
public function fallingRain(_arg1:MovieClip){
var enemy = _arg1;
try {
enemy.y = (enemy.y + enemy.speed);
if (enemy.y > 480){
API.removeAllCompositClass(enemy);
world.nature_layer.removeChild(enemy);
delete ??getglobalscope
[this];
enemy.process = null;
};
} catch(e:Error) {
trace("Error in fallingrain!");
};
}
public function initEnemy1(_arg1:MovieClip){
var _local2:*;
if ((Math.random() * 100) < 50){
_arg1.x = -20;
} else {
_arg1.x = 660;
_arg1.speed = -(_arg1.speed);
};
_arg1.y = 440;
_local2 = new LineMove(_arg1, _arg1.speed, 0, false);
API.setMotion(_arg1, _local2);
_arg1.processunit = soliderWar;
}
public function initEnemy2(_arg1:MovieClip){
_arg1.processunit = repairTerget;
}
public function mouseDown(_arg1:MouseEvent){
var i:*;
var solider:*;
var mot:*;
var place:*;
var gfxclass:*;
var gfx:*;
var pg:*;
var e = _arg1;
try {
if (gamepause){
return;
};
if (player != null){
mousecheck = true;
};
releaseFocus();
if (game.parent.callupgrade.hitTestPoint(mouseX, mouseY, true)){
if (upgrade > 0){
solider = API.createMovieFromBase(world, css["enemy0"]);
solider.x = 50;
solider.y = 440;
solider.terget = player;
mot = new PositionMove(solider, player, solider.speed);
API.setMotion(solider, mot);
solider.processunit = function (_arg1){
if (_arg1.hit.hitTestObject(player.hit)){
API.removeMotion(_arg1);
destroy(_arg1);
_arg1.processunit = null;
gamepause = true;
game.parent.shop.visible = true;
};
};
upgrade--;
};
};
if (game.parent.callrepair.hitTestPoint(mouseX, mouseY, true)){
if (engineer > 0){
solider = API.createMovieFromBase(world, css["enemy2"]);
solider.x = 230;
solider.y = 440;
solider.home = new Point(solider.x, solider.y);
solider.terget = game.parent.callrepair.target;
solider.terget.terget = solider;
mot = new PositionMove(solider, solider.terget, solider.speed, false);
API.setMotion(solider, mot);
engineer--;
};
};
i = 0;
while (i < world.player_layer.numChildren) {
place = world.player_layer.getChildAt(i);
if (place.type == "building"){
if (place.hit.hitTestPoint(game.parent.curser.x, game.parent.curser.y, true)){
hitclick = true;
if (player){
playergun.pauseToggle(true);
};
if (place.hp < place.maxhp){
if (playerrepair.hp > 0){
if (engineer > 0){
solider = API.createMovieFromBase(world, css["enemy2"]);
solider.x = 230;
solider.y = 440;
solider.home = new Point(solider.x, solider.y);
solider.terget = place;
place.terget = solider;
mot = new PositionMove(solider, solider.terget, solider.speed, false);
API.setMotion(solider, mot);
engineer--;
};
};
};
};
} else {
hidecall();
checkhit = false;
};
i = (i + 1);
};
if (player != null){
if (player.hp > 0){
playergun.shootNow();
if (game.parent.shop.visible == false){
gamesfxgun.play();
};
gfxclass = API.getClass(("gunfirelv" + lvaacannon));
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
pg = player.gun1.focusgun.localToGlobal(new Point(player.gun1.focusgun.x, player.gun1.focusgun.y));
gfx.x = pg.x;
gfx.y = pg.y;
gfx.angle = API.findAngle(gfx, new Point(mouseX, mouseY));
gfx.rotation = (gfx.angle + 90);
};
};
shootdelay = 6;
if (game.parent.curser.currentFrame == 2){
game.parent.curser.gotoAndPlay();
};
} catch(e:Error) {
trace("Error occurred!");
};
}
public function createObjectSet(_arg1:MovieClip, _arg2){
var _local3:*;
var _local4:*;
var _local5:Array;
var _local6:Array;
var _local7:*;
var _local8:*;
var _local9:*;
if (unitcount < maxunit[gamelevel]){
unitcount++;
_local3 = ((_arg2.length - 1) / 2);
_local4 = 100;
_local5 = new Array();
_local6 = new Array();
_local7 = int((Math.random() * 100));
_local8 = 0;
while (_local8 < _local3) {
_local5.push(_arg2[(_local8 + 1)]);
_local6.push(_arg2[((_local3 + _local8) + 1)]);
_local4 = (_local4 - _local6[_local8]);
_local6[_local8] = _local4;
_local8++;
};
_local8 = 0;
while (_local8 < _local6.length) {
if (_local6[(_local8 - 1)] == null){
if (_local7 >= _local6[_local8]){
_local9 = API.createMovieFromBase(world, css[_local5[_local8]], {x:_arg1.x, y:_arg1.y});
return;
};
} else {
if (_local6[(_local8 + 1)] == null){
_local9 = API.createMovieFromBase(world, css[_local5[_local8]], {x:_arg1.x, y:_arg1.y});
} else {
if ((((_local6[(_local8 - 1)] > _local7)) && ((_local6[_local8] < _local7)))){
_local9 = API.createMovieFromBase(world, css[_local5[_local8]], {x:_arg1.x, y:_arg1.y});
return;
};
};
};
_local8++;
};
};
}
public function keyProcess(_arg1:MovieClip){
if (key[32]){
if (bulletflak >= 1){
gd1.shootNow();
} else {
gd1.pauseToggle(true);
};
ach1 = true;
} else {
gd1.pauseToggle(true);
};
}
public function active(_arg1:MovieClip, _arg2){
if (_arg1.active == null){
_arg1.gotoAndPlay("active");
_arg1.active = true;
} else {
if (_arg1.active == false){
_arg1.gotoAndPlay("active");
_arg1.active = true;
};
};
}
public function soliderWar(_arg1:MovieClip){
}
public function playerBullet(_arg1:MovieClip){
var i:*;
var pos:*;
var thistarget:*;
var mot:*;
var plane:*;
var gfxhitclass:*;
var gfxhit:*;
var gfxclass:*;
var gfx:*;
var bullet = _arg1;
try {
if (bullet.timedestroy != null){
bullet.hit.scaleX = 0.6;
bullet.hit.scaleY = 0.6;
if (bullet.timedestroy > 0){
bullet.timedestroy--;
} else {
bullet.hp = -100;
gfxclass = API.getClass(bullet.gfx);
gfx = new gfxclass();
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
gfx.time = css.config[("timeflakmini" + lvflak)];
gfx.x = bullet.x;
gfx.y = bullet.y;
gfx.process = function (_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
_arg1.time--;
if (_arg1.time <= 0){
destroy(_arg1);
_arg1.process = null;
};
_local2 = 0;
while (_local2 < world.enemy_layer.numChildren) {
_local3 = world.enemy_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local3.hit != null){
if (_arg1.hit.hitTestObject(_local3.hit)){
_local3.hp = (_local3.hp - css.config[("flakminidamage" + lvflak)]);
if (_local3.type == "boss"){
dmgboss = (dmgboss + css.config[("flakminidamage" + lvflak)]);
};
};
};
};
_local2++;
};
_local2 = 0;
while (_local2 < world.enemybullet_layer.numChildren) {
_local4 = world.enemybullet_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local4.hit != null){
if (_arg1.hit.hitTestObject(_local4.hit)){
if (_local4.hp != null){
_local4.hp = (_local4.hp - css.config[("flakminidamage" + lvtflak)]);
};
};
};
};
_local2++;
};
};
};
};
if (bullet.style == 0){
};
if (bullet.hit == null){
return;
};
if (bullet.style == 2){
bullet.alpha = 0.5;
bullet.hit.scaleX = 1.5;
bullet.hit.scaleY = 1.5;
if (bullet.hitTestPoint(bullet.targetXY.x, bullet.targetXY.y, true)){
gamesfxflak.play();
bullet.visible = false;
bullet.nohit = null;
API.setSpeed(bullet, 0);
bullet.hp = -100;
};
if (bullet.hp <= 0){
if (bullet.getgfx == null){
gfxclass = API.getClass(bullet.gfx);
gfx = new gfxclass();
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
gfx.time = css.config[("timeflak" + lvflakcannon)];
gfx.x = bullet.x;
gfx.y = bullet.y;
gfx.process = function (_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = 0;
while (_local2 < world.enemy_layer.numChildren) {
_local3 = world.enemy_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local3.hit != null){
if (_arg1.hit.hitTestObject(_local3.hit)){
if (_local3.hp != null){
_local3.hp = (_local3.hp - css.config[("flakdamage" + lvflakcannon)]);
if (_local3.type == "boss"){
dmgboss = (dmgboss + css.config[("flakdamage" + lvflakcannon)]);
};
};
};
};
};
_local2++;
};
_local2 = 0;
while (_local2 < world.enemybullet_layer.numChildren) {
_local4 = world.enemybullet_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local4.hit != null){
if (_arg1.hit.hitTestObject(_local4.hit)){
if (_local4.hp != null){
_local4.hp = (_local4.hp - css.config[("flakdamage" + lvflakcannon)]);
};
};
};
};
_local2++;
};
_arg1.time--;
if (_arg1.time <= 0){
destroy(_arg1);
_arg1.process = null;
};
};
};
};
};
if (bullet.style == 4){
if (bullet.goto == null){
if (world.enemy_layer.numChildren > 0){
pos = int((Math.random() * world.enemy_layer.numChildren));
thistarget = world.enemy_layer.getChildAt(pos);
mot = new HomingMove(bullet, thistarget, bullet.speed, 5);
API.setMotion(bullet, mot);
bullet.goto = thistarget;
};
} else {
if (bullet.goto.die != null){
mot = new AngleMove(bullet, bullet.rotation, bullet.speed);
API.setMotion(bullet, mot);
};
};
};
if (bullet.style == 5){
bullet.alpha = 0.5;
if (bullet.hit != null){
bullet.hit.scaleX = 0.6;
bullet.hit.scaleY = 0.6;
};
if (bullet.hitTestPoint(bullet.targetXY.x, bullet.targetXY.y, true)){
bullet.visible = false;
bullet.nohit = null;
API.setSpeed(bullet, 0);
bullet.hp = -100;
};
if (bullet.hp <= 0){
if (bullet.getgfx == null){
gfxclass = API.getClass(bullet.gfx);
gfx = new gfxclass();
world.gfx_layer.addChild(gfx);
bullet.getgfx = gfx;
gfx.time = css.config[("timeflakmini" + lvtflak)];
gfx.x = bullet.x;
gfx.y = bullet.y;
gfx.process = function (_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
_local2 = 0;
while (_local2 < world.enemy_layer.numChildren) {
_local3 = world.enemy_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local3.hit != null){
if (_arg1.hit.hitTestObject(_local3.hit)){
if (_local3.hp != null){
_local3.hp = (_local3.hp - css.config[("flakminidamage" + lvtflak)]);
if (_local3.type == "boss"){
dmgboss = (dmgboss + css.config[("flakminidamage" + lvflak)]);
};
};
};
};
};
_local2++;
};
_local2 = 0;
while (_local2 < world.enemybullet_layer.numChildren) {
_local4 = world.enemybullet_layer.getChildAt(_local2);
if (_arg1.hit != null){
if (_local4.hit != null){
if (_arg1.hit.hitTestObject(_local4.hit)){
if (_local4.hp != null){
_local4.hp = (_local4.hp - css.config[("flakminidamage" + lvtflak)]);
};
};
};
};
_local2++;
};
_arg1.time--;
if (_arg1.time <= 0){
destroy(_arg1);
_arg1.process = null;
};
};
};
};
};
i = 0;
while (i < world.enemy_layer.numChildren) {
plane = world.enemy_layer.getChildAt(i);
if (((!((plane.hit == null))) && ((bullet.nohit == null)))){
if (bullet.hit == null){
return;
};
if (bullet.hit.hitTestObject(plane.hit)){
if ((((bullet.style == 0)) || ((bullet.style == 1)))){
gfxhitclass = API.getClass("bullethit");
gfxhit = new (gfxhitclass);
world.gfx_layer.addChild(gfxhit);
gfxhit.x = (plane.x + (Math.random() * 10));
gfxhit.y = (plane.y + (Math.random() * 10));
if (bullet.target == null){
if (bullet.shooter != player){
plane.hp = (plane.hp - (bullet.damage + css[("skill10" + lveffect)].damage));
bullet.target = plane;
bullet.hp = -100;
} else {
if (lvaacannon > 0){
if ((Math.random() * 100) < css[("skill" + lvaacannon)].critical){
bullet.target = plane;
gfxclass = API.getClass("critical");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
gfx.x = plane.x;
gfx.y = plane.y;
if (lvaacannon >= 4){
plane.hp = (plane.hp - int(((bullet.damage + css.config.aadmg) + (((Math.random() * bullet.damage) + 20) * 0.3))));
gfx.critxt.text = ("" + int(((bullet.damage + css.config.aadmg) + (((Math.random() * bullet.damage) + 20) * 0.3))));
if (plane.type == "boss"){
dmgboss = (dmgboss + int(((bullet.damage + css.config.aadmg) + (((Math.random() * bullet.damage) + 20) * 0.3))));
};
} else {
plane.hp = (plane.hp - int((bullet.damage + (((Math.random() * bullet.damage) + 20) * 0.3))));
gfx.critxt.text = ("" + int((bullet.damage + (((Math.random() * bullet.damage) + 20) * 0.3))));
if (plane.type == "boss"){
dmgboss = (dmgboss + int((bullet.damage + (((Math.random() * bullet.damage) + 20) * 0.3))));
};
};
bullet.hp = (bullet.hp - 100);
} else {
if (lvaacannon >= 4){
plane.hp = (plane.hp - (bullet.damage + css.config.aadmg));
bullet.target = plane;
bullet.hp = (bullet.hp - 100);
if (plane.type == "boss"){
dmgboss = (dmgboss + (bullet.damage + css.config.aadmg));
};
} else {
plane.hp = (plane.hp - bullet.damage);
bullet.target = plane;
bullet.hp = (bullet.hp - 100);
if (plane.type == "boss"){
dmgboss = (dmgboss + bullet.damage);
};
};
};
} else {
plane.hp = (plane.hp - bullet.damage);
bullet.target = plane;
bullet.hp = -100;
if (plane.type == "boss"){
dmgboss = (dmgboss + bullet.damage);
};
};
};
};
} else {
if (bullet.style == 3){
plane.hp = (plane.hp - bullet.damage);
bullet.hp = -100;
if (plane.type == "boss"){
dmgboss = (dmgboss + css.config[("flakminidamage" + lvflak)]);
};
} else {
plane.hp = (plane.hp - bullet.damage);
bullet.hp = -100;
if (plane.type == "boss"){
dmgboss = (dmgboss + css.config[("flakminidamage" + lvflak)]);
};
};
};
};
};
i = (i + 1);
};
if ((((bullet.x > 640)) || ((bullet.x < 0)))){
bullet.hp = -100;
};
if ((((bullet.y >= 480)) || ((bullet.y <= 0)))){
bullet.hp = -100;
};
if ((((bullet.hp <= 0)) && ((bullet.die == null)))){
destroy(bullet);
bullet.die = true;
bullet.visible = false;
bullet.process = null;
};
} catch(e:Error) {
trace("Error in playerbullet!");
};
}
public function initboss1(_arg1:MovieClip){
_arg1.x = 320;
_arg1.y = -30;
_arg1.timeboss = _arg1.time;
_arg1.processboss = checkBoss;
}
public function upgradeAACannon(){
}
public function cloudUpdate(_arg1:MovieClip){
var enemy = _arg1;
try {
enemy.x = (enemy.x + enemy.speed);
if ((((enemy.x > 700)) || ((enemy.x < -60)))){
API.removeAllCompositClass(enemy);
world.nature_layer.removeChild(enemy);
delete ??getglobalscope
[this];
enemy.process = null;
};
} catch(e:Error) {
trace("Error in cloundupdate!");
};
}
public function checkEnemy(_arg1:MovieClip){
var gfxclass:*;
var gfx:*;
var enemy = _arg1;
try {
if (enemy.currenthp != enemy.hp){
if (enemy.timeswap > 0){
enemy.timeswap--;
enemy.transform.colorTransform = new ColorTransform(1, 1, 1, 1, 25000, 0, 0, 0);
} else {
enemy.transform.colorTransform = new ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
enemy.currenthp = enemy.hp;
enemy.timeswap = css.config.swap;
};
};
if (enemy.type == "nuclear"){
enemy.rotation = 90;
enemy.y = (enemy.y + enemy.speed);
};
if (enemy.type2 == "mission"){
if (enemy.hit.hitTestObject(enemy.target.hit)){
missilebomb++;
enemy.target.hp = -1000;
enemy.process = null;
enemy.processunit = null;
enemy.processwalk = null;
destroy(enemy);
};
};
if (enemy.hp <= 0){
if (enemy.sfx == null){
trace((("ศัตรู" + enemy) + "ไม่มี sfx"));
} else {
game[("game" + enemy.sfx)].play();
if (enemy.shaker == null){
if (enemy.sfx != "sfxexsmall"){
shaker2 = (shaker2 + 10);
enemy.shaker = true;
} else {
shaker2 = (shaker2 + 5);
};
};
};
if ((((enemy.type == "nuclear")) || ((enemy.type == "boss")))){
unitcount = 3000;
if (enemy.type == "boss"){
dmgboss = enemy.maxhp;
};
shaker2 = (shaker2 + 20);
};
if (enemy.type2 != null){
missiledie++;
};
gfxclass = API.getClass(enemy.gfx);
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
gfx.x = enemy.x;
gfx.y = enemy.y;
gfx.owner = enemy;
gfx.process = function (_arg1){
var _local2:*;
var _local3:*;
if (_arg1.hit != null){
_local2 = 0;
while (_local2 < world.enemy_layer.numChildren) {
_local3 = world.enemy_layer.getChildAt(_local2);
if (_local3 != _arg1.owner){
if (_local3.hit != null){
if (_arg1.hit.hitTestObject(_local3.hit)){
_local3.hp = (_local3.hp - 300);
};
};
};
_local2++;
};
};
if (_arg1.currentFrame == "die"){
destroy(_arg1);
_arg1.process = null;
};
};
if (enemy.gage != null){
destroy(enemy.gage);
enemy.gage = null;
};
money = (money + (int((Math.random() * css.config.money)) + int((css.config.money * ratemoney[gamelevel]))));
enemy.processWalk = null;
enemy.process = null;
enemy.processunit = null;
destroy(enemy);
unitdestroy++;
scorepoint = (scorepoint + int(((Math.random() * css.config.scorepoint) + 300)));
};
if (enemy.spin != null){
enemy.rotation = (enemy.rotation + 2);
};
if (enemy.type == "bomb"){
if (enemy.y >= 450){
enemy.hp = -100;
};
};
if ((((((enemy.x < 640)) && ((enemy.x > 0)))) || ((enemy.y > 480)))){
enemy.goleft = true;
enemy.left = true;
};
if ((((((enemy.x < 0)) || ((enemy.x > 640)))) || ((enemy.y > 480)))){
if (enemy.linkage != "boss2"){
if ((((enemy.goleft == true)) && ((enemy.left == true)))){
if (enemy.type == "nuclear"){
lose = true;
};
if (enemy.gage != null){
destroy(enemy.gage);
enemy.gage = null;
};
leften++;
enemy.hp = 52000;
destroy(enemy);
enemy.processunit = null;
enemy.processwalk = null;
};
};
};
if (enemy.gage != null){
enemy.gage.gotoAndStop(int(((enemy.hp * 100) / enemy.maxhp)));
};
} catch(e:Error) {
trace("Error in checkenemy!");
};
}
public function createObject(_arg1:MovieClip, _arg2){
var _local3:*;
var _local4:*;
if (unitcount < maxunit[gamelevel]){
_local3 = API.createMovieFromBase(world, css[_arg2[1]], {x:_arg1.x, y:_arg1.y});
if (_local3.gage == null){
if (_local3.type != "nuclear"){
};
if (_local3.type != "boss"){
_local4 = new enemy_gage();
_local3.addChild(_local4);
_local4.scaleX = 0.5;
_local4.scaleY = 0.5;
_local3.gage = _local4;
if (_local3.nametext != null){
_local3.nametext.text = _arg2[1];
};
};
if (_local3.layer == "enemy_layer"){
unitcount++;
};
};
};
}
public function endGame(){
timeend--;
if (timeend < 0){
savehp = player.hp;
trace(savehp);
gamepause = true;
game.parent.result.visible = true;
game.parent.shop.visible = false;
game.parent.result.gotoAndPlay(1);
};
}
public function upgradeFlak(_arg1:Number){
var _local2:*;
_local2 = new ShootMouse(css[("bullet5" + _arg1)], {way:1, angle:0});
API.addShootMethod(game, world, flakturret, gd3, _local2);
if (lvtflak > 0){
gd3.frequency = 50;
};
}
public function upgradeFlakCannon(){
}
public function strom(_arg1:MovieClip){
var enemy = _arg1;
try {
if (enemy.currentFrame > 15){
API.removeAllCompositClass(enemy);
world.nature_layer.removeChild(enemy);
delete ??getglobalscope
[this];
enemy.process = null;
};
} catch(e:Error) {
trace("Error in strom!");
};
}
public function checkBuilding(_arg1:MovieClip){
var gfxclass:*;
var gfx:*;
var enemy = _arg1;
try {
if (enemy.currenthp == null){
enemy.currenthp = enemy.hp;
} else {
if (enemy.hp > 0){
if (enemy.hp < enemy.currenthp){
enemy.currenthp = enemy.hp;
gameswap = 2;
};
};
};
if (game.parent.curser.hitTestObject(enemy)){
if (hitclick == false){
game.parent.curser.gotoAndPlay(2);
} else {
game.parent.curser.gotoAndPlay(3);
};
};
if (enemy.gage != null){
enemy.gage.scaleX = 1;
enemy.gage.scaleY = 1;
enemy.gage.x = -25;
};
if (enemy.hp <= 0){
if (enemy.objective == "repair"){
engineer = 0;
};
if (enemy.objective == "upgrade"){
upgrade = 0;
};
enemy.hp = 0;
enemy.gage.gotoAndStop(0);
if (enemy.gage != null){
destroy(enemy.gage);
};
if (enemy.destroy == null){
destroybuilding++;
enemy.destroy = true;
gfxclass = API.getClass("buildingex");
gfx = new (gfxclass);
world.gfx_layer.addChild(gfx);
gfx.x = enemy.x;
gfx.y = enemy.y;
enemy.process = null;
enemy.buildingprocess = null;
if (player != enemy){
destroy(enemy);
} else {
lose = true;
};
};
} else {
if (enemy.destroy != null){
destroybuilding--;
enemy.destroy = null;
};
if (enemy.hp < enemy.maxhp){
enemy.hp = (enemy.hp + 0.2);
enemy.currenthp = enemy.hp;
} else {
if (enemy.hp >= enemy.maxhp){
enemy.hp = enemy.maxhp;
};
};
enemy.gage.gotoAndStop(int(((enemy.hp * 100) / enemy.maxhp)));
};
if (enemy.hp > 20){
if (enemy.army == "enemy2"){
if (enemy.timecre == null){
enemy.timecre = enemy.timecreate;
};
if (engineer >= (maxengineer + css[("skill6" + lvbuildengineer)].max)){
enemy.timecre = enemy.timecreate;
engineer = (maxengineer + css[("skill6" + lvbuildengineer)].max);
} else {
if (enemy.timecre > 0){
enemy.timecre--;
} else {
engineer++;
enemy.timecre = enemy.timecreate;
};
};
};
};
} catch(e:Error) {
trace("Error in setbuilding!");
};
}
public function stand(_arg1:MovieClip, _arg2){
var _local3:*;
_arg1.gotoAndPlay("stand");
_local3 = API.getMotion(_arg1);
if ((_local3 is MapMove)){
if (_arg2[1] == null){
MapMove(_local3).setDirect(0);
} else {
if ((Math.random() * 100) < int(_arg2[1])){
MapMove(_local3).setDirect(0);
};
};
};
}
public function upgradeHomming(_arg1:Number){
var _local2:*;
gd4.mag = css[("skill3" + lvthomming)].mag;
_local2 = new ShootbyTargetAngle(css[("bullet4" + _arg1)], {way:1, angle:0, targetangle:270});
API.addShootMethod(game, world, hommingturret, gd4, _local2);
if (lvthomming > 0){
gd4.frequency = 30;
};
trace(gd4.mag);
}
public function initBuilding(_arg1:MovieClip){
_arg1.process = checkBuilding;
if (_arg1.army == "enemy2"){
game.parent.encount.x = (_arg1.x - 20);
game.parent.encount.y = (_arg1.y - 105);
game.parent.enmax.x = (_arg1.x - 10);
game.parent.enmax.y = (_arg1.y - 105);
};
if (_arg1.objective != null){
if (_arg1.objective == "supply"){
_arg1.timesend = _arg1.timetosend;
_arg1.buildingprocess = sendSupply;
} else {
if (_arg1.objective == "sendsolider"){
_arg1.buildingprocess = sendSolider;
} else {
if (_arg1.objective == "upgrade"){
_arg1.buildingprocess = sendUpgrade;
} else {
if (_arg1.objective == "repair"){
playerrepair = _arg1;
_arg1.buildingprocess = repairFort;
};
};
};
};
};
if (_arg1.maxhp != null){
_arg1.hp = _arg1.maxhp;
};
}
public function sendSolider(_arg1:MovieClip){
var solider:*;
var enemy = _arg1;
try {
if (enemy.hp <= 0){
return;
};
if (lvbuildsolider >= 4){
if (enemy.timespecial == null){
enemy.timespecial = css["skill74"].timespecial;
} else {
enemy.timespecial--;
if (enemy.timespecial <= 0){
solider = API.createMovieFromBase(world, css["enemy4"]);
enemy.timespecial = css["skill74"].timespecial;
};
};
};
if (enemy.send == null){
enemy.send = (enemy.timesend - css[("skill7" + lvbuildsolider)].time);
};
if (enemy.send <= 0){
solider = API.createMovieFromBase(world, css["enemy1"]);
enemy.send = (enemy.timesend - css[("skill7" + lvbuildsolider)].time);
} else {
enemy.send--;
};
} catch(e:Error) {
trace("Error in sendsolider!");
};
}
public function createObjectRandom(_arg1:MovieClip, _arg2){
var _local3:*;
var _local4:*;
if (unitcount < maxunit[gamelevel]){
trace((_arg2[1] + (int(_arg2[3]) + int((Math.random() * _arg2[2])))));
_local3 = (_arg2[1] + (int(_arg2[3]) + int((Math.random() * _arg2[2]))));
_local4 = API.createMovieFromBase(world, css[_local3], {x:_arg1.x, y:_arg1.y});
if (_local4.layer == "enemy_layer"){
unitcount++;
};
};
}
}
}//package
Section 171
//gfx (gfx)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfx extends MovieClip {
public function gfx(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 172
//gfx2 (gfx2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfx2 extends MovieClip {
public function gfx2(){
addFrameScript(30, frame31);
}
function frame31(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 173
//gfx3 (gfx3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfx3 extends MovieClip {
public var hit:hittemp;
public function gfx3(){
addFrameScript(74, frame75);
}
function frame75(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 174
//gfxbomb1 (gfxbomb1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfxbomb1 extends MovieClip {
public var hit:hittemp;
public function gfxbomb1(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 175
//gfxbomb2 (gfxbomb2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfxbomb2 extends MovieClip {
public var hit:hittemp;
public function gfxbomb2(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 176
//gfxbomb3 (gfxbomb3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfxbomb3 extends MovieClip {
public var hit:hittemp;
public function gfxbomb3(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 177
//gfxflackbomb (gfxflackbomb)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gfxflackbomb extends MovieClip {
public var hit:MovieClip;
public function gfxflackbomb(){
addFrameScript(40, frame41, 41, frame42);
}
function frame41(){
gotoAndPlay("stand");
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 178
//gidetoleft (gidetoleft)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gidetoleft extends MovieClip {
public var position:MovieClip;
public var hit:hittemp;
public function gidetoleft(){
addFrameScript(96, frame97);
}
function frame97(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 179
//gidetoright (gidetoright)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gidetoright extends MovieClip {
public var position:MovieClip;
public var hit:hittemp;
public function gidetoright(){
addFrameScript(96, frame97);
}
function frame97(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 180
//gunfirelv0 (gunfirelv0)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gunfirelv0 extends MovieClip {
public function gunfirelv0(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 181
//gunfirelv1 (gunfirelv1)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gunfirelv1 extends MovieClip {
public function gunfirelv1(){
addFrameScript(4, frame5);
}
function frame5(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 182
//gunfirelv2 (gunfirelv2)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gunfirelv2 extends MovieClip {
public function gunfirelv2(){
addFrameScript(5, frame6);
}
function frame6(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 183
//gunfirelv3 (gunfirelv3)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gunfirelv3 extends MovieClip {
public function gunfirelv3(){
addFrameScript(5, frame6);
}
function frame6(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 184
//gunfirelv4 (gunfirelv4)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class gunfirelv4 extends MovieClip {
public function gunfirelv4(){
addFrameScript(5, frame6);
}
function frame6(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 185
//herofix (herofix)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class herofix extends MovieClip {
public function herofix(){
addFrameScript(13, frame14, 14, frame15);
}
function frame14(){
gotoAndPlay("stand");
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 186
//hittemp (hittemp)
package {
import flash.display.*;
public dynamic class hittemp extends MovieClip {
}
}//package
Section 187
//mdummymap (mdummymap)
package {
import flash.display.*;
import flash.text.*;
public dynamic class mdummymap extends MovieClip {
public var b0:SimpleButton;
public var b1:SimpleButton;
public var savegage:MovieClip;
public var desc:TextField;
public var desc0:TextField;
public var desc1:TextField;
public var score0:TextField;
public var bsave:SimpleButton;
public var score1:TextField;
public function mdummymap(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package
Section 188
//mfzachievement (mfzachievement)
package {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class mfzachievement extends MovieClip {
public var achiload;
public var hposition1;
public var userload;
public var showmode;
public var achievement;
public var dialog;
public var pos:Point;
public var column;
public var texttitle;
public var achistatus;
public var sucesslist;
public var achiImage;
public var vposition1;
public var vposition2;
public var alliconshow:MovieClip;
public var loginstatus:MovieClip;
public var tiptoollayer;
public var tiptool;
public var hposition2;
public var ldrdata;
public var allachi;
public var sucessidlist;
public var iconheight;
public var iconwidth;
public var userinfo;
public function mfzachievement(){
addFrameScript(0, frame1, 14, frame15);
}
public function show_username(){
loginstatus.visible = true;
}
public function success(_arg1){
var e:*;
var MD5:*;
var load_success:*;
var success_url:*;
var variables:URLVariables;
var id = _arg1;
if ((((((userinfo[1] == null)) || (!((userload == "ok"))))) || (achievement.test))){
e = {};
e.target = {};
e.target.data = "9";
successcmp(e, id);
return;
};
try {
MD5 = new mfzMD5();
load_success = new URLLoader();
success_url = new URLRequest((("http://www.mofunzone.com/d474b453/achievement_give.php" + "?time=") + new Date().getTime()));
variables = new URLVariables();
variables.id = id;
variables.game = achievement.gameid;
variables.code = MD5.encrypt(((userinfo[1] + id) + achievement.gameid));
success_url.data = variables;
success_url.method = URLRequestMethod.POST;
load_success.dataFormat = URLLoaderDataFormat.TEXT;
load_success.addEventListener(Event.COMPLETE, function (_arg1){
successcmp(_arg1, id);
});
load_success.addEventListener(SecurityErrorEvent.SECURITY_ERROR, function (_arg1){
successerrorload(_arg1, id);
});
load_success.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1){
successerrorload(_arg1, id);
});
load_success.load(success_url);
} catch(e) {
};
}
public function errorloadimg(_arg1){
}
public function getAllAchievementID():Array{
var _local1:*;
var _local2:*;
_local1 = new Array();
for (_local2 in allachi) {
_local1.push(allachi[_local2].id);
};
return (_local1);
}
public function hide_username(){
loginstatus.visible = false;
}
public function showIcon(_arg1, _arg2){
var i:*;
var iconldr:Loader;
var req:*;
var iconcmp:Function;
var mcshowdraw = _arg1;
var iconlist = _arg2;
for (i in iconlist) {
iconcmp = function (_arg1){
var arg:*;
var i:*;
var iconshow:*;
var iconshowdesc:Function;
var iconhidedesc:Function;
var e = _arg1;
iconshowdesc = function (_arg1){
var icn:*;
var e = _arg1;
icn = e.target;
try {
if (icn.iconimage.hitTestPoint(mouseX, mouseY, true)){
tiptool.visible = true;
tiptool.x = icn.x;
tiptool.y = icn.y;
tiptool.desc.text = icn.achidata.desc;
} else {
tiptool.visible = false;
};
} catch(e) {
};
};
iconhidedesc = function (_arg1){
var _local2:*;
_local2 = _arg1.target;
tiptool.visible = false;
};
arg = e.target.loader.name.split(",");
i = arg[1];
iconshow = new mfziconbox();
achiImage[allachi[i].id] = e.target.content;
iconshow.iconimage = iconshow.addChild(e.target.content);
iconshow.x = (((i % column) * (iconwidth + 10)) + 30);
iconshow.y = ((int((i / column)) * (iconheight + 20)) + 100);
iconshow.desc.text = allachi[i].label;
iconshow.desc.x = ((e.target.content.width - iconshow.desc.width) / 2);
e.target.content.x = 0;
e.target.content.y = 0;
mcshowdraw.addChild(iconshow);
iconshow.achidata = allachi[i];
iconshow.addEventListener(MouseEvent.MOUSE_MOVE, iconshowdesc);
iconshow.addEventListener(MouseEvent.ROLL_OUT, iconhidedesc);
};
if (iconlist[i].icon == null){
} else {
iconldr = new Loader();
req = new URLRequest(iconlist[i].icon);
iconldr.name = ((iconldr.name + ",") + i);
iconldr.contentLoaderInfo.addEventListener(Event.COMPLETE, iconcmp);
iconldr.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorloadimg);
iconldr.contentLoaderInfo.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatus);
iconldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorloadimg);
iconldr.load(req);
};
};
}
public function bringloop(_arg1){
var pr:*;
var e = _arg1;
if (achievement.bring){
pr = achievement.parent;
pr.removeChild(achievement);
pr.addChild(achievement);
};
if ((((((((((((((stage.mouseX < ((achievement.workspaceWidth / 2) + (loginstatus.width / 2)))) && ((stage.mouseX > ((achievement.workspaceWidth / 2) - (loginstatus.width / 2)))))) && ((stage.mouseY < 20)))) && ((userload == "ok")))) && ((achiload == "ok")))) && (!(showmode)))) && (loginstatus.visible))){
loginstatus.alpha = 1;
loginstatus.visible = true;
dialog.scaleX = achievement.dialogScale;
dialog.scaleY = achievement.dialogScale;
pos = getPosition(1, achievement.dialogposition);
dialog.x = pos.x;
dialog.y = pos.y;
dialog.aicon = null;
dialog.help.visible = true;
dialog.word.visible = true;
dialog.title.visible = true;
dialog.gotoAndStop(1);
dialog.alpha = 1;
dialog.visible = true;
dialog.help.visible = true;
dialog.visible = true;
dialog.word.text = "Hello <USERNAME/>, any achievement you receive in this game will be saved to your MoFunZone.com profile.";
loginstatus.word.text = ("Logged in as " + userinfo[1]);
try {
dialog.help.visible = false;
dialog.word.text = dialog.word.text.replace("<USERNAME/>", userinfo[1]);
dialog.word.text = dialog.word.text.replace("<USERNAME/>", userinfo[1]);
loginstatus.word.text = ("Logged in as " + userinfo[1]);
} catch(e) {
dialog.help.visible = false;
dialog.word.text = dialog.word.text.replace("<USERNAME/>", "error");
dialog.word.text = dialog.word.text.replace("<USERNAME/>", "error");
};
} else {
if (loginstatus.alpha == 1){
dialog.visible = false;
};
};
if (showmode){
dialog.visible = true;
};
}
public function successcmp(_arg1, _arg2){
var _local3:*;
var _local4:*;
var _local5:Point;
var _local6:*;
var _local7:*;
var _local8:*;
var _local9:*;
if ((((dialog.currentFrame >= 2)) && ((dialog.currentFrame < 74)))){
_local4 = {};
_local4.target = {};
_local4.target.data = _arg1.target.data;
sucesslist.push(_local4);
sucessidlist.push(_arg2);
return;
};
_local3 = _arg1.target.data;
dialog.scaleX = 1;
dialog.scaleY = 1;
dialog.help.visible = false;
dialog.word.visible = false;
dialog.title.visible = false;
if ((((((_local3 == 9)) || ((_local3 == 8)))) || ((_local3 == 0)))){
if (_local3 == 8){
trace("Achievement already given, if this message shows too many times, your game may attack the web server and may cause bugs for your game. Please don't call function success too often");
return;
};
if (_local3 == 0){
trace("There was an error in rewarding you an achievement for your MoFunZone.com profile");
successerrorload(_arg1, _arg2);
return;
};
_local5 = getPosition(2, achievement.dialogposition);
dialog.x = _local5.x;
dialog.y = _local5.y;
dialog.aicon = null;
showmode = true;
dialog.gotoAndPlay(2);
_local6 = _arg2;
for (_local7 in allachi) {
if (allachi[_local7].id == _arg2){
_local6 = allachi[_local7].label;
};
};
dialog.achdialog.word.text = _local6;
if (achiImage[_arg2] != null){
_local8 = new MovieClip();
_local8.addChild(achiImage[_arg2]);
_local8.x = -177.4;
_local8.y = -24.4;
dialog.aicon = _local8;
dialog.achdialog.addChild(_local8);
} else {
_local8 = new MovieClip();
_local9 = new mfznoimage();
dialog.aicon = _local8;
_local8.addChild(_local9);
_local8.x = -177.4;
_local8.y = -24.4;
dialog.achdialog.addChild(_local8);
};
dialog.visible = true;
};
}
function frame1(){
achievement = this;
iconwidth = 80;
iconheight = 80;
column = 5;
texttitle = (achievement.gameid + " Achievement List");
allachi = new Array();
alliconshow = new mfzshowalllayout();
tiptoollayer = new MovieClip();
tiptool = new mfztiptool();
achievement.addChild(alliconshow);
achievement.addChild(tiptoollayer);
tiptoollayer.addChild(tiptool);
tiptool.visible = false;
alliconshow.title.text = texttitle;
userinfo = new Array();
userload = "unset";
achiload = "unset";
achistatus = "loading";
achiImage = new Object();
dialog = new mfzdialoglogin();
ldrdata = new Object();
showmode = false;
achievement.addChild(dialog);
dialog.visible = false;
alliconshow.visible = false;
loginstatus.x = (achievement.workspaceWidth / 2);
loginstatus.y = 13;
loginstatus.visible = false;
vposition1 = new Object();
vposition1["t"] = 0;
vposition1["c"] = ((achievement.workspaceHeight - (132 * achievement.dialogScale)) / 2);
vposition1["b"] = (achievement.workspaceHeight - (132 * achievement.dialogScale));
hposition1 = new Object();
hposition1["l"] = 0;
hposition1["c"] = ((achievement.workspaceWidth - (298 * achievement.dialogScale)) / 2);
hposition1["r"] = (achievement.workspaceWidth - (298 * achievement.dialogScale));
vposition2 = new Object();
vposition2["t"] = 0;
vposition2["c"] = ((achievement.workspaceHeight - 72) / 2);
vposition2["b"] = (achievement.workspaceHeight - 72);
hposition2 = new Object();
hposition2["l"] = 0;
hposition2["c"] = ((achievement.workspaceWidth - 368) / 2);
hposition2["r"] = (achievement.workspaceWidth - 368);
pos = getPosition(1, achievement.dialogposition);
dialog.x = pos.x;
dialog.y = pos.y;
sucesslist = new Array();
sucessidlist = new Array();
getUserLogin();
Load_Achievement();
if (!achievement.hasEventListener(Event.ENTER_FRAME)){
loginstatus.alpha = 1;
achievement.addEventListener(Event.ENTER_FRAME, bringloop);
};
}
public function Load_Achievement(){
var achldr:*;
var req:*;
var variables:URLVariables;
var achcmp:Function;
achcmp = function (_arg1){
var _local2:*;
var _local3:*;
var _local4:*;
allachi = new Array();
_local2 = achldr.data.split(String.fromCharCode(1));
if (_local2[0] != 9){
achiload = "fail";
trace("Achievement Component parameter[\"gameid\"] not exist.");
return;
};
_local2 = (String.fromCharCode(2) + achldr.data.substring(1));
_local2 = String(_local2.replace(String.fromCharCode(9), String.fromCharCode(1)));
_local2 = _local2.split((String.fromCharCode(2) + String.fromCharCode(1)));
_local2.shift();
_local2.pop();
for (_local3 in _local2) {
_local4 = _local2[_local3].split(String.fromCharCode(1));
allachi.push({id:_local4[0], label:_local4[1], icon:_local4[2], exp:_local4[3], desc:_local4[4]});
};
showIcon(alliconshow, allachi);
achiload = "ok";
};
achldr = new URLLoader();
req = new URLRequest(((("http://www.mofunzone.com/d474b453/achievement_list.php?id=" + achievement.gameid) + "&time=") + new Date().getTime()));
variables = new URLVariables();
variables.id = achievement.gameid;
req.data = variables;
req.method = URLRequestMethod.POST;
achldr.addEventListener(Event.COMPLETE, achcmp);
achldr.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorload);
achldr.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatus);
achldr.addEventListener(IOErrorEvent.IO_ERROR, errorload);
achldr.load(req);
}
public function successerrorload(_arg1, _arg2){
var _local3:*;
_local3 = getPosition(1, achievement.dialogposition);
dialog.x = _local3.x;
dialog.y = _local3.y;
dialog.scaleX = achievement.dialogScale;
dialog.scaleY = achievement.dialogScale;
dialog.aicon = null;
dialog.help.visible = true;
dialog.word.visible = true;
dialog.title.visible = true;
dialog.gotoAndStop(1);
dialog.alpha = 1;
dialog.visible = true;
dialog.help.visible = true;
dialog.word.text = "There was an error in rewarding you an achievement for your MoFunZone.com profile";
showmode = true;
}
public function getPosition(_arg1, _arg2):Point{
var _local3:Point;
var _local4:*;
var _local5:*;
_local3 = new Point(0, 0);
if (_arg2 == null){
trace("wrong dialog autoPosition");
return (_local3);
};
_local4 = _arg2.charAt(0);
_local5 = _arg2.charAt(1);
if (achievement[("vposition" + _arg1)][_local4] != null){
_local3.y = achievement[("vposition" + _arg1)][_local4];
};
if (achievement[("hposition" + _arg1)][_local5] != null){
_local3.x = achievement[("hposition" + _arg1)][_local5];
};
return (_local3);
}
public function httpstatus(_arg1){
}
public function getUserLogin(){
var load_user:*;
var user_url:*;
var variables:URLVariables;
var usercmp:Function;
usercmp = function (_arg1){
var _local2:*;
_local2 = load_user.data;
userinfo = _local2.split(String.fromCharCode(1));
if ((((userinfo[0] == 9)) && (!((userinfo[1] == null))))){
userload = "ok";
} else {
userload = "fail";
};
};
load_user = new URLLoader();
user_url = new URLRequest((("http://www.mofunzone.com/d474b453/user_info.php" + "?time=") + new Date().getTime()));
variables = new URLVariables();
variables.iwant = "ux";
user_url.data = variables;
user_url.method = URLRequestMethod.POST;
load_user.dataFormat = URLLoaderDataFormat.TEXT;
load_user.addEventListener(Event.COMPLETE, usercmp);
load_user.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorload);
load_user.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpstatus);
load_user.addEventListener(IOErrorEvent.IO_ERROR, errorload);
load_user.load(user_url);
}
public function testFail(_arg1){
var _local2:*;
_local2 = {};
_local2.target = {};
_local2.target.data = "0";
successcmp(_local2, _arg1);
}
function frame15(){
if (((!((userload == "unset"))) && (!((achiload == "unset"))))){
stop();
achistatus = "ok";
dialog.alpha = 1;
dialog.scaleX = achievement.dialogScale;
dialog.scaleY = achievement.dialogScale;
if ((((userload == "ok")) && ((achiload == "ok")))){
dialog.word.text = "Hello <USERNAME/>,you are logged in. As a result any medals you unlock in this game will be saved to <USERNAME/>'s profile.";
loginstatus.alpha = 0.99;
loginstatus.visible = true;
loginstatus.word.text = ("Logged in as " + userinfo[1]);
try {
dialog.help.visible = false;
dialog.word.text = dialog.word.text.replace("<USERNAME/>", userinfo[1]);
dialog.word.text = dialog.word.text.replace("<USERNAME/>", userinfo[1]);
loginstatus.word.text = ("Logged in as " + userinfo[1]);
} catch(e) {
dialog.help.visible = false;
dialog.word.text = dialog.word.text.replace("<USERNAME/>", "error");
dialog.word.text = dialog.word.text.replace("<USERNAME/>", "error");
};
} else {
if (!showmode){
dialog.visible = true;
dialog.help.visible = true;
dialog.word.text = "You are NOT LOGGED IN to MoFunZone! As a result any achievement you get in this game will NOT be saved to your profile.";
showmode = true;
};
};
} else {
gotoAndPlay("waitdata");
};
}
public function errorload(_arg1){
successerrorload(_arg1, "");
userload = "fail";
achiload = "fail";
}
}
}//package
Section 189
//mfzdialoglogin (mfzdialoglogin)
package {
import flash.display.*;
import flash.geom.*;
import flash.events.*;
import flash.media.*;
import flash.text.*;
import flash.net.*;
import flash.utils.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.external.*;
import flash.filters.*;
import flash.printing.*;
import flash.system.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class mfzdialoglogin extends MovieClip {
public var word:TextField;
public var help:SimpleButton;
public var dialog;
public var achdialog:MovieClip;
public var title:TextField;
public var bclose:SimpleButton;
public function mfzdialoglogin(){
addFrameScript(0, frame1, 64, frame65, 73, frame74);
}
function frame65(){
if (!dialog.parent.fade){
stop();
};
}
function frame74(){
dialog.parent.showmode = false;
if (this.aicon != null){
achdialog.removeChild(this.aicon);
};
if (dialog.parent.sucesslist.length > 0){
dialog.parent.successcmp(dialog.parent.sucesslist.pop(), dialog.parent.sucessidlist.pop());
};
stop();
}
function frame1(){
dialog = this;
if (!bclose.hasEventListener("click")){
bclose.addEventListener("click", clickclose);
help.addEventListener("click", clickhelp);
};
stop();
}
public function clickclose(_arg1){
dialog.visible = false;
dialog.parent.showmode = false;
}
public function clickhelp(_arg1){
var url:String;
var request:URLRequest;
var e = _arg1;
url = "http://www.mofunzone.com/help/achievement_error.shtml";
request = new URLRequest(url);
try {
navigateToURL(request, "_blank");
} catch(e:Error) {
};
dialog.visible = false;
dialog.parent.showmode = false;
}
}
}//package
Section 190
//mfziconbox (mfziconbox)
package {
import flash.display.*;
import flash.text.*;
public dynamic class mfziconbox extends MovieClip {
public var desc:TextField;
}
}//package
Section 191
//mfzMD5 (mfzMD5)
package {
import flash.display.*;
public dynamic class mfzMD5 extends MovieClip {
public const HEX_FORMAT_LOWERCASE:uint = 0;
public const BASE64_PAD_CHARACTER_DEFAULT_COMPLIANCE:String = "";
public const HEX_FORMAT_UPPERCASE:uint = 1;
public const BASE64_PAD_CHARACTER_RFC_COMPLIANCE:String = "=";
public var b64pad:String;
public var hexcase:uint;
public function mfzMD5(){
addFrameScript(0, frame1);
}
public function md5_cmn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Number{
return (safe_add(bit_rol(safe_add(safe_add(_arg2, _arg1), safe_add(_arg4, _arg6)), _arg5), _arg3));
}
public function rstr2b64(_arg1:String):String{
var _local2:String;
var _local3:String;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
_local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
_local3 = "";
_local4 = _arg1.length;
_local5 = 0;
while (_local5 < _local4) {
_local6 = (((_arg1.charCodeAt(_local5) << 16) | (((_local5 + 1) < _local4)) ? (_arg1.charCodeAt((_local5 + 1)) << 8) : 0) | (((_local5 + 2) < _local4)) ? _arg1.charCodeAt((_local5 + 2)) : 0);
_local7 = 0;
while (_local7 < 4) {
if (((_local5 * 8) + (_local7 * 6)) > (_arg1.length * 8)){
_local3 = (_local3 + b64pad);
} else {
_local3 = (_local3 + _local2.charAt(((_local6 >>> (6 * (3 - _local7))) & 63)));
};
_local7++;
};
_local5 = (_local5 + 3);
};
return (_local3);
}
public function str2rstr_utf8(_arg1:String):String{
var _local2:String;
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local2 = "";
_local3 = -1;
while (++_local3 < _arg1.length) {
_local4 = _arg1.charCodeAt(_local3);
_local5 = (((_local3 + 1) < _arg1.length)) ? _arg1.charCodeAt((_local3 + 1)) : 0;
if ((((((((0xD800 <= _local4)) && ((_local4 <= 56319)))) && ((0xDC00 <= _local5)))) && ((_local5 <= 57343)))){
_local4 = ((65536 + ((_local4 & 1023) << 10)) + (_local5 & 1023));
_local3++;
};
if (_local4 <= 127){
_local2 = (_local2 + String.fromCharCode(_local4));
} else {
if (_local4 <= 2047){
_local2 = (_local2 + String.fromCharCode((192 | ((_local4 >>> 6) & 31)), (128 | (_local4 & 63))));
} else {
if (_local4 <= 0xFFFF){
_local2 = (_local2 + String.fromCharCode((224 | ((_local4 >>> 12) & 15)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63))));
} else {
if (_local4 <= 2097151){
_local2 = (_local2 + String.fromCharCode((240 | ((_local4 >>> 18) & 7)), (128 | ((_local4 >>> 12) & 63)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63))));
};
};
};
};
};
return (_local2);
}
public function any_hmac_md5(_arg1:String, _arg2:String, _arg3:String):String{
return (rstr2any(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)), _arg3));
}
public function str2rstr_utf16be(_arg1:String):String{
var _local2:String;
var _local3:Number;
_local2 = "";
_local3 = 0;
while (_local3 < _arg1.length) {
_local2 = (_local2 + String.fromCharCode(((_arg1.charCodeAt(_local3) >>> 8) & 0xFF), (_arg1.charCodeAt(_local3) & 0xFF)));
_local3++;
};
return (_local2);
}
public function md5_ff(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 & _arg3) | (~(_arg2) & _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7));
}
public function md5_gg(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 & _arg4) | (_arg3 & ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7));
}
public function b64_md5(_arg1:String):String{
return (rstr2b64(rstr_md5(str2rstr_utf8(_arg1))));
}
public function str2rstr_utf16le(_arg1:String):String{
var _local2:String;
var _local3:Number;
_local2 = "";
_local3 = 0;
while (_local3 < _arg1.length) {
_local2 = (_local2 + String.fromCharCode((_arg1.charCodeAt(_local3) & 0xFF), ((_arg1.charCodeAt(_local3) >>> 8) & 0xFF)));
_local3++;
};
return (_local2);
}
public function hex_md5(_arg1:String):String{
return (rstr2hex(rstr_md5(str2rstr_utf8(_arg1))));
}
function frame1(){
hexcase = 0;
b64pad = "";
}
public function rstr2binl(_arg1:String):Array{
var _local2:Array;
var _local3:Number;
_local2 = new Array((_arg1.length >> 2));
_local3 = 0;
while (_local3 < _local2.length) {
_local2[_local3] = 0;
_local3++;
};
_local3 = 0;
while (_local3 < (_arg1.length * 8)) {
_local2[(_local3 >> 5)] = (_local2[(_local3 >> 5)] | ((_arg1.charCodeAt((_local3 / 8)) & 0xFF) << (_local3 % 32)));
_local3 = (_local3 + 8);
};
return (_local2);
}
public function md5_vm_test():Boolean{
return ((hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72"));
}
public function md5_hh(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn(((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7));
}
public function binl_md5(_arg1:Array, _arg2:Number):Array{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
_arg1[(_arg2 >> 5)] = (_arg1[(_arg2 >> 5)] | (128 << (_arg2 % 32)));
_arg1[((((_arg2 + 64) >>> 9) << 4) + 14)] = _arg2;
_local3 = 1732584193;
_local4 = -271733879;
_local5 = -1732584194;
_local6 = 271733878;
_local7 = 0;
while (_local7 < _arg1.length) {
_local8 = _local3;
_local9 = _local4;
_local10 = _local5;
_local11 = _local6;
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 7, -680876936);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 1)], 12, -389564586);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 17, 606105819);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 3)], 22, -1044525330);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 7, -176418897);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 5)], 12, 1200080426);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 17, -1473231341);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 7)], 22, -45705983);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 7, 1770035416);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 9)], 12, -1958414417);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 17, -42063);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 11)], 22, -1990404162);
_local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 7, 1804603682);
_local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 13)], 12, -40341101);
_local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 17, -1502002290);
_local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 15)], 22, 1236535329);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 5, -165796510);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 6)], 9, -1069501632);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 14, 643717713);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 0)], 20, -373897302);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 5, -701558691);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 10)], 9, 38016083);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 14, -660478335);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 4)], 20, -405537848);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 5, 568446438);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 14)], 9, -1019803690);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 14, -187363961);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 8)], 20, 1163531501);
_local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 5, -1444681467);
_local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 2)], 9, -51403784);
_local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 14, 1735328473);
_local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 12)], 20, -1926607734);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 4, -378558);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 8)], 11, -2022574463);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 16, 1839030562);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 14)], 23, -35309556);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 4, -1530992060);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 4)], 11, 1272893353);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 16, -155497632);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 10)], 23, -1094730640);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 4, 681279174);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 0)], 11, -358537222);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 16, -722521979);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 6)], 23, 76029189);
_local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 4, -640364487);
_local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 12)], 11, -421815835);
_local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 16, 530742520);
_local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 2)], 23, -995338651);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 6, -198630844);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 7)], 10, 1126891415);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 15, -1416354905);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 5)], 21, -57434055);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 6, 1700485571);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 3)], 10, -1894986606);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 15, -1051523);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 1)], 21, -2054922799);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 6, 1873313359);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 15)], 10, -30611744);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 15, -1560198380);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 13)], 21, 1309151649);
_local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 6, -145523070);
_local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 11)], 10, -1120210379);
_local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 15, 718787259);
_local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 9)], 21, -343485551);
_local3 = safe_add(_local3, _local8);
_local4 = safe_add(_local4, _local9);
_local5 = safe_add(_local5, _local10);
_local6 = safe_add(_local6, _local11);
_local7 = (_local7 + 16);
};
return ([_local3, _local4, _local5, _local6]);
}
public function encrypt(_arg1:String):String{
return (hex_md5(_arg1));
}
public function md5_ii(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{
return (md5_cmn((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7));
}
public function rstr2any(_arg1:String, _arg2:String):String{
var _local3:Number;
var _local4:Array;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Array;
var _local9:Array;
var _local10:String;
_local3 = _arg2.length;
_local4 = [];
_local9 = new Array((_arg1.length / 2));
_local5 = 0;
while (_local5 < _local9.length) {
_local9[_local5] = ((_arg1.charCodeAt((_local5 * 2)) << 8) | _arg1.charCodeAt(((_local5 * 2) + 1)));
_local5++;
};
while (_local9.length > 0) {
_local8 = [];
_local7 = 0;
_local5 = 0;
while (_local5 < _local9.length) {
_local7 = ((_local7 << 16) + _local9[_local5]);
_local6 = Math.floor((_local7 / _local3));
_local7 = (_local7 - (_local6 * _local3));
if ((((_local8.length > 0)) || ((_local6 > 0)))){
_local8[_local8.length] = _local6;
};
_local5++;
};
_local4[_local4.length] = _local7;
_local9 = _local8;
};
_local10 = "";
_local5 = (_local4.length - 1);
while (_local5 >= 0) {
_local10 = (_local10 + _arg2.charAt(_local4[_local5]));
_local5--;
};
return (_local10);
}
public function rstr2hex(_arg1:String):String{
var _local2:String;
var _local3:String;
var _local4:Number;
var _local5:Number;
_local2 = (hexcase) ? "0123456789ABCDEF" : "0123456789abcdef";
_local3 = "";
_local5 = 0;
while (_local5 < _arg1.length) {
_local4 = _arg1.charCodeAt(_local5);
_local3 = (_local3 + (_local2.charAt(((_local4 >>> 4) & 15)) + _local2.charAt((_local4 & 15))));
_local5++;
};
return (_local3);
}
public function bit_rol(_arg1:Number, _arg2:Number):Number{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
public function binl2rstr(_arg1:Array):String{
var _local2:String;
var _local3:Number;
_local2 = "";
_local3 = 0;
while (_local3 < (_arg1.length * 32)) {
_local2 = (_local2 + String.fromCharCode(((_arg1[(_local3 >> 5)] >>> (_local3 % 32)) & 0xFF)));
_local3 = (_local3 + 8);
};
return (_local2);
}
public function any_md5(_arg1:String, _arg2:String):String{
return (rstr2any(rstr_md5(str2rstr_utf8(_arg1)), _arg2));
}
public function rstr_md5(_arg1:String):String{
return (binl2rstr(binl_md5(rstr2binl(_arg1), (_arg1.length * 8))));
}
public function hex_hmac_md5(_arg1:String, _arg2:String):String{
return (rstr2hex(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2))));
}
public function b64_hmac_md5(_arg1:String, _arg2:String):String{
return (rstr2b64(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2))));
}
public function rstr_hmac_md5(_arg1:String, _arg2:String):String{
var _local3:Array;
var _local4:Array;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = rstr2binl(_arg1);
if (_local3.length > 16){
_local3 = binl_md5(_local3, (_arg1.length * 8));
};
_local4 = new Array(16);
_local5 = new Array(16);
_local6 = 0;
while (_local6 < 16) {
_local4[_local6] = (_local3[_local6] ^ 909522486);
_local5[_local6] = (_local3[_local6] ^ 1549556828);
_local6++;
};
_local7 = binl_md5(_local4.concat(rstr2binl(_arg2)), (0x0200 + (_arg2.length * 8)));
return (binl2rstr(binl_md5(_local5.concat(_local7), (0x0200 + 128))));
}
public function safe_add(_arg1:Number, _arg2:Number):Number{
var _local3:Number;
var _local4:Number;
_local3 = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF));
_local4 = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16));
return (((_local4 << 16) | (_local3 & 0xFFFF)));
}
}
}//package
Section 192
//mfznoimage (mfznoimage)
package {
import flash.display.*;
public dynamic class mfznoimage extends MovieClip {
}
}//package
Section 193
//mfzshowalllayout (mfzshowalllayout)
package {
import flash.display.*;
import flash.text.*;
public dynamic class mfzshowalllayout extends MovieClip {
public var title:TextField;
public var closedialog:SimpleButton;
}
}//package
Section 194
//mfztiptool (mfztiptool)
package {
import flash.display.*;
import flash.text.*;
public dynamic class mfztiptool extends MovieClip {
public var desc:TextField;
}
}//package
Section 195
//minigun (minigun)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class minigun extends MovieClip {
public var hit:hittemp;
public function minigun(){
addFrameScript(1, frame2, 3, frame4);
}
function frame4(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame2(){
stop();
}
}
}//package
Section 196
//playexplode (playexplode)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class playexplode extends MovieClip {
public function playexplode(){
addFrameScript(14, frame15);
}
function frame15(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 197
//rain1 (rain1)
package {
import flash.display.*;
public dynamic class rain1 extends MovieClip {
}
}//package
Section 198
//rain2 (rain2)
package {
import flash.display.*;
public dynamic class rain2 extends MovieClip {
}
}//package
Section 199
//sfxexbig (sfxexbig)
package {
import flash.media.*;
public dynamic class sfxexbig extends Sound {
}
}//package
Section 200
//sfxexboss (sfxexboss)
package {
import flash.media.*;
public dynamic class sfxexboss extends Sound {
}
}//package
Section 201
//sfxexsmall (sfxexsmall)
package {
import flash.media.*;
public dynamic class sfxexsmall extends Sound {
}
}//package
Section 202
//sfxflak (sfxflak)
package {
import flash.media.*;
public dynamic class sfxflak extends Sound {
}
}//package
Section 203
//sfxgun (sfxgun)
package {
import flash.media.*;
public dynamic class sfxgun extends Sound {
}
}//package
Section 204
//snow (snow)
package {
import flash.display.*;
public dynamic class snow extends MovieClip {
}
}//package
Section 205
//thunder1 (thunder1)
package {
import flash.display.*;
public dynamic class thunder1 extends MovieClip {
}
}//package
Section 206
//thunder2 (thunder2)
package {
import flash.display.*;
public dynamic class thunder2 extends MovieClip {
}
}//package
Section 207
//thunder3 (thunder3)
package {
import flash.display.*;
public dynamic class thunder3 extends MovieClip {
}
}//package
Section 208
//tileerror (tileerror)
package {
import flash.display.*;
public dynamic class tileerror extends MovieClip {
}
}//package
Section 209
//tileerrorindex (tileerrorindex)
package {
import flash.display.*;
public dynamic class tileerrorindex extends BitmapData {
public function tileerrorindex(_arg1:Number, _arg2:Number){
super(_arg1, _arg2);
}
}
}//package
Section 210
//transportplane (transportplane)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class transportplane extends MovieClip {
public var hit:MovieClip;
public function transportplane(){
addFrameScript(28, frame29, 76, frame77);
}
function frame77(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame29(){
stop();
}
}
}//package
Section 211
//transporttruck (transporttruck)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class transporttruck extends MovieClip {
public var hit:MovieClip;
public function transporttruck(){
addFrameScript(28, frame29, 76, frame77);
}
function frame77(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
function frame29(){
stop();
}
}
}//package
Section 212
//troop (troop)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class troop extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function troop(){
addFrameScript(8, frame9, 41, frame42);
}
function frame9(){
gotoAndPlay("stand");
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 213
//troopspecial (troopspecial)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class troopspecial extends MovieClip {
public var hit:hittemp;
public var gun1:hittemp;
public function troopspecial(){
addFrameScript(8, frame9, 41, frame42);
}
function frame9(){
gotoAndPlay("stand");
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 214
//upgrade (upgrade)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class upgrade extends MovieClip {
public var hit:hittemp;
public function upgrade(){
addFrameScript(40, frame41, 41, frame42);
}
function frame41(){
gotoAndPlay(1);
}
function frame42(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package
Section 215
//uptodown (uptodown)
package {
import flash.display.*;
import GREENHERMIT.GHUtils.*;
public dynamic class uptodown extends MovieClip {
public var position:MovieClip;
public var hit:hittemp;
public function uptodown(){
addFrameScript(96, frame97);
}
function frame97(){
stop();
API.removeAllCompositClass(this);
MovieClip(this.parent).removeChild(this);
delete ??getglobalscope
[this];
}
}
}//package