Section 1
//CFTextField (elevatorz.CFTextField)
package elevatorz {
import flash.display.*;
import flash.text.*;
import flash.filters.*;
public class CFTextField extends TextField {
private var fGlowFilter:GlowFilter;
public static const SIZE_INTRO:int = 32;
public static const SIZE_LARGER:int = 48;
public static const COLOR_SELECTED:int = 0xFFFFFF;
public static const SIZE_LARGE:int = 24;
public static const COLOR_DEFAULT:int = 0xFFFFFF;
public static const SIZE_SMALL:int = 14;
public static const SIZE_NORMAL:int = 16;
public static const DEFAULT_FONT:String = "mainFont";
public static const SIZE_MEDIUM:int = 20;
public static const COLOR_RED:int = 16728096;
public static const SIZE_LARGEST:int = 56;
private static var MainFont:Class = CFTextField_MainFont;
public function CFTextField(_arg1:int=16, _arg2:int=0xFFFFFF, _arg3:String=""){
var _local4:TextFormat;
super();
_local4 = new TextFormat(DEFAULT_FONT, _arg1, _arg2);
_local4.letterSpacing = 1;
autoSize = TextFieldAutoSize.LEFT;
mouseEnabled = false;
embedFonts = true;
defaultTextFormat = _local4;
antiAliasType = AntiAliasType.ADVANCED;
multiline = false;
switch (_arg1){
case SIZE_SMALL:
fGlowFilter = new GlowFilter(_arg2, 0.75, 1.5, 1.5, 2, BitmapFilterQuality.HIGH);
break;
case SIZE_NORMAL:
case SIZE_MEDIUM:
fGlowFilter = new GlowFilter(_arg2, 0.75, 2, 2, 2, BitmapFilterQuality.HIGH);
break;
case SIZE_LARGE:
case SIZE_INTRO:
fGlowFilter = new GlowFilter(_arg2, 0.75, 2, 2, 2, BitmapFilterQuality.HIGH);
break;
case SIZE_LARGER:
fGlowFilter = new GlowFilter(_arg2, 0.75, 6, 6, 2, BitmapFilterQuality.HIGH);
break;
case SIZE_LARGEST:
fGlowFilter = new GlowFilter(_arg2, 0.75, 8, 8, 2, BitmapFilterQuality.HIGH);
break;
};
filters = [fGlowFilter];
text = _arg3;
}
override public function set textColor(_arg1:uint):void{
super.textColor = _arg1;
fGlowFilter.color = _arg1;
filters = [fGlowFilter];
}
public static function createTextButton(_arg1:String, _arg2:int=16):SimpleButton{
var _local3:TextField;
var _local4:TextField;
var _local5:SimpleButton;
_local3 = new CFTextField(_arg2);
_local3.text = _arg1;
_local4 = new CFTextField(_arg2);
_local4.text = _arg1;
_local5 = new SimpleButton(_local3, _local4, _local4, _local4);
return (_local5);
}
public static function createEditableTextField(_arg1:int=16, _arg2:int=0xFFFFFF):CFTextField{
var _local3:CFTextField;
_local3 = new CFTextField(_arg1, _arg2);
_local3.autoSize = TextFieldAutoSize.NONE;
_local3.defaultTextFormat.align = TextFormatAlign.CENTER;
_local3.mouseEnabled = true;
_local3.type = TextFieldType.INPUT;
_local3.border = true;
_local3.borderColor = _arg2;
return (_local3);
}
}
}//package elevatorz
Section 2
//CFTextField_MainFont (elevatorz.CFTextField_MainFont)
package elevatorz {
import mx.core.*;
public class CFTextField_MainFont extends FontAsset {
}
}//package elevatorz
Section 3
//ElevatorSprite (elevatorz.ElevatorSprite)
package elevatorz {
import flash.display.*;
public class ElevatorSprite extends Sprite {
private var fDown:Boolean;
private var fSpeed:Number;
private static var Elevator:Class = ElevatorSprite_Elevator;
public function ElevatorSprite(_arg1:Number){
addChild(new Elevator());
fDown = true;
fSpeed = _arg1;
}
public function set speed(_arg1:Number):void{
fSpeed = _arg1;
}
public function move():void{
if (fDown){
y = (y + fSpeed);
} else {
y = (y - fSpeed);
};
}
public function reverse(_arg1:Number):void{
fDown = !(fDown);
move();
fSpeed = _arg1;
}
}
}//package elevatorz
Section 4
//ElevatorSprite_Elevator (elevatorz.ElevatorSprite_Elevator)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class ElevatorSprite_Elevator extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function ElevatorSprite_Elevator(){
dataClass = ElevatorSprite_Elevator_dataClass;
super();
initialWidth = (400 / 20);
initialHeight = (601 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 5
//ElevatorSprite_Elevator_dataClass (elevatorz.ElevatorSprite_Elevator_dataClass)
package elevatorz {
import mx.core.*;
public class ElevatorSprite_Elevator_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 6
//ElevatorText (elevatorz.ElevatorText)
package elevatorz {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import smileygamer.*;
import smileygamer.util.*;
public class ElevatorText extends Sprite {
private var fActive:Boolean;
private var fSelectionColor:int;
private var fMoveAnims:Array;
private var fAnimations:Array;
private var fColor:int;
public function ElevatorText(_arg1:String, _arg2:int, _arg3:int, _arg4:int, _arg5:Function=null){
var _local6:int;
var _local7:int;
var _local8:CFTextField;
var _local9:MoveAnimation;
fAnimations = new Array();
super();
fActive = false;
fColor = CFTextField.COLOR_DEFAULT;
fSelectionColor = CFTextField.COLOR_RED;
_local6 = 0;
_local7 = 0;
while (_local7 < _arg1.length) {
_local8 = new CFTextField(_arg2, fColor, _arg1.charAt(_local7));
addChild(_local8);
if (_arg3 < 2){
_local8.x = _local6;
_local8.y = 0;
} else {
_local9 = new MoveAnimation(_local8, new Point(_local6, 0), new Point(_local6, _arg4), (RandomUtil.generateRandom((_arg3 / 2), _arg3) * 2), 0, 0, false, true);
_local9.looping = true;
fAnimations.push(_local9);
};
_local6 = (_local6 + (_local8.width - 2));
_local7++;
};
if (_arg5 != null){
useAsButton(_arg5);
};
}
public function moveOnScreen(_arg1:int=30):void{
var i:int;
var letter:CFTextField;
var anim:MoveAnimation;
var onsceen:Function;
var aSpeed = _arg1;
fActive = false;
fMoveAnims = new Array();
i = 0;
while (i < numChildren) {
onsceen = function ():void{
if (fAnimations.length > 0){
AAnimation(fAnimations[fMoveAnims.indexOf(this)]).reset();
};
fActive = true;
};
letter = (getChildAt(i) as CFTextField);
letter.y = (RandomUtil.chance(2)) ? -312 : 312;
if (fAnimations.length > 0){
AAnimation(fAnimations[i]).stop();
};
anim = new MoveAnimation(letter, new Point(letter.x, letter.y), new Point(letter.x, 0), RandomUtil.generateRandom(aSpeed, (aSpeed * 2)), InterpolationUtil.TYPE_LINEAR);
fMoveAnims.push(anim);
anim.addCallback(onsceen);
i = (i + 1);
};
}
private function changeColor(_arg1:int):void{
var _local2:int;
var _local3:CFTextField;
_local2 = 0;
while (_local2 < numChildren) {
_local3 = (getChildAt(_local2) as CFTextField);
_local3.textColor = _arg1;
_local2++;
};
}
private function useAsButton(_arg1:Function):void{
var click:Function;
var mouseOver:Function;
var mouseOut:Function;
var aFunction = _arg1;
click = function (_arg1:Event):void{
if (fActive){
aFunction.apply(this, [_arg1]);
};
};
mouseOver = function (_arg1:Event):void{
if (fActive){
changeColor(fSelectionColor);
SoundManager.playButton();
};
};
mouseOut = function (_arg1:Event):void{
changeColor(fColor);
};
fActive = true;
addEventListener(MouseEvent.CLICK, click);
addEventListener(MouseEvent.MOUSE_OVER, mouseOver);
addEventListener(MouseEvent.MOUSE_OUT, mouseOut);
}
public function moveOffScreen(_arg1:int=30):void{
var _local2:int;
var _local3:CFTextField;
var _local4:int;
var _local5:MoveAnimation;
fActive = false;
_local2 = 0;
while (_local2 < numChildren) {
_local3 = (getChildAt(_local2) as CFTextField);
_local4 = (RandomUtil.chance(2)) ? -312 : 312;
if (fAnimations.length > 0){
AAnimation(fAnimations[_local2]).stop();
};
_local5 = new MoveAnimation(_local3, new Point(_local3.x, _local3.y), new Point(_local3.x, _local4), RandomUtil.generateRandom(_arg1, (_arg1 * 2)), InterpolationUtil.TYPE_LINEAR);
_local2++;
};
}
}
}//package elevatorz
Section 7
//FloorsBackground (elevatorz.FloorsBackground)
package elevatorz {
import flash.display.*;
import smileygamer.util.*;
public class FloorsBackground extends Sprite {
public static const SHAFT_WIDTH:int = 20;
public static const FLOOR_HEIGHT:int = 40;
public static const FLOORS:int = 7;
public static const FLOOR_WIDTH:int = 300;
public static const SHAFTS:int = 7;
private static var Ladder:Class = FloorsBackground_Ladder;
private static var Table1:Class = FloorsBackground_Table1;
private static var Table3:Class = FloorsBackground_Table3;
private static var Plant1:Class = FloorsBackground_Plant1;
private static var Plant2:Class = FloorsBackground_Plant2;
private static var Walls:Class = FloorsBackground_Walls;
private static var Table2:Class = FloorsBackground_Table2;
private static var Table4:Class = FloorsBackground_Table4;
private static var Shaft:Class = FloorsBackground_Shaft;
private static var Floor:Class = FloorsBackground_Floor;
private static var Bricks:Class = FloorsBackground_Bricks;
public function FloorsBackground(_arg1:Boolean=true){
var _local2:int;
var _local3:Array;
var _local4:Array;
var _local5:int;
var _local6:DisplayObject;
var _local7:Shape;
var _local8:DisplayObject;
var _local9:int;
var _local10:int;
var _local11:DisplayObject;
var _local12:DisplayObject;
var _local13:DisplayObject;
var _local14:int;
var _local15:DisplayObject;
super();
_local2 = (_arg1) ? 0 : 1;
addChild(new Walls());
_local3 = new Array();
_local4 = new Array();
_local5 = 0;
while (_local5 < 5) {
_local8 = new Bricks();
_local9 = RandomUtil.generateRandom(0, (SHAFTS + 1));
_local8.x = (((_local9 * SHAFT_WIDTH) * 2) + RandomUtil.generateRandom(0, 20));
_local10 = RandomUtil.generateRandom(0, FLOORS);
while (_local4.indexOf(_local10) != -1) {
_local10 = RandomUtil.generateRandom(0, FLOORS);
};
_local4.push(_local10);
_local8.y = getFloorY(_local10);
addChild(_local8);
_local3.push(((_local9 * FLOORS) + _local10));
_local5++;
};
_local5 = 0;
while (_local5 < (FLOORS + 1)) {
_local11 = new Floor();
_local11.y = ((_local5 * FLOOR_HEIGHT) - 1);
addChild(_local11);
_local5++;
};
_local5 = 0;
while (_local5 < FLOORS) {
_local12 = (RandomUtil.chance(2)) ? new Plant1() : new Plant2();
_local9 = RandomUtil.generateRandom(0, SHAFTS);
if ((_local5 % 2) != _local2){
_local9++;
};
_local12.x = (((_local9 * SHAFT_WIDTH) * 2) + 10);
_local12.y = getFloorY(_local5);
addChild(_local12);
_local3.push(((_local9 * FLOORS) + _local5));
_local5++;
};
_local5 = 0;
while (_local5 < 7) {
if ((_local5 % 4) == 0){
_local6 = new Table1();
};
if ((_local5 % 4) == 1){
_local6 = new Table2();
};
if ((_local5 % 4) == 2){
_local6 = new Table3();
};
if ((_local5 % 4) == 3){
_local6 = new Table4();
};
_local9 = RandomUtil.generateRandom(1, SHAFTS);
_local10 = RandomUtil.generateRandom(0, FLOORS);
while (_local3.indexOf(((_local9 * FLOORS) + _local10)) != -1) {
_local10 = RandomUtil.generateRandom(0, FLOORS);
};
_local6.x = (((_local9 * SHAFT_WIDTH) * 2) + 2);
_local6.y = (getFloorY(_local10) - _local6.height);
addChild(_local6);
_local3.push(((_local9 * FLOORS) + _local10));
_local5++;
};
_local7 = new Shape();
_local7.graphics.beginFill(0x4E4E4E, 0.16);
_local5 = 0;
while (_local5 < SHAFTS) {
_local13 = new Shaft();
_local13.x = (((2 * _local5) + 1) * SHAFT_WIDTH);
addChild(_local13);
_local14 = 0;
while (_local14 < (FLOORS + 1)) {
_local7.graphics.drawRect(_local13.x, (_local14 * FLOOR_HEIGHT), SHAFT_WIDTH, 4);
_local14++;
};
_local5++;
};
addChild(_local7);
_local5 = 0;
while (_local5 < FLOORS) {
_local15 = new Ladder();
if ((_local5 % 2) == _local2){
_local15.x = (FLOOR_WIDTH - 15);
} else {
_local15.x = 5;
};
_local15.y = (getFloorY((_local5 + 1)) + 2);
addChild(_local15);
_local5++;
};
cacheAsBitmap = true;
}
public static function getFloorY(_arg1:int):int{
return ((((FLOORS - _arg1) * FLOOR_HEIGHT) - 2));
}
}
}//package elevatorz
Section 8
//FloorsBackground_Bricks (elevatorz.FloorsBackground_Bricks)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Bricks extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Bricks(){
dataClass = FloorsBackground_Bricks_dataClass;
super();
initialWidth = (422 / 20);
initialHeight = (291 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 9
//FloorsBackground_Bricks_dataClass (elevatorz.FloorsBackground_Bricks_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Bricks_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 10
//FloorsBackground_Floor (elevatorz.FloorsBackground_Floor)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Floor extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Floor(){
dataClass = FloorsBackground_Floor_dataClass;
super();
initialWidth = (6145 / 20);
initialHeight = (120 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 11
//FloorsBackground_Floor_dataClass (elevatorz.FloorsBackground_Floor_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Floor_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 12
//FloorsBackground_Ladder (elevatorz.FloorsBackground_Ladder)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Ladder extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Ladder(){
dataClass = FloorsBackground_Ladder_dataClass;
super();
initialWidth = (222 / 20);
initialHeight = (780 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 13
//FloorsBackground_Ladder_dataClass (elevatorz.FloorsBackground_Ladder_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Ladder_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 14
//FloorsBackground_Plant1 (elevatorz.FloorsBackground_Plant1)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Plant1 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Plant1(){
dataClass = FloorsBackground_Plant1_dataClass;
super();
initialWidth = (222 / 20);
initialHeight = (321 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 15
//FloorsBackground_Plant1_dataClass (elevatorz.FloorsBackground_Plant1_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Plant1_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 16
//FloorsBackground_Plant2 (elevatorz.FloorsBackground_Plant2)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Plant2 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Plant2(){
dataClass = FloorsBackground_Plant2_dataClass;
super();
initialWidth = (234 / 20);
initialHeight = (459 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 17
//FloorsBackground_Plant2_dataClass (elevatorz.FloorsBackground_Plant2_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Plant2_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 18
//FloorsBackground_Shaft (elevatorz.FloorsBackground_Shaft)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Shaft extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Shaft(){
dataClass = FloorsBackground_Shaft_dataClass;
super();
initialWidth = (400 / 20);
initialHeight = (5680 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 19
//FloorsBackground_Shaft_dataClass (elevatorz.FloorsBackground_Shaft_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Shaft_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 20
//FloorsBackground_Table1 (elevatorz.FloorsBackground_Table1)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Table1 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Table1(){
dataClass = FloorsBackground_Table1_dataClass;
super();
initialWidth = (330 / 20);
initialHeight = (250 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 21
//FloorsBackground_Table1_dataClass (elevatorz.FloorsBackground_Table1_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Table1_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 22
//FloorsBackground_Table2 (elevatorz.FloorsBackground_Table2)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Table2 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Table2(){
dataClass = FloorsBackground_Table2_dataClass;
super();
initialWidth = (330 / 20);
initialHeight = (354 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 23
//FloorsBackground_Table2_dataClass (elevatorz.FloorsBackground_Table2_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Table2_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 24
//FloorsBackground_Table3 (elevatorz.FloorsBackground_Table3)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Table3 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Table3(){
dataClass = FloorsBackground_Table3_dataClass;
super();
initialWidth = (330 / 20);
initialHeight = (250 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 25
//FloorsBackground_Table3_dataClass (elevatorz.FloorsBackground_Table3_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Table3_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 26
//FloorsBackground_Table4 (elevatorz.FloorsBackground_Table4)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Table4 extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Table4(){
dataClass = FloorsBackground_Table4_dataClass;
super();
initialWidth = (330 / 20);
initialHeight = (210 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 27
//FloorsBackground_Table4_dataClass (elevatorz.FloorsBackground_Table4_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Table4_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 28
//FloorsBackground_Walls (elevatorz.FloorsBackground_Walls)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class FloorsBackground_Walls extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function FloorsBackground_Walls(){
dataClass = FloorsBackground_Walls_dataClass;
super();
initialWidth = (6000 / 20);
initialHeight = (5680 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 29
//FloorsBackground_Walls_dataClass (elevatorz.FloorsBackground_Walls_dataClass)
package elevatorz {
import mx.core.*;
public class FloorsBackground_Walls_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 30
//GamePlay (elevatorz.GamePlay)
package elevatorz {
public class GamePlay {
private var fLevel:int;
private static const MIN_SPEED:Array = new Array(5, 5, 5, 5, 4, 4, 4, 4, 5);
private static const MAX_SPEED:Array = new Array(15, 20, 20, 25, 25, 30, 30, 30, 35);
private static const TIME:Array = new Array(150, 135, 120, 105, 90, 85, 80, 75, 75);
public function GamePlay(){
fLevel = 1;
}
public function get maxSpeed():int{
return (MAX_SPEED[Math.min((fLevel - 1), (MAX_SPEED.length - 1))]);
}
public function getFloorScore(_arg1:Boolean):int{
if (_arg1){
return ((fLevel * 20));
};
return ((fLevel * 10));
}
public function get time():int{
return (TIME[Math.min((fLevel - 1), (TIME.length - 1))]);
}
public function get hitTimeOut():int{
return (3);
}
public function reset():void{
fLevel = 1;
}
public function nextLevel():void{
fLevel++;
}
public function get minSpeed():int{
return (MIN_SPEED[Math.min((fLevel - 1), (MIN_SPEED.length - 1))]);
}
}
}//package elevatorz
Section 31
//GameScreen (elevatorz.GameScreen)
package elevatorz {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import smileygamer.*;
import flash.text.*;
import smileygamer.util.*;
import flash.ui.*;
import flash.net.*;
public class GameScreen extends Sprite {
private var fCleanFloor:Boolean;
private var fTime:int;
private var fFloorField:TextField;
private var fTimeField:TextField;
private var fNameField:TextField;
private var fGameOver:Sprite;
private var fGame:Elevatorz;
private var fPausedText:ElevatorText;
private var fScoreField:TextField;
private var fElevators:Array;
private var fFloor:int;// = 0
private var fPerfectText:ElevatorText;
private var fShowButton:ElevatorText;
private var fPlayerLayer:Sprite;
private var fGameLayer:Sprite;
private var fMessageField:TextField;
private var fGamePlay:GamePlay;
private var fLevelUpText:ElevatorText;
private var fDirection:Boolean;
private var fState:int;
private var fScore:int;
private var fTickTimer:Timer;
private var fFloors:FloorsBackground;
private var fPlayer:PlayerSprite;
private var fSubmitButton:ElevatorText;
private static const STATE_RISING:int = 3;
private static const STATE_HIT:int = 2;
private static const LEFT:Boolean = true;
private static const STATE_TITLE:int = 0;
private static const RIGHT:Boolean = false;
private static const STATE_RUNNING:int = 1;
private static const STATE_GAMEOVER:int = 4;
private static const STATE_PAUSED:int = 5;
private static var sLastAd:int;
public function GameScreen(_arg1:Elevatorz){
fFloor = 0;
super();
fGame = _arg1;
sLastAd = getTimer();
addEventListener(Event.ENTER_FRAME, added);
}
private function added(_arg1:Event):void{
var _local2:Sprite;
var _local3:Sprite;
var _local4:Timer;
removeEventListener(Event.ENTER_FRAME, added);
fState = STATE_TITLE;
fGamePlay = new GamePlay();
fTickTimer = new Timer(1000, 0);
fTickTimer.addEventListener(TimerEvent.TIMER, tick);
fGameLayer = new Sprite();
fGameLayer.x = ((Elevatorz.WIDTH / 2) - 150);
fGameLayer.y = 22;
_local2 = new Sprite();
_local2.graphics.clear();
_local2.graphics.beginFill(0xFF0000);
_local2.graphics.drawRect(0, 0, 300, 283);
_local2.cacheAsBitmap = true;
fGameLayer.addChild(_local2);
fGameLayer.mask = _local2;
fGameLayer.addChild(createGameLayer());
addChild(fGameLayer);
_local3 = createScoreLayer();
_local3.y = 1;
addChild(_local3);
clearScore();
fPerfectText = new ElevatorText("PERFECT!", CFTextField.SIZE_LARGEST, 0, 0);
fPerfectText.x = ((Elevatorz.WIDTH - fPerfectText.width) / 2);
fPerfectText.y = ((Elevatorz.HEIGHT - fPerfectText.height) / 2);
fLevelUpText = new ElevatorText("LEVEL UP!", CFTextField.SIZE_LARGEST, 0, 0);
fLevelUpText.x = ((Elevatorz.WIDTH - fLevelUpText.width) / 2);
fLevelUpText.y = ((Elevatorz.HEIGHT - fLevelUpText.height) / 2);
fPausedText = new ElevatorText("PAUSED", CFTextField.SIZE_LARGEST, 0, 0);
fPausedText.x = ((Elevatorz.WIDTH - fPausedText.width) / 2);
fPausedText.y = ((Elevatorz.HEIGHT - fPausedText.height) / 2);
_local4 = new Timer(15, 0);
_local4.addEventListener(TimerEvent.TIMER, update);
_local4.start();
}
private function showMenu(_arg1:Event):void{
var t:Timer;
var showtitle:Function;
var showtitle2:Function;
var showad:Function;
var e = _arg1;
showtitle = function (_arg1:Event):void{
fGame.showTitleScreen();
};
showtitle2 = function ():void{
fGame.showTitleScreen();
};
showad = function (_arg1:Event):void{
var e = _arg1;
MochiAd.showInterLevelAd({id:"26b2db898ced37e5", res:"312x312", clip:fGame, ad_started:function ():void{
}, ad_finished:showtitle2, no_bg:true});
sLastAd = getTimer();
};
endGame();
hideGameOver();
clearScore();
t = new Timer(500, 1);
if (((Elevatorz.SPONSORED) || (((getTimer() - sLastAd) < 300000)))){
t.addEventListener(TimerEvent.TIMER_COMPLETE, showtitle);
} else {
t.addEventListener(TimerEvent.TIMER_COMPLETE, showad);
};
t.start();
}
private function createGameLayer():Sprite{
var _local1:Sprite;
var _local2:int;
var _local3:Number;
_local1 = new Sprite();
fFloors = new FloorsBackground(((fFloor % 2) == 0));
_local1.addChild(fFloors);
fPlayerLayer = new Sprite();
_local1.addChild(fPlayerLayer);
_local1.addChild(new Lights(((fFloor % 2) == 0)));
fElevators = new Array(FloorsBackground.SHAFTS);
_local2 = 0;
while (_local2 < fElevators.length) {
_local3 = (RandomUtil.generateRandom(fGamePlay.minSpeed, (fGamePlay.maxSpeed + 1)) / 10);
fElevators[_local2] = new ElevatorSprite(_local3);
fElevators[_local2].x = (((_local2 * 2) + 1) * FloorsBackground.SHAFT_WIDTH);
_local1.addChild(fElevators[_local2]);
_local2++;
};
return (_local1);
}
private function showGameOver():void{
var anim:AAnimation;
var gameover:Function;
gameover = function ():void{
if (contains(fPausedText)){
removeChild(fPausedText);
};
if (contains(fLevelUpText)){
removeChild(fLevelUpText);
};
if (contains(fPerfectText)){
removeChild(fPerfectText);
};
fGameOver = createGameOver();
addChild(fGameOver);
};
anim = new OverlayAnimation(fGame.overlay, Elevatorz.BGCOLOR, false);
anim.addCallback(gameover);
addChild(fGame.overlay);
}
private function createScoreLayer():Sprite{
var _local1:Sprite;
_local1 = new Sprite();
fScoreField = new CFTextField();
fScoreField.autoSize = TextFieldAutoSize.NONE;
fFloorField = new CFTextField();
fFloorField.autoSize = TextFieldAutoSize.NONE;
fTimeField = new CFTextField();
fTimeField.autoSize = TextFieldAutoSize.NONE;
fScoreField.x = 8;
fScoreField.width = 150;
fScoreField.height = 20;
fFloorField.x = 124;
fFloorField.width = 150;
fFloorField.height = 20;
fTimeField.x = 216;
fTimeField.width = 150;
fTimeField.height = 20;
_local1.addChild(fScoreField);
_local1.addChild(fFloorField);
_local1.addChild(fTimeField);
return (_local1);
}
private function createGameOver():Sprite{
var _local1:Sprite;
var _local2:ElevatorText;
var _local3:ElevatorText;
var _local4:ElevatorText;
var _local5:ElevatorText;
var _local6:ElevatorText;
var _local7:ElevatorText;
_local1 = new Sprite();
_local2 = new ElevatorText("GAME OVER", CFTextField.SIZE_LARGEST, 30, 20);
_local2.x = ((Elevatorz.WIDTH - _local2.width) / 2);
_local2.y = 20;
_local1.addChild(_local2);
_local2.moveOnScreen(10);
_local3 = new ElevatorText(("SCORE: " + formatNumber(fScore, 4)), CFTextField.SIZE_LARGE, 0, 0);
_local3.x = (((_local2.x + _local2.width) - _local3.width) - 20);
_local3.y = 100;
_local1.addChild(_local3);
_local3.moveOnScreen(20);
_local4 = new ElevatorText(("REACHED FLOOR: " + formatNumber(fFloor, 2)), CFTextField.SIZE_LARGE, 0, 0);
_local4.x = (((_local2.x + _local2.width) - _local4.width) - 20);
_local4.y = 130;
_local1.addChild(_local4);
_local4.moveOnScreen(20);
fSubmitButton = new ElevatorText("SUBMIT", CFTextField.SIZE_LARGE, 0, 0, submitScore);
fSubmitButton.x = (300 - fSubmitButton.width);
fSubmitButton.y = 170;
_local1.addChild(fSubmitButton);
fSubmitButton.moveOnScreen(20);
fNameField = CFTextField.createEditableTextField(CFTextField.SIZE_LARGE);
fNameField.maxChars = 16;
fNameField.x = 12;
fNameField.y = 169;
fNameField.width = (278 - fSubmitButton.width);
fNameField.height = (CFTextField.SIZE_LARGE + 2);
_local1.addChild(fNameField);
fShowButton = new ElevatorText("SHOW", CFTextField.SIZE_LARGE, 0, 0, showHighscores);
fShowButton.x = (300 - fShowButton.width);
fShowButton.y = 170;
fShowButton.visible = false;
_local1.addChild(fShowButton);
fMessageField = new CFTextField(CFTextField.SIZE_LARGE, CFTextField.COLOR_RED);
fMessageField.autoSize = TextFieldAutoSize.CENTER;
fMessageField.x = 12;
fMessageField.y = 170;
fMessageField.width = (278 - fShowButton.width);
fMessageField.text = " ";
fMessageField.visible = false;
_local1.addChild(fMessageField);
_local5 = new ElevatorText("PLAY ANOTHER GAME", CFTextField.SIZE_LARGE, 0, 0, showHome);
_local5.x = ((Elevatorz.WIDTH - _local5.width) / 2);
_local5.y = 210;
_local1.addChild(_local5);
_local5.moveOnScreen(20);
_local6 = new ElevatorText("PLAY AGAIN", CFTextField.SIZE_LARGE, 0, 0, playAgain);
_local6.x = ((Elevatorz.WIDTH - _local6.width) / 2);
_local6.y = 240;
_local1.addChild(_local6);
_local6.moveOnScreen(20);
_local7 = new ElevatorText("BACK TO MENU", CFTextField.SIZE_LARGE, 0, 0, showMenu);
_local7.x = ((Elevatorz.WIDTH - _local7.width) / 2);
_local7.y = 270;
_local1.addChild(_local7);
_local7.moveOnScreen(20);
return (_local1);
}
private function showHighscores(_arg1:Event):void{
fGame.showHighscores();
}
private function doKeyUp(_arg1:KeyboardEvent):void{
if (_arg1.keyCode == 80){
if (fState == STATE_RUNNING){
fTickTimer.stop();
if (contains(fPausedText)){
removeChild(fPausedText);
};
addChild(fPausedText);
fPausedText.moveOnScreen(10);
fState = STATE_PAUSED;
} else {
if (fState == STATE_PAUSED){
fTickTimer.start();
fPausedText.moveOffScreen(10);
fState = STATE_RUNNING;
};
};
};
if (_arg1.keyCode == 27){
gameover();
};
if (_arg1.keyCode == 83){
SoundManager.toggleSound();
};
}
private function formatNumber(_arg1:int, _arg2:int):String{
var _local3:int;
var _local4:String;
var _local5:int;
_local3 = (int((Math.log(_arg1) * Math.LOG10E)) + 1);
_local4 = "";
_local5 = 0;
while (_local5 < (_arg2 - _local3)) {
_local4 = (_local4 + "0");
_local5++;
};
return ((_local4 + _arg1));
}
private function clearScore():void{
fScoreField.text = "";
fFloorField.text = "";
fTimeField.text = "";
}
private function hideGameOver():void{
var i:int;
var t:Timer;
var hide:Function;
hide = function (_arg1:Event):void{
removeChild(fGameOver);
fGameOver = null;
fNameField = null;
fSubmitButton = null;
fShowButton = null;
fMessageField = null;
};
i = 0;
while (i < fGameOver.numChildren) {
if ((fGameOver.getChildAt(i) is ElevatorText)){
ElevatorText(fGameOver.getChildAt(i)).moveOffScreen(10);
};
i = (i + 1);
};
fNameField.visible = false;
fMessageField.visible = false;
t = new Timer(500, 1);
t.addEventListener(TimerEvent.TIMER_COMPLETE, hide);
t.start();
}
private function updateScore():void{
fScoreField.text = ("SCORE: " + formatNumber(fScore, 4));
fFloorField.text = ("FLOOR: " + formatNumber(fFloor, 2));
fTimeField.text = ("TIME: " + formatTime(fTime));
if (fTime < 15){
fTimeField.textColor = CFTextField.COLOR_RED;
} else {
fTimeField.textColor = CFTextField.COLOR_DEFAULT;
};
}
private function formatTime(_arg1:int):String{
return ((((int((_arg1 / 60)) + ":") + (((_arg1 % 60) < 10)) ? "0" : "") + (_arg1 % 60)));
}
public function startGame():void{
fScore = 0;
fFloor = 1;
fCleanFloor = true;
fTime = fGamePlay.time;
updateScore();
fPlayer = new PlayerSprite();
fPlayer.x = 1;
fPlayer.y = (FloorsBackground.getFloorY(0) - fPlayer.height);
fPlayerLayer.addChild(fPlayer);
fDirection = RIGHT;
stage.addEventListener(KeyboardEvent.KEY_DOWN, doKeyDown);
stage.addEventListener(KeyboardEvent.KEY_UP, doKeyUp);
stage.focus = stage;
fTickTimer.start();
fState = STATE_RUNNING;
}
private function endGame():void{
var _local1:int;
var _local2:Number;
fGamePlay.reset();
_local1 = 0;
while (_local1 < fElevators.length) {
_local2 = (RandomUtil.generateRandom(fGamePlay.minSpeed, (fGamePlay.maxSpeed + 1)) / 10);
ElevatorSprite(fElevators[_local1]).speed = _local2;
_local1++;
};
fPlayerLayer.removeChild(fPlayer);
fPlayer = null;
}
private function showHome(_arg1:Event):void{
fGame.showHome();
}
private function submitScore(_arg1:Event):void{
var name:String;
var score:int;
var req:URLRequest;
var loader:URLLoader;
var error:Function;
var infoReceived:Function;
var e = _arg1;
if (fNameField.text.length > 0){
error = function (_arg1:Event):void{
fMessageField.text = "Not submitted";
};
infoReceived = function (_arg1:Event):void{
var _local2:int;
_local2 = int(loader.data);
if (_local2 < 0){
fMessageField.text = "Not submitted";
} else {
fMessageField.text = ("Rank: " + _local2);
};
};
fSubmitButton.visible = false;
fNameField.visible = false;
fMessageField.visible = true;
fMessageField.text = "Submitting...";
fShowButton.visible = true;
name = fNameField.text;
score = ((fScore * 100) + (fScore % 97));
req = new URLRequest(((((("http://www.smileygamer.com/scripts/highscores.php?id=" + Elevatorz.GAMEID) + "&score=") + score) + "&player=") + name));
loader = new URLLoader(req);
loader.addEventListener(IOErrorEvent.IO_ERROR, error);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, error);
loader.addEventListener(Event.COMPLETE, infoReceived);
} else {
fNameField.borderColor = CFTextField.COLOR_RED;
};
}
private function doKeyDown(_arg1:KeyboardEvent):void{
var _local2:Boolean;
var _local3:Boolean;
if (fState == STATE_RUNNING){
_local2 = (fPlayer.x == 1);
_local3 = ((fPlayer.x + fPlayer.width) == (FloorsBackground.FLOOR_WIDTH - 1));
if ((((_arg1.keyCode == Keyboard.LEFT)) && (!(_local2)))){
fDirection = LEFT;
fPlayer.run(fDirection);
};
if ((((_arg1.keyCode == Keyboard.RIGHT)) && (!(_local3)))){
fDirection = RIGHT;
fPlayer.run(fDirection);
};
};
}
private function tick(_arg1:Event):void{
fTime--;
updateScore();
if (fTime == 0){
gameover();
};
}
private function update(_arg1:Event):void{
var i:int;
var elevator:ElevatorSprite;
var speed:Number;
var leftWall:Boolean;
var rightWall:Boolean;
var run:Function;
var t:Timer;
var e = _arg1;
if (fState != STATE_PAUSED){
i = 0;
while (i < fElevators.length) {
elevator = (fElevators[i] as ElevatorSprite);
elevator.move();
if ((((elevator.y < 0.5)) || (((elevator.y + elevator.height) > 283)))){
speed = (RandomUtil.generateRandom(fGamePlay.minSpeed, (fGamePlay.maxSpeed + 1)) / 10);
elevator.reverse(speed);
};
i = (i + 1);
};
};
if (fState == STATE_RUNNING){
run = function ():void{
if (fState == STATE_HIT){
fPlayer.stand(fDirection);
fState = STATE_RUNNING;
};
};
fPlayer.move();
leftWall = (fPlayer.x == 1);
rightWall = ((fPlayer.x + fPlayer.width) == (FloorsBackground.FLOOR_WIDTH - 1));
if (((leftWall) || (rightWall))){
fPlayer.stand(fDirection);
};
if (((((((fFloor % 2) == 0)) && (leftWall))) || (((((fFloor % 2) == 1)) && (rightWall))))){
nextFloor();
};
i = 0;
while (i < fElevators.length) {
elevator = (fElevators[i] as ElevatorSprite);
if (fPlayer.hitTestObject(elevator)){
fPlayer.hurt(fDirection);
if (fPlayer.x < elevator.x){
fPlayer.x = (((i * 2) * FloorsBackground.SHAFT_WIDTH) + 1);
} else {
fPlayer.x = ((((i + 1) * 2) * FloorsBackground.SHAFT_WIDTH) + 1);
};
fState = STATE_HIT;
fCleanFloor = false;
t = new Timer((fGamePlay.hitTimeOut * 1000), 1);
t.addEventListener(TimerEvent.TIMER_COMPLETE, run);
t.start();
};
i = (i + 1);
};
};
}
private function gameover():void{
fPlayer.hurt(fDirection);
fState = STATE_GAMEOVER;
fTickTimer.stop();
showGameOver();
stage.removeEventListener(KeyboardEvent.KEY_DOWN, doKeyDown);
stage.removeEventListener(KeyboardEvent.KEY_UP, doKeyUp);
}
private function nextFloor():void{
var anim:MoveAnimation;
var floorUp:Function;
var oldGameLayer:DisplayObject;
var newGameLayer:DisplayObject;
var levelanim:MoveAnimation;
var levelup:Function;
floorUp = function ():void{
if (fState == STATE_RISING){
if (contains(fPerfectText)){
fPerfectText.moveOffScreen(10);
};
if ((fFloor % FloorsBackground.FLOORS) == 0){
fPlayer.y = (FloorsBackground.getFloorY(0) - fPlayer.height);
fPlayerLayer.addChild(fPlayer);
};
fFloor++;
fCleanFloor = true;
updateScore();
fDirection = !(fDirection);
fPlayer.stand(fDirection);
fState = STATE_RUNNING;
};
};
fState = STATE_RISING;
fPlayer.climb();
fScore = (fScore + fGamePlay.getFloorScore(fCleanFloor));
updateScore();
if (contains(fPerfectText)){
removeChild(fPerfectText);
};
if (contains(fLevelUpText)){
removeChild(fLevelUpText);
};
if ((fFloor % FloorsBackground.FLOORS) == 0){
levelup = function ():void{
fLevelUpText.moveOffScreen(10);
};
fGamePlay.nextLevel();
fTime = fGamePlay.time;
oldGameLayer = fGameLayer.getChildAt(1);
newGameLayer = createGameLayer();
newGameLayer.y = -283;
fGameLayer.addChildAt(newGameLayer, 1);
new MoveAnimation(oldGameLayer, new Point(0, 0), new Point(0, 283), 61, 0, 0, true);
levelanim = new MoveAnimation(newGameLayer, new Point(0, -283), new Point(0, 0), 61);
levelanim.addCallback(levelup);
fLevelUpText.moveOnScreen(10);
addChild(fLevelUpText);
SoundManager.playLevelUp();
} else {
if (fCleanFloor){
fPerfectText.moveOnScreen(10);
addChild(fPerfectText);
SoundManager.playPerfect();
};
};
anim = new MoveAnimation(fPlayer, new Point(fPlayer.x, fPlayer.y), new Point(fPlayer.x, (fPlayer.y - FloorsBackground.FLOOR_HEIGHT)), 60);
anim.addCallback(floorUp);
}
private function playAgain(_arg1:Event):void{
var endad:Function;
var newgame:Function;
var anim:OverlayAnimation;
var e = _arg1;
endad = function ():void{
var _local1:OverlayAnimation;
_local1 = new OverlayAnimation(fGame.overlay, Elevatorz.BGCOLOR, true);
_local1.addCallback(newgame);
};
newgame = function ():void{
startGame();
};
endGame();
hideGameOver();
if (((Elevatorz.SPONSORED) || (((getTimer() - sLastAd) < 300000)))){
anim = new OverlayAnimation(fGame.overlay, Elevatorz.BGCOLOR, true);
anim.addCallback(newgame);
} else {
MochiAd.showInterLevelAd({id:"26b2db898ced37e5", res:"312x312", clip:fGame, ad_started:function ():void{
}, ad_finished:endad, no_bg:true});
sLastAd = getTimer();
};
}
}
}//package elevatorz
Section 32
//IntroScreen (elevatorz.IntroScreen)
package elevatorz {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import smileygamer.*;
import smileygamer.util.*;
import flash.filters.*;
public class IntroScreen extends Sprite {
private static var Smiley:Class = IntroScreen_Smiley;
private static var HandMask:Class = IntroScreen_HandMask;
private static var SmileyMask:Class = IntroScreen_SmileyMask;
private static var Hand:Class = IntroScreen_Hand;
public function IntroScreen(){
addEventListener(Event.ADDED_TO_STAGE, added);
}
public function added(_arg1:Event):void{
var _local2:ElevatorText;
var _local3:DropShadowFilter;
var _local4:DropShadowFilter;
var _local5:GlowFilter;
var _local6:Bitmap;
var _local7:Bitmap;
var _local8:MoveAnimation;
var _local9:ElevatorText;
_local2 = new ElevatorText("SMILEYGAMER.COM", CFTextField.SIZE_INTRO, 0, 0);
_local2.x = ((Elevatorz.WIDTH - _local2.width) / 2);
_local2.y = 10;
addChild(_local2);
_local2.moveOnScreen();
_local3 = new DropShadowFilter(3);
_local3.alpha = 0.8;
_local3.quality = BitmapFilterQuality.HIGH;
_local4 = new DropShadowFilter(2, -135);
_local4.quality = BitmapFilterQuality.HIGH;
_local4.inner = true;
_local5 = new GlowFilter(0, 0.8, 2, 2, 2, 3, true);
_local6 = BitmapUtil.createMaskedBitmap(new Smiley(), new SmileyMask());
_local6.x = ((Elevatorz.WIDTH / 2) - 150);
_local6.y = ((Elevatorz.HEIGHT / 2) - 100);
_local6.filters = [_local4, _local5, _local3];
addChild(_local6);
_local7 = BitmapUtil.createMaskedBitmap(new Hand(), new HandMask());
_local7.filters = [_local4, _local5, _local3];
addChild(_local7);
_local8 = new MoveAnimation(_local7, new Point((_local6.x + 240), (_local6.y + 90)), new Point((_local6.x + 240), (_local6.y + 120)), 40, InterpolationUtil.TYPE_COSINE, 0, false, true);
_local8.looping = true;
_local9 = new ElevatorText("PLAY THE BEST FREE GAMES!", CFTextField.SIZE_NORMAL, 0, 0);
_local9.x = ((Elevatorz.WIDTH - _local9.width) / 2);
_local9.y = (Elevatorz.HEIGHT - 30);
addChild(_local9);
_local9.moveOnScreen();
}
}
}//package elevatorz
Section 33
//IntroScreen_Hand (elevatorz.IntroScreen_Hand)
package elevatorz {
import mx.core.*;
public class IntroScreen_Hand extends BitmapAsset {
}
}//package elevatorz
Section 34
//IntroScreen_HandMask (elevatorz.IntroScreen_HandMask)
package elevatorz {
import mx.core.*;
public class IntroScreen_HandMask extends BitmapAsset {
}
}//package elevatorz
Section 35
//IntroScreen_Smiley (elevatorz.IntroScreen_Smiley)
package elevatorz {
import mx.core.*;
public class IntroScreen_Smiley extends BitmapAsset {
}
}//package elevatorz
Section 36
//IntroScreen_SmileyMask (elevatorz.IntroScreen_SmileyMask)
package elevatorz {
import mx.core.*;
public class IntroScreen_SmileyMask extends BitmapAsset {
}
}//package elevatorz
Section 37
//Lights (elevatorz.Lights)
package elevatorz {
import flash.display.*;
import smileygamer.util.*;
public class Lights extends Sprite {
private static var Light:Class = Lights_Light;
public function Lights(_arg1:Boolean=true){
var _local2:int;
var _local3:int;
var _local4:DisplayObject;
var _local5:int;
super();
_local2 = (_arg1) ? 0 : 1;
_local3 = 0;
while (_local3 < FloorsBackground.FLOORS) {
_local4 = new Light();
_local5 = RandomUtil.generateRandom(0, FloorsBackground.SHAFTS);
if ((_local3 % 2) != _local2){
_local5++;
};
_local4.x = (((_local5 * FloorsBackground.SHAFT_WIDTH) * 2) + 10);
_local4.y = (FloorsBackground.getFloorY(_local3) - _local4.height);
addChild(_local4);
_local3++;
};
}
}
}//package elevatorz
Section 38
//Lights_Light (elevatorz.Lights_Light)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class Lights_Light extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function Lights_Light(){
dataClass = Lights_Light_dataClass;
super();
initialWidth = (350 / 20);
initialHeight = (688 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 39
//Lights_Light_dataClass (elevatorz.Lights_Light_dataClass)
package elevatorz {
import mx.core.*;
public class Lights_Light_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 40
//OverlayAnimation (elevatorz.OverlayAnimation)
package elevatorz {
import flash.display.*;
import smileygamer.*;
public class OverlayAnimation extends AAnimation {
private var fOpen:Boolean;
private var fColor:int;
public function OverlayAnimation(_arg1:DisplayObject, _arg2:int, _arg3:Boolean){
_arg1.rotation = 0;
fColor = _arg2;
fOpen = _arg3;
super(_arg1);
looping = false;
}
override public function update():void{
var _local1:Graphics;
var _local2:Number;
_local1 = (displayObject as Shape).graphics;
_local2 = (fOpen) ? (frame / (frameCount - 1)) : (((frameCount - frame) - 1) / (frameCount - 1));
_local1.clear();
_local1.beginFill(fColor, 0.7);
_local1.drawRect((((-(Elevatorz.WIDTH) / 2) * _local2) - 300), -300, 300, 600);
_local1.drawRect(((Elevatorz.WIDTH / 2) * _local2), -300, 300, 600);
_local1.endFill();
displayObject.x = (Elevatorz.WIDTH / 2);
displayObject.y = (Elevatorz.HEIGHT / 2);
displayObject.rotation = ((180 * frame) / frameCount);
}
override protected function get frameCount():int{
return (30);
}
override public function get finished():Boolean{
var _local1:Boolean;
_local1 = super.finished;
if (((_local1) && (fOpen))){
displayObject.parent.removeChild(displayObject);
};
return (_local1);
}
}
}//package elevatorz
Section 41
//PlayerSprite (elevatorz.PlayerSprite)
package elevatorz {
import flash.display.*;
import flash.geom.*;
public class PlayerSprite extends Sprite {
private var fStandRight:DisplayObject;
private var fRunLeft:DisplayObject;
private var fStandLeft:DisplayObject;
private var fHurtLeft:DisplayObject;
private var fHurtRight:DisplayObject;
private var fSpeed:int;// = 0
private var fFrame:int;// = 0
private var fRunRight:DisplayObject;
private var fClimb:DisplayObject;
private static var Climb:Class = PlayerSprite_Climb;
private static var Run:Class = PlayerSprite_Run;
private static var Stand:Class = PlayerSprite_Stand;
private static var Hurt:Class = PlayerSprite_Hurt;
public function PlayerSprite(){
fSpeed = 0;
fFrame = 0;
super();
fStandLeft = new Stand();
fStandLeft.transform.matrix = new Matrix(-1, 0, 0, 1, 16, 0);
fStandRight = new Stand();
fStandRight.x = 3;
fRunLeft = new Run();
fRunLeft.transform.matrix = new Matrix(-1, 0, 0, 1, 16, 0);
fRunRight = new Run();
fRunRight.x = 3;
fClimb = new Climb();
fClimb.x = 5;
fHurtLeft = new Hurt();
fHurtLeft.transform.matrix = new Matrix(-1, 0, 0, 1, 16, 0);
fHurtRight = new Hurt();
fHurtRight.x = 3;
addChild(fStandLeft);
}
public function hurt(_arg1:Boolean):void{
fSpeed = 0;
removeChildAt(0);
if (_arg1){
fHurtLeft = new Hurt();
fHurtLeft.transform.matrix = new Matrix(-1, 0, 0, 1, 16, 0);
addChild(fHurtLeft);
} else {
fHurtRight = new Hurt();
fHurtRight.x = 3;
addChild(fHurtRight);
};
SoundManager.playHurt();
}
override public function get height():Number{
return (23);
}
public function run(_arg1:Boolean):void{
removeChildAt(0);
if (_arg1){
fSpeed = -1;
addChild(fRunLeft);
} else {
fSpeed = 1;
addChild(fRunRight);
};
}
override public function get width():Number{
return (18);
}
public function climb():void{
removeChildAt(0);
addChild(fClimb);
SoundManager.playClimb();
}
public function move():void{
x = (x + fSpeed);
if (fSpeed != 0){
if (fFrame == 0){
SoundManager.playStep();
};
fFrame = ((fFrame + 1) % 10);
};
}
public function stand(_arg1:Boolean):void{
fSpeed = 0;
removeChildAt(0);
addChild((_arg1) ? fStandLeft : fStandRight);
}
}
}//package elevatorz
Section 42
//PlayerSprite_Climb (elevatorz.PlayerSprite_Climb)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class PlayerSprite_Climb extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function PlayerSprite_Climb(){
dataClass = PlayerSprite_Climb_dataClass;
super();
initialWidth = (269 / 20);
initialHeight = (505 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 43
//PlayerSprite_Climb_dataClass (elevatorz.PlayerSprite_Climb_dataClass)
package elevatorz {
import mx.core.*;
public class PlayerSprite_Climb_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 44
//PlayerSprite_Hurt (elevatorz.PlayerSprite_Hurt)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class PlayerSprite_Hurt extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function PlayerSprite_Hurt(){
dataClass = PlayerSprite_Hurt_dataClass;
super();
initialWidth = (301 / 20);
initialHeight = (447 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 45
//PlayerSprite_Hurt_dataClass (elevatorz.PlayerSprite_Hurt_dataClass)
package elevatorz {
import mx.core.*;
public class PlayerSprite_Hurt_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 46
//PlayerSprite_Run (elevatorz.PlayerSprite_Run)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class PlayerSprite_Run extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function PlayerSprite_Run(){
dataClass = PlayerSprite_Run_dataClass;
super();
initialWidth = (337 / 20);
initialHeight = (478 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 47
//PlayerSprite_Run_dataClass (elevatorz.PlayerSprite_Run_dataClass)
package elevatorz {
import mx.core.*;
public class PlayerSprite_Run_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 48
//PlayerSprite_Stand (elevatorz.PlayerSprite_Stand)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class PlayerSprite_Stand extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function PlayerSprite_Stand(){
dataClass = PlayerSprite_Stand_dataClass;
super();
initialWidth = (215 / 20);
initialHeight = (473 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 49
//PlayerSprite_Stand_dataClass (elevatorz.PlayerSprite_Stand_dataClass)
package elevatorz {
import mx.core.*;
public class PlayerSprite_Stand_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 50
//SoundManager (elevatorz.SoundManager)
package elevatorz {
import flash.events.*;
import flash.utils.*;
import flash.media.*;
public class SoundManager {
private static var fHurtSound:Sound = (new Hurt() as Sound);
private static var Music:Class = SoundManager_Music;
private static var fSound:Boolean = true;
private static var Tada:Class = SoundManager_Tada;
private static var Beep:Class = SoundManager_Beep;
private static var Climb:Class = SoundManager_Climb;
private static var fStepSound:Sound = (new Step() as Sound);
private static var fMusic:Sound = (new Music() as Sound);
private static var fClimbSound:Sound = (new Climb() as Sound);
private static var fMusicChannel:SoundChannel;
private static var Step:Class = SoundManager_Step;
private static var Hurt:Class = SoundManager_Hurt;
private static var fButtonSound:Sound = (new Beep() as Sound);
private static var fTadaSound:Sound = (new Tada() as Sound);
public static function playButton():void{
if (fSound){
fButtonSound.play();
};
}
public static function get sound():Boolean{
return (fSound);
}
public static function toggleSound():void{
sound = !(sound);
}
public static function playClimb():void{
if (fSound){
fClimbSound.play();
};
}
public static function playHurt():void{
if (fSound){
fHurtSound.play();
};
}
public static function set sound(_arg1:Boolean):void{
fSound = _arg1;
if (!fSound){
if (fMusicChannel != null){
fMusicChannel.stop();
};
} else {
fMusicChannel = null;
playMusic();
};
}
public static function playStep():void{
if (fSound){
fStepSound.play();
};
}
public static function playMusic():void{
var replay:Function;
replay = function (_arg1:Event):void{
var _local2:Timer;
if (((!((_arg1 == null))) && ((_arg1.type == Event.SOUND_COMPLETE)))){
_local2 = new Timer(3000, 1);
_local2.addEventListener(TimerEvent.TIMER_COMPLETE, replay);
_local2.start();
} else {
fMusicChannel = fMusic.play();
fMusicChannel.addEventListener(Event.SOUND_COMPLETE, replay);
};
};
if (((fSound) && ((fMusicChannel == null)))){
replay(null);
};
}
public static function playLevelUp():void{
if (fSound){
fTadaSound.play();
};
}
public static function playPerfect():void{
if (fSound){
fTadaSound.play();
};
}
}
}//package elevatorz
Section 51
//SoundManager_Beep (elevatorz.SoundManager_Beep)
package elevatorz {
import mx.core.*;
public class SoundManager_Beep extends SoundAsset {
}
}//package elevatorz
Section 52
//SoundManager_Climb (elevatorz.SoundManager_Climb)
package elevatorz {
import mx.core.*;
public class SoundManager_Climb extends SoundAsset {
}
}//package elevatorz
Section 53
//SoundManager_Hurt (elevatorz.SoundManager_Hurt)
package elevatorz {
import mx.core.*;
public class SoundManager_Hurt extends SoundAsset {
}
}//package elevatorz
Section 54
//SoundManager_Music (elevatorz.SoundManager_Music)
package elevatorz {
import mx.core.*;
public class SoundManager_Music extends SoundAsset {
}
}//package elevatorz
Section 55
//SoundManager_Step (elevatorz.SoundManager_Step)
package elevatorz {
import mx.core.*;
public class SoundManager_Step extends SoundAsset {
}
}//package elevatorz
Section 56
//SoundManager_Tada (elevatorz.SoundManager_Tada)
package elevatorz {
import mx.core.*;
public class SoundManager_Tada extends SoundAsset {
}
}//package elevatorz
Section 57
//TitleScreen (elevatorz.TitleScreen)
package elevatorz {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import smileygamer.*;
import flash.text.*;
import smileygamer.util.*;
import flash.filters.*;
public class TitleScreen extends Sprite {
private var fAddToSiteButton:ElevatorText;
private var fInstructionsButton:ElevatorText;
private var fCharacter:DisplayObject;
private var fGame:Elevatorz;
private var fMoreGamesButton:ElevatorText;
private var fSmileyButton:SimpleButton;
private var fTitle:ElevatorText;
private var fCopyrightButton:ElevatorText;
private var fPlayButton:ElevatorText;
private var fCreditsButton:ElevatorText;
private var fHighscoresButton:ElevatorText;
private var fSoundButton:SimpleButton;
private static var SmileySmall:Class = TitleScreen_SmileySmall;
private static var Character:Class = TitleScreen_Character;
private static var SoundOffImage:Class = TitleScreen_SoundOffImage;
private static var SoundOnImage:Class = TitleScreen_SoundOnImage;
public function TitleScreen(_arg1:Elevatorz){
fGame = _arg1;
addEventListener(Event.ENTER_FRAME, init);
}
private function init(_arg1:Event):void{
var _local2:DropShadowFilter;
var _local3:DropShadowFilter;
var _local4:DisplayObject;
var _local5:DisplayObject;
var _local6:GlowFilter;
removeEventListener(Event.ENTER_FRAME, init);
fTitle = new ElevatorText("ELEVATORZ", CFTextField.SIZE_LARGEST, 60, 30);
fTitle.x = ((Elevatorz.WIDTH - fTitle.width) / 2);
fTitle.y = -4;
addChild(fTitle);
fTitle.moveOnScreen();
fPlayButton = new ElevatorText("PLAY", CFTextField.SIZE_LARGEST, 0, 0, startGame);
fPlayButton.x = ((Elevatorz.WIDTH - fPlayButton.width) / 2);
fPlayButton.y = 80;
addChild(fPlayButton);
fPlayButton.moveOnScreen();
fInstructionsButton = new ElevatorText("INSTRUCTIONS", CFTextField.SIZE_LARGE, 0, 0, instructions);
fInstructionsButton.x = ((Elevatorz.WIDTH - fInstructionsButton.width) / 2);
fInstructionsButton.y = 145;
addChild(fInstructionsButton);
fInstructionsButton.moveOnScreen();
fCreditsButton = new ElevatorText("CREDITS", CFTextField.SIZE_LARGE, 0, 0, credits);
fCreditsButton.x = ((Elevatorz.WIDTH - fCreditsButton.width) / 2);
fCreditsButton.y = 175;
addChild(fCreditsButton);
fCreditsButton.moveOnScreen();
fHighscoresButton = new ElevatorText("HIGHSCORES", CFTextField.SIZE_LARGE, 0, 0, highscores);
fHighscoresButton.x = ((Elevatorz.WIDTH - fHighscoresButton.width) / 2);
fHighscoresButton.y = 205;
addChild(fHighscoresButton);
fHighscoresButton.moveOnScreen();
fMoreGamesButton = new ElevatorText("MORE GAMES", CFTextField.SIZE_LARGE, 0, 0, showHome);
fMoreGamesButton.x = ((Elevatorz.WIDTH - fMoreGamesButton.width) / 2);
fMoreGamesButton.y = 235;
addChild(fMoreGamesButton);
fMoreGamesButton.moveOnScreen();
fAddToSiteButton = new ElevatorText("PUT THIS GAME ON YOUR SITE", CFTextField.SIZE_SMALL, 0, 0, addtosite);
fAddToSiteButton.x = 5;
fAddToSiteButton.y = 273;
addChild(fAddToSiteButton);
fAddToSiteButton.moveOnScreen();
fCopyrightButton = new ElevatorText("COPYRIGHT 2007 SMILEYGAMER.COM", CFTextField.SIZE_SMALL, 0, 0, showHome);
fCopyrightButton.x = 5;
fCopyrightButton.y = 289;
addChild(fCopyrightButton);
fCopyrightButton.moveOnScreen();
_local2 = new DropShadowFilter(1, -135);
_local2.alpha = 0.8;
_local2.quality = BitmapFilterQuality.HIGH;
_local2.inner = true;
_local3 = new DropShadowFilter(2);
_local3.alpha = 1;
_local3.quality = BitmapFilterQuality.HIGH;
_local4 = new SmileySmall();
_local4.filters = [_local2, _local3];
_local5 = new SmileySmall();
_local6 = new GlowFilter(0xFFFFFF, 1, 16, 16, 2, BitmapFilterQuality.HIGH);
_local5.filters = [_local3, _local6];
fSmileyButton = new SimpleButton(_local4, _local5, _local5, _local5);
fSmileyButton.x = (310 - fSmileyButton.width);
fSmileyButton.y = 240;
fSmileyButton.addEventListener(MouseEvent.CLICK, showHome);
new FadeAnimation(fSmileyButton, 20, FadeAnimation.MODE_FADE_IN);
addChild(fSmileyButton);
fCharacter = new Character();
fCharacter.scaleX = 8;
fCharacter.scaleY = 8;
fCharacter.x = 2;
fCharacter.y = 84;
new FadeAnimation(fCharacter, 20, FadeAnimation.MODE_FADE_IN);
addChild(fCharacter);
fSoundButton = createSoundToggleButton();
fSoundButton.x = (Elevatorz.WIDTH - 25);
fSoundButton.y = 210;
new FadeAnimation(fSoundButton, 20, FadeAnimation.MODE_FADE_IN);
addChild(fSoundButton);
}
private function addtosite(_arg1:Event):void{
NetworkUtil.showGamesForSite();
}
private function highscores(_arg1:Event):void{
fGame.showHighscores();
}
private function startGame(_arg1:Event):void{
var t:Timer;
var start:Function;
var e = _arg1;
start = function (_arg1:Event):void{
fGame.startGame();
};
fTitle.moveOffScreen();
hideButtons();
t = new Timer(500, 1);
t.addEventListener(TimerEvent.TIMER_COMPLETE, start);
t.start();
}
private function showHome(_arg1:Event):void{
fGame.showHome();
}
private function credits(_arg1:Event):void{
var instr:Sprite;
var text:CFTextField;
var click:Function;
var e = _arg1;
click = function (_arg1:Event):void{
new FadeAnimation(instr, 30, FadeAnimation.MODE_FADE_OUT_REMOVE);
showButtons();
};
hideButtons();
instr = new Sprite();
text = new CFTextField(CFTextField.SIZE_MEDIUM, CFTextField.COLOR_DEFAULT);
text.defaultTextFormat.align = TextFormatAlign.CENTER;
text.multiline = true;
text.wordWrap = true;
text.width = 280;
text.height = 250;
text.text = (((" Elevatorz version 1.0\n" + "Programming by\n Jochen De Schepper\n") + "Graphics by\n Israel Lazo\n") + "Music by\n Matthew Okun");
instr.addChild(text);
instr.x = 16;
instr.y = 100;
instr.addEventListener(MouseEvent.CLICK, click);
new FadeAnimation(instr, 30, FadeAnimation.MODE_FADE_IN);
addChild(instr);
}
private function instructions(_arg1:Event):void{
var instr:Sprite;
var text:CFTextField;
var click:Function;
var e = _arg1;
click = function (_arg1:Event):void{
new FadeAnimation(instr, 30, FadeAnimation.MODE_FADE_OUT_REMOVE);
showButtons();
};
hideButtons();
instr = new Sprite();
text = new CFTextField(CFTextField.SIZE_NORMAL, CFTextField.COLOR_DEFAULT);
text.multiline = true;
text.wordWrap = true;
text.width = 300;
text.height = 250;
text.text = (((("Mr. Jitters, a stressed office worker, is afraid of elevators. Help him reach his office " + "at the top of the building before the time runs out. ") + "Avoid getting hit by an elevator, as this will knock you out for 3 seconds!\n\n") + "LEFT & RIGHT arrow keys : Start running left or right\n") + "P : Pause - ESC : End game\nS : Toggle sound");
instr.addChild(text);
instr.x = 6;
instr.y = 82;
instr.addEventListener(MouseEvent.CLICK, click);
new FadeAnimation(instr, 30, FadeAnimation.MODE_FADE_IN);
addChild(instr);
}
private function createSoundToggleButton():SimpleButton{
var soundOn:DisplayObject;
var soundOff:DisplayObject;
var button:SimpleButton;
var setButton:Function;
var toggleSound:Function;
setButton = function ():void{
if (SoundManager.sound){
button.overState = soundOn;
button.downState = soundOn;
button.upState = soundOn;
button.hitTestState = soundOn;
} else {
button.overState = soundOff;
button.downState = soundOff;
button.upState = soundOff;
button.hitTestState = soundOff;
};
};
toggleSound = function (_arg1:Event):void{
SoundManager.toggleSound();
setButton();
};
soundOn = new SoundOnImage();
soundOff = new SoundOffImage();
button = new SimpleButton();
setButton();
button.addEventListener(MouseEvent.CLICK, toggleSound);
return (button);
}
private function showButtons():void{
fPlayButton.moveOnScreen();
fInstructionsButton.moveOnScreen();
fCreditsButton.moveOnScreen();
fHighscoresButton.moveOnScreen();
fMoreGamesButton.moveOnScreen();
fAddToSiteButton.moveOnScreen();
fCopyrightButton.moveOnScreen();
new FadeAnimation(fSmileyButton, 20, FadeAnimation.MODE_FADE_IN);
new FadeAnimation(fCharacter, 20, FadeAnimation.MODE_FADE_IN);
new FadeAnimation(fSoundButton, 20, FadeAnimation.MODE_FADE_IN);
}
private function hideButtons():void{
fPlayButton.moveOffScreen();
fInstructionsButton.moveOffScreen();
fCreditsButton.moveOffScreen();
fHighscoresButton.moveOffScreen();
fMoreGamesButton.moveOffScreen();
fAddToSiteButton.moveOffScreen();
fCopyrightButton.moveOffScreen();
new FadeAnimation(fSmileyButton, 20, FadeAnimation.MODE_FADE_OUT);
new FadeAnimation(fCharacter, 20, FadeAnimation.MODE_FADE_OUT);
new FadeAnimation(fSoundButton, 20, FadeAnimation.MODE_FADE_OUT);
}
}
}//package elevatorz
Section 58
//TitleScreen_Character (elevatorz.TitleScreen_Character)
package elevatorz {
import flash.utils.*;
import mx.core.*;
public class TitleScreen_Character extends MovieClipLoaderAsset {
public var dataClass:Class;
private static var bytes:ByteArray = null;
public function TitleScreen_Character(){
dataClass = TitleScreen_Character_dataClass;
super();
initialWidth = (215 / 20);
initialHeight = (473 / 20);
}
override public function get movieClipData():ByteArray{
if (bytes == null){
bytes = ByteArray(new dataClass());
};
return (bytes);
}
}
}//package elevatorz
Section 59
//TitleScreen_Character_dataClass (elevatorz.TitleScreen_Character_dataClass)
package elevatorz {
import mx.core.*;
public class TitleScreen_Character_dataClass extends ByteArrayAsset {
}
}//package elevatorz
Section 60
//TitleScreen_SmileySmall (elevatorz.TitleScreen_SmileySmall)
package elevatorz {
import mx.core.*;
public class TitleScreen_SmileySmall extends BitmapAsset {
}
}//package elevatorz
Section 61
//TitleScreen_SoundOffImage (elevatorz.TitleScreen_SoundOffImage)
package elevatorz {
import mx.core.*;
public class TitleScreen_SoundOffImage extends BitmapAsset {
}
}//package elevatorz
Section 62
//TitleScreen_SoundOnImage (elevatorz.TitleScreen_SoundOnImage)
package elevatorz {
import mx.core.*;
public class TitleScreen_SoundOnImage extends BitmapAsset {
}
}//package elevatorz
Section 63
//BitmapAsset (mx.core.BitmapAsset)
package mx.core {
import flash.display.*;
public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject {
mx_internal static const VERSION:String = "2.0.1.0";
public function BitmapAsset(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
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(_arg1:Number, _arg2:Number):void{
width = _arg1;
height = _arg2;
}
public function move(_arg1:Number, _arg2:Number):void{
this.x = _arg1;
this.y = _arg2;
}
}
}//package mx.core
Section 64
//ByteArrayAsset (mx.core.ByteArrayAsset)
package mx.core {
import flash.utils.*;
public class ByteArrayAsset extends ByteArray implements IFlexAsset {
mx_internal static const VERSION:String = "2.0.1.0";
}
}//package mx.core
Section 65
//FlexBitmap (mx.core.FlexBitmap)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexBitmap extends Bitmap {
mx_internal static const VERSION:String = "2.0.1.0";
public function FlexBitmap(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){
var bitmapData = _arg1;
var pixelSnapping = _arg2;
var smoothing = _arg3;
super(bitmapData, pixelSnapping, smoothing);
try {
name = NameUtil.createUniqueName(this);
} catch(e:Error) {
};
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 66
//FlexMovieClip (mx.core.FlexMovieClip)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexMovieClip extends MovieClip {
mx_internal static const VERSION:String = "2.0.1.0";
public function FlexMovieClip(){
super();
try {
name = NameUtil.createUniqueName(this);
} catch(e:Error) {
};
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 67
//FontAsset (mx.core.FontAsset)
package mx.core {
import flash.text.*;
public class FontAsset extends Font implements IFlexAsset {
mx_internal static const VERSION:String = "2.0.1.0";
}
}//package mx.core
Section 68
//IFlexAsset (mx.core.IFlexAsset)
package mx.core {
public interface IFlexAsset {
}
}//package mx.core
Section 69
//IFlexDisplayObject (mx.core.IFlexDisplayObject)
package mx.core {
import flash.events.*;
import flash.display.*;
public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher {
function get name():String;
function set width(_arg1:Number):void;
function get measuredHeight():Number;
function set height(_arg1:Number):void;
function get scaleY():Number;
function move(_arg1:Number, _arg2:Number):void;
function get scaleX():Number;
function set mask(_arg1:DisplayObject):void;
function set scaleX(_arg1:Number):void;
function set name(_arg1:String):void;
function set scaleY(_arg1:Number):void;
function get visible():Boolean;
function get measuredWidth():Number;
function set visible(_arg1:Boolean):void;
function get alpha():Number;
function get height():Number;
function get width():Number;
function get parent():DisplayObjectContainer;
function get mask():DisplayObject;
function set x(_arg1:Number):void;
function setActualSize(_arg1:Number, _arg2:Number):void;
function set y(_arg1:Number):void;
function get x():Number;
function get y():Number;
function set alpha(_arg1:Number):void;
}
}//package mx.core
Section 70
//IRepeaterClient (mx.core.IRepeaterClient)
package mx.core {
public interface IRepeaterClient {
function set instanceIndices(_arg1:Array):void;
function get isDocument():Boolean;
function get repeaters():Array;
function get instanceIndices():Array;
function set repeaters(_arg1:Array):void;
function initializeRepeaterArrays(_arg1:IRepeaterClient):void;
function set repeaterIndices(_arg1:Array):void;
function get repeaterIndices():Array;
}
}//package mx.core
Section 71
//MovieClipAsset (mx.core.MovieClipAsset)
package mx.core {
public class MovieClipAsset extends FlexMovieClip implements IFlexAsset, IFlexDisplayObject {
private var _measuredWidth:Number;
private var _measuredHeight:Number;
mx_internal static const VERSION:String = "2.0.1.0";
public function MovieClipAsset(){
_measuredWidth = width;
_measuredHeight = height;
}
public function get measuredWidth():Number{
return (_measuredWidth);
}
public function get measuredHeight():Number{
return (_measuredHeight);
}
public function setActualSize(_arg1:Number, _arg2:Number):void{
width = _arg1;
height = _arg2;
}
public function move(_arg1:Number, _arg2:Number):void{
this.x = _arg1;
this.y = _arg2;
}
}
}//package mx.core
Section 72
//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 {
private var requestedWidth:Number;
private var loader:Loader;// = null
private var requestedHeight:Number;
private var initialized:Boolean;// = false
protected var initialWidth:Number;// = 0
protected var initialHeight:Number;// = 0
mx_internal static const VERSION:String = "2.0.1.0";
public function MovieClipLoaderAsset(){
var _local1:LoaderContext;
loader = null;
initialized = false;
initialWidth = 0;
initialHeight = 0;
super();
_local1 = new LoaderContext();
_local1.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.loadBytes(movieClipData, _local1);
addChild(loader);
}
private function completeHandler(_arg1:Event):void{
initialized = true;
initialWidth = loader.width;
initialHeight = loader.height;
if (!isNaN(requestedWidth)){
loader.width = requestedWidth;
};
if (!isNaN(requestedHeight)){
loader.height = requestedHeight;
};
dispatchEvent(_arg1);
}
override public function get height():Number{
if (!initialized){
return (initialHeight);
};
return (super.height);
}
override public function set height(_arg1:Number):void{
if (!initialized){
requestedHeight = _arg1;
} else {
loader.height = _arg1;
};
}
public function get movieClipData():ByteArray{
return (null);
}
override public function set width(_arg1:Number):void{
if (!initialized){
requestedWidth = _arg1;
} else {
loader.width = _arg1;
};
}
override public function get measuredWidth():Number{
return (initialWidth);
}
override public function get measuredHeight():Number{
return (initialHeight);
}
override public function get width():Number{
if (!initialized){
return (initialWidth);
};
return (super.width);
}
}
}//package mx.core
Section 73
//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 74
//SoundAsset (mx.core.SoundAsset)
package mx.core {
import flash.media.*;
public class SoundAsset extends Sound implements IFlexAsset {
mx_internal static const VERSION:String = "2.0.1.0";
}
}//package mx.core
Section 75
//NameUtil (mx.utils.NameUtil)
package mx.utils {
import flash.display.*;
import flash.utils.*;
import mx.core.*;
public class NameUtil {
mx_internal static const VERSION:String = "2.0.1.0";
private static var counter:int = 0;
public static function displayObjectToString(_arg1:DisplayObject):String{
var _local2:String;
var _local3:DisplayObject;
var _local4:String;
var _local5:Array;
_local3 = _arg1;
while (_local3 != null) {
if (((((_local3.parent) && (_local3.stage))) && ((_local3.parent == _local3.stage)))){
break;
};
_local4 = _local3.name;
if ((_local3 is IRepeaterClient)){
_local5 = IRepeaterClient(_local3).instanceIndices;
if (_local5){
_local4 = (_local4 + (("[" + _local5.join("][")) + "]"));
};
};
_local2 = ((_local2 == null)) ? _local4 : ((_local4 + ".") + _local2);
_local3 = _local3.parent;
};
return (_local2);
}
public static function createUniqueName(_arg1:Object):String{
var _local2:String;
var _local3:int;
var _local4:int;
if (!_arg1){
return (null);
};
_local2 = getQualifiedClassName(_arg1);
_local3 = _local2.indexOf("::");
if (_local3 != -1){
_local2 = _local2.substr((_local3 + 2));
};
_local4 = _local2.charCodeAt((_local2.length - 1));
if ((((_local4 >= 48)) && ((_local4 <= 57)))){
_local2 = (_local2 + "_");
};
return ((_local2 + counter++));
}
}
}//package mx.utils
Section 76
//BitmapUtil (smileygamer.util.BitmapUtil)
package smileygamer.util {
import flash.display.*;
import flash.geom.*;
public class BitmapUtil {
public static function splitImage(_arg1:Bitmap, _arg2:int, _arg3:int, _arg4:int=0, _arg5:Array=null):Array{
var _local6:Array;
var _local7:Rectangle;
var _local8:Point;
var _local9:Point;
var _local10:BitmapData;
var _local11:int;
_local6 = new Array();
_local7 = new Rectangle(0, 0, _arg2, _arg3);
_local8 = new Point(0, 0);
_local9 = new Point(_arg4, _arg4);
_local7.y = 0;
while (_local7.y < _arg1.height) {
_local7.x = 0;
while (_local7.x < _arg1.width) {
_local10 = new BitmapData((_arg2 + (2 * _arg4)), (_arg3 + (2 * _arg4)), true, 0);
_local10.copyPixels(_arg1.bitmapData, _local7, _local9);
if (_arg5 != null){
_local11 = 0;
while (_local11 < _arg5.length) {
_local10.applyFilter(_local10, _local10.rect, _local8, _arg5[_local11]);
_local11++;
};
};
_local6.push(new Bitmap(_local10));
_local7.x = (_local7.x + _arg2);
};
_local7.y = (_local7.y + _arg3);
};
return (_local6);
}
public static function createMaskedBitmap(_arg1:Bitmap, _arg2:Bitmap, _arg3:Array=null):Bitmap{
var _local4:Bitmap;
var _local5:Rectangle;
var _local6:Point;
var _local7:int;
_local4 = new Bitmap(new BitmapData(_arg1.width, _arg1.height, true, 0));
_local4.bitmapData.draw(_arg1);
_local5 = new Rectangle(0, 0, _local4.width, _local4.height);
_local6 = new Point(0, 0);
_local4.bitmapData.copyChannel(_arg2.bitmapData, _local5, _local6, BitmapDataChannel.BLUE, BitmapDataChannel.ALPHA);
if (_arg3 != null){
_local7 = 0;
while (_local7 < _arg3.length) {
_local4.bitmapData.applyFilter(_local4.bitmapData, _local5, _local6, _arg3[_local7]);
_local7++;
};
};
return (_local4);
}
}
}//package smileygamer.util
Section 77
//InterpolationUtil (smileygamer.util.InterpolationUtil)
package smileygamer.util {
public class InterpolationUtil {
public static const TYPE_LINEAR:int = 0;
public static const TYPE_ACOS:int = 2;
public static const TYPE_COSINE:int = 1;
public static function createValues(_arg1:int, _arg2:Number, _arg3:Number, _arg4:int):Array{
var _local5:Array;
var _local6:int;
var _local7:int;
_local5 = new Array(_arg4);
_local6 = (_arg4 - 1);
_local7 = 0;
while (_local7 < _arg4) {
if (_arg1 == TYPE_COSINE){
_local5[_local7] = (_arg2 + (((_arg3 - _arg2) * Number((1 - Math.cos(((_local7 * Math.PI) / _local6))))) / 2));
} else {
if (_arg1 == TYPE_ACOS){
_local5[_local7] = (_arg2 + ((_arg3 - _arg2) * Number((Math.acos((1 - ((2 * Number(_local7)) / _local6))) / Math.PI))));
} else {
_local5[_local7] = (_arg2 + (((_arg3 - _arg2) * Number(_local7)) / _local6));
};
};
_local7++;
};
return (_local5);
}
}
}//package smileygamer.util
Section 78
//NetworkUtil (smileygamer.util.NetworkUtil)
package smileygamer.util {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.text.*;
public class NetworkUtil {
public static const HOME:String = "http://www.smileygamer.com";
private static var sGame:String;
private static var sReferer:String;
private static var sStage:Stage;
private static var sID:int;
private static var sWidth:int;
private static var sHeight:int;
public static function isDomainAllowed(_arg1:Array):Boolean{
var _local2:Boolean;
var _local3:int;
_local2 = false;
_local3 = 0;
while (_local3 < _arg1.length) {
_local2 = ((_local2) || (isDomain(_arg1[_local3])));
_local3++;
};
if (!_local2){
showNotAllowedWarning();
};
return (_local2);
}
public static function getReferer():String{
var _local1:String;
_local1 = sStage.loaderInfo.loaderURL.toLowerCase();
if (_local1.indexOf("file://") == 0){
_local1 = "local";
} else {
_local1 = _local1.split("/")[2];
};
return (_local1);
}
public static function showGamesForSite():void{
showURL(((HOME + "/freecontent.html?gameref=") + sID));
}
public static function init(_arg1:Stage, _arg2:int, _arg3:String, _arg4:int=400, _arg5:int=400):void{
sStage = _arg1;
sID = _arg2;
sGame = _arg3;
sWidth = _arg4;
sHeight = _arg5;
sReferer = getReferer();
}
private static function showNotAllowedWarning():void{
var _local1:String;
var _local2:String;
_local1 = sGame.toLowerCase();
_local1 = _local1.replace(/\s/g, "-");
_local2 = (((((HOME + "/play/") + sID) + "/") + _local1) + ".html");
showWarning(((((((((((("WARNING!\n\n" + sGame) + " can not be played on this site (") + sReferer) + "), because ") + "this site has not obtained the necessary license to host this version of the game.\n\n") + "Please inform the webmaster of this site, and click to play ") + sGame) + " on the developer's site:\n\n") + _local2) + "\n\n") + "Thank you for helping to keep the Flash games business fair..."), true);
}
public static function isDomain(_arg1:String):Boolean{
return ((((sReferer.indexOf(_arg1) == 0)) || ((sReferer.indexOf(("." + _arg1)) == ((sReferer.length - _arg1.length) - 1)))));
}
private static function showBlacklistedWarning():void{
var _local1:String;
var _local2:String;
_local1 = sGame.toLowerCase();
_local1 = _local1.replace(/\s/g, "-");
_local2 = (((((HOME + "/games/") + sID) + "/") + _local1) + ".html");
showWarning(((((((((((("WARNING!\n\n" + sGame) + " can not be played on this site (") + sReferer) + "), because ") + "this site is in violation with the SmileyGamer.com license agreement (www.smileygamer.com/license-agreement.txt).\n\n") + "Please inform the webmaster of this site, and go play ") + sGame) + " on the developer's site:\n\n") + _local2) + "\n\n") + "Thank you for helping to keep the Flash games business fair..."));
}
public static function showHighscores():void{
var _local1:String;
_local1 = sGame.toLowerCase();
_local1 = _local1.replace(/\s/g, "-");
showURL(((((HOME + "/highscores/") + _local1) + ".html?gameref=") + sID));
}
public static function showGameAtHome():void{
var _local1:String;
_local1 = sGame.toLowerCase();
_local1 = _local1.replace(/\s/g, "-");
showURL(((((((HOME + "/play/") + sID) + "/") + _local1) + ".html?gameref=") + sID));
}
public static function isHome():Boolean{
return (isDomain("smileygamer.com"));
}
private static function showWarning(_arg1:String, _arg2:Boolean=false):void{
var bg:Shape;
var tf:TextField;
var format:TextFormat;
var clicked:Function;
var aText = _arg1;
var aClickable = _arg2;
bg = new Shape();
bg.graphics.beginFill(16777168);
bg.graphics.drawRect(0, 0, sWidth, sHeight);
bg.graphics.endFill();
sStage.addChild(bg);
tf = new TextField();
tf.autoSize = TextFieldAutoSize.NONE;
tf.textColor = 0xD00000;
tf.multiline = true;
tf.wordWrap = true;
format = new TextFormat();
format.size = 16;
format.bold = true;
format.align = TextFormatAlign.CENTER;
tf.defaultTextFormat = format;
tf.width = Math.min((sWidth - 20), 400);
tf.x = ((sWidth - tf.width) / 2);
tf.y = 20;
tf.height = (sHeight - 40);
tf.text = aText;
sStage.addChild(tf);
if (aClickable){
clicked = function (_arg1:Event):void{
showGameAtHome();
};
tf.mouseEnabled = false;
sStage.addEventListener(MouseEvent.CLICK, clicked);
};
}
public static function showURL(_arg1:String):void{
var aURL = _arg1;
try {
navigateToURL(new URLRequest(aURL), "_blank");
} catch(e:SecurityError) {
sendToURL(new URLRequest(((HOME + "/scripts/blacklist.php?domain=") + sReferer)));
};
}
public static function tracking(_arg1:Boolean=true):void{
var req:URLRequest;
var loader:URLLoader;
var error:Function;
var securityError:Function;
var infoReceived:Function;
var aWaitForResponse = _arg1;
req = new URLRequest(((((HOME + "/scripts/tracking.php?id=") + sID) + "&referer=") + sReferer));
if (aWaitForResponse){
try {
error = function (_arg1:Event):void{
};
securityError = function (_arg1:Event):void{
sendToURL(new URLRequest(((HOME + "/scripts/blacklist.php?domain=") + sReferer)));
showBlacklistedWarning();
};
infoReceived = function (_arg1:Event):void{
var _local2:int;
_local2 = int(loader.data);
if (_local2 == -1){
showBlacklistedWarning();
};
};
loader = new URLLoader(req);
loader.addEventListener(IOErrorEvent.IO_ERROR, error);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityError);
loader.addEventListener(Event.COMPLETE, infoReceived);
} catch(e:SecurityError) {
sendToURL(new URLRequest(((HOME + "/scripts/blacklist.php?domain=") + sReferer)));
showBlacklistedWarning();
};
} else {
try {
sendToURL(req);
} catch(e:SecurityError) {
};
};
}
public static function showHome():void{
showURL(((HOME + "?gameref=") + sID));
}
}
}//package smileygamer.util
Section 79
//RandomUtil (smileygamer.util.RandomUtil)
package smileygamer.util {
public class RandomUtil {
public static function generateRandom(_arg1:int, _arg2:int):int{
return (((randomInt() % (_arg2 - _arg1)) + _arg1));
}
public static function generateRandomArray(_arg1:int):Array{
var _local2:Array;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = new Array(_arg1);
_local3 = 0;
while (_local3 < _arg1) {
_local2[_local3] = _local3;
_local3++;
};
_local3 = 0;
while (_local3 < _arg1) {
_local4 = (randomInt() % _arg1);
_local5 = _local2[_local3];
_local2[_local3] = _local2[_local4];
_local2[_local4] = _local5;
_local3++;
};
return (_local2);
}
public static function randomInt():int{
return (Math.round((Math.random() * int.MAX_VALUE)));
}
public static function chance(_arg1:int):Boolean{
var _local2:int;
if (_arg1 < 2){
return (true);
};
_local2 = (randomInt() % _arg1);
return ((_local2 == 0));
}
public static function randomBoolean():Boolean{
return (((randomInt() % 2) == 0));
}
}
}//package smileygamer.util
Section 80
//AAnimation (smileygamer.AAnimation)
package smileygamer {
import flash.events.*;
import flash.display.*;
public class AAnimation implements IAnimation {
private var fCallbacks:Array;
private var fStopped:Boolean;
private var fDisplayObject:DisplayObject;
private var fFrame:int;// = 0
private var fLooping:Boolean;
public function AAnimation(_arg1:DisplayObject){
fFrame = 0;
super();
fDisplayObject = _arg1;
looping = true;
fCallbacks = new Array();
reset();
}
public function stop():void{
fStopped = true;
}
private function doCallbacks():void{
var _local1:int;
var _local2:Function;
_local1 = 0;
while (_local1 < fCallbacks.length) {
_local2 = (fCallbacks[_local1] as Function);
_local2.call(this);
_local1++;
};
}
public function get looping():Boolean{
return (fLooping);
}
public function addCallback(_arg1:Function):void{
if (_arg1 != null){
fCallbacks.push(_arg1);
};
}
public function update():void{
}
public function reset():void{
fFrame = 0;
fStopped = false;
displayObject.removeEventListener(Event.ENTER_FRAME, next);
displayObject.addEventListener(Event.ENTER_FRAME, next);
update();
}
public function get displayObject():DisplayObject{
return (fDisplayObject);
}
protected function get frameCount():int{
return (1);
}
public function removeCallback(_arg1:Function):void{
var _local2:int;
_local2 = 0;
while (_local2 < fCallbacks.length) {
if (fCallbacks[_local2] == _arg1){
fCallbacks.splice(_local2, 1);
};
_local2++;
};
}
protected function get frame():int{
return (fFrame);
}
public function get finished():Boolean{
return ((((fFrame == frameCount)) || (fStopped)));
}
private function next(_arg1:Event):void{
if (displayObject.stage != null){
update();
fFrame++;
if (fLooping){
fFrame = (fFrame % frameCount);
};
if (finished){
displayObject.removeEventListener(Event.ENTER_FRAME, next);
doCallbacks();
};
} else {
displayObject.removeEventListener(Event.ENTER_FRAME, next);
};
}
public function set looping(_arg1:Boolean):void{
fLooping = _arg1;
}
}
}//package smileygamer
Section 81
//AGame (smileygamer.AGame)
package smileygamer {
import flash.events.*;
import flash.display.*;
public class AGame extends Sprite {
public function AGame(){
addEventListener(Event.ENTER_FRAME, mainLoop);
}
public function mainLoop(_arg1:Event):void{
var _local2:int;
var _local3:ILogic;
_local2 = 0;
while (_local2 < numChildren) {
if ((getChildAt(_local2) is ILogic)){
_local3 = (getChildAt(_local2) as ILogic);
_local3.doLogic();
};
_local2++;
};
}
}
}//package smileygamer
Section 82
//FadeAnimation (smileygamer.FadeAnimation)
package smileygamer {
import flash.display.*;
import smileygamer.util.*;
public class FadeAnimation extends AAnimation {
private var fSteps:int;
private var fMode:int;
private var fValues:Array;
private var fDelay:int;
public static const MODE_FADE_IN:int = 0;
public static const MODE_FADE_OUT:int = 1;
public static const MODE_FADE_OUT_REMOVE:int = 2;
public function FadeAnimation(_arg1:DisplayObject, _arg2:int, _arg3:int, _arg4:int=0){
fSteps = _arg2;
fMode = _arg3;
fDelay = _arg4;
if (fMode == MODE_FADE_IN){
fValues = InterpolationUtil.createValues(InterpolationUtil.TYPE_COSINE, 0, 1, fSteps);
} else {
fValues = InterpolationUtil.createValues(InterpolationUtil.TYPE_COSINE, 1, 0, fSteps);
};
super(_arg1);
looping = false;
}
public function setFadeValues(_arg1:Number, _arg2:Number):void{
fValues = InterpolationUtil.createValues(InterpolationUtil.TYPE_COSINE, _arg1, _arg2, fSteps);
}
override public function update():void{
if (frame >= fDelay){
displayObject.alpha = fValues[(frame - fDelay)];
if (fValues[(frame - fDelay)] > 0){
displayObject.visible = true;
} else {
displayObject.visible = false;
};
};
}
override protected function get frameCount():int{
return ((fSteps + fDelay));
}
override public function get finished():Boolean{
var _local1:Boolean;
_local1 = super.finished;
if (((_local1) && ((fMode == MODE_FADE_OUT_REMOVE)))){
displayObject.parent.removeChild(displayObject);
};
return (_local1);
}
}
}//package smileygamer
Section 83
//IAnimation (smileygamer.IAnimation)
package smileygamer {
public interface IAnimation {
function get finished():Boolean;
function update():void;
function get looping():Boolean;
}
}//package smileygamer
Section 84
//ILogic (smileygamer.ILogic)
package smileygamer {
public interface ILogic {
function doLogic():void;
}
}//package smileygamer
Section 85
//MoveAnimation (smileygamer.MoveAnimation)
package smileygamer {
import flash.display.*;
import flash.geom.*;
import smileygamer.util.*;
public class MoveAnimation extends AAnimation {
private var fRemove:Boolean;
private var fSteps:int;
private var fXCoords:Array;
private var fYCoords:Array;
public function MoveAnimation(_arg1:DisplayObject, _arg2:Point, _arg3:Point, _arg4:int, _arg5:int=0, _arg6:int=0, _arg7:Boolean=false, _arg8:Boolean=false){
var _local9:int;
var _local10:Array;
var _local11:Array;
fSteps = (_arg4 + _arg6);
fXCoords = new Array();
fYCoords = new Array();
_local9 = 0;
while (_local9 < _arg6) {
fXCoords.push(_arg2.x);
fYCoords.push(_arg2.y);
_local9++;
};
_local10 = InterpolationUtil.createValues(_arg5, _arg2.x, _arg3.x, _arg4);
_local11 = InterpolationUtil.createValues(_arg5, _arg2.y, _arg3.y, _arg4);
fXCoords.push(Math.round(_local10[0]));
fYCoords.push(Math.round(_local11[0]));
_local9 = 1;
while (_local9 < (_local10.length - 1)) {
fXCoords.push(_local10[_local9]);
fYCoords.push(_local11[_local9]);
_local9++;
};
fXCoords.push(Math.round(_local10[(_local10.length - 1)]));
fYCoords.push(Math.round(_local11[(_local10.length - 1)]));
if (_arg8){
fSteps = ((_arg4 * 2) + _arg6);
_local9 = (_local10.length - 1);
while (_local9 >= 0) {
fXCoords.push(fXCoords[_local9]);
fYCoords.push(fYCoords[_local9]);
_local9--;
};
};
fRemove = _arg7;
super(_arg1);
looping = false;
}
override public function update():void{
displayObject.x = fXCoords[frame];
displayObject.y = fYCoords[frame];
}
override protected function get frameCount():int{
return (fSteps);
}
override public function get finished():Boolean{
var _local1:Boolean;
_local1 = super.finished;
if (((_local1) && (fRemove))){
displayObject.parent.removeChild(displayObject);
};
return (_local1);
}
}
}//package smileygamer
Section 86
//Elevatorz (Elevatorz)
package {
import flash.events.*;
import flash.display.*;
import elevatorz.*;
import flash.utils.*;
import smileygamer.*;
import smileygamer.util.*;
public dynamic class Elevatorz extends AGame {
private var fGameScreen:GameScreen;
private var fFPSTime:int;
private var fOverlay:Shape;
private var fIntro:IntroScreen;
private var fFrame:int;// = 0
private var fTitleScreen:TitleScreen;
public static const BGCOLOR:int = 3162176;
public static const WIDTH:int = 312;
public static const HEIGHT:int = 312;
public static const SPONSORED:Boolean = false;
public static const GAMEID:int = 736;
public function Elevatorz(){
fFrame = 0;
super();
addEventListener(Event.ENTER_FRAME, added);
}
private function added(_arg1:Event):void{
removeEventListener(Event.ENTER_FRAME, added);
fFPSTime = getTimer();
showIntro();
}
public function showHighscores():void{
NetworkUtil.showHighscores();
}
public function get overlay():DisplayObject{
return (fOverlay);
}
private function showTitle(_arg1:Event):void{
var _local2:FadeAnimation;
SoundManager.playMusic();
new FadeAnimation(fIntro, 20, FadeAnimation.MODE_FADE_OUT_REMOVE);
fGameScreen = new GameScreen(this);
addChildAt(fGameScreen, (numChildren - 1));
fOverlay = new Shape();
fOverlay.graphics.beginFill(BGCOLOR);
fOverlay.graphics.drawRect(0, 0, WIDTH, HEIGHT);
fOverlay.graphics.endFill();
_local2 = new FadeAnimation(fOverlay, 30, FadeAnimation.MODE_FADE_IN, 21);
_local2.setFadeValues(1, 0.8);
addChildAt(fOverlay, (numChildren - 1));
fTitleScreen = new TitleScreen(this);
addChildAt(fTitleScreen, (numChildren - 1));
}
private function showIntro():void{
var clicked:Function;
var t:Timer;
clicked = function (_arg1:Event):void{
showHome();
};
fIntro = new IntroScreen();
addChild(fIntro);
new FadeAnimation(fIntro, 15, FadeAnimation.MODE_FADE_IN);
if (!NetworkUtil.isHome()){
fIntro.addEventListener(MouseEvent.CLICK, clicked);
fIntro.buttonMode = true;
};
t = new Timer(4000, 1);
t.addEventListener(TimerEvent.TIMER_COMPLETE, showTitle);
t.start();
}
public function startGame():void{
var anim:OverlayAnimation;
var start:Function;
start = function ():void{
fGameScreen.startGame();
};
removeChild(fTitleScreen);
anim = new OverlayAnimation(fOverlay, BGCOLOR, true);
anim.addCallback(start);
}
public function showHome():void{
NetworkUtil.showHome();
}
public function showTitleScreen():void{
addChild(fOverlay);
fTitleScreen = new TitleScreen(this);
addChild(fTitleScreen);
}
override public function mainLoop(_arg1:Event):void{
super.mainLoop(_arg1);
fFrame++;
if ((fFrame % 10) == 0){
fFrame = 0;
fFPSTime = getTimer();
};
}
}
}//package
Section 87
//MochiAd (MochiAd)
package {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import flash.net.*;
import flash.system.*;
public class MochiAd {
public static function getVersion():String{
return ("2.1");
}
public static function showTimedAd(_arg1:Object):void{
MochiAd.showInterLevelAd(_arg1);
}
public static function _allowDomains(_arg1:String):String{
var _local2:String;
_local2 = _arg1.split("/")[2].split(":")[0];
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function load(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var depth:Number;
var mc:MovieClip;
var wh:Array;
var lv:URLVariables;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var f:Function;
var g:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
if (!MochiAd._isNetworkAvailable()){
return (null);
};
if (clip._mochiad_loaded){
return (null);
};
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, "_mochiad", depth);
wh = MochiAd._getRes(options, clip);
options.res = ((wh[0] + "x") + wh[1]);
options.server = (options.server + options.id);
delete options.id;
clip._mochiad_loaded = true;
if (clip.loaderInfo.loaderURL.indexOf("http") == 0){
options.as3_swf = clip.loaderInfo.loaderURL;
};
lv = new URLVariables();
for (k in options) {
v = options[k];
if (!(v is Function)){
lv[k] = v;
};
};
server = lv.server;
delete lv.server;
hostname = _allowDomains(server);
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.lc = lc;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
f = function (_arg1:Object):void{
mc._mochiad_ctr_failed = true;
};
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f);
g = function (_arg1:Object):void{
MochiAd.unload(clip);
};
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g);
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["sendHighScore", _arg1], _arg2, _arg3);
return (true);
}
public static function _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local3:Object;
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
_local3 = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
_arg1 = _local3.clip.loaderInfo.parameters.mochiad_options;
if (_arg1){
_local5 = _arg1.split("&");
_local6 = 0;
while (_local6 < _local5.length) {
_local7 = _local5[_local6].split("=");
_local3[unescape(_local7[0])] = unescape(_local7[1]);
_local6++;
};
};
return (_local3);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
_arg1.removeChild(_arg1._mochiad);
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function showInterLevelAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
this.clip.stop();
}, ad_finished:function ():void{
this.clip.play();
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
options.ad_finished();
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Number;
var _local3:Boolean;
var _local4:Number;
_local1 = this.parent._mochiad_ctr;
_local2 = (getTimer() - this.started);
_local3 = false;
if (!chk.showing){
_local4 = _local1.loaderInfo.bytesTotal;
if ((((_local4 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
_local3 = true;
};
};
};
if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local3 = true;
};
if (_local3){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local3:Object;
var _local4:Number;
var _local5:Number;
var _local6:Array;
_local3 = _arg2.getBounds(_arg2.root);
_local4 = 0;
_local5 = 0;
if (typeof(_arg1.res) != "undefined"){
_local6 = _arg1.res.split("x");
_local4 = parseFloat(_local6[0]);
_local5 = parseFloat(_local6[1]);
} else {
_local4 = (_local3.xMax - _local3.xMin);
_local5 = (_local3.yMax - _local3.yMin);
};
if ((((_local4 == 0)) || ((_local5 == 0)))){
_local4 = _arg2.stage.stageWidth;
_local5 = _arg2.stage.stageHeight;
};
return ([_local4, _local5]);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip;
_local4 = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _loadCommunicator(_arg1:Object):MovieClip{
var DEFAULTS:Object;
var clip:Object;
var clipname:String;
var server:String;
var depth:Number;
var mc:MovieClip;
var lv:URLVariables;
var k:String;
var lc:LocalConnection;
var name:String;
var req:URLRequest;
var loader:Loader;
var options = _arg1;
DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = MochiAd._parseOptions(options, DEFAULTS);
options.swfv = 9;
options.mav = MochiAd.getVersion();
clip = options.clip;
clipname = ("_mochiad_com_" + options.id);
if (!MochiAd._isNetworkAvailable()){
return (null);
};
if (clip[clipname]){
return (clip[clipname]);
};
server = (options.com_server + options.id);
MochiAd._allowDomains(server);
delete options.id;
delete options.com_server;
depth = options.depth;
delete options.depth;
mc = createEmptyMovieClip(clip, clipname, depth);
lv = new URLVariables();
for (k in options) {
lv[k] = options[k];
};
lc = new LocalConnection();
lc.client = mc;
name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_");
lc.allowDomain("*", "localhost");
lc.allowInsecureDomain("*", "localhost");
lc.connect(name);
mc.name = name;
mc.lc = lc;
lv.lc = name;
mc._id = 0;
mc._queue = [];
mc.rpcResult = function (_arg1:Object):void{
var _local3:Array;
var _local4:Array;
var _local5:Number;
var _local6:Object;
var _local7:Object;
_arg1 = parseInt(_arg1.toString());
_local3 = mc._callbacks[_arg1];
if (typeof(_local3) == "undefined"){
return;
};
delete mc._callbacks[_arg1];
_local4 = [];
_local5 = 2;
while (_local5 < _local3.length) {
_local4.push(_local3[_local5]);
_local5++;
};
_local5 = 1;
while (_local5 < arguments.length) {
_local4.push(arguments[_local5]);
_local5++;
};
_local6 = _local3[1];
_local7 = _local3[0];
if (((_local7) && ((typeof(_local6) == "string")))){
_local6 = _local7[_local6];
};
if (typeof(_local6) == "function"){
_local6.apply(_local7, _local4);
};
};
mc._didConnect = function (_arg1:String):void{
var _local2:Array;
var _local3:Function;
var _local4:Number;
var _local5:Array;
mc._endpoint = _arg1;
_local2 = mc._queue;
delete mc._queue;
_local3 = mc.doSend;
_local4 = 0;
while (_local4 < _local2.length) {
_local5 = _local2[_local4];
_local3.apply(this, _local5);
_local4++;
};
};
mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{
var _local5:Number;
var _local6:LocalConnection;
var _local7:Array;
var _local8:Number;
if (mc._endpoint == null){
_local7 = [];
_local8 = 0;
while (_local8 < arguments.length) {
_local7.push(arguments[_local8]);
_local8++;
};
mc._queue.push(_local7);
return;
};
mc._id = (mc._id + 1);
_local5 = mc._id;
mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))];
_local6 = new LocalConnection();
_local6.send(mc._endpoint, "rpc", _local5, _arg1);
};
mc._callbacks = {};
mc._callbacks[0] = [mc, "_didConnect"];
lv.st = getTimer();
req = new URLRequest((server + ".swf"));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader = new Loader();
loader.load(req);
mc.addChild(loader);
mc._mochiad_com = loader;
return (mc);
}
public static function showPreGameAd(_arg1:Object):void{
var DEFAULTS:Object;
var clip:Object;
var ad_msec:Number;
var ad_timeout:Number;
var fadeout_time:Number;
var mc:MovieClip;
var wh:Array;
var w:Number;
var h:Number;
var chk:MovieClip;
var bar:MovieClip;
var bar_color:Number;
var bar_background:Number;
var bar_outline:Number;
var backing_mc:MovieClip;
var backing:Object;
var inside_mc:MovieClip;
var inside:Object;
var outline_mc:MovieClip;
var outline:Object;
var complete:Boolean;
var unloaded:Boolean;
var f:Function;
var r:MovieClip;
var options = _arg1;
DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{
this.clip.stop();
}, ad_finished:function ():void{
this.clip.play();
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
ad_msec = 11000;
ad_timeout = options.ad_timeout;
delete options.ad_timeout;
fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
var fn:Function;
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
};
wh = MochiAd._getRes(options, clip);
w = wh[0];
h = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.x = (w * -0.5);
chk.y = (h * -0.5);
bar = createEmptyMovieClip(chk, "_mochiad_bar", 4);
bar.x = 10;
bar.y = (h - 20);
bar_color = options.color;
delete options.color;
bar_background = options.background;
delete options.background;
bar_outline = options.outline;
delete options.outline;
backing_mc = createEmptyMovieClip(bar, "_outline", 1);
backing = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo((w - 20), 0);
backing.lineTo((w - 20), 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
inside_mc = createEmptyMovieClip(bar, "_inside", 2);
inside = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo((w - 20), 0);
inside.lineTo((w - 20), 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
outline_mc = createEmptyMovieClip(bar, "_outline", 3);
outline = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo((w - 20), 0);
outline.lineTo((w - 20), 10);
outline.lineTo(0, 10);
outline.lineTo(0, 0);
chk.ad_msec = ad_msec;
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function ():void{
var _local1:Number;
_local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time)));
if (_local1 > 0){
this.parent.alpha = (_local1 * 0.01);
} else {
MochiAd.unload(clip);
delete this["onEnterFrame"];
};
};
complete = false;
unloaded = false;
f = function (_arg1:Event):void{
complete = true;
if (unloaded){
MochiAd.unload(clip);
};
};
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
if ((clip.root is MovieClip)){
r = (clip.root as MovieClip);
if (r.framesLoaded >= r.totalFrames){
complete = true;
};
};
mc.unloadAd = function ():void{
unloaded = true;
if (complete){
MochiAd.unload(clip);
};
};
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object;
_local2 = mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local1:Object;
var _local2:Object;
var _local3:Number;
var _local4:Boolean;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Object;
var _local10:Number;
var _local11:Number;
if (!this.parent.parent){
delete this["onEnterFrame"];
return;
};
_local1 = this.parent.parent.root;
_local2 = this.parent._mochiad_ctr;
_local3 = (getTimer() - this.started);
_local4 = false;
_local5 = _local1.loaderInfo.bytesTotal;
_local6 = _local1.loaderInfo.bytesLoaded;
_local7 = ((100 * _local6) / _local5);
_local8 = ((100 * _local3) / chk.ad_msec);
_local9 = this._mochiad_bar._inside;
_local10 = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
if (!chk.showing){
_local11 = _local2.loaderInfo.bytesTotal;
if ((((_local11 > 0)) || (("number" == "undefined")))){
chk.showing = true;
chk.started = getTimer();
} else {
if (_local3 > chk.ad_timeout){
_local4 = true;
};
};
};
if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){
_local4 = true;
};
if (((complete) && (_local4))){
if (this.server_control){
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
};
};
};
doOnEnterFrame(chk);
}
public static function showPreloaderAd(_arg1:Object):void{
MochiAd.showPreGameAd(_arg1);
}
public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{
var _local4:MovieClip;
_local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id});
if (!_local4){
return (false);
};
_local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3);
return (true);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var f:Function;
var mc = _arg1;
f = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
mc.removeEventListener(Event.ENTER_FRAME, f);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package
Section 88
//MochiAdPreloaderFactory (MochiAdPreloaderFactory)
package {
import flash.events.*;
import flash.display.*;
import smileygamer.util.*;
import flash.utils.*;
public dynamic class MochiAdPreloaderFactory extends MovieClip {
private var fAdStarted:Boolean;
private var fAdFinished:Boolean;
public static const BGCOLOR:int = 3162176;
public static const WIDTH:int = 312;
public static const HEIGHT:int = 312;
private static const MAIN_CLASS:String = "Elevatorz";
public static const GAMEID:int = 736;
public function MochiAdPreloaderFactory(){
var f:Function;
super();
f = function (_arg1:IOErrorEvent):void{
};
loaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f);
stage.frameRate = 61;
stop();
NetworkUtil.init(stage, GAMEID, "Elevatorz", WIDTH, HEIGHT);
NetworkUtil.tracking();
MochiBot.track(this, "c0099d64");
addChild(createBackground());
fAdStarted = false;
fAdFinished = false;
addEventListener(Event.ENTER_FRAME, onEnterFrame);
MochiAd.showPreGameAd({id:"26b2db898ced37e5", res:"312x312", clip:this, background:BGCOLOR, color:0xFFFFFF, outline:0xFFFFFF, ad_started:adStarted, ad_finished:adFinished, no_bg:true});
}
public function init():void{
var mainClass:Class;
var app:Object;
try {
mainClass = (getDefinitionByName(MAIN_CLASS) as Class);
app = new (mainClass);
addChild((app as DisplayObject));
} catch(re:ReferenceError) {
};
}
private function clicked(_arg1:Event):void{
NetworkUtil.showHome();
}
private function createBackground():DisplayObject{
var _local1:Shape;
_local1 = new Shape();
_local1.graphics.clear();
_local1.graphics.beginFill(BGCOLOR);
_local1.graphics.drawRect(0, 0, WIDTH, HEIGHT);
_local1.graphics.endFill();
_local1.cacheAsBitmap = true;
return (_local1);
}
public function adFinished():void{
fAdFinished = true;
}
public function checkAdStarted(_arg1:Event):void{
if (!fAdStarted){
adFinished();
};
}
public function onEnterFrame(_arg1:Event):void{
if ((((loaderInfo.bytesLoaded == loaderInfo.bytesTotal)) && (fAdFinished))){
removeEventListener(Event.ENTER_FRAME, onEnterFrame);
nextFrame();
init();
};
}
public function adStarted():void{
fAdStarted = true;
}
}
}//package
Section 89
//MochiBot (MochiBot)
package {
import flash.display.*;
import flash.net.*;
import flash.system.*;
public dynamic class MochiBot extends Sprite {
public static function track(_arg1:Sprite, _arg2:String):MochiBot{
var _local3:MochiBot;
var _local4:String;
var _local5:URLVariables;
var _local6:String;
var _local7:URLRequest;
var _local8:Loader;
if (Security.sandboxType == "localWithFile"){
return (null);
};
_local3 = new (MochiBot);
_arg1.addChild(_local3);
Security.allowDomain("*");
Security.allowInsecureDomain("*");
_local4 = "http://core.mochibot.com/my/core.swf";
_local5 = new URLVariables();
_local5["sb"] = Security.sandboxType;
_local5["v"] = Capabilities.version;
_local5["swfid"] = _arg2;
_local5["mv"] = "8";
_local5["fv"] = "9";
_local6 = _local3.root.loaderInfo.loaderURL;
if (_local6.indexOf("http") == 0){
_local5["url"] = _local6;
} else {
_local5["url"] = "local";
};
_local7 = new URLRequest(_local4);
_local7.contentType = "application/x-www-form-urlencoded";
_local7.method = URLRequestMethod.POST;
_local7.data = _local5;
_local8 = new Loader();
_local3.addChild(_local8);
_local8.load(_local7);
return (_local3);
}
}
}//package