Section 1
//BitmapAsset (mx.core.BitmapAsset)
package mx.core {
import flash.display.*;
public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject {
mx_internal static const VERSION:String = "3.4.1.10084";
public function BitmapAsset(bitmapData:BitmapData=null, pixelSnapping:String="auto", smoothing:Boolean=false){
super(bitmapData, pixelSnapping, smoothing);
}
public function get measuredWidth():Number{
if (bitmapData){
return (bitmapData.width);
};
return (0);
}
public function get measuredHeight():Number{
if (bitmapData){
return (bitmapData.height);
};
return (0);
}
public function setActualSize(newWidth:Number, newHeight:Number):void{
width = newWidth;
height = newHeight;
}
public function move(x:Number, y:Number):void{
this.x = x;
this.y = y;
}
}
}//package mx.core
Section 2
//ByteArrayAsset (mx.core.ByteArrayAsset)
package mx.core {
import flash.utils.*;
public class ByteArrayAsset extends ByteArray implements IFlexAsset {
mx_internal static const VERSION:String = "3.4.1.10084";
public function ByteArrayAsset(){
super();
}
}
}//package mx.core
Section 3
//EdgeMetrics (mx.core.EdgeMetrics)
package mx.core {
public class EdgeMetrics {
public var top:Number;
public var left:Number;
public var bottom:Number;
public var right:Number;
mx_internal static const VERSION:String = "3.4.1.10084";
public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0);
;
public function EdgeMetrics(left:Number=0, top:Number=0, right:Number=0, bottom:Number=0){
super();
this.left = left;
this.top = top;
this.right = right;
this.bottom = bottom;
}
public function clone():EdgeMetrics{
return (new EdgeMetrics(left, top, right, bottom));
}
}
}//package mx.core
Section 4
//FlexBitmap (mx.core.FlexBitmap)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexBitmap extends Bitmap {
mx_internal static const VERSION:String = "3.4.1.10084";
public function FlexBitmap(bitmapData:BitmapData=null, pixelSnapping:String="auto", smoothing:Boolean=false){
var bitmapData = bitmapData;
var pixelSnapping = pixelSnapping;
var smoothing = smoothing;
super(bitmapData, pixelSnapping, smoothing);
name = NameUtil.createUniqueName(this);
//unresolved jump
var _slot1 = e;
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 5
//FlexMovieClip (mx.core.FlexMovieClip)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexMovieClip extends MovieClip {
mx_internal static const VERSION:String = "3.4.1.10084";
public function FlexMovieClip(){
super();
name = NameUtil.createUniqueName(this);
//unresolved jump
var _slot1 = e;
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 6
//IBorder (mx.core.IBorder)
package mx.core {
public interface IBorder {
function get borderMetrics():EdgeMetrics;
}
}//package mx.core
Section 7
//IFlexAsset (mx.core.IFlexAsset)
package mx.core {
public interface IFlexAsset {
}
}//package mx.core
Section 8
//IFlexDisplayObject (mx.core.IFlexDisplayObject)
package mx.core {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.accessibility.*;
public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher {
function get visible():Boolean;
function get rotation():Number;
function localToGlobal(void:Point):Point;
function get name():String;
function set width(flash.display:Number):void;
function get measuredHeight():Number;
function get blendMode():String;
function get scale9Grid():Rectangle;
function set name(flash.display:String):void;
function set scaleX(flash.display:Number):void;
function set scaleY(flash.display:Number):void;
function get measuredWidth():Number;
function get accessibilityProperties():AccessibilityProperties;
function set scrollRect(flash.display:Rectangle):void;
function get cacheAsBitmap():Boolean;
function globalToLocal(void:Point):Point;
function get height():Number;
function set blendMode(flash.display:String):void;
function get parent():DisplayObjectContainer;
function getBounds(String:DisplayObject):Rectangle;
function get opaqueBackground():Object;
function set scale9Grid(flash.display:Rectangle):void;
function setActualSize(_arg1:Number, _arg2:Number):void;
function set alpha(flash.display:Number):void;
function set accessibilityProperties(flash.display:AccessibilityProperties):void;
function get width():Number;
function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean;
function set cacheAsBitmap(flash.display:Boolean):void;
function get scaleX():Number;
function get scaleY():Number;
function get scrollRect():Rectangle;
function get mouseX():Number;
function get mouseY():Number;
function set height(flash.display:Number):void;
function set mask(flash.display:DisplayObject):void;
function getRect(String:DisplayObject):Rectangle;
function get alpha():Number;
function set transform(flash.display:Transform):void;
function move(_arg1:Number, _arg2:Number):void;
function get loaderInfo():LoaderInfo;
function get root():DisplayObject;
function hitTestObject(mx.core:IFlexDisplayObject/mx.core:IFlexDisplayObject:stage/get:DisplayObject):Boolean;
function set opaqueBackground(flash.display:Object):void;
function set visible(flash.display:Boolean):void;
function get mask():DisplayObject;
function set x(flash.display:Number):void;
function set y(flash.display:Number):void;
function get transform():Transform;
function set filters(flash.display:Array):void;
function get x():Number;
function get y():Number;
function get filters():Array;
function set rotation(flash.display:Number):void;
function get stage():Stage;
}
}//package mx.core
Section 9
//IRepeaterClient (mx.core.IRepeaterClient)
package mx.core {
public interface IRepeaterClient {
function get instanceIndices():Array;
function set instanceIndices(C:\autobuild\3.4.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void;
function get isDocument():Boolean;
function set repeaters(C:\autobuild\3.4.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void;
function initializeRepeaterArrays(C:\autobuild\3.4.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:IRepeaterClient):void;
function get repeaters():Array;
function set repeaterIndices(C:\autobuild\3.4.0\frameworks\projects\framework\src;mx\core;IRepeaterClient.as:Array):void;
function get repeaterIndices():Array;
}
}//package mx.core
Section 10
//MovieClipAsset (mx.core.MovieClipAsset)
package mx.core {
public class MovieClipAsset extends FlexMovieClip implements IFlexAsset, IFlexDisplayObject, IBorder {
private var _measuredHeight:Number;
private var _measuredWidth:Number;
mx_internal static const VERSION:String = "3.4.1.10084";
public function MovieClipAsset(){
super();
_measuredWidth = width;
_measuredHeight = height;
}
public function get measuredWidth():Number{
return (_measuredWidth);
}
public function get measuredHeight():Number{
return (_measuredHeight);
}
public function setActualSize(newWidth:Number, newHeight:Number):void{
width = newWidth;
height = newHeight;
}
public function move(x:Number, y:Number):void{
this.x = x;
this.y = y;
}
public function get borderMetrics():EdgeMetrics{
if (scale9Grid == null){
return (EdgeMetrics.EMPTY);
};
return (new EdgeMetrics(scale9Grid.left, scale9Grid.top, Math.ceil((measuredWidth - scale9Grid.right)), Math.ceil((measuredHeight - scale9Grid.bottom))));
}
}
}//package mx.core
Section 11
//MovieClipLoaderAsset (mx.core.MovieClipLoaderAsset)
package mx.core {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.system.*;
public class MovieClipLoaderAsset extends MovieClipAsset implements IFlexAsset, IFlexDisplayObject {
protected var initialHeight:Number;// = 0
private var loader:Loader;// = null
private var initialized:Boolean;// = false
protected var initialWidth:Number;// = 0
private var requestedHeight:Number;
private var requestedWidth:Number;
mx_internal static const VERSION:String = "3.4.1.10084";
public function MovieClipLoaderAsset(){
super();
var loaderContext:LoaderContext = new LoaderContext();
loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
if (("allowLoadBytesCodeExecution" in loaderContext)){
loaderContext["allowLoadBytesCodeExecution"] = true;
};
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.loadBytes(movieClipData, loaderContext);
addChild(loader);
}
override public function get width():Number{
if (!initialized){
return (initialWidth);
};
return (super.width);
}
override public function set width(value:Number):void{
if (!initialized){
requestedWidth = value;
} else {
loader.width = value;
};
}
override public function get measuredHeight():Number{
return (initialHeight);
}
private function completeHandler(event:Event):void{
initialized = true;
initialWidth = loader.width;
initialHeight = loader.height;
if (!isNaN(requestedWidth)){
loader.width = requestedWidth;
};
if (!isNaN(requestedHeight)){
loader.height = requestedHeight;
};
dispatchEvent(event);
}
override public function set height(value:Number):void{
if (!initialized){
requestedHeight = value;
} else {
loader.height = value;
};
}
override public function get measuredWidth():Number{
return (initialWidth);
}
override public function get height():Number{
if (!initialized){
return (initialHeight);
};
return (super.height);
}
public function get movieClipData():ByteArray{
return (null);
}
}
}//package mx.core
Section 12
//mx_internal (mx.core.mx_internal)
package mx.core {
public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal";
}//package mx.core
Section 13
//NameUtil (mx.utils.NameUtil)
package mx.utils {
import flash.display.*;
import mx.core.*;
import flash.utils.*;
public class NameUtil {
mx_internal static const VERSION:String = "3.4.1.10084";
private static var counter:int = 0;
public function NameUtil(){
super();
}
public static function displayObjectToString(displayObject:DisplayObject):String{
var result:String;
var o:DisplayObject;
var s:String;
var indices:Array;
var displayObject = displayObject;
o = displayObject;
while (o != null) {
if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){
break;
};
s = o.name;
if ((o is IRepeaterClient)){
indices = IRepeaterClient(o).instanceIndices;
if (indices){
s = (s + (("[" + indices.join("][")) + "]"));
};
};
result = ((result == null)) ? s : ((s + ".") + result);
o = o.parent;
};
//unresolved jump
var _slot1 = e;
return (result);
}
public static function createUniqueName(object:Object):String{
if (!object){
return (null);
};
var name:String = getQualifiedClassName(object);
var index:int = name.indexOf("::");
if (index != -1){
name = name.substr((index + 2));
};
var charCode:int = name.charCodeAt((name.length - 1));
if ((((charCode >= 48)) && ((charCode <= 57)))){
name = (name + "_");
};
return ((name + counter++));
}
}
}//package mx.utils
Section 14
//Main (Main)
package {
import flash.events.*;
import flash.display.*;
import flash.net.*;
public class Main extends Sprite {
private var Img:Class;
public var AG_Logo:Class;
public var Logo:Class;
public var ag_logo:MovieClip;
private var loadedGame:Boolean;// = false
private var LC:LocalConnection;
private static var _bg:Bitmap;
public function Main():void{
Img = Main_Img;
AG_Logo = Main_AG_Logo;
Logo = Main_Logo;
super();
if (stage){
init();
} else {
addEventListener(Event.ADDED_TO_STAGE, init);
};
}
public function onLCStatus(statusEvent:StatusEvent):void{
if (statusEvent.level == "error"){
trace("LCE");
};
}
public function connectionHandler(LCMessage:String):void{
var logo:MovieClip;
trace(("LC: " + LCMessage));
switch (LCMessage){
case "x_startgame":
if (!loadedGame){
trace("Starting game");
_bg = new Img();
removeChild(ag_logo);
logo = new Logo();
addChild(logo);
addChild(_bg);
loadedGame = true;
};
break;
case "x_play":
break;
case "x_sponsorclick":
break;
case "x_walkthroughclick":
break;
case "x_win":
break;
case "x_klikscene":
break;
case "x_challenge_cheap19":
break;
case "x_challenge_lv8":
break;
case "x_challenge_6pacifist":
break;
default:
if (LCMessage.substring(0, 8) == "x_level_"){
};
};
}
private function init(e:Event=null):void{
var logo:MovieClip;
var e = e;
removeEventListener(Event.ADDED_TO_STAGE, init);
LC = new LocalConnection();
LC.connect("xEPLUMBERS");
//unresolved jump
var _slot1 = error;
LC.client = this;
loadedGame = false;
if (Preloader.offAG){
trace("Starting game");
_bg = new Img();
logo = new Logo();
addChild(logo);
addChild(_bg);
loadedGame = true;
} else {
ag_logo = new AG_Logo();
addChild(ag_logo);
};
}
}
}//package
Section 15
//Main_AG_Logo (Main_AG_Logo)
package {
import flash.utils.*;
import mx.core.*;
public class Main_AG_Logo extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function Main_AG_Logo(){
dataClass = Main_AG_Logo_dataClass;
super();
initialWidth = (15200 / 20);
initialHeight = (10000 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package
Section 16
//Main_AG_Logo_dataClass (Main_AG_Logo_dataClass)
package {
import mx.core.*;
public class Main_AG_Logo_dataClass extends ByteArrayAsset {
}
}//package
Section 17
//Main_Img (Main_Img)
package {
import mx.core.*;
public class Main_Img extends BitmapAsset {
}
}//package
Section 18
//Main_Logo (Main_Logo)
package {
import flash.utils.*;
import mx.core.*;
public class Main_Logo extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function Main_Logo(){
dataClass = Main_Logo_dataClass;
super();
initialWidth = (15200 / 20);
initialHeight = (10000 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package
Section 19
//Main_Logo_dataClass (Main_Logo_dataClass)
package {
import mx.core.*;
public class Main_Logo_dataClass extends ByteArrayAsset {
}
}//package
Section 20
//Preloader (Preloader)
package {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.text.*;
import flash.system.*;
public class Preloader extends MovieClip {
private var AD:Class;
private var adBox:MovieClip;
private var Img:Class;
private var preloader:Shape;
private var progressText:TextField;
private static var _bg:Bitmap;
private static var playbutton:Sprite = new Sprite();
private static var Aub:Class = Preloader_Aub;
private static var aub:Bitmap = new Aub();
private static var ready:Boolean = false;
private static var buzz:Boolean = false;
private static var Play:Class = Preloader_Play;
public static var offAG:Boolean = false;
private static var playb:Bitmap = new Play();
public function Preloader(){
Img = Preloader_Img;
AD = Preloader_AD;
super();
Security.allowDomain("*");
Security.allowInsecureDomain("*");
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
_bg = new Img();
addChild(_bg);
var url:String = stage.loaderInfo.url;
var urlStart:Number = (url.indexOf("://") + 3);
var urlEnd:Number = url.indexOf("/", urlStart);
var domain:String = url.substring(urlStart, urlEnd);
var LastDot:Number = (domain.lastIndexOf(".") - 1);
var domEnd:Number = (domain.lastIndexOf(".", LastDot) + 1);
domain = domain.substring(domEnd, domain.length);
addChild(playbutton);
playbutton.addChild(playb);
playbutton.x = 90;
playbutton.y = -80;
playbutton.buttonMode = true;
playbutton.useHandCursor = true;
if (domain != "armorgames.com"){
offAG = true;
trace("spawning ad");
adBox = new AD();
addChild(adBox);
adBox.x = ((stage.stageWidth / 2) - (adBox.width / 2));
adBox.y = (((stage.stageHeight / 2) - (adBox.height / 2)) - 30);
};
addEventListener(Event.ENTER_FRAME, checkFrame);
loaderInfo.addEventListener(ProgressEvent.PROGRESS, progress);
preloader = new Shape();
preloader.graphics.beginFill(0xFFFFFF);
preloader.graphics.drawRect(0, 0, 8, 8);
preloader.graphics.endFill();
addChild(preloader);
addChild(aub);
playbutton.addEventListener(MouseEvent.MOUSE_OVER, overPlay);
playbutton.addEventListener(MouseEvent.MOUSE_OUT, outPlay);
playbutton.addEventListener(MouseEvent.CLICK, clickPlay);
progressText = new TextField();
var progressTextFormat:TextFormat = new TextFormat("_sans", 10, 0xFFFFFF, true);
progressTextFormat.align = TextFormatAlign.CENTER;
progressText.defaultTextFormat = progressTextFormat;
addChild(progressText);
stage.addEventListener(Event.RESIZE, onResize);
onResize();
}
private function outPlay(e:MouseEvent):void{
buzz = false;
}
private function startup():void{
stop();
removeChild(preloader);
removeChild(progressText);
removeChild(aub);
removeChild(_bg);
playbutton.removeEventListener(MouseEvent.MOUSE_OVER, overPlay);
playbutton.removeEventListener(MouseEvent.MOUSE_OUT, outPlay);
removeChild(playbutton);
if (adBox){
removeChild(adBox);
};
this.stage.frameRate = 50;
preloader = null;
progressText = null;
loaderInfo.removeEventListener(ProgressEvent.PROGRESS, progress);
var mainClass:Class = (getDefinitionByName("Main") as Class);
addChildAt((new (mainClass) as DisplayObject), 0);
}
private function progress(e:ProgressEvent):void{
if (progressText){
progressText.text = (Math.round(((e.bytesLoaded / e.bytesTotal) * 100)).toString() + " %");
};
if (preloader){
preloader.width = Math.round(((e.bytesLoaded / e.bytesTotal) * 600));
preloader.x = (680 - preloader.width);
aub.x = (preloader.x - 16);
progressText.x = 655;
};
}
private function onResize(e:Event=null):void{
if (preloader){
preloader.x = 80;
preloader.y = 420;
};
if (progressText){
progressText.x = 90;
progressText.y = 416;
};
aub.x = 80;
aub.y = 408;
}
private function overPlay(e:MouseEvent):void{
buzz = true;
}
private function clickPlay(e:MouseEvent):void{
ready = true;
playbutton.removeEventListener(MouseEvent.CLICK, clickPlay);
}
private function checkFrame(e:Event):void{
if (buzz){
playbutton.x = ((90 + (Math.random() * 3)) - 1);
};
if (currentFrame == totalFrames){
playbutton.y = 355;
if (ready){
removeEventListener(Event.ENTER_FRAME, checkFrame);
startup();
};
};
}
}
}//package
Section 21
//Preloader_AD (Preloader_AD)
package {
import mx.core.*;
import flash.utils.*;
public class Preloader_AD extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function Preloader_AD(){
dataClass = Preloader_AD_dataClass;
super();
initialWidth = (6000 / 20);
initialHeight = (5000 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package
Section 22
//Preloader_AD_dataClass (Preloader_AD_dataClass)
package {
import mx.core.*;
public class Preloader_AD_dataClass extends ByteArrayAsset {
}
}//package
Section 23
//Preloader_Aub (Preloader_Aub)
package {
import mx.core.*;
public class Preloader_Aub extends BitmapAsset {
}
}//package
Section 24
//Preloader_Img (Preloader_Img)
package {
import mx.core.*;
public class Preloader_Img extends BitmapAsset {
}
}//package
Section 25
//Preloader_Play (Preloader_Play)
package {
import mx.core.*;
public class Preloader_Play extends BitmapAsset {
}
}//package