Section 1
//IGameAAPI (AAPI.IGameAAPI)
package AAPI {
public interface IGameAAPI {
function set wrapperRef(_arg1:IWrapperAAPI):void;
function gameGoto(_arg1:String):Boolean;
function MuteOff():Boolean;
function pauseOff():Boolean;
function gameContinue():Boolean;
function pauseOn():Boolean;
function gameReset():Boolean;
function setVars(_arg1:String):Boolean;
function MuteOn():Boolean;
}
}//package AAPI
Section 2
//IWrapperAAPI (AAPI.IWrapperAAPI)
package AAPI {
public interface IWrapperAAPI {
function checkWrapper():String;
function statBroadcast(_arg1:String, _arg2:Number, _arg3:String):Boolean;
function loadBroadcast(_arg1:uint):Boolean;
function gameBreak(_arg1:String, _arg2:String):Boolean;
function scoreBroadcast(_arg1:Number, _arg2:Number, _arg3:String):Boolean;
}
}//package AAPI
Section 3
//Panda (bears.Panda)
package bears {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.media.*;
import flash.utils.*;
import houses.*;
import com.cheezeworld.math.*;
import ui.*;
import shop.*;
import game.*;
import pets.*;
import utils.*;
import com.melesta.utils.math.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Panda extends PolarBearTemplate {
public var inCage:Boolean;// = false
private var _stageInstance:DisplayObjectContainer;
private var timer:Timer;
private var rotationDirect:Number;// = 1
private var _freeTimer:Timer;
private var sound:SoundChannel;
private var _hitTimer:Timer;
private var type:String;
private var pet:MovieClip;
private var clicks:Number;// = 0
private var gameController:GameController;
private var _freeCounter:Number;// = 0
private var fly:Boolean;// = true
private var _counter:Number;// = 0
public static var firstShow:Boolean = true;
public function Panda(){
sound = new SoundChannel();
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, remove, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, onClick, false, 0, true);
this.cacheAsBitmap = true;
_freeTimer = new Timer(1000);
_freeTimer.addEventListener(TimerEvent.TIMER, brokeCage, false, 0, true);
_hitTimer = new Timer(100);
_hitTimer.addEventListener(TimerEvent.TIMER, hitPenguin, false, 0, true);
_hitTimer.addEventListener(TimerEvent.TIMER, hitSheep, false, 0, true);
_hitTimer.addEventListener(TimerEvent.TIMER, hitCat, false, 0, true);
}
public function show(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:DisplayObjectContainer=null):void{
this.x = _arg1;
this.y = -500;
_stageInstance = _arg4;
_stageInstance.addChild(this);
Tweener.addTween(this, {y:150, time:3, delay:_arg3, transition:"easeInCirc", onComplete:startAnimation});
timer = new Timer(1000);
timer.addEventListener(TimerEvent.TIMER, move);
sound = SoundManager.play("grizzly_scream", 1000);
this.body.stop();
}
private function hitSheep(_arg1:TimerEvent=null):void{
var _local2:int;
_arg1.stopPropagation();
if (Sheep.penguinList){
if (Sheep.penguinList.length > 0){
_local2 = 0;
while (_local2 < Sheep.count) {
if (this.hit.hitTestObject(Sheep.penguinList[_local2].activeArea)){
Sheep.penguinList[_local2].kill();
return;
};
_local2++;
};
};
};
}
private function remove(_arg1:Event=null):void{
_stageInstance.removeChild(this);
removeEventListener(MouseEvent.MOUSE_DOWN, onClick);
timer.stop();
_hitTimer.stop();
_hitTimer.removeEventListener(TimerEvent.TIMER, hitPenguin);
_hitTimer.removeEventListener(TimerEvent.TIMER, hitKingPenguin);
_hitTimer.removeEventListener(TimerEvent.TIMER, hitSheep);
_hitTimer.removeEventListener(TimerEvent.TIMER, hitCat);
timer.removeEventListener(TimerEvent.TIMER, move);
gameController.removeEventListener(GameController.PAUSE_GAME, pause);
gameController.removeEventListener(GameController.RESUME_GAME, resume);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, remove);
_freeTimer.stop();
_freeTimer.removeEventListener(TimerEvent.TIMER, brokeCage);
}
private function brokeCage(_arg1:TimerEvent=null):void{
var _local2:Point;
var _local3:Number;
var _local4:Number;
var _local5:Point;
var _local6:Object;
_freeCounter++;
if ((((_freeCounter > 5)) && ((_freeCounter < 15)))){
SoundManager.play("cage_breaking");
Tweener.addTween(this, {rotation:(10 * rotationDirect), time:1});
if (rotationDirect == -1){
rotationDirect = 1;
} else {
rotationDirect = -1;
};
};
if (_freeCounter == 15){
buildCage.visible = false;
SoundManager.play("cage_broke_bear_flee");
_local2 = new Point(this.x, this.y);
_local3 = 800;
_local4 = this.y;
_local5 = new Point(_local3, _local4);
_local6 = Direction.getDirection(_local2, _local5);
this.body.gotoAndPlay(_local6.direction);
if (_local6.right){
this.scaleX = -1;
} else {
this.scaleX = 1;
};
Tweener.removeTweens(this);
Tweener.addTween(this, {y:_local4, x:_local3, time:0.4, transition:"linear", onComplete:remove});
};
}
public function move(_arg1:TimerEvent=null):void{
var _local2:Point;
var _local3:Number;
var _local4:Number;
var _local5:Point;
var _local6:Object;
if (_arg1){
_arg1.stopPropagation();
};
if (_counter == 0){
_counter = 7;
if (_arg1 != null){
_arg1.stopPropagation();
};
_local2 = new Point(this.x, this.y);
_local3 = MathUtils.rand(150, 400);
_local4 = MathUtils.rand(150, 300);
_local5 = new Point(_local3, _local4);
_local6 = Direction.getDirection(_local2, _local5);
this.body.gotoAndPlay(_local6.direction);
if (_local6.right){
this.scaleX = -1;
} else {
this.scaleX = 1;
};
Tweener.removeTweens(this);
Tweener.addTween(this, {y:_local4, x:_local3, time:5, transition:"linear"});
};
_counter--;
}
private function hitPenguin(_arg1:TimerEvent=null):void{
var _local2:int;
_arg1.stopPropagation();
if (Penguin.penguinList){
if (Penguin.penguinList.length > 0){
_local2 = 0;
while (_local2 < Penguin.count) {
if (this.hit.hitTestObject(Penguin.penguinList[_local2].activeArea)){
Penguin.penguinList[_local2].kill();
return;
};
_local2++;
};
};
};
}
public function startAnimation():void{
fly = false;
SoundManager.play("enemy_landing", 1);
timer.start();
_hitTimer.start();
move();
if (((firstShow) && (!(Config.skiped)))){
sound.stop();
firstShow = false;
BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.lion);
};
}
private function hitCat(_arg1:TimerEvent=null):void{
var _local2:int;
_arg1.stopPropagation();
if (Cat.cats.length > 0){
_local2 = 0;
while (_local2 < Cat.cats.length) {
if (this.hit.hitTestObject(Cat.cats[_local2])){
Cat.cats[_local2].kill();
return;
};
_local2++;
};
};
}
private function hitKingPenguin(_arg1:TimerEvent=null):void{
if (_arg1){
_arg1.stopPropagation();
};
}
public function resume(_arg1:Event=null):void{
sound.stop();
Tweener.resumeTweens(this);
if (!fly){
timer.start();
if (!inCage){
this.body.play();
_hitTimer.start();
sound = SoundManager.play("grizzly_scream", 1000);
} else {
_freeTimer.start();
};
} else {
sound = SoundManager.play("grizzly_scream", 1000);
};
}
private function onClick(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
clicks++;
buildCage.gotoAndStop(clicks);
if (clicks == Number((9 - ShopWindow.availableUpgrades[0]))){
_hitTimer.stop();
buildCage.gotoAndStop(9);
inCage = true;
this.body.gotoAndStop("caged");
_freeTimer.start();
sound.stop();
Tweener.removeTweens(this, x, y);
timer.stop();
timer.removeEventListener(TimerEvent.TIMER, move, false);
};
if (clicks > Number((9 - ShopWindow.availableUpgrades[0]))){
if (Depot.instance.addProduct("BROWN")){
SoundManager.play("product_take", 1);
this.width = 50;
this.height = 50;
_freeTimer.stop();
Tweener.removeTweens(this);
Tweener.addTween(this, {y:378, time:0.3, onComplete:remove, transition:"easeOutCirc"});
Tweener.addTween(this, {x:265, time:0.3, transition:"easeInOutBack"});
} else {
SoundManager.play("fool_action", 1);
};
} else {
SoundManager.play("cage_click", 1);
};
}
public function pause(_arg1:Event=null):void{
Tweener.pauseTweens(this);
if (!fly){
_hitTimer.stop();
_freeTimer.stop();
timer.stop();
this.body.stop();
};
sound.stop();
}
}
}//package bears
Section 4
//Cat_body_2 (CatTemplate_fla.Cat_body_2)
package CatTemplate_fla {
import flash.display.*;
public dynamic class Cat_body_2 extends MovieClip {
public function Cat_body_2(){
addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120);
}
function frame48(){
gotoAndPlay("up");
}
function frame120(){
gotoAndPlay("left_up");
}
function frame72(){
gotoAndPlay("left");
}
function frame96(){
gotoAndPlay("down_left");
}
function frame24(){
gotoAndPlay("down");
}
}
}//package CatTemplate_fla
Section 5
//ColorShortcuts (caurina.transitions.properties.ColorShortcuts)
package caurina.transitions.properties {
import flash.geom.*;
import flash.filters.*;
import caurina.transitions.*;
public class ColorShortcuts {
private static var LUMINANCE_B:Number = 0.072169;
private static var LUMINANCE_G:Number = 0.71516;
private static var LUMINANCE_R:Number = 0.212671;
public function ColorShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function _color_splitter(_arg1, _arg2:Array):Array{
var _local3:Array = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:0});
_local3.push({name:"_color_redOffset", value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:"_color_greenMultiplier", value:0});
_local3.push({name:"_color_greenOffset", value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:"_color_blueMultiplier", value:0});
_local3.push({name:"_color_blueOffset", value:AuxFunctions.numberToB(_arg1)});
};
return (_local3);
}
public static function _contrast_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Number;
var _local6:Number;
_local5 = (_arg2 + 1);
_local6 = Math.round((_arg2 * -128));
var _local7:ColorTransform = new ColorTransform(_local5, _local5, _local5, 1, _local6, _local6, _local6, 0);
_arg1.transform.colorTransform = _local7;
}
public static function _brightness_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Boolean = _arg2[0];
var _local5:ColorTransform = _arg1.transform.colorTransform;
var _local6:Number = (1 - (((_local5.redMultiplier + _local5.greenMultiplier) + _local5.blueMultiplier) / 3));
var _local7:Number = (((_local5.redOffset + _local5.greenOffset) + _local5.blueOffset) / 3);
if (_local4){
return (((_local7 > 0)) ? (_local7 / 0xFF) : -(_local6));
//unresolved jump
};
return ((_local7 / 100));
}
public static function _saturation_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array = getObjectMatrix(_arg1);
var _local5:Boolean = _arg2[0];
var _local6:Number = (_local5) ? (1 / 3) : LUMINANCE_R;
var _local7:Number = (_local5) ? (1 / 3) : LUMINANCE_G;
var _local8:Number = (_local5) ? (1 / 3) : LUMINANCE_B;
var _local9:Number = (((((_local4[0] - _local6) / (1 - _local6)) + ((_local4[6] - _local7) / (1 - _local7))) + ((_local4[12] - _local8) / (1 - _local8))) / 3);
var _local10:Number = (1 - (((((((_local4[1] / _local7) + (_local4[2] / _local8)) + (_local4[5] / _local6)) + (_local4[7] / _local8)) + (_local4[10] / _local6)) + (_local4[11] / _local7)) / 6));
return (((_local9 + _local10) / 2));
}
public static function _oldColor_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return ((_arg1.transform.colorTransform[_arg2[0]] * 100));
}
public static function _brightness_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local6:Number;
var _local7:Number;
var _local5:Boolean = _arg3[0];
if (_local5){
_local6 = (1 - Math.abs(_arg2));
_local7 = ((_arg2 > 0)) ? Math.round((_arg2 * 0xFF)) : 0;
} else {
_local6 = 1;
_local7 = Math.round((_arg2 * 100));
};
var _local8:ColorTransform = new ColorTransform(_local6, _local6, _local6, 1, _local7, _local7, _local7, 0);
_arg1.transform.colorTransform = _local8;
}
public static function _saturation_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Boolean = _arg3[0];
var _local6:Number = (_local5) ? (1 / 3) : LUMINANCE_R;
var _local7:Number = (_local5) ? (1 / 3) : LUMINANCE_G;
var _local8:Number = (_local5) ? (1 / 3) : LUMINANCE_B;
var _local9:Number = _arg2;
var _local10:Number = (1 - _local9);
var _local11:Number = (_local6 * _local10);
var _local12:Number = (_local7 * _local10);
var _local13:Number = (_local8 * _local10);
var _local14:Array = [(_local11 + _local9), _local12, _local13, 0, 0, _local11, (_local12 + _local9), _local13, 0, 0, _local11, _local12, (_local13 + _local9), 0, 0, 0, 0, 0, 1, 0];
setObjectMatrix(_arg1, _local14);
}
private static function getObjectMatrix(_arg1:Object):Array{
var _local2:Number = 0;
while (_local2 < _arg1.filters.length) {
if ((_arg1.filters[_local2] is ColorMatrixFilter)){
return (_arg1.filters[_local2].matrix.concat());
};
_local2++;
};
return ([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
}
public static function getHueDistance(_arg1:Array, _arg2:Array):Number{
return (((Math.abs((_arg1[0] - _arg2[0])) + Math.abs((_arg1[1] - _arg2[1]))) + Math.abs((_arg1[2] - _arg2[2]))));
}
public static function _hue_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
setObjectMatrix(_arg1, getHueMatrix(_arg2));
}
public static function _hue_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local6:Number;
var _local8:Number;
var _local4:Array = getObjectMatrix(_arg1);
var _local5:Array = [];
_local5[0] = {angle:-179.9, matrix:getHueMatrix(-179.9)};
_local5[1] = {angle:180, matrix:getHueMatrix(180)};
_local6 = 0;
while (_local6 < _local5.length) {
_local5[_local6].distance = getHueDistance(_local4, _local5[_local6].matrix);
_local6++;
};
var _local7:Number = 15;
_local6 = 0;
while (_local6 < _local7) {
if (_local5[0].distance < _local5[1].distance){
_local8 = 1;
} else {
_local8 = 0;
};
_local5[_local8].angle = ((_local5[0].angle + _local5[1].angle) / 2);
_local5[_local8].matrix = getHueMatrix(_local5[_local8].angle);
_local5[_local8].distance = getHueDistance(_local4, _local5[_local8].matrix);
_local6++;
};
return (_local5[_local8].angle);
}
public static function getHueMatrix(_arg1:Number):Array{
var _local2:Number = ((_arg1 * Math.PI) / 180);
var _local3:Number = LUMINANCE_R;
var _local4:Number = LUMINANCE_G;
var _local5:Number = LUMINANCE_B;
var _local6:Number = Math.cos(_local2);
var _local7:Number = Math.sin(_local2);
var _local8:Array = [((_local3 + (_local6 * (1 - _local3))) + (_local7 * -(_local3))), ((_local4 + (_local6 * -(_local4))) + (_local7 * -(_local4))), ((_local5 + (_local6 * -(_local5))) + (_local7 * (1 - _local5))), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * 0.143)), ((_local4 + (_local6 * (1 - _local4))) + (_local7 * 0.14)), ((_local5 + (_local6 * -(_local5))) + (_local7 * -0.283)), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * -((1 - _local3)))), ((_local4 + (_local6 * -(_local4))) + (_local7 * _local4)), ((_local5 + (_local6 * (1 - _local5))) + (_local7 * _local5)), 0, 0, 0, 0, 0, 1, 0];
return (_local8);
}
public static function _color_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.transform.colorTransform[_arg2[0]]);
}
public static function init():void{
Tweener.registerSpecialProperty("_color_ra", _oldColor_property_get, _oldColor_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_rb", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_ga", _oldColor_property_get, _oldColor_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_gb", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_ba", _oldColor_property_get, _oldColor_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_bb", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_aa", _oldColor_property_get, _oldColor_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_ab", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialProperty("_color_redMultiplier", _color_property_get, _color_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_redOffset", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_greenMultiplier", _color_property_get, _color_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_greenOffset", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_blueMultiplier", _color_property_get, _color_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_blueOffset", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_alphaMultiplier", _color_property_get, _color_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_alphaOffset", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialPropertySplitter("_color", _color_splitter);
Tweener.registerSpecialPropertySplitter("_colorTransform", _colorTransform_splitter);
Tweener.registerSpecialProperty("_brightness", _brightness_get, _brightness_set, [false]);
Tweener.registerSpecialProperty("_tintBrightness", _brightness_get, _brightness_set, [true]);
Tweener.registerSpecialProperty("_contrast", _contrast_get, _contrast_set);
Tweener.registerSpecialProperty("_hue", _hue_get, _hue_set);
Tweener.registerSpecialProperty("_saturation", _saturation_get, _saturation_set, [false]);
Tweener.registerSpecialProperty("_dumbSaturation", _saturation_get, _saturation_set, [true]);
}
private static function setObjectMatrix(_arg1:Object, _arg2:Array):void{
var _local6:ColorMatrixFilter;
var _local3:Array = _arg1.filters.concat();
var _local4:Boolean;
var _local5:Number = 0;
while (_local5 < _local3.length) {
if ((_local3[_local5] is ColorMatrixFilter)){
_local3[_local5].matrix = _arg2.concat();
_local4 = true;
};
_local5++;
};
if (!_local4){
_local6 = new ColorMatrixFilter(_arg2);
_local3[_local3.length] = _local6;
};
_arg1.filters = _local3;
}
public static function _color_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform = _arg1.transform.colorTransform;
_local5[_arg3[0]] = _arg2;
_arg1.transform.colorTransform = _local5;
}
public static function _oldColor_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform = _arg1.transform.colorTransform;
_local5[_arg3[0]] = (_arg2 / 100);
_arg1.transform.colorTransform = _local5;
}
public static function _contrast_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local5:Number;
var _local6:Number;
var _local4:ColorTransform = _arg1.transform.colorTransform;
_local5 = ((((_local4.redMultiplier + _local4.greenMultiplier) + _local4.blueMultiplier) / 3) - 1);
_local6 = ((((_local4.redOffset + _local4.greenOffset) + _local4.blueOffset) / 3) / -128);
return (((_local5 + _local6) / 2));
}
public static function _colorTransform_splitter(_arg1:Object, _arg2:Array):Array{
var _local3:Array = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:_arg1.redMultiplier});
_local3.push({name:"_color_redOffset", value:_arg1.redOffset});
_local3.push({name:"_color_blueMultiplier", value:_arg1.blueMultiplier});
_local3.push({name:"_color_blueOffset", value:_arg1.blueOffset});
_local3.push({name:"_color_greenMultiplier", value:_arg1.greenMultiplier});
_local3.push({name:"_color_greenOffset", value:_arg1.greenOffset});
_local3.push({name:"_color_alphaMultiplier", value:_arg1.alphaMultiplier});
_local3.push({name:"_color_alphaOffset", value:_arg1.alphaOffset});
};
return (_local3);
}
}
}//package caurina.transitions.properties
Section 6
//FilterShortcuts (caurina.transitions.properties.FilterShortcuts)
package caurina.transitions.properties {
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
import caurina.transitions.*;
public class FilterShortcuts {
public function FilterShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function init():void{
Tweener.registerSpecialPropertySplitter("_filter", _filter_splitter);
Tweener.registerSpecialProperty("_Bevel_angle", _filter_property_get, _filter_property_set, [BevelFilter, "angle"]);
Tweener.registerSpecialProperty("_Bevel_blurX", _filter_property_get, _filter_property_set, [BevelFilter, "blurX"]);
Tweener.registerSpecialProperty("_Bevel_blurY", _filter_property_get, _filter_property_set, [BevelFilter, "blurY"]);
Tweener.registerSpecialProperty("_Bevel_distance", _filter_property_get, _filter_property_set, [BevelFilter, "distance"]);
Tweener.registerSpecialProperty("_Bevel_highlightAlpha", _filter_property_get, _filter_property_set, [BevelFilter, "highlightAlpha"]);
Tweener.registerSpecialPropertySplitter("_Bevel_highlightColor", _generic_color_splitter, ["_Bevel_highlightColor_r", "_Bevel_highlightColor_g", "_Bevel_highlightColor_b"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_r", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "r"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_g", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "g"]);
Tweener.registerSpecialProperty("_Bevel_highlightColor_b", _filter_property_get, _filter_property_set, [BevelFilter, "highlightColor", "color", "b"]);
Tweener.registerSpecialProperty("_Bevel_knockout", _filter_property_get, _filter_property_set, [BevelFilter, "knockout"]);
Tweener.registerSpecialProperty("_Bevel_quality", _filter_property_get, _filter_property_set, [BevelFilter, "quality"]);
Tweener.registerSpecialProperty("_Bevel_shadowAlpha", _filter_property_get, _filter_property_set, [BevelFilter, "shadowAlpha"]);
Tweener.registerSpecialPropertySplitter("_Bevel_shadowColor", _generic_color_splitter, ["_Bevel_shadowColor_r", "_Bevel_shadowColor_g", "_Bevel_shadowColor_b"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_r", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "r"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_g", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "g"]);
Tweener.registerSpecialProperty("_Bevel_shadowColor_b", _filter_property_get, _filter_property_set, [BevelFilter, "shadowColor", "color", "b"]);
Tweener.registerSpecialProperty("_Bevel_strength", _filter_property_get, _filter_property_set, [BevelFilter, "strength"]);
Tweener.registerSpecialProperty("_Bevel_type", _filter_property_get, _filter_property_set, [BevelFilter, "type"]);
Tweener.registerSpecialProperty("_Blur_blurX", _filter_property_get, _filter_property_set, [BlurFilter, "blurX"]);
Tweener.registerSpecialProperty("_Blur_blurY", _filter_property_get, _filter_property_set, [BlurFilter, "blurY"]);
Tweener.registerSpecialProperty("_Blur_quality", _filter_property_get, _filter_property_set, [BlurFilter, "quality"]);
Tweener.registerSpecialPropertySplitter("_ColorMatrix_matrix", _generic_matrix_splitter, [[1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0], ["_ColorMatrix_matrix_rr", "_ColorMatrix_matrix_rg", "_ColorMatrix_matrix_rb", "_ColorMatrix_matrix_ra", "_ColorMatrix_matrix_ro", "_ColorMatrix_matrix_gr", "_ColorMatrix_matrix_gg", "_ColorMatrix_matrix_gb", "_ColorMatrix_matrix_ga", "_ColorMatrix_matrix_go", "_ColorMatrix_matrix_br", "_ColorMatrix_matrix_bg", "_ColorMatrix_matrix_bb", "_ColorMatrix_matrix_ba", "_ColorMatrix_matrix_bo", "_ColorMatrix_matrix_ar", "_ColorMatrix_matrix_ag", "_ColorMatrix_matrix_ab", "_ColorMatrix_matrix_aa", "_ColorMatrix_matrix_ao"]]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rr", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 0]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 1]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_rb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 2]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ra", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 3]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ro", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 4]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gr", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 5]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 6]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_gb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 7]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ga", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 8]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_go", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 9]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_br", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 10]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bg", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 11]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bb", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 12]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ba", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 13]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_bo", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 14]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ar", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 15]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ag", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 16]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ab", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 17]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_aa", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 18]);
Tweener.registerSpecialProperty("_ColorMatrix_matrix_ao", _filter_property_get, _filter_property_set, [ColorMatrixFilter, "matrix", "matrix", 19]);
Tweener.registerSpecialProperty("_Convolution_alpha", _filter_property_get, _filter_property_set, [ConvolutionFilter, "alpha"]);
Tweener.registerSpecialProperty("_Convolution_bias", _filter_property_get, _filter_property_set, [ConvolutionFilter, "bias"]);
Tweener.registerSpecialProperty("_Convolution_clamp", _filter_property_get, _filter_property_set, [ConvolutionFilter, "clamp"]);
Tweener.registerSpecialPropertySplitter("_Convolution_color", _generic_color_splitter, ["_Convolution_color_r", "_Convolution_color_g", "_Convolution_color_b"]);
Tweener.registerSpecialProperty("_Convolution_color_r", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_Convolution_color_g", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_Convolution_color_b", _filter_property_get, _filter_property_set, [ConvolutionFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_Convolution_divisor", _filter_property_get, _filter_property_set, [ConvolutionFilter, "divisor"]);
Tweener.registerSpecialProperty("_Convolution_matrixX", _filter_property_get, _filter_property_set, [ConvolutionFilter, "matrixX"]);
Tweener.registerSpecialProperty("_Convolution_matrixY", _filter_property_get, _filter_property_set, [ConvolutionFilter, "matrixY"]);
Tweener.registerSpecialProperty("_Convolution_preserveAlpha", _filter_property_get, _filter_property_set, [ConvolutionFilter, "preserveAlpha"]);
Tweener.registerSpecialProperty("_DisplacementMap_alpha", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "alpha"]);
Tweener.registerSpecialPropertySplitter("_DisplacementMap_color", _generic_color_splitter, ["_DisplacementMap_color_r", "_DisplacementMap_color_r", "_DisplacementMap_color_r"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_r", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_g", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_DisplacementMap_color_b", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_DisplacementMap_componentX", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "componentX"]);
Tweener.registerSpecialProperty("_DisplacementMap_componentY", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "componentY"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapBitmap", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapBitmap"]);
Tweener.registerSpecialPropertySplitter("_DisplacementMap_mapPoint", _generic_point_splitter, ["_DisplacementMap_mapPoint_x", "_DisplacementMap_mapPoint_y"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapPoint_x", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapPoint", "point", "x"]);
Tweener.registerSpecialProperty("_DisplacementMap_mapPoint_y", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mapPoint", "point", "y"]);
Tweener.registerSpecialProperty("_DisplacementMap_mode", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "mode"]);
Tweener.registerSpecialProperty("_DisplacementMap_scaleX", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "scaleX"]);
Tweener.registerSpecialProperty("_DisplacementMap_scaleY", _filter_property_get, _filter_property_set, [DisplacementMapFilter, "scaleY"]);
Tweener.registerSpecialProperty("_DropShadow_alpha", _filter_property_get, _filter_property_set, [DropShadowFilter, "alpha"]);
Tweener.registerSpecialProperty("_DropShadow_angle", _filter_property_get, _filter_property_set, [DropShadowFilter, "angle"]);
Tweener.registerSpecialProperty("_DropShadow_blurX", _filter_property_get, _filter_property_set, [DropShadowFilter, "blurX"]);
Tweener.registerSpecialProperty("_DropShadow_blurY", _filter_property_get, _filter_property_set, [DropShadowFilter, "blurY"]);
Tweener.registerSpecialPropertySplitter("_DropShadow_color", _generic_color_splitter, ["_DropShadow_color_r", "_DropShadow_color_g", "_DropShadow_color_b"]);
Tweener.registerSpecialProperty("_DropShadow_color_r", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_DropShadow_color_g", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_DropShadow_color_b", _filter_property_get, _filter_property_set, [DropShadowFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_DropShadow_distance", _filter_property_get, _filter_property_set, [DropShadowFilter, "distance"]);
Tweener.registerSpecialProperty("_DropShadow_hideObject", _filter_property_get, _filter_property_set, [DropShadowFilter, "hideObject"]);
Tweener.registerSpecialProperty("_DropShadow_inner", _filter_property_get, _filter_property_set, [DropShadowFilter, "inner"]);
Tweener.registerSpecialProperty("_DropShadow_knockout", _filter_property_get, _filter_property_set, [DropShadowFilter, "knockout"]);
Tweener.registerSpecialProperty("_DropShadow_quality", _filter_property_get, _filter_property_set, [DropShadowFilter, "quality"]);
Tweener.registerSpecialProperty("_DropShadow_strength", _filter_property_get, _filter_property_set, [DropShadowFilter, "strength"]);
Tweener.registerSpecialProperty("_Glow_alpha", _filter_property_get, _filter_property_set, [GlowFilter, "alpha"]);
Tweener.registerSpecialProperty("_Glow_blurX", _filter_property_get, _filter_property_set, [GlowFilter, "blurX"]);
Tweener.registerSpecialProperty("_Glow_blurY", _filter_property_get, _filter_property_set, [GlowFilter, "blurY"]);
Tweener.registerSpecialPropertySplitter("_Glow_color", _generic_color_splitter, ["_Glow_color_r", "_Glow_color_g", "_Glow_color_b"]);
Tweener.registerSpecialProperty("_Glow_color_r", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "r"]);
Tweener.registerSpecialProperty("_Glow_color_g", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "g"]);
Tweener.registerSpecialProperty("_Glow_color_b", _filter_property_get, _filter_property_set, [GlowFilter, "color", "color", "b"]);
Tweener.registerSpecialProperty("_Glow_inner", _filter_property_get, _filter_property_set, [GlowFilter, "inner"]);
Tweener.registerSpecialProperty("_Glow_knockout", _filter_property_get, _filter_property_set, [GlowFilter, "knockout"]);
Tweener.registerSpecialProperty("_Glow_quality", _filter_property_get, _filter_property_set, [GlowFilter, "quality"]);
Tweener.registerSpecialProperty("_Glow_strength", _filter_property_get, _filter_property_set, [GlowFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientBevel_angle", _filter_property_get, _filter_property_set, [GradientBevelFilter, "angle"]);
Tweener.registerSpecialProperty("_GradientBevel_blurX", _filter_property_get, _filter_property_set, [GradientBevelFilter, "blurX"]);
Tweener.registerSpecialProperty("_GradientBevel_blurY", _filter_property_get, _filter_property_set, [GradientBevelFilter, "blurY"]);
Tweener.registerSpecialProperty("_GradientBevel_distance", _filter_property_get, _filter_property_set, [GradientBevelFilter, "distance"]);
Tweener.registerSpecialProperty("_GradientBevel_quality", _filter_property_get, _filter_property_set, [GradientBevelFilter, "quality"]);
Tweener.registerSpecialProperty("_GradientBevel_strength", _filter_property_get, _filter_property_set, [GradientBevelFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientBevel_type", _filter_property_get, _filter_property_set, [GradientBevelFilter, "type"]);
Tweener.registerSpecialProperty("_GradientGlow_angle", _filter_property_get, _filter_property_set, [GradientGlowFilter, "angle"]);
Tweener.registerSpecialProperty("_GradientGlow_blurX", _filter_property_get, _filter_property_set, [GradientGlowFilter, "blurX"]);
Tweener.registerSpecialProperty("_GradientGlow_blurY", _filter_property_get, _filter_property_set, [GradientGlowFilter, "blurY"]);
Tweener.registerSpecialProperty("_GradientGlow_distance", _filter_property_get, _filter_property_set, [GradientGlowFilter, "distance"]);
Tweener.registerSpecialProperty("_GradientGlow_knockout", _filter_property_get, _filter_property_set, [GradientGlowFilter, "knockout"]);
Tweener.registerSpecialProperty("_GradientGlow_quality", _filter_property_get, _filter_property_set, [GradientGlowFilter, "quality"]);
Tweener.registerSpecialProperty("_GradientGlow_strength", _filter_property_get, _filter_property_set, [GradientGlowFilter, "strength"]);
Tweener.registerSpecialProperty("_GradientGlow_type", _filter_property_get, _filter_property_set, [GradientGlowFilter, "type"]);
}
public static function _filter_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local5:Number;
var _local9:Object;
var _local10:String;
var _local4:Array = _arg1.filters;
var _local6:Object = _arg2[0];
var _local7:String = _arg2[1];
var _local8:String = _arg2[2];
_local5 = 0;
while (_local5 < _local4.length) {
if ((_local4[_local5] is Class(_local6))){
if (_local8 == "color"){
_local10 = _arg2[3];
if (_local10 == "r"){
return (AuxFunctions.numberToR(_local4[_local5][_local7]));
};
if (_local10 == "g"){
return (AuxFunctions.numberToG(_local4[_local5][_local7]));
};
if (_local10 == "b"){
return (AuxFunctions.numberToB(_local4[_local5][_local7]));
};
} else {
if (_local8 == "matrix"){
return (_local4[_local5][_local7][_arg2[3]]);
};
if (_local8 == "point"){
return (_local4[_local5][_local7][_arg2[3]]);
};
return (_local4[_local5][_local7]);
};
};
_local5++;
};
switch (_local6){
case BevelFilter:
_local9 = {angle:NaN, blurX:0, blurY:0, distance:0, highlightAlpha:1, highlightColor:NaN, knockout:null, quality:NaN, shadowAlpha:1, shadowColor:NaN, strength:2, type:null};
break;
case BlurFilter:
_local9 = {blurX:0, blurY:0, quality:NaN};
break;
case ColorMatrixFilter:
_local9 = {matrix:[1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]};
break;
case ConvolutionFilter:
_local9 = {alpha:0, bias:0, clamp:null, color:NaN, divisor:1, matrix:[1], matrixX:1, matrixY:1, preserveAlpha:null};
break;
case DisplacementMapFilter:
_local9 = {alpha:0, color:NaN, componentX:null, componentY:null, mapBitmap:null, mapPoint:null, mode:null, scaleX:0, scaleY:0};
break;
case DropShadowFilter:
_local9 = {distance:0, angle:NaN, color:NaN, alpha:1, blurX:0, blurY:0, strength:1, quality:NaN, inner:null, knockout:null, hideObject:null};
break;
case GlowFilter:
_local9 = {alpha:1, blurX:0, blurY:0, color:NaN, inner:null, knockout:null, quality:NaN, strength:2};
break;
case GradientBevelFilter:
_local9 = {alphas:null, angle:NaN, blurX:0, blurY:0, colors:null, distance:0, knockout:null, quality:NaN, ratios:NaN, strength:1, type:null};
break;
case GradientGlowFilter:
_local9 = {alphas:null, angle:NaN, blurX:0, blurY:0, colors:null, distance:0, knockout:null, quality:NaN, ratios:NaN, strength:1, type:null};
break;
};
if (_local8 == "color"){
return (NaN);
};
if (_local8 == "matrix"){
return (_local9[_local7][_arg2[3]]);
};
if (_local8 == "point"){
return (_local9[_local7][_arg2[3]]);
};
return (_local9[_local7]);
}
public static function _filter_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local6:Number;
var _local10:BitmapFilter;
var _local11:String;
var _local12:Array;
var _local13:Point;
var _local5:Array = _arg1.filters;
var _local7:Object = _arg3[0];
var _local8:String = _arg3[1];
var _local9:String = _arg3[2];
_local6 = 0;
while (_local6 < _local5.length) {
if ((_local5[_local6] is Class(_local7))){
if (_local9 == "color"){
_local11 = _arg3[3];
if (_local11 == "r"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFFFF) | (_arg2 << 16));
};
if (_local11 == "g"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFF00FF) | (_arg2 << 8));
};
if (_local11 == "b"){
_local5[_local6][_local8] = ((_local5[_local6][_local8] & 0xFFFF00) | _arg2);
};
} else {
if (_local9 == "matrix"){
_local12 = _local5[_local6][_local8];
_local12[_arg3[3]] = _arg2;
_local5[_local6][_local8] = _local12;
} else {
if (_local9 == "point"){
_local13 = Point(_local5[_local6][_local8]);
_local13[_arg3[3]] = _arg2;
_local5[_local6][_local8] = _local13;
} else {
_local5[_local6][_local8] = _arg2;
};
};
};
_arg1.filters = _local5;
return;
};
_local6++;
};
if (_local5 == null){
_local5 = new Array();
};
switch (_local7){
case BevelFilter:
_local10 = new BevelFilter(0, 45, 0xFFFFFF, 1, 0, 1, 0, 0);
break;
case BlurFilter:
_local10 = new BlurFilter(0, 0);
break;
case ColorMatrixFilter:
_local10 = new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
break;
case ConvolutionFilter:
_local10 = new ConvolutionFilter(1, 1, [1], 1, 0, true, true, 0, 0);
break;
case DisplacementMapFilter:
_local10 = new DisplacementMapFilter(new BitmapData(10, 10), new Point(0, 0), 0, 1, 0, 0);
break;
case DropShadowFilter:
_local10 = new DropShadowFilter(0, 45, 0, 1, 0, 0);
break;
case GlowFilter:
_local10 = new GlowFilter(0xFF0000, 1, 0, 0);
break;
case GradientBevelFilter:
_local10 = new GradientBevelFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0);
break;
case GradientGlowFilter:
_local10 = new GradientGlowFilter(0, 45, [0xFFFFFF, 0], [1, 1], [32, 223], 0, 0);
break;
};
_local5.push(_local10);
_arg1.filters = _local5;
_filter_property_set(_arg1, _arg2, _arg3);
}
public static function _generic_color_splitter(_arg1:Number, _arg2:Array):Array{
var _local3:Array = new Array();
_local3.push({name:_arg2[0], value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:_arg2[1], value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:_arg2[2], value:AuxFunctions.numberToB(_arg1)});
return (_local3);
}
public static function _generic_point_splitter(_arg1:Point, _arg2:Array):Array{
var _local3:Array = new Array();
_local3.push({name:_arg2[0], value:_arg1.x});
_local3.push({name:_arg2[1], value:_arg1.y});
return (_local3);
}
public static function _generic_matrix_splitter(_arg1:Array, _arg2:Array):Array{
if (_arg1 == null){
_arg1 = _arg2[0].concat();
};
var _local3:Array = new Array();
var _local4:Number = 0;
while (_local4 < _arg1.length) {
_local3.push({name:_arg2[1][_local4], value:_arg1[_local4]});
_local4++;
};
return (_local3);
}
public static function _filter_splitter(_arg1:BitmapFilter, _arg2:Array, _arg3:Object=null):Array{
var _local4:Array = new Array();
if ((_arg1 is BevelFilter)){
_local4.push({name:"_Bevel_angle", value:BevelFilter(_arg1).angle});
_local4.push({name:"_Bevel_blurX", value:BevelFilter(_arg1).blurX});
_local4.push({name:"_Bevel_blurY", value:BevelFilter(_arg1).blurY});
_local4.push({name:"_Bevel_distance", value:BevelFilter(_arg1).distance});
_local4.push({name:"_Bevel_highlightAlpha", value:BevelFilter(_arg1).highlightAlpha});
_local4.push({name:"_Bevel_highlightColor", value:BevelFilter(_arg1).highlightColor});
_local4.push({name:"_Bevel_knockout", value:BevelFilter(_arg1).knockout});
_local4.push({name:"_Bevel_quality", value:BevelFilter(_arg1).quality});
_local4.push({name:"_Bevel_shadowAlpha", value:BevelFilter(_arg1).shadowAlpha});
_local4.push({name:"_Bevel_shadowColor", value:BevelFilter(_arg1).shadowColor});
_local4.push({name:"_Bevel_strength", value:BevelFilter(_arg1).strength});
_local4.push({name:"_Bevel_type", value:BevelFilter(_arg1).type});
} else {
if ((_arg1 is BlurFilter)){
_local4.push({name:"_Blur_blurX", value:BlurFilter(_arg1).blurX});
_local4.push({name:"_Blur_blurY", value:BlurFilter(_arg1).blurY});
_local4.push({name:"_Blur_quality", value:BlurFilter(_arg1).quality});
} else {
if ((_arg1 is ColorMatrixFilter)){
_local4.push({name:"_ColorMatrix_matrix", value:ColorMatrixFilter(_arg1).matrix});
} else {
if ((_arg1 is ConvolutionFilter)){
_local4.push({name:"_Convolution_alpha", value:ConvolutionFilter(_arg1).alpha});
_local4.push({name:"_Convolution_bias", value:ConvolutionFilter(_arg1).bias});
_local4.push({name:"_Convolution_clamp", value:ConvolutionFilter(_arg1).clamp});
_local4.push({name:"_Convolution_color", value:ConvolutionFilter(_arg1).color});
_local4.push({name:"_Convolution_divisor", value:ConvolutionFilter(_arg1).divisor});
_local4.push({name:"_Convolution_matrixX", value:ConvolutionFilter(_arg1).matrixX});
_local4.push({name:"_Convolution_matrixY", value:ConvolutionFilter(_arg1).matrixY});
_local4.push({name:"_Convolution_preserveAlpha", value:ConvolutionFilter(_arg1).preserveAlpha});
} else {
if ((_arg1 is DisplacementMapFilter)){
_local4.push({name:"_DisplacementMap_alpha", value:DisplacementMapFilter(_arg1).alpha});
_local4.push({name:"_DisplacementMap_color", value:DisplacementMapFilter(_arg1).color});
_local4.push({name:"_DisplacementMap_componentX", value:DisplacementMapFilter(_arg1).componentX});
_local4.push({name:"_DisplacementMap_componentY", value:DisplacementMapFilter(_arg1).componentY});
_local4.push({name:"_DisplacementMap_mapBitmap", value:DisplacementMapFilter(_arg1).mapBitmap});
_local4.push({name:"_DisplacementMap_mapPoint", value:DisplacementMapFilter(_arg1).mapPoint});
_local4.push({name:"_DisplacementMap_mode", value:DisplacementMapFilter(_arg1).mode});
_local4.push({name:"_DisplacementMap_scaleX", value:DisplacementMapFilter(_arg1).scaleX});
_local4.push({name:"_DisplacementMap_scaleY", value:DisplacementMapFilter(_arg1).scaleY});
} else {
if ((_arg1 is DropShadowFilter)){
_local4.push({name:"_DropShadow_alpha", value:DropShadowFilter(_arg1).alpha});
_local4.push({name:"_DropShadow_angle", value:DropShadowFilter(_arg1).angle});
_local4.push({name:"_DropShadow_blurX", value:DropShadowFilter(_arg1).blurX});
_local4.push({name:"_DropShadow_blurY", value:DropShadowFilter(_arg1).blurY});
_local4.push({name:"_DropShadow_color", value:DropShadowFilter(_arg1).color});
_local4.push({name:"_DropShadow_distance", value:DropShadowFilter(_arg1).distance});
_local4.push({name:"_DropShadow_hideObject", value:DropShadowFilter(_arg1).hideObject});
_local4.push({name:"_DropShadow_inner", value:DropShadowFilter(_arg1).inner});
_local4.push({name:"_DropShadow_knockout", value:DropShadowFilter(_arg1).knockout});
_local4.push({name:"_DropShadow_quality", value:DropShadowFilter(_arg1).quality});
_local4.push({name:"_DropShadow_strength", value:DropShadowFilter(_arg1).strength});
} else {
if ((_arg1 is GlowFilter)){
_local4.push({name:"_Glow_alpha", value:GlowFilter(_arg1).alpha});
_local4.push({name:"_Glow_blurX", value:GlowFilter(_arg1).blurX});
_local4.push({name:"_Glow_blurY", value:GlowFilter(_arg1).blurY});
_local4.push({name:"_Glow_color", value:GlowFilter(_arg1).color});
_local4.push({name:"_Glow_inner", value:GlowFilter(_arg1).inner});
_local4.push({name:"_Glow_knockout", value:GlowFilter(_arg1).knockout});
_local4.push({name:"_Glow_quality", value:GlowFilter(_arg1).quality});
_local4.push({name:"_Glow_strength", value:GlowFilter(_arg1).strength});
} else {
if ((_arg1 is GradientBevelFilter)){
_local4.push({name:"_GradientBevel_angle", value:GradientBevelFilter(_arg1).strength});
_local4.push({name:"_GradientBevel_blurX", value:GradientBevelFilter(_arg1).blurX});
_local4.push({name:"_GradientBevel_blurY", value:GradientBevelFilter(_arg1).blurY});
_local4.push({name:"_GradientBevel_distance", value:GradientBevelFilter(_arg1).distance});
_local4.push({name:"_GradientBevel_quality", value:GradientBevelFilter(_arg1).quality});
_local4.push({name:"_GradientBevel_strength", value:GradientBevelFilter(_arg1).strength});
_local4.push({name:"_GradientBevel_type", value:GradientBevelFilter(_arg1).type});
} else {
if ((_arg1 is GradientGlowFilter)){
_local4.push({name:"_GradientGlow_angle", value:GradientGlowFilter(_arg1).strength});
_local4.push({name:"_GradientGlow_blurX", value:GradientGlowFilter(_arg1).blurX});
_local4.push({name:"_GradientGlow_blurY", value:GradientGlowFilter(_arg1).blurY});
_local4.push({name:"_GradientGlow_distance", value:GradientGlowFilter(_arg1).distance});
_local4.push({name:"_GradientGlow_knockout", value:GradientGlowFilter(_arg1).knockout});
_local4.push({name:"_GradientGlow_quality", value:GradientGlowFilter(_arg1).quality});
_local4.push({name:"_GradientGlow_strength", value:GradientGlowFilter(_arg1).strength});
_local4.push({name:"_GradientGlow_type", value:GradientGlowFilter(_arg1).type});
} else {
trace("Tweener FilterShortcuts Error :: Unknown filter class used");
};
};
};
};
};
};
};
};
};
return (_local4);
}
}
}//package caurina.transitions.properties
Section 7
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function getObjectLength(_arg1:Object):uint{
var _local3:String;
var _local2:uint;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function concatObjects(... _args):Object{
var _local3:Object;
var _local5:String;
var _local2:Object = {};
var _local4:int;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
}
}//package caurina.transitions
Section 8
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function init():void{
Tweener.registerTransition("easenone", easeNone);
Tweener.registerTransition("linear", easeNone);
Tweener.registerTransition("easeinquad", easeInQuad);
Tweener.registerTransition("easeoutquad", easeOutQuad);
Tweener.registerTransition("easeinoutquad", easeInOutQuad);
Tweener.registerTransition("easeoutinquad", easeOutInQuad);
Tweener.registerTransition("easeincubic", easeInCubic);
Tweener.registerTransition("easeoutcubic", easeOutCubic);
Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
Tweener.registerTransition("easeoutincubic", easeOutInCubic);
Tweener.registerTransition("easeinquart", easeInQuart);
Tweener.registerTransition("easeoutquart", easeOutQuart);
Tweener.registerTransition("easeinoutquart", easeInOutQuart);
Tweener.registerTransition("easeoutinquart", easeOutInQuart);
Tweener.registerTransition("easeinquint", easeInQuint);
Tweener.registerTransition("easeoutquint", easeOutQuint);
Tweener.registerTransition("easeinoutquint", easeInOutQuint);
Tweener.registerTransition("easeoutinquint", easeOutInQuint);
Tweener.registerTransition("easeinsine", easeInSine);
Tweener.registerTransition("easeoutsine", easeOutSine);
Tweener.registerTransition("easeinoutsine", easeInOutSine);
Tweener.registerTransition("easeoutinsine", easeOutInSine);
Tweener.registerTransition("easeincirc", easeInCirc);
Tweener.registerTransition("easeoutcirc", easeOutCirc);
Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
Tweener.registerTransition("easeoutincirc", easeOutInCirc);
Tweener.registerTransition("easeinexpo", easeInExpo);
Tweener.registerTransition("easeoutexpo", easeOutExpo);
Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
Tweener.registerTransition("easeinelastic", easeInElastic);
Tweener.registerTransition("easeoutelastic", easeOutElastic);
Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
Tweener.registerTransition("easeinback", easeInBack);
Tweener.registerTransition("easeoutback", easeOutBack);
Tweener.registerTransition("easeinoutback", easeInOutBack);
Tweener.registerTransition("easeoutinback", easeOutInBack);
Tweener.registerTransition("easeinbounce", easeInBounce);
Tweener.registerTransition("easeoutbounce", easeOutBounce);
Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local7:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
var _local6:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
var _local8:Number = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 9
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var modifierParameters:Array;
public var isSpecialProperty:Boolean;
public var valueComplete:Number;
public var modifierFunction:Function;
public var extra:Object;
public var valueStart:Number;
public var hasModifier:Boolean;
public var arrayIndex:Number;
public var originalValueComplete:Object;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function toString():String{
var _local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
}
}//package caurina.transitions
Section 10
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var parameters:Array;
public var getValue:Function;
public var preProcess:Function;
public var setValue:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 11
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var getValue:Function;
public var modifyValues:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 12
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 13
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
private static var _engineExists:Boolean = false;
private static var _specialPropertyModifierList:Object;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyList:Object;
private static var _transitionList:Object;
private static var _inited:Boolean = false;
private static var __tweener_controller__:MovieClip;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
if (!_inited){
init();
};
var _local4:SpecialPropertyModifier = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
if (!_inited){
init();
};
var _local6:SpecialProperty = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function init(... _args):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
var _local5:Object = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
var _local6:Number = (isNaN(_local5.time)) ? 0 : _local5.time;
var _local7:Number = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function pauseAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local5:SpecialPropertySplitter;
var _local6:Array;
var _local7:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
if (_specialPropertySplitterList[_args[_local4]]){
_local5 = _specialPropertySplitterList[_args[_local4]];
_local6 = _local5.splitValues(_arg1, null);
_local7 = 0;
while (_local7 < _local6.length) {
_local3.push(_local6[_local7].name);
_local7++;
};
} else {
_local3.push(_args[_local4]);
};
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local5:uint;
var _local6:String;
var _local7:Boolean;
var _local3:TweenListObj = _tweenList[_arg1];
var _local4:TweenListObj = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
var _local3:Number = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
public static function getVersion():String{
return ("AS3 1.31.74");
}
public static function onEnterFrame(_arg1:Event):void{
updateTime();
updateFrame();
var _local2:Boolean;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function updateTime():void{
_currentTime = getTimer();
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
var isOver:Boolean;
var cTime:Number = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e2:Error) {
handleError(tTweening, e2, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e3:Error) {
handleError(tTweening, e3, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e4:Error) {
handleError(tTweening, e4, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function resumeAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(eventScope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
private static function startEngine():void{
_engineExists = true;
_tweenList = new Array();
__tweener_controller__ = new MovieClip();
__tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
_currentTimeFrame = 0;
updateTime();
}
public static function removeAllTweens():Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
var _local1:Boolean;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:String;
var _local6:Array;
var _local13:Function;
var _local14:Object;
var _local15:TweenListObj;
var _local16:Number;
var _local17:Array;
var _local18:Array;
var _local19:Array;
var _local20:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local6 = _arg1.concat();
} else {
_local6 = [_arg1];
};
var _local7:Object = TweenListObj.makePropertiesChain(_arg2);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
var _local8:Number = (isNaN(_local7.time)) ? 0 : _local7.time;
var _local9:Number = (isNaN(_local7.delay)) ? 0 : _local7.delay;
var _local10:Array = new Array();
var _local11:Object = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
var _local12:Object = new Object();
for (_local5 in _local7) {
if (!_local11[_local5]){
if (_specialPropertySplitterList[_local5]){
_local17 = _specialPropertySplitterList[_local5].splitValues(_local7[_local5], _specialPropertySplitterList[_local5].parameters);
_local3 = 0;
while (_local3 < _local17.length) {
if (_specialPropertySplitterList[_local17[_local3].name]){
_local18 = _specialPropertySplitterList[_local17[_local3].name].splitValues(_local17[_local3].value, _specialPropertySplitterList[_local17[_local3].name].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
_local10[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
_local4++;
};
} else {
_local10[_local17[_local3].name] = {valueStart:undefined, valueComplete:_local17[_local3].value, arrayIndex:_local17[_local3].arrayIndex, isSpecialProperty:false};
};
_local3++;
};
} else {
if (_specialPropertyModifierList[_local5] != undefined){
_local19 = _specialPropertyModifierList[_local5].modifyValues(_local7[_local5]);
_local3 = 0;
while (_local3 < _local19.length) {
_local12[_local19[_local3].name] = {modifierParameters:_local19[_local3].parameters, modifierFunction:_specialPropertyModifierList[_local5].getValue};
_local3++;
};
} else {
_local10[_local5] = {valueStart:undefined, valueComplete:_local7[_local5]};
};
};
};
};
for (_local5 in _local10) {
if (_specialPropertyList[_local5] != undefined){
_local10[_local5].isSpecialProperty = true;
} else {
if (_local6[0][_local5] == undefined){
printError((((("The property '" + _local5) + "' doesn't seem to be a normal object property of ") + String(_local6[0])) + " or a registered special property."));
};
};
};
for (_local5 in _local12) {
if (_local10[_local5] != undefined){
_local10[_local5].modifierParameters = _local12[_local5].modifierParameters;
_local10[_local5].modifierFunction = _local12[_local5].modifierFunction;
};
};
if (typeof(_local7.transition) == "string"){
_local20 = _local7.transition.toLowerCase();
_local13 = _transitionList[_local20];
} else {
_local13 = _local7.transition;
};
if (!Boolean(_local13)){
_local13 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local6.length) {
_local14 = new Object();
for (_local5 in _local10) {
_local14[_local5] = new PropertyInfoObj(_local10[_local5].valueStart, _local10[_local5].valueComplete, _local10[_local5].valueComplete, _local10[_local5].arrayIndex, {}, _local10[_local5].isSpecialProperty, _local10[_local5].modifierFunction, _local10[_local5].modifierParameters);
};
if (_local7.useFrames == true){
_local15 = new TweenListObj(_local6[_local3], (_currentTimeFrame + (_local9 / _timeScale)), (_currentTimeFrame + ((_local9 + _local8) / _timeScale)), true, _local13, _local7.transitionParams);
} else {
_local15 = new TweenListObj(_local6[_local3], (_currentTime + ((_local9 * 1000) / _timeScale)), (_currentTime + (((_local9 * 1000) + (_local8 * 1000)) / _timeScale)), false, _local13, _local7.transitionParams);
};
_local15.properties = _local14;
_local15.onStart = _local7.onStart;
_local15.onUpdate = _local7.onUpdate;
_local15.onComplete = _local7.onComplete;
_local15.onOverwrite = _local7.onOverwrite;
_local15.onError = _local7.onError;
_local15.onStartParams = _local7.onStartParams;
_local15.onUpdateParams = _local7.onUpdateParams;
_local15.onCompleteParams = _local7.onCompleteParams;
_local15.onOverwriteParams = _local7.onOverwriteParams;
_local15.onStartScope = _local7.onStartScope;
_local15.onUpdateScope = _local7.onUpdateScope;
_local15.onCompleteScope = _local7.onCompleteScope;
_local15.onOverwriteScope = _local7.onOverwriteScope;
_local15.onErrorScope = _local7.onErrorScope;
_local15.rounded = _local7.rounded;
_local15.skipUpdates = _local7.skipUpdates;
removeTweensByTime(_local15.scope, _local15.properties, _local15.timeStart, _local15.timeComplete);
_tweenList.push(_local15);
if ((((_local8 == 0)) && ((_local9 == 0)))){
_local16 = (_tweenList.length - 1);
updateTweenByIndex(_local16);
removeTweenByIndex(_local16);
};
_local3++;
};
return (true);
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
var _local4:Boolean;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
if (!Boolean(_tweenList)){
return ([]);
};
var _local4:Array = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
if (!Boolean(_tweenList)){
return (0);
};
var _local3:Number = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function stopEngine():void{
_engineExists = false;
_tweenList = null;
_currentTime = 0;
_currentTimeFrame = 0;
__tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
__tweener_controller__ = null;
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removedLocally:Boolean;
var i:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
var removed:Boolean;
var tl:uint = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
if (!_inited){
init();
};
var _local4:SpecialPropertySplitter = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local4:uint;
var _local3:Array = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && ((_local3.indexOf(_args[_local4]) == -1)))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 14
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var hasStarted:Boolean;
public var onUpdate:Function;
public var useFrames:Boolean;
public var count:Number;
public var onOverwriteParams:Array;
public var timeStart:Number;
public var timeComplete:Number;
public var onStartParams:Array;
public var onUpdateScope:Object;
public var rounded:Boolean;
public var onUpdateParams:Array;
public var properties:Object;
public var onComplete:Function;
public var transitionParams:Object;
public var updatesSkipped:Number;
public var onStart:Function;
public var onOverwriteScope:Object;
public var skipUpdates:Number;
public var onStartScope:Object;
public var scope:Object;
public var isCaller:Boolean;
public var timePaused:Number;
public var transition:Function;
public var onCompleteParams:Array;
public var onError:Function;
public var timesCalled:Number;
public var onErrorScope:Object;
public var onOverwrite:Function;
public var isPaused:Boolean;
public var waitFrames:Boolean;
public var onCompleteScope:Object;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local3:String;
var _local2:TweenListObj = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local3:String;
var _local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
var _local2:Boolean;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local2:Object = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 15
//MD5 (com.adobe.crypto.MD5)
package com.adobe.crypto {
import flash.utils.*;
import com.adobe.utils.*;
public class MD5 {
public static var digest:ByteArray;
private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function f(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg2) | (~(_arg1) & _arg3)));
}
private static function g(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg3) | (_arg2 & ~(_arg3))));
}
private static function h(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 ^ _arg2) ^ _arg3));
}
private static function i(_arg1:int, _arg2:int, _arg3:int):int{
return ((_arg2 ^ (_arg1 | ~(_arg3))));
}
private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{
var _local9:int = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8);
return ((IntUtil.rol(_local9, _arg7) + _arg3));
}
private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hash(_arg1:String):String{
var _local2:ByteArray = new ByteArray();
_local2.writeUTFBytes(_arg1);
return (hashBinary(_local2));
}
private static function createBlocks(_arg1:ByteArray):Array{
var _local2:Array = new Array();
var _local3:int = (_arg1.length * 8);
var _local4 = 0xFF;
var _local5:int;
while (_local5 < _local3) {
_local2[int((_local5 >> 5))] = (_local2[int((_local5 >> 5))] | ((_arg1[(_local5 / 8)] & _local4) << (_local5 % 32)));
_local5 = (_local5 + 8);
};
_local2[int((_local3 >> 5))] = (_local2[int((_local3 >> 5))] | (128 << (_local3 % 32)));
_local2[int(((((_local3 + 64) >>> 9) << 4) + 14))] = _local3;
return (_local2);
}
public static function hashBinary(_arg1:ByteArray):String{
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local2 = 1732584193;
var _local3 = -271733879;
var _local4 = -1732584194;
var _local5 = 271733878;
var _local10:Array = createBlocks(_arg1);
var _local11:int = _local10.length;
var _local12:int;
while (_local12 < _local11) {
_local6 = _local2;
_local7 = _local3;
_local8 = _local4;
_local9 = _local5;
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 7, -680876936);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 1))], 12, -389564586);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 17, 606105819);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 3))], 22, -1044525330);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 7, -176418897);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 5))], 12, 1200080426);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 17, -1473231341);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 7))], 22, -45705983);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 7, 1770035416);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 9))], 12, -1958414417);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 17, -42063);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 11))], 22, -1990404162);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 7, 1804603682);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[int((_local12 + 13))], 12, -40341101);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 17, -1502002290);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[int((_local12 + 15))], 22, 1236535329);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 5, -165796510);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 6))], 9, -1069501632);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 14, 643717713);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 0))], 20, -373897302);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 5, -701558691);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 10))], 9, 38016083);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 14, -660478335);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 4))], 20, -405537848);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 5, 568446438);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 14))], 9, -1019803690);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 14, -187363961);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 8))], 20, 1163531501);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 5, -1444681467);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[int((_local12 + 2))], 9, -51403784);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 14, 1735328473);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[int((_local12 + 12))], 20, -1926607734);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 5))], 4, -378558);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 8))], 11, -2022574463);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 11))], 16, 1839030562);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 14))], 23, -35309556);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 1))], 4, -1530992060);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 4))], 11, 1272893353);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 7))], 16, -155497632);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 10))], 23, -1094730640);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 13))], 4, 681279174);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 0))], 11, -358537222);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 3))], 16, -722521979);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 6))], 23, 76029189);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[int((_local12 + 9))], 4, -640364487);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[int((_local12 + 12))], 11, -421815835);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[int((_local12 + 15))], 16, 530742520);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[int((_local12 + 2))], 23, -995338651);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 0))], 6, -198630844);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 7))], 10, 1126891415);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 14))], 15, -1416354905);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 5))], 21, -57434055);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 12))], 6, 1700485571);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 3))], 10, -1894986606);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 10))], 15, -1051523);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 1))], 21, -2054922799);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 8))], 6, 1873313359);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 15))], 10, -30611744);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 6))], 15, -1560198380);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 13))], 21, 1309151649);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[int((_local12 + 4))], 6, -145523070);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[int((_local12 + 11))], 10, -1120210379);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[int((_local12 + 2))], 15, 718787259);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[int((_local12 + 9))], 21, -343485551);
_local2 = (_local2 + _local6);
_local3 = (_local3 + _local7);
_local4 = (_local4 + _local8);
_local5 = (_local5 + _local9);
_local12 = (_local12 + 16);
};
digest = new ByteArray();
digest.writeInt(_local2);
digest.writeInt(_local3);
digest.writeInt(_local4);
digest.writeInt(_local5);
digest.position = 0;
return ((((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5)));
}
private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
public static function hashBytes(_arg1:ByteArray):String{
return (hashBinary(_arg1));
}
}
}//package com.adobe.crypto
Section 16
//BitString (com.adobe.images.BitString)
package com.adobe.images {
public class BitString {
public var val:int;// = 0
public var len:int;// = 0
}
}//package com.adobe.images
Section 17
//JPGEncoder (com.adobe.images.JPGEncoder)
package com.adobe.images {
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
public class JPGEncoder {
private var fdtbl_UV:Array;
private var std_ac_chrominance_values:Array;
private var std_dc_chrominance_values:Array;
private var ZigZag:Array;
private var YDC_HT:Array;
private var YAC_HT:Array;
private var bytenew:int;// = 0
private var fdtbl_Y:Array;
private var std_ac_chrominance_nrcodes:Array;
private var DU:Array;
private var std_ac_luminance_values:Array;
private var std_dc_chrominance_nrcodes:Array;
private var UVTable:Array;
private var YDU:Array;
private var UDU:Array;
private var byteout:ByteArray;
private var UVAC_HT:Array;
private var UVDC_HT:Array;
private var bytepos:int;// = 7
private var VDU:Array;
private var std_ac_luminance_nrcodes:Array;
private var std_dc_luminance_values:Array;
private var YTable:Array;
private var std_dc_luminance_nrcodes:Array;
private var bitcode:Array;
private var category:Array;
public function JPGEncoder(_arg1:Number=50){
ZigZag = [0, 1, 5, 6, 14, 15, 27, 28, 2, 4, 7, 13, 16, 26, 29, 42, 3, 8, 12, 17, 25, 30, 41, 43, 9, 11, 18, 24, 31, 40, 44, 53, 10, 19, 23, 32, 39, 45, 52, 54, 20, 22, 33, 38, 46, 51, 55, 60, 21, 34, 37, 47, 50, 56, 59, 61, 35, 36, 48, 49, 57, 58, 62, 63];
YTable = new Array(64);
UVTable = new Array(64);
fdtbl_Y = new Array(64);
fdtbl_UV = new Array(64);
std_dc_luminance_nrcodes = [0, 0, 1, 5, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0];
std_dc_luminance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
std_ac_luminance_nrcodes = [0, 0, 2, 1, 3, 3, 2, 4, 3, 5, 5, 4, 4, 0, 0, 1, 125];
std_ac_luminance_values = [1, 2, 3, 0, 4, 17, 5, 18, 33, 49, 65, 6, 19, 81, 97, 7, 34, 113, 20, 50, 129, 145, 161, 8, 35, 66, 177, 193, 21, 82, 209, 240, 36, 51, 98, 114, 130, 9, 10, 22, 23, 24, 25, 26, 37, 38, 39, 40, 41, 42, 52, 53, 54, 55, 56, 57, 58, 67, 68, 69, 70, 71, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 99, 100, 101, 102, 103, 104, 105, 106, 115, 116, 117, 118, 119, 120, 121, 122, 131, 132, 133, 134, 135, 136, 137, 138, 146, 147, 148, 149, 150, 151, 152, 153, 154, 162, 163, 164, 165, 166, 167, 168, 169, 170, 178, 179, 180, 181, 182, 183, 184, 185, 186, 194, 195, 196, 197, 198, 199, 200, 201, 202, 210, 211, 212, 213, 214, 215, 216, 217, 218, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250];
std_dc_chrominance_nrcodes = [0, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0];
std_dc_chrominance_values = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11];
std_ac_chrominance_nrcodes = [0, 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 119];
std_ac_chrominance_values = [0, 1, 2, 3, 17, 4, 5, 33, 49, 6, 18, 65, 81, 7, 97, 113, 19, 34, 50, 129, 8, 20, 66, 145, 161, 177, 193, 9, 35, 51, 82, 240, 21, 98, 114, 209, 10, 22, 36, 52, 225, 37, 241, 23, 24, 25, 26, 38, 39, 40, 41, 42, 53, 54, 55, 56, 57, 58, 67, 68, 69, 70, 71, 72, 73, 74, 83, 84, 85, 86, 87, 88, 89, 90, 99, 100, 101, 102, 103, 104, 105, 106, 115, 116, 117, 118, 119, 120, 121, 122, 130, 131, 132, 133, 134, 135, 136, 137, 138, 146, 147, 148, 149, 150, 151, 152, 153, 154, 162, 163, 164, 165, 166, 167, 168, 169, 170, 178, 179, 180, 181, 182, 183, 184, 185, 186, 194, 195, 196, 197, 198, 199, 200, 201, 202, 210, 211, 212, 213, 214, 215, 216, 217, 218, 226, 227, 228, 229, 230, 231, 232, 233, 234, 242, 243, 244, 245, 246, 247, 248, 249, 250];
bitcode = new Array(0xFFFF);
category = new Array(0xFFFF);
DU = new Array(64);
YDU = new Array(64);
UDU = new Array(64);
VDU = new Array(64);
super();
if (_arg1 <= 0){
_arg1 = 1;
};
if (_arg1 > 100){
_arg1 = 100;
};
var _local2:int;
if (_arg1 < 50){
_local2 = int((5000 / _arg1));
} else {
_local2 = int((200 - (_arg1 * 2)));
};
initHuffmanTbl();
initCategoryNumber();
initQuantTables(_local2);
}
private function initHuffmanTbl():void{
YDC_HT = computeHuffmanTbl(std_dc_luminance_nrcodes, std_dc_luminance_values);
UVDC_HT = computeHuffmanTbl(std_dc_chrominance_nrcodes, std_dc_chrominance_values);
YAC_HT = computeHuffmanTbl(std_ac_luminance_nrcodes, std_ac_luminance_values);
UVAC_HT = computeHuffmanTbl(std_ac_chrominance_nrcodes, std_ac_chrominance_values);
}
private function RGB2YUV(_arg1:BitmapData, _arg2:int, _arg3:int):void{
var _local6:int;
var _local7:uint;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local4:int;
var _local5:int;
while (_local5 < 8) {
_local6 = 0;
while (_local6 < 8) {
_local7 = _arg1.getPixel32((_arg2 + _local6), (_arg3 + _local5));
_local8 = Number(((_local7 >> 16) & 0xFF));
_local9 = Number(((_local7 >> 8) & 0xFF));
_local10 = Number((_local7 & 0xFF));
YDU[_local4] = ((((0.299 * _local8) + (0.587 * _local9)) + (0.114 * _local10)) - 128);
UDU[_local4] = (((-0.16874 * _local8) + (-0.33126 * _local9)) + (0.5 * _local10));
VDU[_local4] = (((0.5 * _local8) + (-0.41869 * _local9)) + (-0.08131 * _local10));
_local4++;
_local6++;
};
_local5++;
};
}
private function writeBits(_arg1:BitString):void{
var _local2:int = _arg1.val;
var _local3:int = (_arg1.len - 1);
while (_local3 >= 0) {
if ((_local2 & uint((1 << _local3)))){
bytenew = (bytenew | uint((1 << bytepos)));
};
_local3--;
bytepos--;
if (bytepos < 0){
if (bytenew == 0xFF){
writeByte(0xFF);
writeByte(0);
} else {
writeByte(bytenew);
};
bytepos = 7;
bytenew = 0;
};
};
}
private function writeWord(_arg1:int):void{
writeByte(((_arg1 >> 8) & 0xFF));
writeByte((_arg1 & 0xFF));
}
private function writeByte(_arg1:int):void{
byteout.writeByte(_arg1);
}
private function writeDHT():void{
var _local1:int;
writeWord(65476);
writeWord(418);
writeByte(0);
_local1 = 0;
while (_local1 < 16) {
writeByte(std_dc_luminance_nrcodes[(_local1 + 1)]);
_local1++;
};
_local1 = 0;
while (_local1 <= 11) {
writeByte(std_dc_luminance_values[_local1]);
_local1++;
};
writeByte(16);
_local1 = 0;
while (_local1 < 16) {
writeByte(std_ac_luminance_nrcodes[(_local1 + 1)]);
_local1++;
};
_local1 = 0;
while (_local1 <= 161) {
writeByte(std_ac_luminance_values[_local1]);
_local1++;
};
writeByte(1);
_local1 = 0;
while (_local1 < 16) {
writeByte(std_dc_chrominance_nrcodes[(_local1 + 1)]);
_local1++;
};
_local1 = 0;
while (_local1 <= 11) {
writeByte(std_dc_chrominance_values[_local1]);
_local1++;
};
writeByte(17);
_local1 = 0;
while (_local1 < 16) {
writeByte(std_ac_chrominance_nrcodes[(_local1 + 1)]);
_local1++;
};
_local1 = 0;
while (_local1 <= 161) {
writeByte(std_ac_chrominance_values[_local1]);
_local1++;
};
}
public function encode(_arg1:BitmapData):ByteArray{
var _local6:int;
var _local7:BitString;
byteout = new ByteArray();
bytenew = 0;
bytepos = 7;
writeWord(65496);
writeAPP0();
writeDQT();
writeSOF0(_arg1.width, _arg1.height);
writeDHT();
writeSOS();
var _local2:Number = 0;
var _local3:Number = 0;
var _local4:Number = 0;
bytenew = 0;
bytepos = 7;
var _local5:int;
while (_local5 < _arg1.height) {
_local6 = 0;
while (_local6 < _arg1.width) {
RGB2YUV(_arg1, _local6, _local5);
_local2 = processDU(YDU, fdtbl_Y, _local2, YDC_HT, YAC_HT);
_local3 = processDU(UDU, fdtbl_UV, _local3, UVDC_HT, UVAC_HT);
_local4 = processDU(VDU, fdtbl_UV, _local4, UVDC_HT, UVAC_HT);
_local6 = (_local6 + 8);
};
_local5 = (_local5 + 8);
};
if (bytepos >= 0){
_local7 = new BitString();
_local7.len = (bytepos + 1);
_local7.val = ((1 << (bytepos + 1)) - 1);
writeBits(_local7);
};
writeWord(65497);
return (byteout);
}
private function initCategoryNumber():void{
var _local3:int;
var _local1 = 1;
var _local2 = 2;
var _local4 = 1;
while (_local4 <= 15) {
_local3 = _local1;
while (_local3 < _local2) {
category[(32767 + _local3)] = _local4;
bitcode[(32767 + _local3)] = new BitString();
bitcode[(32767 + _local3)].len = _local4;
bitcode[(32767 + _local3)].val = _local3;
_local3++;
};
_local3 = -((_local2 - 1));
while (_local3 <= -(_local1)) {
category[(32767 + _local3)] = _local4;
bitcode[(32767 + _local3)] = new BitString();
bitcode[(32767 + _local3)].len = _local4;
bitcode[(32767 + _local3)].val = ((_local2 - 1) + _local3);
_local3++;
};
_local1 = (_local1 << 1);
_local2 = (_local2 << 1);
_local4++;
};
}
private function writeDQT():void{
var _local1:int;
writeWord(65499);
writeWord(132);
writeByte(0);
_local1 = 0;
while (_local1 < 64) {
writeByte(YTable[_local1]);
_local1++;
};
writeByte(1);
_local1 = 0;
while (_local1 < 64) {
writeByte(UVTable[_local1]);
_local1++;
};
}
private function writeAPP0():void{
writeWord(65504);
writeWord(16);
writeByte(74);
writeByte(70);
writeByte(73);
writeByte(70);
writeByte(0);
writeByte(1);
writeByte(1);
writeByte(0);
writeWord(1);
writeWord(1);
writeByte(0);
writeByte(0);
}
private function writeSOS():void{
writeWord(65498);
writeWord(12);
writeByte(3);
writeByte(1);
writeByte(0);
writeByte(2);
writeByte(17);
writeByte(3);
writeByte(17);
writeByte(0);
writeByte(63);
writeByte(0);
}
private function processDU(_arg1:Array, _arg2:Array, _arg3:Number, _arg4:Array, _arg5:Array):Number{
var _local8:int;
var _local12:int;
var _local13:int;
var _local14:int;
var _local6:BitString = _arg5[0];
var _local7:BitString = _arg5[240];
var _local9:Array = fDCTQuant(_arg1, _arg2);
_local8 = 0;
while (_local8 < 64) {
DU[ZigZag[_local8]] = _local9[_local8];
_local8++;
};
var _local10:int = (DU[0] - _arg3);
_arg3 = DU[0];
if (_local10 == 0){
writeBits(_arg4[0]);
} else {
writeBits(_arg4[category[(32767 + _local10)]]);
writeBits(bitcode[(32767 + _local10)]);
};
var _local11 = 63;
while ((((_local11 > 0)) && ((DU[_local11] == 0)))) {
_local11--;
};
if (_local11 == 0){
writeBits(_local6);
return (_arg3);
};
_local8 = 1;
while (_local8 <= _local11) {
_local12 = _local8;
while ((((DU[_local8] == 0)) && ((_local8 <= _local11)))) {
_local8++;
};
_local13 = (_local8 - _local12);
if (_local13 >= 16){
_local14 = 1;
while (_local14 <= (_local13 / 16)) {
writeBits(_local7);
_local14++;
};
_local13 = int((_local13 & 15));
};
writeBits(_arg5[((_local13 * 16) + category[(32767 + DU[_local8])])]);
writeBits(bitcode[(32767 + DU[_local8])]);
_local8++;
};
if (_local11 != 63){
writeBits(_local6);
};
return (_arg3);
}
private function initQuantTables(_arg1:int):void{
var _local2:int;
var _local3:Number;
var _local8:int;
var _local4:Array = [16, 11, 10, 16, 24, 40, 51, 61, 12, 12, 14, 19, 26, 58, 60, 55, 14, 13, 16, 24, 40, 57, 69, 56, 14, 17, 22, 29, 51, 87, 80, 62, 18, 22, 37, 56, 68, 109, 103, 77, 24, 35, 55, 64, 81, 104, 113, 92, 49, 64, 78, 87, 103, 121, 120, 101, 72, 92, 95, 98, 112, 100, 103, 99];
_local2 = 0;
while (_local2 < 64) {
_local3 = Math.floor((((_local4[_local2] * _arg1) + 50) / 100));
if (_local3 < 1){
_local3 = 1;
} else {
if (_local3 > 0xFF){
_local3 = 0xFF;
};
};
YTable[ZigZag[_local2]] = _local3;
_local2++;
};
var _local5:Array = [17, 18, 24, 47, 99, 99, 99, 99, 18, 21, 26, 66, 99, 99, 99, 99, 24, 26, 56, 99, 99, 99, 99, 99, 47, 66, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99];
_local2 = 0;
while (_local2 < 64) {
_local3 = Math.floor((((_local5[_local2] * _arg1) + 50) / 100));
if (_local3 < 1){
_local3 = 1;
} else {
if (_local3 > 0xFF){
_local3 = 0xFF;
};
};
UVTable[ZigZag[_local2]] = _local3;
_local2++;
};
var _local6:Array = [1, 1.387039845, 1.306562965, 1.175875602, 1, 0.785694958, 0.5411961, 0.275899379];
_local2 = 0;
var _local7:int;
while (_local7 < 8) {
_local8 = 0;
while (_local8 < 8) {
fdtbl_Y[_local2] = (1 / (((YTable[ZigZag[_local2]] * _local6[_local7]) * _local6[_local8]) * 8));
fdtbl_UV[_local2] = (1 / (((UVTable[ZigZag[_local2]] * _local6[_local7]) * _local6[_local8]) * 8));
_local2++;
_local8++;
};
_local7++;
};
}
private function writeSOF0(_arg1:int, _arg2:int):void{
writeWord(65472);
writeWord(17);
writeByte(8);
writeWord(_arg2);
writeWord(_arg1);
writeByte(3);
writeByte(1);
writeByte(17);
writeByte(0);
writeByte(2);
writeByte(17);
writeByte(1);
writeByte(3);
writeByte(17);
writeByte(1);
}
private function computeHuffmanTbl(_arg1:Array, _arg2:Array):Array{
var _local7:int;
var _local3:int;
var _local4:int;
var _local5:Array = new Array();
var _local6 = 1;
while (_local6 <= 16) {
_local7 = 1;
while (_local7 <= _arg1[_local6]) {
_local5[_arg2[_local4]] = new BitString();
_local5[_arg2[_local4]].val = _local3;
_local5[_arg2[_local4]].len = _local6;
_local4++;
_local3++;
_local7++;
};
_local3 = (_local3 * 2);
_local6++;
};
return (_local5);
}
private function fDCTQuant(_arg1:Array, _arg2:Array):Array{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Number;
var _local21:Number;
var _local22:int;
var _local23:int;
_local22 = 0;
while (_local22 < 8) {
_local3 = (_arg1[(_local23 + 0)] + _arg1[(_local23 + 7)]);
_local10 = (_arg1[(_local23 + 0)] - _arg1[(_local23 + 7)]);
_local4 = (_arg1[(_local23 + 1)] + _arg1[(_local23 + 6)]);
_local9 = (_arg1[(_local23 + 1)] - _arg1[(_local23 + 6)]);
_local5 = (_arg1[(_local23 + 2)] + _arg1[(_local23 + 5)]);
_local8 = (_arg1[(_local23 + 2)] - _arg1[(_local23 + 5)]);
_local6 = (_arg1[(_local23 + 3)] + _arg1[(_local23 + 4)]);
_local7 = (_arg1[(_local23 + 3)] - _arg1[(_local23 + 4)]);
_local11 = (_local3 + _local6);
_local14 = (_local3 - _local6);
_local12 = (_local4 + _local5);
_local13 = (_local4 - _local5);
_arg1[(_local23 + 0)] = (_local11 + _local12);
_arg1[(_local23 + 4)] = (_local11 - _local12);
_local15 = ((_local13 + _local14) * 0.707106781);
_arg1[(_local23 + 2)] = (_local14 + _local15);
_arg1[(_local23 + 6)] = (_local14 - _local15);
_local11 = (_local7 + _local8);
_local12 = (_local8 + _local9);
_local13 = (_local9 + _local10);
_local19 = ((_local11 - _local13) * 0.382683433);
_local16 = ((0.5411961 * _local11) + _local19);
_local18 = ((1.306562965 * _local13) + _local19);
_local17 = (_local12 * 0.707106781);
_local20 = (_local10 + _local17);
_local21 = (_local10 - _local17);
_arg1[(_local23 + 5)] = (_local21 + _local16);
_arg1[(_local23 + 3)] = (_local21 - _local16);
_arg1[(_local23 + 1)] = (_local20 + _local18);
_arg1[(_local23 + 7)] = (_local20 - _local18);
_local23 = (_local23 + 8);
_local22++;
};
_local23 = 0;
_local22 = 0;
while (_local22 < 8) {
_local3 = (_arg1[(_local23 + 0)] + _arg1[(_local23 + 56)]);
_local10 = (_arg1[(_local23 + 0)] - _arg1[(_local23 + 56)]);
_local4 = (_arg1[(_local23 + 8)] + _arg1[(_local23 + 48)]);
_local9 = (_arg1[(_local23 + 8)] - _arg1[(_local23 + 48)]);
_local5 = (_arg1[(_local23 + 16)] + _arg1[(_local23 + 40)]);
_local8 = (_arg1[(_local23 + 16)] - _arg1[(_local23 + 40)]);
_local6 = (_arg1[(_local23 + 24)] + _arg1[(_local23 + 32)]);
_local7 = (_arg1[(_local23 + 24)] - _arg1[(_local23 + 32)]);
_local11 = (_local3 + _local6);
_local14 = (_local3 - _local6);
_local12 = (_local4 + _local5);
_local13 = (_local4 - _local5);
_arg1[(_local23 + 0)] = (_local11 + _local12);
_arg1[(_local23 + 32)] = (_local11 - _local12);
_local15 = ((_local13 + _local14) * 0.707106781);
_arg1[(_local23 + 16)] = (_local14 + _local15);
_arg1[(_local23 + 48)] = (_local14 - _local15);
_local11 = (_local7 + _local8);
_local12 = (_local8 + _local9);
_local13 = (_local9 + _local10);
_local19 = ((_local11 - _local13) * 0.382683433);
_local16 = ((0.5411961 * _local11) + _local19);
_local18 = ((1.306562965 * _local13) + _local19);
_local17 = (_local12 * 0.707106781);
_local20 = (_local10 + _local17);
_local21 = (_local10 - _local17);
_arg1[(_local23 + 40)] = (_local21 + _local16);
_arg1[(_local23 + 24)] = (_local21 - _local16);
_arg1[(_local23 + 8)] = (_local20 + _local18);
_arg1[(_local23 + 56)] = (_local20 - _local18);
_local23++;
_local22++;
};
_local22 = 0;
while (_local22 < 64) {
_arg1[_local22] = Math.round((_arg1[_local22] * _arg2[_local22]));
_local22++;
};
return (_arg1);
}
}
}//package com.adobe.images
Section 18
//PNGEncoder (com.adobe.images.PNGEncoder)
package com.adobe.images {
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
public class PNGEncoder {
private static var crcTableComputed:Boolean = false;
private static var crcTable:Array;
private static function writeChunk(_arg1:ByteArray, _arg2:uint, _arg3:ByteArray):void{
var _local8:uint;
var _local9:uint;
var _local10:uint;
if (!crcTableComputed){
crcTableComputed = true;
crcTable = [];
_local9 = 0;
while (_local9 < 0x0100) {
_local8 = _local9;
_local10 = 0;
while (_local10 < 8) {
if ((_local8 & 1)){
_local8 = uint((uint(3988292384) ^ uint((_local8 >>> 1))));
} else {
_local8 = uint((_local8 >>> 1));
};
_local10++;
};
crcTable[_local9] = _local8;
_local9++;
};
};
var _local4:uint;
if (_arg3 != null){
_local4 = _arg3.length;
};
_arg1.writeUnsignedInt(_local4);
var _local5:uint = _arg1.position;
_arg1.writeUnsignedInt(_arg2);
if (_arg3 != null){
_arg1.writeBytes(_arg3);
};
var _local6:uint = _arg1.position;
_arg1.position = _local5;
_local8 = 4294967295;
var _local7:int;
while (_local7 < (_local6 - _local5)) {
_local8 = uint((crcTable[((_local8 ^ _arg1.readUnsignedByte()) & uint(0xFF))] ^ uint((_local8 >>> 8))));
_local7++;
};
_local8 = uint((_local8 ^ uint(4294967295)));
_arg1.position = _local6;
_arg1.writeUnsignedInt(_local8);
}
public static function encode(_arg1:BitmapData):ByteArray{
var _local6:uint;
var _local7:int;
var _local2:ByteArray = new ByteArray();
_local2.writeUnsignedInt(2303741511);
_local2.writeUnsignedInt(218765834);
var _local3:ByteArray = new ByteArray();
_local3.writeInt(_arg1.width);
_local3.writeInt(_arg1.height);
_local3.writeUnsignedInt(134610944);
_local3.writeByte(0);
writeChunk(_local2, 1229472850, _local3);
var _local4:ByteArray = new ByteArray();
var _local5:int;
while (_local5 < _arg1.height) {
_local4.writeByte(0);
if (!_arg1.transparent){
_local7 = 0;
while (_local7 < _arg1.width) {
_local6 = _arg1.getPixel(_local7, _local5);
_local4.writeUnsignedInt(uint((((_local6 & 0xFFFFFF) << 8) | 0xFF)));
_local7++;
};
} else {
_local7 = 0;
while (_local7 < _arg1.width) {
_local6 = _arg1.getPixel32(_local7, _local5);
_local4.writeUnsignedInt(uint((((_local6 & 0xFFFFFF) << 8) | (_local6 >>> 24))));
_local7++;
};
};
_local5++;
};
_local4.compress();
writeChunk(_local2, 1229209940, _local4);
writeChunk(_local2, 1229278788, null);
return (_local2);
}
}
}//package com.adobe.images
Section 19
//JSON (com.adobe.serialization.json.JSON)
package com.adobe.serialization.json {
public class JSON {
public static function decode(_arg1:String){
var _local2:JSONDecoder = new JSONDecoder(_arg1);
return (_local2.getValue());
}
public static function encode(_arg1:Object):String{
var _local2:JSONEncoder = new JSONEncoder(_arg1);
return (_local2.getString());
}
}
}//package com.adobe.serialization.json
Section 20
//JSONDecoder (com.adobe.serialization.json.JSONDecoder)
package com.adobe.serialization.json {
public class JSONDecoder {
private var value;
private var tokenizer:JSONTokenizer;
private var token:JSONToken;
public function JSONDecoder(_arg1:String){
tokenizer = new JSONTokenizer(_arg1);
nextToken();
value = parseValue();
}
private function parseObject():Object{
var _local2:String;
var _local1:Object = new Object();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACE){
return (_local1);
};
while (true) {
if (token.type == JSONTokenType.STRING){
_local2 = String(token.value);
nextToken();
if (token.type == JSONTokenType.COLON){
nextToken();
_local1[_local2] = parseValue();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACE){
return (_local1);
};
if (token.type == JSONTokenType.COMMA){
nextToken();
} else {
tokenizer.parseError(("Expecting } or , but found " + token.value));
};
} else {
tokenizer.parseError(("Expecting : but found " + token.value));
};
} else {
tokenizer.parseError(("Expecting string but found " + token.value));
};
};
return (null);
}
private function parseValue():Object{
if (token == null){
tokenizer.parseError("Unexpected end of input");
};
switch (token.type){
case JSONTokenType.LEFT_BRACE:
return (parseObject());
case JSONTokenType.LEFT_BRACKET:
return (parseArray());
case JSONTokenType.STRING:
case JSONTokenType.NUMBER:
case JSONTokenType.TRUE:
case JSONTokenType.FALSE:
case JSONTokenType.NULL:
return (token.value);
default:
tokenizer.parseError(("Unexpected " + token.value));
};
return (null);
}
private function nextToken():JSONToken{
return ((token = tokenizer.getNextToken()));
}
public function getValue(){
return (value);
}
private function parseArray():Array{
var _local1:Array = new Array();
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACKET){
return (_local1);
};
while (true) {
_local1.push(parseValue());
nextToken();
if (token.type == JSONTokenType.RIGHT_BRACKET){
return (_local1);
};
if (token.type == JSONTokenType.COMMA){
nextToken();
} else {
tokenizer.parseError(("Expecting ] or , but found " + token.value));
};
};
return (null);
}
}
}//package com.adobe.serialization.json
Section 21
//JSONEncoder (com.adobe.serialization.json.JSONEncoder)
package com.adobe.serialization.json {
import flash.utils.*;
public class JSONEncoder {
private var jsonString:String;
public function JSONEncoder(_arg1){
jsonString = convertToString(_arg1);
}
private function escapeString(_arg1:String):String{
var _local3:String;
var _local6:String;
var _local7:String;
var _local2 = "";
var _local4:Number = _arg1.length;
var _local5:int;
while (_local5 < _local4) {
_local3 = _arg1.charAt(_local5);
switch (_local3){
case "\"":
_local2 = (_local2 + "\\\"");
break;
case "\\":
_local2 = (_local2 + "\\\\");
break;
case "\b":
_local2 = (_local2 + "\\b");
break;
case "\f":
_local2 = (_local2 + "\\f");
break;
case "\n":
_local2 = (_local2 + "\\n");
break;
case "\r":
_local2 = (_local2 + "\\r");
break;
case "\t":
_local2 = (_local2 + "\\t");
break;
default:
if (_local3 < " "){
_local6 = _local3.charCodeAt(0).toString(16);
_local7 = ((_local6.length == 2)) ? "00" : "000";
_local2 = (_local2 + (("\\u" + _local7) + _local6));
} else {
_local2 = (_local2 + _local3);
};
};
_local5++;
};
return ((("\"" + _local2) + "\""));
}
private function arrayToString(_arg1:Array):String{
var _local2 = "";
var _local3:int;
while (_local3 < _arg1.length) {
if (_local2.length > 0){
_local2 = (_local2 + ",");
};
_local2 = (_local2 + convertToString(_arg1[_local3]));
_local3++;
};
return ((("[" + _local2) + "]"));
}
public function getString():String{
return (jsonString);
}
private function objectToString(_arg1:Object):String{
var value:Object;
var key:String;
var v:XML;
var o = _arg1;
var s = "";
var classInfo:XML = describeType(o);
if (classInfo.@name.toString() == "Object"){
for (key in o) {
value = o[key];
if ((value is Function)){
} else {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(key) + ":") + convertToString(value)));
};
};
} else {
for each (v in classInfo..*.(((name() == "variable")) || ((name() == "accessor")))) {
if (s.length > 0){
s = (s + ",");
};
s = (s + ((escapeString(v.@name.toString()) + ":") + convertToString(o[v.@name])));
};
};
return ((("{" + s) + "}"));
}
private function convertToString(_arg1):String{
if ((_arg1 is String)){
return (escapeString((_arg1 as String)));
};
if ((_arg1 is Number)){
return ((isFinite((_arg1 as Number))) ? _arg1.toString() : "null");
} else {
if ((_arg1 is Boolean)){
return ((_arg1) ? "true" : "false");
} else {
if ((_arg1 is Array)){
return (arrayToString((_arg1 as Array)));
};
if ((((_arg1 is Object)) && (!((_arg1 == null))))){
return (objectToString(_arg1));
};
};
};
return ("null");
}
}
}//package com.adobe.serialization.json
Section 22
//JSONParseError (com.adobe.serialization.json.JSONParseError)
package com.adobe.serialization.json {
public class JSONParseError extends Error {
private var _location:int;
private var _text:String;
public function JSONParseError(_arg1:String="", _arg2:int=0, _arg3:String=""){
super(_arg1);
name = "JSONParseError";
_location = _arg2;
_text = _arg3;
}
public function get location():int{
return (_location);
}
public function get text():String{
return (_text);
}
}
}//package com.adobe.serialization.json
Section 23
//JSONToken (com.adobe.serialization.json.JSONToken)
package com.adobe.serialization.json {
public class JSONToken {
private var _value:Object;
private var _type:int;
public function JSONToken(_arg1:int=-1, _arg2:Object=null){
_type = _arg1;
_value = _arg2;
}
public function get value():Object{
return (_value);
}
public function get type():int{
return (_type);
}
public function set type(_arg1:int):void{
_type = _arg1;
}
public function set value(_arg1:Object):void{
_value = _arg1;
}
}
}//package com.adobe.serialization.json
Section 24
//JSONTokenizer (com.adobe.serialization.json.JSONTokenizer)
package com.adobe.serialization.json {
public class JSONTokenizer {
private var loc:int;
private var ch:String;
private var obj:Object;
private var jsonString:String;
public function JSONTokenizer(_arg1:String){
jsonString = _arg1;
loc = 0;
nextChar();
}
private function skipComments():void{
if (ch == "/"){
nextChar();
switch (ch){
case "/":
do {
nextChar();
} while (((!((ch == "\n"))) && (!((ch == "")))));
nextChar();
break;
case "*":
nextChar();
while (true) {
if (ch == "*"){
nextChar();
if (ch == "/"){
nextChar();
break;
};
} else {
nextChar();
};
if (ch == ""){
parseError("Multi-line comment not closed");
};
};
break;
default:
parseError((("Unexpected " + ch) + " encountered (expecting '/' or '*' )"));
};
};
}
private function isDigit(_arg1:String):Boolean{
return ((((_arg1 >= "0")) && ((_arg1 <= "9"))));
}
private function readString():JSONToken{
var _local3:String;
var _local4:int;
var _local1:JSONToken = new JSONToken();
_local1.type = JSONTokenType.STRING;
var _local2 = "";
nextChar();
while (((!((ch == "\""))) && (!((ch == ""))))) {
if (ch == "\\"){
nextChar();
switch (ch){
case "\"":
_local2 = (_local2 + "\"");
break;
case "/":
_local2 = (_local2 + "/");
break;
case "\\":
_local2 = (_local2 + "\\");
break;
case "b":
_local2 = (_local2 + "\b");
break;
case "f":
_local2 = (_local2 + "\f");
break;
case "n":
_local2 = (_local2 + "\n");
break;
case "r":
_local2 = (_local2 + "\r");
break;
case "t":
_local2 = (_local2 + "\t");
break;
case "u":
_local3 = "";
_local4 = 0;
while (_local4 < 4) {
if (!isHexDigit(nextChar())){
parseError((" Excepted a hex digit, but found: " + ch));
};
_local3 = (_local3 + ch);
_local4++;
};
_local2 = (_local2 + String.fromCharCode(parseInt(_local3, 16)));
break;
default:
_local2 = (_local2 + ("\\" + ch));
};
} else {
_local2 = (_local2 + ch);
};
nextChar();
};
if (ch == ""){
parseError("Unterminated string literal");
};
nextChar();
_local1.value = _local2;
return (_local1);
}
private function nextChar():String{
return ((ch = jsonString.charAt(loc++)));
}
public function getNextToken():JSONToken{
var _local2:String;
var _local3:String;
var _local4:String;
var _local1:JSONToken = new JSONToken();
skipIgnored();
switch (ch){
case "{":
_local1.type = JSONTokenType.LEFT_BRACE;
_local1.value = "{";
nextChar();
break;
case "}":
_local1.type = JSONTokenType.RIGHT_BRACE;
_local1.value = "}";
nextChar();
break;
case "[":
_local1.type = JSONTokenType.LEFT_BRACKET;
_local1.value = "[";
nextChar();
break;
case "]":
_local1.type = JSONTokenType.RIGHT_BRACKET;
_local1.value = "]";
nextChar();
break;
case ",":
_local1.type = JSONTokenType.COMMA;
_local1.value = ",";
nextChar();
break;
case ":":
_local1.type = JSONTokenType.COLON;
_local1.value = ":";
nextChar();
break;
case "t":
_local2 = ((("t" + nextChar()) + nextChar()) + nextChar());
if (_local2 == "true"){
_local1.type = JSONTokenType.TRUE;
_local1.value = true;
nextChar();
} else {
parseError(("Expecting 'true' but found " + _local2));
};
break;
case "f":
_local3 = (((("f" + nextChar()) + nextChar()) + nextChar()) + nextChar());
if (_local3 == "false"){
_local1.type = JSONTokenType.FALSE;
_local1.value = false;
nextChar();
} else {
parseError(("Expecting 'false' but found " + _local3));
};
break;
case "n":
_local4 = ((("n" + nextChar()) + nextChar()) + nextChar());
if (_local4 == "null"){
_local1.type = JSONTokenType.NULL;
_local1.value = null;
nextChar();
} else {
parseError(("Expecting 'null' but found " + _local4));
};
break;
case "\"":
_local1 = readString();
break;
default:
if (((isDigit(ch)) || ((ch == "-")))){
_local1 = readNumber();
} else {
if (ch == ""){
return (null);
};
parseError((("Unexpected " + ch) + " encountered"));
};
};
return (_local1);
}
private function skipWhite():void{
while (isWhiteSpace(ch)) {
nextChar();
};
}
public function parseError(_arg1:String):void{
throw (new JSONParseError(_arg1, loc, jsonString));
}
private function isWhiteSpace(_arg1:String):Boolean{
return ((((((((_arg1 == " ")) || ((_arg1 == "\t")))) || ((_arg1 == "\n")))) || ((_arg1 == "\r"))));
}
private function skipIgnored():void{
var _local1:int;
do {
_local1 = loc;
skipWhite();
skipComments();
} while (_local1 != loc);
}
private function isHexDigit(_arg1:String):Boolean{
var _local2:String = _arg1.toUpperCase();
return (((isDigit(_arg1)) || ((((_local2 >= "A")) && ((_local2 <= "F"))))));
}
private function readNumber():JSONToken{
var _local1:JSONToken = new JSONToken();
_local1.type = JSONTokenType.NUMBER;
var _local2 = "";
if (ch == "-"){
_local2 = (_local2 + "-");
nextChar();
};
if (!isDigit(ch)){
parseError("Expecting a digit");
};
if (ch == "0"){
_local2 = (_local2 + ch);
nextChar();
if (isDigit(ch)){
parseError("A digit cannot immediately follow 0");
};
} else {
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
if (ch == "."){
_local2 = (_local2 + ".");
nextChar();
if (!isDigit(ch)){
parseError("Expecting a digit");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
if ((((ch == "e")) || ((ch == "E")))){
_local2 = (_local2 + "e");
nextChar();
if ((((ch == "+")) || ((ch == "-")))){
_local2 = (_local2 + ch);
nextChar();
};
if (!isDigit(ch)){
parseError("Scientific notation number needs exponent value");
};
while (isDigit(ch)) {
_local2 = (_local2 + ch);
nextChar();
};
};
var _local3:Number = Number(_local2);
if (((isFinite(_local3)) && (!(isNaN(_local3))))){
_local1.value = _local3;
return (_local1);
};
parseError((("Number " + _local3) + " is not valid!"));
return (null);
}
}
}//package com.adobe.serialization.json
Section 25
//JSONTokenType (com.adobe.serialization.json.JSONTokenType)
package com.adobe.serialization.json {
public class JSONTokenType {
public static const NUMBER:int = 11;
public static const FALSE:int = 8;
public static const RIGHT_BRACKET:int = 4;
public static const NULL:int = 9;
public static const TRUE:int = 7;
public static const RIGHT_BRACE:int = 2;
public static const UNKNOWN:int = -1;
public static const COMMA:int = 0;
public static const LEFT_BRACKET:int = 3;
public static const STRING:int = 10;
public static const LEFT_BRACE:int = 1;
public static const COLON:int = 6;
}
}//package com.adobe.serialization.json
Section 26
//IntUtil (com.adobe.utils.IntUtil)
package com.adobe.utils {
public class IntUtil {
private static var hexChars:String = "0123456789abcdef";
public static function toHex(_arg1:int, _arg2:Boolean=false):String{
var _local4:int;
var _local5:int;
var _local3 = "";
if (_arg2){
_local4 = 0;
while (_local4 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15))));
_local4++;
};
} else {
_local5 = 0;
while (_local5 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15))));
_local5++;
};
};
return (_local3);
}
public static function ror(_arg1:int, _arg2:int):uint{
var _local3:int = (32 - _arg2);
return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3))));
}
public static function rol(_arg1:int, _arg2:int):int{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
}
}//package com.adobe.utils
Section 27
//MathUtils (com.cheezeworld.math.MathUtils)
package com.cheezeworld.math {
public class MathUtils {
public static const DEG_TO_RAD:Number = (Math.PI / 180);
public static const RAD_TO_DEG:Number = (180 / Math.PI);
public static function simplifyRadian(_arg1:Number):Number{
var _local2:Number;
if ((((_arg1 > Math.PI)) || ((_arg1 < -(Math.PI))))){
_local2 = (_arg1 - (int((_arg1 / (Math.PI * 2))) * (Math.PI * 2)));
if (_arg1 > 0){
if (_local2 < Math.PI){
return (_local2);
};
_local2 = -(((Math.PI * 2) - _local2));
return (_local2);
} else {
if (_local2 > -(Math.PI)){
return (_local2);
};
_local2 = ((Math.PI * 2) + _local2);
return (_local2);
};
};
return (_arg1);
}
public static function getSmallestRotationDirection(_arg1:Number, _arg2:Number, _arg3:Number=0):int{
_arg1 = simplifyRadian(_arg1);
_arg2 = simplifyRadian(_arg2);
_arg2 = (_arg2 + -(_arg1));
_arg2 = simplifyRadian(_arg2);
_arg1 = 0;
if (_arg2 < -(_arg3)){
return (-1);
};
if (_arg2 > _arg3){
return (1);
};
return (0);
}
public static function rand(_arg1:int, _arg2:int):int{
return ((_arg1 + Math.floor((Math.random() * ((_arg2 - _arg1) + 1)))));
}
public static function calcAngle(_arg1:Vector2D, _arg2:Vector2D):Number{
var _local3:Number = (Math.atan(((_arg2.y - _arg1.y) / (_arg2.x - _arg1.x))) * RAD_TO_DEG);
if ((((_arg2.y < _arg1.y)) && ((_arg2.x > _arg1.x)))){
return (_local3);
};
if ((((((_arg2.y < _arg1.y)) && ((_arg2.x < _arg1.x)))) || ((((_arg2.y > _arg1.y)) && ((_arg2.x < _arg1.x)))))){
return ((_local3 + 180));
};
return ((_local3 + 360));
}
}
}//package com.cheezeworld.math
Section 28
//Vector2D (com.cheezeworld.math.Vector2D)
package com.cheezeworld.math {
import flash.geom.*;
public class Vector2D {
private var v2:Vector2D;
private var _length:Number;
private var _oldX:Number;
private var v1:Vector2D;
private var _oldY:Number;
public var x:Number;
public var y:Number;
private static const DEG_TO_RAD:Number = (Math.PI / 180);
private static const RAD_TO_DEG:Number = (180 / Math.PI);
public function Vector2D(_arg1:Number=0, _arg2:Number=0){
x = _arg1;
y = _arg2;
_length = 0;
}
public function divide(_arg1:Number):void{
if (_arg1 == 0){
trace("Vector::dividedBy() - Illegal Divide by Zero!");
} else {
x = (x / _arg1);
y = (y / _arg1);
};
}
public function isZero():Boolean{
return ((((x == 0)) || ((y == 0))));
}
public function Set(_arg1:Number, _arg2:Number):void{
this.x = _arg1;
this.y = _arg2;
}
public function sign(_arg1:Vector2D):int{
if ((y * _arg1.x) > (x * _arg1.y)){
return (-1);
};
return (1);
}
public function dotOf(_arg1:Vector2D):Number{
return (((x * _arg1.x) + (y * _arg1.y)));
}
public function dividedBy(_arg1:Number):Vector2D{
if (_arg1 == 0){
trace("Vector::dividedBy() - Illegal Divide by Zero!");
return (new Vector2D());
};
return (new Vector2D((x / _arg1), (y / _arg1)));
}
public function normalize():void{
if (length != 0){
x = (x / _length);
y = (y / _length);
};
}
public function isParallelTo(_arg1:Vector2D):Boolean{
v1 = copy();
v1.normalize();
v2 = _arg1.copy();
v2.normalize();
return ((((((v1.x == v2.x)) && ((v1.y == v2.y)))) || ((((v1.x == -(v2.x))) && ((v1.y == -(v2.y)))))));
}
public function distanceTo(_arg1:Vector2D):Number{
var _local2:Number = (_arg1.x - x);
var _local3:Number = (_arg1.y - y);
return (Math.sqrt(((_local3 * _local3) + (_local2 * _local2))));
}
public function subtract(_arg1:Vector2D):void{
x = (x - _arg1.x);
y = (y - _arg1.y);
}
public function toPoint():Point{
return (new Point(x, y));
}
public function toRotation():Number{
var _local1:Number = (Math.atan((y / x)) * RAD_TO_DEG);
if ((((y < 0)) && ((x > 0)))){
return (_local1);
};
if ((((((y < 0)) && ((x < 0)))) || ((((y > 0)) && ((x < 0)))))){
return ((_local1 + 180));
};
return ((_local1 + 360));
}
public function isInsideRegion(_arg1:Vector2D, _arg2:Vector2D):Boolean{
return (!((((((((x < _arg1.x)) || ((x > (_arg1.x + _arg2.x))))) || ((y < _arg1.y)))) || ((y > (_arg1.y + _arg2.y))))));
}
public function addedTo(_arg1:Vector2D):Vector2D{
return (new Vector2D((x + _arg1.x), (y + _arg1.y)));
}
public function perpDotOf(_arg1:Vector2D):Number{
return (getPerp().dotOf(_arg1));
}
public function projectionOn(_arg1:Vector2D):Vector2D{
v1 = _arg1.copy();
v1.multiply((this.dotOf(_arg1) / _arg1.dotOf(_arg1)));
return (v1);
}
public function distanceSqTo(_arg1:Vector2D):Number{
var _local2:Number = (_arg1.y - y);
var _local3:Number = (_arg1.x - x);
return (((_local3 * _local3) + (_local2 * _local2)));
}
public function get lengthSq():Number{
return (((x * x) + (y * y)));
}
public function get length():Number{
if (((!((_oldX == x))) || (!((_oldY == y))))){
_oldX = x;
_oldY = y;
_length = Math.sqrt(((x * x) + (y * y)));
};
return (_length);
}
public function getPerp():Vector2D{
return (new Vector2D(-(y), x));
}
public function subtractedBy(_arg1:Vector2D):Vector2D{
return (new Vector2D((x - _arg1.x), (y - _arg1.y)));
}
public function multiply(_arg1:Number):void{
x = (x * _arg1);
y = (y * _arg1);
}
public function toString():String{
return ((((("(" + x) + ",") + y) + ")"));
}
public function truncate(_arg1:Number):void{
if (lengthSq > (_arg1 * _arg1)){
normalize();
multiply(_arg1);
};
}
public function angleTo(_arg1:Vector2D):Number{
return (Math.acos((dotOf(_arg1) / (length * _arg1.length))));
}
public function multipliedBy(_arg1:Number):Vector2D{
return (new Vector2D((x * _arg1), (y * _arg1)));
}
public function getNormalized():Vector2D{
if (length == 0){
return (new Vector2D());
};
return (new Vector2D((x / _length), (y / _length)));
}
public function copy():Vector2D{
var _local1:Vector2D = new Vector2D(x, y);
_local1._length = _length;
_local1._oldX = x;
_local1._oldY = y;
return (_local1);
}
public function wrapAround(_arg1:Vector2D, _arg2:Vector2D):void{
if (x > _arg2.x){
x = (_arg1.x + (x - _arg2.x));
} else {
if (x < _arg1.x){
x = (_arg2.x + x);
};
};
if (y < _arg1.y){
y = (_arg2.y + y);
} else {
if (y > _arg2.y){
y = (_arg1.y + (y - _arg2.y));
};
};
}
public function getReverse():Vector2D{
return (new Vector2D(-(x), -(y)));
}
public function addTo(_arg1:Vector2D):void{
x = (x + _arg1.x);
y = (y + _arg1.y);
}
public function reflect(_arg1:Vector2D):void{
v1 = _arg1.getReverse();
v1.multiply((2 * dotOf(_arg1)));
addTo(v1);
}
public function crossOf(_arg1:Vector2D):Number{
return (((x * _arg1.y) - (y * _arg1.x)));
}
public static function rotToHeading(_arg1:Number):Vector2D{
var _local2:Number = (_arg1 * DEG_TO_RAD);
var _local3:Number = Math.cos(_local2);
var _local4:Number = Math.sin(_local2);
return (new Vector2D(_local3, _local4));
}
public static function is2ndInFOVof1st(_arg1:Vector2D, _arg2:Vector2D, _arg3:Number, _arg4:Vector2D):Boolean{
var _local5:Vector2D = _arg4.copy();
_local5.subtract(_arg1);
_local5.normalize();
return ((_arg2.dotOf(_local5) >= Math.cos((_arg3 / 2))));
}
public static function pointToVector(_arg1:Point):Vector2D{
return (new Vector2D(_arg1.x, _arg1.y));
}
}
}//package com.cheezeworld.math
Section 29
//CreateToken (com.facebook.commands.auth.CreateToken)
package com.facebook.commands.auth {
import com.facebook.net.*;
public class CreateToken extends FacebookCall {
public static const SCHEMA:Array = [];
public static const METHOD_NAME:String = "auth.createToken";
public function CreateToken(){
super(METHOD_NAME);
}
}
}//package com.facebook.commands.auth
Section 30
//ExpireSession (com.facebook.commands.auth.ExpireSession)
package com.facebook.commands.auth {
import com.facebook.net.*;
public class ExpireSession extends FacebookCall {
public static const SCHEMA:Array = [];
public static const METHOD_NAME:String = "auth.expireSession";
public function ExpireSession(){
super(METHOD_NAME);
}
}
}//package com.facebook.commands.auth
Section 31
//GetSession (com.facebook.commands.auth.GetSession)
package com.facebook.commands.auth {
import com.facebook.net.*;
import com.facebook.*;
public class GetSession extends FacebookCall {
public var auth_token:String;
public static const SCHEMA:Array = ["auth_token"];
public static const METHOD_NAME:String = "auth.getSession";
public function GetSession(_arg1:String){
super(METHOD_NAME);
this.auth_token = _arg1;
}
override facebook_internal function initialize():void{
applySchema(SCHEMA, auth_token);
super.initialize();
}
}
}//package com.facebook.commands.auth
Section 32
//GetCookiesData (com.facebook.commands.data.GetCookiesData)
package com.facebook.commands.data {
import com.facebook.data.*;
public class GetCookiesData extends FacebookData {
public var uid:String;
public var value:String;
public var expires:Number;
public var path:String;
public var name:String;
}
}//package com.facebook.commands.data
Section 33
//UploadPhoto (com.facebook.commands.photos.UploadPhoto)
package com.facebook.commands.photos {
import com.facebook.net.*;
import com.facebook.data.photos.*;
import com.facebook.*;
public class UploadPhoto extends FacebookCall {
public var caption:String;
public var data:Object;
public var uid:String;
public var uploadedPhoto:FacebookPhoto;
public var uploadType:String;// = "png"
public var aid:String;
public var uploadQuality:uint;// = 80
public static const SCHEMA:Array = ["data", "aid", "caption", "uid"];
public static const METHOD_NAME:String = "photos.upload";
public function UploadPhoto(_arg1:Object=null, _arg2:String=null, _arg3:String=null, _arg4:String=null){
super(METHOD_NAME);
this.data = _arg1;
this.aid = _arg2;
this.caption = _arg3;
this.uid = _arg4;
}
override facebook_internal function initialize():void{
applySchema(SCHEMA, data, aid, caption, uid);
super.initialize();
}
}
}//package com.facebook.commands.photos
Section 34
//UploadPhotoTypes (com.facebook.commands.photos.UploadPhotoTypes)
package com.facebook.commands.photos {
public class UploadPhotoTypes {
public static const JPEG:String = "jpeg";
public static const PNG:String = "png";
}
}//package com.facebook.commands.photos
Section 35
//GetInfo (com.facebook.commands.users.GetInfo)
package com.facebook.commands.users {
import com.facebook.net.*;
import com.facebook.utils.*;
import com.facebook.*;
public class GetInfo extends FacebookCall {
public var fields:Array;
public var uids:Array;
public static const SCHEMA:Array = ["uids", "fields"];
public static const METHOD_NAME:String = "users.getInfo";
public function GetInfo(_arg1:Array, _arg2:Array){
super(METHOD_NAME);
this.uids = _arg1;
this.fields = _arg2;
}
override facebook_internal function initialize():void{
applySchema(SCHEMA, FacebookDataUtils.toArrayString(uids), FacebookDataUtils.toArrayString(fields));
super.initialize();
}
}
}//package com.facebook.commands.users
Section 36
//GetLoggedInUser (com.facebook.commands.users.GetLoggedInUser)
package com.facebook.commands.users {
import com.facebook.net.*;
public class GetLoggedInUser extends FacebookCall {
public static const SCHEMA:Array = [];
public static const METHOD_NAME:String = "users.getLoggedInUser";
public function GetLoggedInUser(){
super(METHOD_NAME);
}
}
}//package com.facebook.commands.users
Section 37
//GetAllocationData (com.facebook.data.admin.GetAllocationData)
package com.facebook.data.admin {
import com.facebook.data.*;
import mx.events.*;
public class GetAllocationData extends FacebookData {
private var _376596805allocationLimit:Number;
public function get allocationLimit():Number{
return (this._376596805allocationLimit);
}
public function set allocationLimit(_arg1:Number):void{
var _local2:Object = this._376596805allocationLimit;
if (_local2 !== _arg1){
this._376596805allocationLimit = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "allocationLimit", _local2, _arg1));
};
}
}
}//package com.facebook.data.admin
Section 38
//GetAppPropertiesData (com.facebook.data.admin.GetAppPropertiesData)
package com.facebook.data.admin {
import com.facebook.data.*;
import mx.events.*;
public class GetAppPropertiesData extends FacebookData {
private var _554397236appProperties:Array;
public function set appProperties(_arg1:Array):void{
var _local2:Object = this._554397236appProperties;
if (_local2 !== _arg1){
this._554397236appProperties = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "appProperties", _local2, _arg1));
};
}
public function get appProperties():Array{
return (this._554397236appProperties);
}
}
}//package com.facebook.data.admin
Section 39
//GetMetricsData (com.facebook.data.admin.GetMetricsData)
package com.facebook.data.admin {
import com.facebook.data.*;
import mx.events.*;
public class GetMetricsData extends FacebookData {
private var _1648653249metricsCollection:MetricsDataCollection;
public function get metricsCollection():MetricsDataCollection{
return (this._1648653249metricsCollection);
}
public function set metricsCollection(_arg1:MetricsDataCollection):void{
var _local2:Object = this._1648653249metricsCollection;
if (_local2 !== _arg1){
this._1648653249metricsCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "metricsCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.admin
Section 40
//MetricsData (com.facebook.data.admin.MetricsData)
package com.facebook.data.admin {
import flash.events.*;
import mx.events.*;
public class MetricsData implements IEventDispatcher {
private var _1725551537end_time:Date;
private var _1769771919active_users:Number;
private var _bindingEventDispatcher:EventDispatcher;
private var _652996091canvas_page_views:Number;
public function MetricsData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get canvas_page_views():Number{
return (this._652996091canvas_page_views);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set end_time(_arg1:Date):void{
var _local2:Object = this._1725551537end_time;
if (_local2 !== _arg1){
this._1725551537end_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_time", _local2, _arg1));
};
}
public function set canvas_page_views(_arg1:Number):void{
var _local2:Object = this._652996091canvas_page_views;
if (_local2 !== _arg1){
this._652996091canvas_page_views = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "canvas_page_views", _local2, _arg1));
};
}
public function get active_users():Number{
return (this._1769771919active_users);
}
public function get end_time():Date{
return (this._1725551537end_time);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set active_users(_arg1:Number):void{
var _local2:Object = this._1769771919active_users;
if (_local2 !== _arg1){
this._1769771919active_users = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "active_users", _local2, _arg1));
};
}
}
}//package com.facebook.data.admin
Section 41
//MetricsDataCollection (com.facebook.data.admin.MetricsDataCollection)
package com.facebook.data.admin {
import com.facebook.utils.*;
public class MetricsDataCollection extends FacebookArrayCollection {
public function MetricsDataCollection(){
super(null, MetricsData);
}
}
}//package com.facebook.data.admin
Section 42
//GetPublicInfoData (com.facebook.data.application.GetPublicInfoData)
package com.facebook.data.application {
import com.facebook.data.*;
import mx.events.*;
public class GetPublicInfoData extends FacebookData {
private var _737588055icon_url:String;
private var _1793855977developers:String;
private var _1615086568display_name:String;
private var _1872800494canvas_name:String;
private var _1724546052description:String;
private var _2027875547logo_url:String;
private var _171158145monthly_active_users:Number;
private var _1429880077company_name:String;
private var _650176883weekly_active_users:Number;
private var _800085318api_key:String;
private var _1411074055app_id:String;
private var _1957597173daily_active_users:Number;
public function set app_id(_arg1:String):void{
var _local2:Object = this._1411074055app_id;
if (_local2 !== _arg1){
this._1411074055app_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "app_id", _local2, _arg1));
};
}
public function set monthly_active_users(_arg1:Number):void{
var _local2:Object = this._171158145monthly_active_users;
if (_local2 !== _arg1){
this._171158145monthly_active_users = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "monthly_active_users", _local2, _arg1));
};
}
public function set api_key(_arg1:String):void{
var _local2:Object = this._800085318api_key;
if (_local2 !== _arg1){
this._800085318api_key = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "api_key", _local2, _arg1));
};
}
public function get monthly_active_users():Number{
return (this._171158145monthly_active_users);
}
public function get developers():String{
return (this._1793855977developers);
}
public function set display_name(_arg1:String):void{
var _local2:Object = this._1615086568display_name;
if (_local2 !== _arg1){
this._1615086568display_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "display_name", _local2, _arg1));
};
}
public function set company_name(_arg1:String):void{
var _local2:Object = this._1429880077company_name;
if (_local2 !== _arg1){
this._1429880077company_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_name", _local2, _arg1));
};
}
public function get company_name():String{
return (this._1429880077company_name);
}
public function set developers(_arg1:String):void{
var _local2:Object = this._1793855977developers;
if (_local2 !== _arg1){
this._1793855977developers = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "developers", _local2, _arg1));
};
}
public function get logo_url():String{
return (this._2027875547logo_url);
}
public function get weekly_active_users():Number{
return (this._650176883weekly_active_users);
}
public function get description():String{
return (this._1724546052description);
}
public function set weekly_active_users(_arg1:Number):void{
var _local2:Object = this._650176883weekly_active_users;
if (_local2 !== _arg1){
this._650176883weekly_active_users = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "weekly_active_users", _local2, _arg1));
};
}
public function get canvas_name():String{
return (this._1872800494canvas_name);
}
public function set canvas_name(_arg1:String):void{
var _local2:Object = this._1872800494canvas_name;
if (_local2 !== _arg1){
this._1872800494canvas_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "canvas_name", _local2, _arg1));
};
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get icon_url():String{
return (this._737588055icon_url);
}
public function set icon_url(_arg1:String):void{
var _local2:Object = this._737588055icon_url;
if (_local2 !== _arg1){
this._737588055icon_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon_url", _local2, _arg1));
};
}
public function get display_name():String{
return (this._1615086568display_name);
}
public function set daily_active_users(_arg1:Number):void{
var _local2:Object = this._1957597173daily_active_users;
if (_local2 !== _arg1){
this._1957597173daily_active_users = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "daily_active_users", _local2, _arg1));
};
}
public function get daily_active_users():Number{
return (this._1957597173daily_active_users);
}
public function get app_id():String{
return (this._1411074055app_id);
}
public function get api_key():String{
return (this._800085318api_key);
}
public function set logo_url(_arg1:String):void{
var _local2:Object = this._2027875547logo_url;
if (_local2 !== _arg1){
this._2027875547logo_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "logo_url", _local2, _arg1));
};
}
}
}//package com.facebook.data.application
Section 43
//GetSessionData (com.facebook.data.auth.GetSessionData)
package com.facebook.data.auth {
import com.facebook.data.*;
import mx.events.*;
public class GetSessionData extends FacebookData {
private var _1309235404expires:Date;
private var _22145738session_key:String;
private var _906277200secret:String;
private var _115792uid:String;
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function set expires(_arg1:Date):void{
var _local2:Object = this._1309235404expires;
if (_local2 !== _arg1){
this._1309235404expires = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "expires", _local2, _arg1));
};
}
public function set secret(_arg1:String):void{
var _local2:Object = this._906277200secret;
if (_local2 !== _arg1){
this._906277200secret = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "secret", _local2, _arg1));
};
}
public function get expires():Date{
return (this._1309235404expires);
}
public function get uid():String{
return (this._115792uid);
}
public function set session_key(_arg1:String):void{
var _local2:Object = this._22145738session_key;
if (_local2 !== _arg1){
this._22145738session_key = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "session_key", _local2, _arg1));
};
}
public function get session_key():String{
return (this._22145738session_key);
}
public function get secret():String{
return (this._906277200secret);
}
}
}//package com.facebook.data.auth
Section 44
//BatchResult (com.facebook.data.batch.BatchResult)
package com.facebook.data.batch {
import com.facebook.data.*;
import mx.events.*;
public class BatchResult extends FacebookData {
private var _1097546742results:Array;
public function set results(_arg1:Array):void{
var _local2:Object = this._1097546742results;
if (_local2 !== _arg1){
this._1097546742results = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "results", _local2, _arg1));
};
}
public function get results():Array{
return (this._1097546742results);
}
}
}//package com.facebook.data.batch
Section 45
//GetObjectTypeData (com.facebook.data.data.GetObjectTypeData)
package com.facebook.data.data {
import com.facebook.data.*;
import mx.events.*;
public class GetObjectTypeData extends FacebookData {
private var _747164295index_type:Number;
private var _3373707name:String;
private var _363359569data_type:Number;
public function get index_type():Number{
return (this._747164295index_type);
}
public function get name():String{
return (this._3373707name);
}
public function get data_type():Number{
return (this._363359569data_type);
}
public function set index_type(_arg1:Number):void{
var _local2:Object = this._747164295index_type;
if (_local2 !== _arg1){
this._747164295index_type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "index_type", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set data_type(_arg1:Number):void{
var _local2:Object = this._363359569data_type;
if (_local2 !== _arg1){
this._363359569data_type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "data_type", _local2, _arg1));
};
}
}
}//package com.facebook.data.data
Section 46
//GetObjectTypesData (com.facebook.data.data.GetObjectTypesData)
package com.facebook.data.data {
import com.facebook.data.*;
import mx.events.*;
public class GetObjectTypesData extends FacebookData {
private var _1481977495objectTypeCollection:ObjectTypesCollection;
public function set objectTypeCollection(_arg1:ObjectTypesCollection):void{
var _local2:Object = this._1481977495objectTypeCollection;
if (_local2 !== _arg1){
this._1481977495objectTypeCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "objectTypeCollection", _local2, _arg1));
};
}
public function get objectTypeCollection():ObjectTypesCollection{
return (this._1481977495objectTypeCollection);
}
}
}//package com.facebook.data.data
Section 47
//GetUserPreferencesData (com.facebook.data.data.GetUserPreferencesData)
package com.facebook.data.data {
import com.facebook.data.*;
import mx.events.*;
public class GetUserPreferencesData extends FacebookData {
private var _1984973153perferenceCollection:PreferenceCollection;
public function set perferenceCollection(_arg1:PreferenceCollection):void{
var _local2:Object = this._1984973153perferenceCollection;
if (_local2 !== _arg1){
this._1984973153perferenceCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "perferenceCollection", _local2, _arg1));
};
}
public function get perferenceCollection():PreferenceCollection{
return (this._1984973153perferenceCollection);
}
}
}//package com.facebook.data.data
Section 48
//ObjectTypesCollection (com.facebook.data.data.ObjectTypesCollection)
package com.facebook.data.data {
import com.facebook.utils.*;
public class ObjectTypesCollection extends FacebookArrayCollection {
public function ObjectTypesCollection(){
super(null, ObjectTypesData);
}
}
}//package com.facebook.data.data
Section 49
//ObjectTypesData (com.facebook.data.data.ObjectTypesData)
package com.facebook.data.data {
import flash.events.*;
import mx.events.*;
public class ObjectTypesData implements IEventDispatcher {
private var _3373707name:String;
private var _953875336object_class:String;
private var _bindingEventDispatcher:EventDispatcher;
public function ObjectTypesData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set object_class(_arg1:String):void{
var _local2:Object = this._953875336object_class;
if (_local2 !== _arg1){
this._953875336object_class = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "object_class", _local2, _arg1));
};
}
public function get object_class():String{
return (this._953875336object_class);
}
}
}//package com.facebook.data.data
Section 50
//PreferenceCollection (com.facebook.data.data.PreferenceCollection)
package com.facebook.data.data {
import com.facebook.utils.*;
public class PreferenceCollection extends FacebookArrayCollection {
public function PreferenceCollection(){
super(null, PreferenceData);
}
}
}//package com.facebook.data.data
Section 51
//PreferenceData (com.facebook.data.data.PreferenceData)
package com.facebook.data.data {
import flash.events.*;
import mx.events.*;
public class PreferenceData implements IEventDispatcher {
private var _111972721value:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _318670665pref_id:Number;
public function PreferenceData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set value(_arg1:String):void{
var _local2:Object = this._111972721value;
if (_local2 !== _arg1){
this._111972721value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set pref_id(_arg1:Number):void{
var _local2:Object = this._318670665pref_id;
if (_local2 !== _arg1){
this._318670665pref_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pref_id", _local2, _arg1));
};
}
public function get value():String{
return (this._111972721value);
}
public function get pref_id():Number{
return (this._318670665pref_id);
}
}
}//package com.facebook.data.data
Section 52
//EventCollection (com.facebook.data.events.EventCollection)
package com.facebook.data.events {
import com.facebook.utils.*;
public class EventCollection extends FacebookArrayCollection {
public function EventCollection(){
super(null, EventData);
}
}
}//package com.facebook.data.events
Section 53
//EventData (com.facebook.data.events.EventData)
package com.facebook.data.events {
import flash.events.*;
import com.facebook.data.*;
import mx.events.*;
public class EventData implements IEventDispatcher {
private var _984376767event_type:String;
private var _3373707name:String;
private var _1725551537end_time:Date;
private var _112093807venue:FacebookLocation;
private var _1028554796creator:Number;
private var _1573145462start_time:Date;
private var _109065nid:Number;
private var _1762076142pic_small:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _3208616host:String;
private var _110986pic:String;
private var _578385717pic_big:String;
private var _1901043637location:String;
private var _573446013update_time:Date;
private var _1724546052description:String;
private var _1482814251event_subtype:String;
private var _1548283250tagline:String;
private var _100416eid:String;
public function EventData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set eid(_arg1:String):void{
var _local2:Object = this._100416eid;
if (_local2 !== _arg1){
this._100416eid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "eid", _local2, _arg1));
};
}
public function get update_time():Date{
return (this._573446013update_time);
}
public function set update_time(_arg1:Date):void{
var _local2:Object = this._573446013update_time;
if (_local2 !== _arg1){
this._573446013update_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "update_time", _local2, _arg1));
};
}
public function get nid():Number{
return (this._109065nid);
}
public function get pic():String{
return (this._110986pic);
}
public function get name():String{
return (this._3373707name);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get tagline():String{
return (this._1548283250tagline);
}
public function get start_time():Date{
return (this._1573145462start_time);
}
public function set nid(_arg1:Number):void{
var _local2:Object = this._109065nid;
if (_local2 !== _arg1){
this._109065nid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", _local2, _arg1));
};
}
public function set pic(_arg1:String):void{
var _local2:Object = this._110986pic;
if (_local2 !== _arg1){
this._110986pic = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get pic_small():String{
return (this._1762076142pic_small);
}
public function set tagline(_arg1:String):void{
var _local2:Object = this._1548283250tagline;
if (_local2 !== _arg1){
this._1548283250tagline = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tagline", _local2, _arg1));
};
}
public function set pic_small(_arg1:String):void{
var _local2:Object = this._1762076142pic_small;
if (_local2 !== _arg1){
this._1762076142pic_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", _local2, _arg1));
};
}
public function set pic_big(_arg1:String):void{
var _local2:Object = this._578385717pic_big;
if (_local2 !== _arg1){
this._578385717pic_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", _local2, _arg1));
};
}
public function set event_subtype(_arg1:String):void{
var _local2:Object = this._1482814251event_subtype;
if (_local2 !== _arg1){
this._1482814251event_subtype = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_subtype", _local2, _arg1));
};
}
public function get creator():Number{
return (this._1028554796creator);
}
public function get host():String{
return (this._3208616host);
}
public function get location():String{
return (this._1901043637location);
}
public function get event_type():String{
return (this._984376767event_type);
}
public function get eid():String{
return (this._100416eid);
}
public function set start_time(_arg1:Date):void{
var _local2:Object = this._1573145462start_time;
if (_local2 !== _arg1){
this._1573145462start_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "start_time", _local2, _arg1));
};
}
public function get end_time():Date{
return (this._1725551537end_time);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get pic_big():String{
return (this._578385717pic_big);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set host(_arg1:String):void{
var _local2:Object = this._3208616host;
if (_local2 !== _arg1){
this._3208616host = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "host", _local2, _arg1));
};
}
public function set creator(_arg1:Number):void{
var _local2:Object = this._1028554796creator;
if (_local2 !== _arg1){
this._1028554796creator = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "creator", _local2, _arg1));
};
}
public function get event_subtype():String{
return (this._1482814251event_subtype);
}
public function set venue(_arg1:FacebookLocation):void{
var _local2:Object = this._112093807venue;
if (_local2 !== _arg1){
this._112093807venue = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "venue", _local2, _arg1));
};
}
public function set end_time(_arg1:Date):void{
var _local2:Object = this._1725551537end_time;
if (_local2 !== _arg1){
this._1725551537end_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_time", _local2, _arg1));
};
}
public function get venue():FacebookLocation{
return (this._112093807venue);
}
public function set location(_arg1:String):void{
var _local2:Object = this._1901043637location;
if (_local2 !== _arg1){
this._1901043637location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get description():String{
return (this._1724546052description);
}
public function set event_type(_arg1:String):void{
var _local2:Object = this._984376767event_type;
if (_local2 !== _arg1){
this._984376767event_type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_type", _local2, _arg1));
};
}
}
}//package com.facebook.data.events
Section 54
//GetEventsData (com.facebook.data.events.GetEventsData)
package com.facebook.data.events {
import com.facebook.data.*;
import mx.events.*;
public class GetEventsData extends FacebookData {
private var _2121991384eventCollection:EventCollection;
public function get eventCollection():EventCollection{
return (this._2121991384eventCollection);
}
public function set eventCollection(_arg1:EventCollection):void{
var _local2:Object = this._2121991384eventCollection;
if (_local2 !== _arg1){
this._2121991384eventCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "eventCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.events
Section 55
//GetMembersData (com.facebook.data.events.GetMembersData)
package com.facebook.data.events {
import com.facebook.data.*;
import mx.events.*;
public class GetMembersData extends FacebookData {
private var _354428152attending:Array;
private var _568196142declined:Array;
private var _840227282unsure:Array;
private var _487874675not_replied:Array;
public function set declined(_arg1:Array):void{
var _local2:Object = this._568196142declined;
if (_local2 !== _arg1){
this._568196142declined = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "declined", _local2, _arg1));
};
}
public function get attending():Array{
return (this._354428152attending);
}
public function set not_replied(_arg1:Array):void{
var _local2:Object = this._487874675not_replied;
if (_local2 !== _arg1){
this._487874675not_replied = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "not_replied", _local2, _arg1));
};
}
public function get not_replied():Array{
return (this._487874675not_replied);
}
public function get unsure():Array{
return (this._840227282unsure);
}
public function set attending(_arg1:Array):void{
var _local2:Object = this._354428152attending;
if (_local2 !== _arg1){
this._354428152attending = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attending", _local2, _arg1));
};
}
public function set unsure(_arg1:Array):void{
var _local2:Object = this._840227282unsure;
if (_local2 !== _arg1){
this._840227282unsure = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unsure", _local2, _arg1));
};
}
public function get declined():Array{
return (this._568196142declined);
}
}
}//package com.facebook.data.events
Section 56
//AbstractTagData (com.facebook.data.fbml.AbstractTagData)
package com.facebook.data.fbml {
import flash.events.*;
import mx.events.*;
public class AbstractTagData implements IEventDispatcher {
private var _513384674is_public:String;
private var _1183728077header_fbml:String;
private var _3373707name:String;
private var _3575610type:String;
private var _1098131327footer_fbml:String;
private var _405645655attributes:AttributeCollection;
private var _1724546052description:String;
private var _bindingEventDispatcher:EventDispatcher;
public function AbstractTagData(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String="", _arg6:String="", _arg7:AttributeCollection=null){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
this.name = _arg1;
this.type = _arg4;
this.description = _arg5;
this.is_public = _arg6;
this.header_fbml = _arg2;
this.footer_fbml = _arg3;
this.attributes = _arg7;
}
public function set is_public(_arg1:String):void{
var _local2:Object = this._513384674is_public;
if (_local2 !== _arg1){
this._513384674is_public = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_public", _local2, _arg1));
};
}
public function set footer_fbml(_arg1:String):void{
var _local2:Object = this._1098131327footer_fbml;
if (_local2 !== _arg1){
this._1098131327footer_fbml = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "footer_fbml", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get header_fbml():String{
return (this._1183728077header_fbml);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get attributes():AttributeCollection{
return (this._405645655attributes);
}
public function set header_fbml(_arg1:String):void{
var _local2:Object = this._1183728077header_fbml;
if (_local2 !== _arg1){
this._1183728077header_fbml = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "header_fbml", _local2, _arg1));
};
}
public function get is_public():String{
return (this._513384674is_public);
}
public function set attributes(_arg1:AttributeCollection):void{
var _local2:Object = this._405645655attributes;
if (_local2 !== _arg1){
this._405645655attributes = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attributes", _local2, _arg1));
};
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get type():String{
return (this._3575610type);
}
public function get description():String{
return (this._1724546052description);
}
public function get footer_fbml():String{
return (this._1098131327footer_fbml);
}
}
}//package com.facebook.data.fbml
Section 57
//AttributeCollection (com.facebook.data.fbml.AttributeCollection)
package com.facebook.data.fbml {
import com.facebook.utils.*;
public class AttributeCollection extends FacebookArrayCollection {
public function AttributeCollection(){
super(null, AttributeData);
}
}
}//package com.facebook.data.fbml
Section 58
//AttributeData (com.facebook.data.fbml.AttributeData)
package com.facebook.data.fbml {
import flash.events.*;
import mx.events.*;
public class AttributeData implements IEventDispatcher {
private var _1318671859default_value:String;
private var _3373707name:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _1724546052description:String;
public function AttributeData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set default_value(_arg1:String):void{
var _local2:Object = this._1318671859default_value;
if (_local2 !== _arg1){
this._1318671859default_value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "default_value", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get default_value():String{
return (this._1318671859default_value);
}
public function get description():String{
return (this._1724546052description);
}
}
}//package com.facebook.data.fbml
Section 59
//ContainerTagData (com.facebook.data.fbml.ContainerTagData)
package com.facebook.data.fbml {
import mx.events.*;
public class ContainerTagData extends AbstractTagData {
private var _1772097351close_tag_fbml:String;
private var _1445528373open_tag_fbml:String;
public function ContainerTagData(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String, _arg7:String="", _arg8:String="", _arg9:AttributeCollection=null){
this.open_tag_fbml = _arg5;
this.close_tag_fbml = _arg6;
super(_arg1, _arg2, _arg3, _arg4, _arg7, _arg8, _arg9);
}
public function get open_tag_fbml():String{
return (this._1445528373open_tag_fbml);
}
public function get close_tag_fbml():String{
return (this._1772097351close_tag_fbml);
}
public function set open_tag_fbml(_arg1:String):void{
var _local2:Object = this._1445528373open_tag_fbml;
if (_local2 !== _arg1){
this._1445528373open_tag_fbml = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "open_tag_fbml", _local2, _arg1));
};
}
public function set close_tag_fbml(_arg1:String):void{
var _local2:Object = this._1772097351close_tag_fbml;
if (_local2 !== _arg1){
this._1772097351close_tag_fbml = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "close_tag_fbml", _local2, _arg1));
};
}
}
}//package com.facebook.data.fbml
Section 60
//GetCustomTagsData (com.facebook.data.fbml.GetCustomTagsData)
package com.facebook.data.fbml {
import com.facebook.data.*;
import mx.events.*;
public class GetCustomTagsData extends FacebookData {
private var _189132328tagCollection:TagCollection;
public function set tagCollection(_arg1:TagCollection):void{
var _local2:Object = this._189132328tagCollection;
if (_local2 !== _arg1){
this._189132328tagCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tagCollection", _local2, _arg1));
};
}
public function get tagCollection():TagCollection{
return (this._189132328tagCollection);
}
}
}//package com.facebook.data.fbml
Section 61
//LeafTagData (com.facebook.data.fbml.LeafTagData)
package com.facebook.data.fbml {
import mx.events.*;
public class LeafTagData extends AbstractTagData {
private var _3136347fbml:String;
public function LeafTagData(_arg1:String, _arg2:String, _arg3:String, _arg4:String, _arg5:String, _arg6:String="", _arg7:String="", _arg8:AttributeCollection=null){
this.fbml = _arg2;
super(_arg1, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8);
}
public function get fbml():String{
return (this._3136347fbml);
}
public function set fbml(_arg1:String):void{
var _local2:Object = this._3136347fbml;
if (_local2 !== _arg1){
this._3136347fbml = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "fbml", _local2, _arg1));
};
}
}
}//package com.facebook.data.fbml
Section 62
//TagCollection (com.facebook.data.fbml.TagCollection)
package com.facebook.data.fbml {
import com.facebook.utils.*;
public class TagCollection extends FacebookArrayCollection {
public function TagCollection(){
super(null, AbstractTagData);
}
}
}//package com.facebook.data.fbml
Section 63
//GetRegisteredTemplateBundleByIDData (com.facebook.data.feed.GetRegisteredTemplateBundleByIDData)
package com.facebook.data.feed {
import com.facebook.data.*;
import mx.events.*;
public class GetRegisteredTemplateBundleByIDData extends FacebookData {
private var _858818232templateCollection:TemplateCollection;
public function get templateCollection():TemplateCollection{
return (this._858818232templateCollection);
}
public function set templateCollection(_arg1:TemplateCollection):void{
var _local2:Object = this._858818232templateCollection;
if (_local2 !== _arg1){
this._858818232templateCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "templateCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.feed
Section 64
//GetRegisteredTemplateBundleData (com.facebook.data.feed.GetRegisteredTemplateBundleData)
package com.facebook.data.feed {
import com.facebook.data.*;
import mx.events.*;
public class GetRegisteredTemplateBundleData extends FacebookData {
private var _1345486656bundleCollection:TemplateCollection;
public function get bundleCollection():TemplateCollection{
return (this._1345486656bundleCollection);
}
public function set bundleCollection(_arg1:TemplateCollection):void{
var _local2:Object = this._1345486656bundleCollection;
if (_local2 !== _arg1){
this._1345486656bundleCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "bundleCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.feed
Section 65
//TemplateBundleCollection (com.facebook.data.feed.TemplateBundleCollection)
package com.facebook.data.feed {
import com.facebook.utils.*;
public class TemplateBundleCollection extends FacebookArrayCollection {
public function TemplateBundleCollection(){
super(null, TemplateData);
}
}
}//package com.facebook.data.feed
Section 66
//TemplateCollection (com.facebook.data.feed.TemplateCollection)
package com.facebook.data.feed {
import mx.events.*;
import com.facebook.utils.*;
public class TemplateCollection extends FacebookArrayCollection {
private var _630236298time_created:Date;
private var _1933135987template_bundle_id:Number;
public function TemplateCollection(){
super(null, TemplateData);
}
public function addTemplateData(_arg1:TemplateData):void{
this.addItem(_arg1);
}
public function set template_bundle_id(_arg1:Number):void{
var _local2:Object = this._1933135987template_bundle_id;
if (_local2 !== _arg1){
this._1933135987template_bundle_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_bundle_id", _local2, _arg1));
};
}
public function get template_bundle_id():Number{
return (this._1933135987template_bundle_id);
}
public function set time_created(_arg1:Date):void{
var _local2:Object = this._630236298time_created;
if (_local2 !== _arg1){
this._630236298time_created = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time_created", _local2, _arg1));
};
}
public function get time_created():Date{
return (this._630236298time_created);
}
}
}//package com.facebook.data.feed
Section 67
//TemplateData (com.facebook.data.feed.TemplateData)
package com.facebook.data.feed {
import flash.events.*;
import mx.events.*;
public class TemplateData implements IEventDispatcher {
private var _1285910957template_title:String;
private var _180559289template_body:String;
private var _3575610type:String;
private var _bindingEventDispatcher:EventDispatcher;
public function TemplateData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set template_title(_arg1:String):void{
var _local2:Object = this._1285910957template_title;
if (_local2 !== _arg1){
this._1285910957template_title = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_title", _local2, _arg1));
};
}
public function get template_body():String{
return (this._180559289template_body);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get template_title():String{
return (this._1285910957template_title);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set template_body(_arg1:String):void{
var _local2:Object = this._180559289template_body;
if (_local2 !== _arg1){
this._180559289template_body = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "template_body", _local2, _arg1));
};
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function get type():String{
return (this._3575610type);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
}
}//package com.facebook.data.feed
Section 68
//AreFriendsData (com.facebook.data.friends.AreFriendsData)
package com.facebook.data.friends {
import com.facebook.data.*;
import mx.events.*;
public class AreFriendsData extends FacebookData {
private var _40395245friendsCollection:FriendsCollection;
public function get friendsCollection():FriendsCollection{
return (this._40395245friendsCollection);
}
public function set friendsCollection(_arg1:FriendsCollection):void{
var _local2:Object = this._40395245friendsCollection;
if (_local2 !== _arg1){
this._40395245friendsCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friendsCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.friends
Section 69
//FriendsCollection (com.facebook.data.friends.FriendsCollection)
package com.facebook.data.friends {
import com.facebook.utils.*;
public class FriendsCollection extends FacebookArrayCollection {
public function FriendsCollection(){
super(null, FriendsData);
}
}
}//package com.facebook.data.friends
Section 70
//FriendsData (com.facebook.data.friends.FriendsData)
package com.facebook.data.friends {
import flash.events.*;
import mx.events.*;
public class FriendsData implements IEventDispatcher {
private var _3589601uid1:Number;
private var _455530154are_friends:Boolean;
private var _3589602uid2:Number;
private var _bindingEventDispatcher:EventDispatcher;
public function FriendsData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get uid1():Number{
return (this._3589601uid1);
}
public function set uid1(_arg1:Number):void{
var _local2:Object = this._3589601uid1;
if (_local2 !== _arg1){
this._3589601uid1 = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid1", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set uid2(_arg1:Number):void{
var _local2:Object = this._3589602uid2;
if (_local2 !== _arg1){
this._3589602uid2 = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid2", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get uid2():Number{
return (this._3589602uid2);
}
public function get are_friends():Boolean{
return (this._455530154are_friends);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set are_friends(_arg1:Boolean):void{
var _local2:Object = this._455530154are_friends;
if (_local2 !== _arg1){
this._455530154are_friends = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "are_friends", _local2, _arg1));
};
}
}
}//package com.facebook.data.friends
Section 71
//GetAppUserData (com.facebook.data.friends.GetAppUserData)
package com.facebook.data.friends {
import com.facebook.data.*;
import mx.events.*;
public class GetAppUserData extends FacebookData {
private var _3589667uids:Array;
public function get uids():Array{
return (this._3589667uids);
}
public function set uids(_arg1:Array):void{
var _local2:Object = this._3589667uids;
if (_local2 !== _arg1){
this._3589667uids = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uids", _local2, _arg1));
};
}
}
}//package com.facebook.data.friends
Section 72
//GetFriendsData (com.facebook.data.friends.GetFriendsData)
package com.facebook.data.friends {
import com.facebook.data.*;
import com.facebook.data.users.*;
import mx.events.*;
public class GetFriendsData extends FacebookData {
private var _600094315friends:FacebookUserCollection;
public function set friends(_arg1:FacebookUserCollection):void{
var _local2:Object = this._600094315friends;
if (_local2 !== _arg1){
this._600094315friends = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friends", _local2, _arg1));
};
}
public function get friends():FacebookUserCollection{
return (this._600094315friends);
}
}
}//package com.facebook.data.friends
Section 73
//GetListsData (com.facebook.data.friends.GetListsData)
package com.facebook.data.friends {
import com.facebook.data.*;
import mx.events.*;
public class GetListsData extends FacebookData {
private var _102982549lists:Array;
public function set lists(_arg1:Array):void{
var _local2:Object = this._102982549lists;
if (_local2 !== _arg1){
this._102982549lists = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "lists", _local2, _arg1));
};
}
public function get lists():Array{
return (this._102982549lists);
}
}
}//package com.facebook.data.friends
Section 74
//ListsData (com.facebook.data.friends.ListsData)
package com.facebook.data.friends {
import flash.events.*;
import mx.events.*;
public class ListsData implements IEventDispatcher {
private var _3373707name:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _3145825flid:Number;
public function ListsData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get flid():Number{
return (this._3145825flid);
}
public function set flid(_arg1:Number):void{
var _local2:Object = this._3145825flid;
if (_local2 !== _arg1){
this._3145825flid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "flid", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
}
}//package com.facebook.data.friends
Section 75
//GetGroupData (com.facebook.data.groups.GetGroupData)
package com.facebook.data.groups {
import com.facebook.data.*;
import mx.events.*;
public class GetGroupData extends FacebookData {
private var _1237460524groups:GroupCollection;
public function set groups(_arg1:GroupCollection):void{
var _local2:Object = this._1237460524groups;
if (_local2 !== _arg1){
this._1237460524groups = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "groups", _local2, _arg1));
};
}
public function get groups():GroupCollection{
return (this._1237460524groups);
}
}
}//package com.facebook.data.groups
Section 76
//GetMemberData (com.facebook.data.groups.GetMemberData)
package com.facebook.data.groups {
import com.facebook.data.*;
import mx.events.*;
public class GetMemberData extends FacebookData {
private var _138904922notReplied:Array;
private var _1422235900admins:Array;
private var _948881689members:Array;
private var _765293059officers:Array;
public function get admins():Array{
return (this._1422235900admins);
}
public function get notReplied():Array{
return (this._138904922notReplied);
}
public function set admins(_arg1:Array):void{
var _local2:Object = this._1422235900admins;
if (_local2 !== _arg1){
this._1422235900admins = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "admins", _local2, _arg1));
};
}
public function set notReplied(_arg1:Array):void{
var _local2:Object = this._138904922notReplied;
if (_local2 !== _arg1){
this._138904922notReplied = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notReplied", _local2, _arg1));
};
}
public function set members(_arg1:Array):void{
var _local2:Object = this._948881689members;
if (_local2 !== _arg1){
this._948881689members = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "members", _local2, _arg1));
};
}
public function get members():Array{
return (this._948881689members);
}
public function set officers(_arg1:Array):void{
var _local2:Object = this._765293059officers;
if (_local2 !== _arg1){
this._765293059officers = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "officers", _local2, _arg1));
};
}
public function get officers():Array{
return (this._765293059officers);
}
}
}//package com.facebook.data.groups
Section 77
//GroupCollection (com.facebook.data.groups.GroupCollection)
package com.facebook.data.groups {
import com.facebook.utils.*;
public class GroupCollection extends FacebookArrayCollection {
public function GroupCollection(){
super(null, GroupData);
}
public function addGroup(_arg1:GroupData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.groups
Section 78
//GroupData (com.facebook.data.groups.GroupData)
package com.facebook.data.groups {
import flash.events.*;
import com.facebook.data.*;
import mx.events.*;
public class GroupData implements IEventDispatcher {
private var _1282509050group_type:String;
private var _1019789636office:String;
private var _3373707name:String;
private var _314498168privacy:String;
private var _102338gid:String;
private var _2022916553recent_news:String;
private var _112093807venue:FacebookLocation;
private var _1028554796creator:String;
private var _1816339526group_subtype:String;
private var _1762076142pic_small:String;
private var _1224335515website:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _109065nid:Number;
private var _110986pic:String;
private var _578385717pic_big:String;
private var _573446013update_time:Date;
private var _1724546052description:String;
public function GroupData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set gid(_arg1:String):void{
var _local2:Object = this._102338gid;
if (_local2 !== _arg1){
this._102338gid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "gid", _local2, _arg1));
};
}
public function get nid():Number{
return (this._109065nid);
}
public function get pic():String{
return (this._110986pic);
}
public function get name():String{
return (this._3373707name);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set update_time(_arg1:Date):void{
var _local2:Object = this._573446013update_time;
if (_local2 !== _arg1){
this._573446013update_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "update_time", _local2, _arg1));
};
}
public function get privacy():String{
return (this._314498168privacy);
}
public function set privacy(_arg1:String):void{
var _local2:Object = this._314498168privacy;
if (_local2 !== _arg1){
this._314498168privacy = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "privacy", _local2, _arg1));
};
}
public function set nid(_arg1:Number):void{
var _local2:Object = this._109065nid;
if (_local2 !== _arg1){
this._109065nid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", _local2, _arg1));
};
}
public function set pic(_arg1:String):void{
var _local2:Object = this._110986pic;
if (_local2 !== _arg1){
this._110986pic = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", _local2, _arg1));
};
}
public function set pic_big(_arg1:String):void{
var _local2:Object = this._578385717pic_big;
if (_local2 !== _arg1){
this._578385717pic_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", _local2, _arg1));
};
}
public function get pic_small():String{
return (this._1762076142pic_small);
}
public function get update_time():Date{
return (this._573446013update_time);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set pic_small(_arg1:String):void{
var _local2:Object = this._1762076142pic_small;
if (_local2 !== _arg1){
this._1762076142pic_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", _local2, _arg1));
};
}
public function get creator():String{
return (this._1028554796creator);
}
public function set website(_arg1:String):void{
var _local2:Object = this._1224335515website;
if (_local2 !== _arg1){
this._1224335515website = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "website", _local2, _arg1));
};
}
public function get recent_news():String{
return (this._2022916553recent_news);
}
public function get group_subtype():String{
return (this._1816339526group_subtype);
}
public function get website():String{
return (this._1224335515website);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get gid():String{
return (this._102338gid);
}
public function get pic_big():String{
return (this._578385717pic_big);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get office():String{
return (this._1019789636office);
}
public function set creator(_arg1:String):void{
var _local2:Object = this._1028554796creator;
if (_local2 !== _arg1){
this._1028554796creator = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "creator", _local2, _arg1));
};
}
public function set venue(_arg1:FacebookLocation):void{
var _local2:Object = this._112093807venue;
if (_local2 !== _arg1){
this._112093807venue = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "venue", _local2, _arg1));
};
}
public function set recent_news(_arg1:String):void{
var _local2:Object = this._2022916553recent_news;
if (_local2 !== _arg1){
this._2022916553recent_news = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "recent_news", _local2, _arg1));
};
}
public function get venue():FacebookLocation{
return (this._112093807venue);
}
public function set group_type(_arg1:String):void{
var _local2:Object = this._1282509050group_type;
if (_local2 !== _arg1){
this._1282509050group_type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_type", _local2, _arg1));
};
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get group_type():String{
return (this._1282509050group_type);
}
public function set group_subtype(_arg1:String):void{
var _local2:Object = this._1816339526group_subtype;
if (_local2 !== _arg1){
this._1816339526group_subtype = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_subtype", _local2, _arg1));
};
}
public function get description():String{
return (this._1724546052description);
}
public function set office(_arg1:String):void{
var _local2:Object = this._1019789636office;
if (_local2 !== _arg1){
this._1019789636office = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "office", _local2, _arg1));
};
}
}
}//package com.facebook.data.groups
Section 79
//GetNotesData (com.facebook.data.notes.GetNotesData)
package com.facebook.data.notes {
import com.facebook.data.*;
import mx.events.*;
public class GetNotesData extends FacebookData {
private var _1716839361notesCollection:NotesCollection;
public function set notesCollection(_arg1:NotesCollection):void{
var _local2:Object = this._1716839361notesCollection;
if (_local2 !== _arg1){
this._1716839361notesCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notesCollection", _local2, _arg1));
};
}
public function get notesCollection():NotesCollection{
return (this._1716839361notesCollection);
}
}
}//package com.facebook.data.notes
Section 80
//NoteData (com.facebook.data.notes.NoteData)
package com.facebook.data.notes {
import flash.events.*;
import mx.events.*;
public class NoteData implements IEventDispatcher {
private var _2129224840note_id:String;
private var _2003148228created_time:Date;
private var _bindingEventDispatcher:EventDispatcher;
private var _115792uid:String;
private var _951530617content:String;
private var _472881199updated_time:Date;
private var _110371416title:String;
public function NoteData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get created_time():Date{
return (this._2003148228created_time);
}
public function get note_id():String{
return (this._2129224840note_id);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set created_time(_arg1:Date):void{
var _local2:Object = this._2003148228created_time;
if (_local2 !== _arg1){
this._2003148228created_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created_time", _local2, _arg1));
};
}
public function set note_id(_arg1:String):void{
var _local2:Object = this._2129224840note_id;
if (_local2 !== _arg1){
this._2129224840note_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "note_id", _local2, _arg1));
};
}
public function get updated_time():Date{
return (this._472881199updated_time);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get uid():String{
return (this._115792uid);
}
public function get title():String{
return (this._110371416title);
}
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function set updated_time(_arg1:Date):void{
var _local2:Object = this._472881199updated_time;
if (_local2 !== _arg1){
this._472881199updated_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "updated_time", _local2, _arg1));
};
}
public function set title(_arg1:String):void{
var _local2:Object = this._110371416title;
if (_local2 !== _arg1){
this._110371416title = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "title", _local2, _arg1));
};
}
public function set content(_arg1:String):void{
var _local2:Object = this._951530617content;
if (_local2 !== _arg1){
this._951530617content = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "content", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get content():String{
return (this._951530617content);
}
}
}//package com.facebook.data.notes
Section 81
//NotesCollection (com.facebook.data.notes.NotesCollection)
package com.facebook.data.notes {
import com.facebook.utils.*;
public class NotesCollection extends FacebookArrayCollection {
public function NotesCollection(){
super(null, NoteData);
}
}
}//package com.facebook.data.notes
Section 82
//GetNotificationData (com.facebook.data.notifications.GetNotificationData)
package com.facebook.data.notifications {
import com.facebook.data.*;
import mx.events.*;
public class GetNotificationData extends FacebookData {
private var _2011259082group_invites:Array;
private var _757115001friendsRequests:Array;
private var _823645719notificationCollection:NotificationCollection;
private var _1950182939event_invites:Array;
public function get event_invites():Array{
return (this._1950182939event_invites);
}
public function get notificationCollection():NotificationCollection{
return (this._823645719notificationCollection);
}
public function get group_invites():Array{
return (this._2011259082group_invites);
}
public function set event_invites(_arg1:Array):void{
var _local2:Object = this._1950182939event_invites;
if (_local2 !== _arg1){
this._1950182939event_invites = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "event_invites", _local2, _arg1));
};
}
public function set friendsRequests(_arg1:Array):void{
var _local2:Object = this._757115001friendsRequests;
if (_local2 !== _arg1){
this._757115001friendsRequests = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friendsRequests", _local2, _arg1));
};
}
public function set group_invites(_arg1:Array):void{
var _local2:Object = this._2011259082group_invites;
if (_local2 !== _arg1){
this._2011259082group_invites = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "group_invites", _local2, _arg1));
};
}
public function get friendsRequests():Array{
return (this._757115001friendsRequests);
}
public function set notificationCollection(_arg1:NotificationCollection):void{
var _local2:Object = this._823645719notificationCollection;
if (_local2 !== _arg1){
this._823645719notificationCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notificationCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.notifications
Section 83
//NotificationCollection (com.facebook.data.notifications.NotificationCollection)
package com.facebook.data.notifications {
import com.facebook.utils.*;
public class NotificationCollection extends FacebookArrayCollection {
public function NotificationCollection(){
super(null, null);
}
}
}//package com.facebook.data.notifications
Section 84
//NotificationMessageData (com.facebook.data.notifications.NotificationMessageData)
package com.facebook.data.notifications {
import flash.events.*;
import mx.events.*;
public class NotificationMessageData implements IEventDispatcher {
private var _1739890327most_recent:Number;
private var _840272977unread:Number;
private var _bindingEventDispatcher:EventDispatcher;
public function NotificationMessageData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set most_recent(_arg1:Number):void{
var _local2:Object = this._1739890327most_recent;
if (_local2 !== _arg1){
this._1739890327most_recent = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", _local2, _arg1));
};
}
public function get unread():Number{
return (this._840272977unread);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get most_recent():Number{
return (this._1739890327most_recent);
}
public function set unread(_arg1:Number):void{
var _local2:Object = this._840272977unread;
if (_local2 !== _arg1){
this._840272977unread = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", _local2, _arg1));
};
}
}
}//package com.facebook.data.notifications
Section 85
//NotificationPokeData (com.facebook.data.notifications.NotificationPokeData)
package com.facebook.data.notifications {
import flash.events.*;
import mx.events.*;
public class NotificationPokeData implements IEventDispatcher {
private var _1739890327most_recent:Number;
private var _840272977unread:Number;
private var _bindingEventDispatcher:EventDispatcher;
public function NotificationPokeData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set most_recent(_arg1:Number):void{
var _local2:Object = this._1739890327most_recent;
if (_local2 !== _arg1){
this._1739890327most_recent = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", _local2, _arg1));
};
}
public function get unread():Number{
return (this._840272977unread);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get most_recent():Number{
return (this._1739890327most_recent);
}
public function set unread(_arg1:Number):void{
var _local2:Object = this._840272977unread;
if (_local2 !== _arg1){
this._840272977unread = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", _local2, _arg1));
};
}
}
}//package com.facebook.data.notifications
Section 86
//NotificationShareData (com.facebook.data.notifications.NotificationShareData)
package com.facebook.data.notifications {
import flash.events.*;
import mx.events.*;
public class NotificationShareData implements IEventDispatcher {
private var _1739890327most_recent:Number;
private var _840272977unread:Number;
private var _bindingEventDispatcher:EventDispatcher;
public function NotificationShareData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set most_recent(_arg1:Number):void{
var _local2:Object = this._1739890327most_recent;
if (_local2 !== _arg1){
this._1739890327most_recent = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "most_recent", _local2, _arg1));
};
}
public function get unread():Number{
return (this._840272977unread);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get most_recent():Number{
return (this._1739890327most_recent);
}
public function set unread(_arg1:Number):void{
var _local2:Object = this._840272977unread;
if (_local2 !== _arg1){
this._840272977unread = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "unread", _local2, _arg1));
};
}
}
}//package com.facebook.data.notifications
Section 87
//GetPageInfoData (com.facebook.data.pages.GetPageInfoData)
package com.facebook.data.pages {
import com.facebook.data.*;
import mx.events.*;
public class GetPageInfoData extends FacebookData {
private var _1492481627pageInfoCollection:PageInfoCollection;
public function get pageInfoCollection():PageInfoCollection{
return (this._1492481627pageInfoCollection);
}
public function set pageInfoCollection(_arg1:PageInfoCollection):void{
var _local2:Object = this._1492481627pageInfoCollection;
if (_local2 !== _arg1){
this._1492481627pageInfoCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pageInfoCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.pages
Section 88
//PageInfoCollection (com.facebook.data.pages.PageInfoCollection)
package com.facebook.data.pages {
import com.facebook.utils.*;
public class PageInfoCollection extends FacebookArrayCollection {
public function PageInfoCollection(){
super(null, PageInfoData);
}
public function addPageInfo(_arg1:PageInfoData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.pages
Section 89
//PageInfoData (com.facebook.data.pages.PageInfoData)
package com.facebook.data.pages {
import flash.events.*;
import com.facebook.data.*;
import mx.events.*;
public class PageInfoData extends EventDispatcher {
private var _485238799hometown:String;
private var _3575610type:String;
private var _1405038154awards:String;
private var _99469071hours:String;
private var _1635870290directed_by:String;
private var _1224335515website:String;
private var _1768882106pic_large:String;
private var _2002886397has_added_app:Boolean;
private var _578385717pic_big:String;
private var _1817326876plot_outline:String;
private var _1214494066pic_square:String;
private var _697920873schedule:String;
private var _1965855514release_date:String;
private var _97544bio:String;
private var _1774829598influences:String;
private var _2116416122record_label:String;
private var _1843485230network:String;
private var _3373707name:String;
private var _1762076142pic_small:String;
private var _68251919band_members:String;
private var _1316747138starring:String;
private var _1901043637location:FacebookLocation;
private var _906335517season:String;
private var _674640991founded:String;
private var _803548981page_id:Number;
private var _915840763company_overview:String;
private var _98240899genre:String;
private var _891901482studio:String;
private var _1505017102produced_by:String;
private var _1003761308products:String;
private var _1069449612mission:String;
private var _201317249written_by:String;
public function set starring(_arg1:String):void{
var _local2:Object = this._1316747138starring;
if (_local2 !== _arg1){
this._1316747138starring = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "starring", _local2, _arg1));
};
}
public function get season():String{
return (this._906335517season);
}
public function get bio():String{
return (this._97544bio);
}
public function set record_label(_arg1:String):void{
var _local2:Object = this._2116416122record_label;
if (_local2 !== _arg1){
this._2116416122record_label = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "record_label", _local2, _arg1));
};
}
public function set genre(_arg1:String):void{
var _local2:Object = this._98240899genre;
if (_local2 !== _arg1){
this._98240899genre = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "genre", _local2, _arg1));
};
}
public function get hours():String{
return (this._99469071hours);
}
public function get pic_small():String{
return (this._1762076142pic_small);
}
public function set bio(_arg1:String):void{
var _local2:Object = this._97544bio;
if (_local2 !== _arg1){
this._97544bio = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "bio", _local2, _arg1));
};
}
public function set hours(_arg1:String):void{
var _local2:Object = this._99469071hours;
if (_local2 !== _arg1){
this._99469071hours = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hours", _local2, _arg1));
};
}
public function set mission(_arg1:String):void{
var _local2:Object = this._1069449612mission;
if (_local2 !== _arg1){
this._1069449612mission = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "mission", _local2, _arg1));
};
}
public function set pic_small(_arg1:String):void{
var _local2:Object = this._1762076142pic_small;
if (_local2 !== _arg1){
this._1762076142pic_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get band_members():String{
return (this._68251919band_members);
}
public function set band_members(_arg1:String):void{
var _local2:Object = this._68251919band_members;
if (_local2 !== _arg1){
this._68251919band_members = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "band_members", _local2, _arg1));
};
}
public function get network():String{
return (this._1843485230network);
}
public function set website(_arg1:String):void{
var _local2:Object = this._1224335515website;
if (_local2 !== _arg1){
this._1224335515website = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "website", _local2, _arg1));
};
}
public function get type():String{
return (this._3575610type);
}
public function set influences(_arg1:String):void{
var _local2:Object = this._1774829598influences;
if (_local2 !== _arg1){
this._1774829598influences = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "influences", _local2, _arg1));
};
}
public function set schedule(_arg1:String):void{
var _local2:Object = this._697920873schedule;
if (_local2 !== _arg1){
this._697920873schedule = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "schedule", _local2, _arg1));
};
}
public function get influences():String{
return (this._1774829598influences);
}
public function set founded(_arg1:String):void{
var _local2:Object = this._674640991founded;
if (_local2 !== _arg1){
this._674640991founded = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "founded", _local2, _arg1));
};
}
public function get pic_large():String{
return (this._1768882106pic_large);
}
public function set directed_by(_arg1:String):void{
var _local2:Object = this._1635870290directed_by;
if (_local2 !== _arg1){
this._1635870290directed_by = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "directed_by", _local2, _arg1));
};
}
public function set network(_arg1:String):void{
var _local2:Object = this._1843485230network;
if (_local2 !== _arg1){
this._1843485230network = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "network", _local2, _arg1));
};
}
public function get products():String{
return (this._1003761308products);
}
public function set location(_arg1:FacebookLocation):void{
var _local2:Object = this._1901043637location;
if (_local2 !== _arg1){
this._1901043637location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", _local2, _arg1));
};
}
public function get pic_square():String{
return (this._1214494066pic_square);
}
public function set awards(_arg1:String):void{
var _local2:Object = this._1405038154awards;
if (_local2 !== _arg1){
this._1405038154awards = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "awards", _local2, _arg1));
};
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function get written_by():String{
return (this._201317249written_by);
}
public function get starring():String{
return (this._1316747138starring);
}
public function get genre():String{
return (this._98240899genre);
}
public function set pic_large(_arg1:String):void{
var _local2:Object = this._1768882106pic_large;
if (_local2 !== _arg1){
this._1768882106pic_large = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_large", _local2, _arg1));
};
}
public function get mission():String{
return (this._1069449612mission);
}
public function set page_id(_arg1:Number):void{
var _local2:Object = this._803548981page_id;
if (_local2 !== _arg1){
this._803548981page_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "page_id", _local2, _arg1));
};
}
public function get schedule():String{
return (this._697920873schedule);
}
public function get name():String{
return (this._3373707name);
}
public function get website():String{
return (this._1224335515website);
}
public function set pic_big(_arg1:String):void{
var _local2:Object = this._578385717pic_big;
if (_local2 !== _arg1){
this._578385717pic_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", _local2, _arg1));
};
}
public function get record_label():String{
return (this._2116416122record_label);
}
public function get founded():String{
return (this._674640991founded);
}
public function get directed_by():String{
return (this._1635870290directed_by);
}
public function get location():FacebookLocation{
return (this._1901043637location);
}
public function set studio(_arg1:String):void{
var _local2:Object = this._891901482studio;
if (_local2 !== _arg1){
this._891901482studio = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "studio", _local2, _arg1));
};
}
public function get awards():String{
return (this._1405038154awards);
}
public function set season(_arg1:String):void{
var _local2:Object = this._906335517season;
if (_local2 !== _arg1){
this._906335517season = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "season", _local2, _arg1));
};
}
public function get page_id():Number{
return (this._803548981page_id);
}
public function set release_date(_arg1:String):void{
var _local2:Object = this._1965855514release_date;
if (_local2 !== _arg1){
this._1965855514release_date = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "release_date", _local2, _arg1));
};
}
public function set products(_arg1:String):void{
var _local2:Object = this._1003761308products;
if (_local2 !== _arg1){
this._1003761308products = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "products", _local2, _arg1));
};
}
public function set plot_outline(_arg1:String):void{
var _local2:Object = this._1817326876plot_outline;
if (_local2 !== _arg1){
this._1817326876plot_outline = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "plot_outline", _local2, _arg1));
};
}
public function get studio():String{
return (this._891901482studio);
}
public function get pic_big():String{
return (this._578385717pic_big);
}
public function set pic_square(_arg1:String):void{
var _local2:Object = this._1214494066pic_square;
if (_local2 !== _arg1){
this._1214494066pic_square = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", _local2, _arg1));
};
}
public function get release_date():String{
return (this._1965855514release_date);
}
public function set hometown(_arg1:String):void{
var _local2:Object = this._485238799hometown;
if (_local2 !== _arg1){
this._485238799hometown = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hometown", _local2, _arg1));
};
}
public function set produced_by(_arg1:String):void{
var _local2:Object = this._1505017102produced_by;
if (_local2 !== _arg1){
this._1505017102produced_by = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "produced_by", _local2, _arg1));
};
}
public function get hometown():String{
return (this._485238799hometown);
}
public function get produced_by():String{
return (this._1505017102produced_by);
}
public function get plot_outline():String{
return (this._1817326876plot_outline);
}
public function set company_overview(_arg1:String):void{
var _local2:Object = this._915840763company_overview;
if (_local2 !== _arg1){
this._915840763company_overview = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_overview", _local2, _arg1));
};
}
public function set has_added_app(_arg1:Boolean):void{
var _local2:Object = this._2002886397has_added_app;
if (_local2 !== _arg1){
this._2002886397has_added_app = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "has_added_app", _local2, _arg1));
};
}
public function get company_overview():String{
return (this._915840763company_overview);
}
public function get has_added_app():Boolean{
return (this._2002886397has_added_app);
}
public function set written_by(_arg1:String):void{
var _local2:Object = this._201317249written_by;
if (_local2 !== _arg1){
this._201317249written_by = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "written_by", _local2, _arg1));
};
}
}
}//package com.facebook.data.pages
Section 90
//AlbumCollection (com.facebook.data.photos.AlbumCollection)
package com.facebook.data.photos {
import com.facebook.utils.*;
public class AlbumCollection extends FacebookArrayCollection {
public function AlbumCollection(){
super(null, AlbumData);
}
public function addAlbum(_arg1:AlbumData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.photos
Section 91
//AlbumData (com.facebook.data.photos.AlbumData)
package com.facebook.data.photos {
import flash.events.*;
import mx.events.*;
public class AlbumData implements IEventDispatcher {
private var _1028554472created:Date;
private var _3373707name:String;
private var _3321850link:String;
private var _466743410visible:String;
private var _96572aid:String;
private var _106164915owner:String;
private var _3530753size:Number;
private var _bindingEventDispatcher:EventDispatcher;
private var _615513399modified:Date;
private var _1980072195cover_pid:String;
private var _1901043637location:String;
private var _1724546052description:String;
public function AlbumData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function get size():Number{
return (this._3530753size);
}
public function set size(_arg1:Number):void{
var _local2:Object = this._3530753size;
if (_local2 !== _arg1){
this._3530753size = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "size", _local2, _arg1));
};
}
public function get cover_pid():String{
return (this._1980072195cover_pid);
}
public function set cover_pid(_arg1:String):void{
var _local2:Object = this._1980072195cover_pid;
if (_local2 !== _arg1){
this._1980072195cover_pid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "cover_pid", _local2, _arg1));
};
}
public function get name():String{
return (this._3373707name);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set modified(_arg1:Date):void{
var _local2:Object = this._615513399modified;
if (_local2 !== _arg1){
this._615513399modified = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "modified", _local2, _arg1));
};
}
public function get location():String{
return (this._1901043637location);
}
public function get owner():String{
return (this._106164915owner);
}
public function get aid():String{
return (this._96572aid);
}
public function get modified():Date{
return (this._615513399modified);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set created(_arg1:Date):void{
var _local2:Object = this._1028554472created;
if (_local2 !== _arg1){
this._1028554472created = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", _local2, _arg1));
};
}
public function set visible(_arg1:String):void{
var _local2:Object = this._466743410visible;
if (_local2 !== _arg1){
this._466743410visible = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "visible", _local2, _arg1));
};
}
public function set owner(_arg1:String):void{
var _local2:Object = this._106164915owner;
if (_local2 !== _arg1){
this._106164915owner = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", _local2, _arg1));
};
}
public function get created():Date{
return (this._1028554472created);
}
public function set location(_arg1:String):void{
var _local2:Object = this._1901043637location;
if (_local2 !== _arg1){
this._1901043637location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", _local2, _arg1));
};
}
public function get visible():String{
return (this._466743410visible);
}
public function set link(_arg1:String):void{
var _local2:Object = this._3321850link;
if (_local2 !== _arg1){
this._3321850link = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", _local2, _arg1));
};
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get link():String{
return (this._3321850link);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get description():String{
return (this._1724546052description);
}
public function set aid(_arg1:String):void{
var _local2:Object = this._96572aid;
if (_local2 !== _arg1){
this._96572aid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 92
//FacebookPhoto (com.facebook.data.photos.FacebookPhoto)
package com.facebook.data.photos {
import com.facebook.data.*;
import mx.events.*;
public class FacebookPhoto extends FacebookData {
private var _1028554472created:Date;
private var _552573414caption:String;
private var _89081108src_small:String;
private var _1953179611src_big:String;
private var _3321850link:String;
private var _110987pid:String;
private var _3552281tags:Array;
private var _96572aid:String;
private var _114148src:String;
private var _106164915owner:Number;
public function FacebookPhoto(){
tags = [];
super();
}
public function get link():String{
return (this._3321850link);
}
public function get owner():Number{
return (this._106164915owner);
}
public function get src():String{
return (this._114148src);
}
public function set src_big(_arg1:String):void{
var _local2:Object = this._1953179611src_big;
if (_local2 !== _arg1){
this._1953179611src_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_big", _local2, _arg1));
};
}
public function get pid():String{
return (this._110987pid);
}
public function set caption(_arg1:String):void{
var _local2:Object = this._552573414caption;
if (_local2 !== _arg1){
this._552573414caption = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", _local2, _arg1));
};
}
public function set pid(_arg1:String):void{
var _local2:Object = this._110987pid;
if (_local2 !== _arg1){
this._110987pid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", _local2, _arg1));
};
}
public function set src(_arg1:String):void{
var _local2:Object = this._114148src;
if (_local2 !== _arg1){
this._114148src = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", _local2, _arg1));
};
}
public function set src_small(_arg1:String):void{
var _local2:Object = this._89081108src_small;
if (_local2 !== _arg1){
this._89081108src_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_small", _local2, _arg1));
};
}
public function get tags():Array{
return (this._3552281tags);
}
public function set created(_arg1:Date):void{
var _local2:Object = this._1028554472created;
if (_local2 !== _arg1){
this._1028554472created = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", _local2, _arg1));
};
}
public function get src_big():String{
return (this._1953179611src_big);
}
public function get created():Date{
return (this._1028554472created);
}
public function set tags(_arg1:Array):void{
var _local2:Object = this._3552281tags;
if (_local2 !== _arg1){
this._3552281tags = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tags", _local2, _arg1));
};
}
public function set link(_arg1:String):void{
var _local2:Object = this._3321850link;
if (_local2 !== _arg1){
this._3321850link = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", _local2, _arg1));
};
}
public function set owner(_arg1:Number):void{
var _local2:Object = this._106164915owner;
if (_local2 !== _arg1){
this._106164915owner = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", _local2, _arg1));
};
}
public function get src_small():String{
return (this._89081108src_small);
}
public function get aid():String{
return (this._96572aid);
}
public function get caption():String{
return (this._552573414caption);
}
public function set aid(_arg1:String):void{
var _local2:Object = this._96572aid;
if (_local2 !== _arg1){
this._96572aid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 93
//GetAlbumsData (com.facebook.data.photos.GetAlbumsData)
package com.facebook.data.photos {
import com.facebook.data.*;
import mx.events.*;
public class GetAlbumsData extends FacebookData {
private var _1670051219albumCollection:AlbumCollection;
public function set albumCollection(_arg1:AlbumCollection):void{
var _local2:Object = this._1670051219albumCollection;
if (_local2 !== _arg1){
this._1670051219albumCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albumCollection", _local2, _arg1));
};
}
public function get albumCollection():AlbumCollection{
return (this._1670051219albumCollection);
}
}
}//package com.facebook.data.photos
Section 94
//GetCreateAlbumData (com.facebook.data.photos.GetCreateAlbumData)
package com.facebook.data.photos {
import com.facebook.data.*;
import mx.events.*;
public class GetCreateAlbumData extends FacebookData {
private var _248976057albumData:AlbumData;
public function get albumData():AlbumData{
return (this._248976057albumData);
}
public function set albumData(_arg1:AlbumData):void{
var _local2:Object = this._248976057albumData;
if (_local2 !== _arg1){
this._248976057albumData = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albumData", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 95
//GetPhotosData (com.facebook.data.photos.GetPhotosData)
package com.facebook.data.photos {
import com.facebook.data.*;
import mx.events.*;
public class GetPhotosData extends FacebookData {
private var _1751633296photoCollection:PhotoCollection;
public function get photoCollection():PhotoCollection{
return (this._1751633296photoCollection);
}
public function set photoCollection(_arg1:PhotoCollection):void{
var _local2:Object = this._1751633296photoCollection;
if (_local2 !== _arg1){
this._1751633296photoCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photoCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 96
//GetTagsData (com.facebook.data.photos.GetTagsData)
package com.facebook.data.photos {
import com.facebook.data.*;
import mx.events.*;
public class GetTagsData extends FacebookData {
private var _2107998615photoTagsCollection:PhotoTagCollection;
public function get photoTagsCollection():PhotoTagCollection{
return (this._2107998615photoTagsCollection);
}
public function set photoTagsCollection(_arg1:PhotoTagCollection):void{
var _local2:Object = this._2107998615photoTagsCollection;
if (_local2 !== _arg1){
this._2107998615photoTagsCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photoTagsCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 97
//PhotoCollection (com.facebook.data.photos.PhotoCollection)
package com.facebook.data.photos {
import com.facebook.utils.*;
public class PhotoCollection extends FacebookArrayCollection {
public function PhotoCollection(){
super(null, PhotoData);
}
public function addPhoto(_arg1:PhotoData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.photos
Section 98
//PhotoData (com.facebook.data.photos.PhotoData)
package com.facebook.data.photos {
import flash.events.*;
import mx.events.*;
public class PhotoData implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _1028554472created:Date;
private var _552573414caption:String;
private var _89081108src_small:String;
private var _1953179611src_big:String;
private var _3321850link:String;
private var _110987pid:String;
private var _96572aid:String;
private var _114148src:String;
private var _106164915owner:String;
public function PhotoData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get src():String{
return (this._114148src);
}
public function set src_big(_arg1:String):void{
var _local2:Object = this._1953179611src_big;
if (_local2 !== _arg1){
this._1953179611src_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_big", _local2, _arg1));
};
}
public function get pid():String{
return (this._110987pid);
}
public function set caption(_arg1:String):void{
var _local2:Object = this._552573414caption;
if (_local2 !== _arg1){
this._552573414caption = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", _local2, _arg1));
};
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set pid(_arg1:String):void{
var _local2:Object = this._110987pid;
if (_local2 !== _arg1){
this._110987pid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", _local2, _arg1));
};
}
public function set src(_arg1:String):void{
var _local2:Object = this._114148src;
if (_local2 !== _arg1){
this._114148src = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", _local2, _arg1));
};
}
public function set src_small(_arg1:String):void{
var _local2:Object = this._89081108src_small;
if (_local2 !== _arg1){
this._89081108src_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src_small", _local2, _arg1));
};
}
public function set created(_arg1:Date):void{
var _local2:Object = this._1028554472created;
if (_local2 !== _arg1){
this._1028554472created = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", _local2, _arg1));
};
}
public function set owner(_arg1:String):void{
var _local2:Object = this._106164915owner;
if (_local2 !== _arg1){
this._106164915owner = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", _local2, _arg1));
};
}
public function get link():String{
return (this._3321850link);
}
public function get src_big():String{
return (this._1953179611src_big);
}
public function get created():Date{
return (this._1028554472created);
}
public function get owner():String{
return (this._106164915owner);
}
public function set link(_arg1:String):void{
var _local2:Object = this._3321850link;
if (_local2 !== _arg1){
this._3321850link = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "link", _local2, _arg1));
};
}
public function get caption():String{
return (this._552573414caption);
}
public function get src_small():String{
return (this._89081108src_small);
}
public function get aid():String{
return (this._96572aid);
}
public function set aid(_arg1:String):void{
var _local2:Object = this._96572aid;
if (_local2 !== _arg1){
this._96572aid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", _local2, _arg1));
};
}
}
}//package com.facebook.data.photos
Section 99
//PhotoTagCollection (com.facebook.data.photos.PhotoTagCollection)
package com.facebook.data.photos {
import com.facebook.utils.*;
public class PhotoTagCollection extends FacebookArrayCollection {
public function PhotoTagCollection(_arg1:Array=null){
super(null, TagData);
}
public function addPhotoTag(_arg1:TagData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.photos
Section 100
//TagData (com.facebook.data.photos.TagData)
package com.facebook.data.photos {
import flash.events.*;
import mx.events.*;
public class TagData implements IEventDispatcher {
private var _1867885268subject:String;
private var _1028554472created:Date;
protected var _actualY:Number;
protected var _actualX:Number;
private var _110987pid:String;
private var _1548659157tag_uid:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _763826510tag_text:String;
public function TagData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set y(_arg1:Number):void{
var _local2:Object = this.y;
if (_local2 !== _arg1){
this._121y = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "y", _local2, _arg1));
};
}
public function set created(_arg1:Date):void{
var _local2:Object = this._1028554472created;
if (_local2 !== _arg1){
this._1028554472created = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created", _local2, _arg1));
};
}
public function set ycoord(_arg1:Number):void{
var _local2:Object = this.ycoord;
if (_local2 !== _arg1){
this._735994340ycoord = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "ycoord", _local2, _arg1));
};
}
public function get tag_text():String{
return (this._763826510tag_text);
}
public function get pid():String{
return (this._110987pid);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
private function set _764623491xcoord(_arg1:Number):void{
_actualX = _arg1;
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set pid(_arg1:String):void{
var _local2:Object = this._110987pid;
if (_local2 !== _arg1){
this._110987pid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", _local2, _arg1));
};
}
private function set _120x(_arg1:Number):void{
_actualX = _arg1;
}
public function get ycoord():Number{
return (_actualY);
}
private function set _121y(_arg1:Number):void{
_actualY = _arg1;
}
private function set _735994340ycoord(_arg1:Number):void{
_actualY = _arg1;
}
public function set subject(_arg1:String):void{
var _local2:Object = this._1867885268subject;
if (_local2 !== _arg1){
this._1867885268subject = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "subject", _local2, _arg1));
};
}
public function get created():Date{
return (this._1028554472created);
}
public function get subject():String{
return (this._1867885268subject);
}
public function set tag_uid(_arg1:String):void{
var _local2:Object = this._1548659157tag_uid;
if (_local2 !== _arg1){
this._1548659157tag_uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tag_uid", _local2, _arg1));
};
}
public function set x(_arg1:Number):void{
var _local2:Object = this.x;
if (_local2 !== _arg1){
this._120x = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "x", _local2, _arg1));
};
}
public function get tag_uid():String{
return (this._1548659157tag_uid);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get x():Number{
return (_actualX);
}
public function get y():Number{
return (_actualY);
}
public function set xcoord(_arg1:Number):void{
var _local2:Object = this.xcoord;
if (_local2 !== _arg1){
this._764623491xcoord = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "xcoord", _local2, _arg1));
};
}
public function set tag_text(_arg1:String):void{
var _local2:Object = this._763826510tag_text;
if (_local2 !== _arg1){
this._763826510tag_text = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tag_text", _local2, _arg1));
};
}
public function get xcoord():Number{
return (_actualX);
}
}
}//package com.facebook.data.photos
Section 101
//GetStatusData (com.facebook.data.status.GetStatusData)
package com.facebook.data.status {
import com.facebook.data.*;
import mx.events.*;
public class GetStatusData extends FacebookData {
private var _892481550status:Array;
public function get status():Array{
return (this._892481550status);
}
public function set status(_arg1:Array):void{
var _local2:Object = this._892481550status;
if (_local2 !== _arg1){
this._892481550status = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", _local2, _arg1));
};
}
}
}//package com.facebook.data.status
Section 102
//Status (com.facebook.data.status.Status)
package com.facebook.data.status {
import flash.events.*;
import mx.events.*;
public class Status implements IEventDispatcher {
private var _954925063message:String;
private var _115792uid:String;
private var _2070199160status_id:String;
private var _3560141time:Date;
private var _bindingEventDispatcher:EventDispatcher;
private var _896505829source:String;
public function Status(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set source(_arg1:String):void{
var _local2:Object = this._896505829source;
if (_local2 !== _arg1){
this._896505829source = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get message():String{
return (this._954925063message);
}
public function get status_id():String{
return (this._2070199160status_id);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get time():Date{
return (this._3560141time);
}
public function set message(_arg1:String):void{
var _local2:Object = this._954925063message;
if (_local2 !== _arg1){
this._954925063message = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "message", _local2, _arg1));
};
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get uid():String{
return (this._115792uid);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set status_id(_arg1:String):void{
var _local2:Object = this._2070199160status_id;
if (_local2 !== _arg1){
this._2070199160status_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status_id", _local2, _arg1));
};
}
public function set time(_arg1:Date):void{
var _local2:Object = this._3560141time;
if (_local2 !== _arg1){
this._3560141time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time", _local2, _arg1));
};
}
public function get source():String{
return (this._896505829source);
}
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data.status
Section 103
//AttachmentData (com.facebook.data.stream.AttachmentData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class AttachmentData implements IEventDispatcher {
private var _110371416title:String;
private var _3373707name:String;
private var _103772132media:Array;
private var _3211051href:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _102727412label:String;
private var _552573414caption:String;
private var _3029410body:String;
private var _1724546052description:String;
private var _3556653text:String;
private var _3226745icon:String;
public function AttachmentData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function get label():String{
return (this._102727412label);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get name():String{
return (this._3373707name);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get body():String{
return (this._3029410body);
}
public function get href():String{
return (this._3211051href);
}
public function get text():String{
return (this._3556653text);
}
public function set title(_arg1:String):void{
var _local2:Object = this._110371416title;
if (_local2 !== _arg1){
this._110371416title = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "title", _local2, _arg1));
};
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set body(_arg1:String):void{
var _local2:Object = this._3029410body;
if (_local2 !== _arg1){
this._3029410body = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "body", _local2, _arg1));
};
}
public function set media(_arg1:Array):void{
var _local2:Object = this._103772132media;
if (_local2 !== _arg1){
this._103772132media = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "media", _local2, _arg1));
};
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set caption(_arg1:String):void{
var _local2:Object = this._552573414caption;
if (_local2 !== _arg1){
this._552573414caption = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "caption", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set href(_arg1:String):void{
var _local2:Object = this._3211051href;
if (_local2 !== _arg1){
this._3211051href = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", _local2, _arg1));
};
}
public function get title():String{
return (this._110371416title);
}
public function set text(_arg1:String):void{
var _local2:Object = this._3556653text;
if (_local2 !== _arg1){
this._3556653text = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "text", _local2, _arg1));
};
}
public function get media():Array{
return (this._103772132media);
}
public function set label(_arg1:String):void{
var _local2:Object = this._102727412label;
if (_local2 !== _arg1){
this._102727412label = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "label", _local2, _arg1));
};
}
public function get caption():String{
return (this._552573414caption);
}
public function set icon(_arg1:String):void{
var _local2:Object = this._3226745icon;
if (_local2 !== _arg1){
this._3226745icon = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get icon():String{
return (this._3226745icon);
}
public function get description():String{
return (this._1724546052description);
}
}
}//package com.facebook.data.stream
Section 104
//CommentsData (com.facebook.data.stream.CommentsData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class CommentsData implements IEventDispatcher {
private var _126536785can_post:Boolean;
private var _bindingEventDispatcher:EventDispatcher;
private var _1294922797can_remove:Boolean;
private var _94851343count:uint;
private var _106855379posts:Array;
public function CommentsData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get count():uint{
return (this._94851343count);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get posts():Array{
return (this._106855379posts);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get can_remove():Boolean{
return (this._1294922797can_remove);
}
public function set can_post(_arg1:Boolean):void{
var _local2:Object = this._126536785can_post;
if (_local2 !== _arg1){
this._126536785can_post = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_post", _local2, _arg1));
};
}
public function set count(_arg1:uint):void{
var _local2:Object = this._94851343count;
if (_local2 !== _arg1){
this._94851343count = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "count", _local2, _arg1));
};
}
public function set can_remove(_arg1:Boolean):void{
var _local2:Object = this._1294922797can_remove;
if (_local2 !== _arg1){
this._1294922797can_remove = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_remove", _local2, _arg1));
};
}
public function set posts(_arg1:Array):void{
var _local2:Object = this._106855379posts;
if (_local2 !== _arg1){
this._106855379posts = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "posts", _local2, _arg1));
};
}
public function get can_post():Boolean{
return (this._126536785can_post);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data.stream
Section 105
//GetCommentsData (com.facebook.data.stream.GetCommentsData)
package com.facebook.data.stream {
import com.facebook.data.*;
import mx.events.*;
public class GetCommentsData extends FacebookData {
private var _602415628comments:Array;
public function set comments(_arg1:Array):void{
var _local2:Object = this._602415628comments;
if (_local2 !== _arg1){
this._602415628comments = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "comments", _local2, _arg1));
};
}
public function get comments():Array{
return (this._602415628comments);
}
}
}//package com.facebook.data.stream
Section 106
//GetFiltersData (com.facebook.data.stream.GetFiltersData)
package com.facebook.data.stream {
import com.facebook.data.*;
import mx.events.*;
public class GetFiltersData extends FacebookData {
private var _854547461filters:StreamFilterCollection;
public function get filters():StreamFilterCollection{
return (this._854547461filters);
}
public function set filters(_arg1:StreamFilterCollection):void{
var _local2:Object = this._854547461filters;
if (_local2 !== _arg1){
this._854547461filters = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filters", _local2, _arg1));
};
}
}
}//package com.facebook.data.stream
Section 107
//GetStreamData (com.facebook.data.stream.GetStreamData)
package com.facebook.data.stream {
import com.facebook.data.*;
import mx.events.*;
import com.facebook.data.photos.*;
public class GetStreamData extends FacebookData {
private var _1884266413stories:StreamStoryCollection;
private var _1415163932albums:AlbumCollection;
private var _1002263574profiles:ProfileCollection;
public function get albums():AlbumCollection{
return (this._1415163932albums);
}
public function set stories(_arg1:StreamStoryCollection):void{
var _local2:Object = this._1884266413stories;
if (_local2 !== _arg1){
this._1884266413stories = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "stories", _local2, _arg1));
};
}
public function get profiles():ProfileCollection{
return (this._1002263574profiles);
}
public function set albums(_arg1:AlbumCollection):void{
var _local2:Object = this._1415163932albums;
if (_local2 !== _arg1){
this._1415163932albums = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "albums", _local2, _arg1));
};
}
public function get stories():StreamStoryCollection{
return (this._1884266413stories);
}
public function set profiles(_arg1:ProfileCollection):void{
var _local2:Object = this._1002263574profiles;
if (_local2 !== _arg1){
this._1002263574profiles = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profiles", _local2, _arg1));
};
}
}
}//package com.facebook.data.stream
Section 108
//LikesData (com.facebook.data.stream.LikesData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class LikesData implements IEventDispatcher {
private var _600094315friends:Array;
private var _3211051href:String;
private var _126661978can_like:Boolean;
private var _909675094sample:Array;
private var _94851343count:uint;
private var _bindingEventDispatcher:EventDispatcher;
private var _1928023624user_likes:Boolean;
public function LikesData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set can_like(_arg1:Boolean):void{
var _local2:Object = this._126661978can_like;
if (_local2 !== _arg1){
this._126661978can_like = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "can_like", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get count():uint{
return (this._94851343count);
}
public function set user_likes(_arg1:Boolean):void{
var _local2:Object = this._1928023624user_likes;
if (_local2 !== _arg1){
this._1928023624user_likes = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "user_likes", _local2, _arg1));
};
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set sample(_arg1:Array):void{
var _local2:Object = this._909675094sample;
if (_local2 !== _arg1){
this._909675094sample = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sample", _local2, _arg1));
};
}
public function get friends():Array{
return (this._600094315friends);
}
public function set href(_arg1:String):void{
var _local2:Object = this._3211051href;
if (_local2 !== _arg1){
this._3211051href = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", _local2, _arg1));
};
}
public function get user_likes():Boolean{
return (this._1928023624user_likes);
}
public function set count(_arg1:uint):void{
var _local2:Object = this._94851343count;
if (_local2 !== _arg1){
this._94851343count = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "count", _local2, _arg1));
};
}
public function get can_like():Boolean{
return (this._126661978can_like);
}
public function get sample():Array{
return (this._909675094sample);
}
public function set friends(_arg1:Array):void{
var _local2:Object = this._600094315friends;
if (_local2 !== _arg1){
this._600094315friends = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "friends", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get href():String{
return (this._3211051href);
}
}
}//package com.facebook.data.stream
Section 109
//PhotoMedia (com.facebook.data.stream.PhotoMedia)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class PhotoMedia implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _110987pid:String;
private var _100346066index:uint;
private var _96572aid:String;
private var _106164915owner:String;
public function PhotoMedia(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get pid():String{
return (this._110987pid);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get index():uint{
return (this._100346066index);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set pid(_arg1:String):void{
var _local2:Object = this._110987pid;
if (_local2 !== _arg1){
this._110987pid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pid", _local2, _arg1));
};
}
public function set owner(_arg1:String):void{
var _local2:Object = this._106164915owner;
if (_local2 !== _arg1){
this._106164915owner = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", _local2, _arg1));
};
}
public function set index(_arg1:uint):void{
var _local2:Object = this._100346066index;
if (_local2 !== _arg1){
this._100346066index = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "index", _local2, _arg1));
};
}
public function get owner():String{
return (this._106164915owner);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set aid(_arg1:String):void{
var _local2:Object = this._96572aid;
if (_local2 !== _arg1){
this._96572aid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "aid", _local2, _arg1));
};
}
public function get aid():String{
return (this._96572aid);
}
}
}//package com.facebook.data.stream
Section 110
//PostCommentData (com.facebook.data.stream.PostCommentData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class PostCommentData implements IEventDispatcher {
private var _1266097595fromid:String;
private var _3556653text:String;
private var _3560141time:Date;
private var _3355id:String;
private var _bindingEventDispatcher:EventDispatcher;
public function PostCommentData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function get fromid():String{
return (this._1266097595fromid);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set fromid(_arg1:String):void{
var _local2:Object = this._1266097595fromid;
if (_local2 !== _arg1){
this._1266097595fromid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "fromid", _local2, _arg1));
};
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get time():Date{
return (this._3560141time);
}
public function set time(_arg1:Date):void{
var _local2:Object = this._3560141time;
if (_local2 !== _arg1){
this._3560141time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "time", _local2, _arg1));
};
}
public function get id():String{
return (this._3355id);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set text(_arg1:String):void{
var _local2:Object = this._3556653text;
if (_local2 !== _arg1){
this._3556653text = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "text", _local2, _arg1));
};
}
public function get text():String{
return (this._3556653text);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set id(_arg1:String):void{
var _local2:Object = this._3355id;
if (_local2 !== _arg1){
this._3355id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "id", _local2, _arg1));
};
}
}
}//package com.facebook.data.stream
Section 111
//ProfileCollection (com.facebook.data.stream.ProfileCollection)
package com.facebook.data.stream {
import com.facebook.utils.*;
public class ProfileCollection extends FacebookArrayCollection {
public function ProfileCollection(){
super(null, ProfileData);
}
}
}//package com.facebook.data.stream
Section 112
//ProfileData (com.facebook.data.stream.ProfileData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class ProfileData implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _116079url:String;
private var _3373707name:String;
private var _1214494066pic_square:String;
private var _3355id:String;
public function ProfileData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get id():String{
return (this._3355id);
}
public function set url(_arg1:String):void{
var _local2:Object = this._116079url;
if (_local2 !== _arg1){
this._116079url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "url", _local2, _arg1));
};
}
public function set pic_square(_arg1:String):void{
var _local2:Object = this._1214494066pic_square;
if (_local2 !== _arg1){
this._1214494066pic_square = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", _local2, _arg1));
};
}
public function get url():String{
return (this._116079url);
}
public function get pic_square():String{
return (this._1214494066pic_square);
}
public function set id(_arg1:String):void{
var _local2:Object = this._3355id;
if (_local2 !== _arg1){
this._3355id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "id", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data.stream
Section 113
//StreamFilterCollection (com.facebook.data.stream.StreamFilterCollection)
package com.facebook.data.stream {
import com.facebook.utils.*;
public class StreamFilterCollection extends FacebookArrayCollection {
public function StreamFilterCollection(){
super(null, StreamFilterData);
}
}
}//package com.facebook.data.stream
Section 114
//StreamFilterData (com.facebook.data.stream.StreamFilterData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class StreamFilterData implements IEventDispatcher {
private var _737588055icon_url:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _3373707name:String;
private var _1967053405is_visible:Boolean;
private var _3575610type:String;
private var _115792uid:String;
private var _1552737000filter_key:String;
private var _3492908rank:uint;
private var _111972721value:String;
public function StreamFilterData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set is_visible(_arg1:Boolean):void{
var _local2:Object = this._1967053405is_visible;
if (_local2 !== _arg1){
this._1967053405is_visible = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_visible", _local2, _arg1));
};
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get type():String{
return (this._3575610type);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set icon_url(_arg1:String):void{
var _local2:Object = this._737588055icon_url;
if (_local2 !== _arg1){
this._737588055icon_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "icon_url", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get filter_key():String{
return (this._1552737000filter_key);
}
public function set rank(_arg1:uint):void{
var _local2:Object = this._3492908rank;
if (_local2 !== _arg1){
this._3492908rank = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "rank", _local2, _arg1));
};
}
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function set value(_arg1:String):void{
var _local2:Object = this._111972721value;
if (_local2 !== _arg1){
this._111972721value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", _local2, _arg1));
};
}
public function get is_visible():Boolean{
return (this._1967053405is_visible);
}
public function get icon_url():String{
return (this._737588055icon_url);
}
public function set filter_key(_arg1:String):void{
var _local2:Object = this._1552737000filter_key;
if (_local2 !== _arg1){
this._1552737000filter_key = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filter_key", _local2, _arg1));
};
}
public function get value():String{
return (this._111972721value);
}
public function get uid():String{
return (this._115792uid);
}
public function get rank():uint{
return (this._3492908rank);
}
}
}//package com.facebook.data.stream
Section 115
//StreamMediaData (com.facebook.data.stream.StreamMediaData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class StreamMediaData implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _3575610type:String;
private var _96681alt:String;
private var _3211051href:String;
private var _106642994photo:PhotoMedia;
private var _114148src:String;
private var _112202875video:VideoMedia;
public function StreamMediaData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get video():VideoMedia{
return (this._112202875video);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function toString():String{
return ([("type: " + type), ("href: " + href), ("src: " + src), ("alt: " + alt), ("photo: " + photo), ("video: " + video)].join(": "));
}
public function get src():String{
return (this._114148src);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set src(_arg1:String):void{
var _local2:Object = this._114148src;
if (_local2 !== _arg1){
this._114148src = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "src", _local2, _arg1));
};
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set alt(_arg1:String):void{
var _local2:Object = this._96681alt;
if (_local2 !== _arg1){
this._96681alt = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "alt", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set href(_arg1:String):void{
var _local2:Object = this._3211051href;
if (_local2 !== _arg1){
this._3211051href = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "href", _local2, _arg1));
};
}
public function get alt():String{
return (this._96681alt);
}
public function get href():String{
return (this._3211051href);
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function set video(_arg1:VideoMedia):void{
var _local2:Object = this._112202875video;
if (_local2 !== _arg1){
this._112202875video = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "video", _local2, _arg1));
};
}
public function get photo():PhotoMedia{
return (this._106642994photo);
}
public function get type():String{
return (this._3575610type);
}
public function set photo(_arg1:PhotoMedia):void{
var _local2:Object = this._106642994photo;
if (_local2 !== _arg1){
this._106642994photo = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "photo", _local2, _arg1));
};
}
}
}//package com.facebook.data.stream
Section 116
//StreamStoryCollection (com.facebook.data.stream.StreamStoryCollection)
package com.facebook.data.stream {
import com.facebook.utils.*;
public class StreamStoryCollection extends FacebookArrayCollection {
public function StreamStoryCollection(){
super(null, StreamStoryData);
}
}
}//package com.facebook.data.stream
Section 117
//StreamStoryData (com.facebook.data.stream.StreamStoryData)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class StreamStoryData implements IEventDispatcher {
private var _1650554971actor_id:String;
private var _954925063message:String;
private var _3575610type:uint;
private var _314498168privacy:String;
private var _1698410561source_id:String;
private var _bindingEventDispatcher:EventDispatcher;
private var _1963501277attachment:AttachmentData;
private var _815576439target_id:String;
private var _2003148228created_time:Date;
private var _1698418180sourceXML:XML;
private var _1411074055app_id:String;
private var _391211750post_id:String;
private var _602415628comments:CommentsData;
private var _102974396likes:LikesData;
private var _450004177metadata:Object;
private var _309882753attribution:String;
private var _472881199updated_time:Date;
private var _1552737000filter_key:String;
private var _1567543704viewer_id:String;
public function StreamStoryData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function set attribution(_arg1:String):void{
var _local2:Object = this._309882753attribution;
if (_local2 !== _arg1){
this._309882753attribution = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attribution", _local2, _arg1));
};
}
public function get message():String{
return (this._954925063message);
}
public function set created_time(_arg1:Date):void{
var _local2:Object = this._2003148228created_time;
if (_local2 !== _arg1){
this._2003148228created_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "created_time", _local2, _arg1));
};
}
public function get target_id():String{
return (this._815576439target_id);
}
public function get sourceXML():XML{
return (this._1698418180sourceXML);
}
public function set message(_arg1:String):void{
var _local2:Object = this._954925063message;
if (_local2 !== _arg1){
this._954925063message = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "message", _local2, _arg1));
};
}
public function get privacy():String{
return (this._314498168privacy);
}
public function set target_id(_arg1:String):void{
var _local2:Object = this._815576439target_id;
if (_local2 !== _arg1){
this._815576439target_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "target_id", _local2, _arg1));
};
}
public function set privacy(_arg1:String):void{
var _local2:Object = this._314498168privacy;
if (_local2 !== _arg1){
this._314498168privacy = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "privacy", _local2, _arg1));
};
}
public function get filter_key():String{
return (this._1552737000filter_key);
}
public function get post_id():String{
return (this._391211750post_id);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get actor_id():String{
return (this._1650554971actor_id);
}
public function get attachment():AttachmentData{
return (this._1963501277attachment);
}
public function get metadata():Object{
return (this._450004177metadata);
}
public function set filter_key(_arg1:String):void{
var _local2:Object = this._1552737000filter_key;
if (_local2 !== _arg1){
this._1552737000filter_key = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "filter_key", _local2, _arg1));
};
}
public function set updated_time(_arg1:Date):void{
var _local2:Object = this._472881199updated_time;
if (_local2 !== _arg1){
this._472881199updated_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "updated_time", _local2, _arg1));
};
}
public function set post_id(_arg1:String):void{
var _local2:Object = this._391211750post_id;
if (_local2 !== _arg1){
this._391211750post_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "post_id", _local2, _arg1));
};
}
public function get type():uint{
return (this._3575610type);
}
public function get likes():LikesData{
return (this._102974396likes);
}
public function get source_id():String{
return (this._1698410561source_id);
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get created_time():Date{
return (this._2003148228created_time);
}
public function set actor_id(_arg1:String):void{
var _local2:Object = this._1650554971actor_id;
if (_local2 !== _arg1){
this._1650554971actor_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "actor_id", _local2, _arg1));
};
}
public function set sourceXML(_arg1:XML):void{
var _local2:Object = this._1698418180sourceXML;
if (_local2 !== _arg1){
this._1698418180sourceXML = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sourceXML", _local2, _arg1));
};
}
public function set viewer_id(_arg1:String):void{
var _local2:Object = this._1567543704viewer_id;
if (_local2 !== _arg1){
this._1567543704viewer_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "viewer_id", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get updated_time():Date{
return (this._472881199updated_time);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function set attachment(_arg1:AttachmentData):void{
var _local2:Object = this._1963501277attachment;
if (_local2 !== _arg1){
this._1963501277attachment = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "attachment", _local2, _arg1));
};
}
public function set metadata(_arg1:Object):void{
var _local2:Object = this._450004177metadata;
if (_local2 !== _arg1){
this._450004177metadata = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "metadata", _local2, _arg1));
};
}
public function get viewer_id():String{
return (this._1567543704viewer_id);
}
public function set comments(_arg1:CommentsData):void{
var _local2:Object = this._602415628comments;
if (_local2 !== _arg1){
this._602415628comments = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "comments", _local2, _arg1));
};
}
public function set app_id(_arg1:String):void{
var _local2:Object = this._1411074055app_id;
if (_local2 !== _arg1){
this._1411074055app_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "app_id", _local2, _arg1));
};
}
public function set type(_arg1:uint):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function set likes(_arg1:LikesData):void{
var _local2:Object = this._102974396likes;
if (_local2 !== _arg1){
this._102974396likes = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "likes", _local2, _arg1));
};
}
public function get app_id():String{
return (this._1411074055app_id);
}
public function get comments():CommentsData{
return (this._602415628comments);
}
public function set source_id(_arg1:String):void{
var _local2:Object = this._1698410561source_id;
if (_local2 !== _arg1){
this._1698410561source_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source_id", _local2, _arg1));
};
}
public function get attribution():String{
return (this._309882753attribution);
}
}
}//package com.facebook.data.stream
Section 118
//VideoMedia (com.facebook.data.stream.VideoMedia)
package com.facebook.data.stream {
import flash.events.*;
import mx.events.*;
public class VideoMedia implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _1714674802display_url:String;
private var _1111107765source_url:String;
private var _106164915owner:String;
private var _668433131permalink:String;
public function VideoMedia(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get source_url():String{
return (this._1111107765source_url);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set source_url(_arg1:String):void{
var _local2:Object = this._1111107765source_url;
if (_local2 !== _arg1){
this._1111107765source_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "source_url", _local2, _arg1));
};
}
public function set permalink(_arg1:String):void{
var _local2:Object = this._668433131permalink;
if (_local2 !== _arg1){
this._668433131permalink = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "permalink", _local2, _arg1));
};
}
public function set display_url(_arg1:String):void{
var _local2:Object = this._1714674802display_url;
if (_local2 !== _arg1){
this._1714674802display_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "display_url", _local2, _arg1));
};
}
public function set owner(_arg1:String):void{
var _local2:Object = this._106164915owner;
if (_local2 !== _arg1){
this._106164915owner = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "owner", _local2, _arg1));
};
}
public function get permalink():String{
return (this._668433131permalink);
}
public function get display_url():String{
return (this._1714674802display_url);
}
public function get owner():String{
return (this._106164915owner);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data.stream
Section 119
//AffiliationCollection (com.facebook.data.users.AffiliationCollection)
package com.facebook.data.users {
import com.facebook.utils.*;
public class AffiliationCollection extends FacebookArrayCollection {
public function AffiliationCollection(){
super(null, AffiliationData);
}
public function addAffiliation(_arg1:AffiliationData):void{
this.addItem(_arg1);
}
}
}//package com.facebook.data.users
Section 120
//AffiliationData (com.facebook.data.users.AffiliationData)
package com.facebook.data.users {
import flash.events.*;
import mx.events.*;
public class AffiliationData implements IEventDispatcher {
private var _892481550status:String;
private var _3575610type:String;
private var _3373707name:String;
private var _3704893year:String;
private var _109065nid:Number;
private var _bindingEventDispatcher:EventDispatcher;
public function AffiliationData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get type():String{
return (this._3575610type);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get nid():Number{
return (this._109065nid);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set nid(_arg1:Number):void{
var _local2:Object = this._109065nid;
if (_local2 !== _arg1){
this._109065nid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set status(_arg1:String):void{
var _local2:Object = this._892481550status;
if (_local2 !== _arg1){
this._892481550status = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", _local2, _arg1));
};
}
public function get status():String{
return (this._892481550status);
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function set year(_arg1:String):void{
var _local2:Object = this._3704893year;
if (_local2 !== _arg1){
this._3704893year = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", _local2, _arg1));
};
}
public function get year():String{
return (this._3704893year);
}
}
}//package com.facebook.data.users
Section 121
//FacebookUser (com.facebook.data.users.FacebookUser)
package com.facebook.data.users {
import com.facebook.data.*;
import mx.events.*;
public class FacebookUser extends FacebookData {
private var _160985414first_name:String;// = ""
private var _1194426210hs_info:String;
private var _1458126743pic_small_with_logo:String;
private var _113766sex:String;
private var _2076227591timezone:int;
private var _883056542meeting_sex:Array;
private var _213573361pic_with_logo:String;
private var _578385717pic_big:String;
private var _883068731meeting_for:Array;
private var _948399753quotes:String;
private var _2013122196last_name:String;// = ""
private var _1391670531education_history:Array;
private var _178029017profile_url:String;
private var _2082876945notes_count:int;
private var _1807033469affiliations:Array;
private var _1068259517movies:String;
private var _1678075120pic_big_with_logo:String;
private var _547435215religion:String;
private var _1762076142pic_small:String;
private var _1341293220hs1_name:String;
private var _432843422is_app_user:Boolean;
private var _1168278276isLoggedInUser:Boolean;
private var _1126443963current_location:FacebookLocation;
private var _1369922371hs2_name:String;
private var _776713425networkAffiliations:Array;
private var _2002886397has_added_app:Boolean;
private var _104263205music:String;
private var _2512963hometown_location:FacebookLocation;
private var _2025166887relationship_status:String;
private var _1214494066pic_square:String;
private var _1209746477hs2_id:int;
private var _1069376125birthday:String;
private var _3714tv:String;
private var _1478774426work_history:Array;
private var _1413913325profile_update_time:Date;
private var _1097462182locale:String;
private var _103846849email_hashes:Array;
private var _892481550status:StatusData;
private var _3373707name:String;// = ""
private var _1182884599pic_square_with_logo:String;
private var _115792uid:String;
private var _1209776268hs1_id:int;
private var _210452739political:String;
private var _110986pic:String;
private var _172288934proxied_email:String;
private var _1524435058grad_year:String;
private var _1332014026significant_other_id:int;
private var _2048605165activities:String;
private var _2059518005birthdayDate:Date;
private var _93921962books:String;
private var _2013968806wall_count:int;
private var _1619363722about_me:String;
private var _502611593interests:String;
public function FacebookUser():void{
}
public function get timezone():int{
return (this._2076227591timezone);
}
public function set education_history(_arg1:Array):void{
var _local2:Object = this._1391670531education_history;
if (_local2 !== _arg1){
this._1391670531education_history = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "education_history", _local2, _arg1));
};
}
public function set has_added_app(_arg1:Boolean):void{
var _local2:Object = this._2002886397has_added_app;
if (_local2 !== _arg1){
this._2002886397has_added_app = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "has_added_app", _local2, _arg1));
};
}
public function get pic_small():String{
return (this._1762076142pic_small);
}
public function get notes_count():int{
return (this._2082876945notes_count);
}
public function set pic_big_with_logo(_arg1:String):void{
var _local2:Object = this._1678075120pic_big_with_logo;
if (_local2 !== _arg1){
this._1678075120pic_big_with_logo = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big_with_logo", _local2, _arg1));
};
}
public function set pic_small(_arg1:String):void{
var _local2:Object = this._1762076142pic_small;
if (_local2 !== _arg1){
this._1762076142pic_small = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small", _local2, _arg1));
};
}
public function get music():String{
return (this._104263205music);
}
public function set notes_count(_arg1:int):void{
var _local2:Object = this._2082876945notes_count;
if (_local2 !== _arg1){
this._2082876945notes_count = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "notes_count", _local2, _arg1));
};
}
public function set pic_with_logo(_arg1:String):void{
var _local2:Object = this._213573361pic_with_logo;
if (_local2 !== _arg1){
this._213573361pic_with_logo = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_with_logo", _local2, _arg1));
};
}
public function get significant_other_id():int{
return (this._1332014026significant_other_id);
}
public function get email_hashes():Array{
return (this._103846849email_hashes);
}
public function get hometown_location():FacebookLocation{
return (this._2512963hometown_location);
}
public function set music(_arg1:String):void{
var _local2:Object = this._104263205music;
if (_local2 !== _arg1){
this._104263205music = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "music", _local2, _arg1));
};
}
public function get uid():String{
return (this._115792uid);
}
public function get wall_count():int{
return (this._2013968806wall_count);
}
public function get proxied_email():String{
return (this._172288934proxied_email);
}
public function set religion(_arg1:String):void{
var _local2:Object = this._547435215religion;
if (_local2 !== _arg1){
this._547435215religion = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "religion", _local2, _arg1));
};
}
public function get sex():String{
return (this._113766sex);
}
public function set significant_other_id(_arg1:int):void{
var _local2:Object = this._1332014026significant_other_id;
if (_local2 !== _arg1){
this._1332014026significant_other_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "significant_other_id", _local2, _arg1));
};
}
public function get meeting_sex():Array{
return (this._883056542meeting_sex);
}
public function get locale():String{
return (this._1097462182locale);
}
public function get birthday():String{
return (this._1069376125birthday);
}
public function get tv():String{
return (this._3714tv);
}
public function set email_hashes(_arg1:Array):void{
var _local2:Object = this._103846849email_hashes;
if (_local2 !== _arg1){
this._103846849email_hashes = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "email_hashes", _local2, _arg1));
};
}
public function get interests():String{
return (this._502611593interests);
}
public function get name():String{
return (this._3373707name);
}
public function set movies(_arg1:String):void{
var _local2:Object = this._1068259517movies;
if (_local2 !== _arg1){
this._1068259517movies = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "movies", _local2, _arg1));
};
}
public function get last_name():String{
return (this._2013122196last_name);
}
public function get is_app_user():Boolean{
return (this._432843422is_app_user);
}
public function get hs1_name():String{
return (this._1341293220hs1_name);
}
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function set hometown_location(_arg1:FacebookLocation):void{
var _local2:Object = this._2512963hometown_location;
if (_local2 !== _arg1){
this._2512963hometown_location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hometown_location", _local2, _arg1));
};
}
public function set hs2_name(_arg1:String):void{
var _local2:Object = this._1369922371hs2_name;
if (_local2 !== _arg1){
this._1369922371hs2_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs2_name", _local2, _arg1));
};
}
public function set wall_count(_arg1:int):void{
var _local2:Object = this._2013968806wall_count;
if (_local2 !== _arg1){
this._2013968806wall_count = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "wall_count", _local2, _arg1));
};
}
public function get books():String{
return (this._93921962books);
}
public function get first_name():String{
return (this._160985414first_name);
}
public function set proxied_email(_arg1:String):void{
var _local2:Object = this._172288934proxied_email;
if (_local2 !== _arg1){
this._172288934proxied_email = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "proxied_email", _local2, _arg1));
};
}
public function set locale(_arg1:String):void{
var _local2:Object = this._1097462182locale;
if (_local2 !== _arg1){
this._1097462182locale = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "locale", _local2, _arg1));
};
}
public function set meeting_sex(_arg1:Array):void{
var _local2:Object = this._883056542meeting_sex;
if (_local2 !== _arg1){
this._883056542meeting_sex = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "meeting_sex", _local2, _arg1));
};
}
public function get meeting_for():Array{
return (this._883068731meeting_for);
}
public function get pic_big():String{
return (this._578385717pic_big);
}
public function set work_history(_arg1:Array):void{
var _local2:Object = this._1478774426work_history;
if (_local2 !== _arg1){
this._1478774426work_history = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "work_history", _local2, _arg1));
};
}
public function get networkAffiliations():Array{
return (this._776713425networkAffiliations);
}
public function set sex(_arg1:String):void{
var _local2:Object = this._113766sex;
if (_local2 !== _arg1){
this._113766sex = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "sex", _local2, _arg1));
};
}
public function set pic_square(_arg1:String):void{
var _local2:Object = this._1214494066pic_square;
if (_local2 !== _arg1){
this._1214494066pic_square = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square", _local2, _arg1));
};
}
public function set hs_info(_arg1:String):void{
var _local2:Object = this._1194426210hs_info;
if (_local2 !== _arg1){
this._1194426210hs_info = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs_info", _local2, _arg1));
};
}
public function set hs1_id(_arg1:int):void{
var _local2:Object = this._1209776268hs1_id;
if (_local2 !== _arg1){
this._1209776268hs1_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs1_id", _local2, _arg1));
};
}
public function get profile_update_time():Date{
return (this._1413913325profile_update_time);
}
public function set quotes(_arg1:String):void{
var _local2:Object = this._948399753quotes;
if (_local2 !== _arg1){
this._948399753quotes = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "quotes", _local2, _arg1));
};
}
public function get pic_square_with_logo():String{
return (this._1182884599pic_square_with_logo);
}
public function set birthday(_arg1:String):void{
var _local2:Object = this._1069376125birthday;
if (_local2 !== _arg1){
this._1069376125birthday = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "birthday", _local2, _arg1));
};
}
public function get isLoggedInUser():Boolean{
return (this._1168278276isLoggedInUser);
}
public function get political():String{
return (this._210452739political);
}
public function set tv(_arg1:String):void{
var _local2:Object = this._3714tv;
if (_local2 !== _arg1){
this._3714tv = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "tv", _local2, _arg1));
};
}
public function set affiliations(_arg1:Array):void{
var _local2:Object = this._1807033469affiliations;
if (_local2 !== _arg1){
this._1807033469affiliations = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "affiliations", _local2, _arg1));
};
}
public function get education_history():Array{
return (this._1391670531education_history);
}
public function get pic_with_logo():String{
return (this._213573361pic_with_logo);
}
public function set interests(_arg1:String):void{
var _local2:Object = this._502611593interests;
if (_local2 !== _arg1){
this._502611593interests = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "interests", _local2, _arg1));
};
}
public function get has_added_app():Boolean{
return (this._2002886397has_added_app);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function get pic_big_with_logo():String{
return (this._1678075120pic_big_with_logo);
}
public function set pic(_arg1:String):void{
var _local2:Object = this._110986pic;
if (_local2 !== _arg1){
this._110986pic = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic", _local2, _arg1));
};
}
public function set last_name(_arg1:String):void{
var _local2:Object = this._2013122196last_name;
if (_local2 !== _arg1){
this._2013122196last_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "last_name", _local2, _arg1));
};
}
public function set grad_year(_arg1:String):void{
var _local2:Object = this._1524435058grad_year;
if (_local2 !== _arg1){
this._1524435058grad_year = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "grad_year", _local2, _arg1));
};
}
public function set pic_small_with_logo(_arg1:String):void{
var _local2:Object = this._1458126743pic_small_with_logo;
if (_local2 !== _arg1){
this._1458126743pic_small_with_logo = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_small_with_logo", _local2, _arg1));
};
}
public function get religion():String{
return (this._547435215religion);
}
public function set is_app_user(_arg1:Boolean):void{
var _local2:Object = this._432843422is_app_user;
if (_local2 !== _arg1){
this._432843422is_app_user = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "is_app_user", _local2, _arg1));
};
}
public function set about_me(_arg1:String):void{
var _local2:Object = this._1619363722about_me;
if (_local2 !== _arg1){
this._1619363722about_me = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "about_me", _local2, _arg1));
};
}
public function set hs1_name(_arg1:String):void{
var _local2:Object = this._1341293220hs1_name;
if (_local2 !== _arg1){
this._1341293220hs1_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs1_name", _local2, _arg1));
};
}
public function get movies():String{
return (this._1068259517movies);
}
public function get hs2_name():String{
return (this._1369922371hs2_name);
}
public function set books(_arg1:String):void{
var _local2:Object = this._93921962books;
if (_local2 !== _arg1){
this._93921962books = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "books", _local2, _arg1));
};
}
public function get work_history():Array{
return (this._1478774426work_history);
}
public function get hs_info():String{
return (this._1194426210hs_info);
}
public function get pic_square():String{
return (this._1214494066pic_square);
}
public function set first_name(_arg1:String):void{
var _local2:Object = this._160985414first_name;
if (_local2 !== _arg1){
this._160985414first_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "first_name", _local2, _arg1));
};
}
public function set current_location(_arg1:FacebookLocation):void{
var _local2:Object = this._1126443963current_location;
if (_local2 !== _arg1){
this._1126443963current_location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "current_location", _local2, _arg1));
};
}
public function get hs1_id():int{
return (this._1209776268hs1_id);
}
public function get affiliations():Array{
return (this._1807033469affiliations);
}
public function get quotes():String{
return (this._948399753quotes);
}
public function get grad_year():String{
return (this._1524435058grad_year);
}
public function get pic_small_with_logo():String{
return (this._1458126743pic_small_with_logo);
}
public function get pic():String{
return (this._110986pic);
}
public function set pic_big(_arg1:String):void{
var _local2:Object = this._578385717pic_big;
if (_local2 !== _arg1){
this._578385717pic_big = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_big", _local2, _arg1));
};
}
public function set networkAffiliations(_arg1:Array):void{
var _local2:Object = this._776713425networkAffiliations;
if (_local2 !== _arg1){
this._776713425networkAffiliations = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "networkAffiliations", _local2, _arg1));
};
}
public function set birthdayDate(_arg1:Date):void{
var _local2:Object = this._2059518005birthdayDate;
if (_local2 !== _arg1){
this._2059518005birthdayDate = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "birthdayDate", _local2, _arg1));
};
}
public function set hs2_id(_arg1:int):void{
var _local2:Object = this._1209746477hs2_id;
if (_local2 !== _arg1){
this._1209746477hs2_id = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "hs2_id", _local2, _arg1));
};
}
public function get about_me():String{
return (this._1619363722about_me);
}
public function set relationship_status(_arg1:String):void{
var _local2:Object = this._2025166887relationship_status;
if (_local2 !== _arg1){
this._2025166887relationship_status = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "relationship_status", _local2, _arg1));
};
}
public function set meeting_for(_arg1:Array):void{
var _local2:Object = this._883068731meeting_for;
if (_local2 !== _arg1){
this._883068731meeting_for = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "meeting_for", _local2, _arg1));
};
}
public function set profile_url(_arg1:String):void{
var _local2:Object = this._178029017profile_url;
if (_local2 !== _arg1){
this._178029017profile_url = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profile_url", _local2, _arg1));
};
}
public function get current_location():FacebookLocation{
return (this._1126443963current_location);
}
public function get birthdayDate():Date{
return (this._2059518005birthdayDate);
}
public function get hs2_id():int{
return (this._1209746477hs2_id);
}
public function get relationship_status():String{
return (this._2025166887relationship_status);
}
public function set profile_update_time(_arg1:Date):void{
var _local2:Object = this._1413913325profile_update_time;
if (_local2 !== _arg1){
this._1413913325profile_update_time = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "profile_update_time", _local2, _arg1));
};
}
public function get profile_url():String{
return (this._178029017profile_url);
}
public function set activities(_arg1:String):void{
var _local2:Object = this._2048605165activities;
if (_local2 !== _arg1){
this._2048605165activities = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "activities", _local2, _arg1));
};
}
public function set status(_arg1:StatusData):void{
var _local2:Object = this._892481550status;
if (_local2 !== _arg1){
this._892481550status = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", _local2, _arg1));
};
}
public function get activities():String{
return (this._2048605165activities);
}
public function set pic_square_with_logo(_arg1:String):void{
var _local2:Object = this._1182884599pic_square_with_logo;
if (_local2 !== _arg1){
this._1182884599pic_square_with_logo = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "pic_square_with_logo", _local2, _arg1));
};
}
public function set timezone(_arg1:int):void{
var _local2:Object = this._2076227591timezone;
if (_local2 !== _arg1){
this._2076227591timezone = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "timezone", _local2, _arg1));
};
}
public function set isLoggedInUser(_arg1:Boolean):void{
var _local2:Object = this._1168278276isLoggedInUser;
if (_local2 !== _arg1){
this._1168278276isLoggedInUser = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "isLoggedInUser", _local2, _arg1));
};
}
public function get status():StatusData{
return (this._892481550status);
}
public function set political(_arg1:String):void{
var _local2:Object = this._210452739political;
if (_local2 !== _arg1){
this._210452739political = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "political", _local2, _arg1));
};
}
}
}//package com.facebook.data.users
Section 122
//FacebookUserCollection (com.facebook.data.users.FacebookUserCollection)
package com.facebook.data.users {
import com.facebook.utils.*;
public class FacebookUserCollection extends FacebookArrayCollection {
public function FacebookUserCollection(){
super(null, FacebookUser);
}
public function getUserById(_arg1:int):FacebookUser{
return ((findItemByProperty("uid", _arg1) as FacebookUser));
}
public function addUser(_arg1:FacebookUser):void{
addItem(_arg1);
}
}
}//package com.facebook.data.users
Section 123
//GetInfoData (com.facebook.data.users.GetInfoData)
package com.facebook.data.users {
import com.facebook.data.*;
import mx.events.*;
public class GetInfoData extends FacebookData {
private var _986811191userCollection:FacebookUserCollection;
public function get userCollection():FacebookUserCollection{
return (this._986811191userCollection);
}
public function set userCollection(_arg1:FacebookUserCollection):void{
var _local2:Object = this._986811191userCollection;
if (_local2 !== _arg1){
this._986811191userCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "userCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.users
Section 124
//GetStandardInfoData (com.facebook.data.users.GetStandardInfoData)
package com.facebook.data.users {
import com.facebook.data.*;
import mx.events.*;
public class GetStandardInfoData extends FacebookData {
private var _986811191userCollection:UserCollection;
public function get userCollection():UserCollection{
return (this._986811191userCollection);
}
public function set userCollection(_arg1:UserCollection):void{
var _local2:Object = this._986811191userCollection;
if (_local2 !== _arg1){
this._986811191userCollection = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "userCollection", _local2, _arg1));
};
}
}
}//package com.facebook.data.users
Section 125
//StatusData (com.facebook.data.users.StatusData)
package com.facebook.data.users {
public class StatusData {
public var time:Date;
public var message:String;
}
}//package com.facebook.data.users
Section 126
//UserCollection (com.facebook.data.users.UserCollection)
package com.facebook.data.users {
import com.facebook.utils.*;
public class UserCollection extends FacebookArrayCollection {
public function UserCollection(_arg1:Array=null){
super(null, UserData);
}
}
}//package com.facebook.data.users
Section 127
//UserData (com.facebook.data.users.UserData)
package com.facebook.data.users {
import flash.events.*;
import mx.events.*;
public class UserData implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
private var _160985414first_name:String;
private var _3373707name:String;
private var _2013122196last_name:String;
private var _2076227591timezone:Number;
private var _115792uid:String;
private var _1700293062affiations:AffiliationCollection;
public function UserData(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function set timezone(_arg1:Number):void{
var _local2:Object = this._2076227591timezone;
if (_local2 !== _arg1){
this._2076227591timezone = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "timezone", _local2, _arg1));
};
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get affiations():AffiliationCollection{
return (this._1700293062affiations);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function set affiations(_arg1:AffiliationCollection):void{
var _local2:Object = this._1700293062affiations;
if (_local2 !== _arg1){
this._1700293062affiations = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "affiations", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get uid():String{
return (this._115792uid);
}
public function get last_name():String{
return (this._2013122196last_name);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set uid(_arg1:String):void{
var _local2:Object = this._115792uid;
if (_local2 !== _arg1){
this._115792uid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "uid", _local2, _arg1));
};
}
public function set last_name(_arg1:String):void{
var _local2:Object = this._2013122196last_name;
if (_local2 !== _arg1){
this._2013122196last_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "last_name", _local2, _arg1));
};
}
public function set first_name(_arg1:String):void{
var _local2:Object = this._160985414first_name;
if (_local2 !== _arg1){
this._160985414first_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "first_name", _local2, _arg1));
};
}
public function get timezone():Number{
return (this._2076227591timezone);
}
public function get first_name():String{
return (this._160985414first_name);
}
public function toString():String{
return ((((((((((((("[ UserData uid: " + uid) + " affiation:") + affiations) + " first_name:") + first_name) + " last_name:") + last_name) + " name:") + name) + " timezone: ") + timezone) + "]"));
}
}
}//package com.facebook.data.users
Section 128
//ArrayResultData (com.facebook.data.ArrayResultData)
package com.facebook.data {
import mx.events.*;
public class ArrayResultData extends FacebookData {
private var _682377174arrayResult:Array;
public function set arrayResult(_arg1:Array):void{
var _local2:Object = this._682377174arrayResult;
if (_local2 !== _arg1){
this._682377174arrayResult = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "arrayResult", _local2, _arg1));
};
}
public function get arrayResult():Array{
return (this._682377174arrayResult);
}
}
}//package com.facebook.data
Section 129
//BooleanResultData (com.facebook.data.BooleanResultData)
package com.facebook.data {
import mx.events.*;
public class BooleanResultData extends FacebookData {
private var _111972721value:Boolean;
public function get value():Boolean{
return (this._111972721value);
}
public function set value(_arg1:Boolean):void{
var _local2:Object = this._111972721value;
if (_local2 !== _arg1){
this._111972721value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", _local2, _arg1));
};
}
}
}//package com.facebook.data
Section 130
//FacebookData (com.facebook.data.FacebookData)
package com.facebook.data {
import flash.events.*;
public class FacebookData extends EventDispatcher {
public var rawResult:String;
}
}//package com.facebook.data
Section 131
//FacebookEducationInfo (com.facebook.data.FacebookEducationInfo)
package com.facebook.data {
import flash.events.*;
import mx.events.*;
public class FacebookEducationInfo implements IEventDispatcher {
private var _3373707name:String;
private var _1335595316degree:String;
private var _3704893year:String;
private var _157624742concentrations:Array;
private var _bindingEventDispatcher:EventDispatcher;
public function FacebookEducationInfo(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
concentrations = [];
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function set concentrations(_arg1:Array):void{
var _local2:Object = this._157624742concentrations;
if (_local2 !== _arg1){
this._157624742concentrations = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "concentrations", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function get degree():String{
return (this._1335595316degree);
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set degree(_arg1:String):void{
var _local2:Object = this._1335595316degree;
if (_local2 !== _arg1){
this._1335595316degree = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "degree", _local2, _arg1));
};
}
public function get concentrations():Array{
return (this._157624742concentrations);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function set year(_arg1:String):void{
var _local2:Object = this._3704893year;
if (_local2 !== _arg1){
this._3704893year = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", _local2, _arg1));
};
}
public function get year():String{
return (this._3704893year);
}
}
}//package com.facebook.data
Section 132
//FacebookErrorCodes (com.facebook.data.FacebookErrorCodes)
package com.facebook.data {
import flash.events.*;
public class FacebookErrorCodes implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
public static const API_EC_VERSION:Number = 12;
public static const API_EC_PERMISSION_DENIED:Number = 10;
public static const API_EC_HOST_UP:Number = 7;
public static const API_EC_SERVICE:Number = 2;
public static const API_EC_RATE:Number = 9;
public static const API_EC_METHOD:Number = 3;
public static const API_EC_HOST_API:Number = 6;
public static const API_EC_SUCCESS:Number = 0;
public static const SERVER_ERROR:Number = -1;
public static const API_EC_UNKNOWN:Number = 1;
public static const API_EC_DEPRECATED:Number = 11;
public static const API_EC_SECURE:Number = 8;
public static const API_EC_TOO_MANY_CALLS:Number = 4;
public static const API_EC_BAD_IP:Number = 5;
public function FacebookErrorCodes(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data
Section 133
//FacebookErrorReason (com.facebook.data.FacebookErrorReason)
package com.facebook.data {
import flash.events.*;
public class FacebookErrorReason implements IEventDispatcher {
private var _bindingEventDispatcher:EventDispatcher;
public static const CONNECT_TIMEOUT:String = "connectTimeout";
public static const LOAD_TIMEOUT:String = "loadTimeout";
public function FacebookErrorReason(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
}
}//package com.facebook.data
Section 134
//FacebookLocation (com.facebook.data.FacebookLocation)
package com.facebook.data {
import mx.events.*;
public class FacebookLocation extends FacebookData {
private var _957831062country:String;
private var _3053931city:String;
private var _120609zip:String;
private var _891990013street:String;
private var _109757585state:String;
public function get zip():String{
return (this._120609zip);
}
public function set state(_arg1:String):void{
var _local2:Object = this._109757585state;
if (_local2 !== _arg1){
this._109757585state = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "state", _local2, _arg1));
};
}
public function get street():String{
return (this._891990013street);
}
public function set city(_arg1:String):void{
var _local2:Object = this._3053931city;
if (_local2 !== _arg1){
this._3053931city = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "city", _local2, _arg1));
};
}
public function set street(_arg1:String):void{
var _local2:Object = this._891990013street;
if (_local2 !== _arg1){
this._891990013street = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "street", _local2, _arg1));
};
}
public function set zip(_arg1:String):void{
var _local2:Object = this._120609zip;
if (_local2 !== _arg1){
this._120609zip = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "zip", _local2, _arg1));
};
}
public function get city():String{
return (this._3053931city);
}
public function get country():String{
return (this._957831062country);
}
public function get state():String{
return (this._109757585state);
}
public function set country(_arg1:String):void{
var _local2:Object = this._957831062country;
if (_local2 !== _arg1){
this._957831062country = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "country", _local2, _arg1));
};
}
}
}//package com.facebook.data
Section 135
//FacebookNetwork (com.facebook.data.FacebookNetwork)
package com.facebook.data {
import flash.events.*;
import mx.events.*;
public class FacebookNetwork implements IEventDispatcher {
private var _892481550status:String;
private var _3575610type:String;
private var _3373707name:String;
private var _3704893year:String;
private var _109065nid:int;
private var _bindingEventDispatcher:EventDispatcher;
public function FacebookNetwork(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function get type():String{
return (this._3575610type);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function get nid():int{
return (this._109065nid);
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get name():String{
return (this._3373707name);
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function set nid(_arg1:int):void{
var _local2:Object = this._109065nid;
if (_local2 !== _arg1){
this._109065nid = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "nid", _local2, _arg1));
};
}
public function set name(_arg1:String):void{
var _local2:Object = this._3373707name;
if (_local2 !== _arg1){
this._3373707name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "name", _local2, _arg1));
};
}
public function set status(_arg1:String):void{
var _local2:Object = this._892481550status;
if (_local2 !== _arg1){
this._892481550status = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "status", _local2, _arg1));
};
}
public function get status():String{
return (this._892481550status);
}
public function set type(_arg1:String):void{
var _local2:Object = this._3575610type;
if (_local2 !== _arg1){
this._3575610type = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "type", _local2, _arg1));
};
}
public function set year(_arg1:String):void{
var _local2:Object = this._3704893year;
if (_local2 !== _arg1){
this._3704893year = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "year", _local2, _arg1));
};
}
public function get year():String{
return (this._3704893year);
}
}
}//package com.facebook.data
Section 136
//FacebookWorkInfo (com.facebook.data.FacebookWorkInfo)
package com.facebook.data {
import flash.events.*;
import mx.events.*;
public class FacebookWorkInfo implements IEventDispatcher {
private var _1901043637location:FacebookLocation;
private var _1725067410end_date:Date;
private var _1724546052description:String;
private var _1573629589start_date:Date;
private var _747804969position:String;
private var _1429880077company_name:String;
private var _bindingEventDispatcher:EventDispatcher;
public function FacebookWorkInfo(){
_bindingEventDispatcher = new EventDispatcher(IEventDispatcher(this));
super();
}
public function dispatchEvent(_arg1:Event):Boolean{
return (_bindingEventDispatcher.dispatchEvent(_arg1));
}
public function removeEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false):void{
_bindingEventDispatcher.removeEventListener(_arg1, _arg2, _arg3);
}
public function get company_name():String{
return (this._1429880077company_name);
}
public function set end_date(_arg1:Date):void{
var _local2:Object = this._1725067410end_date;
if (_local2 !== _arg1){
this._1725067410end_date = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "end_date", _local2, _arg1));
};
}
public function set position(_arg1:String):void{
var _local2:Object = this._747804969position;
if (_local2 !== _arg1){
this._747804969position = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "position", _local2, _arg1));
};
}
public function addEventListener(_arg1:String, _arg2:Function, _arg3:Boolean=false, _arg4:int=0, _arg5:Boolean=false):void{
_bindingEventDispatcher.addEventListener(_arg1, _arg2, _arg3, _arg4, _arg5);
}
public function willTrigger(_arg1:String):Boolean{
return (_bindingEventDispatcher.willTrigger(_arg1));
}
public function set start_date(_arg1:Date):void{
var _local2:Object = this._1573629589start_date;
if (_local2 !== _arg1){
this._1573629589start_date = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "start_date", _local2, _arg1));
};
}
public function get end_date():Date{
return (this._1725067410end_date);
}
public function set company_name(_arg1:String):void{
var _local2:Object = this._1429880077company_name;
if (_local2 !== _arg1){
this._1429880077company_name = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "company_name", _local2, _arg1));
};
}
public function get position():String{
return (this._747804969position);
}
public function set location(_arg1:FacebookLocation):void{
var _local2:Object = this._1901043637location;
if (_local2 !== _arg1){
this._1901043637location = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "location", _local2, _arg1));
};
}
public function get start_date():Date{
return (this._1573629589start_date);
}
public function hasEventListener(_arg1:String):Boolean{
return (_bindingEventDispatcher.hasEventListener(_arg1));
}
public function get location():FacebookLocation{
return (this._1901043637location);
}
public function set description(_arg1:String):void{
var _local2:Object = this._1724546052description;
if (_local2 !== _arg1){
this._1724546052description = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "description", _local2, _arg1));
};
}
public function get description():String{
return (this._1724546052description);
}
}
}//package com.facebook.data
Section 137
//JSONResultData (com.facebook.data.JSONResultData)
package com.facebook.data {
import mx.events.*;
public class JSONResultData extends FacebookData {
private var _934426595result:Object;
public function set result(_arg1:Object):void{
var _local2:Object = this._934426595result;
if (_local2 !== _arg1){
this._934426595result = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "result", _local2, _arg1));
};
}
public function get result():Object{
return (this._934426595result);
}
}
}//package com.facebook.data
Section 138
//NumberResultData (com.facebook.data.NumberResultData)
package com.facebook.data {
import mx.events.*;
public class NumberResultData extends FacebookData {
private var _111972721value:Number;
public function get value():Number{
return (this._111972721value);
}
public function set value(_arg1:Number):void{
var _local2:Object = this._111972721value;
if (_local2 !== _arg1){
this._111972721value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", _local2, _arg1));
};
}
}
}//package com.facebook.data
Section 139
//StringResultData (com.facebook.data.StringResultData)
package com.facebook.data {
import mx.events.*;
public class StringResultData extends FacebookData {
private var _111972721value:String;
public function get value():String{
return (this._111972721value);
}
public function set value(_arg1:String):void{
var _local2:Object = this._111972721value;
if (_local2 !== _arg1){
this._111972721value = _arg1;
this.dispatchEvent(PropertyChangeEvent.createUpdateEvent(this, "value", _local2, _arg1));
};
}
}
}//package com.facebook.data
Section 140
//XMLDataParser (com.facebook.data.XMLDataParser)
package com.facebook.data {
import flash.events.*;
import com.facebook.errors.*;
import com.facebook.data.users.*;
import com.facebook.utils.*;
import com.adobe.serialization.json.*;
import com.facebook.data.status.*;
import com.facebook.data.fbml.*;
import com.facebook.data.data.*;
import com.facebook.data.notes.*;
import com.facebook.commands.data.*;
import com.facebook.data.application.*;
import com.facebook.data.feed.*;
import com.facebook.data.admin.*;
import com.facebook.data.events.*;
import com.facebook.data.friends.*;
import com.facebook.data.photos.*;
import com.facebook.data.pages.*;
import com.facebook.data.notifications.*;
import com.facebook.data.groups.*;
import com.facebook.data.auth.*;
import com.facebook.data.batch.*;
public class XMLDataParser implements IFacebookResultParser {
protected var fb_namespace:Namespace;
public function XMLDataParser(){
fb_namespace = new Namespace("http://api.facebook.com/1.0/");
}
protected function parseSendEmail(_arg1:XML):ArrayResultData{
var _local2:ArrayResultData = new ArrayResultData();
_local2.arrayResult = FacebookXMLParserUtils.toArray(_arg1);
return (_local2);
}
protected function parseGetPhotos(_arg1:XML):GetPhotosData{
var _local4:*;
var _local5:PhotoData;
var _local2:GetPhotosData = new GetPhotosData();
var _local3:PhotoCollection = new PhotoCollection();
for each (_local4 in _arg1..fb_namespace::photo) {
_local5 = new PhotoData();
_local5.pid = _local4.fb_namespace::pid;
_local5.aid = _local4.fb_namespace::aid;
_local5.owner = _local4.fb_namespace::owner;
_local5.src = _local4.fb_namespace::src;
_local5.src_big = _local4.fb_namespace::src_big;
_local5.src_small = _local4.fb_namespace::src_small;
_local5.caption = _local4.fb_namespace::caption;
_local5.created = FacebookXMLParserUtils.toDate(_local4.fb_namespace::created);
_local3.addPhoto(_local5);
};
_local2.photoCollection = _local3;
return (_local2);
}
protected function parseGetNotifications(_arg1:XML):GetNotificationData{
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:NotificationMessageData;
var _local8:NotificationPokeData;
var _local9:NotificationShareData;
var _local2:GetNotificationData = new GetNotificationData();
var _local3:NotificationCollection = new NotificationCollection();
for each (_local4 in _arg1.fb_namespace::messages) {
_local7 = new NotificationMessageData();
_local7.unread = _local4.fb_namespace::unread;
_local7.most_recent = _local4.fb_namespace::most_recent;
_local3.addItem(_local7);
};
for each (_local5 in _arg1.fb_namespace::pokes) {
_local8 = new NotificationPokeData();
_local8.unread = _local5.fb_namespace::unread;
_local8.most_recent = _local5.fb_namespace::most_recent;
_local3.addItem(_local8);
};
for each (_local6 in _arg1.fb_namespace::shares) {
_local9 = new NotificationShareData();
_local9.unread = _local6.fb_namespace::unread;
_local9.most_recent = _local6.fb_namespace::most_recent;
_local3.addItem(_local9);
};
_local2.friendsRequests = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::friend_requests[0]);
_local2.group_invites = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::group_invites[0]);
_local2.event_invites = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::event_invites[0]);
_local2.notificationCollection = _local3;
return (_local2);
}
public function createFacebookError(_arg1:Object, _arg2:String):FacebookError{
var _local3:FacebookError = new FacebookError();
_local3.rawResult = _arg2;
_local3.errorCode = FacebookErrorCodes.SERVER_ERROR;
if ((_arg1 is Error)){
_local3.error = (_arg1 as Error);
} else {
_local3.errorEvent = (_arg1 as ErrorEvent);
};
return (_local3);
}
protected function getAffiliation(_arg1:XML):AffiliationCollection{
var _local3:*;
var _local4:AffiliationData;
var _local2:AffiliationCollection = new AffiliationCollection();
for each (_local3 in _arg1..fb_namespace::afflication) {
_local4 = new AffiliationData();
_local4.nid = _local3.fb_namespace::nid;
_local4.name = _local3.fb_namespace::name;
_local4.type = _local3.fb_namespace::type;
_local4.status = _local3.fb_namespace::status;
_local4.year = _local3.fb_namespace::year;
_local2.addAffiliation(_local4);
};
return (_local2);
}
protected function parseGetUserPreferences(_arg1:XML):GetUserPreferencesData{
var _local4:*;
var _local5:PreferenceData;
var _local2:GetUserPreferencesData = new GetUserPreferencesData();
var _local3:PreferenceCollection = new PreferenceCollection();
for each (_local4 in _arg1..fb_namespace::preference) {
_local5 = new PreferenceData();
_local5.pref_id = _local4.fb_namespace::pref_id;
_local5.value = _local4.fb_namespace::value;
_local3.addItem(_local5);
};
_local2.perferenceCollection = _local3;
return (_local2);
}
public function parse(_arg1:String, _arg2:String):FacebookData{
var _local3:FacebookData;
var _local4:XML = new XML(_arg1);
switch (_arg2){
case "application.getPublicInfo":
_local3 = parseGetPublicInfo(_local4);
break;
case "data.getCookies":
_local3 = parseGetCookies(_local4);
break;
case "admin.getAllocation":
_local3 = parseGetAllocation(_local4);
break;
case "admin.getAppProperties":
_local3 = parseGetAppProperties(_local4);
break;
case "admin.getMetrics":
_local3 = parseGetMetrics(_local4);
break;
case "auth.getSession":
_local3 = new GetSessionData();
(_local3 as GetSessionData).expires = FacebookXMLParserUtils.toDate(_local4.fb_namespace::expires);
(_local3 as GetSessionData).uid = FacebookXMLParserUtils.toStringValue(_local4.fb_namespace::uid[0]);
(_local3 as GetSessionData).session_key = _local4.fb_namespace::session_key.toString();
(_local3 as GetSessionData).secret = String(_local4.fb_namespace::secret);
break;
case "feed.getRegisteredTemplateBundles":
_local3 = parseGetRegisteredTemplateBundles(_local4);
break;
case "friends.areFriends":
_local3 = parseAreFriends(_local4);
break;
case "notes.get":
_local3 = parseGetNotes(_local4);
break;
case "friends.get":
_local3 = parseGetFriends(_local4);
break;
case "friends.getAppUsers":
_local3 = parseGetAppUsersData(_local4);
break;
case "friends.getLists":
_local3 = parseGetLists(_local4);
break;
case "groups.get":
_local3 = parseGetGroups(_local4);
break;
case "data.getAssociationDefinitions":
_local3 = new FacebookData();
break;
case "data.getAssociationDefinition":
_local3 = new FacebookData();
break;
case "data.getObject":
case "data.getObjects":
_local3 = new FacebookData();
break;
case "groups.getMembers":
_local3 = parseGetGroupMembers(_local4);
break;
case "users.getInfo":
_local3 = parseGetInfo(_local4);
break;
case "data.createObject":
case "data.setHashValue":
case "connect.getUnconnectedFriendsCount":
case "feed.registerTemplateBundle":
_local3 = new NumberResultData();
(_local3 as NumberResultData).value = FacebookXMLParserUtils.toNumber(_local4);
break;
case "notifications.get":
_local3 = parseGetNotifications(_local4);
break;
case "feed.getRegisteredTemplateBundleByID":
_local3 = parseGetRegisteredTemplateBundleByID(_local4);
break;
case "users.getStandardInfo":
_local3 = parseGetStandardInfo(_local4);
break;
case "feed.getRegisteredTemplateBundles":
_local3 = parseGetRegisteredTemplateBundles(_local4);
break;
case "data.getUserPreferences":
_local3 = parseGetUserPreferences(_local4);
break;
case "users.isAppUser":
case "users.hasAppPermission":
case "users.setStatus":
case "pages.isFan":
case "pages.isAppAdded":
case "pages.isAdmin":
case "admin.setAppProperties":
case "auth.expireSession":
case "auth.revokeAuthorization":
case "events.cancel":
case "events.edit":
case "events.rsvp":
case "liveMessage.send":
case "data.undefineAssociation":
case "data.defineAssociation":
case "data.removeHashKeys":
case "data.removeHashKey":
case "data.incHashValue":
case "data.updateObject":
case "data.deleteObject":
case "data.deleteObjects":
case "data.renameAssociation":
case "data.setObjectProperty":
case "profile.setInfo":
case "profile.setInfoOptions":
case "feed.deactivateTemplateBundleByID":
case "feed.publishTemplatizedAction":
case "admin.setRestrictionInfo":
case "data.setCookie":
case "data.createObjectType":
case "notes.delete":
case "notes.edit":
case "data.setUserPreference":
case "data.dropObjectType":
case "data.renameObjectType":
case "fbml.registerCustomTags":
case "fbml.deleteCustomTags":
case "fbml.refreshRefUrl":
case "fbml.refreshImgSrc":
case "fbml.setRefHandle":
case "data.setUserPreferences":
case "data.defineObjectProperty":
case "photos.addTag":
case "stream.addLike":
case "stream.removeLike":
case "stream.removeComment":
_local3 = new BooleanResultData();
(_local3 as BooleanResultData).value = FacebookXMLParserUtils.toBoolean(_local4);
break;
case "feed.publishUserAction":
_local3 = new BooleanResultData();
(_local3 as BooleanResultData).value = FacebookXMLParserUtils.toBoolean(_local4.children()[0]);
break;
case "notifications.sendEmail":
_local3 = parseSendEmail(_local4);
break;
case "data.getObjectTypes":
_local3 = parseGetObjectTypes(_local4);
break;
case "users.getStandardInfo":
_local3 = parseGetStandardInfo(_local4);
break;
case "data.getObjectType":
_local3 = parseGetObjectType(_local4);
break;
case "events.get":
_local3 = parseGetEvent(_local4);
break;
case "events.getMembers":
_local3 = parseGetMembers(_local4);
break;
case "fql.query":
_local3 = new FacebookData();
break;
case "photos.createAlbum":
_local3 = parseCreateAlbum(_local4);
break;
case "photos.get":
_local3 = parseGetPhotos(_local4);
break;
case "photos.getTags":
_local3 = parseGetTags(_local4);
break;
case "photos.getAlbums":
_local3 = parseGetAlbums(_local4);
break;
case "photos.upload":
_local3 = parseFacebookPhoto(_local4);
break;
case "pages.getInfo":
_local3 = parsePageGetInfo(_local4);
break;
case "batch.run":
_local3 = parseBatchRun(_local4);
break;
case "fbml.getCustomTags":
_local3 = parseGetCustomTags(_local4);
break;
case "connect.unregisterUsers":
case "connect.registerUsers":
_local3 = new ArrayResultData();
(_local3 as ArrayResultData).arrayResult = FacebookXMLParserUtils.toArray(_local4);
break;
case "status.get":
_local3 = parseGetStatus(_local4);
break;
case "stream.get":
_local3 = FacebookStreamXMLParser.createStream(_local4, fb_namespace);
break;
case "stream.getComments":
_local3 = FacebookStreamXMLParser.createGetCommentsData(_local4, fb_namespace);
break;
case "stream.getFilters":
_local3 = FacebookStreamXMLParser.createStreamFilterCollection(_local4, fb_namespace);
break;
case "auth.createToken":
case "events.create":
case "links.post":
case "auth.promoteSession":
case "admin.getRestrictionInfo":
case "data.getObjectProperty":
case "notifications.send":
case "notes.create":
case "data.getUserPreference":
case "profile.setFBML":
case "users.getLoggedInUser":
case "stream.addComment":
default:
_local3 = new StringResultData();
(_local3 as StringResultData).value = FacebookXMLParserUtils.toStringValue(_local4);
break;
};
_local3.rawResult = _arg1;
return (_local3);
}
protected function parseGetStandardInfo(_arg1:XML):GetStandardInfoData{
var _local4:*;
var _local5:UserData;
var _local2:GetStandardInfoData = new GetStandardInfoData();
var _local3:UserCollection = new UserCollection();
for each (_local4 in _arg1..fb_namespace::user) {
_local5 = new UserData();
_local5.uid = _local4.fb_namespace::uid;
_local5.affiations = getAffiliation(_local4.fb_namespace::affiliations);
_local5.first_name = _local4.fb_namespace::first_name;
_local5.last_name = _local4.fb_namespace::last_name;
_local5.name = _local4.fb_namespace::name;
_local5.timezone = _local4.fb_namespace::timezone;
_local3.addItem(_local5);
};
_local2.userCollection = _local3;
return (_local2);
}
protected function parseGetAppProperties(_arg1:XML):GetAppPropertiesData{
var _local2:GetAppPropertiesData = new GetAppPropertiesData();
_local2.appProperties = JSON.decode(_arg1.toString());
return (_local2);
}
protected function parseGetRegisteredTemplateBundles(_arg1:XML):GetRegisteredTemplateBundleData{
var _local5:*;
var _local2:GetRegisteredTemplateBundleData = new GetRegisteredTemplateBundleData();
var _local3:TemplateBundleCollection = new TemplateBundleCollection();
var _local4:TemplateCollection = new TemplateCollection();
for each (_local5 in _arg1..fb_namespace::template_bundle) {
getTemplate(_local5.fb_namespace::one_line_story_template, _local4);
getTemplate(_local5.fb_namespace::short_story_templates, _local4);
getTemplate(_local5.fb_namespace::full_story_template, _local4);
_local4.template_bundle_id = _local5.fb_namespace::template_bundle_id;
_local4.time_created = FacebookXMLParserUtils.toDate(_local5.fb_namespace::time_created);
};
_local2.bundleCollection = _local4;
return (_local2);
}
protected function parseGetRegisteredTemplateBundleByID(_arg1:XML):GetRegisteredTemplateBundleByIDData{
var _local2:GetRegisteredTemplateBundleByIDData = new GetRegisteredTemplateBundleByIDData();
var _local3:TemplateCollection = new TemplateCollection();
getTemplate(_arg1.fb_namespace::one_line_story_template, _local3);
getTemplate(_arg1.fb_namespace::short_story_templates, _local3);
getTemplate(_arg1.fb_namespace::full_story_template, _local3);
_local3.template_bundle_id = _arg1.fb_namespace::template_bundle_id;
_local3.time_created = FacebookXMLParserUtils.toDate(_arg1.fb_namespace::time_created);
_local2.templateCollection = _local3;
return (_local2);
}
protected function responseNodeNameToMethodName(_arg1:String):String{
var _local2:Array = _arg1.split("_");
_local2.pop();
return (_local2.join("."));
}
protected function parseGetObjectTypes(_arg1:XML):GetObjectTypesData{
var _local4:*;
var _local5:ObjectTypesData;
var _local2:GetObjectTypesData = new GetObjectTypesData();
var _local3:ObjectTypesCollection = new ObjectTypesCollection();
for each (_local4 in _arg1..fb_namespace::object_type_info) {
_local5 = new ObjectTypesData();
_local5.name = _local4.fb_namespace::name;
_local5.object_class = _local4.fb_namespace::object_class;
_local3.addItem(_local5);
};
_local2.objectTypeCollection = _local3;
return (_local2);
}
protected function parseFacebookPhoto(_arg1:XML):FacebookPhoto{
var _local2:FacebookPhoto = new FacebookPhoto();
_local2.pid = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::pid[0]);
_local2.aid = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::aid[0]);
_local2.owner = FacebookXMLParserUtils.toNumber(_arg1.fb_namespace::owner[0]);
_local2.src = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::src[0]);
_local2.src_big = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::src_big[0]);
_local2.src_small = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::src_small[0]);
_local2.link = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::link[0]);
_local2.caption = FacebookXMLParserUtils.toStringValue(_arg1.fb_namespace::caption[0]);
return (_local2);
}
protected function parseGetObjectType(_arg1:XML):GetObjectTypeData{
var _local2:GetObjectTypeData = new GetObjectTypeData();
_local2.name = _arg1.fb_namespace::name;
_local2.data_type = _arg1.fb_namespace::data_type;
_local2.index_type = _arg1.fb_namespace::index_type;
return (_local2);
}
protected function createTagObject(_arg1:XML, _arg2:Array){
var _local5:AbstractTagData;
var _local7:Object;
var _local3:Number = _arg1.children().length();
var _local4:String = _arg1.children()[0].toLowerCase();
if (_local4 == "leaf"){
_local5 = new LeafTagData(null, null, null, null, null);
(_local5 as LeafTagData).fbml = _arg1.children()[9];
} else {
_local5 = new ContainerTagData(null, null, null, null, null, null, null);
(_local5 as ContainerTagData).open_tag_fbml = _arg1.children()[2];
(_local5 as ContainerTagData).close_tag_fbml = _arg1.children()[4];
};
var _local6:Number = 0;
while (_local6 < _local3) {
_local7 = _arg1.children()[_local6];
switch (_arg2[_local6]){
case "name":
case "type":
case "description":
case "is_public":
case "header_fbml":
case "footer_fbml":
_local5[_arg2[_local6]] = _local7.text();
break;
case "attributes":
if ((_local7.children() is XMLList)){
if (_local7.children().length() == 0){
_local5[_arg2[_local6]] = null;
};
};
break;
};
_local6++;
};
return (_local5);
}
protected function parseGetNotes(_arg1:XML):GetNotesData{
var _local4:*;
var _local5:NoteData;
var _local2:GetNotesData = new GetNotesData();
var _local3:NotesCollection = new NotesCollection();
for each (_local4 in _arg1..fb_namespace::note) {
_local5 = new NoteData();
_local5.note_id = _local4.fb_namespace::note_id;
_local5.title = _local4.fb_namespace::title;
_local5.content = _local4.fb_namespace::content;
_local5.created_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::created_time);
_local5.updated_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::updated_time);
_local5.uid = _local4.fb_namespace::uid;
_local3.addItem(_local5);
};
_local2.notesCollection = _local3;
return (_local2);
}
protected function parseGetMetrics(_arg1:XML):GetMetricsData{
var _local4:*;
var _local5:MetricsData;
var _local2:GetMetricsData = new GetMetricsData();
var _local3:MetricsDataCollection = new MetricsDataCollection();
for each (_local4 in _arg1..fb_namespace::metrics) {
_local5 = new MetricsData();
_local5.end_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::end_time);
_local5.active_users = _local4.fb_namespace::active_users;
_local5.canvas_page_views = _local4.fb_namespace::canvas_page_views;
_local3.addItem(_local5);
};
_local2.metricsCollection = _local3;
return (_local2);
}
protected function parsePageGetInfo(_arg1:XML):GetPageInfoData{
var _local4:*;
var _local5:PageInfoData;
var _local2:GetPageInfoData = new GetPageInfoData();
var _local3:PageInfoCollection = new PageInfoCollection();
for each (_local4 in _arg1.fb_namespace::page) {
_local5 = new PageInfoData();
_local5.page_id = _local4.fb_namespace::page_id;
_local5.name = _local4.fb_namespace::name;
_local5.pic_small = _local4.fb_namespace::pic_small;
_local5.pic_big = _local4.fb_namespace::pic_big;
_local5.pic_square = _local4.fb_namespace::pic_square;
_local5.pic_large = _local4.fb_namespace::pic_large;
_local5.type = _local4.fb_namespace::type;
_local5.website = _local4.fb_namespace::website;
_local5.location = FacebookXMLParserUtils.createLocation(_local4.fb_namespace::location[0], fb_namespace);
_local5.hours = _local4.fb_namespace::hours;
_local5.band_members = _local4.fb_namespace::band_members;
_local5.bio = _local4.fb_namespace::bio;
_local5.hometown = _local4.fb_namespace::hometown;
_local5.genre = FacebookXMLParserUtils.toStringValue(_local4.fb_namespace::genre[0]);
_local5.record_label = _local4.fb_namespace::record_label;
_local5.influences = _local4.fb_namespace::influences;
_local5.has_added_app = FacebookXMLParserUtils.toBoolean(_local4.fb_namespace::has_added_app[0]);
_local5.founded = _local4.fb_namespace::founded;
_local5.company_overview = _local4.fb_namespace::company_overview;
_local5.mission = _local4.fb_namespace::mission;
_local5.products = _local4.fb_namespace::products;
_local5.release_date = _local4.fb_namespace::release_date;
_local5.starring = _local4.fb_namespace::starring;
_local5.written_by = _local4.fb_namespace::written_by;
_local5.directed_by = _local4.fb_namespace::directed_by;
_local5.produced_by = _local4.fb_namespace::produced_by;
_local5.studio = _local4.fb_namespace::studio;
_local5.awards = _local4.fb_namespace::awards;
_local5.plot_outline = _local4.fb_namespace::plot_outline;
_local5.network = _local4.fb_namespace::network;
_local5.season = _local4.fb_namespace::season;
_local5.schedule = _local4.fb_namespace::schedule;
_local3.addPageInfo(_local5);
};
_local2.pageInfoCollection = _local3;
return (_local2);
}
protected function parseGetTags(_arg1:XML):GetTagsData{
var _local4:*;
var _local5:TagData;
var _local2:GetTagsData = new GetTagsData();
var _local3:PhotoTagCollection = new PhotoTagCollection();
for each (_local4 in _arg1..fb_namespace::photo_tag) {
_local5 = new TagData();
_local5.pid = _local4.fb_namespace::pid;
_local5.subject = _local4.fb_namespace::subject;
_local5.xcoord = _local4.fb_namespace::xcoord;
_local5.ycoord = _local4.fb_namespace::ycoord;
_local5.created = FacebookXMLParserUtils.toDate(_local4.fb_namespace::created);
_local3.addPhotoTag(_local5);
};
_local2.photoTagsCollection = _local3;
return (_local2);
}
protected function parseGetGroupMembers(_arg1:XML):GetMemberData{
var _local2:GetMemberData = new GetMemberData();
_local2.members = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::members[0]);
_local2.admins = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::admins[0]);
_local2.officers = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::officers[0]);
_local2.notReplied = FacebookXMLParserUtils.toUIDArray(_arg1.fb_namespace::not_replied[0]);
return (_local2);
}
protected function parseGetGroups(_arg1:XML):GetGroupData{
var _local4:*;
var _local5:GroupData;
var _local2:GetGroupData = new GetGroupData();
var _local3:GroupCollection = new GroupCollection();
for each (_local4 in _arg1..fb_namespace::group) {
_local5 = new GroupData();
_local5.gid = _local4.fb_namespace::gid;
_local5.name = _local4.fb_namespace::name;
_local5.nid = _local4.fb_namespace::nid;
_local5.description = _local4.fb_namespace::description;
_local5.group_type = _local4.fb_namespace::group_type;
_local5.group_subtype = _local4.fb_namespace::group_subtype;
_local5.recent_news = _local4.fb_namespace::recent_news;
_local5.pic = _local4.fb_namespace::pic;
_local5.pic_big = _local4.fb_namespace::pic_big;
_local5.pic_small = _local4.fb_namespace::pic_small;
_local5.creator = _local4.fb_namespace::creator;
_local5.update_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::update_time);
_local5.office = _local4.fb_namespace::office;
_local5.website = _local4.fb_namespace::website;
_local5.venue = FacebookXMLParserUtils.createLocation(_local4.fb_namespace::venue[0], fb_namespace);
_local5.privacy = _local4.fb_namespace::privacy;
_local3.addGroup(_local5);
};
_local2.groups = _local3;
return (_local2);
}
protected function parseCreateAlbum(_arg1:XML):GetCreateAlbumData{
var _local2:GetCreateAlbumData = new GetCreateAlbumData();
var _local3:AlbumData = new AlbumData();
_local3.aid = _arg1.fb_namespace::aid;
_local3.cover_pid = _arg1.fb_namespace::cover_pid;
_local3.owner = _arg1.fb_namespace::owner;
_local3.name = _arg1.fb_namespace::name;
_local3.created = FacebookXMLParserUtils.toDate(_arg1.fb_namespace::created);
_local3.modified = FacebookXMLParserUtils.toDate(_arg1.fb_namespace::modified);
_local3.description = _arg1.fb_namespace::description;
_local3.location = _arg1.fb_namespace::location;
_local3.link = _arg1.fb_namespace::link;
_local3.size = _arg1.fb_namespace::size;
_local3.visible = _arg1.fb_namespace::visible;
_local2.albumData = _local3;
return (_local2);
}
protected function parseGetAllocation(_arg1:XML):GetAllocationData{
var _local2:GetAllocationData = new GetAllocationData();
_local2.allocationLimit = Number(_arg1.toString());
return (_local2);
}
protected function parseGetCookies(_arg1:XML):GetCookiesData{
var _local2:GetCookiesData = new GetCookiesData();
_local2.uid = _arg1.fb_namespace::uid;
_local2.name = _arg1.fb_namespace::name;
_local2.value = _arg1.fb_namespace::value;
_local2.expires = _arg1.fb_namespace::expires;
_local2.path = _arg1.fb_namespace::path;
return (_local2);
}
protected function parseGetCustomTags(_arg1:XML):GetCustomTagsData{
var _local5:*;
var _local2:Array = ["type", "name", "open_tag_fbml", "description", "close_tag_fbml", "is_public", "attributes", "header_fbml", "footer_fbml", "fbml"];
var _local3:GetCustomTagsData = new GetCustomTagsData();
var _local4:TagCollection = new TagCollection();
for each (_local5 in _arg1..fb_namespace::custom_tag) {
_local4.addItem(createTagObject(_local5, _local2));
};
_local3.tagCollection = _local4;
return (_local3);
}
protected function parseGetAlbums(_arg1:XML):GetAlbumsData{
var _local2:GetAlbumsData = new GetAlbumsData();
_local2.albumCollection = FacebookXMLParserUtils.createAlbumCollection(_arg1, fb_namespace);
return (_local2);
}
protected function parseGetInfo(_arg1:XML):GetInfoData{
var _local7:FacebookUser;
var _local2:FacebookUserCollection = new FacebookUserCollection();
var _local3:XMLList = _arg1..fb_namespace::user;
var _local4:uint = _local3.length();
var _local5:uint;
while (_local5 < _local4) {
_local7 = FacebookUserXMLParser.createFacebookUser(_local3[_local5], fb_namespace);
_local2.addItem(_local7);
_local5++;
};
var _local6:GetInfoData = new GetInfoData();
_local6.userCollection = _local2;
return (_local6);
}
protected function parseGetLists(_arg1:XML):GetListsData{
var _local4:*;
var _local5:ListsData;
var _local2:GetListsData = new GetListsData();
var _local3:Array = [];
for each (_local4 in _arg1..fb_namespace::friendlist) {
_local5 = new ListsData();
_local5.flid = _local4.fb_namespace::flid;
_local5.name = _local4.fb_namespace::name;
_local3.push(_local5);
};
_local2.lists = _local3;
return (_local2);
}
protected function parseGetAppUsersData(_arg1:XML):GetAppUserData{
var _local2:Array = FacebookXMLParserUtils.toUIDArray(_arg1);
var _local3:GetAppUserData = new GetAppUserData();
_local3.uids = _local2;
return (_local3);
}
protected function parseGetStatus(_arg1:XML):GetStatusData{
var _local7:XMLList;
var _local8:Status;
var _local2:GetStatusData = new GetStatusData();
var _local3:Array = [];
var _local4:XMLList = _arg1.children();
var _local5:uint = _local4.length();
var _local6:uint;
while (_local6 < _local5) {
_local7 = _local4[_local6].children();
_local8 = new Status();
_local8.uid = FacebookXMLParserUtils.toStringValue(_local7[0]);
_local8.status_id = FacebookXMLParserUtils.toStringValue(_local7[1]);
_local8.time = FacebookXMLParserUtils.toDate(_local7[2]);
_local8.source = FacebookXMLParserUtils.toStringValue(_local7[3]);
_local8.message = FacebookXMLParserUtils.toStringValue(_local7[4]);
_local3.push(_local8);
_local6++;
};
_local2.status = _local3;
return (_local2);
}
protected function parseGetMembers(_arg1:XML):GetMembersData{
var _local2:GetMembersData = new GetMembersData();
_local2.attending = FacebookXMLParserUtils.toUIDArray(_arg1..fb_namespace::attending[0]);
_local2.unsure = FacebookXMLParserUtils.toUIDArray(_arg1..fb_namespace::unsure[0]);
_local2.declined = FacebookXMLParserUtils.toUIDArray(_arg1..fb_namespace::declined[0]);
_local2.not_replied = FacebookXMLParserUtils.toUIDArray(_arg1..fb_namespace::not_replied[0]);
return (_local2);
}
protected function parseGetEvent(_arg1:XML):GetEventsData{
var _local4:*;
var _local5:EventData;
var _local2:GetEventsData = new GetEventsData();
var _local3:EventCollection = new EventCollection();
for each (_local4 in _arg1..fb_namespace::event) {
_local5 = new EventData();
_local5.eid = _local4.fb_namespace::eid;
_local5.name = _local4.fb_namespace::name;
_local5.tagline = _local4.fb_namespace::tagline;
_local5.nid = _local4.fb_namespace::nid;
_local5.pic = _local4.fb_namespace::pic;
_local5.pic_big = _local4.fb_namespace::pic_big;
_local5.pic_small = _local4.fb_namespace::pic_small;
_local5.host = _local4.fb_namespace::host;
_local5.description = _local4.fb_namespace::description;
_local5.event_type = _local4.fb_namespace::event_type;
_local5.event_subtype = _local4.fb_namespace::event_subtype;
_local5.start_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::start_time);
_local5.end_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::end_time);
_local5.creator = _local4.fb_namespace::end_time;
_local5.update_time = FacebookXMLParserUtils.toDate(_local4.fb_namespace::update_time);
_local5.location = _local4.fb_namespace::location;
_local5.venue = FacebookXMLParserUtils.createLocation(_local4.fb_namespace::venue[0], fb_namespace);
_local3.addItem(_local5);
};
_local2.eventCollection = _local3;
return (_local2);
}
protected function parseGetFriends(_arg1:XML):GetFriendsData{
var _local4:*;
var _local5:FacebookUser;
var _local2:GetFriendsData = new GetFriendsData();
var _local3:FacebookUserCollection = new FacebookUserCollection();
for each (_local4 in _arg1..fb_namespace::uid) {
_local5 = new FacebookUser();
_local5.uid = _local4;
_local3.addItem(_local5);
};
_local2.friends = _local3;
return (_local2);
}
protected function parseGetPublicInfo(_arg1:XML):GetPublicInfoData{
var _local2:GetPublicInfoData = new GetPublicInfoData();
_local2.app_id = _arg1.fb_namespace::app_id;
_local2.api_key = _arg1.fb_namespace::api_key;
_local2.canvas_name = _arg1.fb_namespace::canvas_name;
_local2.display_name = _arg1.fb_namespace::display_name;
_local2.icon_url = _arg1.fb_namespace::icon_url;
_local2.logo_url = _arg1.fb_namespace::logo_url;
_local2.developers = _arg1.fb_namespace::developers;
_local2.company_name = _arg1.fb_namespace::company_name;
_local2.developers = _arg1.fb_namespace::developers;
_local2.daily_active_users = _arg1.fb_namespace::daily_active_users;
_local2.weekly_active_users = _arg1.fb_namespace::weekly_active_users;
_local2.monthly_active_users = _arg1.fb_namespace::monthly_active_users;
return (_local2);
}
protected function parseAreFriends(_arg1:XML):AreFriendsData{
var _local4:*;
var _local5:FriendsData;
var _local2:AreFriendsData = new AreFriendsData();
var _local3:FriendsCollection = new FriendsCollection();
for each (_local4 in _arg1..fb_namespace::friend_info) {
_local5 = new FriendsData();
_local5.uid1 = _local4.fb_namespace::uid1;
_local5.uid2 = _local4.fb_namespace::uid2;
_local5.are_friends = FacebookXMLParserUtils.toBoolean(_local4.fb_namespace::are_friends);
_local3.addItem(_local5);
};
_local2.friendsCollection = _local3;
return (_local2);
}
public function validateFacebookResponce(_arg1:String):FacebookError{
var xml:XML;
var xmlError:Error;
var result = _arg1;
var error:FacebookError;
var hasXMLError:Boolean;
try {
xml = new XML(result);
} catch(e) {
xmlError = e;
hasXMLError = true;
};
if (hasXMLError == false){
if (xml.localName() == "error_response"){
error = new FacebookError();
error.rawResult = result;
error.errorCode = Number(xml.fb_namespace::error_code);
error.errorMsg = xml.fb_namespace::error_msg;
error.requestArgs = FacebookXMLParserUtils.xmlToUrlVariables(xml..arg);
};
return (error);
};
if (hasXMLError == true){
error = new FacebookError();
error.error = xmlError;
error.errorCode = -1;
};
return (error);
}
protected function parseBatchRun(_arg1:XML):FacebookData{
var _local7:String;
var _local8:XML;
var _local9:FacebookError;
var _local10:String;
var _local11:FacebookData;
var _local2:XMLList = _arg1..fb_namespace::batch_run_response_elt;
var _local3:uint = _local2.length();
var _local4:Array = [];
var _local5:uint;
while (_local5 < _local3) {
_local7 = _local2[_local5].toString();
_local8 = new XML(_local7);
_local9 = validateFacebookResponce(_local7);
if (_local9 === null){
_local10 = responseNodeNameToMethodName(_local8.localName().toString());
_local11 = parse(_local7, _local10);
_local4.push(_local11);
} else {
_local4.push(_local9);
};
_local5++;
};
var _local6:BatchResult = new BatchResult();
_local6.results = _local4;
return (_local6);
}
protected function getTemplate(_arg1:XMLList, _arg2:TemplateCollection):void{
var _local3:*;
var _local4:TemplateData;
for each (_local3 in _arg1) {
_local4 = new TemplateData();
_local4.type = _local3.localName();
_local4.template_body = _local3.fb_namespace::template_body;
_local4.template_title = _local3.fb_namespace::template_title;
_arg2.addTemplateData(_local4);
};
}
}
}//package com.facebook.data
Section 141
//DesktopDelegate (com.facebook.delegates.DesktopDelegate)
package com.facebook.delegates {
import com.facebook.session.*;
import com.facebook.net.*;
public class DesktopDelegate extends WebDelegate {
public function DesktopDelegate(_arg1:FacebookCall, _arg2:DesktopSession){
super(_arg1, _arg2);
}
override protected function addOptionalArguments():void{
}
}
}//package com.facebook.delegates
Section 142
//IFacebookCallDelegate (com.facebook.delegates.IFacebookCallDelegate)
package com.facebook.delegates {
import flash.events.*;
import com.facebook.session.*;
import com.facebook.net.*;
public interface IFacebookCallDelegate extends IEventDispatcher {
function get session():IFacebookSession;
function close():void;
function set call(_arg1:FacebookCall):void;
function set session(_arg1:IFacebookSession):void;
function get call():FacebookCall;
}
}//package com.facebook.delegates
Section 143
//JSDelegate (com.facebook.delegates.JSDelegate)
package com.facebook.delegates {
import flash.events.*;
import com.facebook.data.*;
import com.facebook.errors.*;
import com.facebook.session.*;
import com.facebook.net.*;
import com.facebook.utils.*;
import com.adobe.serialization.json.*;
import com.facebook.*;
import flash.external.*;
public class JSDelegate extends EventDispatcher implements IFacebookCallDelegate {
protected var _call:FacebookCall;
protected var _session:JSSession;
protected static var externalInterfaceCalls:Object = {};
protected static var externalInterfaceCallId:Number = 0;
public function JSDelegate(_arg1:FacebookCall, _arg2:JSSession){
this.call = _arg1;
this.session = _arg2;
execute();
}
public function set call(_arg1:FacebookCall):void{
this._call = _arg1;
}
protected function onReceiveError(_arg1:ErrorEvent):void{
var _local2:FacebookError = new FacebookError();
_local2.errorEvent = _arg1;
var _local3 = call;
_local3.facebook_internal::handleError(_local2);
}
public function get call():FacebookCall{
return (_call);
}
protected function postBridgeAsyncReply(_arg1:Object, _arg2:Object, _arg3:uint):void{
var _local5:JSONResultData;
var _local6:FacebookError;
var _local4:FacebookCall = externalInterfaceCalls[_arg3];
if (_arg1){
_local5 = new JSONResultData();
_local5.result = _arg1;
var _local7 = _local4;
_local7.facebook_internal::handleResult(_local5);
} else {
_local6 = new FacebookError();
_local6.rawResult = JSON.encode(_arg2);
_local7 = _local4;
_local7.facebook_internal::handleError(_local6);
};
delete externalInterfaceCalls[_arg3];
}
protected function buildCall():String{
var _local3:String;
var _local4:String;
var _local1:String = ("bridgeFacebookCall_" + externalInterfaceCallId);
RequestHelper.formatRequest(call);
var _local2:Object = {};
for (_local3 in call.args) {
_local2[_local3] = call.args[_local3];
};
_local4 = (((((((((((((((("function " + _local1) + "() { ") + "FB.Facebook.apiClient.callMethod(\"") + call.method) + "\", ") + JavascriptRequestHelper.formatURLVariables(call.args)) + ", ") + "function(result, exception) {") + "document.") + (_session as JSSession).as_swf_name) + ".bridgeFacebookReply(result, exception, ") + externalInterfaceCallId) + ")") + "}") + ");") + "}");
return (_local4);
}
protected function execute():void{
var _local2:Object;
var _local3:String;
var _local1:Array = [];
for each (_local2 in call.args) {
_local1.push(_local2);
};
var _local4 = ++externalInterfaceCallId;
externalInterfaceCalls[_local4] = call;
_local3 = buildCall();
ExternalInterface.addCallback("bridgeFacebookReply", postBridgeAsyncReply);
ExternalInterface.call(_local3);
}
protected function onReceiveStatus(_arg1:StatusEvent):void{
var _local2:FacebookError;
switch ((_arg1.level == "error")){
case "error":
_local2 = new FacebookError();
_local2.rawResult = _arg1.level;
var _local3 = call;
_local3.facebook_internal::handleError(_local2);
break;
case "warning":
case "status":
break;
};
}
public function set session(_arg1:IFacebookSession):void{
this._session = (_arg1 as JSSession);
}
public function get session():IFacebookSession{
return (_session);
}
public function close():void{
}
}
}//package com.facebook.delegates
Section 144
//RequestHelper (com.facebook.delegates.RequestHelper)
package com.facebook.delegates {
import flash.display.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.net.*;
import flash.utils.*;
import com.adobe.crypto.*;
public class RequestHelper {
protected static var callID:int = 0;
public static function formatRequest(_arg1:FacebookCall):void{
var _local2:IFacebookSession = _arg1.session;
_arg1.setRequestArgument("v", _local2.api_version);
if (_local2.api_key != null){
_arg1.setRequestArgument("api_key", _local2.api_key);
};
if (((!((_local2.session_key == null))) && (_arg1.useSession))){
_arg1.setRequestArgument("session_key", _local2.session_key);
};
var _local3:String = (new Date().time.toString() + callID++.toString());
_arg1.setRequestArgument("call_id", _local3);
_arg1.setRequestArgument("method", _arg1.method);
_arg1.setRequestArgument("sig", formatSig(_arg1));
}
public static function formatSig(_arg1:FacebookCall):String{
var _local4:String;
var _local5:String;
var _local6:*;
var _local2:IFacebookSession = _arg1.session;
var _local3:Array = [];
for (_local4 in _arg1.args) {
_local6 = _arg1.args[_local4];
if (((((((((!((_local4 === "sig"))) && (!((_local6 is ByteArray))))) && (!((_local6 is FileReference))))) && (!((_local6 is BitmapData))))) && (!((_local6 is Bitmap))))){
_local3.push(((_local4 + "=") + _local6.toString()));
};
};
_local3.sort();
_local5 = _local3.join("");
if (_local2.secret != null){
_local5 = (_local5 + _local2.secret);
};
return (MD5.hash(_local5));
}
}
}//package com.facebook.delegates
Section 145
//WebDelegate (com.facebook.delegates.WebDelegate)
package com.facebook.delegates {
import flash.events.*;
import com.facebook.events.*;
import com.facebook.data.*;
import com.facebook.errors.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.net.*;
import flash.utils.*;
public class WebDelegate extends EventDispatcher implements IFacebookCallDelegate {
protected var connectTimer:Timer;
protected var loader:URLLoader;
protected var _session:WebSession;
protected var parser:XMLDataParser;
protected var fileRef:FileReference;
protected var _call:FacebookCall;
protected var loadTimer:Timer;
public function WebDelegate(_arg1:FacebookCall, _arg2:WebSession){
this.call = _arg1;
this.session = _arg2;
parser = new XMLDataParser();
connectTimer = new Timer(_arg1.connectTimeout, 1);
connectTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onConnectTimeout, false, 0, true);
loadTimer = new Timer(_arg1.loadTimeout, 1);
loadTimer.addEventListener(TimerEvent.TIMER_COMPLETE, onLoadTimeOut, false, 0, true);
execute();
}
public function set call(_arg1:FacebookCall):void{
_call = _arg1;
}
protected function execute():void{
if (call == null){
throw (new Error("No call defined."));
};
post();
}
protected function createURLLoader():void{
loader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onDataComplete);
loader.addEventListener(HTTPStatusEvent.HTTP_STATUS, onHTTPStatus);
loader.addEventListener(IOErrorEvent.IO_ERROR, onError);
loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
loader.addEventListener(Event.OPEN, onOpen);
}
protected function onOpen(_arg1:Event):void{
connectTimer.stop();
loadTimer.start();
}
protected function addOptionalArguments():void{
call.setRequestArgument("ss", true);
}
protected function onConnectTimeout(_arg1:TimerEvent):void{
var _local2:FacebookError = new FacebookError();
_local2.errorCode = FacebookErrorCodes.SERVER_ERROR;
_local2.reason = FacebookErrorReason.CONNECT_TIMEOUT;
_call.handleError(_local2);
dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, _local2));
loadTimer.stop();
close();
}
protected function clean():void{
connectTimer.stop();
loadTimer.stop();
if (loader == null){
return;
};
loader.removeEventListener(Event.COMPLETE, onDataComplete);
loader.removeEventListener(IOErrorEvent.IO_ERROR, onError);
loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
loader.removeEventListener(Event.OPEN, onOpen);
}
protected function onDataComplete(_arg1:Event):void{
handleResult((_arg1.target.data as String));
}
protected function onLoadTimeOut(_arg1:TimerEvent):void{
connectTimer.stop();
close();
var _local2:FacebookError = new FacebookError();
_local2.errorCode = FacebookErrorCodes.SERVER_ERROR;
_local2.reason = FacebookErrorReason.LOAD_TIMEOUT;
_call.handleError(_local2);
dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, _local2));
}
public function get session():IFacebookSession{
return (_session);
}
protected function post():void{
addOptionalArguments();
RequestHelper.formatRequest(call);
sendRequest();
connectTimer.start();
}
public function get call():FacebookCall{
return (_call);
}
protected function sendRequest():void{
createURLLoader();
var _local1:URLRequest = new URLRequest(_session.rest_url);
_local1.contentType = "application/x-www-form-urlencoded";
_local1.method = URLRequestMethod.POST;
_local1.data = call.args;
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.load(_local1);
}
protected function onError(_arg1:ErrorEvent):void{
clean();
var _local2:FacebookError = parser.createFacebookError(_arg1, loader.data);
call.handleError(_local2);
dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, _local2));
}
protected function handleResult(_arg1:String):void{
var _local3:FacebookData;
clean();
var _local2:FacebookError = parser.validateFacebookResponce(_arg1);
if (_local2 == null){
_local3 = parser.parse(_arg1, call.method);
call.handleResult(_local3);
} else {
call.handleError(_local2);
};
}
public function close():void{
try {
loader.close();
} catch(e) {
};
connectTimer.stop();
loadTimer.stop();
}
protected function onHTTPStatus(_arg1:HTTPStatusEvent):void{
}
public function set session(_arg1:IFacebookSession):void{
_session = (_arg1 as WebSession);
}
}
}//package com.facebook.delegates
Section 146
//WebImageUploadDelegate (com.facebook.delegates.WebImageUploadDelegate)
package com.facebook.delegates {
import flash.events.*;
import flash.display.*;
import com.facebook.errors.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.net.*;
import com.facebook.utils.*;
import flash.utils.*;
import com.adobe.images.*;
import com.facebook.commands.photos.*;
public class WebImageUploadDelegate extends WebDelegate {
protected var ba:ByteArray;
protected var count:Number;// = 0
public function WebImageUploadDelegate(_arg1:FacebookCall, _arg2:WebSession){
ba = new ByteArray();
super(_arg1, _arg2);
}
protected function uploadByteArray(_arg1:ByteArray):void{
var _local3:String;
var _local4:String;
var _local2:PostRequest = new PostRequest();
for (_local3 in call.args) {
if (_local3 != "data"){
_local2.writePostData(_local3, call.args[_local3]);
};
};
_local4 = (((call as UploadPhoto).uploadType == UploadPhotoTypes.JPEG)) ? "jpeg" : "png";
_local2.writeFileData(((("fn" + call.args["call_id"]) + ".") + _local4), _arg1);
_local2.close();
var _local5:URLRequest = new URLRequest();
_local5.method = URLRequestMethod.POST;
_local5.contentType = ("multipart/form-data; boundary=" + _local2.boundary);
_local5.data = _local2.getPostData();
_local5.url = _session.rest_url;
createURLLoader();
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.load(_local5);
connectTimer.start();
}
protected function onImageLoaded(_arg1:Event):void{
fileRef = (call.args.data as FileReference);
uploadByteArray(fileRef["data"]);
}
override protected function onDataComplete(_arg1:Event):void{
var _local3:FacebookError;
var _local4:String;
var _local2:ByteArray = (_arg1.target.data as ByteArray);
if (_local2 == null){
_local3 = new FacebookError();
call.handleError(_local3);
clean();
} else {
_local4 = _local2.readUTFBytes(_local2.length);
_local2.length = 0;
_local2 = null;
handleResult(_local4);
};
}
override protected function sendRequest():void{
var _local1:ByteArray;
var _local4:JPGEncoder;
var _local2:URLRequest = new URLRequest(_session.rest_url);
var _local3:Object = call.args.data;
if ((((PlayerUtils.majorVersion == 9)) && ((_local3 is FileReference)))){
throw (new TypeError("Uploading FileReference with Player 9 is unsupported. Use either an BitmapData or ByteArray."));
};
if ((_local3 is Bitmap)){
_local3 = (_local3 as Bitmap).bitmapData;
};
if ((((PlayerUtils.majorVersion == 10)) && ((_local3 is FileReference)))){
_local1 = (_local3 as FileReference)["load"]();
fileRef = (_local3 as FileReference);
fileRef.addEventListener(Event.COMPLETE, onImageLoaded);
} else {
if ((_local3 is ByteArray)){
uploadByteArray((_local3 as ByteArray));
} else {
if ((_local3 is BitmapData)){
switch ((call as UploadPhoto).uploadType){
case UploadPhotoTypes.JPEG:
_local4 = new JPGEncoder((call as UploadPhoto).uploadQuality);
ba = _local4.encode((_local3 as BitmapData));
break;
case UploadPhotoTypes.PNG:
ba = PNGEncoder.encode((_local3 as BitmapData));
break;
};
uploadByteArray(ba);
} else {
throw (new Error((("Error data type " + call.args.data) + " is not supported. Please use one of the following types: FileReference, ByteArray, BitmapData or Bitmap.")));
};
};
};
}
}
}//package com.facebook.delegates
Section 147
//FacebookError (com.facebook.errors.FacebookError)
package com.facebook.errors {
import flash.events.*;
import com.facebook.data.*;
import flash.net.*;
public class FacebookError extends FacebookData {
public var errorMsg:String;
public var reason:String;
public var error:Error;
public var requestArgs:URLVariables;
public var errorCode:Number;
public var errorEvent:ErrorEvent;
}
}//package com.facebook.errors
Section 148
//FacebookEvent (com.facebook.events.FacebookEvent)
package com.facebook.events {
import flash.events.*;
import com.facebook.data.*;
import com.facebook.errors.*;
public class FacebookEvent extends Event {
public var success:Boolean;
public var error:FacebookError;
public var hasPermission:Boolean;
public var data:FacebookData;
public var permission:String;
public static const PERMISSIONS_LOADED:String = "permissionsLoaded";
public static const LOGOUT:String = "logout";
public static const CONNECT:String = "connect";
public static const VERIFYING_SESSION:String = "verifyingSession";
public static const WAITING_FOR_LOGIN:String = "waitingForLogin";
public static const PERMISSION_CHANGE:String = "permissionChanged";
public static const PERMISSION_STATUS:String = "permissionStatus";
public static const LOGIN_SUCCESS:String = "loginSuccess";
public static const ERROR:String = "facebookEventError";
public static const PERMISSIONS_WINDOW_SHOW:String = "permissionsWindowShow";
public static const LOGIN_FAILURE:String = "loginFailure";
public static const LOGIN_WINDOW_SHOW:String = "loginWindoShow";
public static const COMPLETE:String = "complete";
public function FacebookEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Boolean=false, _arg5:FacebookData=null, _arg6:FacebookError=null, _arg7:String="", _arg8:Boolean=false){
this.success = _arg4;
this.data = _arg5;
this.error = _arg6;
this.permission = _arg7;
this.hasPermission = _arg8;
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("FacebookEvent", "type", "success", "data", "error"));
}
override public function clone():Event{
return (new FacebookEvent(type, bubbles, cancelable, success, data, error));
}
}
}//package com.facebook.events
Section 149
//FacebookCall (com.facebook.net.FacebookCall)
package com.facebook.net {
import flash.events.*;
import com.facebook.events.*;
import com.facebook.data.*;
import com.facebook.errors.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.delegates.*;
import com.facebook.*;
public class FacebookCall extends EventDispatcher {
public var success:Boolean;// = false
public var delegate:IFacebookCallDelegate;
public var error:FacebookError;
public var useSession:Boolean;// = true
public var session:IFacebookSession;
public var connectTimeout:uint;// = 8000
public var loadTimeout:uint;// = 30000
public var args:URLVariables;
public var method:String;
public var result:FacebookData;
public function FacebookCall(_arg1:String="no_method_required", _arg2:URLVariables=null){
this.method = _arg1;
this.args = ((_arg2)!=null) ? _arg2 : new URLVariables();
}
facebook_internal function handleError(_arg1:FacebookError):void{
this.error = _arg1;
success = false;
dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, false, null, _arg1));
}
facebook_internal function initialize():void{
}
facebook_internal function handleResult(_arg1:FacebookData):void{
this.result = _arg1;
success = true;
dispatchEvent(new FacebookEvent(FacebookEvent.COMPLETE, false, false, true, _arg1));
}
facebook_internal function setRequestArgument(_arg1:String, _arg2:Object):void{
if ((((_arg2 is Number)) && (isNaN((_arg2 as Number))))){
return;
};
if (((((_arg1) && (!((_arg2 == null))))) && ((String(_arg2).length > 0)))){
this.args[_arg1] = _arg2;
};
}
protected function applySchema(_arg1:Array, ... _args):void{
var _local3:uint = _arg1.length;
var _local4:uint;
while (_local4 < _local3) {
setRequestArgument(_arg1[_local4], _args[_local4]);
_local4++;
};
}
facebook_internal function clearRequestArguments():void{
this.args = new URLVariables();
}
}
}//package com.facebook.net
Section 150
//DesktopSession (com.facebook.session.DesktopSession)
package com.facebook.session {
import com.facebook.events.*;
import com.facebook.data.*;
import com.facebook.errors.*;
import flash.net.*;
import com.facebook.net.*;
import com.facebook.delegates.*;
import com.facebook.commands.users.*;
import com.facebook.*;
import com.facebook.commands.auth.*;
import com.facebook.commands.photos.*;
import com.facebook.data.auth.*;
public class DesktopSession extends WebSession implements IFacebookSession {
protected var _auth_token:String;
protected var loginRequest:IFacebookCallDelegate;
protected var _waiting_for_login:Boolean;// = false
protected var _offline_access:Boolean;// = false
public function DesktopSession(_arg1:String, _arg2:String=null, _arg3:String=null){
super(_arg1, null);
this._is_connected = false;
this._secret = _arg2;
if (_arg3){
this._session_key = _arg3;
};
}
override public function post(_arg1:FacebookCall):IFacebookCallDelegate{
if (_arg1.method == UploadPhoto.METHOD_NAME){
return (new WebImageUploadDelegate(_arg1, this));
};
return (new DesktopDelegate(_arg1, this));
}
override public function get waiting_for_login():Boolean{
return (_waiting_for_login);
}
protected function onLogin(_arg1:FacebookEvent):void{
var _local2:URLRequest;
var _local3:String;
_arg1.target.removeEventListener(FacebookEvent.COMPLETE, onLogin);
if (_arg1.success){
_auth_token = (_arg1.data as StringResultData).value;
_local2 = new URLRequest();
_local3 = "?";
if (_offline_access){
_local3 = (_local3 + "ext_perm=offline_access&");
};
_local2.url = (((((((login_url + _local3) + "api_key=") + api_key) + "&v=") + api_version) + "&auth_token=") + _auth_token);
navigateToURL(_local2, "_blank");
_waiting_for_login = true;
dispatchEvent(new FacebookEvent(FacebookEvent.WAITING_FOR_LOGIN));
} else {
onConnectionError(_arg1.error);
};
}
protected function onConnectionError(_arg1:FacebookError):void{
_is_connected = false;
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, false, null, _arg1));
}
protected function tokenCreated():void{
navigateToURL(new URLRequest(login_url));
}
override public function login(_arg1:Boolean):void{
_offline_access = _arg1;
_session_key = null;
var _local2:FacebookCall = new CreateToken();
_local2.session = this;
var _local3 = _local2;
_local3.facebook_internal::initialize();
_local2.addEventListener(FacebookEvent.COMPLETE, onLogin);
post(_local2);
}
protected function onVerifyLogin(_arg1:FacebookEvent):void{
var _local2:FacebookEvent;
_local2 = new FacebookEvent(FacebookEvent.CONNECT);
_local2.success = _arg1.success;
if (_arg1.success){
facebook_internal::_uid = (_arg1.data as StringResultData).value;
_local2.data = _arg1.data;
_is_connected = true;
} else {
_local2.error = _arg1.error;
_is_connected = false;
};
dispatchEvent(_local2);
}
override public function verifySession():void{
var _local1:FacebookCall;
if (_session_key){
_local1 = new GetLoggedInUser();
_local1.session = this;
var _local2 = _local1;
_local2.facebook_internal::initialize();
_local1.addEventListener(FacebookEvent.COMPLETE, onVerifyLogin, false, 0, true);
post(_local1);
dispatchEvent(new FacebookEvent(FacebookEvent.VERIFYING_SESSION));
} else {
_is_connected = false;
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT));
};
}
protected function validateSessionReply(_arg1:FacebookEvent):void{
var _local2:GetSessionData;
if (_arg1.success){
_local2 = (_arg1.data as GetSessionData);
facebook_internal::_uid = _local2.uid;
this._session_key = _local2.session_key;
this._expires = _local2.expires;
this._secret = ((((_local2.secret == null)) || ((_local2.secret == "")))) ? this._secret : _local2.secret;
_is_connected = true;
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true, _local2));
} else {
onConnectionError(_arg1.error);
};
}
override public function refreshSession():void{
_waiting_for_login = false;
var _local1:GetSession = new GetSession(_auth_token);
_local1.session = this;
var _local2 = _local1;
_local2.facebook_internal::initialize();
_local1.addEventListener(FacebookEvent.COMPLETE, validateSessionReply);
post(_local1);
}
}
}//package com.facebook.session
Section 151
//IFacebookSession (com.facebook.session.IFacebookSession)
package com.facebook.session {
import flash.events.*;
import com.facebook.net.*;
import com.facebook.delegates.*;
public interface IFacebookSession extends IEventDispatcher {
function set secret(_arg1:String):void;
function get waiting_for_login():Boolean;
function refreshSession():void;
function get rest_url():String;
function post(_arg1:FacebookCall):IFacebookCallDelegate;
function set rest_url(_arg1:String):void;
function login(_arg1:Boolean):void;
function set session_key(_arg1:String):void;
function get secret():String;
function get api_version():String;
function get expires():Date;
function get session_key():String;
function get uid():String;
function get api_key():String;
function get is_connected():Boolean;
function verifySession():void;
}
}//package com.facebook.session
Section 152
//JSSession (com.facebook.session.JSSession)
package com.facebook.session {
import flash.events.*;
import com.facebook.events.*;
import com.facebook.net.*;
import com.facebook.delegates.*;
import com.facebook.commands.users.*;
import com.facebook.*;
public class JSSession extends EventDispatcher implements IFacebookSession {
public var _api_key:String;
public var as_swf_name:String;
protected var _session_key:String;
public function JSSession(_arg1:String, _arg2:String){
this._api_key = _arg1;
this.as_swf_name = _arg2;
}
public function get waiting_for_login():Boolean{
return (true);
}
public function get expires():Date{
return (null);
}
public function get rest_url():String{
return (null);
}
public function get session_key():String{
return (_session_key);
}
public function set rest_url(_arg1:String):void{
}
public function refreshSession():void{
}
protected function onVerifyLogin(_arg1:FacebookEvent):void{
if (_arg1.success){
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true));
} else {
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, false));
};
}
public function get uid():String{
return (null);
}
public function get is_sessionless():Boolean{
return (true);
}
public function verifySession():void{
var _local1:FacebookCall = new GetLoggedInUser();
_local1.addEventListener(FacebookEvent.COMPLETE, onVerifyLogin);
_local1.session = this;
var _local2 = _local1;
_local2.facebook_internal::initialize();
post(_local1);
}
public function set secret(_arg1:String):void{
}
public function login(_arg1:Boolean):void{
}
public function set session_key(_arg1:String):void{
_session_key = _arg1;
}
public function post(_arg1:FacebookCall):IFacebookCallDelegate{
return (new JSDelegate(_arg1, this));
}
public function get secret():String{
return (null);
}
public function get api_version():String{
return ("1.0");
}
public function get api_key():String{
return (_api_key);
}
public function get is_connected():Boolean{
return (true);
}
}
}//package com.facebook.session
Section 153
//WebSession (com.facebook.session.WebSession)
package com.facebook.session {
import flash.events.*;
import com.facebook.events.*;
import com.facebook.net.*;
import com.facebook.delegates.*;
import com.facebook.*;
import com.facebook.commands.photos.*;
public class WebSession extends EventDispatcher implements IFacebookSession {
facebook_internal var _uid:String;
protected var _is_connected:Boolean;// = false
public var login_url:String;// = "http://www.facebook.com/login.php"
protected var _secret:String;
protected var _rest_url:String;// = "http://api.facebook.com/restserver.php"
protected var _api_version:String;// = "1.0"
protected var _expires:Date;
protected var _session_key:String;
protected var _api_key:String;
public function WebSession(_arg1:String, _arg2:String, _arg3:String=null){
this._api_key = _arg1;
this._session_key = _arg3;
this.secret = _arg2;
}
public function get waiting_for_login():Boolean{
return (false);
}
public function get rest_url():String{
return (_rest_url);
}
public function set rest_url(_arg1:String):void{
_rest_url = _arg1;
}
public function post(_arg1:FacebookCall):IFacebookCallDelegate{
if (_arg1.method == UploadPhoto.METHOD_NAME){
return (new WebImageUploadDelegate(_arg1, this));
};
return (new WebDelegate(_arg1, this));
}
public function get secret():String{
return (_secret);
}
public function get expires():Date{
return (_expires);
}
public function get api_key():String{
return (_api_key);
}
public function refreshSession():void{
}
public function get session_key():String{
return (_session_key);
}
public function get uid():String{
return (facebook_internal::_uid);
}
public function get api_version():String{
return (this._api_version);
}
public function get is_connected():Boolean{
return (_is_connected);
}
public function set secret(_arg1:String):void{
_secret = _arg1;
}
public function verifySession():void{
if (_session_key){
_is_connected = true;
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true));
} else {
_is_connected = false;
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, false));
};
}
public function set api_version(_arg1:String):void{
this._api_version = _arg1;
}
public function login(_arg1:Boolean):void{
}
public function set session_key(_arg1:String):void{
_session_key = _arg1;
}
}
}//package com.facebook.session
Section 154
//FacebookArrayCollection (com.facebook.utils.FacebookArrayCollection)
package com.facebook.utils {
import flash.events.*;
import flash.utils.*;
public class FacebookArrayCollection extends EventDispatcher {
protected var _source:Array;
protected var hash:Dictionary;
protected var _type:Class;
public function FacebookArrayCollection(_arg1:Array=null, _arg2:Class=null){
reset();
_type = _arg2;
initilizeSource(_arg1);
}
protected function verifyIndex(_arg1:uint):void{
if (_source.length < _arg1){
throw (new RangeError((("Index: " + _arg1) + ", is out of range.")));
};
}
public function addItem(_arg1:Object):void{
addItemAt(_arg1, length);
}
public function get length():int{
return (_source.length);
}
public function addItemAt(_arg1:Object, _arg2:uint):void{
if (hash[_arg1] != null){
throw (new Error("Item already exists."));
};
if (((!((_type === null))) && (!((_arg1 is _type))))){
throw (new TypeError((("This collection requires " + _type) + " as the type.")));
};
hash[_arg1] = true;
_source.splice(_arg2, 0, _arg1);
}
public function indexOf(_arg1:Object):int{
return (_source.indexOf(_arg1));
}
public function removeItemAt(_arg1:uint):void{
verifyIndex(_arg1);
var _local2:Object = _source[_arg1];
delete hash[_local2];
_source.splice(_arg1, 1);
}
public function getItemAt(_arg1:uint):Object{
verifyIndex(_arg1);
return (_source[_arg1]);
}
override public function toString():String{
return (_source.join(", "));
}
public function reset():void{
hash = new Dictionary(true);
_source = [];
}
protected function initilizeSource(_arg1:Array):void{
_source = [];
if (_arg1 == null){
return;
};
var _local2:uint = _arg1.length;
var _local3:uint;
while (_local3 < _local2) {
addItem(_arg1[_local3]);
_local3++;
};
}
public function findItemByProperty(_arg1:String, _arg2:Object, _arg3:Boolean=false):Object{
var _local4:Object;
for (_local4 in hash) {
if (((((_arg3) && ((_arg1 in _local4)))) && ((_local4[_arg1] === _arg2)))){
return (_local4);
};
if (((((!(_arg3)) && ((_arg1 in _local4)))) && ((_local4[_arg1] == _arg2)))){
return (_local4);
};
};
return (null);
}
public function get type():Class{
return (_type);
}
public function get source():Array{
return (_source);
}
public function toArray():Array{
var _local1:Array = [];
var _local2:uint = length;
var _local3:uint;
while (_local3 < _local2) {
_local1.push(getItemAt(_local3));
_local3++;
};
return (_local1);
}
public function contains(_arg1:Object):Boolean{
return ((hash[_arg1] === true));
}
}
}//package com.facebook.utils
Section 155
//FacebookDataUtils (com.facebook.utils.FacebookDataUtils)
package com.facebook.utils {
import com.adobe.serialization.json.*;
public class FacebookDataUtils {
public static function toJSONValuesArray(_arg1:Array):String{
if (_arg1 == null){
return (null);
};
var _local2:Array = [];
var _local3:Number = _arg1.length;
var _local4:Number = 0;
while (_local4 < _local3) {
_local2.push(JSON.encode(_arg1[_local4]));
_local4++;
};
return (_local2.join(","));
}
public static function formatDate(_arg1:String):Date{
var _local4:Array;
var _local5:Array;
if ((((_arg1 == "")) || ((_arg1 == null)))){
return (null);
};
var _local2:Date = new Date();
var _local3:Array = _arg1.split(" ");
if (_local3.length == 2){
_local4 = _local3[0].split("-");
_local5 = _local3[1].split(":");
_local2.setFullYear(_local4[0]);
_local2.setMonth((_local4[1] - 1));
_local2.setDate(_local4[2]);
_local2.setHours(_local5[0]);
_local2.setMinutes(_local5[1]);
_local2.setSeconds(_local5[2]);
} else {
_local2.setTime((parseInt(_arg1) * 1000));
};
return (_local2);
}
public static function facebookCollectionToJSONArray(_arg1:FacebookArrayCollection):String{
if (_arg1 == null){
return (null);
};
return (JSON.encode(_arg1.toArray()));
}
public static function toDateString(_arg1:Date):String{
if (_arg1 == null){
return (null);
};
_arg1.setDate((_arg1.date + 1));
return (((_arg1 == null)) ? null : _arg1.getTime().toString().slice(0, 10));
}
public static function supplantString(_arg1:String, _arg2:Object):String{
var _local4:String;
var _local3:String = _arg1;
for (_local4 in _arg2) {
_local3 = _local3.replace(new RegExp((("\\{" + _local4) + "\\}"), "g"), _arg2[_local4]);
};
return (_local3);
}
public static function toArrayString(_arg1:Array):String{
return (((_arg1 == null)) ? null : _arg1.join(","));
}
}
}//package com.facebook.utils
Section 156
//FacebookSessionUtil (com.facebook.utils.FacebookSessionUtil)
package com.facebook.utils {
import flash.events.*;
import com.facebook.events.*;
import flash.display.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.*;
import flash.system.*;
public class FacebookSessionUtil extends EventDispatcher {
protected var loaderInfo:LoaderInfo;
public var facebook:Facebook;
protected var secret:String;
protected var _activeSession:IFacebookSession;
protected var session_key:String;
protected var api_key:String;
public function FacebookSessionUtil(_arg1:String, _arg2:String, _arg3:LoaderInfo){
this.secret = ((_arg2 == null)) ? _arg3.parameters.fb_sig_ss : _arg2;
this.api_key = _arg1;
this.loaderInfo = _arg3;
var _local4:SharedObject = getStoredSession();
if (_local4.data.session_key){
session_key = _local4.data.session_key;
};
var _local5:Object = ((_arg3)!=null) ? _arg3.parameters : {};
if (_local5.fb_sig_session_key != null){
session_key = _local5.fb_sig_session_key;
};
if ((((_arg3.url.slice(0, 5) == "file:")) || ((Capabilities.playerType == "Desktop")))){
_activeSession = new DesktopSession(_arg1, this.secret);
} else {
if (((((_local5.fb_sig_ss) && (_local5.fb_sig_api_key))) && (_local5.fb_sig_session_key))){
_activeSession = new WebSession(_local5.fb_sig_api_key, _local5.fb_sig_ss, _local5.fb_sig_session_key);
(_activeSession as WebSession).facebook_internal::_uid = _local5.fb_sig_user;
} else {
if (_local5.as_app_name){
_activeSession = new JSSession(_arg1, _local5.as_app_name);
} else {
_activeSession = new DesktopSession(_arg1, _arg2);
};
};
};
_activeSession.session_key = session_key;
_activeSession.addEventListener(FacebookEvent.VERIFYING_SESSION, onVerifyingSession);
facebook = new Facebook();
facebook.addEventListener(FacebookEvent.WAITING_FOR_LOGIN, handleWaitingForLogin);
facebook.addEventListener(FacebookEvent.CONNECT, onFacebookReady);
facebook.startSession(_activeSession);
}
protected function getStoredSession():SharedObject{
return (SharedObject.getLocal((api_key + "_stored_session")));
}
protected function handleWaitingForLogin(_arg1:FacebookEvent):void{
dispatchEvent(_arg1);
}
public function logout():void{
getStoredSession().clear();
getStoredSession().flush();
facebook.logout();
}
protected function onFacebookReady(_arg1:FacebookEvent):void{
var _local2:SharedObject;
if (facebook.session_key){
_local2 = getStoredSession();
_local2.data.session_key = facebook.session_key;
_local2.data.stored_secret = facebook.secret;
_local2.flush(3000);
};
if (_arg1){
dispatchEvent(_arg1);
};
}
protected function onWaitingForLogin(_arg1:FacebookEvent):void{
dispatchEvent(_arg1);
}
public function validateLogin():void{
facebook.refreshSession();
}
public function get activeSession():IFacebookSession{
return (_activeSession);
}
public function login(_arg1:Boolean=true):void{
facebook.login(_arg1);
}
public function onVerifyingSession(_arg1:FacebookEvent):void{
dispatchEvent(_arg1);
}
public function verifySession():void{
_activeSession.verifySession();
}
protected function onVerifyLogin(_arg1:FacebookEvent):void{
_activeSession.removeEventListener(FacebookEvent.CONNECT, onVerifyLogin);
if (_arg1.success){
onFacebookReady(null);
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true));
} else {
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, false));
};
}
}
}//package com.facebook.utils
Section 157
//FacebookStreamXMLParser (com.facebook.utils.FacebookStreamXMLParser)
package com.facebook.utils {
import com.facebook.data.stream.*;
public class FacebookStreamXMLParser {
public static function createCommentsArray(_arg1:XMLList, _arg2:Namespace):Array{
var _local6:XML;
var _local7:PostCommentData;
var _local3:Array = [];
var _local4:uint = _arg1.length();
var _local5:uint;
while (_local5 < _local4) {
_local6 = _arg1[_local5];
_local7 = new PostCommentData();
_local7.fromid = FacebookXMLParserUtils.toStringValue(_local6._arg2::fromid[0]);
_local7.id = FacebookXMLParserUtils.toStringValue(_local6._arg2::id[0]);
_local7.text = FacebookXMLParserUtils.toStringValue(_local6._arg2::text[0]);
_local7.time = FacebookXMLParserUtils.toDate(_local6._arg2::time[0]);
_local3.push(_local7);
_local5++;
};
return (_local3);
}
protected static function createMediaArray(_arg1:XML, _arg2:Namespace):Array{
var _local7:XML;
var _local8:StreamMediaData;
if (_arg1 == null){
return (null);
};
var _local3:Array = [];
var _local4:XMLList = _arg1.children();
var _local5:uint = _local4.length();
var _local6:uint;
while (_local6 < _local5) {
_local7 = _local4[_local6];
_local8 = new StreamMediaData();
_local8.type = FacebookXMLParserUtils.toStringValue(_local7._arg2::type[0]);
_local8.alt = FacebookXMLParserUtils.toStringValue(_local7._arg2::alt[0]);
_local8.href = FacebookXMLParserUtils.toStringValue(_local7._arg2::href[0]);
_local8.src = FacebookXMLParserUtils.toStringValue(_local7._arg2::src[0]);
_local8.video = createVideoMedia(_local7._arg2::video[0], _arg2);
_local8.photo = createPhotoMedia(_local7._arg2::photo[0], _arg2);
_local3.push(_local8);
_local6++;
};
return (_local3);
}
public static function createStreamFilterCollection(_arg1:XML, _arg2:Namespace):GetFiltersData{
var _local8:XML;
var _local9:StreamFilterData;
var _local3:GetFiltersData = new GetFiltersData();
var _local4:StreamFilterCollection = new StreamFilterCollection();
var _local5:XMLList = _arg1.._arg2::stream_filter;
var _local6:uint = _local5.length();
var _local7:uint;
while (_local7 < _local6) {
_local8 = _local5[_local7];
_local9 = new StreamFilterData();
_local9.filter_key = FacebookXMLParserUtils.toStringValue(_local8._arg2::filter_key[0]);
_local9.icon_url = FacebookXMLParserUtils.toStringValue(_local8._arg2::icon_url[0]);
_local9.is_visible = FacebookXMLParserUtils.toBoolean(_local8._arg2::is_visible[0]);
_local9.name = FacebookXMLParserUtils.toStringValue(_local8._arg2::name[0]);
_local9.rank = FacebookXMLParserUtils.toNumber(_local8._arg2::rank[0]);
_local9.type = FacebookXMLParserUtils.toStringValue(_local8._arg2::type[0]);
_local9.uid = FacebookXMLParserUtils.toStringValue(_local8._arg2::uid[0]);
_local9.value = FacebookXMLParserUtils.toStringValue(_local8._arg2::value[0]);
_local4.addItem(_local9);
_local7++;
};
_local3.filters = _local4;
return (_local3);
}
protected static function createVideoMedia(_arg1:XML, _arg2:Namespace):VideoMedia{
if (_arg1 == null){
return (null);
};
var _local3:VideoMedia = new VideoMedia();
_local3.display_url = FacebookXMLParserUtils.toStringValue(_arg1._arg2::display_url[0]);
_local3.owner = FacebookXMLParserUtils.toStringValue(_arg1._arg2::owner[0]);
_local3.permalink = FacebookXMLParserUtils.toStringValue(_arg1._arg2::permalink[0]);
_local3.source_url = FacebookXMLParserUtils.toStringValue(_arg1._arg2::source_url[0]);
return (_local3);
}
protected static function createComments(_arg1:XML, _arg2:Namespace):CommentsData{
var _local3:CommentsData = new CommentsData();
_local3.can_remove = FacebookXMLParserUtils.toBoolean(_arg1._arg2::can_remove[0]);
_local3.can_post = FacebookXMLParserUtils.toBoolean(_arg1._arg2::can_post[0]);
_local3.count = FacebookXMLParserUtils.toNumber(_arg1._arg2::count[0]);
var _local4:XMLList = _arg1._arg2::posts.children();
_local3.posts = createCommentsArray(_local4, _arg2);
return (_local3);
}
public static function createGetCommentsData(_arg1:XML, _arg2:Namespace):GetCommentsData{
var _local3:XMLList = _arg1.._arg2::comment;
var _local4:GetCommentsData = new GetCommentsData();
_local4.comments = createCommentsArray(_local3, _arg2);
return (_local4);
}
public static function createStream(_arg1:XML, _arg2:Namespace):GetStreamData{
var _local6:uint;
var _local7:uint;
var _local10:XML;
var _local11:StreamStoryData;
var _local12:XML;
var _local13:AttachmentData;
var _local14:LikesData;
var _local15:XML;
var _local16:XML;
var _local17:ProfileData;
var _local18:XML;
var _local3:GetStreamData = new GetStreamData();
var _local4:StreamStoryCollection = new StreamStoryCollection();
var _local5:ProfileCollection = new ProfileCollection();
_local3.stories = _local4;
_local3.profiles = _local5;
var _local8:XMLList = _arg1._arg2::posts.children();
_local6 = _local8.length();
_local7 = 0;
while (_local7 < _local6) {
_local10 = _local8[_local7];
_local11 = new StreamStoryData();
_local11.sourceXML = _local10;
_local12 = _local10._arg2::attachment[0];
_local13 = new AttachmentData();
_local13.name = FacebookXMLParserUtils.toStringValue(_local12._arg2::name[0]);
_local13.text = FacebookXMLParserUtils.toStringValue(_local12._arg2::text[0]);
_local13.body = FacebookXMLParserUtils.toStringValue(_local12._arg2::body[0]);
_local13.icon = FacebookXMLParserUtils.toStringValue(_local12._arg2::icon[0]);
_local13.label = FacebookXMLParserUtils.toStringValue(_local12._arg2::label[0]);
_local13.media = createMediaArray(_local12._arg2::media[0], _arg2);
_local13.title = FacebookXMLParserUtils.toStringValue(_local12._arg2::title[0]);
_local13.href = FacebookXMLParserUtils.toStringValue(_local12._arg2::href[0]);
_local13.caption = FacebookXMLParserUtils.toStringValue(_local12._arg2::caption[0]);
_local11.attachment = _local13;
_local11.actor_id = FacebookXMLParserUtils.toStringValue(_local10._arg2::actor_id[0]);
_local11.comments = createComments(_local10._arg2::comments[0], _arg2);
_local14 = new LikesData();
_local15 = _local10._arg2::likes[0];
_local14.can_like = FacebookXMLParserUtils.toBoolean(_local15._arg2::can_like[0]);
_local14.user_likes = FacebookXMLParserUtils.toBoolean(_local15._arg2::user_likes[0]);
_local14.count = FacebookXMLParserUtils.toNumber(_local15._arg2::count[0]);
_local14.friends = FacebookXMLParserUtils.toUIDArray(_local15._arg2::friends[0]);
_local14.sample = FacebookXMLParserUtils.toUIDArray(_local15._arg2::sample[0]);
_local14.href = FacebookXMLParserUtils.toStringValue(_local15._arg2::href[0]);
_local11.likes = _local14;
_local11.attribution = FacebookXMLParserUtils.toStringValue(_local10.attribution[0]);
_local11.app_id = FacebookXMLParserUtils.toStringValue(_local10.app_id[0]);
_local11.metadata = FacebookXMLParserUtils.nodeToObject(_local10._arg2::metadata);
_local11.message = FacebookXMLParserUtils.toStringValue(_local10._arg2::message[0]);
_local11.source_id = FacebookXMLParserUtils.toStringValue(_local10._arg2::source_id[0]);
_local11.target_id = FacebookXMLParserUtils.toStringValue(_local10._arg2::target_id[0]);
_local11.post_id = FacebookXMLParserUtils.toStringValue(_local10._arg2::post_id[0]);
_local11.updated_time = FacebookXMLParserUtils.toDate(_local10._arg2::updated_time[0]);
_local11.created_time = FacebookXMLParserUtils.toDate(_local10._arg2::created_time[0]);
_local11.type = FacebookXMLParserUtils.toNumber(_local10._arg2::type[0]);
_local11.viewer_id = FacebookXMLParserUtils.toStringValue(_local10._arg2::viewer_id[0]);
_local16 = _local10._arg2::privacy[0];
_local11.privacy = FacebookXMLParserUtils.toStringValue(_local16._arg2::value[0]);
_local11.filter_key = FacebookXMLParserUtils.toStringValue(_local10._arg2::filter_key[0]);
_local4.addItem(_local11);
_local7++;
};
var _local9:XMLList = _arg1._arg2::profiles.children();
_local6 = _local9.length();
_local7 = 0;
while (_local7 < _local6) {
_local17 = new ProfileData();
_local18 = _local9[_local7];
_local17.id = FacebookXMLParserUtils.toStringValue(_local18._arg2::id[0]);
_local17.name = FacebookXMLParserUtils.toStringValue(_local18._arg2::name[0]);
_local17.pic_square = FacebookXMLParserUtils.toStringValue(_local18._arg2::pic_square[0]);
_local17.url = FacebookXMLParserUtils.toStringValue(_local18._arg2::url[0]);
_local5.addItem(_local17);
_local7++;
};
_local3.albums = FacebookXMLParserUtils.createAlbumCollection(_arg1._arg2::albums[0], _arg2);
return (_local3);
}
protected static function createPhotoMedia(_arg1:XML, _arg2:Namespace):PhotoMedia{
if (_arg1 == null){
return (null);
};
var _local3:PhotoMedia = new PhotoMedia();
_local3.aid = FacebookXMLParserUtils.toStringValue(_arg1._arg2::aid[0]);
_local3.index = FacebookXMLParserUtils.toNumber(_arg1._arg2::index[0]);
_local3.owner = FacebookXMLParserUtils.toStringValue(_arg1._arg2::owner[0]);
_local3.pid = FacebookXMLParserUtils.toStringValue(_arg1._arg2::pid[0]);
return (_local3);
}
}
}//package com.facebook.utils
Section 158
//FacebookUserXMLParser (com.facebook.utils.FacebookUserXMLParser)
package com.facebook.utils {
import com.facebook.data.*;
import com.facebook.data.users.*;
public class FacebookUserXMLParser {
protected static function parseWorkHistory(_arg1:XML, _arg2:Namespace):Array{
var _local4:Object;
var _local5:FacebookWorkInfo;
var _local3:Array = [];
for each (_local4 in _arg1) {
_local5 = new FacebookWorkInfo();
_local5.location = FacebookXMLParserUtils.createLocation(_local4._arg2::location[0], _arg2);
_local5.company_name = String(_local4._arg2::company_name);
_local5.description = String(_local4._arg2::description);
_local5.position = String(_local4._arg2::position);
_local5.start_date = FacebookDataUtils.formatDate(_local4._arg2::start_date);
_local5.end_date = FacebookDataUtils.formatDate(_local4._arg2::end_date);
_local3.push(_local5);
};
return (_local3);
}
protected static function createStatus(_arg1:XML, _arg2:Namespace):StatusData{
var _local3:StatusData = new StatusData();
_local3.message = String(_arg1._arg2::message);
_local3.time = FacebookDataUtils.formatDate(String(_arg1._arg2::time));
return (_local3);
}
protected static function parseEducationHistory(_arg1:XML, _arg2:Namespace):Array{
var _local5:Object;
var _local6:FacebookEducationInfo;
var _local7:XML;
var _local3:Array = [];
var _local4:XMLList = _arg1.children();
for each (_local5 in _local4) {
_local6 = new FacebookEducationInfo();
_local6.name = String(_local5._arg2::name);
_local6.year = String(_local5._arg2::year);
_local6.degree = String(_local5._arg2::degree);
_local6.concentrations = [];
for each (_local7 in _local5.concentration) {
_local6.concentrations.push(_local7);
};
_local3.push(_local6);
};
return (_local3);
}
public static function createFacebookUser(_arg1:XML, _arg2:Namespace):FacebookUser{
var _local6:XML;
var _local7:String;
var _local3:FacebookUser = new FacebookUser();
var _local4:XMLList = _arg1.children();
var _local5:uint = _local4.length();
var _local8:uint;
while (_local8 < _local5) {
_local6 = _local4[_local8];
_local7 = _local6.localName().toString();
switch (_local7){
case "status":
_local3[_local7] = createStatus(_local6, _arg2);
break;
case "affiliations":
_local3[_local7] = createAffiliations(_local6.children(), _arg2);
break;
case "hometown_location":
case "current_location":
_local3[_local7] = FacebookXMLParserUtils.createLocation(_local6, _arg2);
break;
case "profile_update_time":
_local3[_local7] = FacebookDataUtils.formatDate(_local6.toString());
break;
case "hs_info":
_local3.hs1_id = parseInt(_local6._arg2::hs1_id);
_local3.hs1_name = String(_local6._arg2::hs1_name);
_local3.hs2_id = parseInt(_local6._arg2::hs2_id);
_local3.hs2_name = String(_local6._arg2::hs2_name);
_local3.grad_year = String(_local6._arg2::grad_year);
break;
case "education_history":
_local3[_local7] = parseEducationHistory(_local6, _arg2);
break;
case "work_history":
_local3[_local7] = parseWorkHistory(_local6, _arg2);
break;
case "timezone":
case "notes_count":
case "wall_count":
_local3[_local7] = Number(_local6.toString());
break;
case "has_added_app":
case "is_app_user":
_local3[_local7] = FacebookXMLParserUtils.toBoolean(_local6);
break;
case "meeting_sex":
case "meeting_for":
case "email_hashes":
_local3[_local7] = toArray(_local6, _arg2);
break;
default:
if ((_local7 in _local3)){
_local3[_local7] = String(_local6);
};
};
_local8++;
};
return (_local3);
}
protected static function toArray(_arg1:XML, _arg2:Namespace):Array{
var _local3:Array = [];
var _local4:XMLList = _arg1.children();
var _local5:uint = _local4.length();
var _local6:uint;
while (_local6 < _local5) {
_local3.push(_local4[_local6].toString());
_local6++;
};
return (_local3);
}
protected static function createAffiliations(_arg1:XMLList, _arg2:Namespace):Array{
var _local4:*;
var _local5:FacebookNetwork;
var _local3:Array = [];
for each (_local4 in _arg1) {
_local5 = new FacebookNetwork();
_local5.nid = parseInt(_local4._arg2::nid);
_local5.name = String(_local4._arg2::name);
_local5.type = String(_local4._arg2::type);
_local5.status = String(_local4._arg2::status);
_local5.year = String(_local4._arg2::year);
_local3.push(_local5);
};
return (_local3);
}
}
}//package com.facebook.utils
Section 159
//FacebookXMLParserUtils (com.facebook.utils.FacebookXMLParserUtils)
package com.facebook.utils {
import com.facebook.data.*;
import flash.net.*;
import com.facebook.data.photos.*;
public class FacebookXMLParserUtils {
public static function createLocation(_arg1:XML, _arg2:Namespace):FacebookLocation{
var _local3:FacebookLocation = new FacebookLocation();
if (_arg1 == null){
return (_local3);
};
_local3.city = String(_arg1._arg2::city);
_local3.state = String(_arg1._arg2::state);
_local3.country = String(_arg1._arg2::country);
_local3.zip = String(_arg1._arg2::zip);
return (_local3);
}
public static function toNumber(_arg1:XML):Number{
if (_arg1 == null){
return (NaN);
};
return (Number(_arg1.toString()));
}
public static function toStringValue(_arg1:XML):String{
if (_arg1 == null){
return (null);
};
return (_arg1.toString());
}
public static function createAlbumCollection(_arg1:XML, _arg2:Namespace):AlbumCollection{
var _local4:*;
var _local5:AlbumData;
var _local3:AlbumCollection = new AlbumCollection();
for each (_local4 in _arg1.._arg2::album) {
_local5 = new AlbumData();
_local5.aid = FacebookXMLParserUtils.toStringValue(_local4._arg2::aid[0]);
_local5.cover_pid = FacebookXMLParserUtils.toStringValue(_local4._arg2::cover_pid[0]);
_local5.owner = _local4._arg2::owner;
_local5.name = _local4._arg2::name;
_local5.created = FacebookXMLParserUtils.toDate(_local4._arg2::created);
_local5.modified = FacebookXMLParserUtils.toDate(_local4._arg2::modified);
_local5.description = _local4._arg2::description;
_local5.location = _local4._arg2::location;
_local5.link = _local4._arg2::link;
_local5.size = _local4._arg2::size;
_local5.visible = _local4._arg2::visible;
_local3.addAlbum(_local5);
};
return (_local3);
}
public static function toDate(_arg1:String):Date{
if (_arg1 == null){
return (null);
};
var _local2:String = _arg1;
while (_local2.length < 13) {
_local2 = (_local2 + "0");
};
var _local3:Date = new Date(Number(_local2));
return (_local3);
}
public static function xmlToUrlVariables(_arg1:XMLList):URLVariables{
var _local3:XML;
var _local2:URLVariables = new URLVariables();
for each (_local3 in _arg1) {
_local2[_local3.key.valueOf()] = _local3.value.valueOf();
};
return (_local2);
}
public static function toUIDArray(_arg1:XML):Array{
var _local2:Array = [];
if (_arg1 == null){
return (_local2);
};
var _local3:XMLList = _arg1.children();
var _local4:uint = _local3.length();
var _local5:uint;
while (_local5 < _local4) {
_local2.push(toNumber(_local3[_local5]));
_local5++;
};
return (_local2);
}
public static function nodeToObject(_arg1:XMLList):Object{
var _local3:XML;
var _local2:Object = {};
for each (_local3 in _arg1) {
_local2[_local3.key.valueOf()] = _local3.value.valueOf();
};
return (_local2);
}
public static function toBoolean(_arg1:XML):Boolean{
if (_arg1 == null){
return (false);
};
return ((_arg1.toString() == "1"));
}
public static function toArray(_arg1:XML):Array{
if (_arg1 == null){
return (null);
};
return (_arg1.toString().split(","));
}
}
}//package com.facebook.utils
Section 160
//IFacebookResultParser (com.facebook.utils.IFacebookResultParser)
package com.facebook.utils {
import com.facebook.data.*;
import com.facebook.errors.*;
public interface IFacebookResultParser {
function parse(_arg1:String, _arg2:String):FacebookData;
function validateFacebookResponce(_arg1:String):FacebookError;
}
}//package com.facebook.utils
Section 161
//JavascriptRequestHelper (com.facebook.utils.JavascriptRequestHelper)
package com.facebook.utils {
import flash.net.*;
import flash.utils.*;
public class JavascriptRequestHelper {
public static function objectToString(_arg1:Object):String{
var _local3:String;
var _local2:Array = [];
for (_local3 in _arg1) {
_local2.push((((_local3 + ": ") + quote(_arg1[_local3])) + ""));
};
return ((("{" + _local2.join(", ")) + " }"));
}
public static function quote(_arg1:String):String{
var _local2:RegExp = /[\\"\r\n]/g;
return ((("\"" + _arg1.replace(_local2, _quote)) + "\""));
}
public static function formatParams(_arg1:Array):String{
var _local5:Object;
var _local6:String;
var _local2:Array = [];
var _local3:uint = _arg1.length;
var _local4:uint;
while (_local4 < _local3) {
_local5 = _arg1[_local4];
_local6 = getQualifiedClassName(_local5);
switch (_local6){
case "Array":
_local5 = (("[" + _local5.join(", ")) + "]");
break;
case "Object":
_local5 = objectToString(_local5);
break;
case "String":
default:
_local5 = (("\"" + _local5) + "\"");
break;
};
_local2.push(_local5);
_local4++;
};
return (_local2.join(", "));
}
protected static function _quote(_arg1:String, ... _args):String{
switch (_arg1){
case "\\":
return ("\\\\");
case "\r":
return ("\\r");
case "\n":
return ("\\n");
case "\"":
return ("\\\"");
};
return (null);
}
public static function formatURLVariables(_arg1:URLVariables):String{
var _local5:String;
var _local2:Object = {method:true, sig:true, api_key:true, call_id:true};
var _local3:Boolean;
var _local4:Object = {};
for (_local5 in _arg1) {
if (_local2[_local5]){
} else {
_local3 = true;
_local4[_local5] = _arg1[_local5];
};
};
return ((_local3) ? objectToString(_local4) : "null");
}
}
}//package com.facebook.utils
Section 162
//PlayerUtils (com.facebook.utils.PlayerUtils)
package com.facebook.utils {
import flash.system.*;
public class PlayerUtils {
protected static var versionObj:Object;
public static function get internalBuildNumber():Number{
return (parseVersionString().internalBuildNumber);
}
public static function get platform():String{
return (parseVersionString().platform);
}
public static function get buildNumber():Number{
return (parseVersionString().buildNumber);
}
public static function get minorVersion():Number{
return (parseVersionString().minorVersion);
}
public static function parseVersionString():Object{
if (versionObj != null){
return (versionObj);
};
var _local1:String = Capabilities.version;
versionObj = {};
var _local2:Array = _local1.split(" ");
versionObj.platform = _local2[0];
_local2.shift();
_local2 = _local2[0].split(",");
versionObj.majorVersion = Number(_local2[0]);
versionObj.minorVersion = Number(_local2[1]);
versionObj.buildNumber = Number(_local2[2]);
versionObj.internalBuildNumber = Number(_local2[3]);
return (versionObj);
}
public static function get majorVersion():Number{
return (parseVersionString().majorVersion);
}
}
}//package com.facebook.utils
Section 163
//PostRequest (com.facebook.utils.PostRequest)
package com.facebook.utils {
import flash.utils.*;
public class PostRequest {
protected var _boundary:String;// = "-----"
protected var postData:ByteArray;
public function PostRequest(){
createPostData();
}
public function getPostData():ByteArray{
postData.position = 0;
return (postData);
}
protected function writeBoundary():void{
writeDoubleDash();
var _local1:Number = 0;
while (_local1 < boundary.length) {
postData.writeByte(boundary.charCodeAt(_local1));
_local1++;
};
}
protected function writeDoubleDash():void{
postData.writeShort(0x2D2D);
}
public function writeFileData(_arg1:String, _arg2:ByteArray):void{
var _local3:String;
writeBoundary();
writeLineBreak();
_local3 = "Content-Disposition: form-data; filename=\"";
var _local4:Number = 0;
while (_local4 < _local3.length) {
postData.writeByte(_local3.charCodeAt(_local4));
_local4++;
};
postData.writeUTFBytes(_arg1);
writeQuotationMark();
writeLineBreak();
_local3 = "Content-Type: image/jpg";
_local4 = 0;
while (_local4 < _local3.length) {
postData.writeByte(_local3.charCodeAt(_local4));
_local4++;
};
writeLineBreak();
writeLineBreak();
_arg2.position = 0;
postData.writeBytes(_arg2, 0, _arg2.length);
writeLineBreak();
}
public function createPostData():void{
postData = new ByteArray();
postData.endian = Endian.BIG_ENDIAN;
}
public function writePostData(_arg1:String, _arg2:String):void{
var _local3:String;
writeBoundary();
writeLineBreak();
_local3 = (("Content-Disposition: form-data; name=\"" + _arg1) + "\"");
var _local4:uint = _local3.length;
var _local5:Number = 0;
while (_local5 < _local4) {
postData.writeByte(_local3.charCodeAt(_local5));
_local5++;
};
writeLineBreak();
writeLineBreak();
postData.writeUTFBytes(_arg2);
writeLineBreak();
}
public function get boundary():String{
return (_boundary);
}
protected function writeLineBreak():void{
postData.writeShort(3338);
}
public function close():void{
writeBoundary();
writeDoubleDash();
}
protected function writeQuotationMark():void{
postData.writeByte(34);
}
public function set boundary(_arg1:String):void{
_boundary = _arg1;
}
}
}//package com.facebook.utils
Section 164
//Facebook (com.facebook.Facebook)
package com.facebook {
import flash.events.*;
import com.facebook.events.*;
import flash.net.*;
import com.facebook.session.*;
import com.facebook.net.*;
import com.facebook.delegates.*;
import com.facebook.commands.auth.*;
public class Facebook extends EventDispatcher {
public var waiting_for_login:Boolean;
protected var _currentSession:IFacebookSession;
public var connectionErrorMessage:String;
public function Facebook():void{
}
public function post(_arg1:FacebookCall):FacebookCall{
var _local2:IFacebookCallDelegate;
if (_currentSession){
_arg1.session = _currentSession;
_arg1.initialize();
_local2 = _currentSession.post(_arg1);
_arg1.delegate = _local2;
} else {
throw (new Error("Cannot post a call; no session has been set."));
};
return (_arg1);
}
public function startSession(_arg1:IFacebookSession):void{
_currentSession = _arg1;
if (_currentSession.is_connected){
dispatchEvent(new FacebookEvent(FacebookEvent.CONNECT, false, false, true));
} else {
_currentSession.addEventListener(FacebookEvent.CONNECT, onSessionConnected);
_currentSession.addEventListener(FacebookEvent.WAITING_FOR_LOGIN, onWaitingForLogin);
};
}
public function grantExtendedPermission(_arg1:String):void{
navigateToURL(new URLRequest(((((("http://www.facebook.com/authorize.php?api_key=" + api_key) + "&v=") + api_version) + "&ext_perm=") + _arg1)), "_blank");
}
public function refreshSession():void{
_currentSession.refreshSession();
}
public function logout():void{
var _local1:ExpireSession = new ExpireSession();
_local1.addEventListener(FacebookEvent.COMPLETE, onLoggedOut, false, 0, true);
post(_local1);
}
public function get api_version():String{
return ((_currentSession) ? this._currentSession.api_version : null);
}
protected function onLoggedOut(_arg1:FacebookEvent):void{
if (_arg1.success == true){
_currentSession.session_key = null;
};
dispatchEvent(new FacebookEvent(FacebookEvent.LOGOUT, false, false, _arg1.success, _arg1.data, _arg1.error));
}
protected function onWaitingForLogin(_arg1:FacebookEvent):void{
waiting_for_login = true;
dispatchEvent(new FacebookEvent(FacebookEvent.WAITING_FOR_LOGIN));
}
public function login(_arg1:Boolean):void{
_currentSession.login(_arg1);
}
public function get secret():String{
return ((_currentSession) ? this._currentSession.secret : null);
}
public function grantPermission(_arg1:Boolean):void{
var _local2:String = ((("http://www.facebook.com/login.php?return_session=" + (_arg1) ? 1 : 0) + "&api_key=") + api_key);
navigateToURL(new URLRequest(_local2), "_blank");
}
public function get is_connected():Boolean{
return ((_currentSession) ? this._currentSession.is_connected : false);
}
public function get session_key():String{
return ((_currentSession) ? this._currentSession.session_key : null);
}
public function get uid():String{
return ((_currentSession) ? this._currentSession.uid : null);
}
protected function onSessionConnected(_arg1:FacebookEvent):void{
var _local2:IFacebookSession = (_arg1.target as IFacebookSession);
dispatchEvent(_arg1);
}
public function get api_key():String{
return ((_currentSession) ? this._currentSession.api_key : null);
}
public function get expires():Date{
return ((_currentSession) ? this._currentSession.expires : new Date());
}
}
}//package com.facebook
Section 165
//facebook_internal (com.facebook.facebook_internal)
package com.facebook {
public namespace facebook_internal = "http://api.facebook.com/1.0/";
}//package com.facebook
Section 166
//KongregateEvent (com.kongregate.as3.client.events.KongregateEvent)
package com.kongregate.as3.client.events {
import flash.events.*;
public class KongregateEvent extends Event {
public static const COMPLETE:String = "component_api_available";
public function KongregateEvent(_arg1:String){
super(_arg1);
}
}
}//package com.kongregate.as3.client.events
Section 167
//AbstractShadowService (com.kongregate.as3.client.services.AbstractShadowService)
package com.kongregate.as3.client.services {
import flash.events.*;
public class AbstractShadowService extends EventDispatcher {
protected function alert(_arg1:String, _arg2:String, _arg3="", _arg4:String=""):void{
trace(((((((("Kongregate API: " + _arg1) + ".") + _arg2) + "(") + _arg3) + ") ") + _arg4));
}
}
}//package com.kongregate.as3.client.services
Section 168
//HighScoreServiceShadow (com.kongregate.as3.client.services.HighScoreServiceShadow)
package com.kongregate.as3.client.services {
public class HighScoreServiceShadow extends AbstractShadowService implements IHighScoreServices {
private var mode:String;
public function HighScoreServiceShadow(){
mode = "";
}
public function submit(_arg1:Number, _arg2:String=null):void{
alert("IHighScoreServices", "submit", arguments);
}
public function connect():Boolean{
alert("IKongregateServices", "connect");
return (true);
}
public function requestList(_arg1:Function):void{
alert("IHighScoreServices", "requestList", "", (("[Mode: " + mode) + "]"));
_arg1({success:false});
}
public function setMode(_arg1:String):void{
alert("IHighScoreServices", "setMode", arguments);
this.mode = _arg1;
}
}
}//package com.kongregate.as3.client.services
Section 169
//IHighScoreServices (com.kongregate.as3.client.services.IHighScoreServices)
package com.kongregate.as3.client.services {
public interface IHighScoreServices {
function setMode(_arg1:String):void;
function submit(_arg1:Number, _arg2:String=null):void;
function requestList(_arg1:Function):void;
}
}//package com.kongregate.as3.client.services
Section 170
//IKongregateServices (com.kongregate.as3.client.services.IKongregateServices)
package com.kongregate.as3.client.services {
import flash.events.*;
public interface IKongregateServices extends IEventDispatcher {
function getPlayerInfo(_arg1:Function):void;
function connect(_arg1:Number=-1):Boolean;
}
}//package com.kongregate.as3.client.services
Section 171
//IStatServices (com.kongregate.as3.client.services.IStatServices)
package com.kongregate.as3.client.services {
public interface IStatServices {
function submitArray(_arg1:Array):void;
function submit(_arg1:String, _arg2:Number):void;
}
}//package com.kongregate.as3.client.services
Section 172
//IUserServices (com.kongregate.as3.client.services.IUserServices)
package com.kongregate.as3.client.services {
public interface IUserServices {
function getName():String;
function getPlayerInfo(_arg1:Function):void;
}
}//package com.kongregate.as3.client.services
Section 173
//KongregateServiceShadow (com.kongregate.as3.client.services.KongregateServiceShadow)
package com.kongregate.as3.client.services {
public class KongregateServiceShadow extends AbstractShadowService implements IKongregateServices {
public function getName():String{
alert("IKongregateServices", "getName");
return ("Guest");
}
public function connect(_arg1:Number=-1):Boolean{
alert("IKongregateServices", "connect", arguments);
return (true);
}
public function getPlayerInfo(_arg1:Function):void{
alert("IKongregateServices", "getPlayerInfo");
_arg1(new Object());
}
}
}//package com.kongregate.as3.client.services
Section 174
//StatServiceShadow (com.kongregate.as3.client.services.StatServiceShadow)
package com.kongregate.as3.client.services {
public class StatServiceShadow extends AbstractShadowService implements IStatServices {
public function submitArray(_arg1:Array):void{
alert("IStatServices", "submitArray", arguments);
}
public function submit(_arg1:String, _arg2:Number):void{
alert("IStatServices", "submitStat", arguments);
}
}
}//package com.kongregate.as3.client.services
Section 175
//UserServiceShadow (com.kongregate.as3.client.services.UserServiceShadow)
package com.kongregate.as3.client.services {
public class UserServiceShadow extends AbstractShadowService implements IUserServices {
public function getName():String{
alert("UserService", "getName");
return ("Guest");
}
public function getPlayerInfo(_arg1:Function):void{
alert("UserService", "getPlayerInfo");
_arg1({isGuest:true, name:"Guest", points:0, level:0, isMode:false, isAdmin:false, isDeveloper:false, avatarPath:"", chatAvatarPath:""});
}
}
}//package com.kongregate.as3.client.services
Section 176
//IAPIBootstrap (com.kongregate.as3.client.IAPIBootstrap)
package com.kongregate.as3.client {
import flash.events.*;
import flash.display.*;
public interface IAPIBootstrap {
function init(_arg1:Event=null, _arg2:Stage=null):void;
function hideLog():void;
function showLog(_arg1:int=0):void;
}
}//package com.kongregate.as3.client
Section 177
//KongregateAPI (com.kongregate.as3.client.KongregateAPI)
package com.kongregate.as3.client {
import flash.events.*;
import flash.display.*;
import flash.system.*;
import com.kongregate.as3.client.services.*;
import flash.utils.*;
import flash.net.*;
import com.kongregate.as3.client.events.*;
import flash.errors.*;
public class KongregateAPI extends Sprite {
private const VERSION:Number = 1;
private var loader:Loader;
private var loadedDomain:ApplicationDomain;
private static const CLASS_USER:String = "com.kongregate.as3.client.services.UserServices";
private static const CLASS_STATS:String = "com.kongregate.as3.client.services.StatServices";
private static const CLASS_SERVICES:String = "com.kongregate.as3.client.services.KongregateServices";
private static const CLASS_SCORES:String = "com.kongregate.as3.client.services.HighScoreServices";
private static const DEBUG_API_URL:String = "//Linuxpc/kongregate/public/flash/API_AS3.swf";
private static var _connected:Boolean;
private static var kUser:IUserServices;
private static var _loaded:Boolean;
private static var kServices:IKongregateServices;
private static var kScores:IHighScoreServices;
private static var mInstance:KongregateAPI;
private static var kStats:IStatServices;
private static var kAPI:IAPIBootstrap;
public function KongregateAPI(){
if (mInstance != null){
throw (new Error("Warning: KongregateAPI has been added to stage more than once or accessed improperly. Use getInstance() or a stage reference to access."));
};
mInstance = this;
this.addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true);
}
public function get loaded():Boolean{
return (_loaded);
}
public function get connected():Boolean{
return (_connected);
}
private function alertConnected(_arg1:TimerEvent=null):void{
var _local2:KongregateEvent;
var _local3:Boolean;
_local2 = new KongregateEvent(KongregateEvent.COMPLETE);
_local3 = this.dispatchEvent(_local2);
}
private function init(_arg1:Event):void{
var _local2:Object;
var _local3:String;
var _local4:URLRequest;
var _local5:LoaderContext;
this.removeEventListener(Event.ADDED_TO_STAGE, init);
_loaded = false;
_connected = false;
_local2 = LoaderInfo(root.loaderInfo).parameters;
_local3 = _local2.api_path;
if (_local3 == null){
trace("Alert: Kongregate API could not be loaded, due to local testing. API will load when the game is uploaded.");
createShadowServices();
return;
};
Security.allowDomain("*.kongregate.com");
Security.allowDomain("kongregatetrunk.com");
_local4 = new URLRequest(_local3);
_local5 = new LoaderContext(false);
_local5.applicationDomain = ApplicationDomain.currentDomain;
_local5.securityDomain = SecurityDomain.currentDomain;
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
loader.load(_local4, _local5);
}
public function get api():IAPIBootstrap{
return (kAPI);
}
private function loadComplete(_arg1:Event):void{
getServices();
}
public function get scores():IHighScoreServices{
return (kScores);
}
private function ioErrorHandler(_arg1:IOErrorEvent):void{
throw (new IOError(("API file not found. " + _arg1)));
}
public function get services():IKongregateServices{
return (kServices);
}
public function get stats():IStatServices{
return (kStats);
}
private function createShadowServices():void{
var _local1:Timer;
trace(">>> Kongregate Shadow Services instantiated for local development..");
kServices = new KongregateServiceShadow();
kScores = new HighScoreServiceShadow();
kStats = new StatServiceShadow();
kUser = new UserServiceShadow();
_local1 = new Timer(200, 1);
_local1.addEventListener(TimerEvent.TIMER_COMPLETE, alertConnected);
_local1.start();
_connected = true;
}
public function get user():IUserServices{
return (kUser);
}
private function getServices():void{
var _local1:ApplicationDomain;
var _local2:*;
var _local3:*;
var _local4:*;
var _local5:*;
_local1 = ApplicationDomain.currentDomain;
kAPI = IAPIBootstrap(loader.getChildAt(0));
this.addChild(loader);
_local2 = _local1.getDefinition(CLASS_SERVICES);
trace(_local2);
kServices = _local2.getInstance();
_local3 = _local1.getDefinition(CLASS_SCORES);
kScores = _local3.getInstance();
_local4 = _local1.getDefinition(CLASS_STATS);
kStats = _local4.getInstance();
_local5 = _local1.getDefinition(CLASS_USER);
kUser = _local5.getInstance();
kServices.connect(VERSION);
_loaded = true;
_connected = true;
alertConnected();
}
public static function getInstance():KongregateAPI{
if (!mInstance){
throw (new IllegalOperationError("You must add the Kongregate API component to the stage before attempting to access it."));
};
return (mInstance);
}
}
}//package com.kongregate.as3.client
Section 178
//SoundManager (com.melesta.sound.SoundManager)
package com.melesta.sound {
import flash.media.*;
public class SoundManager {
private static var channel:SoundChannel;
public static var _mute:Boolean = false;
private static var map:Object = {};
public function SoundManager(){
throw (new Error(""));
}
public static function play(_arg1:String, _arg2:int=0, _arg3:SoundTransform=null):SoundChannel{
var _local4:Class = (map[_arg1] as Class);
var _local5:Sound = (new (_local4) as Sound);
if (_mute){
_arg3 = new SoundTransform();
_arg3.volume = 0;
};
return ((_local5) ? _local5.play(0, _arg2, _arg3) : null);
}
public static function resume():void{
_mute = false;
}
public static function mute():void{
_mute = true;
}
public static function registerSoundAsset(_arg1:String, _arg2:Class):void{
if ((((_arg1 == null)) || ((_arg1.split(" ").join("").length == 0)))){
return;
};
if (!map.hasOwnProperty(_arg1)){
map[_arg1] = _arg2;
};
}
public static function unregisterSoundAsset(_arg1:String):void{
delete map[_arg1];
}
}
}//package com.melesta.sound
Section 179
//Direction (com.melesta.utils.math.Direction)
package com.melesta.utils.math {
import flash.geom.*;
public class Direction {
public static const DEG_TO_RAD:Number = (Math.PI / 180);
public static const RAD_TO_DEG:Number = (180 / Math.PI);
private static var directionList:Array = new Array("left", "left_down", "left_up", "up", "right", "right_up", "right_down");
public static function getDirection(_arg1:Point, _arg2:Point):Object{
var _local3:Object = new Object();
_local3.direction = "down";
var _local4 = "down";
_local3.right = false;
var _local5:Number = (Math.atan(((_arg2.y - _arg1.y) / (_arg2.x - _arg1.x))) * RAD_TO_DEG);
if (_arg2.x > _arg1.x){
_local3.right = true;
_local5 = -(_local5);
};
if (_local5 > -60){
_local4 = "down_left";
};
if (_local5 > -30){
_local4 = "left";
};
if (_local5 > 30){
_local4 = "left_up";
};
if (_local5 > 60){
_local4 = "up";
};
if (_local5 == 90){
_local4 = "down";
};
if (_local5 == -90){
_local4 = "up";
};
_local3.direction = _local4;
return (_local3);
}
}
}//package com.melesta.utils.math
Section 180
//TimeDecoder (com.melesta.utils.time.TimeDecoder)
package com.melesta.utils.time {
public class TimeDecoder {
public static function decodeTime(_arg1:Number):String{
var _local2:Number = Math.floor((_arg1 / 60));
var _local3:Number = Math.floor((_arg1 - (_local2 * 60)));
var _local4:String = ((_local2 < 10)) ? ("0" + String(_local2)) : String(_local2);
var _local5:String = ((_local3 < 10)) ? ("0" + String(_local3)) : String(_local3);
return (((_local4 + ":") + _local5));
}
}
}//package com.melesta.utils.time
Section 181
//body_2 (depotProduction_fla.body_2)
package depotProduction_fla {
import flash.display.*;
public dynamic class body_2 extends MovieClip {
public function body_2(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package depotProduction_fla
Section 182
//AlertWindow (facebook.ui.AlertWindow)
package facebook.ui {
import flash.events.*;
import caurina.transitions.*;
import utils.*;
public class AlertWindow extends QuitDialogTemplate {
public static var instance:AlertWindow;
public function AlertWindow(){
Fonts.applyDefaultFormat(caption);
Fonts.applyDefaultFormat(noBtn.caption);
instance = this;
yesBtn.visible = false;
noBtn.x = 250;
noBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.alpha = 0;
this.visible = false;
noBtn.caption.mouseEnabled = false;
noBtn.caption.text = Config.currentLanguage.ok;
caption.text = "Press ok after login";
noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true);
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
Tweener.addTween(this, {alpha:0, time:0.2, transition:"easeInBack", y:-100, onComplete:function ():void{
this.visible = false;
Farm2.instance.closeFBAlert();
}});
}
private function noOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
}
public function show():void{
this.visible = true;
this.alpha = 0;
y = -100;
Tweener.addTween(this, {alpha:1, time:0.2});
Tweener.addTween(this, {time:0.3, y:0, transition:"easeOutBack"});
}
}
}//package facebook.ui
Section 183
//FBLeaderboard (facebook.ui.FBLeaderboard)
package facebook.ui {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import caurina.transitions.*;
public class FBLeaderboard extends VLeaderboardTemplate {
private var _itemsContainer:MovieClip;
private var dragging:Boolean;// = false
private var scrollTimer:Timer;
public static var instance:FBLeaderboard;
public function FBLeaderboard(){
_itemsContainer = new MovieClip();
addChild(_itemsContainer);
alpha = 0;
visible = false;
_itemsContainer.mask = _mask;
closeBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
sliderBtn.buttonMode = true;
sliderBtn.addEventListener(MouseEvent.MOUSE_DOWN, startScroll, false, 0, true);
addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true);
scrollTimer = new Timer(10);
preloader.visible = false;
instance = this;
}
private function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
Tweener.addTween(this, {alpha:0, time:0.5, onComplete:function ():void{
this.visible = false;
clearList();
}});
}
private function clearList():void{
var _local1:int = _itemsContainer.numChildren;
while (_local1--) {
_itemsContainer.removeChildAt(_local1);
};
}
private function mouseUp(_arg1:MouseEvent):void{
if (dragging){
dragging = false;
sliderBtn.stopDrag();
scrollTimer.stop();
scrollTimer.removeEventListener(TimerEvent.TIMER, scroll, true);
};
}
public function getLeaderBoard():void{
var _local1 = "http://en.facebook.promo.services.alawar.com/scores.php";
var _local2:URLLoader = new URLLoader();
_local2.addEventListener(Event.COMPLETE, createList);
_local2.load(new URLRequest(_local1));
}
private function scroll(_arg1:TimerEvent=null):void{
_itemsContainer.cacheAsBitmap = true;
var _local2:int = ((100 / 236) * (sliderBtn.y - 68));
var _local3:Number = Number(_itemsContainer);
var _local4:Number = Number(((((_mask.height - 10) - _itemsContainer.height) / 100) * _local2));
Tweener.addTween(_itemsContainer, {y:_local4, time:0, transition:"linear"});
}
private function startScroll(_arg1:MouseEvent):void{
if (_mask.height < _itemsContainer.height){
sliderBtn.startDrag(false, new Rectangle(534, 68, 0, 236));
dragging = true;
scrollTimer.addEventListener(TimerEvent.TIMER, scroll, false, 0, true);
scrollTimer.start();
};
}
private function createList(_arg1:Event):void{
var _local4:FBLeaderboardItem;
_arg1.stopPropagation();
preloader.visible = false;
var _local2:XML = XML(_arg1.target.data);
clearList();
var _local3:int;
while (_local3 < _local2.children().length()) {
_local4 = new FBLeaderboardItem(_local2.user[_local3], (_local3 + 1));
_local4.x = 27;
_local4.y = (70 + (55 * _local3));
_local4.alpha = 0;
_itemsContainer.addChild(_local4);
Tweener.addTween(_local4, {alpha:1, time:0.5, delay:(0.05 * _local3)});
_local3++;
};
}
public function show():void{
visible = true;
Tweener.addTween(this, {alpha:1, time:0.5});
preloader.visible = true;
getLeaderBoard();
}
}
}//package facebook.ui
Section 184
//FBLeaderboardItem (facebook.ui.FBLeaderboardItem)
package facebook.ui {
import flash.events.*;
import flash.display.*;
import flash.system.*;
import com.facebook.events.*;
import flash.utils.*;
import flash.net.*;
import utils.*;
import caurina.transitions.properties.*;
import caurina.transitions.*;
import com.facebook.commands.users.*;
import com.facebook.net.*;
import com.facebook.data.users.*;
public class FBLeaderboardItem extends LeaderboardItemTemplate {
private var _imagePath:String;// = ""
private var _delay:Number;// = 0
private var _loader:URLLoader;
private var _id:String;
public function FBLeaderboardItem(_arg1:XML, _arg2:Number){
ColorShortcuts.init();
Fonts.applyDefaultFormat(score);
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(place);
this.score.text = _arg1.score;
this.title.text = "";
this.place.text = String(_arg2);
_delay = _arg2;
this.score.mouseEnabled = (this.title.mouseEnabled = (this.place.mouseEnabled = false));
this.place.text = String(_arg2);
getInfo(_arg1.id);
_id = _arg1.id;
this.addEventListener(MouseEvent.CLICK, gotoUserPage, false, 0, true);
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
}
private function handle_getInfoComplete(_arg1:FacebookEvent):void{
var _local2:GetInfoData = GetInfoData(_arg1.data);
var _local3:FacebookUser = FacebookUser(_local2.userCollection.getItemAt(0));
_imagePath = _local3.pic_square;
_id = _local3.uid;
this.title.text = _local3.name;
setTimeout(loadImage, Math.ceil(((1200 / 3) * _delay)));
}
private function out(_arg1:MouseEvent):void{
Tweener.addTween(this, {_brightness:0, time:0.3});
}
private function loadImage():void{
var _local1:Loader = new Loader();
_local1.contentLoaderInfo.addEventListener(Event.COMPLETE, photoLoaded);
_local1.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, unableToLoadPhoto);
var _local2:LoaderContext = new LoaderContext(true);
_local1.load(new URLRequest(_imagePath), _local2);
}
private function photoLoaded(_arg1:Event):void{
_arg1.stopPropagation();
var _local2:Bitmap = Bitmap(_arg1.target.content);
this.image.avatar.addChild(_local2);
}
private function over(_arg1:MouseEvent):void{
Tweener.addTween(this, {_brightness:0.5, time:0.3});
}
public function getInfo(_arg1:String):void{
var _local2:FacebookCall = Farm2.facebookSession.facebook.post(new GetInfo([_arg1], ["name", "pic_square"]));
_local2.addEventListener(FacebookEvent.COMPLETE, handle_getInfoComplete, false, 0, true);
}
private function gotoUserPage(_arg1:MouseEvent):void{
navigateToURL(new URLRequest(("http://www.facebook.com/profile.php?id=" + _id)), "_blank");
}
private function unableToLoadPhoto(_arg1:IOErrorEvent):void{
}
}
}//package facebook.ui
Section 185
//aim_btn_7 (Farm3Africa_fla.aim_btn_7)
package Farm3Africa_fla {
import flash.events.*;
import flash.display.*;
public dynamic class aim_btn_7 extends MovieClip {
public function aim_btn_7(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent):void{
this.gotoAndStop(3);
}
function frame1(){
stop();
this.addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
}
public function over(_arg1:MouseEvent):void{
this.gotoAndStop(2);
}
public function out(_arg1:MouseEvent):void{
this.gotoAndStop(1);
}
}
}//package Farm3Africa_fla
Section 186
//alawar_100 (Farm3Africa_fla.alawar_100)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class alawar_100 extends MovieClip {
public function alawar_100(){
addFrameScript(0, frame1, 3, frame4);
}
function frame1(){
stop();
}
function frame4(){
stop();
}
}
}//package Farm3Africa_fla
Section 187
//bg_15 (Farm3Africa_fla.bg_15)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class bg_15 extends MovieClip {
public function bg_15(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 188
//big_btn_3 (Farm3Africa_fla.big_btn_3)
package Farm3Africa_fla {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public dynamic class big_btn_3 extends MovieClip {
public var caption:TextField;
public function big_btn_3(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent){
this.gotoAndStop(3);
}
function frame1(){
addEventListener(MouseEvent.ROLL_OVER, over);
addEventListener(MouseEvent.ROLL_OUT, out);
addEventListener(MouseEvent.MOUSE_DOWN, down);
stop();
}
public function over(_arg1:MouseEvent){
this.gotoAndStop(2);
}
public function out(_arg1:MouseEvent){
this.gotoAndStop(1);
}
}
}//package Farm3Africa_fla
Section 189
//body_56 (Farm3Africa_fla.body_56)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class body_56 extends MovieClip {
public function body_56(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 190
//bodyGrass_90 (Farm3Africa_fla.bodyGrass_90)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class bodyGrass_90 extends MovieClip {
public function bodyGrass_90(){
addFrameScript(16, frame17);
}
function frame17(){
stop();
}
}
}//package Farm3Africa_fla
Section 191
//boxlineExpor_84 (Farm3Africa_fla.boxlineExpor_84)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class boxlineExpor_84 extends MovieClip {
public function boxlineExpor_84(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 192
//buyBtn_95 (Farm3Africa_fla.buyBtn_95)
package Farm3Africa_fla {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public dynamic class buyBtn_95 extends MovieClip {
public var caption:TextField;
public function buyBtn_95(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent){
this.gotoAndStop(3);
}
function frame1(){
addEventListener(MouseEvent.MOUSE_OVER, over);
addEventListener(MouseEvent.MOUSE_OUT, out);
addEventListener(MouseEvent.MOUSE_DOWN, down);
stop();
caption.mouseEnabled = false;
}
public function over(_arg1:MouseEvent){
this.gotoAndStop(2);
}
public function out(_arg1:MouseEvent){
this.gotoAndStop(1);
}
}
}//package Farm3Africa_fla
Section 193
//buyButton_16 (Farm3Africa_fla.buyButton_16)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class buyButton_16 extends MovieClip {
public var price:TextField;
public function buyButton_16(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
price.mouseEnabled = false;
}
}
}//package Farm3Africa_fla
Section 194
//cage_20 (Farm3Africa_fla.cage_20)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class cage_20 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function cage_20(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 195
//Cake_22 (Farm3Africa_fla.Cake_22)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class Cake_22 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function Cake_22(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 196
//cake_body_44 (Farm3Africa_fla.cake_body_44)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class cake_body_44 extends MovieClip {
public function cake_body_44(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 197
//car0_74 (Farm3Africa_fla.car0_74)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class car0_74 extends MovieClip {
public function car0_74(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 198
//carnivaldress_27 (Farm3Africa_fla.carnivaldress_27)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class carnivaldress_27 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function carnivaldress_27(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 199
//CarnivalDress_body_42 (Farm3Africa_fla.CarnivalDress_body_42)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class CarnivalDress_body_42 extends MovieClip {
public function CarnivalDress_body_42(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 200
//carShop_18 (Farm3Africa_fla.carShop_18)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class carShop_18 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function carShop_18(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 201
//depot_17 (Farm3Africa_fla.depot_17)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class depot_17 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function depot_17(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 202
//dried_21 (Farm3Africa_fla.dried_21)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class dried_21 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function dried_21(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 203
//DriedEggs_body_46 (Farm3Africa_fla.DriedEggs_body_46)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class DriedEggs_body_46 extends MovieClip {
public function DriedEggs_body_46(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 204
//fittingroom_25 (Farm3Africa_fla.fittingroom_25)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class fittingroom_25 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function fittingroom_25(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 205
//floury_cake_23 (Farm3Africa_fla.floury_cake_23)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class floury_cake_23 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function floury_cake_23(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 206
//FlouryCake_body_36 (Farm3Africa_fla.FlouryCake_body_36)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class FlouryCake_body_36 extends MovieClip {
public function FlouryCake_body_36(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 207
//gold_118 (Farm3Africa_fla.gold_118)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class gold_118 extends MovieClip {
public function gold_118(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 208
//incubator_24 (Farm3Africa_fla.incubator_24)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class incubator_24 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function incubator_24(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 209
//incubator_body_34 (Farm3Africa_fla.incubator_body_34)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class incubator_body_34 extends MovieClip {
public function incubator_body_34(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 210
//items_115 (Farm3Africa_fla.items_115)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class items_115 extends MovieClip {
public var outCount:TextField;
public var caption:TextField;
public var arrow:MovieClip;
public var inCount:TextField;
public function items_115(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
caption.mouseEnabled = false;
}
}
}//package Farm3Africa_fla
Section 211
//kubok_62 (Farm3Africa_fla.kubok_62)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class kubok_62 extends MovieClip {
public function kubok_62(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 212
//logo_mc_97 (Farm3Africa_fla.logo_mc_97)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class logo_mc_97 extends MovieClip {
public function logo_mc_97(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 213
//middleBtn_75 (Farm3Africa_fla.middleBtn_75)
package Farm3Africa_fla {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public dynamic class middleBtn_75 extends MovieClip {
public var caption:TextField;
public function middleBtn_75(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent){
this.gotoAndStop(3);
}
function frame1(){
stop();
addEventListener(MouseEvent.ROLL_OVER, over);
addEventListener(MouseEvent.ROLL_OUT, out);
addEventListener(MouseEvent.MOUSE_DOWN, down);
}
public function over(_arg1:MouseEvent){
this.gotoAndStop(2);
}
public function out(_arg1:MouseEvent){
this.gotoAndStop(1);
}
}
}//package Farm3Africa_fla
Section 214
//middleButton_9 (Farm3Africa_fla.middleButton_9)
package Farm3Africa_fla {
import flash.events.*;
import flash.text.*;
import flash.display.*;
public dynamic class middleButton_9 extends MovieClip {
public var caption:TextField;
public function middleButton_9(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent){
this.gotoAndStop(3);
}
function frame1(){
addEventListener(MouseEvent.MOUSE_OVER, over);
addEventListener(MouseEvent.MOUSE_OUT, out);
addEventListener(MouseEvent.MOUSE_DOWN, down);
stop();
}
public function over(_arg1:MouseEvent){
this.gotoAndStop(2);
}
public function out(_arg1:MouseEvent){
this.gotoAndStop(1);
}
}
}//package Farm3Africa_fla
Section 215
//new_119 (Farm3Africa_fla.new_119)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class new_119 extends MovieClip {
public function new_119(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 216
//none_120 (Farm3Africa_fla.none_120)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class none_120 extends MovieClip {
public function none_120(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 217
//normal_121 (Farm3Africa_fla.normal_121)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class normal_121 extends MovieClip {
public function normal_121(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 218
//pig_88 (Farm3Africa_fla.pig_88)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class pig_88 extends MovieClip {
public function pig_88(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 219
//plane_19 (Farm3Africa_fla.plane_19)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class plane_19 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function plane_19(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 220
//plane_83 (Farm3Africa_fla.plane_83)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class plane_83 extends MovieClip {
public function plane_83(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 221
//plane_body_31 (Farm3Africa_fla.plane_body_31)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class plane_body_31 extends MovieClip {
public function plane_body_31(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 222
//productionbody_11 (Farm3Africa_fla.productionbody_11)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class productionbody_11 extends MovieClip {
public function productionbody_11(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 223
//purposesRibbon_8 (Farm3Africa_fla.purposesRibbon_8)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class purposesRibbon_8 extends MovieClip {
public var time_txt:TextField;
public function purposesRibbon_8(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 224
//silver_122 (Farm3Africa_fla.silver_122)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class silver_122 extends MovieClip {
public function silver_122(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 225
//sklads_48 (Farm3Africa_fla.sklads_48)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class sklads_48 extends MovieClip {
public function sklads_48(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 226
//smalButton_80 (Farm3Africa_fla.smalButton_80)
package Farm3Africa_fla {
import flash.events.*;
import flash.display.*;
import flash.text.*;
public dynamic class smalButton_80 extends MovieClip {
public var caption:TextField;
public function smalButton_80(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
addEventListener(MouseEvent.ROLL_OVER, mHandler, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, mHandler, false, 0, true);
addEventListener(MouseEvent.ROLL_OUT, mHandler, false, 0, true);
}
public function mHandler(_arg1:MouseEvent):void{
switch (_arg1.type){
case MouseEvent.MOUSE_DOWN:
gotoAndStop(3);
break;
case MouseEvent.ROLL_OVER:
gotoAndStop(2);
break;
case MouseEvent.ROLL_OUT:
gotoAndStop(1);
break;
};
}
}
}//package Farm3Africa_fla
Section 227
//soundControl_98 (Farm3Africa_fla.soundControl_98)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class soundControl_98 extends MovieClip {
public var caption:TextField;
public function soundControl_98(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 228
//Spinnery_body_38 (Farm3Africa_fla.Spinnery_body_38)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class Spinnery_body_38 extends MovieClip {
public function Spinnery_body_38(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 229
//weaving_26 (Farm3Africa_fla.weaving_26)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class weaving_26 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function weaving_26(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 230
//Weaving_body_40 (Farm3Africa_fla.Weaving_body_40)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class Weaving_body_40 extends MovieClip {
public function Weaving_body_40(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 231
//wellcopy_50 (Farm3Africa_fla.wellcopy_50)
package Farm3Africa_fla {
import flash.display.*;
public dynamic class wellcopy_50 extends MovieClip {
public function wellcopy_50(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 232
//wellShop_14 (Farm3Africa_fla.wellShop_14)
package Farm3Africa_fla {
import flash.display.*;
import flash.text.*;
public dynamic class wellShop_14 extends MovieClip {
public var bg:MovieClip;
public var buyBtn:MovieClip;
public var title:TextField;
public var tick:MovieClip;
public function wellShop_14(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package Farm3Africa_fla
Section 233
//FieldTemplate (game.assets.FieldTemplate)
package game.assets {
import flash.display.*;
public dynamic class FieldTemplate extends MovieClip {
}
}//package game.assets
Section 234
//Grass (game.assets.Grass)
package game.assets {
import flash.events.*;
import flash.display.*;
import flash.filters.*;
import flash.utils.*;
import game.*;
import com.melesta.sound.*;
public class Grass extends GrassTemplate {
private var gameController:GameController;
private var _deathTimer:Timer;
private var _capacity:Number;// = 160
public var index:Number;// = 0
private var _stageInstance:DisplayObjectContainer;
public var distance:Number;// = 0
private var _destroyed:Boolean;// = false
private var _life:Number;// = 16
public static var grassList:Array = new Array();
public static var count:Number = 0;
public function Grass(_arg1:Number, _arg2:Number, _arg3:DisplayObjectContainer=null){
this.mouseChildren = false;
this.mouseEnabled = false;
gameController = GameController.instance;
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
SoundManager.play("action_watering");
_stageInstance = _arg3;
this.x = _arg1;
this.y = _arg2;
this.body.gotoAndPlay(2);
if ((Math.random() * 100) > 40){
body.addEventListener(Event.ENTER_FRAME, grow, false, 0, true);
};
_deathTimer = new Timer(60000, 10);
_stageInstance.addChild(this);
_deathTimer.addEventListener(TimerEvent.TIMER, death, false, 0, true);
_deathTimer.start();
index = Grass.count;
Grass.grassList.push(this);
Grass.count++;
}
public function destroy(_arg1:Event=null):void{
if (!_destroyed){
gameController.removeEventListener(GameController.LEVEL_COMPLETED, remove);
_destroyed = true;
Grass.grassList.splice(index, 1);
Grass.remove();
_deathTimer.stop();
_deathTimer.removeEventListener(TimerEvent.TIMER, death);
_stageInstance.removeChild(this);
};
}
private function grow(_arg1:Event=null):void{
_arg1.stopPropagation();
if (_arg1.target.currentFrame == 13){
body.removeEventListener(Event.ENTER_FRAME, grow, false);
this.body.stop();
};
}
public function getGrass():Number{
if ((_capacity - 10) >= 0){
_capacity = (_capacity - 10);
this.body.gotoAndStop((Math.ceil((_capacity / 10)) + 1));
return (_capacity);
};
return (_capacity);
}
public function hasGrass():Number{
return (_capacity);
}
private function death(_arg1:TimerEvent=null):void{
_arg1.stopPropagation();
_capacity = (_capacity - 10);
if (!_capacity){
destroy();
return;
};
this.body.gotoAndStop(((_capacity / 10) + 1));
}
public static function refreshIndexes():void{
var _local1:int;
while (_local1 < Grass.grassList.length) {
Grass.grassList[_local1].index = _local1;
_local1++;
};
}
public static function remove():void{
Grass.count--;
Grass.refreshIndexes();
}
public static function getNear(_arg1:Number, _arg2:Number):Grass{
var _local3:Array = new Array();
var _local4:int;
while (_local4 < Grass.grassList.length) {
_local3.push(Math.sqrt((((_arg1 - Grass.grassList[_local4].x) * (_arg1 - Grass.grassList[_local4].x)) + ((_arg2 - Grass.grassList[_local4].y) * (_arg2 - Grass.grassList[_local4].y)))));
Grass.grassList[_local4].distance = _local3[_local4];
_local4++;
};
Grass.grassList.sortOn("distance", Array.NUMERIC);
Grass.refreshIndexes();
return (Grass.grassList[0]);
}
}
}//package game.assets
Section 235
//GrassTemplate (game.assets.GrassTemplate)
package game.assets {
import flash.display.*;
public dynamic class GrassTemplate extends MovieClip {
public var body:MovieClip;
}
}//package game.assets
Section 236
//PlayGround (game.assets.PlayGround)
package game.assets {
public class PlayGround extends BackgroundTemplate {
public static var instance:PlayGround;
public function PlayGround(){
instance = this;
}
}
}//package game.assets
Section 237
//GameController (game.GameController)
package game {
import flash.events.*;
import utils.*;
import com.melesta.sound.*;
public class GameController extends EventDispatcher {
public static var RESUME_GAME:String = "resume_game";
public static var START_GAME:String = "start_game";
public static var LEVEL_COMPLETED:String = "level_completed";
public static var MUSIC_MUTED:String = "music_muted";
public static var SOUND_MUTED:String = "sound_muted";
public static var instance:GameController;
public static var DESTROY_GAME:String = "destroy_game";
public static var CHANGE_MONEY:String = "shange_money";
public static var PAUSE_GAME:String = "pause_game";
public function GameController(){
instance = this;
}
public function changeMoney():void{
dispatchEvent(new Event(GameController.CHANGE_MONEY));
}
public function start():void{
dispatchEvent(new Event(GameController.START_GAME));
}
public function pause():void{
dispatchEvent(new Event(PAUSE_GAME));
}
public function levelCompleted():void{
dispatchEvent(new Event(GameController.LEVEL_COMPLETED));
}
public function set muteMusic(_arg1:Boolean):void{
if (SoundsList.muteMusic == _arg1){
return;
};
SoundsList.muteMusic = _arg1;
if (_arg1){
if (SoundsList.gameMusicChannel){
SoundsList.gameMusicChannel.stop();
};
if (SoundsList.menuMusicChannel){
SoundsList.menuMusicChannel.stop();
};
} else {
if (SoundsList.inMenu){
if (SoundsList.gameMusicChannel){
SoundsList.gameMusicChannel.stop();
};
SoundsList.menuMusicChannel = SoundsList.menuMusicSound.play(1);
} else {
if (SoundsList.menuMusicChannel){
SoundsList.menuMusicChannel.stop();
};
if (SoundsList.gameMusicSound != null){
SoundsList.gameMusicChannel = SoundsList.gameMusicSound.play();
};
};
};
dispatchEvent(new Event(MUSIC_MUTED));
}
public function destroy():void{
dispatchEvent(new Event(DESTROY_GAME));
if (!SoundsList.muteMusic){
if (((SoundsList.gameMusicSound) && (SoundsList.gameMusicChannel))){
SoundsList.gameMusicChannel.stop();
};
if (SoundsList.menuMusicSound){
SoundsList.menuMusicChannel.stop();
};
};
}
public function set muteSound(_arg1:Boolean):void{
if (SoundsList.mute == _arg1){
return;
};
SoundsList.mute = _arg1;
if (_arg1){
SoundManager.mute();
} else {
SoundManager.resume();
};
dispatchEvent(new Event(SOUND_MUTED));
}
public function resume():void{
dispatchEvent(new Event(RESUME_GAME));
}
}
}//package game
Section 238
//LevelBuilder (game.LevelBuilder)
package game {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
import houses.*;
import ui.*;
import market.road.*;
import pets.*;
import utils.*;
import com.melesta.sound.*;
public class LevelBuilder {
public var houseContainer:HouseContainer;
private var _container:MovieClip;
public var tooltip:Tooltip;
public var goals:GoalsWindow;
private var _gameController:GameController;
private var _bearList:Array;
public var purposes:PurposesWindow;
public var bottomPanel:BottomPanel;
public var road:Road;
private var _bearTime:Number;// = 0
public var petsContainer:PetsContainer;
private var _bearTimer:Timer;
public var waterTooltip:WaterTooltip;
public var petShop:PetShop;
public var results:ResultsWindow;
private var houseTypes:Array;
public static var maxLevel:Number = 1;
public static var instance:LevelBuilder;
public static var currentLevel:Number = 1;
public static var currentLevelXML:XML;
public function LevelBuilder(){
houseTypes = [House.DRIED_EGGS, House.CAKE, House.FLOURY_CAKE, House.INCUBATOR, House.SPINNERY, House.WEAVING, House.CARNIVALDRESS];
_bearList = [];
super();
instance = this;
}
public function pause(_arg1:Event=null):void{
_bearTimer.stop();
}
public function get container():MovieClip{
return (_container);
}
private function carCame(_arg1:Event=null):void{
SoundManager.play("car_came");
updateView();
}
public function updateView(_arg1:Event=null):void{
PetShop.instance.update();
BottomPanel.instance.update();
}
public function addBear(_arg1:TimerEvent=null):void{
var _local2:Array;
_bearTime++;
if (_bearList.length > 0){
_local2 = _bearList[0].split(",");
if (_bearTime >= Number(_local2[1])){
PetsContainer.instance.addPet(_local2[0], 0);
_bearList.shift();
};
} else {
_bearTime = 0;
_bearTimer.stop();
};
}
public function addHouses():void{
addPets();
_bearTimer.start();
BottomPanel.instance.startTime();
var _local1:Number = currentLevelXML.child("Houses").child("h").length();
var _local2:Number = 0;
var _local3:Number = 0;
var _local4:Number = 0;
var _local5:Array = new Array();
var _local6:int;
while (_local6 < _local1) {
_local2 = Number(currentLevelXML.child("Houses").h[_local6].@Type);
_local3 = Number(currentLevelXML.child("Houses").h[_local6].@Upgrade);
_local4 = Number(currentLevelXML.child("Houses").h[_local6].@PosIndex);
HouseContainer.instance.addHouse(houseTypes[_local2], _local4, _local3, (_local6 * 0.2));
_local6++;
};
HouseContainer.instance.addHouse(House.WELL, 6, 0, (_local1 * 0.2));
if (currentLevelXML.AccessProduct.c.length() > 0){
HouseContainer.instance.addHouse(House.PLANE, 7, 0, ((_local1 * 0.2) + 0.2));
};
HouseContainer.instance.addHouse(House.DEPOT, 8, 0, ((_local1 * 0.2) + 0.8));
if (Config.currentLevel > 1){
HouseContainer.instance.addHouse(House.CAR, 9, 0, ((_local1 * 0.2) + 0.6));
};
}
public function addMoney(_arg1:MouseEvent=null):void{
Road.instance.addMoney(1000);
BottomPanel.instance.update();
}
private function gold(_arg1:MouseEvent=null):void{
ResultsWindow.instance.show();
}
public function createLevel(_arg1:Number=1):void{
var _local3:Number;
var _local6:String;
var _local7:String;
var _local10:String;
currentLevel = _arg1;
Config.currentLevel = _arg1;
currentLevelXML = Config.getLevel(_arg1);
var _local2:Number = currentLevelXML.child("Goals").child("g").length();
LevelStatistics.accessProduct = [];
var _local4:int;
while (_local4 < currentLevelXML.AccessProduct.c.length()) {
LevelStatistics.accessProduct.push(Number(currentLevelXML.AccessProduct.c[_local4].@Product));
_local4++;
};
LevelStatistics.goals = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
LevelStatistics.purposes = [];
var _local5:int;
while (_local5 < _local2) {
_local3 = Number(currentLevelXML.child("Goals").g[_local5].@Type);
_local10 = ((ProductTypes.numberToType(_local3) + ",") + Number(currentLevelXML.child("Goals").g[_local5].@Val));
LevelStatistics.purposes.push(_local10);
_local5++;
};
_bearTime = 0;
_bearList = [];
var _local8:Number = currentLevelXML.child("EnemyTimes").child("t").length();
var _local9:int;
while (_local9 < _local8) {
_local6 = ((currentLevelXML.child("EnemyTimes").t[_local9].@Type == "0")) ? "POLAR_BEAR" : "BROWN";
_local7 = currentLevelXML.child("EnemyTimes").t[_local9].@Time;
_bearList.push(("BROWN," + _local7));
_local9++;
};
goals.show();
LevelStatistics.updateStatistics();
Road.instance.setMoney(Number(currentLevelXML.@StartMoney));
bottomPanel.init();
bottomPanel.animate();
updateView();
}
public function set container(_arg1:MovieClip):void{
_container = _arg1;
}
public function resume(_arg1:Event=null):void{
_bearTimer.start();
}
public function addPets():void{
Penguin.count = 0;
Penguin.penguinList = [];
Sheep.count = 0;
Sheep.penguinList = [];
var _local1:Number = currentLevelXML.child("StartPets").child("p").length();
var _local2:Number = 0;
var _local3:Array = new Array();
var _local4:int;
while (_local4 < _local1) {
_local2 = int(currentLevelXML.child("StartPets").p[_local4].@Type);
PetsContainer.instance.addPet(ProductTypes.types[(17 + _local2)], (0.2 * _local4));
_local4++;
};
PetShop.instance.update();
}
public function prepareAllAssets():void{
_gameController = GameController.instance;
_gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
_gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
petShop = new PetShop();
container.addChild(petShop);
road = new Road();
if (Config.use_cheats){
road.addEventListener(MouseEvent.CLICK, addMoney, false, 0, true);
road.addEventListener(MouseEvent.MOUSE_WHEEL, gold, false, 0, true);
};
container.addChild(road);
road.x = 364;
road.addEventListener(Road.CAR_CAME, carCame, false, 0, true);
road.addEventListener(Road.UPDATE_MONEY, updateView, false, 0, true);
bottomPanel = new BottomPanel();
BottomPanel.effectContainer = container;
bottomPanel.createEffect();
container.addChild(bottomPanel);
houseContainer = new HouseContainer(container);
petsContainer = new PetsContainer(container.parent);
purposes = new PurposesWindow(container.parent);
results = new ResultsWindow(container.parent);
goals = new GoalsWindow(container.parent);
tooltip = new Tooltip();
container.parent.addChild(tooltip);
waterTooltip = new WaterTooltip();
container.parent.addChild(waterTooltip);
_bearTimer = new Timer(1000);
_bearTimer.addEventListener(TimerEvent.TIMER, addBear, false, 0, true);
}
}
}//package game
Section 239
//CakeHouse (houses.CakeHouse)
package houses {
import flash.display.*;
import utils.*;
public class CakeHouse extends ProductHouse {
public function CakeHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new CakeHouseTemplate());
upgradeIndex = 6;
init("CAKE", ["DRIED_EGGS"], Config.UPGRADE_COST_CAKE, Config.currentLanguage.tooltips.cake, _arg3, _arg4);
_progress.x = (-(left) * 50);
_progress.y = -20;
_upgradeButton.x = (left * 40);
_upgradeButton.y = -30;
}
}
}//package houses
Section 240
//CarnivalDress (houses.CarnivalDress)
package houses {
import flash.display.*;
import utils.*;
public class CarnivalDress extends ProductHouse {
public function CarnivalDress(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new CarnivalDressHouseTemplate());
init("СARNIVAL_DRESS", ["FABRIC", "ADORNMENT"], Config.UPGRADE_COST_FLOURY_CAKE, Config.currentLanguage.tooltips.сarnival_dress, _arg3, _arg4);
_upgradeButton.x = -20;
_upgradeButton.y = 5;
}
}
}//package houses
Section 241
//Depot (houses.Depot)
package houses {
import flash.events.*;
import flash.display.*;
import production.*;
import ui.*;
import pets.*;
import utils.*;
import vehicles.*;
import market.*;
import com.melesta.sound.*;
public class Depot extends House {
private var startTooltip:Boolean;// = false
private var _importProduction:ExportWindow;
private var _upgradePosition:Array;
private var _pruductionList:Array;
private var _capacityList:Array;
private var _productionDepotSize:Array;
public static var _production:Array;
public static var instance:Depot;
public function Depot(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
var _local6:int;
var _local8:DepotProduct;
_upgradePosition = [0, -8];
_capacityList = [50, 150, 300, 600];
_pruductionList = [];
_productionDepotSize = [0, 2, 4, 6, 1.8, 1.5, 4, 2.5, 6, 5, 2, 0, 0, 0, 0, 0, 20];
super(_arg1, _arg2, new DepotTemplate());
upgradeIndex = 2;
init(null, null, Config.UPGRADE_COST_DEPOT, "Склад", _arg3, _arg4, House.DEPOT);
_production = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
instance = this;
_pruductionList = [];
var _local5:int;
_local6 = 0;
var _local7:Sprite = new Sprite();
_local7.mouseEnabled = false;
addChild(_local7);
_local5 = 0;
while (_local6 <= 7) {
_local5 = 0;
while (_local5 < 5) {
_local8 = new DepotProduct();
_local7.addChild(_local8);
_local8.y = (-35 - (_local5 * 9.4));
_local8.x = (-42 + (_local6 * 9.4));
_pruductionList.push(_local8);
_local5++;
};
_local6++;
};
_local7.mouseEnabled = false;
_local7.mouseChildren = false;
_importProduction = new ExportWindow(this, _arg1);
_upgradeButton.y = -15;
addChild(_upgradeButton);
upgrade();
}
private function putProduct(_arg1:Number):void{
var _local2 = _production;
var _local3 = _arg1;
var _local4 = (_local2[_local3] + 1);
_local2[_local3] = _local4;
_local2 = LevelStatistics.goals;
_local3 = _arg1;
_local4 = (_local2[_local3] + 1);
_local2[_local3] = _local4;
LevelStatistics.updateStatistics();
updateDepotView();
}
override public function nextUpgrade():void{
super.nextUpgrade();
Cat.updateCats();
}
private function freeSpace():Number{
var _local1:Number = 0;
var _local2:Number = 0;
while (_local2 < _production.length) {
_local1 = (_local1 + (_production[_local2] * int(_productionDepotSize[_local2])));
_local2++;
};
return ((_capacityList[_upgrade] - _local1));
}
public function getProduction(_arg1:Array, _arg2:Number):Number{
var _local7:Number;
var _local3:Array = [];
var _local4:int;
while (_local4 < _arg1.length) {
_local7 = _production[ProductTypes.typeToNumber(_arg1[_local4])];
_local3.push(_local7);
_local4++;
};
_local3.sort(Array.NUMERIC);
var _local5:Number = _arg2;
if (_arg2 > _local3[0]){
_local5 = _local3[0];
};
var _local6:int;
while (_local6 < _arg1.length) {
_production[ProductTypes.typeToNumber(_arg1[_local6])] = (_production[ProductTypes.typeToNumber(_arg1[_local6])] - _local5);
_local6++;
};
Cat.updateCats();
updateDepotView();
return (_local5);
}
public function productionSize(_arg1:Number):Number{
var _local2:Number = _productionDepotSize[_arg1];
return (((40 / _capacityList[_upgrade]) * _local2));
}
public function addProduct(_arg1:String):Boolean{
if (canAddProduct(_arg1)){
putProduct(ProductTypes.typeToNumber(_arg1));
return (true);
};
FArrow.instance.show((this.x + 50), (this.y - 100));
return (false);
}
override protected function onClick(_arg1:MouseEvent=null):void{
showMarket();
}
public function showMarket():void{
if (((!((Car.instance == null))) && (Car.instance.visible))){
SoundManager.play("house_click", 1);
_importProduction.show();
};
}
override public function upgrade():void{
super.upgrade();
try {
updateDepotView();
} catch(e:Error) {
};
}
public function canAddProduct(_arg1:String):Boolean{
var _local2:Number = ProductTypes.typeToNumber(_arg1);
return (((freeSpace() - _productionDepotSize[_local2]) >= 0));
}
public function updateDepotView():void{
var _local4:int;
var _local1:int;
while (_local1 < 40) {
_pruductionList[_local1].hide();
_local1++;
};
var _local2:Number = 0;
var _local3:int;
while (_local3 < _production.length) {
_local4 = 0;
while (_local4 < Math.ceil((_production[_local3] * productionSize(_local3)))) {
_pruductionList[_local2].show(_local3);
if (_local2 < 39){
_local2++;
} else {
break;
};
_local4++;
};
_local3++;
};
}
}
}//package houses
Section 242
//DepotTemplate (houses.DepotTemplate)
package houses {
import flash.display.*;
public dynamic class DepotTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
public function DepotTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package houses
Section 243
//DriedEggsHouse (houses.DriedEggsHouse)
package houses {
import flash.display.*;
import utils.*;
public class DriedEggsHouse extends ProductHouse {
public function DriedEggsHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new PowderedHouseTemplate());
upgradeIndex = 5;
init("DRIED_EGGS", ["EGG"], Config.UPGRADE_COST_DRIED_EGGS, Config.currentLanguage.tooltips.dried_eggs, _arg3, _arg4);
autoHideToolTip = Config.currentLanguage.tooltips.powdered;
_progress.x = (-(left) * 50);
_progress.y = -20;
_upgradeButton.x = (left * 40);
_upgradeButton.y = -30;
}
}
}//package houses
Section 244
//FlouryCakeHouse (houses.FlouryCakeHouse)
package houses {
import flash.display.*;
import utils.*;
public class FlouryCakeHouse extends ProductHouse {
public function FlouryCakeHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new FlouryCakeHouseTemplate());
upgradeIndex = 7;
init("FLOURY_CAKE", ["CAKE", "FLOUR"], Config.UPGRADE_COST_FLOURY_CAKE, Config.currentLanguage.tooltips.floury_cake, _arg3, _arg4);
_upgradeButton.x = -20;
_upgradeButton.y = -50;
}
}
}//package houses
Section 245
//House (houses.House)
package houses {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
import flash.media.*;
import ui.*;
import shop.*;
import game.*;
import market.road.*;
import caurina.transitions.properties.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class House extends Sprite {
public var output:String;
protected var _view:MovieClip;
protected var left:Number;// = 1
protected var upgradeCost:Array;
private var madedProduction:Number;// = 0
protected var houseHame:String;
protected var upgradeIndex:int;
private var _stageInstance:DisplayObjectContainer;
public var input:Array;
public var firstShow:Boolean;// = true
protected var _activeArea:InteractiveObject;
protected var _countAnimation:Number;// = 15
private var _gameController:GameController;
protected var _upgrade:Number;// = 1
protected var toolTip:String;
protected var _upgradeButton:UpgradeButton;
protected var _working:Boolean;// = false
public static const SPINNERY:String = "SEWING";
public static const INCUBATOR:String = "INCUBATOR";
public static const FLOURY_CAKE:String = "FLOURY_CAKE";
public static const CARNIVALDRESS:String = "СARNIVAL_DRESS";
public static const WEAVING:String = "FABRIC";
public static const WELL:String = "WELL";
public static const DRIED_EGGS:String = "DRIED_EGGS";
public static const CAR:String = "CAR";
public static const DEPOT:String = "DEPOT";
public static const PLANE:String = "PLANE";
public static const CAKE:String = "CAKE";
public function House(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:MovieClip=null){
upgradeCost = [];
super();
FilterShortcuts.init();
_view = _arg3;
_upgrade = _arg2;
_stageInstance = _arg1;
_upgradeButton = new UpgradeButton();
_upgradeButton.target = this;
addChild(_upgradeButton);
addEventListener(Event.ADDED_TO_STAGE, onAdded);
_gameController = GameController.instance;
_gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
_gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
_gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
_gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true);
_activeArea = _view.activeArea;
_activeArea.addEventListener(MouseEvent.ROLL_OVER, dropShadow, false, 0, true);
_activeArea.addEventListener(MouseEvent.ROLL_OUT, removeShadow, false, 0, true);
_activeArea.addEventListener(MouseEvent.MOUSE_DOWN, onClick, false, 0, true);
}
protected function remove():void{
_stageInstance.removeChild(this);
_activeArea.removeEventListener(MouseEvent.MOUSE_DOWN, onClick);
_activeArea.removeEventListener(MouseEvent.ROLL_OVER, dropShadow);
_activeArea.removeEventListener(MouseEvent.ROLL_OVER, removeShadow);
}
protected function init(_arg1:String, _arg2:Array, _arg3:Array, _arg4:String, _arg5:Array, _arg6:Number, _arg7:String=null):void{
this.output = _arg1;
this.input = _arg2;
this.upgradeCost = _arg3;
this.toolTip = _arg4;
this.houseHame = _arg7;
if (_arg7 == null){
this.houseHame = _arg1;
};
upgrade();
show(new Point(_arg5[0], _arg5[1]), _arg6);
}
public function upgrade():void{
_view.body.gotoAndStop((_upgrade + 1));
if (_upgrade <= (ShopWindow.availableUpgrades[upgradeIndex] - 1)){
_upgradeButton.caption.text = upgradeCost[_upgrade];
};
if (_upgrade > (ShopWindow.availableUpgrades[upgradeIndex] - 1)){
_upgradeButton.destroy();
};
Road.instance.addMoney(0);
}
protected function landing():void{
SoundManager.play("house_landing", 1, new SoundTransform(1, left));
updateMoney();
}
protected function startAnimate():void{
stretchAnimation();
Tweener.addCaller(this, {onUpdate:stretchAnimation, onComplete:animationComplete, count:(_countAnimation - 1), time:((_countAnimation - 1) * 0.4), transition:"linear"});
}
public function nextUpgrade():void{
Road.instance.addMoney(-(Number(upgradeCost[_upgrade])));
_upgrade++;
upgrade();
SoundManager.play("action_upgrade", 1);
}
protected function resume(_arg1:Event=null):void{
Tweener.resumeTweens(this);
Tweener.resumeTweens(_view.body);
}
protected function removeShadow(_arg1:MouseEvent=null):void{
Tooltip.instance.hide();
var _local2:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
var _local3:ColorMatrixFilter = new ColorMatrixFilter(_local2);
Tweener.addTween(_view.body, {_ColorMatrix_matrix:_local2, time:0.5, delay:0.1});
}
protected function onAdded(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, onAdded);
addChildAt(_view, 0);
}
protected function onClick(_arg1:MouseEvent=null):void{
SoundManager.play("house_click", 1);
}
protected function animationComplete():void{
Tweener.removeTweens(_view.body);
Tweener.addTween(_view.body, {scaleX:1, time:0.2, transition:"linear"});
Tweener.addTween(_view.body, {scaleY:1, time:0.2, transition:"linear"});
}
protected function pause(_arg1:Event=null):void{
Tweener.pauseTweens(this);
Tweener.pauseTweens(_view.body);
}
protected function updateMoney(_arg1:Event=null):void{
if (upgradeCost[_upgrade] <= Road.currentMoney){
_upgradeButton.disabled(true);
} else {
_upgradeButton.disabled(false);
};
}
protected function destroy(_arg1:Event=null):void{
Tweener.removeTweens(_view.body);
_gameController.removeEventListener(GameController.PAUSE_GAME, pause);
_gameController.removeEventListener(GameController.RESUME_GAME, resume);
_gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
_gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney);
_stageInstance.removeChild(this);
}
protected function show(_arg1:Point, _arg2:Number):void{
_stageInstance.addChild(this);
this.x = _arg1.x;
this.y = -50;
left = ((this.x)<300) ? -1 : 1;
Tweener.addTween(this, {y:(_arg1.y + 15), time:0.4, delay:_arg2, transition:"easeInQuint", onComplete:landing});
}
protected function dropShadow(_arg1:MouseEvent=null):void{
Tooltip.instance.show(x, y, houseHame, _upgrade, toolTip);
var _local2:Array = [2, 0, 0, 0, -63.5, 0, 2, 0, 0, -63.5, 0, 0, 2, 0, -63.5, 0, 0, 0, 1, 0];
var _local3:ColorMatrixFilter = new ColorMatrixFilter(_local2);
Tweener.addTween(_view.body, {_ColorMatrix_matrix:_local2, time:0.5, delay:0.1});
}
protected function stretchAnimation():void{
Tweener.removeTweens(_view.body);
Tweener.addTween(_view.body, {scaleX:0.8, time:0.2, delay:0, transition:"linear"});
Tweener.addTween(_view.body, {scaleY:1.1, time:0.2, delay:0, transition:"linear"});
Tweener.addTween(_view.body, {scaleY:1, time:0.2, delay:0.2, transition:"linear"});
Tweener.addTween(_view.body, {scaleX:1, time:0.2, delay:0.2, transition:"linear"});
Tweener.addTween(_view.body, {scaleY:0.8, time:0.2, delay:0.2, transition:"linear"});
Tweener.addTween(_view.body, {scaleX:1.1, time:0.2, delay:0.2, transition:"linear"});
}
}
}//package houses
Section 246
//HouseContainer (houses.HouseContainer)
package houses {
import flash.display.*;
import flash.geom.*;
import utils.*;
import vehicles.*;
public class HouseContainer {
private var _stageInstance:DisplayObjectContainer;
public static var instance:HouseContainer;
public function HouseContainer(_arg1:DisplayObjectContainer=null):void{
instance = this;
_stageInstance = _arg1;
}
public function addHouse(_arg1:String, _arg2:Number, _arg3:Number=0, _arg4:Number=0):void{
var _local5:Array;
var _local6:Class;
trace("addHouse", _arg1);
if (((((((((!(_arg3)) && (!((_arg1 == House.DEPOT))))) && (!((_arg1 == House.CAR))))) && (!((_arg1 == House.WELL))))) && (!((_arg1 == House.PLANE))))){
new HousePlate(_stageInstance, _arg1, _arg2, _arg4);
} else {
_local5 = Config.HOUSE_POSITIONS[_arg2].split(",");
switch (_arg1){
case House.CAKE:
_local6 = CakeHouse;
break;
case House.INCUBATOR:
_local6 = Incubator;
break;
case House.DRIED_EGGS:
_local6 = DriedEggsHouse;
break;
case House.FLOURY_CAKE:
_local6 = FlouryCakeHouse;
break;
case House.DEPOT:
_local6 = Depot;
break;
case House.WELL:
_local6 = Well;
break;
case House.CAR:
_local6 = Car;
break;
case House.PLANE:
_local6 = Plane;
break;
case House.SPINNERY:
_local6 = SpinneryHouse;
break;
case House.WEAVING:
_local6 = WeavingHouse;
break;
case House.CARNIVALDRESS:
_local6 = CarnivalDress;
break;
};
new _local6(_stageInstance, _arg3, _local5, _arg4);
};
}
}
}//package houses
Section 247
//HousePlate (houses.HousePlate)
package houses {
import flash.events.*;
import flash.display.*;
import flash.filters.*;
import flash.media.*;
import ui.*;
import game.*;
import market.road.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class HousePlate extends HousePlateTemplate {
private var posX:Number;
private var posY:Number;
private var active:Boolean;// = false
private var left:Number;// = 1
private var _type:String;
private var _upgrade:Number;// = 0
private var positionIndex:Number;// = 0
private var gameController:GameController;
private var _stageInstance:DisplayObjectContainer;
public static var firstShow:Boolean = true;
public static var cost:Array = new Array(150, 200, 300, 270);
public function HousePlate(_arg1:DisplayObjectContainer, _arg2:String, _arg3:Number, _arg4:Number){
_arg1.addChild(this);
gameController = GameController.instance;
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
gameController.addEventListener(GameController.CHANGE_MONEY, updateMoney, false, 0, true);
_stageInstance = _arg1;
positionIndex = _arg3;
_type = _arg2;
icon.gotoAndStop(((_arg2)!="INCUBATOR") ? _arg2 : "PENGUIN");
show(_arg4);
buyButton.price.text = cost[getHouseIndex(_type)];
buyButton.addEventListener(MouseEvent.ROLL_OVER, over, false, 0, true);
buyButton.addEventListener(MouseEvent.ROLL_OUT, out, false, 0, true);
buyButton.addEventListener(MouseEvent.CLICK, click, false, 0, true);
buyButton.addEventListener(MouseEvent.MOUSE_DOWN, press, false, 0, true);
buyButton.gotoAndStop("disable");
}
public function destroy(_arg1:Event=null):void{
buyButton.removeEventListener(MouseEvent.ROLL_OVER, over, false);
buyButton.removeEventListener(MouseEvent.ROLL_OUT, out, false);
buyButton.removeEventListener(MouseEvent.CLICK, click, false);
buyButton.removeEventListener(MouseEvent.MOUSE_DOWN, press);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.removeEventListener(GameController.CHANGE_MONEY, updateMoney);
_stageInstance.removeChild(this);
}
private function press(_arg1:MouseEvent):void{
if (active){
this.buyButton.gotoAndStop("press");
};
}
private function remove():void{
_stageInstance.removeChild(this);
buyButton.removeEventListener(MouseEvent.ROLL_OVER, over, false);
buyButton.removeEventListener(MouseEvent.ROLL_OUT, out, false);
buyButton.removeEventListener(MouseEvent.CLICK, click, false);
buyButton.removeEventListener(MouseEvent.MOUSE_DOWN, press);
}
private function click(_arg1:MouseEvent):void{
if (active){
SoundManager.play("action_upgrade", 1);
buyButton.removeEventListener(MouseEvent.CLICK, click, false);
HouseContainer.instance.addHouse(_type, positionIndex, 1, 0);
Road.instance.addMoney(-(Number(cost[getHouseIndex(_type)])));
Tweener.addTween(this, {y:-50, time:0.4, onComplete:destroy, delay:0.2});
};
}
private function over(_arg1:MouseEvent):void{
trace("over house plate");
if (active){
this.buyButton.gotoAndStop("over");
};
}
private function out(_arg1:MouseEvent):void{
if (active){
this.buyButton.gotoAndStop("active");
};
}
private function landing():void{
left = ((this.x)<300) ? -1 : 1;
SoundManager.play("house_board_landing", 1, new SoundTransform(1, left));
updateMoney();
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.house_plate);
};
}
public function updateMoney(_arg1:Event=null):void{
if (Road.currentMoney >= Number(cost[getHouseIndex(_type)])){
this.active = true;
this.buyButton.gotoAndStop("active");
} else {
buyButton.gotoAndStop("disable");
this.active = false;
};
}
public function show(_arg1:Number):void{
var _local2:Array = Config.HOUSE_POSITIONS[positionIndex].split(",");
this.x = _local2[0];
this.y = -50;
Tweener.addTween(this, {y:_local2[1], time:0.4, delay:_arg1, transition:"easeInQuint", onComplete:landing});
updateMoney();
}
public static function getHouseIndex(_arg1:String):Number{
switch (_arg1){
case House.DRIED_EGGS:
return (0);
case House.CAKE:
return (1);
case House.FLOURY_CAKE:
return (2);
case House.INCUBATOR:
return (3);
};
return (0);
}
}
}//package houses
Section 248
//HousePlateTemplate (houses.HousePlateTemplate)
package houses {
import flash.display.*;
public dynamic class HousePlateTemplate extends MovieClip {
public var buyButton:MovieClip;
public var icon:MovieClip;
}
}//package houses
Section 249
//Incubator (houses.Incubator)
package houses {
import flash.display.*;
import pets.*;
import utils.*;
public class Incubator extends ProductHouse {
public function Incubator(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new IncubatorTemplate());
upgradeIndex = 8;
init("PENGUIN", ["EGG"], Config.UPGRADE_COST_INCUBATOR, Config.currentLanguage.tooltips.incubator, _arg3, _arg4, "INCUBATOR");
_progress.x = (-(left) * 50);
_progress.y = -20;
_upgradeButton.x = (left * 40);
_upgradeButton.y = -30;
}
override protected function makeProduct(_arg1:Number, _arg2:Number):void{
PetsContainer.instance.makePet(output, _arg1, _arg2);
}
}
}//package houses
Section 250
//ProductHouse (houses.ProductHouse)
package houses {
import flash.events.*;
import flash.display.*;
import production.*;
import ui.*;
import shop.*;
import market.road.*;
import pets.*;
import utils.*;
import com.melesta.sound.*;
public class ProductHouse extends House {
protected var madedProduction:Number;// = 0
protected var _progress:WorkLine;
protected var autoHideToolTip:Boolean;// = false
protected var _count:int;// = 0
public function ProductHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:MovieClip){
_progress = new WorkLine();
addChild(_progress);
_progress.visible = false;
super(_arg1, _arg2, _arg3);
_view.body.mouseChildren = (_view.body.mouseEnabled = false);
}
override public function nextUpgrade():void{
Road.instance.addMoney(-(Number(upgradeCost[(_upgrade - 1)])));
_upgrade++;
upgrade();
SoundManager.play("action_upgrade", 1);
}
override protected function stretchAnimation():void{
super.stretchAnimation();
_count--;
_progress.setProgress(((37 * (15 - _count)) / 15));
}
protected function makeProduction():void{
var _local1:Number;
_working = false;
while (madedProduction > 0) {
_local1 = 0;
if (y > 400){
_local1 = ((this.y - 40) - (Math.random() * 20));
} else {
_local1 = ((this.y - 20) - (Math.random() * 20));
};
makeProduct(((this.x - (left * 80)) - ((left * Math.random()) * 20)), _local1);
madedProduction--;
_progress.setProgress(0);
};
}
override protected function onClick(_arg1:MouseEvent=null):void{
var _local3:int;
if (_working){
return;
};
madedProduction = Depot.instance.getProduction(input, _upgrade);
if (!madedProduction){
return;
};
var _local2:int;
while (_local2 < madedProduction) {
_local3 = 0;
while (_local3 < input.length) {
new MovingProduction(input[_local3], this.x, (this.y - 15), (_local2 / 7));
_local3++;
};
_local2++;
};
_working = true;
super.onClick(_arg1);
startAnimate();
}
override protected function landing():void{
super.landing();
if (((!(Config.showedTips[output])) && (!(Config.skiped)))){
Config.showedTips[output] = true;
BlockTooltip.instance.show(this.x, this.y, toolTip, autoHideToolTip);
};
}
protected function makeProduct(_arg1:Number, _arg2:Number):void{
PetsContainer.instance.addProduct(output, _arg1, _arg2);
}
override public function upgrade():void{
trace(this, _upgrade);
_view.body.gotoAndStop(_upgrade);
if (_upgrade <= (ShopWindow.availableUpgrades[upgradeIndex] - 1)){
_upgradeButton.caption.text = upgradeCost[(_upgrade - 1)];
};
if (_upgrade > (ShopWindow.availableUpgrades[upgradeIndex] - 1)){
_upgradeButton.destroy();
};
Road.instance.addMoney(0);
}
override protected function animationComplete():void{
super.animationComplete();
_progress.visible = false;
makeProduction();
}
override protected function updateMoney(_arg1:Event=null):void{
if (upgradeCost[(_upgrade - 1)] <= Road.currentMoney){
_upgradeButton.disabled(true);
} else {
_upgradeButton.disabled(false);
};
}
override protected function startAnimate():void{
super.startAnimate();
_progress.visible = true;
_progress.setProgress(0);
_count = _countAnimation;
Road.instance.addMoney(0);
}
}
}//package houses
Section 251
//SpinneryHouse (houses.SpinneryHouse)
package houses {
import flash.display.*;
import utils.*;
public class SpinneryHouse extends ProductHouse {
public function SpinneryHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new SpinneryHouseTemplate());
upgradeIndex = 9;
init("SEWING", ["WOOL"], Config.UPGRADE_COST_FLOURY_CAKE, Config.currentLanguage.tooltips.sewing, _arg3, _arg4);
_upgradeButton.x = -20;
_upgradeButton.y = 5;
}
}
}//package houses
Section 252
//UpgradeButton (houses.UpgradeButton)
package houses {
import flash.events.*;
import utils.*;
public class UpgradeButton extends UpgradeButtonTemplate {
private var active:Boolean;// = true
private var _target:House;
public function UpgradeButton(){
Fonts.applyDefaultFormat(caption);
addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, click, false, 0, true);
addEventListener(MouseEvent.CLICK, upgrade, false, 0, true);
this.gotoAndStop("active");
}
public function set target(_arg1:House):void{
_target = _arg1;
}
public function disabled(_arg1:Boolean):void{
if (_arg1){
this.active = true;
this.gotoAndStop("active");
} else {
this.active = false;
this.gotoAndStop("disable");
};
}
public function click(_arg1:MouseEvent):void{
if (!active){
return;
};
this.gotoAndStop("press");
}
public function out(_arg1:MouseEvent):void{
if (!active){
return;
};
this.gotoAndStop("active");
}
public function get target():House{
return (_target);
}
public function over(_arg1:MouseEvent):void{
if (active){
this.gotoAndStop("over");
};
}
public function destroy():void{
removeEventListener(MouseEvent.MOUSE_OVER, over, false);
removeEventListener(MouseEvent.MOUSE_OUT, out, false);
removeEventListener(MouseEvent.MOUSE_DOWN, click, false);
removeEventListener(MouseEvent.CLICK, upgrade, false);
if (((!((_target == null))) && (_target.contains(this)))){
_target.removeChild(this);
};
}
private function upgrade(_arg1:MouseEvent=null):void{
if (!active){
return;
};
target.nextUpgrade();
}
}
}//package houses
Section 253
//UpgradeButtonTemplate (houses.UpgradeButtonTemplate)
package houses {
import flash.display.*;
import flash.text.*;
public dynamic class UpgradeButtonTemplate extends MovieClip {
public var caption:TextField;
public function UpgradeButtonTemplate(){
addFrameScript(0, frame1, 6, frame7);
}
function frame7(){
stop();
}
function frame1(){
stop();
}
}
}//package houses
Section 254
//WeavingHouse (houses.WeavingHouse)
package houses {
import flash.display.*;
import utils.*;
public class WeavingHouse extends ProductHouse {
public function WeavingHouse(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new WeavingHouseTemplate());
upgradeIndex = 10;
init("FABRIC", ["SEWING"], Config.UPGRADE_COST_FLOURY_CAKE, Config.currentLanguage.tooltips.fabric, _arg3, _arg4);
_upgradeButton.x = -20;
_upgradeButton.y = 5;
}
}
}//package houses
Section 255
//Well (houses.Well)
package houses {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import ui.*;
import market.road.*;
import utils.*;
import com.melesta.sound.*;
public class Well extends House {
private var _upgradePosition:Array;
private var _watering:SoundChannel;
private var _waterLevel:int;// = 10
private var _countSteps:Number;// = 0
private var _deltaWater:Array;
public static var state:String = "full";
public static var waterPrice:Array = [19, 17, 10, 7];
public static var instance:Well;
public function Well(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
_upgradePosition = [];
_deltaWater = [20, 15, 10, 1];
super(_arg1, _arg2, new WellTemplate());
Fonts.applyDefaultFormat(_view.money.caption);
instance = this;
upgradeIndex = 1;
_upgradeButton.x = -50;
_upgradeButton.y = -30;
state = "full";
_countAnimation = 10;
_watering = new SoundChannel();
SoundManager.registerSoundAsset("house_landing", house_landing);
init(House.WELL, null, Config.UPGRADE_COST_WELL, House.WELL, _arg3, _arg4);
}
public function getWater():Boolean{
if (Well.state == "full"){
_view.money.visible = false;
_countSteps++;
if (Math.ceil((100 / _deltaWater[_upgrade])) > _countSteps){
_view.waterline.progressMask.height = ((40 * (100 - (_deltaWater[_upgrade] * _countSteps))) / 100);
return (true);
};
if (Math.ceil((100 / _deltaWater[_upgrade])) == _countSteps){
FArrow.instance.show((this.x + 10), (this.y - 60));
_view.waterline.progressMask.height = 0;
Well.state = "empty";
_view.money.visible = true;
if (firstShow){
firstShow = false;
Tooltip.instance.show(this.x, this.y, "WELL_EMPTY", 0, Config.currentLanguage.tooltips.well_empty);
};
_countSteps = 0;
return (true);
};
};
FArrow.instance.show((this.x + 10), (this.y - 60));
SoundManager.play("fool_action", 1);
return (false);
}
override public function upgrade():void{
super.upgrade();
_view.money.caption.text = String(Config.WATER_PRICE[_upgrade]);
}
private function hideTooltip(_arg1:MouseEvent=null):void{
Tooltip.instance.hide();
}
override protected function onClick(_arg1:MouseEvent=null):void{
if ((((Road.levelMoney > Config.WATER_PRICE[_upgrade])) && ((Well.state == "empty")))){
Road.instance.addMoney(-(Config.WATER_PRICE[_upgrade]));
Well.state = "working";
_watering = SoundManager.play("action_well", 1);
_waterLevel = 0;
startAnimate();
};
if ((((Road.levelMoney < Config.WATER_PRICE[_upgrade])) && ((Well.state == "empty")))){
FArrow.instance.show((this.x + 150), (this.y - 100));
SoundManager.play("fool_action", 1);
};
}
override protected function resume(_arg1:Event=null):void{
super.resume();
if (Well.state == "working"){
_watering = SoundManager.play("action_well", 1);
};
}
public function setWater():void{
_view.waterline.progressMask.height = (50 - ((45 * (10 - _waterLevel)) / 10));
}
override protected function pause(_arg1:Event=null):void{
super.pause(_arg1);
_watering.stop();
}
override protected function destroy(_arg1:Event=null):void{
super.destroy(_arg1);
_watering.stop();
}
override protected function animationComplete():void{
super.animationComplete();
Well.state = "full";
_watering.stop();
}
override protected function stretchAnimation():void{
super.stretchAnimation();
_waterLevel++;
setWater();
}
}
}//package houses
Section 256
//WellTemplate (houses.WellTemplate)
package houses {
import flash.display.*;
public dynamic class WellTemplate extends MovieClip {
public var money:MovieClip;
public var body:MovieClip;
public var activeArea:MovieClip;
public var waterline:MovieClip;
public function WellTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
}
}
}//package houses
Section 257
//__preloader_5 (leaderBoard_fla.__preloader_5)
package leaderBoard_fla {
import flash.events.*;
import flash.display.*;
public dynamic class __preloader_5 extends MovieClip {
public var rotor:MovieClip;
public function __preloader_5(){
addFrameScript(0, frame1);
}
public function rotate(_arg1:Event=null):void{
rotor.rotation = (rotor.rotation + 10);
}
function frame1(){
rotor.addEventListener(Event.ENTER_FRAME, rotate, false, 0, true);
rotor.cacheAsBitmap = true;
}
}
}//package leaderBoard_fla
Section 258
//MapNode (map.MapNode)
package map {
import flash.events.*;
import flash.display.*;
import ui.*;
import shop.*;
import utils.*;
import com.melesta.sound.*;
public class MapNode extends MapNodeTemplate {
public var level:Number;
public var states:Array;
public var _state:String;// = "inaccessible"
private var _currentView:MovieClip;
public static var nodeList:Array = new Array();
public static var inaccessibleShow:Boolean = true;
public static var firstShow:Boolean = true;
public function MapNode(_arg1:Number, _arg2:Number){
states = new Array("inaccessible", "none", "novel", "normal", "silver", "gold");
super();
if (Config.NODE_POSITIONS[_arg1] != null){
this.x = Config.NODE_POSITIONS[_arg1].split(",")[0];
this.y = Config.NODE_POSITIONS[_arg1].split(",")[1];
};
this.level = (_arg1 + 1);
this.state = states[_arg2];
MapNode.nodeList.push(this);
update();
addEventListener(MouseEvent.MOUSE_DOWN, press, false, 0, true);
addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
addEventListener(MouseEvent.CLICK, gotoLevel, false, 0, true);
}
public function gotoLevel(_arg1:MouseEvent=null):void{
if (state != "none"){
MapWindow.instance.hide(level);
} else {
ShopWindow.instance.show();
};
}
public function set state(_arg1:String):void{
_state = _arg1;
}
public function press(_arg1:MouseEvent=null):void{
_currentView.gotoAndStop(3);
MapTooltip.instance.hide();
}
public function out(_arg1:MouseEvent=null):void{
_currentView.gotoAndStop(1);
MapTooltip.instance.hide();
}
public function update():void{
var _local1:int = this.numChildren;
while (_local1--) {
this.getChildAt(_local1).visible = false;
};
if (state != "inaccessible"){
this.getChildByName(state).visible = true;
_currentView = (this.getChildByName(state) as MovieClip);
};
if ((((((((state == "novel")) && (firstShow))) && (inaccessibleShow))) && ((this.level == 1)))){
firstShow = false;
if (!Config.skiped){
MapTooltip.instance.showHelp(this.x, (this.y - 10), Config.currentLanguage.tooltips.level_icon);
};
} else {
if ((((((state == "none")) && (inaccessibleShow))) && (!(firstShow)))){
inaccessibleShow = false;
MapTooltip.instance.showHelp(this.x, (this.y - 10), Config.currentLanguage.tooltips.level_inaccessible);
};
};
}
public function get state():String{
return (_state);
}
public function over(_arg1:MouseEvent=null):void{
_currentView.gotoAndStop(2);
MapTooltip.instance.show(this.x, (this.y - 15), level);
SoundManager.play("ui_button_hover");
}
public static function updateViews():void{
var _local1:int;
while (_local1 < MapNode.nodeList.length) {
MapNode.nodeList[_local1].update();
_local1++;
};
}
}
}//package map
Section 259
//MapWindow (map.MapWindow)
package map {
import flash.events.*;
import flash.display.*;
import ui.*;
import shop.*;
import flash.net.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class MapWindow extends MapTemplate {
private var menuBtn:MovieClip;
private var shopBtn:MovieClip;
public static var needIndex:Number = -1;
public static var instance:MapWindow;
public function MapWindow(){
instance = this;
shopBtn = bottomPanel.shopBtn;
menuBtn = bottomPanel.menuBtn;
shopBtn.stop();
menuBtn.stop();
Fonts.applyDefaultFormat(shopBtn.caption);
Fonts.applyDefaultFormat(menuBtn.caption);
shopBtn.caption.text = Config.currentLanguage.shop;
menuBtn.caption.text = Config.currentLanguage.menu;
menuBtn.caption.mouseEnabled = (shopBtn.caption.mouseEnabled = false);
shopBtn.addEventListener(MouseEvent.CLICK, showShop, false, 0, true);
menuBtn.addEventListener(MouseEvent.CLICK, showMenu, false, 0, true);
menuBtn.addEventListener(MouseEvent.MOUSE_OUT, btnHandler, false, 0, true);
menuBtn.addEventListener(MouseEvent.MOUSE_OVER, btnHandler, false, 0, true);
menuBtn.addEventListener(MouseEvent.MOUSE_DOWN, btnHandler, false, 0, true);
shopBtn.addEventListener(MouseEvent.MOUSE_OUT, btnHandler, false, 0, true);
shopBtn.addEventListener(MouseEvent.MOUSE_OVER, btnHandler, false, 0, true);
shopBtn.addEventListener(MouseEvent.MOUSE_DOWN, btnHandler, false, 0, true);
var _local1:int;
while (_local1 < Config.LevelRecords.Level.length()) {
addChild(new MapNode(_local1, 0));
_local1++;
};
this.visible = false;
buyBtn.caption.mouseEnabled = false;
buyBtn.stop();
buyBtn.caption.htmlText = Config.currentLanguage.download_full_version;
Fonts.applyDefaultFormat(buyBtn.caption);
buyBtn.addEventListener(MouseEvent.MOUSE_OVER, btnHandler, false, 0, true);
buyBtn.visible = false;
_shadow.visible = false;
if (Config.downloadable){
_shadow.visible = true;
buyBtn.addEventListener(MouseEvent.CLICK, buy, false, 0, true);
buyBtn.caption.htmlText = Config.currentLanguage.download_full_version;
Fonts.applyDefaultFormat(buyBtn.caption);
buyBtn.visible = true;
};
if (Farm2.portal == "kongregeat"){
buyBtn.visible = false;
_shadow.visible = false;
};
}
public function hide(_arg1:Number=1):void{
var level = _arg1;
MapTooltip.instance.hide();
Tweener.addTween(this, {alpha:0, time:0.5, transition:"linear", onComplete:function ():void{
this.visible = false;
LevelBuilder.instance.createLevel(level);
}});
}
public function updateViews():void{
var _local1:XML;
var _local2:Number;
var _local3:Array;
var _local4:String;
var _local5:String;
var _local6:int;
if (LevelBuilder.maxLevel < Config.nodes.length){
MapNode.nodeList[(LevelBuilder.maxLevel - 1)].state = "novel";
_local1 = Config.getLevel(LevelBuilder.maxLevel);
if (_local1 == null){
return;
};
_local2 = _local1.child("Accessibility").child("c").length();
_local3 = new Array();
_local6 = 0;
while (_local6 < _local2) {
_local4 = _local1.child("Accessibility").c[_local6].@CritID;
_local5 = _local1.child("Accessibility").c[_local6].@Value;
_local3.push(((_local4 + ",") + _local5));
_local6++;
};
needIndex = -1;
if (!ShopWindow.isAvailable(_local3)){
MapNode.nodeList[(LevelBuilder.maxLevel - 1)].state = "none";
needIndex = (Number(_local3[0].split(",")[0]) + 5);
};
MapNode.updateViews();
} else {
if (!EndScreen.instance.showed){
EndScreen.instance.show();
};
};
}
public function skipEducation():void{
Config.skiped = true;
LevelBuilder.maxLevel = 12;
MapNode.nodeList[11].state = "novel";
var _local1:int;
while (_local1 < 11) {
MapNode.nodeList[_local1].state = "normal";
Config.nodes[_local1] = "normal";
_local1++;
};
ShopWindow.availableUpgrades = new Array(0, 0, 0, 0, 0, 50, 5, 5, 5);
Config.upgrades = new Array(0, 0, 0, 0, 0, 5, 5, 5, 5);
ShopWindow.instance.updateUpgradesViews();
MapNode.updateViews();
hide(12);
}
private function showShop(_arg1:MouseEvent=null):void{
MapTooltip.instance.hide();
ShopWindow.instance.show();
}
private function buy(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest(Config.downloadLink);
navigateToURL(_local2, "_blank");
}
private function btnHandler(_arg1:MouseEvent=null):void{
switch (_arg1.type){
case MouseEvent.MOUSE_OUT:
_arg1.currentTarget.gotoAndStop(1);
break;
case MouseEvent.MOUSE_OVER:
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
_arg1.currentTarget.gotoAndStop(2);
break;
case MouseEvent.MOUSE_DOWN:
_arg1.currentTarget.gotoAndStop(3);
break;
};
}
public function startGame():void{
this.visible = true;
this.alpha = 1;
MapNode.nodeList[0].state = "novel";
MapNode.updateViews();
var _local1:SkipEducationDialog = new SkipEducationDialog();
addChild(_local1);
_local1.show();
StartScreen.instance.musicBtn.container = "map";
addChild(StartScreen.instance.musicBtn);
addChild(StartScreen.instance.soundBtn);
}
public function startFirstLevel():void{
hide(1);
}
private function showMenu(_arg1:MouseEvent=null):void{
MapTooltip.instance.hide();
StartScreen.instance.show();
}
public function show():void{
bottomPanel.y = 480;
Tweener.addTween(bottomPanel, {y:430, time:0.4});
StartScreen.instance.musicBtn.container = "map";
addChild(StartScreen.instance.musicBtn);
addChild(StartScreen.instance.soundBtn);
updateViews();
MapNode.updateViews();
this.visible = true;
this.alpha = 1;
if (!Config.played){
Config.played = true;
shopBtn.gotoAndStop(4);
shopBtn.mouseEnabled = false;
} else {
shopBtn.mouseEnabled = true;
shopBtn.gotoAndStop(1);
};
}
public function resumeGame():void{
this.visible = true;
this.alpha = 1;
Config.skiped = true;
LevelBuilder.maxLevel = Config.level;
var _local1:int;
while (_local1 < (Config.level - 1)) {
MapNode.nodeList[_local1].state = Config.nodes[_local1];
MapNode.nodeList[_local1].update();
_local1++;
};
ShopWindow.availableUpgrades = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var _local2:int;
while (_local2 < 10) {
ShopWindow.availableUpgrades[_local2] = Config.upgrades[_local2];
_local2++;
};
ShopWindow.instance.updateUpgradesViews();
MapNode.updateViews();
updateViews();
}
}
}//package map
Section 260
//Road (market.road.Road)
package market.road {
import flash.events.*;
import game.*;
import pets.*;
import utils.*;
import vehicles.*;
import market.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Road extends RoadTemlate {
private var upgradeForces:Array;
private var _planeUpgrade:Number;// = 0
private var _carUpgrade:Number;// = 0
private var gameController:GameController;
public static var CAR_CAME:String = "car_came";
public static var currentMoney:Number = 0;
public static var UPDATE_MONEY:String = "update_money";
public static var instance:Road = null;
public static var PLANE_CAME:String = "plane_came";
public static var levelMoney:Number = 0;
public function Road(){
upgradeForces = new Array(20, 15, 10, 5);
super();
Fonts.applyDefaultFormat(money);
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, levelCompleted, false, 0, true);
instance = this;
car.visible = false;
plane.visible = false;
setMoney(0);
if (Farm2.portal == "mail.ru"){
this.coins.gotoAndStop(4);
};
}
public function setMoney(_arg1:Number=0):void{
levelMoney = _arg1;
currentMoney = _arg1;
money.text = String(levelMoney);
dispatchEvent(new Event(Road.UPDATE_MONEY));
GameController.instance.changeMoney();
}
public function levelCompleted(_arg1:Event=null):void{
setMoney(0);
plane.x = 100;
car.visible = (plane.visible = false);
car.x = 100;
Tweener.removeTweens(this.car);
Tweener.removeTweens(this.plane);
}
public function goCar(_arg1:Number, _arg2:Number):void{
Car.instance.visible = false;
_carUpgrade = _arg2;
car.body.gotoAndStop((_arg2 + 1));
car.body.scaleX = -1;
car.money.text = String(_arg1);
car.visible = true;
car.x = 100;
Tweener.addTween(car, {x:205, time:(upgradeForces[_carUpgrade] / 2), transition:"linear", onComplete:backCar});
}
public function resume(_arg1:Event):void{
Tweener.resumeTweens(plane);
Tweener.resumeTweens(car);
coins.play();
if (Farm2.portal == "mail.ru"){
this.coins.gotoAndStop(4);
};
}
private function backCar():void{
car.body.scaleX = 1;
Tweener.addTween(car, {x:100, time:(upgradeForces[_carUpgrade] / 2), transition:"linear", onComplete:function ():void{
car.visible = false;
dispatchEvent(new Event(Road.CAR_CAME));
addMoney(Number(car.money.text));
Car.instance.visible = true;
Car.instance.checkMoney();
}});
}
public function pause(_arg1:Event):void{
Tweener.pauseTweens(plane);
Tweener.pauseTweens(car);
coins.stop();
}
private function backPlane():void{
plane.body.scaleX = 1;
Tweener.addTween(plane, {x:100, time:(upgradeForces[_planeUpgrade] / 2), transition:"linear", onComplete:function ():void{
var _local2:*;
plane.visible = false;
dispatchEvent(new Event(Road.PLANE_CAME));
Plane.instance.visible = true;
SoundManager.play("airplane_flyin");
var _local1:* = 0;
while (_local1 < ImportWindow.importProductionList.length) {
_local2 = ImportWindow.importProductionList[_local1].split(",");
PetsContainer.instance.addFlyProduct(_local2[0], _local2[1]);
_local1++;
};
}});
}
public function goPlane(_arg1:Number, _arg2:Number):void{
_planeUpgrade = _arg2;
dispatchEvent(new Event(Road.UPDATE_MONEY));
plane.body.gotoAndStop((_arg2 + 1));
Plane.instance.visible = false;
plane.body.scaleX = -1;
plane.money.text = String(_arg1);
plane.visible = true;
plane.x = 100;
addMoney(-(Number(plane.money.text)));
Tweener.addTween(plane, {x:205, time:(upgradeForces[_planeUpgrade] / 2), transition:"linear", onComplete:backPlane});
}
public function addMoney(_arg1:Number=0):void{
levelMoney = (levelMoney + _arg1);
money.text = String(levelMoney);
currentMoney = (currentMoney + _arg1);
dispatchEvent(new Event(Road.UPDATE_MONEY));
GameController.instance.changeMoney();
}
}
}//package market.road
Section 261
//RoadTemlate (market.road.RoadTemlate)
package market.road {
import flash.display.*;
import flash.text.*;
public dynamic class RoadTemlate extends MovieClip {
public var coins:MovieClip;
public var car:MovieClip;
public var money:TextField;
public var plane:MovieClip;
}
}//package market.road
Section 262
//Box (market.Box)
package market {
import utils.*;
public class Box extends BoxTemplate {
public var type:Number;
public var count:Number;// = 0
private static var sizeList:Array = [0, 10, 10, 5, 5, 5, 8, 10, 6, 10, 4, 5, 1, 5, 2, 0, 1, 5, 2, 1];
public function Box(){
body.stop();
this.visible = false;
this.type = -1;
this.count = 0;
}
public function addProduct(_arg1:String, _arg2:Number):Number{
var _local3:Number;
if (!count){
this.visible = true;
this.body.gotoAndStop(_arg1);
type = ProductTypes.typeToNumber(_arg1);
};
if ((((count > 0)) && (!((type == ProductTypes.typeToNumber(_arg1)))))){
return (0);
};
if (count == sizeList[type]){
return (-1);
};
if ((_arg2 + count) <= sizeList[type]){
count = (count + _arg2);
this.progress._mask.width = ((20 * count) / sizeList[type]);
return (_arg2);
};
if ((_arg2 + count) > sizeList[type]){
_local3 = (sizeList[type] - count);
count = (count + _local3);
this.progress._mask.width = ((24 * count) / sizeList[type]);
return (_local3);
};
return (_arg2);
}
}
}//package market
Section 263
//BoxTemplate (market.BoxTemplate)
package market {
import flash.display.*;
public dynamic class BoxTemplate extends MovieClip {
public var body:MovieClip;
public var progress:MovieClip;
}
}//package market
Section 264
//ExportItem (market.ExportItem)
package market {
import flash.events.*;
import flash.display.*;
import ui.*;
import utils.*;
import com.melesta.sound.*;
public class ExportItem extends ExportItemTemplate {
public var type:String;
public static var CHOOSE_ALL:String = "choose_all";
public static var CHOOSE_ONE:String = "choose_one";
public function ExportItem(_arg1:String, _arg2:Number, _arg3:int=0){
Fonts.applyDefaultFormat(count);
Fonts.applyDefaultFormat(cost);
Fonts.applyDefaultFormat(one.caption);
Fonts.applyDefaultFormat(all.caption);
this.product.gotoAndStop(_arg1);
this.count.text = String(_arg2);
this.cost.text = String(_arg3);
type = _arg1;
one.caption.text = Config.currentLanguage.one;
all.caption.text = Config.currentLanguage.all;
one.gotoAndStop(1);
all.gotoAndStop(1);
one.addEventListener(MouseEvent.CLICK, chooseOne, false, 0, true);
all.addEventListener(MouseEvent.CLICK, chooseAll, false, 0, true);
}
private function chooseAll(_arg1:MouseEvent=null):void{
SoundManager.play("item_add", 1);
dispatchEvent(new Event(ExportItem.CHOOSE_ALL));
}
private function chooseOne(_arg1:MouseEvent=null):void{
dispatchEvent(new Event(ExportItem.CHOOSE_ONE));
SoundManager.play("item_add", 1);
}
}
}//package market
Section 265
//ExportItemTemplate (market.ExportItemTemplate)
package market {
import flash.display.*;
import flash.text.*;
public dynamic class ExportItemTemplate extends MovieClip {
public var all:MovieClip;
public var one:MovieClip;
public var count:TextField;
public var cost:TextField;
public var product:MovieClip;
}
}//package market
Section 266
//ExportWindow (market.ExportWindow)
package market {
import flash.events.*;
import flash.display.*;
import houses.*;
import ui.*;
import game.*;
import market.road.*;
import pets.*;
import utils.*;
import vehicles.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class ExportWindow extends ExportWindowTemplate {
private var _money:Number;// = 0
private var _boxList:Array;
private var _productionPrice:Array;
private var _boxContainer:Sprite;
private var itemContainer:Sprite;
private var _marketProductionList:Array;
private var _depot:Depot;
private var _boxPositions:Array;
public static var firstShow:Boolean = true;
public function ExportWindow(_arg1:Depot, _arg2:DisplayObjectContainer){
_productionPrice = [0, 10, 50, 100, 10, 200, 100, 150, 300, 200, 1300, 1000, 1500, 2000, 15, 2500, 60, 50, 500, 5000];
_boxPositions = new Array("436,248|460,248", "415,248|436,248|460,248", "426,249|449,249|472,249|437,226|460,226", "433,249|456,249|479,249|433,227|456,227|479,227|456,205");
_boxContainer = new Sprite();
super();
_depot = _arg1;
itemContainer = new Sprite();
addChild(itemContainer);
_arg2.parent.parent.addChild(this);
var _local3:SimpleTooltip = new SimpleTooltip();
_arg2.parent.parent.addChild(_local3);
title.text = Config.currentLanguage.ship_products;
cancelBtn.caption.text = Config.currentLanguage.cancel;
okBtn.caption.text = Config.currentLanguage.ship;
this.visible = false;
Fonts.applyDefaultFormat(okBtn.caption);
Fonts.applyDefaultFormat(cancelBtn.caption);
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(money);
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
cancelBtn.addEventListener(MouseEvent.CLICK, cancel, false, 0, true);
addChild(_boxContainer);
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
var p:int;
while (p < 17) {
Depot._production[p] = _marketProductionList[p];
p = (p + 1);
};
Depot.instance.updateDepotView();
Tweener.addTween(this, {alpha:0, time:0.3, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
if (_money > 0){
Road.instance.goCar(_money, Car.upgradeLevel);
};
SoundManager.play("action_sell_buy");
Penguin.remove((Penguin.count - _marketProductionList[17]));
Sheep.remove((Sheep.count - _marketProductionList[18]));
Cat.updateCats();
GameController.instance.resume();
}
private function chooseOne(_arg1:Event=null):void{
_arg1.stopPropagation();
var _local2:Number = addProductToCar(_arg1.target.type, 1);
_marketProductionList[ProductTypes.typeToNumber(_arg1.target.type)] = (_marketProductionList[ProductTypes.typeToNumber(_arg1.target.type)] - _local2);
updateItemsView();
addMoney((_local2 * Number(_arg1.target.cost.text)));
}
private function chooseAll(_arg1:Event=null):void{
_arg1.stopPropagation();
var _local2:Number = addProductToCar(_arg1.target.type, Number(_arg1.target.count.text));
_marketProductionList[ProductTypes.typeToNumber(_arg1.target.type)] = (_marketProductionList[ProductTypes.typeToNumber(_arg1.target.type)] - _local2);
addMoney((_local2 * Number(_arg1.target.cost.text)));
updateItemsView();
}
private function addMoney(_arg1:Number):void{
_money = (_money + _arg1);
okBtn.visible = true;
money.text = String(_money);
}
public function upgrade(_arg1:Number=0):void{
car.gotoAndStop((Car.upgradeLevel + 1));
}
private function addProductToCar(_arg1:String, _arg2:Number):Number{
var _local3:Number = 0;
var _local4:Number = 0;
var _local5:int;
while (_local5 < _boxList.length) {
_local4 = _boxList[_local5].addProduct(_arg1, _arg2);
if (_local4 > 0){
_local3 = (_local3 + _local4);
_arg2 = (_arg2 - _local4);
if (_arg2 <= 0){
return (_local3);
};
};
_local5++;
};
return (_local3);
}
private function getBoxPositions():Array{
return (_boxPositions[Car.upgradeLevel].split("|"));
}
public function cancel(_arg1:MouseEvent=null):void{
var event = _arg1;
if (_money > 0){
SoundManager.play("item_cancel");
};
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.3, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
GameController.instance.resume();
}
public function updateItemsView():void{
var _local4:Number;
var _local5:ExportItem;
var _local6:Number;
var _local7:ExportItem;
var _local1:Number = 0;
while (itemContainer.numChildren > 0) {
itemContainer.removeChildAt((itemContainer.numChildren - 1));
};
var _local2:int;
while (_local2 < 17) {
_local4 = int(_marketProductionList[_local2]);
if (_local4 > 0){
_local5 = new ExportItem(ProductTypes.types[_local2], _local4, _productionPrice[_local2]);
trace("showDepot", ProductTypes.types[_local2]);
itemContainer.addChild(_local5);
_local5.y = (73 + (_local1 * 22));
_local5.x = 35;
_local1++;
_local5.addEventListener(ExportItem.CHOOSE_ONE, chooseOne, false, 0, true);
_local5.addEventListener(ExportItem.CHOOSE_ALL, chooseAll, false, 0, true);
};
_local2++;
};
trace(_marketProductionList);
var _local3:Number = 0;
_local2 = 17;
while (_local2 < _marketProductionList.length) {
_local6 = int(_marketProductionList[_local2]);
if (_local6 <= 0){
} else {
_local7 = new ExportItem(ProductTypes.types[_local2], _marketProductionList[_local2], _productionPrice[_local2]);
itemContainer.addChild(_local7);
_local7.y = (73 + (_local3 * 22));
_local7.x = 404;
_local3++;
_local7.addEventListener(ExportItem.CHOOSE_ONE, chooseOne, false, 0, true);
_local7.addEventListener(ExportItem.CHOOSE_ALL, chooseAll, false, 0, true);
};
_local2++;
};
}
public function show():void{
var _local4:Box;
GameController.instance.pause();
okBtn.visible = false;
_money = 0;
money.text = "0";
this.visible = true;
car.gotoAndStop((Car.upgradeLevel + 1));
this.alpha = 0;
_marketProductionList = new Array();
var _local1:int;
while (_local1 < Depot._production.length) {
_marketProductionList[_local1] = Depot._production[_local1];
_local1++;
};
_marketProductionList[17] = Penguin.count;
_marketProductionList[18] = Sheep.count;
Tweener.addTween(this, {alpha:1, time:0.5});
updateItemsView();
while (_boxContainer.numChildren > 0) {
_boxContainer.removeChildAt((_boxContainer.numChildren - 1));
};
_boxList = new Array();
var _local2:Array = getBoxPositions();
var _local3:int;
while (_local3 < _local2.length) {
_local4 = new Box();
_local4.x = _local2[_local3].split(",")[0];
_local4.y = _local2[_local3].split(",")[1];
_boxContainer.addChild(_local4);
_boxList.push(_local4);
_local3++;
};
if (((firstShow) && (!(Config.skiped)))){
SimpleTooltip.instance.show(Config.currentLanguage.tooltips.warehouse);
firstShow = false;
};
}
}
}//package market
Section 267
//ExportWindowTemplate (market.ExportWindowTemplate)
package market {
import flash.display.*;
import flash.text.*;
public dynamic class ExportWindowTemplate extends MovieClip {
public var okBtn:MovieClip;
public var cancelBtn:MovieClip;
public var title:TextField;
public var car:MovieClip;
public var money:TextField;
}
}//package market
Section 268
//ImportItem (market.ImportItem)
package market {
import flash.events.*;
import flash.display.*;
import ui.*;
import market.road.*;
import utils.*;
import com.melesta.sound.*;
public class ImportItem extends ImportItemTemplate {
public var type:String;
public static var CHOOSE_TEN:String = "choose_ten";
public static var CHOOSE_FIVE:String = "choose_five";
public static var CHOOSE_ONE:String = "choose_one";
public function ImportItem(_arg1:String, _arg2:Number, _arg3:String){
Fonts.applyDefaultFormat(cost);
Fonts.applyDefaultFormat(one.caption);
Fonts.applyDefaultFormat(five.caption);
Fonts.applyDefaultFormat(ten.caption);
this.product.gotoAndStop(_arg1);
this.cost.text = _arg3;
type = _arg1;
one.caption.text = "1";
five.caption.text = "5";
ten.caption.text = "10";
one.caption.mouseEnabled = (five.caption.mouseEnabled = (ten.caption.mouseEnabled = false));
one.gotoAndStop(1);
five.gotoAndStop(1);
ten.gotoAndStop(1);
one.addEventListener(MouseEvent.CLICK, chooseOne, false, 0, true);
five.addEventListener(MouseEvent.CLICK, chooseFive, false, 0, true);
ten.addEventListener(MouseEvent.CLICK, chooseTen, false, 0, true);
if (Road.currentMoney < (10 * Number(cost.text))){
ten.visible = false;
};
if (Road.currentMoney < (5 * Number(cost.text))){
five.visible = false;
};
if (Road.currentMoney < Number(cost.text)){
one.visible = false;
};
}
private function chooseTen(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("item_add", 1);
dispatchEvent(new Event(ImportItem.CHOOSE_TEN));
}
private function chooseFive(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("item_add", 1);
dispatchEvent(new Event(ImportItem.CHOOSE_FIVE));
}
public function updateView(_arg1:Number=0):void{
if ((Road.currentMoney - _arg1) < (10 * Number(cost.text))){
ten.visible = false;
};
if ((Road.currentMoney - _arg1) < (5 * Number(cost.text))){
five.visible = false;
};
if ((Road.currentMoney - _arg1) < Number(cost.text)){
one.visible = false;
};
}
private function chooseOne(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
dispatchEvent(new Event(ImportItem.CHOOSE_ONE));
SoundManager.play("item_add", 1);
}
}
}//package market
Section 269
//ImportItemTemplate (market.ImportItemTemplate)
package market {
import flash.display.*;
import flash.text.*;
public dynamic class ImportItemTemplate extends MovieClip {
public var five:MovieClip;
public var cost:TextField;
public var one:MovieClip;
public var ten:MovieClip;
public var product:MovieClip;
}
}//package market
Section 270
//ImportWindow (market.ImportWindow)
package market {
import flash.events.*;
import flash.display.*;
import ui.*;
import game.*;
import market.road.*;
import pets.*;
import utils.*;
import vehicles.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class ImportWindow extends ImportWindowTemplate {
private var _money:Number;// = 0
private var _boxList:Array;
private var _productionPrice:Array;
private var _productItemList:Array;
private var _boxContainer:Sprite;
private var itemContainer:Sprite;
private var _boxPositions:Array;
public static var importProductionList:Array;
public static var firstShow:Boolean = true;
public function ImportWindow(_arg1:DisplayObjectContainer){
_productionPrice = [0, 0, 0, 0, 20, 200, 100, 200, 400, 20, 100, 1000];
_boxPositions = new Array("101,281|127,281", "89,281|115,281|141,281", "64,281|90,281|116,281|143,281|169,281", "38,281|64,281|90,281|116,281|142,281|168,281|194,281");
_boxContainer = new Sprite();
super();
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(money);
Fonts.applyDefaultFormat(cancelBtn.caption);
Fonts.applyDefaultFormat(okBtn.caption);
itemContainer = new Sprite();
addChild(itemContainer);
_arg1.parent.parent.addChild(this);
cancelBtn.caption.text = Config.currentLanguage.cancel;
okBtn.caption.text = Config.currentLanguage.order;
title.text = Config.currentLanguage.order_products;
this.visible = false;
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
cancelBtn.addEventListener(MouseEvent.CLICK, cancel, false, 0, true);
addChild(_boxContainer);
}
private function chooseTen(_arg1:Event=null):void{
_arg1.stopPropagation();
var _local2:Number = addProductToPlane(_arg1.target.type, 10);
if (!_local2){
};
addMoney((_local2 * Number(_arg1.target.cost.text)));
updateImportList(_arg1.target.type, _local2);
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
Tweener.addTween(this, {alpha:0, time:0.3, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
if (_money > 0){
Road.instance.goPlane(_money, Plane.upgradeLevel);
};
SoundManager.play("action_sell_buy");
GameController.instance.resume();
}
private function addProductToPlane(_arg1:String, _arg2:Number):Number{
var _local3:Number = 0;
var _local4:Number = 0;
var _local5:int;
while (_local5 < _boxList.length) {
_local4 = _boxList[_local5].addProduct(_arg1, _arg2);
if (_local4 > 0){
_local3 = (_local3 + _local4);
_arg2 = (_arg2 - _local4);
if (_arg2 <= 0){
return (_local3);
};
};
_local5++;
};
return (_local3);
}
private function updateImportList(_arg1:String, _arg2:Number=0):Number{
var _local4:Array;
var _local3:int;
while (_local3 < importProductionList.length) {
_local4 = importProductionList[_local3].split(",");
if (_local4[0] == _arg1){
_local4[1] = (Number(_local4[1]) + _arg2);
importProductionList[_local3] = _local4.join(",");
return (0);
};
_local3++;
};
return (0);
}
private function chooseOne(_arg1:Event=null):void{
_arg1.stopPropagation();
var _local2:Number = addProductToPlane(_arg1.target.type, 1);
if (!_local2){
};
addMoney((_local2 * Number(_arg1.target.cost.text)));
updateImportList(_arg1.target.type, _local2);
}
private function getBoxPositions():Array{
return (_boxPositions[Plane.upgradeLevel].split("|"));
}
private function addMoney(_arg1:Number):void{
_money = (_money + _arg1);
if (_arg1 > 0){
okBtn.visible = true;
};
money.text = String(_money);
var _local2:int;
while (_local2 < _productItemList.length) {
if (_productItemList[_local2]){
_productItemList[_local2].updateView(_money);
};
_local2++;
};
}
public function upgrade(_arg1:Number=0):void{
plane.gotoAndStop((Plane.upgradeLevel + 1));
boxline.gotoAndStop((Plane.upgradeLevel + 1));
}
private function chooseFive(_arg1:Event=null):void{
_arg1.stopPropagation();
var _local2:Number = addProductToPlane(_arg1.target.type, 5);
if (!_local2){
};
addMoney((_local2 * Number(_arg1.target.cost.text)));
updateImportList(_arg1.target.type, _local2);
}
public function cancel(_arg1:MouseEvent=null):void{
var event = _arg1;
if (_money > 0){
SoundManager.play("item_cancel");
};
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.3, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
GameController.instance.resume();
}
public function updateItemsView():void{
var _local3:ImportItem;
var _local1:Number = 0;
while (itemContainer.numChildren > 0) {
itemContainer.removeChildAt((itemContainer.numChildren - 1));
};
_productItemList = new Array();
var _local2:int;
while (_local2 < LevelStatistics.accessProduct.length) {
_local3 = new ImportItem(ProductTypes.types[LevelStatistics.accessProduct[_local2]], 1000, _productionPrice[LevelStatistics.accessProduct[_local2]]);
itemContainer.addChild(_local3);
_local3.y = (83 + (_local1 * 24));
_local3.x = 35;
_local1++;
_local3.addEventListener(ImportItem.CHOOSE_ONE, chooseOne, false, 0, true);
_local3.addEventListener(ImportItem.CHOOSE_TEN, chooseTen, false, 0, true);
_local3.addEventListener(ImportItem.CHOOSE_FIVE, chooseFive, false, 0, true);
_productItemList.push(_local3);
_local2++;
};
addMoney(0);
}
public function show():void{
var _local4:String;
var _local5:PlaneBox;
GameController.instance.pause();
okBtn.visible = false;
_money = 0;
money.text = "0";
this.visible = true;
plane.gotoAndStop((Plane.upgradeLevel + 1));
boxline.gotoAndStop((Plane.upgradeLevel + 1));
this.alpha = 0;
importProductionList = new Array();
var _local1:int;
while (_local1 < LevelStatistics.accessProduct.length) {
_local4 = (ProductTypes.types[LevelStatistics.accessProduct[_local1]] + ",0");
trace(_local4);
importProductionList.push(_local4);
_local1++;
};
Tweener.addTween(this, {alpha:1, time:0.5});
updateItemsView();
while (_boxContainer.numChildren > 0) {
_boxContainer.removeChildAt((_boxContainer.numChildren - 1));
};
_boxList = new Array();
var _local2:Array = getBoxPositions();
var _local3:int;
while (_local3 < _local2.length) {
_local5 = new PlaneBox();
_local5.x = _local2[_local3].split(",")[0];
_local5.y = _local2[_local3].split(",")[1];
_boxContainer.addChild(_local5);
_boxList.push(_local5);
_local3++;
};
if (((firstShow) && (!(Config.skiped)))){
SimpleTooltip.instance.show(Config.currentLanguage.tooltips.plane);
firstShow = false;
};
}
}
}//package market
Section 271
//ImportWindowTemplate (market.ImportWindowTemplate)
package market {
import flash.display.*;
import flash.text.*;
public dynamic class ImportWindowTemplate extends MovieClip {
public var okBtn:MovieClip;
public var cancelBtn:MovieClip;
public var boxline:MovieClip;
public var money:TextField;
public var plane:MovieClip;
public var title:TextField;
}
}//package market
Section 272
//PlaneBox (market.PlaneBox)
package market {
import utils.*;
public class PlaneBox extends BoxTemplate {
public var type:Number;
public var count:Number;// = 0
private static var sizeList:Array = new Array(10, 10, 5, 5, 5, 5, 5, 2);
public function PlaneBox(){
body.stop();
this.visible = false;
this.type = -1;
this.count = 0;
}
public function addProduct(_arg1:String, _arg2:Number):Number{
var _local3:Number;
if (!count){
this.visible = true;
this.body.gotoAndStop(_arg1);
type = ProductTypes.typeToNumber(_arg1);
};
if ((((count > 0)) && (!((type == ProductTypes.typeToNumber(_arg1)))))){
return (0);
};
if (count == sizeList[type]){
return (-1);
};
if ((_arg2 + count) <= sizeList[type]){
count = (count + _arg2);
this.progress._mask.width = ((20 * count) / sizeList[type]);
return (_arg2);
};
if ((_arg2 + count) > sizeList[type]){
_local3 = (sizeList[type] - count);
count = (count + _local3);
this.progress._mask.width = ((20 * count) / sizeList[type]);
return (_local3);
};
return (_arg2);
}
}
}//package market
Section 273
//MochiAd (mochi.as3.MochiAd)
package mochi.as3 {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.utils.*;
import flash.system.*;
public class MochiAd {
public static function getVersion():String{
return (MochiServices.getVersion());
}
public static function showClickAwayAd(_arg1:Object):void{
var clip:Object;
var mc:MovieClip;
var chk:MovieClip;
var options = _arg1;
var DEFAULTS:Object = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{
}, ad_finished:function ():void{
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
var ad_timeout:Number = options.ad_timeout;
delete options.ad_timeout;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
var wh:Array = MochiAd._getRes(options, clip);
var w:Number = wh[0];
var h:Number = wh[1];
mc.x = (w * 0.5);
mc.y = (h * 0.5);
chk = createEmptyMovieClip(mc, "_mochiad_wait", 3);
chk.ad_timeout = ad_timeout;
chk.started = getTimer();
chk.showing = false;
mc.unloadAd = function ():void{
MochiAd.unload(clip);
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
var sendHostProgress:Boolean;
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
chk["onEnterFrame"] = function ():void{
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
return;
};
var _local1:Object = this.parent._mochiad_ctr;
var _local2:Number = (getTimer() - this.started);
var _local3:Boolean;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
_local3 = true;
chk.started = getTimer();
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (this.root == null){
_local3 = true;
};
if (_local3){
delete this.onEnterFrame;
};
};
doOnEnterFrame(chk);
}
public static function _isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function _allowDomains(_arg1:String):String{
var _local2:String = _arg1.split("/")[2].split(":")[0];
if (Security.sandboxType == "application"){
return (_local2);
};
Security.allowDomain("*");
Security.allowDomain(_local2);
Security.allowInsecureDomain("*");
Security.allowInsecureDomain(_local2);
return (_local2);
}
public static function unload(_arg1:Object):Boolean{
if (((_arg1.clip) && (_arg1.clip._mochiad))){
_arg1 = _arg1.clip;
};
if (_arg1.origFrameRate != undefined){
_arg1.stage.frameRate = _arg1.origFrameRate;
};
if (!_arg1._mochiad){
return (false);
};
if (_arg1._mochiad._containerLCName != undefined){
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"});
};
if (_arg1._mochiad.onUnload){
_arg1._mochiad.onUnload();
};
delete _arg1._mochiad_loaded;
delete _arg1._mochiad;
return (true);
}
public static function showInterLevelAd(_arg1:Object):void{
var clip:Object;
var mc:MovieClip;
var chk:MovieClip;
var options = _arg1;
var DEFAULTS:Object = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}};
options = MochiAd._parseOptions(options, DEFAULTS);
clip = options.clip;
var ad_msec:Number = 11000;
var ad_timeout:Number = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time:Number = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
options.ad_finished();
};
var wh:Array = MochiAd._getRes(options, clip);
var w:Number = wh[0];
var h:Number = 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{
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
var _local1:Number = (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.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = (_arg1 - 250);
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
chk["onEnterFrame"] = function ():void{
var _local4:Number;
if (!this.parent){
delete this.onEnterFrame;
delete this.fadeFunction;
return;
};
var _local1:Object = this.parent._mochiad_ctr;
var _local2:Number = (getTimer() - this.started);
var _local3:Boolean;
if (!chk.showing){
_local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local4 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if (_local2 > chk.ad_timeout){
options.ad_failed();
_local3 = true;
};
};
};
if (_local2 > chk.ad_msec){
_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 _parseOptions(_arg1:Object, _arg2:Object):Object{
var _local4:String;
var _local5:Array;
var _local6:Number;
var _local7:Array;
var _local3:Object = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
if (_arg1){
for (_local4 in _arg1) {
_local3[_local4] = _arg1[_local4];
};
};
if (_local3.clip == undefined){
throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite."));
};
_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++;
};
};
if (_local3.id == "test"){
trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!");
};
return (_local3);
}
public static function _cleanup(_arg1:Object):void{
var k:String;
var lc:LocalConnection;
var f:Function;
var mc = _arg1;
if (("lc" in mc)){
lc = mc.lc;
f = function ():void{
try {
lc.client = null;
lc.close();
} catch(e:Error) {
};
};
setTimeout(f, 0);
};
var idx:Number = DisplayObjectContainer(mc).numChildren;
while (idx > 0) {
idx = (idx - 1);
DisplayObjectContainer(mc).removeChildAt(idx);
};
for (k in mc) {
delete mc[k];
};
}
public static function load(_arg1:Object):MovieClip{
var clip:Object;
var k:String;
var server:String;
var hostname:String;
var lc:LocalConnection;
var name:String;
var loader:Loader;
var g:Function;
var req:URLRequest;
var v:Object;
var options = _arg1;
var DEFAULTS:Object = {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);
};
try {
if (clip._mochiad_loaded){
return (null);
};
} catch(e:Error) {
throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
var depth:Number = options.depth;
delete options.depth;
var mc:MovieClip = createEmptyMovieClip(clip, "_mochiad", depth);
var wh:Array = 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;
} else {
trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal");
};
var lv:URLVariables = 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;
mc.lcName = name;
lv.lc = name;
lv.st = getTimer();
loader = new Loader();
g = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
MochiAd.unload(clip);
};
loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g);
req = new URLRequest(((server + ".swf?cacheBust=") + new Date().getTime()));
req.contentType = "application/x-www-form-urlencoded";
req.method = URLRequestMethod.POST;
req.data = lv;
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{
trace("[MochiAds] Blocked URL");
});
loader.load(req);
mc.addChild(loader);
mc._mochiad_ctr = loader;
return (mc);
}
public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{
var _local4:Array = _arg2.split(".");
var _local5:Number = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
if (typeof(_arg1[_local4[_local5]]) == "function"){
return (_arg1[_local4[_local5]].apply(_arg1, _arg3));
};
return (undefined);
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{
var _local4:MovieClip = new MovieClip();
if (((false) && (_arg3))){
_arg1.addChildAt(_local4, _arg3);
} else {
_arg1.addChild(_local4);
};
_arg1[_arg2] = _local4;
_local4["_name"] = _arg2;
return (_local4);
}
public static function _getRes(_arg1:Object, _arg2:Object):Array{
var _local6:Array;
var _local3:Object = _arg2.getBounds(_arg2.root);
var _local4:Number = 0;
var _local5:Number = 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 adShowing(_arg1:Object):void{
_arg1.origFrameRate = _arg1.stage.frameRate;
_arg1.stage.frameRate = 30;
}
public static function getValue(_arg1:Object, _arg2:String):Object{
var _local3:Array = _arg2.split(".");
var _local4:Number = 0;
while (_local4 < (_local3.length - 1)) {
if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){
return (undefined);
};
_arg1 = _arg1[_local3[_local4]];
_local4++;
};
return (_arg1[_local3[_local4]]);
}
public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{
var _local4:Object;
var _local5:Object;
switch (_arg3.id){
case "setValue":
MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value);
break;
case "getValue":
_local4 = MochiAd.getValue(_arg1, _arg3.objectName);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4);
break;
case "runMethod":
_local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args);
_arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5);
break;
default:
trace(("[mochiads rpc] unknown rpc id: " + _arg3.id));
};
}
public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Array = _arg2.split(".");
var _local5:Number = 0;
while (_local5 < (_local4.length - 1)) {
if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){
return;
};
_arg1 = _arg1[_local4[_local5]];
_local5++;
};
_arg1[_local4[_local5]] = _arg3;
}
public static function showPreGameAd(_arg1:Object):void{
var clip:Object;
var mc:MovieClip;
var chk:MovieClip;
var complete:Boolean;
var unloaded:Boolean;
var sendHostProgress:Boolean;
var fn:Function;
var r:MovieClip;
var options = _arg1;
var DEFAULTS:Object = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{
if ((this.clip is MovieClip)){
this.clip.stop();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_finished:function ():void{
if ((this.clip is MovieClip)){
this.clip.play();
} else {
throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers."));
};
}, ad_loaded:function (_arg1:Number, _arg2:Number):void{
}, ad_failed:function ():void{
trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software");
}, ad_skipped:function ():void{
}, ad_progress:function (_arg1:Number):void{
}, bar_offset:0};
options = MochiAd._parseOptions(options, DEFAULTS);
if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){
options.ad_started();
fn = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
return;
};
clip = options.clip;
var ad_msec:Number = 11000;
var ad_timeout:Number = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time:Number = options.fadeout_time;
delete options.fadeout_time;
if (!MochiAd.load(options)){
options.ad_failed();
options.ad_finished();
return;
};
options.ad_started();
mc = clip._mochiad;
mc["onUnload"] = function ():void{
MochiAd._cleanup(mc);
var fn:Function = function ():void{
options.ad_finished();
};
setTimeout(fn, 100);
};
var wh:Array = MochiAd._getRes(options, clip);
var w:Number = wh[0];
var h:Number = 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);
var bar:MovieClip = createEmptyMovieClip(chk, "_mochiad_bar", 4);
if (options.no_progress_bar){
bar.visible = false;
delete options.no_progress_bar;
} else {
bar.x = (10 + options.bar_offset);
bar.y = (h - 20);
};
var bar_w:Number = (w - 20);
var bar_color:Number = options.color;
delete options.color;
var bar_background:Number = options.background;
delete options.background;
var bar_outline:Number = options.outline;
delete options.outline;
var backing_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 1);
var backing:Object = backing_mc.graphics;
backing.beginFill(bar_background);
backing.moveTo(0, 0);
backing.lineTo(bar_w, 0);
backing.lineTo(bar_w, 10);
backing.lineTo(0, 10);
backing.lineTo(0, 0);
backing.endFill();
var inside_mc:MovieClip = createEmptyMovieClip(bar, "_inside", 2);
var inside:Object = inside_mc.graphics;
inside.beginFill(bar_color);
inside.moveTo(0, 0);
inside.lineTo(bar_w, 0);
inside.lineTo(bar_w, 10);
inside.lineTo(0, 10);
inside.lineTo(0, 0);
inside.endFill();
inside_mc.scaleX = 0;
var outline_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 3);
var outline:Object = outline_mc.graphics;
outline.lineStyle(0, bar_outline, 100);
outline.moveTo(0, 0);
outline.lineTo(bar_w, 0);
outline.lineTo(bar_w, 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 = (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;
var f:Function = function (_arg1:Event):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
complete = true;
if (unloaded){
MochiAd.unload(clip);
};
};
if (clip.loaderInfo.bytesLoaded == clip.loaderInfo.bytesTotal){
complete = true;
} else {
if ((clip.root is MovieClip)){
r = (clip.root as MovieClip);
if (r.framesLoaded >= r.totalFrames){
complete = true;
} else {
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
};
} else {
clip.loaderInfo.addEventListener(Event.COMPLETE, f);
};
};
mc.unloadAd = function ():void{
unloaded = true;
if (complete){
MochiAd.unload(clip);
};
};
mc.adLoaded = options.ad_loaded;
mc.adSkipped = options.ad_skipped;
mc.adjustProgress = function (_arg1:Number):void{
var _local2:Object = mc._mochiad_wait;
_local2.server_control = true;
_local2.showing = true;
_local2.started = getTimer();
_local2.ad_msec = _arg1;
};
mc.rpc = function (_arg1:Number, _arg2:Object):void{
MochiAd.rpc(clip, _arg1, _arg2);
};
mc.rpcTestFn = function (_arg1:String):Object{
trace(("[MOCHIAD rpcTestFn] " + _arg1));
return (_arg1);
};
mc.regContLC = function (_arg1:String):void{
mc._containerLCName = _arg1;
};
sendHostProgress = false;
mc.sendHostLoadProgress = function (_arg1:String):void{
sendHostProgress = true;
};
chk["onEnterFrame"] = function ():void{
var _local11:Number;
if (((!(this.parent)) || (!(this.parent.parent)))){
delete this["onEnterFrame"];
return;
};
var _local1:Object = this.parent.parent.root;
var _local2:Object = this.parent._mochiad_ctr;
var _local3:Number = (getTimer() - this.started);
var _local4:Boolean;
var _local5:Number = _local1.loaderInfo.bytesTotal;
var _local6:Number = _local1.loaderInfo.bytesLoaded;
if (complete){
_local6 = Math.max(1, _local6);
_local5 = _local6;
};
var _local7:Number = ((100 * _local6) / _local5);
var _local8:Number = ((100 * _local3) / chk.ad_msec);
var _local9:Object = this._mochiad_bar._inside;
var _local10:Number = Math.min(100, Math.min(((_local7) || (0)), _local8));
_local10 = Math.max(this.last_pcnt, _local10);
this.last_pcnt = _local10;
_local9.scaleX = (_local10 * 0.01);
options.ad_progress(_local10);
if (sendHostProgress){
clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7});
if (_local7 >= 100){
sendHostProgress = false;
};
};
if (!chk.showing){
_local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal;
if (_local11 > 0){
chk.showing = true;
chk.started = getTimer();
MochiAd.adShowing(clip);
} else {
if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){
options.ad_failed();
_local4 = true;
};
};
};
if (_local3 > chk.ad_msec){
_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{
trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0");
MochiAd.showPreGameAd(_arg1);
}
public static function showTimedAd(_arg1:Object):void{
trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0");
MochiAd.showInterLevelAd(_arg1);
}
public static function doOnEnterFrame(_arg1:MovieClip):void{
var mc = _arg1;
var f:Function = function (_arg1:Object):void{
if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){
mc.onEnterFrame();
} else {
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
};
mc.addEventListener(Event.ENTER_FRAME, f);
}
}
}//package mochi.as3
Section 274
//MochiCoins (mochi.as3.MochiCoins)
package mochi.as3 {
public class MochiCoins {
public static const STORE_HIDE:String = "StoreHide";
public static const LOGGED_IN:String = "LoggedIn";
public static const STORE_ITEMS:String = "StoreItems";
public static const NO_USER:String = "NoUser";
public static const PROPERTIES_SIZE:String = "PropertiesSize";
public static const ITEM_NEW:String = "ItemNew";
public static const USER_INFO:String = "UserInfo";
public static const IO_ERROR:String = "IOError";
public static const ITEM_OWNED:String = "ItemOwned";
public static const PROPERTIES_SAVED:String = "PropertySaved";
public static const WIDGET_LOADED:String = "WidgetLoaded";
public static const ERROR:String = "Error";
public static const LOGGED_OUT:String = "LoggedOut";
public static const PROFILE_SHOW:String = "ProfileShow";
public static const LOGIN_HIDE:String = "LoginHide";
public static const LOGIN_SHOW:String = "LoginShow";
public static const STORE_SHOW:String = "StoreShow";
public static const PROFILE_HIDE:String = "ProfileHide";
private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher();
public static function showItem(_arg1:Object=null):void{
if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){
trace("ERROR: showItem call must pass an Object with an item key");
return;
};
MochiServices.bringToTop();
MochiServices.send("coins_showItem", {options:_arg1}, null, null);
}
public static function saveUserProperties(_arg1:Object):void{
MochiServices.send("coins_saveUserProperties", _arg1);
}
public static function triggerEvent(_arg1:String, _arg2:Object):void{
_dispatcher.triggerEvent(_arg1, _arg2);
}
public static function showLoginWidget(_arg1:Object=null):void{
MochiServices.setContainer();
MochiServices.bringToTop();
MochiServices.send("coins_showLoginWidget", {options:_arg1});
}
public static function getStoreItems():void{
MochiServices.send("coins_getStoreItems");
}
public static function getVersion():String{
return (MochiServices.getVersion());
}
public static function showStore(_arg1:Object=null):void{
MochiServices.bringToTop();
MochiServices.send("coins_showStore", {options:_arg1}, null, null);
}
public static function addEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.addEventListener(_arg1, _arg2);
}
public static function getUserInfo():void{
MochiServices.send("coins_getUserInfo");
}
public static function hideLoginWidget():void{
MochiServices.send("coins_hideLoginWidget");
}
public static function removeEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.removeEventListener(_arg1, _arg2);
}
public static function showVideo(_arg1:Object=null):void{
if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){
trace("ERROR: showVideo call must pass an Object with an item key");
return;
};
MochiServices.bringToTop();
MochiServices.send("coins_showVideo", {options:_arg1}, null, null);
}
}
}//package mochi.as3
Section 275
//MochiDigits (mochi.as3.MochiDigits)
package mochi.as3 {
public final class MochiDigits {
private var Sibling:MochiDigits;
private var Fragment:Number;
private var Encoder:Number;
public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{
Encoder = 0;
setValue(_arg1, _arg2);
}
public function reencode():void{
var _local1:uint = int((2147483647 * Math.random()));
Fragment = (Fragment ^ (_local1 ^ Encoder));
Encoder = _local1;
}
public function set value(_arg1:Number):void{
setValue(_arg1);
}
public function toString():String{
var _local1:String = String.fromCharCode((Fragment ^ Encoder));
if (Sibling != null){
_local1 = (_local1 + Sibling.toString());
};
return (_local1);
}
public function setValue(_arg1:Number=0, _arg2:uint=0):void{
var _local3:String = _arg1.toString();
var _temp1 = _arg2;
_arg2 = (_arg2 + 1);
Fragment = (_local3.charCodeAt(_temp1) ^ Encoder);
if (_arg2 < _local3.length){
Sibling = new MochiDigits(_arg1, _arg2);
} else {
Sibling = null;
};
reencode();
}
public function get value():Number{
return (Number(this.toString()));
}
public function addValue(_arg1:Number):void{
value = (value + _arg1);
}
}
}//package mochi.as3
Section 276
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher)
package mochi.as3 {
public class MochiEventDispatcher {
private var eventTable:Object;
public function MochiEventDispatcher():void{
eventTable = {};
}
public function triggerEvent(_arg1:String, _arg2:Object):void{
var _local3:Object;
if (eventTable[_arg1] == undefined){
return;
};
for (_local3 in eventTable[_arg1]) {
var _local6 = eventTable[_arg1];
_local6[_local3](_arg2);
};
}
public function removeEventListener(_arg1:String, _arg2:Function):void{
var _local3:Object;
if (eventTable[_arg1] == undefined){
eventTable[_arg1] = [];
return;
};
for (_local3 in eventTable[_arg1]) {
if (eventTable[_arg1][_local3] != _arg2){
} else {
eventTable[_arg1].splice(Number(_local3), 1);
};
};
}
public function addEventListener(_arg1:String, _arg2:Function):void{
removeEventListener(_arg1, _arg2);
eventTable[_arg1].push(_arg2);
}
}
}//package mochi.as3
Section 277
//MochiEvents (mochi.as3.MochiEvents)
package mochi.as3 {
import flash.display.*;
public class MochiEvents {
public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL";
public static const FORMAT_LONG:String = "LongForm";
public static const ALIGN_BOTTOM:String = "ALIGN_B";
public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived";
public static const FORMAT_SHORT:String = "ShortForm";
public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR";
public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR";
public static const ALIGN_TOP:String = "ALIGN_T";
public static const ALIGN_LEFT:String = "ALIGN_L";
public static const ALIGN_RIGHT:String = "ALIGN_R";
public static const ALIGN_TOP_LEFT:String = "ALIGN_TL";
public static const ALIGN_CENTER:String = "ALIGN_C";
private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher();
private static var gameStart:Number;
private static var levelStart:Number;
public static function addEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.addEventListener(_arg1, _arg2);
}
public static function removeEventListener(_arg1:String, _arg2:Function):void{
_dispatcher.removeEventListener(_arg1, _arg2);
}
public static function startSession(_arg1:String):void{
MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null);
}
public static function triggerEvent(_arg1:String, _arg2:Object):void{
_dispatcher.triggerEvent(_arg1, _arg2);
}
public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{
var _local4:Object;
var _local3:Object = {};
for (_local4 in _arg2) {
_local3[_local4] = _arg2[_local4];
};
_local3.clip = _arg1;
MochiServices.send("events_setNotifications", _local3, null, null);
}
public static function endGame():void{
var _local1:Number = (new Date().time - gameStart);
trigger("end_game", {time:_local1});
}
public static function startGame():void{
gameStart = new Date().time;
trigger("start_game");
}
public static function trigger(_arg1:String, _arg2:Object=null):void{
if (_arg2 == null){
_arg2 = {};
} else {
if (_arg2["kind"] != undefined){
trace("WARNING: optional arguements package contains key 'id', it will be overwritten");
_arg2["kind"] = _arg1;
};
};
MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null);
}
public static function getVersion():String{
return (MochiServices.getVersion());
}
public static function startLevel():void{
levelStart = new Date().time;
trigger("start_level");
}
public static function endLevel():void{
var _local1:Number = (new Date().time - levelStart);
trigger("end_level", {time:_local1});
}
}
}//package mochi.as3
Section 278
//MochiScores (mochi.as3.MochiScores)
package mochi.as3 {
import flash.display.*;
import flash.text.*;
public class MochiScores {
private static var boardID:String;
public static var onErrorHandler:Object;
public static var onCloseHandler:Object;
public static function showLeaderboard(_arg1:Object=null):void{
var n:Number;
var options = _arg1;
if (options != null){
delete options.clip;
MochiServices.setContainer();
MochiServices.bringToTop();
if (options.name != null){
if ((options.name is TextField)){
if (options.name.text.length > 0){
options.name = options.name.text;
};
};
};
if (options.score != null){
if ((options.score is TextField)){
if (options.score.text.length > 0){
options.score = options.score.text;
};
} else {
if ((options.score is MochiDigits)){
options.score = options.score.value;
};
};
n = Number(options.score);
if (isNaN(n)){
trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'"));
} else {
if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){
trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite"));
} else {
if (Math.floor(n) != n){
trace((("WARNING: Submitted score '" + options.score) + "' will be truncated"));
};
options.score = n;
};
};
};
if (options.onDisplay != null){
options.onDisplay();
} else {
if (MochiServices.clip != null){
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onDisplay.");
};
};
};
} else {
options = {};
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.stop();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onDisplay.");
};
};
if (options.onClose != null){
onCloseHandler = options.onClose;
} else {
onCloseHandler = function ():void{
if ((MochiServices.clip is MovieClip)){
MochiServices.clip.play();
} else {
trace("Warning: Container is not a MovieClip, cannot call default onClose.");
};
};
};
if (options.onError != null){
onErrorHandler = options.onError;
} else {
onErrorHandler = null;
};
if (options.boardID == null){
if (MochiScores.boardID != null){
options.boardID = MochiScores.boardID;
};
};
MochiServices.warnID(options.boardID, true);
trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal");
MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose);
}
public static function closeLeaderboard():void{
MochiServices.send("scores_closeLeaderboard");
}
public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{
MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2);
}
public static function requestList(_arg1:Object, _arg2:Object=null):void{
MochiServices.send("scores_requestList", null, _arg1, _arg2);
}
public static function scoresArrayToObjects(_arg1:Object):Object{
var _local3:Number;
var _local4:Number;
var _local5:Object;
var _local6:Object;
var _local7:String;
var _local8:String;
var _local2:Object = {};
for (_local7 in _arg1) {
if (typeof(_arg1[_local7]) == "object"){
if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){
_local2[_local7] = [];
_local5 = _arg1[_local7];
_local4 = 0;
while (_local4 < _local5.rows.length) {
_local6 = {};
_local3 = 0;
while (_local3 < _local5.cols.length) {
_local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3];
_local3++;
};
_local2[_local7].push(_local6);
_local4++;
};
} else {
_local2[_local7] = {};
for (_local8 in _arg1[_local7]) {
_local2[_local7][_local8] = _arg1[_local7][_local8];
};
};
} else {
_local2[_local7] = _arg1[_local7];
};
};
return (_local2);
}
public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{
_arg1 = Number(_arg1);
if (isNaN(_arg1)){
trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'"));
} else {
if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){
trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite"));
} else {
if (Math.floor(_arg1) != _arg1){
trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated"));
};
_arg1 = Number(_arg1);
};
};
MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4);
}
public static function onClose(_arg1:Object=null):void{
if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){
if (_arg1.errorCode == null){
_arg1.errorCode = "IOError";
};
onErrorHandler(_arg1.errorCode);
MochiServices.doClose();
return;
};
onCloseHandler();
MochiServices.doClose();
}
public static function setBoardID(_arg1:String):void{
MochiServices.warnID(_arg1, true);
MochiScores.boardID = _arg1;
MochiServices.send("scores_setBoardID", {boardID:_arg1});
}
}
}//package mochi.as3
Section 279
//MochiServices (mochi.as3.MochiServices)
package mochi.as3 {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import flash.geom.*;
import flash.utils.*;
import flash.system.*;
public class MochiServices {
private static var _container:Object;
private static var _connected:Boolean = false;
private static var _swfVersion:String;
private static var _preserved:Object;
public static var netupAttempted:Boolean = false;
private static var _sendChannel:LocalConnection;
public static var servicesSync:MochiSync = new MochiSync();
private static var _clip:MovieClip;
private static var _id:String;
private static var _services:String = "services.swf";
private static var _servURL:String = "http://www.mochiads.com/static/lib/services/";
public static var widget:Boolean = false;
private static var _timer:Timer;
private static var _sendChannelName:String;
private static var _loader:Loader;
private static var _connecting:Boolean = false;
private static var _mochiLocalConnection:MovieClip;
private static var _listenChannelName:String = "__ms_";
public static var onError:Object;
public static var netup:Boolean = true;
private static var _mochiLC:String = "MochiLC.swf";
public static function isNetworkAvailable():Boolean{
return (!((Security.sandboxType == "localWithFile")));
}
public static function get connected():Boolean{
return (_connected);
}
private static function onReceive(_arg1:Object):void{
var methodName:String;
var pkg = _arg1;
var cb:String = pkg.callbackID;
var cblst:Object = _clip._callbacks[cb];
if (!cblst){
return;
};
var method:* = cblst.callbackMethod;
methodName = "";
var obj:Object = cblst.callbackObject;
if (((obj) && ((typeof(method) == "string")))){
methodName = method;
if (obj[method] != null){
method = obj[method];
} else {
trace((("Error: Method " + method) + " does not exist."));
};
};
if (method != undefined){
try {
method.apply(obj, pkg.args);
} catch(error:Error) {
trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString()));
};
} else {
if (obj != null){
try {
obj(pkg.args);
} catch(error:Error) {
trace(("Error invoking method on object: " + error.toString()));
};
};
};
delete _clip._callbacks[cb];
}
public static function get childClip():Object{
return (_clip);
}
public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{
if (_connected){
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID});
} else {
if ((((_clip == null)) || (!(_connecting)))){
trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1));
handleError(_arg2, _arg3, _arg4);
flush(true);
return;
};
_clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID});
};
if (_clip != null){
if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){
_clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4};
_clip._nextcallbackID++;
};
};
}
private static function init(_arg1:String, _arg2:Object):void{
_id = _arg1;
if (_arg2 != null){
_container = _arg2;
loadCommunicator(_arg1, _container);
};
}
private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{
var _local4:int;
var _local14:Loader;
var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23];
var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3];
var _local6:Array = [0, 64, 0, 0, 0];
var _local7:MovieClip = new MovieClip();
var _local8:LocalConnection = new LocalConnection();
var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time));
_local8 = new LocalConnection();
_local7.lc = _local8;
_local7.click = _arg2;
_local8.client = _local7;
_local8.connect(_local9);
var _local10:ByteArray = new ByteArray();
var _local11:ByteArray = new ByteArray();
_local11.endian = Endian.LITTLE_ENDIAN;
_local11.writeShort(1);
_local11.writeUTFBytes(((_arg1 + " ") + _local9));
_local11.writeByte(0);
var _local12:uint = ((_local3.length + _local11.length) + 4);
var _local13:uint = (_local12 + 35);
_local10.endian = Endian.LITTLE_ENDIAN;
_local10.writeUTFBytes("FWS");
_local10.writeByte(8);
_local10.writeUnsignedInt(_local13);
for each (_local4 in _local5) {
_local10.writeByte(_local4);
};
_local10.writeUnsignedInt(_local12);
_local10.writeByte(136);
_local10.writeShort(_local11.length);
_local10.writeBytes(_local11);
for each (_local4 in _local3) {
_local10.writeByte(_local4);
};
for each (_local4 in _local6) {
_local10.writeByte(_local4);
};
_local14 = new Loader();
_local14.loadBytes(_local10);
_local7.addChild(_local14);
return (_local7);
}
public static function stayOnTop():void{
_container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true);
if (_clip != null){
_clip.visible = true;
};
}
public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{
var avm1Click:DisplayObject;
var x:String;
var req:URLRequest;
var loader:Loader;
var setURL:Function;
var err:Function;
var complete:Function;
var url = _arg1;
var burl = _arg2;
var btn = _arg3;
var onClick = _arg4;
var vars:Object = new Object();
vars["mav"] = getVersion();
vars["swfv"] = "9";
vars["swfurl"] = btn.loaderInfo.loaderURL;
vars["fv"] = Capabilities.version;
vars["os"] = Capabilities.os;
vars["lang"] = Capabilities.language;
vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY);
var s = "?";
var i:Number = 0;
for (x in vars) {
if (i != 0){
s = (s + "&");
};
i = (i + 1);
s = (((s + x) + "=") + escape(vars[x]));
};
req = new URLRequest("http://x.mochiads.com/linkping.swf");
loader = new Loader();
setURL = function (_arg1:String):void{
if (avm1Click){
btn.removeChild(avm1Click);
};
avm1Click = clickMovie(_arg1, onClick);
var _local2:Rectangle = btn.getBounds(btn);
btn.addChild(avm1Click);
avm1Click.x = _local2.x;
avm1Click.y = _local2.y;
avm1Click.scaleX = (0.01 * _local2.width);
avm1Click.scaleY = (0.01 * _local2.height);
};
err = function (_arg1:Object):void{
netup = false;
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
setURL(burl);
};
complete = function (_arg1:Object):void{
_arg1.target.removeEventListener(_arg1.type, arguments.callee);
};
if (netup){
setURL((url + s));
} else {
setURL(burl);
};
if (!((netupAttempted) || (_connected))){
netupAttempted = true;
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete);
loader.load(req);
};
}
public static function warnID(_arg1:String, _arg2:Boolean):void{
_arg1 = _arg1.toLowerCase();
if (_arg1.length != 16){
trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length"));
return;
} else {
if (_arg1 == "1e113c7239048b3f"){
if (_arg2){
trace("WARNING: Using testing board ID");
} else {
trace("WARNING: Using testing board ID as game ID");
};
return;
} else {
if (_arg1 == "84993a1de4031cd8"){
if (_arg2){
trace("WARNING: Using testing game ID as board ID");
} else {
trace("WARNING: Using testing game ID");
};
return;
};
};
};
var _local3:Number = 0;
while (_local3 < _arg1.length) {
switch (_arg1.charAt(_local3)){
case "0":
case "1":
case "2":
case "3":
case "4":
case "5":
case "6":
case "7":
case "8":
case "9":
case "a":
case "b":
case "c":
case "d":
case "e":
case "f":
break;
default:
trace(("WARNING: Board ID contains illegal characters: " + _arg1));
return;
};
_local3++;
};
}
public static function disconnect():void{
if (((_connected) || (_connecting))){
if (_clip != null){
if (_clip.parent != null){
if ((_clip.parent is Sprite)){
Sprite(_clip.parent).removeChild(_clip);
_clip = null;
};
};
};
_connecting = (_connected = false);
flush(true);
try {
_mochiLocalConnection.close();
} catch(error:Error) {
};
};
if (_timer != null){
try {
_timer.stop();
} catch(error:Error) {
};
};
}
public static function allowDomains(_arg1:String):String{
var _local2:String;
if (Security.sandboxType != "application"){
Security.allowDomain("*");
Security.allowInsecureDomain("*");
};
if (_arg1.indexOf("http://") != -1){
_local2 = _arg1.split("/")[2].split(":")[0];
if (Security.sandboxType != "application"){
Security.allowDomain(_local2);
Security.allowInsecureDomain(_local2);
};
};
return (_local2);
}
public static function getVersion():String{
return ("3.2 as3");
}
public static function doClose():void{
_container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop);
}
private static function flush(_arg1:Boolean):void{
var _local2:Object;
var _local3:Object;
if (((_clip) && (_clip._queue))){
while (_clip._queue.length > 0) {
_local2 = _clip._queue.shift();
_local3 = null;
if (_local2 != null){
if (_local2.callbackID != null){
_local3 = _clip._callbacks[_local2.callbackID];
};
delete _clip._callbacks[_local2.callbackID];
if (((_arg1) && (!((_local3 == null))))){
handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod);
};
};
};
};
}
public static function get id():String{
return (_id);
}
private static function onEvent(_arg1:Object):void{
var _local2:String = _arg1.target;
var _local3:String = _arg1.event;
switch (_local2){
case "events":
MochiEvents.triggerEvent(_arg1.event, _arg1.args);
break;
case "coins":
MochiCoins.triggerEvent(_arg1.event, _arg1.args);
break;
case "sync":
servicesSync.triggerEvent(_arg1.event, _arg1.args);
break;
};
}
private static function urlOptions(_arg1:Object):Object{
var _local4:Array;
var _local5:Number;
var _local6:Array;
var _local2:Object = {};
var _local3:String = _arg1.loaderInfo.parameters.mochiad_options;
if (_local3){
_local4 = _local3.split("&");
_local5 = 0;
while (_local5 < _local4.length) {
_local6 = _local4[_local5].split("=");
_local2[unescape(_local6[0])] = unescape(_local6[1]);
_local5++;
};
};
return (_local2);
}
public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{
if (_arg1 != null){
if ((_arg1 is Sprite)){
_container = _arg1;
};
};
if (_arg2){
if ((_container is Sprite)){
Sprite(_container).addChild(_clip);
};
};
}
private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{
var args = _arg1;
var callbackObject = _arg2;
var callbackMethod = _arg3;
if (args != null){
if (args.onError != null){
args.onError.apply(null, ["NotConnected"]);
};
if (((!((args.options == null))) && (!((args.options.onError == null))))){
args.options.onError.apply(null, ["NotConnected"]);
};
};
if (callbackMethod != null){
args = {};
args.error = true;
args.errorCode = "NotConnected";
if (((!((callbackObject == null))) && ((callbackMethod is String)))){
try {
var _local5 = callbackObject;
_local5[callbackMethod](args);
} catch(error:Error) {
};
} else {
if (callbackMethod != null){
try {
callbackMethod.apply(args);
} catch(error:Error) {
};
};
};
};
}
private static function loadError(_arg1:Object):void{
_clip._mochiad_ctr_failed = true;
trace("MochiServices could not load.");
MochiServices.disconnect();
MochiServices.onError("IOError");
}
private static function initComChannels():void{
if (!_connected){
trace("[SERVICES_API] connected!");
_connecting = false;
_connected = true;
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"});
_mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL});
_clip.onReceive = onReceive;
_clip.onEvent = onEvent;
_clip.onError = function ():void{
MochiServices.onError("IOError");
};
while (_clip._queue.length > 0) {
_mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift());
};
};
}
private static function loadLCBridge(_arg1:Object):void{
var loader:Loader;
var clip = _arg1;
loader = new Loader();
var mochiLCURL:String = (_servURL + _mochiLC);
var req:URLRequest = new URLRequest(mochiLCURL);
var complete:Function = function (_arg1:Object):void{
_mochiLocalConnection = MovieClip(loader.content);
listen();
};
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
loader.load(req);
clip.addChild(loader);
}
private static function listen():void{
_mochiLocalConnection.connect(_listenChannelName);
_clip.handshake = function (_arg1:Object):void{
MochiServices.comChannelName = _arg1.newChannel;
};
trace("Waiting for MochiAds services to connect...");
}
public static function get clip():Object{
return (_container);
}
public static function set comChannelName(_arg1:String):void{
if (_arg1 != null){
if (_arg1.length > 3){
_sendChannelName = (_arg1 + "_fromgame");
initComChannels();
};
};
}
private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{
var _local3:String = ("_mochiservices_com_" + _arg1);
if (_clip != null){
return (_clip);
};
if (!MochiServices.isNetworkAvailable()){
return (null);
};
if (urlOptions(_arg2).servURL){
_servURL = urlOptions(_arg2).servURL;
};
var _local4:String = (_servURL + _services);
if (urlOptions(_arg2).servicesURL){
_local4 = urlOptions(_arg2).servicesURL;
};
_listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999))));
MochiServices.allowDomains(_local4);
_clip = createEmptyMovieClip(_arg2, _local3, 10336, false);
loadLCBridge(_clip);
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError);
var _local5:URLRequest = new URLRequest(_local4);
var _local6:URLVariables = new URLVariables();
_local6.listenLC = _listenChannelName;
_local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options;
_local6.api_version = getVersion();
if (widget){
_local6.widget = true;
};
_local5.data = _local6;
_loader.load(_local5);
_clip.addChild(_loader);
_clip._mochiservices_com = _loader;
_sendChannel = new LocalConnection();
_clip._queue = [];
_clip._nextcallbackID = 0;
_clip._callbacks = {};
_timer = new Timer(10000, 1);
_timer.addEventListener(TimerEvent.TIMER, connectWait);
_timer.start();
return (_clip);
}
public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{
var id = _arg1;
var clip = _arg2;
var onError = _arg3;
warnID(id, false);
if ((clip is DisplayObject)){
if (((!(_connected)) && ((_clip == null)))){
trace("MochiServices Connecting...");
_connecting = true;
init(id, clip);
};
} else {
trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage.");
};
if (onError != null){
MochiServices.onError = onError;
} else {
if (MochiServices.onError == null){
MochiServices.onError = function (_arg1:String):void{
trace(_arg1);
};
};
};
}
public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{
var parent = _arg1;
var name = _arg2;
var depth = _arg3;
var doAdd = _arg4;
var mc:MovieClip = new MovieClip();
if (doAdd){
if (((false) && (depth))){
parent.addChildAt(mc, depth);
} else {
parent.addChild(mc);
};
};
try {
parent[name] = mc;
} catch(e:Error) {
throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic."));
};
mc["_name"] = name;
return (mc);
}
public static function bringToTop(_arg1:Event=null):void{
var e = _arg1;
if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){
try {
if (MochiServices.clip.numChildren > 1){
MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1));
};
} catch(errorObject:Error) {
trace("Warning: Depth sort error.");
_container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop);
};
};
}
public static function connectWait(_arg1:TimerEvent):void{
if (!_connected){
_clip._mochiad_ctr_failed = true;
trace("MochiServices could not load. (timeout)");
MochiServices.disconnect();
MochiServices.onError("IOError");
};
}
}
}//package mochi.as3
Section 280
//MochiSync (mochi.as3.MochiSync)
package mochi.as3 {
import flash.utils.*;
public dynamic class MochiSync extends Proxy {
private var _syncContainer:Object;
public static var SYNC_PROPERTY:String = "UpdateProperty";
public static var SYNC_REQUEST:String = "SyncRequest";
public function MochiSync():void{
_syncContainer = {};
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{
if (_syncContainer[_arg1] == _arg2){
return;
};
var _local3:String = _arg1.toString();
_syncContainer[_local3] = _arg2;
MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2});
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){
return (_syncContainer[_arg1]);
}
public function triggerEvent(_arg1:String, _arg2:Object):void{
switch (_arg1){
case SYNC_REQUEST:
MochiServices.send("sync_syncronize", _syncContainer);
break;
case SYNC_PROPERTY:
_syncContainer[_arg2.name] = _arg2.value;
break;
};
}
}
}//package mochi.as3
Section 281
//ByteArrayAsset (mx.core.ByteArrayAsset)
package mx.core {
import flash.utils.*;
public class ByteArrayAsset extends ByteArray implements IFlexAsset {
mx_internal static const VERSION:String = "3.3.0.4852";
}
}//package mx.core
Section 282
//EdgeMetrics (mx.core.EdgeMetrics)
package mx.core {
public class EdgeMetrics {
public var top:Number;
public var left:Number;
public var bottom:Number;
public var right:Number;
mx_internal static const VERSION:String = "3.3.0.4852";
public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0);
;
public function EdgeMetrics(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0){
this.left = _arg1;
this.top = _arg2;
this.right = _arg3;
this.bottom = _arg4;
}
public function clone():EdgeMetrics{
return (new EdgeMetrics(left, top, right, bottom));
}
}
}//package mx.core
Section 283
//FlexLoader (mx.core.FlexLoader)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexLoader extends Loader {
mx_internal static const VERSION:String = "3.3.0.4852";
public function FlexLoader(){
super();
try {
name = NameUtil.createUniqueName(this);
} catch(e:Error) {
};
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 284
//FlexShape (mx.core.FlexShape)
package mx.core {
import flash.display.*;
import mx.utils.*;
public class FlexShape extends Shape {
mx_internal static const VERSION:String = "3.3.0.4852";
public function FlexShape(){
super();
try {
name = NameUtil.createUniqueName(this);
} catch(e:Error) {
};
}
override public function toString():String{
return (NameUtil.displayObjectToString(this));
}
}
}//package mx.core
Section 285
//FlexVersion (mx.core.FlexVersion)
package mx.core {
import mx.resources.*;
public class FlexVersion {
public static const VERSION_2_0_1:uint = 33554433;
public static const CURRENT_VERSION:uint = 50331648;
public static const VERSION_3_0:uint = 50331648;
public static const VERSION_2_0:uint = 33554432;
public static const VERSION_ALREADY_READ:String = "versionAlreadyRead";
public static const VERSION_ALREADY_SET:String = "versionAlreadySet";
mx_internal static const VERSION:String = "3.3.0.4852";
private static var compatibilityVersionChanged:Boolean = false;
private static var _compatibilityErrorFunction:Function;
private static var _compatibilityVersion:uint = 50331648;
private static var compatibilityVersionRead:Boolean = false;
mx_internal static function changeCompatibilityVersionString(_arg1:String):void{
var _local2:Array = _arg1.split(".");
var _local3:uint = parseInt(_local2[0]);
var _local4:uint = parseInt(_local2[1]);
var _local5:uint = parseInt(_local2[2]);
_compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5);
}
public static function set compatibilityVersion(_arg1:uint):void{
var _local2:String;
if (_arg1 == _compatibilityVersion){
return;
};
if (compatibilityVersionChanged){
if (compatibilityErrorFunction == null){
_local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_SET);
throw (new Error(_local2));
};
compatibilityErrorFunction(_arg1, VERSION_ALREADY_SET);
};
if (compatibilityVersionRead){
if (compatibilityErrorFunction == null){
_local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_READ);
throw (new Error(_local2));
};
compatibilityErrorFunction(_arg1, VERSION_ALREADY_READ);
};
_compatibilityVersion = _arg1;
compatibilityVersionChanged = true;
}
public static function get compatibilityVersion():uint{
compatibilityVersionRead = true;
return (_compatibilityVersion);
}
public static function set compatibilityErrorFunction(_arg1:Function):void{
_compatibilityErrorFunction = _arg1;
}
public static function set compatibilityVersionString(_arg1:String):void{
var _local2:Array = _arg1.split(".");
var _local3:uint = parseInt(_local2[0]);
var _local4:uint = parseInt(_local2[1]);
var _local5:uint = parseInt(_local2[2]);
compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5);
}
public static function get compatibilityErrorFunction():Function{
return (_compatibilityErrorFunction);
}
public static function get compatibilityVersionString():String{
var _local1:uint = ((compatibilityVersion >> 24) & 0xFF);
var _local2:uint = ((compatibilityVersion >> 16) & 0xFF);
var _local3:uint = (compatibilityVersion & 0xFFFF);
return (((((_local1.toString() + ".") + _local2.toString()) + ".") + _local3.toString()));
}
}
}//package mx.core
Section 286
//IBorder (mx.core.IBorder)
package mx.core {
public interface IBorder {
function get borderMetrics():EdgeMetrics;
}
}//package mx.core
Section 287
//IButton (mx.core.IButton)
package mx.core {
public interface IButton extends IUIComponent {
function get emphasized():Boolean;
function set emphasized(_arg1:Boolean):void;
function callLater(_arg1:Function, _arg2:Array=null):void;
}
}//package mx.core
Section 288
//IChildList (mx.core.IChildList)
package mx.core {
import flash.display.*;
import flash.geom.*;
public interface IChildList {
function get numChildren():int;
function removeChild(_arg1:DisplayObject):DisplayObject;
function getChildByName(_arg1:String):DisplayObject;
function removeChildAt(_arg1:int):DisplayObject;
function getChildIndex(_arg1:DisplayObject):int;
function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject;
function getObjectsUnderPoint(_arg1:Point):Array;
function setChildIndex(_arg1:DisplayObject, _arg2:int):void;
function getChildAt(_arg1:int):DisplayObject;
function addChild(_arg1:DisplayObject):DisplayObject;
function contains(_arg1:DisplayObject):Boolean;
}
}//package mx.core
Section 289
//IContainer (mx.core.IContainer)
package mx.core {
import flash.display.*;
import flash.geom.*;
import mx.managers.*;
import flash.media.*;
import flash.text.*;
public interface IContainer extends IUIComponent {
function set hitArea(_arg1:Sprite):void;
function swapChildrenAt(_arg1:int, _arg2:int):void;
function getChildByName(_arg1:String):DisplayObject;
function get doubleClickEnabled():Boolean;
function get graphics():Graphics;
function get useHandCursor():Boolean;
function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject;
function set mouseChildren(_arg1:Boolean):void;
function set creatingContentPane(_arg1:Boolean):void;
function get textSnapshot():TextSnapshot;
function getChildIndex(_arg1:DisplayObject):int;
function set doubleClickEnabled(_arg1:Boolean):void;
function getObjectsUnderPoint(_arg1:Point):Array;
function get creatingContentPane():Boolean;
function setChildIndex(_arg1:DisplayObject, _arg2:int):void;
function get soundTransform():SoundTransform;
function set useHandCursor(_arg1:Boolean):void;
function get numChildren():int;
function contains(_arg1:DisplayObject):Boolean;
function get verticalScrollPosition():Number;
function set defaultButton(_arg1:IFlexDisplayObject):void;
function swapChildren(_arg1:DisplayObject, _arg2:DisplayObject):void;
function set horizontalScrollPosition(_arg1:Number):void;
function get focusManager():IFocusManager;
function startDrag(_arg1:Boolean=false, _arg2:Rectangle=null):void;
function set mouseEnabled(_arg1:Boolean):void;
function getChildAt(_arg1:int):DisplayObject;
function set soundTransform(_arg1:SoundTransform):void;
function get tabChildren():Boolean;
function get tabIndex():int;
function set focusRect(_arg1:Object):void;
function get hitArea():Sprite;
function get mouseChildren():Boolean;
function removeChildAt(_arg1:int):DisplayObject;
function get defaultButton():IFlexDisplayObject;
function stopDrag():void;
function set tabEnabled(_arg1:Boolean):void;
function get horizontalScrollPosition():Number;
function get focusRect():Object;
function get viewMetrics():EdgeMetrics;
function set verticalScrollPosition(_arg1:Number):void;
function get dropTarget():DisplayObject;
function get mouseEnabled():Boolean;
function set tabChildren(_arg1:Boolean):void;
function set buttonMode(_arg1:Boolean):void;
function get tabEnabled():Boolean;
function get buttonMode():Boolean;
function removeChild(_arg1:DisplayObject):DisplayObject;
function set tabIndex(_arg1:int):void;
function addChild(_arg1:DisplayObject):DisplayObject;
function areInaccessibleObjectsUnderPoint(_arg1:Point):Boolean;
}
}//package mx.core
Section 290
//IFlexAsset (mx.core.IFlexAsset)
package mx.core {
public interface IFlexAsset {
}
}//package mx.core
Section 291
//IFlexDisplayObject (mx.core.IFlexDisplayObject)
package mx.core {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.accessibility.*;
public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher {
function get visible():Boolean;
function get rotation():Number;
function localToGlobal(_arg1:Point):Point;
function get name():String;
function set width(_arg1:Number):void;
function get measuredHeight():Number;
function get blendMode():String;
function get scale9Grid():Rectangle;
function set name(_arg1:String):void;
function set scaleX(_arg1:Number):void;
function set scaleY(_arg1:Number):void;
function get measuredWidth():Number;
function get accessibilityProperties():AccessibilityProperties;
function set scrollRect(_arg1:Rectangle):void;
function get cacheAsBitmap():Boolean;
function globalToLocal(_arg1:Point):Point;
function get height():Number;
function set blendMode(_arg1:String):void;
function get parent():DisplayObjectContainer;
function getBounds(_arg1:DisplayObject):Rectangle;
function get opaqueBackground():Object;
function set scale9Grid(_arg1:Rectangle):void;
function setActualSize(_arg1:Number, _arg2:Number):void;
function set alpha(_arg1:Number):void;
function set accessibilityProperties(_arg1:AccessibilityProperties):void;
function get width():Number;
function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean;
function set cacheAsBitmap(_arg1:Boolean):void;
function get scaleX():Number;
function get scaleY():Number;
function get scrollRect():Rectangle;
function get mouseX():Number;
function get mouseY():Number;
function set height(_arg1:Number):void;
function set mask(_arg1:DisplayObject):void;
function getRect(_arg1:DisplayObject):Rectangle;
function get alpha():Number;
function set transform(_arg1:Transform):void;
function move(_arg1:Number, _arg2:Number):void;
function get loaderInfo():LoaderInfo;
function get root():DisplayObject;
function hitTestObject(_arg1:DisplayObject):Boolean;
function set opaqueBackground(_arg1:Object):void;
function set visible(_arg1:Boolean):void;
function get mask():DisplayObject;
function set x(_arg1:Number):void;
function set y(_arg1:Number):void;
function get transform():Transform;
function set filters(_arg1:Array):void;
function get x():Number;
function get y():Number;
function get filters():Array;
function set rotation(_arg1:Number):void;
function get stage():Stage;
}
}//package mx.core
Section 292
//IFlexModuleFactory (mx.core.IFlexModuleFactory)
package mx.core {
public interface IFlexModuleFactory {
function create(... _args):Object;
function info():Object;
}
}//package mx.core
Section 293
//IInvalidating (mx.core.IInvalidating)
package mx.core {
public interface IInvalidating {
function validateNow():void;
function invalidateSize():void;
function invalidateDisplayList():void;
function invalidateProperties():void;
}
}//package mx.core
Section 294
//IProgrammaticSkin (mx.core.IProgrammaticSkin)
package mx.core {
public interface IProgrammaticSkin {
function validateNow():void;
function validateDisplayList():void;
}
}//package mx.core
Section 295
//IRawChildrenContainer (mx.core.IRawChildrenContainer)
package mx.core {
public interface IRawChildrenContainer {
function get rawChildren():IChildList;
}
}//package mx.core
Section 296
//IRectangularBorder (mx.core.IRectangularBorder)
package mx.core {
import flash.geom.*;
public interface IRectangularBorder extends IBorder {
function get backgroundImageBounds():Rectangle;
function get hasBackgroundImage():Boolean;
function set backgroundImageBounds(_arg1:Rectangle):void;
function layoutBackgroundImage():void;
}
}//package mx.core
Section 297
//IRepeaterClient (mx.core.IRepeaterClient)
package mx.core {
public interface IRepeaterClient {
function get instanceIndices():Array;
function set instanceIndices(_arg1:Array):void;
function get isDocument():Boolean;
function set repeaters(_arg1:Array):void;
function initializeRepeaterArrays(_arg1:IRepeaterClient):void;
function get repeaters():Array;
function set repeaterIndices(_arg1:Array):void;
function get repeaterIndices():Array;
}
}//package mx.core
Section 298
//ISWFBridgeGroup (mx.core.ISWFBridgeGroup)
package mx.core {
import flash.events.*;
public interface ISWFBridgeGroup {
function getChildBridgeProvider(_arg1:IEventDispatcher):ISWFBridgeProvider;
function removeChildBridge(_arg1:IEventDispatcher):void;
function get parentBridge():IEventDispatcher;
function addChildBridge(_arg1:IEventDispatcher, _arg2:ISWFBridgeProvider):void;
function set parentBridge(_arg1:IEventDispatcher):void;
function containsBridge(_arg1:IEventDispatcher):Boolean;
function getChildBridges():Array;
}
}//package mx.core
Section 299
//ISWFBridgeProvider (mx.core.ISWFBridgeProvider)
package mx.core {
import flash.events.*;
public interface ISWFBridgeProvider {
function get childAllowsParent():Boolean;
function get swfBridge():IEventDispatcher;
function get parentAllowsChild():Boolean;
}
}//package mx.core
Section 300
//IUIComponent (mx.core.IUIComponent)
package mx.core {
import flash.display.*;
import mx.managers.*;
public interface IUIComponent extends IFlexDisplayObject {
function set focusPane(_arg1:Sprite):void;
function get enabled():Boolean;
function set enabled(_arg1:Boolean):void;
function set isPopUp(_arg1:Boolean):void;
function get explicitMinHeight():Number;
function get percentWidth():Number;
function get isPopUp():Boolean;
function get owner():DisplayObjectContainer;
function get percentHeight():Number;
function get baselinePosition():Number;
function owns(_arg1:DisplayObject):Boolean;
function initialize():void;
function get maxWidth():Number;
function get minWidth():Number;
function getExplicitOrMeasuredWidth():Number;
function get explicitMaxWidth():Number;
function get explicitMaxHeight():Number;
function set percentHeight(_arg1:Number):void;
function get minHeight():Number;
function set percentWidth(_arg1:Number):void;
function get document():Object;
function get focusPane():Sprite;
function getExplicitOrMeasuredHeight():Number;
function set tweeningProperties(_arg1:Array):void;
function set explicitWidth(_arg1:Number):void;
function set measuredMinHeight(_arg1:Number):void;
function get explicitMinWidth():Number;
function get tweeningProperties():Array;
function get maxHeight():Number;
function set owner(_arg1:DisplayObjectContainer):void;
function set includeInLayout(_arg1:Boolean):void;
function setVisible(_arg1:Boolean, _arg2:Boolean=false):void;
function parentChanged(_arg1:DisplayObjectContainer):void;
function get explicitWidth():Number;
function get measuredMinHeight():Number;
function set measuredMinWidth(_arg1:Number):void;
function set explicitHeight(_arg1:Number):void;
function get includeInLayout():Boolean;
function get measuredMinWidth():Number;
function get explicitHeight():Number;
function set systemManager(_arg1:ISystemManager):void;
function set document(_arg1:Object):void;
function get systemManager():ISystemManager;
}
}//package mx.core
Section 301
//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 302
//Singleton (mx.core.Singleton)
package mx.core {
public class Singleton {
mx_internal static const VERSION:String = "3.3.0.4852";
private static var classMap:Object = {};
public static function registerClass(_arg1:String, _arg2:Class):void{
var _local3:Class = classMap[_arg1];
if (!_local3){
classMap[_arg1] = _arg2;
};
}
public static function getClass(_arg1:String):Class{
return (classMap[_arg1]);
}
public static function getInstance(_arg1:String):Object{
var _local2:Class = classMap[_arg1];
if (!_local2){
throw (new Error((("No class registered for interface '" + _arg1) + "'.")));
};
return (_local2["getInstance"]());
}
}
}//package mx.core
Section 303
//UIComponentGlobals (mx.core.UIComponentGlobals)
package mx.core {
import flash.display.*;
import flash.geom.*;
import mx.managers.*;
public class UIComponentGlobals {
mx_internal static var callLaterSuspendCount:int = 0;
mx_internal static var layoutManager:ILayoutManager;
mx_internal static var nextFocusObject:InteractiveObject;
mx_internal static var designTime:Boolean = false;
mx_internal static var tempMatrix:Matrix = new Matrix();
mx_internal static var callLaterDispatcherCount:int = 0;
private static var _catchCallLaterExceptions:Boolean = false;
public static function set catchCallLaterExceptions(_arg1:Boolean):void{
_catchCallLaterExceptions = _arg1;
}
public static function get designMode():Boolean{
return (designTime);
}
public static function set designMode(_arg1:Boolean):void{
designTime = _arg1;
}
public static function get catchCallLaterExceptions():Boolean{
return (_catchCallLaterExceptions);
}
}
}//package mx.core
Section 304
//ModuleEvent (mx.events.ModuleEvent)
package mx.events {
import flash.events.*;
import mx.modules.*;
public class ModuleEvent extends ProgressEvent {
public var errorText:String;
private var _module:IModuleInfo;
public static const READY:String = "ready";
public static const ERROR:String = "error";
public static const PROGRESS:String = "progress";
mx_internal static const VERSION:String = "3.3.0.4852";
public static const SETUP:String = "setup";
public static const UNLOAD:String = "unload";
public function ModuleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null, _arg7:IModuleInfo=null){
super(_arg1, _arg2, _arg3, _arg4, _arg5);
this.errorText = _arg6;
this._module = _arg7;
}
public function get module():IModuleInfo{
if (_module){
return (_module);
};
return ((target as IModuleInfo));
}
override public function clone():Event{
return (new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module));
}
}
}//package mx.events
Section 305
//PropertyChangeEvent (mx.events.PropertyChangeEvent)
package mx.events {
import flash.events.*;
import mx.core.*;
public class PropertyChangeEvent extends Event {
public var newValue:Object;
public var kind:String;
public var property:Object;
public var oldValue:Object;
public var source:Object;
mx_internal static const VERSION:String = "3.3.0.4852";
public static const PROPERTY_CHANGE:String = "propertyChange";
public function PropertyChangeEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:String=null, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Object=null){
super(_arg1, _arg2, _arg3);
this.kind = _arg4;
this.property = _arg5;
this.oldValue = _arg6;
this.newValue = _arg7;
this.source = _arg8;
}
override public function clone():Event{
return (new PropertyChangeEvent(type, bubbles, cancelable, kind, property, oldValue, newValue, source));
}
public static function createUpdateEvent(_arg1:Object, _arg2:Object, _arg3:Object, _arg4:Object):PropertyChangeEvent{
var _local5:PropertyChangeEvent = new PropertyChangeEvent(PROPERTY_CHANGE);
_local5.kind = PropertyChangeEventKind.UPDATE;
_local5.oldValue = _arg3;
_local5.newValue = _arg4;
_local5.source = _arg1;
_local5.property = _arg2;
return (_local5);
}
}
}//package mx.events
Section 306
//PropertyChangeEventKind (mx.events.PropertyChangeEventKind)
package mx.events {
import mx.core.*;
public final class PropertyChangeEventKind {
mx_internal static const VERSION:String = "3.3.0.4852";
public static const UPDATE:String = "update";
public static const DELETE:String = "delete";
}
}//package mx.events
Section 307
//ResourceEvent (mx.events.ResourceEvent)
package mx.events {
import flash.events.*;
public class ResourceEvent extends ProgressEvent {
public var errorText:String;
mx_internal static const VERSION:String = "3.3.0.4852";
public static const COMPLETE:String = "complete";
public static const PROGRESS:String = "progress";
public static const ERROR:String = "error";
public function ResourceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){
super(_arg1, _arg2, _arg3, _arg4, _arg5);
this.errorText = _arg6;
}
override public function clone():Event{
return (new ResourceEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText));
}
}
}//package mx.events
Section 308
//StyleEvent (mx.events.StyleEvent)
package mx.events {
import flash.events.*;
public class StyleEvent extends ProgressEvent {
public var errorText:String;
mx_internal static const VERSION:String = "3.3.0.4852";
public static const COMPLETE:String = "complete";
public static const PROGRESS:String = "progress";
public static const ERROR:String = "error";
public function StyleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){
super(_arg1, _arg2, _arg3, _arg4, _arg5);
this.errorText = _arg6;
}
override public function clone():Event{
return (new StyleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText));
}
}
}//package mx.events
Section 309
//RectangularDropShadow (mx.graphics.RectangularDropShadow)
package mx.graphics {
import mx.core.*;
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
import mx.utils.*;
public class RectangularDropShadow {
private var leftShadow:BitmapData;
private var _tlRadius:Number;// = 0
private var _trRadius:Number;// = 0
private var _angle:Number;// = 45
private var topShadow:BitmapData;
private var _distance:Number;// = 4
private var rightShadow:BitmapData;
private var _alpha:Number;// = 0.4
private var shadow:BitmapData;
private var _brRadius:Number;// = 0
private var _blRadius:Number;// = 0
private var _color:int;// = 0
private var bottomShadow:BitmapData;
private var changed:Boolean;// = true
mx_internal static const VERSION:String = "3.3.0.4852";
public function get blRadius():Number{
return (_blRadius);
}
public function set brRadius(_arg1:Number):void{
if (_brRadius != _arg1){
_brRadius = _arg1;
changed = true;
};
}
public function set color(_arg1:int):void{
if (_color != _arg1){
_color = _arg1;
changed = true;
};
}
public function drawShadow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Number;
var _local21:Number;
var _local22:Number;
if (changed){
createShadowBitmaps();
changed = false;
};
_arg4 = Math.ceil(_arg4);
_arg5 = Math.ceil(_arg5);
var _local6:int = (leftShadow) ? leftShadow.width : 0;
var _local7:int = (rightShadow) ? rightShadow.width : 0;
var _local8:int = (topShadow) ? topShadow.height : 0;
var _local9:int = (bottomShadow) ? bottomShadow.height : 0;
var _local10:int = (_local6 + _local7);
var _local11:int = (_local8 + _local9);
var _local12:Number = ((_arg5 + _local11) / 2);
var _local13:Number = ((_arg4 + _local10) / 2);
var _local14:Matrix = new Matrix();
if (((leftShadow) || (topShadow))){
_local15 = Math.min((tlRadius + _local10), _local13);
_local16 = Math.min((tlRadius + _local11), _local12);
_local14.tx = (_arg2 - _local6);
_local14.ty = (_arg3 - _local8);
_arg1.beginBitmapFill(shadow, _local14);
_arg1.drawRect((_arg2 - _local6), (_arg3 - _local8), _local15, _local16);
_arg1.endFill();
};
if (((rightShadow) || (topShadow))){
_local17 = Math.min((trRadius + _local10), _local13);
_local18 = Math.min((trRadius + _local11), _local12);
_local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width);
_local14.ty = (_arg3 - _local8);
_arg1.beginBitmapFill(shadow, _local14);
_arg1.drawRect((((_arg2 + _arg4) + _local7) - _local17), (_arg3 - _local8), _local17, _local18);
_arg1.endFill();
};
if (((leftShadow) || (bottomShadow))){
_local19 = Math.min((blRadius + _local10), _local13);
_local20 = Math.min((blRadius + _local11), _local12);
_local14.tx = (_arg2 - _local6);
_local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height);
_arg1.beginBitmapFill(shadow, _local14);
_arg1.drawRect((_arg2 - _local6), (((_arg3 + _arg5) + _local9) - _local20), _local19, _local20);
_arg1.endFill();
};
if (((rightShadow) || (bottomShadow))){
_local21 = Math.min((brRadius + _local10), _local13);
_local22 = Math.min((brRadius + _local11), _local12);
_local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width);
_local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height);
_arg1.beginBitmapFill(shadow, _local14);
_arg1.drawRect((((_arg2 + _arg4) + _local7) - _local21), (((_arg3 + _arg5) + _local9) - _local22), _local21, _local22);
_arg1.endFill();
};
if (leftShadow){
_local14.tx = (_arg2 - _local6);
_local14.ty = 0;
_arg1.beginBitmapFill(leftShadow, _local14);
_arg1.drawRect((_arg2 - _local6), ((_arg3 - _local8) + _local16), _local6, ((((_arg5 + _local8) + _local9) - _local16) - _local20));
_arg1.endFill();
};
if (rightShadow){
_local14.tx = (_arg2 + _arg4);
_local14.ty = 0;
_arg1.beginBitmapFill(rightShadow, _local14);
_arg1.drawRect((_arg2 + _arg4), ((_arg3 - _local8) + _local18), _local7, ((((_arg5 + _local8) + _local9) - _local18) - _local22));
_arg1.endFill();
};
if (topShadow){
_local14.tx = 0;
_local14.ty = (_arg3 - _local8);
_arg1.beginBitmapFill(topShadow, _local14);
_arg1.drawRect(((_arg2 - _local6) + _local15), (_arg3 - _local8), ((((_arg4 + _local6) + _local7) - _local15) - _local17), _local8);
_arg1.endFill();
};
if (bottomShadow){
_local14.tx = 0;
_local14.ty = (_arg3 + _arg5);
_arg1.beginBitmapFill(bottomShadow, _local14);
_arg1.drawRect(((_arg2 - _local6) + _local19), (_arg3 + _arg5), ((((_arg4 + _local6) + _local7) - _local19) - _local21), _local9);
_arg1.endFill();
};
}
public function get brRadius():Number{
return (_brRadius);
}
public function get angle():Number{
return (_angle);
}
private function createShadowBitmaps():void{
var _local1:Number = ((Math.max(tlRadius, blRadius) + (2 * distance)) + Math.max(trRadius, brRadius));
var _local2:Number = ((Math.max(tlRadius, trRadius) + (2 * distance)) + Math.max(blRadius, brRadius));
if ((((_local1 < 0)) || ((_local2 < 0)))){
return;
};
var _local3:Shape = new FlexShape();
var _local4:Graphics = _local3.graphics;
_local4.beginFill(0xFFFFFF);
GraphicsUtil.drawRoundRectComplex(_local4, 0, 0, _local1, _local2, tlRadius, trRadius, blRadius, brRadius);
_local4.endFill();
var _local5:BitmapData = new BitmapData(_local1, _local2, true, 0);
_local5.draw(_local3, new Matrix());
var _local6:DropShadowFilter = new DropShadowFilter(distance, angle, color, alpha);
_local6.knockout = true;
var _local7:Rectangle = new Rectangle(0, 0, _local1, _local2);
var _local8:Rectangle = _local5.generateFilterRect(_local7, _local6);
var _local9:Number = (_local7.left - _local8.left);
var _local10:Number = (_local8.right - _local7.right);
var _local11:Number = (_local7.top - _local8.top);
var _local12:Number = (_local8.bottom - _local7.bottom);
shadow = new BitmapData(_local8.width, _local8.height);
shadow.applyFilter(_local5, _local7, new Point(_local9, _local11), _local6);
var _local13:Point = new Point(0, 0);
var _local14:Rectangle = new Rectangle();
if (_local9 > 0){
_local14.x = 0;
_local14.y = ((tlRadius + _local11) + _local12);
_local14.width = _local9;
_local14.height = 1;
leftShadow = new BitmapData(_local9, 1);
leftShadow.copyPixels(shadow, _local14, _local13);
} else {
leftShadow = null;
};
if (_local10 > 0){
_local14.x = (shadow.width - _local10);
_local14.y = ((trRadius + _local11) + _local12);
_local14.width = _local10;
_local14.height = 1;
rightShadow = new BitmapData(_local10, 1);
rightShadow.copyPixels(shadow, _local14, _local13);
} else {
rightShadow = null;
};
if (_local11 > 0){
_local14.x = ((tlRadius + _local9) + _local10);
_local14.y = 0;
_local14.width = 1;
_local14.height = _local11;
topShadow = new BitmapData(1, _local11);
topShadow.copyPixels(shadow, _local14, _local13);
} else {
topShadow = null;
};
if (_local12 > 0){
_local14.x = ((blRadius + _local9) + _local10);
_local14.y = (shadow.height - _local12);
_local14.width = 1;
_local14.height = _local12;
bottomShadow = new BitmapData(1, _local12);
bottomShadow.copyPixels(shadow, _local14, _local13);
} else {
bottomShadow = null;
};
}
public function get alpha():Number{
return (_alpha);
}
public function get color():int{
return (_color);
}
public function set angle(_arg1:Number):void{
if (_angle != _arg1){
_angle = _arg1;
changed = true;
};
}
public function set trRadius(_arg1:Number):void{
if (_trRadius != _arg1){
_trRadius = _arg1;
changed = true;
};
}
public function set tlRadius(_arg1:Number):void{
if (_tlRadius != _arg1){
_tlRadius = _arg1;
changed = true;
};
}
public function get trRadius():Number{
return (_trRadius);
}
public function set distance(_arg1:Number):void{
if (_distance != _arg1){
_distance = _arg1;
changed = true;
};
}
public function get distance():Number{
return (_distance);
}
public function get tlRadius():Number{
return (_tlRadius);
}
public function set alpha(_arg1:Number):void{
if (_alpha != _arg1){
_alpha = _arg1;
changed = true;
};
}
public function set blRadius(_arg1:Number):void{
if (_blRadius != _arg1){
_blRadius = _arg1;
changed = true;
};
}
}
}//package mx.graphics
Section 310
//IFocusManager (mx.managers.IFocusManager)
package mx.managers {
import flash.events.*;
import mx.core.*;
import flash.display.*;
public interface IFocusManager {
function get focusPane():Sprite;
function getFocus():IFocusManagerComponent;
function deactivate():void;
function set defaultButton(_arg1:IButton):void;
function set focusPane(_arg1:Sprite):void;
function set showFocusIndicator(_arg1:Boolean):void;
function moveFocus(_arg1:String, _arg2:DisplayObject=null):void;
function addSWFBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void;
function removeSWFBridge(_arg1:IEventDispatcher):void;
function get defaultButtonEnabled():Boolean;
function findFocusManagerComponent(_arg1:InteractiveObject):IFocusManagerComponent;
function get nextTabIndex():int;
function get defaultButton():IButton;
function get showFocusIndicator():Boolean;
function setFocus(_arg1:IFocusManagerComponent):void;
function activate():void;
function showFocus():void;
function set defaultButtonEnabled(_arg1:Boolean):void;
function hideFocus():void;
function getNextFocusManagerComponent(_arg1:Boolean=false):IFocusManagerComponent;
}
}//package mx.managers
Section 311
//IFocusManagerComponent (mx.managers.IFocusManagerComponent)
package mx.managers {
public interface IFocusManagerComponent {
function set focusEnabled(_arg1:Boolean):void;
function drawFocus(_arg1:Boolean):void;
function setFocus():void;
function get focusEnabled():Boolean;
function get tabEnabled():Boolean;
function get tabIndex():int;
function get mouseFocusEnabled():Boolean;
}
}//package mx.managers
Section 312
//IFocusManagerContainer (mx.managers.IFocusManagerContainer)
package mx.managers {
import flash.events.*;
import flash.display.*;
public interface IFocusManagerContainer extends IEventDispatcher {
function set focusManager(_arg1:IFocusManager):void;
function get focusManager():IFocusManager;
function get systemManager():ISystemManager;
function contains(_arg1:DisplayObject):Boolean;
}
}//package mx.managers
Section 313
//ILayoutManager (mx.managers.ILayoutManager)
package mx.managers {
import flash.events.*;
public interface ILayoutManager extends IEventDispatcher {
function validateNow():void;
function validateClient(_arg1:ILayoutManagerClient, _arg2:Boolean=false):void;
function isInvalid():Boolean;
function invalidateDisplayList(_arg1:ILayoutManagerClient):void;
function set usePhasedInstantiation(_arg1:Boolean):void;
function invalidateSize(_arg1:ILayoutManagerClient):void;
function get usePhasedInstantiation():Boolean;
function invalidateProperties(_arg1:ILayoutManagerClient):void;
}
}//package mx.managers
Section 314
//ILayoutManagerClient (mx.managers.ILayoutManagerClient)
package mx.managers {
import flash.events.*;
public interface ILayoutManagerClient extends IEventDispatcher {
function get updateCompletePendingFlag():Boolean;
function set updateCompletePendingFlag(_arg1:Boolean):void;
function set initialized(_arg1:Boolean):void;
function validateProperties():void;
function validateDisplayList():void;
function get nestLevel():int;
function get initialized():Boolean;
function get processedDescriptors():Boolean;
function validateSize(_arg1:Boolean=false):void;
function set nestLevel(_arg1:int):void;
function set processedDescriptors(_arg1:Boolean):void;
}
}//package mx.managers
Section 315
//ISystemManager (mx.managers.ISystemManager)
package mx.managers {
import flash.events.*;
import mx.core.*;
import flash.display.*;
import flash.geom.*;
import flash.text.*;
public interface ISystemManager extends IEventDispatcher, IChildList, IFlexModuleFactory {
function set focusPane(_arg1:Sprite):void;
function get toolTipChildren():IChildList;
function useSWFBridge():Boolean;
function isFontFaceEmbedded(_arg1:TextFormat):Boolean;
function deployMouseShields(_arg1:Boolean):void;
function get rawChildren():IChildList;
function get topLevelSystemManager():ISystemManager;
function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null, _arg3:Boolean=false, _arg4:Boolean=false):void;
function getSandboxRoot():DisplayObject;
function get swfBridgeGroup():ISWFBridgeGroup;
function removeFocusManager(_arg1:IFocusManagerContainer):void;
function addChildToSandboxRoot(_arg1:String, _arg2:DisplayObject):void;
function get document():Object;
function get focusPane():Sprite;
function get loaderInfo():LoaderInfo;
function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void;
function getTopLevelRoot():DisplayObject;
function removeChildBridge(_arg1:IEventDispatcher):void;
function isDisplayObjectInABridgedApplication(_arg1:DisplayObject):Boolean;
function get popUpChildren():IChildList;
function get screen():Rectangle;
function removeChildFromSandboxRoot(_arg1:String, _arg2:DisplayObject):void;
function getDefinitionByName(_arg1:String):Object;
function activate(_arg1:IFocusManagerContainer):void;
function deactivate(_arg1:IFocusManagerContainer):void;
function get cursorChildren():IChildList;
function set document(_arg1:Object):void;
function get embeddedFontList():Object;
function set numModalWindows(_arg1:int):void;
function isTopLevel():Boolean;
function isTopLevelRoot():Boolean;
function get numModalWindows():int;
function addFocusManager(_arg1:IFocusManagerContainer):void;
function get stage():Stage;
function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle;
}
}//package mx.managers
Section 316
//SystemManagerGlobals (mx.managers.SystemManagerGlobals)
package mx.managers {
public class SystemManagerGlobals {
public static var topLevelSystemManagers:Array = [];
public static var changingListenersInOtherSystemManagers:Boolean;
public static var bootstrapLoaderInfoURL:String;
public static var showMouseCursor:Boolean;
}
}//package mx.managers
Section 317
//IModuleInfo (mx.modules.IModuleInfo)
package mx.modules {
import flash.events.*;
import mx.core.*;
import flash.system.*;
import flash.utils.*;
public interface IModuleInfo extends IEventDispatcher {
function get ready():Boolean;
function get loaded():Boolean;
function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void;
function release():void;
function get error():Boolean;
function get data():Object;
function publish(_arg1:IFlexModuleFactory):void;
function get factory():IFlexModuleFactory;
function set data(_arg1:Object):void;
function get url():String;
function get setup():Boolean;
function unload():void;
}
}//package mx.modules
Section 318
//ModuleManager (mx.modules.ModuleManager)
package mx.modules {
import mx.core.*;
public class ModuleManager {
mx_internal static const VERSION:String = "3.3.0.4852";
public static function getModule(_arg1:String):IModuleInfo{
return (getSingleton().getModule(_arg1));
}
private static function getSingleton():Object{
if (!ModuleManagerGlobals.managerSingleton){
ModuleManagerGlobals.managerSingleton = new ModuleManagerImpl();
};
return (ModuleManagerGlobals.managerSingleton);
}
public static function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{
return (getSingleton().getAssociatedFactory(_arg1));
}
}
}//package mx.modules
import flash.events.*;
import mx.core.*;
import flash.display.*;
import flash.system.*;
import mx.events.*;
import flash.utils.*;
import flash.net.*;
class ModuleInfoProxy extends EventDispatcher implements IModuleInfo {
private var _data:Object;
private var info:ModuleInfo;
private var referenced:Boolean;// = false
private function ModuleInfoProxy(_arg1:ModuleInfo){
this.info = _arg1;
_arg1.addEventListener(ModuleEvent.SETUP, moduleEventHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.PROGRESS, moduleEventHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.READY, moduleEventHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.ERROR, moduleEventHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.UNLOAD, moduleEventHandler, false, 0, true);
}
public function get loaded():Boolean{
return (info.loaded);
}
public function release():void{
if (referenced){
info.removeReference();
referenced = false;
};
}
public function get error():Boolean{
return (info.error);
}
public function get factory():IFlexModuleFactory{
return (info.factory);
}
public function publish(_arg1:IFlexModuleFactory):void{
info.publish(_arg1);
}
public function set data(_arg1:Object):void{
_data = _arg1;
}
public function get ready():Boolean{
return (info.ready);
}
public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{
var _local4:ModuleEvent;
info.resurrect();
if (!referenced){
info.addReference();
referenced = true;
};
if (info.error){
dispatchEvent(new ModuleEvent(ModuleEvent.ERROR));
} else {
if (info.loaded){
if (info.setup){
dispatchEvent(new ModuleEvent(ModuleEvent.SETUP));
if (info.ready){
_local4 = new ModuleEvent(ModuleEvent.PROGRESS);
_local4.bytesLoaded = info.size;
_local4.bytesTotal = info.size;
dispatchEvent(_local4);
dispatchEvent(new ModuleEvent(ModuleEvent.READY));
};
};
} else {
info.load(_arg1, _arg2, _arg3);
};
};
}
private function moduleEventHandler(_arg1:ModuleEvent):void{
dispatchEvent(_arg1);
}
public function get url():String{
return (info.url);
}
public function get data():Object{
return (_data);
}
public function get setup():Boolean{
return (info.setup);
}
public function unload():void{
info.unload();
info.removeEventListener(ModuleEvent.SETUP, moduleEventHandler);
info.removeEventListener(ModuleEvent.PROGRESS, moduleEventHandler);
info.removeEventListener(ModuleEvent.READY, moduleEventHandler);
info.removeEventListener(ModuleEvent.ERROR, moduleEventHandler);
info.removeEventListener(ModuleEvent.UNLOAD, moduleEventHandler);
}
}
class ModuleManagerImpl extends EventDispatcher {
private var moduleList:Object;
private function ModuleManagerImpl(){
moduleList = {};
super();
}
public function getModule(_arg1:String):IModuleInfo{
var _local2:ModuleInfo = (moduleList[_arg1] as ModuleInfo);
if (!_local2){
_local2 = new ModuleInfo(_arg1);
moduleList[_arg1] = _local2;
};
return (new ModuleInfoProxy(_local2));
}
public function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{
var m:Object;
var info:ModuleInfo;
var domain:ApplicationDomain;
var cls:Class;
var object = _arg1;
var className:String = getQualifiedClassName(object);
for each (m in moduleList) {
info = (m as ModuleInfo);
if (!info.ready){
} else {
domain = info.applicationDomain;
try {
cls = Class(domain.getDefinition(className));
if ((object is cls)){
return (info.factory);
};
} catch(error:Error) {
};
};
};
return (null);
}
}
class ModuleInfo extends EventDispatcher {
private var _error:Boolean;// = false
private var loader:Loader;
private var factoryInfo:FactoryInfo;
private var limbo:Dictionary;
private var _loaded:Boolean;// = false
private var _ready:Boolean;// = false
private var numReferences:int;// = 0
private var _url:String;
private var _setup:Boolean;// = false
private function ModuleInfo(_arg1:String){
_url = _arg1;
}
private function clearLoader():void{
if (loader){
if (loader.contentLoaderInfo){
loader.contentLoaderInfo.removeEventListener(Event.INIT, initHandler);
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler);
loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler);
};
try {
if (loader.content){
loader.content.removeEventListener("ready", readyHandler);
loader.content.removeEventListener("error", moduleErrorHandler);
};
} catch(error:Error) {
};
if (_loaded){
try {
loader.close();
} catch(error:Error) {
};
};
try {
loader.unload();
} catch(error:Error) {
};
loader = null;
};
}
public function get size():int{
return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.bytesTotal : 0);
}
public function get loaded():Boolean{
return ((limbo) ? false : _loaded);
}
public function release():void{
if (((_ready) && (!(limbo)))){
limbo = new Dictionary(true);
limbo[factoryInfo] = 1;
factoryInfo = null;
} else {
unload();
};
}
public function get error():Boolean{
return ((limbo) ? false : _error);
}
public function get factory():IFlexModuleFactory{
return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.factory : null);
}
public function completeHandler(_arg1:Event):void{
var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded;
_local2.bytesTotal = loader.contentLoaderInfo.bytesTotal;
dispatchEvent(_local2);
}
public function publish(_arg1:IFlexModuleFactory):void{
if (factoryInfo){
return;
};
if (_url.indexOf("published://") != 0){
return;
};
factoryInfo = new FactoryInfo();
factoryInfo.factory = _arg1;
_loaded = true;
_setup = true;
_ready = true;
_error = false;
dispatchEvent(new ModuleEvent(ModuleEvent.SETUP));
dispatchEvent(new ModuleEvent(ModuleEvent.PROGRESS));
dispatchEvent(new ModuleEvent(ModuleEvent.READY));
}
public function initHandler(_arg1:Event):void{
var moduleEvent:ModuleEvent;
var event = _arg1;
factoryInfo = new FactoryInfo();
try {
factoryInfo.factory = (loader.content as IFlexModuleFactory);
} catch(error:Error) {
};
if (!factoryInfo.factory){
moduleEvent = new ModuleEvent(ModuleEvent.ERROR, event.bubbles, event.cancelable);
moduleEvent.bytesLoaded = 0;
moduleEvent.bytesTotal = 0;
moduleEvent.errorText = "SWF is not a loadable module";
dispatchEvent(moduleEvent);
return;
};
loader.content.addEventListener("ready", readyHandler);
loader.content.addEventListener("error", moduleErrorHandler);
try {
factoryInfo.applicationDomain = loader.contentLoaderInfo.applicationDomain;
} catch(error:Error) {
};
_setup = true;
dispatchEvent(new ModuleEvent(ModuleEvent.SETUP));
}
public function resurrect():void{
var _local1:Object;
if (((!(factoryInfo)) && (limbo))){
for (_local1 in limbo) {
factoryInfo = (_local1 as FactoryInfo);
break;
};
limbo = null;
};
if (!factoryInfo){
if (_loaded){
dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD));
};
loader = null;
_loaded = false;
_setup = false;
_ready = false;
_error = false;
};
}
public function errorHandler(_arg1:ErrorEvent):void{
_error = true;
var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.ERROR, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = 0;
_local2.bytesTotal = 0;
_local2.errorText = _arg1.text;
dispatchEvent(_local2);
}
public function get ready():Boolean{
return ((limbo) ? false : _ready);
}
private function loadBytes(_arg1:ApplicationDomain, _arg2:ByteArray):void{
var _local3:LoaderContext = new LoaderContext();
_local3.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain);
if (("allowLoadBytesCodeExecution" in _local3)){
_local3["allowLoadBytesCodeExecution"] = true;
};
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler);
loader.loadBytes(_arg2, _local3);
}
public function removeReference():void{
numReferences--;
if (numReferences == 0){
release();
};
}
public function addReference():void{
numReferences++;
}
public function progressHandler(_arg1:ProgressEvent):void{
var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = _arg1.bytesLoaded;
_local2.bytesTotal = _arg1.bytesTotal;
dispatchEvent(_local2);
}
public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{
if (_loaded){
return;
};
_loaded = true;
limbo = null;
if (_arg3){
loadBytes(_arg1, _arg3);
return;
};
if (_url.indexOf("published://") == 0){
return;
};
var _local4:URLRequest = new URLRequest(_url);
var _local5:LoaderContext = new LoaderContext();
_local5.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain);
_local5.securityDomain = _arg2;
if ((((_arg2 == null)) && ((Security.sandboxType == Security.REMOTE)))){
_local5.securityDomain = SecurityDomain.currentDomain;
};
loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler);
loader.load(_local4, _local5);
}
public function get url():String{
return (_url);
}
public function get applicationDomain():ApplicationDomain{
return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.applicationDomain : null);
}
public function moduleErrorHandler(_arg1:Event):void{
var _local2:ModuleEvent;
_ready = true;
factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal;
clearLoader();
if ((_arg1 is ModuleEvent)){
_local2 = ModuleEvent(_arg1);
} else {
_local2 = new ModuleEvent(ModuleEvent.ERROR);
};
dispatchEvent(_local2);
}
public function readyHandler(_arg1:Event):void{
_ready = true;
factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal;
clearLoader();
dispatchEvent(new ModuleEvent(ModuleEvent.READY));
}
public function get setup():Boolean{
return ((limbo) ? false : _setup);
}
public function unload():void{
clearLoader();
if (_loaded){
dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD));
};
limbo = null;
factoryInfo = null;
_loaded = false;
_setup = false;
_ready = false;
_error = false;
}
}
class FactoryInfo {
public var bytesTotal:int;// = 0
public var factory:IFlexModuleFactory;
public var applicationDomain:ApplicationDomain;
private function FactoryInfo(){
}
}
Section 319
//ModuleManagerGlobals (mx.modules.ModuleManagerGlobals)
package mx.modules {
public class ModuleManagerGlobals {
public static var managerSingleton:Object = null;
}
}//package mx.modules
Section 320
//IResourceBundle (mx.resources.IResourceBundle)
package mx.resources {
public interface IResourceBundle {
function get content():Object;
function get locale():String;
function get bundleName():String;
}
}//package mx.resources
Section 321
//IResourceManager (mx.resources.IResourceManager)
package mx.resources {
import flash.events.*;
import flash.system.*;
public interface IResourceManager extends IEventDispatcher {
function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher;
function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean;
function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class;
function getLocales():Array;
function removeResourceBundlesForLocale(_arg1:String):void;
function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle;
function get localeChain():Array;
function getInt(_arg1:String, _arg2:String, _arg3:String=null):int;
function update():void;
function set localeChain(_arg1:Array):void;
function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint;
function addResourceBundle(_arg1:IResourceBundle):void;
function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array;
function getBundleNamesForLocale(_arg1:String):Array;
function removeResourceBundle(_arg1:String, _arg2:String):void;
function getObject(_arg1:String, _arg2:String, _arg3:String=null);
function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String;
function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void;
function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void;
function getPreferredLocaleChain():Array;
function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle;
function initializeLocaleChain(_arg1:Array):void;
function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number;
}
}//package mx.resources
Section 322
//IResourceModule (mx.resources.IResourceModule)
package mx.resources {
public interface IResourceModule {
function get resourceBundles():Array;
}
}//package mx.resources
Section 323
//LocaleSorter (mx.resources.LocaleSorter)
package mx.resources {
public class LocaleSorter {
mx_internal static const VERSION:String = "3.3.0.4852";
private static function normalizeLocale(_arg1:String):String{
return (_arg1.toLowerCase().replace(/-/g, "_"));
}
public static function sortLocalesByPreference(_arg1:Array, _arg2:Array, _arg3:String=null, _arg4:Boolean=false):Array{
var result:Array;
var hasLocale:Object;
var i:int;
var j:int;
var k:int;
var l:int;
var locale:String;
var plocale:LocaleID;
var appLocales = _arg1;
var systemPreferences = _arg2;
var ultimateFallbackLocale = _arg3;
var addAll = _arg4;
var promote:Function = function (_arg1:String):void{
if (typeof(hasLocale[_arg1]) != "undefined"){
result.push(appLocales[hasLocale[_arg1]]);
delete hasLocale[_arg1];
};
};
result = [];
hasLocale = {};
var locales:Array = trimAndNormalize(appLocales);
var preferenceLocales:Array = trimAndNormalize(systemPreferences);
addUltimateFallbackLocale(preferenceLocales, ultimateFallbackLocale);
j = 0;
while (j < locales.length) {
hasLocale[locales[j]] = j;
j = (j + 1);
};
i = 0;
l = preferenceLocales.length;
while (i < l) {
plocale = LocaleID.fromString(preferenceLocales[i]);
promote(preferenceLocales[i]);
promote(plocale.toString());
while (plocale.transformToParent()) {
promote(plocale.toString());
};
plocale = LocaleID.fromString(preferenceLocales[i]);
j = 0;
while (j < l) {
locale = preferenceLocales[j];
if (plocale.isSiblingOf(LocaleID.fromString(locale))){
promote(locale);
};
j = (j + 1);
};
j = 0;
k = locales.length;
while (j < k) {
locale = locales[j];
if (plocale.isSiblingOf(LocaleID.fromString(locale))){
promote(locale);
};
j = (j + 1);
};
i = (i + 1);
};
if (addAll){
j = 0;
k = locales.length;
while (j < k) {
promote(locales[j]);
j = (j + 1);
};
};
return (result);
}
private static function addUltimateFallbackLocale(_arg1:Array, _arg2:String):void{
var _local3:String;
if (((!((_arg2 == null))) && (!((_arg2 == ""))))){
_local3 = normalizeLocale(_arg2);
if (_arg1.indexOf(_local3) == -1){
_arg1.push(_local3);
};
};
}
private static function trimAndNormalize(_arg1:Array):Array{
var _local2:Array = [];
var _local3:int;
while (_local3 < _arg1.length) {
_local2.push(normalizeLocale(_arg1[_local3]));
_local3++;
};
return (_local2);
}
}
}//package mx.resources
class LocaleID {
private var privateLangs:Boolean;// = false
private var script:String;// = ""
private var variants:Array;
private var privates:Array;
private var extensions:Object;
private var lang:String;// = ""
private var region:String;// = ""
private var extended_langs:Array;
public static const STATE_PRIMARY_LANGUAGE:int = 0;
public static const STATE_REGION:int = 3;
public static const STATE_EXTENDED_LANGUAGES:int = 1;
public static const STATE_EXTENSIONS:int = 5;
public static const STATE_SCRIPT:int = 2;
public static const STATE_VARIANTS:int = 4;
public static const STATE_PRIVATES:int = 6;
private function LocaleID(){
extended_langs = [];
variants = [];
extensions = {};
privates = [];
super();
}
public function equals(_arg1:LocaleID):Boolean{
return ((toString() == _arg1.toString()));
}
public function canonicalize():void{
var _local1:String;
for (_local1 in extensions) {
if (extensions.hasOwnProperty(_local1)){
if (extensions[_local1].length == 0){
delete extensions[_local1];
} else {
extensions[_local1] = extensions[_local1].sort();
};
};
};
extended_langs = extended_langs.sort();
variants = variants.sort();
privates = privates.sort();
if (script == ""){
script = LocaleRegistry.getScriptByLang(lang);
};
if ((((script == "")) && (!((region == ""))))){
script = LocaleRegistry.getScriptByLangAndRegion(lang, region);
};
if ((((region == "")) && (!((script == ""))))){
region = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script);
};
}
public function toString():String{
var _local2:String;
var _local1:Array = [lang];
Array.prototype.push.apply(_local1, extended_langs);
if (script != ""){
_local1.push(script);
};
if (region != ""){
_local1.push(region);
};
Array.prototype.push.apply(_local1, variants);
for (_local2 in extensions) {
if (extensions.hasOwnProperty(_local2)){
_local1.push(_local2);
Array.prototype.push.apply(_local1, extensions[_local2]);
};
};
if (privates.length > 0){
_local1.push("x");
Array.prototype.push.apply(_local1, privates);
};
return (_local1.join("_"));
}
public function isSiblingOf(_arg1:LocaleID):Boolean{
return ((((lang == _arg1.lang)) && ((script == _arg1.script))));
}
public function transformToParent():Boolean{
var _local2:String;
var _local3:Array;
var _local4:String;
if (privates.length > 0){
privates.splice((privates.length - 1), 1);
return (true);
};
var _local1:String;
for (_local2 in extensions) {
if (extensions.hasOwnProperty(_local2)){
_local1 = _local2;
};
};
if (_local1){
_local3 = extensions[_local1];
if (_local3.length == 1){
delete extensions[_local1];
return (true);
};
_local3.splice((_local3.length - 1), 1);
return (true);
};
if (variants.length > 0){
variants.splice((variants.length - 1), 1);
return (true);
};
if (script != ""){
if (LocaleRegistry.getScriptByLang(lang) != ""){
script = "";
return (true);
};
if (region == ""){
_local4 = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script);
if (_local4 != ""){
region = _local4;
script = "";
return (true);
};
};
};
if (region != ""){
if (!(((script == "")) && ((LocaleRegistry.getScriptByLang(lang) == "")))){
region = "";
return (true);
};
};
if (extended_langs.length > 0){
extended_langs.splice((extended_langs.length - 1), 1);
return (true);
};
return (false);
}
public static function fromString(_arg1:String):LocaleID{
var _local5:Array;
var _local8:String;
var _local9:int;
var _local10:String;
var _local2:LocaleID = new (LocaleID);
var _local3:int = STATE_PRIMARY_LANGUAGE;
var _local4:Array = _arg1.replace(/-/g, "_").split("_");
var _local6:int;
var _local7:int = _local4.length;
while (_local6 < _local7) {
_local8 = _local4[_local6].toLowerCase();
if (_local3 == STATE_PRIMARY_LANGUAGE){
if (_local8 == "x"){
_local2.privateLangs = true;
} else {
if (_local8 == "i"){
_local2.lang = (_local2.lang + "i-");
} else {
_local2.lang = (_local2.lang + _local8);
_local3 = STATE_EXTENDED_LANGUAGES;
};
};
} else {
_local9 = _local8.length;
if (_local9 == 0){
} else {
_local10 = _local8.charAt(0).toLowerCase();
if ((((_local3 <= STATE_EXTENDED_LANGUAGES)) && ((_local9 == 3)))){
_local2.extended_langs.push(_local8);
if (_local2.extended_langs.length == 3){
_local3 = STATE_SCRIPT;
};
} else {
if ((((_local3 <= STATE_SCRIPT)) && ((_local9 == 4)))){
_local2.script = _local8;
_local3 = STATE_REGION;
} else {
if ((((_local3 <= STATE_REGION)) && ((((_local9 == 2)) || ((_local9 == 3)))))){
_local2.region = _local8;
_local3 = STATE_VARIANTS;
} else {
if ((((_local3 <= STATE_VARIANTS)) && ((((((((_local10 >= "a")) && ((_local10 <= "z")))) && ((_local9 >= 5)))) || ((((((_local10 >= "0")) && ((_local10 <= "9")))) && ((_local9 >= 4)))))))){
_local2.variants.push(_local8);
_local3 = STATE_VARIANTS;
} else {
if ((((_local3 < STATE_PRIVATES)) && ((_local9 == 1)))){
if (_local8 == "x"){
_local3 = STATE_PRIVATES;
_local5 = _local2.privates;
} else {
_local3 = STATE_EXTENSIONS;
_local5 = ((_local2.extensions[_local8]) || ([]));
_local2.extensions[_local8] = _local5;
};
} else {
if (_local3 >= STATE_EXTENSIONS){
_local5.push(_local8);
};
};
};
};
};
};
};
};
_local6++;
};
_local2.canonicalize();
return (_local2);
}
}
class LocaleRegistry {
private static const SCRIPT_ID_BY_LANG:Object = {ab:5, af:1, am:2, ar:3, as:4, ay:1, be:5, bg:5, bn:4, bs:1, ca:1, ch:1, cs:1, cy:1, da:1, de:1, dv:6, dz:7, el:8, en:1, eo:1, es:1, et:1, eu:1, fa:3, fi:1, fj:1, fo:1, fr:1, frr:1, fy:1, ga:1, gl:1, gn:1, gu:9, gv:1, he:10, hi:11, hr:1, ht:1, hu:1, hy:12, id:1, in:1, is:1, it:1, iw:10, ja:13, ka:14, kk:5, kl:1, km:15, kn:16, ko:17, la:1, lb:1, ln:1, lo:18, lt:1, lv:1, mg:1, mh:1, mk:5, ml:19, mo:1, mr:11, ms:1, mt:1, my:20, na:1, nb:1, nd:1, ne:11, nl:1, nn:1, no:1, nr:1, ny:1, om:1, or:21, pa:22, pl:1, ps:3, pt:1, qu:1, rn:1, ro:1, ru:5, rw:1, sg:1, si:23, sk:1, sl:1, sm:1, so:1, sq:1, ss:1, st:1, sv:1, sw:1, ta:24, te:25, th:26, ti:2, tl:1, tn:1, to:1, tr:1, ts:1, uk:5, ur:3, ve:1, vi:1, wo:1, xh:1, yi:10, zu:1, cpe:1, dsb:1, frs:1, gsw:1, hsb:1, kok:11, mai:11, men:1, nds:1, niu:1, nqo:27, nso:1, son:1, tem:1, tkl:1, tmh:1, tpi:1, tvl:1, zbl:28};
private static const SCRIPTS:Array = ["", "latn", "ethi", "arab", "beng", "cyrl", "thaa", "tibt", "grek", "gujr", "hebr", "deva", "armn", "jpan", "geor", "khmr", "knda", "kore", "laoo", "mlym", "mymr", "orya", "guru", "sinh", "taml", "telu", "thai", "nkoo", "blis", "hans", "hant", "mong", "syrc"];
private static const DEFAULT_REGION_BY_LANG_AND_SCRIPT:Object = {bg:{5:"bg"}, ca:{1:"es"}, zh:{30:"tw", 29:"cn"}, cs:{1:"cz"}, da:{1:"dk"}, de:{1:"de"}, el:{8:"gr"}, en:{1:"us"}, es:{1:"es"}, fi:{1:"fi"}, fr:{1:"fr"}, he:{10:"il"}, hu:{1:"hu"}, is:{1:"is"}, it:{1:"it"}, ja:{13:"jp"}, ko:{17:"kr"}, nl:{1:"nl"}, nb:{1:"no"}, pl:{1:"pl"}, pt:{1:"br"}, ro:{1:"ro"}, ru:{5:"ru"}, hr:{1:"hr"}, sk:{1:"sk"}, sq:{1:"al"}, sv:{1:"se"}, th:{26:"th"}, tr:{1:"tr"}, ur:{3:"pk"}, id:{1:"id"}, uk:{5:"ua"}, be:{5:"by"}, sl:{1:"si"}, et:{1:"ee"}, lv:{1:"lv"}, lt:{1:"lt"}, fa:{3:"ir"}, vi:{1:"vn"}, hy:{12:"am"}, az:{1:"az", 5:"az"}, eu:{1:"es"}, mk:{5:"mk"}, af:{1:"za"}, ka:{14:"ge"}, fo:{1:"fo"}, hi:{11:"in"}, ms:{1:"my"}, kk:{5:"kz"}, ky:{5:"kg"}, sw:{1:"ke"}, uz:{1:"uz", 5:"uz"}, tt:{5:"ru"}, pa:{22:"in"}, gu:{9:"in"}, ta:{24:"in"}, te:{25:"in"}, kn:{16:"in"}, mr:{11:"in"}, sa:{11:"in"}, mn:{5:"mn"}, gl:{1:"es"}, kok:{11:"in"}, syr:{32:"sy"}, dv:{6:"mv"}, nn:{1:"no"}, sr:{1:"cs", 5:"cs"}, cy:{1:"gb"}, mi:{1:"nz"}, mt:{1:"mt"}, quz:{1:"bo"}, tn:{1:"za"}, xh:{1:"za"}, zu:{1:"za"}, nso:{1:"za"}, se:{1:"no"}, smj:{1:"no"}, sma:{1:"no"}, sms:{1:"fi"}, smn:{1:"fi"}, bs:{1:"ba"}};
private static const SCRIPT_BY_ID:Object = {latn:1, ethi:2, arab:3, beng:4, cyrl:5, thaa:6, tibt:7, grek:8, gujr:9, hebr:10, deva:11, armn:12, jpan:13, geor:14, khmr:15, knda:16, kore:17, laoo:18, mlym:19, mymr:20, orya:21, guru:22, sinh:23, taml:24, telu:25, thai:26, nkoo:27, blis:28, hans:29, hant:30, mong:31, syrc:32};
private static const SCRIPT_ID_BY_LANG_AND_REGION:Object = {zh:{cn:29, sg:29, tw:30, hk:30, mo:30}, mn:{cn:31, sg:5}, pa:{pk:3, in:22}, ha:{gh:1, ne:1}};
private function LocaleRegistry(){
}
public static function getScriptByLangAndRegion(_arg1:String, _arg2:String):String{
var _local3:Object = SCRIPT_ID_BY_LANG_AND_REGION[_arg1];
if (_local3 == null){
return ("");
};
var _local4:Object = _local3[_arg2];
if (_local4 == null){
return ("");
};
return (SCRIPTS[int(_local4)].toLowerCase());
}
public static function getScriptByLang(_arg1:String):String{
var _local2:Object = SCRIPT_ID_BY_LANG[_arg1];
if (_local2 == null){
return ("");
};
return (SCRIPTS[int(_local2)].toLowerCase());
}
public static function getDefaultRegionForLangAndScript(_arg1:String, _arg2:String):String{
var _local3:Object = DEFAULT_REGION_BY_LANG_AND_SCRIPT[_arg1];
var _local4:Object = SCRIPT_BY_ID[_arg2];
if ((((_local3 == null)) || ((_local4 == null)))){
return ("");
};
return (((_local3[int(_local4)]) || ("")));
}
}
Section 324
//ResourceBundle (mx.resources.ResourceBundle)
package mx.resources {
import mx.core.*;
import flash.system.*;
import mx.utils.*;
public class ResourceBundle implements IResourceBundle {
mx_internal var _locale:String;
private var _content:Object;
mx_internal var _bundleName:String;
mx_internal static const VERSION:String = "3.3.0.4852";
mx_internal static var backupApplicationDomain:ApplicationDomain;
mx_internal static var locale:String;
public function ResourceBundle(_arg1:String=null, _arg2:String=null){
_content = {};
super();
mx_internal::_locale = _arg1;
mx_internal::_bundleName = _arg2;
_content = getContent();
}
protected function getContent():Object{
return ({});
}
public function getString(_arg1:String):String{
return (String(_getObject(_arg1)));
}
public function get content():Object{
return (_content);
}
public function getBoolean(_arg1:String, _arg2:Boolean=true):Boolean{
var _local3:String = _getObject(_arg1).toLowerCase();
if (_local3 == "false"){
return (false);
};
if (_local3 == "true"){
return (true);
};
return (_arg2);
}
public function getStringArray(_arg1:String):Array{
var _local2:Array = _getObject(_arg1).split(",");
var _local3:int = _local2.length;
var _local4:int;
while (_local4 < _local3) {
_local2[_local4] = StringUtil.trim(_local2[_local4]);
_local4++;
};
return (_local2);
}
public function getObject(_arg1:String):Object{
return (_getObject(_arg1));
}
private function _getObject(_arg1:String):Object{
var _local2:Object = content[_arg1];
if (!_local2){
throw (new Error(((("Key " + _arg1) + " was not found in resource bundle ") + bundleName)));
};
return (_local2);
}
public function get locale():String{
return (mx_internal::_locale);
}
public function get bundleName():String{
return (mx_internal::_bundleName);
}
public function getNumber(_arg1:String):Number{
return (Number(_getObject(_arg1)));
}
private static function getClassByName(_arg1:String, _arg2:ApplicationDomain):Class{
var _local3:Class;
if (_arg2.hasDefinition(_arg1)){
_local3 = (_arg2.getDefinition(_arg1) as Class);
};
return (_local3);
}
public static function getResourceBundle(_arg1:String, _arg2:ApplicationDomain=null):ResourceBundle{
var _local3:String;
var _local4:Class;
var _local5:Object;
var _local6:ResourceBundle;
if (!_arg2){
_arg2 = ApplicationDomain.currentDomain;
};
_local3 = (((mx_internal::locale + "$") + _arg1) + "_properties");
_local4 = getClassByName(_local3, _arg2);
if (!_local4){
_local3 = (_arg1 + "_properties");
_local4 = getClassByName(_local3, _arg2);
};
if (!_local4){
_local3 = _arg1;
_local4 = getClassByName(_local3, _arg2);
};
if (((!(_local4)) && (mx_internal::backupApplicationDomain))){
_local3 = (_arg1 + "_properties");
_local4 = getClassByName(_local3, mx_internal::backupApplicationDomain);
if (!_local4){
_local3 = _arg1;
_local4 = getClassByName(_local3, mx_internal::backupApplicationDomain);
};
};
if (_local4){
_local5 = new (_local4);
if ((_local5 is ResourceBundle)){
_local6 = ResourceBundle(_local5);
return (_local6);
};
};
throw (new Error(("Could not find resource bundle " + _arg1)));
}
}
}//package mx.resources
Section 325
//ResourceManager (mx.resources.ResourceManager)
package mx.resources {
import mx.core.*;
public class ResourceManager {
mx_internal static const VERSION:String = "3.3.0.4852";
private static var implClassDependency:ResourceManagerImpl;
private static var instance:IResourceManager;
public static function getInstance():IResourceManager{
if (!instance){
try {
instance = IResourceManager(Singleton.getInstance("mx.resources::IResourceManager"));
} catch(e:Error) {
instance = new ResourceManagerImpl();
};
};
return (instance);
}
}
}//package mx.resources
Section 326
//ResourceManagerImpl (mx.resources.ResourceManagerImpl)
package mx.resources {
import flash.events.*;
import mx.core.*;
import flash.system.*;
import mx.modules.*;
import mx.events.*;
import flash.utils.*;
import mx.utils.*;
public class ResourceManagerImpl extends EventDispatcher implements IResourceManager {
private var resourceModules:Object;
private var initializedForNonFrameworkApp:Boolean;// = false
private var localeMap:Object;
private var _localeChain:Array;
mx_internal static const VERSION:String = "3.3.0.4852";
private static var instance:IResourceManager;
public function ResourceManagerImpl(){
localeMap = {};
resourceModules = {};
super();
}
public function get localeChain():Array{
return (_localeChain);
}
public function set localeChain(_arg1:Array):void{
_localeChain = _arg1;
update();
}
public function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (null);
};
var _local5:* = _local4.content[_arg2];
var _local6:Array = String(_local5).split(",");
var _local7:int = _local6.length;
var _local8:int;
while (_local8 < _local7) {
_local6[_local8] = StringUtil.trim(_local6[_local8]);
_local8++;
};
return (_local6);
}
mx_internal function installCompiledResourceBundle(_arg1:ApplicationDomain, _arg2:String, _arg3:String):void{
var _local4:String;
var _local5:String = _arg3;
var _local6:int = _arg3.indexOf(":");
if (_local6 != -1){
_local4 = _arg3.substring(0, _local6);
_local5 = _arg3.substring((_local6 + 1));
};
if (getResourceBundle(_arg2, _arg3)){
return;
};
var _local7 = (((_arg2 + "$") + _local5) + "_properties");
if (_local4 != null){
_local7 = ((_local4 + ".") + _local7);
};
var _local8:Class;
if (_arg1.hasDefinition(_local7)){
_local8 = Class(_arg1.getDefinition(_local7));
};
if (!_local8){
_local7 = _arg3;
if (_arg1.hasDefinition(_local7)){
_local8 = Class(_arg1.getDefinition(_local7));
};
};
if (!_local8){
_local7 = (_arg3 + "_properties");
if (_arg1.hasDefinition(_local7)){
_local8 = Class(_arg1.getDefinition(_local7));
};
};
if (!_local8){
throw (new Error((((("Could not find compiled resource bundle '" + _arg3) + "' for locale '") + _arg2) + "'.")));
};
var _local9:ResourceBundle = ResourceBundle(new (_local8));
_local9.mx_internal::_locale = _arg2;
_local9.mx_internal::_bundleName = _arg3;
addResourceBundle(_local9);
}
public function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String{
var _local5:IResourceBundle = findBundle(_arg1, _arg2, _arg4);
if (!_local5){
return (null);
};
var _local6:String = String(_local5.content[_arg2]);
if (_arg3){
_local6 = StringUtil.substitute(_local6, _arg3);
};
return (_local6);
}
public function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{
var moduleInfo:IModuleInfo;
var resourceEventDispatcher:ResourceEventDispatcher;
var timer:Timer;
var timerHandler:Function;
var url = _arg1;
var updateFlag = _arg2;
var applicationDomain = _arg3;
var securityDomain = _arg4;
moduleInfo = ModuleManager.getModule(url);
resourceEventDispatcher = new ResourceEventDispatcher(moduleInfo);
var readyHandler:Function = function (_arg1:ModuleEvent):void{
var _local2:* = _arg1.module.factory.create();
resourceModules[_arg1.module.url].resourceModule = _local2;
if (updateFlag){
update();
};
};
moduleInfo.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true);
var errorHandler:Function = function (_arg1:ModuleEvent):void{
var _local3:ResourceEvent;
var _local2:String = ("Unable to load resource module from " + url);
if (resourceEventDispatcher.willTrigger(ResourceEvent.ERROR)){
_local3 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable);
_local3.bytesLoaded = 0;
_local3.bytesTotal = 0;
_local3.errorText = _local2;
resourceEventDispatcher.dispatchEvent(_local3);
} else {
throw (new Error(_local2));
};
};
moduleInfo.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true);
resourceModules[url] = new ResourceModuleInfo(moduleInfo, readyHandler, errorHandler);
timer = new Timer(0);
timerHandler = function (_arg1:TimerEvent):void{
timer.removeEventListener(TimerEvent.TIMER, timerHandler);
timer.stop();
moduleInfo.load(applicationDomain, securityDomain);
};
timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true);
timer.start();
return (resourceEventDispatcher);
}
public function getLocales():Array{
var _local2:String;
var _local1:Array = [];
for (_local2 in localeMap) {
_local1.push(_local2);
};
return (_local1);
}
public function removeResourceBundlesForLocale(_arg1:String):void{
delete localeMap[_arg1];
}
public function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle{
var _local3:Object = localeMap[_arg1];
if (!_local3){
return (null);
};
return (_local3[_arg2]);
}
private function dumpResourceModule(_arg1):void{
var _local2:ResourceBundle;
var _local3:String;
for each (_local2 in _arg1.resourceBundles) {
trace(_local2.locale, _local2.bundleName);
for (_local3 in _local2.content) {
};
};
}
public function addResourceBundle(_arg1:IResourceBundle):void{
var _local2:String = _arg1.locale;
var _local3:String = _arg1.bundleName;
if (!localeMap[_local2]){
localeMap[_local2] = {};
};
localeMap[_local2][_local3] = _arg1;
}
public function getObject(_arg1:String, _arg2:String, _arg3:String=null){
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (undefined);
};
return (_local4.content[_arg2]);
}
public function getInt(_arg1:String, _arg2:String, _arg3:String=null):int{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (0);
};
var _local5:* = _local4.content[_arg2];
return (int(_local5));
}
private function findBundle(_arg1:String, _arg2:String, _arg3:String):IResourceBundle{
supportNonFrameworkApps();
return (((_arg3)!=null) ? getResourceBundle(_arg3, _arg1) : findResourceBundleWithResource(_arg1, _arg2));
}
private function supportNonFrameworkApps():void{
if (initializedForNonFrameworkApp){
return;
};
initializedForNonFrameworkApp = true;
if (getLocales().length > 0){
return;
};
var _local1:ApplicationDomain = ApplicationDomain.currentDomain;
if (!_local1.hasDefinition("_CompiledResourceBundleInfo")){
return;
};
var _local2:Class = Class(_local1.getDefinition("_CompiledResourceBundleInfo"));
var _local3:Array = _local2.compiledLocales;
var _local4:Array = _local2.compiledResourceBundleNames;
installCompiledResourceBundles(_local1, _local3, _local4);
localeChain = _local3;
}
public function getBundleNamesForLocale(_arg1:String):Array{
var _local3:String;
var _local2:Array = [];
for (_local3 in localeMap[_arg1]) {
_local2.push(_local3);
};
return (_local2);
}
public function getPreferredLocaleChain():Array{
return (LocaleSorter.sortLocalesByPreference(getLocales(), getSystemPreferredLocales(), null, true));
}
public function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (NaN);
};
var _local5:* = _local4.content[_arg2];
return (Number(_local5));
}
public function update():void{
dispatchEvent(new Event(Event.CHANGE));
}
public function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (null);
};
var _local5:* = _local4.content[_arg2];
return ((_local5 as Class));
}
public function removeResourceBundle(_arg1:String, _arg2:String):void{
delete localeMap[_arg1][_arg2];
if (getBundleNamesForLocale(_arg1).length == 0){
delete localeMap[_arg1];
};
}
public function initializeLocaleChain(_arg1:Array):void{
localeChain = LocaleSorter.sortLocalesByPreference(_arg1, getSystemPreferredLocales(), null, true);
}
public function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle{
var _local5:String;
var _local6:Object;
var _local7:ResourceBundle;
if (!_localeChain){
return (null);
};
var _local3:int = _localeChain.length;
var _local4:int;
while (_local4 < _local3) {
_local5 = localeChain[_local4];
_local6 = localeMap[_local5];
if (!_local6){
} else {
_local7 = _local6[_arg1];
if (!_local7){
} else {
if ((_arg2 in _local7.content)){
return (_local7);
};
};
};
_local4++;
};
return (null);
}
public function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (0);
};
var _local5:* = _local4.content[_arg2];
return (uint(_local5));
}
private function getSystemPreferredLocales():Array{
var _local1:Array;
if (Capabilities["languages"]){
_local1 = Capabilities["languages"];
} else {
_local1 = [Capabilities.language];
};
return (_local1);
}
public function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void{
var _local7:String;
var _local8:int;
var _local9:String;
var _local4:int = (_arg2) ? _arg2.length : 0;
var _local5:int = (_arg3) ? _arg3.length : 0;
var _local6:int;
while (_local6 < _local4) {
_local7 = _arg2[_local6];
_local8 = 0;
while (_local8 < _local5) {
_local9 = _arg3[_local8];
mx_internal::installCompiledResourceBundle(_arg1, _local7, _local9);
_local8++;
};
_local6++;
};
}
public function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean{
var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3);
if (!_local4){
return (false);
};
var _local5:* = _local4.content[_arg2];
return ((String(_local5).toLowerCase() == "true"));
}
public function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void{
throw (new Error("unloadResourceModule() is not yet implemented."));
}
public static function getInstance():IResourceManager{
if (!instance){
instance = new (ResourceManagerImpl);
};
return (instance);
}
}
}//package mx.resources
import flash.events.*;
import mx.modules.*;
import mx.events.*;
class ResourceModuleInfo {
public var resourceModule:IResourceModule;
public var errorHandler:Function;
public var readyHandler:Function;
public var moduleInfo:IModuleInfo;
private function ResourceModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){
this.moduleInfo = _arg1;
this.readyHandler = _arg2;
this.errorHandler = _arg3;
}
}
class ResourceEventDispatcher extends EventDispatcher {
private function ResourceEventDispatcher(_arg1:IModuleInfo){
_arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true);
}
private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{
var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = _arg1.bytesLoaded;
_local2.bytesTotal = _arg1.bytesTotal;
dispatchEvent(_local2);
}
private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{
var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.COMPLETE);
dispatchEvent(_local2);
}
private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{
var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = _arg1.bytesLoaded;
_local2.bytesTotal = _arg1.bytesTotal;
_local2.errorText = _arg1.errorText;
dispatchEvent(_local2);
}
}
Section 327
//HaloBorder (mx.skins.halo.HaloBorder)
package mx.skins.halo {
import mx.core.*;
import flash.display.*;
import mx.styles.*;
import mx.skins.*;
import mx.graphics.*;
import mx.utils.*;
public class HaloBorder extends RectangularBorder {
mx_internal var radiusObj:Object;
mx_internal var backgroundHole:Object;
mx_internal var radius:Number;
mx_internal var bRoundedCorners:Boolean;
mx_internal var backgroundColor:Object;
private var dropShadow:RectangularDropShadow;
protected var _borderMetrics:EdgeMetrics;
mx_internal var backgroundAlphaName:String;
mx_internal static const VERSION:String = "3.3.0.4852";
private static var BORDER_WIDTHS:Object = {none:0, solid:1, inset:2, outset:2, alert:3, dropdown:2, menuBorder:1, comboNonEdit:2};
public function HaloBorder(){
BORDER_WIDTHS["default"] = 3;
}
override public function styleChanged(_arg1:String):void{
if ((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderSides")))){
_borderMetrics = null;
};
invalidateDisplayList();
}
override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{
if (((isNaN(_arg1)) || (isNaN(_arg2)))){
return;
};
super.updateDisplayList(_arg1, _arg2);
backgroundColor = getBackgroundColor();
bRoundedCorners = false;
backgroundAlphaName = "backgroundAlpha";
backgroundHole = null;
radius = 0;
radiusObj = null;
drawBorder(_arg1, _arg2);
drawBackground(_arg1, _arg2);
}
mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{
var _local5:Number;
var _local6:uint;
var _local7:uint;
var _local8:String;
var _local9:Number;
var _local10:uint;
var _local11:Boolean;
var _local12:uint;
var _local13:Array;
var _local14:Array;
var _local15:uint;
var _local16:uint;
var _local17:uint;
var _local18:uint;
var _local19:Boolean;
var _local20:Object;
var _local22:Number;
var _local23:Number;
var _local24:Number;
var _local25:Object;
var _local27:Number;
var _local28:Number;
var _local29:IContainer;
var _local30:EdgeMetrics;
var _local31:Boolean;
var _local32:Number;
var _local33:Array;
var _local34:uint;
var _local35:Boolean;
var _local36:Number;
var _local3:String = getStyle("borderStyle");
var _local4:Array = getStyle("highlightAlphas");
var _local21:Boolean;
var _local26:Graphics = graphics;
_local26.clear();
if (_local3){
switch (_local3){
case "none":
break;
case "inset":
_local7 = getStyle("borderColor");
_local22 = ColorUtil.adjustBrightness2(_local7, -40);
_local23 = ColorUtil.adjustBrightness2(_local7, 25);
_local24 = ColorUtil.adjustBrightness2(_local7, 40);
_local25 = backgroundColor;
if ((((_local25 === null)) || ((_local25 === "")))){
_local25 = _local7;
};
draw3dBorder(_local23, _local22, _local24, Number(_local25), Number(_local25), Number(_local25));
break;
case "outset":
_local7 = getStyle("borderColor");
_local22 = ColorUtil.adjustBrightness2(_local7, -40);
_local23 = ColorUtil.adjustBrightness2(_local7, -25);
_local24 = ColorUtil.adjustBrightness2(_local7, 40);
_local25 = backgroundColor;
if ((((_local25 === null)) || ((_local25 === "")))){
_local25 = _local7;
};
draw3dBorder(_local23, _local24, _local22, Number(_local25), Number(_local25), Number(_local25));
break;
case "alert":
case "default":
if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){
_local27 = getStyle("backgroundAlpha");
_local5 = getStyle("borderAlpha");
backgroundAlphaName = "borderAlpha";
radius = getStyle("cornerRadius");
bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true");
_local28 = (bRoundedCorners) ? radius : 0;
drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local28, _local28);
if (!bRoundedCorners){
radiusObj = {};
};
_local29 = (parent as IContainer);
if (_local29){
_local30 = _local29.viewMetrics;
backgroundHole = {x:_local30.left, y:_local30.top, w:Math.max(0, ((_arg1 - _local30.left) - _local30.right)), h:Math.max(0, ((_arg2 - _local30.top) - _local30.bottom)), r:0};
if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){
if (_local27 != _local5){
drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0);
};
_local26.beginFill(Number(backgroundColor), _local27);
_local26.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h);
_local26.endFill();
};
};
backgroundColor = getStyle("borderColor");
};
break;
case "dropdown":
_local12 = getStyle("dropdownBorderColor");
drawDropShadow(0, 0, _arg1, _arg2, 4, 0, 0, 4);
drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, 5068126, 1);
drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, [0xFFFFFF, 0xFFFFFF], [0.7, 0], verticalGradientMatrix(0, 0, _arg1, _arg2));
drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1);
drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3)));
if (!isNaN(_local12)){
drawRoundRect(0, 0, (_arg1 + 1), _arg2, {tl:4, tr:0, br:0, bl:4}, _local12, 0.5);
drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1);
drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3)));
};
backgroundColor = null;
break;
case "menuBorder":
_local7 = getStyle("borderColor");
drawRoundRect(0, 0, _arg1, _arg2, 0, _local7, 1);
drawDropShadow(1, 1, (_arg1 - 2), (_arg2 - 2), 0, 0, 0, 0);
break;
case "comboNonEdit":
break;
case "controlBar":
if ((((_arg1 == 0)) || ((_arg2 == 0)))){
backgroundColor = null;
break;
};
_local14 = getStyle("footerColors");
_local31 = !((_local14 == null));
_local32 = getStyle("borderAlpha");
if (_local31){
_local26.lineStyle(0, ((_local14.length > 0)) ? _local14[1] : _local14[0], _local32);
_local26.moveTo(0, 0);
_local26.lineTo(_arg1, 0);
_local26.lineStyle(0, 0, 0);
if (((((parent) && (parent.parent))) && ((parent.parent is IStyleClient)))){
radius = IStyleClient(parent.parent).getStyle("cornerRadius");
_local32 = IStyleClient(parent.parent).getStyle("borderAlpha");
};
if (isNaN(radius)){
radius = 0;
};
if (IStyleClient(parent.parent).getStyle("roundedBottomCorners").toString().toLowerCase() != "true"){
radius = 0;
};
drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2));
if ((((_local14.length > 1)) && (!((_local14[0] == _local14[1]))))){
drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, _arg2));
drawRoundRect(1, 2, (_arg1 - 2), (_arg2 - 3), {tl:0, tr:0, bl:(radius - 1), br:(radius - 1)}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2));
};
};
backgroundColor = null;
break;
case "applicationControlBar":
_local13 = getStyle("fillColors");
_local5 = getStyle("backgroundAlpha");
_local4 = getStyle("highlightAlphas");
_local33 = getStyle("fillAlphas");
_local11 = getStyle("docked");
_local34 = uint(backgroundColor);
radius = getStyle("cornerRadius");
if (!radius){
radius = 0;
};
drawDropShadow(0, 1, _arg1, (_arg2 - 1), radius, radius, radius, radius);
if (((!((backgroundColor === null))) && (StyleManager.isValidStyleValue(backgroundColor)))){
drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local34, _local5, verticalGradientMatrix(0, 0, _arg1, _arg2));
};
drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local13, _local33, verticalGradientMatrix(0, 0, _arg1, _arg2));
drawRoundRect(0, 1, _arg1, ((_arg2 / 2) - 1), {tl:radius, tr:radius, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, ((_arg2 / 2) - 1)));
drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, 0.3, null, GradientType.LINEAR, null, {x:0, y:2, w:_arg1, h:(_arg2 - 2), r:{tl:radius, tr:radius, bl:0, br:0}});
backgroundColor = null;
break;
default:
_local7 = getStyle("borderColor");
_local9 = getStyle("borderThickness");
_local8 = getStyle("borderSides");
_local35 = true;
radius = getStyle("cornerRadius");
bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true");
_local36 = Math.max((radius - _local9), 0);
_local20 = {x:_local9, y:_local9, w:(_arg1 - (_local9 * 2)), h:(_arg2 - (_local9 * 2)), r:_local36};
if (!bRoundedCorners){
radiusObj = {tl:radius, tr:radius, bl:0, br:0};
_local20.r = {tl:_local36, tr:_local36, bl:0, br:0};
};
if (_local8 != "left top right bottom"){
_local20.r = {tl:_local36, tr:_local36, bl:(bRoundedCorners) ? _local36 : 0, br:(bRoundedCorners) ? _local36 : 0};
radiusObj = {tl:radius, tr:radius, bl:(bRoundedCorners) ? radius : 0, br:(bRoundedCorners) ? radius : 0};
_local8 = _local8.toLowerCase();
if (_local8.indexOf("left") == -1){
_local20.x = 0;
_local20.w = (_local20.w + _local9);
_local20.r.tl = 0;
_local20.r.bl = 0;
radiusObj.tl = 0;
radiusObj.bl = 0;
_local35 = false;
};
if (_local8.indexOf("top") == -1){
_local20.y = 0;
_local20.h = (_local20.h + _local9);
_local20.r.tl = 0;
_local20.r.tr = 0;
radiusObj.tl = 0;
radiusObj.tr = 0;
_local35 = false;
};
if (_local8.indexOf("right") == -1){
_local20.w = (_local20.w + _local9);
_local20.r.tr = 0;
_local20.r.br = 0;
radiusObj.tr = 0;
radiusObj.br = 0;
_local35 = false;
};
if (_local8.indexOf("bottom") == -1){
_local20.h = (_local20.h + _local9);
_local20.r.bl = 0;
_local20.r.br = 0;
radiusObj.bl = 0;
radiusObj.br = 0;
_local35 = false;
};
};
if ((((radius == 0)) && (_local35))){
drawDropShadow(0, 0, _arg1, _arg2, 0, 0, 0, 0);
_local26.beginFill(_local7);
_local26.drawRect(0, 0, _arg1, _arg2);
_local26.drawRect(_local9, _local9, (_arg1 - (2 * _local9)), (_arg2 - (2 * _local9)));
_local26.endFill();
} else {
if (radiusObj){
drawDropShadow(0, 0, _arg1, _arg2, radiusObj.tl, radiusObj.tr, radiusObj.br, radiusObj.bl);
drawRoundRect(0, 0, _arg1, _arg2, radiusObj, _local7, 1, null, null, null, _local20);
radiusObj.tl = Math.max((radius - _local9), 0);
radiusObj.tr = Math.max((radius - _local9), 0);
radiusObj.bl = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0;
radiusObj.br = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0;
} else {
drawDropShadow(0, 0, _arg1, _arg2, radius, radius, radius, radius);
drawRoundRect(0, 0, _arg1, _arg2, radius, _local7, 1, null, null, null, _local20);
radius = Math.max((getStyle("cornerRadius") - _local9), 0);
};
};
};
};
}
mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{
var _local4:Number;
var _local5:Number;
var _local6:EdgeMetrics;
var _local7:Graphics;
var _local8:Number;
var _local9:Number;
var _local10:Array;
var _local11:Number;
if (((((((!((backgroundColor === null))) && (!((backgroundColor === ""))))) || (getStyle("mouseShield")))) || (getStyle("mouseShieldChildren")))){
_local4 = Number(backgroundColor);
_local5 = 1;
_local6 = getBackgroundColorMetrics();
_local7 = graphics;
if (((((isNaN(_local4)) || ((backgroundColor === "")))) || ((backgroundColor === null)))){
_local5 = 0;
_local4 = 0xFFFFFF;
} else {
_local5 = getStyle(backgroundAlphaName);
};
if (((!((radius == 0))) || (backgroundHole))){
_local8 = _local6.bottom;
if (radiusObj){
_local9 = (bRoundedCorners) ? radius : 0;
radiusObj = {tl:radius, tr:radius, bl:_local9, br:_local9};
drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radiusObj, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole);
} else {
drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radius, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole);
};
} else {
_local7.beginFill(_local4, _local5);
_local7.drawRect(_local6.left, _local6.top, ((_arg1 - _local6.right) - _local6.left), ((_arg2 - _local6.bottom) - _local6.top));
_local7.endFill();
};
};
var _local3:String = getStyle("borderStyle");
if ((((((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) && ((((_local3 == "alert")) || ((_local3 == "default")))))) && ((getStyle("headerColors") == null)))){
_local10 = getStyle("highlightAlphas");
_local11 = (_local10) ? _local10[0] : 0.3;
drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local11, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}});
};
}
mx_internal function drawDropShadow(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):void{
var _local11:Number;
var _local12:Boolean;
if ((((((((getStyle("dropShadowEnabled") == false)) || ((getStyle("dropShadowEnabled") == "false")))) || ((_arg3 == 0)))) || ((_arg4 == 0)))){
return;
};
var _local9:Number = getStyle("shadowDistance");
var _local10:String = getStyle("shadowDirection");
if (getStyle("borderStyle") == "applicationControlBar"){
_local12 = getStyle("docked");
_local11 = (_local12) ? 90 : getDropShadowAngle(_local9, _local10);
_local9 = Math.abs(_local9);
} else {
_local11 = getDropShadowAngle(_local9, _local10);
_local9 = (Math.abs(_local9) + 2);
};
if (!dropShadow){
dropShadow = new RectangularDropShadow();
};
dropShadow.distance = _local9;
dropShadow.angle = _local11;
dropShadow.color = getStyle("dropShadowColor");
dropShadow.alpha = 0.4;
dropShadow.tlRadius = _arg5;
dropShadow.trRadius = _arg6;
dropShadow.blRadius = _arg8;
dropShadow.brRadius = _arg7;
dropShadow.drawShadow(graphics, _arg1, _arg2, _arg3, _arg4);
}
mx_internal function getBackgroundColor():Object{
var _local2:Object;
var _local1:IUIComponent = (parent as IUIComponent);
if (((_local1) && (!(_local1.enabled)))){
_local2 = getStyle("backgroundDisabledColor");
if (((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))){
return (_local2);
};
};
return (getStyle("backgroundColor"));
}
mx_internal function draw3dBorder(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{
var _local7:Number = width;
var _local8:Number = height;
drawDropShadow(0, 0, width, height, 0, 0, 0, 0);
var _local9:Graphics = graphics;
_local9.beginFill(_arg1);
_local9.drawRect(0, 0, _local7, _local8);
_local9.drawRect(1, 0, (_local7 - 2), _local8);
_local9.endFill();
_local9.beginFill(_arg2);
_local9.drawRect(1, 0, (_local7 - 2), 1);
_local9.endFill();
_local9.beginFill(_arg3);
_local9.drawRect(1, (_local8 - 1), (_local7 - 2), 1);
_local9.endFill();
_local9.beginFill(_arg4);
_local9.drawRect(1, 1, (_local7 - 2), 1);
_local9.endFill();
_local9.beginFill(_arg5);
_local9.drawRect(1, (_local8 - 2), (_local7 - 2), 1);
_local9.endFill();
_local9.beginFill(_arg6);
_local9.drawRect(1, 2, (_local7 - 2), (_local8 - 4));
_local9.drawRect(2, 2, (_local7 - 4), (_local8 - 4));
_local9.endFill();
}
mx_internal function getBackgroundColorMetrics():EdgeMetrics{
return (borderMetrics);
}
mx_internal function getDropShadowAngle(_arg1:Number, _arg2:String):Number{
if (_arg2 == "left"){
return (((_arg1 >= 0)) ? 135 : 225);
//unresolved jump
};
if (_arg2 == "right"){
return (((_arg1 >= 0)) ? 45 : 315);
//unresolved jump
};
return (((_arg1 >= 0)) ? 90 : 270);
}
override public function get borderMetrics():EdgeMetrics{
var _local1:Number;
var _local3:String;
if (_borderMetrics){
return (_borderMetrics);
};
var _local2:String = getStyle("borderStyle");
if ((((_local2 == "default")) || ((_local2 == "alert")))){
if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){
_borderMetrics = new EdgeMetrics(0, 0, 0, 0);
} else {
return (EdgeMetrics.EMPTY);
};
} else {
if ((((_local2 == "controlBar")) || ((_local2 == "applicationControlBar")))){
_borderMetrics = new EdgeMetrics(1, 1, 1, 1);
} else {
if (_local2 == "solid"){
_local1 = getStyle("borderThickness");
if (isNaN(_local1)){
_local1 = 0;
};
_borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1);
_local3 = getStyle("borderSides");
if (_local3 != "left top right bottom"){
if (_local3.indexOf("left") == -1){
_borderMetrics.left = 0;
};
if (_local3.indexOf("top") == -1){
_borderMetrics.top = 0;
};
if (_local3.indexOf("right") == -1){
_borderMetrics.right = 0;
};
if (_local3.indexOf("bottom") == -1){
_borderMetrics.bottom = 0;
};
};
} else {
_local1 = BORDER_WIDTHS[_local2];
if (isNaN(_local1)){
_local1 = 0;
};
_borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1);
};
};
};
return (_borderMetrics);
}
}
}//package mx.skins.halo
Section 328
//HaloFocusRect (mx.skins.halo.HaloFocusRect)
package mx.skins.halo {
import flash.display.*;
import mx.styles.*;
import mx.skins.*;
import mx.utils.*;
public class HaloFocusRect extends ProgrammaticSkin implements IStyleClient {
private var _focusColor:Number;
mx_internal static const VERSION:String = "3.3.0.4852";
public function get inheritingStyles():Object{
return (styleName.inheritingStyles);
}
public function set inheritingStyles(_arg1:Object):void{
}
public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{
}
public function registerEffects(_arg1:Array):void{
}
public function regenerateStyleCache(_arg1:Boolean):void{
}
public function get styleDeclaration():CSSStyleDeclaration{
return (CSSStyleDeclaration(styleName));
}
public function getClassStyleDeclarations():Array{
return ([]);
}
public function get className():String{
return ("HaloFocusRect");
}
public function clearStyle(_arg1:String):void{
if (_arg1 == "focusColor"){
_focusColor = NaN;
};
}
public function setStyle(_arg1:String, _arg2):void{
if (_arg1 == "focusColor"){
_focusColor = _arg2;
};
}
public function set nonInheritingStyles(_arg1:Object):void{
}
public function get nonInheritingStyles():Object{
return (styleName.nonInheritingStyles);
}
override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
super.updateDisplayList(_arg1, _arg2);
var _local3:String = getStyle("focusBlendMode");
var _local4:Number = getStyle("focusAlpha");
var _local5:Number = getStyle("focusColor");
var _local6:Number = getStyle("cornerRadius");
var _local7:Number = getStyle("focusThickness");
var _local8:String = getStyle("focusRoundedCorners");
var _local9:Number = getStyle("themeColor");
var _local10:Number = _local5;
if (isNaN(_local10)){
_local10 = _local9;
};
var _local11:Graphics = graphics;
_local11.clear();
if (_local3){
blendMode = _local3;
};
if (((!((_local8 == "tl tr bl br"))) && ((_local6 > 0)))){
_local12 = 0;
_local13 = 0;
_local14 = 0;
_local15 = 0;
_local16 = (_local6 + _local7);
if (_local8.indexOf("tl") >= 0){
_local12 = _local16;
};
if (_local8.indexOf("tr") >= 0){
_local14 = _local16;
};
if (_local8.indexOf("bl") >= 0){
_local13 = _local16;
};
if (_local8.indexOf("br") >= 0){
_local15 = _local16;
};
_local11.beginFill(_local10, _local4);
GraphicsUtil.drawRoundRectComplex(_local11, 0, 0, _arg1, _arg2, _local12, _local14, _local13, _local15);
_local12 = (_local12) ? _local6 : 0;
_local14 = (_local14) ? _local6 : 0;
_local13 = (_local13) ? _local6 : 0;
_local15 = (_local15) ? _local6 : 0;
GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15);
_local11.endFill();
_local16 = (_local6 + (_local7 / 2));
_local12 = (_local12) ? _local16 : 0;
_local14 = (_local14) ? _local16 : 0;
_local13 = (_local13) ? _local16 : 0;
_local15 = (_local15) ? _local16 : 0;
_local11.beginFill(_local10, _local4);
GraphicsUtil.drawRoundRectComplex(_local11, (_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local12, _local14, _local13, _local15);
_local12 = (_local12) ? _local6 : 0;
_local14 = (_local14) ? _local6 : 0;
_local13 = (_local13) ? _local6 : 0;
_local15 = (_local15) ? _local6 : 0;
GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15);
_local11.endFill();
} else {
_local11.beginFill(_local10, _local4);
_local17 = (((_local6 > 0)) ? (_local6 + _local7) : 0 * 2);
_local11.drawRoundRect(0, 0, _arg1, _arg2, _local17, _local17);
_local17 = (_local6 * 2);
_local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17);
_local11.endFill();
_local11.beginFill(_local10, _local4);
_local17 = (((_local6 > 0)) ? (_local6 + (_local7 / 2)) : 0 * 2);
_local11.drawRoundRect((_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local17, _local17);
_local17 = (_local6 * 2);
_local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17);
_local11.endFill();
};
}
override public function getStyle(_arg1:String){
return (((_arg1 == "focusColor")) ? _focusColor : super.getStyle(_arg1));
}
public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{
}
}
}//package mx.skins.halo
Section 329
//Border (mx.skins.Border)
package mx.skins {
import mx.core.*;
public class Border extends ProgrammaticSkin implements IBorder {
mx_internal static const VERSION:String = "3.3.0.4852";
public function get borderMetrics():EdgeMetrics{
return (EdgeMetrics.EMPTY);
}
}
}//package mx.skins
Section 330
//ProgrammaticSkin (mx.skins.ProgrammaticSkin)
package mx.skins {
import mx.core.*;
import flash.display.*;
import mx.styles.*;
import flash.geom.*;
import mx.managers.*;
import mx.utils.*;
public class ProgrammaticSkin extends FlexShape implements IFlexDisplayObject, IInvalidating, ILayoutManagerClient, ISimpleStyleClient, IProgrammaticSkin {
private var _initialized:Boolean;// = false
private var _height:Number;
private var invalidateDisplayListFlag:Boolean;// = false
private var _styleName:IStyleClient;
private var _nestLevel:int;// = 0
private var _processedDescriptors:Boolean;// = false
private var _updateCompletePendingFlag:Boolean;// = true
private var _width:Number;
mx_internal static const VERSION:String = "3.3.0.4852";
private static var tempMatrix:Matrix = new Matrix();
public function ProgrammaticSkin(){
_width = measuredWidth;
_height = measuredHeight;
}
public function getStyle(_arg1:String){
return ((_styleName) ? _styleName.getStyle(_arg1) : null);
}
protected function updateDisplayList(_arg1:Number, _arg2:Number):void{
}
public function get nestLevel():int{
return (_nestLevel);
}
public function set nestLevel(_arg1:int):void{
_nestLevel = _arg1;
invalidateDisplayList();
}
override public function get height():Number{
return (_height);
}
public function get updateCompletePendingFlag():Boolean{
return (_updateCompletePendingFlag);
}
protected function verticalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{
return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 90));
}
public function validateSize(_arg1:Boolean=false):void{
}
public function invalidateDisplayList():void{
if (((!(invalidateDisplayListFlag)) && ((nestLevel > 0)))){
invalidateDisplayListFlag = true;
UIComponentGlobals.layoutManager.invalidateDisplayList(this);
};
}
public function set updateCompletePendingFlag(_arg1:Boolean):void{
_updateCompletePendingFlag = _arg1;
}
protected function horizontalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{
return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 0));
}
override public function set height(_arg1:Number):void{
_height = _arg1;
invalidateDisplayList();
}
public function set processedDescriptors(_arg1:Boolean):void{
_processedDescriptors = _arg1;
}
public function validateDisplayList():void{
invalidateDisplayListFlag = false;
updateDisplayList(width, height);
}
public function get measuredWidth():Number{
return (0);
}
override public function set width(_arg1:Number):void{
_width = _arg1;
invalidateDisplayList();
}
public function get measuredHeight():Number{
return (0);
}
public function set initialized(_arg1:Boolean):void{
_initialized = _arg1;
}
protected function drawRoundRect(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Matrix=null, _arg9:String="linear", _arg10:Array=null, _arg11:Object=null):void{
var _local13:Number;
var _local14:Array;
var _local15:Object;
var _local12:Graphics = graphics;
if ((((_arg3 == 0)) || ((_arg4 == 0)))){
return;
};
if (_arg6 !== null){
if ((_arg6 is uint)){
_local12.beginFill(uint(_arg6), Number(_arg7));
} else {
if ((_arg6 is Array)){
_local14 = ((_arg7 is Array)) ? (_arg7 as Array) : [_arg7, _arg7];
if (!_arg10){
_arg10 = [0, 0xFF];
};
_local12.beginGradientFill(_arg9, (_arg6 as Array), _local14, _arg10, _arg8);
};
};
};
if (!_arg5){
_local12.drawRect(_arg1, _arg2, _arg3, _arg4);
} else {
if ((_arg5 is Number)){
_local13 = (Number(_arg5) * 2);
_local12.drawRoundRect(_arg1, _arg2, _arg3, _arg4, _local13, _local13);
} else {
GraphicsUtil.drawRoundRectComplex(_local12, _arg1, _arg2, _arg3, _arg4, _arg5.tl, _arg5.tr, _arg5.bl, _arg5.br);
};
};
if (_arg11){
_local15 = _arg11.r;
if ((_local15 is Number)){
_local13 = (Number(_local15) * 2);
_local12.drawRoundRect(_arg11.x, _arg11.y, _arg11.w, _arg11.h, _local13, _local13);
} else {
GraphicsUtil.drawRoundRectComplex(_local12, _arg11.x, _arg11.y, _arg11.w, _arg11.h, _local15.tl, _local15.tr, _local15.bl, _local15.br);
};
};
if (_arg6 !== null){
_local12.endFill();
};
}
public function get processedDescriptors():Boolean{
return (_processedDescriptors);
}
public function set styleName(_arg1:Object):void{
if (_styleName != _arg1){
_styleName = (_arg1 as IStyleClient);
invalidateDisplayList();
};
}
public function setActualSize(_arg1:Number, _arg2:Number):void{
var _local3:Boolean;
if (_width != _arg1){
_width = _arg1;
_local3 = true;
};
if (_height != _arg2){
_height = _arg2;
_local3 = true;
};
if (_local3){
invalidateDisplayList();
};
}
public function styleChanged(_arg1:String):void{
invalidateDisplayList();
}
override public function get width():Number{
return (_width);
}
public function invalidateProperties():void{
}
public function get initialized():Boolean{
return (_initialized);
}
protected function rotatedGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Matrix{
tempMatrix.createGradientBox(_arg3, _arg4, ((_arg5 * Math.PI) / 180), _arg1, _arg2);
return (tempMatrix);
}
public function move(_arg1:Number, _arg2:Number):void{
this.x = _arg1;
this.y = _arg2;
}
public function get styleName():Object{
return (_styleName);
}
public function validateNow():void{
if (invalidateDisplayListFlag){
validateDisplayList();
};
}
public function invalidateSize():void{
}
public function validateProperties():void{
}
}
}//package mx.skins
Section 331
//RectangularBorder (mx.skins.RectangularBorder)
package mx.skins {
import flash.events.*;
import mx.core.*;
import flash.display.*;
import mx.styles.*;
import flash.system.*;
import flash.geom.*;
import mx.resources.*;
import flash.utils.*;
import flash.net.*;
public class RectangularBorder extends Border implements IRectangularBorder {
private var backgroundImage:DisplayObject;
private var backgroundImageHeight:Number;
private var _backgroundImageBounds:Rectangle;
private var backgroundImageStyle:Object;
private var backgroundImageWidth:Number;
private var resourceManager:IResourceManager;
mx_internal static const VERSION:String = "3.3.0.4852";
public function RectangularBorder(){
resourceManager = ResourceManager.getInstance();
super();
addEventListener(Event.REMOVED, removedHandler);
}
public function layoutBackgroundImage():void{
var _local4:Number;
var _local5:Number;
var _local7:Number;
var _local8:Number;
var _local14:Number;
var _local15:Graphics;
var _local1:DisplayObject = parent;
var _local2:EdgeMetrics = ((_local1 is IContainer)) ? IContainer(_local1).viewMetrics : borderMetrics;
var _local3 = !((getStyle("backgroundAttachment") == "fixed"));
if (_backgroundImageBounds){
_local4 = _backgroundImageBounds.width;
_local5 = _backgroundImageBounds.height;
} else {
_local4 = ((width - _local2.left) - _local2.right);
_local5 = ((height - _local2.top) - _local2.bottom);
};
var _local6:Number = getBackgroundSize();
if (isNaN(_local6)){
_local7 = 1;
_local8 = 1;
} else {
_local14 = (_local6 * 0.01);
_local7 = ((_local14 * _local4) / backgroundImageWidth);
_local8 = ((_local14 * _local5) / backgroundImageHeight);
};
backgroundImage.scaleX = _local7;
backgroundImage.scaleY = _local8;
var _local9:Number = Math.round((0.5 * (_local4 - (backgroundImageWidth * _local7))));
var _local10:Number = Math.round((0.5 * (_local5 - (backgroundImageHeight * _local8))));
backgroundImage.x = _local2.left;
backgroundImage.y = _local2.top;
var _local11:Shape = Shape(backgroundImage.mask);
_local11.x = _local2.left;
_local11.y = _local2.top;
if (((_local3) && ((_local1 is IContainer)))){
_local9 = (_local9 - IContainer(_local1).horizontalScrollPosition);
_local10 = (_local10 - IContainer(_local1).verticalScrollPosition);
};
backgroundImage.alpha = getStyle("backgroundAlpha");
backgroundImage.x = (backgroundImage.x + _local9);
backgroundImage.y = (backgroundImage.y + _local10);
var _local12:Number = ((width - _local2.left) - _local2.right);
var _local13:Number = ((height - _local2.top) - _local2.bottom);
if (((!((_local11.width == _local12))) || (!((_local11.height == _local13))))){
_local15 = _local11.graphics;
_local15.clear();
_local15.beginFill(0xFFFFFF);
_local15.drawRect(0, 0, _local12, _local13);
_local15.endFill();
};
}
public function set backgroundImageBounds(_arg1:Rectangle):void{
_backgroundImageBounds = _arg1;
invalidateDisplayList();
}
private function getBackgroundSize():Number{
var _local3:int;
var _local1:Number = NaN;
var _local2:Object = getStyle("backgroundSize");
if (((_local2) && ((_local2 is String)))){
_local3 = _local2.indexOf("%");
if (_local3 != -1){
_local1 = Number(_local2.substr(0, _local3));
};
};
return (_local1);
}
private function removedHandler(_arg1:Event):void{
var _local2:IChildList;
if (backgroundImage){
_local2 = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent);
_local2.removeChild(backgroundImage.mask);
_local2.removeChild(backgroundImage);
backgroundImage = null;
};
}
private function initBackgroundImage(_arg1:DisplayObject):void{
backgroundImage = _arg1;
if ((_arg1 is Loader)){
backgroundImageWidth = Loader(_arg1).contentLoaderInfo.width;
backgroundImageHeight = Loader(_arg1).contentLoaderInfo.height;
} else {
backgroundImageWidth = backgroundImage.width;
backgroundImageHeight = backgroundImage.height;
if ((_arg1 is ISimpleStyleClient)){
ISimpleStyleClient(_arg1).styleName = styleName;
};
};
var _local2:IChildList = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent);
var _local3:Shape = new FlexShape();
_local3.name = "backgroundMask";
_local3.x = 0;
_local3.y = 0;
_local2.addChild(_local3);
var _local4:int = _local2.getChildIndex(this);
_local2.addChildAt(backgroundImage, (_local4 + 1));
backgroundImage.mask = _local3;
}
public function get backgroundImageBounds():Rectangle{
return (_backgroundImageBounds);
}
public function get hasBackgroundImage():Boolean{
return (!((backgroundImage == null)));
}
private function completeEventHandler(_arg1:Event):void{
if (!parent){
return;
};
var _local2:DisplayObject = DisplayObject(LoaderInfo(_arg1.target).loader);
initBackgroundImage(_local2);
layoutBackgroundImage();
dispatchEvent(_arg1.clone());
}
override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{
var cls:Class;
var newStyleObj:DisplayObject;
var loader:Loader;
var loaderContext:LoaderContext;
var message:String;
var unscaledWidth = _arg1;
var unscaledHeight = _arg2;
if (!parent){
return;
};
var newStyle:Object = getStyle("backgroundImage");
if (newStyle != backgroundImageStyle){
removedHandler(null);
backgroundImageStyle = newStyle;
if (((newStyle) && ((newStyle as Class)))){
cls = Class(newStyle);
initBackgroundImage(new (cls));
} else {
if (((newStyle) && ((newStyle is String)))){
try {
cls = Class(getDefinitionByName(String(newStyle)));
} catch(e:Error) {
};
if (cls){
newStyleObj = new (cls);
initBackgroundImage(newStyleObj);
} else {
loader = new FlexLoader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeEventHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorEventHandler);
loader.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, errorEventHandler);
loaderContext = new LoaderContext();
loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain);
loader.load(new URLRequest(String(newStyle)), loaderContext);
};
} else {
if (newStyle){
message = resourceManager.getString("skins", "notLoaded", [newStyle]);
throw (new Error(message));
};
};
};
};
if (backgroundImage){
layoutBackgroundImage();
};
}
private function errorEventHandler(_arg1:Event):void{
}
}
}//package mx.skins
Section 332
//CSSStyleDeclaration (mx.styles.CSSStyleDeclaration)
package mx.styles {
import flash.events.*;
import mx.core.*;
import flash.display.*;
import mx.managers.*;
import flash.utils.*;
public class CSSStyleDeclaration extends EventDispatcher {
mx_internal var effects:Array;
protected var overrides:Object;
public var defaultFactory:Function;
public var factory:Function;
mx_internal var selectorRefCount:int;// = 0
private var styleManager:IStyleManager2;
private var clones:Dictionary;
mx_internal static const VERSION:String = "3.3.0.4852";
private static const NOT_A_COLOR:uint = 4294967295;
private static const FILTERMAP_PROP:String = "__reserved__filterMap";
public function CSSStyleDeclaration(_arg1:String=null){
clones = new Dictionary(true);
super();
if (_arg1){
styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2);
styleManager.setStyleDeclaration(_arg1, this, false);
};
}
mx_internal function addStyleToProtoChain(_arg1:Object, _arg2:DisplayObject, _arg3:Object=null):Object{
var p:String;
var emptyObjectFactory:Function;
var filteredChain:Object;
var filterObjectFactory:Function;
var i:String;
var chain = _arg1;
var target = _arg2;
var filterMap = _arg3;
var nodeAddedToChain:Boolean;
var originalChain:Object = chain;
if (filterMap){
chain = {};
};
if (defaultFactory != null){
defaultFactory.prototype = chain;
chain = new defaultFactory();
nodeAddedToChain = true;
};
if (factory != null){
factory.prototype = chain;
chain = new factory();
nodeAddedToChain = true;
};
if (overrides){
if ((((defaultFactory == null)) && ((factory == null)))){
emptyObjectFactory = function ():void{
};
emptyObjectFactory.prototype = chain;
chain = new (emptyObjectFactory);
nodeAddedToChain = true;
};
for (p in overrides) {
if (overrides[p] === undefined){
delete chain[p];
} else {
chain[p] = overrides[p];
};
};
};
if (filterMap){
if (nodeAddedToChain){
filteredChain = {};
filterObjectFactory = function ():void{
};
filterObjectFactory.prototype = originalChain;
filteredChain = new (filterObjectFactory);
for (i in chain) {
if (filterMap[i] != null){
filteredChain[filterMap[i]] = chain[i];
};
};
chain = filteredChain;
chain[FILTERMAP_PROP] = filterMap;
} else {
chain = originalChain;
};
};
if (nodeAddedToChain){
clones[chain] = 1;
};
return (chain);
}
public function getStyle(_arg1:String){
var _local2:*;
var _local3:*;
if (overrides){
if ((((_arg1 in overrides)) && ((overrides[_arg1] === undefined)))){
return (undefined);
};
_local3 = overrides[_arg1];
if (_local3 !== undefined){
return (_local3);
};
};
if (factory != null){
factory.prototype = {};
_local2 = new factory();
_local3 = _local2[_arg1];
if (_local3 !== undefined){
return (_local3);
};
};
if (defaultFactory != null){
defaultFactory.prototype = {};
_local2 = new defaultFactory();
_local3 = _local2[_arg1];
if (_local3 !== undefined){
return (_local3);
};
};
return (undefined);
}
public function clearStyle(_arg1:String):void{
setStyle(_arg1, undefined);
}
public function setStyle(_arg1:String, _arg2):void{
var _local7:int;
var _local8:Object;
var _local3:Object = getStyle(_arg1);
var _local4:Boolean;
if ((((((((((selectorRefCount > 0)) && ((factory == null)))) && ((defaultFactory == null)))) && (!(overrides)))) && (!((_local3 === _arg2))))){
_local4 = true;
};
if (_arg2 !== undefined){
setStyle(_arg1, _arg2);
} else {
if (_arg2 == _local3){
return;
};
setStyle(_arg1, _arg2);
};
var _local5:Array = SystemManagerGlobals.topLevelSystemManagers;
var _local6:int = _local5.length;
if (_local4){
_local7 = 0;
while (_local7 < _local6) {
_local8 = _local5[_local7];
_local8.regenerateStyleCache(true);
_local7++;
};
};
_local7 = 0;
while (_local7 < _local6) {
_local8 = _local5[_local7];
_local8.notifyStyleChangeInChildren(_arg1, true);
_local7++;
};
}
private function clearStyleAttr(_arg1:String):void{
var _local2:*;
if (!overrides){
overrides = {};
};
overrides[_arg1] = undefined;
for (_local2 in clones) {
delete _local2[_arg1];
};
}
mx_internal function createProtoChainRoot():Object{
var _local1:Object = {};
if (defaultFactory != null){
defaultFactory.prototype = _local1;
_local1 = new defaultFactory();
};
if (factory != null){
factory.prototype = _local1;
_local1 = new factory();
};
clones[_local1] = 1;
return (_local1);
}
mx_internal function clearOverride(_arg1:String):void{
if (((overrides) && (overrides[_arg1]))){
delete overrides[_arg1];
};
}
mx_internal function setStyle(_arg1:String, _arg2):void{
var _local3:Object;
var _local4:*;
var _local5:Number;
var _local6:Object;
if (_arg2 === undefined){
clearStyleAttr(_arg1);
return;
};
if ((_arg2 is String)){
if (!styleManager){
styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2);
};
_local5 = styleManager.getColorName(_arg2);
if (_local5 != NOT_A_COLOR){
_arg2 = _local5;
};
};
if (defaultFactory != null){
_local3 = new defaultFactory();
if (_local3[_arg1] !== _arg2){
if (!overrides){
overrides = {};
};
overrides[_arg1] = _arg2;
} else {
if (overrides){
delete overrides[_arg1];
};
};
};
if (factory != null){
_local3 = new factory();
if (_local3[_arg1] !== _arg2){
if (!overrides){
overrides = {};
};
overrides[_arg1] = _arg2;
} else {
if (overrides){
delete overrides[_arg1];
};
};
};
if ((((defaultFactory == null)) && ((factory == null)))){
if (!overrides){
overrides = {};
};
overrides[_arg1] = _arg2;
};
for (_local4 in clones) {
_local6 = _local4[FILTERMAP_PROP];
if (_local6){
if (_local6[_arg1] != null){
_local4[_local6[_arg1]] = _arg2;
};
} else {
_local4[_arg1] = _arg2;
};
};
}
}
}//package mx.styles
Section 333
//ISimpleStyleClient (mx.styles.ISimpleStyleClient)
package mx.styles {
public interface ISimpleStyleClient {
function set styleName(_arg1:Object):void;
function styleChanged(_arg1:String):void;
function get styleName():Object;
}
}//package mx.styles
Section 334
//IStyleClient (mx.styles.IStyleClient)
package mx.styles {
public interface IStyleClient extends ISimpleStyleClient {
function regenerateStyleCache(_arg1:Boolean):void;
function get className():String;
function clearStyle(_arg1:String):void;
function getClassStyleDeclarations():Array;
function get inheritingStyles():Object;
function set nonInheritingStyles(_arg1:Object):void;
function setStyle(_arg1:String, _arg2):void;
function get styleDeclaration():CSSStyleDeclaration;
function set styleDeclaration(_arg1:CSSStyleDeclaration):void;
function get nonInheritingStyles():Object;
function set inheritingStyles(_arg1:Object):void;
function getStyle(_arg1:String);
function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void;
function registerEffects(_arg1:Array):void;
}
}//package mx.styles
Section 335
//IStyleManager (mx.styles.IStyleManager)
package mx.styles {
import flash.events.*;
public interface IStyleManager {
function isColorName(_arg1:String):Boolean;
function registerParentDisplayListInvalidatingStyle(_arg1:String):void;
function registerInheritingStyle(_arg1:String):void;
function set stylesRoot(_arg1:Object):void;
function get typeSelectorCache():Object;
function styleDeclarationsChanged():void;
function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void;
function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean;
function isSizeInvalidatingStyle(_arg1:String):Boolean;
function get inheritingStyles():Object;
function isValidStyleValue(_arg1):Boolean;
function isParentSizeInvalidatingStyle(_arg1:String):Boolean;
function getColorName(_arg1:Object):uint;
function set typeSelectorCache(_arg1:Object):void;
function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void;
function getColorNames(_arg1:Array):void;
function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher;
function isInheritingStyle(_arg1:String):Boolean;
function set inheritingStyles(_arg1:Object):void;
function get stylesRoot():Object;
function initProtoChainRoots():void;
function registerColorName(_arg1:String, _arg2:uint):void;
function registerParentSizeInvalidatingStyle(_arg1:String):void;
function registerSizeInvalidatingStyle(_arg1:String):void;
function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void;
function isInheritingTextFormatStyle(_arg1:String):Boolean;
function getStyleDeclaration(_arg1:String):CSSStyleDeclaration;
}
}//package mx.styles
Section 336
//IStyleManager2 (mx.styles.IStyleManager2)
package mx.styles {
import flash.events.*;
import flash.system.*;
public interface IStyleManager2 extends IStyleManager {
function get selectors():Array;
function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher;
}
}//package mx.styles
Section 337
//IStyleModule (mx.styles.IStyleModule)
package mx.styles {
public interface IStyleModule {
function unload():void;
}
}//package mx.styles
Section 338
//StyleManager (mx.styles.StyleManager)
package mx.styles {
import flash.events.*;
import mx.core.*;
import flash.system.*;
public class StyleManager {
mx_internal static const VERSION:String = "3.3.0.4852";
public static const NOT_A_COLOR:uint = 4294967295;
private static var _impl:IStyleManager2;
private static var implClassDependency:StyleManagerImpl;
public static function isParentSizeInvalidatingStyle(_arg1:String):Boolean{
return (impl.isParentSizeInvalidatingStyle(_arg1));
}
public static function registerInheritingStyle(_arg1:String):void{
impl.registerInheritingStyle(_arg1);
}
mx_internal static function set stylesRoot(_arg1:Object):void{
impl.stylesRoot = _arg1;
}
mx_internal static function get inheritingStyles():Object{
return (impl.inheritingStyles);
}
mx_internal static function styleDeclarationsChanged():void{
impl.styleDeclarationsChanged();
}
public static function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{
impl.setStyleDeclaration(_arg1, _arg2, _arg3);
}
public static function registerParentDisplayListInvalidatingStyle(_arg1:String):void{
impl.registerParentDisplayListInvalidatingStyle(_arg1);
}
mx_internal static function get typeSelectorCache():Object{
return (impl.typeSelectorCache);
}
mx_internal static function set inheritingStyles(_arg1:Object):void{
impl.inheritingStyles = _arg1;
}
public static function isColorName(_arg1:String):Boolean{
return (impl.isColorName(_arg1));
}
public static function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{
return (impl.isParentDisplayListInvalidatingStyle(_arg1));
}
public static function isSizeInvalidatingStyle(_arg1:String):Boolean{
return (impl.isSizeInvalidatingStyle(_arg1));
}
public static function getColorName(_arg1:Object):uint{
return (impl.getColorName(_arg1));
}
mx_internal static function set typeSelectorCache(_arg1:Object):void{
impl.typeSelectorCache = _arg1;
}
public static function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{
impl.unloadStyleDeclarations(_arg1, _arg2);
}
public static function getColorNames(_arg1:Array):void{
impl.getColorNames(_arg1);
}
public static function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:ApplicationDomain=null, _arg5:SecurityDomain=null):IEventDispatcher{
return (impl.loadStyleDeclarations2(_arg1, _arg2, _arg4, _arg5));
}
private static function get impl():IStyleManager2{
if (!_impl){
_impl = IStyleManager2(Singleton.getInstance("mx.styles::IStyleManager2"));
};
return (_impl);
}
public static function isValidStyleValue(_arg1):Boolean{
return (impl.isValidStyleValue(_arg1));
}
mx_internal static function get stylesRoot():Object{
return (impl.stylesRoot);
}
public static function isInheritingStyle(_arg1:String):Boolean{
return (impl.isInheritingStyle(_arg1));
}
mx_internal static function initProtoChainRoots():void{
impl.initProtoChainRoots();
}
public static function registerParentSizeInvalidatingStyle(_arg1:String):void{
impl.registerParentSizeInvalidatingStyle(_arg1);
}
public static function get selectors():Array{
return (impl.selectors);
}
public static function registerSizeInvalidatingStyle(_arg1:String):void{
impl.registerSizeInvalidatingStyle(_arg1);
}
public static function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{
impl.clearStyleDeclaration(_arg1, _arg2);
}
public static function registerColorName(_arg1:String, _arg2:uint):void{
impl.registerColorName(_arg1, _arg2);
}
public static function isInheritingTextFormatStyle(_arg1:String):Boolean{
return (impl.isInheritingTextFormatStyle(_arg1));
}
public static function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{
return (impl.getStyleDeclaration(_arg1));
}
}
}//package mx.styles
Section 339
//StyleManagerImpl (mx.styles.StyleManagerImpl)
package mx.styles {
import flash.events.*;
import mx.core.*;
import flash.system.*;
import mx.modules.*;
import mx.events.*;
import mx.resources.*;
import mx.managers.*;
import flash.utils.*;
public class StyleManagerImpl implements IStyleManager2 {
private var _stylesRoot:Object;
private var _selectors:Object;
private var styleModules:Object;
private var _inheritingStyles:Object;
private var resourceManager:IResourceManager;
private var _typeSelectorCache:Object;
mx_internal static const VERSION:String = "3.3.0.4852";
private static var parentSizeInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true};
private static var colorNames:Object = {transparent:"transparent", black:0, blue:0xFF, green:0x8000, gray:0x808080, silver:0xC0C0C0, lime:0xFF00, olive:0x808000, white:0xFFFFFF, yellow:0xFFFF00, maroon:0x800000, navy:128, red:0xFF0000, purple:0x800080, teal:0x8080, fuchsia:0xFF00FF, aqua:0xFFFF, magenta:0xFF00FF, cyan:0xFFFF, halogreen:8453965, haloblue:40447, haloorange:0xFFB600, halosilver:11455193};
private static var inheritingTextFormatStyles:Object = {align:true, bold:true, color:true, font:true, indent:true, italic:true, size:true};
private static var instance:IStyleManager2;
private static var parentDisplayListInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true};
private static var sizeInvalidatingStyles:Object = {borderStyle:true, borderThickness:true, fontAntiAliasType:true, fontFamily:true, fontGridFitType:true, fontSharpness:true, fontSize:true, fontStyle:true, fontThickness:true, fontWeight:true, headerHeight:true, horizontalAlign:true, horizontalGap:true, kerning:true, leading:true, letterSpacing:true, paddingBottom:true, paddingLeft:true, paddingRight:true, paddingTop:true, strokeWidth:true, tabHeight:true, tabWidth:true, verticalAlign:true, verticalGap:true};
public function StyleManagerImpl(){
_selectors = {};
styleModules = {};
resourceManager = ResourceManager.getInstance();
_inheritingStyles = {};
_typeSelectorCache = {};
super();
}
public function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{
_arg2.selectorRefCount++;
_selectors[_arg1] = _arg2;
typeSelectorCache = {};
if (_arg3){
styleDeclarationsChanged();
};
}
public function registerParentDisplayListInvalidatingStyle(_arg1:String):void{
parentDisplayListInvalidatingStyles[_arg1] = true;
}
public function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{
var _local2:int;
if (_arg1.charAt(0) != "."){
_local2 = _arg1.lastIndexOf(".");
if (_local2 != -1){
_arg1 = _arg1.substr((_local2 + 1));
};
};
return (_selectors[_arg1]);
}
public function set typeSelectorCache(_arg1:Object):void{
_typeSelectorCache = _arg1;
}
public function isColorName(_arg1:String):Boolean{
return (!((colorNames[_arg1.toLowerCase()] === undefined)));
}
public function set inheritingStyles(_arg1:Object):void{
_inheritingStyles = _arg1;
}
public function getColorNames(_arg1:Array):void{
var _local4:uint;
if (!_arg1){
return;
};
var _local2:int = _arg1.length;
var _local3:int;
while (_local3 < _local2) {
if (((!((_arg1[_local3] == null))) && (isNaN(_arg1[_local3])))){
_local4 = getColorName(_arg1[_local3]);
if (_local4 != StyleManager.NOT_A_COLOR){
_arg1[_local3] = _local4;
};
};
_local3++;
};
}
public function isInheritingTextFormatStyle(_arg1:String):Boolean{
return ((inheritingTextFormatStyles[_arg1] == true));
}
public function registerParentSizeInvalidatingStyle(_arg1:String):void{
parentSizeInvalidatingStyles[_arg1] = true;
}
public function registerColorName(_arg1:String, _arg2:uint):void{
colorNames[_arg1.toLowerCase()] = _arg2;
}
public function isParentSizeInvalidatingStyle(_arg1:String):Boolean{
return ((parentSizeInvalidatingStyles[_arg1] == true));
}
public function registerInheritingStyle(_arg1:String):void{
inheritingStyles[_arg1] = true;
}
public function set stylesRoot(_arg1:Object):void{
_stylesRoot = _arg1;
}
public function get typeSelectorCache():Object{
return (_typeSelectorCache);
}
public function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{
return ((parentDisplayListInvalidatingStyles[_arg1] == true));
}
public function isSizeInvalidatingStyle(_arg1:String):Boolean{
return ((sizeInvalidatingStyles[_arg1] == true));
}
public function styleDeclarationsChanged():void{
var _local4:Object;
var _local1:Array = SystemManagerGlobals.topLevelSystemManagers;
var _local2:int = _local1.length;
var _local3:int;
while (_local3 < _local2) {
_local4 = _local1[_local3];
_local4.regenerateStyleCache(true);
_local4.notifyStyleChangeInChildren(null, true);
_local3++;
};
}
public function isValidStyleValue(_arg1):Boolean{
return (!((_arg1 === undefined)));
}
public function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher{
return (loadStyleDeclarations2(_arg1, _arg2));
}
public function get inheritingStyles():Object{
return (_inheritingStyles);
}
public function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{
var _local4:IModuleInfo;
var _local3:StyleModuleInfo = styleModules[_arg1];
if (_local3){
_local3.styleModule.unload();
_local4 = _local3.module;
_local4.unload();
_local4.removeEventListener(ModuleEvent.READY, _local3.readyHandler);
_local4.removeEventListener(ModuleEvent.ERROR, _local3.errorHandler);
styleModules[_arg1] = null;
};
if (_arg2){
styleDeclarationsChanged();
};
}
public function getColorName(_arg1:Object):uint{
var _local2:Number;
var _local3:*;
if ((_arg1 is String)){
if (_arg1.charAt(0) == "#"){
_local2 = Number(("0x" + _arg1.slice(1)));
return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2));
};
if ((((_arg1.charAt(1) == "x")) && ((_arg1.charAt(0) == "0")))){
_local2 = Number(_arg1);
return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2));
};
_local3 = colorNames[_arg1.toLowerCase()];
if (_local3 === undefined){
return (StyleManager.NOT_A_COLOR);
};
return (uint(_local3));
};
return (uint(_arg1));
}
public function isInheritingStyle(_arg1:String):Boolean{
return ((inheritingStyles[_arg1] == true));
}
public function get stylesRoot():Object{
return (_stylesRoot);
}
public function initProtoChainRoots():void{
if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){
delete _inheritingStyles["textDecoration"];
delete _inheritingStyles["leading"];
};
if (!stylesRoot){
stylesRoot = _selectors["global"].addStyleToProtoChain({}, null);
};
}
public function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{
var module:IModuleInfo;
var styleEventDispatcher:StyleEventDispatcher;
var timer:Timer;
var timerHandler:Function;
var url = _arg1;
var update = _arg2;
var applicationDomain = _arg3;
var securityDomain = _arg4;
module = ModuleManager.getModule(url);
var readyHandler:Function = function (_arg1:ModuleEvent):void{
var _local2:IStyleModule = IStyleModule(_arg1.module.factory.create());
styleModules[_arg1.module.url].styleModule = _local2;
if (update){
styleDeclarationsChanged();
};
};
module.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true);
styleEventDispatcher = new StyleEventDispatcher(module);
var errorHandler:Function = function (_arg1:ModuleEvent):void{
var _local3:StyleEvent;
var _local2:String = resourceManager.getString("styles", "unableToLoad", [_arg1.errorText, url]);
if (styleEventDispatcher.willTrigger(StyleEvent.ERROR)){
_local3 = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable);
_local3.bytesLoaded = 0;
_local3.bytesTotal = 0;
_local3.errorText = _local2;
styleEventDispatcher.dispatchEvent(_local3);
} else {
throw (new Error(_local2));
};
};
module.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true);
styleModules[url] = new StyleModuleInfo(module, readyHandler, errorHandler);
timer = new Timer(0);
timerHandler = function (_arg1:TimerEvent):void{
timer.removeEventListener(TimerEvent.TIMER, timerHandler);
timer.stop();
module.load(applicationDomain, securityDomain);
};
timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true);
timer.start();
return (styleEventDispatcher);
}
public function registerSizeInvalidatingStyle(_arg1:String):void{
sizeInvalidatingStyles[_arg1] = true;
}
public function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{
var _local3:CSSStyleDeclaration = getStyleDeclaration(_arg1);
if (((_local3) && ((_local3.selectorRefCount > 0)))){
_local3.selectorRefCount--;
};
delete _selectors[_arg1];
if (_arg2){
styleDeclarationsChanged();
};
}
public function get selectors():Array{
var _local2:String;
var _local1:Array = [];
for (_local2 in _selectors) {
_local1.push(_local2);
};
return (_local1);
}
public static function getInstance():IStyleManager2{
if (!instance){
instance = new (StyleManagerImpl);
};
return (instance);
}
}
}//package mx.styles
import flash.events.*;
import mx.modules.*;
import mx.events.*;
class StyleEventDispatcher extends EventDispatcher {
private function StyleEventDispatcher(_arg1:IModuleInfo){
_arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true);
_arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true);
}
private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{
var _local2:StyleEvent = new StyleEvent(StyleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = _arg1.bytesLoaded;
_local2.bytesTotal = _arg1.bytesTotal;
dispatchEvent(_local2);
}
private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{
var _local2:StyleEvent = new StyleEvent(StyleEvent.COMPLETE);
dispatchEvent(_local2);
}
private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{
var _local2:StyleEvent = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable);
_local2.bytesLoaded = _arg1.bytesLoaded;
_local2.bytesTotal = _arg1.bytesTotal;
_local2.errorText = _arg1.errorText;
dispatchEvent(_local2);
}
}
class StyleModuleInfo {
public var errorHandler:Function;
public var readyHandler:Function;
public var module:IModuleInfo;
public var styleModule:IStyleModule;
private function StyleModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){
this.module = _arg1;
this.readyHandler = _arg2;
this.errorHandler = _arg3;
}
}
Section 340
//ColorUtil (mx.utils.ColorUtil)
package mx.utils {
public class ColorUtil {
mx_internal static const VERSION:String = "3.3.0.4852";
public static function adjustBrightness2(_arg1:uint, _arg2:Number):uint{
var _local3:Number;
var _local4:Number;
var _local5:Number;
if (_arg2 == 0){
return (_arg1);
};
if (_arg2 < 0){
_arg2 = ((100 + _arg2) / 100);
_local3 = (((_arg1 >> 16) & 0xFF) * _arg2);
_local4 = (((_arg1 >> 8) & 0xFF) * _arg2);
_local5 = ((_arg1 & 0xFF) * _arg2);
} else {
_arg2 = (_arg2 / 100);
_local3 = ((_arg1 >> 16) & 0xFF);
_local4 = ((_arg1 >> 8) & 0xFF);
_local5 = (_arg1 & 0xFF);
_local3 = (_local3 + ((0xFF - _local3) * _arg2));
_local4 = (_local4 + ((0xFF - _local4) * _arg2));
_local5 = (_local5 + ((0xFF - _local5) * _arg2));
_local3 = Math.min(_local3, 0xFF);
_local4 = Math.min(_local4, 0xFF);
_local5 = Math.min(_local5, 0xFF);
};
return ((((_local3 << 16) | (_local4 << 8)) | _local5));
}
public static function rgbMultiply(_arg1:uint, _arg2:uint):uint{
var _local3:Number = ((_arg1 >> 16) & 0xFF);
var _local4:Number = ((_arg1 >> 8) & 0xFF);
var _local5:Number = (_arg1 & 0xFF);
var _local6:Number = ((_arg2 >> 16) & 0xFF);
var _local7:Number = ((_arg2 >> 8) & 0xFF);
var _local8:Number = (_arg2 & 0xFF);
return ((((((_local3 * _local6) / 0xFF) << 16) | (((_local4 * _local7) / 0xFF) << 8)) | ((_local5 * _local8) / 0xFF)));
}
public static function adjustBrightness(_arg1:uint, _arg2:Number):uint{
var _local3:Number = Math.max(Math.min((((_arg1 >> 16) & 0xFF) + _arg2), 0xFF), 0);
var _local4:Number = Math.max(Math.min((((_arg1 >> 8) & 0xFF) + _arg2), 0xFF), 0);
var _local5:Number = Math.max(Math.min(((_arg1 & 0xFF) + _arg2), 0xFF), 0);
return ((((_local3 << 16) | (_local4 << 8)) | _local5));
}
}
}//package mx.utils
Section 341
//GraphicsUtil (mx.utils.GraphicsUtil)
package mx.utils {
import flash.display.*;
public class GraphicsUtil {
mx_internal static const VERSION:String = "3.3.0.4852";
public static function drawRoundRectComplex(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{
var _local10:Number = (_arg2 + _arg4);
var _local11:Number = (_arg3 + _arg5);
var _local12:Number = ((_arg4 < _arg5)) ? (_arg4 * 2) : (_arg5 * 2);
_arg6 = ((_arg6 < _local12)) ? _arg6 : _local12;
_arg7 = ((_arg7 < _local12)) ? _arg7 : _local12;
_arg8 = ((_arg8 < _local12)) ? _arg8 : _local12;
_arg9 = ((_arg9 < _local12)) ? _arg9 : _local12;
var _local13:Number = (_arg9 * 0.292893218813453);
var _local14:Number = (_arg9 * 0.585786437626905);
_arg1.moveTo(_local10, (_local11 - _arg9));
_arg1.curveTo(_local10, (_local11 - _local14), (_local10 - _local13), (_local11 - _local13));
_arg1.curveTo((_local10 - _local14), _local11, (_local10 - _arg9), _local11);
_local13 = (_arg8 * 0.292893218813453);
_local14 = (_arg8 * 0.585786437626905);
_arg1.lineTo((_arg2 + _arg8), _local11);
_arg1.curveTo((_arg2 + _local14), _local11, (_arg2 + _local13), (_local11 - _local13));
_arg1.curveTo(_arg2, (_local11 - _local14), _arg2, (_local11 - _arg8));
_local13 = (_arg6 * 0.292893218813453);
_local14 = (_arg6 * 0.585786437626905);
_arg1.lineTo(_arg2, (_arg3 + _arg6));
_arg1.curveTo(_arg2, (_arg3 + _local14), (_arg2 + _local13), (_arg3 + _local13));
_arg1.curveTo((_arg2 + _local14), _arg3, (_arg2 + _arg6), _arg3);
_local13 = (_arg7 * 0.292893218813453);
_local14 = (_arg7 * 0.585786437626905);
_arg1.lineTo((_local10 - _arg7), _arg3);
_arg1.curveTo((_local10 - _local14), _arg3, (_local10 - _local13), (_arg3 + _local13));
_arg1.curveTo(_local10, (_arg3 + _local14), _local10, (_arg3 + _arg7));
_arg1.lineTo(_local10, (_local11 - _arg9));
}
}
}//package mx.utils
Section 342
//NameUtil (mx.utils.NameUtil)
package mx.utils {
import mx.core.*;
import flash.display.*;
import flash.utils.*;
public class NameUtil {
mx_internal static const VERSION:String = "3.3.0.4852";
private static var counter:int = 0;
public static function displayObjectToString(_arg1:DisplayObject):String{
var result:String;
var o:DisplayObject;
var s:String;
var indices:Array;
var displayObject = _arg1;
try {
o = displayObject;
while (o != null) {
if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){
break;
};
s = o.name;
if ((o is IRepeaterClient)){
indices = IRepeaterClient(o).instanceIndices;
if (indices){
s = (s + (("[" + indices.join("][")) + "]"));
};
};
result = ((result == null)) ? s : ((s + ".") + result);
o = o.parent;
};
} catch(e:SecurityError) {
};
return (result);
}
public static function createUniqueName(_arg1:Object):String{
if (!_arg1){
return (null);
};
var _local2:String = getQualifiedClassName(_arg1);
var _local3:int = _local2.indexOf("::");
if (_local3 != -1){
_local2 = _local2.substr((_local3 + 2));
};
var _local4:int = _local2.charCodeAt((_local2.length - 1));
if ((((_local4 >= 48)) && ((_local4 <= 57)))){
_local2 = (_local2 + "_");
};
return ((_local2 + counter++));
}
}
}//package mx.utils
Section 343
//StringUtil (mx.utils.StringUtil)
package mx.utils {
public class StringUtil {
mx_internal static const VERSION:String = "3.3.0.4852";
public static function trim(_arg1:String):String{
if (_arg1 == null){
return ("");
};
var _local2:int;
while (isWhitespace(_arg1.charAt(_local2))) {
_local2++;
};
var _local3:int = (_arg1.length - 1);
while (isWhitespace(_arg1.charAt(_local3))) {
_local3--;
};
if (_local3 >= _local2){
return (_arg1.slice(_local2, (_local3 + 1)));
};
return ("");
}
public static function isWhitespace(_arg1:String):Boolean{
switch (_arg1){
case " ":
case "\t":
case "\r":
case "\n":
case "\f":
return (true);
default:
return (false);
};
}
public static function substitute(_arg1:String, ... _args):String{
var _local4:Array;
if (_arg1 == null){
return ("");
};
var _local3:uint = _args.length;
if ((((_local3 == 1)) && ((_args[0] is Array)))){
_local4 = (_args[0] as Array);
_local3 = _local4.length;
} else {
_local4 = _args;
};
var _local5:int;
while (_local5 < _local3) {
_arg1 = _arg1.replace(new RegExp((("\\{" + _local5) + "\\}"), "g"), _local4[_local5]);
_local5++;
};
return (_arg1);
}
public static function trimArrayElements(_arg1:String, _arg2:String):String{
var _local3:Array;
var _local4:int;
var _local5:int;
if (((!((_arg1 == ""))) && (!((_arg1 == null))))){
_local3 = _arg1.split(_arg2);
_local4 = _local3.length;
_local5 = 0;
while (_local5 < _local4) {
_local3[_local5] = StringUtil.trim(_local3[_local5]);
_local5++;
};
if (_local4 > 0){
_arg1 = _local3.join(_arg2);
};
};
return (_arg1);
}
}
}//package mx.utils
Section 344
//Action (org.flintparticles.common.actions.Action)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public interface Action {
function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.actions
Section 345
//ActionBase (org.flintparticles.common.actions.ActionBase)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class ActionBase implements Action {
public function addedToEmitter(_arg1:Emitter):void{
}
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
}
}
}//package org.flintparticles.common.actions
Section 346
//Age (org.flintparticles.common.actions.Age)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.energyEasing.*;
public class Age extends ActionBase {
private var _easing:Function;
public function Age(_arg1:Function=null){
if (_arg1 == null){
_easing = Linear.easeNone;
} else {
_easing = _arg1;
};
}
public function set easing(_arg1:Function):void{
_easing = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
_arg2.age = (_arg2.age + _arg3);
if (_arg2.age >= _arg2.lifetime){
_arg2.energy = 0;
_arg2.isDead = true;
} else {
_arg2.energy = _easing(_arg2.age, _arg2.lifetime);
};
}
public function get easing():Function{
return (_easing);
}
}
}//package org.flintparticles.common.actions
Section 347
//Fade (org.flintparticles.common.actions.Fade)
package org.flintparticles.common.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class Fade extends ActionBase {
private var _endAlpha:Number;
private var _diffAlpha:Number;
public function Fade(_arg1:Number=1, _arg2:Number=0){
_diffAlpha = (_arg1 - _arg2);
_endAlpha = _arg2;
}
public function get endAlpha():Number{
return (_endAlpha);
}
public function set endAlpha(_arg1:Number):void{
_diffAlpha = ((_endAlpha + _diffAlpha) - _arg1);
_endAlpha = _arg1;
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Number = (_endAlpha + (_diffAlpha * _arg2.energy));
_arg2.color = ((_arg2.color & 0xFFFFFF) | (Math.round((_local4 * 0xFF)) << 24));
}
override public function getDefaultPriority():Number{
return (-5);
}
public function set startAlpha(_arg1:Number):void{
_diffAlpha = (_arg1 - _endAlpha);
}
public function get startAlpha():Number{
return ((_endAlpha + _diffAlpha));
}
}
}//package org.flintparticles.common.actions
Section 348
//Activity (org.flintparticles.common.activities.Activity)
package org.flintparticles.common.activities {
import org.flintparticles.common.emitters.*;
public interface Activity {
function initialize(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function update(_arg1:Emitter, _arg2:Number):void;
function addedToEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.activities
Section 349
//Blast (org.flintparticles.common.counters.Blast)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class Blast implements Counter {
private var _startCount:uint;
public function Blast(_arg1:uint){
_startCount = _arg1;
}
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function startEmitter(_arg1:Emitter):uint{
return (_startCount);
}
public function resume():void{
}
public function set startCount(_arg1:Number):void{
_startCount = _arg1;
}
public function get startCount():Number{
return (_startCount);
}
}
}//package org.flintparticles.common.counters
Section 350
//Counter (org.flintparticles.common.counters.Counter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public interface Counter {
function stop():void;
function startEmitter(_arg1:Emitter):uint;
function updateEmitter(_arg1:Emitter, _arg2:Number):uint;
function resume():void;
}
}//package org.flintparticles.common.counters
Section 351
//TimePeriod (org.flintparticles.common.counters.TimePeriod)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.easing.*;
public class TimePeriod implements Counter {
private var _timePassed:Number;
private var _easing:Function;
private var _stop:Boolean;// = false
private var _particles:uint;
private var _duration:Number;
private var _particlesPassed:uint;
public function TimePeriod(_arg1:uint, _arg2:Number, _arg3:Function=null){
_particles = _arg1;
_duration = _arg2;
if (_arg3 == null){
_easing = Linear.easeNone;
} else {
_easing = _arg3;
};
}
public function get numParticles():uint{
return (_particles);
}
public function stop():void{
_stop = true;
}
public function set numParticles(_arg1:uint):void{
_particles = _arg1;
}
public function set easing(_arg1:Function):void{
_easing = _arg1;
}
public function get duration():Number{
return (_duration);
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
var _local4:uint;
if (((_stop) || ((_particlesPassed == _particles)))){
return (0);
};
_timePassed = (_timePassed + _arg2);
if (_timePassed >= _duration){
_local4 = (_particles - _particlesPassed);
_particlesPassed = _particles;
return (_local4);
};
var _local3:uint = _particlesPassed;
_particlesPassed = Math.round(_easing(_timePassed, 0, _particles, _duration));
return ((_particlesPassed - _local3));
}
public function set duration(_arg1:Number):void{
_duration = _arg1;
}
public function get easing():Function{
return (_easing);
}
public function resume():void{
_stop = false;
}
public function startEmitter(_arg1:Emitter):uint{
_particlesPassed = 0;
_timePassed = 0;
return (0);
}
}
}//package org.flintparticles.common.counters
Section 352
//ZeroCounter (org.flintparticles.common.counters.ZeroCounter)
package org.flintparticles.common.counters {
import org.flintparticles.common.emitters.*;
public class ZeroCounter implements Counter {
public function stop():void{
}
public function updateEmitter(_arg1:Emitter, _arg2:Number):uint{
return (0);
}
public function startEmitter(_arg1:Emitter):uint{
return (0);
}
public function resume():void{
}
}
}//package org.flintparticles.common.counters
Section 353
//Dot (org.flintparticles.common.displayObjects.Dot)
package org.flintparticles.common.displayObjects {
import flash.display.*;
public class Dot extends Shape {
public function Dot(_arg1:Number, _arg2:uint=0xFFFFFF, _arg3:String="normal"){
graphics.beginFill(_arg2);
graphics.drawCircle(0, 0, _arg1);
graphics.endFill();
blendMode = _arg3;
}
}
}//package org.flintparticles.common.displayObjects
Section 354
//Star (org.flintparticles.common.displayObjects.Star)
package org.flintparticles.common.displayObjects {
import flash.display.*;
import flash.geom.*;
public class Star extends Shape {
public function Star(_arg1:Number, _arg2:uint=0xFFFFFF, _arg3:String="normal"){
var _local4:Point;
super();
var _local5:Number = (Math.PI / 5);
var _local6:Number = (_arg1 * Math.cos((_local5 * 2)));
var _local7:Number = (Math.PI * 0.5);
graphics.beginFill(_arg2);
graphics.moveTo(0, -(_arg1));
_local4 = Point.polar(_local6, (_local5 - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_arg1, ((2 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_local6, ((3 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_arg1, ((4 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_local6, ((5 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_arg1, ((6 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_local6, ((7 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_arg1, ((8 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
_local4 = Point.polar(_local6, ((9 * _local5) - _local7));
graphics.lineTo(_local4.x, _local4.y);
graphics.lineTo(0, -(_arg1));
graphics.endFill();
blendMode = _arg3;
}
}
}//package org.flintparticles.common.displayObjects
Section 355
//Linear (org.flintparticles.common.easing.Linear)
package org.flintparticles.common.easing {
public class Linear {
public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeIn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeInOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
}
}//package org.flintparticles.common.easing
Section 356
//Emitter (org.flintparticles.common.emitters.Emitter)
package org.flintparticles.common.emitters {
import flash.events.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.activities.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.common.events.*;
import org.flintparticles.common.utils.*;
public class Emitter extends EventDispatcher {
protected var _running:Boolean;// = false
protected var _activities:PriorityArray;
protected var _particles:Array;
protected var _initializers:PriorityArray;
protected var _counter:Counter;
protected var _started:Boolean;// = false
protected var _actions:PriorityArray;
protected var _useInternalTick:Boolean;// = true
protected var _particleFactory:ParticleFactory;
protected var _fixedFrameTime:Number;// = 0
protected var _maximumFrameTime:Number;// = 0.1
public function Emitter(){
_particles = new Array();
_actions = new PriorityArray();
_initializers = new PriorityArray();
_activities = new PriorityArray();
_counter = new ZeroCounter();
}
public function addInitializer(_arg1:Initializer, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_initializers.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function stop():void{
if (_useInternalTick){
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
_started = false;
killAllParticles();
}
public function killAllParticles():void{
var _local1:int = _particles.length;
var _local2:int;
while (_local2 < _local1) {
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _particles[_local2]));
_particleFactory.disposeParticle(_particles[_local2]);
_local2++;
};
_particles.length = 0;
}
public function set fixedFrameTime(_arg1:Number):void{
_fixedFrameTime = _arg1;
}
public function get maximumFrameTime():Number{
return (_maximumFrameTime);
}
public function get useInternalTick():Boolean{
return (_useInternalTick);
}
protected function createParticle():Particle{
var _local1:Particle = _particleFactory.createParticle();
var _local2:int = _initializers.length;
initParticle(_local1);
var _local3:int;
while (_local3 < _local2) {
_initializers[_local3].initialize(this, _local1);
_local3++;
};
_particles.push(_local1);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_CREATED, _local1));
return (_local1);
}
public function get particleFactory():ParticleFactory{
return (_particleFactory);
}
private function updateEventListener(_arg1:UpdateEvent):void{
if (_fixedFrameTime){
update(_fixedFrameTime);
} else {
update(_arg1.time);
};
}
public function get particles():Array{
return (_particles);
}
protected function sortParticles():void{
}
public function removeActivity(_arg1:Activity):void{
if (_activities.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function set maximumFrameTime(_arg1:Number):void{
_maximumFrameTime = _arg1;
}
protected function initParticle(_arg1:Particle):void{
}
public function addAction(_arg1:Action, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_actions.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function hasInitializerOfType(_arg1:Class):Boolean{
var _local2:uint = _initializers.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_initializers[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function resume():void{
_running = true;
}
public function removeInitializer(_arg1:Initializer):void{
if (_initializers.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function get running():Boolean{
return (_running);
}
public function hasActionOfType(_arg1:Class):Boolean{
var _local2:uint = _actions.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_actions[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function get fixedFrameTime():Number{
return (_fixedFrameTime);
}
public function set particleFactory(_arg1:ParticleFactory):void{
_particleFactory = _arg1;
}
public function hasActivity(_arg1:Activity):Boolean{
return (_activities.contains(_arg1));
}
public function addActivity(_arg1:Activity, _arg2:Number=NaN):void{
if (isNaN(_arg2)){
_arg2 = _arg1.getDefaultPriority();
};
_activities.add(_arg1, _arg2);
_arg1.addedToEmitter(this);
}
public function update(_arg1:Number):void{
var _local2:int;
var _local3:Particle;
var _local5:Action;
var _local6:int;
var _local7:int;
if (!_running){
return;
};
if (_arg1 > _maximumFrameTime){
_arg1 = _maximumFrameTime;
};
var _local4:int = _counter.updateEmitter(this, _arg1);
_local2 = 0;
while (_local2 < _local4) {
createParticle();
_local2++;
};
sortParticles();
_local4 = _activities.length;
_local2 = 0;
while (_local2 < _local4) {
_activities[_local2].update(this, _arg1);
_local2++;
};
if (_particles.length > 0){
_local4 = _actions.length;
_local6 = _particles.length;
_local7 = 0;
while (_local7 < _local4) {
_local5 = _actions[_local7];
_local2 = 0;
while (_local2 < _local6) {
_local3 = _particles[_local2];
_local5.update(this, _local3, _arg1);
_local2++;
};
_local7++;
};
_local2 = _local6;
while (_local2--) {
_local3 = _particles[_local2];
if (_local3.isDead){
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_DEAD, _local3));
_particleFactory.disposeParticle(_local3);
_particles.splice(_local2, 1);
};
};
} else {
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_EMPTY));
};
dispatchEvent(new EmitterEvent(EmitterEvent.EMITTER_UPDATED));
}
public function addExistingParticles(_arg1:Array, _arg2:Boolean=false):void{
var _local4:int;
var _local5:int;
var _local6:int;
var _local3:int = _arg1.length;
if (_arg2){
_local5 = _initializers.length;
_local6 = 0;
while (_local6 < _local5) {
_local4 = 0;
while (_local4 < _local3) {
_initializers[_local6].initialize(this, _arg1[_local4]);
_local4++;
};
_local6++;
};
};
_local4 = 0;
while (_local4 < _local3) {
_particles.push(_arg1[_local4]);
dispatchEvent(new ParticleEvent(ParticleEvent.PARTICLE_ADDED, _arg1[_local4]));
_local4++;
};
}
public function removeAction(_arg1:Action):void{
if (_actions.remove(_arg1)){
_arg1.removedFromEmitter(this);
};
}
public function hasActivityOfType(_arg1:Class):Boolean{
var _local2:uint = _activities.length;
var _local3:uint;
while (_local3 < _local2) {
if ((_activities[_local3] is _arg1)){
return (true);
};
_local3++;
};
return (false);
}
public function set useInternalTick(_arg1:Boolean):void{
if (_useInternalTick != _arg1){
_useInternalTick = _arg1;
if (_started){
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
} else {
FrameUpdater.instance.removeEventListener(UpdateEvent.UPDATE, updateEventListener);
};
};
};
}
public function hasInitializer(_arg1:Initializer):Boolean{
return (_initializers.contains(_arg1));
}
public function start():void{
if (_useInternalTick){
FrameUpdater.instance.addEventListener(UpdateEvent.UPDATE, updateEventListener, false, 0, true);
};
_started = true;
_running = true;
var _local1:int = _activities.length;
var _local2:int;
while (_local2 < _local1) {
_activities[_local2].initialize(this);
_local2++;
};
_local1 = _counter.startEmitter(this);
_local2 = 0;
while (_local2 < _local1) {
createParticle();
_local2++;
};
}
public function hasAction(_arg1:Action):Boolean{
return (_actions.contains(_arg1));
}
public function pause():void{
_running = false;
}
public function set counter(_arg1:Counter):void{
_counter = _arg1;
}
public function get counter():Counter{
return (_counter);
}
public function runAhead(_arg1:Number, _arg2:Number=10):void{
var _local3:Number = _maximumFrameTime;
var _local4:Number = (1 / _arg2);
_maximumFrameTime = _local4;
while (_arg1 > 0) {
_arg1 = (_arg1 - _local4);
update(_local4);
};
_maximumFrameTime = _local3;
}
}
}//package org.flintparticles.common.emitters
Section 357
//Linear (org.flintparticles.common.energyEasing.Linear)
package org.flintparticles.common.energyEasing {
public class Linear {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
public static function easeNone(_arg1:Number, _arg2:Number):Number{
return ((1 - (_arg1 / _arg2)));
}
}
}//package org.flintparticles.common.energyEasing
Section 358
//Quadratic (org.flintparticles.common.energyEasing.Quadratic)
package org.flintparticles.common.energyEasing {
public class Quadratic {
public static function easeOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (1 - (_arg1 / _arg2));
return ((_arg1 * _arg1));
}
public static function easeIn(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / _arg2);
return ((1 - (_arg1 * _arg1)));
}
public static function easeInOut(_arg1:Number, _arg2:Number):Number{
_arg1 = (_arg1 / (_arg2 * 0.5));
if (_arg1 < 1){
return ((1 - ((_arg1 * _arg1) * 0.5)));
};
_arg1 = (_arg1 - 2);
return (((_arg1 * _arg1) * 0.5));
}
}
}//package org.flintparticles.common.energyEasing
Section 359
//EmitterEvent (org.flintparticles.common.events.EmitterEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class EmitterEvent extends Event {
public static var EMITTER_UPDATED:String = "emitterUpdated";
public static var EMITTER_EMPTY:String = "emitterEmpty";
public function EmitterEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
}
}//package org.flintparticles.common.events
Section 360
//ParticleEvent (org.flintparticles.common.events.ParticleEvent)
package org.flintparticles.common.events {
import flash.events.*;
import org.flintparticles.common.particles.*;
public class ParticleEvent extends Event {
public var particle:Particle;
public static var PARTICLE_ADDED:String = "particleAdded";
public static var PARTICLE_DEAD:String = "particleDead";
public static var PARTICLE_CREATED:String = "particleCreated";
public function ParticleEvent(_arg1:String, _arg2:Particle=null, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.particle = _arg2;
}
}
}//package org.flintparticles.common.events
Section 361
//UpdateEvent (org.flintparticles.common.events.UpdateEvent)
package org.flintparticles.common.events {
import flash.events.*;
public class UpdateEvent extends Event {
public var time:Number;
public static var UPDATE:String = "update";
public function UpdateEvent(_arg1:String, _arg2:Number=NaN, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
this.time = _arg2;
}
}
}//package org.flintparticles.common.events
Section 362
//ColorInit (org.flintparticles.common.initializers.ColorInit)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.utils.*;
public class ColorInit extends InitializerBase {
private var _max:uint;
private var _min:uint;
public function ColorInit(_arg1:uint, _arg2:uint){
_min = _arg1;
_max = _arg2;
}
public function set minColor(_arg1:uint):void{
_min = _arg1;
}
public function get color():uint{
return (((_min == _max)) ? _min : interpolateColors(_max, _min, 0.5));
}
public function set color(_arg1:uint):void{
_max = (_min = _arg1);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (_max == _min){
_arg2.color = _min;
} else {
_arg2.color = interpolateColors(_min, _max, Math.random());
};
}
public function get minColor():uint{
return (_min);
}
public function set maxColor(_arg1:uint):void{
_max = _arg1;
}
public function get maxColor():uint{
return (_max);
}
}
}//package org.flintparticles.common.initializers
Section 363
//Initializer (org.flintparticles.common.initializers.Initializer)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public interface Initializer {
function initialize(_arg1:Emitter, _arg2:Particle):void;
function addedToEmitter(_arg1:Emitter):void;
function removedFromEmitter(_arg1:Emitter):void;
function getDefaultPriority():Number;
}
}//package org.flintparticles.common.initializers
Section 364
//InitializerBase (org.flintparticles.common.initializers.InitializerBase)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class InitializerBase implements Initializer {
public function initialize(_arg1:Emitter, _arg2:Particle):void{
}
public function addedToEmitter(_arg1:Emitter):void{
}
public function removedFromEmitter(_arg1:Emitter):void{
}
public function getDefaultPriority():Number{
return (0);
}
}
}//package org.flintparticles.common.initializers
Section 365
//Lifetime (org.flintparticles.common.initializers.Lifetime)
package org.flintparticles.common.initializers {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class Lifetime extends InitializerBase {
private var _max:Number;
private var _min:Number;
public function Lifetime(_arg1:Number, _arg2:Number=NaN){
_max = _arg2;
_min = _arg1;
}
public function get lifetime():Number{
return (((_min == _max)) ? _min : ((_max + _min) * 0.5));
}
public function get maxLifetime():Number{
return (_max);
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
if (isNaN(_max)){
_arg2.lifetime = _min;
} else {
_arg2.lifetime = (_min + (Math.random() * (_max - _min)));
};
}
public function set lifetime(_arg1:Number):void{
_max = (_min = _arg1);
}
public function set minLifetime(_arg1:Number):void{
_min = _arg1;
}
public function set maxLifetime(_arg1:Number):void{
_max = _arg1;
}
public function get minLifetime():Number{
return (_min);
}
}
}//package org.flintparticles.common.initializers
Section 366
//SharedImage (org.flintparticles.common.initializers.SharedImage)
package org.flintparticles.common.initializers {
import flash.display.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
public class SharedImage extends InitializerBase {
private var _image:DisplayObject;
public function SharedImage(_arg1:DisplayObject){
_image = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
_arg2.image = _image;
}
public function set image(_arg1:DisplayObject):void{
_image = _arg1;
}
public function get image():DisplayObject{
return (_image);
}
}
}//package org.flintparticles.common.initializers
Section 367
//Particle (org.flintparticles.common.particles.Particle)
package org.flintparticles.common.particles {
import flash.geom.*;
import flash.utils.*;
public class Particle {
public var energy:Number;// = 1
public var lifetime:Number;// = 0
public var scale:Number;// = 1
public var image;// = null
public var color:uint;// = 4294967295
public var collisionRadius:Number;// = 1
private var _colorTransform:ColorTransform;// = null
private var _previousColor:uint;
public var isDead:Boolean;// = false
public var mass:Number;// = 1
private var _dictionary:Dictionary;// = null
public var age:Number;// = 0
public function get dictionary():Dictionary{
if (_dictionary == null){
_dictionary = new Dictionary();
};
return (_dictionary);
}
public function get colorTransform():ColorTransform{
if (((!(_colorTransform)) || (!((_previousColor == color))))){
_colorTransform = new ColorTransform((((color >>> 16) & 0xFF) / 0xFF), (((color >>> 8) & 0xFF) / 0xFF), ((color & 0xFF) / 0xFF), (((color >>> 24) & 0xFF) / 0xFF), 0, 0, 0, 0);
_previousColor = color;
};
return (_colorTransform);
}
public function get alpha():Number{
return ((((color & 4278190080) >>> 24) / 0xFF));
}
public function initialize():void{
color = 4294967295;
scale = 1;
mass = 1;
collisionRadius = 1;
lifetime = 0;
age = 0;
energy = 1;
isDead = false;
image = null;
_dictionary = null;
_colorTransform = null;
}
}
}//package org.flintparticles.common.particles
Section 368
//ParticleFactory (org.flintparticles.common.particles.ParticleFactory)
package org.flintparticles.common.particles {
public interface ParticleFactory {
function createParticle():Particle;
function disposeParticle(_arg1:Particle):void;
}
}//package org.flintparticles.common.particles
Section 369
//Renderer (org.flintparticles.common.renderers.Renderer)
package org.flintparticles.common.renderers {
import org.flintparticles.common.emitters.*;
public interface Renderer {
function removeEmitter(_arg1:Emitter):void;
function addEmitter(_arg1:Emitter):void;
}
}//package org.flintparticles.common.renderers
Section 370
//SpriteRendererBase (org.flintparticles.common.renderers.SpriteRendererBase)
package org.flintparticles.common.renderers {
import flash.events.*;
import flash.display.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.events.*;
public class SpriteRendererBase extends Sprite implements Renderer {
protected var _emitters:Array;
public function SpriteRendererBase(){
_emitters = new Array();
mouseEnabled = false;
mouseChildren = false;
addEventListener(Event.ADDED_TO_STAGE, addedToStage, false, 0, true);
}
private function particleAdded(_arg1:ParticleEvent):void{
addParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
private function addedToStage(_arg1:Event):void{
if (stage){
stage.invalidate();
};
}
public function get emitters():Array{
return (_emitters);
}
protected function addParticle(_arg1:Particle):void{
}
private function updateParticles(_arg1:Event):void{
var _local2:Array = new Array();
var _local3:int;
while (_local3 < _emitters.length) {
_local2 = _local2.concat(_emitters[_local3].particles);
_local3++;
};
renderParticles(_local2);
}
private function emitterUpdated(_arg1:EmitterEvent):void{
if (stage){
stage.invalidate();
};
}
public function removeEmitter(_arg1:Emitter):void{
var _local3:Particle;
var _local2:int;
while (_local2 < _emitters.length) {
if (_emitters[_local2] == _arg1){
_emitters.splice(_local2, 1);
_arg1.removeEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated);
_arg1.removeEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded);
_arg1.removeEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved);
for each (_local3 in _arg1.particles) {
removeParticle(_local3);
};
if (_emitters.length == 0){
removeEventListener(Event.RENDER, updateParticles);
renderParticles([]);
} else {
stage.invalidate();
};
return;
};
_local2++;
};
}
protected function renderParticles(_arg1:Array):void{
}
protected function removeParticle(_arg1:Particle):void{
}
private function particleRemoved(_arg1:ParticleEvent):void{
removeParticle(_arg1.particle);
if (stage){
stage.invalidate();
};
}
public function addEmitter(_arg1:Emitter):void{
var _local2:Particle;
_emitters.push(_arg1);
if (stage){
stage.invalidate();
};
_arg1.addEventListener(EmitterEvent.EMITTER_UPDATED, emitterUpdated, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_CREATED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_ADDED, particleAdded, false, 0, true);
_arg1.addEventListener(ParticleEvent.PARTICLE_DEAD, particleRemoved, false, 0, true);
for each (_local2 in _arg1.particles) {
addParticle(_local2);
};
if (_emitters.length == 1){
addEventListener(Event.RENDER, updateParticles, false, 0, true);
};
}
}
}//package org.flintparticles.common.renderers
Section 371
//FrameUpdater (org.flintparticles.common.utils.FrameUpdater)
package org.flintparticles.common.utils {
import flash.events.*;
import flash.display.*;
import org.flintparticles.common.events.*;
import flash.utils.*;
public class FrameUpdater extends EventDispatcher {
private var _shape:Shape;
private var _time:Number;
private static var _instance:FrameUpdater;
public function FrameUpdater(){
_shape = new Shape();
_shape.addEventListener(Event.ENTER_FRAME, frameUpdate, false, 0, true);
_time = getTimer();
}
private function frameUpdate(_arg1:Event):void{
var _local2:int = _time;
_time = getTimer();
var _local3:Number = ((_time - _local2) * 0.001);
dispatchEvent(new UpdateEvent(UpdateEvent.UPDATE, _local3));
}
public static function get instance():FrameUpdater{
if (_instance == null){
_instance = new (FrameUpdater);
};
return (_instance);
}
}
}//package org.flintparticles.common.utils
Section 372
//interpolateColors (org.flintparticles.common.utils.interpolateColors)
package org.flintparticles.common.utils {
public function interpolateColors(_arg1:uint, _arg2:uint, _arg3:Number):uint{
var _local4:Number = (1 - _arg3);
var _local5:uint = Math.round(((((_arg1 >>> 16) & 0xFF) * _arg3) + (((_arg2 >>> 16) & 0xFF) * _local4)));
var _local6:uint = Math.round(((((_arg1 >>> 8) & 0xFF) * _arg3) + (((_arg2 >>> 8) & 0xFF) * _local4)));
var _local7:uint = Math.round((((_arg1 & 0xFF) * _arg3) + ((_arg2 & 0xFF) * _local4)));
var _local8:uint = Math.round(((((_arg1 >>> 24) & 0xFF) * _arg3) + (((_arg2 >>> 24) & 0xFF) * _local4)));
return (((((_local8 << 24) | (_local5 << 16)) | (_local6 << 8)) | _local7));
}
}//package org.flintparticles.common.utils
Section 373
//Maths (org.flintparticles.common.utils.Maths)
package org.flintparticles.common.utils {
public class Maths {
private static const DEGTORAD:Number = (Math.PI / 180);
private static const RADTODEG:Number = (180 / Math.PI);
public static function asRadians(_arg1:Number):Number{
return ((_arg1 * DEGTORAD));
}
public static function asDegrees(_arg1:Number):Number{
return ((_arg1 * RADTODEG));
}
}
}//package org.flintparticles.common.utils
Section 374
//PriorityArray (org.flintparticles.common.utils.PriorityArray)
package org.flintparticles.common.utils {
import flash.utils.*;
public class PriorityArray extends Proxy {
private var _values:Array;
public function PriorityArray(){
_values = new Array();
}
public function remove(_arg1):Boolean{
var _local2:uint = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
_values.splice(_local2, 1);
return (true);
};
};
return (false);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{
return ((_arg1 - 1).toString());
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{
var _local3:uint = uint(_arg1);
if ((((_local3 == _arg1)) && ((_local3 < _values.length)))){
_values[_local3].value = _arg2;
};
}
public function add(_arg1, _arg2:Number):uint{
var _local3:uint = _values.length;
var _local4:uint;
while (_local4 < _local3) {
if (_values[_local4].priority < _arg2){
break;
};
_local4++;
};
_values.splice(_local4, 0, new Pair(_arg2, _arg1));
return (_values.length);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){
var _local2:int = int(_arg1);
if ((((((_local2 == _arg1)) && ((_local2 < _values.length)))) && (_values[_local2]))){
return (_values[_local2].value);
};
return (undefined);
}
public function clear():void{
_values.length = 0;
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{
if (_arg1 < _values.length){
return ((_arg1 + 1));
};
return (0);
}
public function get length():uint{
return (_values.length);
}
public function removeAt(_arg1:uint){
var _local2:* = _values[_arg1].value;
_values.splice(_arg1, 1);
return (_local2);
}
override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextValue(_arg1:int){
return (_values[(_arg1 - 1)]);
}
public function contains(_arg1):Boolean{
var _local2:uint = _values.length;
while (_local2--) {
if (_values[_local2].value == _arg1){
return (true);
};
};
return (false);
}
}
}//package org.flintparticles.common.utils
class Pair {
private var value;
private var priority:Number;
private function Pair(_arg1:Number, _arg2){
this.priority = _arg1;
this.value = _arg2;
}
}
Section 375
//Accelerate (org.flintparticles.twoD.actions.Accelerate)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.particles.*;
public class Accelerate extends ActionBase {
private var _x:Number;
private var _y:Number;
public function Accelerate(_arg1:Number, _arg2:Number){
_x = _arg1;
_y = _arg2;
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function get y():Number{
return (_y);
}
public function get x():Number{
return (_x);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
var _local4:Particle2D = Particle2D(_arg2);
Particle2D(_arg2).velX = (_local4.velX + (_x * _arg3));
_local4.velY = (_local4.velY + (_y * _arg3));
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
}
}//package org.flintparticles.twoD.actions
Section 376
//Move (org.flintparticles.twoD.actions.Move)
package org.flintparticles.twoD.actions {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.twoD.particles.*;
public class Move extends ActionBase {
private var p:Particle2D;
override public function getDefaultPriority():Number{
return (-10);
}
override public function update(_arg1:Emitter, _arg2:Particle, _arg3:Number):void{
p = Particle2D(_arg2);
p.x = (p.x + (p.velX * _arg3));
p.y = (p.y + (p.velY * _arg3));
}
}
}//package org.flintparticles.twoD.actions
Section 377
//Emitter2D (org.flintparticles.twoD.emitters.Emitter2D)
package org.flintparticles.twoD.emitters {
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.utils.*;
public class Emitter2D extends Emitter {
protected var _y:Number;// = 0
public var spaceSort:Boolean;// = false
public var spaceSortedX:Array;
protected var _x:Number;// = 0
protected var _rotation:Number;// = 0
protected static var _creator:ParticleCreator2D = new ParticleCreator2D();
public function Emitter2D(){
_particleFactory = _creator;
}
public function get y():Number{
return (_y);
}
override protected function initParticle(_arg1:Particle):void{
var _local2:Particle2D;
_local2 = Particle2D(_arg1);
_local2.x = _x;
_local2.y = _y;
_local2.rotation = _rotation;
}
override protected function sortParticles():void{
var _local1:int;
var _local2:int;
if (spaceSort){
spaceSortedX = _particles.sortOn("x", (Array.NUMERIC | Array.RETURNINDEXEDARRAY));
_local1 = _particles.length;
_local2 = 0;
while (_local2 < _local1) {
_particles[spaceSortedX[_local2]].sortID = _local2;
_local2++;
};
};
}
public function set x(_arg1:Number):void{
_x = _arg1;
}
public function set rotRadians(_arg1:Number):void{
_rotation = _arg1;
}
public function get x():Number{
return (_x);
}
public function get rotRadians():Number{
return (_rotation);
}
public function set rotation(_arg1:Number):void{
_rotation = Maths.asRadians(_arg1);
}
public function get rotation():Number{
return (Maths.asDegrees(_rotation));
}
public function set y(_arg1:Number):void{
_y = _arg1;
}
public static function get defaultParticleFactory():ParticleFactory{
return (_creator);
}
}
}//package org.flintparticles.twoD.emitters
Section 378
//Velocity (org.flintparticles.twoD.initializers.Velocity)
package org.flintparticles.twoD.initializers {
import flash.geom.*;
import org.flintparticles.common.emitters.*;
import org.flintparticles.common.particles.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.twoD.zones.*;
import org.flintparticles.twoD.particles.*;
public class Velocity extends InitializerBase {
private var _zone:Zone2D;
public function Velocity(_arg1:Zone2D){
_zone = _arg1;
}
override public function initialize(_arg1:Emitter, _arg2:Particle):void{
var _local3:Particle2D;
var _local5:Number;
var _local6:Number;
_local3 = Particle2D(_arg2);
var _local4:Point = _zone.getLocation();
if (_local3.rotation == 0){
_local3.velX = _local4.x;
_local3.velY = _local4.y;
} else {
_local5 = Math.sin(_local3.rotation);
_local6 = Math.cos(_local3.rotation);
_local3.velX = ((_local6 * _local4.x) - (_local5 * _local4.y));
_local3.velY = ((_local6 * _local4.y) + (_local5 * _local4.x));
};
}
public function set zone(_arg1:Zone2D):void{
_zone = _arg1;
}
public function get zone():Zone2D{
return (_zone);
}
}
}//package org.flintparticles.twoD.initializers
Section 379
//Particle2D (org.flintparticles.twoD.particles.Particle2D)
package org.flintparticles.twoD.particles {
import flash.geom.*;
import org.flintparticles.common.particles.*;
public class Particle2D extends Particle {
public var sortID:uint;// = 0
private var _inertia:Number;
public var velY:Number;// = 0
private var _previousRadius:Number;
private var _previousMass:Number;
public var angVelocity:Number;// = 0
public var x:Number;// = 0
public var y:Number;// = 0
public var velX:Number;// = 0
public var rotation:Number;// = 0
override public function initialize():void{
super.initialize();
x = 0;
y = 0;
velX = 0;
velY = 0;
rotation = 0;
angVelocity = 0;
sortID = 0;
}
public function get matrixTransform():Matrix{
var _local1:Number = (scale * Math.cos(rotation));
var _local2:Number = (scale * Math.sin(rotation));
return (new Matrix(_local1, _local2, -(_local2), _local1, x, y));
}
public function get inertia():Number{
if (((!((mass == _previousMass))) || (!((collisionRadius == _previousRadius))))){
_inertia = (((mass * collisionRadius) * collisionRadius) * 0.5);
_previousMass = mass;
_previousRadius = collisionRadius;
};
return (_inertia);
}
}
}//package org.flintparticles.twoD.particles
Section 380
//ParticleCreator2D (org.flintparticles.twoD.particles.ParticleCreator2D)
package org.flintparticles.twoD.particles {
import org.flintparticles.common.particles.*;
public class ParticleCreator2D implements ParticleFactory {
private var _particles:Array;
public function ParticleCreator2D(){
_particles = new Array();
}
public function clearAllParticles():void{
_particles = new Array();
}
public function disposeParticle(_arg1:Particle):void{
if ((_arg1 is Particle2D)){
_arg1.initialize();
_particles.push(_arg1);
};
}
public function createParticle():Particle{
if (_particles.length){
return (_particles.pop());
};
return (new Particle2D());
}
}
}//package org.flintparticles.twoD.particles
Section 381
//BitmapRenderer (org.flintparticles.twoD.renderers.BitmapRenderer)
package org.flintparticles.twoD.renderers {
import flash.display.*;
import flash.geom.*;
import flash.filters.*;
import org.flintparticles.twoD.particles.*;
import org.flintparticles.common.renderers.*;
public class BitmapRenderer extends SpriteRendererBase {
protected var _canvas:Rectangle;
protected var _bitmap:Bitmap;
protected var _smoothing:Boolean;
protected var _bitmapData:BitmapData;
protected var _postFilters:Array;
protected var _preFilters:Array;
protected var _colorMap:Array;
protected static var ZERO_POINT:Point = new Point(0, 0);
public function BitmapRenderer(_arg1:Rectangle, _arg2:Boolean=false){
mouseEnabled = false;
mouseChildren = false;
_smoothing = _arg2;
_preFilters = new Array();
_postFilters = new Array();
_canvas = _arg1;
createBitmap();
}
public function get canvas():Rectangle{
return (_canvas);
}
public function set canvas(_arg1:Rectangle):void{
_canvas = _arg1;
createBitmap();
}
public function removeFilter(_arg1:BitmapFilter):void{
var _local2:int;
while (_local2 < _preFilters.length) {
if (_preFilters[_local2] == _arg1){
_preFilters.splice(_local2, 1);
return;
};
_local2++;
};
_local2 = 0;
while (_local2 < _postFilters.length) {
if (_postFilters[_local2] == _arg1){
_postFilters.splice(_local2, 1);
return;
};
_local2++;
};
}
override protected function renderParticles(_arg1:Array):void{
var _local2:int;
var _local3:int;
if (!_bitmap){
return;
};
_bitmapData.lock();
_local3 = _preFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _preFilters[_local2]);
_local2++;
};
if ((((_local3 == 0)) && ((_postFilters.length == 0)))){
_bitmapData.fillRect(_bitmap.bitmapData.rect, 0);
};
_local3 = _arg1.length;
if (_local3){
_local2 = _local3;
while (_local2--) {
drawParticle(_arg1[_local2]);
};
};
_local3 = _postFilters.length;
_local2 = 0;
while (_local2 < _local3) {
_bitmapData.applyFilter(_bitmapData, _bitmapData.rect, BitmapRenderer.ZERO_POINT, _postFilters[_local2]);
_local2++;
};
if (_colorMap){
_bitmapData.paletteMap(_bitmapData, _bitmapData.rect, ZERO_POINT, _colorMap[1], _colorMap[2], _colorMap[3], _colorMap[0]);
};
_bitmapData.unlock();
}
protected function drawParticle(_arg1:Particle2D):void{
var _local2:Matrix;
_local2 = _arg1.matrixTransform;
_local2.translate(-(_canvas.x), -(_canvas.y));
_bitmapData.draw(_arg1.image, _local2, _arg1.colorTransform, DisplayObject(_arg1.image).blendMode, null, _smoothing);
}
public function setPaletteMap(_arg1:Array=null, _arg2:Array=null, _arg3:Array=null, _arg4:Array=null):void{
_colorMap = new Array(4);
_colorMap[0] = _arg4;
_colorMap[1] = _arg1;
_colorMap[2] = _arg2;
_colorMap[3] = _arg3;
}
public function clearPaletteMap():void{
_colorMap = null;
}
public function addFilter(_arg1:BitmapFilter, _arg2:Boolean=false):void{
if (_arg2){
_postFilters.push(_arg1);
} else {
_preFilters.push(_arg1);
};
}
protected function createBitmap():void{
if (!_canvas){
return;
};
if (((_bitmap) && (_bitmapData))){
_bitmapData.dispose();
_bitmapData = null;
};
if (_bitmap){
removeChild(_bitmap);
};
_bitmap = new Bitmap(null, "auto", _smoothing);
_bitmapData = new BitmapData(_canvas.width, _canvas.height, true, 0);
_bitmap.bitmapData = _bitmapData;
addChild(_bitmap);
_bitmap.x = _canvas.x;
_bitmap.y = _canvas.y;
}
}
}//package org.flintparticles.twoD.renderers
Section 382
//DiscSectorZone (org.flintparticles.twoD.zones.DiscSectorZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class DiscSectorZone implements Zone2D {
private var _minAngle:Number;
private var _innerRadius:Number;
private var _minAllowed:Number;
private var _outerRadius:Number;
private var _center:Point;
private var _maxAngle:Number;
private var _innerSq:Number;
private var _outerSq:Number;
private static var TWOPI:Number = 6.28318530717959;
public function DiscSectorZone(_arg1:Point, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number){
if (_arg2 < _arg3){
throw (new Error((((("The outerRadius (" + _arg2) + ") can't be smaller than the innerRadius (") + _arg3) + ") in your DiscSectorZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument.")));
};
_center = _arg1;
_innerRadius = _arg3;
_outerRadius = _arg2;
_innerSq = (_innerRadius * _innerRadius);
_outerSq = (_outerRadius * _outerRadius);
_minAngle = _arg4;
_maxAngle = _arg5;
while (_maxAngle > TWOPI) {
_maxAngle = (_maxAngle - TWOPI);
};
while (_maxAngle < 0) {
_maxAngle = (_maxAngle + TWOPI);
};
_minAllowed = (_maxAngle - TWOPI);
if (_arg4 == _arg5){
_minAngle = _maxAngle;
} else {
_minAngle = clamp(_minAngle);
};
}
public function set minAngle(_arg1:Number):void{
_minAngle = clamp(_arg1);
}
public function get innerRadius():Number{
return (_innerRadius);
}
public function getArea():Number{
return (((Math.PI * _outerSq) - (Math.PI * _innerSq)));
}
public function get maxAngle():Number{
return (_maxAngle);
}
public function set innerRadius(_arg1:Number):void{
_innerRadius = _arg1;
_innerSq = (_innerRadius * _innerRadius);
}
public function set outerRadius(_arg1:Number):void{
_outerRadius = _arg1;
_outerSq = (_outerRadius * _outerRadius);
}
public function set maxAngle(_arg1:Number):void{
_maxAngle = _arg1;
while (_maxAngle > TWOPI) {
_maxAngle = (_maxAngle - TWOPI);
};
while (_maxAngle < 0) {
_maxAngle = (_maxAngle + TWOPI);
};
_minAllowed = (_maxAngle - TWOPI);
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
_arg1 = (_arg1 - _center.x);
_arg2 = (_arg2 - _center.y);
var _local3:Number = ((_arg1 * _arg1) + (_arg2 * _arg2));
if ((((_local3 > _outerSq)) || ((_local3 < _innerSq)))){
return (false);
};
var _local4:Number = Math.atan2(_arg2, _arg1);
_local4 = clamp(_local4);
return ((_local4 >= _minAngle));
}
public function get minAngle():Number{
return (_minAngle);
}
public function get center():Point{
return (_center);
}
public function getLocation():Point{
var _local1:Number = Math.random();
var _local2:Point = Point.polar((_innerRadius + ((1 - (_local1 * _local1)) * (_outerRadius - _innerRadius))), (_minAngle + (Math.random() * (_maxAngle - _minAngle))));
_local2.x = (_local2.x + _center.x);
_local2.y = (_local2.y + _center.y);
return (_local2);
}
public function get outerRadius():Number{
return (_outerRadius);
}
public function set center(_arg1:Point):void{
_center = _arg1;
}
private function clamp(_arg1:Number):Number{
while (_arg1 > _maxAngle) {
_arg1 = (_arg1 - TWOPI);
};
while (_arg1 < _minAllowed) {
_arg1 = (_arg1 + TWOPI);
};
return (_arg1);
}
}
}//package org.flintparticles.twoD.zones
Section 383
//DiscZone (org.flintparticles.twoD.zones.DiscZone)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public class DiscZone implements Zone2D {
private var _innerRadius:Number;
private var _outerRadius:Number;
private var _center:Point;
private var _innerSq:Number;
private var _outerSq:Number;
private static const TWOPI:Number = 6.28318530717959;
public function DiscZone(_arg1:Point, _arg2:Number, _arg3:Number=0){
if (_arg2 < _arg3){
throw (new Error((((("The outerRadius (" + _arg2) + ") can't be smaller than the innerRadius (") + _arg3) + ") in your DiscZone. N.B. the outerRadius is the second argument in the constructor and the innerRadius is the third argument.")));
};
_center = _arg1;
_innerRadius = _arg3;
_outerRadius = _arg2;
_innerSq = (_innerRadius * _innerRadius);
_outerSq = (_outerRadius * _outerRadius);
}
public function set outerRadius(_arg1:Number):void{
_outerRadius = _arg1;
_outerSq = (_outerRadius * _outerRadius);
}
public function get center():Point{
return (_center);
}
public function getArea():Number{
return ((Math.PI * (_outerSq - _innerSq)));
}
public function getLocation():Point{
var _local1:Number = Math.random();
var _local2:Point = Point.polar((_innerRadius + ((1 - (_local1 * _local1)) * (_outerRadius - _innerRadius))), (Math.random() * TWOPI));
_local2.x = (_local2.x + _center.x);
_local2.y = (_local2.y + _center.y);
return (_local2);
}
public function get outerRadius():Number{
return (_outerRadius);
}
public function get innerRadius():Number{
return (_innerRadius);
}
public function set innerRadius(_arg1:Number):void{
_innerRadius = _arg1;
_innerSq = (_innerRadius * _innerRadius);
}
public function set center(_arg1:Point):void{
_center = _arg1;
}
public function contains(_arg1:Number, _arg2:Number):Boolean{
_arg1 = (_arg1 - _center.x);
_arg2 = (_arg2 - _center.y);
var _local3:Number = ((_arg1 * _arg1) + (_arg2 * _arg2));
return ((((_local3 <= _outerSq)) && ((_local3 >= _innerSq))));
}
}
}//package org.flintparticles.twoD.zones
Section 384
//Zone2D (org.flintparticles.twoD.zones.Zone2D)
package org.flintparticles.twoD.zones {
import flash.geom.*;
public interface Zone2D {
function getArea():Number;
function getLocation():Point;
function contains(_arg1:Number, _arg2:Number):Boolean;
}
}//package org.flintparticles.twoD.zones
Section 385
//Cat (pets.Cat)
package pets {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.media.*;
import com.cheezeworld.math.*;
import production.*;
import game.*;
import com.melesta.utils.math.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Cat extends CatTemplate {
private var gameController:GameController;
private var _stageInstance:DisplayObjectContainer;
public var busy:Boolean;// = false
private var t:Number;// = 0
private var _counter:Number;
public static var products:Array = [];
public static var cats:Array = [];
public function Cat(){
gameController = GameController.instance;
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.addEventListener(GameController.RESUME_GAME, resume);
gameController.addEventListener(GameController.PAUSE_GAME, pause);
}
public function getProduct(_arg1:int):void{
var cachedProduct:Production;
var onAnimationComplete:Function;
var i = _arg1;
onAnimationComplete = function ():void{
busy = false;
if (!cachedProduct.clicked){
cachedProduct.toDepot();
};
findMiddleProduct();
};
Tweener.removeTweens(this);
if (i < 0){
move();
return;
};
cachedProduct = products[i];
cachedProduct.cached = true;
products.splice(i, 1);
busy = true;
var p1:Point = new Point(this.x, this.y);
var p2:Point = new Point(cachedProduct.x, cachedProduct.y);
var dir:Object = Direction.getDirection(p1, p2);
this.body.gotoAndPlay(dir.direction);
if (dir.right){
scaleX = -1;
} else {
scaleX = 1;
};
t = (Math.sqrt((((x - p2.x) * (x - p2.x)) + ((y - p2.y) * (y - p2.y)))) / 200);
Tweener.addTween(this, {y:p2.y, x:p2.x, time:t, transition:"linear", onComplete:onAnimationComplete});
}
public function destroy(_arg1:Event=null):void{
Tweener.removeTweens(this);
_stageInstance.removeChild(this);
cats = [];
products = [];
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.removeEventListener(GameController.RESUME_GAME, resume);
gameController.removeEventListener(GameController.PAUSE_GAME, pause);
}
public function startAnimation():void{
SoundManager.play("cat_voice", 1, new SoundTransform(1, ((this.x)<300) ? -1 : 1));
update();
}
public function show(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:DisplayObjectContainer=null, _arg5:Boolean=false):void{
cats.push(this);
_counter = 7;
this.x = _arg1;
this.y = _arg2;
_stageInstance = _arg4;
_stageInstance.addChild(this);
if (!_arg5){
this.y = -10;
Tweener.addTween(this, {y:_arg2, time:0.3, delay:_arg3, transition:"easeInCirc", onComplete:startAnimation});
} else {
startAnimation();
};
mouseChildren = (mouseEnabled = false);
}
public function update():void{
if (busy){
Tweener.resumeTweens(this);
} else {
findMiddleProduct();
};
}
private function resume(_arg1:Event):void{
this.body.play();
Tweener.resumeTweens(this);
}
public function findMiddleProduct():void{
var _local4:Number;
var _local1:Number = 1000;
var _local2 = -1;
var _local3:int;
while (_local3 < products.length) {
if (products[_local3].clicked){
trace(products[_local3], "clicked");
} else {
if (products[_local3].cached){
} else {
if (!products[_local3].canAddToDepot()){
} else {
if (products[_local3].isFlying){
} else {
_local4 = Point.distance(new Point(x, y), new Point(products[_local3].x, products[_local3].y));
if (_local4 < _local1){
_local1 = _local4;
_local2 = _local3;
};
};
};
};
};
_local3++;
};
getProduct(_local2);
}
public function move(_arg1:Event=null):void{
Tweener.removeTweens(this);
var _local2:Point = new Point(this.x, this.y);
var _local3:Number = MathUtils.rand(150, 400);
var _local4:Number = MathUtils.rand(150, 300);
var _local5:Point = new Point(_local3, _local4);
var _local6:Object = Direction.getDirection(_local2, _local5);
this.body.gotoAndPlay(_local6.direction);
if (_local6.right){
scaleX = -1;
} else {
scaleX = 1;
};
t = (Math.sqrt((((x - _local5.x) * (x - _local5.x)) + ((y - _local5.y) * (y - _local5.y)))) / 50);
Tweener.addTween(this, {y:_local5.y, x:_local5.x, time:t, transition:"linear", onComplete:findMiddleProduct});
}
public function pause(_arg1:Event=null):void{
this.body.stop();
Tweener.pauseTweens(this);
}
public function kill():void{
var removeCat:Function;
removeCat = function ():void{
Tweener.removeTweens(this);
_stageInstance.removeChild(this);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.removeEventListener(GameController.RESUME_GAME, resume);
gameController.removeEventListener(GameController.PAUSE_GAME, pause);
};
cats.splice(cats.indexOf(this, 0), 1);
Tweener.removeTweens(this);
Tweener.addTween(this, {y:0, rotation:360, time:3, transition:"easeOutBack", onComplete:removeCat});
Tweener.addTween(this, {x:(x + 200), transition:"linear", time:1});
}
public static function updateCats():void{
var _local1:int;
while (_local1 < cats.length) {
cats[_local1].update();
_local1++;
};
}
public static function catchProduct(_arg1:Production):void{
products.push(_arg1);
var _local2:int;
while (_local2 < cats.length) {
if (!cats[_local2].busy){
cats[_local2].update();
};
_local2++;
};
}
}
}//package pets
Section 386
//Penguin (pets.Penguin)
package pets {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.media.*;
import flash.utils.*;
import com.cheezeworld.math.*;
import game.assets.*;
import production.*;
import ui.*;
import game.*;
import utils.*;
import com.melesta.utils.math.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Penguin extends ChickenTemplate {
private var _hungrySound:SoundChannel;
private var _state:String;// = "moving"
private var _produceCounter:Number;// = 0
private var gameController:GameController;
private var _stageInstance:DisplayObjectContainer;
private var _hungryTimer:Timer;
private var type:String;// = "PENGUIN"
private var _produceTimer:Timer;
private var _counter:Number;// = 0
private var timer:Timer;
private var prewRight:Boolean;// = false
public var index:Number;// = 0
private var _stateTimer:Timer;
private var _production:String;// = "EGG"
private var _hungryValue:Number;// = 100
private var _deltaHungry:Number;// = 5
private var nearGrass:Grass;
private var t:Number;// = 0
public static var penguinList:Array = new Array();
public static var firstShow:Boolean = true;
public static var count:Number = 0;
public function Penguin(){
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
this.mouseChildren = false;
this.mouseEnabled = false;
_hungrySound = new SoundChannel();
_produceTimer = new Timer(1000);
_produceTimer.addEventListener(TimerEvent.TIMER, produce, false, 0, true);
_hungryTimer = new Timer(1000);
_hungryTimer.addEventListener(TimerEvent.TIMER, hungry, false, 0, true);
_stateTimer = new Timer(1);
_stateTimer.addEventListener(TimerEvent.TIMER, checkHungry, false, 0, true);
_stateTimer.start();
}
private function getGrass():void{
if (_state == "hungry"){
if (nearGrass != null){
if (!nearGrass.hasGrass()){
Tweener.removeTweens(this);
findGrass();
};
};
};
}
public function show(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:DisplayObjectContainer, _arg5:Boolean=false):void{
_counter = 7;
this.x = _arg1;
this.y = _arg2;
_arg4.addChild(this);
_stageInstance = _arg4;
timer = new Timer(3000);
timer.addEventListener(TimerEvent.TIMER, move);
if (!_arg5){
this.y = -10;
Tweener.addTween(this, {y:_arg2, time:0.3, delay:_arg3, transition:"easeInCirc", onComplete:startAnimation});
} else {
startAnimation();
};
_hungryTimer.start();
}
public function resume(_arg1:Event=null):void{
Tweener.resumeTweens(this);
if (((!((this._state == "flyOut"))) && (!((this._state == "death"))))){
switch (_state){
case "hungry":
_stateTimer.start();
_hungryTimer.start();
this.body.play();
if (_hungryValue < 20){
_hungrySound = SoundManager.play("guinea_fowl_hungry", 1);
};
break;
case "moving":
_stateTimer.start();
_hungryTimer.start();
timer.start();
this.body.play();
break;
};
_produceTimer.start();
};
}
public function startAnimation():void{
_produceTimer.start();
var _local1:Number = ((this.x)<300) ? -1 : 1;
SoundManager.play("guinea_fowl_voice", 1, new SoundTransform(1, _local1));
timer.start();
move();
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.guinea_fowl);
};
index = Penguin.count;
Penguin.penguinList.push(this);
Penguin.count++;
LevelStatistics.goals[17] = Penguin.count;
LevelStatistics.updateStatistics();
if ((((Farm2.portal == "kongregate")) && ((LevelStatistics.goals[17] == 15)))){
StartScreen.kongregate.stats.submit("15 guinea fowl", 1);
};
}
private function hungry(_arg1:TimerEvent=null):void{
_arg1.stopPropagation();
_hungryValue = (_hungryValue - _deltaHungry);
if (_hungryValue <= 40){
if (_state != "hungry"){
_state = "hungry";
findGrass();
if (_hungryValue == 20){
_hungrySound = SoundManager.play("guinea_fowl_hungry", 1);
};
};
} else {
_state = "moving";
};
if (_hungryValue <= 0){
_state = "death";
death();
};
this.hungryProgress._mask.width = ((_hungryValue / 100) * 17);
}
public function move(_arg1:TimerEvent=null):void{
if (_arg1 != null){
_arg1.stopPropagation();
};
var _local2:Point = new Point(this.x, this.y);
var _local3:Number = MathUtils.rand(150, 400);
var _local4:Number = MathUtils.rand(150, 300);
var _local5:Point = new Point(_local3, _local4);
var _local6:Object = Direction.getDirection(_local2, _local5);
this.body.gotoAndPlay(_local6.direction);
if (_local6.right){
this.scaleX = -1;
prewRight = true;
} else {
this.scaleX = 1;
prewRight = false;
};
Tweener.removeTweens(this);
if (_hungryValue <= 30){
t = (Math.sqrt((((x - _local5.x) * (x - _local5.x)) + ((y - _local5.y) * (y - _local5.y)))) / 30);
} else {
t = (Math.sqrt((((x - _local5.x) * (x - _local5.x)) + ((y - _local5.y) * (y - _local5.y)))) / 10);
};
Tweener.addTween(this, {y:_local5.y, x:_local5.x, time:t, transition:"linear", onComplete:move});
}
private function nextPoint():Point{
var _local1:Number = MathUtils.rand(150, 400);
var _local2:Number = MathUtils.rand(150, 300);
var _local3:Point = new Point(_local1, _local2);
while (Math.sqrt((((x - _local1) * (x - _local1)) + ((y - _local2) * (y - _local2)))) < 100) {
_local1 = MathUtils.rand(150, 400);
_local2 = MathUtils.rand(150, 300);
_local3.x = _local1;
_local3.y = _local2;
};
return (_local3);
}
public function kill():void{
if (((!((this._state == "flyOut"))) && (!((this._state == "death"))))){
this._state = "flyOut";
Tweener.removeTweens(this);
SoundManager.play("guinea_fowl_flyout", 1);
_hungrySound.stop();
Penguin.count--;
this.body.stop();
timer.stop();
_hungryTimer.stop();
_stateTimer.stop();
Penguin.penguinList.splice(index, 1);
Penguin.refreshIndexes();
LevelStatistics.goals[17] = Penguin.count;
LevelStatistics.updateStatistics();
_produceTimer.stop();
Tweener.addTween(this, {y:0, rotation:360, time:3, transition:"easeOutBack", onComplete:destroy});
Tweener.addTween(this, {x:(x + 200), transition:"linear", time:1});
_produceTimer.removeEventListener(TimerEvent.TIMER, produce);
_hungryTimer.removeEventListener(TimerEvent.TIMER, hungry);
_stateTimer.removeEventListener(TimerEvent.TIMER, checkHungry);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
};
}
private function eat():Boolean{
var _local1:Number;
_hungryTimer.stop();
if (((!((nearGrass == null))) && ((Grass.grassList.length > 0)))){
_local1 = nearGrass.getGrass();
if (_local1 > 0){
this._hungryValue = (this._hungryValue + 10);
this.hungryProgress._mask.width = ((_hungryValue / 100) * 17);
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, delay:0.5, time:0, onUpdate:getGrass, onComplete:eat});
return (true);
};
_hungryTimer.start();
Tweener.removeTweens(this);
if (!_local1){
if (nearGrass != null){
nearGrass.destroy();
};
};
findGrass();
return (false);
//unresolved jump
};
_hungryTimer.start();
Tweener.removeTweens(this);
findGrass();
return (false);
}
private function produce(_arg1:TimerEvent=null):void{
_arg1.stopPropagation();
_produceCounter++;
if (_produceCounter == 19){
PetsContainer.instance.addProduct(_production, this.x, this.y);
_produceCounter = 0;
};
}
private function checkHungry(_arg1:TimerEvent=null):void{
if (_arg1){
_arg1.stopPropagation();
};
if (_state == "hungry"){
if (this._hungryValue > 80){
_state = "moving";
Tweener.removeTweens(this);
_hungryTimer.start();
timer.start();
_counter = 7;
move();
};
};
}
public function pause(_arg1:Event=null):void{
_stateTimer.stop();
_hungryTimer.stop();
timer.stop();
_produceTimer.stop();
_hungrySound.stop();
this.body.stop();
Tweener.pauseTweens(this);
}
public function destroy(_arg1:Event=null):void{
_stageInstance.removeChild(this);
if (_arg1 != null){
Penguin.count--;
};
timer.stop();
timer.removeEventListener(TimerEvent.TIMER, move);
_hungrySound.stop();
Tweener.removeTweens(this);
_hungryTimer.stop();
_produceTimer.stop();
_produceTimer.removeEventListener(TimerEvent.TIMER, produce);
_hungryTimer.removeEventListener(TimerEvent.TIMER, hungry);
_stateTimer.removeEventListener(TimerEvent.TIMER, checkHungry);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.removeEventListener(GameController.RESUME_GAME, resume);
gameController.removeEventListener(GameController.PAUSE_GAME, pause);
}
private function death():void{
Tweener.removeTweens(this);
_hungrySound.stop();
_hungryTimer.stop();
timer.stop();
_produceTimer.stop();
this.body.gotoAndPlay("death");
Tweener.addTween(this, {alpha:0, time:1, delay:0.7, transition:"linear", onComplete:destroy});
SoundManager.play("guinea_fowl_die", 1);
Penguin.count--;
Penguin.penguinList.splice(index, 1);
Penguin.refreshIndexes();
LevelStatistics.goals[17] = Penguin.count;
LevelStatistics.updateStatistics();
}
private function findGrass():void{
var nX:Number;
var nY:Number;
var pg:Point;
var dir0:Object;
var pp:Point = new Point(this.x, this.y);
timer.stop();
if (Grass.grassList.length > 0){
nearGrass = Grass.getNear(this.x, this.y);
nX = (Math.ceil(nearGrass.x) + Math.ceil((Math.random() * 10)));
nY = (Math.ceil(nearGrass.y) + Math.ceil((Math.random() * 10)));
pg = new Point(nX, nY);
dir0 = Direction.getDirection(pp, pg);
this.body.gotoAndPlay(dir0.direction);
if (dir0.right){
this.scaleX = -1;
prewRight = true;
} else {
this.scaleX = 1;
prewRight = false;
};
Tweener.removeTweens(this);
t = (Math.sqrt((((x - nX) * (x - nX)) + ((y - nY) * (y - nY)))) / 100);
Tweener.addTween(this, {y:nY, x:nX, time:t, transition:"linear", onUpdate:getGrass, onComplete:function ():void{
if (eat()){
this.body.gotoAndPlay("eat");
};
}});
} else {
_counter = 7;
_state = "moving";
timer.start();
move();
};
}
public static function refreshIndexes():void{
var _local1:int;
while (_local1 < Penguin.penguinList.length) {
Penguin.penguinList[_local1].index = _local1;
_local1++;
};
}
public static function remove(_arg1:Number):void{
while (_arg1 > 0) {
Penguin.penguinList[(Penguin.count - 1)].destroy();
Penguin.penguinList.pop();
_arg1--;
Penguin.count--;
};
Penguin.refreshIndexes();
LevelStatistics.goals[17] = Penguin.count;
LevelStatistics.updateStatistics();
}
}
}//package pets
Section 387
//PetsContainer (pets.PetsContainer)
package pets {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.twoD.zones.*;
import flash.filters.*;
import flash.utils.*;
import houses.*;
import com.cheezeworld.math.*;
import game.assets.*;
import production.*;
import ui.*;
import org.flintparticles.twoD.emitters.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.initializers.*;
import org.flintparticles.twoD.renderers.*;
import org.flintparticles.common.displayObjects.*;
import org.flintparticles.common.energyEasing.*;
import bears.*;
public class PetsContainer extends MovieClip {
private var container:Sprite;
private var timerSort:Timer;
private var _sortedItems:Array;
private var _stageInstance:DisplayObjectContainer;
private var waterEmitter:Emitter2D;
private var waterRenderer:BitmapRenderer;
private var _field:FieldTemplate;
public static var instance:PetsContainer;
public function PetsContainer(_arg1:DisplayObjectContainer):void{
_stageInstance = _arg1;
container = new Sprite();
_field = new FieldTemplate();
_field.x = 167;
_field.y = 145;
_field.alpha = 0;
_arg1.addChild(_field);
_arg1.addChild(container);
_stageInstance = DisplayObjectContainer(container);
MovingProduction.container = _stageInstance;
PetsContainer.instance = this;
timerSort = new Timer(10);
timerSort.addEventListener(TimerEvent.TIMER, arrange);
timerSort.start();
_field.addEventListener(MouseEvent.MOUSE_DOWN, addGrass, false, 0, true);
container.mouseEnabled = false;
createWaterEmitter();
}
public function createWaterEmitter():void{
waterEmitter = new Emitter2D();
waterEmitter.counter = new TimePeriod(150, 0.2);
waterEmitter.addInitializer(new SharedImage(new Dot(1, 10737901)));
waterEmitter.addInitializer(new ColorInit(10737901, 4294967295));
waterEmitter.addInitializer(new Velocity(new DiscZone(new Point(0, 0), 100, 0)));
waterEmitter.addInitializer(new Lifetime(0.2, 0.2));
waterEmitter.addAction(new Age(Quadratic.easeIn));
waterEmitter.addAction(new Move());
waterEmitter.addAction(new Fade());
waterRenderer = new BitmapRenderer(new Rectangle(0, 0, 570, 430));
waterRenderer.addFilter(new BlurFilter(2, 2, 1));
waterRenderer.addFilter(new ColorMatrixFilter([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0.95, 0]));
waterRenderer.addEmitter(waterEmitter);
_stageInstance.addChild(waterRenderer);
}
public function makePet(_arg1:String, _arg2:Number, _arg3:Number):void{
var _local4:Penguin;
switch (_arg1){
case "PENGUIN":
_local4 = new Penguin();
_local4.show(_arg2, _arg3, 0, _stageInstance, true);
break;
case "KING_PENGUIN":
break;
};
}
public function addProduct(_arg1:String, _arg2:Number, _arg3:Number):void{
trace("addProduct");
var _local4:Production = new Production(_arg1, _arg2, (_arg3 - (Math.random() * 30)), _stageInstance);
Cat.catchProduct(_local4);
}
private function arrange(_arg1:TimerEvent=null):void{
if (_arg1 != null){
_arg1.stopPropagation();
};
_sortedItems = [];
var _local2:int;
while (_local2 < _stageInstance.numChildren) {
_sortedItems[_local2] = _stageInstance.getChildAt(_local2);
_local2++;
};
_sortedItems.sortOn("y", Array.NUMERIC);
var _local3:int = _stageInstance.numChildren;
while (_local3--) {
if (_stageInstance.getChildAt(_local3) == _sortedItems[_local3]){
} else {
_stageInstance.setChildIndex(_sortedItems[_local3], _local3);
};
};
}
public function addGrass(_arg1:MouseEvent=null):void{
var _local2:Grass;
if (WaterTooltip.firstShow){
WaterTooltip.instance.hide();
};
if (Well.instance.getWater()){
waterEmitter.x = Math.ceil(_stageInstance.mouseX);
waterEmitter.y = Math.ceil((_stageInstance.mouseY - 15));
waterEmitter.start();
_local2 = new Grass(Math.ceil(_stageInstance.mouseX), Math.ceil(_stageInstance.mouseY), _stageInstance);
};
}
public function addFlyProduct(_arg1:String, _arg2:Number):void{
var _local4:Production;
trace("addFlyProduct");
var _local3:int;
while (_local3 < _arg2) {
_local4 = new Production(_arg1, MathUtils.rand(150, 400), MathUtils.rand(150, 300), _stageInstance, true);
Cat.catchProduct(_local4);
_local3++;
};
}
public function addPet(_arg1:String, _arg2:Number=0):void{
var _local5:MovieClip;
trace("addPet", _arg1, _stageInstance);
var _local3:Number = MathUtils.rand(150, 400);
var _local4:Number = MathUtils.rand(150, 300);
switch (_arg1){
case "BROWN":
case "POLAR_BEAR":
_local5 = new Panda();
break;
case "PENGUIN":
_local5 = new Penguin();
break;
case "KING_PENGUIN":
break;
case "GUINEA_FOWL":
_local5 = new Penguin();
break;
case "OSTRICH":
break;
case "SHEEP":
_local5 = new Sheep();
break;
case "CAT":
_local5 = new Cat();
break;
};
_local5.show(_local3, _local4, _arg2, _stageInstance);
}
}
}//package pets
Section 388
//Sheep (pets.Sheep)
package pets {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.media.*;
import flash.utils.*;
import com.cheezeworld.math.*;
import game.assets.*;
import production.*;
import ui.*;
import game.*;
import utils.*;
import com.melesta.utils.math.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Sheep extends SheepTemplate {
private var _hungrySound:SoundChannel;
private var _state:String;// = "moving"
private var _produceCounter:Number;// = 0
private var pet:MovieClip;
private var gameController:GameController;
private var _stageInstance:DisplayObjectContainer;
private var _hungryTimer:Timer;
private var type:String;// = "SHEEP"
private var _produceTimer:Timer;
private var _counter:Number;// = 0
private var timer:Timer;
private var prewRight:Boolean;// = false
public var index:Number;// = 0
private var _stateTimer:Timer;
private var _production:String;// = "WOOL"
private var _hungryValue:Number;// = 100
private var _deltaHungry:Number;// = 5
private var nearGrass:Grass;
private var t:Number;// = 0
public static var penguinList:Array = new Array();
public static var firstShow:Boolean = true;
public static var count:Number = 0;
public function Sheep(){
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
this.mouseChildren = false;
this.mouseEnabled = false;
_hungrySound = new SoundChannel();
_produceTimer = new Timer(1000);
_produceTimer.addEventListener(TimerEvent.TIMER, produce, false, 0, true);
_hungryTimer = new Timer(1000);
_hungryTimer.addEventListener(TimerEvent.TIMER, hungry, false, 0, true);
_stateTimer = new Timer(1);
_stateTimer.addEventListener(TimerEvent.TIMER, checkHungry, false, 0, true);
_stateTimer.start();
}
private function getGrass():void{
if (_state == "hungry"){
if (nearGrass != null){
if (!nearGrass.hasGrass()){
Tweener.removeTweens(this);
findGrass();
};
};
};
}
public function destroy(_arg1:Event=null):void{
_stageInstance.removeChild(this);
if (_arg1 != null){
Sheep.count--;
};
timer.stop();
timer.removeEventListener(TimerEvent.TIMER, move);
_hungrySound.stop();
Tweener.removeTweens(this);
_hungryTimer.stop();
_produceTimer.stop();
_produceTimer.removeEventListener(TimerEvent.TIMER, produce);
_hungryTimer.removeEventListener(TimerEvent.TIMER, hungry);
_stateTimer.removeEventListener(TimerEvent.TIMER, checkHungry);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
gameController.removeEventListener(GameController.RESUME_GAME, resume);
gameController.removeEventListener(GameController.PAUSE_GAME, pause);
}
public function show(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:DisplayObjectContainer, _arg5:Boolean=false):void{
_counter = 7;
this.x = _arg1;
this.y = -10;
_arg4.addChild(this);
_stageInstance = _arg4;
Tweener.addTween(this, {y:_arg2, time:0.3, delay:_arg3, transition:"easeInCirc", onComplete:startAnimation});
timer = new Timer(3000);
timer.addEventListener(TimerEvent.TIMER, move);
_hungryTimer.start();
}
public function resume(_arg1:Event=null):void{
Tweener.resumeTweens(this);
if (((!((this._state == "flyOut"))) && (!((this._state == "death"))))){
switch (_state){
case "hungry":
_stateTimer.start();
_hungryTimer.start();
this.body.play();
if (_hungryValue < 20){
_hungrySound = SoundManager.play("sheep_hungry", 1);
};
break;
case "moving":
_stateTimer.start();
_hungryTimer.start();
timer.start();
this.body.play();
break;
};
_produceTimer.start();
};
}
public function startAnimation():void{
_produceTimer.start();
var _local1:Number = ((this.x)<300) ? -1 : 1;
SoundManager.play("sheep_voice", 1, new SoundTransform(1, _local1));
timer.start();
move();
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.sheep);
};
index = Sheep.count;
Sheep.penguinList.push(this);
Sheep.count++;
LevelStatistics.goals[18] = Sheep.count;
LevelStatistics.updateStatistics();
}
private function hungry(_arg1:TimerEvent=null):void{
_arg1.stopPropagation();
_hungryValue = (_hungryValue - _deltaHungry);
if (_hungryValue <= 40){
if (_state != "hungry"){
_state = "hungry";
findGrass();
if (_hungryValue == 20){
_hungrySound = SoundManager.play("sheep_hungry", 1);
};
};
} else {
_state = "moving";
};
if (_hungryValue <= 0){
_state = "death";
death();
};
this.hungryProgress._mask.width = ((_hungryValue / 100) * 17);
}
public function move(_arg1:TimerEvent=null):void{
if (_arg1 != null){
_arg1.stopPropagation();
};
var _local2:Point = new Point(this.x, this.y);
var _local3:Number = MathUtils.rand(150, 400);
var _local4:Number = MathUtils.rand(150, 300);
var _local5:Point = new Point(_local3, _local4);
var _local6:Object = Direction.getDirection(_local2, _local5);
this.body.gotoAndPlay(_local6.direction);
if (_local6.right){
this.scaleX = -1;
prewRight = true;
} else {
this.scaleX = 1;
prewRight = false;
};
Tweener.removeTweens(this);
if (_hungryValue <= 30){
t = (Math.sqrt((((x - _local5.x) * (x - _local5.x)) + ((y - _local5.y) * (y - _local5.y)))) / 30);
} else {
t = (Math.sqrt((((x - _local5.x) * (x - _local5.x)) + ((y - _local5.y) * (y - _local5.y)))) / 10);
};
Tweener.addTween(this, {y:_local5.y, x:_local5.x, time:t, transition:"linear", onComplete:move});
}
private function nextPoint():Point{
var _local1:Number = MathUtils.rand(150, 400);
var _local2:Number = MathUtils.rand(150, 300);
var _local3:Point = new Point(_local1, _local2);
while (Math.sqrt((((x - _local1) * (x - _local1)) + ((y - _local2) * (y - _local2)))) < 100) {
_local1 = MathUtils.rand(150, 400);
_local2 = MathUtils.rand(150, 300);
_local3.x = _local1;
_local3.y = _local2;
};
return (_local3);
}
public function kill():void{
if (((!((this._state == "flyOut"))) && (!((this._state == "death"))))){
this._state = "flyOut";
Tweener.removeTweens(this);
SoundManager.play("sheep_flyout", 1);
_hungrySound.stop();
Sheep.count--;
this.body.stop();
timer.stop();
_hungryTimer.stop();
_stateTimer.stop();
Sheep.penguinList.splice(index, 1);
Sheep.refreshIndexes();
LevelStatistics.goals[18] = Sheep.count;
LevelStatistics.updateStatistics();
_produceTimer.stop();
Tweener.addTween(this, {y:0, rotation:360, time:3, transition:"easeOutBack", onComplete:destroy});
Tweener.addTween(this, {x:(x + 200), transition:"linear", time:1});
_produceTimer.removeEventListener(TimerEvent.TIMER, produce);
_hungryTimer.removeEventListener(TimerEvent.TIMER, hungry);
_stateTimer.removeEventListener(TimerEvent.TIMER, checkHungry);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
};
}
private function eat():Boolean{
var _local1:Number;
_hungryTimer.stop();
if (((!((nearGrass == null))) && ((Grass.grassList.length > 0)))){
_local1 = nearGrass.getGrass();
if (_local1 > 0){
this._hungryValue = (this._hungryValue + 10);
this.hungryProgress._mask.width = ((_hungryValue / 100) * 17);
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, delay:0.5, time:0, onUpdate:getGrass, onComplete:eat});
return (true);
};
_hungryTimer.start();
Tweener.removeTweens(this);
if (!_local1){
if (nearGrass != null){
nearGrass.destroy();
};
};
findGrass();
return (false);
//unresolved jump
};
_hungryTimer.start();
Tweener.removeTweens(this);
findGrass();
return (false);
}
private function produce(_arg1:TimerEvent=null):void{
_arg1.stopPropagation();
_produceCounter++;
if (_produceCounter == 19){
PetsContainer.instance.addProduct(_production, this.x, this.y);
_produceCounter = 0;
};
}
private function checkHungry(_arg1:TimerEvent=null):void{
if (_arg1){
_arg1.stopPropagation();
};
if (_state == "hungry"){
if (this._hungryValue > 80){
_state = "moving";
Tweener.removeTweens(this);
_hungryTimer.start();
timer.start();
_counter = 7;
move();
};
};
}
public function pause(_arg1:Event=null):void{
_stateTimer.stop();
_hungryTimer.stop();
timer.stop();
_produceTimer.stop();
_hungrySound.stop();
Tweener.pauseTweens(this);
this.body.stop();
}
private function death():void{
Tweener.removeTweens(this);
_hungrySound.stop();
_hungryTimer.stop();
timer.stop();
_produceTimer.stop();
this.body.gotoAndPlay("death");
Tweener.addTween(this, {alpha:0, time:1, delay:0.7, transition:"linear", onComplete:destroy});
SoundManager.play("sheep_die", 1);
Sheep.count--;
Sheep.penguinList.splice(index, 1);
Sheep.refreshIndexes();
LevelStatistics.goals[18] = Sheep.count;
LevelStatistics.updateStatistics();
}
private function findGrass():void{
var nX:Number;
var nY:Number;
var pg:Point;
var dir0:Object;
var pp:Point = new Point(this.x, this.y);
timer.stop();
if (Grass.grassList.length > 0){
nearGrass = Grass.getNear(this.x, this.y);
nX = (Math.ceil(nearGrass.x) + Math.ceil((Math.random() * 10)));
nY = (Math.ceil(nearGrass.y) + Math.ceil((Math.random() * 10)));
pg = new Point(nX, nY);
dir0 = Direction.getDirection(pp, pg);
this.body.gotoAndPlay(dir0.direction);
if (dir0.right){
this.scaleX = -1;
prewRight = true;
} else {
this.scaleX = 1;
prewRight = false;
};
Tweener.removeTweens(this);
t = (Math.sqrt((((x - nX) * (x - nX)) + ((y - nY) * (y - nY)))) / 100);
Tweener.addTween(this, {y:nY, x:nX, time:t, transition:"linear", onUpdate:getGrass, onComplete:function ():void{
if (eat()){
this.body.gotoAndPlay("eat");
};
}});
} else {
_counter = 7;
_state = "moving";
timer.start();
move();
};
}
public static function refreshIndexes():void{
var _local1:int;
while (_local1 < Sheep.penguinList.length) {
Sheep.penguinList[_local1].index = _local1;
_local1++;
};
}
public static function remove(_arg1:Number):void{
while (_arg1 > 0) {
Sheep.penguinList[(Sheep.count - 1)].destroy();
Sheep.penguinList.pop();
_arg1--;
Sheep.count--;
};
Sheep.refreshIndexes();
LevelStatistics.goals[18] = Sheep.count;
LevelStatistics.updateStatistics();
}
}
}//package pets
Section 389
//cat0Icon_mc_3 (petshop_afr_fla.cat0Icon_mc_3)
package petshop_afr_fla {
import flash.display.*;
public dynamic class cat0Icon_mc_3 extends MovieClip {
public function cat0Icon_mc_3(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package petshop_afr_fla
Section 390
//chickenIcon_mc_5 (petshop_afr_fla.chickenIcon_mc_5)
package petshop_afr_fla {
import flash.events.*;
import flash.display.*;
public dynamic class chickenIcon_mc_5 extends MovieClip {
public var active:Boolean;
public function chickenIcon_mc_5(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("press");
};
}
function frame1(){
stop();
active = false;
addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
stop();
}
public function over(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("over");
};
}
public function out(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("active");
};
}
}
}//package petshop_afr_fla
Section 391
//cowIcon_mc_2 (petshop_afr_fla.cowIcon_mc_2)
package petshop_afr_fla {
import flash.events.*;
import flash.display.*;
public dynamic class cowIcon_mc_2 extends MovieClip {
public var active:Boolean;
public function cowIcon_mc_2(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("press");
};
}
function frame1(){
stop();
active = false;
addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
}
public function over(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("over");
};
}
public function out(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("active");
};
}
}
}//package petshop_afr_fla
Section 392
//pigIcon_mc_4 (petshop_afr_fla.pigIcon_mc_4)
package petshop_afr_fla {
import flash.events.*;
import flash.display.*;
public dynamic class pigIcon_mc_4 extends MovieClip {
public var active:Boolean;
public function pigIcon_mc_4(){
addFrameScript(0, frame1);
}
public function down(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("press");
};
}
function frame1(){
stop();
active = false;
addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
}
public function over(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("over");
};
}
public function out(_arg1:MouseEvent=null):void{
if (active){
gotoAndStop("active");
};
}
}
}//package petshop_afr_fla
Section 393
//body_2 (polarBear_fla.body_2)
package polarBear_fla {
import flash.display.*;
public dynamic class body_2 extends MovieClip {
public function body_2(){
addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120);
}
function frame48(){
gotoAndPlay("left");
}
function frame120(){
gotoAndPlay("down_left");
}
function frame72(){
gotoAndPlay("left_up");
}
function frame96(){
gotoAndPlay("up");
}
function frame24(){
gotoAndPlay("down");
}
}
}//package polarBear_fla
Section 394
//buildCage_4 (polarBear_fla.buildCage_4)
package polarBear_fla {
import flash.display.*;
public dynamic class buildCage_4 extends MovieClip {
public function buildCage_4(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package polarBear_fla
Section 395
//DepotProduct (production.DepotProduct)
package production {
import utils.*;
public class DepotProduct extends DepotProductTemplate {
public function DepotProduct():void{
this.visible = false;
}
public function hide():void{
this.visible = false;
}
public function show(_arg1:Number):void{
trace("ProductTypes.types[productIndex]", ProductTypes.types[_arg1]);
this.body.gotoAndStop(ProductTypes.types[_arg1]);
this.visible = true;
}
}
}//package production
Section 396
//DepotProductTemplate (production.DepotProductTemplate)
package production {
import flash.display.*;
public dynamic class DepotProductTemplate extends MovieClip {
public var body:MovieClip;
}
}//package production
Section 397
//MovingProduction (production.MovingProduction)
package production {
import flash.events.*;
import flash.display.*;
import game.*;
import caurina.transitions.*;
public class MovingProduction extends PruductionTemplate {
private var gameController:GameController;
public static var container:DisplayObjectContainer;
public function MovingProduction(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Boolean=false){
var type = _arg1;
var posx = _arg2;
var posy = _arg3;
var delay = _arg4;
var second = _arg5;
super();
this.body.gotoAndStop(type);
gameController = GameController.instance;
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
container.addChild(this);
this.parashute.visible = false;
this.x = 277;
this.y = 361;
this.alpha = 0;
this.body.scaleX = 1;
this.body.scaleY = 1;
if (!second){
Tweener.addTween(this, {x:posx, delay:delay, time:0.7, transition:"linear", onStart:function ():void{
this.alpha = 1;
}});
Tweener.addTween(this, {y:posy, delay:delay, time:0.7, transition:"easeInOutBack", onComplete:destroy});
} else {
Tweener.addTween(this, {x:posx, delay:delay, time:0.7, transition:"linear", onStart:function ():void{
this.alpha = 1;
}});
Tweener.addTween(this, {y:posy, delay:delay, time:0.7, transition:"easeOutInBack", onComplete:destroy});
};
}
public function destroy(_arg1:Event=null):void{
Tweener.removeTweens(this);
container.removeChild(this);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
}
}
}//package production
Section 398
//Production (production.Production)
package production {
import flash.events.*;
import flash.display.*;
import flash.filters.*;
import flash.utils.*;
import houses.*;
import ui.*;
import game.*;
import pets.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class Production extends PruductionTemplate {
private var size:uint;// = 80
private var _lifeTime:Number;// = 10
private var offset:uint;// = 50
private var _deathTimer:Timer;
private var bgColor:uint;// = 0xFFFFFF
public var cached:Boolean;// = false
public var clicked:Boolean;// = false
private var gameController:GameController;
private var _type:String;
private var _stageInstance:DisplayObjectContainer;
private var idx:int;// = 0
public static var firstShow:Boolean = true;
public function Production(_arg1:String, _arg2:Number, _arg3:Number, _arg4:DisplayObjectContainer=null, _arg5:Boolean=false){
var type = _arg1;
var posx = _arg2;
var posy = _arg3;
var stageInstance = _arg4;
var fly = _arg5;
super();
Cat.products.push(this);
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, destroy, false, 0, true);
_type = type;
this.parashute.visible = false;
_stageInstance = stageInstance;
this.body.scaleX = 1;
this.body.scaleY = 1;
this.x = posx;
if (!fly){
this.y = posy;
} else {
this.y = -50;
this.parashute.visible = true;
Tweener.addTween(this, {y:posy, time:4, delay:(Math.random() * 1), transition:"linear", onComplete:function ():void{
this.parashute.visible = false;
}});
};
this.body.gotoAndStop(type);
addEventListener(MouseEvent.MOUSE_DOWN, onClick, false, 0, true);
_stageInstance.addChild(this);
addEventListener(MouseEvent.ROLL_OVER, dropShadow, false, 0, true);
addEventListener(MouseEvent.ROLL_OUT, removeShadow, false, 0, true);
_lifeTime = (10 * 10);
_deathTimer = new Timer(200);
_deathTimer.addEventListener(TimerEvent.TIMER, live, false, 0, true);
_deathTimer.start();
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
if (y > 200){
BlockTooltip.instance.show(this.x, this.y, Config.currentLanguage.tooltips.collect);
} else {
BlockTooltip.instance.show(this.x, (this.y + 10), Config.currentLanguage.tooltips.collect);
};
};
}
private function blinking():void{
Tweener.removeTweens(this, alpha);
var _local1:Number = 1;
if (this.alpha < 1){
_local1 = 1;
} else {
_local1 = 0.3;
};
Tweener.addTween(this, {alpha:_local1, time:0.2});
}
public function destroy(_arg1:Event=null):void{
Cat.products.splice(Cat.products.indexOf(this, 0), 1);
_stageInstance.removeChild(this);
Tweener.removeTweens(this);
_deathTimer.stop();
_deathTimer.removeEventListener(TimerEvent.TIMER, live, false);
removeEventListener(MouseEvent.MOUSE_DOWN, onClick);
removeEventListener(MouseEvent.ROLL_OVER, dropShadow);
removeEventListener(MouseEvent.ROLL_OVER, removeShadow);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
}
public function removeShadow(_arg1:MouseEvent=null):void{
var _local2:BitmapFilter = getBitmapFilter(0);
var _local3:Array = new Array();
_local3.push(_local2);
filters = _local3;
}
private function remove():void{
_stageInstance.removeChild(this);
Tweener.removeTweens(this);
removeEventListener(MouseEvent.MOUSE_DOWN, onClick);
removeEventListener(MouseEvent.ROLL_OVER, dropShadow);
removeEventListener(MouseEvent.ROLL_OVER, removeShadow);
gameController.removeEventListener(GameController.LEVEL_COMPLETED, destroy);
}
private function getBitmapFilter(_arg1:Number):BitmapFilter{
var _local2:Number = 0xFFFFFF;
var _local3:Number = 0;
var _local4:Number = 0.8;
var _local5:Number = 10;
var _local6:Number = 10;
var _local7:Number = 0;
var _local8:Number = _arg1;
var _local9:Boolean;
var _local10:Boolean;
var _local11:Number = BitmapFilterQuality.HIGH;
return (new DropShadowFilter(_local7, _local3, _local2, _local4, _local5, _local6, _local8, _local11, _local9, _local10));
}
public function canAddToDepot():Boolean{
return (Depot.instance.canAddProduct(_type));
}
public function get isFlying():Boolean{
return (parashute.visible);
}
private function onClick(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
clicked = canAddToDepot();
toDepot();
}
private function live(_arg1:TimerEvent):void{
_arg1.stopPropagation();
_lifeTime--;
if (_lifeTime < 30){
blinking();
};
if (!_lifeTime){
_deathTimer.stop();
Tweener.removeTweens(this, alpha);
_deathTimer.removeEventListener(TimerEvent.TIMER, live, false);
remove();
};
}
public function resume(_arg1:Event=null):void{
_deathTimer.start();
Tweener.resumeTweens(this);
}
public function dropShadow(_arg1:MouseEvent=null):void{
var _local2:BitmapFilter = getBitmapFilter(4);
var _local3:Array = new Array();
_local3.push(_local2);
filters = _local3;
}
public function pause(_arg1:Event=null):void{
_deathTimer.stop();
Tweener.pauseTweens(this);
}
public function toDepot():Boolean{
this.parashute.visible = false;
cached = true;
if (Depot.instance.addProduct(_type)){
this._deathTimer.stop();
_deathTimer.removeEventListener(TimerEvent.TIMER, live, false);
SoundManager.play("product_take", 1);
Tweener.addTween(this, {y:378, time:0.3, onComplete:destroy, transition:"easeOutCirc"});
Tweener.addTween(this, {x:265, time:0.3, transition:"linear"});
return (true);
};
SoundManager.play("fool_action", 1);
setTimeout(function ():void{
cached = false;
}, 200);
return (false);
}
}
}//package production
Section 399
//PruductionTemplate (production.PruductionTemplate)
package production {
import flash.display.*;
public dynamic class PruductionTemplate extends MovieClip {
public var parashute:MovieClip;
public var body:MovieClip;
}
}//package production
Section 400
//DefaultStartSound (ru.rambler.games.assets.DefaultStartSound)
package ru.rambler.games.assets {
import flash.media.*;
public dynamic class DefaultStartSound extends Sound {
}
}//package ru.rambler.games.assets
Section 401
//ClientObjectEmulator (ru.rambler.games.debug.ClientObjectEmulator)
package ru.rambler.games.debug {
import ru.rambler.games.interfaces.net.*;
public class ClientObjectEmulator implements IClientObject {
private var _place:int;
private var _user:UserObjectEmulator;
private var _isAI:Boolean;
private var _id:Number;
public function ClientObjectEmulator(_arg1:String="", _arg2:int=0, _arg3:Boolean=false){
_id = new Date().getTime();
_user = new UserObjectEmulator(_arg1, _arg3);
_place = _arg2;
_isAI = _arg3;
}
public function get place():int{
return (_place);
}
public function isAI():Boolean{
return (_isAI);
}
public function isGuest():Boolean{
return (false);
}
public function isApproved():Boolean{
return (true);
}
public function isObserver():Boolean{
return (false);
}
public function isOwner():Boolean{
return (true);
}
public function get userObject():IUserObject{
return ((_user as IUserObject));
}
public function get ID():String{
return (("client" + _id));
}
}
}//package ru.rambler.games.debug
Section 402
//SingleplayerConnectionEmulator (ru.rambler.games.debug.SingleplayerConnectionEmulator)
package ru.rambler.games.debug {
import flash.events.*;
import ru.rambler.games.events.*;
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.net.commands.server.*;
public class SingleplayerConnectionEmulator extends EventDispatcher implements ISingleplayerConnection {
private var _client:ClientObjectEmulator;
public function SingleplayerConnectionEmulator(){
_client = new ClientObjectEmulator();
}
public function sendResult(_arg1:int, _arg2:Boolean):void{
}
public function set trainingMode(_arg1:Boolean):void{
}
public function get data():Object{
return (null);
}
public function sendCommand(_arg1:ICommand):void{
}
public function get gameObject():IGameObject{
return (null);
}
public function set data(_arg1:Object):void{
}
public function disconnect():void{
}
public function get trainingMode():Boolean{
return (true);
}
public function getTop(_arg1:int=-1):void{
var _local2:XML = <command name="top">
<user id="210831642" nickname="player0" guest="0" login="uintrou2007" rating="1"/>
<user id="45424195" nickname="player1" guest="0" login="85.kitty" rating="2"/>
<user id="59795137" nickname="player2" guest="0" login="school449" rating="3"/>
<user id="221349865" nickname="player3" guest="0" login="asp7878" rating="4"/>
<user id="1980326" nickname="player4" guest="0" login="mulan2" rating="5"/>
<user id="2216031" nickname="player5" guest="0" login="kitsia1997" rating="6"/>
</command>
;
dispatchEvent(new ConnectionEvent(ConnectionEvent.TOP, new TopReceived(_local2)));
}
public function connect(_arg1:String="", _arg2:int=-1):void{
dispatchEvent(new ConnectionEvent(ConnectionEvent.CONNECT));
}
public function set uiManager(_arg1:IUIManager):void{
}
public function get clientObject():IClientObject{
return (_client);
}
public function ready():void{
}
public function refreshPlayerInfo(_arg1:String="", _arg2:String=""):void{
var _local3:XML = <command name="user">
<user id="0" nickname="player" guest="0" login="player" rating="1"/>
</command>
;
dispatchEvent(new ConnectionEvent(ConnectionEvent.PLAYER_UPDATED, new UpdatePlayer(_local3)));
}
}
}//package ru.rambler.games.debug
Section 403
//SingleplayerCoreEmulator (ru.rambler.games.debug.SingleplayerCoreEmulator)
package ru.rambler.games.debug {
import ru.rambler.games.interfaces.core.*;
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.interfaces.game.*;
import flash.display.*;
import ru.rambler.games.ui.*;
public class SingleplayerCoreEmulator extends MovieClip implements ICore {
protected var _uiManager:IUIManager;
protected var _connection:IConnection;
public function SingleplayerCoreEmulator(_arg1:DisplayObjectContainer){
_uiManager = SingleplayerUIManager.instance;
_uiManager.container = _arg1;
_connection = new SingleplayerConnectionEmulator();
}
public function get uiManager():IUIManager{
return (_uiManager);
}
public function get controller():IGameController{
return (null);
}
public function get connection():IConnection{
return (_connection);
}
public function get self():ICore{
return (this);
}
}
}//package ru.rambler.games.debug
Section 404
//UserObjectEmulator (ru.rambler.games.debug.UserObjectEmulator)
package ru.rambler.games.debug {
import ru.rambler.games.interfaces.net.*;
public class UserObjectEmulator implements IUserObject {
private var _avatar:String;
private var _id:String;
public function UserObjectEmulator(_arg1:String="", _arg2:Boolean=false){
_id = ((_arg1)=="") ? new Date().getTime().toString() : _arg1;
_avatar = (_arg2) ? "computer" : "player";
}
public function get ID():String{
return (_id);
}
public function get settings():Object{
return (null);
}
public function get rating():int{
return (0);
}
public function get maxRating():int{
return (0);
}
public function get login():String{
return ("test");
}
public function get nickname():String{
return (_id);
}
public function get avatarURL():String{
return (_avatar);
}
}
}//package ru.rambler.games.debug
Section 405
//ConnectionEvent (ru.rambler.games.events.ConnectionEvent)
package ru.rambler.games.events {
import flash.events.*;
import ru.rambler.games.interfaces.net.*;
public class ConnectionEvent extends Event implements IConnectionEvent {
private var _command:ICommand;
public static const CHAT_MESSAGE_RECEIVED:String = "CHAT_MESSAGE_RECEIVED";
public static const CHECK_WORD:String = "CHECK_WORD";
public static const RANDOM_WORD:String = "RANDOM_WORD";
public static const CONNECT:String = "CONNECT";
public static const RANDOM_QA:String = "RANDOM_QA";
public static const START_GAME:String = "START_GAME";
public static const DRAW_REQUEST_RECEIVED:String = "DRAW_REQUEST_RECEIVED";
public static const ACTION_RECEIVED:String = "ACTION_RECEIVED";
public static const DISCONNECT_FROM_TABLE:String = "DISCONNECT_FROM_TABLE";
public static const DATA_RECEIVED:String = "DATA_RECEIVED";
public static const TABLE_READY:String = "TABLE_READY";
public static const DATA_ENQUEUED:String = "DATA_ENQUEUED";
public static const DISCONNECT:String = "DISCONNECT";
public static const PLAYER_LEFT:String = "PLAYER_LEFT";
public static const TABLE_NOT_READY:String = "TABLE_NOT_READY";
public static const PLAYER_JOINED:String = "PLAYER_JOINED";
public static const DRAW_REQUEST_DECLINED:String = "DRAW_REQUEST_DECLINED";
public static const COMMAND:String = "COMMAND";
public static const CHAT_STATE_CHANGED:String = "CHAT_STATE_CHANGED";
public static const ERROR:String = "public static const ERROR";
public static const TOP:String = "TOP";
public static const END_GAME:String = "END_GAME";
public static const CLOSE_GAME:String = "CLOSE_GAME";
public static const PLAYER_UPDATED:String = "PLAYER_UPDATED";
public static const CONNECT_TO_TABLE:String = "CONNECT_TO_TABLE";
public function ConnectionEvent(_arg1:String, _arg2:ICommand=null, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
_command = _arg2;
}
public function get command():ICommand{
return (_command);
}
override public function clone():Event{
return (new ConnectionEvent(this.type, this.command, this.bubbles, this.cancelable));
}
}
}//package ru.rambler.games.events
Section 406
//GameEvent (ru.rambler.games.events.GameEvent)
package ru.rambler.games.events {
import flash.events.*;
public class GameEvent extends Event {
private var _action:Object;
public static const MOVE_RENDERED:String = "MOVE_RENDERED";
public static const ACTION_RECEIVED:String = "ACTION_RECEIVED";
public static const MOVE_TIME:String = "MOVE_TIME";
public static const ACTION_APPLIED:String = "ACTION_APPLIED";
public static const PREPARED_FOR_TURN:String = "PREPARED_FOR_TURN";
public static const PREPARED_FOR_GAME:String = "PREPARED_FOR_GAME";
public static const STATE_LOADED:String = "STATE_LOADED";
public function GameEvent(_arg1:String, _arg2:Object=null, _arg3:Boolean=false, _arg4:Boolean=false){
super(_arg1, _arg3, _arg4);
_action = _arg2;
}
override public function clone():Event{
return (new GameEvent(type, _action, bubbles, cancelable));
}
public function get action():Object{
return (_action);
}
}
}//package ru.rambler.games.events
Section 407
//ICore (ru.rambler.games.interfaces.core.ICore)
package ru.rambler.games.interfaces.core {
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.interfaces.game.*;
public interface ICore {
function get uiManager():IUIManager;
function get self():ICore;
function get controller():IGameController;
function get connection():IConnection;
}
}//package ru.rambler.games.interfaces.core
Section 408
//IVersion (ru.rambler.games.interfaces.core.IVersion)
package ru.rambler.games.interfaces.core {
public interface IVersion {
function get version():String;
}
}//package ru.rambler.games.interfaces.core
Section 409
//IGame (ru.rambler.games.interfaces.game.IGame)
package ru.rambler.games.interfaces.game {
import ru.rambler.games.interfaces.core.*;
public interface IGame {
function init():void;
function set loader(_arg1:ICore):void;
}
}//package ru.rambler.games.interfaces.game
Section 410
//IGameController (ru.rambler.games.interfaces.game.IGameController)
package ru.rambler.games.interfaces.game {
import flash.events.*;
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.interfaces.ui.*;
public interface IGameController extends IEventDispatcher {
function set state(_arg1:IGameState):void;
function set game(_arg1:IMultiplayerGame):void;
function get activePlayer():IClientObject;
function get turnTime():int;
function loadState(_arg1:String):void;
function pauseTimer():void;
function get state():IGameState;
function set uiManager(_arg1:IUIManager):void;
function saveState(_arg1:IGameState):String;
function resumeTimer():void;
function get isOwnTurn():Boolean;
function set connection(_arg1:IMultiplayerConnection):void;
}
}//package ru.rambler.games.interfaces.game
Section 411
//IGameState (ru.rambler.games.interfaces.game.IGameState)
package ru.rambler.games.interfaces.game {
public interface IGameState {
function get activePlayerIdx():int;
function restoreFromObject(_arg1:Object):void;
function toObject():Object;
function set activePlayerIdx(_arg1:int):void;
function clone():IGameState;
}
}//package ru.rambler.games.interfaces.game
Section 412
//IMoveDescription (ru.rambler.games.interfaces.game.IMoveDescription)
package ru.rambler.games.interfaces.game {
public interface IMoveDescription {
function get nextPlayerIdx():int;
function get winners():Array;
function get losers():Array;
function get finishDescription():String;
function get turnResult():int;
}
}//package ru.rambler.games.interfaces.game
Section 413
//IMultiplayerGame (ru.rambler.games.interfaces.game.IMultiplayerGame)
package ru.rambler.games.interfaces.game {
import flash.events.*;
public interface IMultiplayerGame extends IGame, IEventDispatcher {
function prepareForGame():void;
function waitForPlayer():void;
function resumeGame():void;
function pauseGame():void;
function applyAction(_arg1:Object, _arg2:IGameState):void;
function waitForAI():void;
function endGame():void;
function showMove(_arg1:IMoveDescription):void;
function prepareForTurn():void;
}
}//package ru.rambler.games.interfaces.game
Section 414
//IClientObject (ru.rambler.games.interfaces.net.IClientObject)
package ru.rambler.games.interfaces.net {
public interface IClientObject {
function isObserver():Boolean;
function isApproved():Boolean;
function isAI():Boolean;
function get place():int;
function isOwner():Boolean;
function get userObject():IUserObject;
function get ID():String;
function isGuest():Boolean;
}
}//package ru.rambler.games.interfaces.net
Section 415
//ICommand (ru.rambler.games.interfaces.net.ICommand)
package ru.rambler.games.interfaces.net {
public interface ICommand {
function addConst(_arg1:String, _arg2:Object):void;
function set commandName(_arg1:String):void;
function addXML(_arg1:XML):void;
function get commandName():String;
function toXML():XML;
function addParam(_arg1:String, _arg2:Object):void;
function get params():Object;
function decodeFromXML(_arg1:XML):void;
}
}//package ru.rambler.games.interfaces.net
Section 416
//IConnection (ru.rambler.games.interfaces.net.IConnection)
package ru.rambler.games.interfaces.net {
import flash.events.*;
import ru.rambler.games.interfaces.ui.*;
public interface IConnection extends IEventDispatcher {
function get clientObject():IClientObject;
function sendCommand(_arg1:ICommand):void;
function refreshPlayerInfo(_arg1:String="", _arg2:String=""):void;
function get data():Object;
function get gameObject():IGameObject;
function set uiManager(_arg1:IUIManager):void;
function set data(_arg1:Object):void;
function connect(_arg1:String="", _arg2:int=-1):void;
function set trainingMode(_arg1:Boolean):void;
function disconnect():void;
function get trainingMode():Boolean;
}
}//package ru.rambler.games.interfaces.net
Section 417
//IConnectionEvent (ru.rambler.games.interfaces.net.IConnectionEvent)
package ru.rambler.games.interfaces.net {
public interface IConnectionEvent {
function get command():ICommand;
}
}//package ru.rambler.games.interfaces.net
Section 418
//IGameObject (ru.rambler.games.interfaces.net.IGameObject)
package ru.rambler.games.interfaces.net {
public interface IGameObject {
function isRatingable():Boolean;
function get width():int;
function get height():int;
function get maxPlayersCount():int;
function get gameURI():String;
function get systemName():String;
function get ID():int;
function get gameHistoryURL():String;
function get minPlayersCount():int;
}
}//package ru.rambler.games.interfaces.net
Section 419
//IMultiplayerConnection (ru.rambler.games.interfaces.net.IMultiplayerConnection)
package ru.rambler.games.interfaces.net {
public interface IMultiplayerConnection extends IConnection {
function declineDraw():void;
function ready():void;
function sendChatMessage(_arg1:String):void;
function endGame(_arg1:String, _arg2:String=""):void;
function sendChatState(_arg1:Boolean):void;
function sendData(_arg1:Object):void;
function requestDraw():void;
function get tableObject():ITableObject;
function getQueue(_arg1:String):IQueue;
function reconnectToTable():void;
function sendAction(_arg1:Object, _arg2:int):void;
}
}//package ru.rambler.games.interfaces.net
Section 420
//IQueue (ru.rambler.games.interfaces.net.IQueue)
package ru.rambler.games.interfaces.net {
public interface IQueue {
function isEmpty():Boolean;
function dispose():void;
function back();
function enqueue(_arg1):Boolean;
function getAt(_arg1:int);
function toString():String;
function clear():void;
function dequeue();
function dump():String;
function setAt(_arg1:int, _arg2):void;
function peek();
function toArray():Array;
function contains(_arg1):Boolean;
}
}//package ru.rambler.games.interfaces.net
Section 421
//ISingleplayerConnection (ru.rambler.games.interfaces.net.ISingleplayerConnection)
package ru.rambler.games.interfaces.net {
public interface ISingleplayerConnection extends IConnection {
function ready():void;
function sendResult(_arg1:int, _arg2:Boolean):void;
function getTop(_arg1:int=-1):void;
}
}//package ru.rambler.games.interfaces.net
Section 422
//ITableObject (ru.rambler.games.interfaces.net.ITableObject)
package ru.rambler.games.interfaces.net {
public interface ITableObject {
function isRatingable():Boolean;
function get createTime():int;
function get serverState():int;
function get startTime():int;
function get players():Array;
function isHidden():Boolean;
function get ownerID():String;
function getPlayer(_arg1:String):IClientObject;
function get approvedCount():int;
function isPrivate():Boolean;
function get ID():String;
function get moveTime():int;
}
}//package ru.rambler.games.interfaces.net
Section 423
//IUserObject (ru.rambler.games.interfaces.net.IUserObject)
package ru.rambler.games.interfaces.net {
public interface IUserObject {
function get maxRating():int;
function get settings():Object;
function get avatarURL():String;
function get login():String;
function get ID():String;
function get rating():int;
function get nickname():String;
}
}//package ru.rambler.games.interfaces.net
Section 424
//IGameFrame (ru.rambler.games.interfaces.ui.IGameFrame)
package ru.rambler.games.interfaces.ui {
import flash.text.*;
import flash.display.*;
import flash.geom.*;
public interface IGameFrame {
function get container():DisplayObjectContainer;
function set container(_arg1:DisplayObjectContainer):void;
function get giveupButton():InteractiveObject;
function get musicButton():InteractiveObject;
function setActivePlayer(_arg1:int=-1):void;
function set gameTitle(_arg1:String):void;
function clear():void;
function init(_arg1:int):void;
function set tableID(_arg1:String):void;
function get helpButton():InteractiveObject;
function get sendButton():SimpleButton;
function clearPlayerInfo(_arg1:int=0):void;
function get customArea():Rectangle;
function get soundButton():InteractiveObject;
function getPlayerInfoContainer(_arg1:int=0):DisplayObjectContainer;
function get topButton():InteractiveObject;
function set gameID(_arg1:String):void;
function get chatStateButton():SimpleButton;
function setPlayerInfo(_arg1:String, _arg2:int, _arg3:String, _arg4:int=0):void;
function get messageArea():TextField;
function get inputArea():TextField;
function get logArea():TextField;
function get chatStyle():StyleSheet;
function get drawRequestButton():InteractiveObject;
function set statusText(_arg1:String):void;
}
}//package ru.rambler.games.interfaces.ui
Section 425
//IPopupManager (ru.rambler.games.interfaces.ui.IPopupManager)
package ru.rambler.games.interfaces.ui {
import flash.display.*;
public interface IPopupManager {
function registerInfoWindow(_arg1:Class):void;
function set windowContainer(_arg1:DisplayObjectContainer):void;
function centerWindow(_arg1:IWindow):void;
function showCreatedPopup(_arg1:IWindow, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:Function=null, _arg5=null, _arg6:Array=null):IWindow;
function registerOneButtonWindow(_arg1:Class):void;
function clear():void;
function registerSelectWindow(_arg1:Class):void;
function get oneButtonWindowClass():Class;
function get selectWindowClass():Class;
function showPopup(_arg1:Class, _arg2:String, _arg3:String, _arg4:Boolean=false, _arg5:Boolean=true, _arg6:Function=null, _arg7=null, _arg8:Array=null):IWindow;
function registerInputWindow(_arg1:Class):void;
function get infoWindowClass():Class;
function bringToFront(_arg1:IWindow):void;
function get inputWindowClass():Class;
}
}//package ru.rambler.games.interfaces.ui
Section 426
//ISoundManager (ru.rambler.games.interfaces.ui.ISoundManager)
package ru.rambler.games.interfaces.ui {
import flash.media.*;
public interface ISoundManager {
function playMusic():void;
function get soundState():Boolean;
function play(_arg1:Class, _arg2:Number=0, _arg3:int=0):SoundChannel;
function registerGameStartSound(_arg1:Class):void;
function set soundTransform(_arg1:SoundTransform):void;
function set soundState(_arg1:Boolean):void;
function get soundTransform():SoundTransform;
function get gameStartSound():Class;
}
}//package ru.rambler.games.interfaces.ui
Section 427
//IUIManager (ru.rambler.games.interfaces.ui.IUIManager)
package ru.rambler.games.interfaces.ui {
import flash.display.*;
public interface IUIManager {
function get popupManager():IPopupManager;
function set popupManager(_arg1:IPopupManager):void;
function set cursor(_arg1:DisplayObject):void;
function get cursor():DisplayObject;
function set container(_arg1:DisplayObjectContainer):void;
function closeGame():void;
function get gameFrame():IGameFrame;
function set soundManager(_arg1:ISoundManager):void;
function set gameFrame(_arg1:IGameFrame):void;
function get soundManager():ISoundManager;
}
}//package ru.rambler.games.interfaces.ui
Section 428
//IWindow (ru.rambler.games.interfaces.ui.IWindow)
package ru.rambler.games.interfaces.ui {
import flash.events.*;
public interface IWindow extends IEventDispatcher {
function set title(_arg1:String):void;
function externalAction(_arg1:String):void;
function get buttonPressed():int;
function close():void;
function set text(_arg1:String):void;
function get text():String;
}
}//package ru.rambler.games.interfaces.ui
Section 429
//TopReceived (ru.rambler.games.net.commands.server.TopReceived)
package ru.rambler.games.net.commands.server {
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.net.commands.*;
import ru.rambler.games.net.objects.*;
public class TopReceived extends Command implements ICommand {
private var _userList:Array;
private var _place:int;
private var _current:int;
public static const COMMAND_NAME:String = "top";
public function TopReceived(_arg1:XML){
super(COMMAND_NAME);
decodeFromXML(_arg1);
}
override public function get params():Object{
return ({list:_userList, current:_current, place:_place});
}
public function get place():int{
return (_place);
}
public function get current():int{
return (_current);
}
override public function get commandName():String{
return (COMMAND_NAME);
}
public function get list():Array{
return (_userList);
}
override public function decodeFromXML(_arg1:XML):void{
var _local2:UserObject;
_xml = _arg1;
_userList = new Array();
var _local3:int;
while (_local3 < _xml.user.length()) {
_local2 = (_userList[_local3] = new UserObject());
_local2.decode(_xml.user[_local3]);
_local3++;
};
_userList.sortOn("rating", (Array.NUMERIC | Array.DESCENDING));
}
}
}//package ru.rambler.games.net.commands.server
Section 430
//UpdatePlayer (ru.rambler.games.net.commands.server.UpdatePlayer)
package ru.rambler.games.net.commands.server {
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.net.commands.*;
import ru.rambler.games.net.objects.*;
public class UpdatePlayer extends Command implements ICommand {
private var _user:UserObject;
public static const MODE_SHORT:String = "SHORT";
public static const MODE_MEDIUM:String = "MEDIUM";
public static const MODE_FULL:String = "FULL";
public static const COMMAND_NAME:String = "user";
public function UpdatePlayer(_arg1:XML){
super(COMMAND_NAME);
decodeFromXML(_arg1);
}
override public function get params():Object{
return ({user:_user});
}
public function get user():IUserObject{
return ((_user as IUserObject));
}
override public function get commandName():String{
return (COMMAND_NAME);
}
override public function decodeFromXML(_arg1:XML):void{
_xml = _arg1;
_user = new UserObject();
_user.decode(_xml.user[0]);
}
}
}//package ru.rambler.games.net.commands.server
Section 431
//Command (ru.rambler.games.net.commands.Command)
package ru.rambler.games.net.commands {
import ru.rambler.games.interfaces.net.*;
import flash.utils.*;
import ru.rambler.games.utils.*;
public class Command implements ICommand {
protected var _xml:XML;
public function Command(_arg1:String=""){
_xml = <command/>
;
if (_arg1 != ""){
commandName = _arg1;
};
}
private function _addConst(_arg1:XML, _arg2:String, _arg3:Object):void{
var _local4:ByteArray;
if ((_arg3 is String)){
_arg1[_arg2] = _arg3;
} else {
_local4 = new ByteArray();
_local4.writeObject(_arg3);
_local4.position = 0;
_arg1[_arg2].rg_amf = ByteUtil.byteArrayToHexString(_local4);
};
}
public function addConst(_arg1:String, _arg2:Object):void{
_addConst(_xml, _arg1, _arg2);
}
private function _pushAttribute(_arg1:Object, _arg2:String, _arg3:Object):void{
var _local4:Object;
if (_arg1[_arg2] == undefined){
_arg1[_arg2] = _arg3;
} else {
if ((_arg1[_arg2] is Array)){
_arg1[_arg2].push(_arg3);
} else {
_local4 = _arg1[_arg2];
_arg1[_arg2] = new Array();
_arg1[_arg2].push(_local4);
};
};
}
private function _xml2obj(_arg1:Object, _arg2:XML):void{
var _local3:XML;
var _local5:XML;
var _local6:ByteArray;
var _local7:Object;
var _local4:String = _arg2.name().toString();
if (_arg2 != _xml){
if (_arg2.attribute("value") != undefined){
_pushAttribute(_arg1, _local4, _arg2.attribute("value").toString());
} else {
for each (_local5 in _arg2.attributes()) {
_pushAttribute(_arg1, _local5.name().toString(), _local5.toString());
_arg1[_local5.name().toString()] = _local5.toString();
};
};
};
for each (_local3 in _arg2.elements()) {
_local4 = _local3.name().toString();
if ((((_local4 == "rg_amf")) && (_local3.hasSimpleContent()))){
_local6 = ByteUtil.hexStringToByteArray(_local3.text()[0]);
_arg1 = _local6.readObject();
return;
};
if (((_local3.hasSimpleContent()) && (!((_local3.text() == undefined))))){
_pushAttribute(_arg1, _local4, _local3.text()[0]);
} else {
_local7 = new Object();
_xml2obj(_local7, _local3);
_pushAttribute(_arg1, _local4, _local7);
};
};
}
public function get params():Object{
var _local1:Object = new Object();
_xml2obj(_local1, _xml);
return (_local1);
}
private function _addObject(_arg1:XML, _arg2:String, _arg3:Object):void{
var _local4:XML;
var _local5:String;
if ((((((_arg3 is Number)) || ((_arg3 is Boolean)))) || ((((_arg3 is String)) && ((String(_arg3).length < 0xFF)))))){
if (_arg1 != _xml){
_arg1.@[_arg2] = _arg3;
} else {
_local4 = new XML((("<" + _arg2) + "/>"));
_arg1 = _arg1.appendChild(_local4);
_local4.@["value"] = _arg3;
};
} else {
if ((((_arg3 is String)) || ((_arg3 is Array)))){
_addConst(_arg1, _arg2, _arg3);
} else {
_local4 = new XML((("<" + _arg2) + "/>"));
_arg1 = _arg1.appendChild(_local4);
for (_local5 in _arg3) {
_addObject(_local4, _local5, _arg3[_local5]);
};
};
};
}
public function set commandName(_arg1:String):void{
_xml.@name = _arg1;
}
public function addXML(_arg1:XML):void{
_xml.appendChild(_arg1);
}
public function addParam(_arg1:String, _arg2:Object):void{
_addObject(_xml, _arg1, _arg2);
}
public function toXML():XML{
return (_xml);
}
public function get commandName():String{
return (_xml.@name.toString());
}
public function decodeFromXML(_arg1:XML):void{
_xml = _arg1;
}
}
}//package ru.rambler.games.net.commands
Section 432
//UserObject (ru.rambler.games.net.objects.UserObject)
package ru.rambler.games.net.objects {
import ru.rambler.games.interfaces.net.*;
import flash.utils.*;
import ru.rambler.games.utils.*;
public dynamic class UserObject implements IUserObject {
private var _id:String;
private var _settings:Object;
private var _moderator:int;
private var _nickname:String;
private var _login:String;
private var _max_rating:int;
private var _avatar:String;
private var _moderator_visible:int;
private var _rating:int;
public static const FULL_MODE:String = "FULL";
public static const SHORT_MODE:String = "SHORT";
public static const MEDIUM_MODE:String = "MEDIUM";
public function UserObject(){
_settings = new Object();
}
public function get moderator():int{
return (_moderator);
}
public function get moderator_visible():int{
return (_moderator_visible);
}
public function set maxRating(_arg1:int):void{
_max_rating = _arg1;
}
public function toString():String{
return ((((((((("[UserObject id=" + _id) + ", nickname=") + _nickname) + ", rating=") + _rating) + ", max_rating=") + _max_rating) + "]"));
}
public function decode(_arg1:XML):void{
var _local2:XML;
var _local3:String;
var _local4:ByteArray;
for each (_local2 in _arg1.attributes()) {
_local3 = _local2.name().toString();
switch (_local3){
case "id":
_id = _local2.toString();
break;
case "nickname":
_nickname = _local2.toString();
break;
case "rating":
_rating = int(_local2.toString());
break;
case "max_rating":
_max_rating = int(_local2.toString());
break;
case "moderator":
_moderator = int(_local2.toString());
break;
case "moderator_visible":
_moderator_visible = int(_local2.toString());
break;
case "avatar":
_avatar = _local2.toString();
break;
case "login":
_login = _local2.toString();
break;
case "settings":
break;
default:
this[_local3] = _local2.toString();
};
if (_arg1.settings.text()[0] != null){
_local4 = ByteUtil.hexStringToByteArray(_arg1.settings.text()[0]);
_settings = _local4.readObject();
};
};
}
public function get avatarURL():String{
return (_avatar);
}
public function get ID():String{
return (_id);
}
public function set nickname(_arg1:String):void{
_nickname = _arg1;
}
public function get maxRating():int{
return (_max_rating);
}
public function get settings():Object{
return (_settings);
}
public function get rating():int{
return (_rating);
}
public function get login():String{
return (_login);
}
public function toXML(_arg1:String=""):XML{
var _local3:ByteArray;
if (_arg1 == ""){
_arg1 = UserObject.FULL_MODE;
};
var _local2:XML = new XML("<user />");
_local2.@id = _id;
if (_arg1 != UserObject.SHORT_MODE){
_local2.@nickname = _nickname;
_local2.@avatar = _avatar;
_local2.@login = _login;
_local2.@rating = _rating;
_local2.@max_rating = _max_rating;
if (_arg1 != UserObject.MEDIUM_MODE){
_local3 = new ByteArray();
_local3.writeObject(_settings);
_local3.position = 0;
_local2.settings = ByteUtil.byteArrayToHexString(_local3);
};
};
return (_local2);
}
public function set avatarURL(_arg1:String):void{
_avatar = _arg1;
}
public function set ID(_arg1:String):void{
_id = _arg1;
}
public function set rating(_arg1:int):void{
_rating = _arg1;
}
public function get nickname():String{
return (_nickname);
}
}
}//package ru.rambler.games.net.objects
Section 433
//AbstractWindow (ru.rambler.games.ui.windows.AbstractWindow)
package ru.rambler.games.ui.windows {
import flash.events.*;
import flash.display.*;
import flash.filters.*;
public class AbstractWindow extends Sprite {
protected var _dragArea:Shape;
protected var _startX:int;
protected var _startY:int;
public function AbstractWindow(){
addEventListener(Event.ADDED_TO_STAGE, init);
}
private function mouseDownHandler(_arg1:MouseEvent):void{
_startX = stage.mouseX;
_startY = stage.mouseY;
stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
}
private function mouseUpHandler(_arg1:MouseEvent):void{
stage.removeEventListener(MouseEvent.MOUSE_MOVE, mouseMoveHandler);
stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
}
public function init(_arg1:Event=null):void{
_drawWindow();
}
private function mouseMoveHandler(_arg1:MouseEvent):void{
var _local3:int;
var _local2:int = (stage.mouseX - _startX);
_local3 = (stage.mouseY - _startY);
x = (x + _local2);
y = (y + _local3);
_startX = stage.mouseX;
_startY = stage.mouseY;
}
public function close():void{
stage.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
removeEventListener(Event.ADDED_TO_STAGE, init);
dispatchEvent(new Event(Event.CLOSE));
}
protected function _drawWindow():void{
}
override public function toString():String{
return ("AbstractWindow");
}
protected function getShadow(_arg1:Number, _arg2:Boolean=false):DropShadowFilter{
return (new DropShadowFilter(_arg1, 45, Style.DROPSHADOW, 1, _arg1, _arg1, 0.3, 1, _arg2));
}
}
}//package ru.rambler.games.ui.windows
Section 434
//InfoWindow (ru.rambler.games.ui.windows.InfoWindow)
package ru.rambler.games.ui.windows {
import flash.text.*;
import ru.rambler.games.interfaces.ui.*;
import flash.display.*;
public class InfoWindow extends AbstractWindow implements IWindow {
protected var _id:int;
protected var _text:TextField;
protected var _param:Object;
protected var _title:TextField;
protected var _buttonCode:int;// = 0
protected var style:StyleSheet;
public function InfoWindow(){
_title = new TextField();
_text = new TextField();
_title.width = (_text.width = 200);
_title.height = 25;
_text.height = 70;
_title.multiline = (_title.wordWrap = false);
_title.selectable = (_text.selectable = false);
_text.condenseWhite = false;
_text.autoSize = TextFieldAutoSize.NONE;
_text.multiline = (_text.wordWrap = true);
_text.y = 40;
style = new StyleSheet();
style.setStyle(".wtitle", {fontFamily:"Arial", fontWeight:"bold", textAlign:"center", fontSize:11});
style.setStyle(".wtext", {fontFamily:"Arial", fontWeight:"normal", textAlign:"center", fontSize:11});
style.setStyle("a", {fontFamily:"Arial", fontWeight:"bold", color:"#FF0000"});
}
public function get buttonPressed():int{
return (_buttonCode);
}
public function set text(_arg1:String):void{
_text.styleSheet = style;
_text.htmlText = (("<span class='wtext'>" + _arg1) + "</span>");
}
public function externalAction(_arg1:String):void{
}
override public function toString():String{
return (("InfoWindow " + _id));
}
public function set title(_arg1:String):void{
_title.styleSheet = style;
_title.htmlText = (("<span class='wtitle'>" + _arg1) + "</span>");
}
override protected function _drawWindow():void{
_dragArea = new Shape();
var _local1:Graphics = _dragArea.graphics;
_local1.clear();
_local1.beginFill(Style.WINDOW_FACE);
_local1.drawRect(0, 0, Style.WINDOW_WIDTH, Style.WINDOW_HEIGHT);
_local1.endFill();
addChild(_dragArea);
addChild(_title);
addChild(_text);
_text.y = (((100 - _text.textHeight) / 2) - 15);
filters = [getShadow(1)];
}
public function get text():String{
return (_text.text);
}
}
}//package ru.rambler.games.ui.windows
Section 435
//OkWindow (ru.rambler.games.ui.windows.OkWindow)
package ru.rambler.games.ui.windows {
import flash.events.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.ui.*;
public class OkWindow extends InfoWindow implements IWindow {
protected var okButton:PushButton;
override public function toString():String{
return (("OkWindow " + _id));
}
override protected function _drawWindow():void{
super._drawWindow();
okButton = new PushButton(this, 65, (height - 30), "OK", okHandler);
}
protected function okHandler(_arg1:MouseEvent):void{
_buttonCode = Buttons.OK;
close();
}
}
}//package ru.rambler.games.ui.windows
Section 436
//PushButton (ru.rambler.games.ui.windows.PushButton)
package ru.rambler.games.ui.windows {
import flash.events.*;
import flash.text.*;
import flash.display.*;
import flash.filters.*;
public class PushButton extends Sprite {
private var _down:Boolean;// = false
private var _labelText:String;
private var _back:Sprite;
private var _over:Boolean;// = false
private var _label:TextField;
private var _face:Sprite;
public function PushButton(_arg1:DisplayObjectContainer=null, _arg2:Number=0, _arg3:Number=0, _arg4:String="", _arg5:Function=null){
if (_arg5 != null){
addEventListener(MouseEvent.CLICK, _arg5);
};
_labelText = _arg4;
init();
draw();
x = _arg2;
y = _arg3;
if (_arg1 != null){
_arg1.addChild(this);
};
}
private function onMouseOut(_arg1:MouseEvent):void{
_over = false;
if (!_down){
_face.filters = [getShadow(1)];
};
}
protected function draw():void{
var _local1:Graphics = _back.graphics;
_local1.beginFill(Style.BACKGROUND);
_local1.drawRect(0, 0, Style.BUTTON_WIDTH, Style.BUTTON_HEIGHT);
_local1.endFill();
_local1 = _face.graphics;
_local1.beginFill(Style.BUTTON_FACE);
_local1.drawRect(0, 0, (Style.BUTTON_WIDTH - 2), (Style.BUTTON_HEIGHT - 2));
_local1.endFill();
}
private function onMouseDown(_arg1:MouseEvent):void{
_down = true;
_face.filters = [getShadow(1, true)];
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp, true);
stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp);
}
protected function init():void{
buttonMode = true;
useHandCursor = true;
_back = new Sprite();
_back.filters = [getShadow(2, true)];
addChild(_back);
_face = new Sprite();
_face.filters = [getShadow(1)];
_face.x = 1;
_face.y = 1;
addChild(_face);
_label = new TextField();
_label.width = Style.BUTTON_WIDTH;
_label.autoSize = TextFieldAutoSize.CENTER;
_label.selectable = false;
_label.mouseEnabled = false;
_label.defaultTextFormat = new TextFormat(Style.FONT, Style.TEXT_SIZE, Style.LABEL_TEXT);
_label.text = _labelText;
addChild(_label);
addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
addEventListener(MouseEvent.ROLL_OVER, onMouseOver);
}
private function onMouseOver(_arg1:MouseEvent):void{
_over = true;
addEventListener(MouseEvent.ROLL_OUT, onMouseOut);
}
protected function getShadow(_arg1:Number, _arg2:Boolean=false):DropShadowFilter{
return (new DropShadowFilter(_arg1, 45, Style.DROPSHADOW, 1, _arg1, _arg1, 0.3, 1, _arg2));
}
private function onMouseUp(_arg1:MouseEvent):void{
_down = false;
_face.filters = [getShadow(1)];
stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp);
stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, true);
}
}
}//package ru.rambler.games.ui.windows
Section 437
//Style (ru.rambler.games.ui.windows.Style)
package ru.rambler.games.ui.windows {
public class Style {
public static var BUTTON_FACE:uint = 0xFFFFFF;
public static var WINDOW_FACE:uint = 0xF3F3F3;
public static var DROPSHADOW:uint = 0;
public static var TEXT_SIZE:uint = 11;
public static var WINDOW_HEIGHT:uint = 100;
public static var WINDOW_WIDTH:uint = 200;
public static var BUTTON_WIDTH:uint = 70;
public static var BUTTON_HEIGHT:uint = 20;
public static var PROGRESS_BAR:uint = 0xFFFFFF;
public static var PANEL:uint = 0xF3F3F3;
public static var FONT:String = "Arial";
public static var INPUT_TEXT:uint = 0;
public static var NOFOCUS_COLOR:uint = 0xCCCCCC;
public static var BACKGROUND:uint = 0xCCCCCC;
public static var LABEL_TEXT:uint = 0x666666;
public static var FOCUS_COLOR:uint = 30402;
}
}//package ru.rambler.games.ui.windows
Section 438
//YesNoWindow (ru.rambler.games.ui.windows.YesNoWindow)
package ru.rambler.games.ui.windows {
import flash.events.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.ui.*;
public class YesNoWindow extends OkWindow implements IWindow {
protected var cancelButton:PushButton;
override protected function _drawWindow():void{
super._drawWindow();
okButton.x = 20;
cancelButton = new PushButton(this, 110, (height - 30), "CANCEL", cancelHandler);
}
override public function toString():String{
return (("YesNoWindow " + _id));
}
protected function cancelHandler(_arg1:MouseEvent):void{
_buttonCode = Buttons.CANCEL;
close();
}
}
}//package ru.rambler.games.ui.windows
Section 439
//Buttons (ru.rambler.games.ui.Buttons)
package ru.rambler.games.ui {
public class Buttons {
public static const NULL:int = 0;
public static const CANCEL:int = 2;
public static const OK:int = 1;
}
}//package ru.rambler.games.ui
Section 440
//PopupManager (ru.rambler.games.ui.PopupManager)
package ru.rambler.games.ui {
import flash.events.*;
import ru.rambler.games.interfaces.ui.*;
import flash.display.*;
import flash.utils.*;
import ru.rambler.games.ui.windows.*;
public class PopupManager implements IPopupManager {
private var _modalCount:int;// = 0
protected var windows:Dictionary;
private var _windowContainer:DisplayObjectContainer;
private var _windowCount:int;// = 0
protected var classInfo:Class;
protected var classInput:Class;
protected var classOK:Class;
private var _modalBlocker:Sprite;
public var modalFillAlpha:Number;// = 0.7
protected var classYesNo:Class;
public var modalFillColor:int;// = 0xFFFFFF
public static const instance:PopupManager = new (PopupManager);
;
public function PopupManager(){
classInfo = InfoWindow;
classOK = OkWindow;
classYesNo = YesNoWindow;
classInput = OkWindow;
windows = new Dictionary();
super();
if (instance){
throw (new Error("PopupManager - singleton. Сonstructor is locked."));
};
}
public function get oneButtonWindowClass():Class{
return (classOK);
}
protected function createWindow(_arg1:Class):IWindow{
var _local2:IWindow;
_local2 = IWindow(new (_arg1));
_windowCount++;
return (_local2);
}
protected function removeWindow(_arg1:IWindow):void{
_windowContainer.removeChild((_arg1 as DisplayObject));
delete windows[_arg1];
}
public function registerOneButtonWindow(_arg1:Class):void{
classOK = _arg1;
}
private function addedToStageHandler(_arg1:Event):void{
_windowContainer.removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
_windowContainer.stage.addEventListener(Event.RESIZE, resizeHandler);
clear();
}
private function createModalBlocker():void{
if (_modalBlocker == null){
_modalBlocker = new Sprite();
_modalBlocker.graphics.beginFill(modalFillColor, modalFillAlpha);
_modalBlocker.graphics.drawRect(0, 0, _windowContainer.stage.stageWidth, _windowContainer.stage.stageHeight);
_modalBlocker.graphics.endFill();
_modalBlocker.buttonMode = true;
_modalBlocker.useHandCursor = false;
_windowContainer.addChild(_modalBlocker);
};
}
public function showPopup(_arg1:Class, _arg2:String, _arg3:String, _arg4:Boolean=false, _arg5:Boolean=true, _arg6:Function=null, _arg7=null, _arg8:Array=null):IWindow{
var _local9:IWindow = instance.createWindow(_arg1);
_local9.title = _arg2;
_local9.text = _arg3;
return (instance.showCreatedPopup(_local9, _arg4, _arg5, _arg6, _arg7, _arg8));
}
private function removeModalBlocker():void{
if (_modalBlocker != null){
_windowContainer.removeChild(_modalBlocker);
_modalBlocker = null;
};
}
protected function closeHandler(_arg1:Event):void{
var _local4:Array;
var _local2:IWindow = IWindow(_arg1.target);
_local2.removeEventListener(Event.CLOSE, closeHandler);
var _local3:Object = windows[_local2];
if (_local3.onClose != null){
_local4 = _local3.onCloseParams;
if (_local4 == null){
_local4 = new Array();
};
_local4.unshift(_local2.buttonPressed);
_local3.onClose.apply(_local3.onCloseScope, _local4);
};
if (_local3.modal){
_modalCount--;
if (_modalCount == 0){
removeModalBlocker();
};
};
instance.removeWindow(_local2);
}
public function centerWindow(_arg1:IWindow):void{
var _local2:DisplayObject = (_arg1 as DisplayObject);
_local2.x = int(((_windowContainer.stage.stageWidth - _local2.width) / 2));
_local2.y = int(((_windowContainer.stage.stageHeight - _local2.height) / 2));
}
public function registerInputWindow(_arg1:Class):void{
classInput = _arg1;
}
public function registerInfoWindow(_arg1:Class):void{
classInfo = _arg1;
}
public function get inputWindowClass():Class{
return (classInput);
}
public function get selectWindowClass():Class{
return (classYesNo);
}
protected function showWindow(_arg1:IWindow, _arg2:Boolean=true):void{
_windowContainer.addChild((_arg1 as DisplayObject));
if (_arg2){
centerWindow(_arg1);
};
}
public function registerSelectWindow(_arg1:Class):void{
classYesNo = _arg1;
}
public function showCreatedPopup(_arg1:IWindow, _arg2:Boolean=false, _arg3:Boolean=true, _arg4:Function=null, _arg5=null, _arg6:Array=null):IWindow{
_arg1.addEventListener(Event.CLOSE, closeHandler);
var _local7:Object = {window:_arg1, modal:_arg2, onClose:_arg4, onCloseScope:_arg5, onCloseParams:_arg6};
if (_arg2){
createModalBlocker();
_modalCount++;
};
windows[_arg1] = _local7;
instance.showWindow(_arg1, _arg3);
return (_arg1);
}
private function noAction(_arg1:MouseEvent):void{
trace("noAction");
}
public function get infoWindowClass():Class{
return (classInfo);
}
public function clear():void{
var _local1:Object;
for each (_local1 in windows) {
_local1.window.removeEventListener(Event.CLOSE, closeHandler);
removeWindow(_local1.window);
};
windows = new Dictionary();
_modalCount = 0;
_windowCount = 0;
}
public function set windowContainer(_arg1:DisplayObjectContainer):void{
_windowContainer = _arg1;
if (_windowContainer.stage == null){
_windowContainer.addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
} else {
_windowContainer.stage.addEventListener(Event.RESIZE, resizeHandler);
clear();
};
}
private function resizeHandler(_arg1:Event):void{
var _local2:int = _windowContainer.numChildren;
var _local3:int;
while (_local3 < _local2) {
if (_windowContainer.getChildAt(_local3) == _modalBlocker){
} else {
centerWindow(IWindow(_windowContainer.getChildAt(_local3)));
};
_local3++;
};
if (_modalBlocker != null){
_modalBlocker.width = _modalBlocker.stage.stageWidth;
_modalBlocker.height = _modalBlocker.stage.stageHeight;
};
}
public function bringToFront(_arg1:IWindow):void{
_windowContainer.setChildIndex(DisplayObject(_arg1), (_windowContainer.numChildren - 1));
}
}
}//package ru.rambler.games.ui
Section 441
//SingleplayerUIManager (ru.rambler.games.ui.SingleplayerUIManager)
package ru.rambler.games.ui {
import ru.rambler.games.interfaces.core.*;
import ru.rambler.games.interfaces.ui.*;
public class SingleplayerUIManager extends UIManager implements IUIManager, IVersion {
public static const instance:SingleplayerUIManager = new (SingleplayerUIManager);
;
public function SingleplayerUIManager(){
if (instance){
throw (new Error("UIManager - singleton. Сonstructor is locked."));
};
init();
}
}
}//package ru.rambler.games.ui
Section 442
//SoundManager (ru.rambler.games.ui.SoundManager)
package ru.rambler.games.ui {
import ru.rambler.games.interfaces.ui.*;
import flash.media.*;
import flash.external.*;
public class SoundManager implements ISoundManager {
private var _isSoundOn:Boolean;// = true
private var _transform:SoundTransform;
private var _gameStartSound:Class;
public static const instance:SoundManager = new (SoundManager);
;
public function SoundManager(){
if (instance){
throw (new Error("SoundManager - singleton. Сonstructor is locked."));
};
}
public function get soundState():Boolean{
return (_isSoundOn);
}
public function set soundState(_arg1:Boolean):void{
_isSoundOn = _arg1;
}
public function registerGameStartSound(_arg1:Class):void{
_gameStartSound = _arg1;
}
public function play(_arg1:Class, _arg2:Number=0, _arg3:int=0):SoundChannel{
var _local4:Sound;
var _local5:SoundChannel;
if (((soundState) && (_arg1))){
_local4 = new (_arg1);
_local5 = _local4.play(_arg2, _arg3);
if (_transform != null){
_local5.soundTransform = _transform;
};
return (_local5);
//unresolved jump
};
return (null);
}
public function playMusic():void{
if (ExternalInterface.available){
try {
ExternalInterface.call("open_radio()");
} catch(e:Error) {
};
};
}
public function set soundTransform(_arg1:SoundTransform):void{
_transform = _arg1;
}
public function get soundTransform():SoundTransform{
return (_transform);
}
public function get gameStartSound():Class{
return (_gameStartSound);
}
}
}//package ru.rambler.games.ui
Section 443
//UIManager (ru.rambler.games.ui.UIManager)
package ru.rambler.games.ui {
import flash.events.*;
import ru.rambler.games.interfaces.core.*;
import ru.rambler.games.interfaces.ui.*;
import flash.display.*;
import ru.rambler.games.assets.*;
import flash.ui.*;
import flash.external.*;
public class UIManager implements IUIManager, IVersion {
protected var _popupManager:IPopupManager;
protected var _cursorHolder:Sprite;
protected var _gameFrame:IGameFrame;
protected var _cursor:DisplayObject;
protected var _popupHolder:Sprite;
protected var _soundManager:ISoundManager;
public function set popupManager(_arg1:IPopupManager):void{
_popupManager = _arg1;
_popupManager.windowContainer = _popupHolder;
}
public function closeGame():void{
if (ExternalInterface.available){
try {
ExternalInterface.call("window.close()");
} catch(e:Error) {
};
};
}
private function cursorMove(_arg1:MouseEvent):void{
_cursor.x = _cursorHolder.mouseX;
_cursor.y = _cursorHolder.mouseY;
_arg1.updateAfterEvent();
}
protected function init():void{
initSame();
_soundManager.registerGameStartSound(DefaultStartSound);
}
private function removeCursorListener(_arg1:Event):void{
if (_cursor != null){
_cursor.stage.removeEventListener(MouseEvent.MOUSE_MOVE, cursorMove);
};
}
protected function initSame():void{
_popupHolder = new Sprite();
_cursorHolder = new Sprite();
_popupHolder.mouseEnabled = false;
_cursorHolder.mouseEnabled = false;
_popupManager = PopupManager.instance;
_soundManager = SoundManager.instance;
_popupManager.windowContainer = _popupHolder;
}
public function set container(_arg1:DisplayObjectContainer):void{
_arg1.addChild(_popupHolder);
_arg1.addChild(_cursorHolder);
}
public function get gameFrame():IGameFrame{
return (_gameFrame);
}
public function get cursor():DisplayObject{
return (_cursor);
}
public function get soundManager():ISoundManager{
return (_soundManager);
}
public function get version():String{
return ("@version@");
}
private function dropCursor():void{
if (_cursor == null){
return;
};
_cursorHolder.removeChild(_cursor);
_cursor.removeEventListener(Event.ADDED_TO_STAGE, addCursorListener);
_cursor.removeEventListener(Event.REMOVED_FROM_STAGE, removeCursorListener);
_cursor = null;
}
public function get popupManager():IPopupManager{
return (_popupManager);
}
private function addCursorListener(_arg1:Event):void{
if (_cursor != null){
_cursor.stage.addEventListener(MouseEvent.MOUSE_MOVE, cursorMove);
};
}
public function set cursor(_arg1:DisplayObject):void{
if (_arg1 == null){
Mouse.show();
dropCursor();
} else {
dropCursor();
_cursor = _arg1;
_cursor.cacheAsBitmap = true;
_cursor.addEventListener(Event.ADDED_TO_STAGE, addCursorListener);
_cursor.addEventListener(Event.REMOVED_FROM_STAGE, removeCursorListener);
_cursorHolder.addChild(_cursor);
if ((_cursor is InteractiveObject)){
(_cursor as InteractiveObject).mouseEnabled = false;
};
Mouse.hide();
};
}
public function set gameFrame(_arg1:IGameFrame):void{
}
public function set soundManager(_arg1:ISoundManager):void{
_soundManager = _arg1;
}
}
}//package ru.rambler.games.ui
Section 444
//ByteUtil (ru.rambler.games.utils.ByteUtil)
package ru.rambler.games.utils {
import flash.utils.*;
public class ByteUtil {
public static function byteArrayToHexString(_arg1:ByteArray):String{
var _local4:int;
var _local5:String;
var _local2:int = _arg1.position;
var _local3 = "";
while (_arg1.bytesAvailable) {
_local4 = _arg1.readByte();
if (_local4 < 0){
_local4 = (0x0100 + _local4);
};
_local5 = _local4.toString(16);
if (_local5.length == 1){
_local5 = ("0" + _local5);
};
_local3 = (_local3 + _local5);
};
_arg1.position = _local2;
return (_local3);
}
public static function hexStringToByteArray(_arg1:String):ByteArray{
var _local4:String;
var _local5:int;
var _local2:ByteArray = new ByteArray();
var _local3:int;
while (_local3 < _arg1.length) {
_local4 = _arg1.substr(_local3, 2);
_local5 = int(("0x" + _local4));
_local2.writeByte(_local5);
_local3 = (_local3 + 2);
};
_local2.position = 0;
return (_local2);
}
}
}//package ru.rambler.games.utils
Section 445
//body_2 (sheep_fla.body_2)
package sheep_fla {
import flash.display.*;
public dynamic class body_2 extends MovieClip {
public function body_2(){
addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120, 143, frame144, 167, frame168);
}
function frame48(){
gotoAndPlay("down");
}
function frame120(){
gotoAndPlay("left");
}
function frame144(){
gotoAndPlay("up");
}
function frame168(){
gotoAndPlay("left_up");
}
function frame72(){
gotoAndPlay("down_left");
}
function frame96(){
gotoAndPlay("eat");
}
function frame24(){
stop();
}
}
}//package sheep_fla
Section 446
//ShopItem (shop.ShopItem)
package shop {
import flash.events.*;
import flash.display.*;
import ui.*;
import utils.*;
import com.melesta.sound.*;
public class ShopItem extends MovieClip {
private var _currentUpgrade:Number;// = 0
private var _active:Boolean;// = false
private var _costs:Array;
private var _arrow:ShopArrow;
private var _index:Number;// = 0
public var _icon:MovieClip;
private var _itemsList:Array;
public function ShopItem(_arg1:MovieClip, _arg2:String, _arg3:Number){
_costs = new Array();
_itemsList = ["cage", "well", "warehouse", "car", "plane", "dried_eggs", "cake", "floury_cake", "incubator", "sewing", "fabric", "сarnival_dress"];
super();
_icon = _arg1;
Fonts.applyDefaultFormat(_icon.title);
Fonts.applyDefaultFormat(_icon.buyBtn.price);
_costs = _arg2.split(",");
_index = _arg3;
_icon.buyBtn.price.text = _costs[_currentUpgrade];
_icon.buyBtn.addEventListener(MouseEvent.CLICK, buyUpgrade, false, 0, true);
_icon.buyBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
_icon.buyBtn.addEventListener(MouseEvent.MOUSE_OUT, btnOut, false, 0, true);
_icon.buyBtn.addEventListener(MouseEvent.MOUSE_DOWN, btnDown, false, 0, true);
_icon.bg.addEventListener(MouseEvent.MOUSE_OVER, showTooltip, false, 0, true);
_icon.bg.addEventListener(MouseEvent.MOUSE_OUT, hideTooltip, false, 0, true);
_icon.buyBtn.price.mouseEnabled = false;
_icon.tick.visible = false;
_icon.title.text = Config.currentLanguage.child(_itemsList[_index]);
}
private function btnDown(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_active){
_icon.buyBtn.gotoAndStop("press");
};
}
private function hideTooltip(_arg1:MouseEvent=null):void{
ShopTooltip.instance.hide();
}
public function addArrow():void{
_arrow = new ShopArrow();
_arrow.x = (_arrow.y = 50);
_icon.addChild(_arrow);
}
public function update():void{
if (_costs[_currentUpgrade] > ShopWindow.instance.stars){
_icon.bg.gotoAndStop(1);
_active = false;
_icon.buyBtn.gotoAndStop("disable");
} else {
_icon.bg.gotoAndStop(2);
_active = true;
_icon.buyBtn.gotoAndStop("active");
};
}
public function updateUpgradesView(_arg1:Number=0):void{
_currentUpgrade = _arg1;
if (_currentUpgrade < _costs.length){
_icon.buyBtn.price.text = _costs[_currentUpgrade];
_icon.gotoAndStop((_currentUpgrade + 1));
};
if (_currentUpgrade == _costs.length){
_icon.gotoAndStop((_currentUpgrade + 1));
_icon.tick.visible = true;
_icon.buyBtn.visible = false;
_icon.bg.gotoAndStop(3);
};
update();
}
private function showTooltip(_arg1:MouseEvent=null):void{
var _local2:Number;
if (_currentUpgrade < _costs.length){
_local2 = _currentUpgrade;
if (!_local2){
_local2 = 1;
};
ShopTooltip.instance.show((_icon.x + 50), (_icon.y + 50), _itemsList[_index], _local2, Config.currentLanguage.shop_tooltips[_itemsList[_index]]);
};
}
private function btnOut(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_active){
_icon.buyBtn.gotoAndStop("active");
};
}
private function buyUpgrade(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_arrow){
_icon.removeChild(_arrow);
_arrow = null;
};
if ((((ShopWindow.instance.stars >= _costs[_currentUpgrade])) && ((_currentUpgrade <= (_costs.length - 1))))){
SoundManager.play("action_sell_buy");
ShopWindow.instance.stars = (ShopWindow.instance.stars - _costs[_currentUpgrade]);
_currentUpgrade++;
if (_currentUpgrade < _costs.length){
_icon.buyBtn.price.text = _costs[_currentUpgrade];
_icon.gotoAndStop((_currentUpgrade + 1));
ShopWindow.instance.updateViews();
};
var _local2 = ShopWindow.availableUpgrades;
var _local3 = _index;
var _local4 = (_local2[_local3] + 1);
_local2[_local3] = _local4;
};
if (_currentUpgrade == _costs.length){
SoundManager.play("action_sell_buy");
_icon.tick.visible = true;
_icon.buyBtn.visible = false;
_icon.gotoAndStop((_currentUpgrade + 1));
_icon.bg.gotoAndStop(3);
};
ShopWindow.instance.updateViews();
update();
}
private function btnOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_active){
_icon.buyBtn.gotoAndStop("over");
SoundManager.play("ui_button_hover");
};
}
public function hideArrows():void{
if (_arrow){
_icon.removeChild(_arrow);
_arrow = null;
};
}
}
}//package shop
Section 447
//ShopWindow (shop.ShopWindow)
package shop {
import flash.events.*;
import flash.display.*;
import ui.*;
import map.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class ShopWindow extends ShopTemplate {
private var _stars:Number;// = 0
private var _shopItems:Array;
private var _shopTooltip:ShopTooltip;
private var _itemsList:Array;
public static var availableUpgrades:Array = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
public static var instance:ShopWindow;
public static var accessList:Array = new Array();
public static var firstShow:Boolean = true;
public function ShopWindow(){
_itemsList = ["cage", "well", "warehouse", "car", "plane", "powdered", "bakery", "confectionery", "incubator", "spinnery", "weaving", "carnivaldress"];
_shopItems = new Array();
super();
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(stars_txt);
Fonts.applyDefaultFormat(okBtn.caption);
this.visible = false;
instance = this;
okBtn.addEventListener(MouseEvent.CLICK, finished, false, 0, true);
stars = Config.stars;
var _local1:int;
while (_local1 < _itemsList.length) {
_shopItems[_local1] = new ShopItem((this.getChildByName(_itemsList[_local1]) as MovieClip), Config.shopUpgradeCosts[_local1], _local1);
_local1++;
};
if (Config.use_cheats){
stars_txt.mouseEnabled = true;
stars_txt.addEventListener(MouseEvent.CLICK, addMoney, false, 0, true);
};
title.text = Config.currentLanguage.shop;
okBtn.caption.text = Config.currentLanguage.ok;
_shopTooltip = new ShopTooltip();
addChild(_shopTooltip);
}
public function get stars():Number{
return (_stars);
}
public function updateViews():void{
var _local1:int;
while (_local1 < _shopItems.length) {
_shopItems[_local1].update();
_local1++;
};
}
private function addMoney(_arg1:MouseEvent=null):void{
_stars = (_stars + 500);
stars_txt.text = String(_stars);
updateViews();
}
public function set stars(_arg1:Number):void{
_stars = _arg1;
this.stars_txt.text = String(stars);
}
private function hideArrows():void{
var _local1:int;
while (_local1 < _shopItems.length) {
_shopItems[_local1].hideArrows();
_local1++;
};
}
public function finished(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.2, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
MapWindow.instance.updateViews();
var i:int;
while (i < 10) {
Config.upgrades[i] = ShopWindow.availableUpgrades[i];
i = (i + 1);
};
Config.updateSharedObject();
hideArrows();
}
public function updateUpgradesViews():void{
var _local1:int;
while (_local1 < _shopItems.length) {
_shopItems[_local1].updateUpgradesView(availableUpgrades[_local1]);
_local1++;
};
}
public function show():void{
var _local2:Array;
var _local3:ShopItem;
this.visible = true;
this.alpha = 0;
stars_txt.text = String(stars);
updateViews();
Tweener.addTween(this, {alpha:1, time:0.2, transition:"linear"});
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
SimpleTooltip.instance.show(Config.currentLanguage.tooltips.shop);
};
var _local1:Number = 0;
while (_local1 < accessList.length) {
_local2 = accessList[_local1].split(",");
_local3 = (_shopItems[(int(_local2[0]) + 5)] as ShopItem);
_local3.addArrow();
_local1++;
};
}
public static function isAvailable(_arg1:Array):Boolean{
var _local2:Number = 0;
accessList = new Array();
var _local3:Array = new Array();
var _local4:Number = 0;
while (_local4 < _arg1.length) {
_local3 = _arg1[_local4].split(",");
if (Number(_local3[1]) <= Number(availableUpgrades[(Number(_local3[0]) + 5)])){
_local2++;
} else {
accessList.push(_arg1[_local4]);
};
_local4++;
};
return (((_local2 == _arg1.length)) ? true : false);
}
}
}//package shop
Section 448
//chickenBody_2 (turkey_fla.chickenBody_2)
package turkey_fla {
import flash.display.*;
public dynamic class chickenBody_2 extends MovieClip {
public function chickenBody_2(){
addFrameScript(23, frame24, 47, frame48, 71, frame72, 95, frame96, 119, frame120, 143, frame144, 167, frame168);
}
function frame48(){
gotoAndPlay("down");
}
function frame120(){
gotoAndPlay("left");
}
function frame144(){
gotoAndPlay("up");
}
function frame168(){
gotoAndPlay("left_up");
}
function frame72(){
gotoAndPlay("down_left");
}
function frame96(){
gotoAndPlay("eat");
}
function frame24(){
stop();
}
}
}//package turkey_fla
Section 449
//BlockTooltip (ui.BlockTooltip)
package ui {
import flash.events.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class BlockTooltip extends BlockTooltipTemplate {
public static var instance:BlockTooltip;
public function BlockTooltip(){
Fonts.applyDefaultFormat(help.caption);
Fonts.applyDefaultFormat(help.okBtn.caption);
instance = this;
visible = false;
help.okBtn.stop();
help.okBtn.caption.text = Config.currentLanguage.ok;
help.okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
help.okBtn.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
help.okBtn.addEventListener(MouseEvent.MOUSE_OVER, over);
help.okBtn.addEventListener(MouseEvent.MOUSE_OUT, out);
}
public function hide(_arg1:MouseEvent=null):void{
if (this.visible){
SoundManager.play("ui_button_click");
Tweener.removeTweens(this);
this.visible = false;
GameController.instance.resume();
if (((WaterTooltip.firstShow) && (!(Config.skiped)))){
WaterTooltip.instance.show();
};
};
}
public function down(_arg1:MouseEvent=null):void{
help.okBtn.gotoAndStop(3);
}
private function over(_arg1:MouseEvent):void{
help.okBtn.gotoAndStop(2);
}
public function show(_arg1:Number, _arg2:Number, _arg3:String, _arg4:Boolean=false):void{
var posX = _arg1;
var posY = _arg2;
var caption = _arg3;
var autoHide = _arg4;
alpha = 0;
lock.x = -(posX);
lock.y = -(posY);
help.okBtn.visible = true;
body.scaleX = (body.scaleY = 1);
visible = true;
lock.visible = true;
this.help.x = -241;
this.help.y = -114;
if (posX < 280){
this.body.scaleX = -1;
this.help.x = 25;
this.x = (posX - 20);
};
if (posY < 150){
this.help.y = 33;
this.body.scaleY = -1;
};
this.x = posX;
this.y = (posY - 20);
this.help.caption.text = caption;
Tweener.addTween(this, {alpha:1, time:0.5});
if (autoHide){
alpha = 1;
help.okBtn.visible = false;
lock.visible = false;
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:0, time:1, delay:2, onComplete:function ():void{
this.visible = false;
}});
} else {
GameController.instance.pause();
};
}
private function out(_arg1:MouseEvent):void{
help.okBtn.gotoAndStop(1);
}
}
}//package ui
Section 450
//BottomPanel (ui.BottomPanel)
package ui {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.twoD.zones.*;
import flash.media.*;
import flash.utils.*;
import game.*;
import org.flintparticles.twoD.emitters.*;
import market.road.*;
import pets.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.initializers.*;
import org.flintparticles.twoD.renderers.*;
import org.flintparticles.common.displayObjects.*;
import org.flintparticles.common.energyEasing.*;
import utils.*;
import com.melesta.utils.time.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class BottomPanel extends BottomPanelTemplate {
public var firstShow:Boolean;// = true
public var assotiationList:Array;
public var state:String;// = "normal"
private var _silverTime:Number;
private var levelTimer:Timer;
private var _goldTime:Number;
private var emitter:Emitter2D;
public var firstLevel:Boolean;// = true
private var gameController:GameController;
private var _time:Number;// = 0
public static var effectContainer:DisplayObjectContainer;
public static var instance:BottomPanel;
public function BottomPanel(){
assotiationList = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
super();
Fonts.applyDefaultFormat(menuBtn.caption);
Fonts.applyDefaultFormat(item0.actual);
Fonts.applyDefaultFormat(item1.actual);
Fonts.applyDefaultFormat(item2.actual);
Fonts.applyDefaultFormat(item3.actual);
Fonts.applyDefaultFormat(item0.required);
Fonts.applyDefaultFormat(item1.required);
Fonts.applyDefaultFormat(item2.required);
Fonts.applyDefaultFormat(item3.required);
gameController = GameController.instance;
gameController.addEventListener(GameController.PAUSE_GAME, pause, false, 0, true);
gameController.addEventListener(GameController.RESUME_GAME, resume, false, 0, true);
gameController.addEventListener(GameController.LEVEL_COMPLETED, hideItems, false, 0, true);
this.y = 431;
this.x = 0;
instance = this;
levelTimer = new Timer(1000);
levelTimer.addEventListener(TimerEvent.TIMER, updateTime, false, 0, true);
aim_btn.addEventListener(MouseEvent.CLICK, showPurposes, false, 0, true);
hideItems();
emitter = new Emitter2D();
menuBtn.addEventListener(MouseEvent.CLICK, showMenu, false, 0, true);
menuBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
menuBtn.caption.text = Config.currentLanguage.menu;
menuBtn.caption.mouseEnabled = false;
this.y = 480;
}
public function showMenu(_arg1:MouseEvent=null):void{
BlockTooltip.instance.hide();
SimpleTooltip.instance.hide();
WaterTooltip.instance.hide();
Tooltip.instance.hide();
GameMenu.instance.show();
var _local2:SoundTransform = new SoundTransform();
_local2.volume = 0.2;
SoundManager.play("ui_button_click", 0, _local2);
}
public function update():void{
var _local2:MovieClip;
var _local3:int;
var _local4:int;
LevelStatistics.goals[0] = Road.currentMoney;
var _local1:int;
while (_local1 < assotiationList.length) {
if (assotiationList[_local1] == 0){
} else {
_local2 = assotiationList[_local1];
_local2.actual.text = String(LevelStatistics.goals[_local1]);
_local3 = int(_local2.actual.text);
_local4 = int(_local2.required.text);
trace(_local1, LevelStatistics.goals[_local1], _local3, _local4);
if (_local3 < _local4){
_local2.required.visible = (_local2.actual.visible = true);
_local2.tick.visible = false;
};
if ((((_local3 > 0)) && ((_local3 >= _local4)))){
if (!_local2.tick.visible){
_local2.required.visible = (_local2.actual.visible = false);
_local2.tick.visible = true;
emitter.start();
SoundManager.play("fanfare_aim", 1);
};
};
};
_local1++;
};
}
public function startTime():void{
levelTimer.start();
}
private function btnOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function init():void{
var _local3:Array;
hideItems();
_time = 0;
updateTime();
lenta.visible = true;
lenta.gotoAndStop(1);
_goldTime = Number(LevelBuilder.currentLevelXML.@GoldTime);
_silverTime = Number(LevelBuilder.currentLevelXML.@SilverTime);
lenta.time_txt.text = TimeDecoder.decodeTime(_goldTime);
var _local1:Array = LevelStatistics.purposes;
var _local2:int;
while (_local2 < _local1.length) {
_local3 = _local1[_local2].split(",");
this[("item" + _local2)].actual.text = "0";
this[("item" + _local2)].mouseEnabled = (this[("item" + _local2)].mouseChildren = false);
this[("item" + _local2)].visible = true;
this[("item" + _local2)]._type = _local3[0];
assotiationList[ProductTypes.typeToNumber(_local3[0])] = this[("item" + _local2)];
this[("item" + _local2)].required.text = _local3[1];
this[("item" + _local2)].body.gotoAndStop(_local3[0]);
_local2++;
};
this.y = 480;
}
public function hideItems(_arg1:Event=null):void{
levelTimer.stop();
_time = 0;
state = "normal";
time_txt.text = TimeDecoder.decodeTime(_time);
assotiationList = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
var _local2:int;
while (_local2 < 4) {
this[("item" + _local2)].visible = false;
this[("item" + _local2)].actual.visible = true;
this[("item" + _local2)].required.visible = true;
this[("item" + _local2)].actual.text = "0";
this[("item" + _local2)].required.text = "0";
this[("item" + _local2)].tick.visible = false;
_local2++;
};
}
public function animate():void{
this.y = 480;
Tweener.addTween(this, {y:430, time:0.3});
}
public function resume(_arg1:Event=null):void{
levelTimer.start();
}
private function updateTime(_arg1:TimerEvent=null):void{
_time++;
if (_time > 30){
if (((firstShow) && (!(Config.skiped)))){
firstShow = false;
Tooltip.instance.show(510, 400, "GOALS", 1, "GOALS");
};
};
if (_time > 10){
if (((firstLevel) && (!(Config.skiped)))){
firstLevel = false;
if (Penguin.penguinList[0] != null){
BlockTooltip.instance.show(Penguin.penguinList[0].x, Penguin.penguinList[0].y, Config.currentLanguage.tooltips.feed);
};
};
};
time_txt.text = TimeDecoder.decodeTime(_time);
if (_time > _silverTime){
lenta.visible = false;
state = "normal";
};
if (_time < _silverTime){
lenta.visible = true;
lenta.gotoAndStop(2);
state = "silver";
lenta.time_txt.text = TimeDecoder.decodeTime(_silverTime);
};
if (_time < _goldTime){
lenta.visible = true;
state = "gold";
lenta.gotoAndStop(1);
lenta.time_txt.text = TimeDecoder.decodeTime(_goldTime);
};
}
private function showPurposes(_arg1:MouseEvent=null):void{
gameController.pause();
PurposesWindow.instance.show();
SoundManager.play("ui_button_click");
Tooltip.instance.hide();
BlockTooltip.instance.hide();
Tooltip.instance.hide();
WaterTooltip.instance.hide();
}
public function createEffect():void{
emitter.counter = new Blast(500);
emitter.addInitializer(new SharedImage(new Star(7)));
emitter.addInitializer(new ColorInit(4294967040, 4294927872));
emitter.addInitializer(new Velocity(new DiscSectorZone(new Point(-100, -200), 500, 0, -90, -91)));
emitter.addInitializer(new Lifetime(1));
emitter.addAction(new Age(Quadratic.easeIn));
emitter.addAction(new Move());
emitter.addAction(new Fade());
emitter.addAction(new Accelerate(-200, 1200));
var _local1:BitmapRenderer = new BitmapRenderer(new Rectangle(0, 0, 570, 430));
_local1.addEmitter(emitter);
effectContainer.addChild(_local1);
emitter.x = 530;
emitter.y = 410;
}
public function pause(_arg1:Event=null):void{
levelTimer.stop();
}
}
}//package ui
Section 451
//BottomPanelTemplate (ui.BottomPanelTemplate)
package ui {
import flash.display.*;
import flash.text.*;
public dynamic class BottomPanelTemplate extends MovieClip {
public var item3:MovieClip;
public var lenta:MovieClip;
public var time_txt:TextField;
public var aim_btn:MovieClip;
public var menuBtn:MovieClip;
public var item0:MovieClip;
public var item1:MovieClip;
public var item2:MovieClip;
}
}//package ui
Section 452
//EndScreen (ui.EndScreen)
package ui {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class EndScreen extends EndScreenTemplate {
public var showed:Boolean;// = false
public static var instance:EndScreen;
public function EndScreen(_arg1:DisplayObjectContainer){
instance = this;
Fonts.applyDefaultFormat(caption);
Fonts.applyDefaultFormat(buyBtn.caption);
Fonts.applyDefaultFormat(exitBtn.caption);
Fonts.applyDefaultFormat(sendScoreBtn.caption);
_arg1.addChild(this);
this.visible = false;
exitBtn.caption.text = Config.currentLanguage.main_menu;
caption.htmlText = Config.currentLanguage.game_over;
buyBtn.stop();
exitBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true);
exitBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
buyBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
sendScoreBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
sendScoreBtn.visible = false;
buyBtn.visible = false;
if (Config.downloadable){
buyBtn.addEventListener(MouseEvent.CLICK, buy, false, 0, true);
buyBtn.caption.htmlText = Config.currentLanguage.download_full_version;
Fonts.applyDefaultFormat(buyBtn.caption);
buyBtn.visible = true;
};
if ((((Farm2.portal == "mochi")) || ((Farm2.portal == "gamejacket")))){
buyBtn.visible = false;
sendScoreBtn.visible = true;
sendScoreBtn.caption.text = Config.currentLanguage.send_score;
sendScoreBtn.addEventListener(MouseEvent.CLICK, sendMochiScore, false, 0, true);
};
if (Farm2.portal == "kongregate"){
buyBtn.visible = false;
sendScoreBtn.visible = true;
sendScoreBtn.caption.text = Config.currentLanguage.send_score;
sendScoreBtn.addEventListener(MouseEvent.CLICK, sendMochiScore, false, 0, true);
};
if (Farm2.portal == "rambler"){
buyBtn.visible = false;
sendScoreBtn.visible = true;
sendScoreBtn.caption.text = Config.currentLanguage.send_score;
sendScoreBtn.addEventListener(MouseEvent.CLICK, sendRamblerScore, false, 0, true);
};
}
private function btnOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
private function sendRamblerScore(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
try {
Farm2.instance.sendRamblerScore(ResultsWindow.bankNum);
} catch(error:Error) {
};
}
private function sendKongregateScore(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
try {
StartScreen.instance.submitKongregateScore(ResultsWindow.bankNum);
} catch(error:Error) {
};
}
private function buy(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest(Config.downloadLink);
navigateToURL(_local2, Config.target);
}
public function show():void{
if (Farm2.portal == "kongregate"){
StartScreen.kongregate.stats.submit("finish", 1);
};
showed = true;
this.alpha = 0;
this.visible = true;
Tweener.addTween(this, {alpha:1, time:0.2, transition:"linear"});
}
private function exit(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
StartScreen.instance.show();
Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
}
private function sendMochiScore(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.1, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
Leaderboard.instance.sendScore();
}
}
}//package ui
Section 453
//FarmPreloader (ui.FarmPreloader)
package ui {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
public dynamic class FarmPreloader extends PreloaderTemplate {
public static var instance:FarmPreloader;
public static var externalLogo:Sprite;
public function FarmPreloader(){
instance = this;
this.rambler.visible = false;
if (Farm2.portal != "vkontakte"){
alawar.addEventListener(MouseEvent.CLICK, gotoAlawar, false, 0, true);
alawar.buttonMode = true;
};
}
public function hide():void{
Tweener.addTween(this, {alpha:0, time:0, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
}
private function gotoAlawar(_arg1:MouseEvent=null):void{
}
}
}//package ui
Section 454
//FArrow (ui.FArrow)
package ui {
import flash.display.*;
import caurina.transitions.*;
public class FArrow extends ArrowTemplate {
public static var container:DisplayObjectContainer;
public static var instance:FArrow;
public function FArrow(_arg1:DisplayObjectContainer){
container = _arg1;
super();
instance = this;
container.addChild(this);
this.hide();
this.visible = false;
this.mouseChildren = (this.mouseEnabled = false);
}
public function hide():void{
this.visible = false;
}
public function show(_arg1:Number, _arg2:Number, _arg3:Boolean=false):void{
this.visible = true;
this.alpha = 1;
this.x = _arg1;
this.y = _arg2;
if (!_arg3){
Tweener.addTween(this, {alpha:0, delay:1, time:1, transition:"linear", onComplete:hide});
};
}
}
}//package ui
Section 455
//GameMenu (ui.GameMenu)
package ui {
import flash.events.*;
import flash.display.*;
import flash.net.*;
import map.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class GameMenu extends GameMenuTemplate {
public static var instance:GameMenu;
public function GameMenu(_arg1:DisplayObjectContainer){
Fonts.applyDefaultFormat(exitBtn.caption);
Fonts.applyDefaultFormat(buyBtn.caption);
Fonts.applyDefaultFormat(restartBtn.caption);
Fonts.applyDefaultFormat(resumeBtn.caption);
Fonts.applyDefaultFormat(mapBtn.caption);
instance = this;
_arg1.addChild(this);
this.visible = false;
resumeBtn.addEventListener(MouseEvent.CLICK, resumeGame, false, 0, true);
resumeBtn.caption.text = Config.currentLanguage.resume;
mapBtn.addEventListener(MouseEvent.CLICK, showMap, false, 0, true);
mapBtn.caption.text = Config.currentLanguage.map;
restartBtn.addEventListener(MouseEvent.CLICK, restart, false, 0, true);
restartBtn.caption.text = Config.currentLanguage.restart;
buyBtn.visible = false;
if (Config.downloadable){
buyBtn.addEventListener(MouseEvent.CLICK, buy, false, 0, true);
buyBtn.caption.text = Config.currentLanguage.download;
buyBtn.visible = true;
};
exitBtn.caption.text = Config.currentLanguage.exit_to_menu;
exitBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true);
exitBtn.visible = true;
}
public function hide(_arg1:Function=null):void{
var onComplete = _arg1;
Tweener.addTween(this, {alpha:0, time:0.1, y:-100, onComplete:function ():void{
visible = false;
if (onComplete != null){
onComplete();
};
}});
}
private function buy(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest(Config.downloadLink);
navigateToURL(_local2, Config.target);
}
private function showMap(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
hide(function ():void{
MapWindow.instance.show();
GameController.instance.levelCompleted();
});
}
private function resumeGame(_arg1:MouseEvent=null):void{
SoundManager.play("ui_button_click");
hide(GameController.instance.resume);
}
public function show():void{
GameController.instance.pause();
this.alpha = 0;
this.visible = true;
this.y = -100;
Tweener.addTween(this, {alpha:1, time:0.3});
Tweener.addTween(this, {time:0.3, y:0, transition:"easeOutBack"});
SoundManager.play("ui_panel_showing");
}
private function exit(_arg1:MouseEvent=null):void{
SoundManager.play("ui_button_click");
hide(QuitDialog.instance.show);
}
private function restart(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
hide(function ():void{
GameController.instance.levelCompleted();
LevelBuilder.instance.createLevel(LevelBuilder.currentLevel);
});
}
}
}//package ui
Section 456
//GameMenuTemplate (ui.GameMenuTemplate)
package ui {
import flash.display.*;
public dynamic class GameMenuTemplate extends MovieClip {
public var mapBtn:MovieClip;
public var exitBtn:MovieClip;
public var buyBtn:MovieClip;
public var restartBtn:MovieClip;
public var resumeBtn:MovieClip;
}
}//package ui
Section 457
//GoalsTemplate (ui.GoalsTemplate)
package ui {
import flash.display.*;
import flash.text.*;
public dynamic class GoalsTemplate extends MovieClip {
public var item3:MovieClip;
public var goldTime_txt:TextField;
public var title:TextField;
public var okBtn:MovieClip;
public var silverMoney_txt:TextField;
public var collect:TextField;
public var silverTime_txt:TextField;
public var for_completing:TextField;
public var goldMoney_txt:TextField;
public var money_txt:TextField;
public var item0:MovieClip;
public var item1:MovieClip;
public var item2:MovieClip;
}
}//package ui
Section 458
//GoalsWindow (ui.GoalsWindow)
package ui {
import flash.events.*;
import flash.display.*;
import game.*;
import utils.*;
import com.melesta.utils.time.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class GoalsWindow extends GoalsTemplate {
public static var instance:GoalsWindow;
public function GoalsWindow(_arg1:DisplayObjectContainer){
Fonts.applyDefaultFormat(collect);
Fonts.applyDefaultFormat(okBtn.caption);
Fonts.applyDefaultFormat(for_completing);
Fonts.applyDefaultFormat(goldMoney_txt);
Fonts.applyDefaultFormat(goldTime_txt);
Fonts.applyDefaultFormat(item0.count);
Fonts.applyDefaultFormat(item1.count);
Fonts.applyDefaultFormat(item2.count);
Fonts.applyDefaultFormat(item3.count);
Fonts.applyDefaultFormat(money_txt);
Fonts.applyDefaultFormat(silverMoney_txt);
Fonts.applyDefaultFormat(silverTime_txt);
Fonts.applyDefaultFormat(title);
instance = this;
_arg1.addChild(this);
this.visible = false;
okBtn.caption.text = "Ok";
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
title.text = Config.currentLanguage.goals;
collect.text = Config.currentLanguage.collect;
for_completing.text = Config.currentLanguage.for_completing;
hideItems();
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
okBtn.removeEventListener(MouseEvent.CLICK, hide);
GameController.instance.resume();
SoundManager.play("ui_button_click");
LevelBuilder.instance.addHouses();
Tweener.addTween(this, {alpha:0, time:0.3, y:-100, onComplete:function ():void{
this.visible = false;
}});
}
public function show():void{
var _local3:Array;
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.visible = true;
this.alpha = 0;
y = -100;
Tweener.addTween(this, {alpha:1, time:0.2});
Tweener.addTween(this, {time:0.3, y:0, transition:"easeOutBack"});
hideItems();
var _local1:Array = LevelStatistics.purposes;
var _local2:int;
while (_local2 < _local1.length) {
_local3 = _local1[_local2].split(",");
this[("item" + _local2)].visible = true;
this[("item" + _local2)].count.text = _local3[1];
this[("item" + _local2)].body.gotoAndStop(_local3[0]);
_local2++;
};
GameController.instance.pause();
money_txt.text = LevelBuilder.currentLevelXML.@Prize;
goldMoney_txt.text = ("+" + LevelBuilder.currentLevelXML.@GoldPrize);
silverMoney_txt.text = ("+" + LevelBuilder.currentLevelXML.@SilverPrize);
goldTime_txt.text = TimeDecoder.decodeTime(Number(LevelBuilder.currentLevelXML.@GoldTime));
silverTime_txt.text = TimeDecoder.decodeTime(Number(LevelBuilder.currentLevelXML.@SilverTime));
}
public function hideItems():void{
var _local1:int;
while (_local1 < 4) {
this[("item" + _local1)].visible = false;
_local1++;
};
}
}
}//package ui
Section 459
//InstallWindow (ui.InstallWindow)
package ui {
public class InstallWindow extends InstallWindowTemplate {
}
}//package ui
Section 460
//Leaderboard (ui.Leaderboard)
package ui {
import flash.display.*;
import utils.*;
import mochi.as3.*;
import caurina.transitions.*;
public dynamic class Leaderboard extends MovieClip {
public static var instance:Leaderboard;
public function Leaderboard(){
this.visible = false;
instance = this;
var _local1:BitmapData = new BitmapData(570, 430, true, 1879048192);
var _local2:Sprite = new Sprite();
_local2.addChild(new Bitmap(_local1));
addChild(_local2);
}
public function close():void{
this.visible = false;
this.alpha = 0;
}
public function sendScore():void{
this.visible = true;
this.alpha = 0;
Tweener.addTween(this, {alpha:1, time:0.5});
try {
MochiServices.connect(Farm2.mochiads_game_id, this);
MochiScores.showLeaderboard({boardID:Farm2.mochi_Leaderboard, score:ResultsWindow.bankNum, name:Config.playerName, res:"570x430", onClose:close, onError:close});
} catch(e:Error) {
close();
};
}
public function showInterLeveleAd():void{
MochiServices.connect(Farm2.mochiads_game_id, this);
}
public function show():void{
this.visible = true;
this.alpha = 0;
Tweener.addTween(this, {alpha:1, time:0.5});
try {
MochiServices.connect(Farm2.mochiads_game_id, this);
MochiScores.showLeaderboard({boardID:Farm2.mochi_Leaderboard, res:"570x430", onClose:close, onError:close});
} catch(e:Error) {
close();
};
}
public function sendCurrentScore():void{
try {
MochiServices.connect(Farm2.mochiads_game_id, this);
MochiScores.submit(ResultsWindow.bankNum, Config.playerName);
} catch(e:Error) {
close();
};
}
}
}//package ui
Section 461
//MapTooltip (ui.MapTooltip)
package ui {
import utils.*;
import caurina.transitions.*;
public class MapTooltip extends MapTooltipTempalte {
public static var instance:MapTooltip;
public function MapTooltip(){
Fonts.applyDefaultFormat(caption);
instance = this;
visible = false;
alpha = 0;
this.mouseChildren = false;
this.mouseEnabled = false;
}
public function hide():void{
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:0, time:0, onComplete:function ():void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
}});
}
public function show(_arg1:Number, _arg2:Number, _arg3:Number):void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
visible = true;
this.alpha = 0;
this.x = (_arg1 + 5);
this.y = _arg2;
this.caption.x = 38;
this.caption.y = 42;
if (_arg1 > 300){
this.body.scaleX = -1;
this.caption.x = -206;
};
if (_arg2 > 200){
this.caption.y = -94;
this.body.scaleY = -1;
};
this.caption.text = Config.currentLanguage.levels.level[(_arg3 - 1)];
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, time:0.7, delay:1});
}
public function showHelp(_arg1:Number, _arg2:Number, _arg3:String):void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
visible = true;
this.alpha = 0;
this.x = (_arg1 + 5);
this.y = _arg2;
this.caption.x = 38;
this.caption.y = 42;
if (_arg1 > 300){
this.body.scaleX = -1;
this.caption.x = -206;
};
if (_arg2 > 200){
this.caption.y = -94;
this.body.scaleY = -1;
};
this.caption.text = _arg3;
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, time:0.7});
}
}
}//package ui
Section 462
//PetShop (ui.PetShop)
package ui {
public class PetShop extends PetShopTemplate {
public static var instance:PetShop;
public static var catButton:ShopButton;
public static var kingButton:ShopButton;
public static var sheepButton:ShopButton;
public static var penguinButton:ShopButton;
public function PetShop(){
instance = this;
penguinButton = new ShopButton(penguin, "PENGUIN", 100);
sheepButton = new ShopButton(sheep, "SHEEP", 1000);
}
public function update():void{
penguinButton.updateView();
sheepButton.updateView();
}
public function getHelp():void{
penguinButton.getHelp();
sheepButton.getHelp();
}
}
}//package ui
Section 463
//PetShopTemplate (ui.PetShopTemplate)
package ui {
import flash.display.*;
public dynamic class PetShopTemplate extends MovieClip {
public var cow:MovieClip;
public var penguin:MovieClip;
public var cat:MovieClip;
public var sheep:MovieClip;
}
}//package ui
Section 464
//PurposesWindow (ui.PurposesWindow)
package ui {
import flash.events.*;
import flash.display.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class PurposesWindow extends PurposesWindowTemplate {
public static var instance:PurposesWindow;
public function PurposesWindow(_arg1:DisplayObjectContainer){
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(item0.type_txt);
Fonts.applyDefaultFormat(item1.type_txt);
Fonts.applyDefaultFormat(item2.type_txt);
Fonts.applyDefaultFormat(item3.type_txt);
Fonts.applyDefaultFormat(item0.count_txt);
Fonts.applyDefaultFormat(item1.count_txt);
Fonts.applyDefaultFormat(item2.count_txt);
Fonts.applyDefaultFormat(item3.count_txt);
Fonts.applyDefaultFormat(okBtn.caption);
instance = this;
_arg1.addChild(this);
this.visible = false;
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.3, y:-100, onComplete:function ():void{
this.visible = false;
}});
GameController.instance.resume();
}
public function show():void{
var _local4:Array;
FArrow.instance.hide();
title.text = Config.currentLanguage.goals;
var _local1:int;
while (_local1 < 4) {
this[("item" + _local1)].visible = false;
this[("item" + _local1)].type_txt.text = "";
this[("item" + _local1)].count_txt.text = "";
_local1++;
};
this.visible = true;
this.alpha = 0;
y = -100;
Tweener.addTween(this, {alpha:1, time:0.3});
Tweener.addTween(this, {time:0.3, y:0, transition:"easeOutBack"});
SoundManager.play("ui_panel_showing");
var _local2:Array = LevelStatistics.purposes;
var _local3:int;
while (_local3 < _local2.length) {
_local4 = _local2[_local3].split(",");
this[("item" + _local3)].tick.visible = false;
this[("item" + _local3)].count_txt.visible = true;
this[("item" + _local3)].visible = true;
trace("translate", _local4[0]);
this[("item" + _local3)].type_txt.text = ProductTypes.translate(_local4[0]);
this[("item" + _local3)].count_txt.text = ((LevelStatistics.goals[ProductTypes.typeToNumber(_local4[0])] + "/") + _local4[1]);
this[("item" + _local3)].body.gotoAndStop(_local4[0]);
if (Number(LevelStatistics.goals[ProductTypes.typeToNumber(_local4[0])]) >= Number(_local4[1])){
this[("item" + _local3)].tick.visible = true;
this[("item" + _local3)].count_txt.visible = false;
};
_local3++;
};
}
}
}//package ui
Section 465
//PurposesWindowTemplate (ui.PurposesWindowTemplate)
package ui {
import flash.display.*;
import flash.text.*;
public dynamic class PurposesWindowTemplate extends MovieClip {
public var okBtn:MovieClip;
public var item1:MovieClip;
public var item3:MovieClip;
public var title:TextField;
public var item0:MovieClip;
public var item2:MovieClip;
}
}//package ui
Section 466
//QuitDialog (ui.QuitDialog)
package ui {
import flash.events.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class QuitDialog extends QuitDialogTemplate {
public static var instance:QuitDialog;
public function QuitDialog(){
instance = this;
Fonts.applyDefaultFormat(caption);
Fonts.applyDefaultFormat(yesBtn.caption);
Fonts.applyDefaultFormat(noBtn.caption);
yesBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true);
noBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.alpha = 0;
this.visible = false;
yesBtn.caption.text = Config.currentLanguage.yes;
noBtn.caption.mouseEnabled = false;
yesBtn.caption.mouseEnabled = false;
noBtn.caption.text = Config.currentLanguage.no;
caption.text = Config.currentLanguage.quit_current_game;
yesBtn.addEventListener(MouseEvent.MOUSE_OVER, yesOver, false, 0, true);
noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true);
}
private function yesOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.2, transition:"easeInBack", y:-100, onComplete:function ():void{
this.visible = false;
GameController.instance.resume();
}});
}
private function noOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function show():void{
this.visible = true;
this.alpha = 0;
y = -100;
Tweener.addTween(this, {alpha:1, time:0.2});
Tweener.addTween(this, {time:0.3, y:0, transition:"easeOutBack"});
SoundManager.play("ui_panel_showing");
}
private function exit(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.2, transition:"easeInBack", y:-100, onComplete:function ():void{
this.visible = false;
GameController.instance.levelCompleted();
StartScreen.instance.show();
}});
}
}
}//package ui
Section 467
//QuitMenu (ui.QuitMenu)
package ui {
import flash.events.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
import flash.external.*;
public class QuitMenu extends QuitMenuTemplate {
public static var instance:QuitMenu;
public function QuitMenu(){
instance = this;
Fonts.applyDefaultFormat(caption);
Fonts.applyDefaultFormat(yesBtn.caption);
Fonts.applyDefaultFormat(noBtn.caption);
yesBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true);
noBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.alpha = 0;
this.visible = false;
yesBtn.caption.text = Config.currentLanguage.yes;
noBtn.caption.text = Config.currentLanguage.no;
caption.text = Config.currentLanguage.quit;
yesBtn.addEventListener(MouseEvent.MOUSE_OVER, yesOver, false, 0, true);
noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true);
yesBtn.addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
noBtn.addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.2, onComplete:function ():void{
this.visible = false;
}});
}
private function noOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
pig.gotoAndStop(2);
SoundManager.play("ui_button_hover");
}
private function exit(_arg1:MouseEvent=null):void{
ExternalInterface.call(Config.closeFunction, "close");
}
private function yesOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
pig.gotoAndStop(3);
SoundManager.play("ui_button_hover");
}
public function show():void{
this.visible = true;
Tweener.addTween(this, {alpha:1, time:0.2});
}
private function out(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
pig.gotoAndStop(1);
}
}
}//package ui
Section 468
//ResultsWindow (ui.ResultsWindow)
package ui {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import org.flintparticles.common.initializers.*;
import org.flintparticles.common.actions.*;
import org.flintparticles.common.counters.*;
import org.flintparticles.twoD.zones.*;
import flash.utils.*;
import shop.*;
import map.*;
import game.*;
import org.flintparticles.twoD.emitters.*;
import market.road.*;
import org.flintparticles.twoD.actions.*;
import org.flintparticles.twoD.initializers.*;
import org.flintparticles.twoD.renderers.*;
import org.flintparticles.common.displayObjects.*;
import org.flintparticles.common.energyEasing.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
import vkontakte.*;
public class ResultsWindow extends ResultsWindowTemplate {
private var emitter:Emitter2D;
private var currentScore:Number;// = 0
private var deltaScore:Number;// = 0
private var addScoreTimer:Timer;
private var prewScore:Number;// = 0
public static var effectContainer:DisplayObjectContainer;
public static var bankNum:Number = 0;
public static var instance:ResultsWindow;
public function ResultsWindow(_arg1:DisplayObjectContainer){
Fonts.applyDefaultFormat(bank);
Fonts.applyDefaultFormat(bank_txt);
Fonts.applyDefaultFormat(bonus);
Fonts.applyDefaultFormat(bonus_txt);
Fonts.applyDefaultFormat(okBtn.caption);
Fonts.applyDefaultFormat(coins);
Fonts.applyDefaultFormat(coins_txt);
Fonts.applyDefaultFormat(time);
Fonts.applyDefaultFormat(time_txt);
Fonts.applyDefaultFormat(title);
instance = this;
_arg1.addChild(this);
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.visible = false;
emitter = new Emitter2D();
effectContainer = _arg1;
addScoreTimer = new Timer(10);
addScoreTimer.addEventListener(TimerEvent.TIMER, incrementScore, false, 0, true);
coins_txt.text = Config.currentLanguage.coins;
bank_txt.text = Config.currentLanguage.bank;
time_txt.text = Config.currentLanguage.time;
bonus_txt.text = Config.currentLanguage.bonus;
createEffect();
currentScore = Config.stars;
bankNum = Config.score;
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
Tweener.addTween(this, {alpha:0, time:0.4, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
GameController.instance.levelCompleted();
MapWindow.instance.show();
bonus.text = String(currentScore);
addScoreTimer.stop();
this.cup.visible = false;
}
private function incrementScore(_arg1:TimerEvent):void{
if (prewScore < currentScore){
prewScore = (prewScore + deltaScore);
bonus.text = String(prewScore);
SoundManager.play("tick_time");
} else {
prewScore = currentScore;
emitter.start();
addScoreTimer.stop();
};
}
public function createEffect():void{
emitter.counter = new Blast(500);
emitter.addInitializer(new SharedImage(new Star(7)));
emitter.addInitializer(new ColorInit(4294967040, 4294927872));
emitter.addInitializer(new Velocity(new DiscSectorZone(new Point(-100, -200), 500, 0, -90, -91)));
emitter.addInitializer(new Lifetime(0.5));
emitter.addAction(new Age(Quadratic.easeIn));
emitter.addAction(new Move());
emitter.addAction(new Fade());
emitter.addAction(new Accelerate(0, 3000));
var _local1:BitmapRenderer = new BitmapRenderer(new Rectangle(0, 0, 570, 430));
_local1.addEmitter(emitter);
effectContainer.addChild(_local1);
emitter.x = 400;
emitter.y = 200;
}
public function addScore(_arg1:Number):void{
prewScore = currentScore;
currentScore = _arg1;
deltaScore = Math.round(((currentScore - prewScore) / 10));
}
public function show():void{
var addBonus:Number;
BlockTooltip.instance.hide();
Tooltip.instance.hide();
WaterTooltip.instance.hide();
prewScore = 0;
currentScore = 0;
deltaScore = 0;
GameController.instance.pause();
FArrow.instance.hide();
if ((((LevelBuilder.currentLevel >= LevelBuilder.maxLevel)) && ((LevelBuilder.currentLevel < Config.nodes.length)))){
LevelBuilder.maxLevel = (LevelBuilder.currentLevel + 1);
};
title.text = Config.currentLanguage.level_results;
bankNum = (bankNum + Road.currentMoney);
MapNode.nodeList[(LevelBuilder.currentLevel - 1)].state = BottomPanel.instance.state;
Config.nodes[(LevelBuilder.currentLevel - 1)] = BottomPanel.instance.state;
coins.text = LevelBuilder.currentLevelXML.@Prize;
addBonus = 0;
if (BottomPanel.instance.state == "gold"){
addBonus = Number(LevelBuilder.currentLevelXML.@GoldPrize);
cup.gotoAndStop(1);
cup.visible = true;
addScore(addBonus);
};
if (BottomPanel.instance.state == "silver"){
addBonus = Number(LevelBuilder.currentLevelXML.@SilverPrize);
cup.gotoAndStop(2);
cup.visible = true;
addScore(addBonus);
};
if (BottomPanel.instance.state == "normal"){
bonus.text = "0";
cup.visible = false;
};
Config.stars = (Config.stars + (addBonus + Number(LevelBuilder.currentLevelXML.@Prize)));
bank.text = String(bankNum);
if (Farm2.mail_ru_connection){
try {
Farm2.mail_ru_connection.send(Farm2.connection_name, "cacheResult", bankNum);
} catch(e:Error) {
};
};
if (Farm2.portal == "rambler"){
try {
Farm2.instance.sendRamblerScore(bankNum);
} catch(error:Error) {
};
};
if (Farm2.portal == "kongregate"){
StartScreen.instance.submitKongregateScore(bankNum);
};
if (Farm2.portal == "vkontakte"){
DataProvider.sendMyScore(bankNum);
DataProvider.sendScore(bankNum);
};
if (Farm2.portal == "facebook"){
DataProvider.sendFBScore(bankNum);
};
time.text = BottomPanel.instance.time_txt.text;
this.visible = true;
this.alpha = 0;
SoundManager.play("fanfare_level_complete", 1);
Tweener.addTween(this, {alpha:1, time:0.5, transition:"linear", delay:0.5, onComplete:function ():void{
if (addBonus > 0){
addScoreTimer.start();
};
}});
ShopWindow.instance.stars = Config.stars;
Config.score = bankNum;
Config.level = LevelBuilder.maxLevel;
Config.updateSharedObject();
}
}
}//package ui
Section 469
//ResultsWindowTemplate (ui.ResultsWindowTemplate)
package ui {
import flash.display.*;
import flash.text.*;
public dynamic class ResultsWindowTemplate extends MovieClip {
public var okBtn:MovieClip;
public var coins:TextField;
public var cup:MovieClip;
public var bank_txt:TextField;
public var bonus:TextField;
public var bonus_txt:TextField;
public var coins_txt:TextField;
public var time:TextField;
public var bank:TextField;
public var time_txt:TextField;
public var title:TextField;
}
}//package ui
Section 470
//ResumeWindow (ui.ResumeWindow)
package ui {
import flash.events.*;
import flash.display.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class ResumeWindow extends ResumeWindowTemplate {
private var onNo:Function;
private var onYes:Function;
public static var instance:ResumeWindow;
public function ResumeWindow(_arg1:DisplayObjectContainer){
instance = this;
visible = false;
x = 85;
Fonts.applyDefaultFormat(okBtn.caption);
Fonts.applyDefaultFormat(cancelBtn.caption);
Fonts.applyDefaultFormat(caption);
_arg1.addChild(this);
okBtn.caption.text = Config.currentLanguage.yes;
cancelBtn.caption.text = Config.currentLanguage.no;
okBtn.addEventListener(MouseEvent.CLICK, onOkClick);
cancelBtn.addEventListener(MouseEvent.CLICK, onCancelClick);
caption.text = Config.currentLanguage.resume_game;
}
public function show(_arg1:Function, _arg2:Function):void{
this.onYes = _arg1;
this.onNo = _arg2;
this.visible = true;
this.alpha = 0;
y = -100;
Tweener.addTween(this, {alpha:1, time:0.3});
Tweener.addTween(this, {time:0.3, y:100, transition:"easeOutBack"});
SoundManager.play("ui_panel_showing");
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
Tweener.addTween(this, {alpha:0, time:0.3, y:-100, onComplete:function ():void{
this.visible = false;
}});
GameController.instance.resume();
}
private function onOkClick(_arg1:MouseEvent):void{
hide();
onYes();
}
private function onCancelClick(_arg1:MouseEvent):void{
hide();
onNo();
}
}
}//package ui
Section 471
//ResumeWindowTemplate (ui.ResumeWindowTemplate)
package ui {
import flash.display.*;
import flash.text.*;
public dynamic class ResumeWindowTemplate extends MovieClip {
public var okBtn:MovieClip;
public var cancelBtn:MovieClip;
public var caption:TextField;
}
}//package ui
Section 472
//ShopArrow (ui.ShopArrow)
package ui {
public class ShopArrow extends ArrowTemplate {
public function ShopArrow(){
this.mouseChildren = (this.mouseEnabled = false);
}
}
}//package ui
Section 473
//ShopButton (ui.ShopButton)
package ui {
import flash.events.*;
import flash.display.*;
import market.road.*;
import pets.*;
import utils.*;
public class ShopButton extends MovieClip {
private var _cost:Number;// = 0
public var type:String;
private var _helpShowed:Boolean;// = false
private var _icon:MovieClip;
public static var ADD_PET:String = "add_pet";
public function ShopButton(_arg1:MovieClip, _arg2:String, _arg3:Number){
_cost = _arg3;
type = _arg2;
_icon = _arg1;
_icon.addEventListener(MouseEvent.ROLL_OVER, over, false, 0, true);
_icon.addEventListener(MouseEvent.ROLL_OUT, out, false, 0, true);
_icon.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
_icon.addEventListener(MouseEvent.CLICK, addPet, false, 0, true);
}
private function down(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_icon.active){
this._icon.gotoAndStop("press");
};
}
private function out(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_icon.active){
this._icon.gotoAndStop("active");
};
Tooltip.instance.hide();
}
public function updateView(_arg1:Event=null):void{
if (this._cost <= Road.currentMoney){
this._icon.gotoAndStop("active");
this._icon.active = true;
} else {
this._icon.active = false;
this._icon.gotoAndStop("lock");
};
}
public function getHelp():void{
if (((((!(_helpShowed)) && ((Road.currentMoney >= this._cost)))) && (!(Config.skiped)))){
_helpShowed = true;
BlockTooltip.instance.show((this._icon.x - 5), (this.y + 60), Config.currentLanguage.buy.descendants(type.toLowerCase()));
};
}
private function over(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
if (_icon.active){
this._icon.gotoAndStop("over");
Tooltip.instance.show((this._icon.x - 10), (this.y + 70), type, 0, type);
};
}
private function addPet(_arg1:MouseEvent=null):void{
if (_icon.active){
_arg1.stopPropagation();
this._icon.gotoAndStop("active");
PetsContainer.instance.addPet(type);
Road.instance.addMoney(-(_cost));
};
}
}
}//package ui
Section 474
//ShopTooltip (ui.ShopTooltip)
package ui {
import utils.*;
import caurina.transitions.*;
public class ShopTooltip extends TooltipTemplate {
public static var instance:ShopTooltip;
public function ShopTooltip(){
Fonts.applyDefaultFormat(help.inCount);
Fonts.applyDefaultFormat(help.caption);
Fonts.applyDefaultFormat(help.outCount);
instance = this;
visible = false;
alpha = 0;
this.mouseChildren = false;
this.mouseEnabled = false;
}
public function hide():void{
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:0, time:0.2, onComplete:function ():void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
}});
}
public function show(_arg1:Number, _arg2:Number, _arg3:String, _arg4:Number, _arg5:String=""):void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
visible = true;
this.alpha = 0;
this.x = _arg1;
this.y = (this.y - 15);
this.help.x = 130;
this.help.y = 86;
if (_arg1 > 300){
this.body.scaleX = -1;
this.help.x = -140;
this.x = _arg1;
};
if (_arg2 > 200){
this.help.y = -70;
this.body.scaleY = -1;
};
this.help.gotoAndStop(_arg3.toLocaleUpperCase());
trace("gotoAndStop", _arg3.toLocaleUpperCase());
this.help.inCount.text = (this.help.outCount.text = ("x" + String(_arg4)));
this.help.arrow.visible = true;
this.help.caption.text = _arg5;
switch (_arg3){
case "warehouse":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
break;
case "cage":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
break;
case "car":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
break;
case "plane":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
break;
case "well":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
break;
};
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, time:0.7, delay:0.2});
this.y = (_arg2 - 40);
}
}
}//package ui
Section 475
//SimpleTooltip (ui.SimpleTooltip)
package ui {
import flash.events.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class SimpleTooltip extends SimpleTooltipTemplate {
public static var instance:SimpleTooltip;
public function SimpleTooltip(){
instance = this;
visible = false;
Fonts.applyDefaultFormat(caption);
Fonts.applyDefaultFormat(okBtn.caption);
okBtn.caption.text = Config.currentLanguage.ok;
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
okBtn.addEventListener(MouseEvent.MOUSE_DOWN, down, false, 0, true);
}
public function hide(_arg1:MouseEvent=null):void{
this.visible = false;
SoundManager.play("ui_button_click");
}
public function down(_arg1:MouseEvent=null):void{
okBtn.gotoAndStop(3);
}
public function show(_arg1:String):void{
this.caption.text = _arg1;
this.visible = true;
alpha = 0;
Tweener.addTween(this, {alpha:1, time:0.5});
}
}
}//package ui
Section 476
//SkipEducationDialog (ui.SkipEducationDialog)
package ui {
import flash.events.*;
import map.*;
import game.*;
import utils.*;
import caurina.transitions.*;
import com.melesta.sound.*;
public class SkipEducationDialog extends QuitDialogTemplate {
public static var instance:SkipEducationDialog;
public function SkipEducationDialog(){
instance = this;
Fonts.applyDefaultFormat(yesBtn.caption);
Fonts.applyDefaultFormat(noBtn.caption);
Fonts.applyDefaultFormat(caption);
yesBtn.addEventListener(MouseEvent.CLICK, skip, false, 0, true);
noBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
yesBtn.stop();
noBtn.stop();
this.alpha = 0;
this.visible = false;
yesBtn.caption.text = Config.currentLanguage.yes;
noBtn.caption.mouseEnabled = false;
yesBtn.caption.mouseEnabled = false;
noBtn.caption.text = Config.currentLanguage.no;
caption.text = Config.currentLanguage.skip_educational_levels;
yesBtn.addEventListener(MouseEvent.MOUSE_OVER, yesOver, false, 0, true);
noBtn.addEventListener(MouseEvent.MOUSE_OVER, noOver, false, 0, true);
}
private function yesOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
MapWindow.instance.startFirstLevel();
Tweener.addTween(this, {alpha:0, time:0.2, onComplete:function ():void{
this.visible = false;
GameController.instance.resume();
}});
}
private function noOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function show():void{
this.visible = true;
Tweener.addTween(this, {alpha:1, time:0.2});
}
private function skip(_arg1:MouseEvent=null):void{
var event = _arg1;
SoundManager.play("ui_button_click");
MapWindow.instance.skipEducation();
Tweener.addTween(this, {alpha:0, time:0.5, transition:"linear", onComplete:function ():void{
this.visible = false;
}});
}
}
}//package ui
Section 477
//StartScreen (ui.StartScreen)
package ui {
import flash.events.*;
import com.kongregate.as3.client.*;
import game.assets.*;
import flash.net.*;
import facebook.ui.*;
import map.*;
import vkontakte.ui.*;
import game.*;
import utils.*;
import com.kongregate.as3.client.events.*;
import caurina.transitions.*;
import com.melesta.sound.*;
import flash.external.*;
import flash.ui.*;
public class StartScreen extends StartScreenTemplate {
private var _firstClick:Boolean;// = false
private var paramObj:Object;
public static var instance:StartScreen;
public static var kongregate:KongregateAPI;
public static var firstShow:Boolean = true;
public function StartScreen(){
paramObj = new Object();
super();
instance = this;
rambler.visible = false;
okBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
this.alpha = 0;
okBtn.stop();
Fonts.applyDefaultFormat(okBtn.caption);
Fonts.applyDefaultFormat(soundBtn.caption);
Fonts.applyDefaultFormat(musicBtn.caption);
Fonts.applyDefaultFormat(exitBtn.caption);
Fonts.applyDefaultFormat(playerPanel.welcome);
Fonts.applyDefaultFormat(playerPanel.playerName);
Fonts.applyDefaultFormat(playerPanel.editBtn.caption);
Fonts.applyDefaultFormat(buyBtn.caption);
okBtn.caption.text = Config.currentLanguage.start;
soundBtn.caption.text = Config.currentLanguage.sounds;
musicBtn.caption.text = Config.currentLanguage.music;
vkontakte_title.visible = false;
if (Config.language == "ru"){
logo.gotoAndStop("ru");
alawar.gotoAndStop("ru");
} else {
logo.gotoAndStop("en");
alawar.gotoAndStop("en");
};
if (FarmPreloader.externalLogo){
logo.visible = false;
FarmPreloader.externalLogo.x = (FarmPreloader.externalLogo.y = 0);
addChild(FarmPreloader.externalLogo);
};
buyBtn.visible = true;
buyBtn.stop();
buyBtn.visible = false;
buyBtn.caption.htmlText = Config.currentLanguage.download_full_version;
Fonts.applyDefaultFormat(buyBtn.caption);
if (Config.downloadable){
buyBtn.addEventListener(MouseEvent.CLICK, buy, false, 0, true);
buyBtn.visible = true;
};
buyBtn.caption.mouseEnabled = false;
okBtn.caption.mouseEnabled = false;
exitBtn.caption.mouseEnabled = false;
okBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
buyBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
exitBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
soundBtn.addEventListener(MouseEvent.CLICK, switchSound, false, 0, true);
musicBtn.addEventListener(MouseEvent.CLICK, switchMusic, false, 0, true);
playerPanel.editBtn.addEventListener(MouseEvent.MOUSE_OVER, btnOver, false, 0, true);
soundBtn.mouseChildren = false;
soundBtn.buttonMode = true;
musicBtn.buttonMode = true;
musicBtn.mouseChildren = false;
playerPanel.visible = false;
exitBtn.visible = false;
if ((((Config.closeFunction.length > 0)) && (!((Farm2.portal == "mail.ru"))))){
exitBtn.visible = true;
exitBtn.addEventListener(MouseEvent.CLICK, exit, false, 0, true);
exitBtn.caption.text = Config.currentLanguage.exit;
};
if (Farm2.portal == "mail.ru"){
soundBtn.y = 30;
musicBtn.y = 68;
soundBtn.x = (musicBtn.x = 494);
exitBtn.visible = true;
exitBtn.caption.text = Config.currentLanguage.exit;
exitBtn.addEventListener(MouseEvent.CLICK, exitMailRu, false, 0, true);
};
if ((((((Farm2.portal == "mochi")) || ((Farm2.portal == "kongregate")))) || ((Farm2.portal == "gamejacket")))){
exitBtn.visible = true;
exitBtn.addEventListener(MouseEvent.CLICK, showLeaderboard, false, 0, true);
exitBtn.caption.text = Config.currentLanguage.leaderboard;
playerPanel.visible = true;
playerPanel.welcome.text = Config.currentLanguage.welcome;
playerPanel.editBtn.caption.text = Config.currentLanguage.change;
playerPanel.playerName.mouseEnabled = false;
playerPanel.editBtn.addEventListener(MouseEvent.CLICK, editUsername, false, 0, true);
playerPanel.playerName.background = false;
playerPanel.playerName.border = false;
if (Farm2.portal == "kongregate"){
exitBtn.y = (exitBtn.y - 50);
buyBtn.visible = true;
kongregate = new KongregateAPI();
this.addChild(kongregate);
kongregate.addEventListener(KongregateEvent.COMPLETE, getKongregateUserData);
};
};
if (Farm2.portal == "vkontakte"){
exitBtn.visible = true;
exitBtn.addEventListener(MouseEvent.CLICK, showVLeaderboard, false, 0, true);
exitBtn.caption.text = Config.currentLanguage.leaderboard;
vkontakte_title.visible = true;
buyBtn.caption.htmlText = "Наша группа<br>в Контакте";
Fonts.applyDefaultFormat(buyBtn.caption);
buyBtn.addEventListener(MouseEvent.CLICK, gotoGroup, false, 0, true);
buyBtn.visible = true;
};
if (Farm2.portal == "facebook"){
exitBtn.visible = true;
exitBtn.addEventListener(MouseEvent.CLICK, showFBLeaderboard, false, 0, true);
exitBtn.caption.text = Config.currentLanguage.leaderboard;
buyBtn.caption.htmlText = "Join us<br>on Facebook!";
Fonts.applyDefaultFormat(buyBtn.caption);
buyBtn.addEventListener(MouseEvent.CLICK, gotoFBGroup, false, 0, true);
buyBtn.visible = true;
};
rambler.visible = false;
if (Farm2.portal == "rambler"){
exitBtn.visible = true;
rambler.buttonMode = true;
exitBtn.caption.text = Config.currentLanguage.exit;
exitBtn.addEventListener(MouseEvent.CLICK, closeRamblerGame, false, 0, true);
rambler.visible = true;
rambler.addEventListener(MouseEvent.CLICK, gotoRambler, false, 0, true);
};
alawar.visible = false;
}
private function editUsername(_arg1:MouseEvent=null):void{
playerPanel.playerName.mouseEnabled = true;
playerPanel.playerName.background = true;
playerPanel.playerName.textColor = 0;
playerPanel.playerName.border = false;
playerPanel.playerName.setSelection(0, 100);
playerPanel.editBtn.caption.text = Config.currentLanguage.ok;
playerPanel.editBtn.removeEventListener(MouseEvent.CLICK, editUsername);
playerPanel.editBtn.addEventListener(MouseEvent.CLICK, saveUsername, false, 0, true);
Config.playerName = playerPanel.playerName.text;
playerPanel.playerName.addEventListener(KeyboardEvent.KEY_DOWN, enterPressed, false, 0, true);
}
public function hide(_arg1:MouseEvent=null):void{
SoundsList.inMenu = false;
SoundManager.play("ui_button_click");
startGame();
PlayGround.instance.alpha = 1;
MapWindow.instance.addChild(musicBtn);
MapWindow.instance.addChild(soundBtn);
musicBtn.container = "map";
if (!SoundsList.muteMusic){
if (SoundsList.menuMusicChannel){
SoundsList.menuMusicChannel.stop();
};
if (SoundsList.gameMusicSound != null){
SoundsList.gameMusicChannel = SoundsList.gameMusicSound.play(1);
};
};
}
private function showVLeaderboard(_arg1:MouseEvent=null):void{
VLeaderBoard.instance.show();
}
private function onMusicMuted(_arg1:Event=null):void{
if (SoundsList.muteMusic){
musicBtn.gotoAndStop("off");
} else {
musicBtn.gotoAndStop("on");
};
}
private function getKongregateUserData(_arg1=null):void{
var event = _arg1;
try {
if (kongregate.user.getName() != "undefined"){
playerPanel.playerName.text = kongregate.user.getName();
} else {
playerPanel.playerName.text = Config.playerName;
};
} catch(error:Error) {
};
Config.playerName = playerPanel.playerName.text;
}
private function showLeaderboard(_arg1:MouseEvent=null):void{
Leaderboard.instance.show();
}
private function showFBLeaderboard(_arg1:MouseEvent=null):void{
FBLeaderboard.instance.show();
}
private function buy(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest(Config.downloadLink);
navigateToURL(_local2, Config.target);
}
public function submitKongregateScore(_arg1:Number=0):void{
var score = _arg1;
try {
kongregate.scores.submit(score);
} catch(error:Error) {
};
}
private function closeRamblerGame(_arg1:MouseEvent=null):void{
var event = _arg1;
try {
trace("Close rambler");
Farm2.instance.sendRamblerScore(ResultsWindow.bankNum);
Farm2.instance.closeGame();
ExternalInterface.call("window.close()");
} catch(error:Error) {
};
try {
ExternalInterface.call("window.close()");
} catch(error:Error) {
};
}
private function btnOver(_arg1:MouseEvent=null):void{
_arg1.stopPropagation();
SoundManager.play("ui_button_hover");
}
public function switchMusic(_arg1:MouseEvent=null):void{
GameController.instance.muteMusic = !(SoundsList.muteMusic);
}
private function exitMailRu(_arg1:MouseEvent=null):void{
var event = _arg1;
if (((Farm2.mail_ru_connection) && ((Farm2.portal == "mail.ru")))){
try {
Farm2.mail_ru_connection.send(Farm2.connection_name, "closeGame");
} catch(e:Error) {
};
};
}
private function onSoundMuted(_arg1:Event=null):void{
if (SoundsList.mute){
soundBtn.gotoAndStop("off");
} else {
soundBtn.gotoAndStop("on");
};
}
private function gotoGroup(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest("http://vkontakte.ru/club443534");
navigateToURL(_local2, Config.target);
}
private function exit(_arg1:MouseEvent=null):void{
QuitMenu.instance.show();
}
private function gotoVkontakte(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest("http://vkontakte.ru/");
navigateToURL(_local2, "_blank");
}
private function gotoFBGroup(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest("http://www.facebook.com/group.php?gid=81590252965");
navigateToURL(_local2, Config.target);
}
private function gotoOdnoklassniki(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest("http://odnoklassniki.ru/");
navigateToURL(_local2, "_blank");
}
public function sendNonobaScore(_arg1:Number=0):void{
}
private function startNewGame():void{
Config.sharedObject.clear();
Config.sharedObject.data.nodes = (Config.nodes = ["novel", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none"]);
Config.sharedObject.data.stars = (Config.stars = 0);
Config.sharedObject.data.score = (Config.score = 0);
Config.sharedObject.data.upgrades = (Config.upgrades = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0));
Config.sharedObject.data.level = (Config.level = 1);
Config.sharedObject.data.played = (Config.played = false);
visible = false;
MapWindow.instance.show();
}
private function enterPressed(_arg1:KeyboardEvent=null):void{
if (_arg1.keyCode == Keyboard.ENTER){
playerPanel.playerName.background = false;
playerPanel.playerName.textColor = 0xFFFFFF;
playerPanel.playerName.border = false;
playerPanel.playerName.mouseEnabled = false;
playerPanel.editBtn.caption.text = Config.currentLanguage.change;
playerPanel.editBtn.addEventListener(MouseEvent.CLICK, editUsername, false, 0, true);
playerPanel.editBtn.removeEventListener(MouseEvent.CLICK, saveUsername);
Config.playerName = playerPanel.playerName.text;
playerPanel.playerName.removeEventListener(KeyboardEvent.KEY_DOWN, enterPressed);
};
}
private function gotoRambler(_arg1:MouseEvent=null):void{
var _local2:URLRequest = new URLRequest("http://rambler.ru/");
navigateToURL(_local2, "_blank");
}
private function saveUsername(_arg1:MouseEvent=null):void{
playerPanel.playerName.mouseEnabled = false;
playerPanel.playerName.background = false;
playerPanel.playerName.border = false;
playerPanel.playerName.textColor = 0xFFFFFF;
playerPanel.editBtn.caption.text = Config.currentLanguage.change;
playerPanel.editBtn.addEventListener(MouseEvent.CLICK, editUsername, false, 0, true);
playerPanel.editBtn.removeEventListener(MouseEvent.CLICK, saveUsername);
Config.playerName = playerPanel.playerName.text;
}
private function startGame(_arg1:MouseEvent=null):void{
if (((!(_firstClick)) && (!(Config.played)))){
visible = false;
MapWindow.instance.show();
} else {
if (((Config.played) && (!(_firstClick)))){
ResumeWindow.instance.show(resumeGame, startNewGame);
} else {
visible = false;
MapWindow.instance.show();
};
};
_firstClick = true;
}
public function switchSound(_arg1:MouseEvent=null):void{
GameController.instance.muteSound = !(SoundsList.mute);
}
public function show():void{
if (firstShow){
firstShow = false;
if (((Farm2.mail_ru_connection) && ((Farm2.portal == "mail.ru")))){
try {
Farm2.mail_ru_connection.send(Farm2.connection_name, "startGame");
} catch(e:Error) {
};
};
};
this.visible = true;
Tweener.addTween(this, {alpha:1, time:1});
SoundsList.inMenu = true;
if (!SoundsList.muteMusic){
if (SoundsList.gameMusicChannel){
SoundsList.gameMusicChannel.stop();
};
SoundsList.menuMusicChannel = SoundsList.menuMusicSound.play(1);
};
onMusicMuted();
onSoundMuted();
GameController.instance.addEventListener(GameController.SOUND_MUTED, onSoundMuted);
GameController.instance.addEventListener(GameController.MUSIC_MUTED, onMusicMuted);
musicBtn.container = "menu";
addChild(musicBtn);
addChild(soundBtn);
}
private function resumeGame():void{
visible = false;
MapWindow.instance.resumeGame();
}
}
}//package ui
Section 478
//Tooltip (ui.Tooltip)
package ui {
import houses.*;
import utils.*;
import caurina.transitions.*;
public class Tooltip extends TooltipTemplate {
public static var instance:Tooltip;
public function Tooltip(){
Fonts.applyDefaultFormat(help.inCount);
Fonts.applyDefaultFormat(help.outCount);
Fonts.applyDefaultFormat(help.caption);
instance = this;
visible = false;
alpha = 0;
this.mouseChildren = false;
this.mouseEnabled = false;
this.body.mouseEnabled = (this.body.mouseChildren = false);
this.help.mouseEnabled = (this.help.mouseChildren = false);
}
public function hide():void{
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:0, time:0.2, onComplete:function ():void{
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
}});
}
public function show(_arg1:Number, _arg2:Number, _arg3:String, _arg4:Number, _arg5:String=""):void{
this.mouseChildren = false;
this.mouseEnabled = false;
this.body.mouseEnabled = (this.body.mouseChildren = false);
this.help.mouseEnabled = (this.help.mouseChildren = false);
this.visible = false;
this.body.scaleX = 1;
this.body.scaleY = 1;
visible = true;
this.alpha = 0;
this.x = (_arg1 + 20);
this.help.x = 135;
this.help.y = 90;
if (_arg1 > 300){
this.body.scaleX = -1;
this.help.x = -150;
this.x = (_arg1 - 20);
};
if (_arg2 > 200){
this.help.y = -65;
this.body.scaleY = -1;
};
this.help.gotoAndStop(_arg3.toLocaleUpperCase());
trace("tooltip", _arg3.toLocaleUpperCase());
this.help.inCount.text = (this.help.outCount.text = ("x" + String(_arg4)));
this.help.arrow.visible = true;
this.help.caption.text = _arg5;
switch (_arg3){
case "PENGUIN":
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = ProductTypes.translate(_arg5, true);
break;
case "GOALS":
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = Config.currentLanguage.tooltips.goals;
break;
case "KING_PENGUIN":
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = ProductTypes.translate(_arg5, true);
break;
case House.DEPOT:
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = Config.currentLanguage.warehouse.@tooltip;
break;
case House.WELL:
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = Config.currentLanguage.well.@tooltip;
break;
case "WELL_EMPTY":
this.help.gotoAndStop(1);
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = _arg5;
break;
case "OSTRICH":
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = ProductTypes.translate(_arg5, true);
break;
case "SHEEP":
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = false;
this.help.caption.text = ProductTypes.translate(_arg5, true);
break;
case House.CAR:
this.help.outCount.text = (this.help.inCount.text = "");
this.help.arrow.visible = true;
this.help.gotoAndStop(House.DEPOT);
this.help.caption.text = Config.currentLanguage.car;
break;
case House.PLANE:
this.help.outCount.text = (this.help.inCount.text = "");
this.help.caption.text = Config.currentLanguage.plane;
break;
default:
break;
};
Tweener.removeTweens(this);
Tweener.addTween(this, {alpha:1, time:0.7, delay:1});
this.y = (_arg2 - 40);
}
}
}//package ui
Section 479
//WaterTooltip (ui.WaterTooltip)
package ui {
import flash.events.*;
import utils.*;
import caurina.transitions.*;
public class WaterTooltip extends WaterTooltipTemplate {
public static var firstShow:Boolean = true;
public static var instance:WaterTooltip;
public function WaterTooltip(){
Fonts.applyDefaultFormat(caption);
instance = this;
visible = false;
this.alpha = 0;
this.mouseEnabled = false;
this.mouseChildren = false;
}
public function hide(_arg1:MouseEvent=null):void{
firstShow = false;
this.visible = false;
}
public function show():void{
if (((firstShow) && (!(Config.skiped)))){
this.visible = true;
Tweener.addTween(this, {alpha:1, time:1, delay:1});
this.caption.text = Config.currentLanguage.tooltips.click_the_ground;
this.x = 280;
this.y = 200;
visible = true;
};
}
}
}//package ui
Section 480
//WorkLine (ui.WorkLine)
package ui {
public class WorkLine extends WorkLineTemplate {
public function WorkLine(){
this.line.height = 0;
this.mouseEnabled = (this.mouseChildren = false);
}
public function setProgress(_arg1:Number):void{
this.line.height = _arg1;
}
}
}//package ui
Section 481
//Config (utils.Config)
package utils {
import flash.net.*;
import flash.utils.*;
public class Config {
private static const Levels:Class = Config_Levels;
public static const fontsSWFPath:String = "fonts.swf";
public static const UPGRADE_COST_CAR:Array = [250, 500, 1500, 5000];
public static const UPGRADE_COST_DRIED_EGGS:Array = [150, 200, 250, 300, 350];
public static const UPGRADE_COST_DEPOT:Array = [150, 500, 1000, 10000];
public static const HOUSE_POSITIONS:Array = ["100,160", "70,246", "80,340", "455,158", "487,240", "487,340", "267,105", "403, 412", "277,430", "140, 417"];
public static const NODE_POSITIONS:Array = ["18,318", "39,343", "63,371", "86,394", "122,371", "156,348", "188,324", "164,300", "139,276", "116,252", "93,230", "70,208", "51,187", "80,165", "108,147", "135,131", "157,150", "180,167", "203,186", "229,211", "256,233", "277,255"];
public static const UPGRADE_COST_INCUBATOR:Array = [270, 320, 370, 420, 470];
public static const UPGRADE_COST_CAKE:Array = [200, 300, 400, 500, 600];
public static const WATER_PRICE:Array = [19, 17, 10, 7];
public static const levelsXMLPath:String = "config.xml";
public static const UPGRADE_COST_PLANE:Array = [400, 800, 1600, 6000];
public static const UPGRADE_COST_FLOURY_CAKE:Array = [300, 400, 500, 600, 700];
public static const UPGRADE_COST_WELL:Array = [250, 500, 1500, 5000];
public static var API_ID:String = "698742";
private static var _downloadLink:String;
public static var currentLevel:Number = 0;
public static var playerName:String = "Player";
public static var sharedName:String = "fffff";
public static var target:String = "_blank";
public static var score:Number = 1;
public static var level:Number = 1;
public static var API_SECRET:String = "hDKEGh4BRt";
public static var sharedObject:SharedObject;
public static var shopUpgradeCosts:Array = ["100,500,5000", "250,500,10000", "150,600,6000", "100,500,2000", "100,500,2000", "100,200,300,400,500", "200,300,400,500,600", "300,400,500,600,700", "200,400,600,800,1000", "1000,2000,3000,4000,5000", "1500,1600,1700,1800,1900", "2100,2200,2300,2400"];
public static var VIEWER_ID:String = "3485491";
public static var nodes:Array = ["novel", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none"];
public static var api:String = "http://api.vkontakte.ru/api.php";
public static var showedTips:Array = [];
public static var TEST_MODE:int = 0;
public static var use_cheats:Boolean = false;
private static var _currentLanguage:XML;
public static var IS_APP_USER:Number = 0;
public static var played:Boolean = false;
public static var upgrades:Array = [0, 0, 0, 0, 0, 0, 0, 0, 0];
public static var language:String = "en";
public static var skiped:Boolean = false;
public static var downloadable:Boolean = true;
private static var lang:Class = Config_lang;
public static var closeFunction:String = "";
public static var stars:Number = 0;
public function Config(){
trace("Config implement");
_slot1.sharedObject = SharedObject.getLocal(_slot1.sharedName);
}
public static function updateSharedObject():void{
_slot1.sharedObject = SharedObject.getLocal(_slot1.sharedName);
_slot1.sharedObject.data.stars = _slot1.stars;
_slot1.sharedObject.data.score = _slot1.score;
_slot1.sharedObject.data.upgrades = _slot1.upgrades;
_slot1.sharedObject.data.level = _slot1.level;
_slot1.sharedObject.data.played = _slot1.played;
}
public static function set currentLanguage(_arg1:XML):void{
_currentLanguage = _arg1;
}
public static function get downloadLink():String{
if (_downloadLink != null){
return (_downloadLink);
};
if (Farm2.portal == "mochi"){
return ("http://www.alawar.com/download/FarmFrenzy3AmericanPie_10105.exe");
};
if (language == "ru"){
return ("http://www.alawar.ru/download/AlawarRuFarmFrenzy3AmericanPieRus.exe");
};
return ("http://www.alawar.com/download/FarmFrenzy3AmericanPie.exe");
}
public static function getLevel(_arg1:Number=1):XML{
return (LevelRecords.Level[(_arg1 - 1)]);
}
public static function get LevelRecords():XML{
var _local1:ByteArray = new Levels();
var _local2:String = String(_local1.readUTFBytes(_local1.length));
while (_local2.charAt(0) != "<") {
_local2 = _local2.substr(1);
};
return (new XML(_local2));
}
public static function set downloadLink(_arg1:String):void{
_downloadLink = _arg1;
}
public static function get currentLanguage():XML{
if (_currentLanguage != null){
return (_currentLanguage);
};
var _local1:ByteArray = new lang();
var _local2:String = String(_local1.readUTFBytes(_local1.length));
while (_local2.charAt(0) != "<") {
_local2 = _local2.substr(1);
};
return (new XML(_local2));
}
}
}//package utils
Section 482
//Config_lang (utils.Config_lang)
package utils {
import mx.core.*;
public class Config_lang extends ByteArrayAsset {
}
}//package utils
Section 483
//Config_Levels (utils.Config_Levels)
package utils {
import mx.core.*;
public class Config_Levels extends ByteArrayAsset {
}
}//package utils
Section 484
//FontLoader (utils.FontLoader)
package utils {
import flash.events.*;
import flash.text.*;
import flash.display.*;
import flash.net.*;
public class FontLoader extends EventDispatcher {
private var loader:Loader;
private var fonts:Array;
public var loading:Boolean;// = false
static var fontsNotFound:Boolean = false;
private static var loadedFonts:Array = [];
public function FontLoader(){
loader = new Loader();
super();
}
private function onFontLoaded(_arg1:Event):void{
var i:int;
var fontLib:Class;
var font:Font;
var e = _arg1;
loading = false;
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, onFontLoaded);
i = 0;
while (i < fonts.length) {
try {
fontLib = (e.target.applicationDomain.getDefinition(fonts[i]) as Class);
font = new (fontLib);
trace(fonts[i], font.fontName);
loadedFonts.push([fonts[i], font]);
Font.registerFont(fontLib);
} catch(e:Error) {
trace((("Font [" + fonts[i]) + "] not loaded"));
};
i = (i + 1);
};
dispatchEvent(new Event(Event.COMPLETE));
}
private function onFail(_arg1:IOErrorEvent):void{
loading = false;
fontsNotFound = true;
trace("fonts not found");
dispatchEvent(new Event(Event.COMPLETE));
}
public function loadFonts(_arg1:String, _arg2:Array):void{
fonts = _arg2;
fontsNotFound = true;
loading = true;
loader.load(new URLRequest(_arg1));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onFontLoaded);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onFail);
}
public static function getFontName(_arg1:String, _arg2:Object):String{
var _local3:Class = (_arg2.applicationDomain.getDefinition(_arg1) as Class);
var _local4:Font = new (_local3);
return (_local4.fontName);
}
public static function getFont(_arg1:String):Font{
var _local2:int;
while (_local2 < loadedFonts.length) {
if (loadedFonts[_local2][0] == _arg1){
return (loadedFonts[_local2][1]);
};
_local2++;
};
return (new Font());
}
public static function getTextField(_arg1:String, _arg2:Number=13):TextField{
var _local3:TextField = new TextField();
var _local4:TextFormat = getTextFormat(_arg1);
_local4.size = _arg2;
_local3.embedFonts = true;
_local3.defaultTextFormat = _local4;
_local3.autoSize = "left";
_local3.antiAliasType = AntiAliasType.ADVANCED;
_local3.gridFitType = GridFitType.PIXEL;
return (_local3);
}
public static function getTextFormat(_arg1:String):TextFormat{
var _local2:Font = getFont(_arg1);
var _local3:TextFormat = new TextFormat(_local2.fontName);
switch (_local2.fontStyle){
case FontStyle.BOLD:
_local3.bold = true;
break;
case FontStyle.BOLD_ITALIC:
_local3.bold = true;
_local3.italic = true;
break;
case FontStyle.ITALIC:
_local3.italic = true;
break;
};
return (_local3);
}
}
}//package utils
Section 485
//Fonts (utils.Fonts)
package utils {
import flash.text.*;
public class Fonts {
public static const Arial:String = "Arial";
private static var dfontBold:Class;
public static function applyDefaultFormat(_arg1:TextField, _arg2:Boolean=true):void{
_arg1.embedFonts = true;
_arg1.antiAliasType = AntiAliasType.ADVANCED;
_arg1.gridFitType = GridFitType.SUBPIXEL;
_arg1.mouseEnabled = false;
var _local3:TextFormat = new TextFormat("Arial");
_local3.bold = _arg2;
_arg1.defaultTextFormat = _local3;
_arg1.text = _arg1.text;
}
}
}//package utils
Section 486
//LevelStatistics (utils.LevelStatistics)
package utils {
import ui.*;
import game.*;
public class LevelStatistics {
public static var goals:Array = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0);
public static var purposes:Array = new Array();
public static var accessProduct:Array = new Array();
public static function checkCompleted():void{
var _local3:Array;
var _local1:Number = 0;
var _local2:int;
while (_local2 < LevelStatistics.purposes.length) {
_local3 = LevelStatistics.purposes[_local2].split(",");
if (Number(_local3[1]) <= Number(LevelStatistics.goals[ProductTypes.typeToNumber(_local3[0])])){
_local1++;
};
_local2++;
};
if (_local1 == LevelStatistics.purposes.length){
GameController.instance.pause();
ResultsWindow.instance.show();
};
}
public static function updateStatistics():void{
BottomPanel.instance.update();
checkCompleted();
}
}
}//package utils
Section 487
//ProductTypes (utils.ProductTypes)
package utils {
public class ProductTypes {
public static var types:Array = ["MONEY", "EGG", "DRIED_EGGS", "CAKE", "FLOUR", "FLOURY_CAKE", "WOOL", "SEWING", "FABRIC", "ADORNMENT", "СARNIVAL_DRESS", "MILK", "SOUR_CREAM", "CURD", "CHEESE_FERMENT", "CHEESE", "BROWN", "PENGUIN", "SHEEP", "COW", "CAT"];
public static function numberToType(_arg1:Number):String{
return (types[_arg1]);
}
public static function translate(_arg1:String, _arg2:Boolean=false):String{
switch (_arg1){
case "EGG":
return (Config.currentLanguage.eggs);
case "DRIED_EGGS":
return (Config.currentLanguage.dried_eggs);
case "PLUME":
return (Config.currentLanguage.plume);
case "FLOURY_CAKE":
return (Config.currentLanguage.floury_cake);
case "CAKE":
return (Config.currentLanguage.cake);
case "FLOUR":
return (Config.currentLanguage.flour);
case "POLAR_BEAR":
return (Config.currentLanguage.lion);
case "PENGUIN":
if (_arg2){
return (Config.currentLanguage.guinea_fowl.@produce);
};
return (Config.currentLanguage.guinea_fowl);
case "KING_PENGUIN":
if (_arg2){
return (Config.currentLanguage.ostrich.@produce);
};
return (Config.currentLanguage.ostrich);
case "GUINEA_FOWL":
if (_arg2){
return (Config.currentLanguage.guinea_fowl.@produce);
};
return (Config.currentLanguage.guinea_fowls);
case "SHEEP":
if (_arg2){
return (Config.currentLanguage.sheep.@produce);
};
return (Config.currentLanguage.sheeps);
case "OSTRICH":
if (_arg2){
return (Config.currentLanguage.ostrich.@produce);
};
return (Config.currentLanguage.ostrich);
case "MONEY":
return (Config.currentLanguage.money);
case "WOOL":
return (Config.currentLanguage.wool);
case "SEWING":
return (Config.currentLanguage.threads);
case "FABRIC":
return (Config.currentLanguage.cloth);
case "CARNIVAL_DRESS":
return (Config.currentLanguage.costumes);
default:
return (Config.currentLanguage.eggs);
};
}
public static function typeToNumber(_arg1:String):Number{
return (types.indexOf(_arg1));
}
}
}//package utils
Section 488
//SoundsList (utils.SoundsList)
package utils {
import flash.media.*;
import com.melesta.sound.*;
public class SoundsList {
public static var inMenu:Boolean = true;
public static var menuMusicSound:Sound;
public static var muteMusic:Boolean = false;
public static var gameMusicChannel:SoundChannel;
public static var mute:Boolean = false;
public static var gameMusicSound:Sound;
public static var menuMusicChannel:SoundChannel;
public static function init():void{
SoundManager.registerSoundAsset("action_sell_buy", action_sell_buy);
SoundManager.registerSoundAsset("action_upgrade", action_upgrade);
SoundManager.registerSoundAsset("action_watering", action_watering);
SoundManager.registerSoundAsset("action_well_auto", action_well_auto);
SoundManager.registerSoundAsset("action_well", action_well);
SoundManager.registerSoundAsset("airplane_flyin", airplane_flyin);
SoundManager.registerSoundAsset("grizzly_scream", grizzly_scream);
SoundManager.registerSoundAsset("enemy_landing", enemy_landing);
SoundManager.registerSoundAsset("cage_breaking", cage_breaking);
SoundManager.registerSoundAsset("cage_broke_bear_flee", cage_broke_bear_flee);
SoundManager.registerSoundAsset("cage_click", cage_click);
SoundManager.registerSoundAsset("car_came", car_came);
SoundManager.registerSoundAsset("guinea_fowl_die", turkey_die);
SoundManager.registerSoundAsset("guinea_fowl_flyout", turkey_flyout);
SoundManager.registerSoundAsset("guinea_fowl_hungry", turkey_hungry);
SoundManager.registerSoundAsset("guinea_fowl_voice", turkey_voice);
SoundManager.registerSoundAsset("fanfare_aim", fanfare_aim);
SoundManager.registerSoundAsset("fanfare_best_time", fanfare_best_time);
SoundManager.registerSoundAsset("fanfare_level_complete", fanfare_level_complete);
SoundManager.registerSoundAsset("fanfare_medal", fanfare_medal);
SoundManager.registerSoundAsset("fool_action", fool_action);
SoundManager.registerSoundAsset("house_board_landing", house_board_landing);
SoundManager.registerSoundAsset("house_click", house_click);
SoundManager.registerSoundAsset("house_landing", house_landing);
SoundManager.registerSoundAsset("item_add", item_add);
SoundManager.registerSoundAsset("item_cancel", item_cancel);
SoundManager.registerSoundAsset("sheep_die", sheep_die);
SoundManager.registerSoundAsset("sheep_flyout", sheep_flyout);
SoundManager.registerSoundAsset("sheep_hungry", sheep_hungry);
SoundManager.registerSoundAsset("sheep_voice", sheep_voice);
SoundManager.registerSoundAsset("cat_voice", cat_voice);
SoundManager.registerSoundAsset("cat_flyout", cat_flyout);
SoundManager.registerSoundAsset("product_crack", product_crack);
SoundManager.registerSoundAsset("product_landing", product_landing);
SoundManager.registerSoundAsset("product_take", product_take);
SoundManager.registerSoundAsset("tick_money", tick_money);
SoundManager.registerSoundAsset("tick_time", tick_time);
SoundManager.registerSoundAsset("ui_button_click", ui_button_click);
SoundManager.registerSoundAsset("ui_button_hover", ui_button_hover);
SoundManager.registerSoundAsset("ui_panel_showing", ui_panel_showing);
var _local1:Class = (music_mainmenu as Class);
menuMusicSound = (new (_local1) as Sound);
var _local2:Class = (music_game as Class);
gameMusicSound = (new (_local2) as Sound);
}
}
}//package utils
Section 489
//Car (vehicles.Car)
package vehicles {
import flash.events.*;
import flash.display.*;
import houses.*;
import ui.*;
import market.road.*;
import utils.*;
public class Car extends House {
public static var upgradeLevel:Number;
public static var instance:Car;
public function Car(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
super(_arg1, _arg2, new CarTemplate());
upgradeLevel = _arg2;
upgradeIndex = 3;
init("CAR", null, Config.UPGRADE_COST_CAR, Config.currentLanguage.tooltips.car, _arg3, _arg4);
instance = this;
_upgradeButton.x = -45;
_upgradeButton.y = -20;
}
public function checkMoney():void{
PetShop.instance.getHelp();
LevelStatistics.updateStatistics();
}
override protected function onClick(_arg1:MouseEvent=null):void{
super.onClick(_arg1);
Depot.instance.showMarket();
}
override public function upgrade():void{
super.upgrade();
upgradeLevel = _upgrade;
}
override protected function updateMoney(_arg1:Event=null):void{
if (_upgradeButton == null){
return;
};
if (upgradeCost[_upgrade] <= Road.currentMoney){
_upgradeButton.disabled(true);
} else {
_upgradeButton.disabled(false);
};
}
}
}//package vehicles
Section 490
//CarTemplate (vehicles.CarTemplate)
package vehicles {
import flash.display.*;
public dynamic class CarTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package vehicles
Section 491
//Plane (vehicles.Plane)
package vehicles {
import flash.events.*;
import flash.display.*;
import houses.*;
import ui.*;
import utils.*;
import market.*;
public class Plane extends House {
private var _stageInstance:DisplayObjectContainer;
private var _importProduction:ImportWindow;
public static var instance:Plane;
public static var upgradeLevel:Number;
public static var firstShow:Boolean = true;
public function Plane(_arg1:DisplayObjectContainer, _arg2:Number, _arg3:Array, _arg4:Number){
Plane.instance = this;
super(_arg1, _arg2, new PlaneTemplate());
upgradeIndex = 4;
init("PLANE", null, Config.UPGRADE_COST_PLANE, Config.currentLanguage.tooltips.plane, _arg3, _arg4);
_upgradeButton.x = -45;
_importProduction = new ImportWindow(_arg1);
}
override protected function landing():void{
super.landing();
if (((Plane.firstShow) && (!(Config.skiped)))){
Plane.firstShow = false;
BlockTooltip.instance.show(this.x, this.y, toolTip);
};
}
override protected function onClick(_arg1:MouseEvent=null):void{
super.onClick();
_importProduction.show();
}
override public function upgrade():void{
super.upgrade();
upgradeLevel = _upgrade;
}
}
}//package vehicles
Section 492
//PlaneTemplate (vehicles.PlaneTemplate)
package vehicles {
import flash.display.*;
public dynamic class PlaneTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
public function PlaneTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
body.mouseEnabled = (body.mouseChildren = false);
}
}
}//package vehicles
Section 493
//LeaderboardItem (vkontakte.ui.LeaderboardItem)
package vkontakte.ui {
import flash.events.*;
import flash.display.*;
import flash.system.*;
import flash.utils.*;
import flash.net.*;
import utils.*;
import caurina.transitions.properties.*;
import caurina.transitions.*;
import com.adobe.crypto.*;
public class LeaderboardItem extends LeaderboardItemTemplate {
private var _imagePath:String;// = ""
private var _delay:Number;// = 0
private var _loader:URLLoader;
private var _id:String;
public function LeaderboardItem(_arg1:XML, _arg2:Number){
ColorShortcuts.init();
Fonts.applyDefaultFormat(score);
Fonts.applyDefaultFormat(title);
Fonts.applyDefaultFormat(place);
this.score.text = _arg1.score;
this.title.text = _arg1.user_name;
this.place.text = String(_arg2);
_delay = _arg2;
this.score.mouseEnabled = (this.title.mouseEnabled = (this.place.mouseEnabled = false));
this.place.text = String(_arg2);
getInfo(_arg1.user_id);
this.addEventListener(MouseEvent.CLICK, gotoUserPage, false, 0, true);
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_OVER, over, false, 0, true);
this.addEventListener(MouseEvent.MOUSE_OUT, out, false, 0, true);
}
private function unableToLoadPhoto(_arg1:IOErrorEvent):void{
}
private function out(_arg1:MouseEvent):void{
Tweener.addTween(this, {_brightness:0, time:0.3});
}
private function loadImage():void{
_loader.load(new URLRequest(_imagePath));
}
private function photoLoaded(_arg1:Event):void{
_arg1.stopPropagation();
var _local2:Bitmap = Bitmap(_arg1.target.content);
this.image.avatar.addChild(_local2);
}
private function over(_arg1:MouseEvent):void{
Tweener.addTween(this, {_brightness:0.5, time:0.3});
}
public function getInfo(_arg1:Object, _arg2:String="photo"):void{
var _local3:String = ((_arg1 is Array)) ? _arg1.join(",") : String(_arg1);
_id = _local3;
var _local4 = ((((((((("api_id=" + Config.API_ID) + "&fields=") + _arg2) + "&method=getProfiles") + "&uids=") + _local3) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0");
var _local5:String = (((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "fields=") + _arg2) + "method=getProfiles") + "test_mode=") + Config.TEST_MODE) + "uids=") + _local3) + "v=2.0") + Config.API_SECRET);
var _local6:String = ((((Config.api + "?") + _local4) + "&sig=") + MD5.hash(_local5));
_loader = new URLLoader();
_imagePath = _local6;
_loader.addEventListener(Event.COMPLETE, userInfoLoaded);
setTimeout(loadImage, Math.ceil(((1200 / 3) * _delay)));
}
private function gotoUserPage(_arg1:MouseEvent):void{
navigateToURL(new URLRequest(("http://vkontakte.ru/id" + _id)), "_blank");
}
private function userInfoLoaded(_arg1:Event):void{
_arg1.stopPropagation();
var _local2:XML = XML(_arg1.target.data);
var _local3:Loader = new Loader();
_local3.contentLoaderInfo.addEventListener(Event.COMPLETE, photoLoaded);
_local3.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, unableToLoadPhoto);
var _local4:LoaderContext = new LoaderContext(true);
_local3.load(new URLRequest(_local2.user.photo), _local4);
}
}
}//package vkontakte.ui
Section 494
//VLeaderBoard (vkontakte.ui.VLeaderBoard)
package vkontakte.ui {
import flash.events.*;
import flash.display.*;
import flash.geom.*;
import flash.utils.*;
import flash.net.*;
import utils.*;
import caurina.transitions.*;
import com.adobe.crypto.*;
public class VLeaderBoard extends VLeaderboardTemplate {
private var _itemsContainer:MovieClip;
private var dragging:Boolean;// = false
private var scrollTimer:Timer;
public static var instance:VLeaderBoard;
public function VLeaderBoard(){
_itemsContainer = new MovieClip();
addChild(_itemsContainer);
alpha = 0;
visible = false;
_itemsContainer.mask = _mask;
closeBtn.addEventListener(MouseEvent.CLICK, hide, false, 0, true);
sliderBtn.buttonMode = true;
sliderBtn.addEventListener(MouseEvent.MOUSE_DOWN, startScroll, false, 0, true);
addEventListener(MouseEvent.MOUSE_UP, mouseUp, false, 0, true);
scrollTimer = new Timer(10);
preloader.visible = false;
instance = this;
}
private function hide(_arg1:MouseEvent=null):void{
var event = _arg1;
Tweener.addTween(this, {alpha:0, time:0.5, onComplete:function ():void{
this.visible = false;
clearList();
}});
}
private function clearList():void{
var _local1:int = _itemsContainer.numChildren;
while (_local1--) {
_itemsContainer.removeChildAt(_local1);
};
}
private function mouseUp(_arg1:MouseEvent):void{
if (dragging){
dragging = false;
sliderBtn.stopDrag();
scrollTimer.stop();
scrollTimer.removeEventListener(TimerEvent.TIMER, scroll, true);
};
}
public function getLeaderBoard():void{
var _local1 = (((((("api_id=" + Config.API_ID) + "&method=") + "getHighScores") + "&test_mode=") + Config.TEST_MODE) + "&v=2.0");
var _local2:String = ((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "method=") + "getHighScores") + "test_mode=") + Config.TEST_MODE) + "v=2.0") + Config.API_SECRET);
var _local3:String = ((((Config.api + "?") + _local1) + "&sig=") + MD5.hash(_local2));
var _local4:URLLoader = new URLLoader();
_local4.addEventListener(Event.COMPLETE, createList);
_local4.load(new URLRequest(_local3));
}
private function scroll(_arg1:TimerEvent=null):void{
_itemsContainer.cacheAsBitmap = true;
var _local2:int = ((100 / 236) * (sliderBtn.y - 68));
var _local3:Number = Number(_itemsContainer);
var _local4:Number = Number(((((_mask.height - 10) - _itemsContainer.height) / 100) * _local2));
Tweener.addTween(_itemsContainer, {y:_local4, time:0, transition:"linear"});
}
private function startScroll(_arg1:MouseEvent):void{
if (_mask.height < _itemsContainer.height){
sliderBtn.startDrag(false, new Rectangle(534, 68, 0, 236));
dragging = true;
scrollTimer.addEventListener(TimerEvent.TIMER, scroll, false, 0, true);
scrollTimer.start();
};
}
private function createList(_arg1:Event):void{
var _local4:LeaderboardItem;
_arg1.stopPropagation();
preloader.visible = false;
var _local2:XML = XML(_arg1.target.data);
clearList();
var _local3:int;
while (_local3 < _local2.children().length()) {
_local4 = new LeaderboardItem(_local2.score_info[_local3], (_local3 + 1));
_local4.x = 27;
_local4.y = (70 + (55 * _local3));
_local4.alpha = 0;
_itemsContainer.addChild(_local4);
Tweener.addTween(_local4, {alpha:1, time:0.5, delay:(0.05 * _local3)});
_local3++;
};
}
public function show():void{
visible = true;
Tweener.addTween(this, {alpha:1, time:0.5});
preloader.visible = true;
getLeaderBoard();
}
}
}//package vkontakte.ui
Section 495
//DataProvider (vkontakte.DataProvider)
package vkontakte {
import flash.events.*;
import flash.net.*;
import utils.*;
import com.adobe.crypto.*;
public class DataProvider {
private static var _loader:URLLoader;
public static var fb_uid:String = "781258757";
public function DataProvider(){
_loader = new URLLoader();
_loader.addEventListener(Event.COMPLETE, completeLoading);
}
public static function getMyScore():void{
var _local1 = ((((((("api_id=" + Config.API_ID) + "&method=") + "getVariable") + "&key=100") + "&test_mode=") + Config.TEST_MODE) + "&v=2.0");
var _local2:String = (((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "key=100") + "method=") + "getVariable") + "test_mode=") + Config.TEST_MODE) + "v=2.0") + Config.API_SECRET);
var _local3:String = ((((Config.api + "?") + _local1) + "&sig=") + MD5.hash(_local2));
_loader.load(new URLRequest(_local3));
}
private static function completeLoading(_arg1:Event):void{
trace(_arg1.target.data);
}
public static function sendFBScore(_arg1:Number):void{
var _local2 = "http://en.facebook.promo.services.alawar.com/scores.php";
var _local3:URLLoader = new URLLoader();
_local3.addEventListener(Event.COMPLETE, completeHandler, false, 0, true);
var _local4:URLRequest = new URLRequest(_local2);
var _local5:URLVariables = new URLVariables();
_local5.cmd = "send";
_local5.score = _arg1;
_local5.user_id = fb_uid;
_local4.data = _local5;
_local3.load(_local4);
}
public static function completeHandler(_arg1:Event):void{
trace(("Facebook score has sent " + _arg1.target.data));
}
public static function sendScore(_arg1:Number):void{
var _local2 = (((((((("api_id=" + Config.API_ID) + "&method=") + "setUserScore") + "&score=") + _arg1) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0");
var _local3:String = ((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "method=") + "setUserScore") + "score=") + _arg1) + "test_mode=") + Config.TEST_MODE) + "v=2.0") + Config.API_SECRET);
var _local4:String = ((((Config.api + "?") + _local2) + "&sig=") + MD5.hash(_local3));
_loader.load(new URLRequest(_local4));
}
public static function sendMyScore(_arg1:Number):void{
var _local2 = ((((((((("api_id=" + Config.API_ID) + "&method=") + "putVariable") + "&key=100") + "&value=") + _arg1) + "&test_mode=") + Config.TEST_MODE) + "&v=2.0");
var _local3:String = (((((((((((Config.VIEWER_ID + "api_id=") + Config.API_ID) + "key=100") + "method=") + "putVariable") + "test_mode=") + Config.TEST_MODE) + "v=2.0") + "value=") + _arg1) + Config.API_SECRET);
var _local4:String = ((((Config.api + "?") + _local2) + "&sig=") + MD5.hash(_local3));
_loader.load(new URLRequest(_local4));
}
}
}//package vkontakte
Section 496
//_activeButtonStyleStyle (_activeButtonStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _activeButtonStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeButtonStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".activeButtonStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
};
};
}
}
}//package
Section 497
//_activeTabStyleStyle (_activeTabStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _activeTabStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeTabStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".activeTabStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
};
};
}
}
}//package
Section 498
//_alertButtonStyleStyle (_alertButtonStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _alertButtonStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".alertButtonStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".alertButtonStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.color = 734012;
};
};
}
}
}//package
Section 499
//_comboDropdownStyle (_comboDropdownStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _comboDropdownStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".comboDropdown");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".comboDropdown", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.shadowDirection = "center";
this.fontWeight = "normal";
this.dropShadowEnabled = true;
this.leading = 0;
this.backgroundColor = 0xFFFFFF;
this.shadowDistance = 1;
this.cornerRadius = 0;
this.borderThickness = 0;
this.paddingLeft = 5;
this.paddingRight = 5;
};
};
}
}
}//package
Section 500
//_dataGridStylesStyle (_dataGridStylesStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _dataGridStylesStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dataGridStyles");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".dataGridStyles", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
};
};
}
}
}//package
Section 501
//_dateFieldPopupStyle (_dateFieldPopupStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _dateFieldPopupStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dateFieldPopup");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".dateFieldPopup", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.dropShadowEnabled = true;
this.backgroundColor = 0xFFFFFF;
this.borderThickness = 0;
};
};
}
}
}//package
Section 502
//_errorTipStyle (_errorTipStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _errorTipStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".errorTip");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".errorTip", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
this.borderStyle = "errorTipRight";
this.paddingTop = 4;
this.borderColor = 13510953;
this.color = 0xFFFFFF;
this.fontSize = 9;
this.shadowColor = 0;
this.paddingLeft = 4;
this.paddingBottom = 4;
this.paddingRight = 4;
};
};
}
}
}//package
Section 503
//_globalStyle (_globalStyle)
package {
import mx.core.*;
import mx.styles.*;
import mx.skins.halo.*;
public class _globalStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("global");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration("global", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fillColor = 0xFFFFFF;
this.kerning = false;
this.iconColor = 0x111111;
this.textRollOverColor = 2831164;
this.horizontalAlign = "left";
this.shadowCapColor = 14015965;
this.backgroundAlpha = 1;
this.filled = true;
this.textDecoration = "none";
this.roundedBottomCorners = true;
this.fontThickness = 0;
this.focusBlendMode = "normal";
this.fillColors = [0xFFFFFF, 0xCCCCCC, 0xFFFFFF, 0xEEEEEE];
this.horizontalGap = 8;
this.borderCapColor = 9542041;
this.buttonColor = 7305079;
this.indentation = 17;
this.selectionDisabledColor = 0xDDDDDD;
this.closeDuration = 250;
this.embedFonts = false;
this.paddingTop = 0;
this.letterSpacing = 0;
this.focusAlpha = 0.4;
this.bevel = true;
this.fontSize = 10;
this.shadowColor = 0xEEEEEE;
this.borderAlpha = 1;
this.paddingLeft = 0;
this.fontWeight = "normal";
this.indicatorGap = 14;
this.focusSkin = HaloFocusRect;
this.dropShadowEnabled = false;
this.leading = 2;
this.borderSkin = HaloBorder;
this.fontSharpness = 0;
this.modalTransparencyDuration = 100;
this.borderThickness = 1;
this.backgroundSize = "auto";
this.borderStyle = "inset";
this.borderColor = 12040892;
this.fontAntiAliasType = "advanced";
this.errorColor = 0xFF0000;
this.shadowDistance = 2;
this.horizontalGridLineColor = 0xF7F7F7;
this.stroked = false;
this.modalTransparencyColor = 0xDDDDDD;
this.cornerRadius = 0;
this.verticalAlign = "top";
this.textIndent = 0;
this.fillAlphas = [0.6, 0.4, 0.75, 0.65];
this.verticalGridLineColor = 14015965;
this.themeColor = 40447;
this.version = "3.0.0";
this.shadowDirection = "center";
this.modalTransparency = 0.5;
this.repeatInterval = 35;
this.openDuration = 250;
this.textAlign = "left";
this.fontFamily = "Verdana";
this.textSelectedColor = 2831164;
this.paddingBottom = 0;
this.strokeWidth = 1;
this.fontGridFitType = "pixel";
this.horizontalGridLines = false;
this.useRollOver = true;
this.verticalGridLines = true;
this.repeatDelay = 500;
this.fontStyle = "normal";
this.dropShadowColor = 0;
this.focusThickness = 2;
this.verticalGap = 6;
this.disabledColor = 11187123;
this.paddingRight = 0;
this.focusRoundedCorners = "tl tr bl br";
this.borderSides = "left top right bottom";
this.disabledIconColor = 0x999999;
this.modalTransparencyBlur = 3;
this.color = 734012;
this.selectionDuration = 250;
this.highlightAlphas = [0.3, 0];
};
};
}
}
}//package
Section 504
//_headerDateTextStyle (_headerDateTextStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _headerDateTextStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDateText");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".headerDateText", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
this.textAlign = "center";
};
};
}
}
}//package
Section 505
//_headerDragProxyStyleStyle (_headerDragProxyStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _headerDragProxyStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDragProxyStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".headerDragProxyStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
};
};
}
}
}//package
Section 506
//_linkButtonStyleStyle (_linkButtonStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _linkButtonStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".linkButtonStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".linkButtonStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.paddingTop = 2;
this.paddingLeft = 2;
this.paddingBottom = 2;
this.paddingRight = 2;
};
};
}
}
}//package
Section 507
//_opaquePanelStyle (_opaquePanelStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _opaquePanelStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".opaquePanel");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".opaquePanel", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.borderColor = 0xFFFFFF;
this.backgroundColor = 0xFFFFFF;
this.headerColors = [0xE7E7E7, 0xD9D9D9];
this.footerColors = [0xE7E7E7, 0xC7C7C7];
this.borderAlpha = 1;
};
};
}
}
}//package
Section 508
//_plainStyle (_plainStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _plainStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".plain");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".plain", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.paddingTop = 0;
this.backgroundColor = 0xFFFFFF;
this.backgroundImage = "";
this.horizontalAlign = "left";
this.paddingLeft = 0;
this.paddingBottom = 0;
this.paddingRight = 0;
};
};
}
}
}//package
Section 509
//_popUpMenuStyle (_popUpMenuStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _popUpMenuStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".popUpMenu");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".popUpMenu", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "normal";
this.textAlign = "left";
};
};
}
}
}//package
Section 510
//_richTextEditorTextAreaStyleStyle (_richTextEditorTextAreaStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _richTextEditorTextAreaStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".richTextEditorTextAreaStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".richTextEditorTextAreaStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
};
};
}
}
}//package
Section 511
//_swatchPanelTextFieldStyle (_swatchPanelTextFieldStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _swatchPanelTextFieldStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".swatchPanelTextField");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".swatchPanelTextField", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.borderStyle = "inset";
this.borderColor = 14015965;
this.highlightColor = 12897484;
this.backgroundColor = 0xFFFFFF;
this.shadowCapColor = 14015965;
this.shadowColor = 14015965;
this.paddingLeft = 5;
this.buttonColor = 7305079;
this.borderCapColor = 9542041;
this.paddingRight = 5;
};
};
}
}
}//package
Section 512
//_textAreaHScrollBarStyleStyle (_textAreaHScrollBarStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _textAreaHScrollBarStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaHScrollBarStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".textAreaHScrollBarStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
};
};
}
}
}//package
Section 513
//_textAreaVScrollBarStyleStyle (_textAreaVScrollBarStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _textAreaVScrollBarStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaVScrollBarStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".textAreaVScrollBarStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
};
};
}
}
}//package
Section 514
//_todayStyleStyle (_todayStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _todayStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".todayStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".todayStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.color = 0xFFFFFF;
this.textAlign = "center";
};
};
}
}
}//package
Section 515
//_weekDayStyleStyle (_weekDayStyleStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _weekDayStyleStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".weekDayStyle");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".weekDayStyle", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
this.textAlign = "center";
};
};
}
}
}//package
Section 516
//_windowStatusStyle (_windowStatusStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _windowStatusStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStatus");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".windowStatus", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.color = 0x666666;
};
};
}
}
}//package
Section 517
//_windowStylesStyle (_windowStylesStyle)
package {
import mx.core.*;
import mx.styles.*;
public class _windowStylesStyle {
public static function init(_arg1:IFlexModuleFactory):void{
var fbs = _arg1;
var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStyles");
if (!style){
style = new CSSStyleDeclaration();
StyleManager.setStyleDeclaration(".windowStyles", style, false);
};
if (style.defaultFactory == null){
style.defaultFactory = function ():void{
this.fontWeight = "bold";
};
};
}
}
}//package
Section 518
//action_sell_buy (action_sell_buy)
package {
import flash.media.*;
public dynamic class action_sell_buy extends Sound {
}
}//package
Section 519
//action_upgrade (action_upgrade)
package {
import flash.media.*;
public dynamic class action_upgrade extends Sound {
}
}//package
Section 520
//action_watering (action_watering)
package {
import flash.media.*;
public dynamic class action_watering extends Sound {
}
}//package
Section 521
//action_well (action_well)
package {
import flash.media.*;
public dynamic class action_well extends Sound {
}
}//package
Section 522
//action_well_auto (action_well_auto)
package {
import flash.media.*;
public dynamic class action_well_auto extends Sound {
}
}//package
Section 523
//airplane_flyin (airplane_flyin)
package {
import flash.media.*;
public dynamic class airplane_flyin extends Sound {
}
}//package
Section 524
//ArrowTemplate (ArrowTemplate)
package {
import flash.display.*;
public dynamic class ArrowTemplate extends MovieClip {
}
}//package
Section 525
//BackgroundTemplate (BackgroundTemplate)
package {
import flash.display.*;
public dynamic class BackgroundTemplate extends MovieClip {
}
}//package
Section 526
//BlockTooltipTemplate (BlockTooltipTemplate)
package {
import flash.display.*;
public dynamic class BlockTooltipTemplate extends MovieClip {
public var help:MovieClip;
public var body:MovieClip;
public var lock:MovieClip;
}
}//package
Section 527
//cage_breaking (cage_breaking)
package {
import flash.media.*;
public dynamic class cage_breaking extends Sound {
}
}//package
Section 528
//cage_broke_bear_flee (cage_broke_bear_flee)
package {
import flash.media.*;
public dynamic class cage_broke_bear_flee extends Sound {
}
}//package
Section 529
//cage_click (cage_click)
package {
import flash.media.*;
public dynamic class cage_click extends Sound {
}
}//package
Section 530
//CakeHouseTemplate (CakeHouseTemplate)
package {
import flash.display.*;
public dynamic class CakeHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 531
//car_came (car_came)
package {
import flash.media.*;
public dynamic class car_came extends Sound {
}
}//package
Section 532
//CarnivalDressHouseTemplate (CarnivalDressHouseTemplate)
package {
import flash.display.*;
public dynamic class CarnivalDressHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 533
//cat_flyout (cat_flyout)
package {
import flash.media.*;
public dynamic class cat_flyout extends Sound {
}
}//package
Section 534
//cat_voice (cat_voice)
package {
import flash.media.*;
public dynamic class cat_voice extends Sound {
}
}//package
Section 535
//CatTemplate (CatTemplate)
package {
import flash.display.*;
public dynamic class CatTemplate extends MovieClip {
public var body:MovieClip;
}
}//package
Section 536
//ChickenTemplate (ChickenTemplate)
package {
import flash.display.*;
public dynamic class ChickenTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
public var hungryProgress:MovieClip;
}
}//package
Section 537
//en_US$core_properties (en_US$core_properties)
package {
import mx.resources.*;
public class en_US$core_properties extends ResourceBundle {
public function en_US$core_properties(){
super("en_US", "core");
}
override protected function getContent():Object{
var _local1:Object = {multipleChildSets_ClassAndInstance:"Multiple sets of visual children have been specified for this component (component definition and component instance).", truncationIndicator:"...", notExecuting:"Repeater is not executing.", versionAlreadyRead:"Compatibility version has already been read.", multipleChildSets_ClassAndSubclass:"Multiple sets of visual children have been specified for this component (base component definition and derived component definition).", viewSource:"View Source", badFile:"File does not exist.", stateUndefined:"Undefined state '{0}'.", versionAlreadySet:"Compatibility version has already been set."};
return (_local1);
}
}
}//package
Section 538
//en_US$skins_properties (en_US$skins_properties)
package {
import mx.resources.*;
public class en_US$skins_properties extends ResourceBundle {
public function en_US$skins_properties(){
super("en_US", "skins");
}
override protected function getContent():Object{
var _local1:Object = {notLoaded:"Unable to load '{0}'."};
return (_local1);
}
}
}//package
Section 539
//en_US$styles_properties (en_US$styles_properties)
package {
import mx.resources.*;
public class en_US$styles_properties extends ResourceBundle {
public function en_US$styles_properties(){
super("en_US", "styles");
}
override protected function getContent():Object{
var _local1:Object = {unableToLoad:"Unable to load style({0}): {1}."};
return (_local1);
}
}
}//package
Section 540
//EndScreenTemplate (EndScreenTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class EndScreenTemplate extends MovieClip {
public var sendScoreBtn:MovieClip;
public var buyBtn:MovieClip;
public var caption:TextField;
public var exitBtn:MovieClip;
}
}//package
Section 541
//enemy_landing (enemy_landing)
package {
import flash.media.*;
public dynamic class enemy_landing extends Sound {
}
}//package
Section 542
//fanfare_aim (fanfare_aim)
package {
import flash.media.*;
public dynamic class fanfare_aim extends Sound {
}
}//package
Section 543
//fanfare_best_time (fanfare_best_time)
package {
import flash.media.*;
public dynamic class fanfare_best_time extends Sound {
}
}//package
Section 544
//fanfare_level_complete (fanfare_level_complete)
package {
import flash.media.*;
public dynamic class fanfare_level_complete extends Sound {
}
}//package
Section 545
//fanfare_medal (fanfare_medal)
package {
import flash.media.*;
public dynamic class fanfare_medal extends Sound {
}
}//package
Section 546
//Farm2 (Farm2)
package {
import AAPI.*;
import flash.events.*;
import com.facebook.events.*;
import ru.rambler.games.interfaces.core.*;
import ru.rambler.games.events.*;
import flash.text.*;
import ru.rambler.games.interfaces.net.*;
import ru.rambler.games.interfaces.ui.*;
import ru.rambler.games.interfaces.game.*;
import caurina.transitions.*;
import flash.display.*;
import com.facebook.data.users.*;
import flash.net.*;
import flash.media.*;
import com.facebook.net.*;
import com.facebook.utils.*;
import flash.utils.*;
import ui.*;
import vkontakte.*;
import utils.*;
import mochi.as3.*;
import facebook.ui.*;
import com.facebook.commands.users.*;
import ru.rambler.games.debug.*;
import game.*;
public class Farm2 extends MovieClip implements IGameAAPI {
private var musicLoaded:Boolean;// = false
private var musicCurrent:Number;// = 0
private var country:String;// = "RU"
private var gameMusicPath:String;// = "music/music_game.mp3"
private var api:Boolean;// = false
private var adContainer:MovieClip;
private var musicTotal:Number;// = 0
private var ad_loaded:Boolean;// = true
private var preloader:FarmPreloader;
private var farmTotal:Number;// = 0
private var _loader:ICore;
private var app:Object;
private var _controller:IGameController;
private var _wrapper:IWrapperAAPI;
private var language:String;// = "ru"
private var farmLoaded:Boolean;// = false
public var dataProvider:DataProvider;
private var _uiManager:IUIManager;
private var xmlLoaded:Boolean;// = true
private var _connection:IConnection;
public static const DOCUMENT_CLASS:String = "Farm3Africa";
public static var mochi_Leaderboard:String = "955a8d9fbf9d39c7";
public static var connection_name:String;
public static var _loaderInfo:Object;
public static var facebookSession:FacebookSessionUtil;
public static var mail_ru_connection:LocalConnection;
public static var portal:String = "default";
public static var instance:Farm2;
public static var mochiads_game_id:String = "9bc7f9d6a7f624e8";
public function Farm2(){
instance = this;
stop();
addEventListener(Event.ADDED_TO_STAGE, onAdded);
}
public function set wrapperRef(_arg1:IWrapperAAPI):void{
_wrapper = _arg1;
}
public function gameGoto(_arg1:String):Boolean{
if (app == null){
return (false);
};
app.goto(_arg1);
return (false);
}
private function farmLogoError(_arg1:IOErrorEvent=null):void{
}
public function closeFBAlert():void{
try {
facebookSession.validateLogin();
} catch(error:Error) {
trace(("facebookSession.validateLogin(): " + error));
};
ad_loaded = true;
initGame();
}
public function destroy(... _args):void{
if (portal == "mail.ru"){
mail_ru_connection.close();
};
GameController.instance.destroy();
}
public function gameReset():Boolean{
if (app == null){
return (false);
};
app.resetGame();
return (false);
}
public function gameContinue():Boolean{
return (false);
}
public function handle_waitingForLogin(_arg1:FacebookEvent):void{
var _local2:AlertWindow = new AlertWindow();
addChild(_local2);
_local2.show();
}
private function onInit(_arg1:Event):void{
loaderInfo.removeEventListener(Event.INIT, onInit);
}
private function logoLoaded(_arg1:Event=null):void{
preloader.addChild(_arg1.target.content);
_arg1.target.content.x = 0;
_arg1.target.content.y = (425 - _arg1.target.content.height);
}
public function closeGame(_arg1:MouseEvent=null):void{
_uiManager.closeGame();
}
private function initRambler(_arg1:Event=null):void{
if (!isOnline){
_loader = new SingleplayerCoreEmulator(this);
init();
trace("offline rambler");
} else {
trace("online rambler");
};
_connection.connect();
FarmPreloader.instance.rambler.visible = true;
}
private function error(_arg1:IOErrorEvent=null):void{
}
public function pauseOff():Boolean{
if (app == null){
return (false);
};
app.resume();
return (true);
}
private function gameJacketSecurityOK(_arg1:Event):void{
ad_loaded = true;
adContainer.visible = false;
initGame();
}
protected function get isOnline():Boolean{
return (!((_loader == null)));
}
public function gameJacketError(_arg1:Object):void{
ad_loaded = true;
adContainer.visible = false;
initGame();
}
private function initGame(_arg1:Event=null):void{
var event = _arg1;
if (((((xmlLoaded) && (farmLoaded))) && (musicLoaded))){
if (ad_loaded == true){
preloader.progress.line.gotoAndStop(100);
Tweener.addTween(preloader, {alpha:0, time:0.8, delay:0.1, onComplete:function ():void{
this.visible = false;
}});
loadConfig();
};
};
}
public function sendRamblerScore(_arg1:Number=0):void{
(_connection as ISingleplayerConnection).sendResult(_arg1, false);
}
public function set loader(_arg1:ICore):void{
_loader = _arg1;
}
private function closeRamblerGame(_arg1:MouseEvent):void{
_uiManager.closeGame();
}
private function startRamblerGame():void{
readyRambler();
trace("Rambler game is ready for start");
Config.sharedName = ("sdsfwefdsfs" + _connection.clientObject.userObject.login);
readSharedData();
ad_loaded = true;
initGame();
}
private function xmlLoadedHandler(_arg1:Event):void{
var _local2:URLLoader = URLLoader(_arg1.target);
var _local3:XML = new XML(_local2.data);
_local3.ignoreWhitespace = true;
Config.currentLanguage = _local3;
xmlLoaded = true;
initGame();
}
private function gameMusicLoaded(_arg1:Event):void{
musicLoaded = true;
initGame();
}
private function mochiAdsLoaded(... _args):void{
var params = _args;
ad_loaded = true;
Tweener.addTween(adContainer, {alpha:0, time:0.1, onComplete:function ():void{
adContainer.visible = false;
}});
initGame();
}
public function init():void{
_connection = _loader.connection;
_connection.addEventListener(ConnectionEvent.CONNECT, connectRambler);
}
private function loadFonts():void{
var _local1:FontLoader = new FontLoader();
_local1.loadFonts(Config.fontsSWFPath, [Fonts.Arial]);
_local1.addEventListener(Event.COMPLETE, onFontsLoaded);
}
private function loadSoundError(_arg1:IOErrorEvent=null):void{
musicLoaded = true;
SoundsList.gameMusicSound = null;
initGame();
}
private function gameJacketSecurityError(_arg1:Event):void{
var _local2:TextField = new TextField();
_local2.width = 300;
_local2.htmlText = String("Security Error. <a href='http://www.alawar.com/download/FarmFrenzyPizzaParty_10105.exe'>Download full version.</a>");
}
public function setVars(_arg1:String):Boolean{
return (false);
}
private function showGameJacketAd():void{
var _local1:Object = new Object();
var _local2:MovieClip = new MovieClip();
adContainer.addChild(_local2);
_local1.adDisplayObject = _local2;
_local1.bgColour = 5090551;
_local1.bgAlpha = 1;
_local1.errorFunction = gameJacketError;
_local1.errorParameters = {testVar1:"Error Text", testVar2:0x0300};
_local1.endFunction = gameJacketEnd;
_local1.endParameters = {testVar1:"End Text", testVar2:6};
}
private function loadConfig():void{
var onConfigLoaded:Function = function (_arg1:Event):void{
main();
};
main();
}
private function onFontsLoaded(_arg1:Event):void{
trace("onFontsLoaded");
loadConfig();
}
private function connectRambler(_arg1:ConnectionEvent):void{
trace("Rambler connection is ok");
startRamblerGame();
}
public function MuteOn():Boolean{
if (app == null){
return (false);
};
app.muteon();
return (true);
}
private function showInstallMessage():void{
var _local1:InstallWindow = new InstallWindow();
addChild(_local1);
}
private function main():void{
nextFrame();
if (((_wrapper) && (api))){
_wrapper.gameBreak("GAME_LOADED", "");
};
var _local1:Class = Class(getDefinitionByName(DOCUMENT_CLASS));
if (_local1){
app = new (_local1);
addChildAt((app as DisplayObject), 0);
};
}
private function handle_connect(_arg1:FacebookEvent):void{
trace("connect");
var _local2:FacebookCall = facebookSession.facebook.post(new GetInfo([facebookSession.facebook.uid], ["name", "pic_square"]));
_local2.addEventListener(FacebookEvent.COMPLETE, handle_getInfoComplete, false, 0, true);
}
public function MuteOff():Boolean{
if (app == null){
return (false);
};
app.muteoff();
return (true);
}
private function loadLanguage():void{
var xmlLoader:URLLoader = new URLLoader();
var xmlRequest:URLRequest = new URLRequest((((("localized/" + language) + "-") + country) + "/text/text.xml"));
var logoLoader:Loader = new Loader();
var logoRequest:URLRequest = new URLRequest((((("localized/" + language) + "-") + country) + "/images/logo.png"));
logoLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, farmLogoLoaded, false, 0, true);
logoLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, error, false, 0, true);
xmlLoader.addEventListener(Event.COMPLETE, xmlLoadedHandler);
logoLoader.addEventListener(Event.COMPLETE, farmLogoLoaded);
try {
xmlLoader.load(xmlRequest);
} catch(error:Error) {
};
try {
logoLoader.load(logoRequest);
} catch(error:Error) {
};
}
private function loadMusic():void{
var _local1:URLRequest = new URLRequest(gameMusicPath);
SoundsList.gameMusicSound = new Sound();
SoundsList.gameMusicSound.addEventListener(Event.COMPLETE, gameMusicLoaded, false, 0, true);
SoundsList.gameMusicSound.addEventListener(IOErrorEvent.IO_ERROR, loadSoundError, false, 0, true);
SoundsList.gameMusicSound.addEventListener(ProgressEvent.PROGRESS, progressMusic);
SoundsList.gameMusicSound.load(_local1);
}
private function onAdded(_arg1:Event):void{
var bitmapData:BitmapData;
var bg:Bitmap;
var event = _arg1;
removeEventListener(Event.ADDED_TO_STAGE, onAdded);
stage.showDefaultContextMenu = false;
stage.scaleMode = StageScaleMode.NO_SCALE;
preloader = new FarmPreloader();
addChild(preloader);
var gc:GameController = new GameController();
_loaderInfo = loaderInfo.parameters;
if (portal != "rambler"){
readSharedData();
};
try {
if (portal == "mail.ru"){
mail_ru_connection = new LocalConnection();
mail_ru_connection.client = this;
connection_name = loaderInfo.parameters.lcom_name;
mail_ru_connection.connect((loaderInfo.parameters.lcom_name + "Back"));
};
if (loaderInfo.parameters.link != undefined){
Config.downloadLink = loaderInfo.parameters.link;
};
if (loaderInfo.parameters.alawar_f != undefined){
if (loaderInfo.parameters.alawar_f == "true"){
Config.downloadable = false;
};
};
if (loaderInfo.parameters.close_f != undefined){
Config.closeFunction = loaderInfo.parameters.close_f;
};
if (loaderInfo.parameters.target != undefined){
Config.target = loaderInfo.parameters.target;
};
if (loaderInfo.parameters.use_cheats != undefined){
if (loaderInfo.parameters.use_cheats == "true"){
Config.use_cheats = true;
};
};
if (((!((loaderInfo.parameters.language == undefined))) && (!((loaderInfo.parameters.country == undefined))))){
xmlLoaded = false;
language = loaderInfo.parameters.language;
Config.language = language;
country = loaderInfo.parameters.country;
loadLanguage();
};
} catch(e:Error) {
trace(("Ошибка " + e));
};
if (language == "ru"){
preloader.alawar.gotoAndStop("ru");
} else {
preloader.alawar.gotoAndStop("en");
};
var ldr:Loader = new Loader();
ldr.load(new URLRequest("logos/logo.png"));
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, logoLoaded, false, 0, true);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, farmLogoError, false, 0, true);
loadMusic();
loaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
loaderInfo.addEventListener(Event.COMPLETE, farmLoadedHandler);
if (portal == "mochi"){
ad_loaded = false;
adContainer = new MovieClip();
bitmapData = new BitmapData(570, 430, false, 4283280631);
bg = new Bitmap(bitmapData);
adContainer.addChild(bg);
addChild(adContainer);
MochiAd.showPreGameAd({clip:adContainer, id:mochiads_game_id, res:"570x430", ad_failed:mochiAdsLoaded, ad_finished:mochiAdsLoaded, color:16630663, background:5090551, outline:0xFFFFFF, ad_skipped:mochiAdsLoaded, ad_failed:mochiAdsLoaded});
};
if (portal == "rambler"){
addEventListener(Event.ADDED_TO_STAGE, initRambler, false, 0, true);
ad_loaded = false;
};
if (portal == "facebook"){
ad_loaded = false;
dataProvider = new DataProvider();
facebookSession = new FacebookSessionUtil("c01c618ce47f9dea9edcc6ec04c93169", "845801b56b8354320d1eeab060c7ad73", stage.loaderInfo);
facebookSession.addEventListener(FacebookEvent.WAITING_FOR_LOGIN, handle_waitingForLogin, false, 0, true);
facebookSession.addEventListener(FacebookEvent.CONNECT, handle_connect, false, 0, true);
facebookSession.login();
};
if (portal == "vkontakte"){
dataProvider = new DataProvider();
Config.IS_APP_USER = 0;
Config.IS_APP_USER = loaderInfo.parameters.is_app_user;
if (loaderInfo.parameters.viewer_id != undefined){
Config.VIEWER_ID = loaderInfo.parameters.viewer_id;
};
Config.downloadable = false;
if (Config.IS_APP_USER != 1){
ad_loaded = false;
showInstallMessage();
};
};
api = (String(loaderInfo.parameters.api) == "true");
loaderInfo.addEventListener(Event.INIT, onInit);
}
public function gameJacketEnd(_arg1:Object):void{
var endObject = _arg1;
ad_loaded = true;
Tweener.addTween(adContainer, {alpha:0, time:0.1, onComplete:function ():void{
adContainer.visible = false;
}});
initGame();
}
private function readSharedData():void{
try {
Config.sharedObject = SharedObject.getLocal(Config.sharedName);
if (!Config.sharedObject.data.played){
Config.sharedObject.data.nodes = Config.nodes;
Config.sharedObject.data.stars = (Config.stars = 0);
Config.sharedObject.data.score = (Config.score = 0);
Config.sharedObject.data.upgrades = (Config.upgrades = new Array(0, 0, 0, 0, 0, 0, 0, 0, 0, 0));
Config.sharedObject.data.level = (Config.level = 1);
Config.sharedObject.data.played = (Config.played = false);
} else {
Config.nodes = Config.sharedObject.data.nodes;
Config.stars = Config.sharedObject.data.stars;
Config.score = Config.sharedObject.data.score;
Config.upgrades = Config.sharedObject.data.upgrades;
Config.level = Config.sharedObject.data.level;
Config.played = Config.sharedObject.data.played;
};
} catch(error:Error) {
};
}
private function handle_getInfoComplete(_arg1:FacebookEvent):void{
var _local2:GetInfoData = GetInfoData(_arg1.data);
var _local3:FacebookUser = FacebookUser(_local2.userCollection.getItemAt(0));
trace(_local3.pic_square);
DataProvider.fb_uid = _local3.uid;
trace(((_local3.name + " ") + _local3.uid));
}
private function farmLogoLoaded(_arg1:Event=null):void{
FarmPreloader.externalLogo = new Sprite();
FarmPreloader.externalLogo.addChild(_arg1.target.content);
FarmPreloader.externalLogo.x = 0;
FarmPreloader.externalLogo.y = 26;
}
private function farmLoadedHandler(_arg1:Event=null):void{
farmLoaded = true;
initGame();
}
private function readyRambler():void{
if (isOnline){
(_connection as ISingleplayerConnection).ready();
};
}
private function progressHandler(_arg1:ProgressEvent):void{
var _local2:uint = (_arg1.bytesLoaded + musicCurrent);
var _local3:uint = (_arg1.bytesTotal + musicTotal);
if (api){
preloader.progress.line.gotoAndStop(Math.ceil(((_local2 / _local3) * 100)));
} else {
if (_wrapper != null){
_wrapper.loadBroadcast(Math.round(((_local2 / _local3) * 100)));
};
};
}
public function pauseOn():Boolean{
if (app == null){
return (false);
};
app.pause();
return (true);
}
private function progressMusic(_arg1:ProgressEvent):void{
musicCurrent = _arg1.bytesLoaded;
musicTotal = _arg1.bytesTotal;
}
}
}//package
Section 547
//Farm3Africa (Farm3Africa)
package {
import flash.events.*;
import flash.display.*;
import game.assets.*;
import ui.*;
import shop.*;
import flash.net.*;
import facebook.ui.*;
import map.*;
import vkontakte.ui.*;
import game.*;
import utils.*;
public class Farm3Africa extends MovieClip {
public var leaderboard:Leaderboard;
private var shopWindow:ShopWindow;
private var arrow:FArrow;
private var uiContainer:MovieClip;
private var mail_ru_connection:LocalConnection;
public var fbLeaderboard:FBLeaderboard;
private var map:MapWindow;
private var endScreen:EndScreen;
public var vkontakteLeaderBoard:VLeaderBoard;
private var gameController:GameController;
private var gameContainer:MovieClip;
private var gameMenu:GameMenu;
private var startScreen:StartScreen;
private var levelBuilder:LevelBuilder;
private var assetsContainer:MovieClip;
public function Farm3Africa(){
var _local1:PlayGround = new PlayGround();
addChild(_local1);
addEventListener(Event.ADDED_TO_STAGE, gameLoaded, false, 0, true);
stop();
}
private function onKey(_arg1:KeyboardEvent):void{
switch (_arg1.keyCode){
case 77:
resetGame();
break;
default:
trace(_arg1.keyCode);
};
}
public function destroy(_arg1:Event=null):void{
}
private function loaded(_arg1:Event=null):void{
startScreen.addChild(_arg1.target.content);
_arg1.target.content.x = 5;
_arg1.target.content.y = (425 - _arg1.target.content.height);
}
private function prepareFPSMeter():void{
}
private function error(_arg1:IOErrorEvent=null):void{
}
public function gameLoaded(_arg1:Event=null):void{
SoundsList.init();
gameController = new GameController();
gameController.addEventListener(GameController.DESTROY_GAME, destroy, false, 0, true);
gameController.addEventListener(GameController.START_GAME, startGame, false, 0, true);
gameContainer = new MovieClip();
addChild(gameContainer);
assetsContainer = new MovieClip();
gameContainer.addChild(assetsContainer);
uiContainer = new MovieClip();
addChild(uiContainer);
levelBuilder = new LevelBuilder();
levelBuilder.container = assetsContainer;
levelBuilder.prepareAllAssets();
startScreen = new StartScreen();
map = new MapWindow();
uiContainer.addChild(map);
uiContainer.addChild(startScreen);
startScreen.show();
shopWindow = new ShopWindow();
uiContainer.addChild(shopWindow);
var _local2:Tooltip = new Tooltip();
uiContainer.addChild(_local2);
var _local3:MapTooltip = new MapTooltip();
uiContainer.addChild(_local3);
var _local4:BlockTooltip = new BlockTooltip();
uiContainer.addChild(_local4);
var _local5:QuitDialog = new QuitDialog();
uiContainer.addChild(_local5);
gameMenu = new GameMenu(this);
endScreen = new EndScreen(this);
new ResumeWindow(this);
arrow = new FArrow(this);
var _local6:Loader = new Loader();
_local6.load(new URLRequest("logos/logo.png"));
_local6.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded, false, 0, true);
_local6.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, error, false, 0, true);
leaderboard = new Leaderboard();
uiContainer.addChild(leaderboard);
if (Farm2.portal == "vkontakte"){
vkontakteLeaderBoard = new VLeaderBoard();
uiContainer.addChild(vkontakteLeaderBoard);
};
if (Farm2.portal == "facebook"){
fbLeaderboard = new FBLeaderboard();
uiContainer.addChild(fbLeaderboard);
};
var _local7:QuitMenu = new QuitMenu();
uiContainer.addChild(_local7);
stage.addEventListener(KeyboardEvent.KEY_DOWN, onKey);
}
public function pause():void{
gameController.pause();
}
public function resetGame():void{
MapTooltip.instance.hide();
GameMenu.instance.hide();
GoalsWindow.instance.visible = false;
PurposesWindow.instance.hide();
shopWindow.finished();
ResultsWindow.instance.visible = false;
GameController.instance.levelCompleted();
GameController.instance.destroy();
StartScreen.instance.show();
}
public function goto(_arg1:String):void{
trace("goto", _arg1);
}
public function resume():void{
gameController.resume();
}
public function startGame(_arg1:Event=null):void{
}
public function muteoff():void{
gameController.muteMusic = false;
gameController.muteSound = false;
}
public function muteon():void{
gameController.muteMusic = true;
gameController.muteSound = true;
}
}
}//package
Section 548
//FlouryCakeHouseTemplate (FlouryCakeHouseTemplate)
package {
import flash.display.*;
public dynamic class FlouryCakeHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 549
//fool_action (fool_action)
package {
import flash.media.*;
public dynamic class fool_action extends Sound {
}
}//package
Section 550
//grizzly_scream (grizzly_scream)
package {
import flash.media.*;
public dynamic class grizzly_scream extends Sound {
}
}//package
Section 551
//house_board_landing (house_board_landing)
package {
import flash.media.*;
public dynamic class house_board_landing extends Sound {
}
}//package
Section 552
//house_click (house_click)
package {
import flash.media.*;
public dynamic class house_click extends Sound {
}
}//package
Section 553
//house_landing (house_landing)
package {
import flash.media.*;
public dynamic class house_landing extends Sound {
}
}//package
Section 554
//IncubatorTemplate (IncubatorTemplate)
package {
import flash.display.*;
public dynamic class IncubatorTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 555
//InstallWindowTemplate (InstallWindowTemplate)
package {
import flash.display.*;
public dynamic class InstallWindowTemplate extends MovieClip {
}
}//package
Section 556
//item_add (item_add)
package {
import flash.media.*;
public dynamic class item_add extends Sound {
}
}//package
Section 557
//item_cancel (item_cancel)
package {
import flash.media.*;
public dynamic class item_cancel extends Sound {
}
}//package
Section 558
//LeaderboardItemTemplate (LeaderboardItemTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class LeaderboardItemTemplate extends MovieClip {
public var score:TextField;
public var place:TextField;
public var title:TextField;
public var image:MovieClip;
}
}//package
Section 559
//MapNodeTemplate (MapNodeTemplate)
package {
import flash.display.*;
public dynamic class MapNodeTemplate extends MovieClip {
public var gold:MovieClip;
public var normal:MovieClip;
public var novel:MovieClip;
public var silver:MovieClip;
public var none:MovieClip;
}
}//package
Section 560
//MapTemplate (MapTemplate)
package {
import flash.display.*;
public dynamic class MapTemplate extends MovieClip {
public var buyBtn:MovieClip;
public var bottomPanel:MovieClip;
public var _shadow:MovieClip;
}
}//package
Section 561
//MapTooltipTempalte (MapTooltipTempalte)
package {
import flash.display.*;
import flash.text.*;
public dynamic class MapTooltipTempalte extends MovieClip {
public var body:MovieClip;
public var caption:TextField;
}
}//package
Section 562
//music_game (music_game)
package {
import flash.media.*;
public dynamic class music_game extends Sound {
}
}//package
Section 563
//music_mainmenu (music_mainmenu)
package {
import flash.media.*;
public dynamic class music_mainmenu extends Sound {
}
}//package
Section 564
//PolarBearTemplate (PolarBearTemplate)
package {
import flash.display.*;
public dynamic class PolarBearTemplate extends MovieClip {
public var body:MovieClip;
public var hit:MovieClip;
public var buildCage:MovieClip;
public function PolarBearTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
buildCage.mouseEnabled = false;
buildCage.mouseChildren = false;
}
}
}//package
Section 565
//PowderedHouseTemplate (PowderedHouseTemplate)
package {
import flash.display.*;
public dynamic class PowderedHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 566
//PreloaderTemplate (PreloaderTemplate)
package {
import flash.display.*;
public dynamic class PreloaderTemplate extends MovieClip {
public var alawar:MovieClip;
public var rambler:MovieClip;
public var progress:MovieClip;
}
}//package
Section 567
//product_crack (product_crack)
package {
import flash.media.*;
public dynamic class product_crack extends Sound {
}
}//package
Section 568
//product_landing (product_landing)
package {
import flash.media.*;
public dynamic class product_landing extends Sound {
}
}//package
Section 569
//product_take (product_take)
package {
import flash.media.*;
public dynamic class product_take extends Sound {
}
}//package
Section 570
//QuitDialogTemplate (QuitDialogTemplate)
package {
import flash.text.*;
import flash.display.*;
public dynamic class QuitDialogTemplate extends MovieClip {
public var yesBtn:MovieClip;
public var noBtn:MovieClip;
public var caption:TextField;
}
}//package
Section 571
//QuitMenuTemplate (QuitMenuTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class QuitMenuTemplate extends MovieClip {
public var yesBtn:MovieClip;
public var noBtn:MovieClip;
public var caption:TextField;
public var pig:MovieClip;
}
}//package
Section 572
//sheep_die (sheep_die)
package {
import flash.media.*;
public dynamic class sheep_die extends Sound {
}
}//package
Section 573
//sheep_flyout (sheep_flyout)
package {
import flash.media.*;
public dynamic class sheep_flyout extends Sound {
}
}//package
Section 574
//sheep_hungry (sheep_hungry)
package {
import flash.media.*;
public dynamic class sheep_hungry extends Sound {
}
}//package
Section 575
//sheep_voice (sheep_voice)
package {
import flash.media.*;
public dynamic class sheep_voice extends Sound {
}
}//package
Section 576
//SheepTemplate (SheepTemplate)
package {
import flash.display.*;
public dynamic class SheepTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
public var hungryProgress:MovieClip;
}
}//package
Section 577
//ShopTemplate (ShopTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class ShopTemplate extends MovieClip {
public var incubator:MovieClip;
public var warehouse:MovieClip;
public var carnivaldress:MovieClip;
public var well:MovieClip;
public var spinnery:MovieClip;
public var stars_txt:TextField;
public var car:MovieClip;
public var confectionery:MovieClip;
public var powdered:MovieClip;
public var title:TextField;
public var bakery:MovieClip;
public var plane:MovieClip;
public var okBtn:MovieClip;
public var cage:MovieClip;
public var weaving:MovieClip;
}
}//package
Section 578
//SimpleTooltipTemplate (SimpleTooltipTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class SimpleTooltipTemplate extends MovieClip {
public var okBtn:MovieClip;
public var caption:TextField;
}
}//package
Section 579
//SpinneryHouseTemplate (SpinneryHouseTemplate)
package {
import flash.display.*;
public dynamic class SpinneryHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 580
//StartScreenTemplate (StartScreenTemplate)
package {
import flash.display.*;
public dynamic class StartScreenTemplate extends MovieClip {
public var okBtn:MovieClip;
public var playerPanel:MovieClip;
public var logo:MovieClip;
public var soundBtn:MovieClip;
public var alawar:MovieClip;
public var vkontakte_title:MovieClip;
public var rambler:MovieClip;
public var musicBtn:MovieClip;
public var buyBtn:MovieClip;
public var exitBtn:MovieClip;
}
}//package
Section 581
//tick_money (tick_money)
package {
import flash.media.*;
public dynamic class tick_money extends Sound {
}
}//package
Section 582
//tick_time (tick_time)
package {
import flash.media.*;
public dynamic class tick_time extends Sound {
}
}//package
Section 583
//TooltipTemplate (TooltipTemplate)
package {
import flash.display.*;
public dynamic class TooltipTemplate extends MovieClip {
public var help:MovieClip;
public var body:MovieClip;
public function TooltipTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
help.mouseEnabled = false;
help.mouseChildren = false;
body.mouseEnabled = false;
body.mouseChildren = false;
}
}
}//package
Section 584
//turkey_die (turkey_die)
package {
import flash.media.*;
public dynamic class turkey_die extends Sound {
}
}//package
Section 585
//turkey_flyout (turkey_flyout)
package {
import flash.media.*;
public dynamic class turkey_flyout extends Sound {
}
}//package
Section 586
//turkey_hungry (turkey_hungry)
package {
import flash.media.*;
public dynamic class turkey_hungry extends Sound {
}
}//package
Section 587
//turkey_voice (turkey_voice)
package {
import flash.media.*;
public dynamic class turkey_voice extends Sound {
}
}//package
Section 588
//ui_button_click (ui_button_click)
package {
import flash.media.*;
public dynamic class ui_button_click extends Sound {
}
}//package
Section 589
//ui_button_hover (ui_button_hover)
package {
import flash.media.*;
public dynamic class ui_button_hover extends Sound {
}
}//package
Section 590
//ui_panel_showing (ui_panel_showing)
package {
import flash.media.*;
public dynamic class ui_panel_showing extends Sound {
}
}//package
Section 591
//WaterTooltipTemplate (WaterTooltipTemplate)
package {
import flash.display.*;
import flash.text.*;
public dynamic class WaterTooltipTemplate extends MovieClip {
public var caption:TextField;
}
}//package
Section 592
//WeavingHouseTemplate (WeavingHouseTemplate)
package {
import flash.display.*;
public dynamic class WeavingHouseTemplate extends MovieClip {
public var body:MovieClip;
public var activeArea:MovieClip;
}
}//package
Section 593
//VLeaderboardTemplate (VLeaderboardTemplate)
package {
import flash.display.*;
public dynamic class VLeaderboardTemplate extends MovieClip {
public var _mask:MovieClip;
public var closeBtn:SimpleButton;
public var sliderBtn:MovieClip;
public var preloader:MovieClip;
}
}//package
Section 594
//WorkLineTemplate (WorkLineTemplate)
package {
import flash.display.*;
public dynamic class WorkLineTemplate extends MovieClip {
public var line:MovieClip;
public function WorkLineTemplate(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package